From f902eb6732be6508690af3f3a0dcb32b770934c0 Mon Sep 17 00:00:00 2001 From: Andrea Bianco <andrea.bianco@xcally.com> Date: Mon, 6 Jun 2016 13:14:54 +0200 Subject: [PATCH] Built motion from commit 65070aa.|0.0.108 --- public/app/42a7fc74.app.js | 88 ++++++++++++++++++++ public/app/b01e0669.app.js | 88 -------------------- public/assets/plugins/jscripty/js/Actions.js | 2 +- public/assets/plugins/jscripty/js/Dialogs.js | 2 +- public/assets/plugins/jscripty/js/Editor.js | 2 +- public/assets/plugins/jscripty/js/EditorUi.js | 2 +- public/assets/plugins/jscripty/js/Graph.js | 2 +- public/assets/plugins/jscripty/js/Menus.js | 2 +- public/assets/plugins/jscripty/js/Shapes.js | 2 +- public/assets/plugins/jscripty/js/Sidebar.js | 2 +- public/assets/plugins/jscripty/js/Toolbar.js | 2 +- public/assets/plugins/jscripty/js/custom.js | 2 +- public/assets/plugins/mxgraph/js/mxClient.js | 2 +- public/assets/plugins/square/js/Actions.js | 2 +- public/assets/plugins/square/js/Dialogs.js | 2 +- public/assets/plugins/square/js/Editor.js | 2 +- public/assets/plugins/square/js/EditorUi.js | 2 +- public/assets/plugins/square/js/Graph.js | 2 +- public/assets/plugins/square/js/Menus.js | 2 +- public/assets/plugins/square/js/Shapes.js | 2 +- public/assets/plugins/square/js/Sidebar.js | 2 +- public/assets/plugins/square/js/Toolbar.js | 2 +- public/assets/plugins/square/js/custom.js | 2 +- public/index.html | 2 +- release-notes/changelog_0.0.108.txt | 2 + server/api/action/action.controller.js | 2 +- server/api/action/action.socket.js | 2 +- server/api/action/index.js | 2 +- server/api/agent/agent.controller.js | 2 +- server/api/agent/agent.socket.js | 2 +- server/api/agent/index.js | 2 +- server/api/ami/ami.ami.js | 2 +- server/api/ami/ami.controller.js | 2 +- server/api/ami/ami.socket.js | 2 +- server/api/ami/index.js | 2 +- server/api/automation/automation.controller.js | 2 +- server/api/automation/automation.socket.js | 2 +- server/api/automation/index.js | 2 +- .../api/canned_answer/canned_answer.controller.js | 2 +- server/api/canned_answer/canned_answer.socket.js | 2 +- server/api/canned_answer/index.js | 2 +- server/api/chanspy/chanspy.controller.js | 2 +- server/api/chanspy/chanspy.socket.js | 2 +- server/api/chanspy/index.js | 2 +- .../chat_application.controller.js | 2 +- .../chat_application/chat_application.socket.js | 2 +- server/api/chat_application/index.js | 2 +- .../chat_disposition.controller.js | 2 +- .../chat_disposition/chat_disposition.socket.js | 2 +- server/api/chat_disposition/index.js | 2 +- server/api/chat_enquiry/enquiry.controller.js | 2 +- server/api/chat_enquiry/enquiry.socket.js | 2 +- server/api/chat_enquiry/index.js | 2 +- server/api/chat_message/chat_message.controller.js | 2 +- server/api/chat_message/chat_message.socket.js | 2 +- server/api/chat_message/index.js | 2 +- .../chat_proactive_action.controller.js | 2 +- .../chat_proactive_action.socket.js | 2 +- server/api/chat_proactive_action/index.js | 2 +- server/api/chat_queue/chat_queue.controller.js | 2 +- server/api/chat_queue/chat_queue.socket.js | 2 +- server/api/chat_queue/index.js | 2 +- server/api/chat_room/chat_room.controller.js | 2 +- server/api/chat_room/chat_room.socket.js | 2 +- server/api/chat_room/index.js | 2 +- server/api/chat_visitor/chat_visitor.controller.js | 2 +- server/api/chat_visitor/chat_visitor.socket.js | 2 +- server/api/chat_visitor/index.js | 2 +- server/api/chat_website/chat_website.controller.js | 2 +- server/api/chat_website/chat_website.socket.js | 2 +- server/api/chat_website/index.js | 2 +- .../chat_websites_field.controller.js | 2 +- .../chat_websites_field.socket.js | 2 +- server/api/chat_websites_field/index.js | 2 +- server/api/company/company.controller.js | 2 +- server/api/company/company.socket.js | 2 +- server/api/company/index.js | 2 +- .../contact_manager/contact_manager.controller.js | 2 +- .../api/contact_manager/contact_manager.socket.js | 2 +- server/api/contact_manager/index.js | 2 +- .../api/custom_report/custom_report.controller.js | 2 +- server/api/custom_report/custom_report.socket.js | 2 +- server/api/custom_report/index.js | 2 +- server/api/dashboard/dashboard.controller.js | 2 +- server/api/dashboard/dashboard.socket.js | 2 +- server/api/dashboard/index.js | 2 +- .../default_metric/default_metric.controller.js | 2 +- server/api/default_metric/default_metric.socket.js | 2 +- server/api/default_metric/index.js | 2 +- .../default_report/default_report.controller.js | 2 +- server/api/default_report/default_report.socket.js | 2 +- server/api/default_report/index.js | 2 +- server/api/desk_account/desk_account.controller.js | 2 +- server/api/desk_account/desk_account.socket.js | 2 +- server/api/desk_account/index.js | 2 +- .../desk_configuration.controller.js | 2 +- .../desk_configuration.socket.js | 2 +- server/api/desk_configuration/index.js | 2 +- server/api/desk_field/desk_field.controller.js | 2 +- server/api/desk_field/desk_field.socket.js | 2 +- server/api/desk_field/index.js | 2 +- .../extracted_report.controller.js | 2 +- .../extracted_report/extracted_report.socket.js | 2 +- server/api/extracted_report/index.js | 2 +- server/api/fax_account/fax_account.controller.js | 2 +- server/api/fax_account/fax_account.socket.js | 2 +- server/api/fax_account/index.js | 2 +- .../fax_application/fax_application.controller.js | 2 +- .../api/fax_application/fax_application.socket.js | 2 +- server/api/fax_application/index.js | 2 +- .../fax_attachment/fax_attachment.controller.js | 2 +- server/api/fax_attachment/fax_attachment.socket.js | 2 +- server/api/fax_attachment/index.js | 2 +- .../fax_disposition/fax_disposition.controller.js | 2 +- .../api/fax_disposition/fax_disposition.socket.js | 2 +- server/api/fax_disposition/index.js | 2 +- server/api/fax_message/fax_message.ami.js | 2 +- server/api/fax_message/fax_message.controller.js | 2 +- server/api/fax_message/fax_message.socket.js | 2 +- server/api/fax_message/index.js | 2 +- server/api/fax_queue/fax_queue.controller.js | 2 +- server/api/fax_queue/fax_queue.socket.js | 2 +- server/api/fax_queue/index.js | 2 +- server/api/fax_room/fax_room.controller.js | 2 +- server/api/fax_room/fax_room.socket.js | 2 +- server/api/fax_room/index.js | 2 +- .../freshdesk_account.controller.js | 2 +- .../freshdesk_account/freshdesk_account.socket.js | 2 +- server/api/freshdesk_account/index.js | 2 +- server/api/freshdesk_account/index.spec.js | 2 +- .../freshdesk_configuration.controller.js | 2 +- .../freshdesk_configuration.socket.js | 2 +- server/api/freshdesk_configuration/index.js | 2 +- server/api/freshdesk_configuration/index.spec.js | 2 +- .../freshdesk_field/freshdesk_field.controller.js | 2 +- .../api/freshdesk_field/freshdesk_field.socket.js | 2 +- server/api/freshdesk_field/index.js | 2 +- server/api/freshdesk_field/index.spec.js | 2 +- server/api/integration/index.js | 2 +- server/api/integration/integration.controller.js | 2 +- server/api/integration/integration.socket.js | 2 +- server/api/interval/index.js | 2 +- server/api/interval/interval.controller.js | 2 +- server/api/interval/interval.socket.js | 2 +- server/api/jscripty_project/index.js | 2 +- .../jscripty_project.controller.js | 2 +- .../jscripty_project/jscripty_project.socket.js | 2 +- server/api/license/index.js | 2 +- server/api/license/license.controller.js | 2 +- server/api/license/license.socket.js | 2 +- server/api/list/index.js | 2 +- server/api/list/list.controller.js | 2 +- server/api/list/list.socket.js | 2 +- server/api/mail_account/index.js | 2 +- server/api/mail_account/mail_account.controller.js | 2 +- server/api/mail_account/mail_account.socket.js | 2 +- server/api/mail_application/index.js | 2 +- .../mail_application.controller.js | 2 +- .../mail_application/mail_application.socket.js | 2 +- server/api/mail_attachment/index.js | 2 +- .../mail_attachment/mail_attachment.controller.js | 2 +- .../api/mail_attachment/mail_attachment.socket.js | 2 +- server/api/mail_disposition/index.js | 2 +- .../mail_disposition.controller.js | 2 +- .../mail_disposition/mail_disposition.socket.js | 2 +- server/api/mail_message/index.js | 2 +- server/api/mail_message/mail_message.controller.js | 2 +- server/api/mail_message/mail_message.socket.js | 2 +- server/api/mail_queue/index.js | 2 +- server/api/mail_queue/mail_queue.controller.js | 2 +- server/api/mail_queue/mail_queue.socket.js | 2 +- server/api/mail_room/index.js | 2 +- server/api/mail_room/mail_room.controller.js | 2 +- server/api/mail_room/mail_room.socket.js | 2 +- server/api/mail_server_in/index.js | 2 +- .../mail_server_in/mail_server_in.controller.js | 2 +- server/api/mail_server_in/mail_server_in.socket.js | 2 +- server/api/mail_server_out/index.js | 2 +- .../mail_server_out/mail_server_out.controller.js | 2 +- .../api/mail_server_out/mail_server_out.socket.js | 2 +- server/api/metric/index.js | 2 +- server/api/metric/metric.controller.js | 2 +- server/api/metric/metric.socket.js | 2 +- server/api/module/index.js | 2 +- server/api/module/module.controller.js | 2 +- server/api/module/module.socket.js | 2 +- server/api/motionbar/index.js | 2 +- server/api/motionbar/motionbar.controller.js | 2 +- server/api/motionbar/motionbar.socket.js | 2 +- server/api/network_externip/index.js | 2 +- .../network_externip.controller.js | 2 +- .../network_externip/network_externip.socket.js | 2 +- server/api/network_localnet/index.js | 2 +- .../network_localnet.controller.js | 2 +- .../network_localnet/network_localnet.socket.js | 2 +- server/api/pause/index.js | 2 +- server/api/pause/pause.controller.js | 2 +- server/api/pause/pause.socket.js | 2 +- server/api/report_agent/index.js | 2 +- server/api/report_agent/report_agent.controller.js | 2 +- server/api/report_agent/report_agent.socket.js | 2 +- server/api/report_call/index.js | 2 +- server/api/report_call/report_call.controller.js | 2 +- server/api/report_call/report_call.socket.js | 2 +- server/api/report_chat/index.js | 2 +- server/api/report_chat/report_chat.controller.js | 2 +- server/api/report_chat/report_chat.socket.js | 2 +- server/api/report_chat_room/index.js | 2 +- .../report_chat_room.controller.js | 2 +- .../report_chat_room/report_chat_room.socket.js | 2 +- server/api/report_chat_session/index.js | 2 +- .../report_chat_session.controller.js | 2 +- .../report_chat_session.socket.js | 2 +- server/api/report_fax/index.js | 2 +- server/api/report_fax/report_fax.controller.js | 2 +- server/api/report_fax/report_fax.socket.js | 2 +- server/api/report_fax_room/index.js | 2 +- .../report_fax_room/report_fax_room.controller.js | 2 +- .../api/report_fax_room/report_fax_room.socket.js | 2 +- server/api/report_fax_session/index.js | 2 +- .../report_fax_session.controller.js | 2 +- .../report_fax_session.socket.js | 2 +- server/api/report_integration/index.js | 2 +- .../report_integration.controller.js | 2 +- .../report_integration.socket.js | 2 +- server/api/report_mail/index.js | 2 +- server/api/report_mail/report_mail.controller.js | 2 +- server/api/report_mail/report_mail.socket.js | 2 +- server/api/report_mail_room/index.js | 2 +- .../report_mail_room.controller.js | 2 +- .../report_mail_room/report_mail_room.socket.js | 2 +- server/api/report_mail_session/index.js | 2 +- .../report_mail_session.controller.js | 2 +- .../report_mail_session.socket.js | 2 +- server/api/report_member/index.js | 2 +- .../api/report_member/report_member.controller.js | 2 +- server/api/report_member/report_member.socket.js | 2 +- server/api/report_queue/index.js | 2 +- server/api/report_queue/report_queue.controller.js | 2 +- server/api/report_queue/report_queue.socket.js | 2 +- server/api/report_sms/index.js | 2 +- server/api/report_sms/report_sms.controller.js | 2 +- server/api/report_sms/report_sms.socket.js | 2 +- server/api/report_sms_room/index.js | 2 +- .../report_sms_room/report_sms_room.controller.js | 2 +- .../api/report_sms_room/report_sms_room.socket.js | 2 +- server/api/report_sms_session/index.js | 2 +- .../report_sms_session.controller.js | 2 +- .../report_sms_session.socket.js | 2 +- server/api/report_square/index.js | 2 +- .../api/report_square/report_square.controller.js | 2 +- server/api/report_square/report_square.socket.js | 2 +- server/api/report_square_detail/index.js | 2 +- .../report_square_detail.controller.js | 2 +- .../report_square_detail.socket.js | 2 +- server/api/report_tree/index.js | 2 +- server/api/report_tree/report_tree.controller.js | 2 +- server/api/report_tree/report_tree.socket.js | 2 +- server/api/salesforce_account/index.js | 2 +- .../salesforce_account.controller.js | 2 +- .../salesforce_account.socket.js | 2 +- server/api/salesforce_configuration/index.js | 2 +- .../salesforce_configuration.controller.js | 2 +- .../salesforce_configuration.socket.js | 2 +- server/api/salesforce_field/index.js | 2 +- server/api/salesforce_field/index.spec.js | 2 +- .../salesforce_field.controller.js | 2 +- .../salesforce_field/salesforce_field.socket.js | 2 +- server/api/scheduler/index.js | 2 +- server/api/scheduler/scheduler.controller.js | 2 +- server/api/scheduler/scheduler.socket.js | 2 +- server/api/setting/index.js | 2 +- server/api/setting/setting.controller.js | 2 +- server/api/setting/setting.socket.js | 2 +- server/api/sms_account/index.js | 2 +- server/api/sms_account/sms_account.controller.js | 2 +- server/api/sms_account/sms_account.socket.js | 2 +- server/api/sms_account/util.js | 2 +- server/api/sms_application/index.js | 2 +- .../sms_application/sms_application.controller.js | 2 +- .../api/sms_application/sms_application.socket.js | 2 +- server/api/sms_disposition/index.js | 2 +- .../sms_disposition/sms_disposition.controller.js | 2 +- .../api/sms_disposition/sms_disposition.socket.js | 2 +- server/api/sms_message/index.js | 2 +- server/api/sms_message/sms_message.controller.js | 2 +- server/api/sms_message/sms_message.socket.js | 2 +- server/api/sms_queue/index.js | 2 +- server/api/sms_queue/sms_queue.controller.js | 2 +- server/api/sms_queue/sms_queue.socket.js | 2 +- server/api/sms_room/index.js | 2 +- server/api/sms_room/sms_room.controller.js | 2 +- server/api/sms_room/sms_room.socket.js | 2 +- server/api/sound/index.js | 2 +- server/api/sound/sound.controller.js | 2 +- server/api/sound/sound.socket.js | 2 +- server/api/square_odbc/index.js | 2 +- server/api/square_odbc/square_odbc.controller.js | 2 +- server/api/square_odbc/square_odbc.socket.js | 2 +- server/api/square_project/index.js | 2 +- .../square_project/square_project.controller.js | 2 +- server/api/square_project/square_project.socket.js | 2 +- server/api/square_recording/index.js | 2 +- .../square_recording.controller.js | 2 +- .../square_recording/square_recording.socket.js | 2 +- server/api/sugarcrm_account/index.js | 2 +- .../sugarcrm_account.controller.js | 2 +- .../sugarcrm_account/sugarcrm_account.socket.js | 2 +- server/api/sugarcrm_configuration/index.js | 2 +- .../sugarcrm_configuration.controller.js | 2 +- .../sugarcrm_configuration.socket.js | 2 +- server/api/sugarcrm_field/index.js | 2 +- .../sugarcrm_field/sugarcrm_field.controller.js | 2 +- server/api/sugarcrm_field/sugarcrm_field.socket.js | 2 +- server/api/tag/index.js | 2 +- server/api/tag/tag.controller.js | 2 +- server/api/tag/tag.socket.js | 2 +- server/api/team/index.js | 2 +- server/api/team/team.controller.js | 2 +- server/api/team/team.socket.js | 2 +- server/api/telephone/index.js | 2 +- server/api/telephone/telephone.controller.js | 2 +- server/api/telephone/telephone.socket.js | 2 +- server/api/template/index.js | 2 +- server/api/template/template.controller.js | 2 +- server/api/template/template.socket.js | 2 +- server/api/trigger/index.js | 2 +- server/api/trigger/trigger.controller.js | 2 +- server/api/trigger/trigger.socket.js | 2 +- server/api/trunk/index.js | 2 +- server/api/trunk/trunk.controller.js | 2 +- server/api/trunk/trunk.socket.js | 2 +- server/api/update/index.js | 2 +- server/api/update/update.controller.js | 2 +- server/api/user/index.js | 2 +- server/api/user/user.controller.js | 2 +- server/api/user/user.socket.js | 2 +- server/api/user_has_chat_queue/index.js | 2 +- .../user_has_chat_queue.controller.js | 2 +- .../user_has_chat_queue.socket.js | 2 +- server/api/user_has_chat_room/index.js | 2 +- .../user_has_chat_room.controller.js | 2 +- .../user_has_chat_room.socket.js | 2 +- server/api/user_has_fax_queue/index.js | 2 +- .../user_has_fax_queue.controller.js | 2 +- .../user_has_fax_queue.socket.js | 2 +- server/api/user_has_list/index.js | 2 +- .../api/user_has_list/user_has_list.controller.js | 2 +- server/api/user_has_list/user_has_list.socket.js | 2 +- server/api/user_has_mail_queue/index.js | 2 +- .../user_has_mail_queue.controller.js | 2 +- .../user_has_mail_queue.socket.js | 2 +- server/api/user_has_sms_queue/index.js | 2 +- .../user_has_sms_queue.controller.js | 2 +- .../user_has_sms_queue.socket.js | 2 +- server/api/user_has_team/index.js | 2 +- .../api/user_has_team/user_has_team.controller.js | 2 +- server/api/user_has_team/user_has_team.model.js | 2 +- server/api/user_has_team/user_has_team.socket.js | 2 +- server/api/user_has_team/user_has_team.spec.js | 2 +- server/api/user_has_voice_queue/index.js | 2 +- .../user_has_voice_queue.controller.js | 2 +- .../user_has_voice_queue.socket.js | 2 +- server/api/variable/index.js | 2 +- server/api/variable/variable.controller.js | 2 +- server/api/variable/variable.socket.js | 2 +- server/api/voice_context/index.js | 2 +- .../api/voice_context/voice_context.controller.js | 2 +- server/api/voice_context/voice_context.socket.js | 2 +- server/api/voice_disposition/index.js | 2 +- .../voice_disposition.controller.js | 2 +- .../voice_disposition/voice_disposition.socket.js | 2 +- server/api/voice_extension/index.js | 2 +- .../voice_extension/voice_extension.controller.js | 2 +- .../api/voice_extension/voice_extension.socket.js | 2 +- server/api/voice_musiconhold/index.js | 2 +- .../voice_musiconhold.controller.js | 2 +- .../voice_musiconhold/voice_musiconhold.socket.js | 2 +- server/api/voice_queue/index.js | 2 +- server/api/voice_queue/voice_queue.controller.js | 2 +- server/api/voice_queue/voice_queue.socket.js | 2 +- server/api/voice_recording/index.js | 2 +- .../voice_recording/voice_recording.controller.js | 2 +- .../api/voice_recording/voice_recording.socket.js | 2 +- server/api/voice_voicemail/index.js | 2 +- .../voice_voicemail/voice_voicemail.controller.js | 2 +- .../api/voice_voicemail/voice_voicemail.socket.js | 2 +- server/api/voice_voicemail_messages/index.js | 2 +- .../voice_voicemail_messages.controller.js | 2 +- .../voice_voicemail_messages.socket.js | 2 +- server/api/widget/index.js | 2 +- server/api/widget/widget.controller.js | 2 +- server/api/xchatty/index.js | 2 +- server/api/xchatty/xchatty.controller.js | 2 +- server/api/xchatty/xchatty.socket.js | 2 +- server/api/zendesk_account/index.js | 2 +- .../zendesk_account/zendesk_account.controller.js | 2 +- .../api/zendesk_account/zendesk_account.socket.js | 2 +- server/api/zendesk_configuration/index.js | 2 +- .../zendesk_configuration.controller.js | 2 +- .../zendesk_configuration.socket.js | 2 +- server/api/zendesk_field/index.js | 2 +- .../api/zendesk_field/zendesk_field.controller.js | 2 +- server/api/zendesk_field/zendesk_field.socket.js | 2 +- server/api/zendesk_field/zendesk_field.spec.js | 2 +- server/app.js | 2 +- server/auth/auth.service.js | 2 +- server/auth/facebook/index.js | 2 +- server/auth/facebook/passport.js | 2 +- server/auth/google/index.js | 2 +- server/auth/google/passport.js | 2 +- server/auth/index.js | 2 +- server/auth/local/index.js | 2 +- server/auth/local/local.ami.js | 2 +- server/auth/local/passport.js | 2 +- server/auth/twitter/index.js | 2 +- server/auth/twitter/passport.js | 2 +- server/config/agi/agi.js | 2 +- server/config/agi/index.js | 2 +- server/config/ami/action.js | 2 +- server/config/ami/acw.js | 2 +- server/config/ami/agent.js | 2 +- server/config/ami/call.js | 2 +- server/config/ami/fax.js | 2 +- server/config/ami/index.js | 2 +- server/config/ami/member.js | 2 +- server/config/ami/network.js | 2 +- server/config/ami/queue_caller.js | 2 +- server/config/ami/queue_member.js | 2 +- server/config/ami/recording.js | 2 +- server/config/ami/socket.js | 2 +- server/config/ami/transfer.js | 2 +- server/config/ami/trunk.js | 2 +- server/config/ami/user.js | 2 +- server/config/ami/voice_context.js | 2 +- server/config/analytics.js | 2 +- server/config/autodialer/index.js | 2 +- server/config/autodialer/process.js | 2 +- server/config/automations/fax.js | 2 +- server/config/automations/mail.js | 2 +- server/config/express.js | 2 +- server/config/fax.js | 2 +- server/config/history/history.js | 2 +- server/config/history/reportMove.js | 2 +- server/config/imap/imap.js | 2 +- server/config/imap/index.js | 2 +- server/config/integration.js | 2 +- server/config/integrations/index.js | 2 +- server/config/integrations/motionbar.js | 2 +- server/config/integrations/salesforce.js | 2 +- server/config/integrations/zendesk.js | 2 +- server/config/license/index.js | 2 +- server/config/license/license.service.js | 2 +- server/config/local.env.sample.js | 2 +- server/config/logger.js | 2 +- server/config/routing/chat/index.js | 2 +- server/config/routing/chat/session.js | 2 +- server/config/routing/fax/index.js | 2 +- server/config/routing/fax/session.js | 2 +- server/config/routing/mail/index.js | 2 +- server/config/routing/mail/session.js | 2 +- server/config/routing/sms/index.js | 2 +- server/config/routing/sms/session.js | 2 +- server/config/scheduler/index.js | 2 +- server/config/scheduler/reports.js | 2 +- server/config/seed.js | 2 +- server/config/seedp.js | 2 +- server/config/sms/index.js | 2 +- server/config/sms/skebby.js | 2 +- server/config/sms/sms.js | 2 +- server/config/sms/twilio.js | 2 +- server/config/smtp/index.js | 2 +- server/config/smtp/smtp.js | 2 +- server/config/socketio.js | 2 +- server/config/tools/channelSpy.js | 2 +- server/config/tools/chatRoom.js | 2 +- server/config/tools/dashboard.js | 2 +- server/config/tools/faxAccount.js | 2 +- server/config/tools/index.js | 2 +- server/config/tools/interval.js | 2 +- server/config/tools/queueParameters.js | 2 +- server/config/tools/user.js | 2 +- server/config/triggers/chat.js | 2 +- server/config/triggers/cm.js | 2 +- server/config/triggers/index.js | 2 +- server/config/triggers/jscripty.js | 2 +- server/config/triggers/mail.js | 2 +- server/config/triggers/urlForward.js | 2 +- server/config/triggers/util.js | 2 +- server/config/triggers/voice.js | 2 +- server/config/util/error.js | 2 +- server/config/util/index.js | 2 +- server/migrations/20160404155902-motion.js | 2 +- server/migrations/20160405155748-motion.js | 2 +- server/migrations/20160407153439-template.js | 2 +- server/migrations/20160407154803-template.js | 2 +- server/migrations/20160407163943-trunks.js | 2 +- server/migrations/20160411164717-mail-accounts.js | 2 +- server/migrations/20160411182439-chat_website.js | 2 +- .../20160412152558-report_chat_session.js | 2 +- .../20160412152741-report_chat_session_history.js | 2 +- server/migrations/20160412174555-companies.js | 2 +- server/migrations/20160413115611-mail-rooms.js | 2 +- server/migrations/20160413120157-chat-rooms.js | 2 +- .../migrations/20160414100530-voice_extension.js | 2 +- .../20160414113954-int_salesforce_fields.js | 2 +- server/migrations/20160414162957-sms_account.js | 2 +- server/migrations/20160414164310-cm_contacts.js | 2 +- server/migrations/20160418114658-mail-rooms.js | 2 +- server/migrations/20160419112635-modules.js | 2 +- .../migrations/20160419152538-user_has_modules.js | 2 +- server/migrations/20160419162305-sms_message.js | 2 +- server/migrations/20160419172859-sms_room.js | 2 +- .../20160420123742-report_integration.js | 2 +- .../20160420124115-report_integration_history.js | 2 +- server/migrations/20160421121826-modules.js | 2 +- server/migrations/20160426111419-mail-messages.js | 2 +- server/migrations/20160427103718-history.js | 2 +- .../migrations/20160428124018-voice_extensions.js | 2 +- .../migrations/20160428180149-extracted_reports.js | 2 +- server/migrations/20160428182219-chat-messages.js | 2 +- server/migrations/20160429151542-trunks.js | 2 +- server/migrations/20160429190622-chat-rooms.js | 2 +- server/migrations/20160502172532-sms_messages.js | 2 +- .../20160503105145-report_jscripty_sessions.js | 2 +- .../20160503155507-report_integration.js | 2 +- server/migrations/20160503181159-fax_account.js | 2 +- .../20160505122220-report_square_detail.js | 2 +- .../20160506111910-report_square_details.js | 2 +- .../20160506142105-report_integration_history.js | 2 +- .../migrations/20160506171353-fax_applications.js | 2 +- .../migrations/20160506181017-voice_extensions.js | 2 +- .../migrations/20160508105043-voice_extensions.js | 2 +- server/migrations/20160509102203-fax_accounts.js | 2 +- server/migrations/20160509130347-trunks.js | 2 +- server/migrations/20160509145940-report_fields.js | 2 +- server/migrations/20160509160659-mail-server.js | 2 +- .../migrations/20160510114030-voice_recordings.js | 2 +- server/migrations/20160510140808-phone-bar.js | 2 +- server/migrations/20160511115852-users.js | 2 +- server/migrations/20160511162334-mail-rooms.js | 2 +- server/migrations/20160511182718-fax_rooms.js | 2 +- server/migrations/20160512094501-fax_messages.js | 2 +- .../migrations/20160512123554-report_mail_room.js | 2 +- server/migrations/20160512131153-chat_rooms.js | 2 +- .../20160512182519-report_fax_and_sms.js | 2 +- .../20160513153038-report_jscripty_sessions.js | 2 +- .../20160514095244-report_jscripty_questions.js | 2 +- server/migrations/20160515123238-report_call.js | 2 +- server/migrations/20160517180411-fax_rooms.js | 2 +- server/migrations/20160517180628-report_mail.js | 2 +- .../20160518133136-report_jscripty_questions.js | 2 +- server/migrations/20160519141054-sms_rooms.js | 2 +- server/migrations/20160520121915-report_sms.js | 2 +- server/migrations/20160520131839-chat_room.js | 2 +- server/migrations/20160520135050-mail-rooms.js | 2 +- server/migrations/20160520155633-report_fax.js | 2 +- server/migrations/20160523145045-chat_rooms.js | 2 +- server/migrations/20160523154501-mail-messages.js | 2 +- server/migrations/20160524085528-chat_websites.js | 2 +- server/migrations/20160524110213-sms_accounts.js | 2 +- server/migrations/20160526151853-mail-rooms.js | 2 +- server/migrations/20160526163744-chat_websites.js | 2 +- server/migrations/20160528192017-fax_accounts.js | 2 +- server/migrations/20160531181837-fax_messages.js | 2 +- server/migrations/20160601110210-mail.js | 2 +- .../migrations/20160603105451-extracted_reports.js | 2 +- server/migrations/20160603163035-fax_messages.js | 2 +- server/migrations/20160603223141-mail_messages.js | 2 +- .../migrations/20160605163008-tools_schedules.js | 2 +- server/routes.js | 2 +- server/utils/report_build.js | 2 +- server/utils/report_extraction.js | 2 +- server/utils/voice_extension.js | 2 +- 574 files changed, 661 insertions(+), 659 deletions(-) create mode 100644 public/app/42a7fc74.app.js delete mode 100644 public/app/b01e0669.app.js diff --git a/public/app/42a7fc74.app.js b/public/app/42a7fc74.app.js new file mode 100644 index 0000000..f2537fd --- /dev/null +++ b/public/app/42a7fc74.app.js @@ -0,0 +1,88 @@ +"use strict";angular.module("xCallyShuttleApp",["adf","adf.structures.base","adf.widget.clock","adf.widget.iframe","adf.widget.counter","adf.widget.pie-chart","angular-md5","angular.filter","angularFileUpload","ngLetterAvatar","vAccordion","btford.socket-io","chart.js","checklist-model","colorpicker.module","frapontillo.bootstrap-switch","infinite-scroll","LocalStorageModule","mgo-angular-wizard","ng-slide-down","ngAnimate","ngBootstrap","ngCookies","ngCsv","ngFileSaver","ngJsTree","ngMap","ngPapaParse","ngResource","ngSanitize","notification","oc.lazyLoad","pascalprecht.translate","remoteValidation","smart-table","sprintf","timer","toastr","permission","ui-notification","ui.bootstrap.modal","ui.bootstrap.dropdown","ui.bootstrap.popover","ui.bootstrap.timepicker","ui.bootstrap.tooltip","ui.bootstrap.tpls","ui.bootstrap.accordion","ui.bootstrap.progressbar","ui.bootstrap.buttons","ui.bootstrap.typeahead","ui.grid","ui.grid.autoResize","ui.grid.draggable-rows","ui.grid.exporter","ui.grid.grouping","ui.grid.moveColumns","ui.grid.pagination","ui.grid.treeView","ui.grid.selection","ui.grid.exporter","ui.grid.resizeColumns","ui.router","ui.navbar","ui.select","ui.sortable","xeditable","ngAudio","truncate","ngScrollbars","ngEmoticons","angularSpinner","builder","builder.components","validator","angular-clipboard","ng-code-mirror","angularMoment","jsonFormatter","ui.bootstrap-slider","ui.bootstrap.datepicker","prettyBytes","bootstrapLightbox","rzModule","ckeditor"]).constant("CKEDITOR_BASEPATH","assets/plugins/ckeditor/").config(["$stateProvider","$urlRouterProvider","$locationProvider","$httpProvider","$translateProvider","localStorageServiceProvider","dashboardProvider","ScrollBarsProvider",function(a,b,c,d,e,f,g,h){b.otherwise(function(a){var b=a.get("$state");b.go("landing")}),e.useStaticFilesLoader({prefix:"assets/languages/locale-",suffix:".json"}),e.preferredLanguage("en_EN"),e.useLocalStorage(),e.useSanitizeValueStrategy("sanitize"),c.html5Mode(!0),d.interceptors.push("authInterceptor"),g.structure("4-4-4",{rows:[{columns:[{styleClass:"col-md-4"},{styleClass:"col-md-4"},{styleClass:"col-md-4"}]}]}).structure("3-3-3-3",{rows:[{columns:[{styleClass:"col-md-3"},{styleClass:"col-md-3"},{styleClass:"col-md-3"},{styleClass:"col-md-3"}]}]}),f.setPrefix("motion"),h.defaults={scrollButtons:{scrollAmount:"auto",enable:!0},axis:"y"}}]).factory("settings",["$rootScope","$interval","License","localStorageService","Setting",function(a,b,c,d,e){return a.settings={patternName:"[A-Za-z0-9._\\+*!\\-\\[\\]]+",patternGateway:"^(?:yes|no|[0-9]+)$",patternFaxdetect:"^(?:yes|no|t38|cng|[0-9]+)$",layout:{pageSidebarClosed:d.get("sidebarClosed")||!1,pageQuickSidebarOpened:!1,pageBodySolid:!1,pageAutoScrollOnLoad:1e3}},e.get({id:1}).$promise.then(function(b){a.soundPath=b.soundPath||"/var/opt/motion/server/files/sounds/converted"})["catch"](function(a){console.error(a)}),a.settings}]).factory("authInterceptor",["$rootScope","$q","$cookieStore",function(a,b,c){return{request:function(a){return a.headers=a.headers||{},c.get("token")&&(a.headers.Authorization="Bearer "+c.get("token")),a}}}]).run(["$rootScope","$location","$state","$stateParams","$window","$q","Auth","RoleStore","editableThemes","editableOptions","License","User","PermissionStore",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.$state=c,a.$stateParams=d,i.bs3.inputClass="input-sm",i.bs3.buttonsClass="btn-xs",j.theme="bs3",a.$on("$stateChangeStart",function(a,c){g.isLoggedInAsync(function(a){c.authenticate&&!a&&b.path("/login")})}),a.updateTableConfig=function(a,b){var c=_.find(a,{name:"All"});c&&(c.value=b)},k.get().$promise.then(function(b){a.license=b.license,m.definePermission("hasCm",function(){return a.license.cm}),m.definePermission("hasChat",function(){return a.license.chat}),m.definePermission("hasMail",function(){return a.license.mail}),m.definePermission("hasFax",function(){return a.license.fax}),m.definePermission("hasSms",function(){return a.license.messaging}),m.definePermission("hasDialer",function(){return a.license.dialer}),m.definePermission("hasJscripty",function(){return a.license.jscripty}),m.definePermission("hasUpdate",function(){return a.license.update})})["catch"](function(a){console.log(a)}),m.definePermission("agent",function(){return g.isAgent()}),m.definePermission("admin",function(){return g.isAdmin()}),m.definePermission("user",function(a,b){var c=f.defer(),d=g.getCurrentUser().$promise;return d?d.then(function(a){_.includes(_.map(a.Modules,"id"),b.toState.data.permissions.id)&&"user"===a.role?c.resolve():c.reject()})["catch"](function(){c.reject()}):c.resolve(),c.promise})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics",{url:"/analytics",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:17}}})}]),angular.module("xCallyShuttleApp").factory("Extracted",["$resource",function(a){return a("/api/analytics/extracted/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.extracted",{url:"/extracted",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("AnalyticExtractedListCtrl",["$scope","$translate","gridOptions","Extracted","uiGridConstants",function(a,b,c,d,e){a.moment=moment,a.Extracted=d,a.initView=function(){var b={exporterCsvFilename:"ExtractedReports.csv",columnDefs:[{name:"name"},{name:"startDate",displayName:"APPLICATION_START_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"endDate",displayName:"APPLICATION_END_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"createdAt",displayName:"APPLICATION_RUN_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"output"},{name:"type"},{name:"status"},{name:"action",width:140,buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{directive:"<motion-file-download data-ng-show=\"row.entity.status == 'completed'\" resource=\"grid.appScope.Extracted\" params=\"{id:row.entity.id,controller:'download'}\" mimetype=\"'application/'+row.entity.output.toLowerCase()\" filename=\"row.entity.name+'_'+row.entity.startDate.toString()+'_'+row.entity.endDate.toString()+'.'+row.entity.output.toLowerCase()\"></motion-file-download>"}]}]};a.gridOptions=c.gridOptions(d,b,a,{order:"createdAt DESC"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.extracted.list",{url:"/list",templateUrl:"app/analytic/extracted/list/list.html",controller:"AnalyticExtractedListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("DefaultMetric",["$resource",function(a){return a("/api/analytics/metrics/default/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListCreateModalCtrl",["$scope","$uibModalInstance","Metric","xAlert","$translate","report",function(a,b,c,d,e,f){a.forms={dashboard:void 0},a.item={},a.tables=f.tables,a.ok=function(){return c.save(a.item).$promise.then(function(){b.close()})["catch"](function(a){d.show(e.instant(a.translatedMessage||a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListCtrl",["$scope","xAlert","Modal","$uibModal","$log","gridOptions","Metric","DefaultMetric","$translate",function(a,b,c,d,e,f,g,h,i){a.$translate=i,a.initView=function(){var b={exporterCsvFilename:"Metrics.csv",columnDefs:[{name:"name"},{name:"table",cellTemplate:"<div style=\"padding:5px\">{{'APPLICATION_'+row.entity.table.toUpperCase() | translate}}</div>"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/analytics/metrics/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]},c={exporterCsvFilename:"defaultMetrics.csv",columnDefs:[{name:"name"},{name:"table",cellTemplate:"<div style=\"padding:5px\">{{'APPLICATION_'+row.entity.table.toUpperCase() | translate}}</div>"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",name:"view",onClick:"grid.appScope.showMetric(row.entity)"},{"class":"purple",name:"clone",onClick:"grid.appScope.cloneMetric(row.entity.id)"}]}]};a.gridOptionsDefault=f.gridOptions(h,c,a,null,null,"Default"),a.gridOptions=f.gridOptions(g,b,a)},a.showMetric=function(a){d.open({animation:!0,templateUrl:"app/analytic/metric/list/view.modal.html",controller:"AnalyticMetricListViewModalCtrl",resolve:{metric:a}})},a.cloneMetric=function(c){return h.get({id:c,controller:"clone"}).$promise.then(function(){b.show(i.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){b.error(a)})},a.create=function(){var c=d.open({animation:!0,templateUrl:"app/analytic/metric/list/create.modal.html",controller:"AnalyticMetricListCreateModalCtrl"});c.result.then(function(){b.show(i.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridOptions.getPage()},function(){e.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics.list",{url:"/list",templateUrl:"app/analytic/metric/list/list.html",controller:"AnalyticMetricListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListViewModalCtrl",["$scope","$uibModalInstance","metric","xAlert","$translate","report",function(a,b,c,d,e,f){a.item=c,a.tables=f.tables,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").factory("Metric",["$resource",function(a){return a("/api/analytics/metrics/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics",{url:"/metrics",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","Metric","report",function(a,b,c,d,e,f,g){a.tables=g.tables,a.getMetric=function(){return f.get({id:d.id}).$promise.then(function(b){a.metric=b})["catch"](function(a){e.path("/analytics/metrics/list")})},a.updateMetric=function(){return f.update({id:d.id},a.metric).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(c.instant(a.translatedMessage||a.data.translatedMessage),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics.view",{url:"/view/:id",templateUrl:"app/analytic/metric/view/view.html",controller:"AnalyticMetricViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.analytics.metrics.view.settings",{url:"/settings",templateUrl:"app/analytic/metric/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("CustomReport",["$resource",function(a){return a("/api/analytics/reports/custom/:id/:controller/:action",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("DefaultReport",["$resource",function(a){return a("/api/analytics/reports/default/:id/:controller/:action",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ReportListCopyModalCtrl",["$scope","$uibModalInstance","$log","customTreeData",function(a,b,c,d){a.customTreeData=d,a.forms={dashboard:void 0},a.item={},a.customTreeConfig={multiple:!1,animation:!0,core:{error:function(a){c.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0}},a.ac=function(){return!0},a.initCustomScopeTree=function(){a.customTree=a.customTreeInstance.jstree(!0),a.customTree.deselect_all(),a.customTree.open_all()},a.ok=function(){b.close({parent:a.customTree.get_selected(!0).pop().id})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ReportListCreateModalCtrl",["$scope","$uibModalInstance","path",function(a,b,c){a.path=c,a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ReportListExtractModalCtrl",["$scope","$uibModalInstance","$translate",function(a,b,c){a.daily=!1,a.dailySwitch={onText:c.instant("APPLICATION_TODAY"),offText:c.instant("APPLICATION_RANGE"),isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"primary"},a.dates={startDate:moment().subtract(1,"days").startOf("day"),endDate:moment().subtract(1,"days").endOf("day")},a.ranges={Yesterday:[moment().subtract(1,"days").startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 7 days":[moment().subtract("days",7).startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 30 days":[moment().subtract("days",30),moment()],"This month":[moment().startOf("month"),moment().endOf("month")]},a.yesterday=moment().subtract(1,"days").format("YYYY-MM-DD"),a.today=moment().format("YYYY-MM-DD"),a.extract=function(c){var d={startDate:moment(a.dates.startDate).format("YYYY-MM-DD"),endDate:moment(a.dates.endDate).format("YYYY-MM-DD"),daily:a.daily,action:c};b.close(d)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("AnalyticReportListCtrl",["$scope","xAlert","$translate","$location","$log","Modal","$uibModal","FileSaver","Blob","gridOptions","CustomReport","DefaultReport","ReportTree",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(b,c){var d={parent:c.id};a.selectedNode=b?a.defaultTree.get_path(c," / "):a.customTree.get_path(c," / "),a.gridOptions?a.gridOptions.getPage({parent:c.id},b?l:k):a.gridOptions=j.gridOptions(b?l:k,o,a,d)}var o={exporterCsvFilename:"reports.csv",columnDefs:[{name:"name"},{name:"description"},{name:"manage",width:120,buttons:[{"class":"{{grid.appScope.defaultTreeActive ? 'display-none' : 'blue-hoki'}}",href:"/analytics/reports/view/{{row.entity.id}}/settings",icon:"icon-settings",title:c.instant("APPLICATION_SETTINGS")},{"class":"{{grid.appScope.defaultTreeActive ? 'display-none' : 'red-sunglo'}}",icon:"fa fa-trash-o",title:c.instant("APPLICATION_DELETE"),onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green",icon:"fa fa-files-o",title:c.instant("APPLICATION_COPY"),onClick:"grid.appScope.copy(row.entity.id)"},{"class":"purple",icon:"fa fa-download",title:c.instant("APPLICATION_EXPORT"),onClick:"grid.appScope.export(row.entity.id)"}]},{name:"actions",buttons:[{"class":"yellow",name:"preview",onClick:"grid.appScope.preview(row.entity.id)"},{"class":"green-turquoise",name:"run",onClick:"grid.appScope.extract(row.entity.id)"}]}]};a.searchField="",a.ac=function(){return!0},a.initDefaultScopeTree=function(){a.defaultTree=a.defaultTreeInstance.jstree(!0),a.defaultTree.deselect_all(),a.defaultTree.close_all(),a.defaultTree.open_node({id:1}),a.defaultTreeReady=!0,a.defaultTreeActive=!0,a.previousDefaultNode=""},a.initCustomScopeTree=function(){a.customTree=a.customTreeInstance.jstree(!0),a.customTree.deselect_all(),a.customTree.close_all(),a.customTree.open_node({id:1}),a.customTreeReady=!0,a.previousCustomNode=""},a.$watchGroup(["defaultTreeReady","customTreeReady"],function(b,c,d){b[0]&&b[1]&&a.defaultTree.select_node({id:"1"})}),a.updateCustomTree=function(){var d={tree:angular.toJson(a.customTree.get_json("#",{flat:!0}))};return m.update({id:2},d).$promise.then(function(a){console.log("Custom Tree Updated")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.configTrees=function(){a.defaultTreeConfig={multiple:!1,animation:!0,core:{error:function(a){e.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0,themes:{name:"default",url:"../../../assets/css/jstree-metronic/style.css"}},plugins:["search"]},a.customTreeConfig={multiple:!1,animation:!0,core:{error:function(a){e.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0,themes:{name:"default",url:"../../../assets/css/jstree-metronic/style.css"}},plugins:["contextmenu","dnd","search"],contextmenu:{items:function(b,d){var e={create:{label:c.instant("APPLICATION_CREATE"),action:function(c){a.customTree.create_node(b),a.customTree.open_node(b)}},rename:{label:c.instant("APPLICATION_RENAME"),action:function(c){a.customTree.edit(b)}},remove:{label:c.instant("APPLICATION_REMOVE"),action:function(c){console.log(b),a.deleteNode(b.text,b)}}};return"#"===b.parent&&(delete e.rename,delete e.remove),d(e),e}}}},a.deleteNode=f.confirm["delete"](function(b){a.customTree.delete_node(b),a.previousCustomNode==b.id&&a.customTree.select_node({id:b.parent})}),a.searchTrees=function(){a.defaultTree.search(a.searchField),a.customTree.search(a.searchField)},a.selectDefaultNode=function(){if(a.customTreeReady){a.previousCustomNode="";var b=a.defaultTree.get_selected(!0),c=b.pop();if(a.defaultTree.deselect_node(b[0],!0),a.customTree.deselect_all(),a.defaultTree.select_node(c,!0),c.id===a.previousDefaultNode)return void console.log("def");a.previousDefaultNode=c.id,a.defaultTreeActive=!0,n(!0,c)}},a.selectCustomNode=function(){if(a.defaultTreeReady){a.previousDefaultNode="";var b=a.customTree.get_selected(!0),c=b.pop();if(a.customTree.deselect_node(b[0],!0),a.defaultTree.deselect_all(),a.customTree.select_node(c,!0),c.id===a.previousCustomNode)return void console.log("cus");a.previousCustomNode=c.id,a.defaultTreeActive=!1,n(!1,c)}},a.getTrees=function(){return m.query().$promise.then(function(b){a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),a.configTrees()})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.create=function(){var c=g.open({animation:!0,templateUrl:"app/analytic/report/list/create.modal.html",controller:"ReportListCreateModalCtrl",resolve:{path:function(){return a.selectedNode}}});c.result.then(function(c){return c.parent=a.previousCustomNode,k.save(c).$promise.then(function(a){d.path("/analytics/reports/view/"+a.id+"/settings")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})},a.copy=function(d){var f=a.defaultTreeActive?l:k,h=g.open({animation:!0,templateUrl:"app/analytic/report/list/copy.modal.html",controller:"ReportListCopyModalCtrl",resolve:{customTreeData:function(){return a.customTree.get_json("#",{flat:!0})}}});h.result.then(function(e){return f.save({id:d,controller:"copy"},e).$promise.then(function(){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})},a["export"]=function(c){var d=a.defaultTreeActive?l:k;return d.get({id:c,controller:"export"}).$promise.then(function(a){var b=new i([angular.toJson(a)],{type:"application/json;charset=utf-8"});h.saveAs(b,a.name+".json")})["catch"](function(a){console.error(data),b.show(a.message,"danger")})},a["import"]=function(d){var e=JSON.parse(d);e.parent=a.previousCustomNode;var f=!(!e.name||!e.parent),g=!0;return _.forEach(e.Fields,function(a){a.field&&a.alias||(g=!1)}),f&&g?k.save({controller:"import"},e).$promise.then(function(){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")}):void b.show(c.instant("MESSAGE_INVALID_JSON"),"danger")},a.preview=function(b){g.open({animation:!0,templateUrl:"app/analytic/report/list/preview.modal.html",controller:"ReportListPreviewModalCtrl",size:"full",resolve:{report:function(){return{id:b,tree:a.defaultTreeActive?"default":"custom"}}}})},a.extract=function(d){var f=g.open({animation:!0,templateUrl:"app/analytic/report/list/extract.modal.html",controller:"ReportListExtractModalCtrl",size:"md",resolve:{report:function(){return{id:d,tree:a.defaultTreeActive?"default":"custom"}}}});f.result.then(function(e){e.daily||delete e.daily;var f=a.defaultTreeActive?l:k;return f.get(_.merge({id:d,controller:"extract"},e)).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports.list",{url:"/list",templateUrl:"app/analytic/report/list/list.html",controller:"AnalyticReportListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ReportListPreviewModalCtrl",["$scope","$uibModalInstance","report","xAlert","$translate","$timeout","CustomReport","DefaultReport",function(a,b,c,d,e,f,g,h){a.daily=!1,a.dailySwitch={onText:e.instant("APPLICATION_TODAY"),offText:e.instant("APPLICATION_RANGE"),isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"primary"},a.dates={startDate:moment().subtract(1,"days").startOf("day"),endDate:moment().subtract(1,"days").endOf("day")},a.ranges={Yesterday:[moment().subtract(1,"days").startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 7 days":[moment().subtract("days",7).startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 30 days":[moment().subtract("days",30),moment()],"This month":[moment().startOf("month"),moment().endOf("month")]},a.yesterday=moment().subtract(1,"days").format("YYYY-MM-DD"),a.today=moment().format("YYYY-MM-DD");var i={offset:0,limit:25,sort:null,where:{},order:{}};a.gridOptions={paginationPageSizes:[10,25,50],paginationPageSize:25,useExternalPagination:!0,enableSorting:!1,enableFiltering:!0,useExternalFiltering:!0,enableGrouping:!1,enableColumnMenus:!1,treeRowHeaderAlwaysVisible:!1,gridMenuShowHideColumns:!1,enableGridMenu:!1,onRegisterApi:function(b){a.gridApi=b,b.pagination.on.paginationChanged(a,function(b,c){i.offset=(b-1)*c,i.limit=c,a.getPage()}),b.core.on.filterChanged(a,function(){var b=this.grid,c={};b.columns.forEach(function(a){a.filters[0].term&&(c[a.field]=a.filters[0].term)}),i.where=c,a.getPage()})}},a.getPage=function(){var b={offset:i.offset,limit:i.limit,startDate:moment(a.dates.startDate).format("YYYY-MM-DD"),endDate:moment(a.dates.endDate).format("YYYY-MM-DD"),daily:a.daily};_.forOwn(i.where,function(a,c){b[c]=a});var e="custom"===c.tree?g:h;return e.get(_.merge({id:c.id,controller:"preview"},b)).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.paginationPageSizes[3]=b.count,a.gridOptions.data=b.rows,a.showResult=!0})["catch"](function(a){d.error(a)})},a.cancel=function(){b.dismiss("cancel")},f(function(){a.getPage()})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports",{url:"/reports",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ReportAgent",["$resource",function(a){return a("/api/report/agents/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportIntegration",["$resource",function(a){return a("/api/report/integrations/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportMember",["$resource",function(a){return a("/api/report/members/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportTree",["$resource",function(a){return a("/api/analytics/reports/trees/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("AnalyticReportViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","ReportAgent","ReportCall","ReportMailSession","ReportSmsSession","ReportMember","ReportQueue","ReportIntegration","ReportChatSession","DefaultReport","CustomReport","Metric","report",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){function r(d){var e=_.find(a.tables,{value:d}).resource;e.get({controller:"describe"}).$promise.then(function(b){a.tableFields=_.map(b,function(a,b){return"$promise"!==b&&"$resolved"!==b?{name:b,value:b}:void 0})})["catch"](function(a){b.show(c.instant(a.message),"danger")})["finally"](function(){s(d)})}function s(d){return p.get({controller:"table",table:d}).$promise.then(function(b){_.forEach(b.rows,function(b){a.tableFields.push({name:"<strong>Metric.</strong>"+b.name,value:b.metric,MetricId:b.id})})})["catch"](function(a){b.show(c.instant(a.message),"danger")})}function t(a){return String(a).replace(/</g,"<").replace(/>/g,">")}function u(a){if(!a)return"";for(var b="(",c=0;c<a.rules.length;c++)c>0&&(b+=" <strong>"+a.operator+"</strong> "),b+=a.rules[c].group?u(a.rules[c].group):a.rules[c].field+" "+t(a.rules[c].condition)+" '"+("like"===a.rules[c].condition?"%"+a.rules[c].value+"%":a.rules[c].value)+"'";return b+")"}a.$translate=c,a.tempReport={},a.tables=q.tables;var v={group:{operator:"AND",rules:[]}};a.getReport=function(){return a.firstLoad=!0,o.get({id:d.id}).$promise.then(function(b){a.report=b,_.forEach(a.report.Fields,function(a){delete a.id}),a.report.conditions=a.report.conditions?JSON.parse(a.report.conditions):_.clone(v,!0),a.report.Fields.length&&a.getPreview()})["catch"](function(a){console.error(a),e.path("/analytics/reports/list")})},a.randomName=function(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")},a.$watch("report.table",function(b,c){b&&(r(b),c&&(a.tempReport[c]={conditions:a.report.conditions,fields:a.report.Fields}),a.firstLoad?a.firstLoad=!1:a.tempReport[b]?(a.report.Fields=a.tempReport[b].fields,a.report.conditions=a.tempReport[b].conditions):(a.report.Fields=[],a.report.conditions=_.clone(v,!0)))},!0),a.setMetricId=function(b,c){a.report.Fields[c].MetricId=b.MetricId?b.MetricId:null},a.groupByField=[{name:"APPLICATION_YES",value:!0},{name:"APPLICATION_NO",value:!1}],a.functions=[{name:"Sum",value:"SUM"},{name:"Count",value:"COUNT"},{name:"Count Distinct",value:"COUNT DISTINCT"},{name:"Maximum",value:"MAX"},{name:"Minimum",value:"MIN"},{name:"Average",value:"AVG"},{name:"Group Concat",value:"GROUP_CONCAT"},{name:"Group Concat(asc)",value:"GROUP_CONCAT ASC"},{name:"Group Concat(desc)",value:"GROUP_CONCAT DESC"}],a.formatFunctions=[{name:"Sec To Time",value:"SEC_TO_TIME"},{name:"Date",value:"DATE"},{name:"Hour",value:"HOUR"},{name:"Round",value:"ROUND"},{name:"Unix TimeStamp",value:"UNIX_TIMESTAMP"}],a.addField=function(){a.report.Fields.push({groupBy:!1})},a.removeField=function(b){a.report.Fields.splice(b,1)},a.sortableOptions={"ui-floating":!0,cancel:".unsortable",handle:".report-field-handle",axis:"y"},a.updateReport=function(){if(a.report.Fields.length){var e=angular.copy(a.report);return e.conditions=angular.toJson(e.conditions),o.update({id:d.id},e).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),a.getPreview()})["catch"](function(a){b.error(a)})}b.show(c.instant("MESSAGE_SELECT_A_FIELD"),"danger")},a.$watch("report.conditions",function(b){a.output=b?u(b.group):"()"},!0),a.getPreview=function(){return a.gridOptions=null,o.get({id:d.id,controller:"preview",limit:20}).$promise.then(function(b){a.gridOptions={enableFiltering:!0,treeRowHeaderAlwaysVisible:!1,enableGridMenu:!0,data:b.rows}})["catch"](function(a){console.log(a),b.show(c.instant(a.message||"MESSAGE_QUERY_NOT_VALID"),"warning")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports.view",{url:"/view/:id",templateUrl:"app/analytic/report/view/view.html",controller:"AnalyticReportViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.analytics.reports.view.settings",{url:"/settings",templateUrl:"app/analytic/report/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels",{url:"/channels",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat",{url:"/chat",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ChatEnquiry",["$resource",function(a){return a("/api/chat/enquiries/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatReport",["$resource",function(a){return a("/api/report/chats/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatVisitor",["$resource",function(a){return a("/api/chat/visitors/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatMessage",["$resource",function(a){return a("/api/chat/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatRoom",["$resource",function(a){return a("/api/chat/rooms/:id/:controller",{id:"@id"},{me:{method:"GET",isArray:!0,params:{id:"me"}},users:{method:"GET",params:{id:"users"}},externals:{method:"GET",isArray:!0,params:{id:"type",controller:"external"}},groups:{method:"GET",isArray:!0,params:{id:"groups"}},update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").controller("ChatOfflineListCtrl",["$scope","ChatVisitor","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_offline_messages.csv",columnDefs:[{name:"fullname",cellClass:"text-center"},{name:"email",cellClass:"text-center"},{name:"ChatWebsite.name",displayName:"Website",cellClass:"text-center"},{name:"createdAt",displayName:"createdAt",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/offline/view/{{row.entity.id}}/detail",name:"detail"}]}]};a.gridOptions=c.gridOptions(b,d,a,{origin:"enquiry"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline.list",{url:"/list",templateUrl:"app/channels/chat/offline/list/list.html",controller:"ChatOfflineListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline",{url:"/offline",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatOfflineViewCtrl",["$scope","$stateParams","ChatVisitor",function(a,b,c){ +a.initView=function(){return c.get({id:b.id}).$promise.then(function(b){a.chatVisitor=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline.view",{url:"/view/:id",templateUrl:"app/channels/chat/offline/view/view.html",controller:"ChatOfflineViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.offline.view.detail",{url:"/detail",templateUrl:"app/channels/chat/offline/view/view.detail.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/news.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ChatOnlineListCtrl",["$scope","ChatRoom","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_online_messages.csv",columnDefs:[{name:"ChatVisitor.fullname",displayName:"APPLICATION_FULLNAME",cellClass:"text-center"},{name:"ChatVisitor.email",displayName:"APPLICATION_EMAIL",cellClass:"text-center"},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/online/view/{{row.entity.id}}/detail",name:"detail"}]}]};a.gridOptions=c.gridOptions(b,d,a,{id:"online"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online.list",{url:"/list",templateUrl:"app/channels/chat/online/list/list.html",controller:"ChatOnlineListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online",{url:"/online",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatOnlineViewCtrl",["$scope","$stateParams","ChatRoom",function(a,b,c){a.initView=function(){return a.config={autoHideScrollbar:!1,theme:"light",advanced:{updateOnContentResize:!0},setHeight:400,scrollInertia:0},c.get({id:b.id}).$promise.then(function(b){a.chatRoom=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online.view",{url:"/view/:id",templateUrl:"app/channels/chat/online/view/view.html",controller:"ChatOnlineViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.online.view.detail",{url:"/detail",templateUrl:"app/channels/chat/online/view/view.detail.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/news.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("PreviewCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").directive("preview",function(){return{templateUrl:"app/channels/chat/preview/preview.html",restrict:"EA",link:function(a,b,c){}}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("preview",{url:"/preview",templateUrl:"app/channels/chat/preview/preview.html",controller:"PreviewCtrl",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").factory("ChatQueue",["$resource",function(a){return a("/api/chat/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChatQueueListCtrl",["$scope","ChatQueue","gridOptions","Auth","$uibModal",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var e={exporterCsvFilename:"chat_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"strategy"},{name:"timeout"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/chat/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/chat/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===d.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a)},a.createItem=function(){var b=e.open({animation:!0,templateUrl:"app/channels/chat/queue/list/list.create.modal.html",controller:"ChatQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChatQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","ChatQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues.list",{url:"/list",templateUrl:"app/channels/chat/queue/list/list.html",controller:"ChatQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","ChatQueue","Team","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return f.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return f["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getQueue=function(){b.get("/api/chat/queues/"+e.id).success(function(b){b.penalty=0,a.queue=b}).error(function(a){console.error(a)})},a.updateChatQueue=function(){var f=angular.copy(a.queue);b.put("/api/chat/queues/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){a.queue=f,b.errors.forEach(function(a){c.show(a.message,"danger")})})},a.getTeams=function(){return g.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,f.get({id:e.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindChatQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasChatQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues.view",{url:"/view/:id",templateUrl:"app/channels/chat/queue/view/view.html",controller:"ChatQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.queues.view.settings",{url:"/settings",templateUrl:"app/channels/chat/queue/view/view.settings.html"}).state("main.channels.chat.queues.view.agents",{url:"/agents",templateUrl:"app/channels/chat/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","ChatQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.chatPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_chat_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PChatQueues,"id"),b.ChatQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.ChatQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_chat_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.ChatQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.chatPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.ChatQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.chatQueues=b.rows,e.syncUpdates("chat_queue",a.chatQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.chatQueues=[];var t={controller:"realtime",controller1:"chat",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"chatPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.chatQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_chat_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/chat/realtime/view/agent/queue.modal.add.html",controller:"ChatRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.chatQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.chatQueues,function(a){return _.includes(b.queues,a.id)}),channel:"chat",data1:e,data3:b.queues.join(","),data4:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"chat",data1:a,data3:b,data4:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/chat/realtime/view/agent/agent.modal.info.html",controller:"ChatRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/chat/realtime/view/agent/agent.html",controller:"ChatRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportChatSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_chat_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_chat_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_chat_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/chat/realtime/view/application/application.html",controller:"ChatRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewCtrl",["$scope",function(a){a.agents=[{name:"Queues",link:"main.chat.realtime.view.agent.queues"},{name:"Timeline",link:"main.chat.realtime.view.agent.timeline"}],a.sessions=[{name:"Sessions",link:"main.chat.realtime.view.sessions"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view",{url:"/view",templateUrl:"app/channels/chat/realtime/view/view.html",controller:"ChatRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportChatRoom",["$resource",function(a){return a("/api/report/chat/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportChatSession",["$resource",function(a){return a("/api/report/chat/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.external",{url:"/external",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomExternalListCtrl",["$scope","$timeout","socket","Auth","ChatRoom","usSpinnerService","Tag","$uibModal",function(a,b,c,d,e,f,g,h){function i(){return g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}a.openChat=function(b){return e.get({id:b.id}).$promise.then(function(b){var c=_.find(a.workspaces,{id:b.id,type:"chatRoom"});c?c.active=!0:a.workspaces.push({id:b.id,name:b.ChatVisitor.fullname,type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.id=[],a.query={status:"OPEN",tags:[]},a.gridOptions={enableGridMenu:!1,enableFiltering:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"userpic",displayName:"",width:35,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar height="20" width="20" fontsize="12" data="{{row.entity.ChatVisitor.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #EA4C61" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"fullname",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span style="padding-left: 5px;" class="pull-left">{{row.entity.ChatVisitor.fullname}}</span></div>',enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(),i()},a.tagItems=function(){h.open({animation:!0,templateUrl:"app/channels/chat/room/view.tags.modal.html",controller:"ChatRoomViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.onChanged=function(){a.getPage()},a.$watch("query.status",function(){a.getPage()},!0),a.getPage=function(){return f.spin("spinner-grid"),e.get(_.merge({id:"externals"},a.query)).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.external.list",{url:"/list",templateUrl:"app/channels/chat/room/external/list/list.html",controller:"ChatRoomExternalListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.group",{url:"/group",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomGroupListCtrl",["$scope","$timeout","Auth","ChatRoom","usSpinnerService","Tag",function(a,b,c,d,e,f){function g(){return f.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}a.getFullnames=function(a){var b=_.map(a.Users,"fullname");return a.ChatVisitor&&b.unshift(a.ChatVisitor.fullname),_.without(b,c.getCurrentUser().fullname).join(", ")},a.openChat=function(b){return d.get({id:b.id}).$promise.then(function(c){var d=_.find(a.workspaces,{id:c.id,type:"chatRoom"});d?d.active=!0:a.workspaces.push({id:c.id,data:b,name:a.getFullnames(c),type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.query={status:"OPEN",tags:[]},a.currentUser=c.getCurrentUser(),a.gridOptions={enableGridMenu:!1,enableColumnResizing:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"userpic",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar data-ng-if="row.entity.ChatVisitor" height="20" width="20" fontsize="12" data="{{row.entity.ChatVisitor.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #EA4C61" shape="round"></ng-letter-avatar> <ng-letter-avatar data-ng-repeat="user in row.entity.Users | filter:{ id: \'!\' + grid.appScope.currentUser.id} track by user.id" style="margin-right: 3px;" height="20" width="20" fontsize="12" data="{{user.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #3399CC" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"Users",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{grid.appScope.getFullnames(row.entity)}}</div>",enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[]},a.getPage(),g()},a.onChanged=function(){a.getPage()},a.$watch("query.status",function(){a.getPage()},!0),a.getPage=function(){return e.spin("spinner-grid"),d.get(_.merge({id:"groups"},a.query)).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){e.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.group.list",{url:"/list",templateUrl:"app/channels/chat/room/group/list/list.html",controller:"ChatRoomGroupListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.internal",{url:"/internal",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomInternalListCtrl",["$scope","$timeout","socket","Auth","ChatRoom","usSpinnerService",function(a,b,c,d,e,f){a.openChat=function(b){return e.users({users:[d.getCurrentUser().id,b.id]}).$promise.then(function(c){var d=_.find(a.workspaces,{id:c.id,type:"chatRoom"});d?d.active=!0:a.workspaces.push({id:c.id,name:b.fullname,type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.gridOptions={enableGridMenu:!1,enableFiltering:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"userpic",displayName:"",width:35,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar height="20" width="20" fontsize="12" data="{{row.entity.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #3399CC" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"fullname",enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[]},c.socket.on("user:save",function(b){if(b.online&&d.getCurrentUser().id!==b.id){var c=_.find(a.gridOptions.data,{id:b.id});c?_.merge(c,b):a.gridOptions.data.push(b)}else _.remove(a.gridOptions.data,{id:b.id})}),c.socket.on("agent:save",function(b){if(b.online&&d.getCurrentUser().id!==b.id){var c=_.find(a.gridOptions.data,{id:b.id});c?_.merge(c,b):a.gridOptions.data.push(b)}else _.remove(a.gridOptions.data,{id:b.id})}),e.get({id:"agents"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.internal.list",{url:"/list",templateUrl:"app/channels/chat/room/internal/list/list.html",controller:"ChatRoomInternalListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRoomAddCtrl",["$scope","$uibModalInstance","Agent","items",function(a,b,c,d){a.items=d,a.agents=c.get(function(b){a.agents=b,a.items.forEach(function(b){_.remove(a.agents.rows,{id:b.id})})}),a.selected={items:[]},a.ok=function(){b.close(_.union(_.map(a.selected.items,"id"),_.map(a.items,"id")))},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("ChatRoomCloseCtrl",["$scope","$uibModalInstance","closed","ChatWebsite","websiteId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_CHAT"},a.initDisposition=function(){return d.get({websiteId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.closed=c,a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss(); +}}]),angular.module("xCallyShuttleApp").directive("chatRoom",["$interval","$rootScope","$uibModal","$notification","$window","socket","Auth","ChatRoom","ngAudio","xAlert","Tag","CannedAnswer","List","$translate",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/chat/room/room.directive.html",link:function(a){a.user=g.getCurrentUser(),a.message={body:""},a.openContact=function(c){return a.chatRoom.ChatWebsite.List?m.get({listId:a.chatRoom.ChatWebsite.List.id,controller:"contacts",email:c}).$promise.then(function(a){b.$root.workspaces.push({active:!0,"class":"icon-user",contactID:a.id,name:a.email,type:"contact"})})["catch"](function(a){console.error(a)}):void j.show(n.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},a.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},a.form={},a.panelLeft="col-md-4",a.panelRight="col-md-8",a.onSelect=function(){a.message.body=a.modelOptions.selectedAnswer,delete a.modelOptions.selectedAnswer},a.togglePanelLeft=function(){a.panelLeft?(a.panelLeft=null,a.panelRight="col-md-12"):(a.panelLeft="col-md-4",a.panelRight="col-md-8")},a.options={link:!0,linkTarget:"_blank",pdf:{embed:!0},image:{embed:!0},audio:{embed:!0},code:{highlight:!0,lineNumbers:!1},basicVideo:!0},a.getAnswers=function(a){return l.get({key:a}).$promise.then(function(a){return console.log(a),_.map(a.rows,"value")})},a.isMyRoom=function(b){return!!_.find(b,{id:a.user.id})},h.get({id:a.workspace.id}).$promise.then(function(c){a.chatRoom=c,a.form.tags=c.tags,a.chatRoom.ChatVisitor&&(a.chatRoom.ChatVisitors=[],a.chatRoom.ChatVisitors.push(a.chatRoom.ChatVisitor)),f.socket.on("chat_room:save",function(b){a.chatRoom.id===b.id&&_.merge(a.chatRoom,b)}),f.socket.on("user_has_chat_room:save",function(b){return b.UserId!=a.user.id&&b.ChatRoomId==a.chatRoom.id?h.get({id:"agents",controller:b.UserId}).$promise.then(function(b){var c=_.map(a.chatRoom.Users,"fullname");a.chatRoom.ChatVisitor&&c.unshift(a.chatRoom.ChatVisitor.fullname),a.chatRoom.Users.push(b),a.workspace.name=_.without(c,g.getCurrentUser().fullname).join(", ")})["catch"](function(a){console.error(a)}):void 0}),f.socket.on("chat_message:save",function(c){a.chatRoom.id==c.ChatRoomId&&(a.user.id!=c.UserId&&a.chatRoom.ChatMessages.push(c),!b.settings.layout.onFocus&&e.Notification&&d("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Chat Message!",delay:5e3}),a.workspace.active||(i.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play(),a.workspace.unread++))})})["catch"](function(a){console.error(a)}),k.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.closeRoom=function(b){return c.open({animation:!0,templateUrl:"app/channels/chat/room/room.close.html",controller:"ChatRoomCloseCtrl",resolve:{closed:function(){return"CLOSED"===a.chatRoom.status},websiteId:function(){return a.chatRoom.ChatWebsiteId}}}).result.then(function(a){var c={id:b,status:"CLOSED",completeReason:"agent"};return a.disposition&&(c.disposition=a.disposition),h.update(c).$promise["catch"](function(a){j.show(a.data.message,"danger")})})},a.onChanged=function(b){return h.update({id:b},{tags:a.form.tags}).$promise["catch"](function(a){console.error(a)})},a.addAgent=function(b){c.open({animation:!0,templateUrl:"app/channels/chat/room/room.add.html",controller:"ChatRoomAddCtrl",resolve:{items:function(){return _.map(a.chatRoom.Users||[],function(a){return{id:a.id,fullname:a.fullname}})}}}).result.then(function(a){return h.update({id:b,controller:"users"},{users:a}).$promise["catch"](function(a){j.show(a.data.message,"danger")})})},a.sendMessage=function(){var b={body:angular.copy(a.message.body),createdAt:moment(),UserId:a.user.id,User:{fullname:a.user.fullname}};return a.message.body.trim().length?(a.chatRoom.ChatMessages.push(b),a.message.body="",h.save({id:a.chatRoom.id,controller:"messages"},{body:b.body}).$promise["catch"](function(a){console.error(a)})):void 0}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room",{url:"/room",templateUrl:"app/channels/chat/room/room.html",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:8}},resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ChatRoomViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","ChatRoom","xAlert","id",function(a,b,c,d,e,f,g,h){a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("ChatVisitorListCtrl",["$scope","ChatVisitor","gridOptions","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"chat_visitors.csv",columnDefs:[{name:"fullname",cellClass:"text-center"},{name:"email",cellClass:"text-center"},{name:"origin",cellClass:"text-center"},{name:"createdAt",displayName:"createdAt",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/visitors/view/{{row.entity.id}}/profile",name:"profile"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors.list",{url:"/list",templateUrl:"app/channels/chat/visitor/list/list.html",controller:"ChatVisitorListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatVisitorViewCtrl",["$scope","$stateParams","ChatVisitor",function(a,b,c){a.initView=function(){return c.get({id:b.id}).$promise.then(function(b){a.chatVisitor=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors.view",{url:"/view/:id",templateUrl:"app/channels/chat/visitor/view/view.html",controller:"ChatVisitorViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.visitors.view.profile",{url:"/profile",templateUrl:"app/channels/chat/visitor/view/view.profile.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors",{url:"/visitors",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").factory("ChatApplication",["$resource",function(a){return a("/api/chat/applications/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatWebsite",["$resource",function(a){return a("/api/chat/websites/:websiteId/:controller/:id",{id:"@websiteId"},{update:{method:"PUT"},updateFields:{method:"PUT",isArray:!0}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteListCtrl",["$scope","gridOptions","ChatWebsite",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_websites.csv",columnDefs:[{name:"name"},{name:"description"},{name:"address"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/chat/websites/view/{{row.entity.id}}/embedding/view",name:"embedding"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.list",{url:"/list",templateUrl:"app/channels/chat/website/list/list.html",controller:"ChatWebsiteListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionListCtrl",["$scope","gridOptions","ChatWebsite","$http","$translate","$stateParams","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"chat_applications.csv",columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.ChatQueue ? row.entity.ChatQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/chat/websites/view/{{row.entity.ChatWebsiteId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{websiteId:f.websiteId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.list",{url:"/list",templateUrl:"app/channels/chat/website/view/action/list/list.html",controller:"ChatWebsiteViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","ChatApplication","ChatQueue","Agent","Interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){return a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],k.get({id:c.actionId}).$promise.then(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getQueues=function(){return l.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getAgents=function(){return m.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getIntervals=function(){return n.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.updateItem=function(){var b=["*","*","*","*"],e={app:a.application.app,timeout:a.application.timeout,chatAccountId:c.id};switch(a.application.app){case"agent":e.UserId=a.application.UserId,e.ChatQueueId=null;break;case"queue":e.ChatQueueId=a.application.ChatQueueId,e.UserId=null}switch(a.application.intType){case"always":e.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",e.interval=b.join(","),delete a.application.IntervalId;break;case"list":e.IntervalId=a.application.IntervalId}return k.update({id:c.actionId},e).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/chat/website/view/action/view/view.html",controller:"ChatWebsiteViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionWizardCtrl",["$scope","$http","Agent","Interval","ChatQueue","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={app:"queue",intType:"always",alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return e.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){i.show(a.message||a.data.message,"danger")})},a.getIntervals=function(){return d.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){i.show(a.message||a.data.message,"danger")})},a.createItem=function(){var c=["*","*","*","*"],d={app:a.application.app,timeout:a.application.timeout,ChatWebsiteId:f.websiteId};switch(a.application.app){case"agent":d.UserId=a.application.UserId;break;case"queue":d.ChatQueueId=a.application.ChatQueueId}switch(a.application.intType){case"always":d.interval=c.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(c[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?c[1]="*":c[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?c[2]="*":c[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?c[3]="*":c[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",d.interval=c.join(","),delete a.application.IntervalId;break;case"list":d.IntervalId=a.application.IntervalId}b.post("/api/chat/applications",d).success(function(){h.path("/channels/chat/websites/view/"+f.websiteId+"/actions/list")}).error(function(a){i.show(a.message||a.data.message,"danger")})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/chat/website/view/action/wizard/wizard.html",controller:"ChatWebsiteViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("ChatDisposition",["$resource",function(a){return a("/api/chat/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewModalDispositionAddCtrl",["$scope","$uibModalInstance","ChatWebsite","id","xAlert","$translate",function(a,b,c,d,e,f){a.ok=function(){return c.save({websiteId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.show(f.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","ChatWebsite","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({websiteId:b.websiteId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({websiteId:b.websiteId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({websiteId:b.websiteId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/chat/website/view/disposition/modal/add.modal.html",controller:"ChatWebsiteViewModalDispositionAddCtrl",resolve:{id:function(){return b.websiteId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.dispositions",{url:"/dispositions",controller:"ChatWebsiteDispositionViewCtrl",templateUrl:"app/channels/chat/website/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.embedding",{url:"/embedding",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewEmbeddingViewCtrl",["$scope","$stateParams","$translate","clipboard","xAlert","ChatWebsite",function(a,b,c,d,e,f){a.initView=function(){return f.get({websiteId:b.websiteId,controller:"snippet"}).$promise.then(function(b){a.snippetCode=b.html})["catch"](function(a){e.show(a.message||a.data.message,"danger")})},a.copyToClipboard=function(){d.copyText(a.snippetCode),e.show(c.instant("MESSAGE_TEXT_COPIED_CLIPBOARD")+"!","success")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.embedding.view",{url:"/view",templateUrl:"app/channels/chat/website/view/embedding/view/view.html",controller:"ChatWebsiteViewEmbeddingViewCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.form",{url:"/forms",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewFormViewCtrl",["$scope","$builder","$validator","$stateParams","$translate","ChatWebsite","xAlert",function(a,b,c,d,e,f,g){a.saveForm=function(a){var c=angular.copy(b.forms[a]);return c.length>3?g.show("You can insert at least 3 input elements","danger"):(_.forEach(c,function(a){delete a.id}),f.updateFields({websiteId:d.websiteId,controller:"fields",id:a},c).$promise.then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message||a.data.message,"danger")}))},a.getChatWebsiteFields=function(a){return f.query({websiteId:d.websiteId,controller:"fields",id:a}).$promise.then(function(c){_.forEach(c,function(c){b.addFormObject(a,c)})})["catch"](function(a){g.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.form.view",{url:"/view",templateUrl:"app/channels/chat/website/view/form/view/view.html",controller:"ChatWebsiteViewFormViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewProactiveListCtrl",["$scope","gridOptions","ChatWebsite","$http","$translate","$stateParams","$uibModal",function(a,b,c,d,e,f,g){a.initProactiveActions=function(){var d={exporterCsvFilename:"telephones.csv",columnDefs:[{name:"name"},{name:"type"},{name:"action",width:125,buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{websiteId:f.websiteId,controller:"proactive"})},a.createItem=function(b){var c=g.open({animation:!0,templateUrl:"app/channels/chat/website/view/proactive/list/list.create.modal.html",controller:"ChatWebsiteProactiveListCreateCtrl",resolve:{item:b}});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteProactiveListCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","ChatWebsite","xAlert","item",function(a,b,c,d,e,f,g){a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_PROACTIVE_ACTION"):b.instant("APPLICATION_NEW_PROACTIVE_ACTION"),a.possibleType=[{type:"mouseOver",title:"Mouse Over"},{type:"timeout",title:"Timeout"}],a.save=function(){return g?e.update({websiteId:d.websiteId,controller:"proactive",id:a.item.id},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.show(a.message||a.data.message,"danger")}):e.save({websiteId:d.websiteId,controller:"proactive"},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.proactive.list",{url:"/list",templateUrl:"app/channels/chat/website/view/proactive/list/list.html",controller:"ChatWebsiteViewProactiveListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.proactive",{url:"/proactive",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteSettingViewCtrl",["$scope","$stateParams","$translate","$location","$timeout","socket","xAlert","ChatWebsite","List",function(a,b,c,d,e,f,g,h,i){a.initView=function(){return i.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)})},a.updateItemChatWebsite=function(){return h.update({id:b.websiteId},{ListId:a.chatWebsite.ListId}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.settings",{url:"/settings",controller:"ChatWebsiteSettingViewCtrl",templateUrl:"app/channels/chat/website/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.snippet",{url:"/snippet",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewSnippetViewCtrl",["$scope","$http","$stateParams","$translate","Template",function(a,b,c,d,e){a.$translate=d,a.statePreview={state:"online"},a.enquirySwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.fidelitySwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.lang={HeaderCurrentlyChatting:"Live Chat",HeaderOffline:"Contact us",OperatorOfflineMessage:"It appears as if all operators are currently offline.",OfflineMessage:"<strong>We're not online.</strong><br/>It doesn't mean we're not there to help - leave your message below and we'll be in touch as soon as possible.",EnquiryMessagePlaceholder:"Your message...",EnquiryButtonText:"Leave message",EnquirySubmitSuccess:"Your message was sucessfully submitted - we will contact you as soon as possible.",OperatorComposing:"{fullname} is typing...",FirstMessageText:"",ExitChatButtonText:"Exit Chat",ExitChatQuestionText:"Are you sure?",ExitChatButtonConfirmText:"Yes",ExitChatButtonCancelText:"No",MessagePlaceholderText:"Your message...",MessageSendButtonText:"Send",ValidationEmailRequired:"Please enter your email address",ValidationEmailInvalid:"Please enter a valid email address",ValidationEmailMaxLength:"The email address may not exceed 85 characters",ValidationUsernameRequired:"Please enter your name",ValidationUsernameMaxLength:"The name may not exceed 45 characters",ValidationEnquiryRequired:"Please enter your enquiry",ValidationEnquiryMaxLength:"The enquiry may not exceed 1500 characters",ValidationMessageRequired:"Please enter your message",ValidationMessageMaxLength:"The message may not exceed 750 characters"},a.initView=function(){return e.get().$promise.then(function(b){a.templates=b.rows})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.snippet.view",{url:"/view",templateUrl:"app/channels/chat/website/view/snippet/view/view.html",controller:"ChatWebsiteViewSnippetViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewCtrl",["$scope","xAlert","$http","$location","$stateParams","$translate","WizardHandler","ChatApplication","ChatWebsite",function(a,b,c,d,e,f,g,h,i){a.initApplication=function(){a.forms={},a.application={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.deleteItem=function(a){return h["delete"]({id:a}).$promise.then(function(){b.show(f.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},a.initView=function(){return i.get({id:e.websiteId}).$promise.then(function(b){a.chatWebsite=b})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},a.updateItem=function(){return i.update({id:a.chatWebsite.id},a.chatWebsite).$promise.then(function(){b.show(f.instant("MESSAGE_CHAT_WEBSITE_UPDATE_SUCCESS")+"!","success")})["catch"](function(a){b.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view",{url:"/view/:websiteId",templateUrl:"app/channels/chat/website/view/view.html",controller:"ChatWebsiteViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites",{url:"/websites",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","ChatWebsite",function(a,b,c,d,e,f,g){a.$translate=d,a.forms={formSetting:void 0,formAppearance:void 0,formLabel:void 0,formFunctionality:void 0},a.next=function(){e.wizard().next()},a.exitValidation=function(a){return a},a.item={},a.createItem=function(){return g.save(a.item).$promise.then(function(){f.show(d.instant("MESSAGE_CHAT_WEBSITE_CREATE_SUCCESS"),"success"),c.path("/channels/chat/websites/list")})["catch"](function(a){f.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.wizard",{url:"/wizard",templateUrl:"app/channels/chat/website/wizard/wizard.html",controller:"ChatWebsiteWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts",{url:"/accounts",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxAccountListCtrl",["$scope","$uibModal","gridOptions","FaxAccount",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"chat_websites.csv",columnDefs:[{name:"name"},{name:"description"},{name:"localstationid"},{name:"TrunkName",displayName:"APPLICATION_TRUNK"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/fax/accounts/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/channels/fax/account/list/list.create.modal.html",controller:"FaxAccountListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("FaxAccountListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","FaxAccount","Trunk",function(a,b,c,d,e,f){a.initWizard=function(){return a.form={},a.item={},a.trunks=[],f.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){d.error(a)})},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.list",{url:"/list",templateUrl:"app/channels/fax/account/list/list.html",controller:"FaxAccountListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionListCtrl",["$scope","gridOptions","FaxAccount","$http","$translate","$stateParams",function(a,b,c,d,e,f){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"fax_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.FaxQueue ? row.entity.FaxQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/fax/accounts/view/{{row.entity.FaxAccountId}}/actions/view/{{row.entity.id}}", +name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.list",{url:"/list",templateUrl:"app/channels/fax/account/view/action/list/list.html",controller:"FaxAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","FaxQueue","FaxAccount",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){return a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],n.get({accountId:c.accountId,controller:"applications",id:c.actionId}).$promise.then(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})})["catch"](function(a){f.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var b=["*","*","*","*"],e={app:a.application.app,timeout:a.application.timeout};switch(a.application.app){case"agent":e.UserId=a.application.UserId;break;case"queue":e.FaxQueueId=a.application.FaxQueueId}switch(a.application.intType){case"always":e.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",e.interval=b.join(","),delete a.application.IntervalId;break;case"list":e.IntervalId=a.application.IntervalId}return n.update({accountId:c.accountId,controller:"applications",id:c.actionId},e).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/fax/account/view/action/view/view.html",controller:"FaxAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionWizardCtrl",["$scope","$http","Agent","FaxQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","FaxAccount",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var b=["*","*","*","*"],c={app:a.application.app,timeout:a.application.timeout};switch(a.application.app){case"agent":c.UserId=a.application.UserId;break;case"queue":c.FaxQueueId=a.application.FaxQueueId}switch(a.application.intType){case"always":c.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",c.interval=b.join(","),delete a.application.IntervalId;break;case"list":c.IntervalId=a.application.IntervalId}return n.save({accountId:f.accountId,controller:"applications"},c).$promise.then(function(){i.show(g.instant("MESSAGE_WELL_DONE"),"success"),h.path("/channels/fax/accounts/view/"+f.accountId+"/actions/list")})["catch"](function(a){i.error(a)})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/fax/account/view/action/wizard/wizard.html",controller:"FaxAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("FaxDisposition",["$resource",function(a){return a("/api/fax/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","FaxAccount","id","xAlert",function(a,b,c,d,e){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","FaxAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){f.error(a)})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){f.error(a)})},a.deleteDisposition=function(c){return e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){f.error(a)})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/fax/account/view/disposition/modal/add.modal.html",controller:"FaxInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.dispositions",{url:"/dispositions",controller:"FaxAccountDispositionViewCtrl",templateUrl:"app/channels/fax/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountSettingViewCtrl",["$scope","$stateParams","$translate","FaxAccount","List","Trunk","xAlert",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){return a.rate=["2400","4800","7200","9600","12000","14400"],a.techs=["SIP","IAX","DADHI","KHOMP"],f.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){g.error(a)}),e.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){g.error(a)}),d.get({id:b.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){g.error(a)})},a.updateItemFaxAccount=function(){return d.update({id:b.accountId},a.account).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.settings",{url:"/settings",controller:"FaxAccountSettingViewCtrl",templateUrl:"app/channels/fax/account/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","FaxAccount",function(a,b,c,d,e,f,g,h,i,j){a.initView=function(){return j.get({id:c.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){h.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view",{url:"/view/:accountId",templateUrl:"app/channels/fax/account/view/view.html",controller:"FaxAccountViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}})}]),angular.module("xCallyShuttleApp").controller("FaxAccountWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler","Trunk","FaxAccount",function(a,b,c,d,e,f,g,h){a.translate=d,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){return a.$translate=d,a.forms={},a.item={},a.rate=["2400","4800","7200","9600","12000","14400"],a.techs=["SIP","IAX","DADHI","KHOMP"],a.item.headerinfo="xCALLY Motion Fax",a.item.ecm="yes",a.item.minrate="4800",a.item.maxrate="14400",a.item.modem="v17,v27,v29",a.item.gateway="no",a.item.faxdetect="no",a.item.t38timeout=5e3,a.item.tech="SIP",g.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){e.error(a)})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return h.save(a.item).$promise.then(function(a){e.show(d.instant("MESSAGE_WELL_DONE"),"success"),c.path("/channels/fax/accounts/list")})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/fax/account/wizard/wizard.html",controller:"FaxAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax",{url:"/fax",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("FaxAccount",["$resource",function(a){return a("/api/fax/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxAttachment",["$resource",function(a){return a("/api/fax/attachments/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").factory("FaxMessage",["$resource",function(a){return a("/api/fax/messages/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxReport",["$resource",function(a){return a("/api/report/faxs/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxRoom",["$resource",function(a){return a("/api/fax/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox",{url:"/inbox",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").directive("faxMessage",["$rootScope","$translate","FaxMessage","List","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"=",listId:"="},templateUrl:"app/channels/fax/inbox/message/message.directive.html",link:function(f){f.openContact=function(c){return f.listId?d.get({listId:f.listId,controller:"contacts",phone:c}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.phone,type:"contact"})})["catch"](function(a){e.error(a)}):void e.show(b.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},f.retry=function(a){return c.update({id:a,status:"SENDING"}).$promise["catch"](function(a){console.error(a)})}}}}]),angular.module("xCallyShuttleApp").directive("faxNote",["$translate","Modal","Auth","FaxMessage","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"="},templateUrl:"app/channels/fax/inbox/note/note.directive.html",link:function(f){f.Auth=c,f.deleteNote=b.confirm["delete"](function(){return d.remove({id:f.message.id}).$promise.then(function(){e.show(a.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.error(a)})})}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalNoteCtrl",["$scope","$uibModalInstance","$translate","id","FaxRoom","xAlert",function(a,b,c,d,e,f){a.initModal=function(){a.item={}},a.ok=function(){return e.save({id:d,controller:"messages"},{text:a.item.text,status:"NOTE"}).$promise.then(function(){f.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})["finally"](function(){b.close()})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").directive("faxRoom",["$cookieStore","$translate","$uibModal","$timeout","FaxAccount","FaxRoom","FaxMessage","FileUploader","xAlert","usSpinnerService","socket","Tag","Auth","FaxAttachment",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/fax/inbox/room/room.directive.html",link:function(o){function p(a){if(a){var b=_.words(a),c=_.map(b,function(a){return a?a[0]:""});return c.join("").toUpperCase()}return!1}o.$on("$destroy",function(){k.unsyncUpdates("fax_message")});var q=[];o.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},o.panelLeft=null,o.panelRight="col-md-12",o.forms={},o.form={from:"",to:"",disabled:!1},k.socket.on("fax_message:remove",function(a){_.remove(o.faxRoom.FaxMessages,{id:a.id})}),k.socket.on("fax_message:save",function(a){return o.workspace.id&&a.FaxRoomId==o.workspace.id?(o.workspace.active||o.workspace.unread++,g.get({id:a.id}).$promise.then(function(a){o.faxRoom||(o.faxRoom={FaxMessages:[]});var b=_.findIndex(o.faxRoom.FaxMessages,{id:a.id});b>-1?_.merge(o.faxRoom.FaxMessages[b],a):o.faxRoom.FaxMessages.unshift(a),o.panelLeft="col-md-6",o.panelRight="col-md-6"})["catch"](function(a){console.error(a)})):void 0});var r=o.uploader=new h({url:"api/fax/attachments",autoUpload:!0,withCredentials:!0,queueLimit:1,headers:{Authorization:"Bearer "+a.get("token")}});return r.filters.push({name:"pdfFilter",fn:function(a,b){var c="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|pdf|".indexOf(c)}}),r.onWhenAddingFileFailed=function(a,c,d){switch(c.name){case"queueLimit":i.show(b.instant("MESSAGE_QUEUE_LIMIT_EXCEEDED"),"danger");break;case"pdfFilter":i.show(b.instant("MESSAGE_WRONG_FILE_FORMAT"),"danger");break;default:i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")}},r.removeFromQueue=function(a){var c=this;return n["delete"]({id:a.basename}).$promise.then(function(){var b=c.getIndexOfItem(a),d=c.queue[b];d.isUploading&&d.cancel(),c.queue.splice(b,1),d._destroy(),c.progress=c._getTotalProgress(),q=_.reject(q,{basename:a.basename})})["catch"](function(){i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},r.onErrorItem=function(){i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},r.onSuccessItem=function(a,b){var c={path:b.path,name:b.name,basename:b.basename};a=_.merge(a,c),q.push(c)},o.getMessageMailId=function(a){var b=a.UserId?"imgFaxUserId"+a.UserId:"imgFaxVisitorId";return b+=o.faxRoom.id.toString()+a.id.toString()},o.togglePanelLeft=function(){o.panelLeft?(o.panelLeft=null,o.panelRight="col-md-12"):(o.panelLeft="col-md-6",o.panelRight="col-md-6")},o.closeRoom=function(){return c.open({animation:!0,templateUrl:"app/channels/fax/inbox/status/status.modal.html",controller:"FaxInboxStatusModalCtrl",resolve:{status:function(){return o.faxRoom.status},accountId:function(){return o.faxRoom.FaxAccount.id}}}).result.then(function(a){return f.update({id:o.workspace.id},a).$promise["catch"](function(a){i.error(a)})})},o.loadAgents=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.agents.modal.html",controller:"FaxInboxViewModalAgentCtrl",resolve:{roomId:function(){return o.workspace.id}}})},o.cancel=function(){o.form.disabled=!1,o.form.from="",o.form.to=""},o.loadNote=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/note/note.modal.html",controller:"FaxInboxViewModalNoteCtrl",resolve:{id:function(){return o.workspace.id}}})},o.getMessageFaxId=function(a){var b=a.UserId?"imgFaxUserId"+a.UserId:"imgFaxVisitorId";return b+=o.faxRoom.id.toString()+a.id.toString()},o.getMessageRoomAvatar=function(a,b,c,e){d(function(){var d=b?"#imgFaxUserId"+b:"#imgFaxVisitorId";d+=o.faxRoom.id.toString()+a.toString(),angular.element(d).avatar({useGravatar:!1,initials:e?[]:p(c),fallbackImage:e?"api/users/avatar/"+e:"api/users/avatar/unknown_avatar"})})},o.onChanged=function(){return f.update({id:o.workspace.id},{tags:o.form.tags}).$promise["catch"](function(a){i.error(a)})},o.sendFax=function(){j.spin("spinner-grid"),o.form.disabled=!0;var a={from:o.form.from,to:o.form.to||"",status:"SENDING",FaxAttachments:q};return o.faxRoom?f.save({id:o.workspace.id,controller:"messages"},a).$promise.then(function(){r.queue=[],q=[],i.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1}):g.save(a).$promise.then(function(a){return i.show(b.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),f.get({id:"messages",controller:a.id}).$promise}).then(function(a){r.queue=[],q=[],o.workspace.id=a.id,o.workspace.name=a.from,o.faxRoom=a})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1})},l.get().$promise.then(function(a){o.tags=_.map(a.rows,"name")})["catch"](function(a){console.error(a)}),e.get().$promise.then(function(a){o.faxAccounts=a.rows})["catch"](function(a){console.error(a)}),o.workspace.id?(o.panelLeft="col-md-6",o.panelRight="col-md-6",f.get({id:o.workspace.id}).$promise.then(function(a){o.faxRoom=a,o.form.from=a.FaxAccount.localstationid,o.form.tags=a.tags;var b=_.findLast(a.FaxMessages,{status:"RECEIVED"});return b&&(o.form.to=b.from),k.socket.on("fax_room:save",function(a){a.id===o.workspace.id&&_.merge(o.faxRoom,a)}),a}).then(function(a){return m.isAgent()&&"CLOSED"!==a.status?f.update({id:o.workspace.id},{status:"OPEN"}):void 0}).then(function(){return m.isAgent()?f.update({id:o.workspace.id,controller:"agents"},{agents:[m.getCurrentUser().id]}).$promise:void 0})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1})):(o.panelLeft=null,o.panelRight="col-md-12",j.stop("spinner-grid"),void 0)}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxStatusModalCtrl",["$scope","$uibModalInstance","FaxAccount","status","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_FAX"},a.initDisposition=function(){return a.item={disposition:null,status:"CLOSED"},c.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","FaxAccount","FaxRoom","gridOptions","uiGridConstants","Auth","Modal","xAlert","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"faxRoom"});d?d.active=!0:a.workspaces.push({id:b,name:c,type:"faxRoom","class":"icon-paper-plane",active:!0})},a.getPage=function(){h.spin("spinner-grid");var b={accountId:e.id,controller:"rooms"};return a.query&&_.merge(b,a.query),j.query(b).$promise.then(function(b){q.set("faxAccountId",e.id),a.gridOptions.data=b,i.unsyncUpdates("fax_room"),i.socket.on("fax_room:save",function(b){if(b.FaxAccountId==e.id){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status!==b.status?_.remove(a.gridOptions.data,{id:b.id}):_.merge(c,b))}}),i.socket.on("fax_room:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})})["catch"](function(a){p.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.initView=function(){a.id=[],a.isAdmin=n.isAdmin(),a.isAgent=n.isAgent(),a.uncheckable=!1,a.query={status:q.get("faxStatus")?q.get("faxStatus"):"UNMANAGED",tags:q.get("faxTags")?q.get("faxTags"):[]},a.$watch("query.status",function(){q.set("faxStatus",a.query.status),a.getPage(a.query)},!0),j.get().$promise.then(function(b){a.faxAccounts=b.rows})["catch"](function(a){console.error(a)}),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"fax_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"lastEvent",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div> <span data-ng-class=\"{'icon-arrow-up font-green': row.entity.lastEvent === 'SENT', 'icon-arrow-up font-yellow': row.entity.lastEvent === 'SENDING', 'icon-arrow-down font-green': row.entity.lastEvent === 'RECEIVED', 'icon-close font-red': row.entity.lastEvent === 'FAILED', 'icon-question': !row.entity.lastEvent}\"> </span> </div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"from",cellClass:"text-center"},{name:"disposition",displayName:"APPLICATION_DISPOSITION",headerCellFilter:"translate"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:m.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.from)"><i class="fa fa-envelope" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id, row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(a.query)},a.onChanged=function(){q.set("faxTags",a.query.tags),a.getPage(a.query)},a.loadAgents=function(a){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.agents.modal.html",controller:"FaxInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.tagItems=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.tags.modal.html",controller:"FaxInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.deleteItem=o.confirm["delete"](function(b){var c={id:b};return k.remove(c).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.error(a)})}),a.deleteItems=o.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.error(a)})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/fax/inbox/view/account/list/list.html",controller:"FaxInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","FaxRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h){a.initModal=function(){a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){b.rows.forEach(function(b){a.agents.push(b)})})["catch"](function(a){console.error(a)}),f.query({id:h,controller:"agents"}).$promise.then(function(b){b.forEach(function(b){a.agents.push(b),a.item.agents.push(b.id)})})["catch"](function(a){console.error(a)}),a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{classes:"btn btn-success",text:"APPLICATION_RETRY",click:function(a){b.close(a)}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}},a.ok=function(){return f.update({id:h,controller:"agents",agents:a.item.agents}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewCtrl",["$scope","$timeout","$location","FaxAccount","xAlert",function(a,b,c,d,e){a.initView=function(){return d.get().$promise.then(function(b){var d=null;a.faxAccounts=b.rows,a.faxAccounts.length&&(d="/channels/fax/inbox/view/account/"+a.faxAccounts[0].id+"/list"),d&&c.path(d)})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view",{url:"/view",templateUrl:"app/channels/fax/inbox/view/view.html",controller:"FaxInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalStatusCtrl",["$scope","$uibModalInstance","$translate","$stateParams","$location","FaxRoom","xAlert","id","status",function(a,b,c,d,e,f,g,h,i){a.initModal=function(){a.modal={dismissable:!0,title:"APPLICATION_STATUS",html:"<p>"+c.instant("MESSAGE_CHANGE_STATUS")+"<strong> "+i+"</strong>?</p>",status:i,buttons:[{classes:"btn btn-success",text:"APPLICATION_CONFIRM",click:function(a){return f.update({id:h},{status:i}).$promise.then(function(){g.show(c.instant("MESSAGE_STATUS_UPDATE_SUCCESS"),"success"),b.close(a)})["catch"](function(a){g.error(a)})}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","FaxRoom","xAlert","id",function(a,b,c,d,e,f,g,h){console.log(h),a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").factory("FaxQueue",["$resource",function(a){return a("/api/fax/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FaxQueueListCtrl",["$scope","FaxQueue","gridOptions","Auth","$uibModal",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var e={exporterCsvFilename:"fax_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"strategy"},{name:"timeout"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/fax/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow", +href:"/channels/fax/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===d.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a)},a.createItem=function(){var b=e.open({animation:!0,templateUrl:"app/channels/fax/queue/list/list.create.modal.html",controller:"FaxQueueListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("FaxQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","FaxQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues.list",{url:"/list",templateUrl:"app/channels/fax/queue/list/list.html",controller:"FaxQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","FaxQueue","Team","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return f.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return f["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return f.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){e.show(a.message,"danger")})},a.updateFaxQueue=function(){return f.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.message,"danger")})},a.getTeams=function(){return g.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,f.get({id:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindMailQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasFaxQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues.view",{url:"/view/:id",templateUrl:"app/channels/fax/queue/view/view.html",controller:"FaxQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.fax.queues.view.settings",{url:"/settings",templateUrl:"app/channels/fax/queue/view/view.settings.html"}).state("main.channels.fax.queues.view.agents",{url:"/agents",templateUrl:"app/channels/fax/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","FaxQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.faxPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_fax_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PFaxQueues,"id"),b.FaxQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.FaxQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_fax_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.FaxQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.faxPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.FaxQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.faxQueues=b.rows,e.syncUpdates("fax_queue",a.faxQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.faxQueues=[];var t={controller:"realtime",controller1:"fax",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"faxPause",width:300,displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.faxQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_fax_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/fax/realtime/view/agent/queue.modal.add.html",controller:"FaxRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.faxQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.faxQueues,function(a){return _.includes(b.queues,a.id)}),channel:"fax",data1:e,data3:b.queues.join(","),data4:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"fax",data1:a,data3:b,data4:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/fax/realtime/view/agent/agent.modal.info.html",controller:"FaxRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/fax/realtime/view/agent/agent.html",controller:"FaxRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportFaxSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_fax_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_fax_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_fax_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/fax/realtime/view/application/application.html",controller:"FaxRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.fax.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.fax.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.fax.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.fax.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.fax.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.fax.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view",{url:"/view",templateUrl:"app/channels/fax/realtime/view/view.html",controller:"FaxRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportFaxRoom",["$resource",function(a){return a("/api/report/fax/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportFaxSession",["$resource",function(a){return a("/api/report/fax/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailAccount",["$resource",function(a){return a("/api/mail/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts",{url:"/accounts",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailAccountListCtrl",["$scope","$stateParams","gridOptions","MailAccount","socket",function(a,b,c,d,e){a.$on("$destroy",function(){e.unsyncUpdates("mail_server_in")}),a.initView=function(){e.socket.on("mail_server_in:save",function(b){var c=_.find(a.gridOptions.data,{id:b.MailAccountId});c&&(c.MailServerIn.state=b.state,c.MailServerIn.source=JSON.parse(b.source))});var f={exporterCsvFilename:"mail_accounts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"address"},{name:"MailServerIn.state",width:100,cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span class=\"label label-sm\" data-ng-class=\"row.entity.MailServerIn.state === 'CONNECTED' ? 'label-success' : 'label-danger'\">{{row.entity.MailServerIn.state}}</span></div>",displayName:"IMAP",enableSorting:!1,enableFiltering:!1},{name:"MailServerOut.state",width:110,cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span class=\"label label-sm\" data-ng-class=\"row.entity.MailServerOut.state === 'CONNECTED' ? 'label-success' : 'label-danger'\">{{row.entity.MailServerOut.state}}</span></div>",displayName:"SMTP",enableSorting:!1,enableFiltering:!1},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/mail/accounts/view/{{row.entity.id}}/settings",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,f,a,{accountId:b.accountId})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.list",{url:"/list",templateUrl:"app/channels/mail/account/list/list.html",controller:"MailAccountListCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailServerIn",["$resource",function(a){return a("/api/mail/servers/in/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailServerOut",["$resource",function(a){return a("/api/mail/servers/out/:id/:controller",{id:"@id"},{update:{method:"PUT"},test:{method:"GET"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionListCtrl",["$scope","gridOptions","MailAccount","$http","$translate","$stateParams",function(a,b,c,d,e,f){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"mail_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.MailQueue ? row.entity.MailQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/mail/accounts/view/{{row.entity.MailAccountId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.list",{url:"/list",templateUrl:"app/channels/mail/account/view/action/list/list.html",controller:"MailAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","MailQueue",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],b.get("/api/mail/applications/"+c.actionId).success(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})}).error(function(a){console.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var e=["*","*","*","*"],g={app:a.application.app,timeout:a.application.timeout,MailAccountId:c.id};switch(a.application.app){case"agent":g.UserId=a.application.UserId;break;case"queue":g.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":g.interval=e.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(e[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?e[1]="*":e[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?e[2]="*":e[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?e[3]="*":e[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=e.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}b.put("/api/mail/applications/"+c.actionId,g).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/mail/account/view/action/view/view.html",controller:"MailAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionWizardCtrl",["$scope","$http","Agent","MailQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var c=["*","*","*","*"],d={app:a.application.app,timeout:a.application.timeout,MailAccountId:f.accountId};switch(a.application.app){case"agent":d.UserId=a.application.UserId;break;case"queue":d.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":d.interval=c.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(c[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?c[1]="*":c[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?c[2]="*":c[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?c[3]="*":c[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",d.interval=c.join(","),delete a.application.IntervalId;break;case"list":d.IntervalId=a.application.IntervalId}b.post("/api/mail/applications",d).success(function(){h.path("/channels/mail/accounts/view/"+f.accountId+"/actions/list")}).error(function(a){console.error(a)})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/mail/account/view/action/wizard/wizard.html",controller:"MailAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailDisposition",["$resource",function(a){return a("/api/mail/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","MailAccount","id","xAlert","$translate",function(a,b,c,d,e,f){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.show(f.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","MailAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/mail/account/view/disposition/modal/add.modal.html",controller:"MailInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.dispositions",{url:"/dispositions",controller:"MailAccountDispositionViewCtrl",templateUrl:"app/channels/mail/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("MailAccountSettingViewCtrl",["$scope","$http","$stateParams","$translate","$location","$timeout","socket","xAlert","MailAccount","MailMessage","MailServerIn","MailServerOut","usSpinnerService","List","Template",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a.imapDisabled=!1,a.smtpDisabled=!1,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.$on("$destroy",function(){g.socket.removeAllListeners("mail_message:sent"),g.socket.removeAllListeners("mail_message:failed")}),a.initView=function(){return g.socket.on("mail_message:sent",function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success"),m.stop("spinner-grid")}),g.socket.on("mail_message:failed",function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),m.stop("spinner-grid")}),n.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)}),o.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)}),i.get({id:c.accountId}).$promise.then(function(b){a.account=b,a.account.MailServerIn.source=JSON.parse(a.account.MailServerIn.source),a.account.MailServerOut.source=JSON.parse(a.account.MailServerOut.source),g.socket.on("mail_server_in:state",function(b){if(b.id===a.account.MailServerIn.id)switch(a.account.MailServerIn.state=b.state, +a.account.MailServerIn.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:m.stop("spinner-grid"),a.imapDisabled=!1}}),g.socket.on("mail_server_out:state",function(b){if(b.id===a.account.MailServerOut.id)switch(a.account.MailServerOut.state=b.state,a.account.MailServerOut.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:m.stop("spinner-grid"),a.smtpDisabled=!1}})})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailAccount=function(){return i.update({id:c.accountId},{name:a.account.name,description:a.account.description,address:a.account.address,fidelity:a.account.fidelity,timeout:a.account.timeout,ListId:a.account.ListId,TemplateId:a.account.TemplateId}).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailServerIn=function(){var b=angular.copy(a.account.MailServerIn);return delete b.source,m.spin("spinner-grid"),a.imapDisabled=!0,k.update({id:b.id},b).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailServerOut=function(){var b=angular.copy(a.account.MailServerOut);return delete b.source,m.spin("spinner-grid"),a.smtpDisabled=!0,l.update({id:b.id},b).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.test=function(){return m.spin("spinner-grid"),a.smtpDisabled=!0,l.update({id:a.account.MailServerOut.id},{state:"CONNECTING"}).$promise["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.settings",{url:"/settings",controller:"MailAccountSettingViewCtrl",templateUrl:"app/channels/mail/account/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewCtrl",["$scope","$stateParams","MailAccount",function(a,b,c){a.initView=function(){return c.get({id:b.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view",{url:"/view/:accountId",controller:"MailAccountViewCtrl",templateUrl:"app/channels/mail/account/view/view.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailAccountWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","MailAccount",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.forms={},a.item={MailServerIn:{port:993,ssl:!0,"delete":!1,protocol:"IMAP",filter:"UNSEEN",mailbox:"INBOX",keepalive:!0,authTimeout:5,connTimeout:10},MailServerOut:{port:465,ssl:!0}}},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a},a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/channels/mail/accounts/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/mail/account/wizard/wizard.html",controller:"MailAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox",{url:"/inbox",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").directive("mailMessage",["$rootScope","$translate","MailMessage","List","xAlert","Lightbox",function(a,b,c,d,e,f){return{restrict:"E",scope:{message:"=",listId:"="},templateUrl:"app/channels/mail/inbox/message/message.directive.html",link:function(g){g.openPreview=function(a){f.openModal(["api/mail/attachments/"+a],0)},g.openContact=function(c){return g.listId?d.get({listId:g.listId,controller:"contacts",email:c}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.email,type:"contact"})})["catch"](function(a){console.error(a)}):void e.show(b.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},g.retry=function(a){return c.update({id:a,status:"SENDING"}).$promise["catch"](function(a){console.error(a)})}}}}]),angular.module("xCallyShuttleApp").directive("mailNote",["$translate","Modal","Auth","MailMessage","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"="},templateUrl:"app/channels/mail/inbox/note/note.directive.html",link:function(f){f.Auth=c,f.deleteNote=b.confirm["delete"](function(){return d.remove({id:f.message.id}).$promise.then(function(){e.show(a.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})})}}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalNoteCtrl",["$scope","$uibModalInstance","$translate","id","MailRoom","xAlert",function(a,b,c,d,e,f){a.initModal=function(){a.item={}},a.ok=function(){return e.save({id:d,controller:"messages"},{text:a.item.text,status:"NOTE"}).$promise.then(function(){f.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){f.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close()})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").directive("mailRoom",["$rootScope","$cookieStore","$translate","$uibModal","$timeout","Tag","CannedAnswer","MailAttachment","MailAccount","MailRoom","MailMessage","FileUploader","xAlert","usSpinnerService","socket","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/mail/inbox/room/room.directive.html",link:function(e){function q(a){return a?"<br><blockquote>"+a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\n/g,"<br>")+"</blockquote>":void 0}e.$on("$destroy",function(){o.unsyncUpdates("mail_message")});var r=[];e.options={language:a.language,allowedContent:!0,entities:!1,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]}]},e.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},e.panelLeft=null,e.panelRight="col-md-12",e.forms={},e.form={from:[],to:[],sto:[],cc:[],scc:[],tags:[],html:"",disabled:!1},o.socket.on("mail_message:remove",function(a){_.remove(e.mailRoom.MailMessages,{id:a.id})}),o.socket.on("mail_message:save",function(a){return e.workspace.id&&a.MailRoomId==e.workspace.id?(e.workspace.active||e.workspace.unread++,k.get({id:a.id}).$promise.then(function(a){e.mailRoom||(e.mailRoom={MailMessages:[]});var b=_.findIndex(e.mailRoom.MailMessages,{id:a.id});b>-1?_.merge(e.mailRoom.MailMessages[b],a):e.mailRoom.MailMessages.unshift(a),e.panelLeft="col-md-6",e.panelRight="col-md-6"})["catch"](function(a){console.error(a)})):void 0});var s=e.uploader=new l({url:"api/mail/attachments",autoUpload:!0,withCredentials:!0,headers:{Authorization:"Bearer "+b.get("token")}});return s.removeFromQueue=function(a){var b=this;return h["delete"]({id:a.basename}).$promise.then(function(){var c=b.getIndexOfItem(a),d=b.queue[c];d.isUploading&&d.cancel(),b.queue.splice(c,1),d._destroy(),b.progress=b._getTotalProgress(),r=_.reject(r,{basename:a.basename})})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},s.onErrorItem=function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},s.onSuccessItem=function(a,b){var c={size:b.size,path:b.path,name:b.name,basename:b.basename,type:b.type};a=_.merge(a,c),r.push(c)},e.openRoom=function(b){var c=_.find(a.workspaces,{id:b,type:"mailRoom"});c?c.active=!0:a.workspaces.push({id:b,type:"mailRoom","class":"icon-envelope",active:!0})},e.togglePanelLeft=function(){e.panelLeft?(e.panelLeft=null,e.panelRight="col-md-12"):(e.panelLeft="col-md-6",e.panelRight="col-md-6")},e.onSelectAnswer=function(){e.form.html=e.modelOptions.selectedAnswer+e.form.html,delete e.modelOptions.selectedAnswer},e.getAnswers=function(a){return g.get({key:a}).$promise.then(function(a){return _.map(a.rows,"value")})},e.cancel=function(){e.form.disabled=!1,e.form.from=[],e.form.to=[],e.form.sto=[],e.form.cc=[],e.form.scc=[],delete e.form.subject,delete e.form.html},e.updateStatus=function(a){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/status/status.modal.html",controller:"MailInboxStatusModalCtrl",resolve:{roomId:function(){return e.workspace.id},accountId:function(){return e.mailRoom.MailAccount.id},status:function(){return a}}})},e.loadAgents=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.agents.modal.html",controller:"MailInboxViewModalAgentCtrl",resolve:{roomId:function(){return e.workspace.id}}})},e.loadTemplate=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.templates.modal.html",controller:"MailInboxViewModalTemplateCtrl"}).result.then(function(a){e.form.subject=a.template.subject,e.form.html=a.template.html})},e.closeRoom=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/status/status.modal.html",controller:"MailInboxStatusModalCtrl",resolve:{status:function(){return e.mailRoom.status},accountId:function(){return e.mailRoom.MailAccount.id}}}).result.then(function(a){return j.update({id:e.workspace.id},a).$promise["catch"](function(a){m.show(a.data.message,"danger")})})},e.loadNote=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/note/note.modal.html",controller:"MailInboxViewModalNoteCtrl",resolve:{id:function(){return e.workspace.id}}})},e.onChanged=function(){return j.update({id:e.workspace.id},{tags:e.form.tags}).$promise["catch"](function(a){console.error(a)})},e.sendMail=function(){n.spin("spinner-grid"),e.form.disabled=!0;var a={},b={subject:e.form.subject||e.mailRoom.subject,from:e.form.from,to:e.form.sto||[],cc:e.form.scc||[],html:e.form.html||null,text:e.form.text||null,inReplyTo:a.messageId||null,status:"SENDING",MailAttachments:r};return e.mailRoom?(a=_.last(e.mailRoom.MailMessages,{status:"RECEIVED"}),b.inReplyTo=a.messageId||null,j.save({id:e.workspace.id,controller:"messages"},b).$promise.then(function(){e.form.html="",s.queue=[],r=[],m.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})):k.save(b).$promise.then(function(a){return m.show(c.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),j.get({id:"messages",controller:a.id}).$promise}).then(function(a){e.form.html="",s.queue=[],r=[],e.workspace.id=a.id,e.workspace.name=a.subject,e.mailRoom=a})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})},f.get().$promise.then(function(a){e.tags=_.map(a.rows,"name")})["catch"](function(a){console.error(a)}),i.get().$promise.then(function(a){e.mailAccounts=a.rows})["catch"](function(a){console.error(a)}),e.workspace.id?(e.panelLeft="col-md-6",e.panelRight="col-md-6",j.get({id:e.workspace.id}).$promise.then(function(a){e.mailRoom=a,e.workspace.name=a.subject||"No subject",e.form.from.push(a.MailAccount.address),e.form.tags=a.tags;var b=_.findLast(e.mailRoom.MailMessages,{status:"RECEIVED"});return b&&(e.form.to=e.form.cc=e.form.bcc=_.union(b.from,b.to,b.cc,b.bcc),e.form.sto=_.remove(e.form.to,function(b){return b!==a.MailAccount.address}),e.form.subject="Re: "+(b.subject||"No subject"),e.form.html=q(b.text)),o.socket.on("mail_room:save",function(a){a.id===e.workspace.id&&_.merge(e.mailRoom,a)}),a}).then(function(a){return p.isAgent()&&"CLOSED"!==a.status?j.update({id:e.workspace.id},{status:"OPEN"}):void 0}).then(function(){return p.isAgent()?j.update({id:e.workspace.id,controller:"agents"},{agents:[p.getCurrentUser().id]}).$promise:void 0})["catch"](function(a){console.error(a)})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})):(e.panelLeft=null,e.panelRight="col-md-12",n.stop("spinner-grid"),void 0)}}}]),angular.module("xCallyShuttleApp").controller("MailInboxStatusModalCtrl",["$scope","$uibModalInstance","MailAccount","status","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_MAIL"},a.initDisposition=function(){return a.item={disposition:null,status:"CLOSED"},c.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","MailAccount","MailRoom","uiGridConstants","Auth","Modal","xAlert","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"mailRoom"});d?d.active=!0:a.workspaces.push({id:b,type:"mailRoom","class":"icon-envelope",active:!0})},a.getPage=function(){h.spin("spinner-grid");var b={accountId:e.id,controller:"rooms"};return a.query&&_.merge(b,a.query),j.query(b).$promise.then(function(b){p.set("mailAccountId",e.id),a.gridOptions.data=b,i.unsyncUpdates("mail_room"),i.socket.on("mail_room:save",function(b){if(b.MailAccountId==e.id){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status!==b.status?_.remove(a.gridOptions.data,{id:b.id}):_.merge(c,b))}}),i.socket.on("mail_room:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})})["catch"](function(a){console.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.initView=function(){a.id=[],a.isAdmin=m.isAdmin(),a.isAgent=m.isAgent(),a.uncheckable=!1,a.query={status:p.get("mailStatus")?p.get("mailStatus"):"UNMANAGED",tags:p.get("mailTags")?p.get("mailTags"):[]},a.$watch("query.status",function(){p.set("mailStatus",a.query.status),a.getPage()},!0),j.get().$promise.then(function(b){a.mailAccounts=b.rows})["catch"](function(a){console.error(a)}),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"mail_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"lastEvent",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div> <span data-ng-class=\"{'icon-arrow-up font-green': row.entity.lastEvent === 'SENT', 'icon-arrow-up font-yellow': row.entity.lastEvent === 'SENDING', 'icon-arrow-down font-green': row.entity.lastEvent === 'RECEIVED', 'icon-close font-red': row.entity.lastEvent === 'FAILED', 'icon-question': !row.entity.lastEvent}\"> </span> </div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"attachment",displayName:"",headerCellTemplate:'<i class="icon-paper-clip" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.attachment ? 'icon-paper-clip' : ''\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!0,enableColumnMenu:!1},{name:"subject"},{name:"from",cellClass:"text-center"},{name:"disposition",displayName:"APPLICATION_DISPOSITION",headerCellFilter:"translate"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:l.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.subject)"><i class="fa fa-envelope" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id, row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(a.query)},a.onChanged=function(){p.set("mailTags",a.query.tags),a.getPage(a.query)},a.loadAgents=function(a){return c.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.agents.modal.html",controller:"MailInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.tagItems=function(){return c.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.tags.modal.html",controller:"MailInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.deleteItem=n.confirm["delete"](function(b){var c={id:b};return k.remove(c).$promise.then(function(){a.getPage(),o.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){o.show(a.message?a.message:a.data.message,"danger")})}),a.deleteItems=n.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),o.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){o.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/mail/inbox/view/account/list/list.html",controller:"MailInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","Auth","MailRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h,i){var j=[];a.initModal=function(){return a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){for(var c=0;c<b.rows.length;c++)a.agents.push(b.rows[c]);return g.query({id:i,controller:"agents"}).$promise}).then(function(b){for(var c=0;c<b.length;c++)f.isAgent()||a.item.agents.push(b[c]),j.push(b[c].id)})["catch"](function(a){console.error(a)})},a.ok=function(){return j=f.isAgent()?_.union(j,a.item.agents):angular.copy(a.item.agents),g.update({id:i,controller:"agents",agents:j}).$promise.then(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewCtrl",["$scope","$timeout","$location","localStorageService","MailAccount",function(a,b,c,d,e){a.initView=function(){return console.log("ok"),e.get().$promise.then(function(b){var e=null;a.mailAccounts=b.rows,a.mailAccounts.length&&(e="/channels/mail/inbox/view/account/"+(d.get("mailAccountId")||a.mailAccounts[0].id)+"/list"),e&&c.path(e)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view",{url:"/view",templateUrl:"app/channels/mail/inbox/view/view.html",controller:"MailInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css","assets/css/global/ui-grid-inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","MailRoom","xAlert","id",function(a,b,c,d,e,f,g,h){a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalTemplateCtrl",["$scope","$uibModalInstance","Template",function(a,b,c){a.initModal=function(){return a.item={},c.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail",{url:"/mail",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("MailReport",["$resource",function(a){return a("/api/report/mails/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailRoom",["$resource",function(a){return a("/api/mail/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").factory("MailAttachment",["$resource",function(a){return a("/api/mail/attachments/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").factory("MailMessage",["$resource",function(a){return a("/api/mail/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MailQueueListCtrl",["$scope","MailQueue","gridOptions","$uibModal","Auth",function(a,b,c,d,e){a.initView=function(){a.Auth=e;var d={exporterCsvFilename:"voice_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"timeout"},{name:"strategy"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/mail/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/mail/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===e.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/mail/queue/list/list.create.modal.html",controller:"MailQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("MailQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","MailQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues.list",{url:"/list",templateUrl:"app/channels/mail/queue/list/list.html",controller:"MailQueueListCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailQueue",["$resource",function(a){return a("/api/mail/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]},data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","Team","MailQueue","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return g.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return g["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return g.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){console.error(a)})},a.updateMailQueue=function(){return g.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getTeams=function(){return f.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,g.get({id:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindMailQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasMailQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues.view",{url:"/view/:id",templateUrl:"app/channels/mail/queue/view/view.html",controller:"MailQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.mail.queues.view.settings",{url:"/settings",templateUrl:"app/channels/mail/queue/view/view.settings.html"}).state("main.channels.mail.queues.view.agents",{url:"/agents",templateUrl:"app/channels/mail/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","MailQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.mailPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_mail_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PMailQueues,"id"),b.MailQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.MailQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_mail_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.MailQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.mailPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.MailQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.mailQueues=b.rows,e.syncUpdates("mail_queue",a.mailQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.mailQueues=[];var t={controller:"realtime",controller1:"mail",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>', +filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"mailPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.mailQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_mail_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/mail/realtime/view/agent/queue.modal.add.html",controller:"MailRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.mailQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.mailQueues,function(a){return _.includes(b.queues,a.id)}),channel:"mail",data1:e,data3:b.queues.join(","),data4:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"mail",data1:a,data3:b,data4:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/mail/realtime/view/agent/agent.modal.info.html",controller:"MailRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/mail/realtime/view/agent/agent.html",controller:"MailRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportMailSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_mail_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_mail_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_mail_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/mail/realtime/view/application/application.html",controller:"MailRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.mail.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.mail.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.mail.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.mail.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.mail.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.mail.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view",{url:"/view",templateUrl:"app/channels/mail/realtime/view/view.html",controller:"MailRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportMailRoom",["$resource",function(a){return a("/api/report/mail/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportMailSession",["$resource",function(a){return a("/api/report/mail/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:12}}})}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(b){return j.spin("spinner-grid"),g.get(p).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){b&&n(),j.stop("spinner-grid")})}function n(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c&&_.merge(c,b)}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}function o(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}var p={controller:"realtime",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.name}} <{{row.entity.internal}}></div>"},{name:"online",displayName:"APPLICATION_ONLINE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"pauseStatus",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span class="left-margin"><i data-ng-if="row.entity.voicePause || row.entity.mailPause || row.entity.chatPause || row.entity.faxPause || row.entity.smsPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,null)" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i> <i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.id,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i></span><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.id,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select><span data-ng-if="row.entity.voicePause || row.entity.mailPause || row.entity.chatPause || row.entity.faxPause || row.entity.smsPause"> [{{row.entity.pauseType}}]<timer start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000"> [{{hhours}}:{{mminutes}}:{{sseconds}}]</timer></span></div>'},{name:"voicePause",displayName:"APPLICATION_VOICE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.voicePause}"><span class="left-margin"><i data-ng-if="row.entity.voicePause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'voice\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"mailPause",displayName:"APPLICATION_MAIL",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.mailPause}"><span class="left-margin"><i data-ng-if="row.entity.mailPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'mail\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"chatPause",displayName:"APPLICATION_CHAT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.chatPause}"><span class="left-margin"><i data-ng-if="row.entity.chatPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'chat\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"faxPause",displayName:"APPLICATION_FAX",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.faxPause}"><span class="left-margin"><i data-ng-if="row.entity.faxPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'fax\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"smsPause",displayName:"APPLICATION_SMS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.smsPause}"><span class="left-margin"><i data-ng-if="row.entity.smsPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'sms\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){q(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?p.order=null:p.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),m()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){p.offset=(a-1)*b,p.limit=b,m()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?p[a.name]=a.filters[0].term:delete p[a.name]}),m()})}},m(!0),o()};var q=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent")}),a.pause=function(b,c,e,g){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:g||"all"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(d.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/realtime/view/agent/agent.html",controller:"RealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("RealtimeViewCtrl",["$scope",function(a){}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime.view",{url:"/view",templateUrl:"app/channels/realtime/view/view.html",controller:"RealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("ReportCall",["$resource",function(a){return a("/api/report/calls/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsAccount",["$resource",function(a){return a("/api/sms/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts",{url:"/accounts",template:"<div ui-view></div>",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsAccountListCtrl",["$scope","SmsAccount","gridOptions","$stateParams","xAlert","$translate",function(a,b,c,d,e,f){a.message="Hello",a.initView=function(){var e={exporterCsvFilename:"sms_accounts.csv",columnDefs:[{name:"id",displayName:"ID",cellClass:"text-center",width:75,enableSorting:!1,enableFiltering:!1},{name:"name"},{name:"description"},{name:"type",displayName:"APPLICATION_ACCOUNT_TYPE"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/sms/accounts/view/{{row.entity.id}}/settings",name:"profile"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a,{accountId:d.accountId})},a.checkAccount=function(a){return b.get({accountId:a,controller:"check"}).$promise.then(function(){e.show(f.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(a){e.show(f.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.list",{url:"/list",templateUrl:"app/channels/sms/account/list/list.html",controller:"SmsAccountListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SmsApplication",["$resource",function(a){return a("/api/sms/applications/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionListCtrl",["$scope","gridOptions","SmsAccount","$http","$translate","$stateParams","xAlert",function(a,b,c,d,e,f,g){console.log("SmsAccountViewActionListCtrl"),c.get({accountId:f.accountId,controller:"applications"}).$promise.then(function(a){console.log("apps",a)})["catch"](function(a){g.show(a.message,"danger")}),a.initActions=function(){var d={draggable:!0,exporterCsvFilename:"sms_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.SmsQueue ? row.entity.SmsQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/sms/accounts/view/{{row.entity.SmsAccountId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.list",{url:"/list",templateUrl:"app/channels/sms/account/view/action/list/list.html",controller:"SmsAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","SmsQueue","SmsApplication",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],b.get("/api/sms/applications/"+c.actionId).success(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})}).error(function(a){console.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var b=["*","*","*","*"],g={app:a.application.app,timeout:a.application.timeout,SmsAccountId:c.id};switch(a.application.app){case"agent":g.UserId=a.application.UserId;break;case"queue":g.SmsQueueId=a.application.SmsQueueId}switch(a.application.intType){case"always":g.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=b.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}return n.update({id:c.actionId},g).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success"),e.path("/channels/sms/accounts/view/"+c.accountId+"/actions/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.view",{url:"/view/:actionId",templateUrl:"app/channels/sms/account/view/action/view/view.html",controller:"SmsAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionWizardCtrl",["$scope","$http","Agent","SmsQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","SmsApplication",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){console.log(b),a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var b=["*","*","*","*"];console.log(a.application);var c={app:a.application.app,timeout:a.application.timeout,SmsAccountId:f.accountId};switch(a.application.app){case"agent":c.UserId=a.application.UserId;break;case"queue":c.SmsQueueId=a.application.SmsQueueId}switch(a.application.intType){case"always":c.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",c.interval=b.join(","),delete a.application.IntervalId;break;case"list":c.IntervalId=a.application.IntervalId}return console.log(c),n.save(c).$promise.then(function(){h.path("/channels/sms/accounts/view/"+f.accountId+"/actions/list")})["catch"](function(a){i.show(a.data.message,"danger")})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.wizard",{url:"/wizard",templateUrl:"app/channels/sms/account/view/action/wizard/wizard.html",controller:"SmsAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("SmsDisposition",["$resource",function(a){return a("/api/sms/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","SmsAccount","id",function(a,b,c,d){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","SmsAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/sms/account/view/disposition/modal/add.modal.html",controller:"SmsInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b); +})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.dispositions",{url:"/dispositions",controller:"SmsAccountDispositionViewCtrl",templateUrl:"app/channels/sms/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewCtrl",["$scope","SmsAccount","$http","$stateParams","clipboard","$translate","$location","xAlert","List",function(a,b,c,d,e,f,g,h,i){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.copyToClipboard=function(a){e.copyText(a),h.show(f.instant("MESSAGE_TEXT_COPIED_CLIPBOARD")+"!","success")},a.initView=function(){return a.account={},i.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)}),b.get({id:d.accountId}).$promise.then(function(b){a.account=b,console.log(b)})["catch"](function(a){h.show(a.message,"danger")})},a.$watch("account.remote",function(){a.deliveryurl=a.account.remote+"/api/sms/accounts/"+a.account.id+"/messageStatus",a.receiveurl=a.account.remote+"/api/sms/accounts/"+a.account.id+"/receive"}),a.updateItemSmsAccount=function(){return b.update({id:d.accountId},a.account).$promise.then(function(){h.show(f.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view",{url:"/view/:accountId",templateUrl:"app/channels/sms/account/view/view.html",controller:"SmsAccountViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.channels.sms.accounts.view.settings",{url:"/settings",templateUrl:"app/channels/sms/account/view/view.settings.html",controller:"SmsAccountViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","SmsAccount",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.forms={},a.item={}},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a},a.createItem=function(){return console.log(a.item),g.save(a.item).$promise.then(function(){c.path("/channels/sms/accounts/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/sms/account/wizard/wizard.html",controller:"SmsAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox",{url:"/inbox",template:"<div ui-view></div>",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").directive("smsRoom",["$cookieStore","$translate","$uibModal","$timeout","Tag","CannedAnswer","Auth","SmsAccount","SmsRoom","SmsMessage","xAlert","usSpinnerService","socket","$stateParams",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/channels/sms/inbox/room/room.directive.html",link:function(a){a.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},a.panelLeft=null,a.panelRight="col-md-12",a.togglePanelLeft=function(){a.panelLeft?(a.panelLeft=null,a.panelRight="col-md-12"):(a.panelLeft="col-md-6",a.panelRight="col-md-6")},a.form={disabled:!1,from:[],to:"",body:""},m.socket.on("sms_message:save",function(b){return a.workspace.id&&b.SmsRoomId==a.workspace.id?j.get({id:b.id}).$promise.then(function(c){a.SmsRoom.SmsMessages.unshift(b),a.panelLeft="col-md-6",a.panelRight="col-md-6"})["catch"](function(a){console.error(a)}):void 0}),m.socket.on("sms_message:update",function(b){if(a.SmsRoom&&b.SmsRoomId==a.workspace.id){var c=_.find(a.SmsRoom.SmsMessages,{id:b.id});c&&_.merge(c,b)}}),m.socket.on("sms_room:update",function(b){a.SmsRoom&&b.id==a.workspace.id&&(a.SmsRoom.status=b.status)}),a.closeRoom=function(b){return c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.status.modal.html",controller:"SmsInboxViewModalStatusCtrl",resolve:{closed:function(){return"CLOSED"===a.SmsRoom.status},accountId:function(){return a.SmsRoom.SmsAccountId}}}).result.then(function(a){var c={id:b,status:"CLOSED"};return a.disposition&&(c.disposition=a.disposition),i.update(c).$promise["catch"](function(a){k.show(a.data.message,"danger")})})},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),h.get().$promise.then(function(b){a.smsAccounts=b.rows})["catch"](function(a){console.error(a)}),a.workspace.id?(a.panelLeft="col-md-6",a.panelRight="col-md-6",i.get({id:a.workspace.id}).$promise.then(function(b){return a.SmsRoom=b,a.form.from[0]=a.SmsRoom.SmsAccount.phone,a.form.to=a.SmsRoom.from,a.form.tags=a.SmsRoom.tags,"NEW"==a.SmsRoom.status||"UNMANAGED"==a.SmsRoom.status?i.update({id:a.SmsRoom.id,status:"OPEN"}):void 0}).then(function(b){if(b){var c=[];return c[0]=g.getCurrentUser().id,i.update({id:a.SmsRoom.id,controller:"agents",agents:c})}})["catch"](function(a){console.error(a)})["finally"](function(){l.stop("spinner-grid"),a.form.disabled=!1})):l.stop("spinner-grid"),a.onSelect=function(){a.form.body+=a.modelOptions.selectedAnswer,delete a.modelOptions.selectedAnswer},a.onSelectAnswer=function(b){a.form.body+=b,a.selectedAnswer=""},a.getAnswers=function(a){return f.get({key:a}).$promise.then(function(a){return _.map(a.rows,"value")})},a.loadAgents=function(){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.agents.modal.html",controller:"SmsInboxViewModalAgentCtrl",resolve:{roomId:function(){return a.workspace.id}}})},a.onChanged=function(){return i.patch({id:a.workspace.id},{tags:a.form.tags}).$promise["catch"](function(a){console.error(a)})},a.cancel=function(){a.forms.compose.$setPristine(),a.form.body=""},a.sendSMS=function(){l.spin("spinner-grid");var c=_.find(a.smsAccounts,{phone:a.form.from[0]}).id;if(c){var d={from:a.form.from[0],to:a.form.to,body:a.form.body};return h.save({accountId:c,controller:"send"},d).$promise.then(function(b){return a.SmsRoom?(a.forms.compose.$setPristine(),void(a.form.body="")):i.get({id:b.SmsRoomId}).$promise}).then(function(b){b&&(a.forms.compose.$setPristine(),a.form.body="",a.workspace.id=b.id,a.workspace.name=b.from,a.SmsRoom=b,a.panelLeft="col-md-6",a.panelRight="col-md-6")})["catch"](function(){k.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){l.stop("spinner-grid")})}}}}}]),angular.module("xCallyShuttleApp").directive("sms",["$rootScope","SmsMessage","List","xAlert","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{smsMessage:"=message",accounttype:"=accounttype",listId:"="},templateUrl:"app/channels/sms/inbox/sms/sms.html",link:function(b){b.openContact=function(f){return b.listId?c.get({listId:b.listId,controller:"contacts",phone:f}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.phone,type:"contact"})})["catch"](function(a){console.error(a)}):void d.show(e.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","SmsAccount","SmsRoom","gridOptions","uiGridConstants","Auth","Modal","xAlert",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.loadAgents=function(a){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.agents.modal.html",controller:"SmsInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.initView=function(){a.id=[],a.isAdmin=n.isAdmin(),a.isAgent=n.isAgent(),a.uncheckable=!1,a.query={status:"UNMANAGED",tags:[]},a.$watch("query.status",function(){a.getPage(a.query)},!0),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"sms_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!0,enableColumnMenu:!1},{name:"from",cellClass:"text-center"},{name:"disposition",cellClass:"text-center"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:m.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.from)"><i class="glyphicon glyphicon-comment" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id,row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},i.socket.on("sms_room:remove",function(b){_.remove(a.workspaces,{id:b.id,type:"smsRoom"}),_.remove(a.gridOptions.data,{id:b.id})}),a.getPage(a.query)},a.onChanged=function(){a.getPage(a.query)},a.tagItems=function(){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.tags.modal.html",controller:"SmsInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[],a.getPage()})},a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"smsRoom"});d?d.active=!0:a.workspaces.push({id:b,name:c,type:"smsRoom","class":"glyphicon glyphicon-comment",active:!0})},a.getPage=function(b){h.spin("spinner-grid");var c={accountId:e.id,controller:"rooms"};return b&&_.merge(c,b),a.query&&_.merge(c,a.query),j.query(c).$promise.then(function(b){a.gridOptions.data=b})["catch"](function(a){console.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.deleteItem=o.confirm["delete"](function(b){var c={id:b};return console.log(c),k["delete"](c).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.show(a.message?a.message:a.data.message,"danger")})}),a.deleteItems=o.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/sms/inbox/view/account/list/list.html",controller:"SmsInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","SmsRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h){a.initModal=function(){a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){b.rows.forEach(function(b){a.agents.push(b)})})["catch"](function(a){console.error(a)}),f.query({id:h,controller:"agents"}).$promise.then(function(b){b.forEach(function(b){a.agents.push(b),a.item.agents.push(b.id)})})["catch"](function(a){console.error(a)}),a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{classes:"btn btn-success",text:"APPLICATION_RETRY",click:function(a){b.close(a)}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}},a.ok=function(){return f.update({id:h,controller:"agents",agents:a.item.agents}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewCtrl",["$scope","$location","$stateParams","$translate","$uibModal","socket","Auth","xAlert","SmsRoom","SmsAccount",function(a,b,c,d,e,f,g,h,i,j){a.initView=function(){j.get().$promise.then(function(c){var d=null;a.smsAccounts=c.rows,a.smsAccounts.length&&(d="/channels/sms/inbox/view/account/"+a.smsAccounts[0].id+"/list"),d&&b.path(d)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view",{url:"/view",templateUrl:"app/channels/sms/inbox/view/view.html",controller:"SmsInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalStatusCtrl",["$scope","$uibModalInstance","closed","SmsAccount","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_SMS"},a.initDisposition=function(){return d.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.closed=c,a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","SmsRoom","xAlert","id",function(a,b,c,d,e,f,g,h){console.log(h),a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalTemplateCtrl",["$scope","$uibModalInstance","Template",function(a,b,c){a.initModal=function(){return a.item={},c.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsQueueListCtrl",["$scope","SmsQueue","gridOptions","$uibModal","xAlert","Auth",function(a,b,c,d,e,f){a.initView=function(){a.Auth=f;var d={exporterCsvFilename:"voice_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"timeout"},{name:"strategy"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/sms/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/sms/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===f.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/sms/queue/list/list.create.modal.html",controller:"SmsQueueListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SmsQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","SmsQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return console.log(a.item),e.save(a.item).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues.list",{url:"/list",templateUrl:"app/channels/sms/queue/list/list.html",controller:"SmsQueueListCtrl"})}]),angular.module("xCallyShuttleApp").factory("SmsQueue",["$resource",function(a){return a("/api/sms/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues",{url:"/queues",template:"<div ui-view></div>",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","Team","SmsQueue",function(a,b,c,d,e,f,g){var h=function(){return{select:function(b){return g.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(b){console.log("sel",b),a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return g["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(b){console.log("desel",b),a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return g.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){console.error(a)})},a.updateSmsQueue=function(){return g.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getTeams=function(){return f.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,console.log(b.rows),g.get({id:d.id,controller:"agents"}).$promise}).then(function(b){console.log(b),ComponentsDropdowns.bindSmsQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasSmsQueue.penalty}}),h)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues.view",{url:"/view/:id",templateUrl:"app/channels/sms/queue/view/view.html",controller:"SmsQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.sms.queues.view.settings",{url:"/settings",templateUrl:"app/channels/sms/queue/view/view.settings.html"}).state("main.channels.sms.queues.view.agents",{url:"/agents",templateUrl:"app/channels/sms/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","SmsQueue","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){return k.spin("spinner-grid"),g.get(s).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){p(a)})})["catch"](function(a){f.error(a)})["finally"](function(){k.stop("spinner-grid")})}function o(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.smsPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_sms_queue:save",function(b){console.log("new queue",b);var c=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0}),d=a.gridOptions.data.indexOf(c);a.gridOptions.data.splice(d+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.SmsQueueId,agent:b.membername,online:c.online})}),e.socket.on("user_has_sms_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.SmsQueueId})})}function p(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.smsPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.SmsQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function q(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.error(a)})}function r(){return j.get().$promise.then(function(b){a.smsQueues=b.rows,e.syncUpdates("sms_queue",a.smsQueues)})["catch"](function(a){f.error(a)})}a.smsQueues=[];var s={controller:"realtime",controller1:"sms",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"smsPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause" class="left-margin">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.smsQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?s.order=null:s.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),n()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){s.offset=(a-1)*b,s.limit=b,n()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?s[a.name]=a.filters[0].term:delete s[a.name]}),n()})}},n(),q(),r(),o()};var t=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_sms_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/sms/realtime/view/agent/queue.modal.add.html",controller:"SmsRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.smsQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.smsQueues,function(a){return _.includes(b.queues,a.id)}),channel:"sms",data1:e,data3:b.queues.join(","),data4:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"sms",data1:a,data3:b,data4:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/sms/realtime/view/agent/agent.modal.info.html",controller:"SmsRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/sms/realtime/view/agent/agent.html",controller:"SmsRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportSmsSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_sms_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_sms_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>', +enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_sms_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/sms/realtime/view/application/application.html",controller:"SmsRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.sms.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.sms.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.sms.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.sms.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.sms.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.sms.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view",{url:"/view",templateUrl:"app/channels/sms/realtime/view/view.html",controller:"SmsRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportSmsRoom",["$resource",function(a){return a("/api/report/sms/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportSmsSession",["$resource",function(a){return a("/api/report/sms/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms",{url:"/sms",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SmsQueue",["$resource",function(a){return a("/api/sms/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsReport",["$resource",function(a){return a("/api/report/sms/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsMessage",["$resource",function(a){return a("/api/sms/messages/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsRoom",["$resource",function(a){return a("/api/sms/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").factory("ChanSpy",["$resource",function(a){return a("/api/chanspy/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy",{url:"/chanspy",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChanSpyListCtrl",["$scope","$uibModal","ChanSpy","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"chanspy.csv",columnDefs:[{name:"name"},{name:"prefix"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/channels/voice/chanspy/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/channels/voice/chanspy/list/list.create.modal.html",controller:"ChanSpyListCreateCtrl"});c.result.then(function(b){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChanSpyListCreateCtrl",["$scope","$translate","$uibModalInstance","ChanSpy","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.options=[{name:"APPLICATION_CHANSPY_OPTION_b",value:"b"},{name:"APPLICATION_CHANSPY_OPTION_B",value:"B"},{name:"APPLICATION_CHANSPY_OPTION_E",value:"E"},{name:"APPLICATION_CHANSPY_OPTION_o",value:"o"},{name:"APPLICATION_CHANSPY_OPTION_q",value:"q"},{name:"APPLICATION_CHANSPY_OPTION_s",value:"s"},{name:"APPLICATION_CHANSPY_OPTION_S",value:"S"},{name:"APPLICATION_CHANSPY_OPTION_w",value:"w"},{name:"APPLICATION_CHANSPY_OPTION_W",value:"W"}],a.save=function(){return a.item.options=a.item.options.join(""),d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy.list",{url:"/list",templateUrl:"app/channels/voice/chanspy/list/list.html",controller:"ChanSpyListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChanSpyViewCtrl",["$scope","$translate","$stateParams","xAlert","ChanSpy",function(a,b,c,d,e){a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.options=[{name:"APPLICATION_CHANSPY_OPTION_b",value:"b"},{name:"APPLICATION_CHANSPY_OPTION_B",value:"B"},{name:"APPLICATION_CHANSPY_OPTION_E",value:"E"},{name:"APPLICATION_CHANSPY_OPTION_o",value:"o"},{name:"APPLICATION_CHANSPY_OPTION_q",value:"q"},{name:"APPLICATION_CHANSPY_OPTION_s",value:"s"},{name:"APPLICATION_CHANSPY_OPTION_S",value:"S"},{name:"APPLICATION_CHANSPY_OPTION_w",value:"w"},{name:"APPLICATION_CHANSPY_OPTION_W",value:"W"}],a.getChanSpy=function(){return e.get({id:c.id}).$promise.then(function(b){b.options=b.options.split(""),a.chanspy=b})["catch"](function(a){d.show(a.data.message,"danger")})},a.updateChanSpy=function(){var f=angular.copy(a.chanspy);return f.options=f.options.join(""),e.update({id:c.id},f).$promise.then(function(){d.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy.view",{url:"/view/:id",templateUrl:"app/channels/voice/chanspy/view/view.html",controller:"ChanSpyViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.chanspy.view.settings",{url:"/settings",templateUrl:"app/channels/voice/chanspy/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("VoiceContext",["$resource",function(a){return a("/api/voice/contexts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts",{url:"/contexts",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceContextListCtrl",["$scope","VoiceContext","gridOptions","$uibModal","xAlert","$translate",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"voice_contexts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:170,buttons:[{"class":"{{row.entity.defaultEntry ? 'blue-hoki disabled' : 'blue-hoki'}}",href:"/channels/voice/contexts/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var c=d.open({animation:!0,templateUrl:"app/channels/voice/context/list/create.modal.html",controller:["$scope","$uibModalInstance",function(a,b){a.form={},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]});c.result.then(function(c){return b.save(c).$promise.then(function(){a.gridOptions.getPage(),e.show(f.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.show(a.data.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts.list",{url:"/list",templateUrl:"app/channels/voice/context/list/list.html",controller:"VoiceContextListCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceContextViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getContext=function(){b.get("/api/voice/contexts/"+e.id).success(function(b){a.context=b}).error(function(a){console.error(a),f.path("/voice/contexts/list")})},a.updateVoiceContext=function(){var f=angular.copy(a.context);b.put("/api/voice/contexts/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.context=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts.view",{url:"/view/:id",templateUrl:"app/channels/voice/context/view/view.html",controller:"VoiceContextViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.contexts.view.settings",{url:"/settings",templateUrl:"app/channels/voice/context/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.dispositions",{url:"/dispositions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceDispositionListCtrl",["$scope","$stateParams","$uibModal","$translate","VoiceDisposition","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get().$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,b){return e.update({id:a},{name:b}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(b){return e.remove({id:b}).$promise.then(function(){_.remove(a.dispositions,{id:b}),f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/voice/disposition/list/modal/add.modal.html",controller:"VoiceDispositionListModalDispositionAddCtrl"}).result.then(function(b){b&&(a.dispositions.push(b),f.show(d.instant("MESSAGE_WELL_DONE")+"!","success"))})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.dispositions.list",{url:"/list",templateUrl:"app/channels/voice/disposition/list/list.html",controller:"VoiceDispositionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceDispositionListModalDispositionAddCtrl",["$scope","$uibModalInstance","VoiceDisposition","xAlert","$translate",function(a,b,c,d,e){a.ok=function(){return c.save({name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(e.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").factory("VoiceDisposition",["$resource",function(a){return a("/api/voice/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceMohListCtrl",["$scope","gridOptions","VoiceMoh","$uibModal","xAlert","$translate",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"voice_mohs.csv",columnDefs:[{name:"name"},{name:"directory"},{name:"sort"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/voice/mohs/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/voice/moh/list/create.modal.html",controller:["$scope","$uibModalInstance",function(a,b){a.form={},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]});b.result.then(function(b){return c.save(b).$promise.then(function(){a.gridOptions.getPage(),e.show(f.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs.list",{url:"/list",templateUrl:"app/channels/voice/moh/list/list.html",controller:"VoiceMohListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("VoiceMoh",["$resource",function(a){return a("/api/voice/musiconholds/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs",{url:"/mohs",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceMohViewCtrl",["$scope","$http","xAlert","$translate","VoiceMoh","$stateParams","socket","Modal","$sce","$location","Sound",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=d,a.audioSources={},a.sortOptions=[{value:"random",name:"APPLICATION_RANDOM"},{value:"alpha",name:"APPLICATION_ALPHABETICAL"}],a.getMoh=function(){return e.get({id:f.id}).$promise.then(function(b){delete b.stamp,a.moh=b})["catch"](function(a){c.show(a.message,"danger")})},a.updateVoiceMoh=function(){return console.log("update"),e.update({id:f.id},a.moh).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){c.show(a.message,"danger")})},a.addMohs=function(){return e.save({id:f.id,controller:"files"},a.item).$promise.then(function(){j.path("/channels/voice/mohs/view/"+f.id+"/audios")})["catch"](function(a){c.show(a.message,"danger")})},a.getAudioFiles=function(){return e.get({id:f.id,controller:"files"}).$promise.then(function(b){a.audioFiles=b.files,a.mohPath=b.path,a.audioFiles.forEach(function(a){l(a)})})["catch"](function(a){c.show(a.message,"danger")})},a.getSecureSrc=function(a){return i.trustAsResourceUrl(a)},a.getSounds=function(){return a.item={sounds:[]},k.get().$promise.then(function(b){a.soundList=b.rows})["catch"](function(a){c.show(a.message,"danger")})};var l=function(c){b.get("/api/voice/musiconholds/stream",{params:{path:encodeURI(a.mohPath+"/"+c)}}).success(function(b){a.audioSources[c]="data:audio/ogg;base64,"+b}).error(function(a){console.error(a)})};a.deleteItem=h.confirm["delete"](function(e){b["delete"]("/api/voice/musiconholds/"+f.id+"/files",{params:{filename:e}}).success(function(){_.remove(a.audioFiles,function(a){return a===e}),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs.view",{url:"/view/:id",templateUrl:"app/channels/voice/moh/view/view.html",controller:"VoiceMohViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.mohs.view.settings",{url:"/settings",templateUrl:"app/channels/voice/moh/view/view.settings.html"}).state("main.channels.voice.mohs.view.audios",{url:"/audios",templateUrl:"app/channels/voice/moh/view/view.audios.html",cache:!1}).state("main.channels.voice.mohs.view.add",{url:"/add",templateUrl:"app/channels/voice/moh/view/view.addFiles.html",cache:!1})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCtrl",["$scope","$rootScope","$uibModal","VoiceQueue","gridOptions","Auth",function(a,b,c,d,e,f){a.initView=function(){a.Auth=f;var b={exporterCsvFilename:"voice_queues.csv",primaryKey:"name",columnDefs:[{name:"name"},{name:"strategy"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/voice/queues/view/{{row.entity.name}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/voice/queues/view/{{row.entity.name}}/agents",name:"agents",hide:"user"===f.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.name)"}]}]};a.gridOptions=e.gridOptions(d,b,a)},a.createItem=function(){var b=c.open({animation:!0,templateUrl:"app/channels/voice/queue/list/list.create.modal.html",controller:"VoiceQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","VoiceQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues.list",{url:"/list",templateUrl:"app/channels/voice/queue/list/list.html",controller:"VoiceQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ReportQueue",["$resource",function(a){return a("/api/report/queues/:id/:controller/:controller2",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","VoiceQueue","VoiceContext","Team","Auth",function(a,b,c,d,e,f,g,h,i,j,k){a.penalty=0,a.Auth=k,a.binaryChoices=[{name:"Yes",value:1},{name:"No",value:0}],a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.monitorFormats=[{name:"wav",value:"wav"},{name:"gsm",value:"gsm"},{name:"Inactive",value:""}],a.queueAnnounces=[{display_name:"Default",value:null},{display_name:"Disabled",value:""}];var l=function(){return{select:function(b){return h.save({id:a.queue.name,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return h["delete"]({id:a.queue.name,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getQueue=function(){return h.get({id:e.id}).$promise.then(function(b){b.joinempty=""===b.joinempty?[]:b.joinempty.split(","),b.leavewhenempty=""===b.leavewhenempty?[]:b.leavewhenempty.split(","),b.periodic_announce=""===b.periodic_announce?[]:b.periodic_announce.split(","),b.penalty=0,a.queue=b})["catch"](function(a){g.path("/channels/voice/queues/list")})},a.updateVoiceQueue=function(){var b=angular.copy(a.queue);return b.joinempty=b.joinempty.join(","),b.leavewhenempty=b.leavewhenempty.join(","),b.periodic_announce=b.periodic_announce.join(","),b.context||(b.context=null),h.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(d.instant(a.data.message),"danger")})},a.getTeams=function(){return j.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,h.get({id:e.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasVoiceQueue.penalty}}),l)})["catch"](function(a){console.error(a)})},a.getContexts=function(){return i.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){c.show(d.instant(data.message),"danger")})},a.getMohs=function(){b.get("/api/voice/musiconholds").success(function(b){a.voiceMohs=b.rows,f.syncUpdates("voice_musiconhold",a.voiceMohs)}).error(function(a){c.show(a.message,"danger")})},a.getSounds=function(){b.get("/api/sounds").success(function(b){a.queueAnnounces=a.queueAnnounces.concat(b),a.periodicAnnounces=angular.copy(b.rows),b.rows.unshift({display_name:"None",converted_path:null,value:""}),a.sounds=b.rows,f.syncUpdates("sound",a.sounds)}).error(function(a){console.error(a)})},a.returnAnnouncePath=function(a){return a.converted_path?a.converted_path+"/"+a.save_name:null===a.value?null:a.value}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues.view",{url:"/view/:id",templateUrl:"app/channels/voice/queue/view/view.html",controller:"VoiceQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.queues.view.settings",{url:"/settings",templateUrl:"app/channels/voice/queue/view/view.settings.html"}).state("main.channels.voice.queues.view.agents",{url:"/agents",templateUrl:"app/channels/voice/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").factory("VoiceQueue",["$resource",function(a){return a("/api/voice/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","VoiceQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.voicePause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.status=b.status,c.statusAt=b.statusAt,c.queueStatus=b.queueStatus,c.queueStatusAt=b.queueStatusAt,c.lastQueue=b.lastQueue,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_voice_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PVoiceQueues,"name"),b.queue)||n.isAdmin(),d=_.find(a.gridOptions.data,{agentId:b.UserId,queue:b.queue});if(!d&&b.logged&&c){var e=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0}),f=a.gridOptions.data.indexOf(e);a.gridOptions.data.splice(f+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,agent:b.membername,callstaken:b.callstaken?b.callstaken:0,online:e.online})}else d&&!b.logged?_.remove(a.gridOptions.data,{agentId:b.UserId,queue:b.queue}):d&&b.logged&&c&&(d.callstaken=b.callstaken?b.callstaken:0)}),e.socket.on("user_has_voice_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queue:b.queue})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.voicePause,pauseType:b.pauseType,status:b.status||"UNKNOWN",statusAt:b.statusAt,queueStatus:b.queueStatus||"READY",queueStatusAt:b.queueStatusAt,lastQueue:b.lastQueue,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.VoiceQueues.forEach(function(c){c.UserHasVoiceQueue.logged&&a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,agent:b.name,callstaken:c.UserHasVoiceQueue.callstaken?c.UserHasVoiceQueue.callstaken:0,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.voiceQueues=b.rows,e.syncUpdates("voice_queue",a.voiceQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.voiceQueues=[];var t={controller:"realtime",controller1:"voice",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"status",displayName:"APPLICATION_PHONE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div data-ng-if=\"row.entity.isAgent\">{{'APPLICATION_'+row.entity.status | translate}} <span data-ng-if=\"row.entity.statusAt && (row.entity.status === 'BUSY' || row.entity.status === 'ONHOLD' || row.entity.status === 'INUSE')\">(<timer start-time=\"grid.appScope.moment(row.entity.statusAt).unix()*1000\">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></span></div>",filter:{type:m.filter.SELECT,selectOptions:[{value:"UNKNOWN",label:d.instant("APPLICATION_UNKNOWN")},{value:"NOT_INUSE",label:d.instant("APPLICATION_NOT_INUSE")},{value:"INUSE",label:d.instant("APPLICATION_INUSE")},{value:"BUSY",label:d.instant("APPLICATION_BUSY")},{value:"INVALID",label:d.instant("APPLICATION_INVALID")},{value:"UNAVAILABLE",label:d.instant("APPLICATION_UNAVAILABLE")},{value:"RINGING",label:d.instant("APPLICATION_RINGING")},{value:"RINGINUSE",label:d.instant("APPLICATION_RINGINUSE")},{value:"ONHOLD",label:d.instant("APPLICATION_ONHOLD")}]}},{name:"queueStatus",displayName:"APPLICATION_QUEUE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><span class="left-margin"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i></span><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select><span>{{\'APPLICATION_\'+row.entity.queueStatus.toUpperCase() | translate}}</span><span data-ng-if="(row.entity.queueStatus!==\'complete\' && (row.entity.queueStatus!==\'paused\' || row.entity.pauseType === \'ACW\'))"> [{{row.entity.lastQueue}}]</span><span data-ng-if="row.entity.pause"> [{{row.entity.pauseType}}]</span><timer data-ng-if="row.entity.queueStatusAt && row.entity.queueStatus!==\'complete\'" start-time="grid.appScope.moment(row.entity.queueStatusAt).unix()*1000"> [{{hhours}}:{{mminutes}}:{{sseconds}}]</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"paused",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_CONNECT")},{value:"complete",label:d.instant("APPLICATION_COMPLETE")},{value:"called",label:d.instant("APPLICATION_CALLED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"callstaken",displayName:"APPLICATION_CALLS_TAKEN",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.callstaken !== null">{{row.entity.callstaken}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1,width:100},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queue" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queue)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.voiceQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length); +}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_voice_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(d.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/agent/queue.modal.add.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.voiceQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(a){return i.save({name:"QueueAdd",agent:e,queues:a.queues,channel:"voice",data1:e,data3:a.queues.join(","),data4:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queue:b,channel:"voice",data1:a,data3:b,data4:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/agent/agent.modal.info.html",controller:"VoiceRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/voice/realtime/view/agent/agent.html",controller:"VoiceRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","agent",function(a,b,c){a.agent=c,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewParameterCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportQueue","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j){function k(){return h.spin("spinner-grid"),g.get(m).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){h.stop("spinner-grid")})}function l(){e.socket.on("voice_queue:save",function(b){_.find(a.gridOptions.data,{name:b.name})||a.gridOptions.data.push({abandoned:0,active:0,answered:0,holdtime:"00:00:00",name:b.name,talktime:"00:00:00",totalcalls:0,unmanaged:0,waiting:0})}),e.socket.on("voice_queue:remove",function(b){_.remove(a.gridOptions.data,{name:b.name})}),e.socket.on("report_queue:parameters",function(b){var c=_.find(a.gridOptions.data,{name:b.name});c&&_.merge(c,b)})}var m={offset:0,limit:10,controller:"parameters"};a.moment=moment,a.initParameters=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,enableSorting:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalFiltering:!0,useExternalSorting:!0,columnDefs:[{name:"name",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter"},{name:"waiting",displayName:"APPLICATION_WAITING",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"active",displayName:"APPLICATION_ACTIVE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"answered",displayName:"APPLICATION_ANSWERED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN_OR_EQUAL,placeholder:"from"},{condition:j.filter.LESS_THAN_OR_EQUAL,placeholder:"to"}]},{name:"abandoned",displayName:"APPLICATION_ABANDONED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN,placeholder:"from"},{condition:j.filter.LESS_THAN,placeholder:"to"}]},{name:"unmanaged",displayName:"APPLICATION_UNMANAGED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN,placeholder:"from"},{condition:j.filter.LESS_THAN,placeholder:"to"}]},{name:"holdtime",displayName:"APPLICATION_HOLDTIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"talktime",displayName:"APPLICATION_TALKTIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"totalcalls",displayName:"APPLICATION_TOTAL_CALLS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?m.order=null:m.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),k()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){m.offset=(a-1)*b,m.limit=b,k()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){if(a.filters.length>1){a.filters.forEach(function(b){b.term?64===b.condition?m[a.name+"_uiFrom"]=b.term:256===b.condition&&(m[a.name+"_uiTo"]=b.term):64===b.condition?delete m[a.name+"_uiFrom"]:256===b.condition&&delete m[a.name+"_uiTo"]})}else a.filters.length&&a.filters[0].term?m[a.name]=a.filters[0].term:delete m[a.name]}),k()})}},k(),l()};var n=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("voice_queue")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.parameters",{url:"/parameters",templateUrl:"app/channels/voice/realtime/view/parameter/parameter.html",controller:"VoiceRealtimeViewParameterCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportQueue","Pause","Action","usSpinnerService","$q","uiGridConstants","$timeout","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return j.spin("spinner-grid"),g.get({controller:"waiting",controller2:"calls"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){p(),j.stop("spinner-grid")})}function p(){e.socket.on("report_queue:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.queuecallerleaveAt&&m(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.queuecallerleaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_queue:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initQueues=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.queuecallerleaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.queuecallerleaveAt && row.entity.queuecallerabandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.queuecallerleaveAt && row.entity.queuecallercomplete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"caller",displayName:"APPLICATION_CALLER",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.calleridnum || ''}} {{row.entity.calleridname || ''}}</span></div>",enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"agent",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.connectedlinenum || ''}} {{row.entity.connectedlinename || ''}}</span></div>",enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){q(a.gridOptions.data.length)})}},o()};var q=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_queue")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.queues",{url:"/queues",templateUrl:"app/channels/voice/realtime/view/queue/queue.html",controller:"VoiceRealtimeViewQueueCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewTelephoneCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Telephone","Pause","Action","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(){return j.spin("spinner-grid"),g.get(o).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){j.stop("spinner-grid")})}function n(){e.socket.on("telephone:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status=b.status,c.statusAt=b.statusAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal)}),e.socket.on("telephone:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}var o={offset:0,limit:10};a.moment=moment,a.initTelephones=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_TELEPHONE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.name}} <{{row.entity.internal}}></div>"},{name:"status",displayName:"APPLICATION_PHONE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{'APPLICATION_'+row.entity.status | translate}} <span data-ng-if=\"row.entity.statusAt && (row.entity.status === 'BUSY' || row.entity.status === 'ONHOLD' || row.entity.status === 'INUSE')\">(<timer start-time=\"grid.appScope.moment(row.entity.statusAt).unix()*1000\">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></span></div>",filter:{type:l.filter.SELECT,selectOptions:[{value:"UNKNOWN",label:d.instant("APPLICATION_UNKNOWN")},{value:"NOT_INUSE",label:d.instant("APPLICATION_NOT_INUSE")},{value:"INUSE",label:d.instant("APPLICATION_INUSE")},{value:"BUSY",label:d.instant("APPLICATION_BUSY")},{value:"INVALID",label:d.instant("APPLICATION_INVALID")},{value:"UNAVAILABLE",label:d.instant("APPLICATION_UNAVAILABLE")},{value:"RINGING",label:d.instant("APPLICATION_RINGING")},{value:"RINGINUSE",label:d.instant("APPLICATION_RINGINUSE")},{value:"ONHOLD",label:d.instant("APPLICATION_ONHOLD")}]}},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){p(a.gridOptions.data.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?o.order=null:o.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),m()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){o.offset=(a-1)*b,o.limit=b,m()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?o[a.name]=a.filters[0].term:delete o[a.name]}),m()})}},m(),n()};var p=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("telephone")}),a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/telephone/telephone.modal.info.html",controller:"VoiceRealtimeViewTelephoneInfoModalCtrl",resolve:{telephone:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.telephones",{url:"/telephones",templateUrl:"app/channels/voice/realtime/view/telephone/telephone.html",controller:"VoiceRealtimeViewTelephoneCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewTelephoneInfoModalCtrl",["$scope","$uibModalInstance","$http","telephone",function(a,b,c,d){a.telephone=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewCtrl",["$scope","Auth",function(a,b){a.Auth=b}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view",{url:"/view",templateUrl:"app/channels/voice/realtime/view/view.html",controller:"VoiceRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRecordingListCtrl",["$scope","$translate","$sce","Recording","gridOptions","xAlert","uiGridConstants",function(a,b,c,d,e,f,g){a.Recording=d;a.updateRating=function(a,c){return d.update({id:a,rating:c}).$promise.then(function(){f.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.initView=function(){var b={exporterCsvFilename:"recordings.csv",rowHeight:30,primaryKey:"uniqueid",columnDefs:[{name:"uniqueid"},{name:"calleridnum"},{name:"membername"},{name:"type",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"{'icon-call-in font-green':row.entity.type === 'inbound','icon-call-out font-red':row.entity.type === 'outbound','icon-question':row.entity.type === 'unknown','icon-earphones font-purple':row.entity.type === 'internal'}\"></i></div>",filter:{type:g.filter.SELECT,selectOptions:[{value:"inbound",label:"Inbound"},{value:"outbound",label:"Outbound"}]}},{name:"queue"},{name:"createdAt",displayName:"APPLICATION_DATE",headerCellFilter:"translate",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:g.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:g.filter.LESS_THAN_OR_EQUAL}]},{name:"rating",filter:{type:g.filter.SELECT,selectOptions:[{value:1,label:"1"},{value:2,label:"2"},{value:3,label:"3"},{value:4,label:"4"},{value:5,label:"5"}]},cellClass:"ui-grid-vcenter",width:"100",cellTemplate:'<div><uib-rating data-ng-model="row.entity.rating" data-ng-click="grid.appScope.updateRating(row.entity.uniqueid, row.entity.rating)" aria-labelledby="default-rating"></uib-rating></div>'},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.uniqueid,controller:\'stream\'}" resource="grid.appScope.Recording"></audio-file-download>'}]},{name:"action",width:150,buttons:[{directive:'<motion-file-download params="{id:row.entity.uniqueid,controller:\'stream\'}" resource="grid.appScope.Recording" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="row.entity.uniqueid+\'.wav\'"></motion-file-download>'},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.uniqueid, row.entity.uniqueid)"}]}]};a.gridOptions=e.gridOptions(d,b,a,{order:"createdAt DESC"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.recordings.list",{url:"/list",templateUrl:"app/channels/voice/recording/list/list.html",controller:"VoiceRecordingListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Recording",["$resource",function(a){return a("/api/voice/recordings/:id/:controller",{id:"@id"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.recordings",{url:"/recordings",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound",{url:"/inbound",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCreateCtrl",["$scope","$uibModalInstance","Route","application","xAlert","$location","$translate",function(a,b,c,d,e,f,g){a.$application=d.application,a.forms={route:void 0},a.item={type:"inbound",appdata:"Inbound Call",context:"from-voip-provider"},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),f.path("/channels/voice/routes/inbound/view/"+a.id+"/applications")})["catch"](function(a){console.log(a),e.show(g.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"InboundRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_PHONE_NUMBER"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}), </span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/inbound/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)"}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"inbound"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/inbound/list/create.modal.html",controller:"VoiceRouteInboundListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound.list",{url:"/list",templateUrl:"app/channels/voice/route/inbound/list/list.html",controller:"VoiceRouteInboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundViewCtrl",["$scope","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval","Route","VoiceQueue","Sound","SquareProject","VoiceContext","Interval","VoiceMail","User","Trunk",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){function t(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function u(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=b,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",headerCellFilter:"translate",displayName:"APPLICATION_APPLICATION",enableColumnMenu:!1},{name:"appType",headerCellFilter:"translate",displayName:"APPLICATION_INFO",enableColumnMenu:!1},{name:"appdata",headerCellFilter:"translate",displayName:"APPLICATION_ARGUMENTS",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",headerCellFilter:"translate",displayName:"APPLICATION_TIME",enableColumnMenu:!1},{name:"action",enableColumnMenu:!1,headerCellFilter:"translate",displayName:"APPLICATION_ACTION",width:125,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){v(a.gridOptions.data.length)})}};var v=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={settings:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.$watch("interval",function(a){a&&t(a)},!0),a.updateSetAppdata=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.application.appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.updateSetAppdataSettings=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.route.Applications[a.selectedApp].appdata[0]=a.application.variable+"="+a.application.value:a.route.Applications[a.selectedApp].appdata[0]=null},a.$watch("main.app",function(c){if(c){var d,e,f={},g={};switch(void 0===a.selectedApp&&(a.application={appType:c.type,app:c.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),c.value){case"Queue":d=l,e=m;break;case"Playback":d=m;break;case"AGI":d=n;break;case"Goto":d=o;break;case"Voicemail":d=q;break;case"Dial":switch(c.type){case"internalDial":d=r,f={controller:"all"};break;case"externalDial":d=s}}if(d)return d.get(f).$promise.then(function(b){a.items=b.rows}).then(function(){return e?e.get(g).$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){h.show(b.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,e.path(b)},a.getIntervals=function(){return p.get().$promise.then(function(b){a.Intervals=b.rows,d.syncUpdates("interval",a.Intervals)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:c.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,v(a.gridOptions.data.length)})["catch"](function(a){e.path("/channels/voice/routes/inbound/list")})},a.getApplication=function(){if(void 0===a.selectedApp)e.path("/channels/voice/routes/inbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.$application.applications,{type:a.route.Applications[a.selectedApp].appType});else{var b=_.find(a.$application.applications,{value:a.route.Applications[a.selectedApp].app});if(b)a.main.app=b;else{a.main.app=_.find(a.$application.applications,{type:"custom"});var c=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[c],a.route.Applications[a.selectedApp].appType="custom"}}if("Set"===a.main.app.value){var d=a.route.Applications[a.selectedApp].appdata[0].split("=");a.application.variable=d[0],a.application.value=d[1]}u()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,e.path("/channels/voice/routes/inbound/view/"+c.id+"/applications/settings")},a.updateRoute=function(d){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(f){a.selectedApp=void 0,h.show(b.instant("MESSAGE_WELL_DONE")+"!","success"),d&&e.path("/channels/voice/routes/inbound/view/"+c.id+"/"+d)})["catch"](function(a){console.log(a),h.show(b.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return o.get().$promise.then(function(b){a.voiceContexts=b.rows,d.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.deleteApp=g.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("applications")},a.goNext=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){d.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/inbound/view/view.html",controller:"VoiceRouteInboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.inbound.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/inbound/view/view.settings.html"}).state("main.channels.voice.routes.inbound.view.applications",{url:"/applications",templateUrl:"app/channels/voice/route/inbound/view/view.applications.html"}).state("main.channels.voice.routes.inbound.view.application",{url:"/application",templateUrl:"app/channels/voice/route/view.application.html"}).state("main.channels.voice.routes.inbound.view.applications.settings",{url:"/settings",templateUrl:"app/channels/voice/route/view.applicationSettings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal",{url:"/internal",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCreateCtrl",["$scope","$uibModalInstance","Route","application","$location","$translate","xAlert",function(a,b,c,d,e,f,g){a.$application=d.application,a.forms={route:void 0},a.item={type:"internal",appdata:"Internal Call",context:"from-sip"},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),e.path("/channels/voice/routes/internal/view/"+a.id+"/applications")})["catch"](function(a){g.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"InternalRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_PHONE_NUMBER"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}),</span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/internal/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)" +}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"internal"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/internal/list/create.modal.html",controller:"VoiceRouteInternalListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal.list",{url:"/list",templateUrl:"app/channels/voice/route/internal/list/list.html",controller:"VoiceRouteInternalListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalViewCtrl",["$scope","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval","Route","VoiceQueue","Sound","SquareProject","VoiceContext","Interval","VoiceMail","User","Trunk",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){function t(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function u(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=b,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",headerCellFilter:"translate",displayName:"APPLICATION_APPLICATION",enableColumnMenu:!1},{name:"appType",headerCellFilter:"translate",displayName:"APPLICATION_INFO",enableColumnMenu:!1},{name:"appdata",headerCellFilter:"translate",displayName:"APPLICATION_ARGUMENTS",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",headerCellFilter:"translate",displayName:"APPLICATION_TIME",enableColumnMenu:!1},{name:"action",enableColumnMenu:!1,headerCellFilter:"translate",displayName:"APPLICATION_ACTION",width:125,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){v(a.gridOptions.data.length)})}};var v=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={settings:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.$watch("interval",function(a){a&&t(a)},!0),a.updateSetAppdata=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.application.appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.updateSetAppdataSettings=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.route.Applications[a.selectedApp].appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.$watch("main.app",function(c){if(c){var d,e,f={},g={};switch(void 0===a.selectedApp&&(a.application={appType:c.type,app:c.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),c.value){case"Queue":d=l,e=m;break;case"Playback":d=m;break;case"AGI":d=n;break;case"Goto":d=o;break;case"Voicemail":d=q;break;case"Dial":switch(c.type){case"internalDial":d=r,f={controller:"all"};break;case"externalDial":d=s}}if(d)return d.get(f).$promise.then(function(b){a.items=b.rows}).then(function(){return e?e.get(g).$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){h.show(b.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,e.path(b)},a.getIntervals=function(){return p.get().$promise.then(function(b){a.Intervals=b.rows,d.syncUpdates("interval",a.Intervals)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:c.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,v(a.gridOptions.data.length)})["catch"](function(a){e.path("/channels/voice/routes/internal/list")})},a.getApplication=function(){if(void 0===a.selectedApp)e.path("/channels/voice/routes/inbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.$application.applications,{type:a.route.Applications[a.selectedApp].appType});else{var b=_.find(a.$application.applications,{value:a.route.Applications[a.selectedApp].app});if(b)a.main.app=b;else{a.main.app=_.find(a.$application.applications,{type:"custom"});var c=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[c],a.route.Applications[a.selectedApp].appType="custom"}}if("Set"===a.main.app.value){var d=a.route.Applications[a.selectedApp].appdata[0].split("=");a.application.variable=d[0],a.application.value=d[1]}u()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,e.path("/channels/voice/routes/internal/view/"+c.id+"/applications/settings")},a.updateRoute=function(d){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(f){a.selectedApp=void 0,h.show(b.instant("MESSAGE_WELL_DONE")+"!","success"),d&&e.path("/channels/voice/routes/internal/view/"+c.id+"/"+d)})["catch"](function(a){h.show(b.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return o.get().$promise.then(function(b){a.voiceContexts=b.rows,d.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.deleteApp=g.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("applications")},a.goNext=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){d.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/internal/view/view.html",controller:"VoiceRouteInternalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.internal.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/internal/view/view.settings.html"}).state("main.channels.voice.routes.internal.view.applications",{url:"/applications",templateUrl:"app/channels/voice/route/internal/view/view.applications.html"}).state("main.channels.voice.routes.internal.view.application",{url:"/application",templateUrl:"app/channels/voice/route/view.application.html"}).state("main.channels.voice.routes.internal.view.applications.settings",{url:"/settings",templateUrl:"app/channels/voice/route/view.applicationSettings.html"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCreateCtrl",["$scope","$uibModalInstance","Route","application","xAlert","$translate","$location","Tag",function(a,b,c,d,e,f,g,h){a.$application=d.application,a.forms={route:void 0},a.item={type:"outbound",appdata:"Outbound Call",context:"from-sip"},a.getTags=function(){return h.get().$promise.then(function(b){b.rows.unshift({name:"--"}),a.tags=b.rows})["catch"](function(a){e.show(f.instant(a.data.translatedMessage),"danger")})},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),g.path("/channels/voice/routes/outbound/view/"+a.id+"/routes")})["catch"](function(a){e.show(f.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"OutboundRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_DESTINATION_PATTERN"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}),</span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/outbound/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)"}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"outbound"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/outbound/list/create.modal.html",controller:"VoiceRouteOutboundListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound.list",{url:"/list",templateUrl:"app/channels/voice/route/outbound/list/list.html",controller:"VoiceRouteOutboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound",{url:"/outbound",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","application","interval","Route","Trunk","VoiceContext","Interval","Tag",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){function p(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function q(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=c,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",displayName:"APPLICATION_APPLICATION",cellClass:"ui-grid-vcenter",cellTemplate:"<div><span data-ng-if=\"row.entity.appType === 'externalDial'\">Default</span><span data-ng-if=\"row.entity.appType !== 'externalDial'\">{{row.entity.app}}</span></div>",headerCellFilter:"translate",enableColumnMenu:!1},{name:"appdata",displayName:"APPLICATION_ARGUMENTS",headerCellFilter:"translate",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",displayName:"APPLICATION_TIME",headerCellFilter:"translate",enableColumnMenu:!1},{name:"action",displayName:"APPLICATION_ACTION",headerCellFilter:"translate",width:125,enableColumnMenu:!1,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){r(a.gridOptions.data.length)})}};var r=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={info:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""},a.applications=[{name:"Default",value:"Dial",type:"outboundDial"},{name:"Custom",value:"custom",type:"custom"}]},a.$watch("interval",function(a){a&&p(a)},!0),a.$watch("main.app",function(d){if(d){var e,f;switch(void 0===a.selectedApp&&(a.application={appType:d.type,app:d.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),d.value){case"Dial":e=l;break;default:e=null,f=null}if(e)return e.get().$promise.then(function(b){a.items=b.rows}).then(function(){return f?f.get().$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){b.show(c.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,f.path(b)},a.getIntervals=function(){return n.get().$promise.then(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:d.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,r(a.gridOptions.data.length)})["catch"](function(a){f.path("/channels/voice/routes/outbound/list")})},a.getApplication=function(){if(void 0===a.selectedApp)f.path("/channels/voice/routes/outbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.applications,{type:a.route.Applications[a.selectedApp].appType});else{a.main.app=_.find(a.applications,{type:"custom"});var b=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[b],a.route.Applications[a.selectedApp].appType="custom"}q()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,f.path("/channels/voice/routes/outbound/view/"+d.id+"/routes/settings")},a.updateRoute=function(e){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(g){a.selectedApp=void 0,b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),e&&f.path("/channels/voice/routes/outbound/view/"+d.id+"/"+e)})["catch"](function(a){b.show(c.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return m.get().$promise.then(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getTags=function(){return o.get().$promise.then(function(b){b.rows.unshift({name:"--"}),a.tags=b.rows})["catch"](function(a){b.show(c.instant(a.data.translatedMessage),"danger")})},a.deleteApp=h.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("routes")},a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/outbound/view/view.html",controller:"VoiceRouteOutboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.outbound.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/outbound/view/view.settings.html"}).state("main.channels.voice.routes.outbound.view.routes",{url:"/routes",templateUrl:"app/channels/voice/route/outbound/view/view.routes.html"}).state("main.channels.voice.routes.outbound.view.route",{url:"/route",templateUrl:"app/channels/voice/route/outbound/view/view.route.html"}).state("main.channels.voice.routes.outbound.view.routes.settings",{url:"/settings",templateUrl:"app/channels/voice/route/outbound/view/view.routeSettings.html"})}]),angular.module("xCallyShuttleApp").factory("Route",["$resource",function(a){return a("/api/voice/extensions/:id",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes",{url:"/routes",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice",{url:"/voice",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:7}}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailListCtrl",["$scope","VoiceMail","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"voice_mails.csv",primaryKey:"uniqueid",columnDefs:[{name:"mailbox"},{name:"fullname"},{name:"email"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/voice/voicemails/view/{{row.entity.uniqueid}}/settings",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.mailbox, row.entity.uniqueid)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.list",{url:"/list",templateUrl:"app/channels/voice/voicemail/list/list.html",controller:"VoiceVoicemailListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailViewCtrl",["$scope","VoiceMail","VoiceMailMessage","VoiceContext","$http","xAlert","$translate","$stateParams","socket","$sce","Modal","$location","gridOptions",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){var b={exporterCsvFilename:"voice_mail_messages.csv",primaryKey:"id",columnDefs:[{name:"callerid"},{name:"stamp",displayName:"APPLICATION_DATE",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{grid.appScope.moment(row.entity.stamp).format('YYYY-MM-DD HH:mm:ss')}}</div>"},{name:"duration",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.duration*1000 | date:'mm:ss'}}</div>"},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.id,controller:\'download\'}" resource="grid.appScope.VoiceMailMessage"></audio-file-download>'}]},{name:"action",width:150,buttons:[{directive:'<motion-file-download params="{id:row.entity.id,controller:\'download\'}" resource="grid.appScope.VoiceMailMessage" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="row.entity.msg_id+\'.wav\'"></motion-file-download>'},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.id, row.entity.id)"}]}]};a.gridOptions=m.gridOptions(c,b,a,{mailbox:a.voicemail.mailbox,context:a.voicemail.context})}a.moment=moment,a.VoiceMailMessage=c,a.getVoicemail=function(){return b.get({id:h.uniqueid}).$promise.then(function(b){delete b.password,delete b.stamp,a.voicemail=b})["catch"](function(a){l.path("/voice/voicemails/list")})},a.updateVoiceVoicemail=function(){return b.update({id:h.uniqueid},a.voicemail).$promise.then(function(){f.show(g.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(g.instant(a.message),"danger")})},a.getContexts=function(){return d.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){f.show(a.message,"danger")})},a.getMessages=function(){return a.voicemail?void n():b.get({id:h.uniqueid}).$promise.then(function(b){delete b.password,delete b.stamp,a.voicemail=b,n()})["catch"](function(a){l.path("/voice/voicemails/view/"+h.uniqueid+"/settings")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.view",{url:"/view/:uniqueid",templateUrl:"app/channels/voice/voicemail/view/view.html",controller:"VoiceVoicemailViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.voicemails.view.settings",{url:"/settings",templateUrl:"app/channels/voice/voicemail/view/view.settings.html"}).state("main.channels.voice.voicemails.view.messages",{url:"/messages",templateUrl:"app/channels/voice/voicemail/view/view.messages.html"})}]),angular.module("xCallyShuttleApp").factory("VoiceMail",["$resource",function(a){return a("/api/voice/voicemails/:id/:controller",{uniqueid:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails",{url:"/voicemails",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("VoiceMailMessage",["$resource",function(a){return a("/api/voice/voicemails/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailWizardCtrl",["$scope","VoiceMail","xAlert","WizardHandler","$location","Setting",function(a,b,c,d,e,f){a.initWizard=function(){a.form={},a.item={context:"from-voicemail"}},a.next=function(){d.wizard().next()},a.previous=function(){d.wizard().previous()},a.exitValidation=function(a){return a},a.getFirstFreeMailbox=function(){f.get({controller:"mailbox"}).$promise.then(function(b){a.item.mailbox=b.value})["catch"](function(a){c.show(a.data.message,"danger")})},a.createItem=function(){return a.item.customer_id=a.item.mailbox,b.save(a.item).$promise.then(function(){e.path("/channels/voice/voicemails/list")})["catch"](function(a){c.show(data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.wizard",{url:"/wizard",templateUrl:"app/channels/voice/voicemail/wizard/wizard.html",controller:"VoiceVoicemailWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("VoiceQueue",["$resource",function(a){return a("/api/voice/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Company",["$resource",function(a){return a("/api/contactmanager/companies/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies",{url:"/companies",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").controller("CompanyListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerCompanyListCtrl",["$scope","$translate","xAlert","Modal","$uibModal","$log","Company","gridOptions","$location",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"Companies.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:190,buttons:[{"class":"blue-hoki",name:"profile",href:"/contactmanager/companies/view/{{row.entity.id}}/settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green-turquoise",name:"contacts",uisref:"main.contactmanager.contacts.list({companyId:{{row.entity.id}}})"}]}]};a.gridOptions=h.gridOptions(g,b,a)},a.create=function(){var a=e.open({animation:!0,size:"lg",templateUrl:"app/contactmanager/company/list/create.modal.html",controller:"CompanyListCreateModalCtrl"});a.result.then(function(a){return g.save(a).$promise.then(function(a){i.path("/contactmanager/companies/view/"+a.id+"/settings")})["catch"](function(a){c.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies.list",{url:"/list",templateUrl:"app/contactmanager/company/list/list.html",controller:"ContactManagerCompanyListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ContactManagerCompanyViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","Company",function(a,b,c,d,e,f){a.getCompany=function(){return f.get({id:d.id}).$promise.then(function(b){a.company=b})["catch"](function(a){e.path("/contactmanager/companies/list")})},a.updateCompany=function(){return f.update({id:d.id},a.company).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies.view",{url:"/view/:id",templateUrl:"app/contactmanager/company/view/view.html",controller:"ContactManagerCompanyViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.contactmanager.companies.view.settings",{url:"/settings",templateUrl:"app/contactmanager/company/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("Contact",["$resource",function(a){return a("/api/contactmanager/contacts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.contacts",{url:"/contacts",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListImportModalCtrl",["$scope","$uibModalInstance","indexes","csv","xAlert","socket","List","Contact","$translate",function(a,b,c,d,e,f,g,h,i){function j(b){if(b>=a.csvLength||a.stopped)return void(a.importing=!1);for(var c,f=[],g=b;b+200>g&&g<a.csvLength;g++)c={},_.forOwn(a.item,function(b,e){switch(e){case"tags":c.tags=[],a.item.tags.forEach(function(a){""!==d[g][a]&&c.tags.push(d[g][a])});break;default:c[e]=d[g][b]}}),c.tags=c.tags?c.tags.join(","):void 0,c.ListId=a.item.ListId,c.CompanyId=a.item.CompanyId||null,f.push(c);return h.save({controller:"bulk"},{contacts:f}).$promise.then(function(b){a["import"].success+=b.ok*a.addingQuote,a["import"].succeeded+=b.ok,a["import"].fail+=b.ko*a.addingQuote,a["import"].failed+=b.ko,j(g)})["catch"](function(b){a.stopped=!0,e.error(b),j(g)})}a.indexes=c,a.importing=!1,a.submitted=!1,a.stopped=!1,a["import"]={success:0,fail:0,succeeded:0,failed:0},a.csvLength=d.length,a.addingQuote=100/a.csvLength,a.forms={csv:void 0},a.item={},a.start=function(){a.importing=!0,a.submitted=!0,j(0)},a.getLists=function(){return g.get().$promise.then(function(b){a.lists=b.rows,a.item.ListId=1,a.getCustomFields()})["catch"](function(a){e.show(i.instant(a.message)+"!","danger")})},a.getCustomFields=function(){return g.get({listId:a.item.ListId,controller:"customfields"}).$promise.then(function(b){b.rows.forEach(function(a){a.values=JSON.parse(a.values); +}),a.customFields=b.rows,f.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),f.socket.on("custom_field:save",function(b){if(b.ListId===a.item.ListId){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}})})["catch"](function(a){console.error(a),e.show(a.message,"danger")})},a.close=function(){b.close()},a.stop=function(){a.stopped=!0}}]),angular.module("xCallyShuttleApp").controller("ContactManagerContactListCtrl",["$scope","$translate","Modal","FileUploader","Papa","$uibModal","$log","Contact","gridOptions","List","uiGridConstants","xAlert","socket","$stateParams","Auth","Company",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.Auth=o,a.initView=function(){var c;return j.get().$promise.then(function(b){return a.lists=[],b.rows.forEach(function(b,c){a.lists.push({value:b.id,label:b.name})}),p.get().$promise}).then(function(b){a.companies=[],b.rows.forEach(function(b,c){a.companies.push({value:b.id,label:b.name})})}).then(function(){var b=[{"class":"blue-hoki",name:"profile",onClick:"grid.appScope.openContactTab(row.entity)"}];o.isAgent()||b.push({"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}),c={exporterCsvFilename:"Contacts.csv",columnDefs:[{name:"firstName"},{name:"lastName"},{name:"phone"},{name:"mobile"},{name:"email"},{name:"ListId",displayName:"APPLICATION_LIST",field:"List.name",filter:{type:k.filter.SELECT,term:n.listId||null,selectOptions:a.lists}},{name:"CompanyId",displayName:"APPLICATION_COMPANY",field:"Company.name",filter:{type:k.filter.SELECT,term:n.companyId||null,selectOptions:a.companies}},{name:"description"},{name:"action",width:125,buttons:b}]},a.gridOptions=i.gridOptions(h,c,a)})["catch"](function(a){l.show(b.instant(a.message)+"!","danger")})},d.FileSelect.prototype.isEmptyAfterSelection=function(){return!0};var q=a.uploader=new d({queueLimit:1,clearInputAfterAddedToQueue:!0});q.onAfterAddingFile=function(b){console.log("fileadded"),e.parse(b._file,{header:!0,complete:function(b){a.uploader.clearQueue(),a["import"](b.data)},error:function(a){console.log(a)}})},a["import"]=function(b){var c=f.open({animation:!0,size:"lg",backdrop:"static",keyboard:!1,templateUrl:"app/contactmanager/contact/list/import.modal.html",controller:"ContactManagerListImportModalCtrl",resolve:{indexes:function(){return _.keys(b[0])},csv:function(){return b}}});c.result.then(function(b){a.gridOptions.getPage()},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.contacts.list",{url:"/list",templateUrl:"app/contactmanager/contact/list/list.html",params:{listId:null,companyId:null},controller:"ContactManagerContactListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager",{url:"/contactmanager",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").factory("List",["$resource",function(a){return a("/api/contactmanager/lists/:listId/:controller/:id",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists",{url:"/lists",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerListListCtrl",["$scope","$http","$translate","Modal","xAlert","$uibModal","$log","List","gridOptions",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"Lists.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:190,buttons:[{"class":"blue-hoki",name:"settings",href:"/contactmanager/lists/view/{{row.entity.id}}/settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green-turquoise",name:"contacts",uisref:"main.contactmanager.contacts.list({listId:{{row.entity.id}}})"}]}]};a.gridOptions=i.gridOptions(h,b,a)},a.create=function(){var d=f.open({animation:!0,templateUrl:"app/contactmanager/list/list/create.modal.html",controller:"ContactManagerListListCreateModalCtrl"});d.result.then(function(d){b.post("/api/contactmanager/lists/",d).then(function(b){a.gridOptions.getPage(),e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists.list",{url:"/list",templateUrl:"app/contactmanager/list/list/list.html",controller:"ContactManagerListListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListCustomFieldViewCreateModalCtrl",["$scope","$uibModalInstance","$translate",function(a,b,c){a.$translate=c,a.forms={dashboard:void 0},a.item={},a.choices=[{value:""}],a.addField=function(){a.choices.push({})},a.removeField=function(b){a.choices.splice(b,1)},a.types=[{name:"APPLICATION_TEXT",value:"text"},{name:"APPLICATION_SELECT",value:"select"}],a.ok=function(){"select"===a.item.type&&(a.item.values=angular.toJson(a.choices)),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerListViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","$uibModal","$log","Modal","List","Team","gridOptions",function(a,b,c,d,e,f,g,h,i,j,k,l){var m=function(){return{select:function(b){return j.save({listId:a.list.id,controller:"agents"},{agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return j["delete"]({listId:a.list.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getList=function(){return j.get({listId:d.id}).$promise.then(function(b){a.list=b})["catch"](function(a){f.path("/contactmanager/lists/list")})},a.updateList=function(){return j.update({id:d.id},a.list).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getTeams=function(){return k.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,a.list?void 0:a.getList()}).then(function(){return a.list.defaultEntry&&f.path("/contactmanager/lists/list"),j.get({listId:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindQueue(a.teams,_.map(b.rows,function(a){return{id:a.id}}),m)})["catch"](function(a){console.error(a)})},a.initCustomFields=function(){var b={exporterCsvFilename:"customfields.csv",primaryKey:"id",columnDefs:[{name:"alias",displayName:"APPLICATION_NAME"},{name:"name",displayName:"APPLICATION_FIELD"},{name:"type"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/contactmanager/lists/view/{{grid.appScope.$stateParams.id}}/customfields/settings/{{row.entity.id}}",name:"settings"},{"class":"red-sunglo",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)",name:"delete"}]}]};a.gridOptions=l.gridOptions(j,b,a,{listId:d.id,controller:"customfields"})},a.create=function(){var e=g.open({animation:!0,templateUrl:"app/contactmanager/list/view/create.modal.html",controller:"ContactManagerListCustomFieldViewCreateModalCtrl"});e.result.then(function(e){return j.save({listId:d.id,controller:"customfields"},e).$promise.then(function(d){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},function(){h.info("Modal dismissed at: "+new Date)})},a.getCustomField=function(){return j.get({listId:d.id,controller:"customfields",id:d.cfId}).$promise.then(function(b){console.log(b),a.customField=b,"select"===a.customField.type&&(a.choices=JSON.parse(a.customField.values))})["catch"](function(a){console.error(a)})},a.updateCustomField=function(){var e=angular.copy(a.customField);return"select"===e.type&&(e.values=angular.toJson(a.choices)),j.update({listId:d.id,controller:"customfields",id:d.cfId},e).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.addField=function(){a.choices.push({})},a.removeField=function(b){a.choices.splice(b,1)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists.view",{url:"/view/:id",templateUrl:"app/contactmanager/list/view/view.html",controller:"ContactManagerListViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.contactmanager.lists.view.settings",{url:"/settings",templateUrl:"app/contactmanager/list/view/view.settings.html"}).state("main.contactmanager.lists.view.agents",{url:"/agents",templateUrl:"app/contactmanager/list/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}}).state("main.contactmanager.lists.view.customfields",{url:"/customfields",templateUrl:"app/contactmanager/list/view/view.customFields.html"}).state("main.contactmanager.lists.view.customfields.settings",{url:"/settings/:cfId",templateUrl:"app/contactmanager/list/view/view.customFieldSettings.html",controller:"ContactManagerListViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("DashboardChatCtrl",["$scope","Auth","ReportChatRoom","socket","Agent","$q","$translate","ReportChatSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment;var j=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasChatQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){j(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)})}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=f.defer();return b.resolve(g.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){j(a.table2.data.length)})}},e.get({id:b.getCurrentUser().id,controller:"chat",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_chat_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.ChatQueueId})||a.table1.data.push({id:c.ChatQueueId,UserHasChatQueue:c})}),d.socket.on("user_has_chat_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.ChatQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_chat_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_chat_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("chat_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("chat_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("chat_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("chat_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})},a.initAbandoned=function(){return c.get({id:"abandoned"}).$promise.then(function(b){a.abandoned=b.value,d.socket.on("chat_dashboard:unmanaged",function(b){a.abandoned=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardCtrl",["$scope","$translate","Auth",function(a,b,c){a.Auth=c}]),angular.module("xCallyShuttleApp").factory("Dashboard",["$resource",function(a){return a("/api/dashboards/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.dashboard",{"abstract":!0,url:"/dashboard",templateUrl:"app/dashboard/dashboard.html",controller:"DashboardCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:1}}}).state("main.dashboard.voice",{url:"/voice",controller:"DashboardVoiceCtrl",templateUrl:"app/dashboard/voice/voice.html"}).state("main.dashboard.chat",{url:"/chat",controller:"DashboardChatCtrl",templateUrl:"app/dashboard/chat/chat.html",data:{permissions:{redirectTo:"landing",id:8}}}).state("main.dashboard.mail",{url:"/mail",controller:"DashboardMailCtrl",templateUrl:"app/dashboard/mail/mail.html",data:{permissions:{redirectTo:"landing",id:9}}}).state("main.dashboard.fax",{url:"/fax",controller:"DashboardFaxCtrl",templateUrl:"app/dashboard/fax/fax.html",data:{permissions:{redirectTo:"landing",id:10}}}).state("main.dashboard.sms",{url:"/sms",controller:"DashboardSmsCtrl",templateUrl:"app/dashboard/sms/sms.html",data:{permissions:{redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("DashboardFaxCtrl",["$scope","Auth","ReportFaxRoom","socket","Agent","$translate","$q","ReportFaxSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasFaxQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b}},e.get({id:b.getCurrentUser().id,controller:"fax",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_fax_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.FaxQueueId})||a.table1.data.push({id:c.FaxQueueId,UserHasFaxQueue:c})}),d.socket.on("user_has_fax_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.FaxQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_fax_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_fax_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("fax_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("fax_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("fax_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("fax_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardMailCtrl",["$scope","Auth","ReportMailRoom","socket","Agent","$translate","$q","ReportMailSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasMailQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){reSize(a.table2.data.length)})}},e.get({id:b.getCurrentUser().id,controller:"mail",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_mail_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.MailQueueId})||a.table1.data.push({id:c.MailQueueId,UserHasMailQueue:c})}),d.socket.on("user_has_mail_queue:remove",function(c){console.log(c),c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.MailQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_mail_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_mail_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("mail_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("mail_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("mail_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("mail_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardSmsCtrl",["$scope","Auth","ReportSmsRoom","socket","Agent","$translate","$q","ReportSmsSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasSmsQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b}},e.get({id:b.getCurrentUser().id,controller:"sms",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_sms_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.SmsQueueId})||a.table1.data.push({id:c.SmsQueueId,UserHasSmsQueue:c})}),d.socket.on("user_has_sms_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.SmsQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_sms_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_sms_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("sms_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("sms_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("sms_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("sms_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardVoiceCtrl",["$scope","Auth","ReportQueue","ReportCall","Agent","socket",function(a,b,c,d,e,f){a.Auth=b;var g=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasVoiceQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"},{name:"UserHasVoiceQueue.loggedAt",displayName:"logged At",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.UserHasVoiceQueue.loggedAt"></span></div>'},{name:"UserHasVoiceQueue.lastcall",headerCellFilter:"translate",displayName:"APPLICATION_LAST_CALL",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.UserHasVoiceQueue.lastcall"></span></div>'},{name:"UserHasVoiceQueue.callstaken",headerCellFilter:"translate",displayName:"APPLICATION_CALLS_TAKEN",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){g(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)})}},a.table2={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"calleridnum",headerCellFilter:"translate",displayName:"APPLICATION_NUMBER",cellClass:"text-center ui-grid-vcenter"},{name:"calleridname",headerCellFilter:"translate",displayName:"APPLICATION_NAME",cellClass:"text-center ui-grid-vcenter"},{name:"queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi1=b,a.gridApi1.grid.registerDataChangeCallback(function(){g(a.gridApi1.core.getVisibleRows(a.gridApi1.grid).length)})}},e.get({id:b.getCurrentUser().id,controller:"voice",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){f.socket.on("user_has_voice_queue:save",function(c){if(c.UserId===b.getCurrentUser().id){var d=_.findIndex(a.table1.data,{name:c.queue});d>-1?(a.table1.data[d].UserHasVoiceQueue.loggedAt=c.loggedAt,a.table1.data[d].UserHasVoiceQueue.lastcall=c.lastcall,a.table1.data[d].UserHasVoiceQueue.callstaken=c.callstaken):(c.callstaken=0,a.table1.data.push({name:c.queue,UserHasVoiceQueue:c}))}}),f.socket.on("user_has_voice_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{name:c.queue})})})["catch"](function(a){console.error(a)}),c.get({id:"waiting",controller:"list"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){f.socket.on("report_queue:save",function(b){b.queuecallerleaveAt?_.remove(a.table2.data,{id:b.id}):_.find(a.table1.data,{name:b.queue})&&a.table2.data.push(b)})})["catch"](function(a){console.error(a)})},a.initWaiting=function(){return c.get({id:"waiting"}).$promise.then(function(b){a.waiting=b.value,f.socket.on("dashboard:waiting",function(b){a.waiting=b.value})})["catch"](function(a){console.error(a)})},a.initActive=function(){return c.get({id:"active"}).$promise.then(function(b){a.active=b.value,f.socket.on("dashboard:active",function(b){a.active=b.value})})["catch"](function(a){console.error(a)})},a.initAnswered=function(){return c.get({id:"answered"}).$promise.then(function(b){a.answered=b.value,f.socket.on("dashboard:answered",function(b){a.answered=b.value})})["catch"](function(a){console.error(a)})},a.initAbandoned=function(){return c.get({id:"abandoned"}).$promise.then(function(b){a.abandoned=b.value,f.socket.on("dashboard:abandoned",function(b){a.abandoned=b.value})})["catch"](function(a){console.error(a)}); +},a.initAvgAnswerTime=function(){return c.get({id:"avganswertime"}).$promise.then(function(b){a.avganswertime=b.value,f.socket.on("dashboard:avganswertime",function(b){a.avganswertime=b.value})})["catch"](function(a){console.error(a)})},a.initAvgTalkTime=function(){return c.get({id:"avgtalktime"}).$promise.then(function(b){a.avgtalktime=b.value,f.socket.on("dashboard:avgtalktime",function(b){a.avgtalktime=b.value})})["catch"](function(a){console.error(a)})},a.initAnswerRate=function(){return c.get({id:"answerrate"}).$promise.then(function(b){a.answerrate=b.value,f.socket.on("dashboard:answerrate",function(b){a.answerrate=b.value})})["catch"](function(a){console.error(a)})},a.initTotalOffered=function(){return c.get({id:"totaloffered"}).$promise.then(function(b){a.totaloffered=b.value,f.socket.on("dashboard:totaloffered",function(b){a.totaloffered=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,f.socket.on("dashboard:unmanaged",function(b){a.unmanaged=b.value})})["catch"](function(a){console.error(a)})},a.initAbandonRate=function(){return c.get({id:"abandonrate"}).$promise.then(function(b){a.abandonrate=b.value,f.socket.on("dashboard:abandonrate",function(b){a.abandonrate=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutbound=function(){return d.get({id:"manualoutbound"}).$promise.then(function(b){a.manualoutbound=b.value,f.socket.on("dashboard:manualoutbound",function(b){a.manualoutbound=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundGlobalDuration=function(){return d.get({id:"manualoutboundglobalduration"}).$promise.then(function(b){a.manualoutboundglobalduration=b.value,f.socket.on("dashboard:manualoutboundglobalduration",function(b){a.manualoutboundglobalduration=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAvgDuration=function(){return d.get({id:"manualoutboundavgduration"}).$promise.then(function(b){a.manualoutboundavgduration=b.value,f.socket.on("dashboard:manualoutboundavgduration",function(b){a.manualoutboundavgduration=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAnswered=function(){return d.get({id:"manualoutboundanswered"}).$promise.then(function(b){a.manualoutboundanswered=b.value,f.socket.on("dashboard:manualoutboundanswered",function(b){a.manualoutboundanswered=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAnswerRate=function(){return d.get({id:"manualoutboundanswerrate"}).$promise.then(function(b){a.manualoutboundanswerrate=b.value,f.socket.on("dashboard:manualoutboundanswerrate",function(b){a.manualoutboundanswerrate=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk",{url:"/desk",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("DeskAccount",["$resource",function(a){return a("/api/desk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("DeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.map(a.displayedDeskAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedDeskAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("desk_account"),b.url="/api/desk/accounts",h.getPage(b).then(function(d){a.displayedDeskAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedDeskAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedDeskAccounts.length)}),f.socket.on("desk_account:save",function(){a.initList(b)}),f.socket.on("desk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/desk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/desk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/desk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.list",{url:"/list",templateUrl:"app/desk/list/list.html",controller:"DeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("DeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","desk_com",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){f.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){g.unsyncUpdates("desk_configuration"),g.unsyncUpdates("desk_field")}),a.initView=function(){b.get("/api/desk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){h.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/desk/accounts/"+c.id,a.account).success(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/desk/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,g.socket.on("desk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.deleteConfiguration=i.confirm["delete"](function(a){b["delete"]("api/desk/configurations/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/desk/configurations",a.configuration).success(function(a){e.path("desk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){h.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/desk/accounts/"+c.id+"/fields").success(function(b){a.accountFields=j.fields.concat(b)}).error(function(a){h.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/desk/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,g.socket.on("desk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){h.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/desk/fields/"+a.id).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/desk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/desk/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/desk/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/desk/fields/"+a.id,a).success(function(){}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.idField){var c=_.find(a.accountFields,"id",b.idField);c&&(b.customField=_.result(c,"custom",!0))}a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"id",b);return c?c.data.choices?c.data.choices:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.view",{url:"/view/:id",templateUrl:"app/desk/view/view.html",controller:"DeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.desk.view.account",{url:"/account",templateUrl:"app/desk/view/view.account.html"}).state("main.desk.view.configurations",{url:"/configurations",templateUrl:"app/desk/view/view.configurations.html"}).state("main.desk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/desk/view/view.configurationSettings.html",controller:"DeskViewCtrl"}).state("main.desk.view.configuration",{url:"/configuration",templateUrl:"app/desk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("DeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/desk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/desk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.wizard",{url:"/wizard",templateUrl:"app/desk/wizard/wizard.html",controller:"DeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk",{url:"/freshdesk",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("FreshdeskAccount",["$resource",function(a){return a("/api/freshdesk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FreshdeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.map(a.displayedFreshdeskAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedFreshdeskAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("freshdesk_account"),b.url="/api/freshdesk/accounts",h.getPage(b).then(function(d){a.displayedFreshdeskAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedFreshdeskAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedFreshdeskAccounts.length)}),f.socket.on("freshdesk_account:save",function(){a.initList(b)}),f.socket.on("freshdesk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/freshdesk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/freshdesk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/freshdesk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.list",{url:"/list",templateUrl:"app/freshdesk/list/list.html",controller:"FreshdeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FreshdeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","$filter","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){h.unsyncUpdates("freshdesk_configuration"),h.unsyncUpdates("freshdesk_field")}),a.initView=function(){b.get("/api/freshdesk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){i.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/freshdesk/accounts/"+c.id,a.account).success(function(){i.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/freshdesk/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,h.socket.on("freshdesk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.deleteConfiguration=j.confirm["delete"](function(a){b["delete"]("api/freshdesk/configurations/"+a).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/freshdesk/configurations",a.configuration).success(function(a){e.path("freshdesk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){i.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/freshdesk/accounts/"+c.id+"/fields").success(function(b){a.accountFields=[],b=f("freshdesk")(b),_.forEach(b,function(b){a.accountFields.push(b.ticket_field)})}).error(function(a){i.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/freshdesk/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,h.socket.on("freshdesk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){i.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/freshdesk/fields/"+a.id).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/freshdesk/fields/"+a.id,a).success(function(){}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.idField){var c=_.find(a.accountFields,"name",b.idField);c&&(b.customField=!_.result(c,"default",!0))}a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);return c?c.choices.length>0?c.choices:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.view",{url:"/view/:id",templateUrl:"app/freshdesk/view/view.html",controller:"FreshdeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.freshdesk.view.account",{url:"/account",templateUrl:"app/freshdesk/view/view.account.html"}).state("main.freshdesk.view.configurations",{url:"/configurations",templateUrl:"app/freshdesk/view/view.configurations.html"}).state("main.freshdesk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/freshdesk/view/view.configurationSettings.html",controller:"FreshdeskViewCtrl"}).state("main.freshdesk.view.configuration",{url:"/configuration",templateUrl:"app/freshdesk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("FreshdeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/freshdesk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/freshdesk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.wizard",{url:"/wizard",templateUrl:"app/freshdesk/wizard/wizard.html",controller:"FreshdeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations",{url:"/integrations",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:19}}})}]),angular.module("xCallyShuttleApp").factory("Integration",["$resource",function(a){return a("/api/integrations/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").controller("IntegrationListCtrl",["$scope","Modal","socket","FileUploader","Integration","xAlert",function(a,b,c,d,e,f){a.integrationsByPage=10;var g=a.uploader=new d({url:"api/integrations",autoUpload:!0,removeAfterUpload:!0});g.filters.push({name:"zipFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|zip|".indexOf(b)}}),g.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),f.show(b.name,"success")},g.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),b.errors.forEach(function(a){f.show(a.message,"danger")})},a.deleteItem=b.confirm["delete"](function(a){e["delete"]({id:a},function(){f.show("Integration Removed","success")},function(a){f.show(a.data.errors,"danger")})}),a.initList=function(){a.integrations=e.query({},function(a){c.syncUpdates("integration",a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations.list",{url:"/list",templateUrl:"app/integration/list/list.html",controller:"IntegrationListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty",{url:"/jscripty",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("JscriptyProject",["$resource",function(a){return a("/api/jscripty/projects/:id/:controller/:action/:action2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectListCtrl",["$scope","$uibModal","JscriptyProject","gridOptions","Auth",function(a,b,c,d,e){a.isAdmin=e.isAdmin(),a.initView=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:300,buttons:[{"class":"blue-hoki",icon:"icon-settings",href:"/jscripty/projects/view/{{row.entity.id}}",hide:!e.isAdmin()},{"class":" green-turquoise",icon:"fa fa-play",onClick:"grid.appScope.openJscriptyTab(row.entity)"},{"class":"purple",icon:"icon-book-open",href:"/jscripty/projects/report/{{row.entity.id}}/sessions",hide:!e.isAdmin()},{"class":"red-sunglo",icon:"fa fa-trash",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)",hide:!e.isAdmin()}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/jscripty/project/list/list.create.modal.html",controller:"JscriptyProjectListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectListCreateCtrl",["$scope","$translate","$uibModalInstance","JscriptyProject","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){console.log(a),e.show(b.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.list",{url:"/list",templateUrl:"app/jscripty/project/list/list.html",controller:"JscriptyProjectListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects",{url:"/projects",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectReportCtrl",["$scope","uiGridConstants","$http","$state","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope","gridOptions","JscriptyProject","$location",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.projectStats={started:0,incomplete:0,completed:0},a.projectId=e.id,a.initView=function(){m.get({id:e.id}).$promise.then(function(b){a.project=b})["catch"](function(a){i.show(a.message,"danger")}),m.get({id:e.id,controller:"sessions"}).$promise.then(function(b){var c=_.groupBy(b.rows,"status");a.projectStats.started=c.started?c.started.length:0,a.projectStats.completed=c.completed?c.completed.length:0,a.projectStats.incomplete=c.incomplete?c.incomplete.length:0})["catch"](function(a){i.show(a.message,"danger")})},a.pdf=function(a,b){var c=[];if(a){var d=html2canvas(document.getElementById(a)),e=d.parse(),f=d.render(e),g=f.toDataURL("image/png");c.push({image:g,width:500,style:"img"})}b.length&&_.forEach(b,function(a){var b=html2canvas(document.getElementById(a.question_id)),d=b.parse(),e=b.render(d),f=e.toDataURL("image/png");c.push({image:f,width:500,style:"img"})});var h={content:c};pdfMake.createPdf(h).download("Project_summary.pdf")},a.getProjectSessions=function(){var c={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"session_id",displayName:"APPLICATION_SESSIONID"},{name:"queue",displayName:"APPLICATION_QUEUE"},{name:"membername",displayName:"APPLICATION_AGENT"},{name:"calleridnum",displayName:"APPLICATION_CALLERIDNUM"},{name:"createdAt",displayName:"APPLICATION_STARTEDAT",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:b.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:b.filter.LESS_THAN_OR_EQUAL}]},{name:"completedAt",displayName:"APPLICATION_COMPLETEDAT",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:b.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:b.filter.LESS_THAN_OR_EQUAL}]},{name:"status",displayName:"APPLICATION_STATUS"},{name:"last_question_id",displayName:"APPLICATION_LASTQUESTIONID"},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/jscripty/projects/report/{{row.entity.projectId}}/session/{{row.entity.session_id}}",name:"Detail"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteSession(row.entity.session_id)"}]}]};a.gridOptions=l.gridOptions(m,c,a,{id:e.id,controller:"sessions"})},a.deleteSession=function(b){m["delete"]({id:e.id,controller:"sessions",action:b}).$promise.then(function(b){a.gridOptions.getPage(),a.initView(),i.show(j.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){i.show(a.message,"danger")})},a.getSessionDetails=function(){m.get({id:e.id,controller:"sessions",action:e.sessionId}).$promise.then(function(b){a.session=b,a.sessionQuestions=b.ReportJscriptyQuestions})["catch"](function(a){i.show(a.message,"danger")})},a.getQuestionSummary=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"question_id",displayName:"APPLICATION_QUESTIONID"},{name:"question_type",displayName:"APPLICATION_QUESTIONTYPE"},{name:"question_label",displayName:"APPLICATION_QUESTIONLABEL"},{name:"question_text",displayName:"APPLICATION_QUESTION"},{name:"count",displayName:"APPLICATION_COUNT",enableFiltering:!1},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/jscripty/projects/report/"+e.id+"/detail/{{row.entity.question_id}}",name:"Detail"}]}]};a.gridOptions=l.gridOptions(m,b,a,{id:e.id,controller:"questions",action:"summary"})},a.getQuestionInputs=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"session_id",displayName:"APPLICATION_SESSIONID"},{name:"question_id",displayName:"APPLICATION_QUESTIONID",enableFiltering:!1},{name:"question_label",displayName:"APPLICATION_QUESTIONLABEL",enableFiltering:!1},{name:"question_text",displayName:"APPLICATION_QUESTION",enableFiltering:!1},{name:"input_label",displayName:"APPLICATION_INPUTLABEL",enableFiltering:!1},{name:"input_value",cellTemplate:'<div uib-tooltip="{{row.entity.input_value}}">{{row.entity.input_value}}</div>',displayName:"APPLICATION_INPUTVALUE",enableFiltering:!1}]};a.gridOptions=l.gridOptions(m,b,a,{id:e.id,controller:"inputs"})},a.getProjectDetail=function(){a.projectDetail=[],m.query({id:e.id,controller:"questions",action:"detail"}).$promise.then(function(b){console.log(e.questionId),e.questionId?a.projectDetail.push(_.find(b,function(a){return a.question_id==parseInt(e.questionId)})):a.projectDetail=b,console.log(a.projectDetail)})["catch"](function(a){i.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.report",{url:"/report/:id",templateUrl:"app/jscripty/project/report/report.html",controller:"JscriptyProjectReportCtrl"}).state("main.jscripty.projects.report.sessions",{url:"/sessions",templateUrl:"app/jscripty/project/report/report.sessions.html"}).state("main.jscripty.projects.report.summary",{url:"/summary",templateUrl:"app/jscripty/project/report/report.summary.html"}).state("main.jscripty.projects.report.inputs",{url:"/inputs",templateUrl:"app/jscripty/project/report/report.inputs.html"}).state("main.jscripty.projects.report.detail",{url:"/detail",templateUrl:"app/jscripty/project/report/report.detail.html"}).state("main.jscripty.projects.report.questionDetail",{url:"/detail/:questionId",controller:"JscriptyProjectReportCtrl",templateUrl:"app/jscripty/project/report/report.detail.html"}).state("main.jscripty.projects.report.sessionDetail",{url:"/session/:sessionId",controller:"JscriptyProjectReportCtrl",templateUrl:"app/jscripty/project/report/report.session.detail.html"})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectViewCtrl",["$scope","$http","$state","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope",function(a,b,c,d,e,f,g,h,i,j){a.jscriptyProject={},a.getProject=function(){b.get("/api/jscripty/projects/"+d.id).success(function(b){a.jscriptyProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!=a&&-1!=a.indexOf("Script error."));else{var d=new Image;d.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(e){}},b.token=f.getToken();var a=new EditorUi(new Editor);a.openString(b.draft,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}}),e.syncUpdates("jscripty_project",[b],function(a,c,d){c.id===b.id})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.view",{url:"/view/:id",templateUrl:"app/jscripty/project/view/view.html",controller:"JscriptyProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/jscripty/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/jscripty/js/Editor.js","assets/plugins/jscripty/js/Graph.js","assets/plugins/jscripty/js/EditorUi.js","assets/plugins/jscripty/js/Actions.js","assets/plugins/jscripty/js/Menus.js","assets/plugins/jscripty/js/Sidebar.js","assets/plugins/jscripty/js/Toolbar.js","assets/plugins/jscripty/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("LandingCtrl",["$scope","$location","$window","$timeout","Auth",function(a,b,c,d,e){a.initLanding=function(){var c,f,g;return(g=e.getCurrentUser().$promise)?g.then(function(e){switch(f=e,f.role){case"user":for(var g=0;g<f.Modules.length&&!(c=f.Modules[g].path);g++);break;case"admin":case"agent":c="/dashboard/voice"}c||(a.message="MESSAGE_NO_AVAILABLE_MODULES"), +d(function(){b.path(c)},500)})["catch"](function(a){console.error(a),b.path("/login")}):void b.path("/login")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("landing",{url:"/landing",templateUrl:"app/landing/landing.html",controller:"LandingCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/error.css","assets/css/login.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("LoginCtrl",["$scope","Auth","$location","$window","$rootScope",function(a,b,c,d,e){a.year=moment().year(),a.userLogin={},a.userSignUp={},a.loginSubmitted=!1,a.signupSubmitted=!1,a.errorLogin=!1,a.errorSignup=!1,a.errorLog="",a.flagLogin1=!1,a.toogleLogin=function(){a.flagLogin1=!a.flagLogin1},e.bodyLayout="login",a.$on("$viewContentLoaded",function(){Metronic.init(),Layout.init()}),a.login=function(d){a.loginSubmitted=!0,d.$valid?b.login({name:a.userLogin.name,password:a.userLogin.password,remember:a.userLogin.remember}).then(function(){c.path("/landing")})["catch"](function(b){console.log("login errLogin",b),a.errorLog=b.message||"error",a.errorLogin=!0}):a.errorLogin=!0},a.signup=function(c){a.signupSubmitted=!0,c.$valid?b.createUser({email:a.userSignUp.email,fullname:a.userSignUp.fullname,name:a.userSignUp.name,password:a.userSignUp.password,role:a.userSignUp.role,online:!0})["catch"](function(b){console.log("signup errLogin",b),a.errorLog=b.message||"error",a.errorSignup=!0}):a.errorSignup=!0},a.loginOauth=function(a){d.location.href="/auth/"+a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("login",{url:"/login",templateUrl:"app/login/login.html",controller:"LoginCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/login.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Action",["$resource",function(a){return a("/api/actions/:name/:controller",{name:"@name"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").directive("actionBuilderTemplate",["$compile","xAlert","$http","$timeout","Template","$translate",function(a,b,c,d,e,f){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderTemplate.html",compile:function(c,g){var h,i;return h=c.contents().remove(),function(c,g,j){function k(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=k(),d(function(){return e.get().$promise.then(function(a){c.templates=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}),i||(i=a(h)),g.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderIntegration",["$compile","xAlert","$http","$timeout","Integration","$translate","ZendeskAccount","DeskAccount","SalesforceAccount","FreshdeskAccount","SugarcrmAccount",function(a,b,c,d,e,f,g,h,i,j,k){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderIntegration.html",compile:function(c,l){var m,n;return m=c.contents().remove(),function(c,l,o){function p(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=p(),d(function(){return e.get({active:1}).$promise.then(function(a){c.integrations=a.rows,c.element.data1&&q()})["catch"](function(a){b.show(f.instant(a.message),"danger")})});var q=function(){var a;switch(c.element.data1){case"zendesk":a=g;break;case"desk":a=h;break;case"salesforce":a=i;break;case"freshdesk":a=j;break;case"sugarcrm":a=k}return a.get().$promise.then(function(a){c.accounts=a.rows,c.element.data2&&r()})["catch"](function(a){b.show(f.instant(a.message),"danger")})},r=function(){c.configurations=_.find(c.accounts,{id:Number(c.element.data2)}).Configurations};c.changeIntegration=function(){c.element.data2="",q()},c.changeAccount=function(){c.element.data3="",r()},n||(n=a(m)),l.append(n(c,function(a){return a}))}}}}]).directive("actionBuilderStatus",["$compile","xAlert","$http","$timeout","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderStatus.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){function g(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}b.randomName=g(),b.states=[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]).directive("actionBuilderJscripty",["$compile","xAlert","$http","$timeout","Template","$translate","JscriptyProject",function(a,b,c,d,e,f,g){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderJscripty.html",compile:function(c,e){var h,i;return h=c.contents().remove(),function(c,e,j){function k(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=k(),console.log(c.randomName),d(function(){return g.get().$promise.then(function(a){console.log(a),c.projects=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}),i||(i=a(h)),e.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderMotionBar",["$compile","xAlert","$http","$timeout","Template","$translate",function(a,b,c,d,e,f){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderMotionBar.html",compile:function(c,g){var h,i;return h=c.contents().remove(),function(c,g,j){function k(){return e.get().$promise.then(function(a){c.templates=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}function l(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=l(),console.log(c.randomName),c.motionActions=[{name:"Popup",value:"0"},{name:"URL",value:"1"},{name:"Windows App",value:"2"}],c.changeMode=function(){c.element.data2="",c.element.data3="",k()},d(function(){return k()}),i||(i=a(h)),g.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderUrlForward",["$compile","xAlert","$http","$timeout","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderUrlForward.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){function g(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}b.randomName=g(),b.types=[{name:"HTTP GET",value:"GET"},{name:"HTTP POST",value:"POST"}],e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]),angular.module("xCallyShuttleApp").factory("Ami",["$resource",function(a){return a("/api/ami/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChooseContactModalCtrl",["$scope","$uibModalInstance","eventId","xAlert","$translate","Contact",function(a,b,c,d,e,f){a.open=function(a){b.close(a)},a.getContacts=function(){return f.query({id:c,controller:"checkevent"}).$promise.then(function(b){a.contacts=b})["catch"](function(a){d.show(e.instant(a.message)+"!","danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("CloseEditedTabModalCtrl",["$scope","$uibModalInstance",function(a,b){a.close=function(){b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("CloseEditedTabModalJscriptyCtrl",["$scope","$uibModalInstance","project","JscriptyProject","xAlert",function(a,b,c,d,e){a.init=function(){a.project=c},a.close=function(){d.update({id:a.project.projectId,controller:"sessions",action:a.project.sessionId},{status:"incomplete",completedAt:Date(),last_question_id:a.project.lastQuestionId}).$promise.then(function(a){e.show("Project Ended","success")}),b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerSetDisposition",["$scope","$uibModalInstance","VoiceDisposition",function(a,b,c){a.initDisposition=function(){return c.get().$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("customGridDateFilterModalCtrl",["$scope","$rootScope","$log","$uibModalInstance","term",function(a,b,c,d,e){e&&(a.filterDate=moment(e)),a.setFilterDate=function(a){d.close(a)},a.cancelDateFilter=function(){d.dismiss()}}]),angular.module("xCallyShuttleApp").factory("templateVariable",["$translate",function(a){return[{id:"chat",label:a.instant("APPLICATION_CHAT"),title:a.instant("APPLICATION_CHAT"),groups:[{label:a.instant("APPLICATION_VARIABLES"),values:[{value:"{{username}}",label:a.instant("APPLICATION_USERNAME"),description:a.instant("APPLICATION_USERNAME")},{value:"{{email}}",label:a.instant("APPLICATION_MAIL"),description:a.instant("APPLICATION_MAIL")},{value:"{{text}}",label:a.instant("APPLICATION_TEXT"),description:a.instant("APPLICATION_TEXT")},{value:"{{chatWebsite}}",label:a.instant("APPLICATION_WEBSITE"),description:a.instant("APPLICATION_WEBSITE")}]}]},{id:"mail",label:a.instant("APPLICATION_MAIL"),title:a.instant("APPLICATION_MAIL"),groups:[{label:a.instant("APPLICATION_INTERACTION"),values:[{value:"{{interactionId}}",label:a.instant("APPLICATION_INTERACTION_ID"),description:a.instant("APPLICATION_INTERACTION_ID")},{value:"{{subject}}",label:a.instant("APPLICATION_SUBJECT"),description:a.instant("APPLICATION_SUBJECT")},{value:"{{body}}",label:a.instant("APPLICATION_MESSAGE"),description:a.instant("APPLICATION_MESSAGE")},{value:"{{accountName}}",label:a.instant("APPLICATION_ACCOUNT"),description:a.instant("APPLICATION_ACCOUNT")},{value:"{{from}}",label:"From",description:"From"},{value:"{{to}}",label:"To",description:"To"},{value:"{{cc}}",label:"Cc",description:"Cc"},{value:"{{agentName}}",label:a.instant("APPLICATION_AGENT_NAME"),description:a.instant("APPLICATION_AGENT_NAME")},{value:"{{agentEmail}}",label:a.instant("APPLICATION_AGENT_EMAIL"),description:a.instant("APPLICATION_AGENT_EMAIL")},{value:"{{createdAt}}",label:a.instant("APPLICATION_CREATED_AT"),description:a.instant("APPLICATION_CREATED_AT")}]}]}]}]),angular.module("xCallyShuttleApp").controller("gridDatePickerFilterCtrl",["$scope","$timeout","$uibModal","uiGridConstants",function(a,b,c,d){b(function(){a.col.colDef.name;a.openDatePicker=function(b){var d=c.open({templateUrl:"app/main/customDateFilter.modal.html",controller:"customGridDateFilterModalCtrl",size:"md",windowClass:"custom-date-filter-modal",resolve:{term:[function(){return b.term||null}]}});d.result.then(function(b){console.log("date",b),a.colFilter.listTerm=[],console.log(typeof b),console.log(b instanceof Date),a.colFilter.term=moment(b).format("YYYY-MM-DD"),console.log(a.colFilter)})}})}]),angular.module("xCallyShuttleApp").factory("gridOptions",["Modal","xAlert","$translate","$interval","$q","usSpinnerService",function(a,b,c,d,e,f){return{gridOptions:function(d,g,h,i,j,k,l){function m(a,b){a.filter&&a.filter.term&&b&&(o[a.name]=a.filter.term),a.filters&&(a.filters.length>1?a.filters.forEach(function(b){b.term?64===b.condition?o[a.name+"_uiFrom"]=b.term:256===b.condition&&(o[a.name+"_uiTo"]=b.term):64===b.condition?delete o[a.name+"_uiFrom"]:256===b.condition&&delete o[a.name+"_uiTo"]}):a.filters.length&&a.filters[0].term?o[a.name]=a.filters[0].term:delete o[a.name])}h.id=[];var n=k?"gridOptions"+k:"gridOptions",o={offset:0,limit:10};g.draggable&&(g.rowTemplate='<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',g.useExternalPagination=!1,g.enablePaginationControls=!1,g.showGridFooter=!1);var p=function(a){var b=a?30*a+120:177,c=angular.element(document.getElementsByName(n)).length?angular.element(document.getElementsByName(n)[0]):angular.element(document.getElementsByClassName("ui-grid")[0]);c.css("height",b+"px")},q=function(a,b){return h[n].enablePaginationControls||(delete o.offset,delete o.limit),f.spin("spinner-grid"),i=a||i,d=b||d,d.get(i?_.merge(o,i):o).$promise.then(function(a){h[n].totalItems=a.count,h[n].data=a.rows,p(a.rows.length),l&&l()})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})};return h.deleteItem=a.confirm["delete"](function(a){var e=i?angular.copy(i):{};return _.merge(e,{id:a}),d.remove(e).$promise.then(function(){q(),b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),h.gridApi.selection.clearSelectedRows(),h.id=[]})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}),h.deleteItems=a.confirm["delete"](function(){var a=i?angular.copy(i):{};return _.merge(a,{ids:h.id}),d["delete"](a).$promise.then(function(){q(),b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),h.gridApi.selection.clearSelectedRows(),h.id=[]})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}),g.columnDefs.forEach(function(a){m(a,!0),a.hasOwnProperty("displayName")||(a.displayName="APPLICATION_"+a.name.toUpperCase()),a.headerCellFilter="translate",a.hasOwnProperty("buttons")&&(a.displayName="",a.cellClass="ui-grid-vcenter",a.enableSorting=!1,a.enableFiltering=!1,a.enableColumnMenu=!1,a.cellTemplate="<div>",a.buttons.forEach(function(b){if(b.directive)a.cellTemplate+=b.directive;else{if(a.cellTemplate+="<a",a.cellTemplate+=b.hide?' data-ng-hide="'+b.hide+'" ':" ",a.cellTemplate+=b["class"]?' class="btn btn-xs '+b["class"]+'" ':" ",a.cellTemplate+=b.href?' data-ng-href="'+b.href+'" ':" ",a.cellTemplate+=b.uisref?' ui-sref="'+b.uisref+'" ':" ",a.cellTemplate+=b.onClick?' data-ng-click="'+b.onClick+'" ':" ",a.cellTemplate+=b.title?' title="'+b.title+'"':"",a.cellTemplate+=">",a.cellTemplate+=b.icon?'<i class="'+b.icon+'"></i>':"",b.name)switch(b.name){case"delete":a.cellTemplate+='<i class="fa fa-trash"></i>';break;case"profile":case"settings":case"detail":case"embedding":a.cellTemplate+='<i class="icon-settings"></i>';break;case"agents":a.cellTemplate+='<i class="icon-people"></i>';break;case"run":a.cellTemplate+='<i class="fa fa-cogs"></i>';break;default:a.cellTemplate+="{{'APPLICATION_"+b.name.toUpperCase()+"' | translate}}"}else a.cellTemplate+=b.displayName?"{{'"+b.displayName+"' | translate}}":"";a.cellTemplate+="</a> "}}),a.cellTemplate+="<div>",delete a.buttons)}),_.merge({enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableRowSelection:!0,enableSelectAll:!0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,getPage:q,gridMenuTitleFilter:function(a){var b=e.defer();return b.resolve(c.instant(a)),b.promise},onRegisterApi:function(a){h.gridApi=a,h.gridApi.selection&&(h.gridApi.selection.on.rowSelectionChanged(h,function(a){a.isSelected?h.id.push(h.gridApi.grid.options.primaryKey?a.entity[h.gridApi.grid.options.primaryKey]:a.entity.id):_.pull(h.id,h.gridApi.grid.options.primaryKey?a.entity[h.gridApi.grid.options.primaryKey]:a.entity.id)}),h.gridApi.selection.on.rowSelectionChangedBatch(h,function(a){a[0].isSelected?h.id=_.union(h.id,_.map(a,h.gridApi.grid.options.primaryKey?"entity."+h.gridApi.grid.options.primaryKey:"entity.id")):_.map(a,h.gridApi.grid.options.primaryKey?"entity."+h.gridApi.grid.options.primaryKey:"entity.id").forEach(function(a){_.pull(h.id,a)})})),h.gridApi.core.on.sortChanged(h,function(a,b){0===b.length?o.order=null:o.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),q()}),h.gridApi.pagination.on.paginationChanged(h,function(a,b){o.offset=(a-1)*b,o.limit=b,q()}),h.gridApi.core.on.filterChanged(h,function(){var a=this.grid;a.columns.forEach(function(a){m(a)}),q()}),h.gridApi.draggableRows&&h.gridApi.draggableRows.on.rowDropped(h,function(a){a.fromIndex!==a.toIndex&&d.update(i,h[n].data).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(a.message,"danger")})}),j||q()}},g)}}}]),angular.module("xCallyShuttleApp").controller("MainCtrl",["$scope","$rootScope","$translate","$timeout","socket","Auth","xAlert","$uibModal","$log","$state","Contact","$window",function(a,b,c,d,e,f,g,h,i,j,k,l){a.awesomeThings=[],b.workspaces=[],a.select=function(a){switch(a.type){case"chatRoom":case"mailRoom":a.unread=0}},a.deselect=function(){},a.isAdmin=f.isAdmin,a.isLoggedIn=f.isLoggedIn,a.getCurrentUser=f.getCurrentUser,a.CurrentUser=f.getCurrentUser(),e.socket.on("user_has_voice_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_chat_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_mail_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_fax_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_sms_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),a.mainTab={active:!0},a.closeJscriptyTab=function(a){if(b.workspaces[a].edited){var c=h.open({animation:!0,templateUrl:"app/main/closeEditedTab.modal.jscripty.html",controller:"CloseEditedTabModalJscriptyCtrl",resolve:{project:b.workspaces[a]}});c.result.then(function(){b.workspaces.splice(a,1)})}else b.workspaces.splice(a,1)},a.closeTab=function(a){var c;b.workspaces[a].edited?"jscripty"==b.workspaces[a].type?b.workspaces[a].end():(c=h.open({animation:!0,templateUrl:"app/main/closeEditedTab.modal.html",controller:"CloseEditedTabModalCtrl"}),c.result.then(function(){b.workspaces.splice(a,1)},function(){i.info("Modal dismissed at: "+new Date)})):b.workspaces.splice(a,1)},a.createContact=function(d,e){return e.tags=e.tags?e.tags.join(","):void 0,e.CompanyId||delete e.CompanyId,k.save(e).$promise.then(function(e){b.workspaces.splice(d,1);var f=e.firstName;e.lastName&&(f+=" "+e.lastName),a.openContactTab({firstName:e.firstName,lastName:e.lastName,id:e.id}),g.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.show(a.message,"danger")})};var m=function(b){var c=h.open({animation:!0,templateUrl:"app/main/chooseContact.modal.html",controller:"ChooseContactModalCtrl",resolve:{eventId:function(){return b.id}}});c.result.then(function(c){c?a.openContactTab(c,b):a.newContact(b)},function(){i.info("Modal dismissed at: "+new Date)})};a.updateContact=function(a,d){var e=angular.copy(d);return e.tags=e.tags?e.tags.join(","):void 0,e.CompanyId||(e.CompanyId=null),k.update({id:e.id},e).$promise.then(function(){b.workspaces[a].edited=!1,g.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.show(c.instant(a.message)+"!","danger")})},e.socket.on("report_integration:contactmanager",function(a){console.log("choosecontact"),m(a)}),e.socket.on("report_integration:jscripty",function(b){a.openJscriptyTab({name:"Jscripty",id:b.projectId,calleridnum:b.calleridnum,calleridname:b.calleridname,queue:b.queue,membername:b.membername})}),e.socket.on("report_integration:salesforce",function(a){l.open(a.url,"_blank")}),a.openContactTab=function(a,c){var d=_.find(b.workspaces,{contactID:a.id});if(d)d.active=!0;else{var e=a.firstName;a.lastName&&(e+=" "+a.lastName),b.workspaces.push({name:e,type:"contact",contactID:a.id,"class":"icon-user",active:!0,eventData:a.uniqueid?a:null,data:c||null})}},a.openJscriptyTab=function(a){b.workspaces.push({name:a.name,type:"jscripty",active:!0,data:a})},a.newContact=function(a){b.workspaces.push({name:"New Contact",type:"newContact","class":"icon-user",active:!0,data:a||null,eventData:a&&a.uniqueid?a:""})},b.language=c.use(),a.changeLanguage=function(a){c.use(a).then(function(a){b.language=a,-1!==["main.jscripty.projects.view","main.square.projects.view"].indexOf(j.current.name)&&l.location.reload()})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").directive("ngSpinnerBar",["$rootScope",function(a){return{link:function(b,c){c.addClass("hide"),a.$on("$stateChangeStart",function(){"spinner-page"===c[0].id&&c.removeClass("hide")}),a.$on("$stateChangeSuccess",function(){"spinner-page"===c[0].id&&(c.addClass("hide"),$("body").removeClass("page-on-load"),Layout.setSidebarMenuActiveLink("match"),setTimeout(function(){Metronic.scrollTop()},1e3))}),a.$on("$spinnerStart",function(){"spinner-request"===c[0].id&&c.removeClass("hide")}),a.$on("$spinnerStop",function(){"spinner-request"===c[0].id&&c.addClass("hide")}),a.$on("$stateNotFound",function(){"spinner-page"===c[0].id&&c.addClass("hide")}),a.$on("$stateChangeError",function(){"spinner-page"===c[0].id&&c.addClass("hide")})}}}]).directive("a",function(){return{restrict:"E",link:function(a,b,c){(c.ngClick||""===c.href||"#"===c.href)&&b.on("click",function(a){a.preventDefault()})}}}).directive("nxEqual",function(){return{require:"ngModel",link:function(a,b,c,d){return c.nxEqual?(a.$watch(c.nxEqual,function(a){d.$setValidity("nxEqual",a===d.$viewValue)}),void d.$parsers.push(function(b){var e=b===a.$eval(c.nxEqual);return d.$setValidity("nxEqual",e),e?b:void 0})):void console.error("nxEqual expects a model as an argument!")}}}).directive("ngEnter",function(){return function(a,b,c){b.bind("keydown keypress",function(b){13===b.which&&(a.$apply(function(){a.$eval(c.ngEnter)}),b.preventDefault())})}}).directive("dropdownMenuHover",function(){return{link:function(a,b){b.dropdownHover()}}}).directive("uiSelectRequired",function(){return{require:"ngModel",link:function(a,b,c,d){d.$validators.uiSelectRequired=function(a){return a&&a.length}}}}).directive("rpattern",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a,b){return null==b||""===b||!h||a.test(b)?(d.$setValidity("pattern",!0),b):void d.$setValidity("pattern",!1)}var f,g=c.rpattern,h=!0;g&&(g.match(/^\/(.*)\/$/)?(g=new RegExp(g.substr(1,g.length-2)),f=function(a){return e(g,a)}):f=function(b){var c=a.$eval(g);if(!c||!c.test)throw new Error("Expected "+g+" to be a RegExp but was "+c);return e(c,b)}),d.$formatters.push(f),d.$parsers.push(f),c.$observe("required",function(a){h=a,f(d.$viewValue)})}}}).directive("conditionBuilder",["$compile","xAlert","$timeout",function(a,b,c){return{restrict:"E",scope:{element:"=",serviceindex:"=",service:"=",form:"="},templateUrl:"app/main/template/template.conditionBuilder.html",compile:function(d,e){var f,g;return f=d.contents().remove(),function(d,e,h){function i(a){var c=_.find(d.service.services[d.serviceindex].conditions,{value:a});if(c)if(d.elementType=c.type,c.arr)d.values=c.arr;else if(c.resource)return c.resource.get().$promise.then(function(a){d.values=_.map(a.rows,function(a){return{name:a[c.resValue],value:a[c.resValue]}})})["catch"](function(a){b.show($translate.instant(a.message),"danger")})}function j(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}d._=_,d.randomName=j(),c(function(){d.element.field&&i(d.element.field)}),d.checkCondition=function(a){d.element.value="",d.element.operator="",i(a)},g||(g=a(f)),e.append(g(d,function(a){return a}))}}}}]).directive("newContact",["$compile","xAlert","socket","$translate","$timeout","List","Tag","Company","ReportCall","$uibModal",function(a,b,c,d,e,f,g,h,i,j){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.contactTab.html",compile:function(a,k){return function(a,k,l){function m(){a.$watch("contact",function(b,c){angular.equals(b,c)||(a.workspace.edited=!0)},!0)}a.forms={general:{}},a.firstLoad=!0,a.detail={tab:"main"},a.contact={CompanyId:"",disposed:!1},a.submitButtonLabel=d.instant("APPLICATION_CONFIRM"),a.dispose=function(){return j.open({animation:!0,templateUrl:"app/main/cm.disposition.html",controller:"ContactManagerSetDisposition"}).result.then(function(c){return i.update({id:a.workspace.data.uniqueid},c).$promise.then(function(){a.contact.disposed=!0,b.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.data.message,"danger")})})},a.init=function(){a.workspace.data&&(a.contact.firstName=a.workspace.data.calleridname?a.workspace.data.calleridname:a.workspace.data.messageId?a.workspace.data.messageId:a.workspace.data.uniqueid?a.workspace.data.uniqueid:"",a.workspace.data.calleridnum&&(a.contact.phone=a.workspace.data.calleridnum),a.workspace.data.from&&(a.contact.email=a.workspace.data.from)),a.getTags(),a.getCompanies(),a.getLists()},a.getLists=function(){return f.get().$promise.then(function(b){a.lists=b.rows,c.syncUpdates("list",a.lists),a.contact.ListId=a.lists[0]?a.lists[0].id:null,a.getCustomFields()})["catch"](function(a){b.show(d.instant(a.message)+"!","danger")})},a.getCustomFields=function(){return f.get({listId:a.contact.ListId,controller:"customfields"}).$promise.then(function(b){a.customFields=b.rows,a.customFields.forEach(function(a){a.values=JSON.parse(a.values)}),c.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),c.socket.on("custom_field:save",function(b){if(b.ListId===a.contact.ListId){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}}),!a.firstLoad||a.workspace.data?(a.workspace.edited=!0,a.firstLoad=!1):(a.firstLoad=!1,m())})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getTags=function(){return g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCompanies=function(){return h.get().$promise.then(function(b){a.companies=b.rows,a.companies.unshift({id:"",name:"-- None --"}),c.syncUpdates("company",a.companies)})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},e(function(){a.init()})}}}}]).directive("contact",["$compile","xAlert","socket","$timeout","List","Tag","Company","Contact","$translate","gridOptions","$uibModal","ReportCall",function(a,b,c,d,e,f,g,h,i,j,k,l){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.contactTab.html",compile:function(a,m){return function(a,m,n){function o(b){var c=[];_.forEach(a.columns[a.log[b].show][a.log[b].detail].indexes,function(d,e){c.push({name:d,displayName:a.columns[a.log[b].show][a.log[b].detail].header[e],headerCellFilter:"translate",enableSorting:!1,enableColumnMenu:!1})});var d={enablePaginationControls:!0,exporterCsvFilename:b+".csv",columnDefs:c};a["gridOptions"+b]=j.gridOptions(h,d,a,_.merge({id:a.workspace.contactID,controller:"log",logType:b,order:"createdAt DESC"},a.log[b]),!0,b),a["gridOptions"+b].getPage()}a.moment=moment,a.submitButtonLabel=i.instant("APPLICATION_UPDATE"),a.forms={general:{}},a.detail={tab:"main"},a.log={daily:{show:"phone",type:"inbound",detail:"general"},history:{show:"phone",type:"inbound",detail:"general"}},a.columns={phone:{general:{header:["APPLICATION_SOURCE","APPLICATION_DESTINATION","APPLICATION_DISPOSITION","APPLICATION_DATE"],indexes:["source","destination","disposition","createdAt"]},queue:{header:["APPLICATION_CALLERID","APPLICATION_QUEUE","APPLICATION_DATE"],indexes:["calleridnum","queue","createdAt"]}},email:{general:{header:["APPLICATION_FROM","APPLICATION_TO","APPLICATION_DISPOSITION","APPLICATION_DATE"],indexes:["from","accountaddress","disposition","createdAt"]}}},a.dispose=function(){return k.open({animation:!0,templateUrl:"app/main/cm.disposition.html",controller:"ContactManagerSetDisposition"}).result.then(function(c){return l.update({id:a.workspace.data.uniqueid},c).$promise.then(function(){a.contact.disposed=!0,b.show(i.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.data.message,"danger")})})},a.companyInfo=function(b){k.open({animation:!0,size:"lg",templateUrl:"app/main/company.info.html",controller:["$scope","$uibModalInstance","company",function(a,b,c){a.company=c,a.close=function(){b.dismiss("cancel")}}],resolve:{company:_.find(a.companies,{id:b})}})},a.updateLog=function(b,c,d,e){c&&(a.log[b].show=c),d&&(a.log[b].detail=d),e&&(a.log[b].type=e),o(b)},a.getContact=function(){return h.get({id:a.workspace.contactID}).$promise.then(function(b){b.tags=b.tags?b.tags.split(","):[],a.contact=b,a.contact.CompanyId||(a.contact.CompanyId=""),a.getCustomFields(b.ListId),a.updateLog("daily"),a.updateLog("history")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getTags=function(){return f.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCompanies=function(){return g.get().$promise.then(function(b){a.companies=b.rows,a.companies.unshift({id:"",name:"-- None --"}),c.syncUpdates("company",a.companies)})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCustomFields=function(d){return e.get({listId:d,controller:"customfields"}).$promise.then(function(b){a.customFields=b.rows,a.customFields.forEach(function(a){a.values=JSON.parse(a.values)}),c.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),c.socket.on("custom_field:save",function(b){if(b.ListId===d){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}})})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},d(function(){a.getTags(),a.getCompanies(),a.getContact()})}}}}]).directive("jscripty",["$compile","xAlert","$http","socket","JscriptyProject",function(a,b,c,d,e){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.jscriptyTab.html",compile:function(a,d){return function(a,d,f){a.count=0,a.questions=[];var g,h=a.workspace.data.id;c.get("/api/jscripty/projects/"+h+"/download").success(function(b){b?c.post("/api/jscripty/projects/"+h+"/sessions",{projectId:h,status:"started",queue:a.workspace.data.queue,calleridnum:a.workspace.data.calleridnum,callername:a.workspace.data.callername,membername:a.workspace.data.membername}).success(function(c){g=c.session_id,a.workspace.edited=!0,a.workspace.sessionId=g,a.workspace.projectId=h;var d=mxUtils.parseXml(b),e=new mxCodec(d);a.decObj=e.decode(d.documentElement);var f=_.find(a.decObj.cells,function(a){return a.vertex&&"start"==a.value.nodeName});if("OFF"==f.getAttribute("state")){var j=_.find(f.edges,function(a){return a.source.id==f.id}).target;a.questions[a.count]=a.currentQuestion=i(j)}else a.questions[a.count]=a.currentQuestion=f;a.saveQuestions()}):(console.log("No project published!"),alert("No project published!"),a.submit({index:a.index}))}),a.next=function(b,c){switch(a.currentQuestion.answer&&a.currentQuestion.answer!=c&&(a.questions=_.take(a.questions,a.count+1)),a.currentQuestion.answer=c,b.value.nodeName){case"question":b=i(b)}a.questions[a.count]=a.currentQuestion,a.currentQuestion=b,a.count++,a.questions[a.count]=b,a.saveQuestions()};var i=function(a){var b=[];return a.options=[],_.forEach(a.edges,function(c,d){if(c.source.id==a.id&&c.value){var e=String(c.value).split(",");e.length>1?(_.forEach(e,function(b,d){var e=Object.create(c);e.setValue(b),a.edges.push(e),a.options.push(b)}),b.push(c)):a.options.push(e[0]); +}}),_.forEach(b,function(b){_.remove(a.edges,function(a){return a.value==b.value&&a.id==b.id})}),a};a.end=function(){a.saveQuestions(),a.workspace.lastQuestionId=a.questions[a.questions.length-1].id,"end"==a.questions[a.questions.length-1].value.nodeName&&(a.workspace.edited=!1,e.update({id:h,controller:"sessions",action:g},{status:"completed",completedAt:Date(),last_question_id:a.questions[a.questions.length-1].id}).$promise.then(function(a){b.show("Project Ended","success")})),a.submit({index:a.index})},a.workspace.end=a.end,a.back=function(){a.count--,a.currentQuestion=a.questions[a.count]},a.setCurrentQuestion=function(b){a.count=b,a.currentQuestion=a.questions[a.count]},a.saveQuestions=function(){for(var c=[],d=[],f=0;f<a.questions.length;f++){if(a.questions[f].children)for(var i=a.questions[f].children,j=0;j<i.length;j++)d[j]={input_id:i[j].id,input_type:i[j].getAttribute("type"),input_label:i[j].getAttribute("label"),input_value:"checkbox"!=i[j].getAttribute("type")||i[j].answer?i[j].answer:!1};c[f]={sessionId:g,projectId:h,question_id:a.questions[f].id,question_type:a.questions[f].value.nodeName,question_label:a.questions[f].getAttribute("label"),question_text:a.questions[f].getAttribute("question")||a.questions[f].getAttribute("text"),question_other_label:a.questions[f].getAttribute("other"),question_other_answer:a.questions[f].otheranswer,question_answer:a.questions[f].answer,question_options:a.questions[f].options?JSON.stringify({options:a.questions[f].options}):null,index:f,ReportJscriptyInputs:d},d=[]}e.save({id:h,controller:"sessions",action:g,action2:"questions"},c).$promise.then(function(a){})["catch"](function(a){b.show(a.message,"danger")})}}}}}]).directive("reportBuilder",["$compile",function(a){return{restrict:"E",scope:{group:"=",fields:"=",forms:"=",firstCall:"="},templateUrl:"app/main/template/template.reportBuilderView.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){b.operators=[{name:"AND"},{name:"OR"}],b.conditions=[{name:"="},{name:"!="},{name:"<"},{name:"<="},{name:">"},{name:">="},{name:"LIKE"}],b.addCondition=function(){b.group.rules.push({condition:"=",field:"",value:""})},b.removeCondition=function(a){b.group.rules.splice(a,1)},b.addGroup=function(){b.group.rules.push({group:{operator:"AND",rules:[{condition:"=",field:"",value:""}]}})},b.randomName=function(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")},b.removeGroup=function(){b.$parent.group&&b.$parent.group.rules.splice(b.$parent.$index,1)},e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]).directive("dynamicName",["$compile",function(a){return{restrict:"A",terminal:!0,priority:1e3,link:function(b,c,d){c.attr("name",b.$eval(d.dynamicName)),c.removeAttr("dynamic-name"),a(c)(b)}}}]).directive("onReadFile",["$parse",function(a){return{restrict:"A",scope:!1,link:function(b,c,d){var e=a(d.onReadFile);c.on("change",function(a){var c=new FileReader;c.onload=function(a){b.$apply(function(){e(b,{$fileContent:a.target.result})})},c.readAsText((a.srcElement||a.target).files[0])})}}}]).directive("motionFileDownload",["xAlert","$translate","$timeout","$location","FileSaver","$compile",function(a,b,c,d,e,f){return{restrict:"E",template:'<a uib-tooltip=\'{{tooltiptext}}\' class="{{btnclass || \'btn default btn-xs blue-hoki\'}}" href="" data-ng-click="download()" ><i class="icon-cloud-download"></i>{{btncontent || \'\'}}</a>',scope:{mimetype:"=",filename:"=",resource:"=",params:"=",btnclass:"@",btncontent:"@",tooltiptext:"@"},link:function(c,d,f){var g=d.children()[0];c.$on("download-start",function(){$(g).attr("disabled","disabled")}),c.$on("downloaded",function(a,b){var d=base64ToBlob(b,c.mimetype);e.saveAs(d,c.filename),$(g).attr("disabled",!1)}),c.download=function(){return c.$emit("download-start"),c.resource.get(c.params).$promise.then(function(a){c.$emit("downloaded",a.downloadString)})["catch"](function(d){a.show(b.instant(d.translatedMessage||d.data.translatedMessage||d.message||d.data.message),"danger"),c.download=function(){}})}}}}]).directive("audioFileDownload",["xAlert","$translate","$sce",function(a,b,c){return{restrict:"E",template:'<button type="button" class="btn default btn-xs blue-hoki" data-ng-click="download()"><i class="fa fa-play"></i> {{ \'APPLICATION_PREVIEW\' | translate}}</button>',scope:{resource:"=",params:"="},link:function(d,e,f){var g=e.children()[0];d.$on("download-start",function(a,b){$(g).attr("disabled","disabled").html('<i class="icon-refresh"></i> Loading...')}),d.$on("downloaded",function(a,b){var d=new Audio(c.trustAsResourceUrl("data:audio/ogg;base64,"+b));d.controls=!0,$(g).remove(),e.append(d),d.play()}),d.$on("error",function(a,b){$(g).removeClass("blue-stripe").addClass("red-stripe").html('<i class="icon-ban"></i> Error!')}),d.download=function(){return d.$emit("download-start"),d.resource.get(d.params).$promise.then(function(a){d.$emit("downloaded",a.downloadString)})["catch"](function(c){a.show(b.instant(c.translatedMessage||c.data.translatedMessage||c.message||c.data.message),"danger")})}}}}]).directive("uiRequired",function(){return{require:"ngModel",link:function(a,b,c,d){d.$validators.required=function(a,b){return!(b&&0===b.length&&"true"===c.uiRequired)},c.$observe("uiRequired",function(){d.$setValidity("required",!("true"===c.uiRequired&&d.$viewValue&&0===d.$viewValue.length))})}}}).directive("schrollBottom",function(){return{scope:{schrollBottom:"="},link:function(a,b){a.$watchCollection("schrollBottom",function(a){a&&$(b).scrollTop($(b)[0].scrollHeight)})}}}).directive("customGridDateFilterHeader",function(){return{templateUrl:"app/main/customDateFilterHeader.html",controller:"gridDatePickerFilterCtrl"}}),angular.module("xCallyShuttleApp").filter("propsFilter",function(){return function(a,b){var c=[];return angular.isArray(a)?a.forEach(function(a){for(var d=!1,e=Object.keys(b),f=0;f<e.length;f++){var g=e[f],h=b[g].toLowerCase();if(-1!==a[g].toString().toLowerCase().indexOf(h)){d=!0;break}}d&&c.push(a)}):c=a,c}}).filter("capitalize",function(){return function(a){return a?a.replace(/([^\W_]+[^\s-]*) */g,function(a){return a.charAt(0).toUpperCase()+a.substr(1).toLowerCase()}):""}}).filter("salesforce",function(){var a=["CallDisposition","CallDurationInSeconds","CallObject","CallType","IsArchived","Priority","Status","Type"];return function(b){return _.remove(b,function(b){return b.custom===!1&&a.indexOf(b.name)<0}),b}}).filter("sugarcrm",function(){var a=["account_id","account_name","account_name1","assigned_user_name","assigned_user_id","case_number","created_by","created_by_name","date_entered","date_modified","deleted","description","id","modified_by_name","modified_user_id","name"];return function(b){return _.remove(b,function(b){return a.indexOf(b.name)>=0}),b}}).filter("freshdesk",function(){var a=["requester","subject","agent","description"];return function(b){return _.remove(b,function(b){return a.indexOf(b.ticket_field.name)>=0}),b}}).filter("zendesk",function(){var a=["subject","assignee","description"];return function(b){return _.remove(b,function(b){return a.indexOf(b.type)>=0}),b}}).filter("slice",function(){return function(a,b,c){return a?a.slice(b,c):void 0}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main",{"abstract":!0,templateUrl:"app/main/main.html",controller:"MainCtrl",resolve:{authorization:["$q","Auth","$state","$timeout","$location",function(a,b,c,d,e){return b.getToken()?a.when():(d(function(){e.path("/login")}),a.reject())}],deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/mxgraph/js/mxClient.js"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("xAlert",["$translate","Notification",function(a,b){return{show:function(c,d){switch(d){case"success":b.success({message:c,title:'<i class="glyphicon glyphicon-ok"></i> <strong>'+a.instant("MESSAGE_SUCCESS")+"!</strong>",delay:5e3});break;case"info":b.info({message:c,title:'<i class="glyphicon glyphicon-info-sign"></i> <strong>'+a.instant("MESSAGE_INFO")+"!</strong>",delay:5e3});break;case"danger":b.error({message:c,title:'<i class="glyphicon glyphicon-exclamation-sign"></i> <strong>'+a.instant("MESSAGE_ERROR")+"!</strong>",delay:1e4});break;case"warning":b.warning({message:c,title:'<i class="glyphicon glyphicon-warning-sign"></i> <strong>'+a.instant("MESSAGE_WARNING")+"!</strong>",delay:1e4});break;default:b.info(c)}},error:function(c){var d;d=c?c.data?c.data.translatedMessage||c.data.message||"Generic Error":c.translatedMessage||c.message||"Generic Error":"Generic Error",b.error({message:a.instant(d),title:'<i class="glyphicon glyphicon-exclamation-sign"></i> <strong>'+a.instant("MESSAGE_ERROR")+"!</strong>",delay:1e4})}}}]).factory("stResource",["$q","$filter","$timeout","$rootScope","$http","$translate","xAlert",function(a,b,c,d,e,f,g){return{getPage:function(b){var c={page:Math.ceil(b.pagination.start/b.pagination.number),per_page:b.pagination.number};b.sort.predicate&&(c.sort_by=b.sort.predicate,c.sort_order=b.sort.reverse?"DESC":"ASC"),_.forIn(b.search.predicateObject,function(a,b){c[b]=a}),b.search.params&&(c.clientQuery={},_.forIn(b.search.params,function(a,b){c.clientQuery[b]=a})),d.$broadcast("$spinnerStart"),e.get(b.url,{params:c}).success(function(a){h.resolve(a),d.$broadcast("$spinnerStop")}).error(function(a){g.show(f.instant(a.message),"danger"),d.$broadcast("$spinnerStop")});var h=a.defer();return h.promise}}}]).factory("xNotification",["$translate","Notification","$rootScope",function(a,b,c){return{show:function(d,e,f,g,h,i){var j=c.$new();switch(j.acceptBtn=a.instant("APPLICATION_ACCEPT"),j.rejectBtn=a.instant("APPLICATION_REJECT"),j.nAccept=h,j.nReject=i,f){case"chat":return b.info({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"mail":return b.success({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"fax":return b.warning({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"sms":return b.error({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});default:return b.primary({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j})}}}}]),angular.module("xCallyShuttleApp").factory("Widget",["$resource",function(a){return a("/api/widgets/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MarketCtrl",["$scope","$http","$translate","socket","xAlert","Modal","$timeout",function(a,b,c,d,e,f,g){function h(a,b){return Math.floor(Math.random()*(b-a+1))+a}a.initView=function(){b.get("/api/integrations").success(function(b){a.integrations=b.rows,a.groupedIntegration=_.chunk(a.integrations,4),d.syncUpdates("integration",a.integrations,function(){a.groupedIntegration=_.chunk(a.integrations,4)})}).error(function(a){e.show(a.message,"danger")})},a.isProgressing=!1,a.$on("$destroy",function(){d.unsyncUpdates("integration")}),a.installIntegration=function(d){a.status="Downloading",a.percentage=h(1,50),a.isProgressing=!0,d.downloading=!0,b.put("/api/integrations/"+d.id,{active:!0}).success(function(){g(function(){a.percentage=h(51,99),a.status="Installing"},2500),g(function(){a.percentage=100,a.isProgressing=!1,a.status="Completed!",d.downloading=!1,e.show(c.instant("MESSAGE_WELL_DONE")+".","success")},5e3)}).error(function(){d.downloading=!1,a.percentage=0,a.isProgressing=!1,e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.uninstallIntegration=function(d){a.status="Uninstalling",a.percentage=h(1,99),a.isProgressing=!0,d.downloading=!0,b.put("/api/integrations/"+d.id,{active:!1}).success(function(){g(function(){a.percentage=100,a.isProgressing=!1,a.status="Completed!",d.downloading=!1,e.show(c.instant("MESSAGE_WELL_DONE")+".","success")},5e3)}).error(function(){d.downloading=!1,a.percentage=0,a.isProgressing=!1,e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.market",{url:"/market",templateUrl:"app/market/market.html",controller:"MarketCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("MotionbarCtrl",["$scope","$stateParams","$cookieStore","$window","$location","settings","Auth",function(a,b,c,d,e,f,g){console.log(b),b.token&&b.userId&&b.role&&b.redirectTo?(g.loginWithToken(b.token,b.userId,b.role),d.location.href=decodeURIComponent(b.redirectTo)):e.path("/login")}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("motionbar",{url:"/motionbar?redirectTo&token&userId&role",template:"<div ui-view></div>",controller:"MotionbarCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.blacklist",{url:"/blacklist",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerBlackListListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerBlackList","uiGridConstants",function(a,b,c,d,e,f,g){a.initView=function(){a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"phone"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.phone, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/blacklist/list/list.create.modal.html",controller:"MotionDialerBlackListListCreateCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerBlackListListCreateCtrl",["$scope","$translate","$uibModalInstance","MotionDialerBlackList","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.insert(a.item).$promise.then(function(a){a.status>0?(e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.blacklist.list",{url:"/list",templateUrl:"app/motiondialer/blacklist/list/list.html",controller:"MotionDialerBlackListListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerBlackList",["$resource",function(a){return a("/api/rest/blacklist/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.info",{url:"/info",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerSystem",["$resource",function(a){return a("/api/rest/system/:controller",null,{properties:{method:"POST",params:{controller:"properties"}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerInfoViewCtrl",["$scope","xAlert","MotionDialerSystem",function(a,b,c){a.getProperties=function(){return c.properties().$promise.then(function(c){console.log(c),c.status>0?a.properties=c.response.RMI:b.show(c.message||"Please, check your connection!","danger")})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.info.view",{url:"/view",templateUrl:"app/motiondialer/info/view/view.html",controller:"MotionDialerInfoViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.info.view.about",{url:"/about",templateUrl:"app/motiondialer/info/view/view.about.html"}).state("main.motiondialer.info.view.details",{url:"/details",templateUrl:"app/motiondialer/info/view/view.details.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists",{url:"/lists",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerListListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerList","uiGridConstants","usSpinnerService",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"name"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" href="/motiondialer/lists/view/{{row.entity.id}}/settings">{{\'APPLICATION_SETTINGS\' | translate}}</a> <a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){h.stop("spinner-grid")})},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/list/list/list.create.modal.html",controller:"MotionDialerListListCreateCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerListListCreateCtrl",["$scope","$translate","$uibModalInstance","MotionDialerList","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.insert(a.item).$promise.then(function(a){a.status>0?(e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists.list",{url:"/list",templateUrl:"app/motiondialer/list/list/list.html",controller:"MotionDialerListListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerContact",["$resource",function(a){return a("/api/rest/contact/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").factory("MotionDialerList",["$resource",function(a){return a("/api/rest/list/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewContactCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerContact","xAlert","MotionDialerTimezone",function(a,b,c,d,e,f,g){a.form={},a.item={},a.timezones=g.list(),a.save=function(){return console.log(a.item),e.insert({id_list:parseInt(d.id),name:a.item.name,phones:a.item.phones.trim().split(","),description:a.item.description||""}).$promise.then(function(a){console.log(a),a.status>0?(f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):f.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){f.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerListContactImportModalCtrl",["$scope","$uibModalInstance","$stateParams","indexes","csv","xAlert","MotionDialerContact","MotionDialerTimezone",function(a,b,c,d,e,f,g,h){function i(b){if(b>=a.csvLength||a.stopped)return void(a.importing=!1);var d={id_list:parseInt(c.id),name:"",phones:[],description:""};return _.forOwn(a.item,function(a,c){"phones"===c?d[c].push(e[b][a]):d[c]=e[b][a]}),g.insert(d).$promise.then(function(b){b.status>0?(a["import"].success+=j,a["import"].succeeded++,k.push(b.response.RMI)):(console.log(b),a["import"].fail+=j,a["import"].failed++)})["catch"](function(b){console.log(b),a["import"].fail+=j,a["import"].failed++})["finally"](function(){i(b+1)})}a.form={},a.item={},a.timezones=h.list(),console.log(d),console.log(e),a.indexes=d,a.importing=!1,a.submitted=!1,a.stopped=!1,a["import"]={success:0,fail:0,succeeded:0,failed:0},a.csvLength=e.length;var j=100/a.csvLength,k=[];a.start=function(){a.importing=!0,a.submitted=!0,i(0)},a.close=function(){b.close(k)},a.stop=function(){a.stopped=!0}}]),angular.module("xCallyShuttleApp").controller("MotionDialerListViewCtrl",["$scope","$translate","$stateParams","$uibModal","xAlert","uiGridConstants","usSpinnerService","MotionDialerList","MotionDialerContact","Modal","FileUploader","Papa",function(a,b,c,d,e,f,g,h,i,j,k,l){a.getList=function(){return h.find({id:parseInt(c.id)}).$promise.then(function(b){b.status>0?a.list=b.response.RMI:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.updateList=function(){return h.update({id:a.list.id,name:a.list.name,description:a.list.description}).$promise.then(function(a){a.status>0?e.show(b.instant("MESSAGE_WELL_DONE"),"success"):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getContacts=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"name"},{name:"phones"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:f.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteContact(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},i.list({id_list:parseInt(c.id),page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.deleteContact=j.confirm["delete"](function(c){return i["delete"]({id:c}).$promise.then(function(d){d.status>0?(_.remove(a.gridOptions.data,{id:c}),e.show(b.instant("MESSAGE_WELL_DONE"),"success")):e.show(d.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.createContact=function(){var b=d.open({animation:!0,templateUrl:"app/motiondialer/list/view/view.contact.create.modal.html",controller:"MotionDialerViewContactCreateCtrl"});b.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})};var m=a.uploader=new k({queueLimit:1,clearInputAfterAddedToQueue:!0});m.onAfterAddingFile=function(b){l.parse(b._file,{header:!0,complete:function(b){a.uploader.clearQueue(),a["import"](b.data)},error:function(a){e.show(a,"danger")}})},a["import"]=function(b){var c=d.open({animation:!0,backdrop:"static",keyboard:!1,templateUrl:"app/motiondialer/list/view/view.contact.import.modal.html",controller:"MotionDialerListContactImportModalCtrl",resolve:{indexes:function(){return _.keys(b[0])},csv:function(){return b}}});c.result.then(function(b){console.log(b),a.gridOptions.data=a.gridOptions.data.concat(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists.view",{url:"/view/:id",templateUrl:"app/motiondialer/list/view/view.html",controller:"MotionDialerListViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.lists.view.settings",{url:"/settings",templateUrl:"app/motiondialer/list/view/view.settings.html"}).state("main.motiondialer.lists.view.contacts",{url:"/contacts",templateUrl:"app/motiondialer/list/view/view.contacts.html"})}]),angular.module("xCallyShuttleApp").factory("MotionDialerTimezone",function(){return{list:function(){return[{group:"US (Common)",zones:[{value:"America/Puerto_Rico",name:"Puerto Rico (Atlantic)"},{value:"America/New_York",name:"New York (Eastern)"},{value:"America/Chicago",name:"Chicago (Central)"},{value:"America/Denver",name:"Denver (Mountain)"},{value:"America/Phoenix",name:"Phoenix (MST)"},{value:"America/Los_Angeles",name:"Los Angeles (Pacific)"},{value:"America/Anchorage",name:"Anchorage (Alaska)"},{value:"Pacific/Honolulu",name:"Honolulu (Hawaii)"}]},{group:"America",zones:[{value:"America/Adak",name:"Adak"},{value:"America/Anchorage",name:"Anchorage"},{value:"America/Anguilla",name:"Anguilla"},{value:"America/Antigua",name:"Antigua"},{value:"America/Araguaina",name:"Araguaina"},{value:"America/Argentina/Buenos_Aires",name:"Argentina - Buenos Aires"},{value:"America/Argentina/Catamarca",name:"Argentina - Catamarca"},{value:"America/Argentina/ComodRivadavia",name:"Argentina - ComodRivadavia"},{value:"America/Argentina/Cordoba",name:"Argentina - Cordoba"},{value:"America/Argentina/Jujuy",name:"Argentina - Jujuy"},{value:"America/Argentina/La_Rioja",name:"Argentina - La Rioja"},{value:"America/Argentina/Mendoza",name:"Argentina - Mendoza"},{value:"America/Argentina/Rio_Gallegos",name:"Argentina - Rio Gallegos"},{value:"America/Argentina/Salta",name:"Argentina - Salta"},{value:"America/Argentina/San_Juan",name:"Argentina - San Juan"},{value:"America/Argentina/San_Luis",name:"Argentina - San Luis"},{value:"America/Argentina/Tucuman",name:"Argentina - Tucuman"},{value:"America/Argentina/Ushuaia",name:"Argentina - Ushuaia"},{value:"America/Aruba",name:"Aruba"},{value:"America/Asuncion",name:"Asuncion"},{value:"America/Atikokan",name:"Atikokan"},{value:"America/Atka",name:"Atka"},{value:"America/Bahia",name:"Bahia"},{value:"America/Barbados",name:"Barbados"},{value:"America/Belem",name:"Belem"},{value:"America/Belize",name:"Belize"},{value:"America/Blanc-Sablon",name:"Blanc-Sablon"},{value:"America/Boa_Vista",name:"Boa Vista"},{value:"America/Bogota",name:"Bogota"},{value:"America/Boise",name:"Boise"},{value:"America/Buenos_Aires",name:"Buenos Aires"},{value:"America/Cambridge_Bay",name:"Cambridge Bay"},{value:"America/Campo_Grande",name:"Campo Grande"},{value:"America/Cancun",name:"Cancun"},{value:"America/Caracas",name:"Caracas"},{value:"America/Catamarca",name:"Catamarca"},{value:"America/Cayenne",name:"Cayenne"},{value:"America/Cayman",name:"Cayman"},{value:"America/Chicago",name:"Chicago"},{value:"America/Chihuahua",name:"Chihuahua"},{value:"America/Coral_Harbour",name:"Coral Harbour"},{value:"America/Cordoba",name:"Cordoba"},{value:"America/Costa_Rica",name:"Costa Rica"},{value:"America/Cuiaba",name:"Cuiaba"},{value:"America/Curacao",name:"Curacao"},{value:"America/Danmarkshavn",name:"Danmarkshavn"},{value:"America/Dawson",name:"Dawson"},{value:"America/Dawson_Creek",name:"Dawson Creek"},{value:"America/Denver",name:"Denver"},{value:"America/Detroit",name:"Detroit"},{value:"America/Dominica",name:"Dominica"},{value:"America/Edmonton",name:"Edmonton"},{value:"America/Eirunepe",name:"Eirunepe"},{value:"America/El_Salvador",name:"El Salvador"},{value:"America/Ensenada",name:"Ensenada"},{value:"America/Fortaleza",name:"Fortaleza"},{value:"America/Fort_Wayne",name:"Fort Wayne"},{value:"America/Glace_Bay",name:"Glace Bay"},{value:"America/Godthab",name:"Godthab"},{value:"America/Goose_Bay",name:"Goose Bay"},{value:"America/Grand_Turk",name:"Grand Turk"},{value:"America/Grenada",name:"Grenada"},{value:"America/Guadeloupe",name:"Guadeloupe"},{value:"America/Guatemala",name:"Guatemala"},{value:"America/Guayaquil",name:"Guayaquil"},{value:"America/Guyana",name:"Guyana"},{value:"America/Halifax",name:"Halifax"},{value:"America/Havana",name:"Havana"},{value:"America/Hermosillo",name:"Hermosillo"},{value:"America/Indiana/Indianapolis",name:"Indiana - Indianapolis"},{value:"America/Indiana/Knox",name:"Indiana - Knox"},{value:"America/Indiana/Marengo",name:"Indiana - Marengo"},{value:"America/Indiana/Petersburg",name:"Indiana - Petersburg"},{value:"America/Indiana/Tell_City",name:"Indiana - Tell City"},{value:"America/Indiana/Vevay",name:"Indiana - Vevay"},{value:"America/Indiana/Vincennes",name:"Indiana - Vincennes"},{value:"America/Indiana/Winamac",name:"Indiana - Winamac"},{value:"America/Indianapolis",name:"Indianapolis"},{value:"America/Inuvik",name:"Inuvik"},{value:"America/Iqaluit",name:"Iqaluit"},{value:"America/Jamaica",name:"Jamaica"},{value:"America/Jujuy",name:"Jujuy"},{value:"America/Juneau",name:"Juneau"},{value:"America/Kentucky/Louisville",name:"Kentucky - Louisville"},{value:"America/Kentucky/Monticello",name:"Kentucky - Monticello"},{value:"America/Knox_IN",name:"Knox IN"},{value:"America/La_Paz",name:"La Paz"},{value:"America/Lima",name:"Lima"},{value:"America/Los_Angeles",name:"Los Angeles"},{value:"America/Louisville",name:"Louisville"},{value:"America/Maceio",name:"Maceio"},{value:"America/Managua",name:"Managua"},{value:"America/Manaus",name:"Manaus"},{value:"America/Marigot",name:"Marigot"},{value:"America/Martinique",name:"Martinique"},{value:"America/Matamoros",name:"Matamoros"},{value:"America/Mazatlan",name:"Mazatlan"},{value:"America/Mendoza",name:"Mendoza"},{value:"America/Menominee",name:"Menominee"},{value:"America/Merida",name:"Merida"},{value:"America/Mexico_City",name:"Mexico City"},{value:"America/Miquelon",name:"Miquelon"},{value:"America/Moncton",name:"Moncton"},{value:"America/Monterrey",name:"Monterrey"},{value:"America/Montevideo",name:"Montevideo"},{value:"America/Montreal",name:"Montreal"},{value:"America/Montserrat",name:"Montserrat"},{value:"America/Nassau",name:"Nassau"},{value:"America/New_York", +name:"New York"},{value:"America/Nipigon",name:"Nipigon"},{value:"America/Nome",name:"Nome"},{value:"America/Noronha",name:"Noronha"},{value:"America/North_Dakota/Center",name:"North Dakota - Center"},{value:"America/North_Dakota/New_Salem",name:"North Dakota - New Salem"},{value:"America/Ojinaga",name:"Ojinaga"},{value:"America/Panama",name:"Panama"},{value:"America/Pangnirtung",name:"Pangnirtung"},{value:"America/Paramaribo",name:"Paramaribo"},{value:"America/Phoenix",name:"Phoenix"},{value:"America/Port-au-Prince",name:"Port-au-Prince"},{value:"America/Porto_Acre",name:"Porto Acre"},{value:"America/Port_of_Spain",name:"Port of Spain"},{value:"America/Porto_Velho",name:"Porto Velho"},{value:"America/Puerto_Rico",name:"Puerto Rico"},{value:"America/Rainy_River",name:"Rainy River"},{value:"America/Rankin_Inlet",name:"Rankin Inlet"},{value:"America/Recife",name:"Recife"},{value:"America/Regina",name:"Regina"},{value:"America/Resolute",name:"Resolute"},{value:"America/Rio_Branco",name:"Rio Branco"},{value:"America/Rosario",name:"Rosario"},{value:"America/Santa_Isabel",name:"Santa Isabel"},{value:"America/Santarem",name:"Santarem"},{value:"America/Santiago",name:"Santiago"},{value:"America/Santo_Domingo",name:"Santo Domingo"},{value:"America/Sao_Paulo",name:"Sao Paulo"},{value:"America/Scoresbysund",name:"Scoresbysund"},{value:"America/Shiprock",name:"Shiprock"},{value:"America/St_Barthelemy",name:"St Barthelemy"},{value:"America/St_Johns",name:"St Johns"},{value:"America/St_Kitts",name:"St Kitts"},{value:"America/St_Lucia",name:"St Lucia"},{value:"America/St_Thomas",name:"St Thomas"},{value:"America/St_Vincent",name:"St Vincent"},{value:"America/Swift_Current",name:"Swift Current"},{value:"America/Tegucigalpa",name:"Tegucigalpa"},{value:"America/Thule",name:"Thule"},{value:"America/Thunder_Bay",name:"Thunder Bay"},{value:"America/Tijuana",name:"Tijuana"},{value:"America/Toronto",name:"Toronto"},{value:"America/Tortola",name:"Tortola"},{value:"America/Vancouver",name:"Vancouver"},{value:"America/Virgin",name:"Virgin"},{value:"America/Whitehorse",name:"Whitehorse"},{value:"America/Winnipeg",name:"Winnipeg"},{value:"America/Yakutat",name:"Yakutat"},{value:"America/Yellowknife",name:"Yellowknife"}]},{group:"Europe",zones:[{value:"Europe/Amsterdam",name:"Amsterdam"},{value:"Europe/Andorra",name:"Andorra"},{value:"Europe/Athens",name:"Athens"},{value:"Europe/Belfast",name:"Belfast"},{value:"Europe/Belgrade",name:"Belgrade"},{value:"Europe/Berlin",name:"Berlin"},{value:"Europe/Bratislava",name:"Bratislava"},{value:"Europe/Brussels",name:"Brussels"},{value:"Europe/Bucharest",name:"Bucharest"},{value:"Europe/Budapest",name:"Budapest"},{value:"Europe/Chisinau",name:"Chisinau"},{value:"Europe/Copenhagen",name:"Copenhagen"},{value:"Europe/Dublin",name:"Dublin"},{value:"Europe/Gibraltar",name:"Gibraltar"},{value:"Europe/Guernsey",name:"Guernsey"},{value:"Europe/Helsinki",name:"Helsinki"},{value:"Europe/Isle_of_Man",name:"Isle of Man"},{value:"Europe/Istanbul",name:"Istanbul"},{value:"Europe/Jersey",name:"Jersey"},{value:"Europe/Kaliningrad",name:"Kaliningrad"},{value:"Europe/Kiev",name:"Kiev"},{value:"Europe/Lisbon",name:"Lisbon"},{value:"Europe/Ljubljana",name:"Ljubljana"},{value:"Europe/London",name:"London"},{value:"Europe/Luxembourg",name:"Luxembourg"},{value:"Europe/Madrid",name:"Madrid"},{value:"Europe/Malta",name:"Malta"},{value:"Europe/Mariehamn",name:"Mariehamn"},{value:"Europe/Minsk",name:"Minsk"},{value:"Europe/Monaco",name:"Monaco"},{value:"Europe/Moscow",name:"Moscow"},{value:"Europe/Nicosia",name:"Nicosia"},{value:"Europe/Oslo",name:"Oslo"},{value:"Europe/Paris",name:"Paris"},{value:"Europe/Podgorica",name:"Podgorica"},{value:"Europe/Prague",name:"Prague"},{value:"Europe/Riga",name:"Riga"},{value:"Europe/Rome",name:"Rome"},{value:"Europe/Samara",name:"Samara"},{value:"Europe/San_Marino",name:"San Marino"},{value:"Europe/Sarajevo",name:"Sarajevo"},{value:"Europe/Simferopol",name:"Simferopol"},{value:"Europe/Skopje",name:"Skopje"},{value:"Europe/Sofia",name:"Sofia"},{value:"Europe/Stockholm",name:"Stockholm"},{value:"Europe/Tallinn",name:"Tallinn"},{value:"Europe/Tirane",name:"Tirane"},{value:"Europe/Tiraspol",name:"Tiraspol"},{value:"Europe/Uzhgorod",name:"Uzhgorod"},{value:"Europe/Vaduz",name:"Vaduz"},{value:"Europe/Vatican",name:"Vatican"},{value:"Europe/Vienna",name:"Vienna"},{value:"Europe/Vilnius",name:"Vilnius"},{value:"Europe/Volgograd",name:"Volgograd"},{value:"Europe/Warsaw",name:"Warsaw"},{value:"Europe/Zagreb",name:"Zagreb"},{value:"Europe/Zaporozhye",name:"Zaporozhye"},{value:"Europe/Zurich",name:"Zurich"}]},{group:"Asia",zones:[{value:"Asia/Aden",name:"Aden"},{value:"Asia/Almaty",name:"Almaty"},{value:"Asia/Amman",name:"Amman"},{value:"Asia/Anadyr",name:"Anadyr"},{value:"Asia/Aqtau",name:"Aqtau"},{value:"Asia/Aqtobe",name:"Aqtobe"},{value:"Asia/Ashgabat",name:"Ashgabat"},{value:"Asia/Ashkhabad",name:"Ashkhabad"},{value:"Asia/Baghdad",name:"Baghdad"},{value:"Asia/Bahrain",name:"Bahrain"},{value:"Asia/Baku",name:"Baku"},{value:"Asia/Bangkok",name:"Bangkok"},{value:"Asia/Beirut",name:"Beirut"},{value:"Asia/Bishkek",name:"Bishkek"},{value:"Asia/Brunei",name:"Brunei"},{value:"Asia/Calcutta",name:"Calcutta"},{value:"Asia/Choibalsan",name:"Choibalsan"},{value:"Asia/Chongqing",name:"Chongqing"},{value:"Asia/Chungking",name:"Chungking"},{value:"Asia/Colombo",name:"Colombo"},{value:"Asia/Dacca",name:"Dacca"},{value:"Asia/Damascus",name:"Damascus"},{value:"Asia/Dhaka",name:"Dhaka"},{value:"Asia/Dili",name:"Dili"},{value:"Asia/Dubai",name:"Dubai"},{value:"Asia/Dushanbe",name:"Dushanbe"},{value:"Asia/Gaza",name:"Gaza"},{value:"Asia/Harbin",name:"Harbin"},{value:"Asia/Ho_Chi_Minh",name:"Ho Chi Minh"},{value:"Asia/Hong_Kong",name:"Hong Kong"},{value:"Asia/Hovd",name:"Hovd"},{value:"Asia/Irkutsk",name:"Irkutsk"},{value:"Asia/Istanbul",name:"Istanbul"},{value:"Asia/Jakarta",name:"Jakarta"},{value:"Asia/Jayapura",name:"Jayapura"},{value:"Asia/Jerusalem",name:"Jerusalem"},{value:"Asia/Kabul",name:"Kabul"},{value:"Asia/Kamchatka",name:"Kamchatka"},{value:"Asia/Karachi",name:"Karachi"},{value:"Asia/Kashgar",name:"Kashgar"},{value:"Asia/Kathmandu",name:"Kathmandu"},{value:"Asia/Katmandu",name:"Katmandu"},{value:"Asia/Kolkata",name:"Kolkata"},{value:"Asia/Krasnoyarsk",name:"Krasnoyarsk"},{value:"Asia/Kuala_Lumpur",name:"Kuala Lumpur"},{value:"Asia/Kuching",name:"Kuching"},{value:"Asia/Kuwait",name:"Kuwait"},{value:"Asia/Macao",name:"Macao"},{value:"Asia/Macau",name:"Macau"},{value:"Asia/Magadan",name:"Magadan"},{value:"Asia/Makassar",name:"Makassar"},{value:"Asia/Manila",name:"Manila"},{value:"Asia/Muscat",name:"Muscat"},{value:"Asia/Nicosia",name:"Nicosia"},{value:"Asia/Novokuznetsk",name:"Novokuznetsk"},{value:"Asia/Novosibirsk",name:"Novosibirsk"},{value:"Asia/Omsk",name:"Omsk"},{value:"Asia/Oral",name:"Oral"},{value:"Asia/Phnom_Penh",name:"Phnom Penh"},{value:"Asia/Pontianak",name:"Pontianak"},{value:"Asia/Pyongyang",name:"Pyongyang"},{value:"Asia/Qatar",name:"Qatar"},{value:"Asia/Qyzylorda",name:"Qyzylorda"},{value:"Asia/Rangoon",name:"Rangoon"},{value:"Asia/Riyadh",name:"Riyadh"},{value:"Asia/Saigon",name:"Saigon"},{value:"Asia/Sakhalin",name:"Sakhalin"},{value:"Asia/Samarkand",name:"Samarkand"},{value:"Asia/Seoul",name:"Seoul"},{value:"Asia/Shanghai",name:"Shanghai"},{value:"Asia/Singapore",name:"Singapore"},{value:"Asia/Taipei",name:"Taipei"},{value:"Asia/Tashkent",name:"Tashkent"},{value:"Asia/Tbilisi",name:"Tbilisi"},{value:"Asia/Tehran",name:"Tehran"},{value:"Asia/Tel_Aviv",name:"Tel Aviv"},{value:"Asia/Thimbu",name:"Thimbu"},{value:"Asia/Thimphu",name:"Thimphu"},{value:"Asia/Tokyo",name:"Tokyo"},{value:"Asia/Ujung_Pandang",name:"Ujung Pandang"},{value:"Asia/Ulaanbaatar",name:"Ulaanbaatar"},{value:"Asia/Ulan_Bator",name:"Ulan Bator"},{value:"Asia/Urumqi",name:"Urumqi"},{value:"Asia/Vientiane",name:"Vientiane"},{value:"Asia/Vladivostok",name:"Vladivostok"},{value:"Asia/Yakutsk",name:"Yakutsk"},{value:"Asia/Yekaterinburg",name:"Yekaterinburg"},{value:"Asia/Yerevan",name:"Yerevan"}]},{group:"Africa",zones:[{value:"Africa/Abidjan",name:"Abidjan"},{value:"Africa/Accra",name:"Accra"},{value:"Africa/Addis_Ababa",name:"Addis Ababa"},{value:"Africa/Algiers",name:"Algiers"},{value:"Africa/Asmara",name:"Asmara"},{value:"Africa/Asmera",name:"Asmera"},{value:"Africa/Bamako",name:"Bamako"},{value:"Africa/Bangui",name:"Bangui"},{value:"Africa/Banjul",name:"Banjul"},{value:"Africa/Bissau",name:"Bissau"},{value:"Africa/Blantyre",name:"Blantyre"},{value:"Africa/Brazzaville",name:"Brazzaville"},{value:"Africa/Bujumbura",name:"Bujumbura"},{value:"Africa/Cairo",name:"Cairo"},{value:"Africa/Casablanca",name:"Casablanca"},{value:"Africa/Ceuta",name:"Ceuta"},{value:"Africa/Conakry",name:"Conakry"},{value:"Africa/Dakar",name:"Dakar"},{value:"Africa/Dar_es_Salaam",name:"Dar es Salaam"},{value:"Africa/Djibouti",name:"Djibouti"},{value:"Africa/Douala",name:"Douala"},{value:"Africa/El_Aaiun",name:"El Aaiun"},{value:"Africa/Freetown",name:"Freetown"},{value:"Africa/Gaborone",name:"Gaborone"},{value:"Africa/Harare",name:"Harare"},{value:"Africa/Johannesburg",name:"Johannesburg"},{value:"Africa/Kampala",name:"Kampala"},{value:"Africa/Khartoum",name:"Khartoum"},{value:"Africa/Kigali",name:"Kigali"},{value:"Africa/Kinshasa",name:"Kinshasa"},{value:"Africa/Lagos",name:"Lagos"},{value:"Africa/Libreville",name:"Libreville"},{value:"Africa/Lome",name:"Lome"},{value:"Africa/Luanda",name:"Luanda"},{value:"Africa/Lubumbashi",name:"Lubumbashi"},{value:"Africa/Lusaka",name:"Lusaka"},{value:"Africa/Malabo",name:"Malabo"},{value:"Africa/Maputo",name:"Maputo"},{value:"Africa/Maseru",name:"Maseru"},{value:"Africa/Mbabane",name:"Mbabane"},{value:"Africa/Mogadishu",name:"Mogadishu"},{value:"Africa/Monrovia",name:"Monrovia"},{value:"Africa/Nairobi",name:"Nairobi"},{value:"Africa/Ndjamena",name:"Ndjamena"},{value:"Africa/Niamey",name:"Niamey"},{value:"Africa/Nouakchott",name:"Nouakchott"},{value:"Africa/Ouagadougou",name:"Ouagadougou"},{value:"Africa/Porto-Novo",name:"Porto-Novo"},{value:"Africa/Sao_Tome",name:"Sao Tome"},{value:"Africa/Timbuktu",name:"Timbuktu"},{value:"Africa/Tripoli",name:"Tripoli"},{value:"Africa/Tunis",name:"Tunis"},{value:"Africa/Windhoek",name:"Windhoek"}]},{group:"Australia",zones:[{value:"Australia/ACT",name:"ACT"},{value:"Australia/Adelaide",name:"Adelaide"},{value:"Australia/Brisbane",name:"Brisbane"},{value:"Australia/Broken_Hill",name:"Broken Hill"},{value:"Australia/Canberra",name:"Canberra"},{value:"Australia/Currie",name:"Currie"},{value:"Australia/Darwin",name:"Darwin"},{value:"Australia/Eucla",name:"Eucla"},{value:"Australia/Hobart",name:"Hobart"},{value:"Australia/LHI",name:"LHI"},{value:"Australia/Lindeman",name:"Lindeman"},{value:"Australia/Lord_Howe",name:"Lord Howe"},{value:"Australia/Melbourne",name:"Melbourne"},{value:"Australia/North",name:"North"},{value:"Australia/NSW",name:"NSW"},{value:"Australia/Perth",name:"Perth"},{value:"Australia/Queensland",name:"Queensland"},{value:"Australia/South",name:"South"},{value:"Australia/Sydney",name:"Sydney"},{value:"Australia/Tasmania",name:"Tasmania"},{value:"Australia/Victoria",name:"Victoria"},{value:"Australia/West",name:"West"},{value:"Australia/Yancowinna",name:"Yancowinna"}]},{group:"Indian",zones:[{value:"Indian/Antananarivo",name:"Antananarivo"},{value:"Indian/Chagos",name:"Chagos"},{value:"Indian/Christmas",name:"Christmas"},{value:"Indian/Cocos",name:"Cocos"},{value:"Indian/Comoro",name:"Comoro"},{value:"Indian/Kerguelen",name:"Kerguelen"},{value:"Indian/Mahe",name:"Mahe"},{value:"Indian/Maldives",name:"Maldives"},{value:"Indian/Mauritius",name:"Mauritius"},{value:"Indian/Mayotte",name:"Mayotte"},{value:"Indian/Reunion",name:"Reunion"}]},{group:"Atlantic",zones:[{value:"Atlantic/Azores",name:"Azores"},{value:"Atlantic/Bermuda",name:"Bermuda"},{value:"Atlantic/Canary",name:"Canary"},{value:"Atlantic/Cape_Verde",name:"Cape Verde"},{value:"Atlantic/Faeroe",name:"Faeroe"},{value:"Atlantic/Faroe",name:"Faroe"},{value:"Atlantic/Jan_Mayen",name:"Jan Mayen"},{value:"Atlantic/Madeira",name:"Madeira"},{value:"Atlantic/Reykjavik",name:"Reykjavik"},{value:"Atlantic/South_Georgia",name:"South Georgia"},{value:"Atlantic/Stanley",name:"Stanley"},{value:"Atlantic/St_Helena",name:"St Helena"}]},{group:"Pacific",zones:[{value:"Pacific/Apia",name:"Apia"},{value:"Pacific/Auckland",name:"Auckland"},{value:"Pacific/Chatham",name:"Chatham"},{value:"Pacific/Easter",name:"Easter"},{value:"Pacific/Efate",name:"Efate"},{value:"Pacific/Enderbury",name:"Enderbury"},{value:"Pacific/Fakaofo",name:"Fakaofo"},{value:"Pacific/Fiji",name:"Fiji"},{value:"Pacific/Funafuti",name:"Funafuti"},{value:"Pacific/Galapagos",name:"Galapagos"},{value:"Pacific/Gambier",name:"Gambier"},{value:"Pacific/Guadalcanal",name:"Guadalcanal"},{value:"Pacific/Guam",name:"Guam"},{value:"Pacific/Honolulu",name:"Honolulu"},{value:"Pacific/Johnston",name:"Johnston"},{value:"Pacific/Kiritimati",name:"Kiritimati"},{value:"Pacific/Kosrae",name:"Kosrae"},{value:"Pacific/Kwajalein",name:"Kwajalein"},{value:"Pacific/Majuro",name:"Majuro"},{value:"Pacific/Marquesas",name:"Marquesas"},{value:"Pacific/Midway",name:"Midway"},{value:"Pacific/Nauru",name:"Nauru"},{value:"Pacific/Niue",name:"Niue"},{value:"Pacific/Norfolk",name:"Norfolk"},{value:"Pacific/Noumea",name:"Noumea"},{value:"Pacific/Pago_Pago",name:"Pago Pago"},{value:"Pacific/Palau",name:"Palau"},{value:"Pacific/Pitcairn",name:"Pitcairn"},{value:"Pacific/Ponape",name:"Ponape"},{value:"Pacific/Port_Moresby",name:"Port Moresby"},{value:"Pacific/Rarotonga",name:"Rarotonga"},{value:"Pacific/Saipan",name:"Saipan"},{value:"Pacific/Samoa",name:"Samoa"},{value:"Pacific/Tahiti",name:"Tahiti"},{value:"Pacific/Tarawa",name:"Tarawa"},{value:"Pacific/Tongatapu",name:"Tongatapu"},{value:"Pacific/Truk",name:"Truk"},{value:"Pacific/Wake",name:"Wake"},{value:"Pacific/Wallis",name:"Wallis"},{value:"Pacific/Yap",name:"Yap"}]},{group:"Antarctica",zones:[{value:"Antarctica/Casey",name:"Casey"},{value:"Antarctica/Davis",name:"Davis"},{value:"Antarctica/DumontDUrville",name:"DumontDUrville"},{value:"Antarctica/Macquarie",name:"Macquarie"},{value:"Antarctica/Mawson",name:"Mawson"},{value:"Antarctica/McMurdo",name:"McMurdo"},{value:"Antarctica/Palmer",name:"Palmer"},{value:"Antarctica/Rothera",name:"Rothera"},{value:"Antarctica/South_Pole",name:"South Pole"},{value:"Antarctica/Syowa",name:"Syowa"},{value:"Antarctica/Vostok",name:"Vostok"}]},{group:"Arctic",zones:[{value:"Arctic/Longyearbyen",name:"Longyearbyen"}]},{group:"UTC",zones:[{value:"UTC",name:"UTC"}]},{group:"Manual Offsets",zones:[{value:"UTC-12",name:"UTC-12"},{value:"UTC-11",name:"UTC-11"},{value:"UTC-10",name:"UTC-10"},{value:"UTC-9",name:"UTC-9"},{value:"UTC-8",name:"UTC-8"},{value:"UTC-7",name:"UTC-7"},{value:"UTC-6",name:"UTC-6"},{value:"UTC-5",name:"UTC-5"},{value:"UTC-4",name:"UTC-4"},{value:"UTC-3",name:"UTC-3"},{value:"UTC-2",name:"UTC-2"},{value:"UTC-1",name:"UTC-1"},{value:"UTC+0",name:"UTC+0"},{value:"UTC+1",name:"UTC+1"},{value:"UTC+2",name:"UTC+2"},{value:"UTC+3",name:"UTC+3"},{value:"UTC+4",name:"UTC+4"},{value:"UTC+5",name:"UTC+5"},{value:"UTC+6",name:"UTC+6"},{value:"UTC+7",name:"UTC+7"},{value:"UTC+8",name:"UTC+8"},{value:"UTC+9",name:"UTC+9"},{value:"UTC+10",name:"UTC+10"},{value:"UTC+11",name:"UTC+11"},{value:"UTC+12",name:"UTC+12"},{value:"UTC+13",name:"UTC+13"},{value:"UTC+14",name:"UTC+14"}]}]}}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer",{url:"/motiondialer",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:16}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerProcess","uiGridConstants","usSpinnerService",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"name"},{name:"queue",enableSorting:!1},{name:"extension",enableSorting:!1},{name:"id_list",enableSorting:!1,cellTemplate:'<div><a class="btn btn-xs grey-cascade" href="/motiondialer/lists/view/{{row.entity.id_list}}/settings">{{row.entity.id_list}}</a></div>',cellClass:"ui-grid-vcenter"},{name:"status",cellTemplate:"<div><a class=\"btn btn-xs\" data-ng-class=\"row.entity.status == 'STOP' ? 'red-sunglo' : 'green-meadow'\" data-ng-href=\"#\">{{ (row.entity.status === 'RUN') ? 'RUNNING' : 'STOPPED'}}</a></div>",cellClass:"ui-grid-vcenter",filter:{type:g.filter.SELECT,selectOptions:[{value:"RUN",label:"RUNNING"},{value:"STOP",label:"STOPPED"}]}},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" href="/motiondialer/processes/view/{{row.entity.id}}/overview">{{\'APPLICATION_SETTINGS\' | translate}}</a> <a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){console.log(b),b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){h.stop("spinner-grid")})},a.createProcessQueue=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/process/list/list.create.queue.modal.html",controller:"MotionDialerProcessListCreateQueueCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.createProcessSquare=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/process/list/list.create.square.modal.html",controller:"MotionDialerProcessListCreateSquareCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCreateQueueCtrl",["$scope","$translate","$uibModalInstance","MotionDialerProcess","MotionDialerList","Trunk","VoiceQueue","Route","xAlert",function(a,b,c,d,e,f,g,h,i){a.form={},a.item={fetch_sort:"ASC",timeout:3},a.initModal=function(){return g.get().$promise.then(function(b){return a.queues={},b&&(a.queues=b.rows),f.get().$promise}).then(function(b){return a.trunks={},b&&(a.trunks=b.rows),a.trunks.push({name:"fake"}),e.list({page:1,size:6e5}).$promise}).then(function(b){a.lists={},b.status>0?a.lists=b.response.RMI.rows:i.show("Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.save=function(){console.log(a.item);var e="process_"+a.item.name+"_queue_"+a.item.queue.name+"_"+Math.round(1e5*Math.random()),f="Generated by Motion Dialer, Process Queue"+(a.item.description?", "+a.item.description:"");return h.save({appdata:"Internal Call",context:"from-sip",exten:e.replace(/\s/g,"_"),type:"internal",description:f,Applications:[{appdata:["QUEUE_PRIO=99"],app:"Set",interval:"*,*,*,*",type:"internal"},{appdata:[a.item.queue.name,"","","",a.item.timeout],app:"Queue",interval:"*,*,*,*",type:"internal"}]}).$promise.then(function(b){return console.log(b),d.insert({name:a.item.name,id_list:a.item.list.id,queue:a.item.queue.name,device:a.item.device.name,context:"from-sip",extension:e.replace(/\s/g,"_"),description:a.item.description,auto_closed:!0,fetch_sort:a.item.fetch_sort}).$promise}).then(function(a){a.status>0?(i.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):i.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCreateSquareCtrl",["$scope","$translate","$uibModalInstance","MotionDialerProcess","MotionDialerList","SquareProject","Trunk","Route","xAlert",function(a,b,c,d,e,f,g,h,i){a.form={},a.item={fetch_sort:"ASC"},a.initModal=function(){return f.get().$promise.then(function(b){return a.projects={},b&&(a.projects=b.rows),g.get().$promise}).then(function(b){return a.trunks={},b&&(a.trunks=b.rows),a.trunks.push({name:"fake"}),e.list({page:1,size:6e5}).$promise}).then(function(b){a.lists={},b.status>0?a.lists=b.response.RMI.rows:i.show("Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.save=function(){console.log(a.item);var e="process_"+a.item.name+"_square_"+a.item.project.name+"_"+Math.round(1e5*Math.random()),f="Generated by Motion Dialer, Process Square"+(a.item.description?", "+a.item.description:"");return h.save({appdata:"Internal Call",context:"from-sip",exten:e.replace(/\s/g,"_"),type:"internal",description:f,Applications:[{appdata:["agi://127.0.0.1/square",a.item.project.name],app:"AGI",interval:"*,*,*,*",type:"internal"}]}).$promise.then(function(b){return console.log(b),d.insert({name:a.item.name,id_list:a.item.list.id,queue:"none",device:a.item.device.name,context:"from-sip",extension:e.replace(/\s/g,"_"),description:a.item.description,auto_closed:!0,channel_limit:15,fetch_sort:a.item.fetch_sort}).$promise}).then(function(a){a.status>0?(i.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):i.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes.list",{url:"/list",templateUrl:"app/motiondialer/process/list/list.html",controller:"MotionDialerProcessListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerProcess",["$resource",function(a){return a("/api/rest/process/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").factory("MotionDialerSpooler",["$resource",function(a){return a("/api/rest/spooler/:controller/:retrieve",null,{list:{method:"POST",params:{controller:"list"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},summary:{method:"POST",params:{controller:"summary"}},close:{method:"POST",params:{controller:"retrieve",retrieve:"close"}},open:{method:"POST",params:{controller:"retrieve",retrieve:"open"}},blacklist:{method:"POST",params:{controller:"retrieve",retrieve:"blacklist"}},planning:{method:"POST",params:{controller:"retrieve",retrieve:"planning"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes",{url:"/processes",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessViewCtrl",["$scope","$translate","$stateParams","$uibModal","xAlert","uiGridConstants","usSpinnerService","MotionDialerProcess","MotionDialerSpooler","Modal","VoiceQueue",function(a,b,c,d,e,f,g,h,i,j,k){a.process={},a.techs=["SIP","IAX","LOCAL","KHOMP"],a.dialFormats=["tech/device/number","tech/number@device"],a.checkDuplicates=["ALWAYS","IFOPEN","NO"],a.codecs=["g729","ilbc","gsm","ulaw","alaw"],a.getProcess=function(){return h.find({id:parseInt(c.id)}).$promise.then(function(b){console.log(b),b.status>0?(b.response.RMI.codecs=b.response.RMI.codecs.split(","),a.process=b.response.RMI):e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.getSummary=function(){return i.summary({id_process:parseInt(c.id)}).$promise.then(function(b){if(b.status>0){a.summary=b.response.RMI.totals,a.total=0;for(var c=0;c<a.summary.length;c++)a.total+=a.summary[c][1]}else e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.updateProcess=function(){var c=_.clone(a.process);return delete c.updatedtime,delete c.id_list,delete c.createdtime,delete c.runtime,delete c.fetch_sort,c.codecs=c.codecs.join(","),""===c.timezone&&delete c.timezone,h.update(c).$promise.then(function(c){c.status>0?(c.response.RMI.codecs=c.response.RMI.codecs.split(","),a.process=c.response.RMI,e.show(b.instant("MESSAGE_WELL_DONE"),"success")):c.response.RMI.errors.forEach(function(a){a?e.show(a.field+": "+a.error,"danger"):e.show("Please, check your connection!","danger")})})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.getSpooler=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,headerCellFilter:"translate",columnDefs:[{name:"name"},{name:"phones"},{name:"retrieve",filter:{type:f.filter.SELECT,selectOptions:[{value:"PLANNED_PEER",label:"PLANNED PEER"},{value:"PLANNED",label:"PLANNED"},{value:"BLACK_LIST",label:"BLACKLIST"},{value:"OPEN",label:"OPEN"},{value:"CLOSED",label:"CLOSED"},{value:"MAX_ATTEMPTS",label:"MAX ATTEMPTS"},{value:"COUNTER_BLOCK",label:"COUNTER BLOCK"},{value:"PLANNED_REQUEST",label:"PLANNED REQUEST"},{value:"DELETE",label:"DELETE"}]}},{name:"counter",enableFiltering:!1},{name:"updatedtime",enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.historySpooler(row.entity.history)">{{\'APPLICATION_HISTORY\' | translate}}</a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteSpooler(row.entity.phones.join(), row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},i.list({id_process:parseInt(c.id),page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.deleteSpooler=j.confirm["delete"](function(c){return i["delete"]({id:c}).$promise.then(function(d){d.status>0?(_.remove(a.gridOptions.data,{id:c}),e.show(b.instant("MESSAGE_WELL_DONE"),"success")):e.show(d.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.historySpooler=function(b){var c=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.spooler.history.modal.html",controller:"MotionDialerViewSpoolerHistoryCtrl",resolve:{historySpooler:function(){return b}}});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.initSettings=function(){return a.queues=null,k.get().$promise.then(function(b){b&&(a.queues=b.rows,a.process.queue&&"none"!==a.process.queue&&(a.queue=_.find(b.rows,{name:a.process.queue})))})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.createInterval=function(b){var c=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.create.interval.modal.html",controller:"MotionDialerViewCreateIntervalCtrl",resolve:{objectProcess:function(){return a.process},intervalType:function(){return b},intervalValue:function(){return b?"8:00-20:00|MON-FRI|*|*":"00:01-07:59|SAT-SUN|*|*"}}});c.result.then(function(b){a.process=b})},a.editInterval=function(b,c){var e=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.create.interval.modal.html",controller:"MotionDialerViewCreateIntervalCtrl",resolve:{objectProcess:function(){return a.process},intervalType:function(){return b},intervalValue:function(){return c}}});e.result.then(function(b){a.process=b})},a.deleteInterval=j.confirm["delete"](function(c,d){var f={id:a.process.id};return d?(f.intervals=[],f.intervals=f.intervals.concat(a.process.intervals),f.intervals.splice(c,1)):(f.not_intervals=[],f.not_intervals=f.not_intervals.concat(a.process.not_intervals),f.not_intervals.splice(c,1)),h.update(f).$promise.then(function(c){c.status>0?(c.response.RMI.codecs=c.response.RMI.codecs.split(","),a.process=c.response.RMI,e.show(b.instant("MESSAGE_WELL_DONE"),"success")):c.response.RMI.errors.forEach(function(a){a?e.show(a.field+": "+a.error,"danger"):e.show("Please, check your connection!","danger")})})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.runOrStop=function(){var b=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.run.process.modal.html",controller:"MotionDialerViewRunProcessCtrl",resolve:{statusProcess:function(){return a.process.status}}});b.result.then(function(b){a.process.status=b.status})}}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewCreateIntervalCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerProcess","xAlert","objectProcess","intervalType","intervalValue","interval",function(a,b,c,d,e,f,g,h,i,j){function k(a){var b,c=a.split("|"),d={};return c.forEach(function(a,c){switch(c){case 0:"*"!==a?(b=a.split("-"),d.t_from=moment(b[0],"HH:mm"),d.t_to=moment(b[1],"HH:mm"),d.alwaysTime=!1):(d.t_from=moment(new Date),d.t_to=moment(new Date),d.alwaysTime=!0);break;case 1:"*"!==a?(b=a.split("-"),d.wd_from=b[0].toLowerCase(),d.wd_to=b[1]?b[1].toLowerCase():"always"):(d.wd_from="always",d.wd_to="always");break;case 2:"*"!==a?(b=a.split("-"),d.md_from=b[0],d.md_to=b[1]?b[1]:"always"):(d.md_from="always",d.md_to="always");break;case 3:"*"!==a?(b=a.split("-"),d.m_from=b[0],d.m_to=b[1]?b[1]:"always"):(d.m_from="always",d.m_to="always")}}),d}function l(a){var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toUpperCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toUpperCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from,a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to)):e="*",b+"|"+c+"|"+d+"|"+e}a.form={},a.$interval=j.interval,a.splittedInterval=k(i),a.save=function(){var d=l(a.splittedInterval);console.log(d);var i={id:g.id};return h?(i.intervals=[],i.intervals=i.intervals.concat(g.intervals),i.intervals.push(d)):(i.not_intervals=[],i.not_intervals=i.not_intervals.concat(g.not_intervals),i.not_intervals.push(d)),console.log(i),e.update(i).$promise.then(function(a){a.status>0?(a.response.RMI.codecs=a.response.RMI.codecs.split(","),f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a.response.RMI)):a.response.RMI.errors.forEach(function(a){a?f.show(a.field+": "+a.error,"danger"):f.show("Please, check your connection!","danger")})})["catch"](function(a){f.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes.view",{url:"/view/:id",templateUrl:"app/motiondialer/process/view/view.html",controller:"MotionDialerProcessViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.processes.view.overview",{url:"/overview",templateUrl:"app/motiondialer/process/view/view.overview.html"}).state("main.motiondialer.processes.view.settings",{url:"/settings",templateUrl:"app/motiondialer/process/view/view.settings.html" +}).state("main.motiondialer.processes.view.intervals",{url:"/intervals",templateUrl:"app/motiondialer/process/view/view.intervals.html"}).state("main.motiondialer.processes.view.spooler",{url:"/spooler",templateUrl:"app/motiondialer/process/view/view.spooler.html"})}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewRunProcessCtrl",["$scope","$stateParams","$uibModalInstance","$translate","statusProcess","MotionDialerProcess","xAlert",function(a,b,c,d,e,f,g){a.status="RUN"===e?"STOP":"RUN",a.yes=function(){f.update({id:parseInt(b.id),status:a.status}).$promise.then(function(a){a.status>0?(g.show(d.instant("MESSAGE_WELL_DONE"),"success"),c.close(a.response.RMI)):g.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){g.show(a.message?a.message:a.data.message,"danger")})},a.no=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewSpoolerHistoryCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerSpooler","xAlert","historySpooler",function(a,b,c,d,e,f,g){a.historySpooler=g,a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("SalesforceListCtrl",["$scope","SalesforceAccount","gridOptions","xAlert","$translate",function(a,b,c,d,e){a.initView=function(){var d={exporterCsvFilename:"salesforce_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_URI"},{name:"action",buttons:[{"class":"blue-hoki",href:"/salesforce/view/{{row.entity.id}}/account",name:"account"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.check({id:a}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.list",{url:"/list",templateUrl:"app/salesforce/list/list.html",controller:"SalesforceListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("SalesforceAccount",["$resource",function(a){return a("/api/salesforce/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"},fields:{params:{controller:"fields"},isArray:!0},check:{params:{controller:"check"}}})}]).factory("SalesforceConfiguration",["$resource",function(a){return a("/api/salesforce/accounts/:accountId/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]).factory("SalesforceField",["$resource",function(a){return a("/api/salesforce/accounts/:accountId/configurations/:configurationId/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce",{url:"/salesforce",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations",{url:"/configurations",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewConfigurationListCtrl",["$scope","$stateParams","$translate","gridOptions","SalesforceConfiguration","$uibModal",function(a,b,c,d,e,f){a.initView=function(){var c={exporterCsvFilename:"salesforce_configurations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/salesforce/view/{{row.entity.AccountId}}/configurations/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(e,c,a,{accountId:b.id})},a.createItem=function(){var b=f.open({animation:!0,templateUrl:"app/salesforce/view/configuration/list/create.modal.html",controller:"SalesforceCreateConfigurationCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SalesforceCreateConfigurationCtrl",["$scope","$translate","$uibModalInstance","SalesforceConfiguration","xAlert","$stateParams","channel",function(a,b,c,d,e,f,g){a.form={},a.item={},a.channels=g,a.item.channel="voice",a.save=function(){return d.save({accountId:f.id},a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations.list",{url:"/list",templateUrl:"app/salesforce/view/configuration/list/list.html",controller:"SalesforceViewConfigurationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewConfigurationViewCtrl",["$scope","$filter","$stateParams","$translate","socket","variable","xAlert","SalesforceAccount","SalesforceConfiguration","SalesforceField","Variable",function(a,b,c,d,e,f,g,h,i,j,k){a.$on("$destroy",function(){e.unsyncUpdates("salesforce_field")}),a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:300,scrollInertia:0},a.fieldType=[{type:"string",title:"String"},{type:"variable",title:"Variable"},{type:"customVariable",title:"Custom Variable"}],a.descFieldType=[{type:"string",title:"String"},{type:"keyValue",title:"Key Value"}],a.groupVariableByGroup=function(a){switch(a.group){case"voice_queue":return"Voice: Queue";default:return"Other"}},a.initView=function(){a.configurationName="",a.subjectConfig=[],a.descriptionConfig=[],a.fieldConfig=[],a.variables=f},a.getConfiguration=function(){return i.get({accountId:c.id,id:c.configurationId}).$promise.then(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,e.socket.on("salesforce_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})})["catch"](function(a){g.error(a)})},a.getCustomVariables=function(){return k.get().$promise.then(function(b){a.customVariables=b.rows})["catch"](function(a){g.error(a)})},a.getFields=function(){return h.fields({id:c.id}).$promise.then(function(c){a.accountFields=_.sortByOrder(b("salesforce")(c),"name","asc"),console.log(a.accountFields)})["catch"](function(a){g.error(a)})},a.addItem=function(b){var d={};switch(b){case"subject":case"description":d={type:"string",content:""};break;case"field":d={content:""}}return i.save({accountId:c.id,id:c.configurationId,controller:b},d).$promise.then(function(c){switch(b){case"subject":a.subjectConfig.push(c);break;case"description":a.descriptionConfig.push(c);break;case"field":a.fieldConfig.push(c)}})["catch"](function(a){g.error(a)})},a.changeType=function(b){"variable"===b.type?(b.content="",b.variableName=""):"string"===b.type?(b.VariableId=null,b.variableName=""):"customVariable"===b.type&&(b.VariableId=null,b.content=""),a.updateField(b)},a.updateField=function(a){return j.update({accountId:c.id,configurationId:c.configurationId,id:a.id},a).$promise.then(function(){})["catch"](function(a){g.error(a)})},a.removeItem=function(a){return j["delete"]({accountId:c.id,configurationId:c.configurationId,id:a.id}).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.error(a)})},a.changeDescType=function(b){"keyValue"===b.type?(b.content="","string"===b.keyType?(b.VariableId=null,b.variableName=""):"variable"===b.keyType?(b.keyContent="",b.VariableId=null):"customVariable"===b.keyType&&(b.keyContent="",b.variableName="")):"string"===b.type&&(b.VariableId=null,b.variableName="",b.key="",b.keyContent=""),a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);if(c)switch(c.type){case"picklist":return c.picklistValues;default:return}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations.view",{url:"/view/:configurationId",templateUrl:"app/salesforce/view/configuration/view/view.html",controller:"SalesforceViewConfigurationViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","$filter","SalesforceAccount",function(a,b,c,d,e,f,g,h,i,j,k){a.initView=function(){return k.get({id:c.id}).$promise.then(function(b){a.account=b})["catch"](function(a){h.error(a)})},a.updateItem=function(){return k.update({id:c.id},a.account).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){h.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view",{url:"/view/:id",templateUrl:"app/salesforce/view/view.html",controller:"SalesforceViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.salesforce.view.account",{url:"/account",templateUrl:"app/salesforce/view/view.account.html"})}]),angular.module("xCallyShuttleApp").controller("SalesforceWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/salesforce/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/salesforce/list")}).error(function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.wizard",{url:"/wizard",templateUrl:"app/salesforce/wizard/wizard.html",controller:"SalesforceWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("License",["$resource",function(a){return a("/api/licenses/:id/:controller",{id:"@id"},{request:{method:"POST",params:{id:"request"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.license",{url:"/license",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("LicenseUpdateCtrl",["$scope","$translate","$uibModalInstance","xAlert","Setting",function(a,b,c,d,e){a.form={},a.item={},a.getLicense=function(){return e.get({id:1}).$promise.then(function(b){a.item.license=b.license})["catch"](function(a){d.show(a.data.message,"danger")})},a.update=function(){return e.update({id:1},a.item).$promise.then(function(a){d.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("LicenseViewCtrl",["$scope","$rootScope","$translate","License","xAlert","$window","$uibModal",function(a,b,c,d,e,f,g){a.initView=function(){return d.get(function(b){a.item=b.license})},a.submitRequest=function(){return d.request(a.item,function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")},function(a){switch(a.status){case 304:e.show(a.statusText,"info");break;default:e.show(a.statusText,"danger")}})},a.updateLicense=function(){var a=g.open({animation:!0,templateUrl:"app/setting/license/view/update.modal.html",controller:"LicenseUpdateCtrl"});a.result.then(function(){f.location.reload()})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.license.view",{url:"/view",templateUrl:"app/setting/license/view/view.html",controller:"LicenseViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/pricing-tables.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Externip",["$resource",function(a){return a("/api/network/externips/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Localnet",["$resource",function(a){return a("/api/network/localnets/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network",{url:"/network",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ExternipCtrl",["$scope","$uibModal","gridOptions","Externip",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"network_externip.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,b,a)},a.createItem=function(c){var d=b.open({animation:!0,templateUrl:"app/setting/network/view/externip/externip.create.modal.html",controller:"ExternipCreateCtrl",resolve:{item:c}});d.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ExternipCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","Externip","xAlert","item",function(a,b,c,d,e,f,g){a.initModal=function(){a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_EXTERNIP"):b.instant("APPLICATION_NEW_EXTERNIP")},a.save=function(){return g?e.update({id:a.item.id},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)}):e.save({},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view.externip",{url:"/externip",templateUrl:"app/setting/network/view/externip/externip.html",controller:"ExternipCtrl"})}]),angular.module("xCallyShuttleApp").controller("LocalnetCtrl",["$scope","gridOptions","Localnet","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"network_localnet.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)},a.createItem=function(b){var c=d.open({animation:!0,templateUrl:"app/setting/network/view/localnet/localnet.create.modal.html",controller:"LocalnetCreateCtrl",resolve:{item:b}});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("LocalnetCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","Localnet","xAlert","item",function(a,b,c,d,e,f,g){a.initModal=function(){if(a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_LOCALNET"):b.instant("APPLICATION_NEW_LOCALNET"),g&&g.value){var c=a.item.value.split("/");c.length>1&&(a.item.address=c[0],a.item.mask=c[1])}},a.save=function(){var d=a.item.address+"/"+a.item.mask;return g?e.update({id:a.item.id},{value:d}).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)}):e.save({},{value:d}).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view.localnet",{url:"/localnet",templateUrl:"app/setting/network/view/localnet/localnet.html",controller:"LocalnetCtrl"})}]),angular.module("xCallyShuttleApp").controller("NetworkViewCtrl",["$scope","gridOptions","Localnet","Externip",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"network_localnet.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view",{url:"/view",templateUrl:"app/setting/network/view/view.html",controller:"NetworkViewCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting",{url:"/setting",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:18}}})}]),angular.module("xCallyShuttleApp").factory("Setting",["$resource",function(a){return a("/api/settings/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Smtp",["$resource",function(a){return a("/api/mail/servers/out/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.smtp",{url:"/smtp",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SmtpViewCtrl",["$scope","$stateParams","$translate","socket","MailServerOut","Setting","MailAccount","xAlert","usSpinnerService",function(a,b,c,d,e,f,g,h,i){a.initMailAccounts=function(){return e.query().$promise.then(function(b){a.servers=b})["catch"](function(a){h.show(a.message,"danger")})},a.initView=function(){a.smtpDisabled=!1,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.item={type:"custom",account:{ssl:!1}},e.get({id:"service"}).$promise.then(function(b){b&&(a.item.account=b,d.socket.on("mail_server_out:state",function(b){if(b.id===a.item.account.id)switch(a.item.account.state=b.state,a.item.account.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:i.stop("spinner-grid"),a.smtpDisabled=!1}}),a.item.account.MailAccountId?a.item.type="account":(a.item.type="custom",a.item.account.ssl=!1))})["catch"](function(a){h.show(a.message,"danger")})},a.updateItem=function(){return a.item.account.service=!0,a.item.account.id?f.update({id:"smtp",controller:a.item.account.id},a.item.account).$promise.then(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")}):f.save({id:"smtp"},a.item.account).$promise.then(function(b){a.item.account=b,h.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.test=function(){return i.spin("spinner-grid"),a.smtpDisabled=!0,e.update({id:a.item.account.id},{state:"CONNECTING"}).$promise["catch"](function(a){console.error(a)})["finally"](function(){i.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.smtp.view",{url:"/view",templateUrl:"app/setting/smtp/view/view.html",controller:"SmtpViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("UpdateListCtrl",["$scope","gridOptions","$uibModal","$location","Update",function(a,b,c,d,e){a.initCounter=function(){a.$on("timer-stopped",function(a,b){console.log("Timer Stopped - data = ",b),d.path("/dashboard/voice")})},a.initView=function(){var c={exporterCsvFilename:"updates.csv",enableFiltering:!1,enableSorting:!1,enablePaginationControls:!1,enableSelectAll:!1,columnDefs:[{name:"message"},{width:125,name:"version",cellClass:"text-center ui-grid-vcenter"},{width:125,name:"createdAt",displayName:"APPLICATION_UPDATED_AT",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'}]};a.gridOptions=b.gridOptions(e,c,a)},a.pull=function(){c.open({animation:!0,templateUrl:"app/setting/update/list/list.pull.html",controller:"UpdateListPullCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.updates.list",{url:"/list",templateUrl:"app/setting/update/list/list.html",controller:"UpdateListCtrl"}).state("main.setting.updates.landing",{url:"/landing",templateUrl:"app/setting/update/list/landing.html",controller:"UpdateListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/error.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("UpdateListPullCtrl",["$scope","$uibModalInstance","$translate","$location","Update",function(a,b,c,d,e){a.modal={dismissable:!0,title:"Confirm Checkout",html:"Are you sure you want to checkout?",buttons:[{classes:"btn btn-success",text:"Checkout",click:function(){return e.pull().$promise["finally"](function(){b.dismiss("close"),d.path("/setting/updates/landing")})}},{classes:"btn default",text:"Cancel",click:function(){b.dismiss("cancel")}}]}}]),angular.module("xCallyShuttleApp").factory("Update",["$resource",function(a){return a("/api/updates/:id/:controller",{id:"@id"},{pull:{method:"GET",params:{id:"pull"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.updates",{url:"/updates",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["hasUpdate"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCtrl",["$scope","$uibModal","$translate","SquareOdbc","gridOptions","xAlert",function(a,b,c,d,e,f){a.initView=function(){var b={exporterCsvFilename:"odbc.csv",columnDefs:[{name:"name"},{name:"dsn",displayName:"APPLICATION_ODBC"},{name:"description"},{name:"action",width:250,buttons:[{"class":"blue-hoki",href:"/square/odbc/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkConnection(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(d,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/square/odbc/list/list.create.modal.html",controller:"SquareOdbcListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})},a.checkConnection=function(a){return d.get({id:a,controller:"check"}).$promise.then(function(){f.show(c.instant("MESSAGE_CONNECTION_VERIFIED"),"success")})["catch"](function(){f.show(c.instant("MESSAGE_CONNECTION_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCreateCtrl",["$scope","$translate","$uibModalInstance","SquareOdbc","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.item.dsn||(a.item.dsn="DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion"),a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc.list",{url:"/list",templateUrl:"app/square/odbc/list/list.html",controller:"SquareOdbcListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc",{url:"/odbc",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareOdbc",["$resource",function(a){return a("/api/square/odbc/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcViewCtrl",["$scope","$translate","$stateParams","SquareOdbc","xAlert",function(a,b,c,d,e){a.odbc={},a.getOdbc=function(){return d.get({id:c.id}).$promise.then(function(b){a.odbc=b})["catch"](function(a){e.show(a.data.message,"danger")})},a.updateOdbc=function(){var f=angular.copy(a.odbc);return d.update({id:c.id},f).$promise.then(function(){e.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc.view",{url:"/view/:id",templateUrl:"app/square/odbc/view/view.html",controller:"SquareOdbcViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.square.odbc.view.settings",{url:"/settings",templateUrl:"app/square/odbc/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCtrl",["$scope","$uibModal","SquareProject","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"projects.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/square/projects/view/{{row.entity.id}}",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/square/project/list/list.create.modal.html",controller:"SquareProjectListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCreateCtrl",["$scope","$translate","$uibModalInstance","SquareProject","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.list",{url:"/list",templateUrl:"app/square/project/list/list.html",controller:"SquareProjectListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects",{url:"/projects",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareProject",["$resource",function(a){return a("/api/square/projects/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareProjectViewCtrl",["$scope","$stateParams","Auth","xAlert","SquareProject",function(a,b,c,d,e){a.squareProject={},a.getProject=function(){return e.get({id:b.id}).$promise.then(function(b){a.squareProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!==a&&-1!==a.indexOf("Script error."));else{var e=new Image;e.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(f){d.show(f,"danger")}},b.token=c.getToken();var a=new EditorUi(new Editor);a.openString(b.preproduction,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}})})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.view",{url:"/view/:id",templateUrl:"app/square/project/view/view.html",controller:"SquareProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/square/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/square/js/Editor.js","assets/plugins/square/js/Graph.js","assets/plugins/square/js/EditorUi.js","assets/plugins/square/js/Actions.js","assets/plugins/square/js/Menus.js","assets/plugins/square/js/Sidebar.js","assets/plugins/square/js/Toolbar.js","assets/plugins/square/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:14}}})}]),angular.module("xCallyShuttleApp").factory("ReportSquare",["$resource",function(a){return a("/api/report/square/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportSquareDetail",["$resource",function(a){return a("/api/report/square/details/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareRealtimeViewGeneralCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportSquare","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j){function k(b){return h.spin("spinner-grid"),g.get(m).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){b&&l(),h.stop("spinner-grid")})}function l(){e.socket.on("report_square:save",function(b){if(b.leaveAt){var c=_.remove(a.gridOptions.data,{id:b.id});c&&k()}else{var d=_.find(a.gridOptions.data,{id:b.id});if(!d&&a.gridOptions.data.length<m.limit){var e=_.clone(m);if(_.forEach(["offset","limit","controller","order"],function(a){delete e[a]}),_.isEmpty(e))a.gridOptions.data.push(b);else{var f=!0;_.forOwn(e,function(a,c){_.includes(b[c],a)||(f=!1)}),f&&a.gridOptions.data.push(b)}}}})}var m={controller:"realtime",offset:0,limit:25};a.moment=moment,a.init=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:25,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"uniqueid"},{name:"callerid"},{name:"extension"},{name:"project_name",displayName:"APPLICATION_PROJECT",headerCellFilter:"translate"},{name:"joinAt",displayName:"APPLICATION_ELAPSED_TIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><timer start-time="grid.appScope.moment(row.entity.joinAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?m.order=null:m.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),k()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){m.offset=(a-1)*b,m.limit=b,k()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?m[a.name]=a.filters[0].term:delete m[a.name]}),k()})}},k(!0)};var n=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_square")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.realtime.view.general",{url:"/general",templateUrl:"app/square/realtime/view/general/general.html",controller:"SquareRealtimeViewGeneralCtrl"})}]),angular.module("xCallyShuttleApp").controller("SquareRealtimeViewCtrl",["$scope",function(a){}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){ +a.state("main.square.realtime.view",{url:"/view",templateUrl:"app/square/realtime/view/view.html",controller:"SquareRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SquareRecordingListCtrl",["$scope","SquareRecording","gridOptions",function(a,b,c){a.SquareRecording=b;a.initView=function(){var d={exporterCsvFilename:"recordings.csv",rowHeight:30,columnDefs:[{name:"uniqueid"},{name:"callerid",displayName:"APPLICATION_CALLERIDNUM"},{name:"filename"},{name:"extension"},{name:"projectName",displayName:"APPLICATION_PROJECT"},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.id,controller:\'stream\'}" resource="grid.appScope.SquareRecording"></audio-file-download>'}]},{name:"action",width:150,buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.filename || row.entity.uniqueid, row.entity.id)"},{directive:'<motion-file-download params="{id:row.entity.id,controller:\'stream\'}" resource="grid.appScope.SquareRecording" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="(row.entity.filename || row.entity.uniqueid)+\'.wav\'"></motion-file-download>'}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.recordings.list",{url:"/list",templateUrl:"app/square/recording/list/list.html",controller:"SquareRecordingListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.recordings",{url:"/recordings",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareRecording",["$resource",function(a){return a("/api/square/recordings/:id/:controller",{id:"@id"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square",{url:"/square",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:14}}})}]),angular.module("xCallyShuttleApp").factory("Agent",["$resource",function(a){return a("/api/agents/:id/:controller/:controller1",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents",{url:"/agents",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentListCtrl",["$scope","$timeout","Agent","Auth","gridOptions",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var b={exporterCsvFilename:"agents.csv",columnDefs:[{name:"fullname"},{name:"name",displayName:"APPLICATION_USERNAME"},{name:"internal"},{name:"email"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/staff/agents/view/{{row.entity.id}}/account",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(c,b,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.list",{url:"/list",templateUrl:"app/staff/agent/list/list.html",controller:"AgentListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$cookieStore","Agent","FileUploader","Auth","User",function(a,b,c,d,e,f,g,h,i,j){a.Auth=i,a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"default",onColor:"success"},a.updatePassword=function(){var b={newPassword:a.agent.newPwd};return i.isAdmin()?b.id=e.id:b.oldPassword=a.agent.currentPwd,j.changePassword(b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})};var k=a.uploader=new h({url:"api/users/"+e.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+f.get("token")}});k.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),k.onSuccessItem=function(b,e){a.agent.userpic=e.userpic,a.agent.id===i.getCurrentUser().id&&(i.getCurrentUser().userpic=e.userpic),c.show(d.instant("MESSAGE_WELL_DONE"),"success")},k.onErrorItem=function(){c.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},k.onCompleteAll=function(){k.clearQueue()},a.initView=function(){return g.get({id:e.id}).$promise.then(function(b){a.agent=b,a.agent.transport=a.agent.transport?a.agent.transport.split(","):[],a.agent.allow=a.agent.allow?a.agent.allow.split(";"):[],a.agent.nat=a.agent.nat?a.agent.nat.split(","):[]})["catch"](function(a){c.show(a.message,"danger")})},a.patchItem=function(){return g.update({id:e.id},{chatCapacity:a.agent.chatCapacity,mailCapacity:a.agent.mailCapacity,faxCapacity:a.agent.faxCapacity,smsCapacity:a.agent.smsCapacity}).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.agent);return delete b.password,delete b.md5secret,b.transport=b.transport.join(","),b.allow=b.allow.join(";"),b.nat=b.nat.join(","),g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.view",{url:"/view/:id",templateUrl:"app/staff/agent/view/view.html",controller:"AgentViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]},data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.account",{url:"/account",templateUrl:"app/staff/agent/view/view.account.html",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}},resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.agents.view.voice",{url:"/voice",templateUrl:"app/staff/agent/view/view.voice.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.chat",{url:"/chat",templateUrl:"app/staff/agent/view/view.chat.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.mail",{url:"/mail",templateUrl:"app/staff/agent/view/view.mail.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.fax",{url:"/fax",templateUrl:"app/staff/agent/view/view.fax.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.sms",{url:"/sms",templateUrl:"app/staff/agent/view/view.sms.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.motionbar",{url:"/motionbar",templateUrl:"app/staff/agent/view/view.motionbar.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentWizardCtrl",["$scope","$rootScope","Agent","Setting","xAlert","$location","$translate","$http","WizardHandler",function(a,b,c,d,e,f,g,h,i){a.forms={info:void 0,voice:void 0},a.item={role:"agent",allow:["alaw","ulaw","gsm"],transport:["udp"],context:"from-sip"},a.next=function(){i.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return d.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){e.show(a.data.message,"danger")})},a.createItem=function(){var b=angular.copy(a.item);return b.transport&&(b.transport=b.transport.join(",")),a.item.allow&&(b.allow=b.allow.join(";")),c.save(b).$promise.then(function(){f.path("/staff/agents/list")})["catch"](function(a){console.log(a),e.show(a.message||a.data.message,"danger")})},a.createItems=function(){var b=[];a.item.transport&&(a.item.transport=a.item.transport.join(",")),a.item.allow&&(a.item.allow=a.item.allow.join(";"));for(var d=0;d<a.item.amount;d++){var g=angular.copy(a.item);g.internal+=d,g.name=g.name+d,g.fullname=g.fullname+d,g.email=g.email.split("@")[0]+d+"@"+g.email.split("@")[1],b.push(g)}return c.save({id:"bulk"},b).$promise.then(function(){f.path("/staff/agents/list")})["catch"](function(a){console.log(a),e.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.wizard",{url:"/wizard",templateUrl:"app/staff/agent/wizard/wizard.html",controller:"AgentWizardCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.agents.bulk",{url:"/bulk",templateUrl:"app/staff/agent/wizard/wizard-bulk.html",controller:"AgentWizardCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff",{url:"/staff",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamCreateCtrl",["$scope","$uibModalInstance","Team","xAlert",function(a,b,c,d){a.form={},a.item={},a.ok=function(){return c.save(a.item).$promise.then(function(){b.close(a.item)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("TeamListCtrl",["$scope","Team","gridOptions","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"teams.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"{{row.entity.defaultEntry ? 'blue-hoki disabled' : 'blue-hoki'}}",href:"/staff/teams/view/{{row.entity.id}}/settings",name:"profile"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){d.open({animation:!0,templateUrl:"app/staff/team/list/create.modal.html",controller:"TeamCreateCtrl"}).result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams.list",{url:"/list",templateUrl:"app/staff/team/list/list.html",controller:"TeamListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Team",["$resource",function(a){return a("/api/teams/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams",{url:"/teams",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("TeamViewCtrl",["$scope","$http","$stateParams","$translate","Team","Agent","xAlert",function(a,b,c,d,e,f,g){var h=function(){return{select:function(b){return console.log("agents",b),e.save({id:a.team.id,controller:"agents"},{agents:b})},deselect:function(b){return e["delete"]({id:a.team.id,controller:"agents",agents:b})}}};a.initView=function(){return e.get({id:c.id}).$promise.then(function(b){a.team=b})["catch"](function(a){g.show(a.message,"danger")})},a.initAgents=function(){return f.get().$promise.then(function(b){return a.agents=b.rows,e.get({id:c.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindTeam(_.map(b.rows,"id"),_.map(a.agents,function(a){return{id:a.id,name:a.name,fullname:a.fullname,internal:a.internal}}),h)})["catch"](function(a){g.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.team);return e.update({id:c.id},b).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams.view",{url:"/view/:id",templateUrl:"app/staff/team/view/view.html",controller:"TeamViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.teams.view.agents",{url:"/agents",templateUrl:"app/staff/team/view/view.agents.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]}])}]}}).state("main.staff.teams.view.settings",{url:"/settings",templateUrl:"app/staff/team/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TelephoneListCtrl",["$scope","Telephone","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"telephones.csv",columnDefs:[{name:"fullname"},{name:"name"},{name:"internal"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/staff/telephones/view/{{row.entity.id}}/account",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.list",{url:"/list",templateUrl:"app/staff/telephone/list/list.html",controller:"TelephoneListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Telephone",["$resource",function(a){return a("/api/telephones/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones",{url:"/telephones",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("TelephoneViewCtrl",["$scope","$http","$stateParams","$translate","$cookieStore","Auth","xAlert","Telephone",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.Auth=f,a.forms={},h.get({id:c.id}).$promise.then(function(b){delete b.password,a.item=b,a.item.transport=a.item.transport?a.item.transport.split(","):[],a.item.allow=a.item.allow?a.item.allow.split(";"):[]})["catch"](function(a){g.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.item);return b.transport=b.transport.join(","),b.allow=b.allow.join(";"),h.update(b).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.view",{url:"/view/:id",templateUrl:"app/staff/telephone/view/view.html",controller:"TelephoneViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.telephones.view.account",{url:"/account",templateUrl:"app/staff/telephone/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.telephones.view.voice",{url:"/voice",templateUrl:"app/staff/telephone/view/view.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("TelephoneWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert","$translate","Telephone","Setting",function(a,b,c,d,e,f,g,h){a.forms={},a.item={allow:["alaw","ulaw","gsm"],transport:["udp"],context:"from-sip"},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return h.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){e.show(a.data.message,"danger")})},a.createItem=function(){var b=angular.copy(a.item);return b.transport&&(b.transport=b.transport.join(",")),a.item.allow&&(b.allow=b.allow.join(";")),g.save(b).$promise.then(function(){c.path("/staff/telephones/list")})["catch"](function(a){e.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.wizard",{url:"/wizard",templateUrl:"app/staff/telephone/wizard/wizard.html",controller:"TelephoneWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("UserListCtrl",["$scope","$timeout","User","Auth","gridOptions",function(a,b,c,d,e){function f(a){if(a){var b=_.words(a),c=_.map(b,function(a){return a?a[0]:""});return c.join("").toUpperCase()}return!1}a.getUserAvatar=function(a,c,d){b(function(){angular.element("#userImg"+a).avatar({useGravatar:!1,initials:d?[]:f(c),fallbackImage:"api/users/avatar/"+d,size:80})})},a.isAdmin=function(a){return"admin"===a},a.initView=function(){var b={exporterCsvFilename:"users.csv",columnDefs:[{name:"fullname"},{name:"name",displayName:"APPLICATION_USERNAME"},{name:"internal"},{name:"email"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/staff/users/view/{{row.entity.id}}/account",name:"profile"},{"class":"green-meadow",href:"/staff/users/view/{{row.entity.id}}/permit/voice",name:"permits",hide:"grid.appScope.isAdmin(row.entity.role)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(c,b,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.list",{url:"/list",templateUrl:"app/staff/user/list/list.html",controller:"UserListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Module",["$resource",function(a){return a("/api/modules/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("User",["$resource",function(a){return a("/api/users/:id/:controller/:controller2/:controller3",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},update:{method:"PUT"},me:{method:"GET",params:{id:"me"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users",{url:"/users",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("UserViewCtrl",["$scope","$stateParams","$cookieStore","$translate","FileUploader","User","Auth","xAlert","MailQueue","VoiceQueue","ChatQueue","FaxQueue","SmsQueue","Team","Module","$location",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){function q(b){var c=_.find(a.modules,{id:b.ModuleId});if(b.status===!0)c.status=!0;else{var d=_.filter(a.modules,{ModuleId:b.ModuleId,status:!0});d.length||(c.status=!1)}c.ModuleId&&q(c)}function r(b,c){b.forEach(function(b){b.status=c;var d=_.filter(a.modules,{ModuleId:b.id});d.length&&r(d,c)})}a.Auth=g,a._=_,a.moduleSwitch={onText:"On",offText:"Off",isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.initVoiceQueues=function(){var a={},c={};return j.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"voice",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"voice",b.id,f)})["catch"](function(a){console.error(a)})},a.initChatQueues=function(){var a={},c={};return k.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"chat",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"chat",b.id,f)})["catch"](function(a){console.error(a)})},a.initMailQueues=function(){var a={},c={};return i.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"mail",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"mail",b.id,f)})["catch"](function(a){console.error(a)})},a.initSmsQueues=function(){var a={},c={};return m.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),m.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"sms",controller3:"queues"}).$promise}).then(function(a){console.log("permits",a),c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"sms",b.id,f)})["catch"](function(a){console.error(a)})},a.initFaxQueues=function(){var a={},c={};return l.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"fax",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"fax",b.id,f)})["catch"](function(a){console.error(a)})},a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.user=b,a.user.transport=a.user.transport?a.user.transport.split(","):[],a.user.allow=a.user.allow?a.user.allow.split(";"):[]})["catch"](function(a){h.show(a.message,"danger")})},a.updateItem=function(){var c=angular.copy(a.user);return delete c.password,delete c.md5secret,c.transport=c.transport.join(","),c.allow=c.allow.join(";"),f.update({id:b.id},c).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updatePassword=function(){var c={newPassword:a.user.newPwd};return g.isAdmin()?c.id=b.id:c.oldPassword=a.user.currentPwd,f.changePassword(c).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})};var s=a.uploader=new e({url:"api/users/"+b.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+c.get("token")}});s.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),a.getModules=function(){return a.associatedModules=[],o.get().$promise.then(function(c){return a.modules=c.rows,f.query({id:b.id,controller:"allowed",controller2:"modules"}).$promise}).then(function(b){a.modules.forEach(function(a){_.find(b,{id:a.id})?a.status=!0:a.status=!1})})["catch"](function(a){h.show(a.message,"danger")})},a.updatePermissions=function(c){c.ModuleId&&q(c);var e=_.filter(a.modules,{ModuleId:c.id});return e&&r(e,c.status),f.save({id:b.id,controller:"allowed",controller2:"modules"},{modules:_.map(_.filter(a.modules,{status:!0}),"id")}).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.error(a)})},s.onSuccessItem=function(b,c){a.user.userpic=c.userpic,a.user.id===g.getCurrentUser().id&&(g.getCurrentUser().userpic=c.userpic),h.show(d.instant("MESSAGE_WELL_DONE"),"success")},s.onErrorItem=function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},s.onCompleteAll=function(){s.clearQueue()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.view",{url:"/view/:id",templateUrl:"app/staff/user/view/view.html",controller:"UserViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.users.view.account",{url:"/account",templateUrl:"app/staff/user/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.users.view.voice",{url:"/voice",templateUrl:"app/staff/user/view/view.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.users.view.permit",{url:"/permit",templateUrl:"app/staff/user/view/view.permit.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}},cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}}).state("main.staff.users.view.permit.voice",{url:"/voice",templateUrl:"app/staff/user/view/view.permit.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.users.view.permit.chat",{url:"/chat",templateUrl:"app/staff/user/view/view.permit.chat.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.chat"}}}).state("main.staff.users.view.permit.mail",{url:"/mail",templateUrl:"app/staff/user/view/view.permit.mail.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.mail"}}}).state("main.staff.users.view.permit.fax",{url:"/fax",templateUrl:"app/staff/user/view/view.permit.fax.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.fax"}}}).state("main.staff.users.view.permit.sms",{url:"/sms",templateUrl:"app/staff/user/view/view.permit.sms.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.sms"}}}).state("main.staff.users.view.permit.modules",{url:"/modules",templateUrl:"app/staff/user/view/view.permit.modules.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("UserWizardCtrl",["$scope","$location","WizardHandler","xAlert","$translate","User","Setting",function(a,b,c,d,e,f,g){a.forms={info:void 0,voice:void 0},a.item={role:"user",host:"dynamic",context:"from-sip"},a.next=function(){c.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return g.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){d.show(a.data.message,"danger")})},a.createItem=function(){return f.save(a.item).$promise.then(function(){b.path("/staff/users/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.wizard",{url:"/wizard",templateUrl:"app/staff/user/wizard/wizard.html",controller:"UserWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SugarcrmListCtrl",["$scope","SugarcrmAccount","gridOptions","xAlert","$translate","Modal",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"sugarcrm_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_REMOTE_ADDRESS"},{name:"action",width:250,buttons:[{"class":"blue-hoki",href:"/sugarcrm/view/{{row.entity.id}}/account",name:"profile"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.get({id:a,controller:"check"}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(a){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.list",{url:"/list",templateUrl:"app/sugarcrm/list/list.html",controller:"SugarcrmListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm",{url:"/sugarcrm",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmAccount",["$resource",function(a){return a("/api/sugarcrm/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmConfiguration",["$resource",function(a){return a("/api/sugarcrm/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmField",["$resource",function(a){return a("/api/sugarcrm/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SugarcrmViewCtrl",["$scope","$http","$stateParams","$translate","$location","$filter","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){h.unsyncUpdates("sugarcrm_configuration"),h.unsyncUpdates("sugarcrm_field")}),a.initView=function(){b.get("/api/sugarcrm/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){i.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/sugarcrm/accounts/"+c.id,a.account).success(function(){i.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/sugarcrm/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,h.socket.on("sugarcrm_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.deleteConfiguration=j.confirm["delete"](function(a){b["delete"]("api/sugarcrm/configurations/"+a).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"); +})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/sugarcrm/configurations",a.configuration).success(function(a){e.path("sugarcrm/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){i.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/sugarcrm/accounts/"+c.id+"/fields").success(function(b){a.accountFields=_.sortByOrder(f("sugarcrm")(_.toArray(b)),"name","asc"),_.forEach(b,function(a){a.options=_.toArray(a.options)})}).error(function(a){i.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/sugarcrm/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,h.socket.on("sugarcrm_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){i.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/sugarcrm/fields/"+a.id).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/sugarcrm/fields/"+a.id,a).success(function(){}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){b.content="",a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);return c?c.options.length>0?c.options:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.view",{url:"/view/:id",templateUrl:"app/sugarcrm/view/view.html",controller:"SugarcrmViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.sugarcrm.view.account",{url:"/account",templateUrl:"app/sugarcrm/view/view.account.html"}).state("main.sugarcrm.view.configurations",{url:"/configurations",templateUrl:"app/sugarcrm/view/view.configurations.html"}).state("main.sugarcrm.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/sugarcrm/view/view.configurationSettings.html",controller:"SugarcrmViewCtrl"}).state("main.sugarcrm.view.configuration",{url:"/configuration",templateUrl:"app/sugarcrm/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("SugarcrmkWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("api/sugarcrm/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/sugarcrm/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.wizard",{url:"/wizard",templateUrl:"app/sugarcrm/wizard/wizard.html",controller:"SugarcrmkWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("CannedAnswer",["$resource",function(a){return a("/api/answers/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers",{url:"/answers",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("AnswerListCtrl",["$scope","$uibModal","CannedAnswer","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"answers.csv",columnDefs:[{name:"key",displayName:"APPLICATION_NAME"},{name:"value"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/answers/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.key, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){b.open({animation:!0,templateUrl:"app/tools/answer/list/list.create.modal.html",controller:"AnswerListCreateCtrl"}).result.then(function(b){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("AnswerListCreateCtrl",["$scope","$translate","$uibModalInstance","CannedAnswer","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers.list",{url:"/list",templateUrl:"app/tools/answer/list/list.html",controller:"AnswerListCtrl"})}]),angular.module("xCallyShuttleApp").controller("AnswerViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","CannedAnswer",function(a,b,c,d,e,f,g){a.getAnswer=function(){return g.get({id:e.id}).$promise.then(function(b){a.answer=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updateAnswer=function(){var b=angular.copy(a.answer);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers.view",{url:"/view/:id",templateUrl:"app/tools/answer/view/view.html",controller:"AnswerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.answers.view.settings",{url:"/settings",templateUrl:"app/tools/answer/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("Automation",["$resource",function(a){return a("/api/automations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations",{url:"/automations",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("AutomationListCtrl",["$scope","$http","$translate","xAlert","Automation","gridOptions",function(a,b,c,d,e,f){a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var b={exporterCsvFilename:"Automations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"channel"},{name:"status",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.status" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ grid.appScope.onText }}" switch-off-text="{{ grid.appScope.offText }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>',width:100,enableFiltering:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/automations/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=f.gridOptions(e,b,a)},a.updateItem=function(a){return e.update({id:a.id},a).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.list",{url:"/list",templateUrl:"app/tools/automation/list/list.html",controller:"AutomationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("AutomationViewCtrl",["$scope","$stateParams","$http","$translate","xAlert","automations","Automation","$location",function(a,b,c,d,e,f,g,h){a.$automations=f,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.forms={general:{}},a.addCondition=function(b){a.automation[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.automation[b].splice(c,1)},a.addAction=function(){a.automation.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.automation.Actions.splice(b,1)},a.initView=function(){return g.get({id:b.id}).$promise.then(function(b){a.automation=b})["catch"](function(a){e.show(a.message,"danger"),h.path("/tools/automations/list")})},a.updateAutomation=function(){return g.update({id:b.id},a.automation).$promise.then(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),e.show(a.message,"danger")})},a.exitValidation=function(b){return console.log(b&&(a.automation.All.length||a.automation.Any.length)&&a.automation.Actions.length),!(!b||!a.automation.All.length&&!a.automation.Any.length||!a.automation.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.view",{url:"/view/:id",templateUrl:"app/tools/automation/view/view.html",controller:"AutomationViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.tools.automations.view.settings",{url:"/settings",templateUrl:"app/tools/automation/view/view.settings.html"}).state("main.tools.automations.view.routes",{url:"/routes",templateUrl:"app/tools/automation/view/view.routes.html"}).state("main.tools.automations.view.application",{url:"/application",templateUrl:"app/tools/automation/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("AutomationWizardCtrl",["$scope","$http","$location","xAlert","automations","WizardHandler","Automation",function(a,b,c,d,e,f,g){a.$automations=e,a.statusSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={All:[],Any:[],Actions:[]},a.forms={general:void 0,settings:void 0},a.addCondition=function(b){a.item[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.item[b].splice(c,1)},a.addAction=function(){a.item.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.item.Actions.splice(b,1)},a.$watch("item.channel",function(b,c){c&&(a.tempData[c].All=_.clone(a.item.All,!0),a.tempData[c].Any=_.clone(a.item.Any,!0),a.tempData[c].Actions=_.clone(a.item.Actions,!0)),a.item.All=a.tempData[b].All?a.tempData[b].All:[],a.item.Any=a.tempData[b].Any?a.tempData[b].Any:[],a.item.Actions=a.tempData[b].Actions?a.tempData[b].Actions:[]},!0),a.item.channel="mail",a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/tools/automations/list")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.exitSettingsValidation=function(b){return!(!b||!a.item.All.length&&!a.item.Any.length||!a.item.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.wizard",{url:"/wizard",templateUrl:"app/tools/automation/wizard/wizard.html",controller:"AutomationWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("Interval",["$resource",function(a){return a("/api/intervals/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals",{url:"/intervals",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("IntervalListCtrl",["$scope","$uibModal","Interval","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"intervals.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/intervals/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/interval/list/list.create.modal.html",controller:"IntervalListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("IntervalListCreateCtrl",["$scope","$translate","$uibModalInstance","Interval","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(b.instant(a.data.message),"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals.list",{url:"/list",templateUrl:"app/tools/interval/list/list.html",controller:"IntervalListCtrl"})}]),angular.module("xCallyShuttleApp").controller("IntervalViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","interval",function(a,b,c,d,e,f,g,h,i,j){function k(b){console.log(b);var c,d,e,f;c=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(d=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(d+="-"+b.wd_to)):d="*",b.md_from&&"always"!==b.md_from?(e=b.md_from,b.md_to&&"always"!==b.md_to&&(e+="-"+b.md_to)):e="*",b.m_from&&"always"!==b.m_from?(f=b.m_from,b.m_to&&"always"!==b.m_to&&(f+="-"+b.m_to)):f="*",void 0!==a.selectedSubInterval?a.interval.SubIntervals[a.selectedSubInterval].interval=c+","+d+","+e+","+f:a.subinterval.interval=c+","+d+","+e+","+f}a.$translate=d,a.$interval=j.interval,a.selectedSubInterval=void 0,a.gridOptions={columnDefs:[{name:"name",displayName:"APPLICATION_NAME",headerCellFilter:"translate"},{name:"interval",displayName:"APPLICATION_INTERVAL",headerCellFilter:"translate"},{name:"action",displayName:"APPLICATION_ACTION",headerCellFilter:"translate",width:125,cellTemplate:'<a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openSubInterval(grid.appScope.gridOptions.data.indexOf(row.entity))">{{\'APPLICATION_SETTINGS\' | translate}}</a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteSubInterval(row.entity.name+\' interval\', gridOptions.data.indexOf(row.entity))">{{\'APPLICATION_DELETE\' | translate}}</a>'}]},a.forms={subinterval:void 0,general:void 0},a.initSubInterval=function(b){b&&(a.selectedSubInterval=void 0),a.subinterval={},a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0}},a.next=function(){h.wizard().next()},a.previous=function(){h.wizard().previous()},a.exitValidation=function(a){return a},a.deselectAndRedirect=function(b){a.selectedSubInterval=void 0,g.path(b)},a.getInterval=function(){b.get("/api/intervals/"+e.id).success(function(b){a.interval=b,a.gridOptions.data=b.SubIntervals}).error(function(a){console.error(a),g.path("/tools/intervals/list")})},a.openSubInterval=function(b){a.selectedSubInterval=b,g.path("/tools/intervals/view/"+e.id+"/subintervals/settings")},a.updateInterval=function(f){a.selectedSubInterval=void 0,b.put("/api/intervals/"+e.id,a.interval).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),f&&g.path("/tools/intervals/view/"+e.id+"/"+f)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getSubInterval=function(){void 0===a.selectedSubInterval&&g.path("/tools/intervals/list"),a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date)};var b,c=a.interval.SubIntervals[a.selectedSubInterval]?a.interval.SubIntervals[a.selectedSubInterval].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.splittedInterval.t_from=moment(b[0],"HH:mm"),a.splittedInterval.t_to=moment(b[1],"HH:mm"),a.splittedInterval.alwaysTime=!1):(a.splittedInterval.t_from=moment(new Date),a.splittedInterval.t_to=moment(new Date),a.splittedInterval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.splittedInterval.wd_from=b[0],a.splittedInterval.wd_to=b[1]?b[1]:"always"):(a.splittedInterval.wd_from="always",a.splittedInterval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.splittedInterval.md_from=b[0],a.splittedInterval.md_to=b[1]?b[1]:"always"):(a.splittedInterval.md_from="always",a.splittedInterval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.splittedInterval.m_from=b[0],a.splittedInterval.m_to=b[1]?b[1]:"always"):(a.splittedInterval.m_from="always",a.splittedInterval.m_to="always")}})},a.$watch("splittedInterval",function(a){a&&k(a)},!0),a.addSubInterval=function(){a.interval.SubIntervals.push(a.subinterval),a.updateInterval("subintervals")},a.deleteSubInterval=i.confirm["delete"](function(b){a.interval.SubIntervals.splice(b,1),a.updateInterval()})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals.view",{url:"/view/:id",templateUrl:"app/tools/interval/view/view.html",controller:"IntervalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.intervals.view.settings",{url:"/settings",templateUrl:"app/tools/interval/view/view.settings.html"}).state("main.tools.intervals.view.subintervals",{url:"/subintervals",templateUrl:"app/tools/interval/view/view.subintervals.html"}).state("main.tools.intervals.view.subinterval",{url:"/subinterval",templateUrl:"app/tools/interval/view/view.subinterval.html"}).state("main.tools.intervals.view.subintervals.settings",{url:"/settings",templateUrl:"app/tools/interval/view/view.subintervalSettings.html"})}]),angular.module("xCallyShuttleApp").controller("PauseListCtrl",["$scope","$log","$uibModal","$translate","Pause","gridOptions",function(a,b,c,d,e,f){a.initView=function(){var b={exporterCsvFilename:"pauses.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/pauses/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=f.gridOptions(e,b,a)},a.createItem=function(){var b=c.open({animation:!0,templateUrl:"app/tools/pause/list/list.create.modal.html",controller:"PauseListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("PauseListCreateCtrl",["$scope","$translate","$uibModalInstance","Pause","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses.list",{url:"/list",templateUrl:"app/tools/pause/list/list.html",controller:"PauseListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Pause",["$resource",function(a){return a("/api/pauses/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses",{url:"/pauses",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("PauseViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","Pause",function(a,b,c,d,e,f,g){a.getPause=function(){return g.get({id:e.id}).$promise.then(function(b){a.pause=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updatePause=function(){var b=angular.copy(a.pause);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses.view",{url:"/view/:id",templateUrl:"app/tools/pause/view/view.html",controller:"PauseViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.pauses.view.settings",{url:"/settings",templateUrl:"app/tools/pause/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SchedulerListCtrl",["$scope","Scheduler","gridOptions","xAlert","$translate","socket",function(a,b,c,d,e,f){a._=_,a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"},{name:"APPLICATION_HISTORY_MOVE",value:"history"},{name:"APPLICATION_DB_BACKUP",value:"backup"}],a.initView=function(){var d={exporterCsvFilename:"Schedules.csv",columnDefs:[{name:"name"},{name:"type"},{name:"description",cellTemplate:'<div class="centered-uigrid-td">{{grid.appScope._.find(grid.appScope.scheduleTypes,{value:row.entity.type}).name | translate}}</div>'},{name:"active",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.active" type="checkbox" switch-active="{{ grid.appScope.switches.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.switches.onColor }}" switch-off-color="{{ grid.appScope.switches.offColor }}" switch-animate="{{ grid.appScope.switches.animate }}" switch-size="{{ grid.appScope.switches.size }}" switch-label="{{ grid.appScope.switches.label }}" switch-icon="{{ grid.appScope.switches.icon }}" switch-radio-off="{{ grid.appScope.switches.radioOff }}" switch-label-width="{{ grid.appScope.switches.labelWidth }}" switch-handle-width="{{ grid.appScope.switches.handleWidth }}"></div>',enableFiltering:!1,enableSorting:!1},{name:"sendMail",displayName:"APPLICATION_SEND_MAIL",cellTemplate:'<div data-ng-if="row.entity.type == \'report\'" class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.sendMail" type="checkbox" switch-active="{{ grid.appScope.switches.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.switches.onColor }}" switch-off-color="{{ grid.appScope.switches.offColor }}" switch-animate="{{ grid.appScope.switches.animate }}" switch-size="{{ grid.appScope.switches.size }}" switch-label="{{ grid.appScope.switches.label }}" switch-icon="{{ grid.appScope.switches.icon }}" switch-radio-off="{{ grid.appScope.switches.radioOff }}" switch-label-width="{{ grid.appScope.switches.labelWidth }}" switch-handle-width="{{ grid.appScope.switches.handleWidth }}"></div>',enableFiltering:!1,enableSorting:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/scheduler/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-turquoise",name:"run",onClick:"grid.appScope.runSchedule(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.updateItem=function(a){return b.update({id:a.id},a).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.runSchedule=function(a){return b.get({id:a,controller:"run"}).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.list",{url:"/list",templateUrl:"app/tools/scheduler/list/list.html",controller:"SchedulerListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Scheduler",["$resource",function(a){return a("/api/scheduler/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler",{url:"/scheduler",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("SchedulerViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","ReportTree","Scheduler","DefaultReport","CustomReport","$timeout","MailAccount",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(b){var c;switch(b.cronType){case"daily":a.rangeExec.hour=Number(b.cron.split(" ")[1]),a.rangeExec.type=b.cronType;break;case"weekly":c=b.cron.split(" "),a.rangeExec.hour=Number(c[1]),c[4].split(",").forEach(function(b){a.rangeExec.weekDays.push(Number(b))}),a.rangeExec.type=b.cronType;break;case"monthly":c=b.cron.split(" "),a.rangeExec.hour=Number(c[1]),a.rangeExec.monthDay=Number(c[2]),a.rangeExec.type=b.cronType;break;case"currentDay":a.switchValues.today=!0}a.$watch("rangeExec",function(b){a.switchValues.today||n()},!0)}function n(){switch(a.schedule.cronType=a.rangeExec.type,a.rangeExec.type){case"daily":a.schedule.cron="* "+a.rangeExec.hour+" * * *";break;case"weekly":a.schedule.cron="* "+a.rangeExec.hour+" * * "+a.rangeExec.weekDays.join(",");break;case"monthly":a.schedule.cron="* "+a.rangeExec.hour+" "+a.rangeExec.monthDay+" * *"}}a.forms={},a.rangeExec={weekDays:[],monthDay:null,hour:0,type:null},a.initReports=function(){return a.reports=[],a.tempTodayCron=null,g.query().$promise.then(function(b){return a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),i.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Default - "+_.find(a.defaultTreeData,{id:b.parent}).text,b.type="default"}),a.reports=a.reports.concat(b.rows)),j.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Custom - "+_.find(a.customTreeData,{id:b.parent}).text,b.type="custom"}),a.reports=a.reports.concat(b.rows)),l.get().$promise}).then(function(b){a.mailAccounts=b.rows})["catch"](function(a){b.error(a)})},a.initView=function(){return h.get({id:d.id}).$promise.then(function(b){a.schedule=b,m(b)}).then(function(){e.socket.on("schedule:update",function(b){a.schedule.id===b.id&&(a.schedule.active=b.active,a.schedule.sendMail=b.sendMail)})})["catch"](function(a){console.error(a),f.path("/tools/scheduler/list")})},a.refreshSlider=function(){k(function(){a.$broadcast("rzSliderForceRender"),a.refreshSlider=null})},a.monthDays=function(){for(var a=[],b=1;31>=b;b++)a.push(b);return a}(),a.hours=function(){for(var a=[],b=0;23>=b;b++)a.push(b);return a}(),a.setReportTree=function(b){a.schedule.reportType=b.type},a.validitySlider={ceil:24,floor:0,showTicks:!0},a.switchValues={today:!1},a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"}],a.todayCron=[{name:"15 min",value:"*/15 * * * *"},{name:"30 min",value:"*/30 * * * *"},{name:"1 h",value:"0 * * * *"}],a.reportRanges=[{name:"APPLICATION_PREVIOUS_DAY",value:"yesterday"},{name:"APPLICATION_LAST_SEVEN_DAYS",value:"last7"},{name:"APPLICATION_LAST_THIRTY_DAYS",value:"last30"},{name:"APPLICATION_LAST_MONTH",value:"lastMonth"}],a.cronTypes=[{name:"APPLICATION_DAY",value:"daily"},{name:"APPLICATION_WEEK",value:"weekly"},{name:"APPLICATION_MONTH",value:"monthly"}],a.weekDays=[{name:"APPLICATION_MONDAY",value:1},{name:"APPLICATION_TUESDAY",value:2},{name:"APPLICATION_WEDNESDAY",value:3},{name:"APPLICATION_THURSDAY",value:4},{name:"APPLICATION_FRIDAY",value:5},{name:"APPLICATION_SATURDAY",value:6},{name:"APPLICATION_SUNDAY",value:0}],a.checkToday=function(){a.switchValues.today?(a.schedule.cron=angular.copy(a.tempTodayCron),a.schedule.cronType="currentDay"):(a.tempTodayCron=angular.copy(a.schedule.cron),a.schedule.cron=void 0,n())},a.updateSchedule=function(){return h.update({id:a.schedule.id},a.schedule).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.view",{url:"/view/:id",templateUrl:"app/tools/scheduler/view/view.html",controller:"SchedulerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.scheduler.view.settings",{url:"/settings",templateUrl:"app/tools/scheduler/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SchedulerWizardCtrl",["$scope","WizardHandler","$location","xAlert","Scheduler","ReportTree","$translate","DefaultReport","CustomReport","MailAccount",function(a,b,c,d,e,f,g,h,i,j){function k(){switch(a.item.cronType=a.rangeExec.type,a.rangeExec.type){case"daily":a.item.cron="* "+a.rangeExec.hour+" * * *";break;case"weekly":a.item.cron="* "+a.rangeExec.hour+" * * "+a.rangeExec.weekDays.join(",");break; +case"monthly":a.item.cron="* "+a.rangeExec.hour+" "+a.rangeExec.monthDay+" * *"}}a.forms={},a.item={validityStart:8,validityEnd:16},a.initReports=function(){return a.reports=[],f.query().$promise.then(function(b){return a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),h.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Default - "+_.find(a.defaultTreeData,{id:b.parent}).text,b.type="default"}),a.reports=a.reports.concat(b.rows)),i.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Custom - "+_.find(a.customTreeData,{id:b.parent}).text,b.type="custom"}),a.reports=a.reports.concat(b.rows)),j.get().$promise}).then(function(b){a.mailAccounts=b.rows})["catch"](function(a){d.error(a)})},a.setReportTree=function(b){a.item.reportType=b.type},a.validitySlider={ceil:24,floor:0,showTicks:!0},a.switchValues={today:!1},a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"}],a.todayCron=[{name:"15 min",value:"*/15 * * * *"},{name:"30 min",value:"*/30 * * * *"},{name:"1 h",value:"0 * * * *"}],a.reportRanges=[{name:"APPLICATION_PREVIOUS_DAY",value:"yesterday"},{name:"APPLICATION_LAST_SEVEN_DAYS",value:"last7"},{name:"APPLICATION_LAST_THIRTY_DAYS",value:"last30"},{name:"APPLICATION_LAST_MONTH",value:"lastMonth"}],a.cronTypes=[{name:"APPLICATION_DAY",value:"daily"},{name:"APPLICATION_WEEK",value:"weekly"},{name:"APPLICATION_MONTH",value:"monthly"}],a.weekDays=[{name:"APPLICATION_MONDAY",value:1},{name:"APPLICATION_TUESDAY",value:2},{name:"APPLICATION_WEDNESDAY",value:3},{name:"APPLICATION_THURSDAY",value:4},{name:"APPLICATION_FRIDAY",value:5},{name:"APPLICATION_SATURDAY",value:6},{name:"APPLICATION_SUNDAY",value:0}],a.tempTodayCron=null,a.checkToday=function(){a.switchValues.today?(a.item.cron=angular.copy(a.tempTodayCron),a.item.cronType="currentDay"):(a.tempTodayCron=angular.copy(a.item.cron),a.item.cron=void 0,k())},a.monthDays=function(){for(var a=[],b=1;31>=b;b++)a.push(b);return a}(),a.hours=function(){for(var a=[],b=0;23>=b;b++)a.push(b);return a}(),a.rangeExec={weekDays:[],monthDay:null,hour:0,type:null},a.$watch("rangeExec",function(b){a.switchValues.today||k()},!0),a.next=function(){b.wizard().next()},a.previous=function(){b.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return e.save(a.item).$promise.then(function(){c.path("/tools/scheduler/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.wizard",{url:"/wizard",templateUrl:"app/tools/scheduler/wizard/wizard.html",controller:"SchedulerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SoundListCtrl",["$scope","$http","socket","Modal","$q","FileUploader","$translate","xAlert","$cookieStore","$sce","Sound",function(a,b,c,d,e,f,g,h,i,j,k){a.Sound=k,a.isCollapsed=!0,a.downloadButtonContent='<i class="icon-cloud-download"></i>',a.downloadButtonClass="btn btn-xs blue-hoki",a["delete"]=d.confirm["delete"](function(a){b["delete"]("/api/sounds/"+a).success(function(a){}).error(function(a){console.log(a)})}),a.updateAudio=function(a,c){var d=e.defer();return b.put("/api/sounds/"+a,c).success(function(a){d.resolve()}).error(function(a){console.log(a.message),d.reject(a.message)}),d.promise},a.$on("$destroy",function(){c.unsyncUpdates("sound")}),a.initList=function(){b.get("/api/sounds").success(function(b){a.sounds=b.rows,b.rows.length||(a.isCollapsed=!1),c.syncUpdates("sound",a.sounds,function(){a.sounds.length||(a.isCollapsed=!1)})}).error(function(a){})};var l=a.uploader=new f({url:"/api/sounds",withCredentials:!0,headers:{Authorization:"Bearer "+i.get("token")}});l.filters.push({name:"customFilter",fn:function(a,b){return this.queue.length<10}}),l.onWhenAddingFileFailed=function(a,b,c){console.info("onWhenAddingFileFailed",a,b,c)},l.onAfterAddingFile=function(a){console.info("onAfterAddingFile",a)},l.onAfterAddingAll=function(a){console.info("onAfterAddingAll",a)},l.onBeforeUploadItem=function(a){console.info("onBeforeUploadItem",a)},l.onProgressItem=function(a,b){console.info("onProgressItem",a,b),a.isUploading=!0},l.onProgressAll=function(a){console.info("onProgressAll",a)},l.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),a.isUploading=!1},l.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),a.responseMessage=b,a.isUploading=!1},l.onCancelItem=function(a,b,c,d){console.info("onCancelItem",a,b,c,d),a.isUploading=!1},l.onCompleteItem=function(a,b,c,d){console.info("onCompleteItem",a,b,c,d),a.isUploading=!1},l.onCompleteAll=function(){console.info("onCompleteAll")},console.info("uploader",l)}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.sounds.list",{url:"/list",templateUrl:"app/tools/sound/list/list.html",controller:"SoundListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").factory("Sound",["$resource",function(a){return a("/api/sounds/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.sounds",{url:"/sounds",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TagListCtrl",["$scope","$uibModal","Tag","gridOptions","$rootScope",function(a,b,c,d,e){a.initView=function(){var b={exporterCsvFilename:"tag.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/tags/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/tag/list/list.create.modal.html",controller:"TagListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("TagListCreateCtrl",["$scope","$translate","$uibModalInstance","Tag","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags.list",{url:"/list",templateUrl:"app/tools/tag/list/list.html",controller:"TagListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Tag",["$resource",function(a){return a("/api/tags/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags",{url:"/tags",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TagViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","Tag",function(a,b,c,d,e,f,g){a.getTag=function(){return g.get({id:e.id}).$promise.then(function(b){a.tag=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updateTag=function(){var b=angular.copy(a.tag);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags.view",{url:"/view/:id",templateUrl:"app/tools/tag/view/view.html",controller:"TagViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.tags.view.settings",{url:"/settings",templateUrl:"app/tools/tag/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TemplateListCtrl",["$scope","Template","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"templates.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/tools/templates/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.list",{url:"/list",templateUrl:"app/tools/template/list/list.html",controller:"TemplateListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Template",["$resource",function(a){return a("/api/templates/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates",{url:"/templates",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TemplateViewCtrl",["$scope","$rootScope","$http","$translate","$stateParams","xAlert","Template","templateVariable",function(a,b,c,d,e,f,g,h){a.initItem=function(){CKEDITOR.plugins.addExternal("richparams","/assets/plugins/ckeditor-richparams/"),a.options={language:b.language,allowedContent:!0,entities:!1,contentsCss:"/assets/css/global/richparams.css",extraPlugins:"richparams",richparams:h,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","PasteText","PasteFromWord","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},{name:"document",items:["Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]},"/",{name:"motion",items:["chat","mail"]}]},a.form={},a.item={},a.item=g.get({id:e.id})},a.updateItem=function(){return g.update(a.item).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.view",{url:"/view/:id",templateUrl:"app/tools/template/view/view.html",controller:"TemplateViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.templates.view.settings",{url:"/settings",templateUrl:"app/tools/template/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TemplateWizardCtrl",["$scope","$rootScope","$location","$http","WizardHandler","xAlert","Template","templateVariable",function(a,b,c,d,e,f,g,h){a.initWizard=function(){CKEDITOR.plugins.addExternal("richparams","/assets/plugins/ckeditor-richparams/"),a.options={language:b.language,allowedContent:!0,entities:!1,contentsCss:"/assets/css/global/richparams.css",extraPlugins:"richparams",richparams:h,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","PasteText","PasteFromWord","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},{name:"document",items:["Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]},"/",{name:"motion",items:["chat","mail"]}]},a.item={},a.form={}},a.exitValidation=function(a){return a},a.createItem=function(){return g.save({name:a.item.name,description:a.item.description,subject:a.item.subject||null,html:a.item.html||null,text:a.item.text||null}).$promise.then(function(){c.path("/tools/templates/list")})["catch"](function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.wizard",{url:"/wizard",templateUrl:"app/tools/template/wizard/wizard.html",controller:"TemplateWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools",{url:"/tools",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TriggerListCtrl",["$scope","$http","$translate","Modal","xAlert","Trigger","gridOptions",function(a,b,c,d,e,f,g){a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var b={exporterCsvFilename:"Triggers.csv",columnDefs:[{name:"name"},{name:"description"},{name:"channel"},{name:"status",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.status" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ grid.appScope.onText }}" switch-off-text="{{ grid.appScope.offText }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>',width:100,enableFiltering:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/triggers/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=g.gridOptions(f,b,a)},a.updateItem=function(a){return f.update({id:a.id},a).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.list",{url:"/list",templateUrl:"app/tools/trigger/list/list.html",controller:"TriggerListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Trigger",["$resource",function(a){return a("/api/triggers/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers",{url:"/triggers",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TriggerViewCtrl",["$scope","$stateParams","$translate","xAlert","triggers","Trigger","$location",function(a,b,c,d,e,f,g){a.$triggers=e,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.forms={general:{}},a.addCondition=function(b){a.trigger[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.trigger[b].splice(c,1)},a.addAction=function(){a.trigger.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.trigger.Actions.splice(b,1)},a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.trigger=b})["catch"](function(a){d.show(a.message,"danger"),g.path("/tools/triggers/list")})},a.updateTrigger=function(){return f.update({id:b.id},a.trigger).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.exitValidation=function(b){return console.log(b&&(a.trigger.All.length||a.trigger.Any.length)&&a.trigger.Actions.length),!(!b||!a.trigger.All.length&&!a.trigger.Any.length||!a.trigger.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.view",{url:"/view/:id",templateUrl:"app/tools/trigger/view/view.html",controller:"TriggerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.tools.triggers.view.settings",{url:"/settings",templateUrl:"app/tools/trigger/view/view.settings.html"}).state("main.tools.triggers.view.routes",{url:"/routes",templateUrl:"app/tools/trigger/view/view.routes.html"}).state("main.tools.triggers.view.application",{url:"/application",templateUrl:"app/tools/trigger/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("TriggerWizardCtrl",["$scope","$http","$location","xAlert","triggers","WizardHandler","Trigger",function(a,b,c,d,e,f,g){a.$triggers=e,a.statusSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={All:[],Any:[],Actions:[]},a.forms={general:void 0,settings:void 0},a.addCondition=function(b){a.item[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.item[b].splice(c,1)},a.addAction=function(){a.item.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.item.Actions.splice(b,1)},a.$watch("item.channel",function(b,c){c&&(a.tempData[c].All=_.clone(a.item.All,!0),a.tempData[c].Any=_.clone(a.item.Any,!0),a.tempData[c].Actions=_.clone(a.item.Actions,!0)),a.item.All=a.tempData[b].All?a.tempData[b].All:[],a.item.Any=a.tempData[b].Any?a.tempData[b].Any:[],a.item.Actions=a.tempData[b].Actions?a.tempData[b].Actions:[]},!0),a.item.channel="voice",a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/tools/triggers/list")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.exitSettingsValidation=function(b){return!(!b||!a.item.All.length&&!a.item.Any.length||!a.item.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.wizard",{url:"/wizard",templateUrl:"app/tools/trigger/wizard/wizard.html",controller:"TriggerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("TrunkListCtrl",["$scope","Trunk","gridOptions","xAlert","$translate","socket",function(a,b,c,d,e,f){function g(){f.socket.on("trunk:update",function(b){var c=_.find(a.gridOptions.data,{name:b.name});c&&(c.status=b.status,c.peerstatus=b.peerstatus)})}a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var d={exporterCsvFilename:"Trunks.csv",columnDefs:[{name:"name"},{name:"active",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.active" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>'},{name:"host"},{name:"description"},{name:"status",cellTemplate:'<div class="centered-uigrid-td" data-ng-if="row.entity.active && row.entity.registry && row.entity.status">{{row.entity.status}}</div>'},{name:"peerstatus",cellTemplate:'<div class="centered-uigrid-td" data-ng-if="row.entity.active && row.entity.peerstatus">{{row.entity.peerstatus}}</div>'},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/trunks/view/{{row.entity.name}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.name)"}]}]};a.gridOptions=c.gridOptions(b,d,a,null,null,null,g)},a.updateItem=function(a){return b.update({id:a.name},a).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.list",{url:"/list",templateUrl:"app/tools/trunk/list/list.html",controller:"TrunkListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Trunk",["$resource",function(a){return a("/api/trunks/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks",{url:"/trunks",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TrunkViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","Trunk","VoiceContext",function(a,b,c,d,e,f,g,h,i){a.activeSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.initView=function(){return h.get({id:e.id}).$promise.then(function(b){b.nat=b.nat?b.nat.split(","):[],b.allow=b.allow?b.allow.split(";"):[],b.insecure=b.insecure?b.insecure.split(","):[],b.transport=b.transport?b.transport.split(","):[],a.trunk=b}).then(function(){f.socket.on("trunk:update",function(b){a.trunk.name===b.name&&(a.trunk.status=b.status)})})["catch"](function(a){console.error(a),g.path("/tools/trunks/list")})},a.updateTrunk=function(){""===a.trunk.password&&delete a.trunk.password;var b=angular.copy(a.trunk);return b.nat=b.nat.join(","),b.allow=b.allow.join(";"),b.insecure=b.insecure.join(","),b.transport=b.transport.join(","),h.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){c.show(a.data.message,"danger")})},a.getContexts=function(){return i.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.view",{url:"/view/:id",templateUrl:"app/tools/trunk/view/view.html",controller:"TrunkViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.trunks.view.settings",{url:"/settings",templateUrl:"app/tools/trunk/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TrunkWizardCtrl",["$scope","WizardHandler","$location","xAlert","Trunk",function(a,b,c,d,e){a.initWizard=function(){a.forms={},a.item={context:"from-voip-provider"}},a.next=function(){b.wizard().next()},a.previous=function(){b.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return a.item.fromuser=a.item.defaultuser,a.item.fromdomain=a.item.host,e.save(a.item).$promise.then(function(){c.path("/tools/trunks/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.wizard",{url:"/wizard",templateUrl:"app/tools/trunk/wizard/wizard.html",controller:"TrunkWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VariableListCtrl",["$scope","$uibModal","Variable","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"variables.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/variables/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/variable/list/list.create.modal.html",controller:"VariableListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("VariableListCreateCtrl",["$scope","$translate","$uibModalInstance","Variable","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables.list",{url:"/list",templateUrl:"app/tools/variable/list/list.html",controller:"VariableListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Variable",["$resource",function(a){return a("/api/variables/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables",{url:"/variables",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("VariableViewCtrl",["$scope","$translate","$stateParams","xAlert","Variable",function(a,b,c,d,e){a.getVariable=function(){return e.get({id:c.id}).$promise.then(function(b){a.variable=b})["catch"](function(a){d.show(a.data.message,"danger")})},a.updateVariable=function(){return e.update({id:c.id},a.variable).$promise.then(function(){d.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables.view",{url:"/view/:id",templateUrl:"app/tools/variable/view/view.html",controller:"VariableViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.variables.view.settings",{url:"/settings",templateUrl:"app/tools/variable/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCloneModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCtrl",["$scope","$http","$translate","xAlert","Modal","$uibModal","$log","YourDashboard","gridOptions",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"voice_contexts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:220,buttons:[{"class":"green",href:"/tools/yourdashboards/show/{{row.entity.id}}",name:"view"},{"class":"blue-hoki",href:"/tools/yourdashboards/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"purple",name:"clone",onClick:"grid.appScope.clone(row.entity.id)"}]}]};a.gridOptions=i.gridOptions(h,b,a)},a.create=function(){var b=f.open({animation:!0,templateUrl:"app/tools/yourdashboard/list/create.modal.html",controller:"YourdashboardListCreateModalCtrl"});b.result.then(function(b){return h.save(b).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})},a.clone=function(b){var e=f.open({animation:!0,templateUrl:"app/tools/yourdashboard/list/clone.modal.html",controller:"YourdashboardListCloneModalCtrl"});e.result.then(function(e){return h.save({id:b,controller:"clone"},e).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.list",{url:"/list",templateUrl:"app/tools/yourdashboard/list/list.html",controller:"YourdashboardListCtrl"})}]),angular.module("xCallyShuttleApp").controller("LeaveEditedDashboardModalCtrl",["$scope","$uibModalInstance",function(a,b){a.close=function(){b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardShowCtrl",["$scope","$rootScope","localStorageService","xAlert","$translate","Auth","$stateParams","$location","$uibModal","$log","YourDashboard",function(a,b,c,d,e,f,g,h,i,j,k){a.Auth=f,a.editMode=!1,a.getDashboard=function(){return k.get({id:g.id}).$promise.then(function(b){var c={name:"dashboard",structure:"4-8",enableconfirmdelete:!0,maximizable:!0,collapsible:!0};b.model=JSON.parse(b.model||'{"title":"Dashboard"}'),b.editable=!(!f.isAdmin()||!b.editable),a.dashboard=_.merge(c,b)})["catch"](function(a){h.path("/tools/yourdashboards/list")})},a.$on("$locationChangeStart",function(b,c,d){if(a.editMode){b.preventDefault();var e=i.open({animation:!0,templateUrl:"app/tools/yourdashboard/show/leaveEditedDashboard.modal.html",controller:"LeaveEditedDashboardModalCtrl"});e.result.then(function(b){a.editMode=!1;var d=location.protocol+"//"+location.host;h.path(c.replace(d,""))},function(){j.info("Modal dismissed at: "+new Date)})}});var l=function(b,c,f){var h=angular.copy(a.dashboard);return h.name=a.dashboard.model.title,h.model=JSON.stringify(h.model),k.update({id:g.id},h).$promise.then(function(){d.show(e.instant("MESSAGE_DASHBOARD_SAVED")+"!","success"),a.editMode=!1})["catch"](function(b){d.show(b.message,"danger"),h.model=JSON.parse(h.model),h.name="dashboard",a.dashboard=h})};a.$on("adfDashboardChanged",l),a.$on("adfIsEditMode",function(){a.editMode=!0}),a.$on("destroy",function(){console.log("main dashboard")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.show",{url:"/show/:id",templateUrl:"app/tools/yourdashboard/show/show.html",controller:"YourdashboardShowCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.getDashboard=function(){ +b.get("/api/dashboards/"+e.id).success(function(b){delete b.model,a.dashboard=b}).error(function(a){f.path("/tools/yourdashboards/list")})},a.updateDashboard=function(){var f=angular.copy(a.dashboard);b.put("/api/dashboards/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.dashboard=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.view",{url:"/view/:id",templateUrl:"app/tools/yourdashboard/view/view.html",controller:"YourdashboardViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.yourdashboards.view.settings",{url:"/settings",templateUrl:"app/tools/yourdashboard/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("YourDashboard",["$resource",function(a){return a("/api/dashboards/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards",{url:"/yourdashboards",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:2}}})}]),angular.module("xCallyShuttleApp").controller("ZendeskListCtrl",["$scope","ZendeskAccount","gridOptions","xAlert","$translate",function(a,b,c,d,e){a.initView=function(){var d={exporterCsvFilename:"zendesk_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_URI"},{name:"action",buttons:[{"class":"blue-hoki",href:"/zendesk/view/{{row.entity.id}}/account",name:"account"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.check({id:a}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.list",{url:"/list",templateUrl:"app/zendesk/list/list.html",controller:"ZendeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations",{url:"/configurations",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewConfigurationListCtrl",["$scope","$stateParams","$translate","gridOptions","ZendeskConfiguration","$uibModal",function(a,b,c,d,e,f){a.initView=function(){var c={exporterCsvFilename:"zendesk_configurations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/zendesk/view/{{row.entity.AccountId}}/configurations/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(e,c,a,{accountId:b.id})},a.createItem=function(){var b=f.open({animation:!0,templateUrl:"app/zendesk/view/configuration/list/create.modal.html",controller:"ZendeskCreateConfigurationCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ZendeskCreateConfigurationCtrl",["$scope","$translate","$uibModalInstance","ZendeskConfiguration","xAlert","$stateParams","channel",function(a,b,c,d,e,f,g){a.form={},a.item={},a.channels=g,a.item.channel="voice",a.save=function(){return d.save({accountId:f.id},a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations.list",{url:"/list",templateUrl:"app/zendesk/view/configuration/list/list.html",controller:"ZendeskViewConfigurationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewConfigurationViewCtrl",["$scope","$stateParams","$filter","$translate","socket","ZendeskConfiguration","xAlert","variable","Variable","ZendeskAccount","Tag","ZendeskField",function(a,b,c,d,e,f,g,h,i,j,k,l){a.$on("$destroy",function(){e.unsyncUpdates("zendesk_field")}),a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:300,scrollInertia:0},a.fieldType=[{type:"string",title:"String"},{type:"variable",title:"Variable"},{type:"customVariable",title:"Custom Variable"}],a.descFieldType=[{type:"string",title:"String"},{type:"keyValue",title:"Key Value"}],a.groupVariableByGroup=function(a){switch(a.group){case"voice_queue":return"Voice: Queue";default:return"Other"}},a.initView=function(){a.configurationName="",a.subjectConfig=[],a.descriptionConfig=[],a.fieldConfig=[],a.selectedTags={tags:[]},a.variables=h},a.getConfiguration=function(){return f.get({accountId:b.id,id:b.configurationId}).$promise.then(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,a.selectedTags={tags:_.map(b.Tags,function(a){return a.id})},e.socket.on("zendesk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})})["catch"](function(a){g.error(a)})},a.getCustomVariables=function(){return i.get().$promise.then(function(b){a.customVariables=b.rows})["catch"](function(a){g.error(a)})},a.getFields=function(){return j.fields({id:b.id}).$promise.then(function(b){a.accountFields=c("zendesk")(b)})["catch"](function(a){g.error(a)})},a.getTags=function(){return k.get().$promise.then(function(b){a.tags=b.rows})["catch"](function(a){g.error(a)})},a.addItem=function(c){var d={};switch(c){case"subject":case"description":d={type:"string",content:""};break;case"field":d={content:""}}return f.save({accountId:b.id,id:b.configurationId,controller:c},d).$promise.then(function(b){switch(c){case"subject":a.subjectConfig.push(b);break;case"description":a.descriptionConfig.push(b);break;case"field":a.fieldConfig.push(b)}})["catch"](function(a){g.error(a)})},a.changeType=function(b){"variable"===b.type?(b.content="",b.variableName=""):"string"===b.type?(b.VariableId=null,b.variableName=""):"customVariable"===b.type&&(b.VariableId=null,b.content=""),a.updateField(b)},a.updateField=function(a){return l.update({accountId:b.id,configurationId:b.configurationId,id:a.id},a).$promise.then(function(){})["catch"](function(a){g.error(a)})},a.removeItem=function(a){return l["delete"]({accountId:b.id,configurationId:b.configurationId,id:a.id}).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.error(a)})},a.changeDescType=function(b){"keyValue"===b.type?(b.content="","string"===b.keyType?(b.VariableId=null,b.variableName=""):"variable"===b.keyType?(b.keyContent="",b.VariableId=null):"customVariable"===b.keyType&&(b.keyContent="",b.variableName="")):"string"===b.type&&(b.VariableId=null,b.variableName="",b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.variableName="",b.nameField="",b.VariableId=null,b.idField){var c=_.find(a.accountFields,"id",b.idField);c&&(c.system_field_options?(b.customField=!1,b.nameField=c.title.toLowerCase()):b.customField=!0)}a.updateField(b)},a.updateTags=function(){return f.update({accountId:b.id,id:b.configurationId,controller:"tags"},a.selectedTags.tags).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){g.error(a)})},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"id",b);return c?c.system_field_options?c.system_field_options:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations.view",{url:"/view/:configurationId",templateUrl:"app/zendesk/view/configuration/view/view.html",controller:"ZendeskViewConfigurationViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewCtrl",["$scope","$stateParams","$translate","xAlert","Modal","ZendeskAccount",function(a,b,c,d,e,f){a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.account=b})["catch"](function(a){d.error(a)})},a.updateItem=function(){return f.update({id:b.id},a.account).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){d.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view",{url:"/view/:id",templateUrl:"app/zendesk/view/view.html",controller:"ZendeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.zendesk.view.account",{url:"/account",templateUrl:"app/zendesk/view/view.account.html"})}]),angular.module("xCallyShuttleApp").controller("ZendeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler","ZendeskAccount",function(a,b,c,d,e,f,g){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={},a.item.authType="password"},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){return g.save(a.item).$promise.then(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/zendesk/list")})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.wizard",{url:"/wizard",templateUrl:"app/zendesk/wizard/wizard.html",controller:"ZendeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("ZendeskAccount",["$resource",function(a){return a("/api/zendesk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"},fields:{params:{controller:"fields"},isArray:!0},check:{params:{controller:"check"}}})}]).factory("ZendeskConfiguration",["$resource",function(a){return a("/api/zendesk/accounts/:accountId/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]).factory("ZendeskField",["$resource",function(a){return a("/api/zendesk/accounts/:accountId/configurations/:configurationId/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk",{url:"/zendesk",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").service("application",function(){var a={applications:[{type:null,name:"APPLICATION_QUEUE",value:"Queue"},{type:null,name:"APPLICATION_PLAYBACK",value:"Playback"},{type:null,name:"Dial",value:"Dial"},{type:"internalDial",name:"APPLICATION_INTERNAL_DIAL",value:"Dial"},{type:"externalDial",name:"APPLICATION_EXTERNAL_DIAL",value:"Dial"},{type:null,name:"Cally-Square Project",value:"AGI"},{type:null,name:"GoTo",value:"Goto"},{type:null,name:"Hangup",value:"Hangup"},{type:null,name:"Set",value:"Set"},{type:"custom",name:"Custom",value:"custom"},{type:null,name:"APPLICATION_VOICEMAIL",value:"Voicemail"}],queueOptions:[{value:"C",name:"APPLICATION_QUEUE_OPTION_C"},{value:"c",name:"APPLICATION_QUEUE_OPTION_c"},{value:"d",name:"APPLICATION_QUEUE_OPTION_d"},{value:"F",name:"APPLICATION_QUEUE_OPTION_F"},{value:"h",name:"APPLICATION_QUEUE_OPTION_h"},{value:"H",name:"APPLICATION_QUEUE_OPTION_H"},{value:"n",name:"APPLICATION_QUEUE_OPTION_n"},{value:"i",name:"APPLICATION_QUEUE_OPTION_i"},{value:"I",name:"APPLICATION_QUEUE_OPTION_I"},{value:"r",name:"APPLICATION_QUEUE_OPTION_r"},{value:"R",name:"APPLICATION_QUEUE_OPTION_R"},{value:"t",name:"APPLICATION_QUEUE_OPTION_t"},{value:"T",name:"APPLICATION_QUEUE_OPTION_T"},{value:"w",name:"APPLICATION_QUEUE_OPTION_w"},{value:"W",name:"APPLICATION_QUEUE_OPTION_W"},{value:"k",name:"APPLICATION_QUEUE_OPTION_k"},{value:"K",name:"APPLICATION_QUEUE_OPTION_K"},{value:"x",name:"APPLICATION_QUEUE_OPTION_x"},{value:"X",name:"APPLICATION_QUEUE_OPTION_X"}],audioOptions:[{value:"skip",name:"APPLICATION_PLAYBACK_OPTION_SKIP"},{value:"noanswer",name:"APPLICATION_PLAYBACK_OPTION_NOANSWER"},{value:"j",name:"APPLICATION_PLAYBACK_OPTION_J"},{value:"say",name:"APPLICATION_PLAYBACK_OPTION_SAY"}],hangupCauses:[{value:"",name:"--"},{value:"1",name:"APPLICATION_HANGUP_CAUSE_1"},{value:"16",name:"APPLICATION_HANGUP_CAUSE_16"},{value:"17",name:"APPLICATION_HANGUP_CAUSE_17"},{value:"18",name:"APPLICATION_HANGUP_CAUSE_18"},{value:"21",name:"APPLICATION_HANGUP_CAUSE_21"},{value:"22",name:"APPLICATION_HANGUP_CAUSE_22"},{value:"27",name:"APPLICATION_HANGUP_CAUSE_27"},{value:"38",name:"APPLICATION_HANGUP_CAUSE_38"},{value:"41",name:"APPLICATION_HANGUP_CAUSE_41"}],intTypes:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"custom",name:"APPLICATION_CUSTOM"},{value:"list",name:"APPLICATION_FROM_LIST"}],checkUnderscore:function(a){return 0===a.indexOf("_")?a:"_"+a}};return{application:a}}),angular.module("xCallyShuttleApp").factory("Auth",["$location","$rootScope","$http","User","$cookieStore","$q",function(a,b,c,d,e,f){var g={};return e.get("token")&&(g=d.me()),{login:function(a,h){var i=h||angular.noop,j=f.defer();return c.post("/auth/local",{name:a.name,password:a.password,remember:a.remember}).success(function(a){return e.put("role",a.role),e.put("token",a.token),e.put("userId",a.userId),g=d.me({},function(){b.$broadcast("login")}),j.resolve(a),i()}).error(function(a){return this.logout(),j.reject(a),i(a)}.bind(this)),j.promise},loginWithToken:function(a,c,f){e.put("role",f),e.put("token",a),e.put("userId",c),g=d.me({},function(){b.$broadcast("login")})},logout:function(){c.put("/api/users/"+g.id,{online:!1}).success(function(){e.remove("role"),e.remove("token"),e.remove("userId"),g={},b.$broadcast("logout")}).error(function(a){return a})},createUser:function(a,b){var c=b||angular.noop;return d.save(a,function(b){return e.put("token",b.token),g=d.me(),c(a)},function(a){return this.logout(),c(a)}.bind(this)).$promise},changePassword:function(a,b,c){var e=c||angular.noop;return d.changePassword({id:g.id},{oldPassword:a,newPassword:b},function(a){return e(null,a)},function(a){return e(a)}).$promise},getCurrentUser:function(){return g},isLoggedIn:function(){return g.hasOwnProperty("role")},isLoggedInAsync:function(a){g.hasOwnProperty("$promise")?g.$promise.then(function(){a(!0)})["catch"](function(){a(!1)}):a(g.hasOwnProperty("role")?!0:!1)},isAdmin:function(){return"admin"===(e.get("role")||g.role)},isUser:function(){return"user"===(e.get("role")||g.role)},isAgent:function(){return"agent"===(e.get("role")||g.role)},getRole:function(){return g.role},getToken:function(){return e.get("token")}}}]),angular.module("xCallyShuttleApp").service("automations",function(){var a={mail:{conditions:[{name:"APPLICATION_STATUS",value:"status",type:"select",arr:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",type:"input",operators:[{value:"greater_or_equal",name:"APPLICATION_GTE_TO"},{value:"less_or_equal",name:"APPLICATION_LTE_TO"},{value:"greater",name:"APPLICATION_GREATER_THAN"},{value:"less",name:"APPLICATION_LESS_THAN"}]}],actions:[{name:"APPLICATION_STATUS",value:"status"}]},fax:{conditions:[{name:"APPLICATION_STATUS",value:"status",type:"select",arr:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",type:"input",operators:[{value:"greater_or_equal",name:"APPLICATION_GTE_TO"},{value:"less_or_equal",name:"APPLICATION_LTE_TO"},{value:"greater",name:"APPLICATION_GREATER_THAN"},{value:"less",name:"APPLICATION_LESS_THAN"}]}],actions:[{name:"APPLICATION_STATUS",value:"status"}]}},b=["mail","chat","fax"];return{services:a,channels:b}}),angular.module("xCallyShuttleApp").service("channel",function(){var a=[{name:"Voice",value:"voice"}];return a}),angular.module("xCallyShuttleApp").service("desk_com",function(){var a=[{id:"priority",label:"Priority",custom:!1,data:{choices:[1,2,3,4,5,6,7,8,9,10]}},{id:"status",label:"Status",custom:!1,data:{choices:["new","open","pending","resolved","closed"]}},{id:"type",label:"Type",custom:!1,data:{choices:["chat","twitter","email","qna","facebook","phone"]}}];return{fields:a}}),angular.module("xCallyShuttleApp").controller("FooterController",["$scope","$http",function(a,b){a.year=moment().year(),a.$on("$includeContentLoaded",function(){Layout.initFooter()}),a.initFooter=function(){b.get("/api/settings/info").success(function(b){a.info=b}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("HeaderController",["$scope","$rootScope","$location","$state","$http","$notification","Auth","xAlert","socket","ngAudio","settings","toastr","localStorageService","Agent","SmsReport","MailReport","ChatReport","ChatRoom","xNotification","$timeout","$translate","$window","User","Pause","Action","FaxReport",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){function A(){return a.headerAgent=g.getCurrentUser(),a.readyTimer=1e3*moment().unix(),x.get().$promise.then(function(b){a.headerPauses=b.rows,i.syncUpdates("pause",a.headerPauses)})["finally"](function(){i.socket.on("agent:save",function(b){a.headerAgent.id===b.id&&(_.merge(a.headerAgent,b),b.voicePause&&b.mailPause&&b.chatPause&&b.faxPause&&b.smsPause||(a.readyTimer=1e3*moment().unix()))})})["catch"](function(a){console.log("Error synchronizing agent status:",a)})}function B(a,b,c){return null===b&&(b=50),null===c&&(c="..."),a&&a.length>b?a.substring(0,b-c.length)+c:a}a.moment=moment,a.headerPause=function(b,c,d){return y.save({name:b,agent:a.headerAgent.id,type:c||"DEFAULT PAUSE",data4:c||"DEFAULT PAUSE",channel:d||"all"}).$promise.then(function(){h.show(u.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(u.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})},"agent"===g.getCurrentUser().role&&A(),i.socket.on("report_chat:save",function(a){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play(),v.Notification&&f("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming Chat Visitor!",delay:1e3*a.timeslot});var b="<b>"+u.instant("APPLICATION_FROM")+"</b>: "+a.visitorname+"<br><b>"+u.instant("APPLICATION_EMAIL")+"</b>: "+a.visitoremail;"queue"===a.application&&(b+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+a.queuename),s.show(u.instant("APPLICATION_NEW_CHAT_REQUEST"),b,"chat",1e3*a.timeslot,function(){return q.get({id:a.id,controller1:"accept",controller2:a.uniqueid}).$promise.then(function(){h.show("Chat properly assigned","success")})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_CHAT_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return q.get({id:a.id,controller1:"reject"}).$promise.then(function(){h.show("Chat properly rejected","success")})["catch"](function(a){h.show(a.data.message,"danger")})})}),i.socket.on("user_has_chat_room:save",function(b){var c;return r.get({id:Number(b.ChatRoomId)}).$promise.then(function(b){c=b;var d=_.find(a.workspaces,{id:Number(c.id),type:"chatRoom"});d?d.name=a.getFullnames(c):a.workspaces.push({id:c.id,name:a.getFullnames(c),type:"chatRoom","class":"icon-bubble",unread:1})})["catch"](function(a){console.error(a)})}),i.socket.on("chat_message:save",function(b){var c;if(b.UserId!==g.getCurrentUser().id){var d=_.find(a.workspaces,{id:Number(b.ChatRoomId),type:"chatRoom"});if(!d)return r.get({id:Number(b.ChatRoomId)}).$promise.then(function(b){c=b,a.workspaces.push({id:c.id,name:a.getFullnames(b),type:"chatRoom","class":"icon-bubble",unread:1})})["catch"](function(a){console.error(a)})}}),a.getFullnames=function(a){var b=_.map(a.Users,"fullname");return a.ChatVisitor&&b.unshift(a.ChatVisitor.fullname),_.without(b,g.getCurrentUser().fullname).join(", ")},a.toggleQuickSidebar=function(){k.layout.pageQuickSidebarOpened=!k.layout.pageQuickSidebarOpened,k.layout.pageQuickSidebarOpened||m.remove("chatRoomId")};var C=function(){return v.Notification},D=function(){b.settings.layout.onFocus=!0},E=function(){b.settings.layout.onFocus=!1};v.onfocus=D,v.onblur=E,a.toogleSidebar=function(){k.layout.pageSidebarClosed=!k.layout.pageSidebarClosed,m.set("sidebarClosed",k.layout.pageSidebarClosed)},a.initHeader=function(){var c=j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3");"agent"===g.getCurrentUser().role&&(i.socket.on("report_mail:save",function(c){var d=_.find(a.workspaces,{id:c.roomid,type:"mailRoom"});if(!d){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play();var e="<b>"+u.instant("APPLICATION_ACCOUNT")+"</b>: "+c.accountname+"<br> <b>"+u.instant("APPLICATION_FROM")+"</b>: "+c.from+"<br> <b>"+u.instant("APPLICATION_SUBJECT")+"</b>: "+(B(c.subject,30,"...")||"No subject");"queue"===c.application&&(e+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+c.queuename),s.show(u.instant("APPLICATION_NEW_MAIL_REQUEST"),e,"mail",1e3*c.timeslot,function(){return p.get({id:c.id,controller1:"accept",controller2:c.uniqueid}).$promise.then(function(){var b=_.find(a.workspaces,{id:c.roomid,type:"mailRoom"});b?b.active=!0:a.workspaces.push({id:c.roomid,name:c.subject||"No subject",type:"mailRoom","class":"icon-envelope",active:!0,unread:0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_MAIL_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return p.get({id:c.id,controller1:"reject"}).$promise["catch"](function(a){h.show(a.data.message,"danger")})}),C&&!b.settings.layout.onFocus?f("MAIL CHANNEL",{icon:"assets/images/media/channels/mail64.png",body:"NEW Incoming Mail Message!",delay:1e3*c.timeslot}):console.log("Notification API not supported in your browser")}}),i.socket.on("report_sms:save",function(b){c.play();var d="<b>"+u.instant("APPLICATION_FROM")+"</b>: "+b.accountname+"<br><b>"+u.instant("APPLICATION_SMS")+"</b>: "+b.accountnumber;"queue"===b.application&&(d+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+b.queuename),s.show(u.instant("APPLICATION_NEW_SMS_REQUEST"),d,"sms",1e3*b.timeslot,function(){return o.get({id:b.id,controller1:"accept",controller2:b.uniqueid}).$promise.then(function(){var c=_.find(a.workspaces,{id:b.roomid,type:"smsRoom"});c?c.active=!0:a.workspaces.push({id:b.roomid,name:b.from,type:"smsRoom","class":"glyphicon glyphicon-comment",active:!0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_SMS_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return o.get({id:b.id,controller1:"reject"}).$promise.then(function(){h.show("SMS properly rejected","success")})["catch"](function(a){h.show(a.data.message,"danger")})}),C?f("SMS CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming SMS Message!",delay:1e3*b.timeslot}):console.log("Notification API not supported in your browser")}),i.socket.on("report_fax:save",function(c){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play();var d="<b>"+u.instant("APPLICATION_ACCOUNT")+"</b>: "+c.accountname+"<br> <b>"+u.instant("APPLICATION_PHONE")+"</b>: "+c.from;"queue"===c.application&&(d+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+c.queuename),s.show(u.instant("APPLICATION_NEW_FAX_REQUEST"),d,"fax",1e3*c.timeslot,function(){return z.get({id:c.id,controller1:"accept",controller2:c.uniqueid}).$promise.then(function(){var b=_.find(a.workspaces,{id:c.roomid,type:"faxRoom"});b?b.active=!0:a.workspaces.push({id:c.roomid,name:c.from,type:"faxRoom","class":"icon-paper-plane",active:!0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_FAX_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return z.get({id:c.id,controller1:"reject"}).$promise["catch"](function(a){h.error(a)})}),C&&!b.settings.layout.onFocus?f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*c.timeslot}):console.log("Notification API not supported in your browser")}))},a.logout=function(){return e.get("/auth/local/logout").success(function(){g.logout(),c.path("/login")}).error(function(a){console.error(a)})},a.isActive=function(a){return a===c.path()}}]),angular.module("xCallyShuttleApp").service("interval",function(){var a={months:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"jan",name:"APPLICATION_JANUARY"},{value:"feb",name:"APPLICATION_FEBRUARY"},{value:"mar",name:"APPLICATION_MARCH"},{value:"apr",name:"APPLICATION_APRIL"},{value:"may",name:"APPLICATION_MAY"},{value:"jun",name:"APPLICATION_JUNE"},{value:"jul",name:"APPLICATION_JULY"},{value:"aug",name:"APPLICATION_AUGUST"},{value:"sep",name:"APPLICATION_SEPTEMBER"},{value:"oct",name:"APPLICATION_OCTOBER"},{value:"nov",name:"APPLICATION_NOVEMBER"},{value:"dec",name:"APPLICATION_DECEMBER"}],monthsNumber:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"1",name:"APPLICATION_JANUARY"},{value:"2",name:"APPLICATION_FEBRUARY"},{value:"3",name:"APPLICATION_MARCH"},{value:"4",name:"APPLICATION_APRIL"},{value:"5",name:"APPLICATION_MAY"},{value:"6",name:"APPLICATION_JUNE"},{value:"7",name:"APPLICATION_JULY"},{value:"8",name:"APPLICATION_AUGUST"},{value:"9",name:"APPLICATION_SEPTEMBER"},{value:"10",name:"APPLICATION_OCTOBER"},{value:"11",name:"APPLICATION_NOVEMBER"},{value:"12",name:"APPLICATION_DECEMBER"}],daysOfWeek:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"mon",name:"APPLICATION_MONDAY"},{value:"tue",name:"APPLICATION_TUESDAY"},{value:"wed",name:"APPLICATION_WEDNESDAY"},{value:"thu",name:"APPLICATION_THURSDAY"},{value:"fri",name:"APPLICATION_FRIDAY"},{value:"sat",name:"APPLICATION_SATURDAY"},{value:"sun",name:"APPLICATION_SUNDAY"}],daysOfMonth:["always",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]};return{interval:a}}),angular.module("xCallyShuttleApp").factory("Modal",["$rootScope","$uibModal",function(a,b){function c(c,d){var e=a.$new();return c=c||{},d=d||"modal-default",angular.extend(e,c),b.open({templateUrl:"components/modal/delete.html",windowClass:d,scope:e})}return{confirm:{"delete":function(a){return a=a||angular.noop,function(){var b,d=Array.prototype.slice.call(arguments),e=d.shift();b=c({modal:{dismissable:!0,title:"Confirm Delete",html:"<p>Are you sure you want to delete"+(e?"<strong> "+e+"</strong>":" selected items")+"?</p>",buttons:[{classes:"btn red",text:"Delete",click:function(a){b.close(a)}},{classes:"btn default",text:"Cancel",click:function(a){b.dismiss(a)}}]}},"over-topbar center"),b.result.then(function(b){a.apply(b,d)})}}}}}]),angular.module("xCallyShuttleApp").service("report",["ReportAgent","ReportCall","ReportMailSession","ReportMember","ReportQueue","ReportIntegration","ReportChatSession","ReportSmsSession","Contact","Recording","ReportSquare",function(a,b,c,d,e,f,g,h,i,j,k){var l=[{value:"report_agent_history",resource:a},{value:"report_call_history",resource:b},{value:"report_mail_session_history",resource:c},{value:"report_member_history",resource:d},{value:"report_queue_history",resource:e},{value:"report_integration_history",resource:f},{value:"report_chat_session_history",resource:g},{value:"report_sms_session_history",resource:h},{value:"cm_contacts",resource:i},{value:"voice_recordings",resource:j},{value:"report_square_history",resource:k},{value:"report_square_details_history",resource:k}];return{tables:l}}]),angular.module("xCallyShuttleApp").controller("SidebarController",["$scope","$rootScope","$resource","$location","Auth","Dashboard","Integration","xAlert","$stateParams","socket",function(a,b,c,d,e,f,g,h,i,j){a.Auth=e,a.userModules={},a.$on("$includeContentLoaded",function(){Metronic.init(),Layout.initSidebar()}),a.initSidebar=function(){e.getCurrentUser().Modules.forEach(function(b){a.userModules[b.id]=!0})},a.getSidebarDashboards=function(){return f.get().$promise.then(function(b){a.dashboards=b.rows,j.syncUpdates("dashboard",a.dashboards)})["catch"](function(){h.show("Error loading your dashboards","danger")})},a.getSidebarIntegrations=function(){return e.isAdmin()||a.userModules[19]?g.get().$promise.then(function(b){a.integrations=b.rows,j.syncUpdates("integration",a.integrations)})["catch"](function(a){h.show(a.message,"danger")}):void 0},a.$on("destroy",function(){j.unsyncUpdates("dashboard"),j.unsyncUpdates("integration")})}]),angular.module("xCallyShuttleApp").factory("socket",["$rootScope","$window","socketFactory","Auth",function(a,b,c,d){var e=d.getCurrentUser(),f=io("",{query:"token="+d.getToken()+"&userId="+e.id+"&name="+e.name+"&role="+(e.role||"agent")+"&source=browser",path:"/socket.io-client"}),g=c({ioSocket:f});return a.$on("logout",function(){g&&(g.disconnect(!0),b.location.reload())}),{socket:g,syncUpdates:function(a,b,c){c=c||angular.noop,g.on(a+":save",function(a){var d=_.find(b,{id:a.id}),e=b.indexOf(d),f="created";d?(_.merge(b[e],a),f="updated"):b.unshift(a),c(f,a,b)}),g.on(a+":remove",function(a){var d="deleted";_.remove(b,{id:a.id}),c(d,a,b)})},unsyncUpdates:function(a){g.removeAllListeners(a+":save"),g.removeAllListeners(a+":remove")},syncUpdatesByAttributes:function(a,b,c,d){d=d||angular.noop,g.on(a+":save",function(a){var e=!0;if(_.forIn(b,function(b,c){return a[c]&&a[c]===b?!0:e=!1}),e){var f=_.find(c,{id:a.id}),g=c.indexOf(f),h="created";f?(_.merge(c[g],a),h="updated"):c.unshift(a),d(h,a,c)}}),g.on(a+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},syncMailMessageUpdates:function(a,b,c,d){d=d||angular.noop,g.on(a+":"+b+":save",function(a){var b=_.find(c,{id:a.id}),e=c.indexOf(b),f="created";b?(_.merge(c[e],a),f="updated"):c.unshift(a),d(f,a)}),g.on(a+":"+b+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},unsyncMailMessageUpdates:function(a,b){g.removeAllListeners(a+":"+b+":save"),g.removeAllListeners(a+":"+b+":remove")},syncFaxMessageUpdates:function(a,b,c,d){d=d||angular.noop,g.on(a+":"+b+":save",function(a){var b=_.find(c,{id:a.id}),e=c.indexOf(b),f="created";b?(_.merge(c[e],a),f="updated"):c.unshift(a),d(f,a)}),g.on(a+":"+b+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},unsyncFaxMessageUpdates:function(a,b){g.removeAllListeners(a+":"+b+":save"),g.removeAllListeners(a+":"+b+":remove")}}}]),angular.module("xCallyShuttleApp").service("triggers",["VoiceQueue",function(a){var b={voice:{conditions:[{name:"APPLICATION_QUEUE",value:"queue",type:"select",resource:a,resValue:"name",operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_CALL_STATUS",value:"lastevent",type:"select",arr:[{name:"ringing",value:"called"},{name:"up",value:"connect"},{name:"hangup",value:"complete"},{name:"rejected",value:"rejected"},{name:"abandoned",value:"abandoned"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]}],actions:[{name:"APPLICATION_CONTACT_MANAGER",value:"contactManager"},{name:"APPLICATION_INTEGRATIONS",value:"integration",propertyField:"select"},{name:"APPLICATION_MOTION_BAR",value:"motionbar",propertyField:"select"},{name:"APPLICATION_JSCRIPTY",value:"jscripty",propertyField:"select"},{name:"APPLICATION_URL_FORWARD",value:"urlForward"}]}},c=["voice"];return{services:b, +channels:c}}]),angular.module("xCallyShuttleApp").service("variable",function(){var a=[{title:"Unique ID",name:"uniqueid",group:"voice_queue"},{title:"Caller Number",name:"calleridnum",group:"voice_queue"},{title:"Caller Name",name:"calleridname",group:"voice_queue"},{title:"Queue",name:"queue",group:"voice_queue"},{title:"Called Number",name:"destcalleridnum",group:"voice_queue"},{title:"Called Name",name:"destcalleridname",group:"voice_queue"},{title:"Hold Time",name:"holdtime",group:"voice_queue"},{title:"Talk Time",name:"talktime",group:"voice_queue"},{title:"Connected Time",name:"agentconnectAt",group:"voice_queue"},{title:"Called Time",name:"agentcalledAt",group:"voice_queue"},{title:"DNID",name:"destexten",group:"voice_queue"},{title:"Complete Time",name:"agentcompleteAt",group:"voice_queue"},{title:"No Answer Time",name:"agentringnoanswerAt",group:"voice_queue"}];return a}),function(a,b){angular.module("adf.widget.counter",["adf.provider"]).config(["dashboardProvider",function(a){a.widget("counter",{title:"Single Value",description:"Single Value for db results",templateUrl:"{widgetsPath}/counter/src/view.html",controller:"apiwidgetCounterViewCtrl",edit:{templateUrl:"{widgetsPath}/counter/src/edit.html",controller:"apiwidgetCounterEditCtrl"}})}]).service("apiServiceCounter",["Widget",function(a){return{get:function(b){return a.get({select:b.select,condition:encodeURIComponent(b.condition),table:b.report.replace("_history",""),controller:"counter"}).$promise.then(function(a){return a})["catch"](function(a){console.log(a)})}}}]).controller("apiwidgetCounterEditCtrl",["$scope","report",function(a,b){a.config.reportTables=b.tables,a.config.colors=[{name:"Grey",value:"grey"},{name:"Grey 2",value:"grey-cascade"},{name:"Grey 3",value:"grey-silver"},{name:"Grey 4",value:"grey-steel"},{name:"Grey 5",value:"grey-carrara"},{name:"Grey 6",value:"grey-gallery"},{name:"Blue",value:"blue"},{name:"Blue 2",value:"blue-hoki"},{name:"Blue 3",value:"blue-steel"},{name:"Blue 4",value:"blue-madison"},{name:"Blue 5",value:"blue-chambray"},{name:"Blue 6",value:"blue-ebonyclay"},{name:"Red",value:"red"},{name:"Red 2",value:"red-pink"},{name:"Red 3",value:"red-sunglo"},{name:"Red 4",value:"red-intense"},{name:"Red 5",value:"red-thunderbird"},{name:"Red 6",value:"red-flamingo"},{name:"Green",value:"green"},{name:"Green 2",value:"green-meadow"},{name:"Green 3",value:"green-seagreen"},{name:"Green 4",value:"green-turquoise"},{name:"Green 5",value:"green-haze"},{name:"Green 6",value:"green-jungle"},{name:"Purple",value:"purple"},{name:"Purple 2",value:"purple-plum"},{name:"Purple 3",value:"purple-medium"},{name:"Purple 4",value:"purple-studio"},{name:"Purple 5",value:"purple-wisteria"},{name:"Purple 6",value:"purple-seance"},{name:"Yellow",value:"yellow"},{name:"Yellow 2",value:"yellow-gold"},{name:"Yellow 3",value:"yellow-casablanca"},{name:"Yellow 4",value:"yellow-crusta"},{name:"Yellow 5",value:"yellow-lemon"},{name:"Yellow 6",value:"yellow-saffron"}],a.config.icons=[{name:"Talk bubbles",value:"fa-comments"},{name:"Bar Chart",value:"fa-bar-chart"},{name:"Shopping Cart",value:"fa-shopping-cart"},{name:"Globe",value:"fa-globe"},{name:"Volume Control Phone",value:"fa-volume-control-phone"},{name:"Comments",value:"fa-comments-o"},{name:"Commenting",value:"fa-commenting-o"},{name:"Coffee",value:"fa-coffee"},{name:"Clock",value:"fa-clock-o"},{name:"Envelope",value:"fa-envelope-o"},{name:"Hourglass",value:"fa-hourglass-half"},{name:"Percent",value:"fa-percent"}],a.config.select=a.config.select?a.config.select:"COUNT(*)",a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE"}]).controller("apiwidgetCounterViewCtrl",["$scope","$interval","apiServiceCounter",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.condition=a.config.condition?a.config.condition:null,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE",a.counterApiCall=function(){a.config.report&&c.get(a.config).then(function(b){b?b.result&&b.result.length>1||_.keys(b.result[0]).length>1?(a.tooManyResults=!0,a.result=null):(a.tooManyResults=!1,null!==_.values(b.result[0])[0]?a.result=_.values(b.result[0])[0].toString():a.result="--"):a.result=null})},a.counterApiCall();var d=b(function(){a.counterApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.counter").run(["$templateCache",function(a){a.put("{widgetsPath}/counter/src/edit.html","<form role=form><div class=form-group><label for=select>Select</label> <input type=text class=form-control id=condition ng-model=config.select placeholder=Select></div><div class=form-group><label class=control-label>From</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder=From>{{'APPLICATION_'+$select.selected.value.toUpperCase() | translate}}</ui-select-match><ui-select-choices repeat=\"table.value as table in config.reportTables | filter: $select.search\"><div ng-bind-html=\"'APPLICATION_'+table.value.toUpperCase() | translate | highlight: $select.search\"></div></ui-select-choices></ui-select></div><div class=form-group><label for=condition>Where</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder=Where></div><div class=form-group><label for=condition>{{'APPLICATION_REFRESH_TIMEOUT' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder=\"{{'APPLICATION_REFRESH_TIMEOUT' | translate}}\" min=1></div><div class=form-group><label class=control-label>{{'APPLICATION_WIDGET_COLOR' | translate}}</label><ui-select data-ng-model=config.color name=color theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_WIDGET_COLOR' | translate }}\"><div data-ng-class=\"'bg-'+$select.selected.value\"> </div></ui-select-match><ui-select-choices repeat=\"color.value as color in config.colors | filter: $select.search\"><div data-ng-class=\"'bg-'+color.value\"> </div></ui-select-choices></ui-select></div><div class=form-group><label class=control-label>{{'APPLICATION_WIDGET_ICON' | translate}}</label><ui-select data-ng-model=config.icon name=icon theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_WIDGET_ICON' | translate }}\"><i class=fa ng-class=$select.selected.value></i></ui-select-match><ui-select-choices repeat=\"icon.value as icon in config.icons | filter: $select.search\"><i class=fa ng-class=icon.value></i></ui-select-choices></ui-select></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_DETAILS' | translate}}</label> <input type=text class=form-control id=details ng-model=config.details maxlength=30 placeholder=\"{{'APPLICATION_WIDGET_DETAILS' | translate}}\"></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_LINK' | translate}}</label> <input type=text class=form-control id=link ng-model=config.link placeholder=http://yourlink></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_LINK_TEXT' | translate}}</label> <input type=text class=form-control id=linkText ng-model=config.linkText maxlength=30 placeholder=\"{{'APPLICATION_WIDGET_LINK_TEXT' | translate}}\"></div></form>"),a.put("{widgetsPath}/counter/src/view.html",'<div class=dashboard-stat ng-class=config.color ng-if=result><div class=visual><i class=fa ng-class=config.icon></i></div><div class=details><div class=number>{{result}}</div><div class=desc>{{config.details}}</div></div><a class=more href={{config.link}}>{{config.linkText}} <i class="m-icon-swapright m-icon-white"></i></a></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=tooManyResults><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_TOO_MANY_RESULTS\' | translate}}</div><div class="alert alert-danger" role=alert ng-if="!result && !tooManyResults"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_QUERY_NOT_VALID\' | translate}}</div>')}])}(window),function(a,b){angular.module("adf.widget.pie-chart",["adf.provider"]).config(["dashboardProvider",function(a){a.widget("pie-chart",{title:"Pie-Chart",description:"Display a pie-chart starting from DB values",templateUrl:"{widgetsPath}/pie-chart/src/view.html",controller:"apiWidgetPieChartViewCtrl",edit:{templateUrl:"{widgetsPath}/pie-chart/src/edit.html",controller:"apiWidgetPieChartEditCtrl"}})}]).service("apiServicePieChart",["Widget",function(a){return{get:function(b){return a.get({condition:encodeURIComponent(b.condition),table:b.report.replace("_history",""),fields:b.fields,controller:"piechart"}).$promise.then(function(a){return a})["catch"](function(a){console.log(a)})}}}]).controller("apiWidgetPieChartEditCtrl",["$scope","report",function(a,b){function c(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=b.tables,a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){c().push({})},a.removeField=function(a){c().splice(a,1)}}]).controller("apiWidgetPieChartViewCtrl",["$scope","$interval","apiServicePieChart",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.pieChartApiCall=function(){a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){if(b&&b.result&&1===b.result.length){a.labels=[],a.data=[];for(var c in b.result[0])a.labels.push(c),a.data.push(b.result[0][c])}else a.labels=[],a.data=[]})},a.pieChartApiCall();var d=b(function(){a.pieChartApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.pie-chart").run(["$templateCache",function(a){a.put("{widgetsPath}/pie-chart/src/edit.html","<form role=form><div class=form-group><label class=control-label>{{'APPLICATION_REPORT' | translate}}</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_REPORT' | translate }}\">{{'APPLICATION_'+$select.selected.value.toUpperCase() | translate}}</ui-select-match><ui-select-choices repeat=\"table.value as table in config.reportTables | filter: $select.search\"><div ng-bind-html=\"'APPLICATION_'+table.value.toUpperCase() | translate | highlight: $select.search\"></div></ui-select-choices></ui-select></div><div><label class=control-label>{{'APPLICATION_FIELDS' | translate}}</label></div><div class=padding-bottom ng-repeat=\"field in config.fields\"><div class=form-group><div class=input-group><input type=text class=form-control ng-model=field.column> <span class=input-group-addon>as</span> <input type=text class=form-control ng-model=field.alias> <span class=input-group-btn ng-if=\"config.fields.length>1\"><button class=\"btn btn-danger\" type=button data-ng-click=removeField($index)><i class=\"fa fa-times\"></i> {{'APPLICATION_REMOVE' | translate}}</button></span></div></div></div><button type=button class=\"btn btn-sm green mbottom20\" ng-click=addField()><i class=\"fa fa-plus\"></i> {{'APPLICATION_ADD_FIELD' | translate}}</button><div class=form-group><label for=condition>{{'APPLICATION_CONDITION' | translate}}</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder=\"{{'APPLICATION_CONDITION' | translate}}\"></div><div class=form-group><label for=condition>{{'APPLICATION_REFRESH_TIMEOUT' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder=\"{{'APPLICATION_REFRESH_TIMEOUT' | translate}}\" min=1></div></form>"),a.put("{widgetsPath}/pie-chart/src/view.html",'<div ng-if=labels.length ng-style=config.style><canvas id=doughnut class="chart chart-doughnut" chart-data=data chart-labels=labels legend=true></canvas></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!labels.length><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_VALID_CONDITION\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!labels.length><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_ONE_VALID_METRIC_AND_CHECK_OTHER\' | translate}}</div>')}])}(window),function(a,b){angular.module("adf.widget.table",["adf.provider"]).value("apiServiceUrlTable","/api/widgets/table").config(["dashboardProvider",function(a){a.widget("table",{title:"Table",description:"Show tabbed results from db",templateUrl:"{widgetsPath}/table/src/view.html",controller:"apiWidgetTableViewCtrl",edit:{templateUrl:"{widgetsPath}/table/src/edit.html",controller:"apiWidgetTableEditCtrl"}})}]).service("apiServiceTable",["$q","$http","apiServiceUrlTable",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetTableEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetTableViewCtrl",["$scope","$interval","apiServiceTable",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.style={"max-height":a.config.height+"px",overflow:"scroll"},a.tableApiCall=function(){a.config.condition&&a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){a.results=b})},a.tableApiCall();var d=b(function(){a.tableApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.table").run(["$templateCache",function(a){a.put("{widgetsPath}/table/src/edit.html",'<form role=form><div class=form-group><label class=control-label>{{\'APPLICATION_REPORT\' | translate}}</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match><ui-select-choices repeat="report.value as report in config.reportTables | filter: $select.search"><div ng-bind-html="report.name | highlight: $select.search"></div></ui-select-choices></ui-select></div><div><label class=control-label>{{\'APPLICATION_METRICS\' | translate}}</label></div><div class=padding-bottom ng-repeat="field in config.fields"><div class=form-group><div class=input-group><input type=text class=form-control ng-model=field.column> <span class=input-group-addon>as</span> <input type=text class=form-control ng-model=field.alias> <span class=input-group-btn ng-if="config.fields.length>1"><button class="btn btn-danger" type=button data-ng-click=removeField($index)><i class="fa fa-times"></i> {{\'APPLICATION_REMOVE\' | translate}}</button></span></div></div></div><button type=button class="btn btn-sm green mbottom20" ng-click=addField()><i class="fa fa-plus"></i> {{\'APPLICATION_ADD_FIELD\' | translate}}</button><div class=form-group><label for=condition>{{\'APPLICATION_CONDITION\' | translate}}</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder="{{\'APPLICATION_CONDITION\' | translate}}"></div><div class=form-group><label for=condition>{{\'APPLICATION_REFRESH_TIMEOUT\' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder="{{\'APPLICATION_REFRESH_TIMEOUT\' | translate}}" min=1></div><div class=form-group><label for=condition>{{\'APPLICATION_WIDGET_MAX_HEIGHT\' | translate}}</label> <input type=number class=form-control id=height ng-model=config.height placeholder="{{\'APPLICATION_WIDGET_MAX_HEIGHT\' | translate}}" min=350></div></form>'),a.put("{widgetsPath}/table/src/view.html",'<div ng-if=results ng-style=config.style><table st-table=results class="table table-striped table-bordered table-hover"><div class=table-responsive><thead><tr><th colspan={{config.fields.length}}><div class=row><div class=col-md-6></div><div class=col-md-6><div class="input-group input-medium pull-right"><input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class=form-control type=search> <span class=input-group-addon><i class="fa fa-search"></i></span></div></div></div></th></tr><tr><th ng-repeat="field in config.fields">{{field.alias}}</th></tr></thead><tbody><tr data-ng-repeat="result in results" class=animate-repeat><td ng-repeat="field in config.fields">{{result[field.alias]}}</td></tr><tr data-ng-hide=results.length><td colspan={{config.fields.length}} style=text-align:center;><i>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</i></td></tr></tbody><tfoot><tr><td colspan={{config.fields.length}} class=text-center><div st-pagination class=pagination st-items-by-page=10 st-displayed-pages=3></div></td></tr></tfoot></div></table></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!results><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_VALID_CONDITION\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!results><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_ONE_VALID_FIELD_AND_CHECK_OTHER\' | translate}}</div>')}])}(window),function(){window.CKEDITOR&&window.CKEDITOR.dom||(window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,b={timestamp:"G4CF",version:"4.5.9 (Standard)",revision:"a35abfe",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var b=window.CKEDITOR_BASEPATH||"";if(!b)for(var c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var e=c[d].src.match(a);if(e){b=e[1];break}}if(-1==b.indexOf(":/")&&"//"!=b.slice(0,2)&&(b=0===b.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+b:location.href.match(/^[^\?]*\/(?:)/)[0]+b),!b)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return b}(),getUrl:function(a){return-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a),this.timestamp&&"/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a)&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp),a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",a,!1),b()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),b())}catch(c){}}function b(){for(var a;a=c.shift();)a()}var c=[];return function(b){function d(){try{document.documentElement.doScroll("left")}catch(b){return void setTimeout(d,1)}a()}if(c.push(b),"complete"===document.readyState&&setTimeout(a,1),1==c.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",a),window.attachEvent("onload",a),b=!1;try{b=!window.frameElement}catch(e){}document.documentElement.doScroll&&b&&d()}}}()},c=window.CKEDITOR_GETURL;if(c){var d=b.getUrl;b.getUrl=function(a){return c.call(b,a)||d.call(b,a)}}return b}()),CKEDITOR.event||(CKEDITOR.event=function(){},CKEDITOR.event.implementOn=function(a){var b,c=CKEDITOR.event.prototype;for(b in c)null==a[b]&&(a[b]=c[b])},CKEDITOR.event.prototype=function(){function a(a){var d=b(this);return d[a]||(d[a]=new c(a))}var b=function(a){return a=a.getPrivate&&a.getPrivate()||a._||(a._={}),a.events||(a.events={})},c=function(a){this.name=a,this.listeners=[]};return c.prototype={getListenerIndex:function(a){for(var b=0,c=this.listeners;b<c.length;b++)if(c[b].fn==a)return b;return-1}},{define:function(b,c){var d=a.call(this,b);CKEDITOR.tools.extend(d,c,!0)},on:function(b,c,d,e,f){function g(a,f,g,i){return a={name:b,sender:this,editor:a,data:f,listenerData:e,stop:g,cancel:i,removeListener:h},!1===c.call(d,a)?!1:a.data}function h(){j.removeListener(b,c)}var i=a.call(this,b);if(0>i.getListenerIndex(c)){i=i.listeners,d||(d=this),isNaN(f)&&(f=10);var j=this;g.fn=c,g.priority=f;for(var k=i.length-1;k>=0;k--)if(i[k].priority<=f)return i.splice(k+1,0,g),{removeListener:h};i.unshift(g)}return{removeListener:h}},once:function(){var a=Array.prototype.slice.call(arguments),b=a[1];return a[1]=function(a){return a.removeListener(),b.apply(this,arguments)},this.on.apply(this,a)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);return CKEDITOR.event.useCapture=0,a},fire:function(){var a=0,c=function(){a=1},d=0,e=function(){d=1};return function(f,g,h){var i=b(this)[f];f=a;var j=d;if(a=d=0,i){var k=i.listeners;if(k.length)for(var l,k=k.slice(0),m=0;m<k.length;m++){if(i.errorProof)try{l=k[m].call(this,h,g,c,e)}catch(n){}else l=k[m].call(this,h,g,c,e);if(!1===l?d=1:"undefined"!=typeof l&&(g=l),a||d)break}}return g=d?!1:"undefined"==typeof g?!0:g,a=f,d=j,g}}(),fireOnce:function(a,c,d){return c=this.fire(a,c,d),delete b(this)[a],c},removeListener:function(a,c){var d=b(this)[a];if(d){var e=d.getListenerIndex(c);e>=0&&d.listeners.splice(e,1)}},removeAllListeners:function(){var a,c=b(this);for(a in c)delete c[a]},hasListeners:function(a){return(a=b(this)[a])&&0<a.listeners.length}}}()),CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]),CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,b){return a in{instanceReady:1,loaded:1}&&(this[a]=!0),CKEDITOR.event.prototype.fire.call(this,a,b,this)},CKEDITOR.editor.prototype.fireOnce=function(a,b){return a in{instanceReady:1,loaded:1}&&(this[a]=!0),CKEDITOR.event.prototype.fireOnce.call(this,a,b,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype)),CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),b=a.match(/edge[ \/](\d+.?\d*)/),c=-1<a.indexOf("trident/"),c=!(!b&&!c),c={ie:c,edge:!!b,webkit:!c&&-1<a.indexOf(" applewebkit/"),air:-1<a.indexOf(" adobeair/"),mac:-1<a.indexOf("macintosh"),quirks:"BackCompat"==document.compatMode&&(!document.documentMode||10>document.documentMode),mobile:-1<a.indexOf("mobile"),iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return!1;var a=document.domain,b=window.location.hostname;return a!=b&&a!="["+b+"]"},secure:"https:"==location.protocol};c.gecko="Gecko"==navigator.product&&!c.webkit&&!c.ie,c.webkit&&(-1<a.indexOf("chrome")?c.chrome=!0:c.safari=!0);var d=0;return c.ie&&(d=b?parseFloat(b[1]):c.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode,c.ie9Compat=9==d,c.ie8Compat=8==d,c.ie7Compat=7==d,c.ie6Compat=7>d||c.quirks),c.gecko&&(b=a.match(/rv:([\d\.]+)/))&&(b=b[1].split("."),d=1e4*b[0]+100*(b[1]||0)+1*(b[2]||0)),c.air&&(d=parseFloat(a.match(/ adobeair\/(\d+)/)[1])),c.webkit&&(d=parseFloat(a.match(/ applewebkit\/(\d+)/)[1])),c.version=d,c.isCompatible=!(c.ie&&7>d||c.gecko&&4e4>d||c.webkit&&534>d),c.hidpi=2<=window.devicePixelRatio,c.needsBrFiller=c.gecko||c.webkit||c.ie&&d>10,c.needsNbspFiller=c.ie&&11>d,c.cssClass="cke_browser_"+(c.ie?"ie":c.gecko?"gecko":c.webkit?"webkit":"unknown"),c.quirks&&(c.cssClass+=" cke_browser_quirks"),c.ie&&(c.cssClass+=" cke_browser_ie"+(c.quirks?"6 cke_browser_iequirks":c.version)),c.air&&(c.cssClass+=" cke_browser_air"),c.iOS&&(c.cssClass+=" cke_browser_ios"),c.hidpi&&(c.cssClass+=" cke_hidpi"),c}()),"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR),CKEDITOR.loadFullCore=function(){if("basic_ready"!=CKEDITOR.status)CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript",a.src=CKEDITOR.basePath+"ckeditor.js",document.getElementsByTagName("head")[0].appendChild(a)}},CKEDITOR.loadFullCoreTimeout=0,CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)},function(){CKEDITOR.domReady(function(){var a=CKEDITOR.loadFullCore,b=CKEDITOR.loadFullCoreTimeout;a&&(CKEDITOR.status="basic_ready",a&&a._load?a():b&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},1e3*b))})}(),CKEDITOR.status="basic_loaded"}(),CKEDITOR.VERBOSITY_WARN=1,CKEDITOR.VERBOSITY_ERROR=2,CKEDITOR.verbosity=CKEDITOR.VERBOSITY_WARN|CKEDITOR.VERBOSITY_ERROR,CKEDITOR.warn=function(a,b){CKEDITOR.verbosity&CKEDITOR.VERBOSITY_WARN&&CKEDITOR.fire("log",{type:"warn",errorCode:a,additionalData:b})},CKEDITOR.error=function(a,b){CKEDITOR.verbosity&CKEDITOR.VERBOSITY_ERROR&&CKEDITOR.fire("log",{type:"error",errorCode:a,additionalData:b})},CKEDITOR.on("log",function(a){if(window.console&&window.console.log){var b=console[a.data.type]?a.data.type:"log",c=a.data.errorCode;(a=a.data.additionalData)?console[b]("[CKEDITOR] Error code: "+c+".",a):console[b]("[CKEDITOR] Error code: "+c+"."),console[b]("[CKEDITOR] For more information about this error go to http://docs.ckeditor.com/#!/guide/dev_errors-section-"+c)}},null,null,999),CKEDITOR.dom={},function(){var a=[],b=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.ie?"-ms-":"",c=/&/g,d=/>/g,e=/</g,f=/"/g,g=/&(lt|gt|amp|quot|nbsp|shy|#\d{1,5});/g,h={lt:"<",gt:">",amp:"&",quot:'"',nbsp:"Â ",shy:"ÂÂ"},i=function(a,b){return"#"==b[0]?String.fromCharCode(parseInt(b.slice(1),10)):h[b]};CKEDITOR.on("reset",function(){a=[]}),CKEDITOR.tools={arrayCompare:function(a,b){if(!a&&!b)return!0;if(!a||!b||a.length!=b.length)return!1;for(var c=0;c<a.length;c++)if(a[c]!=b[c])return!1;return!0},getIndex:function(a,b){for(var c=0;c<a.length;++c)if(b(a[c]))return c;return-1},clone:function(a){var b;if(a&&a instanceof Array){b=[];for(var c=0;c<a.length;c++)b[c]=CKEDITOR.tools.clone(a[c]);return b}if(null===a||"object"!=typeof a||a instanceof String||a instanceof Number||a instanceof Boolean||a instanceof Date||a instanceof RegExp||a.nodeType||a.window===a)return a;b=new a.constructor;for(c in a)b[c]=CKEDITOR.tools.clone(a[c]);return b},capitalize:function(a,b){return a.charAt(0).toUpperCase()+(b?a.slice(1):a.slice(1).toLowerCase())},extend:function(a){var b,c,d=arguments.length;"boolean"==typeof(b=arguments[d-1])?d--:"boolean"==typeof(b=arguments[d-2])&&(c=arguments[d-1],d-=2);for(var e=1;d>e;e++){var f,g=arguments[e];for(f in g)!0!==b&&null!=a[f]||(!c||f in c)&&(a[f]=g[f])}return a},prototypedCopy:function(a){var b=function(){};return b.prototype=a,new b},copy:function(a){var b,c={};for(b in a)c[b]=a[b];return c},isArray:function(a){return"[object Array]"==Object.prototype.toString.call(a)},isEmpty:function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0},cssVendorPrefix:function(a,c,d){return d?b+a+":"+c+";"+a+":"+c:(d={},d[a]=c,d[b+a]=c,d)},cssStyleToDomStyle:function(){var a=document.createElement("div").style,b="undefined"!=typeof a.cssFloat?"cssFloat":"undefined"!=typeof a.styleFloat?"styleFloat":"float";return function(a){return"float"==a?b:a.replace(/-./g,function(a){return a.substr(1).toUpperCase()})}}(),buildStyleHtml:function(a){a=[].concat(a);for(var b,c=[],d=0;d<a.length;d++)(b=a[d])&&(/@import|[{}]/.test(b)?c.push("<style>"+b+"</style>"):c.push('<link type="text/css" rel=stylesheet href="'+b+'">'));return c.join("")},htmlEncode:function(a){return void 0===a||null===a?"":String(a).replace(c,"&").replace(d,">").replace(e,"<")},htmlDecode:function(a){return a.replace(g,i)},htmlEncodeAttr:function(a){return CKEDITOR.tools.htmlEncode(a).replace(f,""")},htmlDecodeAttr:function(a){return CKEDITOR.tools.htmlDecode(a)},transformPlainTextToHtml:function(a,b){var c=b==CKEDITOR.ENTER_BR,d=this.htmlEncode(a.replace(/\r\n/g,"\n")),d=d.replace(/\t/g," "),e=b==CKEDITOR.ENTER_P?"p":"div";if(!c){var f=/\n{2}/g;if(f.test(d))var g="<"+e+">",h="</"+e+">",d=g+d.replace(f,function(){return h+g})+h}return d=d.replace(/\n/g,"<br>"),c||(d=d.replace(new RegExp("<br>(?=</"+e+">)"),function(a){return CKEDITOR.tools.repeat(a,2)})),d=d.replace(/^ | $/g," "),d=d.replace(/(>|\s) /g,function(a,b){return b+" "}).replace(/ (?=<)/g," ")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},getUniqueId:function(){for(var a="e",b=0;8>b;b++)a+=Math.floor(65536*(1+Math.random())).toString(16).substring(1);return a},override:function(a,b){var c=b(a);return c.prototype=a.prototype,c},setTimeout:function(a,b,c,d,e){return e||(e=window),c||(c=e),e.setTimeout(function(){d?a.apply(c,[].concat(d)):a.apply(c)},b||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(b){return b.replace(a,"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(b){return b.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(b){return b.replace(a,"")}}(),indexOf:function(a,b){if("function"==typeof b){for(var c=0,d=a.length;d>c;c++)if(b(a[c]))return c}else{if(a.indexOf)return a.indexOf(b);for(c=0,d=a.length;d>c;c++)if(a[c]===b)return c}return-1},search:function(a,b){var c=CKEDITOR.tools.indexOf(a,b);return c>=0?a[c]:null},bind:function(a,b){return function(){return a.apply(b,arguments)}},createClass:function(a){var b=a.$,c=a.base,d=a.privates||a._,e=a.proto;if(a=a.statics,!b&&(b=function(){c&&this.base.apply(this,arguments)}),d)var f=b,b=function(){var a,b=this._||(this._={});for(a in d){var c=d[a];b[a]="function"==typeof c?CKEDITOR.tools.bind(c,this):c}f.apply(this,arguments)};return c&&(b.prototype=this.prototypedCopy(c.prototype),b.prototype.constructor=b,b.base=c,b.baseProto=c.prototype,b.prototype.base=function(){this.base=c.prototype.base,c.apply(this,arguments),this.base=arguments.callee}),e&&this.extend(b.prototype,e,!0),a&&this.extend(b,a,!0),b},addFunction:function(b,c){return a.push(function(){return b.apply(c||this,arguments)})-1},removeFunction:function(b){a[b]=null},callFunction:function(b){var c=a[b];return c&&c.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a,b=/^-?\d+\.?\d*px$/;return function(c){return a=CKEDITOR.tools.trim(c+"")+"px",b.test(a)?a:c||""}}(),convertToPx:function(){var a;return function(b){ +return a||(a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;margin:0px;padding:0px;border:0px;"></div>',CKEDITOR.document),CKEDITOR.document.getBody().append(a)),/%$/.test(b)?b:(a.setStyle("width",b),a.$.clientWidth)}}(),repeat:function(a,b){return Array(b+1).join(a)},tryThese:function(){for(var a,b=0,c=arguments.length;c>b;b++){var d=arguments[b];try{a=d();break}catch(e){}}return a},genKey:function(){return Array.prototype.slice.call(arguments).join("-")},defer:function(a){return function(){var b=arguments,c=this;window.setTimeout(function(){a.apply(c,b)},0)}},normalizeCssText:function(a,b){var c,d=[],e=CKEDITOR.tools.parseCssText(a,!0,b);for(c in e)d.push(c+":"+e[c]);return d.sort(),d.length?d.join(";")+";":""},convertRgbToHex:function(a){return a.replace(/(?:rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\))/gi,function(a,b,c,d){for(a=[b,c,d],b=0;3>b;b++)a[b]=("0"+parseInt(a[b],10).toString(16)).slice(-2);return"#"+a.join("")})},parseCssText:function(a,b,c){var d={};return c&&(c=new CKEDITOR.dom.element("span"),c.setAttribute("style",a),a=CKEDITOR.tools.convertRgbToHex(c.getAttribute("style")||"")),a&&";"!=a?(a.replace(/"/g,'"').replace(/\s*([^:;\s]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,e){b&&(c=c.toLowerCase(),"font-family"==c&&(e=e.toLowerCase().replace(/["']/g,"").replace(/\s*,\s*/g,",")),e=CKEDITOR.tools.trim(e)),d[c]=e}),d):d},writeCssText:function(a,b){var c,d=[];for(c in a)d.push(c+":"+a[c]);return b&&d.sort(),d.join("; ")},objectCompare:function(a,b,c){var d;if(!a&&!b)return!0;if(!a||!b)return!1;for(d in a)if(a[d]!=b[d])return!1;if(!c)for(d in b)if(a[d]!=b[d])return!1;return!0},objectKeys:function(a){var b,c=[];for(b in a)c.push(b);return c},convertArrayToObject:function(a,b){var c={};1==arguments.length&&(b=!0);for(var d=0,e=a.length;e>d;++d)c[a[d]]=b;return c},fixDomain:function(){for(var a;;)try{a=window.parent.document.domain;break}catch(b){if(a=a?a.replace(/.+?(?:\.|$)/,""):document.domain,!a)break;document.domain=a}return!!a},eventsBuffer:function(a,b,c){function d(){f=(new Date).getTime(),e=!1,c?b.call(c):b()}var e,f=0;return{input:function(){if(!e){var b=(new Date).getTime()-f;a>b?e=setTimeout(d,a-b):d()}},reset:function(){e&&clearTimeout(e),e=f=0}}},enableHtml5Elements:function(a,b){for(var c,d="abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video".split(" "),e=d.length;e--;)c=a.createElement(d[e]),b&&a.appendChild(c)},checkIfAnyArrayItemMatches:function(a,b){for(var c=0,d=a.length;d>c;++c)if(a[c].match(b))return!0;return!1},checkIfAnyObjectPropertyMatches:function(a,b){for(var c in a)if(c.match(b))return!0;return!1},transparentImageData:"data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==",getCookie:function(a){a=a.toLowerCase();for(var b,c,d=document.cookie.split(";"),e=0;e<d.length;e++)if(b=d[e].split("="),c=decodeURIComponent(CKEDITOR.tools.trim(b[0]).toLowerCase()),c===a)return decodeURIComponent(1<b.length?b[1]:"");return null},setCookie:function(a,b){document.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+";path=/"},getCsrfToken:function(){var a=CKEDITOR.tools.getCookie("ckCsrfToken");if(!a||40!=a.length){var a=[],b="";if(window.crypto&&window.crypto.getRandomValues)a=new Uint8Array(40),window.crypto.getRandomValues(a);else for(var c=0;40>c;c++)a.push(Math.floor(256*Math.random()));for(c=0;c<a.length;c++)var d="abcdefghijklmnopqrstuvwxyz0123456789".charAt(a[c]%36),b=b+(.5<Math.random()?d.toUpperCase():d);a=b,CKEDITOR.tools.setCookie("ckCsrfToken",a)}return a}}}(),CKEDITOR.dtd=function(){var a=CKEDITOR.tools.extend,b=function(a,b){for(var c=CKEDITOR.tools.clone(a),d=1;d<arguments.length;d++){b=arguments[d];for(var e in b)delete c[e]}return c},c={},d={},e={address:1,article:1,aside:1,blockquote:1,details:1,div:1,dl:1,fieldset:1,figure:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,hr:1,main:1,menu:1,nav:1,ol:1,p:1,pre:1,section:1,table:1,ul:1},f={command:1,link:1,meta:1,noscript:1,script:1,style:1},g={},h={"#":1},i={center:1,dir:1,noframes:1};return a(c,{a:1,abbr:1,area:1,audio:1,b:1,bdi:1,bdo:1,br:1,button:1,canvas:1,cite:1,code:1,command:1,datalist:1,del:1,dfn:1,em:1,embed:1,i:1,iframe:1,img:1,input:1,ins:1,kbd:1,keygen:1,label:1,map:1,mark:1,meter:1,noscript:1,object:1,output:1,progress:1,q:1,ruby:1,s:1,samp:1,script:1,select:1,small:1,span:1,strong:1,sub:1,sup:1,textarea:1,time:1,u:1,"var":1,video:1,wbr:1},h,{acronym:1,applet:1,basefont:1,big:1,font:1,isindex:1,strike:1,style:1,tt:1}),a(d,e,c,i),b={a:b(c,{a:1,button:1}),abbr:c,address:d,area:g,article:d,aside:d,audio:a({source:1,track:1},d),b:c,base:g,bdi:c,bdo:c,blockquote:d,body:d,br:g,button:b(c,{a:1,button:1}),canvas:c,caption:d,cite:c,code:c,col:g,colgroup:{col:1},command:g,datalist:a({option:1},c),dd:d,del:c,details:a({summary:1},d),dfn:c,div:d,dl:{dt:1,dd:1},dt:d,em:c,embed:g,fieldset:a({legend:1},d),figcaption:d,figure:a({figcaption:1},d),footer:d,form:d,h1:c,h2:c,h3:c,h4:c,h5:c,h6:c,head:a({title:1,base:1},f),header:d,hgroup:{h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},hr:g,html:a({head:1,body:1},d,f),i:c,iframe:h,img:g,input:g,ins:c,kbd:c,keygen:g,label:c,legend:c,li:d,link:g,main:d,map:d,mark:c,menu:a({li:1},d),meta:g,meter:b(c,{meter:1}),nav:d,noscript:a({link:1,meta:1,style:1},c),object:a({param:1},c),ol:{li:1},optgroup:{option:1},option:h,output:c,p:c,param:g,pre:c,progress:b(c,{progress:1}),q:c,rp:c,rt:c,ruby:a({rp:1,rt:1},c),s:c,samp:c,script:h,section:d,select:{optgroup:1,option:1},small:c,source:g,span:c,strong:c,style:h,sub:c,summary:a({h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},c),sup:c,table:{caption:1,colgroup:1,thead:1,tfoot:1,tbody:1,tr:1},tbody:{tr:1},td:d,textarea:h,tfoot:{tr:1},th:d,thead:{tr:1},time:b(c,{time:1}),title:h,tr:{th:1,td:1},track:g,u:c,ul:{li:1},"var":c,video:a({source:1,track:1},d),wbr:g,acronym:c,applet:a({param:1},d),basefont:g,big:c,center:d,dialog:g,dir:{li:1},font:c,isindex:g,noframes:d,strike:c,tt:c},a(b,{$block:a({audio:1,dd:1,dt:1,figcaption:1,li:1,video:1},e,i),$blockLimit:{article:1,aside:1,audio:1,body:1,caption:1,details:1,dir:1,div:1,dl:1,fieldset:1,figcaption:1,figure:1,footer:1,form:1,header:1,hgroup:1,main:1,menu:1,nav:1,ol:1,section:1,table:1,td:1,th:1,tr:1,ul:1,video:1},$cdata:{script:1,style:1},$editable:{address:1,article:1,aside:1,blockquote:1,body:1,details:1,div:1,fieldset:1,figcaption:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,main:1,nav:1,p:1,pre:1,section:1},$empty:{area:1,base:1,basefont:1,br:1,col:1,command:1,dialog:1,embed:1,hr:1,img:1,input:1,isindex:1,keygen:1,link:1,meta:1,param:1,source:1,track:1,wbr:1},$inline:c,$list:{dl:1,ol:1,ul:1},$listItem:{dd:1,dt:1,li:1},$nonBodyContent:a({body:1,head:1,html:1},b.head),$nonEditable:{applet:1,audio:1,button:1,embed:1,iframe:1,map:1,object:1,option:1,param:1,script:1,textarea:1,video:1},$object:{applet:1,audio:1,button:1,hr:1,iframe:1,img:1,input:1,object:1,select:1,table:1,textarea:1,video:1},$removeEmpty:{abbr:1,acronym:1,b:1,bdi:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,mark:1,meter:1,output:1,q:1,ruby:1,s:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,time:1,tt:1,u:1,"var":1},$tabIndex:{a:1,area:1,button:1,input:1,object:1,select:1,textarea:1},$tableContent:{caption:1,col:1,colgroup:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1},$transparent:{a:1,audio:1,canvas:1,del:1,ins:1,map:1,noscript:1,object:1,video:1},$intermediate:{caption:1,colgroup:1,dd:1,dt:1,figcaption:1,legend:1,li:1,optgroup:1,option:1,rp:1,rt:1,summary:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1}}),b}(),CKEDITOR.dom.event=function(a){this.$=a},CKEDITOR.dom.event.prototype={getKey:function(){return this.$.keyCode||this.$.which},getKeystroke:function(){var a=this.getKey();return(this.$.ctrlKey||this.$.metaKey)&&(a+=CKEDITOR.CTRL),this.$.shiftKey&&(a+=CKEDITOR.SHIFT),this.$.altKey&&(a+=CKEDITOR.ALT),a},preventDefault:function(a){var b=this.$;b.preventDefault?b.preventDefault():b.returnValue=!1,a&&this.stopPropagation()},stopPropagation:function(){var a=this.$;a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},getTarget:function(){var a=this.$.target||this.$.srcElement;return a?new CKEDITOR.dom.node(a):null},getPhase:function(){return this.$.eventPhase||2},getPageOffset:function(){var a=this.getTarget().getDocument().$;return{x:this.$.pageX||this.$.clientX+(a.documentElement.scrollLeft||a.body.scrollLeft),y:this.$.pageY||this.$.clientY+(a.documentElement.scrollTop||a.body.scrollTop)}}},CKEDITOR.CTRL=1114112,CKEDITOR.SHIFT=2228224,CKEDITOR.ALT=4456448,CKEDITOR.EVENT_PHASE_CAPTURING=1,CKEDITOR.EVENT_PHASE_AT_TARGET=2,CKEDITOR.EVENT_PHASE_BUBBLING=3,CKEDITOR.dom.domObject=function(a){a&&(this.$=a)},CKEDITOR.dom.domObject.prototype=function(){var a=function(a,b){return function(c){"undefined"!=typeof CKEDITOR&&a.fire(b,new CKEDITOR.dom.event(c))}};return{getPrivate:function(){var a;return(a=this.getCustomData("_"))||this.setCustomData("_",a={}),a},on:function(b){var c=this.getCustomData("_cke_nativeListeners");return c||(c={},this.setCustomData("_cke_nativeListeners",c)),c[b]||(c=c[b]=a(this,b),this.$.addEventListener?this.$.addEventListener(b,c,!!CKEDITOR.event.useCapture):this.$.attachEvent&&this.$.attachEvent("on"+b,c)),CKEDITOR.event.prototype.on.apply(this,arguments)},removeListener:function(a){if(CKEDITOR.event.prototype.removeListener.apply(this,arguments),!this.hasListeners(a)){var b=this.getCustomData("_cke_nativeListeners"),c=b&&b[a];c&&(this.$.removeEventListener?this.$.removeEventListener(a,c,!1):this.$.detachEvent&&this.$.detachEvent("on"+a,c),delete b[a])}},removeAllListeners:function(){var a,b=this.getCustomData("_cke_nativeListeners");for(a in b){var c=b[a];this.$.detachEvent?this.$.detachEvent("on"+a,c):this.$.removeEventListener&&this.$.removeEventListener(a,c,!1),delete b[a]}CKEDITOR.event.prototype.removeAllListeners.call(this)}}}(),function(a){var b={};CKEDITOR.on("reset",function(){b={}}),a.equals=function(a){try{return a&&a.$===this.$}catch(b){return!1}},a.setCustomData=function(a,c){var d=this.getUniqueId();return(b[d]||(b[d]={}))[a]=c,this},a.getCustomData=function(a){var c=this.$["data-cke-expando"];return(c=c&&b[c])&&a in c?c[a]:null},a.removeCustomData=function(a){var c,d,e=this.$["data-cke-expando"],e=e&&b[e];return e&&(c=e[a],d=a in e,delete e[a]),d?c:null},a.clearCustomData=function(){this.removeAllListeners();var a=this.$["data-cke-expando"];a&&delete b[a]},a.getUniqueId=function(){return this.$["data-cke-expando"]||(this.$["data-cke-expando"]=CKEDITOR.tools.getNextNumber())},CKEDITOR.event.implementOn(a)}(CKEDITOR.dom.domObject.prototype),CKEDITOR.dom.node=function(a){return a?new CKEDITOR.dom[a.nodeType==CKEDITOR.NODE_DOCUMENT?"document":a.nodeType==CKEDITOR.NODE_ELEMENT?"element":a.nodeType==CKEDITOR.NODE_TEXT?"text":a.nodeType==CKEDITOR.NODE_COMMENT?"comment":a.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT?"documentFragment":"domObject"](a):this},CKEDITOR.dom.node.prototype=new CKEDITOR.dom.domObject,CKEDITOR.NODE_ELEMENT=1,CKEDITOR.NODE_DOCUMENT=9,CKEDITOR.NODE_TEXT=3,CKEDITOR.NODE_COMMENT=8,CKEDITOR.NODE_DOCUMENT_FRAGMENT=11,CKEDITOR.POSITION_IDENTICAL=0,CKEDITOR.POSITION_DISCONNECTED=1,CKEDITOR.POSITION_FOLLOWING=2,CKEDITOR.POSITION_PRECEDING=4,CKEDITOR.POSITION_IS_CONTAINED=8,CKEDITOR.POSITION_CONTAINS=16,CKEDITOR.tools.extend(CKEDITOR.dom.node.prototype,{appendTo:function(a,b){return a.append(this,b),a},clone:function(a,b){function c(d){if(d["data-cke-expando"]&&(d["data-cke-expando"]=!1),(d.nodeType==CKEDITOR.NODE_ELEMENT||d.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&(b||d.nodeType!=CKEDITOR.NODE_ELEMENT||d.removeAttribute("id",!1),a)){d=d.childNodes;for(var e=0;e<d.length;e++)c(d[e])}}function d(b){if(b.type==CKEDITOR.NODE_ELEMENT||b.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT){if(b.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var c=b.getName();":"==c[0]&&b.renameNode(c.substring(1))}if(a)for(c=0;c<b.getChildCount();c++)d(b.getChild(c))}}var e=this.$.cloneNode(a);return c(e),e=new CKEDITOR.dom.node(e),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(this.type==CKEDITOR.NODE_ELEMENT||this.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&d(e),e},hasPrevious:function(){return!!this.$.previousSibling},hasNext:function(){return!!this.$.nextSibling},insertAfter:function(a){return a.$.parentNode.insertBefore(this.$,a.$.nextSibling),a},insertBefore:function(a){return a.$.parentNode.insertBefore(this.$,a.$),a},insertBeforeMe:function(a){return this.$.parentNode.insertBefore(a.$,this.$),a},getAddress:function(a){for(var b=[],c=this.getDocument().$.documentElement,d=this.$;d&&d!=c;){var e=d.parentNode;e&&b.unshift(this.getIndex.call({$:d},a)),d=e}return b},getDocument:function(){return new CKEDITOR.dom.document(this.$.ownerDocument||this.$.parentNode.ownerDocument)},getIndex:function(a){function b(a,d){var e=d?a.nextSibling:a.previousSibling;return e&&e.nodeType==CKEDITOR.NODE_TEXT?c(e)?b(e,d):e:null}function c(a){return!a.nodeValue||a.nodeValue==CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE}var d,e=this.$,f=-1;if(!this.$.parentNode||a&&e.nodeType==CKEDITOR.NODE_TEXT&&c(e)&&!b(e)&&!b(e,!0))return-1;do a&&e!=this.$&&e.nodeType==CKEDITOR.NODE_TEXT&&(d||c(e))||(f++,d=e.nodeType==CKEDITOR.NODE_TEXT);while(e=e.previousSibling);return f},getNextSourceNode:function(a,b,c){if(c&&!c.call){var d=c;c=function(a){return!a.equals(d)}}a=!a&&this.getFirst&&this.getFirst();var e;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&c&&!1===c(this,!0))return null;a=this.getNext()}for(;!a&&(e=(e||this).getParent());){if(c&&!1===c(e,!0))return null;a=e.getNext()}return!a||c&&!1===c(a)?null:b&&b!=a.type?a.getNextSourceNode(!1,b,c):a},getPreviousSourceNode:function(a,b,c){if(c&&!c.call){var d=c;c=function(a){return!a.equals(d)}}a=!a&&this.getLast&&this.getLast();var e;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&c&&!1===c(this,!0))return null;a=this.getPrevious()}for(;!a&&(e=(e||this).getParent());){if(c&&!1===c(e,!0))return null;a=e.getPrevious()}return!a||c&&!1===c(a)?null:b&&a.type!=b?a.getPreviousSourceNode(!1,b,c):a},getPrevious:function(a){var b,c=this.$;do b=(c=c.previousSibling)&&10!=c.nodeType&&new CKEDITOR.dom.node(c);while(b&&a&&!a(b));return b},getNext:function(a){var b,c=this.$;do b=(c=c.nextSibling)&&new CKEDITOR.dom.node(c);while(b&&a&&!a(b));return b},getParent:function(a){var b=this.$.parentNode;return b&&(b.nodeType==CKEDITOR.NODE_ELEMENT||a&&b.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)?new CKEDITOR.dom.node(b):null},getParents:function(a){var b=this,c=[];do c[a?"push":"unshift"](b);while(b=b.getParent());return c},getCommonAncestor:function(a){if(a.equals(this))return this;if(a.contains&&a.contains(this))return a;var b=this.contains?this:this.getParent();do if(b.contains(a))return b;while(b=b.getParent());return null},getPosition:function(a){var b=this.$,c=a.$;if(b.compareDocumentPosition)return b.compareDocumentPosition(c);if(b==c)return CKEDITOR.POSITION_IDENTICAL;if(this.type==CKEDITOR.NODE_ELEMENT&&a.type==CKEDITOR.NODE_ELEMENT){if(b.contains){if(b.contains(c))return CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING;if(c.contains(b))return CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING}if("sourceIndex"in b)return 0>b.sourceIndex||0>c.sourceIndex?CKEDITOR.POSITION_DISCONNECTED:b.sourceIndex<c.sourceIndex?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING}b=this.getAddress(),a=a.getAddress();for(var c=Math.min(b.length,a.length),d=0;c>d;d++)if(b[d]!=a[d])return b[d]<a[d]?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING;return b.length<a.length?CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING},getAscendant:function(a,b){var c,d,e=this.$;b||(e=e.parentNode),"function"==typeof a?(d=!0,c=a):(d=!1,c=function(b){return b="string"==typeof b.nodeName?b.nodeName.toLowerCase():"","string"==typeof a?b==a:b in a});for(;e;){if(c(d?new CKEDITOR.dom.node(e):e))return new CKEDITOR.dom.node(e);try{e=e.parentNode}catch(f){e=null}}return null},hasAscendant:function(a,b){var c=this.$;for(b||(c=c.parentNode);c;){if(c.nodeName&&c.nodeName.toLowerCase()==a)return!0;c=c.parentNode}return!1},move:function(a,b){a.append(this.remove(),b)},remove:function(a){var b=this.$,c=b.parentNode;if(c){if(a)for(;a=b.firstChild;)c.insertBefore(b.removeChild(a),b);c.removeChild(b)}return this},replace:function(a){this.insertBefore(a),a.remove()},trim:function(){this.ltrim(),this.rtrim()},ltrim:function(){for(var a;this.getFirst&&(a=this.getFirst());){if(a.type==CKEDITOR.NODE_TEXT){var b=CKEDITOR.tools.ltrim(a.getText()),c=a.getLength();if(!b){a.remove();continue}b.length<c&&(a.split(c-b.length),this.$.removeChild(this.$.firstChild))}break}},rtrim:function(){for(var a;this.getLast&&(a=this.getLast());){if(a.type==CKEDITOR.NODE_TEXT){var b=CKEDITOR.tools.rtrim(a.getText()),c=a.getLength();if(!b){a.remove();continue}b.length<c&&(a.split(b.length),this.$.lastChild.parentNode.removeChild(this.$.lastChild))}break}CKEDITOR.env.needsBrFiller&&(a=this.$.lastChild)&&1==a.type&&"br"==a.nodeName.toLowerCase()&&a.parentNode.removeChild(a)},isReadOnly:function(a){var b=this;if(this.type!=CKEDITOR.NODE_ELEMENT&&(b=this.getParent()),CKEDITOR.env.edge&&b&&b.is("textarea","input")&&(a=!0),!a&&b&&"undefined"!=typeof b.$.isContentEditable)return!(b.$.isContentEditable||b.data("cke-editable"));for(;b;){if(b.data("cke-editable"))return!1;if(b.hasAttribute("contenteditable"))return"false"==b.getAttribute("contenteditable");b=b.getParent()}return!0}}),CKEDITOR.dom.window=function(a){CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.window.prototype=new CKEDITOR.dom.domObject,CKEDITOR.tools.extend(CKEDITOR.dom.window.prototype,{focus:function(){this.$.focus()},getViewPaneSize:function(){var a=this.$.document,b="CSS1Compat"==a.compatMode;return{width:(b?a.documentElement.clientWidth:a.body.clientWidth)||0,height:(b?a.documentElement.clientHeight:a.body.clientHeight)||0}},getScrollPosition:function(){var a=this.$;return"pageXOffset"in a?{x:a.pageXOffset||0,y:a.pageYOffset||0}:(a=a.document,{x:a.documentElement.scrollLeft||a.body.scrollLeft||0,y:a.documentElement.scrollTop||a.body.scrollTop||0})},getFrame:function(){var a=this.$.frameElement;return a?new CKEDITOR.dom.element.get(a):null}}),CKEDITOR.dom.document=function(a){CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.document.prototype=new CKEDITOR.dom.domObject,CKEDITOR.tools.extend(CKEDITOR.dom.document.prototype,{type:CKEDITOR.NODE_DOCUMENT,appendStyleSheet:function(a){if(this.$.createStyleSheet)this.$.createStyleSheet(a);else{var b=new CKEDITOR.dom.element("link");b.setAttributes({rel:"stylesheet",type:"text/css",href:a}),this.getHead().append(b)}},appendStyleText:function(a){if(this.$.createStyleSheet){var b=this.$.createStyleSheet("");b.cssText=a}else{var c=new CKEDITOR.dom.element("style",this);c.append(new CKEDITOR.dom.text(a,this)),this.getHead().append(c)}return b||c.$.sheet},createElement:function(a,b){var c=new CKEDITOR.dom.element(a,this);return b&&(b.attributes&&c.setAttributes(b.attributes),b.styles&&c.setStyles(b.styles)),c},createText:function(a){return new CKEDITOR.dom.text(a,this)},focus:function(){this.getWindow().focus()},getActive:function(){var a;try{a=this.$.activeElement}catch(b){return null}return new CKEDITOR.dom.element(a)},getById:function(a){return(a=this.$.getElementById(a))?new CKEDITOR.dom.element(a):null},getByAddress:function(a,b){for(var c=this.$.documentElement,d=0;c&&d<a.length;d++){var e=a[d];if(b)for(var f=-1,g=0;g<c.childNodes.length;g++){var h=c.childNodes[g];if((!0!==b||3!=h.nodeType||!h.previousSibling||3!=h.previousSibling.nodeType)&&(f++,f==e)){c=h;break}}else c=c.childNodes[e]}return c?new CKEDITOR.dom.node(c):null},getElementsByTag:function(a,b){return CKEDITOR.env.ie&&8>=document.documentMode||!b||(a=b+":"+a),new CKEDITOR.dom.nodeList(this.$.getElementsByTagName(a))},getHead:function(){var a=this.$.getElementsByTagName("head")[0];return a=a?new CKEDITOR.dom.element(a):this.getDocumentElement().append(new CKEDITOR.dom.element("head"),!0)},getBody:function(){return new CKEDITOR.dom.element(this.$.body)},getDocumentElement:function(){return new CKEDITOR.dom.element(this.$.documentElement)},getWindow:function(){return new CKEDITOR.dom.window(this.$.parentWindow||this.$.defaultView)},write:function(a){this.$.open("text/html","replace"),CKEDITOR.env.ie&&(a=a.replace(/(?:^\s*<!DOCTYPE[^>]*?>)|^/i,'$&\n<script data-cke-temp="1">('+CKEDITOR.tools.fixDomain+")();</script>")),this.$.write(a),this.$.close()},find:function(a){return new CKEDITOR.dom.nodeList(this.$.querySelectorAll(a))},findOne:function(a){return(a=this.$.querySelector(a))?new CKEDITOR.dom.element(a):null},_getHtml5ShivFrag:function(){var a=this.getCustomData("html5ShivFrag");return a||(a=this.$.createDocumentFragment(),CKEDITOR.tools.enableHtml5Elements(a,!0),this.setCustomData("html5ShivFrag",a)),a}}),CKEDITOR.dom.nodeList=function(a){this.$=a},CKEDITOR.dom.nodeList.prototype={count:function(){return this.$.length},getItem:function(a){return 0>a||a>=this.$.length?null:(a=this.$[a])?new CKEDITOR.dom.node(a):null}},CKEDITOR.dom.element=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createElement(a)),CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.element.get=function(a){return(a="string"==typeof a?document.getElementById(a)||document.getElementsByName(a)[0]:a)&&(a.$?a:new CKEDITOR.dom.element(a))},CKEDITOR.dom.element.prototype=new CKEDITOR.dom.node,CKEDITOR.dom.element.createFromHtml=function(a,b){var c=new CKEDITOR.dom.element("div",b);return c.setHtml(a),c.getFirst().remove()},CKEDITOR.dom.element.setMarker=function(a,b,c,d){var e=b.getCustomData("list_marker_id")||b.setCustomData("list_marker_id",CKEDITOR.tools.getNextNumber()).getCustomData("list_marker_id"),f=b.getCustomData("list_marker_names")||b.setCustomData("list_marker_names",{}).getCustomData("list_marker_names");return a[e]=b,f[c]=1,b.setCustomData(c,d)},CKEDITOR.dom.element.clearAllMarkers=function(a){for(var b in a)CKEDITOR.dom.element.clearMarkers(a,a[b],1)},CKEDITOR.dom.element.clearMarkers=function(a,b,c){var d,e=b.getCustomData("list_marker_names"),f=b.getCustomData("list_marker_id");for(d in e)b.removeCustomData(d);b.removeCustomData("list_marker_names"),c&&(b.removeCustomData("list_marker_id"),delete a[f])},function(){function a(a,b){return-1<(" "+a+" ").replace(f," ").indexOf(" "+b+" ")}function b(a){var b=!0;return a.$.id||(a.$.id="cke_tmp_"+CKEDITOR.tools.getNextNumber(),b=!1),function(){b||a.removeAttribute("id")}}function c(a,b){return"#"+a.$.id+" "+b.split(/,\s*/).join(", #"+a.$.id+" ")}function d(a){for(var b=0,c=0,d=g[a].length;d>c;c++)b+=parseInt(this.getComputedStyle(g[a][c])||0,10)||0;return b}var e=document.createElement("_").classList,e="undefined"!=typeof e&&null!==String(e.add).match(/\[Native code\]/gi),f=/[\n\t\r]/g;CKEDITOR.tools.extend(CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_ELEMENT,addClass:e?function(a){return this.$.classList.add(a),this}:function(b){var c=this.$.className;return c&&(a(c,b)||(c+=" "+b)),this.$.className=c||b,this},removeClass:e?function(a){var b=this.$;return b.classList.remove(a),b.className||b.removeAttribute("class"),this}:function(b){var c=this.getAttribute("class");return c&&a(c,b)&&((c=c.replace(new RegExp("(?:^|\\s+)"+b+"(?=\\s|$)"),"").replace(/^\s+/,""))?this.setAttribute("class",c):this.removeAttribute("class")),this},hasClass:function(b){return a(this.$.className,b)},append:function(a,b){return"string"==typeof a&&(a=this.getDocument().createElement(a)),b?this.$.insertBefore(a.$,this.$.firstChild):this.$.appendChild(a.$),a},appendHtml:function(a){if(this.$.childNodes.length){var b=new CKEDITOR.dom.element("div",this.getDocument());b.setHtml(a),b.moveChildren(this)}else this.setHtml(a)},appendText:function(a){null!=this.$.text&&CKEDITOR.env.ie&&9>CKEDITOR.env.version?this.$.text+=a:this.append(new CKEDITOR.dom.text(a))},appendBogus:function(a){if(a||CKEDITOR.env.needsBrFiller){for(a=this.getLast();a&&a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.rtrim(a.getText());)a=a.getPrevious();a&&a.is&&a.is("br")||(a=this.getDocument().createElement("br"),CKEDITOR.env.gecko&&a.setAttribute("type","_moz"),this.append(a))}},breakParent:function(a,b){var c=new CKEDITOR.dom.range(this.getDocument());c.setStartAfter(this),c.setEndAfter(a);var d=c.extractContents(!1,b||!1);c.insertNode(this.remove()),d.insertAfterNode(this)},contains:document.compareDocumentPosition?function(a){return!!(16&this.$.compareDocumentPosition(a.$))}:function(a){var b=this.$;return a.type!=CKEDITOR.NODE_ELEMENT?b.contains(a.getParent().$):b!=a.$&&b.contains(a.$)},focus:function(){function a(){try{this.$.focus()}catch(a){}}return function(b){b?CKEDITOR.tools.setTimeout(a,100,this):a.call(this)}}(),getHtml:function(){var a=this.$.innerHTML;return CKEDITOR.env.ie?a.replace(/<\?[^>]*>/g,""):a},getOuterHtml:function(){if(this.$.outerHTML)return this.$.outerHTML.replace(/<\?[^>]*>/,"");var a=this.$.ownerDocument.createElement("div");return a.appendChild(this.$.cloneNode(!0)),a.innerHTML},getClientRect:function(){var a=CKEDITOR.tools.extend({},this.$.getBoundingClientRect());return!a.width&&(a.width=a.right-a.left),!a.height&&(a.height=a.bottom-a.top),a},setHtml:CKEDITOR.env.ie&&9>CKEDITOR.env.version?function(a){try{var b=this.$;if(this.getParent())return b.innerHTML=a;var c=this.getDocument()._getHtml5ShivFrag();return c.appendChild(b),b.innerHTML=a,c.removeChild(b),a}catch(d){for(this.$.innerHTML="",b=new CKEDITOR.dom.element("body",this.getDocument()),b.$.innerHTML=a,b=b.getChildren();b.count();)this.append(b.getItem(0));return a}}:function(a){return this.$.innerHTML=a},setText:function(){var a=document.createElement("p");return a.innerHTML="x",a=a.textContent,function(b){this.$[a?"textContent":"innerText"]=b}}(),getAttribute:function(){var a=function(a){return this.$.getAttribute(a,2)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){switch(a){case"class":a="className";break;case"http-equiv":a="httpEquiv";break;case"name":return this.$.name;case"tabindex":return a=this.$.getAttribute(a,2),0!==a&&0===this.$.tabIndex&&(a=null),a;case"checked":return a=this.$.attributes.getNamedItem(a),(a.specified?a.nodeValue:this.$.checked)?"checked":null;case"hspace":case"value":return this.$[a];case"style":return this.$.style.cssText;case"contenteditable":case"contentEditable":return this.$.attributes.getNamedItem("contentEditable").specified?this.$.getAttribute("contentEditable"):null}return this.$.getAttribute(a,2)}:a}(),getAttributes:function(a){var b,c={},d=this.$.attributes;for(a=CKEDITOR.tools.isArray(a)?a:[],b=0;b<d.length;b++)-1===CKEDITOR.tools.indexOf(a,d[b].name)&&(c[d[b].name]=d[b].value);return c},getChildren:function(){return new CKEDITOR.dom.nodeList(this.$.childNodes)},getComputedStyle:document.defaultView&&document.defaultView.getComputedStyle?function(a){var b=this.getWindow().$.getComputedStyle(this.$,null);return b?b.getPropertyValue(a):""}:function(a){return this.$.currentStyle[CKEDITOR.tools.cssStyleToDomStyle(a)]},getDtd:function(){var a=CKEDITOR.dtd[this.getName()];return this.getDtd=function(){return a},a},getElementsByTag:CKEDITOR.dom.document.prototype.getElementsByTag,getTabIndex:function(){var a=this.$.tabIndex;return 0!==a||CKEDITOR.dtd.$tabIndex[this.getName()]||0===parseInt(this.getAttribute("tabindex"),10)?a:-1},getText:function(){return this.$.textContent||this.$.innerText||""},getWindow:function(){return this.getDocument().getWindow()},getId:function(){return this.$.id||null},getNameAtt:function(){return this.$.name||null},getName:function(){var a=this.$.nodeName.toLowerCase();if(CKEDITOR.env.ie&&8>=document.documentMode){var b=this.$.scopeName;"HTML"!=b&&(a=b.toLowerCase()+":"+a)}return this.getName=function(){return a},this.getName()},getValue:function(){return this.$.value},getFirst:function(a){var b=this.$.firstChild;return(b=b&&new CKEDITOR.dom.node(b))&&a&&!a(b)&&(b=b.getNext(a)),b},getLast:function(a){var b=this.$.lastChild;return(b=b&&new CKEDITOR.dom.node(b))&&a&&!a(b)&&(b=b.getPrevious(a)),b},getStyle:function(a){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]},is:function(){var a=this.getName();if("object"==typeof arguments[0])return!!arguments[0][a];for(var b=0;b<arguments.length;b++)if(arguments[b]==a)return!0;return!1},isEditable:function(a){var b=this.getName();return this.isReadOnly()||"none"==this.getComputedStyle("display")||"hidden"==this.getComputedStyle("visibility")||CKEDITOR.dtd.$nonEditable[b]||CKEDITOR.dtd.$empty[b]||this.is("a")&&(this.data("cke-saved-name")||this.hasAttribute("name"))&&!this.getChildCount()?!1:!1!==a?(a=CKEDITOR.dtd[b]||CKEDITOR.dtd.span,!(!a||!a["#"])):!0},isIdentical:function(a){var b=this.clone(0,1);if(a=a.clone(0,1),b.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]),a.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]),b.$.isEqualNode)return b.$.style.cssText=CKEDITOR.tools.normalizeCssText(b.$.style.cssText),a.$.style.cssText=CKEDITOR.tools.normalizeCssText(a.$.style.cssText),b.$.isEqualNode(a.$);if(b=b.getOuterHtml(),a=a.getOuterHtml(),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&this.is("a")){var c=this.getParent();c.type==CKEDITOR.NODE_ELEMENT&&(c=c.clone(),c.setHtml(b),b=c.getHtml(),c.setHtml(a),a=c.getHtml())}return b==a},isVisible:function(){var a,b,c=(this.$.offsetHeight||this.$.offsetWidth)&&"hidden"!=this.getComputedStyle("visibility");return c&&CKEDITOR.env.webkit&&(a=this.getWindow(),!a.equals(CKEDITOR.document.getWindow())&&(b=a.$.frameElement)&&(c=new CKEDITOR.dom.element(b).isVisible())),!!c},isEmptyInlineRemoveable:function(){if(!CKEDITOR.dtd.$removeEmpty[this.getName()])return!1;for(var a=this.getChildren(),b=0,c=a.count();c>b;b++){var d=a.getItem(b);if((d.type!=CKEDITOR.NODE_ELEMENT||!d.data("cke-bookmark"))&&(d.type==CKEDITOR.NODE_ELEMENT&&!d.isEmptyInlineRemoveable()||d.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(d.getText())))return!1}return!0},hasAttributes:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(){for(var a=this.$.attributes,b=0;b<a.length;b++){var c=a[b];switch(c.nodeName){case"class":if(this.getAttribute("class"))return!0;case"data-cke-expando":continue;default:if(c.specified)return!0}}return!1}:function(){var a=this.$.attributes,b=a.length,c={"data-cke-expando":1,_moz_dirty:1};return b>0&&(b>2||!c[a[0].nodeName]||2==b&&!c[a[1].nodeName])},hasAttribute:function(){function a(a){var b=this.$.attributes.getNamedItem(a);if("input"==this.getName())switch(a){case"class":return 0<this.$.className.length;case"checked":return!!this.$.checked;case"value":return a=this.getAttribute("type"),"checkbox"==a||"radio"==a?"on"!=this.$.value:!!this.$.value}return b?b.specified:!1}return CKEDITOR.env.ie?8>CKEDITOR.env.version?function(b){return"name"==b?!!this.$.name:a.call(this,b)}:a:function(a){return!!this.$.attributes.getNamedItem(a)}}(),hide:function(){this.setStyle("display","none")},moveChildren:function(a,b){var c=this.$;if(a=a.$,c!=a){var d;if(b)for(;d=c.lastChild;)a.insertBefore(c.removeChild(d),a.firstChild);else for(;d=c.firstChild;)a.appendChild(c.removeChild(d))}},mergeSiblings:function(){function a(a,b,c){if(b&&b.type==CKEDITOR.NODE_ELEMENT){for(var d=[];b.data("cke-bookmark")||b.isEmptyInlineRemoveable();)if(d.push(b),b=c?b.getNext():b.getPrevious(),!b||b.type!=CKEDITOR.NODE_ELEMENT)return;if(a.isIdentical(b)){for(var e=c?a.getLast():a.getFirst();d.length;)d.shift().move(a,!c);b.moveChildren(a,!c),b.remove(),e&&e.type==CKEDITOR.NODE_ELEMENT&&e.mergeSiblings()}}}return function(b){(!1===b||CKEDITOR.dtd.$removeEmpty[this.getName()]||this.is("a"))&&(a(this,this.getNext(),!0),a(this,this.getPrevious()))}}(),show:function(){this.setStyles({display:"",visibility:""})},setAttribute:function(){var a=function(a,b){return this.$.setAttribute(a,b),this};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(b,c){return"class"==b?this.$.className=c:"style"==b?this.$.style.cssText=c:"tabindex"==b?this.$.tabIndex=c:"checked"==b?this.$.checked=c:"contenteditable"==b?a.call(this,"contentEditable",c):a.apply(this,arguments), +this}:CKEDITOR.env.ie8Compat&&CKEDITOR.env.secure?function(b,c){if("src"==b&&c.match(/^http:\/\//))try{a.apply(this,arguments)}catch(d){}else a.apply(this,arguments);return this}:a}(),setAttributes:function(a){for(var b in a)this.setAttribute(b,a[b]);return this},setValue:function(a){return this.$.value=a,this},removeAttribute:function(){var a=function(a){this.$.removeAttribute(a)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){"class"==a?a="className":"tabindex"==a?a="tabIndex":"contenteditable"==a&&(a="contentEditable"),this.$.removeAttribute(a)}:a}(),removeAttributes:function(a){if(CKEDITOR.tools.isArray(a))for(var b=0;b<a.length;b++)this.removeAttribute(a[b]);else for(b in a=a||this.getAttributes())a.hasOwnProperty(b)&&this.removeAttribute(b)},removeStyle:function(a){var b=this.$.style;if(b.removeProperty||"border"!=a&&"margin"!=a&&"padding"!=a)b.removeProperty?b.removeProperty(a):b.removeAttribute(CKEDITOR.tools.cssStyleToDomStyle(a)),this.$.style.cssText||this.removeAttribute("style");else{var c,d=["top","left","right","bottom"];"border"==a&&(c=["color","style","width"]);for(var b=[],e=0;e<d.length;e++)if(c)for(var f=0;f<c.length;f++)b.push([a,d[e],c[f]].join("-"));else b.push([a,d[e]].join("-"));for(a=0;a<b.length;a++)this.removeStyle(b[a])}},setStyle:function(a,b){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]=b,this},setStyles:function(a){for(var b in a)this.setStyle(b,a[b]);return this},setOpacity:function(a){CKEDITOR.env.ie&&9>CKEDITOR.env.version?(a=Math.round(100*a),this.setStyle("filter",a>=100?"":"progid:DXImageTransform.Microsoft.Alpha(opacity="+a+")")):this.setStyle("opacity",a)},unselectable:function(){if(this.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select","none")),CKEDITOR.env.ie){this.setAttribute("unselectable","on");for(var a,b=this.getElementsByTag("*"),c=0,d=b.count();d>c;c++)a=b.getItem(c),a.setAttribute("unselectable","on")}},getPositionedAncestor:function(){for(var a=this;"html"!=a.getName();){if("static"!=a.getComputedStyle("position"))return a;a=a.getParent()}return null},getDocumentPosition:function(a){var b=0,c=0,d=this.getDocument(),e=d.getBody(),f="BackCompat"==d.$.compatMode;if(document.documentElement.getBoundingClientRect){var g=this.$.getBoundingClientRect(),h=d.$.documentElement,i=h.clientTop||e.$.clientTop||0,j=h.clientLeft||e.$.clientLeft||0,k=!0;CKEDITOR.env.ie&&(k=d.getDocumentElement().contains(this),d=d.getBody().contains(this),k=f&&d||!f&&k),k&&(CKEDITOR.env.webkit||CKEDITOR.env.ie&&12<=CKEDITOR.env.version?(b=e.$.scrollLeft||h.scrollLeft,c=e.$.scrollTop||h.scrollTop):(c=f?e.$:h,b=c.scrollLeft,c=c.scrollTop),b=g.left+b-j,c=g.top+c-i)}else for(i=this,j=null;i&&"body"!=i.getName()&&"html"!=i.getName();){for(b+=i.$.offsetLeft-i.$.scrollLeft,c+=i.$.offsetTop-i.$.scrollTop,i.equals(this)||(b+=i.$.clientLeft||0,c+=i.$.clientTop||0);j&&!j.equals(i);)b-=j.$.scrollLeft,c-=j.$.scrollTop,j=j.getParent();j=i,i=(g=i.$.offsetParent)?new CKEDITOR.dom.element(g):null}return a&&(g=this.getWindow(),i=a.getWindow(),!g.equals(i)&&g.$.frameElement&&(a=new CKEDITOR.dom.element(g.$.frameElement).getDocumentPosition(a),b+=a.x,c+=a.y)),document.documentElement.getBoundingClientRect||!CKEDITOR.env.gecko||f||(b+=this.$.clientLeft?1:0,c+=this.$.clientTop?1:0),{x:b,y:c}},scrollIntoView:function(a){var b=this.getParent();if(b)do if((b.$.clientWidth&&b.$.clientWidth<b.$.scrollWidth||b.$.clientHeight&&b.$.clientHeight<b.$.scrollHeight)&&!b.is("body")&&this.scrollIntoParent(b,a,1),b.is("html")){var c=b.getWindow();try{var d=c.$.frameElement;d&&(b=new CKEDITOR.dom.element(d))}catch(e){}}while(b=b.getParent())},scrollIntoParent:function(a,b,c){function d(b,c){/body|html/.test(a.getName())?a.getWindow().$.scrollBy(b,c):(a.$.scrollLeft+=b,a.$.scrollTop+=c)}function e(a,b){var c={x:0,y:0};if(!a.is(k?"body":"html")){var d=a.$.getBoundingClientRect();c.x=d.left,c.y=d.top}return d=a.getWindow(),d.equals(b)||(d=e(CKEDITOR.dom.element.get(d.$.frameElement),b),c.x+=d.x,c.y+=d.y),c}function f(a,b){return parseInt(a.getComputedStyle("margin-"+b)||0,10)||0}var g,h,i,j;!a&&(a=this.getWindow()),i=a.getDocument();var k="BackCompat"==i.$.compatMode;a instanceof CKEDITOR.dom.window&&(a=k?i.getBody():i.getDocumentElement()),i=a.getWindow(),h=e(this,i);var l=e(a,i),m=this.$.offsetHeight;g=this.$.offsetWidth;var n=a.$.clientHeight,o=a.$.clientWidth;i=h.x-f(this,"left")-l.x||0,j=h.y-f(this,"top")-l.y||0,g=h.x+g+f(this,"right")-(l.x+o)||0,h=h.y+m+f(this,"bottom")-(l.y+n)||0,(0>j||h>0)&&d(0,!0===b?j:!1===b?h:0>j?j:h),c&&(0>i||g>0)&&d(0>i?i:g,0)},setState:function(a,b,c){switch(b=b||"cke",a){case CKEDITOR.TRISTATE_ON:this.addClass(b+"_on"),this.removeClass(b+"_off"),this.removeClass(b+"_disabled"),c&&this.setAttribute("aria-pressed",!0),c&&this.removeAttribute("aria-disabled");break;case CKEDITOR.TRISTATE_DISABLED:this.addClass(b+"_disabled"),this.removeClass(b+"_off"),this.removeClass(b+"_on"),c&&this.setAttribute("aria-disabled",!0),c&&this.removeAttribute("aria-pressed");break;default:this.addClass(b+"_off"),this.removeClass(b+"_on"),this.removeClass(b+"_disabled"),c&&this.removeAttribute("aria-pressed"),c&&this.removeAttribute("aria-disabled")}},getFrameDocument:function(){var a=this.$;try{a.contentWindow.document}catch(b){a.src=a.src}return a&&new CKEDITOR.dom.document(a.contentWindow.document)},copyAttributes:function(a,b){var c=this.$.attributes;b=b||{};for(var d=0;d<c.length;d++){var e,f=c[d],g=f.nodeName.toLowerCase();g in b||("checked"==g&&(e=this.getAttribute(g))?a.setAttribute(g,e):CKEDITOR.env.ie&&!this.hasAttribute(g)||(e=this.getAttribute(g),null===e&&(e=f.nodeValue),a.setAttribute(g,e)))}""!==this.$.style.cssText&&(a.$.style.cssText=this.$.style.cssText)},renameNode:function(a){if(this.getName()!=a){var b=this.getDocument();a=new CKEDITOR.dom.element(a,b),this.copyAttributes(a),this.moveChildren(a),this.getParent(!0)&&this.$.parentNode.replaceChild(a.$,this.$),a.$["data-cke-expando"]=this.$["data-cke-expando"],this.$=a.$,delete this.getName}},getChild:function(){function a(a,b){var c=a.childNodes;return b>=0&&b<c.length?c[b]:void 0}return function(b){var c=this.$;if(b.slice)for(b=b.slice();0<b.length&&c;)c=a(c,b.shift());else c=a(c,b);return c?new CKEDITOR.dom.node(c):null}}(),getChildCount:function(){return this.$.childNodes.length},disableContextMenu:function(){function a(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_enable_context_menu")}this.on("contextmenu",function(b){b.data.getTarget().getAscendant(a,!0)||b.data.preventDefault()})},getDirection:function(a){return a?this.getComputedStyle("direction")||this.getDirection()||this.getParent()&&this.getParent().getDirection(1)||this.getDocument().$.dir||"ltr":this.getStyle("direction")||this.getAttribute("dir")},data:function(a,b){return a="data-"+a,void 0===b?this.getAttribute(a):(!1===b?this.removeAttribute(a):this.setAttribute(a,b),null)},getEditor:function(){var a,b,c=CKEDITOR.instances;for(a in c)if(b=c[a],b.element.equals(this)&&b.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO)return b;return null},find:function(a){var d=b(this);return a=new CKEDITOR.dom.nodeList(this.$.querySelectorAll(c(this,a))),d(),a},findOne:function(a){var d=b(this);return a=this.$.querySelector(c(this,a)),d(),a?new CKEDITOR.dom.element(a):null},forEach:function(a,b,c){if(!(c||b&&this.type!=b))var d=a(this);if(!1!==d){c=this.getChildren();for(var e=0;e<c.count();e++)d=c.getItem(e),d.type==CKEDITOR.NODE_ELEMENT?d.forEach(a,b):b&&d.type!=b||a(d)}}});var g={width:["border-left-width","border-right-width","padding-left","padding-right"],height:["border-top-width","border-bottom-width","padding-top","padding-bottom"]};CKEDITOR.dom.element.prototype.setSize=function(a,b,c){"number"==typeof b&&(!c||CKEDITOR.env.ie&&CKEDITOR.env.quirks||(b-=d.call(this,a)),this.setStyle(a,b+"px"))},CKEDITOR.dom.element.prototype.getSize=function(a,b){var c=Math.max(this.$["offset"+CKEDITOR.tools.capitalize(a)],this.$["client"+CKEDITOR.tools.capitalize(a)])||0;return b&&(c-=d.call(this,a)),c}}(),CKEDITOR.dom.documentFragment=function(a){a=a||CKEDITOR.document,this.$=a.type==CKEDITOR.NODE_DOCUMENT?a.$.createDocumentFragment():a},CKEDITOR.tools.extend(CKEDITOR.dom.documentFragment.prototype,CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,insertAfterNode:function(a){a=a.$,a.parentNode.insertBefore(this.$,a.nextSibling)},getHtml:function(){var a=new CKEDITOR.dom.element("div");return this.clone(1,1).appendTo(a),a.getHtml().replace(/\s*data-cke-expando=".*?"/g,"")}},!0,{append:1,appendBogus:1,clone:1,getFirst:1,getHtml:1,getLast:1,getParent:1,getNext:1,getPrevious:1,appendTo:1,moveChildren:1,insertBefore:1,insertAfterNode:1,replace:1,trim:1,type:1,ltrim:1,rtrim:1,getDocument:1,getChildCount:1,getChild:1,getChildren:1}),function(){function a(a,b){var c=this.range;if(this._.end)return null;if(!this._.start){if(this._.start=1,c.collapsed)return this.end(),null;c.optimize()}var d,e=c.startContainer;d=c.endContainer;var f,g=c.startOffset,h=c.endOffset,i=this.guard,j=this.type,k=a?"getPreviousSourceNode":"getNextSourceNode";if(!a&&!this._.guardLTR){var l=d.type==CKEDITOR.NODE_ELEMENT?d:d.getParent(),m=d.type==CKEDITOR.NODE_ELEMENT?d.getChild(h):d.getNext();this._.guardLTR=function(a,b){return!(b&&l.equals(a)||m&&a.equals(m)||a.type==CKEDITOR.NODE_ELEMENT&&b&&a.equals(c.root))}}if(a&&!this._.guardRTL){var n=e.type==CKEDITOR.NODE_ELEMENT?e:e.getParent(),o=e.type==CKEDITOR.NODE_ELEMENT?g?e.getChild(g-1):null:e.getPrevious();this._.guardRTL=function(a,b){return!(b&&n.equals(a)||o&&a.equals(o)||a.type==CKEDITOR.NODE_ELEMENT&&b&&a.equals(c.root))}}var p=a?this._.guardRTL:this._.guardLTR;for(f=i?function(a,b){return!1===p(a,b)?!1:i(a,b)}:p,this.current?d=this.current[k](!1,j,f):(a?d.type==CKEDITOR.NODE_ELEMENT&&(d=h>0?d.getChild(h-1):!1===f(d,!0)?null:d.getPreviousSourceNode(!0,j,f)):(d=e,d.type==CKEDITOR.NODE_ELEMENT&&((d=d.getChild(g))||(d=!1===f(e,!0)?null:e.getNextSourceNode(!0,j,f)))),d&&!1===f(d)&&(d=null));d&&!this._.end;){if(this.current=d,this.evaluator&&!1===this.evaluator(d)){if(b&&this.evaluator)return!1}else if(!b)return d;d=d[k](!1,j,f)}return this.end(),this.current=null}function b(b){for(var c,d=null;c=a.call(this,b);)d=c;return d}CKEDITOR.dom.walker=CKEDITOR.tools.createClass({$:function(a){this.range=a,this._={}},proto:{end:function(){this._.end=1},next:function(){return a.call(this)},previous:function(){return a.call(this,1)},checkForward:function(){return!1!==a.call(this,0,1)},checkBackward:function(){return!1!==a.call(this,1,1)},lastForward:function(){return b.call(this)},lastBackward:function(){return b.call(this,1)},reset:function(){delete this.current,this._={}}}});var c={block:1,"list-item":1,table:1,"table-row-group":1,"table-header-group":1,"table-footer-group":1,"table-row":1,"table-column-group":1,"table-column":1,"table-cell":1,"table-caption":1},d={absolute:1,fixed:1};CKEDITOR.dom.element.prototype.isBlockBoundary=function(a){return"none"!=this.getComputedStyle("float")||this.getComputedStyle("position")in d||!c[this.getComputedStyle("display")]?!!(this.is(CKEDITOR.dtd.$block)||a&&this.is(a)):!0},CKEDITOR.dom.walker.blockBoundary=function(a){return function(b){return!(b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary(a))}},CKEDITOR.dom.walker.listItemBoundary=function(){return this.blockBoundary({br:1})},CKEDITOR.dom.walker.bookmark=function(a,b){function c(a){return a&&a.getName&&"span"==a.getName()&&a.data("cke-bookmark")}return function(d){var e,f;return e=d&&d.type!=CKEDITOR.NODE_ELEMENT&&(f=d.getParent())&&c(f),e=a?e:e||c(d),!!(b^e)}},CKEDITOR.dom.walker.whitespaces=function(a){return function(b){var c;return b&&b.type==CKEDITOR.NODE_TEXT&&(c=!CKEDITOR.tools.trim(b.getText())||CKEDITOR.env.webkit&&b.getText()==CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE),!!(a^c)}},CKEDITOR.dom.walker.invisible=function(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.env.webkit?1:0;return function(d){return b(d)?d=1:(d.type==CKEDITOR.NODE_TEXT&&(d=d.getParent()),d=d.$.offsetWidth<=c),!!(a^d)}},CKEDITOR.dom.walker.nodeType=function(a,b){return function(c){return!!(b^c.type==a)}},CKEDITOR.dom.walker.bogus=function(a){function b(a){return!f(a)&&!g(a)}return function(c){var d=CKEDITOR.env.needsBrFiller?c.is&&c.is("br"):c.getText&&e.test(c.getText());return d&&(d=c.getParent(),c=c.getNext(b),d=d.isBlockBoundary()&&(!c||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary())),!!(a^d)}},CKEDITOR.dom.walker.temp=function(a){return function(b){return b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent()),b=b&&b.hasAttribute("data-cke-temp"),!!(a^b)}};var e=/^[\t\r\n ]*(?: |\xa0)$/,f=CKEDITOR.dom.walker.whitespaces(),g=CKEDITOR.dom.walker.bookmark(),h=CKEDITOR.dom.walker.temp(),i=function(a){return g(a)||f(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.is(CKEDITOR.dtd.$inline)&&!a.is(CKEDITOR.dtd.$empty)};CKEDITOR.dom.walker.ignored=function(a){return function(b){return b=f(b)||g(b)||h(b),!!(a^b)}};var j=CKEDITOR.dom.walker.ignored();CKEDITOR.dom.walker.empty=function(a){return function(b){for(var c=0,d=b.getChildCount();d>c;++c)if(!j(b.getChild(c)))return!!a;return!a}};var k=CKEDITOR.dom.walker.empty(),l=CKEDITOR.dom.walker.validEmptyBlockContainers=CKEDITOR.tools.extend(function(a){var b,c={};for(b in a)CKEDITOR.dtd[b]["#"]&&(c[b]=1);return c}(CKEDITOR.dtd.$block),{caption:1,td:1,th:1});CKEDITOR.dom.walker.editable=function(a){return function(b){return b=j(b)?!1:!!(b.type==CKEDITOR.NODE_TEXT||b.type==CKEDITOR.NODE_ELEMENT&&(b.is(CKEDITOR.dtd.$inline)||b.is("hr")||"false"==b.getAttribute("contenteditable")||!CKEDITOR.env.needsBrFiller&&b.is(l)&&k(b))),!!(a^b)}},CKEDITOR.dom.element.prototype.getBogus=function(){var a=this;do a=a.getPreviousSourceNode();while(i(a));return a&&(CKEDITOR.env.needsBrFiller?a.is&&a.is("br"):a.getText&&e.test(a.getText()))?a:!1}}(),CKEDITOR.dom.range=function(a){this.endOffset=this.endContainer=this.startOffset=this.startContainer=null,this.collapsed=!0;var b=a instanceof CKEDITOR.dom.document;this.document=b?a:a.getDocument(),this.root=b?a.getBody():a},function(){function a(a){a.collapsed=a.startContainer&&a.endContainer&&a.startContainer.equals(a.endContainer)&&a.startOffset==a.endOffset}function b(a,b,c,d,e){function f(a,b,c,d){var f=c?a.getPrevious():a.getNext();return d&&i?f:(k||d?b.append(a.clone(!0,e),c):(a.remove(),j&&b.append(a)),f)}function g(){var a,b,c,d=Math.min(y.length,z.length);for(a=0;d>a;a++)if(b=y[a],c=z[a],!b.equals(c))return a;return a-1}function h(){var b=A-1,c=n&&o&&!r.equals(s);B-1>b||C-1>b||c?(c?a.moveToPosition(s,CKEDITOR.POSITION_BEFORE_START):C==b+1&&m?a.moveToPosition(z[b],CKEDITOR.POSITION_BEFORE_END):a.moveToPosition(z[b+1],CKEDITOR.POSITION_BEFORE_START),d&&(b=y[b+1])&&b.type==CKEDITOR.NODE_ELEMENT&&(c=CKEDITOR.dom.element.createFromHtml('<span data-cke-bookmark="1" style="display:none"> </span>',a.document),c.insertAfter(b),b.mergeSiblings(!1),a.moveToBookmark({startNode:c}))):a.collapse(!0)}a.optimizeBookmark();var i=0===b,j=1==b,k=2==b;b=k||j;var l,m,n,o,p,q,r=a.startContainer,s=a.endContainer,t=a.startOffset,u=a.endOffset;if(k&&s.type==CKEDITOR.NODE_TEXT&&r.equals(s))r=a.document.createText(r.substring(t,u)),c.append(r);else{s.type==CKEDITOR.NODE_TEXT?k?q=!0:s=s.split(u):0<s.getChildCount()?u>=s.getChildCount()?(s=s.getChild(u-1),m=!0):s=s.getChild(u):o=m=!0,r.type==CKEDITOR.NODE_TEXT?k?p=!0:r.split(t):0<r.getChildCount()?0===t?(r=r.getChild(t),l=!0):r=r.getChild(t-1):n=l=!0;for(var v,w,x,y=r.getParents(),z=s.getParents(),A=g(),B=y.length-1,C=z.length-1,D=c,E=-1,F=A;B>=F;F++){for(w=y[F],x=w.getNext(),F!=B||w.equals(z[F])&&C>B?b&&(v=D.append(w.clone(0,e))):l?f(w,D,!1,n):p&&D.append(a.document.createText(w.substring(t)));x;){if(x.equals(z[F])){E=F;break}x=f(x,D)}D=v}for(D=c,F=A;C>=F;F++)if(c=z[F],x=c.getPrevious(),c.equals(y[F]))b&&(D=D.getChild(0));else{if(F!=C||c.equals(y[F])&&B>C?b&&(v=D.append(c.clone(0,e))):m?f(c,D,!1,o):q&&D.append(a.document.createText(c.substring(0,u))),F>E)for(;x;)x=f(x,D,!0);D=v}k||h()}}function c(){var a=!1,b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(!0),d=CKEDITOR.dom.walker.bogus();return function(e){return c(e)||b(e)?!0:d(e)&&!a?a=!0:!(e.type==CKEDITOR.NODE_TEXT&&(e.hasAscendant("pre")||CKEDITOR.tools.trim(e.getText()).length)||e.type==CKEDITOR.NODE_ELEMENT&&!e.is(f))}}function d(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(1);return function(d){return c(d)||b(d)?!0:!a&&g(d)||d.type==CKEDITOR.NODE_ELEMENT&&d.is(CKEDITOR.dtd.$removeEmpty)}}function e(a){return function(){var b;return this[a?"getPreviousNode":"getNextNode"](function(a){return!b&&j(a)&&(b=a),i(a)&&!(g(a)&&a.equals(b))})}}var f={abbr:1,acronym:1,b:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,q:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,tt:1,u:1,"var":1},g=CKEDITOR.dom.walker.bogus(),h=/^[\t\r\n ]*(?: |\xa0)$/,i=CKEDITOR.dom.walker.editable(),j=CKEDITOR.dom.walker.ignored(!0);CKEDITOR.dom.range.prototype={clone:function(){var a=new CKEDITOR.dom.range(this.root);return a._setStartContainer(this.startContainer),a.startOffset=this.startOffset,a._setEndContainer(this.endContainer),a.endOffset=this.endOffset,a.collapsed=this.collapsed,a},collapse:function(a){a?(this._setEndContainer(this.startContainer),this.endOffset=this.startOffset):(this._setStartContainer(this.endContainer),this.startOffset=this.endOffset),this.collapsed=!0},cloneContents:function(a){var c=new CKEDITOR.dom.documentFragment(this.document);return this.collapsed||b(this,2,c,!1,"undefined"==typeof a?!0:a),c},deleteContents:function(a){this.collapsed||b(this,0,null,a)},extractContents:function(a,c){var d=new CKEDITOR.dom.documentFragment(this.document);return this.collapsed||b(this,1,d,a,"undefined"==typeof c?!0:c),d},createBookmark:function(a){var b,c,d,e,f=this.collapsed;return b=this.document.createElement("span"),b.data("cke-bookmark",1),b.setStyle("display","none"),b.setHtml(" "),a&&(d="cke_bm_"+CKEDITOR.tools.getNextNumber(),b.setAttribute("id",d+(f?"C":"S"))),f||(c=b.clone(),c.setHtml(" "),a&&c.setAttribute("id",d+"E"),e=this.clone(),e.collapse(),e.insertNode(c)),e=this.clone(),e.collapse(!0),e.insertNode(b),c?(this.setStartAfter(b),this.setEndBefore(c)):this.moveToPosition(b,CKEDITOR.POSITION_AFTER_END),{startNode:a?d+(f?"C":"S"):b,endNode:a?d+"E":c,serializable:a,collapsed:f}},createBookmark2:function(){function a(a){var b,d=a.container,e=a.offset;b=d;var f=e;if(b=b.type!=CKEDITOR.NODE_ELEMENT||0===f||f==b.getChildCount()?0:b.getChild(f-1).type==CKEDITOR.NODE_TEXT&&b.getChild(f).type==CKEDITOR.NODE_TEXT,b&&(d=d.getChild(e-1),e=d.getLength()),d.type==CKEDITOR.NODE_ELEMENT&&e>0){a:{for(b=d;e--;)if(f=b.getChild(e).getIndex(!0),f>=0){e=f;break a}e=-1}e+=1}if(d.type==CKEDITOR.NODE_TEXT){for(b=d,f=0;(b=b.getPrevious())&&b.type==CKEDITOR.NODE_TEXT;)f+=b.getText().replace(CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE,"").length;b=f,d.getText()?e+=b:(f=d.getPrevious(c),b?(e=b,d=f?f.getNext():d.getParent().getFirst()):(d=d.getParent(),e=f?f.getIndex(!0)+1:0))}a.container=d,a.offset=e}function b(a,b){var c=b.getCustomData("cke-fillingChar");if(c){var d=a.container;c.equals(d)&&(a.offset-=CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE.length,0>=a.offset&&(a.offset=d.getIndex(),a.container=d.getParent()))}}var c=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_TEXT,!0);return function(c){var d=this.collapsed,e={container:this.startContainer,offset:this.startOffset},f={container:this.endContainer,offset:this.endOffset};return c&&(a(e),b(e,this.root),d||(a(f),b(f,this.root))),{start:e.container.getAddress(c),end:d?null:f.container.getAddress(c),startOffset:e.offset,endOffset:f.offset,normalized:c,collapsed:d,is2:!0}}}(),moveToBookmark:function(a){if(a.is2){var b=this.document.getByAddress(a.start,a.normalized),c=a.startOffset,d=a.end&&this.document.getByAddress(a.end,a.normalized);a=a.endOffset,this.setStart(b,c),d?this.setEnd(d,a):this.collapse(!0)}else b=(c=a.serializable)?this.document.getById(a.startNode):a.startNode,a=c?this.document.getById(a.endNode):a.endNode,this.setStartBefore(b),b.remove(),a?(this.setEndBefore(a),a.remove()):this.collapse(!0)},getBoundaryNodes:function(){var a,b=this.startContainer,c=this.endContainer,d=this.startOffset,e=this.endOffset;if(b.type==CKEDITOR.NODE_ELEMENT)if(a=b.getChildCount(),a>d)b=b.getChild(d);else if(1>a)b=b.getPreviousSourceNode();else{for(b=b.$;b.lastChild;)b=b.lastChild;b=new CKEDITOR.dom.node(b),b=b.getNextSourceNode()||b}if(c.type==CKEDITOR.NODE_ELEMENT)if(a=c.getChildCount(),a>e)c=c.getChild(e).getPreviousSourceNode(!0);else if(1>a)c=c.getPreviousSourceNode();else{for(c=c.$;c.lastChild;)c=c.lastChild;c=new CKEDITOR.dom.node(c)}return b.getPosition(c)&CKEDITOR.POSITION_FOLLOWING&&(b=c),{startNode:b,endNode:c}},getCommonAncestor:function(a,b){var c=this.startContainer,d=this.endContainer,c=c.equals(d)?a&&c.type==CKEDITOR.NODE_ELEMENT&&this.startOffset==this.endOffset-1?c.getChild(this.startOffset):c:c.getCommonAncestor(d);return b&&!c.is?c.getParent():c},optimize:function(){var a=this.startContainer,b=this.startOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setStartAfter(a):this.setStartBefore(a)),a=this.endContainer,b=this.endOffset,a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setEndAfter(a):this.setEndBefore(a))},optimizeBookmark:function(){var a=this.startContainer,b=this.endContainer;a.is&&a.is("span")&&a.data("cke-bookmark")&&this.setStartAt(a,CKEDITOR.POSITION_BEFORE_START),b&&b.is&&b.is("span")&&b.data("cke-bookmark")&&this.setEndAt(b,CKEDITOR.POSITION_AFTER_END)},trim:function(a,b){var c=this.startContainer,d=this.startOffset,e=this.collapsed;if((!a||e)&&c&&c.type==CKEDITOR.NODE_TEXT){if(d)if(d>=c.getLength())d=c.getIndex()+1,c=c.getParent();else{var f=c.split(d),d=c.getIndex()+1,c=c.getParent();this.startContainer.equals(this.endContainer)?this.setEnd(f,this.endOffset-this.startOffset):c.equals(this.endContainer)&&(this.endOffset+=1)}else d=c.getIndex(),c=c.getParent();if(this.setStart(c,d),e)return void this.collapse(!0)}c=this.endContainer,d=this.endOffset,b||e||!c||c.type!=CKEDITOR.NODE_TEXT||(d?(d>=c.getLength()||c.split(d),d=c.getIndex()+1):d=c.getIndex(),c=c.getParent(),this.setEnd(c,d))},enlarge:function(a,b){function c(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.hasAttribute("contenteditable")?null:a}var d=new RegExp(/[^\s\ufeff]/);switch(a){case CKEDITOR.ENLARGE_INLINE:var e=1;case CKEDITOR.ENLARGE_ELEMENT:var f=function(a,b){var c=new CKEDITOR.dom.range(o);c.setStart(a,b),c.setEndAt(o,CKEDITOR.POSITION_BEFORE_END);var e,c=new CKEDITOR.dom.walker(c);for(c.guard=function(a){return!(a.type==CKEDITOR.NODE_ELEMENT&&a.isBlockBoundary())};e=c.next();){if(e.type!=CKEDITOR.NODE_TEXT)return!1;if(m=e!=a?e.getText():e.substring(b),d.test(m))return!1}return!0};if(this.collapsed)break;var g,h,i,j,k,l,m,n=this.getCommonAncestor(),o=this.root,p=!1;l=this.startContainer;var q=this.startOffset;for(l.type==CKEDITOR.NODE_TEXT?(q&&(l=!CKEDITOR.tools.trim(l.substring(0,q)).length&&l,p=!!l),l&&((j=l.getPrevious())||(i=l.getParent()))):(q&&(j=l.getChild(q-1)||l.getLast()),j||(i=l)),i=c(i);i||j;){if(i&&!j){if(!k&&i.equals(n)&&(k=!0),e?i.isBlockBoundary():!o.contains(i))break;p&&"inline"==i.getComputedStyle("display")||(p=!1,k?g=i:this.setStartBefore(i)),j=i.getPrevious()}for(;j;)if(l=!1,j.type==CKEDITOR.NODE_COMMENT)j=j.getPrevious();else{if(j.type==CKEDITOR.NODE_TEXT)m=j.getText(),d.test(m)&&(j=null),l=/[\s\ufeff]$/.test(m);else if((j.$.offsetWidth>(CKEDITOR.env.webkit?1:0)||b&&j.is("br"))&&!j.data("cke-bookmark"))if(p&&CKEDITOR.dtd.$removeEmpty[j.getName()]){if(m=j.getText(),d.test(m))j=null;else for(var r,q=j.$.getElementsByTagName("*"),s=0;r=q[s++];)if(!CKEDITOR.dtd.$removeEmpty[r.nodeName.toLowerCase()]){j=null;break}j&&(l=!!m.length)}else j=null;if(l&&(p?k?g=i:i&&this.setStartBefore(i):p=!0),j){if(l=j.getPrevious(),!i&&!l){i=j,j=null;break}j=l}else i=null}i&&(i=c(i.getParent()))}for(l=this.endContainer,q=this.endOffset,i=j=null,k=p=!1,l.type==CKEDITOR.NODE_TEXT?CKEDITOR.tools.trim(l.substring(q)).length?p=!0:(p=!l.getLength(),q==l.getLength()?(j=l.getNext())||(i=l.getParent()):f(l,q)&&(i=l.getParent())):(j=l.getChild(q))||(i=l);i||j;){if(i&&!j){if(!k&&i.equals(n)&&(k=!0),e?i.isBlockBoundary():!o.contains(i))break;p&&"inline"==i.getComputedStyle("display")||(p=!1,k?h=i:i&&this.setEndAfter(i)),j=i.getNext()}for(;j;){if(l=!1,j.type==CKEDITOR.NODE_TEXT)m=j.getText(),f(j,0)||(j=null),l=/^[\s\ufeff]/.test(m);else if(j.type==CKEDITOR.NODE_ELEMENT){if((0<j.$.offsetWidth||b&&j.is("br"))&&!j.data("cke-bookmark"))if(p&&CKEDITOR.dtd.$removeEmpty[j.getName()]){if(m=j.getText(),d.test(m))j=null;else for(q=j.$.getElementsByTagName("*"),s=0;r=q[s++];)if(!CKEDITOR.dtd.$removeEmpty[r.nodeName.toLowerCase()]){j=null;break}j&&(l=!!m.length)}else j=null}else l=1;if(l&&p&&(k?h=i:this.setEndAfter(i)),j){if(l=j.getNext(),!i&&!l){i=j,j=null;break}j=l}else i=null}i&&(i=c(i.getParent()))}g&&h&&(n=g.contains(h)?h:g,this.setStartBefore(n),this.setEndAfter(n));break;case CKEDITOR.ENLARGE_BLOCK_CONTENTS:case CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:i=new CKEDITOR.dom.range(this.root),o=this.root,i.setStartAt(o,CKEDITOR.POSITION_AFTER_START),i.setEnd(this.startContainer,this.startOffset),i=new CKEDITOR.dom.walker(i);var t,u,v=CKEDITOR.dom.walker.blockBoundary(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?{br:1}:null),w=null,x=function(a){if(a.type==CKEDITOR.NODE_ELEMENT&&"false"==a.getAttribute("contenteditable"))if(w){if(w.equals(a))return void(w=null)}else w=a;else if(w)return;var b=v(a);return b||(t=a),b},e=function(a){var b=x(a);return!b&&a.is&&a.is("br")&&(u=a),b};if(i.guard=x,i=i.lastBackward(),t=t||o,this.setStartAt(t,!t.is("br")&&(!i&&this.checkStartOfBlock()||i&&t.contains(i))?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_AFTER_END),a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS){i=this.clone(),i=new CKEDITOR.dom.walker(i);var y=CKEDITOR.dom.walker.whitespaces(),z=CKEDITOR.dom.walker.bookmark();if(i.evaluator=function(a){return!y(a)&&!z(a)},(i=i.previous())&&i.type==CKEDITOR.NODE_ELEMENT&&i.is("br"))break}i=this.clone(),i.collapse(),i.setEndAt(o,CKEDITOR.POSITION_BEFORE_END),i=new CKEDITOR.dom.walker(i),i.guard=a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?e:x,t=w=u=null,i=i.lastForward(),t=t||o,this.setEndAt(t,!i&&this.checkEndOfBlock()||i&&t.contains(i)?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_BEFORE_START),u&&this.setEndAfter(u)}},shrink:function(a,b,c){if(!this.collapsed){a=a||CKEDITOR.SHRINK_TEXT;var d=this.clone(),e=this.startContainer,f=this.endContainer,g=this.startOffset,h=this.endOffset,i=1,j=1;e&&e.type==CKEDITOR.NODE_TEXT&&(g?g>=e.getLength()?d.setStartAfter(e):(d.setStartBefore(e),i=0):d.setStartBefore(e)),f&&f.type==CKEDITOR.NODE_TEXT&&(h?h>=f.getLength()?d.setEndAfter(f):(d.setEndAfter(f),j=0):d.setEndBefore(f));var d=new CKEDITOR.dom.walker(d),k=CKEDITOR.dom.walker.bookmark();d.evaluator=function(b){return b.type==(a==CKEDITOR.SHRINK_ELEMENT?CKEDITOR.NODE_ELEMENT:CKEDITOR.NODE_TEXT)};var l;return d.guard=function(b,d){return k(b)?!0:a==CKEDITOR.SHRINK_ELEMENT&&b.type==CKEDITOR.NODE_TEXT||d&&b.equals(l)||!1===c&&b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary()||b.type==CKEDITOR.NODE_ELEMENT&&b.hasAttribute("contenteditable")?!1:(d||b.type!=CKEDITOR.NODE_ELEMENT||(l=b),!0)},i&&(e=d[a==CKEDITOR.SHRINK_ELEMENT?"lastForward":"next"]())&&this.setStartAt(e,b?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_START),j&&(d.reset(),(d=d[a==CKEDITOR.SHRINK_ELEMENT?"lastBackward":"previous"]())&&this.setEndAt(d,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_END)),!(!i&&!j)}},insertNode:function(a){this.optimizeBookmark(),this.trim(!1,!0);var b=this.startContainer,c=b.getChild(this.startOffset);c?a.insertBefore(c):b.append(a),a.getParent()&&a.getParent().equals(this.endContainer)&&this.endOffset++,this.setStartBefore(a)},moveToPosition:function(a,b){this.setStartAt(a,b),this.collapse(!0)},moveToRange:function(a){this.setStart(a.startContainer,a.startOffset),this.setEnd(a.endContainer,a.endOffset)},selectNodeContents:function(a){this.setStart(a,0),this.setEnd(a,a.type==CKEDITOR.NODE_TEXT?a.getLength():a.getChildCount())},setStart:function(b,c){b.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[b.getName()]&&(c=b.getIndex(),b=b.getParent()),this._setStartContainer(b),this.startOffset=c,this.endContainer||(this._setEndContainer(b),this.endOffset=c),a(this)},setEnd:function(b,c){b.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[b.getName()]&&(c=b.getIndex()+1,b=b.getParent()),this._setEndContainer(b),this.endOffset=c,this.startContainer||(this._setStartContainer(b),this.startOffset=c),a(this)},setStartAfter:function(a){this.setStart(a.getParent(),a.getIndex()+1)},setStartBefore:function(a){this.setStart(a.getParent(),a.getIndex())},setEndAfter:function(a){this.setEnd(a.getParent(),a.getIndex()+1)},setEndBefore:function(a){this.setEnd(a.getParent(),a.getIndex())},setStartAt:function(b,c){switch(c){case CKEDITOR.POSITION_AFTER_START:this.setStart(b,0);break;case CKEDITOR.POSITION_BEFORE_END:b.type==CKEDITOR.NODE_TEXT?this.setStart(b,b.getLength()):this.setStart(b,b.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setStartBefore(b);break;case CKEDITOR.POSITION_AFTER_END:this.setStartAfter(b)}a(this)},setEndAt:function(b,c){switch(c){case CKEDITOR.POSITION_AFTER_START:this.setEnd(b,0);break;case CKEDITOR.POSITION_BEFORE_END:b.type==CKEDITOR.NODE_TEXT?this.setEnd(b,b.getLength()):this.setEnd(b,b.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setEndBefore(b);break;case CKEDITOR.POSITION_AFTER_END:this.setEndAfter(b)}a(this)},fixBlock:function(a,b){var c=this.createBookmark(),d=this.document.createElement(b);this.collapse(a),this.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS),this.extractContents().appendTo(d),d.trim(),this.insertNode(d);var e=d.getBogus();return e&&e.remove(),d.appendBogus(),this.moveToBookmark(c),d},splitBlock:function(a,b){var c=new CKEDITOR.dom.elementPath(this.startContainer,this.root),d=new CKEDITOR.dom.elementPath(this.endContainer,this.root),e=c.block,f=d.block,g=null;return c.blockLimit.equals(d.blockLimit)?("br"!=a&&(e||(e=this.fixBlock(!0,a),f=new CKEDITOR.dom.elementPath(this.endContainer,this.root).block),f||(f=this.fixBlock(!1,a))),c=e&&this.checkStartOfBlock(),d=f&&this.checkEndOfBlock(),this.deleteContents(),e&&e.equals(f)&&(d?(g=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(f,CKEDITOR.POSITION_AFTER_END),f=null):c?(g=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(e,CKEDITOR.POSITION_BEFORE_START),e=null):(f=this.splitElement(e,b||!1),e.is("ul","ol")||e.appendBogus())),{previousBlock:e,nextBlock:f,wasStartOfBlock:c,wasEndOfBlock:d,elementPath:g}):null},splitElement:function(a,b){if(!this.collapsed)return null;this.setEndAt(a,CKEDITOR.POSITION_BEFORE_END);var c=this.extractContents(!1,b||!1),d=a.clone(!1,b||!1);return c.appendTo(d),d.insertAfter(a),this.moveToPosition(a,CKEDITOR.POSITION_AFTER_END),d},removeEmptyBlocksAtEnd:function(){function a(a){return function(d){return!(b(d)||c(d)||d.type==CKEDITOR.NODE_ELEMENT&&d.isEmptyInlineRemoveable()||a.is("table")&&d.is("caption"))}}var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(!1);return function(b){for(var c,d=this.createBookmark(),e=this[b?"endPath":"startPath"](),f=e.block||e.blockLimit;f&&!f.equals(e.root)&&!f.getFirst(a(f));)c=f.getParent(),this[b?"setEndAt":"setStartAt"](f,CKEDITOR.POSITION_AFTER_END),f.remove(1),f=c;this.moveToBookmark(d)}}(),startPath:function(){return new CKEDITOR.dom.elementPath(this.startContainer,this.root)},endPath:function(){return new CKEDITOR.dom.elementPath(this.endContainer,this.root)},checkBoundaryOfElement:function(a,b){var c=b==CKEDITOR.START,e=this.clone();return e.collapse(c),e[c?"setStartAt":"setEndAt"](a,c?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END),e=new CKEDITOR.dom.walker(e),e.evaluator=d(c),e[c?"checkBackward":"checkForward"]()},checkStartOfBlock:function(){var a=this.startContainer,b=this.startOffset; +return CKEDITOR.env.ie&&b&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.ltrim(a.substring(0,b)),h.test(a)&&this.trim(0,1)),this.trim(),a=new CKEDITOR.dom.elementPath(this.startContainer,this.root),b=this.clone(),b.collapse(!0),b.setStartAt(a.block||a.blockLimit,CKEDITOR.POSITION_AFTER_START),a=new CKEDITOR.dom.walker(b),a.evaluator=c(),a.checkBackward()},checkEndOfBlock:function(){var a=this.endContainer,b=this.endOffset;return CKEDITOR.env.ie&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.rtrim(a.substring(b)),h.test(a)&&this.trim(1,0)),this.trim(),a=new CKEDITOR.dom.elementPath(this.endContainer,this.root),b=this.clone(),b.collapse(!1),b.setEndAt(a.block||a.blockLimit,CKEDITOR.POSITION_BEFORE_END),a=new CKEDITOR.dom.walker(b),a.evaluator=c(),a.checkForward()},getPreviousNode:function(a,b,c){var d=this.clone();return d.collapse(1),d.setStartAt(c||this.root,CKEDITOR.POSITION_AFTER_START),c=new CKEDITOR.dom.walker(d),c.evaluator=a,c.guard=b,c.previous()},getNextNode:function(a,b,c){var d=this.clone();return d.collapse(),d.setEndAt(c||this.root,CKEDITOR.POSITION_BEFORE_END),c=new CKEDITOR.dom.walker(d),c.evaluator=a,c.guard=b,c.next()},checkReadOnly:function(){function a(a,b){for(;a;){if(a.type==CKEDITOR.NODE_ELEMENT){if("false"==a.getAttribute("contentEditable")&&!a.data("cke-editable"))return 0;if(a.is("html")||"true"==a.getAttribute("contentEditable")&&(a.contains(b)||a.equals(b)))break}a=a.getParent()}return 1}return function(){var b=this.startContainer,c=this.endContainer;return!(a(b,c)&&a(c,b))}}(),moveToElementEditablePosition:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&!a.isEditable(!1))return this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START),!0;for(var c=0;a;){if(a.type==CKEDITOR.NODE_TEXT){b&&this.endContainer&&this.checkEndOfBlock()&&h.test(a.getText())?this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START):this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START),c=1;break}if(a.type==CKEDITOR.NODE_ELEMENT)if(a.isEditable())this.moveToPosition(a,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_START),c=1;else if(b&&a.is("br")&&this.endContainer&&this.checkEndOfBlock())this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START);else if("false"==a.getAttribute("contenteditable")&&a.is(CKEDITOR.dtd.$block))return this.setStartBefore(a),this.setEndAfter(a),!0;var d=a,e=c,f=void 0;d.type==CKEDITOR.NODE_ELEMENT&&d.isEditable(!1)&&(f=d[b?"getLast":"getFirst"](j)),e||f||(f=d[b?"getPrevious":"getNext"](j)),a=f}return!!c},moveToClosestEditablePosition:function(a,b){var c,d,e,f=0,g=[CKEDITOR.POSITION_AFTER_END,CKEDITOR.POSITION_BEFORE_START];return a?(c=new CKEDITOR.dom.range(this.root),c.moveToPosition(a,g[b?0:1])):c=this.clone(),a&&!a.is(CKEDITOR.dtd.$block)?f=1:(d=c[b?"getNextEditableNode":"getPreviousEditableNode"]())&&(f=1,(e=d.type==CKEDITOR.NODE_ELEMENT)&&d.is(CKEDITOR.dtd.$block)&&"false"==d.getAttribute("contenteditable")?(c.setStartAt(d,CKEDITOR.POSITION_BEFORE_START),c.setEndAt(d,CKEDITOR.POSITION_AFTER_END)):!CKEDITOR.env.needsBrFiller&&e&&d.is(CKEDITOR.dom.walker.validEmptyBlockContainers)?(c.setEnd(d,0),c.collapse()):c.moveToPosition(d,g[b?1:0])),f&&this.moveToRange(c),!!f},moveToElementEditStart:function(a){return this.moveToElementEditablePosition(a)},moveToElementEditEnd:function(a){return this.moveToElementEditablePosition(a,!0)},getEnclosedNode:function(){var a=this.clone();if(a.optimize(),a.startContainer.type!=CKEDITOR.NODE_ELEMENT||a.endContainer.type!=CKEDITOR.NODE_ELEMENT)return null;var a=new CKEDITOR.dom.walker(a),b=CKEDITOR.dom.walker.bookmark(!1,!0),c=CKEDITOR.dom.walker.whitespaces(!0);a.evaluator=function(a){return c(a)&&b(a)};var d=a.next();return a.reset(),d&&d.equals(a.previous())?d:null},getTouchedStartNode:function(){var a=this.startContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.startOffset)||a},getTouchedEndNode:function(){var a=this.endContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.endOffset-1)||a},getNextEditableNode:e(),getPreviousEditableNode:e(1),scrollIntoView:function(){var a,b,c,d=new CKEDITOR.dom.element.createFromHtml("<span> </span>",this.document),e=this.clone();e.optimize(),(c=e.startContainer.type==CKEDITOR.NODE_TEXT)?(b=e.startContainer.getText(),a=e.startContainer.split(e.startOffset),d.insertAfter(e.startContainer)):e.insertNode(d),d.scrollIntoView(),c&&(e.startContainer.setText(b),a.remove()),d.remove()},_setStartContainer:function(a){this.startContainer=a},_setEndContainer:function(a){this.endContainer=a}}}(),CKEDITOR.POSITION_AFTER_START=1,CKEDITOR.POSITION_BEFORE_END=2,CKEDITOR.POSITION_BEFORE_START=3,CKEDITOR.POSITION_AFTER_END=4,CKEDITOR.ENLARGE_ELEMENT=1,CKEDITOR.ENLARGE_BLOCK_CONTENTS=2,CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS=3,CKEDITOR.ENLARGE_INLINE=4,CKEDITOR.START=1,CKEDITOR.END=2,CKEDITOR.SHRINK_ELEMENT=1,CKEDITOR.SHRINK_TEXT=2,function(){function a(a){1>arguments.length||(this.range=a,this.forceBrBreak=0,this.enlargeBr=1,this.enforceRealBlocks=0,this._||(this._={}))}function b(a){var b=[];return a.forEach(function(a){return"true"==a.getAttribute("contenteditable")?(b.push(a),!1):void 0},CKEDITOR.NODE_ELEMENT,!0),b}function c(a,d,e,f){a:{null==f&&(f=b(e));for(var g;g=f.shift();)if(g.getDtd().p){f={element:g,remaining:f};break a}f=null}return f?(g=CKEDITOR.filter.instances[f.element.data("cke-filter")])&&!g.check(d)?c(a,d,e,f.remaining):(d=new CKEDITOR.dom.range(f.element),d.selectNodeContents(f.element),d=d.createIterator(),d.enlargeBr=a.enlargeBr,d.enforceRealBlocks=a.enforceRealBlocks,d.activeFilter=d.filter=g,a._.nestedEditable={element:f.element,container:e,remaining:f.remaining,iterator:d},1):0}function d(a,b,c){return b?(a=a.clone(),a.collapse(!c),a.checkBoundaryOfElement(b,c?CKEDITOR.START:CKEDITOR.END)):!1}var e=/^[\r\n\t ]+$/,f=CKEDITOR.dom.walker.bookmark(!1,!0),g=CKEDITOR.dom.walker.whitespaces(!0),h=function(a){return f(a)&&g(a)},i={dd:1,dt:1,li:1};a.prototype={getNextParagraph:function(a){var b,g,j,k,l;if(a=a||"p",this._.nestedEditable){if(b=this._.nestedEditable.iterator.getNextParagraph(a))return this.activeFilter=this._.nestedEditable.iterator.activeFilter,b;if(this.activeFilter=this.filter,c(this,a,this._.nestedEditable.container,this._.nestedEditable.remaining))return this.activeFilter=this._.nestedEditable.iterator.activeFilter,this._.nestedEditable.iterator.getNextParagraph(a);this._.nestedEditable=null}if(!this.range.root.getDtd()[a])return null;if(!this._.started){var m=this.range.clone();g=m.startPath();var n=m.endPath(),o=!m.collapsed&&d(m,g.block),p=!m.collapsed&&d(m,n.block,1);m.shrink(CKEDITOR.SHRINK_ELEMENT,!0),o&&m.setStartAt(g.block,CKEDITOR.POSITION_BEFORE_END),p&&m.setEndAt(n.block,CKEDITOR.POSITION_AFTER_START),g=m.endContainer.hasAscendant("pre",!0)||m.startContainer.hasAscendant("pre",!0),m.enlarge(this.forceBrBreak&&!g||!this.enlargeBr?CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:CKEDITOR.ENLARGE_BLOCK_CONTENTS),m.collapsed||(g=new CKEDITOR.dom.walker(m.clone()),n=CKEDITOR.dom.walker.bookmark(!0,!0),g.evaluator=n,this._.nextNode=g.next(),g=new CKEDITOR.dom.walker(m.clone()),g.evaluator=n,g=g.previous(),this._.lastNode=g.getNextSourceNode(!0,null,m.root),this._.lastNode&&this._.lastNode.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(this._.lastNode.getText())&&this._.lastNode.getParent().isBlockBoundary()&&(n=this.range.clone(),n.moveToPosition(this._.lastNode,CKEDITOR.POSITION_AFTER_END),n.checkEndOfBlock()&&(n=new CKEDITOR.dom.elementPath(n.endContainer,n.root),this._.lastNode=(n.block||n.blockLimit).getNextSourceNode(!0))),this._.lastNode&&m.root.contains(this._.lastNode)||(this._.lastNode=this._.docEndMarker=m.document.createText(""),this._.lastNode.insertAfter(g)),m=null),this._.started=1,g=m}for(n=this._.nextNode,m=this._.lastNode,this._.nextNode=null;n;){var o=0,p=n.hasAscendant("pre"),q=n.type!=CKEDITOR.NODE_ELEMENT,r=0;if(q)n.type==CKEDITOR.NODE_TEXT&&e.test(n.getText())&&(q=0);else{var s=n.getName();if(CKEDITOR.dtd.$block[s]&&"false"==n.getAttribute("contenteditable")){b=n,c(this,a,b);break}if(n.isBlockBoundary(this.forceBrBreak&&!p&&{br:1})){if("br"==s)q=1;else if(!g&&!n.getChildCount()&&"hr"!=s){b=n,j=n.equals(m);break}g&&(g.setEndAt(n,CKEDITOR.POSITION_BEFORE_START),"br"!=s&&(this._.nextNode=n)),o=1}else{if(n.getFirst()){g||(g=this.range.clone(),g.setStartAt(n,CKEDITOR.POSITION_BEFORE_START)),n=n.getFirst();continue}q=1}}if(q&&!g&&(g=this.range.clone(),g.setStartAt(n,CKEDITOR.POSITION_BEFORE_START)),j=(!o||q)&&n.equals(m),g&&!o)for(;!n.getNext(h)&&!j;){if(s=n.getParent(),s.isBlockBoundary(this.forceBrBreak&&!p&&{br:1})){o=1,q=0,j||s.equals(m),g.setEndAt(s,CKEDITOR.POSITION_BEFORE_END);break}n=s,q=1,j=n.equals(m),r=1}if(q&&g.setEndAt(n,CKEDITOR.POSITION_AFTER_END),n=this._getNextSourceNode(n,r,m),(j=!n)||o&&g)break}if(!b){if(!g)return this._.docEndMarker&&this._.docEndMarker.remove(),this._.nextNode=null;b=new CKEDITOR.dom.elementPath(g.startContainer,g.root),n=b.blockLimit,o={div:1,th:1,td:1},b=b.block,!b&&n&&!this.enforceRealBlocks&&o[n.getName()]&&g.checkStartOfBlock()&&g.checkEndOfBlock()&&!n.equals(g.root)?b=n:!b||this.enforceRealBlocks&&b.is(i)?(b=this.range.document.createElement(a),g.extractContents().appendTo(b),b.trim(),g.insertNode(b),k=l=!0):"li"!=b.getName()?g.checkStartOfBlock()&&g.checkEndOfBlock()||(b=b.clone(!1),g.extractContents().appendTo(b),b.trim(),l=g.splitBlock(),k=!l.wasStartOfBlock,l=!l.wasEndOfBlock,g.insertNode(b)):j||(this._.nextNode=b.equals(m)?null:this._getNextSourceNode(g.getBoundaryNodes().endNode,1,m))}return k&&(k=b.getPrevious())&&k.type==CKEDITOR.NODE_ELEMENT&&("br"==k.getName()?k.remove():k.getLast()&&"br"==k.getLast().$.nodeName.toLowerCase()&&k.getLast().remove()),l&&(k=b.getLast())&&k.type==CKEDITOR.NODE_ELEMENT&&"br"==k.getName()&&(!CKEDITOR.env.needsBrFiller||k.getPrevious(f)||k.getNext(f))&&k.remove(),this._.nextNode||(this._.nextNode=j||b.equals(m)||!m?null:this._getNextSourceNode(b,1,m)),b},_getNextSourceNode:function(a,b,c){function d(a){return!(a.equals(c)||a.equals(e))}var e=this.range.root;for(a=a.getNextSourceNode(b,null,d);!f(a);)a=a.getNextSourceNode(b,null,d);return a}},CKEDITOR.dom.range.prototype.createIterator=function(){return new a(this)}}(),CKEDITOR.command=function(a,b){this.uiItems=[],this.exec=function(c){return this.state!=CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()?(this.editorFocus&&a.focus(),!1===this.fire("exec")?!0:!1!==b.exec.call(this,a,c)):!1},this.refresh=function(a,c){return!this.readOnly&&a.readOnly?!0:this.context&&!c.isContextFor(this.context)||!this.checkAllowed(!0)?(this.disable(),!0):(this.startDisabled||this.enable(),this.modes&&!this.modes[a.mode]&&this.disable(),!1===this.fire("refresh",{editor:a,path:c})?!0:b.refresh&&!1!==b.refresh.apply(this,arguments))};var c;this.checkAllowed=function(b){return b||"boolean"!=typeof c?c=a.activeFilter.checkFeature(this):c},CKEDITOR.tools.extend(this,b,{modes:{wysiwyg:1},editorFocus:1,contextSensitive:!!b.context,state:CKEDITOR.TRISTATE_DISABLED}),CKEDITOR.event.call(this)},CKEDITOR.command.prototype={enable:function(){this.state==CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()&&this.setState(this.preserveState&&"undefined"!=typeof this.previousState?this.previousState:CKEDITOR.TRISTATE_OFF)},disable:function(){this.setState(CKEDITOR.TRISTATE_DISABLED)},setState:function(a){return this.state==a||a!=CKEDITOR.TRISTATE_DISABLED&&!this.checkAllowed()?!1:(this.previousState=this.state,this.state=a,this.fire("state"),!0)},toggleState:function(){this.state==CKEDITOR.TRISTATE_OFF?this.setState(CKEDITOR.TRISTATE_ON):this.state==CKEDITOR.TRISTATE_ON&&this.setState(CKEDITOR.TRISTATE_OFF)}},CKEDITOR.event.implementOn(CKEDITOR.command.prototype),CKEDITOR.ENTER_P=1,CKEDITOR.ENTER_BR=2,CKEDITOR.ENTER_DIV=3,CKEDITOR.config={customConfig:"config.js",autoUpdateElement:!0,language:"",defaultLanguage:"en",contentsLangDirection:"",enterMode:CKEDITOR.ENTER_P,forceEnterMode:!1,shiftEnterMode:CKEDITOR.ENTER_BR,docType:"<!DOCTYPE html>",bodyId:"",bodyClass:"",fullPage:!1,height:200,contentsCss:CKEDITOR.getUrl("contents.css"),extraPlugins:"",removePlugins:"",protectedSource:[],tabIndex:0,width:"",baseFloatZIndex:1e4,blockedKeystrokes:[CKEDITOR.CTRL+66,CKEDITOR.CTRL+73,CKEDITOR.CTRL+85]},function(){function a(a,b,c,d,e){var f,h;a=[];for(f in b){h=b[f],h="boolean"==typeof h?{}:"function"==typeof h?{match:h}:B(h),"$"!=f.charAt(0)&&(h.elements=f),c&&(h.featureName=c.toLowerCase());var i=h;i.elements=g(i.elements,/\s+/)||null,i.propertiesOnly=i.propertiesOnly||!0===i.elements;var j=/\s*,\s*/,k=void 0;for(k in F){i[k]=g(i[k],j)||null;var l=i,m=G[k],n=g(i[G[k]],j),o=i[k],p=[],q=!0,s=void 0;n?q=!1:n={};for(s in o)"!"==s.charAt(0)&&(s=s.slice(1),p.push(s),n[s]=!0,q=!1);for(;s=p.pop();)o[s]=o["!"+s],delete o["!"+s];l[m]=(q?!1:n)||null}i.match=i.match||null,d.push(h),a.push(h)}b=e.elements,e=e.generic;var t;for(c=0,d=a.length;d>c;++c){f=B(a[c]),h=!0===f.classes||!0===f.styles||!0===f.attributes,i=f,k=m=j=void 0;for(j in F)i[j]=r(i[j]);l=!0;for(k in G){j=G[k],m=i[j],n=[],o=void 0;for(o in m)-1<o.indexOf("*")?n.push(new RegExp("^"+o.replace(/\*/g,".*")+"$")):n.push(o);m=n,m.length&&(i[j]=m,l=!1)}if(i.nothingRequired=l,i.noProperties=!(i.attributes||i.classes||i.styles),!0===f.elements||null===f.elements)e[h?"unshift":"push"](f);else for(t in i=f.elements,delete f.elements,i)b[t]?b[t][h?"unshift":"push"](f):b[t]=[f]}}function b(a,b,d,e){if((!a.match||a.match(b))&&(e||h(a,b))&&(a.propertiesOnly||(d.valid=!0),d.allAttributes||(d.allAttributes=c(a.attributes,b.attributes,d.validAttributes)),d.allStyles||(d.allStyles=c(a.styles,b.styles,d.validStyles)),!d.allClasses)){if(a=a.classes,b=b.classes,e=d.validClasses,a)if(!0===a)a=!0;else{for(var f,g=0,i=b.length;i>g;++g)f=b[g],e[f]||(e[f]=a(f));a=!1}else a=!1;d.allClasses=a}}function c(a,b,c){if(!a)return!1;if(!0===a)return!0;for(var d in b)c[d]||(c[d]=a(d));return!1}function d(a,b,c){if(!a.match||a.match(b)){if(a.noProperties)return!1;if(c.hadInvalidAttribute=e(a.attributes,b.attributes)||c.hadInvalidAttribute,c.hadInvalidStyle=e(a.styles,b.styles)||c.hadInvalidStyle,a=a.classes,b=b.classes,a){for(var d=!1,f=!0===a,g=b.length;g--;)(f||a(b[g]))&&(b.splice(g,1),d=!0);a=d}else a=!1;c.hadInvalidClass=a||c.hadInvalidClass}}function e(a,b){if(!a)return!1;var c,d=!1,e=!0===a;for(c in b)(e||a(c))&&(delete b[c],d=!0);return d}function f(a,b,c){return a.disabled||a.customConfig&&!c||!b?!1:(a._.cachedChecks={},!0)}function g(a,b){if(!a)return!1;if(!0===a)return a;if("string"==typeof a)return a=C(a),"*"==a?!0:CKEDITOR.tools.convertArrayToObject(a.split(b));if(CKEDITOR.tools.isArray(a))return a.length?CKEDITOR.tools.convertArrayToObject(a):!1;var c,d={},e=0;for(c in a)d[c]=a[c],e++;return e?d:!1}function h(a,b){if(a.nothingRequired)return!0;var c,d,e,f;if(e=a.requiredClasses)for(f=b.classes,c=0;c<e.length;++c)if(d=e[c],"string"==typeof d){if(-1==CKEDITOR.tools.indexOf(f,d))return!1}else if(!CKEDITOR.tools.checkIfAnyArrayItemMatches(f,d))return!1;return i(b.styles,a.requiredStyles)&&i(b.attributes,a.requiredAttributes)}function i(a,b){if(!b)return!0;for(var c,d=0;d<b.length;++d)if(c=b[d],"string"==typeof c){if(!(c in a))return!1}else if(!CKEDITOR.tools.checkIfAnyObjectPropertyMatches(a,c))return!1;return!0}function j(a){if(!a)return{};a=a.split(/\s*,\s*/).sort();for(var b={};a.length;)b[a.shift()]="cke-test";return b}function k(a){var b,c,d,e,f={},g=1;for(a=C(a);b=a.match(H);)(c=b[2])?(d=l(c,"styles"),e=l(c,"attrs"),c=l(c,"classes")):d=e=c=null,f["$"+g++]={elements:b[1],classes:c,styles:d,attributes:e},a=a.slice(b[0].length);return f}function l(a,b){var c=a.match(I[b]);return c?C(c[1]):null}function m(a){var b=a.styleBackup=a.attributes.style,c=a.classBackup=a.attributes["class"];a.styles||(a.styles=CKEDITOR.tools.parseCssText(b||"",1)),a.classes||(a.classes=c?c.split(/\s+/):[])}function n(a,c,e,f){var g,h=0;if(f.toHtml&&(c.name=c.name.replace(J,"$1")),f.doCallbacks&&a.elementCallbacks){a:{g=a.elementCallbacks;for(var i,j=0,k=g.length;k>j;++j)if(i=g[j](c)){g=i;break a}g=void 0}if(g)return g}if(f.doTransform&&(g=a._.transformations[c.name])){for(m(c),j=0;j<g.length;++j)v(a,c,g[j]);p(c)}if(f.doFilter){a:{j=c.name,k=a._,a=k.allowedRules.elements[j],g=k.allowedRules.generic,j=k.disallowedRules.elements[j],k=k.disallowedRules.generic,i=f.skipRequired;var l,n,o={valid:!1,validAttributes:{},validClasses:{},validStyles:{},allAttributes:!1,allClasses:!1,allStyles:!1,hadInvalidAttribute:!1,hadInvalidClass:!1,hadInvalidStyle:!1};if(a||g){if(m(c),j)for(l=0,n=j.length;n>l;++l)if(!1===d(j[l],c,o)){a=null;break a}if(k)for(l=0,n=k.length;n>l;++l)d(k[l],c,o);if(a)for(l=0,n=a.length;n>l;++l)b(a[l],c,o,i);if(g)for(l=0,n=g.length;n>l;++l)b(g[l],c,o,i);a=o}else a=null}if(!a||!a.valid)return e.push(c),1;n=a.validAttributes;var r=a.validStyles;g=a.validClasses;var j=c.attributes,s=c.styles,k=c.classes;i=c.classBackup;var t,u,w=c.styleBackup,x=[],o=[],y=/^data-cke-/;if(l=!1,delete j.style,delete j["class"],delete c.classBackup,delete c.styleBackup,!a.allAttributes)for(t in j)n[t]||(y.test(t)?t==(u=t.replace(/^data-cke-saved-/,""))||n[u]||(delete j[t],l=!0):(delete j[t],l=!0));if(!a.allStyles||a.hadInvalidStyle){for(t in s)a.allStyles||r[t]?x.push(t+":"+s[t]):l=!0;x.length&&(j.style=x.sort().join("; "))}else w&&(j.style=w);if(!a.allClasses||a.hadInvalidClass){for(t=0;t<k.length;++t)(a.allClasses||g[k[t]])&&o.push(k[t]);o.length&&(j["class"]=o.sort().join(" ")),i&&o.length<i.split(/\s+/).length&&(l=!0)}else i&&(j["class"]=i);if(l&&(h=1),!f.skipFinalValidation&&!q(c))return e.push(c),1}return f.toHtml&&(c.name=c.name.replace(K,"cke:$1")),h}function o(a){var b,c=[];for(b in a)-1<b.indexOf("*")&&c.push(b.replace(/\*/g,".*"));return c.length?new RegExp("^(?:"+c.join("|")+")$"):null}function p(a){var b,c=a.attributes;delete c.style,delete c["class"],(b=CKEDITOR.tools.writeCssText(a.styles,!0))&&(c.style=b),a.classes.length&&(c["class"]=a.classes.sort().join(" "))}function q(a){switch(a.name){case"a":if(!(a.children.length||a.attributes.name||a.attributes.id))return!1;break;case"img":if(!a.attributes.src)return!1}return!0}function r(a){if(!a)return!1;if(!0===a)return!0;var b=o(a);return function(c){return c in a||b&&c.match(b)}}function s(){return new CKEDITOR.htmlParser.element("br")}function t(a){return a.type==CKEDITOR.NODE_ELEMENT&&("br"==a.name||A.$block[a.name])}function u(a,b,c){var d=a.name;if(A.$empty[d]||!a.children.length)"hr"==d&&"br"==b?a.replaceWith(s()):(a.parent&&c.push({check:"it",el:a.parent}),a.remove());else if(A.$block[d]||"tr"==d)if("br"==b)a.previous&&!t(a.previous)&&(b=s(),b.insertBefore(a)),a.next&&!t(a.next)&&(b=s(),b.insertAfter(a)),a.replaceWithChildren();else{var e,d=a.children;a:{e=A[b];for(var f,g=0,h=d.length;h>g;++g)if(f=d[g],f.type==CKEDITOR.NODE_ELEMENT&&!e[f.name]){e=!1;break a}e=!0}if(e)a.name=b,a.attributes={},c.push({check:"parent-down",el:a});else{e=a.parent;for(var i,j,g=e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||"body"==e.name,h=d.length;h>0;)f=d[--h],g&&(f.type==CKEDITOR.NODE_TEXT||f.type==CKEDITOR.NODE_ELEMENT&&A.$inline[f.name])?(i||(i=new CKEDITOR.htmlParser.element(b),i.insertAfter(a),c.push({check:"parent-down",el:i})),i.add(f,0)):(i=null,j=A[e.name]||A.span,f.insertAfter(a),e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||f.type!=CKEDITOR.NODE_ELEMENT||j[f.name]||c.push({check:"el-up",el:f}));a.remove()}}else d in{style:1,script:1}?a.remove():(a.parent&&c.push({check:"it",el:a.parent}),a.replaceWithChildren())}function v(a,b,c){var d,e;for(d=0;d<c.length;++d)if(e=c[d],!(e.check&&!a.check(e.check,!1)||e.left&&!e.left(b))){e.right(b,E);break}}function w(a,b){var c,d,e,f,g=b.getDefinition(),h=g.attributes,i=g.styles;if(a.name!=g.element)return!1;for(c in h)if("class"==c){for(g=h[c].split(/\s+/),e=a.classes.join("|");f=g.pop();)if(-1==e.indexOf(f))return!1}else if(a.attributes[c]!=h[c])return!1;for(d in i)if(a.styles[d]!=i[d])return!1;return!0}function x(a,b){var c,d;return"string"==typeof a?c=a:a instanceof CKEDITOR.style?d=a:(c=a[0],d=a[1]),[{element:c,left:d,right:function(a,c){c.transform(a,b)}}]}function y(a){return function(b){return w(b,a)}}function z(a){return function(b,c){c[a](b)}}var A=CKEDITOR.dtd,B=CKEDITOR.tools.copy,C=CKEDITOR.tools.trim,D=["","p","br","div"];CKEDITOR.FILTER_SKIP_TREE=2,CKEDITOR.filter=function(a){if(this.allowedContent=[],this.disallowedContent=[],this.elementCallbacks=null,this.disabled=!1,this.editor=null,this.id=CKEDITOR.tools.getNextNumber(),this._={allowedRules:{elements:{},generic:[]},disallowedRules:{elements:{},generic:[]},transformations:{},cachedTests:{}},CKEDITOR.filter.instances[this.id]=this,a instanceof CKEDITOR.editor){a=this.editor=a,this.customConfig=!0;var b=a.config.allowedContent;!0===b?this.disabled=!0:(b||(this.customConfig=!1),this.allow(b,"config",1),this.allow(a.config.extraAllowedContent,"extra",1),this.allow(D[a.enterMode]+" "+D[a.shiftEnterMode],"default",1),this.disallow(a.config.disallowedContent))}else this.customConfig=!1,this.allow(a,"default",1)},CKEDITOR.filter.instances={},CKEDITOR.filter.prototype={allow:function(b,c,d){if(!f(this,b,d))return!1;var e,g;if("string"==typeof b)b=k(b);else if(b instanceof CKEDITOR.style){if(b.toAllowedContentRules)return this.allow(b.toAllowedContentRules(this.editor),c,d);e=b.getDefinition(),b={},d=e.attributes,b[e.element]=e={styles:e.styles,requiredStyles:e.styles&&CKEDITOR.tools.objectKeys(e.styles)},d&&(d=B(d),e.classes=d["class"]?d["class"].split(/\s+/):null,e.requiredClasses=e.classes,delete d["class"],e.attributes=d,e.requiredAttributes=d&&CKEDITOR.tools.objectKeys(d))}else if(CKEDITOR.tools.isArray(b)){for(e=0;e<b.length;++e)g=this.allow(b[e],c,d);return g}return a(this,b,c,this.allowedContent,this._.allowedRules),!0},applyTo:function(a,b,c,d){if(this.disabled)return!1;var e,f=this,g=[],h=this.editor&&this.editor.config.protectedSource,i=!1,j={doFilter:!c,doTransform:!0,doCallbacks:!0,toHtml:b};a.forEach(function(a){if(a.type==CKEDITOR.NODE_ELEMENT){if("off"==a.attributes["data-cke-filter"])return!1;if(!b||"span"!=a.name||!~CKEDITOR.tools.objectKeys(a.attributes).join("|").indexOf("data-cke-"))if(e=n(f,a,g,j),1&e)i=!0;else if(2&e)return!1}else if(a.type==CKEDITOR.NODE_COMMENT&&a.value.match(/^\{cke_protected\}(?!\{C\})/)){var c;a:{var d=decodeURIComponent(a.value.replace(/^\{cke_protected\}/,""));c=[];var k,l,m;if(h)for(l=0;l<h.length;++l)if((m=d.match(h[l]))&&m[0].length==d.length){c=!0;break a}d=CKEDITOR.htmlParser.fragment.fromHtml(d),1==d.children.length&&(k=d.children[0]).type==CKEDITOR.NODE_ELEMENT&&n(f,k,c,j),c=!c.length}c||g.push(a)}},null,!0),g.length&&(i=!0);var k;a=[],d=D[d||(this.editor?this.editor.enterMode:CKEDITOR.ENTER_P)];for(var l;c=g.pop();)c.type==CKEDITOR.NODE_ELEMENT?u(c,d,a):c.remove();for(;k=a.pop();)if(c=k.el,c.parent)switch(l=A[c.parent.name]||A.span,k.check){case"it":A.$removeEmpty[c.name]&&!c.children.length?u(c,d,a):q(c)||u(c,d,a);break;case"el-up":c.parent.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||l[c.name]||u(c,d,a);break;case"parent-down":c.parent.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||l[c.name]||u(c.parent,d,a)}return i},checkFeature:function(a){return this.disabled||!a?!0:(a.toFeature&&(a=a.toFeature(this.editor)),!a.requiredContent||this.check(a.requiredContent))},disable:function(){this.disabled=!0},disallow:function(b){return f(this,b,!0)?("string"==typeof b&&(b=k(b)),a(this,b,null,this.disallowedContent,this._.disallowedRules),!0):!1},addContentForms:function(a){if(!this.disabled&&a){var b,c,d,e=[];for(b=0;b<a.length&&!d;++b)c=a[b],("string"==typeof c||c instanceof CKEDITOR.style)&&this.check(c)&&(d=c);if(d){for(b=0;b<a.length;++b)e.push(x(a[b],d));this.addTransformations(e)}}},addElementCallback:function(a){this.elementCallbacks||(this.elementCallbacks=[]),this.elementCallbacks.push(a)},addFeature:function(a){return this.disabled||!a?!0:(a.toFeature&&(a=a.toFeature(this.editor)),this.allow(a.allowedContent,a.name),this.addTransformations(a.contentTransformations),this.addContentForms(a.contentForms),a.requiredContent&&(this.customConfig||this.disallowedContent.length)?this.check(a.requiredContent):!0)},addTransformations:function(a){var b,c;if(!this.disabled&&a){var d,e=this._.transformations;for(d=0;d<a.length;++d){b=a[d];var f=void 0,g=void 0,h=void 0,i=void 0,j=void 0,k=void 0;for(c=[],g=0;g<b.length;++g)h=b[g],"string"==typeof h?(h=h.split(/\s*:\s*/),i=h[0],j=null,k=h[1]):(i=h.check,j=h.left,k=h.right),f||(f=h,f=f.element?f.element:i?i.match(/^([a-z0-9]+)/i)[0]:f.left.getDefinition().element),j instanceof CKEDITOR.style&&(j=y(j)),c.push({check:i==f?null:i,left:j,right:"string"==typeof k?z(k):k});b=f,e[b]||(e[b]=[]),e[b].push(c)}}},check:function(a,b,c){if(this.disabled)return!0;if(CKEDITOR.tools.isArray(a)){for(var d=a.length;d--;)if(this.check(a[d],b,c))return!0;return!1}var e,f;if("string"==typeof a){if(f=a+"<"+(!1===b?"0":"1")+(c?"1":"0")+">",f in this._.cachedChecks)return this._.cachedChecks[f];d=k(a).$1,e=d.styles;var g=d.classes;d.name=d.elements,d.classes=g=g?g.split(/\s*,\s*/):[],d.styles=j(e),d.attributes=j(d.attributes),d.children=[],g.length&&(d.attributes["class"]=g.join(" ")),e&&(d.attributes.style=CKEDITOR.tools.writeCssText(d.styles)),e=d}else d=a.getDefinition(),e=d.styles,g=d.attributes||{},e&&!CKEDITOR.tools.isEmpty(e)?(e=B(e),g.style=CKEDITOR.tools.writeCssText(e,!0)):e={},e={name:d.element,attributes:g,classes:g["class"]?g["class"].split(/\s+/):[],styles:e,children:[]};var h,g=CKEDITOR.tools.clone(e),i=[];if(!1!==b&&(h=this._.transformations[e.name])){for(d=0;d<h.length;++d)v(this,e,h[d]);p(e)}return n(this,g,i,{doFilter:!0,doTransform:!1!==b,skipRequired:!c,skipFinalValidation:!c}),b=0<i.length?!1:!!CKEDITOR.tools.objectCompare(e.attributes,g.attributes,!0),"string"==typeof a&&(this._.cachedChecks[f]=b),b},getAllowedEnterMode:function(){var a=["p","div","br"],b={p:CKEDITOR.ENTER_P,div:CKEDITOR.ENTER_DIV,br:CKEDITOR.ENTER_BR};return function(c,d){var e,f=a.slice();if(this.check(D[c]))return c;for(d||(f=f.reverse());e=f.pop();)if(this.check(e))return b[e];return CKEDITOR.ENTER_BR}}(),destroy:function(){delete CKEDITOR.filter.instances[this.id],delete this._,delete this.allowedContent,delete this.disallowedContent}};var E,F={styles:1,attributes:1,classes:1},G={styles:"requiredStyles",attributes:"requiredAttributes",classes:"requiredClasses"},H=/^([a-z0-9\-*\s]+)((?:\s*\{[!\w\-,\s\*]+\}\s*|\s*\[[!\w\-,\s\*]+\]\s*|\s*\([!\w\-,\s\*]+\)\s*){0,3})(?:;\s*|$)/i,I={styles:/{([^}]+)}/,attrs:/\[([^\]]+)\]/,classes:/\(([^\)]+)\)/},J=/^cke:(object|embed|param)$/,K=/^(object|embed|param)$/;E=CKEDITOR.filter.transformationsTools={sizeToStyle:function(a){this.lengthToStyle(a,"width"),this.lengthToStyle(a,"height")},sizeToAttribute:function(a){this.lengthToAttribute(a,"width"),this.lengthToAttribute(a,"height")},lengthToStyle:function(a,b,c){if(c=c||b,!(c in a.styles)){var d=a.attributes[b];d&&(/^\d+$/.test(d)&&(d+="px"),a.styles[c]=d)}delete a.attributes[b]},lengthToAttribute:function(a,b,c){if(c=c||b,!(c in a.attributes)){var d=a.styles[b],e=d&&d.match(/^(\d+)(?:\.\d*)?px$/);e?a.attributes[c]=e[1]:"cke-test"==d&&(a.attributes[c]="cke-test")}delete a.styles[b]},alignmentToStyle:function(a){if(!("float"in a.styles)){var b=a.attributes.align;"left"!=b&&"right"!=b||(a.styles["float"]=b)}delete a.attributes.align},alignmentToAttribute:function(a){if(!("align"in a.attributes)){var b=a.styles["float"];"left"!=b&&"right"!=b||(a.attributes.align=b)}delete a.styles["float"]},matchesStyle:w,transform:function(a,b){if("string"==typeof b)a.name=b;else{var c,d,e,f,g=b.getDefinition(),h=g.styles,i=g.attributes;a.name=g.element;for(c in i)if("class"==c)for(g=a.classes.join("|"),e=i[c].split(/\s+/);f=e.pop();)-1==g.indexOf(f)&&a.classes.push(f);else a.attributes[c]=i[c];for(d in h)a.styles[d]=h[d]}}}}(),function(){CKEDITOR.focusManager=function(a){return a.focusManager?a.focusManager:(this.hasFocus=!1,this.currentActive=null,this._={editor:a},this)},CKEDITOR.focusManager._={blurDelay:200},CKEDITOR.focusManager.prototype={focus:function(a){this._.timer&&clearTimeout(this._.timer),a&&(this.currentActive=a),this.hasFocus||this._.locked||((a=CKEDITOR.currentInstance)&&a.focusManager.blur(1),this.hasFocus=!0,(a=this._.editor.container)&&a.addClass("cke_focus"),this._.editor.fire("focus"))},lock:function(){this._.locked=1},unlock:function(){delete this._.locked},blur:function(a){function b(){if(this.hasFocus){this.hasFocus=!1;var a=this._.editor.container;a&&a.removeClass("cke_focus"),this._.editor.fire("blur")}}if(!this._.locked){this._.timer&&clearTimeout(this._.timer);var c=CKEDITOR.focusManager._.blurDelay;a||!c?b.call(this):this._.timer=CKEDITOR.tools.setTimeout(function(){delete this._.timer,b.call(this)},c,this)}},add:function(a,b){var c=a.getCustomData("focusmanager");if(!c||c!=this){c&&c.remove(a);var c="focus",d="blur";b&&(CKEDITOR.env.ie?(c="focusin",d="focusout"):CKEDITOR.event.useCapture=1);var e={blur:function(){a.equals(this.currentActive)&&this.blur()},focus:function(){this.focus(a)}};a.on(c,e.focus,this),a.on(d,e.blur,this),b&&(CKEDITOR.event.useCapture=0),a.setCustomData("focusmanager",this),a.setCustomData("focusmanager_handlers",e)}},remove:function(a){a.removeCustomData("focusmanager");var b=a.removeCustomData("focusmanager_handlers");a.removeListener("blur",b.blur),a.removeListener("focus",b.focus)}}}(),CKEDITOR.keystrokeHandler=function(a){return a.keystrokeHandler?a.keystrokeHandler:(this.keystrokes={},this.blockedKeystrokes={},this._={editor:a},this)},function(){var a,b=function(b){b=b.data;var c=b.getKeystroke(),d=this.keystrokes[c],e=this._.editor;return a=!1===e.fire("key",{keyCode:c,domEvent:b}),a||(d&&(a=!1!==e.execCommand(d,{from:"keystrokeHandler"})),a||(a=!!this.blockedKeystrokes[c])),a&&b.preventDefault(!0),!a},c=function(b){a&&(a=!1,b.data.preventDefault(!0))};CKEDITOR.keystrokeHandler.prototype={attach:function(a){a.on("keydown",b,this),CKEDITOR.env.gecko&&CKEDITOR.env.mac&&a.on("keypress",c,this)}}}(),function(){CKEDITOR.lang={languages:{af:1,ar:1,bg:1,bn:1,bs:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,"en-au":1,"en-ca":1,"en-gb":1,en:1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,"fr-ca":1,fr:1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,is:1,it:1,ja:1,ka:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,ms:1,nb:1,nl:1,no:1,pl:1,"pt-br":1,pt:1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,"sr-latn":1,sr:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,"zh-cn":1,zh:1},rtl:{ar:1,fa:1,he:1,ku:1,ug:1},load:function(a,b,c){a&&CKEDITOR.lang.languages[a]||(a=this.detect(b,a));var d=this;b=function(){d[a].dir=d.rtl[a]?"rtl":"ltr",c(a,d[a])},this[a]?b():CKEDITOR.scriptLoader.load(CKEDITOR.getUrl("lang/"+a+".js"),b,this)},detect:function(a,b){var c=this.languages;b=b||navigator.userLanguage||navigator.language||a;var d=b.toLowerCase().match(/([a-z]+)(?:-([a-z]+))?/),e=d[1],d=d[2];return c[e+"-"+d]?e=e+"-"+d:c[e]||(e=null),CKEDITOR.lang.detect=e?function(){return e}:function(a){return a},e||a}}}(),CKEDITOR.scriptLoader=function(){var a={},b={};return{load:function(c,d,e,f){var g="string"==typeof c;g&&(c=[c]),e||(e=CKEDITOR);var h=c.length,i=[],j=[],k=function(a){d&&(g?d.call(e,a):d.call(e,i,j))};if(0===h)k(!0);else{var l=function(a,b){(b?i:j).push(a),0>=--h&&(f&&CKEDITOR.document.getDocumentElement().removeStyle("cursor"),k(b))},m=function(c,d){a[c]=1;var e=b[c];delete b[c];for(var f=0;f<e.length;f++)e[f](c,d)},n=function(c){if(a[c])l(c,!0);else{var e=b[c]||(b[c]=[]);if(e.push(l),!(1<e.length)){var f=new CKEDITOR.dom.element("script");f.setAttributes({type:"text/javascript",src:c}),d&&(CKEDITOR.env.ie&&11>CKEDITOR.env.version?f.$.onreadystatechange=function(){"loaded"!=f.$.readyState&&"complete"!=f.$.readyState||(f.$.onreadystatechange=null,m(c,!0))}:(f.$.onload=function(){setTimeout(function(){m(c,!0)},0)},f.$.onerror=function(){m(c,!1)})),f.appendTo(CKEDITOR.document.getHead())}}};f&&CKEDITOR.document.getDocumentElement().setStyle("cursor","wait");for(var o=0;h>o;o++)n(c[o])}},queue:function(){function a(){var a;(a=b[0])&&this.load(a.scriptUrl,a.callback,CKEDITOR,0)}var b=[];return function(c,d){var e=this;b.push({scriptUrl:c,callback:function(){ +d&&d.apply(this,arguments),b.shift(),a.call(e)}}),1==b.length&&a.call(this)}}()}}(),CKEDITOR.resourceManager=function(a,b){this.basePath=a,this.fileName=b,this.registered={},this.loaded={},this.externals={},this._={waitingList:{}}},CKEDITOR.resourceManager.prototype={add:function(a,b){if(this.registered[a])throw Error('[CKEDITOR.resourceManager.add] The resource name "'+a+'" is already registered.');var c=this.registered[a]=b||{};return c.name=a,c.path=this.getPath(a),CKEDITOR.fire(a+CKEDITOR.tools.capitalize(this.fileName)+"Ready",c),this.get(a)},get:function(a){return this.registered[a]||null},getPath:function(a){var b=this.externals[a];return CKEDITOR.getUrl(b&&b.dir||this.basePath+a+"/")},getFilePath:function(a){var b=this.externals[a];return CKEDITOR.getUrl(this.getPath(a)+(b?b.file:this.fileName+".js"))},addExternal:function(a,b,c){a=a.split(",");for(var d=0;d<a.length;d++){var e=a[d];c||(b=b.replace(/[^\/]+$/,function(a){return c=a,""})),this.externals[e]={dir:b,file:c||this.fileName+".js"}}},load:function(a,b,c){CKEDITOR.tools.isArray(a)||(a=a?[a]:[]);for(var d=this.loaded,e=this.registered,f=[],g={},h={},i=0;i<a.length;i++){var j=a[i];if(j)if(d[j]||e[j])h[j]=this.get(j);else{var k=this.getFilePath(j);f.push(k),k in g||(g[k]=[]),g[k].push(j)}}CKEDITOR.scriptLoader.load(f,function(a,e){if(e.length)throw Error('[CKEDITOR.resourceManager.load] Resource name "'+g[e[0]].join(",")+'" was not found at "'+e[0]+'".');for(var f=0;f<a.length;f++)for(var i=g[a[f]],j=0;j<i.length;j++){var k=i[j];h[k]=this.get(k),d[k]=1}b.call(c,h)},this)}},CKEDITOR.plugins=new CKEDITOR.resourceManager("plugins/","plugin"),CKEDITOR.plugins.load=CKEDITOR.tools.override(CKEDITOR.plugins.load,function(a){var b={};return function(c,d,e){var f={},g=function(c){a.call(this,c,function(a){CKEDITOR.tools.extend(f,a);var c,h=[];for(c in a){var i=a[c],j=i&&i.requires;if(!b[c]){if(i.icons)for(var k=i.icons.split(","),l=k.length;l--;)CKEDITOR.skin.addIcon(k[l],i.path+"icons/"+(CKEDITOR.env.hidpi&&i.hidpi?"hidpi/":"")+k[l]+".png");b[c]=1}if(j)for(j.split&&(j=j.split(",")),i=0;i<j.length;i++)f[j[i]]||h.push(j[i])}if(h.length)g.call(this,h);else{for(c in f)i=f[c],i.onLoad&&!i.onLoad._called&&(!1===i.onLoad()&&delete f[c],i.onLoad._called=1);d&&d.call(e||window,f)}},this)};g.call(this,c)}}),CKEDITOR.plugins.setLang=function(a,b,c){var d=this.get(a);a=d.langEntries||(d.langEntries={}),d=d.lang||(d.lang=[]),d.split&&(d=d.split(",")),-1==CKEDITOR.tools.indexOf(d,b)&&d.push(b),a[b]=c},CKEDITOR.ui=function(a){return a.ui?a.ui:(this.items={},this.instances={},this.editor=a,this._={handlers:{}},this)},CKEDITOR.ui.prototype={add:function(a,b,c){c.name=a.toLowerCase();var d=this.items[a]={type:b,command:c.command||null,args:Array.prototype.slice.call(arguments,2)};CKEDITOR.tools.extend(d,c)},get:function(a){return this.instances[a]},create:function(a){var b=this.items[a],c=b&&this._.handlers[b.type],d=b&&b.command&&this.editor.getCommand(b.command),c=c&&c.create.apply(this,b.args);return this.instances[a]=c,d&&d.uiItems.push(c),c&&!c.type&&(c.type=b.type),c},addHandler:function(a,b){this._.handlers[a]=b},space:function(a){return CKEDITOR.document.getById(this.spaceId(a))},spaceId:function(a){return this.editor.id+"_"+a}},CKEDITOR.event.implementOn(CKEDITOR.ui),function(){function a(a,e,g){if(CKEDITOR.event.call(this),a=a&&CKEDITOR.tools.clone(a),void 0!==e){if(!(e instanceof CKEDITOR.dom.element))throw Error("Expect element of type CKEDITOR.dom.element.");if(!g)throw Error("One of the element modes must be specified.");if(CKEDITOR.env.ie&&CKEDITOR.env.quirks&&g==CKEDITOR.ELEMENT_MODE_INLINE)throw Error("Inline element mode is not supported on IE quirks.");if(!c(e,g))throw Error('The specified element mode is not supported on element: "'+e.getName()+'".');this.element=e,this.elementMode=g,this.name=this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO&&(e.getId()||e.getNameAtt())}else this.elementMode=CKEDITOR.ELEMENT_MODE_NONE;this._={},this.commands={},this.templates={},this.name=this.name||b(),this.id=CKEDITOR.tools.getNextId(),this.status="unloaded",this.config=CKEDITOR.tools.prototypedCopy(CKEDITOR.config),this.ui=new CKEDITOR.ui(this),this.focusManager=new CKEDITOR.focusManager(this),this.keystrokeHandler=new CKEDITOR.keystrokeHandler(this),this.on("readOnly",d),this.on("selectionChange",function(a){f(this,a.data.path)}),this.on("activeFilterChange",function(){f(this,this.elementPath(),!0)}),this.on("mode",d),this.on("instanceReady",function(){this.config.startupFocus&&this.focus()}),CKEDITOR.fire("instanceCreated",null,this),CKEDITOR.add(this),CKEDITOR.tools.setTimeout(function(){"destroyed"!==this.status?h(this,a):CKEDITOR.warn("editor-incorrect-destroy")},0,this)}function b(){do var a="editor"+ ++n;while(CKEDITOR.instances[a]);return a}function c(a,b){return b==CKEDITOR.ELEMENT_MODE_INLINE?a.is(CKEDITOR.dtd.$editable)||a.is("textarea"):b==CKEDITOR.ELEMENT_MODE_REPLACE?!a.is(CKEDITOR.dtd.$nonBodyContent):1}function d(){var a,b=this.commands;for(a in b)e(this,b[a])}function e(a,b){b[b.startDisabled?"disable":a.readOnly&&!b.readOnly?"disable":b.modes[a.mode]?"enable":"disable"]()}function f(a,b,c){if(b){var d,e,f=a.commands;for(e in f)d=f[e],(c||d.contextSensitive)&&d.refresh(a,b)}}function g(a){var b=a.config.customConfig;if(!b)return!1;var b=CKEDITOR.getUrl(b),c=o[b]||(o[b]={});return c.fn?(c.fn.call(a,a.config),CKEDITOR.getUrl(a.config.customConfig)!=b&&g(a)||a.fireOnce("customConfigLoaded")):CKEDITOR.scriptLoader.queue(b,function(){c.fn=CKEDITOR.editorConfig?CKEDITOR.editorConfig:function(){},g(a)}),!0}function h(a,b){a.on("customConfigLoaded",function(){if(b){if(b.on)for(var c in b.on)a.on(c,b.on[c]);CKEDITOR.tools.extend(a.config,b,!0),delete a.config.on}c=a.config,a.readOnly=c.readOnly?!0:a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.is("textarea")?a.element.hasAttribute("disabled")||a.element.hasAttribute("readonly"):a.element.isReadOnly():a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?a.element.hasAttribute("disabled")||a.element.hasAttribute("readonly"):!1,a.blockless=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?!(a.element.is("textarea")||CKEDITOR.dtd[a.element.getName()].p):!1,a.tabIndex=c.tabIndex||a.element&&a.element.getAttribute("tabindex")||0,a.activeEnterMode=a.enterMode=a.blockless?CKEDITOR.ENTER_BR:c.enterMode,a.activeShiftEnterMode=a.shiftEnterMode=a.blockless?CKEDITOR.ENTER_BR:c.shiftEnterMode,c.skin&&(CKEDITOR.skinName=c.skin),a.fireOnce("configLoaded"),a.dataProcessor=new CKEDITOR.htmlDataProcessor(a),a.filter=a.activeFilter=new CKEDITOR.filter(a),i(a)}),b&&null!=b.customConfig&&(a.config.customConfig=b.customConfig),g(a)||a.fireOnce("customConfigLoaded")}function i(a){CKEDITOR.skin.loadPart("editor",function(){j(a)})}function j(a){CKEDITOR.lang.load(a.config.language,a.config.defaultLanguage,function(b,c){var d=a.config.title;a.langCode=b,a.lang=CKEDITOR.tools.prototypedCopy(c),a.title="string"==typeof d||!1===d?d:[a.lang.editor,a.name].join(", "),a.config.contentsLangDirection||(a.config.contentsLangDirection=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.getDirection(1):a.lang.dir),a.fire("langLoaded"),k(a)})}function k(a){a.getStylesSet(function(b){a.once("loaded",function(){a.fire("stylesSet",{styles:b})},null,null,1),l(a)})}function l(a){var b=a.config,c=b.plugins,d=b.extraPlugins,e=b.removePlugins;if(d)var f=new RegExp("(?:^|,)(?:"+d.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(f,""),c=c+(","+d);if(e)var g=new RegExp("(?:^|,)(?:"+e.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(g,"");CKEDITOR.env.air&&(c+=",adobeair"),CKEDITOR.plugins.load(c.split(","),function(c){var d=[],e=[],f=[];a.plugins=c;for(var h in c){var i,j=c[h],k=j.lang,l=null,m=j.requires;if(CKEDITOR.tools.isArray(m)&&(m=m.join(",")),m&&(i=m.match(g)))for(;m=i.pop();)CKEDITOR.error("editor-plugin-required",{plugin:m.replace(",",""),requiredBy:h});k&&!a.lang[h]&&(k.split&&(k=k.split(",")),0<=CKEDITOR.tools.indexOf(k,a.langCode)?l=a.langCode:(l=a.langCode.replace(/-.*/,""),l=l!=a.langCode&&0<=CKEDITOR.tools.indexOf(k,l)?l:0<=CKEDITOR.tools.indexOf(k,"en")?"en":k[0]),j.langEntries&&j.langEntries[l]?(a.lang[h]=j.langEntries[l],l=null):f.push(CKEDITOR.getUrl(j.path+"lang/"+l+".js"))),e.push(l),d.push(j)}CKEDITOR.scriptLoader.load(f,function(){for(var c=["beforeInit","init","afterInit"],f=0;f<c.length;f++)for(var g=0;g<d.length;g++){var h=d[g];0===f&&e[g]&&h.lang&&h.langEntries&&(a.lang[h.name]=h.langEntries[e[g]]),h[c[f]]&&h[c[f]](a)}for(a.fireOnce("pluginsLoaded"),b.keystrokes&&a.setKeystroke(a.config.keystrokes),g=0;g<a.config.blockedKeystrokes.length;g++)a.keystrokeHandler.blockedKeystrokes[a.config.blockedKeystrokes[g]]=1;a.status="loaded",a.fireOnce("loaded"),CKEDITOR.fire("instanceLoaded",null,a)})})}function m(){var a=this.element;if(a&&this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO){var b=this.getData();return this.config.htmlEncodeOutput&&(b=CKEDITOR.tools.htmlEncode(b)),a.is("textarea")?a.setValue(b):a.setHtml(b),!0}return!1}a.prototype=CKEDITOR.editor.prototype,CKEDITOR.editor=a;var n=0,o={};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{addCommand:function(a,b){b.name=a.toLowerCase();var c=new CKEDITOR.command(this,b);return this.mode&&e(this,c),this.commands[a]=c},_attachToForm:function(){function a(a){c.updateElement(),c._.required&&!d.getValue()&&!1===c.fire("required")&&a.data.preventDefault()}function b(a){return!!(a&&a.call&&a.apply)}var c=this,d=c.element,e=new CKEDITOR.dom.element(d.$.form);d.is("textarea")&&e&&(e.on("submit",a),b(e.$.submit)&&(e.$.submit=CKEDITOR.tools.override(e.$.submit,function(b){return function(){a(),b.apply?b.apply(this):b()}})),c.on("destroy",function(){e.removeListener("submit",a)}))},destroy:function(a){this.fire("beforeDestroy"),!a&&m.call(this),this.editable(null),this.filter&&(this.filter.destroy(),delete this.filter),delete this.activeFilter,this.status="destroyed",this.fire("destroy"),this.removeAllListeners(),CKEDITOR.remove(this),CKEDITOR.fire("instanceDestroyed",null,this)},elementPath:function(a){if(!a){if(a=this.getSelection(),!a)return null;a=a.getStartElement()}return a?new CKEDITOR.dom.elementPath(a,this.editable()):null},createRange:function(){var a=this.editable();return a?new CKEDITOR.dom.range(a):null},execCommand:function(a,b){var c=this.getCommand(a),d={name:a,commandData:b,command:c};return c&&c.state!=CKEDITOR.TRISTATE_DISABLED&&!1!==this.fire("beforeCommandExec",d)&&(d.returnValue=c.exec(d.commandData),!c.async&&!1!==this.fire("afterCommandExec",d))?d.returnValue:!1},getCommand:function(a){return this.commands[a]},getData:function(a){!a&&this.fire("beforeGetData");var b=this._.data;return"string"!=typeof b&&(b=(b=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?b.is("textarea")?b.getValue():b.getHtml():""),b={dataValue:b},!a&&this.fire("getData",b),b.dataValue},getSnapshot:function(){var a=this.fire("getSnapshot");return"string"!=typeof a&&(a=(a=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?a.is("textarea")?a.getValue():a.getHtml():""),a},loadSnapshot:function(a){this.fire("loadSnapshot",a)},setData:function(a,b,c){var d=!0,e=b;b&&"object"==typeof b&&(c=b.internal,e=b.callback,d=!b.noSnapshot),!c&&d&&this.fire("saveSnapshot"),!e&&c||this.once("dataReady",function(a){!c&&d&&this.fire("saveSnapshot"),e&&e.call(a.editor)}),a={dataValue:a},!c&&this.fire("setData",a),this._.data=a.dataValue,!c&&this.fire("afterSetData",a)},setReadOnly:function(a){a=null==a||a,this.readOnly!=a&&(this.readOnly=a,this.keystrokeHandler.blockedKeystrokes[8]=+a,this.editable().setReadOnly(a),this.fire("readOnly"))},insertHtml:function(a,b,c){this.fire("insertHtml",{dataValue:a,mode:b,range:c})},insertText:function(a){this.fire("insertText",a)},insertElement:function(a){this.fire("insertElement",a)},getSelectedHtml:function(a){var b=this.editable(),c=this.getSelection(),c=c&&c.getRanges();if(!b||!c||0===c.length)return null;for(var d,e,f,g=new CKEDITOR.dom.documentFragment,h=0;h<c.length;h++){var i=c[h],j=i.startContainer;j.getName&&"tr"==j.getName()?(d||(d=j.getAscendant("table").clone(),d.append(j.getAscendant("tbody").clone()),g.append(d),d=d.findOne("tbody")),e&&e.equals(j)||(e=j,f=j.clone(),d.append(f)),f.append(i.cloneContents())):g.append(i.cloneContents())}return b=d?g:b.getHtmlFromRange(c[0]),a?b.getHtml():b},extractSelectedHtml:function(a,b){var c=this.editable(),d=this.getSelection().getRanges();return c&&0!==d.length?(d=d[0],c=c.extractHtmlFromRange(d,b),b||this.getSelection().selectRanges([d]),a?c.getHtml():c):null},focus:function(){this.fire("beforeFocus")},checkDirty:function(){return"ready"==this.status&&this._.previousValue!==this.getSnapshot()},resetDirty:function(){this._.previousValue=this.getSnapshot()},updateElement:function(){return m.call(this)},setKeystroke:function(){for(var a,b,c=this.keystrokeHandler.keystrokes,d=CKEDITOR.tools.isArray(arguments[0])?arguments[0]:[[].slice.call(arguments,0)],e=d.length;e--;)a=d[e],b=0,CKEDITOR.tools.isArray(a)&&(b=a[1],a=a[0]),b?c[a]=b:delete c[a]},addFeature:function(a){return this.filter.addFeature(a)},setActiveFilter:function(a){a||(a=this.filter),this.activeFilter!==a&&(this.activeFilter=a,this.fire("activeFilterChange"),a===this.filter?this.setActiveEnterMode(null,null):this.setActiveEnterMode(a.getAllowedEnterMode(this.enterMode),a.getAllowedEnterMode(this.shiftEnterMode,!0)))},setActiveEnterMode:function(a,b){a=a?this.blockless?CKEDITOR.ENTER_BR:a:this.enterMode,b=b?this.blockless?CKEDITOR.ENTER_BR:b:this.shiftEnterMode,this.activeEnterMode==a&&this.activeShiftEnterMode==b||(this.activeEnterMode=a,this.activeShiftEnterMode=b,this.fire("activeEnterModeChange"))},showNotification:function(a){alert(a)}})}(),CKEDITOR.ELEMENT_MODE_NONE=0,CKEDITOR.ELEMENT_MODE_REPLACE=1,CKEDITOR.ELEMENT_MODE_APPENDTO=2,CKEDITOR.ELEMENT_MODE_INLINE=3,CKEDITOR.htmlParser=function(){this._={htmlPartsRegex:/<(?:(?:\/([^>]+)>)|(?:!--([\S|\s]*?)--\x3e)|(?:([^\/\s>]+)((?:\s+[\w\-:.]+(?:\s*=\s*?(?:(?:"[^"]*")|(?:'[^']*')|[^\s"'\/>]+))?)*)[\S\s]*?(\/?)>))/g}},function(){var a=/([\w\-:.]+)(?:(?:\s*=\s*(?:(?:"([^"]*)")|(?:'([^']*)')|([^\s>]+)))|(?=\s|$))/g,b={checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};CKEDITOR.htmlParser.prototype={onTagOpen:function(){},onTagClose:function(){},onText:function(){},onCDATA:function(){},onComment:function(){},parse:function(c){for(var d,e,f,g=0;d=this._.htmlPartsRegex.exec(c);)if(e=d.index,e>g&&(g=c.substring(g,e),f?f.push(g):this.onText(g)),g=this._.htmlPartsRegex.lastIndex,!(e=d[1])||(e=e.toLowerCase(),f&&CKEDITOR.dtd.$cdata[e]&&(this.onCDATA(f.join("")),f=null),f))if(f)f.push(d[0]);else if(e=d[3]){if(e=e.toLowerCase(),!/="/.test(e)){var h,i={},j=d[4];if(d=!!d[5],j)for(;h=a.exec(j);){var k=h[1].toLowerCase();h=h[2]||h[3]||h[4]||"",i[k]=!h&&b[k]?k:CKEDITOR.tools.htmlDecodeAttr(h)}this.onTagOpen(e,i,d),!f&&CKEDITOR.dtd.$cdata[e]&&(f=[])}}else(e=d[2])&&this.onComment(e);else this.onTagClose(e);c.length>g&&this.onText(c.substring(g,c.length))}}}(),CKEDITOR.htmlParser.basicWriter=CKEDITOR.tools.createClass({$:function(){this._={output:[]}},proto:{openTag:function(a){this._.output.push("<",a)},openTagClose:function(a,b){b?this._.output.push(" />"):this._.output.push(">")},attribute:function(a,b){"string"==typeof b&&(b=CKEDITOR.tools.htmlEncodeAttr(b)),this._.output.push(" ",a,'="',b,'"')},closeTag:function(a){this._.output.push("</",a,">")},text:function(a){this._.output.push(a)},comment:function(a){this._.output.push("<!--",a,"-->")},write:function(a){this._.output.push(a)},reset:function(){this._.output=[],this._.indent=!1},getHtml:function(a){var b=this._.output.join("");return a&&this.reset(),b}}}),function(){CKEDITOR.htmlParser.node=function(){},CKEDITOR.htmlParser.node.prototype={remove:function(){var a=this.parent.children,b=CKEDITOR.tools.indexOf(a,this),c=this.previous,d=this.next;c&&(c.next=d),d&&(d.previous=c),a.splice(b,1),this.parent=null},replaceWith:function(a){var b=this.parent.children,c=CKEDITOR.tools.indexOf(b,this),d=a.previous=this.previous,e=a.next=this.next;d&&(d.next=a),e&&(e.previous=a),b[c]=a,a.parent=this.parent,this.parent=null},insertAfter:function(a){var b=a.parent.children,c=CKEDITOR.tools.indexOf(b,a),d=a.next;b.splice(c+1,0,this),this.next=a.next,this.previous=a,a.next=this,d&&(d.previous=this),this.parent=a.parent},insertBefore:function(a){var b=a.parent.children,c=CKEDITOR.tools.indexOf(b,a);b.splice(c,0,this),this.next=a,(this.previous=a.previous)&&(a.previous.next=this),a.previous=this,this.parent=a.parent},getAscendant:function(a){for(var b=("function"==typeof a?a:"string"==typeof a?function(b){return b.name==a}:function(b){return b.name in a}),c=this.parent;c&&c.type==CKEDITOR.NODE_ELEMENT;){if(b(c))return c;c=c.parent}return null},wrapWith:function(a){return this.replaceWith(a),a.add(this),a},getIndex:function(){return CKEDITOR.tools.indexOf(this.parent.children,this)},getFilterContext:function(a){return a||{}}}}(),CKEDITOR.htmlParser.comment=function(a){this.value=a,this._={isBlockLike:!1}},CKEDITOR.htmlParser.comment.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_COMMENT,filter:function(a,b){var c=this.value;return(c=a.onComment(b,c,this))?"string"!=typeof c?(this.replaceWith(c),!1):(this.value=c,!0):(this.remove(),!1)},writeHtml:function(a,b){b&&this.filter(b),a.comment(this.value)}}),function(){CKEDITOR.htmlParser.text=function(a){this.value=a,this._={isBlockLike:!1}},CKEDITOR.htmlParser.text.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(a,b){return(this.value=a.onText(b,this.value,this))?void 0:(this.remove(),!1)},writeHtml:function(a,b){b&&this.filter(b),a.text(this.value)}})}(),function(){CKEDITOR.htmlParser.cdata=function(a){this.value=a},CKEDITOR.htmlParser.cdata.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(){},writeHtml:function(a){a.write(this.value)}})}(),CKEDITOR.htmlParser.fragment=function(){this.children=[],this.parent=null,this._={isBlockLike:!0,hasInlineStarted:!1}},function(){function a(a){return a.attributes["data-cke-survive"]?!1:"a"==a.name&&a.attributes.href||CKEDITOR.dtd.$removeEmpty[a.name]}var b=CKEDITOR.tools.extend({table:1,ul:1,ol:1,dl:1},CKEDITOR.dtd.table,CKEDITOR.dtd.ul,CKEDITOR.dtd.ol,CKEDITOR.dtd.dl),c={ol:1,ul:1},d=CKEDITOR.tools.extend({},{html:1},CKEDITOR.dtd.html,CKEDITOR.dtd.body,CKEDITOR.dtd.head,{style:1,script:1}),e={ul:"li",ol:"li",dl:"dd",table:"tbody",tbody:"tr",thead:"tr",tfoot:"tr",tr:"td"};CKEDITOR.htmlParser.fragment.fromHtml=function(f,g,h){function i(a){var b;if(0<q.length)for(var c=0;c<q.length;c++){var d=q[c],e=d.name,f=CKEDITOR.dtd[e],g=s.name&&CKEDITOR.dtd[s.name];g&&!g[e]||a&&f&&!f[a]&&CKEDITOR.dtd[a]?e==s.name&&(l(s,s.parent,1),c--):(b||(j(),b=1),d=d.clone(),d.parent=s,s=d,q.splice(c,1),c--)}}function j(){for(;r.length;)l(r.shift(),s)}function k(a){if(a._.isBlockLike&&"pre"!=a.name&&"textarea"!=a.name){var b,c=a.children.length,d=a.children[c-1];d&&d.type==CKEDITOR.NODE_TEXT&&((b=CKEDITOR.tools.rtrim(d.value))?d.value=b:a.children.length=c-1)}}function l(b,c,d){c=c||s||p;var e=s;void 0===b.previous&&(m(c,b)&&(s=c,o.onTagOpen(h,{}),b.returnPoint=c=s),k(b),a(b)&&!b.children.length||c.add(b),"pre"==b.name&&(u=!1),"textarea"==b.name&&(t=!1)),b.returnPoint?(s=b.returnPoint,delete b.returnPoint):s=d?c:e}function m(a,b){if((a==p||"body"==a.name)&&h&&(!a.name||CKEDITOR.dtd[a.name][h])){var c,d;return(c=b.attributes&&(d=b.attributes["data-cke-real-element-type"])?d:b.name)&&c in CKEDITOR.dtd.$inline&&!(c in CKEDITOR.dtd.head)&&!b.isOrphan||b.type==CKEDITOR.NODE_TEXT}}function n(a,b){return a in CKEDITOR.dtd.$listItem||a in CKEDITOR.dtd.$tableContent?a==b||"dt"==a&&"dd"==b||"dd"==a&&"dt"==b:!1}var o=new CKEDITOR.htmlParser,p=g instanceof CKEDITOR.htmlParser.element?g:"string"==typeof g?new CKEDITOR.htmlParser.element(g):new CKEDITOR.htmlParser.fragment,q=[],r=[],s=p,t="textarea"==p.name,u="pre"==p.name;o.onTagOpen=function(e,f,g,h){if(f=new CKEDITOR.htmlParser.element(e,f),f.isUnknown&&g&&(f.isEmpty=!0),f.isOptionalClose=h,a(f))q.push(f);else{if("pre"==e)u=!0;else{if("br"==e&&u)return void s.add(new CKEDITOR.htmlParser.text("\n"));"textarea"==e&&(t=!0)}if("br"==e)r.push(f);else{for(;h=(g=s.name)?CKEDITOR.dtd[g]||(s._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):d,!(f.isUnknown||s.isUnknown||h[e]);)if(s.isOptionalClose)o.onTagClose(g);else if(e in c&&g in c)g=s.children,(g=g[g.length-1])&&"li"==g.name||l(g=new CKEDITOR.htmlParser.element("li"),s),!f.returnPoint&&(f.returnPoint=s),s=g;else if(e in CKEDITOR.dtd.$listItem&&!n(e,g))o.onTagOpen("li"==e?"ul":"dl",{},0,1);else if(g in b&&!n(e,g))!f.returnPoint&&(f.returnPoint=s),s=s.parent;else{if(g in CKEDITOR.dtd.$inline&&q.unshift(s),!s.parent){f.isOrphan=1;break}l(s,s.parent,1)}i(e),j(),f.parent=s,f.isEmpty?l(f):s=f}}},o.onTagClose=function(a){for(var b=q.length-1;b>=0;b--)if(a==q[b].name)return void q.splice(b,1);for(var c=[],d=[],e=s;e!=p&&e.name!=a;)e._.isBlockLike||d.unshift(e),c.push(e),e=e.returnPoint||e.parent;if(e!=p){for(b=0;b<c.length;b++){var f=c[b];l(f,f.parent)}s=e,e._.isBlockLike&&j(),l(e,e.parent),e==s&&(s=s.parent),q=q.concat(d)}"body"==a&&(h=!1)},o.onText=function(a){if(s._.hasInlineStarted&&!r.length||u||t||(a=CKEDITOR.tools.ltrim(a),0!==a.length)){var c=s.name,f=c?CKEDITOR.dtd[c]||(s._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):d;!t&&!f["#"]&&c in b?(o.onTagOpen(e[c]||""),o.onText(a)):(j(),i(),u||t||(a=a.replace(/[\t\r\n ]{2,}|[\t\r\n]/g," ")),a=new CKEDITOR.htmlParser.text(a),m(s,a)&&this.onTagOpen(h,{},0,1),s.add(a))}},o.onCDATA=function(a){s.add(new CKEDITOR.htmlParser.cdata(a))},o.onComment=function(a){j(),i(),s.add(new CKEDITOR.htmlParser.comment(a))},o.parse(f);for(j();s!=p;)l(s,s.parent,1);return k(p),p},CKEDITOR.htmlParser.fragment.prototype={type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,add:function(a,b){isNaN(b)&&(b=this.children.length);var c=b>0?this.children[b-1]:null;if(c){if(a._.isBlockLike&&c.type==CKEDITOR.NODE_TEXT&&(c.value=CKEDITOR.tools.rtrim(c.value),0===c.value.length))return this.children.pop(),void this.add(a);c.next=a}a.previous=c,a.parent=this,this.children.splice(b,0,a),this._.hasInlineStarted||(this._.hasInlineStarted=a.type==CKEDITOR.NODE_TEXT||a.type==CKEDITOR.NODE_ELEMENT&&!a._.isBlockLike)},filter:function(a,b){b=this.getFilterContext(b),a.onRoot(b,this),this.filterChildren(a,!1,b)},filterChildren:function(a,b,c){if(this.childrenFilteredBy!=a.id)for(c=this.getFilterContext(c),b&&!this.parent&&a.onRoot(c,this),this.childrenFilteredBy=a.id,b=0;b<this.children.length;b++)!1===this.children[b].filter(a,c)&&b--},writeHtml:function(a,b){b&&this.filter(b),this.writeChildrenHtml(a)},writeChildrenHtml:function(a,b,c){var d=this.getFilterContext();for(c&&!this.parent&&b&&b.onRoot(d,this),b&&this.filterChildren(b,!1,d),b=0,c=this.children,d=c.length;d>b;b++)c[b].writeHtml(a)},forEach:function(a,b,c){if(!(c||b&&this.type!=b))var d=a(this);if(!1!==d){c=this.children;for(var e=0;e<c.length;e++)d=c[e],d.type==CKEDITOR.NODE_ELEMENT?d.forEach(a,b):b&&d.type!=b||a(d)}},getFilterContext:function(a){return a||{}}}}(),function(){function a(){this.rules=[]}function b(b,c,d,e){var f,g;for(f in c)(g=b[f])||(g=b[f]=new a),g.add(c[f],d,e)}CKEDITOR.htmlParser.filter=CKEDITOR.tools.createClass({$:function(b){this.id=CKEDITOR.tools.getNextNumber(),this.elementNameRules=new a,this.attributeNameRules=new a,this.elementsRules={},this.attributesRules={},this.textRules=new a,this.commentRules=new a,this.rootRules=new a,b&&this.addRules(b,10)},proto:{addRules:function(a,c){var d;"number"==typeof c?d=c:c&&"priority"in c&&(d=c.priority),"number"!=typeof d&&(d=10),"object"!=typeof c&&(c={}),a.elementNames&&this.elementNameRules.addMany(a.elementNames,d,c),a.attributeNames&&this.attributeNameRules.addMany(a.attributeNames,d,c),a.elements&&b(this.elementsRules,a.elements,d,c),a.attributes&&b(this.attributesRules,a.attributes,d,c),a.text&&this.textRules.add(a.text,d,c),a.comment&&this.commentRules.add(a.comment,d,c),a.root&&this.rootRules.add(a.root,d,c)},applyTo:function(a){a.filter(this)},onElementName:function(a,b){return this.elementNameRules.execOnName(a,b)},onAttributeName:function(a,b){return this.attributeNameRules.execOnName(a,b)},onText:function(a,b,c){return this.textRules.exec(a,b,c)},onComment:function(a,b,c){return this.commentRules.exec(a,b,c)},onRoot:function(a,b){return this.rootRules.exec(a,b)},onElement:function(a,b){for(var c,d=[this.elementsRules["^"],this.elementsRules[b.name],this.elementsRules.$],e=0;3>e;e++)if(c=d[e]){if(c=c.exec(a,b,this),!1===c)return null;if(c&&c!=b)return this.onNode(a,c);if(b.parent&&!b.name)break}return b},onNode:function(a,b){var c=b.type;return c==CKEDITOR.NODE_ELEMENT?this.onElement(a,b):c==CKEDITOR.NODE_TEXT?new CKEDITOR.htmlParser.text(this.onText(a,b.value)):c==CKEDITOR.NODE_COMMENT?new CKEDITOR.htmlParser.comment(this.onComment(a,b.value)):null},onAttribute:function(a,b,c,d){return(c=this.attributesRules[c])?c.exec(a,d,b,this):d}}}),CKEDITOR.htmlParser.filterRulesGroup=a,a.prototype={add:function(a,b,c){this.rules.splice(this.findIndex(b),0,{value:a,priority:b,options:c})},addMany:function(a,b,c){for(var d=[this.findIndex(b),0],e=0,f=a.length;f>e;e++)d.push({value:a[e],priority:b,options:c});this.rules.splice.apply(this.rules,d)},findIndex:function(a){for(var b=this.rules,c=b.length-1;c>=0&&a<b[c].priority;)c--;return c+1},exec:function(a,b){var c,d,e,f,g=b instanceof CKEDITOR.htmlParser.node||b instanceof CKEDITOR.htmlParser.fragment,h=Array.prototype.slice.call(arguments,1),i=this.rules,j=i.length;for(f=0;j>f;f++)if(g&&(c=b.type,d=b.name),e=i[f],!(a.nonEditable&&!e.options.applyToAll||a.nestedEditable&&e.options.excludeNestedEditable)){if(e=e.value.apply(null,h),!1===e||g&&e&&(e.name!=d||e.type!=c))return e;null!=e&&(h[0]=b=e)}return b},execOnName:function(a,b){for(var c,d=0,e=this.rules,f=e.length;b&&f>d;d++)c=e[d],a.nonEditable&&!c.options.applyToAll||a.nestedEditable&&c.options.excludeNestedEditable||(b=b.replace(c.value[0],c.value[1]));return b}}}(),function(){function a(a,b){function h(a){return a||CKEDITOR.env.needsNbspFiller?new CKEDITOR.htmlParser.text("Â "):new CKEDITOR.htmlParser.element("br",{"data-cke-bogus":1})}function i(a,b){return function(e){if(e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var g,i,k=[],l=c(e);if(l)for(j(l,1)&&k.push(l);l;)f(l)&&(g=d(l))&&j(g)&&((i=d(g))&&!f(i)?k.push(g):(h(m).insertAfter(g),g.remove())),l=l.previous;for(l=0;l<k.length;l++)k[l].remove();(k=!a||!1!==("function"==typeof b?b(e):b))&&((m||CKEDITOR.env.needsBrFiller||e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&(m||CKEDITOR.env.needsBrFiller||!(7<document.documentMode||e.name in CKEDITOR.dtd.tr||e.name in CKEDITOR.dtd.$listItem))?(k=c(e),k=!k||"form"==e.name&&"input"==k.name):k=!1),k&&e.add(h(a))}}}function j(a,b){if((!m||CKEDITOR.env.needsBrFiller)&&a.type==CKEDITOR.NODE_ELEMENT&&"br"==a.name&&!a.attributes["data-cke-eol"])return!0;var c;return!!(a.type==CKEDITOR.NODE_TEXT&&(c=a.value.match(q))&&(c.index&&(new CKEDITOR.htmlParser.text(a.value.substring(0,c.index)).insertBefore(a),a.value=c[0]),!CKEDITOR.env.needsBrFiller&&m&&(!b||a.parent.name in n)||!m&&((c=a.previous)&&"br"==c.name||!c||f(c))))}var k,l={elements:{}},m="html"==b,n=CKEDITOR.tools.extend({},u);for(k in n)"#"in s[k]||delete n[k];for(k in n)l.elements[k]=i(m,a.config.fillEmptyBlocks);return l.root=i(m,!1),l.elements.br=function(a){return function(b){if(b.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var c=b.attributes;if("data-cke-bogus"in c||"data-cke-eol"in c)delete c["data-cke-bogus"];else{for(c=b.next;c&&e(c);)c=c.next;var i=d(b);!c&&f(b.parent)?g(b.parent,h(a)):f(c)&&i&&!f(i)&&h(a).insertBefore(c)}}}}(m),l}function b(a,b){return a!=CKEDITOR.ENTER_BR&&!1!==b?a==CKEDITOR.ENTER_DIV?"div":"p":!1}function c(a){for(a=a.children[a.children.length-1];a&&e(a);)a=a.previous;return a}function d(a){for(a=a.previous;a&&e(a);)a=a.previous;return a}function e(a){return a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(a.value)||a.type==CKEDITOR.NODE_ELEMENT&&a.attributes["data-cke-bookmark"]}function f(a){return a&&(a.type==CKEDITOR.NODE_ELEMENT&&a.name in u||a.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)}function g(a,b){var c=a.children[a.children.length-1];a.children.push(b),b.parent=a,c&&(c.next=b,b.previous=c)}function h(a){a=a.attributes,"false"!=a.contenteditable&&(a["data-cke-editable"]=a.contenteditable?"true":1),a.contenteditable="false"}function i(a){switch(a=a.attributes,a["data-cke-editable"]){case"true":a.contenteditable="true";break;case"1":delete a.contenteditable}}function j(a){return a.replace(z,function(a,b,c){return"<"+b+c.replace(A,function(a,b){return B.test(b)&&-1==c.indexOf("data-cke-saved-"+b)?" data-cke-saved-"+a+" data-cke-"+CKEDITOR.rnd+"-"+a:a})+">"})}function k(a,b){return a.replace(b,function(a,b,c){return 0===a.indexOf("<textarea")&&(a=b+n(c).replace(/</g,"<").replace(/>/g,">")+"</textarea>"),"<cke:encoded>"+encodeURIComponent(a)+"</cke:encoded>"})}function l(a){return a.replace(E,function(a,b){return decodeURIComponent(b)})}function m(a){return a.replace(/\x3c!--(?!{cke_protected})[\s\S]+?--\x3e/g,function(a){return"<!--"+r+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"-->"})}function n(a){return a.replace(/\x3c!--\{cke_protected\}\{C\}([\s\S]+?)--\x3e/g,function(a,b){return decodeURIComponent(b)})}function o(a,b){var c=b._.dataStore;return a.replace(/\x3c!--\{cke_protected\}([\s\S]+?)--\x3e/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function p(a,b){var c=[],d=b.config.protectedSource,e=b._.dataStore||(b._.dataStore={id:1}),f=/<\!--\{cke_temp(comment)?\}(\d*?)--\x3e/g,d=[/<script[\s\S]*?(<\/script>|$)/gi,/<noscript[\s\S]*?<\/noscript>/gi,/<meta[\s\S]*?\/?>/gi].concat(d);a=a.replace(/\x3c!--[\s\S]*?--\x3e/g,function(a){return"<!--{cke_tempcomment}"+(c.push(a)-1)+"-->"});for(var g=0;g<d.length;g++)a=a.replace(d[g],function(a){return a=a.replace(f,function(a,b,d){return c[d]}),/cke_temp(comment)?/.test(a)?a:"<!--{cke_temp}"+(c.push(a)-1)+"-->"});return a=a.replace(f,function(a,b,d){return"<!--"+r+(b?"{C}":"")+encodeURIComponent(c[d]).replace(/--/g,"%2D%2D")+"-->"}),a=a.replace(/<\w+(?:\s+(?:(?:[^\s=>]+\s*=\s*(?:[^'"\s>]+|'[^']*'|"[^"]*"))|[^\s=\/>]+))+\s*\/?>/g,function(a){return a.replace(/\x3c!--\{cke_protected\}([^>]*)--\x3e/g,function(a,b){return e[e.id]=decodeURIComponent(b),"{cke_protected_"+e.id++ +"}"})}),a=a.replace(/<(title|iframe|textarea)([^>]*)>([\s\S]*?)<\/\1>/g,function(a,c,d,e){return"<"+c+d+">"+o(n(e),b)+"</"+c+">"})}CKEDITOR.htmlDataProcessor=function(c){var d,e,f=this;this.editor=c,this.dataFilter=d=new CKEDITOR.htmlParser.filter,this.htmlFilter=e=new CKEDITOR.htmlParser.filter,this.writer=new CKEDITOR.htmlParser.basicWriter,d.addRules(v),d.addRules(w,{applyToAll:!0}),d.addRules(a(c,"data"),{applyToAll:!0}),e.addRules(x),e.addRules(y,{applyToAll:!0}),e.addRules(a(c,"html"),{applyToAll:!0}),c.on("toHtml",function(a){a=a.data;var d,e=a.dataValue,e=p(e,c),e=k(e,D),e=j(e),e=k(e,C),e=e.replace(F,"$1cke:$2"),e=e.replace(H,"<cke:$1$2></cke:$1>"),e=e.replace(/(<pre\b[^>]*>)(\r\n|\n)/g,"$1$2$2"),e=e.replace(/([^a-z0-9<\-])(on\w{3,})(?!>)/gi,"$1data-cke-"+CKEDITOR.rnd+"-$2");d=a.context||c.editable().getName();var f;CKEDITOR.env.ie&&9>CKEDITOR.env.version&&"pre"==d&&(d="div",e="<pre>"+e+"</pre>",f=1),d=c.document.createElement(d),d.setHtml("a"+e),e=d.getHtml().substr(1),e=e.replace(new RegExp("data-cke-"+CKEDITOR.rnd+"-","ig"),""),f&&(e=e.replace(/^<pre>|<\/pre>$/gi,"")),e=e.replace(G,"$1$2"),e=l(e),e=n(e),d=!1===a.fixForBody?!1:b(a.enterMode,c.config.autoParagraph),e=CKEDITOR.htmlParser.fragment.fromHtml(e,a.context,d),d&&(f=e,!f.children.length&&CKEDITOR.dtd[f.name][d]&&(d=new CKEDITOR.htmlParser.element(d),f.add(d))),a.dataValue=e},null,null,5),c.on("toHtml",function(a){a.data.filter.applyTo(a.data.dataValue,!0,a.data.dontFilter,a.data.enterMode)&&c.fire("dataFiltered")},null,null,6),c.on("toHtml",function(a){ +a.data.dataValue.filterChildren(f.dataFilter,!0)},null,null,10),c.on("toHtml",function(a){a=a.data;var b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c),b=c.getHtml(!0),a.dataValue=m(b)},null,null,15),c.on("toDataFormat",function(a){var d=a.data.dataValue;a.data.enterMode!=CKEDITOR.ENTER_BR&&(d=d.replace(/^<br *\/?>/i,"")),a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(d,a.data.context,b(a.data.enterMode,c.config.autoParagraph))},null,null,5),c.on("toDataFormat",function(a){a.data.dataValue.filterChildren(f.htmlFilter,!0)},null,null,10),c.on("toDataFormat",function(a){a.data.filter.applyTo(a.data.dataValue,!1,!0)},null,null,11),c.on("toDataFormat",function(a){var b=a.data.dataValue,d=f.writer;d.reset(),b.writeChildrenHtml(d),b=d.getHtml(!0),b=n(b),b=o(b,c),a.data.dataValue=b},null,null,15)},CKEDITOR.htmlDataProcessor.prototype={toHtml:function(a,b,c,d){var e,f,g,h,i=this.editor;return b&&"object"==typeof b?(e=b.context,c=b.fixForBody,d=b.dontFilter,f=b.filter,g=b.enterMode,h=b.protectedWhitespaces):e=b,e||null===e||(e=i.editable().getName()),i.fire("toHtml",{dataValue:a,context:e,fixForBody:c,dontFilter:d,filter:f||i.filter,enterMode:g||i.enterMode,protectedWhitespaces:h}).dataValue},toDataFormat:function(a,b){var c,d,e;return b&&(c=b.context,d=b.filter,e=b.enterMode),c||null===c||(c=this.editor.editable().getName()),this.editor.fire("toDataFormat",{dataValue:a,filter:d||this.editor.filter,context:c,enterMode:e||this.editor.enterMode}).dataValue}};var q=/(?: |\xa0)$/,r="{cke_protected}",s=CKEDITOR.dtd,t="caption colgroup col thead tfoot tbody".split(" "),u=CKEDITOR.tools.extend({},s.$blockLimit,s.$block),v={elements:{input:h,textarea:h}},w={attributeNames:[[/^on/,"data-cke-pa-on"],[/^data-cke-expando$/,""]]},x={elements:{embed:function(a){var b=a.parent;if(b&&"object"==b.name){var c=b.attributes.width,b=b.attributes.height;c&&(a.attributes.width=c),b&&(a.attributes.height=b)}},a:function(a){var b=a.attributes;return a.children.length||b.name||b.id||a.attributes["data-cke-saved-name"]?void 0:!1}}},y={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b=a.attributes;if(b){if(b["data-cke-temp"])return!1;for(var c,d=["name","href","src"],e=0;e<d.length;e++)c="data-cke-saved-"+d[e],c in b&&delete b[d[e]]}return a},table:function(a){a.children.slice(0).sort(function(a,b){var c,d;return a.type==CKEDITOR.NODE_ELEMENT&&b.type==a.type&&(c=CKEDITOR.tools.indexOf(t,a.name),d=CKEDITOR.tools.indexOf(t,b.name)),c>-1&&d>-1&&c!=d||(c=a.parent?a.getIndex():-1,d=b.parent?b.getIndex():-1),c>d?1:-1})},param:function(a){return a.children=[],a.isEmpty=!0,a},span:function(a){"Apple-style-span"==a.attributes["class"]&&delete a.name},html:function(a){delete a.attributes.contenteditable,delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck,delete a.attributes.contenteditable},style:function(a){var b=a.children[0];b&&b.value&&(b.value=CKEDITOR.tools.trim(b.value)),a.attributes.type||(a.attributes.type="text/css")},title:function(a){var b=a.children[0];!b&&g(a,b=new CKEDITOR.htmlParser.text),b.value=a.attributes["data-cke-title"]||""},input:i,textarea:i},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,""))||!1}}};CKEDITOR.env.ie&&(y.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})});var z=/<(a|area|img|input|source)\b([^>]*)>/gi,A=/([\w-:]+)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,B=/^(href|src|name)$/i,C=/(?:<style(?=[ >])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,D=/(<textarea(?=[ >])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi,E=/<cke:encoded>([^<]*)<\/cke:encoded>/gi,F=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,G=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,H=/<cke:(param|embed)([^>]*?)\/?>(?!\s*<\/cke:\1)/gi}(),CKEDITOR.htmlParser.element=function(a,b){this.name=a,this.attributes=b||{},this.children=[];var c=a||"",d=c.match(/^cke:(.*)/);d&&(c=d[1]),c=!!(CKEDITOR.dtd.$nonBodyContent[c]||CKEDITOR.dtd.$block[c]||CKEDITOR.dtd.$listItem[c]||CKEDITOR.dtd.$tableContent[c]||CKEDITOR.dtd.$nonEditable[c]||"br"==c),this.isEmpty=!!CKEDITOR.dtd.$empty[a],this.isUnknown=!CKEDITOR.dtd[a],this._={isBlockLike:c,hasInlineStarted:this.isEmpty||!c}},CKEDITOR.htmlParser.cssStyle=function(a){var b={};return((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/"/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,d){"font-family"==c&&(d=d.replace(/["']/g,"")),b[c.toLowerCase()]=d}),{rules:b,populate:function(a){var b=this.toString();b&&(a instanceof CKEDITOR.dom.element?a.setAttribute("style",b):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=b:a.style=b)},toString:function(){var a,c=[];for(a in b)b[a]&&c.push(a,":",b[a],";");return c.join("")}}},function(){function a(a){return function(b){return b.type==CKEDITOR.NODE_ELEMENT&&("string"==typeof a?b.name==a:b.name in a)}}var b=function(a,b){return a=a[0],b=b[0],b>a?-1:a>b?1:0},c=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:c.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a,b){var c,d,e=this;if(b=e.getFilterContext(b),b.off)return!0;for(e.parent||a.onRoot(b,e);;){if(c=e.name,!(d=a.onElementName(b,c)))return this.remove(),!1;if(e.name=d,!(e=a.onElement(b,e)))return this.remove(),!1;if(e!==this)return this.replaceWith(e),!1;if(e.name==c)break;if(e.type!=CKEDITOR.NODE_ELEMENT)return this.replaceWith(e),!1;if(!e.name)return this.replaceWithChildren(),!1}c=e.attributes;var f,g;for(f in c){for(d=c[f];;){if(!(g=a.onAttributeName(b,f))){delete c[f];break}if(g==f)break;delete c[f],f=g}g&&(!1===(d=a.onAttribute(b,e,g,d))?delete c[g]:c[g]=d)}return e.isEmpty||this.filterChildren(a,!1,b),!0},filterChildren:c.filterChildren,writeHtml:function(a,c){c&&this.filter(c);var d,e,f=this.name,g=[],h=this.attributes;a.openTag(f,h);for(d in h)g.push([d,h[d]]);for(a.sortAttributes&&g.sort(b),d=0,e=g.length;e>d;d++)h=g[d],a.attribute(h[0],h[1]);a.openTagClose(f,this.isEmpty),this.writeChildrenHtml(a),this.isEmpty||a.closeTag(f)},writeChildrenHtml:c.writeChildrenHtml,replaceWithChildren:function(){for(var a=this.children,b=a.length;b;)a[--b].insertAfter(this);this.remove()},forEach:c.forEach,getFirst:function(b){if(!b)return this.children.length?this.children[0]:null;"function"!=typeof b&&(b=a(b));for(var c=0,d=this.children.length;d>c;++c)if(b(this.children[c]))return this.children[c];return null},getHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;return this.writeChildrenHtml(a),a.getHtml()},setHtml:function(a){a=this.children=CKEDITOR.htmlParser.fragment.fromHtml(a).children;for(var b=0,c=a.length;c>b;++b)a[b].parent=this},getOuterHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;return this.writeHtml(a),a.getHtml()},split:function(a){for(var b=this.children.splice(a,this.children.length-a),c=this.clone(),d=0;d<b.length;++d)b[d].parent=c;return c.children=b,b[0]&&(b[0].previous=null),a>0&&(this.children[a-1].next=null),this.parent.add(c,this.getIndex()+1),c},addClass:function(a){if(!this.hasClass(a)){var b=this.attributes["class"]||"";this.attributes["class"]=b+(b?" ":"")+a}},removeClass:function(a){var b=this.attributes["class"];b&&((b=CKEDITOR.tools.trim(b.replace(new RegExp("(?:\\s+|^)"+a+"(?:\\s+|$)")," ")))?this.attributes["class"]=b:delete this.attributes["class"])},hasClass:function(a){var b=this.attributes["class"];return b?new RegExp("(?:^|\\s)"+a+"(?=\\s|$)").test(b):!1},getFilterContext:function(a){var b=[];if(a||(a={off:!1,nonEditable:!1,nestedEditable:!1}),a.off||"off"!=this.attributes["data-cke-processor"]||b.push("off",!0),a.nonEditable||"false"!=this.attributes.contenteditable?a.nonEditable&&!a.nestedEditable&&"true"==this.attributes.contenteditable&&b.push("nestedEditable",!0):b.push("nonEditable",!0),b.length){a=CKEDITOR.tools.copy(a);for(var c=0;c<b.length;c+=2)a[b[c]]=b[c+1]}return a}},!0)}(),function(){var a={},b=/{([^}]+)}/g,c=/([\\'])/g,d=/\n/g,e=/\r/g;CKEDITOR.template=function(f){if(a[f])this.output=a[f];else{var g=f.replace(c,"\\$1").replace(d,"\\n").replace(e,"\\r").replace(b,function(a,b){return"',data['"+b+"']==undefined?'{"+b+"}':data['"+b+"'],'"});this.output=a[f]=Function("data","buffer","return buffer?buffer.push('"+g+"'):['"+g+"'].join('');")}}}(),delete CKEDITOR.loadFullCore,CKEDITOR.instances={},CKEDITOR.document=new CKEDITOR.dom.document(document),CKEDITOR.add=function(a){CKEDITOR.instances[a.name]=a,a.on("focus",function(){CKEDITOR.currentInstance!=a&&(CKEDITOR.currentInstance=a,CKEDITOR.fire("currentInstance"))}),a.on("blur",function(){CKEDITOR.currentInstance==a&&(CKEDITOR.currentInstance=null,CKEDITOR.fire("currentInstance"))}),CKEDITOR.fire("instance",null,a)},CKEDITOR.remove=function(a){delete CKEDITOR.instances[a.name]},function(){var a={};CKEDITOR.addTemplate=function(b,c){var d=a[b];return d?d:(d={name:b,source:c},CKEDITOR.fire("template",d),a[b]=new CKEDITOR.template(d.source))},CKEDITOR.getTemplate=function(b){return a[b]}}(),function(){var a=[];CKEDITOR.addCss=function(b){a.push(b)},CKEDITOR.getCss=function(){return a.join("\n")}}(),CKEDITOR.on("instanceDestroyed",function(){CKEDITOR.tools.isEmpty(this.instances)&&CKEDITOR.fire("reset")}),CKEDITOR.TRISTATE_ON=1,CKEDITOR.TRISTATE_OFF=2,CKEDITOR.TRISTATE_DISABLED=0,function(){CKEDITOR.inline=function(a,b){if(!CKEDITOR.env.isCompatible)return null;if(a=CKEDITOR.dom.element.get(a),a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var c=new CKEDITOR.editor(b,a,CKEDITOR.ELEMENT_MODE_INLINE),d=a.is("textarea")?a:null;return d?(c.setData(d.getValue(),null,!0),a=CKEDITOR.dom.element.createFromHtml('<div contenteditable="'+!!c.readOnly+'" class="cke_textarea_inline">'+d.getValue()+"</div>",CKEDITOR.document),a.insertAfter(d),d.hide(),d.$.form&&c._attachToForm()):c.setData(a.getHtml(),null,!0),c.on("loaded",function(){c.fire("uiReady"),c.editable(a),c.container=a,c.ui.contentsElement=a,c.setData(c.getData(1)),c.resetDirty(),c.fire("contentDom"),c.mode="wysiwyg",c.fire("mode"),c.status="ready",c.fireOnce("instanceReady"),CKEDITOR.fire("instanceReady",null,c)},null,null,1e4),c.on("destroy",function(){d&&(c.container.clearCustomData(),c.container.remove(),d.show()),c.element.clearCustomData(),delete c.element}),c},CKEDITOR.inlineAll=function(){var a,b,c;for(c in CKEDITOR.dtd.$editable)for(var d=CKEDITOR.document.getElementsByTag(c),e=0,f=d.count();f>e;e++)a=d.getItem(e),"true"==a.getAttribute("contenteditable")&&(b={element:a,config:{}},!1!==CKEDITOR.fire("inline",b)&&CKEDITOR.inline(a,b.config))},CKEDITOR.domReady(function(){!CKEDITOR.disableAutoInline&&CKEDITOR.inlineAll()})}(),CKEDITOR.replaceClass="ckeditor",function(){function a(a,d,e,f){if(!CKEDITOR.env.isCompatible)return null;if(a=CKEDITOR.dom.element.get(a),a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var g=new CKEDITOR.editor(d,a,f);return f==CKEDITOR.ELEMENT_MODE_REPLACE&&(a.setStyle("visibility","hidden"),g._.required=a.hasAttribute("required"),a.removeAttribute("required")),e&&g.setData(e,null,!0),g.on("loaded",function(){c(g),f==CKEDITOR.ELEMENT_MODE_REPLACE&&g.config.autoUpdateElement&&a.$.form&&g._attachToForm(),g.setMode(g.config.startupMode,function(){g.resetDirty(),g.status="ready",g.fireOnce("instanceReady"),CKEDITOR.fire("instanceReady",null,g)})}),g.on("destroy",b),g}function b(){var a=this.container,b=this.element;a&&(a.clearCustomData(),a.remove()),b&&(b.clearCustomData(),this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&(b.show(),this._.required&&b.setAttribute("required","required")),delete this.element)}function c(a){var b=a.name,c=a.element,d=a.elementMode,e=a.fire("uiSpace",{space:"top",html:""}).html,f=a.fire("uiSpace",{space:"bottom",html:""}).html,g=new CKEDITOR.template('<{outerEl} id="cke_{name}" class="{id} cke cke_reset cke_chrome cke_editor_{name} cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" lang="{langCode}" role="application"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':"")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':"")+'<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation"></{outerEl}>{bottomHtml}</{outerEl}></{outerEl}>'),b=CKEDITOR.dom.element.createFromHtml(g.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.title,topHtml:e?'<span id="'+a.ui.spaceId("top")+'" class="cke_top cke_reset_all" role="presentation" style="height:auto">'+e+"</span>":"",contentId:a.ui.spaceId("contents"),bottomHtml:f?'<span id="'+a.ui.spaceId("bottom")+'" class="cke_bottom cke_reset_all" role="presentation">'+f+"</span>":"",outerEl:CKEDITOR.env.ie?"span":"div"}));d==CKEDITOR.ELEMENT_MODE_REPLACE?(c.hide(),b.insertAfter(c)):c.append(b),a.container=b,a.ui.contentsElement=a.ui.space("contents"),e&&a.ui.space("top").unselectable(),f&&a.ui.space("bottom").unselectable(),c=a.config.width,d=a.config.height,c&&b.setStyle("width",CKEDITOR.tools.cssLength(c)),d&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(d)),b.disableContextMenu(),CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()}),a.fireOnce("uiReady")}CKEDITOR.replace=function(b,c){return a(b,c,null,CKEDITOR.ELEMENT_MODE_REPLACE)},CKEDITOR.appendTo=function(b,c,d){return a(b,c,d,CKEDITOR.ELEMENT_MODE_APPENDTO)},CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b<a.length;b++){var c=null,d=a[b];if(d.name||d.id){if("string"==typeof arguments[0]){if(!new RegExp("(?:^|\\s)"+arguments[0]+"(?:$|\\s)").test(d.className))continue}else if("function"==typeof arguments[0]&&(c={},!1===arguments[0](d,c)))continue;this.replace(d,c)}}},CKEDITOR.editor.prototype.addMode=function(a,b){(this._.modes||(this._.modes={}))[a]=b},CKEDITOR.editor.prototype.setMode=function(a,b){var c=this,d=this._.modes;if(a!=c.mode&&d&&d[a]){if(c.fire("beforeSetMode",a),c.mode){var e,f=c.checkDirty(),d=c._.previousModeData,g=0;c.fire("beforeModeUnload"),c.editable(0),c._.previousMode=c.mode,c._.previousModeData=e=c.getData(1),"source"==c.mode&&d==e&&(c.fire("lockSnapshot",{forceUpdate:!0}),g=1),c.ui.space("contents").setHtml(""),c.mode=""}else c._.previousModeData=c.getData(1);this._.modes[a](function(){c.mode=a,void 0!==f&&!f&&c.resetDirty(),g?c.fire("unlockSnapshot"):"wysiwyg"==a&&c.fire("saveSnapshot"),setTimeout(function(){c.fire("mode"),b&&b.call(c)},0)})}},CKEDITOR.editor.prototype.resize=function(a,b,c,d){var e=this.container,f=this.ui.space("contents"),g=CKEDITOR.env.webkit&&this.document&&this.document.getWindow().$.frameElement;d=d?this.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}):e,d.setSize("width",a,!0),g&&(g.style.width="1%");var h=(d.$.offsetHeight||0)-(f.$.clientHeight||0),e=Math.max(b-(c?0:h),0);b=c?b+h:b,f.setStyle("height",e+"px"),g&&(g.style.width="100%"),this.fire("resize",{outerHeight:b,contentsHeight:e,outerWidth:a||d.getSize("width")})},CKEDITOR.editor.prototype.getResizable=function(a){return a?this.ui.space("contents"):this.container},CKEDITOR.domReady(function(){CKEDITOR.replaceClass&&CKEDITOR.replaceAll(CKEDITOR.replaceClass)})}(),CKEDITOR.config.startupMode="wysiwyg",function(){function a(a){var c,e=a.editor,f=a.data.path,h=f.blockLimit,i=a.data.selection,j=i.getRanges()[0];(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)&&(i=b(i,f))&&(i.appendBogus(),c=CKEDITOR.env.ie),g(e,f.block,h)&&j.collapsed&&!j.getCommonAncestor().isReadOnly()&&(f=j.clone(),f.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS),h=new CKEDITOR.dom.walker(f),h.guard=function(a){return!d(a)||a.type==CKEDITOR.NODE_COMMENT||a.isReadOnly()},!h.checkForward()||f.checkStartOfBlock()&&f.checkEndOfBlock())&&(e=j.fixBlock(!0,e.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p"),CKEDITOR.env.needsBrFiller||(e=e.getFirst(d))&&e.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(e.getText()).match(/^(?: |\xa0)$/)&&e.remove(),c=1,a.cancel()),c&&j.select()}function b(a,b){if(a.isFake)return 0;var c=b.block||b.blockLimit,e=c&&c.getLast(d);return!c||!c.isBlockBoundary()||e&&e.type==CKEDITOR.NODE_ELEMENT&&e.isBlockBoundary()||c.is("pre")||c.getBogus()?void 0:c}function c(a){var b=a.data.getTarget();b.is("input")&&(b=b.getAttribute("type"),"submit"!=b&&"reset"!=b||a.data.preventDefault())}function d(a){return k(a)&&l(a)}function e(a,b){return function(c){var d=c.data.$.toElement||c.data.$.fromElement||c.data.$.relatedTarget;(d=d&&d.nodeType==CKEDITOR.NODE_ELEMENT?new CKEDITOR.dom.element(d):null)&&(b.equals(d)||b.contains(d))||a.call(this,c)}}function f(a){function b(a){return function(b,e){return e&&b.type==CKEDITOR.NODE_ELEMENT&&b.is(f)&&(c=b),e||!d(b)||a&&n(b)?void 0:!1}}var c,e=a.getRanges()[0];a=a.root;var f={table:1,ul:1,ol:1,dl:1};if(e.startPath().contains(f)){var g=e.clone();if(g.collapse(1),g.setStartAt(a,CKEDITOR.POSITION_AFTER_START),a=new CKEDITOR.dom.walker(g),a.guard=b(),a.checkBackward(),c)return g=e.clone(),g.collapse(),g.setEndAt(c,CKEDITOR.POSITION_AFTER_END),a=new CKEDITOR.dom.walker(g),a.guard=b(!0),c=!1,a.checkForward(),c}return null}function g(a,b,c){return!1!==a.config.autoParagraph&&a.activeEnterMode!=CKEDITOR.ENTER_BR&&(a.editable().equals(c)&&!b||b&&"true"==b.getAttribute("contenteditable"))}function h(a){return a.activeEnterMode!=CKEDITOR.ENTER_BR&&!1!==a.config.autoParagraph?a.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p":!1}function i(a){var b=a.editor;b.getSelection().scrollIntoView(),setTimeout(function(){b.fire("saveSnapshot")},0)}function j(a,b,c){var d=a.getCommonAncestor(b);for(b=a=c?b:a;(a=a.getParent())&&!d.equals(a)&&1==a.getChildCount();)b=a;b.remove()}var k,l,m,n,o,p,q,r,s;CKEDITOR.editable=CKEDITOR.tools.createClass({base:CKEDITOR.dom.element,$:function(a,b){this.base(b.$||b),this.editor=a,this.status="unloaded",this.hasFocus=!1,this.setup()},proto:{focus:function(){var a;if(CKEDITOR.env.webkit&&!this.hasFocus&&(a=this.editor._.previousActive||this.getDocument().getActive(),this.contains(a)))return void a.focus();try{this.$[CKEDITOR.env.ie&&this.getDocument().equals(CKEDITOR.document)?"setActive":"focus"]()}catch(b){if(!CKEDITOR.env.ie)throw b}CKEDITOR.env.safari&&!this.isInline()&&(a=CKEDITOR.document.getActive(),a.equals(this.getWindow().getFrame())||this.getWindow().focus())},on:function(a,b){var c=Array.prototype.slice.call(arguments,0);return CKEDITOR.env.ie&&/^focus|blur$/.exec(a)&&(a="focus"==a?"focusin":"focusout",b=e(b,this),c[0]=a,c[1]=b),CKEDITOR.dom.element.prototype.on.apply(this,c)},attachListener:function(a){!this._.listeners&&(this._.listeners=[]);var b=Array.prototype.slice.call(arguments,1),b=a.on.apply(a,b);return this._.listeners.push(b),b},clearListeners:function(){var a=this._.listeners;try{for(;a.length;)a.pop().removeListener()}catch(b){}},restoreAttrs:function(){var a,b,c=this._.attrChanges;for(b in c)c.hasOwnProperty(b)&&(a=c[b],null!==a?this.setAttribute(b,a):this.removeAttribute(b))},attachClass:function(a){var b=this.getCustomData("classes");this.hasClass(a)||(!b&&(b=[]),b.push(a),this.setCustomData("classes",b),this.addClass(a))},changeAttr:function(a,b){var c=this.getAttribute(a);b!==c&&(!this._.attrChanges&&(this._.attrChanges={}),a in this._.attrChanges||(this._.attrChanges[a]=c),this.setAttribute(a,b))},insertText:function(a){this.editor.focus(),this.insertHtml(this.transformPlainTextToHtml(a),"text")},transformPlainTextToHtml:function(a){var b=this.editor.getSelection().getStartElement().hasAscendant("pre",!0)?CKEDITOR.ENTER_BR:this.editor.activeEnterMode;return CKEDITOR.tools.transformPlainTextToHtml(a,b)},insertHtml:function(a,b,c){var d=this.editor;d.focus(),d.fire("saveSnapshot"),c||(c=d.getSelection().getRanges()[0]),p(this,b||"html",a,c),c.select(),i(this),this.editor.fire("afterInsertHtml",{})},insertHtmlIntoRange:function(a,b,c){p(this,c||"html",a,b),this.editor.fire("afterInsertHtml",{intoRange:b})},insertElement:function(a,b){var c=this.editor;c.focus(),c.fire("saveSnapshot");var e=c.activeEnterMode,c=c.getSelection(),f=a.getName(),f=CKEDITOR.dtd.$block[f];b||(b=c.getRanges()[0]),this.insertElementIntoRange(a,b)&&(b.moveToPosition(a,CKEDITOR.POSITION_AFTER_END),f&&((f=a.getNext(function(a){return d(a)&&!n(a)}))&&f.type==CKEDITOR.NODE_ELEMENT&&f.is(CKEDITOR.dtd.$block)?f.getDtd()["#"]?b.moveToElementEditStart(f):b.moveToElementEditEnd(a):f||e==CKEDITOR.ENTER_BR||(f=b.fixBlock(!0,e==CKEDITOR.ENTER_DIV?"div":"p"),b.moveToElementEditStart(f)))),c.selectRanges([b]),i(this)},insertElementIntoSelection:function(a){this.insertElement(a)},insertElementIntoRange:function(a,b){var c=this.editor,d=c.config.enterMode,e=a.getName(),f=CKEDITOR.dtd.$block[e];if(b.checkReadOnly())return!1;b.deleteContents(1),b.startContainer.type==CKEDITOR.NODE_ELEMENT&&b.startContainer.is({tr:1,table:1,tbody:1,thead:1,tfoot:1})&&q(b);var g,h;if(f)for(;(g=b.getCommonAncestor(0,1))&&(h=CKEDITOR.dtd[g.getName()])&&(!h||!h[e]);)g.getName()in CKEDITOR.dtd.span?b.splitElement(g):b.checkStartOfBlock()&&b.checkEndOfBlock()?(b.setStartBefore(g),b.collapse(!0),g.remove()):b.splitBlock(d==CKEDITOR.ENTER_DIV?"div":"p",c.editable());return b.insertNode(a),!0},setData:function(a,b){b||(a=this.editor.dataProcessor.toHtml(a)),this.setHtml(a),this.fixInitialSelection(),"unloaded"==this.status&&(this.status="ready"),this.editor.fire("dataReady")},getData:function(a){var b=this.getHtml();return a||(b=this.editor.dataProcessor.toDataFormat(b)),b},setReadOnly:function(a){this.setAttribute("contenteditable",!a)},detach:function(){this.removeClass("cke_editable"),this.status="detached";var a=this.editor;this._.detach(),delete a.document,delete a.window},isInline:function(){return this.getDocument().equals(CKEDITOR.document)},fixInitialSelection:function(){function a(){var a,b=c.getDocument().$,d=b.getSelection();a:if(d.anchorNode&&d.anchorNode==c.$)a=!0;else{if(CKEDITOR.env.webkit&&(a=c.getDocument().getActive())&&a.equals(c)&&!d.anchorNode){a=!0;break a}a=void 0}a&&(a=new CKEDITOR.dom.range(c),a.moveToElementEditStart(c),b=b.createRange(),b.setStart(a.startContainer.$,a.startOffset),b.collapse(!0),d.removeAllRanges(),d.addRange(b))}function b(){var a=c.getDocument().$,b=a.selection,d=c.getDocument().getActive();"None"==b.type&&d.equals(c)&&(b=new CKEDITOR.dom.range(c),a=a.body.createTextRange(),b.moveToElementEditStart(c),b=b.startContainer,b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent()),a.moveToElementText(b.$),a.collapse(!0),a.select())}var c=this;CKEDITOR.env.ie&&(9>CKEDITOR.env.version||CKEDITOR.env.quirks)?this.hasFocus&&(this.focus(),b()):this.hasFocus?(this.focus(),a()):this.once("focus",function(){a()},null,null,-999)},getHtmlFromRange:function(a){return a.collapsed?new CKEDITOR.dom.documentFragment(a.document):(a={doc:this.getDocument(),range:a.clone()},r.eol.detect(a,this),r.bogus.exclude(a),r.cell.shrink(a),a.fragment=a.range.cloneContents(),r.tree.rebuild(a,this),r.eol.fix(a,this),new CKEDITOR.dom.documentFragment(a.fragment.$))},extractHtmlFromRange:function(a,b){var c=s,d={range:a,doc:a.document},e=this.getHtmlFromRange(a);if(a.collapsed)return a.optimize(),e;a.enlarge(CKEDITOR.ENLARGE_INLINE,1),c.table.detectPurge(d),d.bookmark=a.createBookmark(),delete d.range;var f=this.editor.createRange();if(f.moveToPosition(d.bookmark.startNode,CKEDITOR.POSITION_BEFORE_START),d.targetBookmark=f.createBookmark(),c.list.detectMerge(d,this),c.table.detectRanges(d,this),c.block.detectMerge(d,this),d.tableContentsRanges?(c.table.deleteRanges(d),a.moveToBookmark(d.bookmark),d.range=a):(a.moveToBookmark(d.bookmark),d.range=a,a.extractContents(c.detectExtractMerge(d))),a.moveToBookmark(d.targetBookmark),a.optimize(),c.fixUneditableRangePosition(a),c.list.merge(d,this),c.table.purge(d,this),c.block.merge(d,this),b){if(c=a.startPath(),d=a.checkStartOfBlock()&&a.checkEndOfBlock()&&c.block&&!a.root.equals(c.block)){a:{var g,d=c.block.getElementsByTag("span"),f=0;if(d)for(;g=d.getItem(f++);)if(!l(g)){d=!0;break a}d=!1}d=!d}d&&(a.moveToPosition(c.block,CKEDITOR.POSITION_BEFORE_START),c.block.remove())}else c.autoParagraph(this.editor,a),m(a.startContainer)&&a.startContainer.appendBogus();return a.startContainer.mergeSiblings(),e},setup:function(){var a=this.editor;if(this.attachListener(a,"beforeGetData",function(){var b=this.getData();this.is("textarea")||!1!==a.config.ignoreEmptyParagraph&&(b=b.replace(o,function(a,b){return b})),a.setData(b,null,1)},this),this.attachListener(a,"getSnapshot",function(a){a.data=this.getData(1)},this),this.attachListener(a,"afterSetData",function(){this.setData(a.getData(1))},this),this.attachListener(a,"loadSnapshot",function(a){this.setData(a.data,1)},this),this.attachListener(a,"beforeFocus",function(){var b=a.getSelection();(b=b&&b.getNative())&&"Control"==b.type||this.focus()},this),this.attachListener(a,"insertHtml",function(a){this.insertHtml(a.data.dataValue,a.data.mode,a.data.range)},this),this.attachListener(a,"insertElement",function(a){this.insertElement(a.data)},this),this.attachListener(a,"insertText",function(a){this.insertText(a.data)},this),this.setReadOnly(a.readOnly),this.attachClass("cke_editable"),a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?this.attachClass("cke_editable_inline"):a.elementMode!=CKEDITOR.ELEMENT_MODE_REPLACE&&a.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO||this.attachClass("cke_editable_themed"),this.attachClass("cke_contents_"+a.config.contentsLangDirection),a.keystrokeHandler.blockedKeystrokes[8]=+a.readOnly,a.keystrokeHandler.attach(this),this.on("blur",function(){this.hasFocus=!1},null,null,-1),this.on("focus",function(){this.hasFocus=!0},null,null,-1),a.focusManager.add(this),this.equals(CKEDITOR.document.getActive())&&(this.hasFocus=!0,a.once("contentDom",function(){a.focusManager.focus(this)},this)),this.isInline()&&this.changeAttr("tabindex",a.tabIndex),!this.is("textarea")){a.document=this.getDocument(),a.window=this.getWindow();var b=a.document;this.changeAttr("spellcheck",!a.config.disableNativeSpellChecker);var e=a.config.contentsLangDirection;this.getDirection(1)!=e&&this.changeAttr("dir",e);var g=CKEDITOR.getCss();if(g){var e=b.getHead(),h=e.getCustomData("stylesheet");h?g!=h.getText()&&(CKEDITOR.env.ie&&9>CKEDITOR.env.version?h.$.styleSheet.cssText=g:h.setText(g)):(g=b.appendStyleText(g),g=new CKEDITOR.dom.element(g.ownerNode||g.owningElement),e.setCustomData("stylesheet",g),g.data("cke-temp",1))}e=b.getCustomData("stylesheet_ref")||0,b.setCustomData("stylesheet_ref",e+1),this.setCustomData("cke_includeReadonly",!a.config.disableReadonlyStyling),this.attachListener(this,"click",function(a){a=a.data;var b=new CKEDITOR.dom.elementPath(a.getTarget(),this).contains("a");b&&2!=a.$.button&&b.isReadOnly()&&a.preventDefault()});var i={8:1,46:1};this.attachListener(a,"key",function(b){if(a.readOnly)return!0;var c,d=b.data.domEvent.getKey();if(d in i){b=a.getSelection();var e,g,h,j,l=b.getRanges()[0],m=l.startPath(),d=8==d;CKEDITOR.env.ie&&11>CKEDITOR.env.version&&(e=b.getSelectedElement())||(e=f(b))?(a.fire("saveSnapshot"),l.moveToPosition(e,CKEDITOR.POSITION_BEFORE_START),e.remove(),l.select(),a.fire("saveSnapshot"),c=1):l.collapsed&&((g=m.block)&&(j=g[d?"getPrevious":"getNext"](k))&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("table")&&l[d?"checkStartOfBlock":"checkEndOfBlock"]()?(a.fire("saveSnapshot"),l[d?"checkEndOfBlock":"checkStartOfBlock"]()&&g.remove(),l["moveToElementEdit"+(d?"End":"Start")](j),l.select(),a.fire("saveSnapshot"),c=1):m.blockLimit&&m.blockLimit.is("td")&&(h=m.blockLimit.getAscendant("table"))&&l.checkBoundaryOfElement(h,d?CKEDITOR.START:CKEDITOR.END)&&(j=h[d?"getPrevious":"getNext"](k))?(a.fire("saveSnapshot"),l["moveToElementEdit"+(d?"End":"Start")](j),l.checkStartOfBlock()&&l.checkEndOfBlock()?j.remove():l.select(),a.fire("saveSnapshot"),c=1):(h=m.contains(["td","th","caption"]))&&l.checkBoundaryOfElement(h,d?CKEDITOR.START:CKEDITOR.END)&&(c=1))}return!c}),a.blockless&&CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller&&this.attachListener(this,"keyup",function(b){b.data.getKeystroke()in i&&!this.getFirst(d)&&(this.appendBogus(),b=a.createRange(),b.moveToPosition(this,CKEDITOR.POSITION_AFTER_START),b.select())}),this.attachListener(this,"dblclick",function(b){return a.readOnly?!1:(b={element:b.data.getTarget()},void a.fire("doubleclick",b))}),CKEDITOR.env.ie&&this.attachListener(this,"click",c),CKEDITOR.env.ie&&!CKEDITOR.env.edge||this.attachListener(this,"mousedown",function(b){var c=b.data.getTarget();c.is("img","hr","input","textarea","select")&&!c.isReadOnly()&&(a.getSelection().selectElement(c),c.is("input","textarea","select")&&b.data.preventDefault())}),CKEDITOR.env.edge&&this.attachListener(this,"mouseup",function(b){(b=b.data.getTarget())&&b.is("img")&&a.getSelection().selectElement(b)}),CKEDITOR.env.gecko&&this.attachListener(this,"mouseup",function(b){if(2==b.data.$.button&&(b=b.data.getTarget(),!b.getOuterHtml().replace(o,""))){var c=a.createRange();c.moveToElementEditStart(b),c.select(!0)}}),CKEDITOR.env.webkit&&(this.attachListener(this,"click",function(a){a.data.getTarget().is("input","select")&&a.data.preventDefault()}),this.attachListener(this,"mouseup",function(a){a.data.getTarget().is("input","textarea")&&a.data.preventDefault()})),CKEDITOR.env.webkit&&this.attachListener(a,"key",function(b){if(a.readOnly)return!0;if(b=b.data.domEvent.getKey(),b in i){var c=8==b,d=a.getSelection().getRanges()[0];if(b=d.startPath(),d.collapsed)a:{var e=b.block;if(e&&d[c?"checkStartOfBlock":"checkEndOfBlock"]()&&d.moveToClosestEditablePosition(e,!c)&&d.collapsed){if(d.startContainer.type==CKEDITOR.NODE_ELEMENT){var f=d.startContainer.getChild(d.startOffset-(c?1:0));if(f&&f.type==CKEDITOR.NODE_ELEMENT&&f.is("hr")){a.fire("saveSnapshot"),f.remove(),b=!0;break a}}if(d=d.startPath().block,!d||d&&d.contains(e))b=void 0;else{a.fire("saveSnapshot");var g;(g=(c?d:e).getBogus())&&g.remove(),g=a.getSelection(),f=g.createBookmarks(),(c?e:d).moveChildren(c?d:e,!1),b.lastElement.mergeSiblings(),j(e,d,!c),g.selectBookmarks(f),b=!0}}else b=!1}else c=d,g=b.block,d=c.endPath().block,g&&d&&!g.equals(d)?(a.fire("saveSnapshot"),(e=g.getBogus())&&e.remove(),c.enlarge(CKEDITOR.ENLARGE_INLINE),c.deleteContents(),d.getParent()&&(d.moveChildren(g,!1),b.lastElement.mergeSiblings(),j(g,d,!0)),c=a.getSelection().getRanges()[0],c.collapse(1),c.optimize(),""===c.startContainer.getHtml()&&c.startContainer.appendBogus(),c.select(),b=!0):b=!1;if(!b)return;return a.getSelection().scrollIntoView(),a.fire("saveSnapshot"),!1}},this,null,100)}}},_:{detach:function(){this.editor.setData(this.editor.getData(),0,1),this.clearListeners(),this.restoreAttrs();var a;if(a=this.removeCustomData("classes"))for(;a.length;)this.removeClass(a.pop());if(!this.is("textarea")){a=this.getDocument();var b=a.getHead();if(b.getCustomData("stylesheet")){var c=a.getCustomData("stylesheet_ref");--c?a.setCustomData("stylesheet_ref",c):(a.removeCustomData("stylesheet_ref"),b.removeCustomData("stylesheet").remove())}}this.editor.fire("contentDomUnload"),delete this.editor}}}),CKEDITOR.editor.prototype.editable=function(a){var b=this._.editable;return b&&a?0:(arguments.length&&(b=this._.editable=a?a instanceof CKEDITOR.editable?a:new CKEDITOR.editable(this,a):(b&&b.detach(),null)),b)},CKEDITOR.on("instanceLoaded",function(b){var c=b.editor;c.on("insertElement",function(a){a=a.data,a.type==CKEDITOR.NODE_ELEMENT&&(a.is("input")||a.is("textarea"))&&("false"!=a.getAttribute("contentEditable")&&a.data("cke-editable",a.hasAttribute("contenteditable")?"true":"1"),a.setAttribute("contentEditable",!1))}),c.on("selectionChange",function(b){if(!c.readOnly){var d=c.getSelection();d&&!d.isLocked&&(d=c.checkDirty(),c.fire("lockSnapshot"),a(b),c.fire("unlockSnapshot"),!d&&c.resetDirty()); +}})}),CKEDITOR.on("instanceCreated",function(a){var b=a.editor;b.on("mode",function(){var a=b.editable();if(a&&a.isInline()){var c=b.title;a.changeAttr("role","textbox"),a.changeAttr("aria-label",c),c&&a.changeAttr("title",c);var d=b.fire("ariaEditorHelpLabel",{}).label;if(d&&(c=this.ui.space(this.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"top":"contents"))){var e=CKEDITOR.tools.getNextId(),d=CKEDITOR.dom.element.createFromHtml('<span id="'+e+'" class="cke_voice_label">'+d+"</span>");c.append(d),a.changeAttr("aria-describedby",e)}}})}),CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}"),k=CKEDITOR.dom.walker.whitespaces(!0),l=CKEDITOR.dom.walker.bookmark(!1,!0),m=CKEDITOR.dom.walker.empty(),n=CKEDITOR.dom.walker.bogus(),o=/(^|<body\b[^>]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:<br[^>]*>| |\u00A0| )?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,p=function(){function a(a){return a.type==CKEDITOR.NODE_ELEMENT}function b(c,d){var e,f,g,h,i=[],j=d.range.startContainer;e=d.range.startPath();for(var j=k[j.getName()],l=0,m=c.getChildren(),n=m.count(),o=-1,p=-1,q=0,r=e.contains(k.$list);n>l;++l)e=m.getItem(l),a(e)?(g=e.getName(),r&&g in CKEDITOR.dtd.$list?i=i.concat(b(e,d)):(h=!!j[g],"br"!=g||!e.data("cke-eol")||l&&l!=n-1||(q=(f=l?i[l-1].node:m.getItem(l+1))&&(!a(f)||!f.is("br")),f=f&&a(f)&&k.$block[f.getName()]),-1!=o||h||(o=l),h||(p=l),i.push({isElement:1,isLineBreak:q,isBlock:e.isBlockBoundary(),hasBlockSibling:f,node:e,name:g,allowed:h}),f=q=0)):i.push({isElement:0,node:e,allowed:1});return o>-1&&(i[o].firstNotAllowed=1),p>-1&&(i[p].lastNotAllowed=1),i}function c(b,d){var e,f=[],g=b.getChildren(),h=g.count(),i=0,j=k[d],l=!b.is(k.$inline)||b.is("br");for(l&&f.push(" ");h>i;i++)e=g.getItem(i),a(e)&&!e.is(j)?f=f.concat(c(e,d)):f.push(e);return l&&f.push(" "),f}function e(b){return a(b.startContainer)&&b.startContainer.getChild(b.startOffset-1)}function f(b){return b&&a(b)&&(b.is(k.$removeEmpty)||b.is("a")&&!b.isBlockBoundary())}function i(b,c,d,e){var f,g,h=b.clone();h.setEndAt(c,CKEDITOR.POSITION_BEFORE_END),(f=new CKEDITOR.dom.walker(h).next())&&a(f)&&l[f.getName()]&&(g=f.getPrevious())&&a(g)&&!g.getParent().equals(b.startContainer)&&d.contains(g)&&e.contains(f)&&f.isIdentical(g)&&(f.moveChildren(g),f.remove(),i(b,c,d,e))}function j(b,c){function d(b,c){return c.isBlock&&c.isElement&&!c.node.is("br")&&a(b)&&b.is("br")?(b.remove(),1):void 0}var e=c.endContainer.getChild(c.endOffset),f=c.endContainer.getChild(c.endOffset-1);e&&d(e,b[b.length-1]),f&&d(f,b[0])&&(c.setEnd(c.endContainer,c.endOffset-1),c.collapse())}var k=CKEDITOR.dtd,l={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},m={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},n=CKEDITOR.tools.extend({},k.$inline);return delete n.br,function(l,o,p,q){var r=l.editor,s=!1;if("unfiltered_html"==o&&(o="html",s=!0),!q.checkReadOnly()){var t=new CKEDITOR.dom.elementPath(q.startContainer,q.root).blockLimit||q.root;l={type:o,dontFilter:s,editable:l,editor:r,range:q,blockLimit:t,mergeCandidates:[],zombies:[]},o=l.range,q=l.mergeCandidates;var u,v;if("text"==l.type&&o.shrink(CKEDITOR.SHRINK_ELEMENT,!0,!1)&&(u=CKEDITOR.dom.element.createFromHtml("<span> </span>",o.document),o.insertNode(u),o.setStartAfter(u)),s=new CKEDITOR.dom.elementPath(o.startContainer),l.endPath=t=new CKEDITOR.dom.elementPath(o.endContainer),!o.collapsed){var r=t.block||t.blockLimit,w=o.getCommonAncestor();r&&!r.equals(w)&&!r.contains(w)&&o.checkEndOfBlock()&&l.zombies.push(r),o.deleteContents()}for(;(v=e(o))&&a(v)&&v.isBlockBoundary()&&s.contains(v);)o.moveToPosition(v,CKEDITOR.POSITION_BEFORE_END);for(i(o,l.blockLimit,s,t),u&&(o.setEndBefore(u),o.collapse(),u.remove()),u=o.startPath(),(r=u.contains(f,!1,1))&&(o.splitElement(r),l.inlineStylesRoot=r,l.inlineStylesPeak=u.lastElement),u=o.createBookmark(),(r=u.startNode.getPrevious(d))&&a(r)&&f(r)&&q.push(r),(r=u.startNode.getNext(d))&&a(r)&&f(r)&&q.push(r),r=u.startNode;(r=r.getParent())&&f(r);)q.push(r);if(o.moveToBookmark(u),u=p){if(u=l.range,"text"==l.type&&l.inlineStylesRoot){for(v=l.inlineStylesPeak,o=v.getDocument().createText("{cke-peak}"),q=l.inlineStylesRoot.getParent();!v.equals(q);)o=o.appendTo(v.clone()),v=v.getParent();p=o.getOuterHtml().split("{cke-peak}").join(p)}if(v=l.blockLimit.getName(),/^\s+|\s+$/.test(p)&&"span"in CKEDITOR.dtd[v]){var x='<span data-cke-marker="1"> </span>';p=x+p+x}if(p=l.editor.dataProcessor.toHtml(p,{context:null,fixForBody:!1,protectedWhitespaces:!!x,dontFilter:l.dontFilter,filter:l.editor.activeFilter,enterMode:l.editor.activeEnterMode}),v=u.document.createElement("body"),v.setHtml(p),x&&(v.getFirst().remove(),v.getLast().remove()),(x=u.startPath().block)&&(1!=x.getChildCount()||!x.getBogus()))a:{var y;if(1==v.getChildCount()&&a(y=v.getFirst())&&y.is(m)&&!y.hasAttribute("contenteditable")){for(x=y.getElementsByTag("*"),u=0,q=x.count();q>u;u++)if(o=x.getItem(u),!o.is(n))break a;y.moveChildren(y.getParent(1)),y.remove()}}l.dataWrapper=v,u=p}if(u){y=l.range,u=y.document;var z;v=l.blockLimit,q=0;var A,B,C,x=[];p=r=0;var D,E;o=y.startContainer;var F,s=l.endPath.elements[0],t=s.getPosition(o),w=!(!s.getCommonAncestor(o)||t==CKEDITOR.POSITION_IDENTICAL||t&CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED);for(o=b(l.dataWrapper,l),j(o,y);q<o.length;q++){if(t=o[q],z=t.isLineBreak){z=y,D=v;var G=void 0,H=void 0;t.hasBlockSibling?z=1:(G=z.startContainer.getAscendant(k.$block,1))&&G.is({div:1,p:1})?(H=G.getPosition(D),H==CKEDITOR.POSITION_IDENTICAL||H==CKEDITOR.POSITION_CONTAINS?z=0:(D=z.splitElement(G),z.moveToPosition(D,CKEDITOR.POSITION_AFTER_START),z=1)):z=0}if(z)p=q>0;else{if(z=y.startPath(),!t.isBlock&&g(l.editor,z.block,z.blockLimit)&&(C=h(l.editor))&&(C=u.createElement(C),C.appendBogus(),y.insertNode(C),CKEDITOR.env.needsBrFiller&&(A=C.getBogus())&&A.remove(),y.moveToPosition(C,CKEDITOR.POSITION_BEFORE_END)),(z=y.startPath().block)&&!z.equals(B)&&((A=z.getBogus())&&(A.remove(),x.push(z)),B=z),t.firstNotAllowed&&(r=1),r&&t.isElement){for(z=y.startContainer,D=null;z&&!k[z.getName()][t.name];){if(z.equals(v)){z=null;break}D=z,z=z.getParent()}if(z)D&&(E=y.splitElement(D),l.zombies.push(E),l.zombies.push(D));else{D=v.getName(),F=!q,z=q==o.length-1,D=c(t.node,D);for(var G=[],H=D.length,I=0,J=void 0,K=0,L=-1;H>I;I++)J=D[I]," "==J?(K||F&&!I||(G.push(new CKEDITOR.dom.text(" ")),L=G.length),K=1):(G.push(J),K=0);z&&L==G.length&&G.pop(),F=G}}if(F){for(;z=F.pop();)y.insertNode(z);F=0}else y.insertNode(t.node);t.lastNotAllowed&&q<o.length-1&&((E=w?s:E)&&y.setEndAt(E,CKEDITOR.POSITION_AFTER_START),r=0),y.collapse()}}1!=o.length?A=!1:(A=o[0],A=A.isElement&&"false"==A.node.getAttribute("contenteditable")),A&&(p=!0,z=o[0].node,y.setStartAt(z,CKEDITOR.POSITION_BEFORE_START),y.setEndAt(z,CKEDITOR.POSITION_AFTER_END)),l.dontMoveCaret=p,l.bogusNeededBlocks=x}A=l.range;var M;for(E=l.bogusNeededBlocks,F=A.createBookmark();B=l.zombies.pop();)B.getParent()&&(C=A.clone(),C.moveToElementEditStart(B),C.removeEmptyBlocksAtEnd());if(E)for(;B=E.pop();)CKEDITOR.env.needsBrFiller?B.appendBogus():B.append(A.document.createText("Â "));for(;B=l.mergeCandidates.pop();)B.mergeSiblings();if(A.moveToBookmark(F),!l.dontMoveCaret){for(B=e(A);B&&a(B)&&!B.is(k.$empty);){if(B.isBlockBoundary())A.moveToPosition(B,CKEDITOR.POSITION_BEFORE_END);else{if(f(B)&&B.getHtml().match(/(\s| )$/g)){M=null;break}M=A.clone(),M.moveToPosition(B,CKEDITOR.POSITION_BEFORE_END)}B=B.getLast(d)}M&&A.moveToRange(M)}}}}(),q=function(){function a(a){return a=new CKEDITOR.dom.walker(a),a.guard=function(a,b){return b?!1:a.type==CKEDITOR.NODE_ELEMENT?a.is(CKEDITOR.dtd.$tableContent):void 0},a.evaluator=function(a){return a.type==CKEDITOR.NODE_ELEMENT},a}function b(a,b,c){return b=a.getDocument().createElement(b),a.append(b,c),b}function c(a){var b,c=a.count();for(c;0<c--;)b=a.getItem(c),CKEDITOR.tools.trim(b.getHtml())||(b.appendBogus(),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&b.getChildCount()&&b.getFirst().remove())}return function(d){var e=d.startContainer,f=e.getAscendant("table",1),g=!1;c(f.getElementsByTag("td")),c(f.getElementsByTag("th")),f=d.clone(),f.setStart(e,0),f=a(f).lastBackward(),f||(f=d.clone(),f.setEndAt(e,CKEDITOR.POSITION_BEFORE_END),f=a(f).lastForward(),g=!0),f||(f=e),f.is("table")?(d.setStartAt(f,CKEDITOR.POSITION_BEFORE_START),d.collapse(!0),f.remove()):(f.is({tbody:1,thead:1,tfoot:1})&&(f=b(f,"tr",g)),f.is("tr")&&(f=b(f,f.getParent().is("thead")?"th":"td",g)),(e=f.getBogus())&&e.remove(),d.moveToPosition(f,g?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END))}}(),r={eol:{detect:function(a,b){var c=a.range,d=c.clone(),e=c.clone(),f=new CKEDITOR.dom.elementPath(c.startContainer,b),g=new CKEDITOR.dom.elementPath(c.endContainer,b);d.collapse(1),e.collapse(),f.block&&d.checkBoundaryOfElement(f.block,CKEDITOR.END)&&(c.setStartAfter(f.block),a.prependEolBr=1),g.block&&e.checkBoundaryOfElement(g.block,CKEDITOR.START)&&(c.setEndBefore(g.block),a.appendEolBr=1)},fix:function(a,b){var c,d=b.getDocument();a.appendEolBr&&(c=this.createEolBr(d),a.fragment.append(c)),!a.prependEolBr||c&&!c.getPrevious()||a.fragment.append(this.createEolBr(d),1)},createEolBr:function(a){return a.createElement("br",{attributes:{"data-cke-eol":1}})}},bogus:{exclude:function(a){var b=a.range.getBoundaryNodes(),c=b.startNode,b=b.endNode;!b||!n(b)||c&&c.equals(b)||a.range.setEndBefore(b)}},tree:{rebuild:function(a,b){var c,d=a.range,e=d.getCommonAncestor(),f=new CKEDITOR.dom.elementPath(e,b),g=new CKEDITOR.dom.elementPath(d.startContainer,b),d=new CKEDITOR.dom.elementPath(d.endContainer,b);if(e.type==CKEDITOR.NODE_TEXT&&(e=e.getParent()),f.blockLimit.is({tr:1,table:1})){var h=f.contains("table").getParent();c=function(a){return!a.equals(h)}}else if(f.block&&f.block.is(CKEDITOR.dtd.$listItem)&&(g=g.contains(CKEDITOR.dtd.$list),d=d.contains(CKEDITOR.dtd.$list),!g.equals(d))){var i=f.contains(CKEDITOR.dtd.$list).getParent();c=function(a){return!a.equals(i)}}c||(c=function(a){return!a.equals(f.block)&&!a.equals(f.blockLimit)}),this.rebuildFragment(a,b,e,c)},rebuildFragment:function(a,b,c,d){for(var e;c&&!c.equals(b)&&d(c);)e=c.clone(0,1),a.fragment.appendTo(e),a.fragment=e,c=c.getParent()}},cell:{shrink:function(a){a=a.range;var b=a.startContainer,c=a.endContainer,d=a.startOffset,e=a.endOffset;b.type==CKEDITOR.NODE_ELEMENT&&b.equals(c)&&b.is("tr")&&++d==e&&a.shrink(CKEDITOR.SHRINK_TEXT)}}},s=function(){function a(a,b){var c=a.getParent();c.is(CKEDITOR.dtd.$inline)&&a[b?"insertBefore":"insertAfter"](c)}function b(b,c,d){a(c),a(d,1);for(var e;e=d.getNext();)e.insertAfter(c),c=e;m(b)&&b.remove()}function c(a,b){var c=new CKEDITOR.dom.range(a);return c.setStartAfter(b.startNode),c.setEndBefore(b.endNode),c}return{list:{detectMerge:function(a,b){var d=c(b,a.bookmark),e=d.startPath(),f=d.endPath(),g=e.contains(CKEDITOR.dtd.$list),h=f.contains(CKEDITOR.dtd.$list);a.mergeList=g&&h&&g.getParent().equals(h.getParent())&&!g.equals(h),a.mergeListItems=e.block&&f.block&&e.block.is(CKEDITOR.dtd.$listItem)&&f.block.is(CKEDITOR.dtd.$listItem),(a.mergeList||a.mergeListItems)&&(d=d.clone(),d.setStartBefore(a.bookmark.startNode),d.setEndAfter(a.bookmark.endNode),a.mergeListBookmark=d.createBookmark())},merge:function(a,c){if(a.mergeListBookmark){var d=a.mergeListBookmark.startNode,e=a.mergeListBookmark.endNode,f=new CKEDITOR.dom.elementPath(d,c),g=new CKEDITOR.dom.elementPath(e,c);if(a.mergeList){var h=f.contains(CKEDITOR.dtd.$list),i=g.contains(CKEDITOR.dtd.$list);h.equals(i)||(i.moveChildren(h),i.remove())}a.mergeListItems&&(f=f.contains(CKEDITOR.dtd.$listItem),g=g.contains(CKEDITOR.dtd.$listItem),f.equals(g)||b(g,d,e)),d.remove(),e.remove()}}},block:{detectMerge:function(a,b){if(!a.tableContentsRanges&&!a.mergeListBookmark){var c=new CKEDITOR.dom.range(b);c.setStartBefore(a.bookmark.startNode),c.setEndAfter(a.bookmark.endNode),a.mergeBlockBookmark=c.createBookmark()}},merge:function(a,c){if(a.mergeBlockBookmark&&!a.purgeTableBookmark){var d=a.mergeBlockBookmark.startNode,e=a.mergeBlockBookmark.endNode,f=new CKEDITOR.dom.elementPath(d,c),g=new CKEDITOR.dom.elementPath(e,c),f=f.block,g=g.block;f&&g&&!f.equals(g)&&b(g,d,e),d.remove(),e.remove()}}},table:function(){function a(a){var c,e=[],f=new CKEDITOR.dom.walker(a),g=a.startPath().contains(d),h=a.endPath().contains(d),i={};return f.guard=function(f,j){if(f.type==CKEDITOR.NODE_ELEMENT){var k="visited_"+(j?"out":"in");if(f.getCustomData(k))return;CKEDITOR.dom.element.setMarker(i,f,k,1)}j&&g&&f.equals(g)?(c=a.clone(),c.setEndAt(g,CKEDITOR.POSITION_BEFORE_END),e.push(c)):!j&&h&&f.equals(h)?(c=a.clone(),c.setStartAt(h,CKEDITOR.POSITION_AFTER_START),e.push(c)):((k=!j)&&(k=f.type==CKEDITOR.NODE_ELEMENT&&f.is(d)&&(!g||b(f,g))&&(!h||b(f,h))),k&&(c=a.clone(),c.selectNodeContents(f),e.push(c)))},f.lastForward(),CKEDITOR.dom.element.clearAllMarkers(i),e}function b(a,b){var c=CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED,d=a.getPosition(b);return d===CKEDITOR.POSITION_IDENTICAL?!1:0===(d&c)}var d={td:1,th:1,caption:1};return{detectPurge:function(a){var b=a.range,c=b.clone();c.enlarge(CKEDITOR.ENLARGE_ELEMENT);var c=new CKEDITOR.dom.walker(c),e=0;if(c.evaluator=function(a){a.type==CKEDITOR.NODE_ELEMENT&&a.is(d)&&++e},c.checkForward(),e>1){var c=b.startPath().contains("table"),f=b.endPath().contains("table");c&&f&&b.checkBoundaryOfElement(c,CKEDITOR.START)&&b.checkBoundaryOfElement(f,CKEDITOR.END)&&(b=a.range.clone(),b.setStartBefore(c),b.setEndAfter(f),a.purgeTableBookmark=b.createBookmark())}},detectRanges:function(e,f){var g,h,i=c(f,e.bookmark),j=i.clone(),k=i.getCommonAncestor();k.is(CKEDITOR.dtd.$tableContent)&&!k.is(d)&&(k=k.getAscendant("table",!0)),h=k,k=new CKEDITOR.dom.elementPath(i.startContainer,h),h=new CKEDITOR.dom.elementPath(i.endContainer,h),k=k.contains("table"),h=h.contains("table"),(k||h)&&(k&&h&&b(k,h)?(e.tableSurroundingRange=j,j.setStartAt(k,CKEDITOR.POSITION_AFTER_END),j.setEndAt(h,CKEDITOR.POSITION_BEFORE_START),j=i.clone(),j.setEndAt(k,CKEDITOR.POSITION_AFTER_END),g=i.clone(),g.setStartAt(h,CKEDITOR.POSITION_BEFORE_START),g=a(j).concat(a(g))):k?h||(e.tableSurroundingRange=j,j.setStartAt(k,CKEDITOR.POSITION_AFTER_END),i.setEndAt(k,CKEDITOR.POSITION_AFTER_END)):(e.tableSurroundingRange=j,j.setEndAt(h,CKEDITOR.POSITION_BEFORE_START),i.setStartAt(h,CKEDITOR.POSITION_AFTER_START)),e.tableContentsRanges=g?g:a(i))},deleteRanges:function(a){for(var b;b=a.tableContentsRanges.pop();)b.extractContents(),m(b.startContainer)&&b.startContainer.appendBogus();a.tableSurroundingRange&&a.tableSurroundingRange.extractContents()},purge:function(a){if(a.purgeTableBookmark){var b=a.doc,c=a.range.clone(),b=b.createElement("p");b.insertBefore(a.purgeTableBookmark.startNode),c.moveToBookmark(a.purgeTableBookmark),c.deleteContents(),a.range.moveToPosition(b,CKEDITOR.POSITION_AFTER_START)}}}}(),detectExtractMerge:function(a){return!(a.range.startPath().contains(CKEDITOR.dtd.$listItem)&&a.range.endPath().contains(CKEDITOR.dtd.$listItem))},fixUneditableRangePosition:function(a){a.startContainer.getDtd()["#"]||a.moveToClosestEditablePosition(null,!0)},autoParagraph:function(a,b){var c,d=b.startPath();g(a,d.block,d.blockLimit)&&(c=h(a))&&(c=b.document.createElement(c),c.appendBogus(),b.insertNode(c),b.moveToPosition(c,CKEDITOR.POSITION_AFTER_START))}}}()}(),function(){function a(){var a,b=this._.fakeSelection;b&&(a=this.getSelection(1),a&&a.isHidden()||(b.reset(),b=0)),(b||(b=a||this.getSelection(1),b&&b.getType()!=CKEDITOR.SELECTION_NONE))&&(this.fire("selectionCheck",b),a=this.elementPath(),a.compare(this._.selectionPreviousPath)||(CKEDITOR.env.webkit&&(this._.previousActive=this.document.getActive()),this._.selectionPreviousPath=a,this.fire("selectionChange",{selection:b,path:a})))}function b(){m=!0,l||(c.call(this),l=CKEDITOR.tools.setTimeout(c,200,this))}function c(){l=null,m&&(CKEDITOR.tools.setTimeout(a,0,this),m=!1)}function d(a){return!(!n(a)&&(a.type!=CKEDITOR.NODE_ELEMENT||a.is(CKEDITOR.dtd.$empty)))}function e(a){function b(b,c){return b&&b.type!=CKEDITOR.NODE_TEXT?a.clone()["moveToElementEdit"+(c?"End":"Start")](b):!1}if(!(a.root instanceof CKEDITOR.editable))return!1;var c=a.startContainer,e=a.getPreviousNode(d,null,c),f=a.getNextNode(d,null,c);return!(!b(e)&&!b(f,1)&&(e||f||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary()&&c.getBogus()))}function f(a){g(a,!1);var b=a.getDocument().createText(s);return a.setCustomData("cke-fillingChar",b),b}function g(a,b){var c=a&&a.removeCustomData("cke-fillingChar");if(c){if(!1!==b){var d=a.getDocument().getSelection().getNative(),e=d&&"None"!=d.type&&d.getRangeAt(0),f=s.length;if(c.getLength()>f&&e&&e.intersectsNode(c.$)){var g=[{node:d.anchorNode,offset:d.anchorOffset},{node:d.focusNode,offset:d.focusOffset}];d.anchorNode==c.$&&d.anchorOffset>f&&(g[0].offset-=f),d.focusNode==c.$&&d.focusOffset>f&&(g[1].offset-=f)}}c.setText(h(c.getText(),1)),g&&(c=a.getDocument().$,d=c.getSelection(),c=c.createRange(),c.setStart(g[0].node,g[0].offset),c.collapse(!0),d.removeAllRanges(),d.addRange(c),d.extend(g[1].node,g[1].offset))}}function h(a,b){return b?a.replace(t,function(a,b){return b?"Â ":""}):a.replace(s,"")}function i(a){var b=CKEDITOR.dom.element.createFromHtml('<div data-cke-hidden-sel="1" data-cke-temp="1" style="'+(CKEDITOR.env.ie?"display:none":"position:fixed;top:0;left:-1000px")+'"> </div>',a.document);a.fire("lockSnapshot"),a.editable().append(b);var c=a.getSelection(1),d=a.createRange(),e=c.root.on("selectionchange",function(a){a.cancel()},null,null,0);d.setStartAt(b,CKEDITOR.POSITION_AFTER_START),d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END),c.selectRanges([d]),e.removeListener(),a.fire("unlockSnapshot"),a._.hiddenSelectionContainer=b}function j(a){var b={37:1,39:1,8:1,46:1};return function(c){var d=c.data.getKeystroke();if(b[d]){var e=a.getSelection().getRanges(),f=e[0];1==e.length&&f.collapsed&&(d=f[38>d?"getPreviousEditableNode":"getNextEditableNode"]())&&d.type==CKEDITOR.NODE_ELEMENT&&"false"==d.getAttribute("contenteditable")&&(a.getSelection().fake(d),c.data.preventDefault(),c.cancel())}}}function k(a){for(var b=0;b<a.length;b++){var c=a[b];if(c.getCommonAncestor().isReadOnly()&&a.splice(b,1),!c.collapsed){if(c.startContainer.isReadOnly())for(var d,e=c.startContainer;e&&!((d=e.type==CKEDITOR.NODE_ELEMENT)&&e.is("body")||!e.isReadOnly());)d&&"false"==e.getAttribute("contentEditable")&&c.setStartAfter(e),e=e.getParent();e=c.startContainer,d=c.endContainer;var f=c.startOffset,g=c.endOffset,h=c.clone();e&&e.type==CKEDITOR.NODE_TEXT&&(f>=e.getLength()?h.setStartAfter(e):h.setStartBefore(e)),d&&d.type==CKEDITOR.NODE_TEXT&&(g?h.setEndAfter(d):h.setEndBefore(d)),e=new CKEDITOR.dom.walker(h),e.evaluator=function(d){if(d.type==CKEDITOR.NODE_ELEMENT&&d.isReadOnly()){var e=c.clone();return c.setEndBefore(d),c.collapsed&&a.splice(b--,1),d.getPosition(h.endContainer)&CKEDITOR.POSITION_CONTAINS||(e.setStartAfter(d),e.collapsed||a.splice(b+1,0,e)),!0}return!1},e.next()}}return a}var l,m,n=CKEDITOR.dom.walker.invisible(1),o=function(){function a(a){return function(b){var c=b.editor.createRange();return c.moveToClosestEditablePosition(b.selected,a)&&b.editor.getSelection().selectRanges([c]),!1}}function b(a){return function(b){var c,d=b.editor,e=d.createRange();return(c=e.moveToClosestEditablePosition(b.selected,a))||(c=e.moveToClosestEditablePosition(b.selected,!a)),c&&d.getSelection().selectRanges([e]),d.fire("saveSnapshot"),b.selected.remove(),c||(e.moveToElementEditablePosition(d.editable()),d.getSelection().selectRanges([e])),d.fire("saveSnapshot"),!1}}var c=a(),d=a(1);return{37:c,38:c,39:d,40:d,8:b(),46:b(1)}}();CKEDITOR.on("instanceCreated",function(c){function d(){var a=e.getSelection();a&&a.removeAllRanges()}var e=c.editor;e.on("contentDom",function(){function c(){h=new CKEDITOR.dom.selection(e.getSelection()),h.lock()}function d(){k.removeListener("mouseup",d),n.removeListener("mouseup",d);var a=CKEDITOR.document.$.selection,b=a.createRange();"None"!=a.type&&b.parentElement().ownerDocument==i.$&&b.select()}var f,h,i=e.document,k=CKEDITOR.document,l=e.editable(),m=i.getBody(),n=i.getDocumentElement(),o=l.isInline();if(CKEDITOR.env.gecko&&l.attachListener(l,"focus",function(a){a.removeListener(),0!==f&&(a=e.getSelection().getNative())&&a.isCollapsed&&a.anchorNode==l.$&&(a=e.createRange(),a.moveToElementEditStart(l),a.select())},null,null,-2),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){f&&CKEDITOR.env.webkit&&(f=e._.previousActive&&e._.previousActive.equals(i.getActive())),e.unlockSelection(f),f=0},null,null,-1),l.attachListener(l,"mousedown",function(){f=0}),(CKEDITOR.env.ie||o)&&(p?l.attachListener(l,"beforedeactivate",c,null,null,-1):l.attachListener(e,"selectionCheck",c,null,null,-1),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusOut":"blur",function(){e.lockSelection(h),f=1},null,null,-1),l.attachListener(l,"mousedown",function(){f=0})),CKEDITOR.env.ie&&!o){var q;l.attachListener(l,"mousedown",function(a){2==a.data.$.button&&((a=e.document.getSelection())&&a.getType()!=CKEDITOR.SELECTION_NONE||(q=e.window.getScrollPosition()))}),l.attachListener(l,"mouseup",function(a){2==a.data.$.button&&q&&(e.document.$.documentElement.scrollLeft=q.x,e.document.$.documentElement.scrollTop=q.y),q=null}),"BackCompat"!=i.$.compatMode&&((CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&n.on("mousedown",function(a){function b(a){if(a=a.data.$,d){var b=m.$.createTextRange();try{b.moveToPoint(a.clientX,a.clientY)}catch(c){}d.setEndPoint(0>f.compareEndPoints("StartToStart",b)?"EndToEnd":"StartToStart",b),d.select()}}function c(){n.removeListener("mousemove",b),k.removeListener("mouseup",c),n.removeListener("mouseup",c),d.select()}if(a=a.data,a.getTarget().is("html")&&a.$.y<n.$.clientHeight&&a.$.x<n.$.clientWidth){var d=m.$.createTextRange();try{d.moveToPoint(a.$.clientX,a.$.clientY)}catch(e){}var f=d.duplicate();n.on("mousemove",b),k.on("mouseup",c),n.on("mouseup",c)}}),7<CKEDITOR.env.version&&11>CKEDITOR.env.version&&n.on("mousedown",function(a){a.data.getTarget().is("html")&&(k.on("mouseup",d),n.on("mouseup",d))}))}if(l.attachListener(l,"selectionchange",a,e),l.attachListener(l,"keyup",b,e),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){e.forceNextSelectionCheck(),e.selectionChange(1)}),o&&(CKEDITOR.env.webkit||CKEDITOR.env.gecko)){var r;l.attachListener(l,"mousedown",function(){r=1}),l.attachListener(i.getDocumentElement(),"mouseup",function(){r&&b.call(e),r=0})}else l.attachListener(CKEDITOR.env.ie?l:i.getDocumentElement(),"mouseup",b,e);CKEDITOR.env.webkit&&l.attachListener(i,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:g(l)}},null,null,-1),l.attachListener(l,"keydown",j(e),null,null,-1)}),e.on("setData",function(){e.unlockSelection(),CKEDITOR.env.webkit&&d()}),e.on("contentDomUnload",function(){e.unlockSelection()}),CKEDITOR.env.ie9Compat&&e.on("beforeDestroy",d,null,null,9),e.on("dataReady",function(){delete e._.fakeSelection,delete e._.hiddenSelectionContainer,e.selectionChange(1)}),e.on("loadSnapshot",function(){var a=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT),b=e.editable().getLast(a);b&&b.hasAttribute("data-cke-hidden-sel")&&(b.remove(),CKEDITOR.env.gecko&&(a=e.editable().getFirst(a))&&a.is("br")&&a.getAttribute("_moz_editor_bogus_node")&&a.remove())},null,null,100),e.on("key",function(a){if("wysiwyg"==e.mode){var b=e.getSelection();if(b.isFake){var c=o[a.data.keyCode];if(c)return c({editor:e,selected:b.getSelectedElement(),selection:b,keyEvent:a})}}})}),CKEDITOR.env.webkit&&CKEDITOR.on("instanceReady",function(a){var b=a.editor;b.on("selectionChange",function(){var a=b.editable(),c=a.getCustomData("cke-fillingChar");c&&(c.getCustomData("ready")?g(a):c.setCustomData("ready",1))},null,null,-1),b.on("beforeSetMode",function(){g(b.editable())},null,null,-1),b.on("getSnapshot",function(a){a.data&&(a.data=h(a.data))},b,null,20),b.on("toDataFormat",function(a){a.data.dataValue=h(a.data.dataValue)},null,null,0)}),CKEDITOR.editor.prototype.selectionChange=function(c){(c?a:b).call(this)},CKEDITOR.editor.prototype.getSelection=function(a){return!this._.savedSelection&&!this._.fakeSelection||a?(a=this.editable())&&"wysiwyg"==this.mode?new CKEDITOR.dom.selection(a):null:this._.savedSelection||this._.fakeSelection},CKEDITOR.editor.prototype.lockSelection=function(a){return a=a||this.getSelection(1),a.getType()!=CKEDITOR.SELECTION_NONE?(!a.isLocked&&a.lock(),this._.savedSelection=a,!0):!1},CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;return b?(b.unlock(a),delete this._.savedSelection,!0):!1},CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath},CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)},CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);return a.selectRanges([this]),a},CKEDITOR.SELECTION_NONE=1,CKEDITOR.SELECTION_TEXT=2,CKEDITOR.SELECTION_ELEMENT=3;var p="function"!=typeof window.getSelection,q=1;CKEDITOR.dom.selection=function(a){if(a instanceof CKEDITOR.dom.selection){var b=a;a=a.root}var c=a instanceof CKEDITOR.dom.element;if(this.rev=b?b.rev:q++,this.document=a instanceof CKEDITOR.dom.document?a:a.getDocument(),this.root=c?a:this.document.getBody(),this.isLocked=0,this._={cache:{}},b)return CKEDITOR.tools.extend(this._.cache,b._.cache),this.isFake=b.isFake,this.isLocked=b.isLocked,this;a=this.getNative();var d,e;if(a)if(a.getRangeAt)d=(e=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(e.commonAncestorContainer);else{try{e=a.createRange()}catch(f){}d=e&&CKEDITOR.dom.element.get(e.item&&e.item(0)||e.parentElement())}return(!d||d.type!=CKEDITOR.NODE_ELEMENT&&d.type!=CKEDITOR.NODE_TEXT||!this.root.equals(d)&&!this.root.contains(d))&&(this._.cache.type=CKEDITOR.SELECTION_NONE,this._.cache.startElement=null,this._.cache.selectedElement=null,this._.cache.selectedText="",this._.cache.ranges=new CKEDITOR.dom.rangeList),this};var r={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1},s=CKEDITOR.tools.repeat("​",7),t=new RegExp(s+"( )?","g");CKEDITOR.tools.extend(CKEDITOR.dom.selection,{_removeFillingCharSequenceString:h,_createFillingCharSequenceNode:f,FILLING_CHAR_SEQUENCE:s}),CKEDITOR.dom.selection.prototype={getNative:function(){return void 0!==this._.cache.nativeSel?this._.cache.nativeSel:this._.cache.nativeSel=p?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:p?function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_NONE;try{var c=this.getNative(),d=c.type;"Text"==d&&(b=CKEDITOR.SELECTION_TEXT),"Control"==d&&(b=CKEDITOR.SELECTION_ELEMENT),c.createRange().parentElement()&&(b=CKEDITOR.SELECTION_TEXT)}catch(e){}return a.type=b}:function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(c&&c.rangeCount){if(1==c.rangeCount){var c=c.getRangeAt(0),d=c.startContainer;d==c.endContainer&&1==d.nodeType&&1==c.endOffset-c.startOffset&&r[d.childNodes[c.startOffset].nodeName.toLowerCase()]&&(b=CKEDITOR.SELECTION_ELEMENT)}}else b=CKEDITOR.SELECTION_NONE;return a.type=b},getRanges:function(){var a=p?function(){function a(a){return new CKEDITOR.dom.node(a).getIndex()}var b=function(b,c){b=b.duplicate(),b.collapse(c);var d=b.parentElement();if(!d.hasChildNodes())return{container:d,offset:0};for(var e,f,g,h,i=d.children,j=b.duplicate(),k=0,l=i.length-1,m=-1;l>=k;)if(m=Math.floor((k+l)/2),e=i[m],j.moveToElementText(e),g=j.compareEndPoints("StartToStart",b),g>0)l=m-1;else{if(!(0>g))return{container:d,offset:a(e)};k=m+1}if(-1==m||m==i.length-1&&0>g){if(j.moveToElementText(d),j.setEndPoint("StartToStart",b),j=j.text.replace(/(\r\n|\r)/g,"\n").length,i=d.childNodes,!j)return e=i[i.length-1],e.nodeType!=CKEDITOR.NODE_TEXT?{container:d,offset:i.length}:{container:e,offset:e.nodeValue.length};for(d=i.length;j>0&&d>0;)f=i[--d],f.nodeType==CKEDITOR.NODE_TEXT&&(h=f,j-=f.nodeValue.length);return{container:h,offset:-j}}if(j.collapse(g>0),j.setEndPoint(g>0?"StartToStart":"EndToStart",b),j=j.text.replace(/(\r\n|\r)/g,"\n").length,!j)return{container:d,offset:a(e)+(g>0?0:1)};for(;j>0;)try{f=e[g>0?"previousSibling":"nextSibling"],f.nodeType==CKEDITOR.NODE_TEXT&&(j-=f.nodeValue.length,h=f),e=f}catch(n){return{container:d,offset:a(e)}}return{container:h,offset:g>0?-j:h.nodeValue.length+j}};return function(){var a=this.getNative(),c=a&&a.createRange(),d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT)return a=new CKEDITOR.dom.range(this.root),d=b(c,!0),a.setStart(new CKEDITOR.dom.node(d.container),d.offset),d=b(c),a.setEnd(new CKEDITOR.dom.node(d.container),d.offset),a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse(),[a];if(d==CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e<c.length;e++){for(var f=c.item(e),g=f.parentNode,h=0,a=new CKEDITOR.dom.range(this.root);h<g.childNodes.length&&g.childNodes[h]!=f;h++);a.setStart(new CKEDITOR.dom.node(g),h),a.setEnd(new CKEDITOR.dom.node(g),h+1),d.push(a)}return d}return[]}}():function(){var a,b=[],c=this.getNative();if(!c)return b;for(var d=0;d<c.rangeCount;d++){var e=c.getRangeAt(d);a=new CKEDITOR.dom.range(this.root),a.setStart(new CKEDITOR.dom.node(e.startContainer),e.startOffset),a.setEnd(new CKEDITOR.dom.node(e.endContainer),e.endOffset),b.push(a)}return b};return function(b){var c=this._.cache,d=c.ranges;return d||(c.ranges=d=new CKEDITOR.dom.rangeList(a.call(this))),b?k(new CKEDITOR.dom.rangeList(d.slice())):d}}(),getStartElement:function(){var a=this._.cache;if(void 0!==a.startElement)return a.startElement;var b;switch(this.getType()){case CKEDITOR.SELECTION_ELEMENT:return this.getSelectedElement();case CKEDITOR.SELECTION_TEXT:var c=this.getRanges()[0];if(c){if(c.collapsed)b=c.startContainer,b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent());else{for(c.optimize();b=c.startContainer,c.startOffset==(b.getChildCount?b.getChildCount():b.getLength())&&!b.isBlockBoundary();)c.setStartAfter(b);if(b=c.startContainer,b.type!=CKEDITOR.NODE_ELEMENT)return b.getParent();if((b=b.getChild(c.startOffset))&&b.type==CKEDITOR.NODE_ELEMENT)for(c=b.getFirst();c&&c.type==CKEDITOR.NODE_ELEMENT;)b=c,c=c.getFirst();else b=c.startContainer}b=b.$}}return a.startElement=b?new CKEDITOR.dom.element(b):null},getSelectedElement:function(){var a=this._.cache;if(void 0!==a.selectedElement)return a.selectedElement;var b=this,c=CKEDITOR.tools.tryThese(function(){return b.getNative().createRange().item(0)},function(){for(var a,c,d=b.getRanges()[0].clone(),e=2;e&&!((a=d.getEnclosedNode())&&a.type==CKEDITOR.NODE_ELEMENT&&r[a.getName()]&&(c=a));e--)d.shrink(CKEDITOR.SHRINK_ELEMENT);return c&&c.$});return a.selectedElement=c?new CKEDITOR.dom.element(c):null},getSelectedText:function(){var a=this._.cache;if(void 0!==a.selectedText)return a.selectedText;var b=this.getNative(),b=p?"Control"==b.type?"":b.createRange().text:b.toString();return a.selectedText=b},lock:function(){this.getRanges(),this.getStartElement(),this.getSelectedElement(),this.getSelectedText(),this._.cache.nativeSel=null,this.isLocked=1},unlock:function(a){if(this.isLocked){if(a)var b=this.getSelectedElement(),c=!b&&this.getRanges(),d=this.isFake;this.isLocked=0,this.reset(),a&&(a=b||c[0]&&c[0].getCommonAncestor())&&a.getAscendant("body",1)&&(d?this.fake(b):b?this.selectElement(b):this.selectRanges(c))}},reset:function(){this._.cache={},this.isFake=0;var a=this.root.editor;if(a&&a._.fakeSelection)if(this.rev==a._.fakeSelection.rev){delete a._.fakeSelection;var b=a._.hiddenSelectionContainer;if(b){var c=a.checkDirty();a.fire("lockSnapshot"),b.remove(),a.fire("unlockSnapshot"),!c&&a.resetDirty()}delete a._.hiddenSelectionContainer}else CKEDITOR.warn("selection-fake-reset");this.rev=q++},selectElement:function(a){ +var b=new CKEDITOR.dom.range(this.root);b.setStartBefore(a),b.setEndAfter(a),this.selectRanges([b])},selectRanges:function(a){var b=this.root.editor,b=b&&b._.hiddenSelectionContainer;if(this.reset(),b)for(var c,b=this.root,d=0;d<a.length;++d)c=a[d],c.endContainer.equals(b)&&(c.endOffset=Math.min(c.endOffset,b.getChildCount()));if(a.length)if(this.isLocked){var h=CKEDITOR.document.getActive();this.unlock(),this.selectRanges(a),this.lock(),h&&!h.equals(this.root)&&h.focus()}else{var i,j,k;if(1==a.length&&!(k=a[0]).collapsed&&(i=k.getEnclosedNode())&&i.type==CKEDITOR.NODE_ELEMENT&&(k=k.clone(),k.shrink(CKEDITOR.SHRINK_ELEMENT,!0),(j=k.getEnclosedNode())&&j.type==CKEDITOR.NODE_ELEMENT&&(i=j),"false"==i.getAttribute("contenteditable"))||(i=void 0),i)this.fake(i);else{if(p){k=CKEDITOR.dom.walker.whitespaces(!0),j=/\ufeff|\u00a0/,b={table:1,tbody:1,tr:1},1<a.length&&(i=a[a.length-1],a[0].setEnd(i.endContainer,i.endOffset)),i=a[0],a=i.collapsed;var l,m,n;if((c=i.getEnclosedNode())&&c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in r&&(!c.is("a")||!c.getText()))try{return n=c.$.createControlRange(),n.addElement(c.$),void n.select()}catch(o){}(i.startContainer.type==CKEDITOR.NODE_ELEMENT&&i.startContainer.getName()in b||i.endContainer.type==CKEDITOR.NODE_ELEMENT&&i.endContainer.getName()in b)&&(i.shrink(CKEDITOR.NODE_ELEMENT,!0),a=i.collapsed),n=i.createBookmark(),b=n.startNode,a||(h=n.endNode),n=i.document.$.body.createTextRange(),n.moveToElementText(b.$),n.moveStart("character",1),h?(j=i.document.$.body.createTextRange(),j.moveToElementText(h.$),n.setEndPoint("EndToEnd",j),n.moveEnd("character",-1)):(l=b.getNext(k),m=b.hasAscendant("pre"),l=!(l&&l.getText&&l.getText().match(j))&&(m||!b.hasPrevious()||b.getPrevious().is&&b.getPrevious().is("br")),m=i.document.createElement("span"),m.setHtml(""),m.insertBefore(b),l&&i.document.createText("\ufeff").insertBefore(b)),i.setStartBefore(b),b.remove(),a?(l?(n.moveStart("character",-1),n.select(),i.document.$.selection.clear()):n.select(),i.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START),m.remove()):(i.setEndBefore(h),h.remove(),n.select())}else{if(h=this.getNative(),!h)return;for(this.removeAllRanges(),n=0;n<a.length;n++)if(n<a.length-1&&(l=a[n],m=a[n+1],j=l.clone(),j.setStart(l.endContainer,l.endOffset),j.setEnd(m.startContainer,m.startOffset),!j.collapsed&&(j.shrink(CKEDITOR.NODE_ELEMENT,!0),i=j.getCommonAncestor(),j=j.getEnclosedNode(),i.isReadOnly()||j&&j.isReadOnly())))m.setStart(l.startContainer,l.startOffset),a.splice(n--,1);else{i=a[n],m=this.document.$.createRange(),i.collapsed&&CKEDITOR.env.webkit&&e(i)&&(j=f(this.root),i.insertNode(j),(l=j.getNext())&&!j.getPrevious()&&l.type==CKEDITOR.NODE_ELEMENT&&"br"==l.getName()?(g(this.root),i.moveToPosition(l,CKEDITOR.POSITION_BEFORE_START)):i.moveToPosition(j,CKEDITOR.POSITION_AFTER_END)),m.setStart(i.startContainer.$,i.startOffset);try{m.setEnd(i.endContainer.$,i.endOffset)}catch(q){if(!(0<=q.toString().indexOf("NS_ERROR_ILLEGAL_VALUE")))throw q;i.collapse(1),m.setEnd(i.endContainer.$,i.endOffset)}h.addRange(m)}}this.reset(),this.root.fire("selectionchange")}}},fake:function(a){var b=this.root.editor;this.reset(),i(b);var c=this._.cache,d=new CKEDITOR.dom.range(this.root);d.setStartBefore(a),d.setEndAfter(a),c.ranges=new CKEDITOR.dom.rangeList(d),c.selectedElement=c.startElement=a,c.type=CKEDITOR.SELECTION_ELEMENT,c.selectedText=c.nativeSel=null,this.isFake=1,this.rev=q++,b._.fakeSelection=this,this.root.fire("selectionchange")},isHidden:function(){var a=this.getCommonAncestor();return a&&a.type==CKEDITOR.NODE_TEXT&&(a=a.getParent()),!(!a||!a.data("cke-hidden-sel"))},createBookmarks:function(a){return a=this.getRanges().createBookmarks(a),this.isFake&&(a.isFake=1),a},createBookmarks2:function(a){return a=this.getRanges().createBookmarks2(a),this.isFake&&(a.isFake=1),a},selectBookmarks:function(a){for(var b,c=[],d=0;d<a.length;d++){var e=new CKEDITOR.dom.range(this.root);e.moveToBookmark(a[d]),c.push(e)}return a.isFake&&(b=c[0].getEnclosedNode(),b&&b.type==CKEDITOR.NODE_ELEMENT||(CKEDITOR.warn("selection-not-fake"),a.isFake=0)),a.isFake?this.fake(b):this.selectRanges(c),this},getCommonAncestor:function(){var a=this.getRanges();return a.length?a[0].startContainer.getCommonAncestor(a[a.length-1].endContainer):null},scrollIntoView:function(){this.type!=CKEDITOR.SELECTION_NONE&&this.getRanges()[0].scrollIntoView()},removeAllRanges:function(){if(this.getType()!=CKEDITOR.SELECTION_NONE){var a=this.getNative();try{a&&a[p?"empty":"removeAllRanges"]()}catch(b){}this.reset()}}}}(),CKEDITOR.STYLE_BLOCK=1,CKEDITOR.STYLE_INLINE=2,CKEDITOR.STYLE_OBJECT=3,function(){function a(a,b){for(var c,d;(a=a.getParent())&&!a.equals(b);)if(a.getAttribute("data-nostyle"))c=a;else if(!d){var e=a.getAttribute("contentEditable");"false"==e?c=a:"true"==e&&(d=1)}return c}function b(a,b,c,d){return(a.getPosition(b)|d)==d&&(!c.childRule||c.childRule(a))}function c(d){var f=d.document;if(d.collapsed)f=r(this,f),d.insertNode(f),d.moveToPosition(f,CKEDITOR.POSITION_BEFORE_END);else{var g,h=this.element,i=this._.definition,j=i.ignoreReadonly,k=j||i.includeReadonly;null==k&&(k=d.root.getCustomData("cke_includeReadonly"));var l=CKEDITOR.dtd[h];l||(g=!0,l=CKEDITOR.dtd.span),d.enlarge(CKEDITOR.ENLARGE_INLINE,1),d.trim();var m,n=d.createBookmark(),p=n.startNode,q=n.endNode,s=p;if(!j){var t=d.getCommonAncestor(),j=a(p,t),t=a(q,t);j&&(s=j.getNextSourceNode(!0)),t&&(q=t)}for(s.getPosition(q)==CKEDITOR.POSITION_FOLLOWING&&(s=0);s;){if(j=!1,s.equals(q))s=null,j=!0;else{var u=s.type==CKEDITOR.NODE_ELEMENT?s.getName():null,t=u&&"false"==s.getAttribute("contentEditable"),v=u&&s.getAttribute("data-nostyle");if(u&&s.data("cke-bookmark")){s=s.getNextSourceNode(!0);continue}if(t&&k&&CKEDITOR.dtd.$block[u])for(var w=s,x=e(w),y=void 0,z=x.length,A=0,w=z&&new CKEDITOR.dom.range(w.getDocument());z>A;++A){var y=x[A],C=CKEDITOR.filter.instances[y.data("cke-filter")];(C?C.check(this):1)&&(w.selectNodeContents(y),c.call(this,w))}if(x=u?!l[u]||v?0:t&&!k?0:b(s,q,i,D):1){if(y=s.getParent(),x=i,z=h,A=g,!y||!(y.getDtd()||CKEDITOR.dtd.span)[z]&&!A||x.parentRule&&!x.parentRule(y))j=!0;else if(m||u&&CKEDITOR.dtd.$removeEmpty[u]&&(s.getPosition(q)|D)!=D||(m=d.clone(),m.setStartBefore(s)),u=s.type,u==CKEDITOR.NODE_TEXT||t||u==CKEDITOR.NODE_ELEMENT&&!s.getChildCount()){for(var F,u=s;(j=!u.getNext(B))&&(F=u.getParent(),l[F.getName()])&&b(F,p,i,E);)u=F;m.setEndAfter(u)}}else j=!0;s=s.getNextSourceNode(v||t)}if(j&&m&&!m.collapsed){for(var G,H,I,j=r(this,f),t=j.hasAttributes(),v=m.getCommonAncestor(),u={},x={},y={},z={};j&&v;){if(v.getName()==h){for(G in i.attributes)!z[G]&&(I=v.getAttribute(H))&&(j.getAttribute(G)==I?x[G]=1:z[G]=1);for(H in i.styles)!y[H]&&(I=v.getStyle(H))&&(j.getStyle(H)==I?u[H]=1:y[H]=1)}v=v.getParent()}for(G in x)j.removeAttribute(G);for(H in u)j.removeStyle(H);t&&!j.hasAttributes()&&(j=null),j?(m.extractContents().appendTo(j),m.insertNode(j),o.call(this,j),j.mergeSiblings(),CKEDITOR.env.ie||j.$.normalize()):(j=new CKEDITOR.dom.element("span"),m.extractContents().appendTo(j),m.insertNode(j),o.call(this,j),j.remove(!0)),m=null}}d.moveToBookmark(n),d.shrink(CKEDITOR.SHRINK_TEXT),d.shrink(CKEDITOR.NODE_ELEMENT,!0)}}function d(a){function b(){for(var a=new CKEDITOR.dom.elementPath(d.getParent()),b=new CKEDITOR.dom.elementPath(j.getParent()),c=null,e=null,f=0;f<a.elements.length;f++){var g=a.elements[f];if(g==a.block||g==a.blockLimit)break;k.checkElementRemovable(g,!0)&&(c=g)}for(f=0;f<b.elements.length&&(g=b.elements[f],g!=b.block&&g!=b.blockLimit);f++)k.checkElementRemovable(g,!0)&&(e=g);e&&j.breakParent(e),c&&d.breakParent(c)}a.enlarge(CKEDITOR.ENLARGE_INLINE,1);var c=a.createBookmark(),d=c.startNode;if(a.collapsed){for(var e,f,g=new CKEDITOR.dom.elementPath(d.getParent(),a.root),h=0;h<g.elements.length&&(f=g.elements[h])&&f!=g.block&&f!=g.blockLimit;h++)if(this.checkElementRemovable(f)){var i;a.collapsed&&(a.checkBoundaryOfElement(f,CKEDITOR.END)||(i=a.checkBoundaryOfElement(f,CKEDITOR.START)))?(e=f,e.match=i?"start":"end"):(f.mergeSiblings(),f.is(this.element)?n.call(this,f):p(f,u(this)[f.getName()]))}if(e){for(f=d,h=0;i=g.elements[h],!i.equals(e);h++)i.match||(i=i.clone(),i.append(f),f=i);f["start"==e.match?"insertBefore":"insertAfter"](e)}}else{var j=c.endNode,k=this;for(b(),g=d;!g.equals(j);)e=g.getNextSourceNode(),g.type==CKEDITOR.NODE_ELEMENT&&this.checkElementRemovable(g)&&(g.getName()==this.element?n.call(this,g):p(g,u(this)[g.getName()]),e.type==CKEDITOR.NODE_ELEMENT&&e.contains(d)&&(b(),e=d.getNext())),g=e}a.moveToBookmark(c),a.shrink(CKEDITOR.NODE_ELEMENT,!0)}function e(a){var b=[];return a.forEach(function(a){return"true"==a.getAttribute("contenteditable")?(b.push(a),!1):void 0},CKEDITOR.NODE_ELEMENT,!0),b}function f(a){var b=a.getEnclosedNode()||a.getCommonAncestor(!1,!0);(a=new CKEDITOR.dom.elementPath(b,a.root).contains(this.element,1))&&!a.isReadOnly()&&s(a,this)}function g(a){var b=a.getCommonAncestor(!0,!0);if(a=new CKEDITOR.dom.elementPath(b,a.root).contains(this.element,1)){var b=this._.definition,c=b.attributes;if(c)for(var d in c)a.removeAttribute(d,c[d]);if(b.styles)for(var e in b.styles)b.styles.hasOwnProperty(e)&&a.removeStyle(e)}}function h(a){var b=a.createBookmark(!0),c=a.createIterator();c.enforceRealBlocks=!0,this._.enterMode&&(c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR);for(var d,e,f=a.document;d=c.getNextParagraph();)!d.isReadOnly()&&(c.activeFilter?c.activeFilter.check(this):1)&&(e=r(this,f,d),j(d,e));a.moveToBookmark(b)}function i(a){var b=a.createBookmark(1),c=a.createIterator();c.enforceRealBlocks=!0,c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e;d=c.getNextParagraph();)this.checkElementRemovable(d)&&(d.is("pre")?((e=this._.enterMode==CKEDITOR.ENTER_BR?null:a.document.createElement(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))&&d.copyAttributes(e),j(d,e)):n.call(this,d));a.moveToBookmark(b)}function j(a,b){var c=!b;c&&(b=a.getDocument().createElement("div"),a.copyAttributes(b));var d=b&&b.is("pre"),e=a.is("pre"),f=!d&&e;if(d&&!e){if(e=b,(f=a.getBogus())&&f.remove(),f=a.getHtml(),f=l(f,/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g,""),f=f.replace(/[ \t\r\n]*(<br[^>]*>)[ \t\r\n]*/gi,"$1"),f=f.replace(/([ \t\n\r]+| )/g," "),f=f.replace(/<br\b[^>]*>/gi,"\n"),CKEDITOR.env.ie){var g=a.getDocument().createElement("div");g.append(e),e.$.outerHTML="<pre>"+f+"</pre>",e.copyAttributes(g.getFirst()),e=g.getFirst().remove()}else e.setHtml(f);b=e}else f?b=m(c?[a.getHtml()]:k(a),b):a.moveChildren(b);if(b.replace(a),d){var h,c=b;(h=c.getPrevious(C))&&h.type==CKEDITOR.NODE_ELEMENT&&h.is("pre")&&(d=l(h.getHtml(),/\n$/,"")+"\n\n"+l(c.getHtml(),/^\n/,""),CKEDITOR.env.ie?c.$.outerHTML="<pre>"+d+"</pre>":c.setHtml(d),h.remove())}else c&&q(b)}function k(a){var b=[];return l(a.getOuterHtml(),/(\S\s*)\n(?:\s|(<span[^>]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"</pre>"+c+"<pre>"}).replace(/<pre\b.*?>([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)}),b}function l(a,b,c){var d="",e="";return a=a.replace(/(^<span[^>]+data-cke-bookmark.*?\/span>)|(<span[^>]+data-cke-bookmark.*?\/span>$)/gi,function(a,b,c){return b&&(d=b),c&&(e=c),""}),d+a.replace(b,c)+e}function m(a,b){var c;1<a.length&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));for(var d=0;d<a.length;d++){var e=a[d],e=e.replace(/(\r\n|\r)/g,"\n"),e=l(e,/^[ \t]*\n/,""),e=l(e,/\n$/,""),e=l(e,/^[ \t]+|[ \t]+$/g,function(a,b){return 1==a.length?" ":b?" "+CKEDITOR.tools.repeat(" ",a.length-1):CKEDITOR.tools.repeat(" ",a.length-1)+" "}),e=e.replace(/\n/g,"<br>"),e=e.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat(" ",a.length-1)+" "});if(c){var f=b.clone();f.setHtml(e),c.append(f)}else b.setHtml(e)}return c||b}function n(a,b){var c,d=this._.definition,e=d.attributes,d=d.styles,f=u(this)[a.getName()],g=CKEDITOR.tools.isEmpty(e)&&CKEDITOR.tools.isEmpty(d);for(c in e)("class"!=c&&!this._.definition.fullMatch||a.getAttribute(c)==v(c,e[c]))&&(b&&"data-"==c.slice(0,5)||(g=a.hasAttribute(c),a.removeAttribute(c)));for(var h in d)this._.definition.fullMatch&&a.getStyle(h)!=v(h,d[h],!0)||(g=g||!!a.getStyle(h),a.removeStyle(h));p(a,f,x[a.getName()]),g&&(this._.definition.alwaysRemoveElement?q(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==CKEDITOR.ENTER_BR&&!a.hasAttributes()?q(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function o(a){for(var b,c=u(this),d=a.getElementsByTag(this.element),e=d.count();0<=--e;)b=d.getItem(e),b.isReadOnly()||n.call(this,b,!0);for(var f in c)if(f!=this.element)for(d=a.getElementsByTag(f),e=d.count()-1;e>=0;e--)b=d.getItem(e),b.isReadOnly()||p(b,c[f])}function p(a,b,c){if(b=b&&b.attributes)for(var d=0;d<b.length;d++){var e,f=b[d][0];if(e=a.getAttribute(f)){var g=b[d][1];(null===g||g.test&&g.test(e)||"string"==typeof g&&e==g)&&a.removeAttribute(f)}}c||q(a)}function q(a,b){if(!a.hasAttributes()||b)if(CKEDITOR.dtd.$block[a.getName()]){var c=a.getPrevious(C),d=a.getNext(C);!c||c.type!=CKEDITOR.NODE_TEXT&&c.isBlockBoundary({br:1})||a.append("br",1),!d||d.type!=CKEDITOR.NODE_TEXT&&d.isBlockBoundary({br:1})||a.append("br"),a.remove(!0)}else c=a.getFirst(),d=a.getLast(),a.remove(!0),c&&(c.type==CKEDITOR.NODE_ELEMENT&&c.mergeSiblings(),d&&!c.equals(d)&&d.type==CKEDITOR.NODE_ELEMENT&&d.mergeSiblings())}function r(a,b,c){var d;return d=a.element,"*"==d&&(d="span"),d=new CKEDITOR.dom.element(d,b),c&&c.copyAttributes(d),d=s(d,a),b.getCustomData("doc_processing_style")&&d.hasAttribute("id")?d.removeAttribute("id"):b.setCustomData("doc_processing_style",1),d}function s(a,b){var c=b._.definition,d=c.attributes,c=CKEDITOR.style.getStyleText(c);if(d)for(var e in d)a.setAttribute(e,d[e]);return c&&a.setAttribute("style",c),a}function t(a,b){for(var c in a)a[c]=a[c].replace(A,function(a,c){return b[c]})}function u(a){if(a._.overrides)return a._.overrides;var b=a._.overrides={},c=a._.definition.overrides;if(c){CKEDITOR.tools.isArray(c)||(c=[c]);for(var d=0;d<c.length;d++){var e,f,g=c[d];if("string"==typeof g?e=g.toLowerCase():(e=g.element?g.element.toLowerCase():a.element,f=g.attributes),g=b[e]||(b[e]={}),f){var h,g=g.attributes=g.attributes||[];for(h in f)g.push([h.toLowerCase(),f[h]])}}}return b}function v(a,b,c){var d=new CKEDITOR.dom.element("span");return d[c?"setStyle":"setAttribute"](a,b),d[c?"getStyle":"getAttribute"](a)}function w(a,b,c){var d=a.document,e=a.getRanges();b=b?this.removeFromRange:this.applyToRange;for(var f,g=e.createIterator();f=g.getNextRange();)b.call(this,f,c);a.selectRanges(e),d.removeCustomData("doc_processing_style")}var x={address:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,p:1,pre:1,section:1,header:1,footer:1,nav:1,article:1,aside:1,figure:1,dialog:1,hgroup:1,time:1,meter:1,menu:1,command:1,keygen:1,output:1,progress:1,details:1,datagrid:1,datalist:1},y={a:1,blockquote:1,embed:1,hr:1,img:1,li:1,object:1,ol:1,table:1,td:1,tr:1,th:1,ul:1,dl:1,dt:1,dd:1,form:1,audio:1,video:1},z=/\s*(?:;\s*|$)/,A=/#\((.+?)\)/g,B=CKEDITOR.dom.walker.bookmark(0,1),C=CKEDITOR.dom.walker.whitespaces(1);CKEDITOR.style=function(a,b){if("string"==typeof a.type)return new CKEDITOR.style.customHandlers[a.type](a);var c=a.attributes;c&&c.style&&(a.styles=CKEDITOR.tools.extend({},a.styles,CKEDITOR.tools.parseCssText(c.style)),delete c.style),b&&(a=CKEDITOR.tools.clone(a),t(a.attributes,b),t(a.styles,b)),c=this.element=a.element?"string"==typeof a.element?a.element.toLowerCase():a.element:"*",this.type=a.type||(x[c]?CKEDITOR.STYLE_BLOCK:y[c]?CKEDITOR.STYLE_OBJECT:CKEDITOR.STYLE_INLINE),"object"==typeof this.element&&(this.type=CKEDITOR.STYLE_OBJECT),this._={definition:a}},CKEDITOR.style.prototype={apply:function(a){if(a instanceof CKEDITOR.dom.document)return w.call(this,a.getSelection());if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;b||(this._.enterMode=a.activeEnterMode),w.call(this,a.getSelection(),0,a),this._.enterMode=b}},remove:function(a){if(a instanceof CKEDITOR.dom.document)return w.call(this,a.getSelection(),1);if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;b||(this._.enterMode=a.activeEnterMode),w.call(this,a.getSelection(),1,a),this._.enterMode=b}},applyToRange:function(a){return this.applyToRange=this.type==CKEDITOR.STYLE_INLINE?c:this.type==CKEDITOR.STYLE_BLOCK?h:this.type==CKEDITOR.STYLE_OBJECT?f:null,this.applyToRange(a)},removeFromRange:function(a){return this.removeFromRange=this.type==CKEDITOR.STYLE_INLINE?d:this.type==CKEDITOR.STYLE_BLOCK?i:this.type==CKEDITOR.STYLE_OBJECT?g:null,this.removeFromRange(a)},applyToObject:function(a){s(a,this)},checkActive:function(a,b){switch(this.type){case CKEDITOR.STYLE_BLOCK:return this.checkElementRemovable(a.block||a.blockLimit,!0,b);case CKEDITOR.STYLE_OBJECT:case CKEDITOR.STYLE_INLINE:for(var c,d=a.elements,e=0;e<d.length;e++)if(c=d[e],this.type!=CKEDITOR.STYLE_INLINE||c!=a.block&&c!=a.blockLimit){if(this.type==CKEDITOR.STYLE_OBJECT){var f=c.getName();if(!("string"==typeof this.element?f==this.element:f in this.element))continue}if(this.checkElementRemovable(c,!0,b))return!0}}return!1},checkApplicable:function(a,b,c){if(b&&b instanceof CKEDITOR.filter&&(c=b),c&&!c.check(this))return!1;switch(this.type){case CKEDITOR.STYLE_OBJECT:return!!a.contains(this.element);case CKEDITOR.STYLE_BLOCK:return!!a.blockLimit.getDtd()[this.element]}return!0},checkElementMatch:function(a,b){var c=this._.definition;if(!a||!c.ignoreReadonly&&a.isReadOnly())return!1;var d=a.getName();if("string"==typeof this.element?d==this.element:d in this.element){if(!b&&!a.hasAttributes())return!0;if(d=c._AC)c=d;else{var d={},e=0,f=c.attributes;if(f)for(var g in f)e++,d[g]=f[g];(g=CKEDITOR.style.getStyleText(c))&&(d.style||e++,d.style=g),d._length=e,c=c._AC=d}if(!c._length)return!0;for(var h in c)if("_length"!=h){if(e=a.getAttribute(h)||"","style"==h)a:{d=c[h],"string"==typeof d&&(d=CKEDITOR.tools.parseCssText(d)),"string"==typeof e&&(e=CKEDITOR.tools.parseCssText(e,!0)),g=void 0;for(g in d)if(!(g in e)||e[g]!=d[g]&&"inherit"!=d[g]&&"inherit"!=e[g]){d=!1;break a}d=!0}else d=c[h]==e;if(d){if(!b)return!0}else if(b)return!1}if(b)return!0}return!1},checkElementRemovable:function(a,b,c){if(this.checkElementMatch(a,b,c))return!0;if(b=u(this)[a.getName()]){var d;if(!(b=b.attributes))return!0;for(c=0;c<b.length;c++)if(d=b[c][0],d=a.getAttribute(d)){var e=b[c][1];if(null===e)return!0;if("string"==typeof e){if(d==e)return!0}else if(e.test(d))return!0}}return!1},buildPreview:function(a){var b=this._.definition,c=[],d=b.element;"bdo"==d&&(d="span");var c=["<",d],e=b.attributes;if(e)for(var f in e)c.push(" ",f,'="',e[f],'"');return(e=CKEDITOR.style.getStyleText(b))&&c.push(' style="',e,'"'),c.push(">",a||b.name,"</",d,">"),c.join("")},getDefinition:function(){return this._.definition}},CKEDITOR.style.getStyleText=function(a){var b=a._ST;if(b)return b;var b=a.styles,c=a.attributes&&a.attributes.style||"",d="";c.length&&(c=c.replace(z,";"));for(var e in b){var f=b[e],g=(e+":"+f).replace(z,";");"inherit"==f?d+=g:c+=g}return c.length&&(c=CKEDITOR.tools.normalizeCssText(c,!0)),a._ST=c+d},CKEDITOR.style.customHandlers={},CKEDITOR.style.addCustomHandler=function(a){var b=function(a){this._={definition:a},this.setup&&this.setup(a)};return b.prototype=CKEDITOR.tools.extend(CKEDITOR.tools.prototypedCopy(CKEDITOR.style.prototype),{assignedTo:CKEDITOR.STYLE_OBJECT},a,!0),this.customHandlers[a.type]=b};var D=CKEDITOR.POSITION_PRECEDING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED,E=CKEDITOR.POSITION_FOLLOWING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED}(),CKEDITOR.styleCommand=function(a,b){this.requiredContent=this.allowedContent=this.style=a,CKEDITOR.tools.extend(this,b,!0)},CKEDITOR.styleCommand.prototype.exec=function(a){a.focus(),this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)},CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet"),CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet),CKEDITOR.loadStylesSet=function(a,b,c){CKEDITOR.stylesSet.addExternal(a,b,""),CKEDITOR.stylesSet.load(a,c)},CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{attachStyleStateChange:function(a,b){var c=this._.styleStateChangeCallbacks;c||(c=this._.styleStateChangeCallbacks=[],this.on("selectionChange",function(a){for(var b=0;b<c.length;b++){var d=c[b],e=d.style.checkActive(a.data.path,this)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF;d.fn.call(this,e)}})),c.push({style:a,fn:b})},applyStyle:function(a){a.apply(this)},removeStyle:function(a){a.remove(this)},getStylesSet:function(a){if(this._.stylesDefinitions)a(this._.stylesDefinitions);else{var b=this,c=b.config.stylesCombo_stylesSet||b.config.stylesSet;if(!1===c)a(null);else if(c instanceof Array)b._.stylesDefinitions=c,a(c);else{c||(c="default");var c=c.split(":"),d=c[0];CKEDITOR.stylesSet.addExternal(d,c[1]?c.slice(1).join(":"):CKEDITOR.getUrl("styles.js"),""),CKEDITOR.stylesSet.load(d,function(c){b._.stylesDefinitions=c[d],a(b._.stylesDefinitions)})}}}}),CKEDITOR.dom.comment=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createComment(a)),CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.comment.prototype=new CKEDITOR.dom.node,CKEDITOR.tools.extend(CKEDITOR.dom.comment.prototype,{type:CKEDITOR.NODE_COMMENT,getOuterHtml:function(){return"<!--"+this.$.nodeValue+"-->"}}),function(){var a,b={},c={};for(a in CKEDITOR.dtd.$blockLimit)a in CKEDITOR.dtd.$list||(b[a]=1);for(a in CKEDITOR.dtd.$block)a in CKEDITOR.dtd.$blockLimit||a in CKEDITOR.dtd.$empty||(c[a]=1);CKEDITOR.dom.elementPath=function(a,d){var e,f=null,g=null,h=[],i=a;d=d||a.getDocument().getBody();do if(i.type==CKEDITOR.NODE_ELEMENT){if(h.push(i),!this.lastElement&&(this.lastElement=i,i.is(CKEDITOR.dtd.$object)||"false"==i.getAttribute("contenteditable")))continue;if(i.equals(d))break;if(!g&&(e=i.getName(),"true"==i.getAttribute("contenteditable")?g=i:!f&&c[e]&&(f=i),b[e])){if(e=!f&&"div"==e){a:{e=i.getChildren();for(var j=0,k=e.count();k>j;j++){var l=e.getItem(j);if(l.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$block[l.getName()]){e=!0;break a}}e=!1}e=!e}e?f=i:g=i}}while(i=i.getParent());g||(g=d),this.block=f,this.blockLimit=g,this.root=d,this.elements=h}}(),CKEDITOR.dom.elementPath.prototype={compare:function(a){var b=this.elements;if(a=a&&a.elements,!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++)if(!b[c].equals(a[c]))return!1;return!0},contains:function(a,b,c){var d;"string"==typeof a&&(d=function(b){return b.getName()==a}),a instanceof CKEDITOR.dom.element?d=function(b){return b.equals(a)}:CKEDITOR.tools.isArray(a)?d=function(b){return-1<CKEDITOR.tools.indexOf(a,b.getName())}:"function"==typeof a?d=a:"object"==typeof a&&(d=function(b){return b.getName()in a});var e=this.elements,f=e.length;for(b&&f--,c&&(e=Array.prototype.slice.call(e,0),e.reverse()),b=0;f>b;b++)if(d(e[b]))return e[b];return null},isContextFor:function(a){var b;return a in CKEDITOR.dtd.$block?(b=this.contains(CKEDITOR.dtd.$intermediate)||this.root.equals(this.block)&&this.block||this.blockLimit,!!b.getDtd()[a]):!0},direction:function(){return(this.block||this.blockLimit||this.root).getDirection(1)}},CKEDITOR.dom.text=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createTextNode(a)),this.$=a},CKEDITOR.dom.text.prototype=new CKEDITOR.dom.node,CKEDITOR.tools.extend(CKEDITOR.dom.text.prototype,{type:CKEDITOR.NODE_TEXT,getLength:function(){return this.$.nodeValue.length},getText:function(){return this.$.nodeValue},setText:function(a){this.$.nodeValue=a},split:function(a){var b=this.$.parentNode,c=b.childNodes.length,d=this.getLength(),e=this.getDocument(),f=new CKEDITOR.dom.text(this.$.splitText(a),e);return b.childNodes.length==c&&(a>=d?(f=e.createText(""),f.insertAfter(this)):(a=e.createText(""),a.insertAfter(f),a.remove())),f},substring:function(a,b){return"number"!=typeof b?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,b)}}),function(){function a(a,b,c){var d=a.serializable,e=b[c?"endContainer":"startContainer"],f=c?"endOffset":"startOffset",g=d?b.document.getById(a.startNode):a.startNode;return a=d?b.document.getById(a.endNode):a.endNode,e.equals(g.getPrevious())?(b.startOffset=b.startOffset-e.getLength()-a.getPrevious().getLength(),e=a.getNext()):e.equals(a.getPrevious())&&(b.startOffset-=e.getLength(),e=a.getNext()),e.equals(g.getParent())&&b[f]++,e.equals(a.getParent())&&b[f]++,b[c?"endContainer":"startContainer"]=e,b}CKEDITOR.dom.rangeList=function(a){return a instanceof CKEDITOR.dom.rangeList?a:(a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[],CKEDITOR.tools.extend(a,b))};var b={createIterator:function(){var a,b=this,c=CKEDITOR.dom.walker.bookmark(),d=[];return{getNextRange:function(e){a=void 0===a?0:a+1;var f=b[a];if(f&&1<b.length){if(!a)for(var g=b.length-1;g>=0;g--)d.unshift(b[g].createBookmark(!0));if(e)for(var h=0;b[a+h+1];){var i=f.document;for(e=0,g=i.getById(d[h].endNode),i=i.getById(d[h+1].startNode);;){if(g=g.getNextSourceNode(!1),i.equals(g))e=1;else if(c(g)||g.type==CKEDITOR.NODE_ELEMENT&&g.isBlockBoundary())continue;break}if(!e)break;h++}for(f.moveToBookmark(d.shift());h--;)g=b[++a],g.moveToBookmark(d.shift()),f.setEnd(g.endContainer,g.endOffset)}return f}}},createBookmarks:function(b){for(var c,d=[],e=0;e<this.length;e++){d.push(c=this[e].createBookmark(b,!0));for(var f=e+1;f<this.length;f++)this[f]=a(c,this[f]),this[f]=a(c,this[f],!0)}return d},createBookmarks2:function(a){for(var b=[],c=0;c<this.length;c++)b.push(this[c].createBookmark2(a));return b},moveToBookmarks:function(a){for(var b=0;b<this.length;b++)this[b].moveToBookmark(a[b])}}}(),function(){function a(){return CKEDITOR.getUrl(CKEDITOR.skinName.split(",")[1]||"skins/"+CKEDITOR.skinName.split(",")[0]+"/")}function b(b){var c=CKEDITOR.skin["ua_"+b],d=CKEDITOR.env;if(c)for(var e,c=c.split(",").sort(function(a,b){return a>b?-1:1}),f=0;f<c.length;f++)if(e=c[f],d.ie&&(e.replace(/^ie/,"")==d.version||d.quirks&&"iequirks"==e)&&(e="ie"),d[e]){b+="_"+c[f];break}return CKEDITOR.getUrl(a()+b+".css")}function c(a,c){f[a]||(CKEDITOR.document.appendStyleSheet(b(a)),f[a]=1),c&&c()}function d(a){var b=a.getById(g);return b||(b=a.getHead().append("style"),b.setAttribute("id",g),b.setAttribute("type","text/css")),b}function e(a,b,c){var d,e,f;if(CKEDITOR.env.webkit)for(b=b.split("}").slice(0,-1),e=0;e<b.length;e++)b[e]=b[e].split("{");for(var g=0;g<a.length;g++)if(CKEDITOR.env.webkit)for(e=0;e<b.length;e++){for(f=b[e][1],d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);a[g].$.sheet.addRule(b[e][0],f)}else{for(f=b,d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);CKEDITOR.env.ie&&11>CKEDITOR.env.version?a[g].$.styleSheet.cssText+=f:a[g].$.innerHTML+=f}}var f={};CKEDITOR.skin={path:a,loadPart:function(b,d){CKEDITOR.skin.name!=CKEDITOR.skinName.split(",")[0]?CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(a()+"skin.js"),function(){c(b,d)}):c(b,d)},getPath:function(a){return CKEDITOR.getUrl(b(a))},icons:{},addIcon:function(a,b,c,d){a=a.toLowerCase(),this.icons[a]||(this.icons[a]={path:b,offset:c||0,bgsize:d||"16px"})},getIconStyle:function(a,b,c,d,e){var f;return a&&(a=a.toLowerCase(),b&&(f=this.icons[a+"-rtl"]),f||(f=this.icons[a])),a=c||f&&f.path||"",d=d||f&&f.offset,e=e||f&&f.bgsize||"16px",a&&(a=a.replace(/'/g,"\\'")),a&&"background-image:url('"+CKEDITOR.getUrl(a)+"');background-position:0 "+d+"px;background-size:"+e+";"}},CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{getUiColor:function(){return this.uiColor},setUiColor:function(a){var b=d(CKEDITOR.document);return(this.setUiColor=function(a){this.uiColor=a;var c=CKEDITOR.skin.chameleon,d="",f="";"function"==typeof c&&(d=c(this,"editor"),f=c(this,"panel")),a=[[i,a]],e([b],d,a),e(h,f,a)}).call(this,a)}});var g="cke_ui_color",h=[],i=/\$color/g;CKEDITOR.on("instanceLoaded",function(a){if(!CKEDITOR.env.ie||!CKEDITOR.env.quirks){var b=a.editor;a=function(a){if(a=(a.data[0]||a.data).element.getElementsByTag("iframe").getItem(0).getFrameDocument(),!a.getById("cke_ui_color")){a=d(a),h.push(a);var c=b.getUiColor();c&&e([a],CKEDITOR.skin.chameleon(b,"panel"),[[i,c]])}},b.on("panelShow",a),b.on("menuShow",a),b.config.uiColor&&b.setUiColor(b.config.uiColor)}})}(),function(){if(CKEDITOR.env.webkit)CKEDITOR.env.hc=!1;else{var a=CKEDITOR.dom.element.createFromHtml('<div style="width:0;height:0;position:absolute;left:-10000px;border:1px solid;border-color:red blue"></div>',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{var b=a.getComputedStyle("border-top-color"),c=a.getComputedStyle("border-right-color");CKEDITOR.env.hc=!(!b||b!=c)}catch(d){CKEDITOR.env.hc=!1}a.remove()}if(CKEDITOR.env.hc&&(CKEDITOR.env.cssClass+=" cke_hc"),CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}"),CKEDITOR.status="loaded",CKEDITOR.fireOnce("loaded"),a=CKEDITOR._.pending)for(delete CKEDITOR._.pending,b=0;b<a.length;b++)CKEDITOR.editor.prototype.constructor.apply(a[b][0],a[b][1]),CKEDITOR.add(a[b][0])}(),CKEDITOR.skin.name="moono",CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko",CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8",CKEDITOR.skin.chameleon=function(){var a=function(){return function(a,b){for(var c=a.match(/[^#]./g),d=0;3>d;d++){var e,f=d;e=parseInt(c[d],16),e=("0"+(0>b?0|e*(1+b):0|e+(255-e)*b).toString(16)).slice(-2),c[f]=e}return"#"+c.join("")}}(),b=function(){var a=new CKEDITOR.template("background:#{to};background-image:linear-gradient(to bottom,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(b,c){return a.output({from:b,to:c})}}(),c={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};return function(d,e){var f=d.uiColor,f={id:"."+d.id,defaultBorder:a(f,-.1),defaultGradient:b(a(f,.9),f),lightGradient:b(a(f,1),a(f,.7)),mediumGradient:b(a(f,.8),a(f,.5)),ckeButtonOn:b(a(f,.6),a(f,.7)),ckeResizer:a(f,-.4),ckeToolbarSeparator:a(f,.5),ckeColorauto:a(f,.8),dialogBody:a(f,.7), +dialogTabSelected:b("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:a(f,-.6),elementsPathBg:f,menubuttonIcon:a(f,.5),menubuttonIconHover:a(f,.3)};return c[e].output(f).replace(/\[/g,"{").replace(/\]/g,"}")}}(),CKEDITOR.plugins.add("dialogui",{onLoad:function(){var a=function(a){this._||(this._={}),this._["default"]=this._.initValue=a["default"]||"",this._.required=a.required||!1;for(var b=[this._],c=1;c<arguments.length;c++)b.push(arguments[c]);return b.push(!0),CKEDITOR.tools.extend.apply(CKEDITOR.tools,b),this._},b={build:function(a,b,c){return new CKEDITOR.ui.dialog.textInput(a,b,c)}},c={build:function(a,b,c){return new CKEDITOR.ui.dialog[b.type](a,b,c)}},d={isChanged:function(){return this.getValue()!=this.getInitValue()},reset:function(a){this.setValue(this.getInitValue(),a)},setInitValue:function(){this._.initValue=this.getValue()},resetInitValue:function(){this._.initValue=this._["default"]},getInitValue:function(){return this._.initValue}},e=CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onChange:function(a,b){this._.domOnChangeRegistered||(a.on("load",function(){this.getInputElement().on("change",function(){a.parts.dialog.isVisible()&&this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0),this.on("change",b)}},!0),f=/^on([A-Z]\w+)/,g=function(a){for(var b in a)(f.test(b)||"title"==b||"type"==b)&&delete a[b];return a},h=function(a){a=a.data.getKeystroke(),a==CKEDITOR.SHIFT+CKEDITOR.ALT+36?this.setDirectionMarker("ltr"):a==CKEDITOR.SHIFT+CKEDITOR.ALT+35&&this.setDirectionMarker("rtl")};CKEDITOR.tools.extend(CKEDITOR.ui.dialog,{labeledElement:function(b,c,d,e){if(!(4>arguments.length)){var f=a.call(this,c);f.labelId=CKEDITOR.tools.getNextId()+"_label",this._.children=[];var g={role:c.role||"presentation"};c.includeLabel&&(g["aria-labelledby"]=f.labelId),CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"div",null,g,function(){var a=[],d=c.required?" cke_required":"";return"horizontal"!=c.labelLayout?a.push('<label class="cke_dialog_ui_labeled_label'+d+'" ',' id="'+f.labelId+'"',f.inputId?' for="'+f.inputId+'"':"",(c.labelStyle?' style="'+c.labelStyle+'"':"")+">",c.label,"</label>",'<div class="cke_dialog_ui_labeled_content"',c.controlStyle?' style="'+c.controlStyle+'"':"",' role="presentation">',e.call(this,b,c),"</div>"):(d={type:"hbox",widths:c.widths,padding:0,children:[{type:"html",html:'<label class="cke_dialog_ui_labeled_label'+d+'" id="'+f.labelId+'" for="'+f.inputId+'"'+(c.labelStyle?' style="'+c.labelStyle+'"':"")+">"+CKEDITOR.tools.htmlEncode(c.label)+"</label>"},{type:"html",html:'<span class="cke_dialog_ui_labeled_content"'+(c.controlStyle?' style="'+c.controlStyle+'"':"")+">"+e.call(this,b,c)+"</span>"}]},CKEDITOR.dialog._.uiElementBuilders.hbox.build(b,d,a)),a.join("")})}},textInput:function(b,c,d){if(!(3>arguments.length)){a.call(this,c);var e=this._.inputId=CKEDITOR.tools.getNextId()+"_textInput",f={"class":"cke_dialog_ui_input_"+c.type,id:e,type:c.type};c.validate&&(this.validate=c.validate),c.maxLength&&(f.maxlength=c.maxLength),c.size&&(f.size=c.size),c.inputStyle&&(f.style=c.inputStyle);var g=this,i=!1;b.on("load",function(){g.getInputElement().on("keydown",function(a){13==a.data.getKeystroke()&&(i=!0)}),g.getInputElement().on("keyup",function(a){13==a.data.getKeystroke()&&i&&(b.getButton("ok")&&setTimeout(function(){b.getButton("ok").click()},0),i=!1),g.bidi&&h.call(g,a)},null,null,1e3)}),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){var a=['<div class="cke_dialog_ui_input_',c.type,'" role="presentation"'];c.width&&a.push('style="width:'+c.width+'" '),a.push("><input "),f["aria-labelledby"]=this._.labelId,this._.required&&(f["aria-required"]=this._.required);for(var b in f)a.push(b+'="'+f[b]+'" ');return a.push(" /></div>"),a.join("")})}},textarea:function(b,c,d){if(!(3>arguments.length)){a.call(this,c);var e=this,f=this._.inputId=CKEDITOR.tools.getNextId()+"_textarea",g={};c.validate&&(this.validate=c.validate),g.rows=c.rows||5,g.cols=c.cols||20,g["class"]="cke_dialog_ui_input_textarea "+(c["class"]||""),"undefined"!=typeof c.inputStyle&&(g.style=c.inputStyle),c.dir&&(g.dir=c.dir),e.bidi&&b.on("load",function(){e.getInputElement().on("keyup",h)},e),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){g["aria-labelledby"]=this._.labelId,this._.required&&(g["aria-required"]=this._.required);var a,b=['<div class="cke_dialog_ui_input_textarea" role="presentation"><textarea id="',f,'" '];for(a in g)b.push(a+'="'+CKEDITOR.tools.htmlEncode(g[a])+'" ');return b.push(">",CKEDITOR.tools.htmlEncode(e._["default"]),"</textarea></div>"),b.join("")})}},checkbox:function(b,c,d){if(!(3>arguments.length)){var e=a.call(this,c,{"default":!!c["default"]});c.validate&&(this.validate=c.validate),CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"span",null,null,function(){var a=CKEDITOR.tools.extend({},c,{id:c.id?c.id+"_checkbox":CKEDITOR.tools.getNextId()+"_checkbox"},!0),d=[],f=CKEDITOR.tools.getNextId()+"_label",h={"class":"cke_dialog_ui_checkbox_input",type:"checkbox","aria-labelledby":f};return g(a),c["default"]&&(h.checked="checked"),"undefined"!=typeof a.inputStyle&&(a.style=a.inputStyle),e.checkbox=new CKEDITOR.ui.dialog.uiElement(b,a,d,"input",null,h),d.push(' <label id="',f,'" for="',h.id,'"'+(c.labelStyle?' style="'+c.labelStyle+'"':"")+">",CKEDITOR.tools.htmlEncode(c.label),"</label>"),d.join("")})}},radio:function(b,c,d){if(!(3>arguments.length)){a.call(this,c),this._["default"]||(this._["default"]=this._.initValue=c.items[0][1]),c.validate&&(this.validate=c.validate);var e=[],f=this;c.role="radiogroup",c.includeLabel=!0,CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){for(var a=[],d=[],h=(c.id?c.id:CKEDITOR.tools.getNextId())+"_radio",i=0;i<c.items.length;i++){var j=c.items[i],k=void 0!==j[2]?j[2]:j[0],l=void 0!==j[1]?j[1]:j[0],m=CKEDITOR.tools.getNextId()+"_radio_input",n=m+"_label",m=CKEDITOR.tools.extend({},c,{id:m,title:null,type:null},!0),k=CKEDITOR.tools.extend({},m,{title:k},!0),o={type:"radio","class":"cke_dialog_ui_radio_input",name:h,value:l,"aria-labelledby":n},p=[];f._["default"]==l&&(o.checked="checked"),g(m),g(k),"undefined"!=typeof m.inputStyle&&(m.style=m.inputStyle),m.keyboardFocusable=!0,e.push(new CKEDITOR.ui.dialog.uiElement(b,m,p,"input",null,o)),p.push(" "),new CKEDITOR.ui.dialog.uiElement(b,k,p,"label",null,{id:n,"for":o.id},j[0]),a.push(p.join(""))}return new CKEDITOR.ui.dialog.hbox(b,e,a,d),d.join("")}),this._.children=e}},button:function(b,c,d){if(arguments.length){"function"==typeof c&&(c=c(b.getParentEditor())),a.call(this,c,{disabled:c.disabled||!1}),CKEDITOR.event.implementOn(this);var e=this;b.on("load",function(){var a=this.getElement();!function(){a.on("click",function(a){e.click(),a.data.preventDefault()}),a.on("keydown",function(a){a.data.getKeystroke()in{32:1}&&(e.click(),a.data.preventDefault())})}(),a.unselectable()},this);var f=CKEDITOR.tools.extend({},c);delete f.style;var g=CKEDITOR.tools.getNextId()+"_label";CKEDITOR.ui.dialog.uiElement.call(this,b,f,d,"a",null,{style:c.style,href:"javascript:void(0)",title:c.label,hidefocus:"true","class":c["class"],role:"button","aria-labelledby":g},'<span id="'+g+'" class="cke_dialog_ui_button">'+CKEDITOR.tools.htmlEncode(c.label)+"</span>")}},select:function(b,c,d){if(!(3>arguments.length)){var e=a.call(this,c);c.validate&&(this.validate=c.validate),e.inputId=CKEDITOR.tools.getNextId()+"_select",CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){var a=CKEDITOR.tools.extend({},c,{id:c.id?c.id+"_select":CKEDITOR.tools.getNextId()+"_select"},!0),d=[],f=[],h={id:e.inputId,"class":"cke_dialog_ui_input_select","aria-labelledby":this._.labelId};d.push('<div class="cke_dialog_ui_input_',c.type,'" role="presentation"'),c.width&&d.push('style="width:'+c.width+'" '),d.push(">"),void 0!==c.size&&(h.size=c.size),void 0!==c.multiple&&(h.multiple=c.multiple),g(a);for(var i,j=0;j<c.items.length&&(i=c.items[j]);j++)f.push('<option value="',CKEDITOR.tools.htmlEncode(void 0!==i[1]?i[1]:i[0]).replace(/"/g,"""),'" /> ',CKEDITOR.tools.htmlEncode(i[0]));return"undefined"!=typeof a.inputStyle&&(a.style=a.inputStyle),e.select=new CKEDITOR.ui.dialog.uiElement(b,a,d,"select",null,h,f.join("")),d.push("</div>"),d.join("")})}},file:function(b,c,d){if(!(3>arguments.length)){void 0===c["default"]&&(c["default"]="");var e=CKEDITOR.tools.extend(a.call(this,c),{definition:c,buttons:[]});c.validate&&(this.validate=c.validate),b.on("load",function(){CKEDITOR.document.getById(e.frameId).getParent().addClass("cke_dialog_ui_input_file")}),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){e.frameId=CKEDITOR.tools.getNextId()+"_fileInput";var a=['<iframe frameborder="0" allowtransparency="0" class="cke_dialog_ui_input_file" role="presentation" id="',e.frameId,'" title="',c.label,'" src="javascript:void('];return a.push(CKEDITOR.env.ie?"(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"})()":"0"),a.push(')"></iframe>'),a.join("")})}},fileButton:function(b,c,d){var e=this;if(!(3>arguments.length)){a.call(this,c),c.validate&&(this.validate=c.validate);var f=CKEDITOR.tools.extend({},c),g=f.onClick;f.className=(f.className?f.className+" ":"")+"cke_dialog_ui_button",f.onClick=function(a){var d=c["for"];g&&!1===g.call(this,a)||(b.getContentElement(d[0],d[1]).submit(),this.disable())},b.on("load",function(){b.getContentElement(c["for"][0],c["for"][1])._.buttons.push(e)}),CKEDITOR.ui.dialog.button.call(this,b,f,d)}},html:function(){var a=/^\s*<[\w:]+\s+([^>]*)?>/,b=/^(\s*<[\w:]+(?:\s+[^>]*)?)((?:.|\r|\n)+)$/,c=/\/$/;return function(d,e,f){if(!(3>arguments.length)){var g=[],h=e.html;"<"!=h.charAt(0)&&(h="<span>"+h+"</span>");var i=e.focus;if(i){var j=this.focus;this.focus=function(){("function"==typeof i?i:j).call(this),this.fire("focus")},e.isFocusable&&(this.isFocusable=this.isFocusable),this.keyboardFocusable=!0}CKEDITOR.ui.dialog.uiElement.call(this,d,e,g,"span",null,null,""),g=g.join("").match(a),h=h.match(b)||["","",""],c.test(h[1])&&(h[1]=h[1].slice(0,-1),h[2]="/"+h[2]),f.push([h[1]," ",g[1]||"",h[2]].join(""))}}}(),fieldset:function(a,b,c,d,e){var f=e.label;this._={children:b},CKEDITOR.ui.dialog.uiElement.call(this,a,e,d,"fieldset",null,null,function(){var a=[];f&&a.push("<legend"+(e.labelStyle?' style="'+e.labelStyle+'"':"")+">"+f+"</legend>");for(var b=0;b<c.length;b++)a.push(c[b]);return a.join("")})}},!0),CKEDITOR.ui.dialog.html.prototype=new CKEDITOR.ui.dialog.uiElement,CKEDITOR.ui.dialog.labeledElement.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setLabel:function(a){var b=CKEDITOR.document.getById(this._.labelId);return 1>b.getChildCount()?new CKEDITOR.dom.text(a,CKEDITOR.document).appendTo(b):b.getChild(0).$.nodeValue=a,this},getLabel:function(){var a=CKEDITOR.document.getById(this._.labelId);return!a||1>a.getChildCount()?"":a.getChild(0).getText()},eventProcessors:e},!0),CKEDITOR.ui.dialog.button.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{click:function(){return this._.disabled?!1:this.fire("click",{dialog:this._.dialog})},enable:function(){this._.disabled=!1;var a=this.getElement();a&&a.removeClass("cke_disabled")},disable:function(){this._.disabled=!0,this.getElement().addClass("cke_disabled")},isVisible:function(){return this.getElement().getFirst().isVisible()},isEnabled:function(){return!this._.disabled},eventProcessors:CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onClick:function(a,b){this.on("click",function(){b.apply(this,arguments)})}},!0),accessKeyUp:function(){this.click()},accessKeyDown:function(){this.focus()},keyboardFocusable:!0},!0),CKEDITOR.ui.dialog.textInput.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return CKEDITOR.document.getById(this._.inputId)},focus:function(){var a=this.selectParentTab();setTimeout(function(){var b=a.getInputElement();b&&b.$.focus()},0)},select:function(){var a=this.selectParentTab();setTimeout(function(){var b=a.getInputElement();b&&(b.$.focus(),b.$.select())},0)},accessKeyUp:function(){this.select()},setValue:function(a){if(this.bidi){var b=a&&a.charAt(0);(b="‪"==b?"ltr":"‫"==b?"rtl":null)&&(a=a.slice(1)),this.setDirectionMarker(b)}return a||(a=""),CKEDITOR.ui.dialog.uiElement.prototype.setValue.apply(this,arguments)},getValue:function(){var a=CKEDITOR.ui.dialog.uiElement.prototype.getValue.call(this);if(this.bidi&&a){var b=this.getDirectionMarker();b&&(a=("ltr"==b?"‪":"‫")+a)}return a},setDirectionMarker:function(a){var b=this.getInputElement();a?b.setAttributes({dir:a,"data-cke-dir-marker":a}):this.getDirectionMarker()&&b.removeAttributes(["dir","data-cke-dir-marker"])},getDirectionMarker:function(){return this.getInputElement().data("cke-dir-marker")},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.textarea.prototype=new CKEDITOR.ui.dialog.textInput,CKEDITOR.ui.dialog.select.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return this._.select.getElement()},add:function(a,b,c){var d=new CKEDITOR.dom.element("option",this.getDialog().getParentEditor().document),e=this.getInputElement().$;return d.$.text=a,d.$.value=void 0===b||null===b?a:b,void 0===c||null===c?CKEDITOR.env.ie?e.add(d.$):e.add(d.$,null):e.add(d.$,c),this},remove:function(a){return this.getInputElement().$.remove(a),this},clear:function(){for(var a=this.getInputElement().$;0<a.length;)a.remove(0);return this},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.checkbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getInputElement:function(){return this._.checkbox.getElement()},setValue:function(a,b){this.getInputElement().$.checked=a,!b&&this.fire("change",{value:a})},getValue:function(){return this.getInputElement().$.checked},accessKeyUp:function(){this.setValue(!this.getValue())},eventProcessors:{onChange:function(a,b){return!CKEDITOR.env.ie||8<CKEDITOR.env.version?e.onChange.apply(this,arguments):(a.on("load",function(){var a=this._.checkbox.getElement();a.on("propertychange",function(b){b=b.data.$,"checked"==b.propertyName&&this.fire("change",{value:a.$.checked})},this)},this),this.on("change",b),null)}},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.radio.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setValue:function(a,b){for(var c,d=this._.children,e=0;e<d.length&&(c=d[e]);e++)c.getElement().$.checked=c.getValue()==a;!b&&this.fire("change",{value:a})},getValue:function(){for(var a=this._.children,b=0;b<a.length;b++)if(a[b].getElement().$.checked)return a[b].getValue();return null},accessKeyUp:function(){var a,b=this._.children;for(a=0;a<b.length;a++)if(b[a].getElement().$.checked)return void b[a].getElement().focus();b[0].getElement().focus()},eventProcessors:{onChange:function(a,b){return!CKEDITOR.env.ie||8<CKEDITOR.env.version?e.onChange.apply(this,arguments):(a.on("load",function(){for(var a=this._.children,b=this,c=0;c<a.length;c++)a[c].getElement().on("propertychange",function(a){a=a.data.$,"checked"==a.propertyName&&this.$.checked&&b.fire("change",{value:this.getAttribute("value")})})},this),this.on("change",b),null)}}},d,!0),CKEDITOR.ui.dialog.file.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,d,{getInputElement:function(){var a=CKEDITOR.document.getById(this._.frameId).getFrameDocument();return 0<a.$.forms.length?new CKEDITOR.dom.element(a.$.forms[0].elements[0]):this.getElement()},submit:function(){return this.getInputElement().getParent().$.submit(),this},getAction:function(){return this.getInputElement().getParent().$.action},registerEvents:function(a){var b,c,d=/^on([A-Z]\w+)/,e=function(a,b,c,d){a.on("formLoaded",function(){a.getInputElement().on(c,d,a)})};for(c in a)(b=c.match(d))&&(this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,a[c]):e(this,this._.dialog,b[1].toLowerCase(),a[c]));return this},reset:function(){function a(){c.$.open();var a="";d.size&&(a=d.size-(CKEDITOR.env.ie?7:0));var j=b.frameId+"_input";for(c.$.write(['<html dir="'+h+'" lang="'+i+'"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">','<form enctype="multipart/form-data" method="POST" dir="'+h+'" lang="'+i+'" action="',CKEDITOR.tools.htmlEncode(d.action),'"><label id="',b.labelId,'" for="',j,'" style="display:none">',CKEDITOR.tools.htmlEncode(d.label),'</label><input style="width:100%" id="',j,'" aria-labelledby="',b.labelId,'" type="file" name="',CKEDITOR.tools.htmlEncode(d.id||"cke_upload"),'" size="',CKEDITOR.tools.htmlEncode(a>0?a:""),'" /></form></body></html><script>',CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"","window.parent.CKEDITOR.tools.callFunction("+f+");","window.onbeforeunload = function() {window.parent.CKEDITOR.tools.callFunction("+g+")}","</script>"].join("")),c.$.close(),a=0;a<e.length;a++)e[a].enable()}var b=this._,c=CKEDITOR.document.getById(b.frameId).getFrameDocument(),d=b.definition,e=b.buttons,f=this.formLoadedNumber,g=this.formUnloadNumber,h=b.dialog._.editor.lang.dir,i=b.dialog._.editor.langCode;f||(f=this.formLoadedNumber=CKEDITOR.tools.addFunction(function(){this.fire("formLoaded")},this),g=this.formUnloadNumber=CKEDITOR.tools.addFunction(function(){this.getInputElement().clearCustomData()},this),this.getDialog()._.editor.on("destroy",function(){CKEDITOR.tools.removeFunction(f),CKEDITOR.tools.removeFunction(g)})),CKEDITOR.env.gecko?setTimeout(a,500):a()},getValue:function(){return this.getInputElement().$.value||""},setInitValue:function(){this._.initValue=""},eventProcessors:{onChange:function(a,b){this._.domOnChangeRegistered||(this.on("formLoaded",function(){this.getInputElement().on("change",function(){this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0),this.on("change",b)}},keyboardFocusable:!0},!0),CKEDITOR.ui.dialog.fileButton.prototype=new CKEDITOR.ui.dialog.button,CKEDITOR.ui.dialog.fieldset.prototype=CKEDITOR.tools.clone(CKEDITOR.ui.dialog.hbox.prototype),CKEDITOR.dialog.addUIElement("text",b),CKEDITOR.dialog.addUIElement("password",b),CKEDITOR.dialog.addUIElement("textarea",c),CKEDITOR.dialog.addUIElement("checkbox",c),CKEDITOR.dialog.addUIElement("radio",c),CKEDITOR.dialog.addUIElement("button",c),CKEDITOR.dialog.addUIElement("select",c),CKEDITOR.dialog.addUIElement("file",c),CKEDITOR.dialog.addUIElement("fileButton",c),CKEDITOR.dialog.addUIElement("html",c),CKEDITOR.dialog.addUIElement("fieldset",{build:function(a,b,c){for(var d,e=b.children,f=[],g=[],h=0;h<e.length&&(d=e[h]);h++){var i=[];f.push(i),g.push(CKEDITOR.dialog._.uiElementBuilders[d.type].build(a,d,i))}return new CKEDITOR.ui.dialog[b.type](a,g,f,c,b)}})}}),CKEDITOR.DIALOG_RESIZE_NONE=0,CKEDITOR.DIALOG_RESIZE_WIDTH=1,CKEDITOR.DIALOG_RESIZE_HEIGHT=2,CKEDITOR.DIALOG_RESIZE_BOTH=3,CKEDITOR.DIALOG_STATE_IDLE=1,CKEDITOR.DIALOG_STATE_BUSY=2,function(){function a(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId)+a,c=b-1;c>b-a;c--)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function b(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId),c=b+1;b+a>c;c++)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function c(a,b){for(var c=a.$.getElementsByTagName("input"),d=0,e=c.length;e>d;d++){var f=new CKEDITOR.dom.element(c[d]);"text"==f.getAttribute("type").toLowerCase()&&(b?(f.setAttribute("value",f.getCustomData("fake_value")||""),f.removeCustomData("fake_value")):(f.setCustomData("fake_value",f.getAttribute("value")),f.setAttribute("value","")))}}function d(a,b){var c=this.getInputElement();c&&(a?c.removeAttribute("aria-invalid"):c.setAttribute("aria-invalid",!0)),a||(this.select?this.select():this.focus()),b&&alert(b),this.fire("validated",{valid:a,msg:b})}function e(){var a=this.getInputElement();a&&a.removeAttribute("aria-invalid")}function f(a){var b=CKEDITOR.dom.element.createFromHtml(CKEDITOR.addTemplate("dialog",p).output({id:CKEDITOR.tools.getNextNumber(),editorId:a.id,langDir:a.lang.dir,langCode:a.langCode,editorDialogClass:"cke_editor_"+a.name.replace(/\./g,"\\.")+"_dialog",closeTitle:a.lang.common.close,hidpi:CKEDITOR.env.hidpi?"cke_hidpi":""})),c=b.getChild([0,0,0,0,0]),d=c.getChild(0),e=c.getChild(1);return a.plugins.clipboard&&CKEDITOR.plugins.clipboard.preventDefaultDropOnElement(c),!CKEDITOR.env.ie||CKEDITOR.env.quirks||CKEDITOR.env.edge||(a="javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())",CKEDITOR.dom.element.createFromHtml('<iframe frameBorder="0" class="cke_iframe_shim" src="'+a+'" tabIndex="-1"></iframe>').appendTo(c.getParent())),d.unselectable(),e.unselectable(),{element:b,parts:{dialog:b.getChild(0),title:d,close:e,tabs:c.getChild(2),contents:c.getChild([3,0,0,0]),footer:c.getChild([3,0,1,0])}}}function g(a,b,c){this.element=b,this.focusIndex=c,this.tabIndex=0,this.isFocusable=function(){return!b.getAttribute("disabled")&&b.isVisible()},this.focus=function(){a._.currentFocusIndex=this.focusIndex,this.element.focus()},b.on("keydown",function(a){a.data.getKeystroke()in{32:1,13:1}&&this.fire("click")}),b.on("focus",function(){this.fire("mouseover")}),b.on("blur",function(){this.fire("mouseout")})}function h(a){function b(){a.layout()}var c=CKEDITOR.document.getWindow();c.on("resize",b),a.on("hide",function(){c.removeListener("resize",b)})}function i(a,b){this._={dialog:a},CKEDITOR.tools.extend(this,b)}function j(a){function b(b){var c=a.getSize(),i=CKEDITOR.document.getWindow().getViewPaneSize(),j=b.data.$.screenX,k=b.data.$.screenY,l=j-d.x,m=k-d.y;d={x:j,y:k},e.x+=l,e.y+=m,a.move(e.x+h[3]<g?-h[3]:e.x-h[1]>i.width-c.width-g?i.width-c.width+("rtl"==f.lang.dir?0:h[1]):e.x,e.y+h[0]<g?-h[0]:e.y-h[2]>i.height-c.height-g?i.height-c.height+h[2]:e.y,1),b.data.preventDefault()}function c(){if(CKEDITOR.document.removeListener("mousemove",b),CKEDITOR.document.removeListener("mouseup",c),CKEDITOR.env.ie6Compat){var a=w.getChild(0).getFrameDocument();a.removeListener("mousemove",b),a.removeListener("mouseup",c)}}var d=null,e=null,f=a.getParentEditor(),g=f.config.dialog_magnetDistance,h=CKEDITOR.skin.margins||[0,0,0,0];"undefined"==typeof g&&(g=20),a.parts.title.on("mousedown",function(f){if(d={x:f.data.$.screenX,y:f.data.$.screenY},CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),e=a.getPosition(),CKEDITOR.env.ie6Compat){var g=w.getChild(0).getFrameDocument();g.on("mousemove",b),g.on("mouseup",c)}f.data.preventDefault()},a)}function k(a){function b(b){var c="rtl"==l.lang.dir,k=j.width,m=j.height,n=k+(b.data.$.screenX-i.x)*(c?-1:1)*(a._.moved?1:2),o=m+(b.data.$.screenY-i.y)*(a._.moved?1:2),p=a._.element.getFirst(),p=c&&p.getComputedStyle("right"),q=a.getPosition();q.y+o>h.height&&(o=h.height-q.y),(c?p:q.x)+n>h.width&&(n=h.width-(c?p:q.x)),e!=CKEDITOR.DIALOG_RESIZE_WIDTH&&e!=CKEDITOR.DIALOG_RESIZE_BOTH||(k=Math.max(d.minWidth||0,n-f)),e!=CKEDITOR.DIALOG_RESIZE_HEIGHT&&e!=CKEDITOR.DIALOG_RESIZE_BOTH||(m=Math.max(d.minHeight||0,o-g)),a.resize(k,m),a._.moved||a.layout(),b.data.preventDefault()}function c(){if(CKEDITOR.document.removeListener("mouseup",c),CKEDITOR.document.removeListener("mousemove",b),k&&(k.remove(),k=null),CKEDITOR.env.ie6Compat){var a=w.getChild(0).getFrameDocument();a.removeListener("mouseup",c),a.removeListener("mousemove",b)}}var d=a.definition,e=d.resizable;if(e!=CKEDITOR.DIALOG_RESIZE_NONE){var f,g,h,i,j,k,l=a.getParentEditor(),m=CKEDITOR.tools.addFunction(function(d){j=a.getSize();var e=a.parts.contents;e.$.getElementsByTagName("iframe").length&&(k=CKEDITOR.dom.element.createFromHtml('<div class="cke_dialog_resize_cover" style="height: 100%; position: absolute; width: 100%;"></div>'),e.append(k)),g=j.height-a.parts.contents.getSize("height",!(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.quirks)),f=j.width-a.parts.contents.getSize("width",1),i={x:d.screenX,y:d.screenY},h=CKEDITOR.document.getWindow().getViewPaneSize(),CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),CKEDITOR.env.ie6Compat&&(e=w.getChild(0).getFrameDocument(),e.on("mousemove",b),e.on("mouseup",c)),d.preventDefault&&d.preventDefault()});a.on("load",function(){var b="";e==CKEDITOR.DIALOG_RESIZE_WIDTH?b=" cke_resizer_horizontal":e==CKEDITOR.DIALOG_RESIZE_HEIGHT&&(b=" cke_resizer_vertical"),b=CKEDITOR.dom.element.createFromHtml('<div class="cke_resizer'+b+" cke_resizer_"+l.lang.dir+'" title="'+CKEDITOR.tools.htmlEncode(l.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+m+', event )">'+("ltr"==l.lang.dir?"◢":"◣")+"</div>"),a.parts.footer.append(b,1)}),l.on("destroy",function(){CKEDITOR.tools.removeFunction(m)})}}function l(a){a.data.preventDefault(1)}function m(a){var b=CKEDITOR.document.getWindow(),c=a.config,d=c.dialog_backgroundCoverColor||"white",e=c.dialog_backgroundCoverOpacity,f=c.baseFloatZIndex,c=CKEDITOR.tools.genKey(d,e,f),g=x[c];g?g.show():(f=['<div tabIndex="-1" style="position: ',CKEDITOR.env.ie6Compat?"absolute":"fixed","; z-index: ",f,"; top: 0px; left: 0px; ",CKEDITOR.env.ie6Compat?"":"background-color: "+d,'" class="cke_dialog_background_cover">'],CKEDITOR.env.ie6Compat&&(d="<html><body style=\\'background-color:"+d+";\\'></body></html>",f.push('<iframe hidefocus="true" frameborder="0" id="cke_dialog_background_iframe" src="javascript:'),f.push("void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.write( '"+d+"' );document.close();")+"})())"),f.push('" style="position:absolute;left:0;top:0;width:100%;height: 100%;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0)"></iframe>')),f.push("</div>"),g=CKEDITOR.dom.element.createFromHtml(f.join("")),g.setOpacity(void 0!==e?e:.5),g.on("keydown",l),g.on("keypress",l),g.on("keyup",l),g.appendTo(CKEDITOR.document.getBody()),x[c]=g),a.focusManager.add(g),w=g,a=function(){var a=b.getViewPaneSize();g.setStyles({width:a.width+"px",height:a.height+"px"})};var h=function(){var a=b.getScrollPosition(),c=CKEDITOR.dialog._.currentTop;if(g.setStyles({left:a.x+"px",top:a.y+"px"}),c)do a=c.getPosition(),c.move(a.x,a.y);while(c=c._.parentDialog)};if(v=a,b.on("resize",a),a(),CKEDITOR.env.mac&&CKEDITOR.env.webkit||g.focus(),CKEDITOR.env.ie6Compat){var i=function(){h(),arguments.callee.prevScrollHandler.apply(this,arguments)};b.$.setTimeout(function(){i.prevScrollHandler=window.onscroll||function(){},window.onscroll=i},0),h()}}function n(a){w&&(a.focusManager.remove(w),a=CKEDITOR.document.getWindow(),w.hide(),a.removeListener("resize",v),CKEDITOR.env.ie6Compat&&a.$.setTimeout(function(){window.onscroll=window.onscroll&&window.onscroll.prevScrollHandler||null},0),v=null)}var o=CKEDITOR.tools.cssLength,p='<div class="cke_reset_all {editorId} {editorDialogClass} {hidpi}" dir="{langDir}" lang="{langCode}" role="dialog" aria-labelledby="cke_dialog_title_{id}"><table class="cke_dialog '+CKEDITOR.env.cssClass+' cke_{langDir}" style="position:absolute" role="presentation"><tr><td role="presentation"><div class="cke_dialog_body" role="presentation"><div id="cke_dialog_title_{id}" class="cke_dialog_title" role="presentation"></div><a id="cke_dialog_close_button_{id}" class="cke_dialog_close_button" href="javascript:void(0)" title="{closeTitle}" role="button"><span class="cke_label">X</span></a><div id="cke_dialog_tabs_{id}" class="cke_dialog_tabs" role="tablist"></div><table class="cke_dialog_contents" role="presentation"><tr><td id="cke_dialog_contents_{id}" class="cke_dialog_contents_body" role="presentation"></td></tr><tr><td id="cke_dialog_footer_{id}" class="cke_dialog_footer" role="presentation"></td></tr></table></div></td></tr></table></div>';CKEDITOR.dialog=function(c,g){function h(){var a=x._.focusList;a.sort(function(a,b){return a.tabIndex!=b.tabIndex?b.tabIndex-a.tabIndex:a.focusIndex-b.focusIndex});for(var b=a.length,c=0;b>c;c++)a[c].focusIndex=c}function i(a){var b=x._.focusList;if(a=a||0,!(1>b.length)){var c=x._.currentFocusIndex;x._.tabBarMode&&0>a&&(c=0);try{b[c].getInputElement().$.blur()}catch(d){}var e=c,f=1<x._.pageCount;do{if(e+=a,f&&!x._.tabBarMode&&(e==b.length||-1==e))return x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),void(x._.currentFocusIndex=-1);if(e=(e+b.length)%b.length,e==c)break}while(a&&!b[e].isFocusable());b[e].focus(),"text"==b[e].type&&b[e].select()}}function l(d){if(x==CKEDITOR.dialog._.currentTop){var e=d.data.getKeystroke(),f="rtl"==c.lang.dir,g=[37,38,39,40];if(n=o=0,9==e||e==CKEDITOR.SHIFT+9)i(e==CKEDITOR.SHIFT+9?-1:1),n=1;else if(e==CKEDITOR.ALT+121&&!x._.tabBarMode&&1<x.getPageCount())x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),x._.currentFocusIndex=-1,n=1;else if(-1!=CKEDITOR.tools.indexOf(g,e)&&x._.tabBarMode)e=-1!=CKEDITOR.tools.indexOf([f?39:37,38],e)?a.call(x):b.call(x),x.selectPage(e),x._.tabs[e][0].focus(),n=1;else if(13!=e&&32!=e||!x._.tabBarMode)if(13==e)e=d.data.getTarget(),e.is("a","button","select","textarea")||e.is("input")&&"button"==e.$.type||((e=this.getButton("ok"))&&CKEDITOR.tools.setTimeout(e.click,0,e),n=1),o=1;else{if(27!=e)return;(e=this.getButton("cancel"))?CKEDITOR.tools.setTimeout(e.click,0,e):!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),o=1}else this.selectPage(this._.currentTabId),this._.tabBarMode=!1,this._.currentFocusIndex=-1,i(1),n=1;m(d)}}function m(a){n?a.data.preventDefault(1):o&&a.data.stopPropagation()}var n,o,p=CKEDITOR.dialog._.dialogDefinitions[g],r=CKEDITOR.tools.clone(q),s=c.config.dialog_buttonsOrder||"OS",t=c.lang.dir,v={};if(("OS"==s&&CKEDITOR.env.mac||"rtl"==s&&"ltr"==t||"ltr"==s&&"rtl"==t)&&r.buttons.reverse(),p=CKEDITOR.tools.extend(p(c),r),p=CKEDITOR.tools.clone(p),p=new u(this,p),r=f(c),this._={editor:c,element:r.element,name:g,contentSize:{width:0,height:0},size:{width:0,height:0},contents:{},buttons:{},accessKeyMap:{},tabs:{},tabIdList:[],currentTabId:null,currentTabIndex:null,pageCount:0,lastTab:null,tabBarMode:!1,focusList:[],currentFocusIndex:0,hasFocus:!1},this.parts=r.parts,CKEDITOR.tools.setTimeout(function(){c.fire("ariaWidget",this.parts.contents)},0,this),r={position:CKEDITOR.env.ie6Compat?"absolute":"fixed",top:0,visibility:"hidden"},r["rtl"==t?"right":"left"]=0,this.parts.dialog.setStyles(r),CKEDITOR.event.call(this),this.definition=p=CKEDITOR.fire("dialogDefinition",{name:g,definition:p},c).definition,!("removeDialogTabs"in c._)&&c.config.removeDialogTabs){for(r=c.config.removeDialogTabs.split(";"),t=0;t<r.length;t++)if(s=r[t].split(":"),2==s.length){var w=s[0];v[w]||(v[w]=[]),v[w].push(s[1])}c._.removeDialogTabs=v}if(c._.removeDialogTabs&&(v=c._.removeDialogTabs[g]))for(t=0;t<v.length;t++)p.removeContents(v[t]);p.onLoad&&this.on("load",p.onLoad),p.onShow&&this.on("show",p.onShow),p.onHide&&this.on("hide",p.onHide),p.onOk&&this.on("ok",function(a){c.fire("saveSnapshot"),setTimeout(function(){c.fire("saveSnapshot")},0),!1===p.onOk.call(this,a)&&(a.data.hide=!1)}),this.state=CKEDITOR.DIALOG_STATE_IDLE,p.onCancel&&this.on("cancel",function(a){!1===p.onCancel.call(this,a)&&(a.data.hide=!1)});var x=this,y=function(a){var b,c=x._.contents,d=!1;for(b in c)for(var e in c[b])if(d=a.call(this,c[b][e]))return};this.on("ok",function(a){y(function(b){if(b.validate){var c=b.validate(this),e="string"==typeof c||!1===c;return e&&(a.data.hide=!1,a.stop()),d.call(b,!e,"string"==typeof c?c:void 0),e}})},this,null,0),this.on("cancel",function(a){y(function(b){return b.isChanged()?(c.config.dialog_noConfirmCancel||confirm(c.lang.common.confirmCancel)||(a.data.hide=!1),!0):void 0})},this,null,0),this.parts.close.on("click",function(a){!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),a.data.preventDefault()},this),this.changeFocus=i;var z=this._.element;for(c.focusManager.add(z,1),this.on("show",function(){z.on("keydown",l,this),CKEDITOR.env.gecko&&z.on("keypress",m,this)}),this.on("hide",function(){z.removeListener("keydown",l),CKEDITOR.env.gecko&&z.removeListener("keypress",m), +y(function(a){e.apply(a)})}),this.on("iframeAdded",function(a){new CKEDITOR.dom.document(a.data.iframe.$.contentWindow.document).on("keydown",l,this,null,0)}),this.on("show",function(){h();var a=1<x._.pageCount;c.config.dialog_startupFocusTab&&a?(x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),x._.currentFocusIndex=-1):this._.hasFocus||(this._.currentFocusIndex=a?-1:this._.focusList.length-1,p.onFocus?(a=p.onFocus.call(this))&&a.focus():i(1))},this,null,4294967295),CKEDITOR.env.ie6Compat&&this.on("load",function(){var a=this.getElement(),b=a.getFirst();b.remove(),b.appendTo(a)},this),j(this),k(this),new CKEDITOR.dom.text(p.title,CKEDITOR.document).appendTo(this.parts.title),t=0;t<p.contents.length;t++)(v=p.contents[t])&&this.addPage(v);for(this.parts.tabs.on("click",function(a){var b=a.data.getTarget();b.hasClass("cke_dialog_tab")&&(b=b.$.id,this.selectPage(b.substring(4,b.lastIndexOf("_"))),this._.tabBarMode&&(this._.tabBarMode=!1,this._.currentFocusIndex=-1,i(1)),a.data.preventDefault())},this),t=[],v=CKEDITOR.dialog._.uiElementBuilders.hbox.build(this,{type:"hbox",className:"cke_dialog_footer_buttons",widths:[],children:p.buttons},t).getChild(),this.parts.footer.setHtml(t.join("")),t=0;t<v.length;t++)this._.buttons[v[t].id]=v[t]},CKEDITOR.dialog.prototype={destroy:function(){this.hide(),this._.element.remove()},resize:function(){return function(a,b){this._.contentSize&&this._.contentSize.width==a&&this._.contentSize.height==b||(CKEDITOR.dialog.fire("resize",{dialog:this,width:a,height:b},this._.editor),this.fire("resize",{width:a,height:b},this._.editor),this.parts.contents.setStyles({width:a+"px",height:b+"px"}),"rtl"==this._.editor.lang.dir&&this._.position&&(this._.position.x=CKEDITOR.document.getWindow().getViewPaneSize().width-this._.contentSize.width-parseInt(this._.element.getFirst().getStyle("right"),10)),this._.contentSize={width:a,height:b})}}(),getSize:function(){var a=this._.element.getFirst();return{width:a.$.offsetWidth||0,height:a.$.offsetHeight||0}},move:function(a,b,c){var d=this._.element.getFirst(),e="rtl"==this._.editor.lang.dir,f="fixed"==d.getComputedStyle("position");CKEDITOR.env.ie&&d.setStyle("zoom","100%"),f&&this._.position&&this._.position.x==a&&this._.position.y==b||(this._.position={x:a,y:b},f||(f=CKEDITOR.document.getWindow().getScrollPosition(),a+=f.x,b+=f.y),e&&(f=this.getSize(),a=CKEDITOR.document.getWindow().getViewPaneSize().width-f.width-a),b={top:(b>0?b:0)+"px"},b[e?"right":"left"]=(a>0?a:0)+"px",d.setStyles(b),c&&(this._.moved=1))},getPosition:function(){return CKEDITOR.tools.extend({},this._.position)},show:function(){var a=this._.element,b=this.definition;a.getParent()&&a.getParent().equals(CKEDITOR.document.getBody())?a.setStyle("display","block"):a.appendTo(CKEDITOR.document.getBody()),this.resize(this._.contentSize&&this._.contentSize.width||b.width||b.minWidth,this._.contentSize&&this._.contentSize.height||b.height||b.minHeight),this.reset(),this.selectPage(this.definition.contents[0].id),null===CKEDITOR.dialog._.currentZIndex&&(CKEDITOR.dialog._.currentZIndex=this._.editor.config.baseFloatZIndex),this._.element.getFirst().setStyle("z-index",CKEDITOR.dialog._.currentZIndex+=10),null===CKEDITOR.dialog._.currentTop?(CKEDITOR.dialog._.currentTop=this,this._.parentDialog=null,m(this._.editor)):(this._.parentDialog=CKEDITOR.dialog._.currentTop,this._.parentDialog.getElement().getFirst().$.style.zIndex-=Math.floor(this._.editor.config.baseFloatZIndex/2),CKEDITOR.dialog._.currentTop=this),a.on("keydown",z),a.on("keyup",A),this._.hasFocus=!1;for(var c in b.contents)if(b.contents[c]){var a=b.contents[c],d=this._.tabs[a.id],e=a.requiredContent,f=0;if(d){for(var g in this._.contents[a.id]){var i=this._.contents[a.id][g];"hbox"!=i.type&&"vbox"!=i.type&&i.getInputElement()&&(i.requiredContent&&!this._.editor.activeFilter.check(i.requiredContent)?i.disable():(i.enable(),f++))}!f||e&&!this._.editor.activeFilter.check(e)?d[0].addClass("cke_dialog_tab_disabled"):d[0].removeClass("cke_dialog_tab_disabled")}}CKEDITOR.tools.setTimeout(function(){this.layout(),h(this),this.parts.dialog.setStyle("visibility",""),this.fireOnce("load",{}),CKEDITOR.ui.fire("ready",this),this.fire("show",{}),this._.editor.fire("dialogShow",this),this._.parentDialog||this._.editor.focusManager.lock(),this.foreach(function(a){a.setInitValue&&a.setInitValue()})},100,this)},layout:function(){var a=this.parts.dialog,b=this.getSize(),c=CKEDITOR.document.getWindow().getViewPaneSize(),d=(c.width-b.width)/2,e=(c.height-b.height)/2;CKEDITOR.env.ie6Compat||(b.height+(e>0?e:0)>c.height||b.width+(d>0?d:0)>c.width?a.setStyle("position","absolute"):a.setStyle("position","fixed")),this.move(this._.moved?this._.position.x:d,this._.moved?this._.position.y:e)},foreach:function(a){for(var b in this._.contents)for(var c in this._.contents[b])a.call(this,this._.contents[b][c]);return this},reset:function(){var a=function(a){a.reset&&a.reset(1)};return function(){return this.foreach(a),this}}(),setupContent:function(){var a=arguments;this.foreach(function(b){b.setup&&b.setup.apply(b,a)})},commitContent:function(){var a=arguments;this.foreach(function(b){CKEDITOR.env.ie&&this._.currentFocusIndex==b.focusIndex&&b.getInputElement().$.blur(),b.commit&&b.commit.apply(b,a)})},hide:function(){if(this.parts.dialog.isVisible()){this.fire("hide",{}),this._.editor.fire("dialogHide",this),this.selectPage(this._.tabIdList[0]);var a=this._.element;for(a.setStyle("display","none"),this.parts.dialog.setStyle("visibility","hidden"),C(this);CKEDITOR.dialog._.currentTop!=this;)CKEDITOR.dialog._.currentTop.hide();if(this._.parentDialog){var b=this._.parentDialog.getElement().getFirst();b.setStyle("z-index",parseInt(b.$.style.zIndex,10)+Math.floor(this._.editor.config.baseFloatZIndex/2))}else n(this._.editor);if(CKEDITOR.dialog._.currentTop=this._.parentDialog)CKEDITOR.dialog._.currentZIndex-=10;else{CKEDITOR.dialog._.currentZIndex=null,a.removeListener("keydown",z),a.removeListener("keyup",A);var c=this._.editor;c.focus(),setTimeout(function(){c.focusManager.unlock(),CKEDITOR.env.iOS&&c.window.focus()},0)}delete this._.parentDialog,this.foreach(function(a){a.resetInitValue&&a.resetInitValue()}),this.setState(CKEDITOR.DIALOG_STATE_IDLE)}},addPage:function(a){if(!a.requiredContent||this._.editor.filter.check(a.requiredContent)){for(var b=[],c=a.label?' title="'+CKEDITOR.tools.htmlEncode(a.label)+'"':"",d=CKEDITOR.dialog._.uiElementBuilders.vbox.build(this,{type:"vbox",className:"cke_dialog_page_contents",children:a.elements,expand:!!a.expand,padding:a.padding,style:a.style||"width: 100%;"},b),e=this._.contents[a.id]={},f=d.getChild(),g=0;d=f.shift();)d.notAllowed||"hbox"==d.type||"vbox"==d.type||g++,e[d.id]=d,"function"==typeof d.getChild&&f.push.apply(f,d.getChild());g||(a.hidden=!0),b=CKEDITOR.dom.element.createFromHtml(b.join("")),b.setAttribute("role","tabpanel"),d=CKEDITOR.env,e="cke_"+a.id+"_"+CKEDITOR.tools.getNextNumber(),c=CKEDITOR.dom.element.createFromHtml(['<a class="cke_dialog_tab"',0<this._.pageCount?" cke_last":"cke_first",c,a.hidden?' style="display:none"':"",' id="',e,'"',d.gecko&&!d.hc?"":' href="javascript:void(0)"',' tabIndex="-1" hidefocus="true" role="tab">',a.label,"</a>"].join("")),b.setAttribute("aria-labelledby",e),this._.tabs[a.id]=[c,b],this._.tabIdList.push(a.id),!a.hidden&&this._.pageCount++,this._.lastTab=c,this.updateStyle(),b.setAttribute("name",a.id),b.appendTo(this.parts.contents),c.unselectable(),this.parts.tabs.append(c),a.accessKey&&(B(this,this,"CTRL+"+a.accessKey,E,D),this._.accessKeyMap["CTRL+"+a.accessKey]=a.id)}},selectPage:function(a){if(this._.currentTabId!=a&&!this._.tabs[a][0].hasClass("cke_dialog_tab_disabled")&&!1!==this.fire("selectPage",{page:a,currentPage:this._.currentTabId})){for(var b in this._.tabs){var d=this._.tabs[b][0],e=this._.tabs[b][1];b!=a&&(d.removeClass("cke_dialog_tab_selected"),e.hide()),e.setAttribute("aria-hidden",b!=a)}var f=this._.tabs[a];f[0].addClass("cke_dialog_tab_selected"),CKEDITOR.env.ie6Compat||CKEDITOR.env.ie7Compat?(c(f[1]),f[1].show(),setTimeout(function(){c(f[1],1)},0)):f[1].show(),this._.currentTabId=a,this._.currentTabIndex=CKEDITOR.tools.indexOf(this._.tabIdList,a)}},updateStyle:function(){this.parts.dialog[(1===this._.pageCount?"add":"remove")+"Class"]("cke_single_page")},hidePage:function(b){var c=this._.tabs[b]&&this._.tabs[b][0];c&&1!=this._.pageCount&&c.isVisible()&&(b==this._.currentTabId&&this.selectPage(a.call(this)),c.hide(),this._.pageCount--,this.updateStyle())},showPage:function(a){(a=this._.tabs[a]&&this._.tabs[a][0])&&(a.show(),this._.pageCount++,this.updateStyle())},getElement:function(){return this._.element},getName:function(){return this._.name},getContentElement:function(a,b){var c=this._.contents[a];return c&&c[b]},getValueOf:function(a,b){return this.getContentElement(a,b).getValue()},setValueOf:function(a,b,c){return this.getContentElement(a,b).setValue(c)},getButton:function(a){return this._.buttons[a]},click:function(a){return this._.buttons[a].click()},disableButton:function(a){return this._.buttons[a].disable()},enableButton:function(a){return this._.buttons[a].enable()},getPageCount:function(){return this._.pageCount},getParentEditor:function(){return this._.editor},getSelectedElement:function(){return this.getParentEditor().getSelection().getSelectedElement()},addFocusable:function(a,b){if("undefined"==typeof b)b=this._.focusList.length,this._.focusList.push(new g(this,a,b));else{this._.focusList.splice(b,0,new g(this,a,b));for(var c=b+1;c<this._.focusList.length;c++)this._.focusList[c].focusIndex++}},setState:function(a){if(this.state!=a){if(this.state=a,a==CKEDITOR.DIALOG_STATE_BUSY){if(!this.parts.spinner){var b=this.getParentEditor().lang.dir,c={attributes:{"class":"cke_dialog_spinner"},styles:{"float":"rtl"==b?"right":"left"}};c.styles["margin-"+("rtl"==b?"left":"right")]="8px",this.parts.spinner=CKEDITOR.document.createElement("div",c),this.parts.spinner.setHtml("⌛"),this.parts.spinner.appendTo(this.parts.title,1)}this.parts.spinner.show(),this.getButton("ok").disable()}else a==CKEDITOR.DIALOG_STATE_IDLE&&(this.parts.spinner&&this.parts.spinner.hide(),this.getButton("ok").enable());this.fire("state",a)}}},CKEDITOR.tools.extend(CKEDITOR.dialog,{add:function(a,b){this._.dialogDefinitions[a]&&"function"!=typeof b||(this._.dialogDefinitions[a]=b)},exists:function(a){return!!this._.dialogDefinitions[a]},getCurrent:function(){return CKEDITOR.dialog._.currentTop},isTabEnabled:function(a,b,c){return a=a.config.removeDialogTabs,!(a&&a.match(new RegExp("(?:^|;)"+b+":"+c+"(?:$|;)","i")))},okButton:function(){var a=function(a,b){return b=b||{},CKEDITOR.tools.extend({id:"ok",type:"button",label:a.lang.common.ok,"class":"cke_dialog_ui_button_ok",onClick:function(a){a=a.data.dialog,!1!==a.fire("ok",{hide:!0}).hide&&a.hide()}},b,!0)};return a.type="button",a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)},a}(),cancelButton:function(){var a=function(a,b){return b=b||{},CKEDITOR.tools.extend({id:"cancel",type:"button",label:a.lang.common.cancel,"class":"cke_dialog_ui_button_cancel",onClick:function(a){a=a.data.dialog,!1!==a.fire("cancel",{hide:!0}).hide&&a.hide()}},b,!0)};return a.type="button",a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)},a}(),addUIElement:function(a,b){this._.uiElementBuilders[a]=b}}),CKEDITOR.dialog._={uiElementBuilders:{},dialogDefinitions:{},currentTop:null,currentZIndex:null},CKEDITOR.event.implementOn(CKEDITOR.dialog),CKEDITOR.event.implementOn(CKEDITOR.dialog.prototype);var q={resizable:CKEDITOR.DIALOG_RESIZE_BOTH,minWidth:600,minHeight:400,buttons:[CKEDITOR.dialog.okButton,CKEDITOR.dialog.cancelButton]},r=function(a,b,c){for(var d,e=0;d=a[e];e++)if(d.id==b||c&&d[c]&&(d=r(d[c],b,c)))return d;return null},s=function(a,b,c,d,e){if(c){for(var f,g=0;f=a[g];g++){if(f.id==c)return a.splice(g,0,b),b;if(d&&f[d]&&(f=s(f[d],b,c,d,!0)))return f}if(e)return null}return a.push(b),b},t=function(a,b,c){for(var d,e=0;d=a[e];e++){if(d.id==b)return a.splice(e,1);if(c&&d[c]&&(d=t(d[c],b,c)))return d}return null},u=function(a,b){this.dialog=a;for(var c,d=b.contents,e=0;c=d[e];e++)d[e]=c&&new i(a,c);CKEDITOR.tools.extend(this,b)};u.prototype={getContents:function(a){return r(this.contents,a)},getButton:function(a){return r(this.buttons,a)},addContents:function(a,b){return s(this.contents,a,b)},addButton:function(a,b){return s(this.buttons,a,b)},removeContents:function(a){t(this.contents,a)},removeButton:function(a){t(this.buttons,a)}},i.prototype={get:function(a){return r(this.elements,a,"children")},add:function(a,b){return s(this.elements,a,b,"children")},remove:function(a){t(this.elements,a,"children")}};var v,w,x={},y={},z=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,d=a.data.$.shiftKey,e=String.fromCharCode(a.data.$.keyCode);(b=y[(b?"CTRL+":"")+(c?"ALT+":"")+(d?"SHIFT+":"")+e])&&b.length&&(b=b[b.length-1],b.keydown&&b.keydown.call(b.uiElement,b.dialog,b.key),a.data.preventDefault())},A=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,d=a.data.$.shiftKey,e=String.fromCharCode(a.data.$.keyCode);(b=y[(b?"CTRL+":"")+(c?"ALT+":"")+(d?"SHIFT+":"")+e])&&b.length&&(b=b[b.length-1],b.keyup&&(b.keyup.call(b.uiElement,b.dialog,b.key),a.data.preventDefault()))},B=function(a,b,c,d,e){(y[c]||(y[c]=[])).push({uiElement:a,dialog:b,key:c,keyup:e||a.accessKeyUp,keydown:d||a.accessKeyDown})},C=function(a){for(var b in y){for(var c=y[b],d=c.length-1;d>=0;d--)c[d].dialog!=a&&c[d].uiElement!=a||c.splice(d,1);0===c.length&&delete y[b]}},D=function(a,b){a._.accessKeyMap[b]&&a.selectPage(a._.accessKeyMap[b])},E=function(){};!function(){CKEDITOR.ui.dialog={uiElement:function(a,b,c,d,e,f,g){if(!(4>arguments.length)){var h=(d.call?d(b):d)||"div",i=["<",h," "],j=(e&&e.call?e(b):e)||{},k=(f&&f.call?f(b):f)||{},l=(g&&g.call?g.call(this,a,b):g)||"",m=this.domId=k.id||CKEDITOR.tools.getNextId()+"_uiElement";b.requiredContent&&!a.getParentEditor().filter.check(b.requiredContent)&&(j.display="none",this.notAllowed=!0),k.id=m;var n={};b.type&&(n["cke_dialog_ui_"+b.type]=1),b.className&&(n[b.className]=1),b.disabled&&(n.cke_disabled=1);for(var o=k["class"]&&k["class"].split?k["class"].split(" "):[],m=0;m<o.length;m++)o[m]&&(n[o[m]]=1);o=[];for(m in n)o.push(m);k["class"]=o.join(" "),b.title&&(k.title=b.title),n=(b.style||"").split(";"),b.align&&(o=b.align,j["margin-left"]="left"==o?0:"auto",j["margin-right"]="right"==o?0:"auto");for(m in j)n.push(m+":"+j[m]);for(b.hidden&&n.push("display:none"),m=n.length-1;m>=0;m--)""===n[m]&&n.splice(m,1);0<n.length&&(k.style=(k.style?k.style+"; ":"")+n.join("; "));for(m in k)i.push(m+'="'+CKEDITOR.tools.htmlEncode(k[m])+'" ');i.push(">",l,"</",h,">"),c.push(i.join("")),(this._||(this._={})).dialog=a,"boolean"==typeof b.isChanged&&(this.isChanged=function(){return b.isChanged}),"function"==typeof b.isChanged&&(this.isChanged=b.isChanged),"function"==typeof b.setValue&&(this.setValue=CKEDITOR.tools.override(this.setValue,function(a){return function(c){a.call(this,b.setValue.call(this,c))}})),"function"==typeof b.getValue&&(this.getValue=CKEDITOR.tools.override(this.getValue,function(a){return function(){return b.getValue.call(this,a.call(this))}})),CKEDITOR.event.implementOn(this),this.registerEvents(b),this.accessKeyUp&&this.accessKeyDown&&b.accessKey&&B(this,a,"CTRL+"+b.accessKey);var p=this;a.on("load",function(){var b=p.getInputElement();if(b){var c=p.type in{checkbox:1,ratio:1}&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?"cke_dialog_ui_focused":"";b.on("focus",function(){a._.tabBarMode=!1,a._.hasFocus=!0,p.fire("focus"),c&&this.addClass(c)}),b.on("blur",function(){p.fire("blur"),c&&this.removeClass(c)})}}),CKEDITOR.tools.extend(this,b),this.keyboardFocusable&&(this.tabIndex=b.tabIndex||0,this.focusIndex=a._.focusList.push(this)-1,this.on("focus",function(){a._.currentFocusIndex=p.focusIndex}))}},hbox:function(a,b,c,d,e){if(!(4>arguments.length)){this._||(this._={});var f,g=this._.children=b,h=e&&e.widths||null,i=e&&e.height||null,j={role:"presentation"};e&&e.align&&(j.align=e.align),CKEDITOR.ui.dialog.uiElement.call(this,a,e||{type:"hbox"},d,"table",{},j,function(){var a=['<tbody><tr class="cke_dialog_ui_hbox">'];for(f=0;f<c.length;f++){var b="cke_dialog_ui_hbox_child",d=[];0===f&&(b="cke_dialog_ui_hbox_first"),f==c.length-1&&(b="cke_dialog_ui_hbox_last"),a.push('<td class="',b,'" role="presentation" '),h?h[f]&&d.push("width:"+o(h[f])):d.push("width:"+Math.floor(100/c.length)+"%"),i&&d.push("height:"+o(i)),e&&void 0!==e.padding&&d.push("padding:"+o(e.padding)),CKEDITOR.env.ie&&CKEDITOR.env.quirks&&g[f].align&&d.push("text-align:"+g[f].align),0<d.length&&a.push('style="'+d.join("; ")+'" '),a.push(">",c[f],"</td>")}return a.push("</tr></tbody>"),a.join("")})}},vbox:function(a,b,c,d,e){if(!(3>arguments.length)){this._||(this._={});var f=this._.children=b,g=e&&e.width||null,h=e&&e.heights||null;CKEDITOR.ui.dialog.uiElement.call(this,a,e||{type:"vbox"},d,"div",null,{role:"presentation"},function(){var b=['<table role="presentation" cellspacing="0" border="0" '];b.push('style="'),e&&e.expand&&b.push("height:100%;"),b.push("width:"+o(g||"100%"),";"),CKEDITOR.env.webkit&&b.push("float:none;"),b.push('"'),b.push('align="',CKEDITOR.tools.htmlEncode(e&&e.align||("ltr"==a.getParentEditor().lang.dir?"left":"right")),'" '),b.push("><tbody>");for(var d=0;d<c.length;d++){var i=[];b.push('<tr><td role="presentation" '),g&&i.push("width:"+o(g||"100%")),h?i.push("height:"+o(h[d])):e&&e.expand&&i.push("height:"+Math.floor(100/c.length)+"%"),e&&void 0!==e.padding&&i.push("padding:"+o(e.padding)),CKEDITOR.env.ie&&CKEDITOR.env.quirks&&f[d].align&&i.push("text-align:"+f[d].align),0<i.length&&b.push('style="',i.join("; "),'" '),b.push(' class="cke_dialog_ui_vbox_child">',c[d],"</td></tr>")}return b.push("</tbody></table>"),b.join("")})}}}}(),CKEDITOR.ui.dialog.uiElement.prototype={getElement:function(){return CKEDITOR.document.getById(this.domId)},getInputElement:function(){return this.getElement()},getDialog:function(){return this._.dialog},setValue:function(a,b){return this.getInputElement().setValue(a),!b&&this.fire("change",{value:a}),this},getValue:function(){return this.getInputElement().getValue()},isChanged:function(){return!1},selectParentTab:function(){for(var a=this.getInputElement();(a=a.getParent())&&-1==a.$.className.search("cke_dialog_page_contents"););return a?(a=a.getAttribute("name"),this._.dialog._.currentTabId!=a&&this._.dialog.selectPage(a),this):this},focus:function(){return this.selectParentTab().getInputElement().focus(),this},registerEvents:function(a){var b,c,d=/^on([A-Z]\w+)/,e=function(a,b,c,d){b.on("load",function(){a.getInputElement().on(c,d,a)})};for(c in a)(b=c.match(d))&&(this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,a[c]):e(this,this._.dialog,b[1].toLowerCase(),a[c]));return this},eventProcessors:{onLoad:function(a,b){a.on("load",b,this)},onShow:function(a,b){a.on("show",b,this)},onHide:function(a,b){a.on("hide",b,this)}},accessKeyDown:function(){this.focus()},accessKeyUp:function(){},disable:function(){var a=this.getElement();this.getInputElement().setAttribute("disabled","true"),a.addClass("cke_disabled")},enable:function(){var a=this.getElement();this.getInputElement().removeAttribute("disabled"),a.removeClass("cke_disabled")},isEnabled:function(){return!this.getElement().hasClass("cke_disabled")},isVisible:function(){return this.getInputElement().isVisible()},isFocusable:function(){return!(!this.isEnabled()||!this.isVisible())}},CKEDITOR.ui.dialog.hbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getChild:function(a){return 1>arguments.length?this._.children.concat():(a.splice||(a=[a]),2>a.length?this._.children[a[0]]:this._.children[a[0]]&&this._.children[a[0]].getChild?this._.children[a[0]].getChild(a.slice(1,a.length)):null)}},!0),CKEDITOR.ui.dialog.vbox.prototype=new CKEDITOR.ui.dialog.hbox,function(){var a={build:function(a,b,c){for(var d,e=b.children,f=[],g=[],h=0;h<e.length&&(d=e[h]);h++){var i=[];f.push(i),g.push(CKEDITOR.dialog._.uiElementBuilders[d.type].build(a,d,i))}return new CKEDITOR.ui.dialog[b.type](a,g,f,c,b)}};CKEDITOR.dialog.addUIElement("hbox",a),CKEDITOR.dialog.addUIElement("vbox",a)}(),CKEDITOR.dialogCommand=function(a,b){this.dialogName=a,CKEDITOR.tools.extend(this,b,!0)},CKEDITOR.dialogCommand.prototype={exec:function(a){a.openDialog(this.dialogName)},canUndo:!1,editorFocus:1},function(){var a=/^([a]|[^a])+$/,b=/^\d*$/,c=/^\d*(?:\.\d+)?$/,d=/^(((\d*(\.\d+))|(\d*))(px|\%)?)?$/,e=/^(((\d*(\.\d+))|(\d*))(px|em|ex|in|cm|mm|pt|pc|\%)?)?$/i,f=/^(\s*[\w-]+\s*:\s*[^:;]+(?:;|$))*$/;CKEDITOR.VALIDATE_OR=1,CKEDITOR.VALIDATE_AND=2,CKEDITOR.dialog.validate={functions:function(){var a=arguments;return function(){var b,c,d=this&&this.getValue?this.getValue():a[0],e=CKEDITOR.VALIDATE_AND,f=[];for(c=0;c<a.length&&"function"==typeof a[c];c++)f.push(a[c]);c<a.length&&"string"==typeof a[c]&&(b=a[c],c++),c<a.length&&"number"==typeof a[c]&&(e=a[c]);var g=e==CKEDITOR.VALIDATE_AND;for(c=0;c<f.length;c++)g=e==CKEDITOR.VALIDATE_AND?g&&f[c](d):g||f[c](d);return g?!0:b}},regex:function(a,b){return function(c){return c=this&&this.getValue?this.getValue():c,a.test(c)?!0:b}},notEmpty:function(b){return this.regex(a,b)},integer:function(a){return this.regex(b,a)},number:function(a){return this.regex(c,a)},cssLength:function(a){return this.functions(function(a){return e.test(CKEDITOR.tools.trim(a))},a)},htmlLength:function(a){return this.functions(function(a){return d.test(CKEDITOR.tools.trim(a))},a)},inlineStyle:function(a){return this.functions(function(a){return f.test(CKEDITOR.tools.trim(a))},a)},equals:function(a,b){return this.functions(function(b){return b==a},b)},notEqual:function(a,b){return this.functions(function(b){return b!=a},b)}},CKEDITOR.on("instanceDestroyed",function(a){if(CKEDITOR.tools.isEmpty(CKEDITOR.instances)){for(var b;b=CKEDITOR.dialog._.currentTop;)b.hide();for(var c in x)x[c].remove();x={}}a=a.editor._.storedDialogs;for(var d in a)a[d].destroy()})}(),CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{openDialog:function(a,b){var c=null,d=CKEDITOR.dialog._.dialogDefinitions[a];if(null===CKEDITOR.dialog._.currentTop&&m(this),"function"==typeof d)c=this._.storedDialogs||(this._.storedDialogs={}),c=c[a]||(c[a]=new CKEDITOR.dialog(this,a)),b&&b.call(c,c),c.show();else{if("failed"==d)throw n(this),Error('[CKEDITOR.dialog.openDialog] Dialog "'+a+'" failed when loading definition.');"string"==typeof d&&CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(d),function(){"function"!=typeof CKEDITOR.dialog._.dialogDefinitions[a]&&(CKEDITOR.dialog._.dialogDefinitions[a]="failed"),this.openDialog(a,b)},this,0,1)}return CKEDITOR.skin.loadPart("dialog"),c}})}(),CKEDITOR.plugins.add("dialog",{requires:"dialogui",init:function(a){a.on("doubleclick",function(b){b.data.dialog&&a.openDialog(b.data.dialog)},null,null,999)}}),function(){CKEDITOR.plugins.add("a11yhelp",{requires:"dialog",availableLangs:{af:1,ar:1,bg:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,fr:1,"fr-ca":1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,sr:1,"sr-latn":1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},init:function(a){var b=this;a.addCommand("a11yHelp",{exec:function(){var c=a.langCode,c=b.availableLangs[c]?c:b.availableLangs[c.replace(/-.*/,"")]?c.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(b.path+"dialogs/lang/"+c+".js"),function(){a.lang.a11yhelp=b.langEntries[c],a.openDialog("a11yHelp")})},modes:{wysiwyg:1,source:1},readOnly:1,canUndo:!1}),a.setKeystroke(CKEDITOR.ALT+48,"a11yHelp"),CKEDITOR.dialog.add("a11yHelp",this.path+"dialogs/a11yhelp.js"),a.on("ariaEditorHelpLabel",function(b){b.data.label=a.lang.common.editorHelp})}})}(),CKEDITOR.plugins.add("about",{requires:"dialog",init:function(a){var b=a.addCommand("about",new CKEDITOR.dialogCommand("about"));b.modes={wysiwyg:1,source:1},b.canUndo=!1,b.readOnly=1,a.ui.addButton&&a.ui.addButton("About",{label:a.lang.about.title,command:"about",toolbar:"about"}),CKEDITOR.dialog.add("about",this.path+"dialogs/about.js")}}),CKEDITOR.plugins.add("basicstyles",{init:function(a){var b=0,c=function(c,e,f,g){if(g){g=new CKEDITOR.style(g);var h=d[f];h.unshift(g),a.attachStyleStateChange(g,function(b){!a.readOnly&&a.getCommand(f).setState(b)}),a.addCommand(f,new CKEDITOR.styleCommand(g,{contentForms:h})),a.ui.addButton&&a.ui.addButton(c,{label:e,command:f,toolbar:"basicstyles,"+(b+=10)})}},d={bold:["strong","b",["span",function(a){return a=a.styles["font-weight"],"bold"==a||+a>=700}]],italic:["em","i",["span",function(a){return"italic"==a.styles["font-style"]}]],underline:["u",["span",function(a){return"underline"==a.styles["text-decoration"]}]],strike:["s","strike",["span",function(a){return"line-through"==a.styles["text-decoration"]}]],subscript:["sub"],superscript:["sup"]},e=a.config,f=a.lang.basicstyles;c("Bold",f.bold,"bold",e.coreStyles_bold),c("Italic",f.italic,"italic",e.coreStyles_italic),c("Underline",f.underline,"underline",e.coreStyles_underline),c("Strike",f.strike,"strike",e.coreStyles_strike),c("Subscript",f.subscript,"subscript",e.coreStyles_subscript),c("Superscript",f.superscript,"superscript",e.coreStyles_superscript),a.setKeystroke([[CKEDITOR.CTRL+66,"bold"],[CKEDITOR.CTRL+73,"italic"],[CKEDITOR.CTRL+85,"underline"]])}}),CKEDITOR.config.coreStyles_bold={element:"strong",overrides:"b"},CKEDITOR.config.coreStyles_italic={element:"em",overrides:"i"},CKEDITOR.config.coreStyles_underline={element:"u"},CKEDITOR.config.coreStyles_strike={element:"s",overrides:"strike"},CKEDITOR.config.coreStyles_subscript={element:"sub"},CKEDITOR.config.coreStyles_superscript={element:"sup"},function(){var a={exec:function(a){var b=a.getCommand("blockquote").state,c=a.getSelection(),d=c&&c.getRanges()[0];if(d){var e=c.createBookmarks();if(CKEDITOR.env.ie){var f,g=e[0].startNode,h=e[0].endNode;if(g&&"blockquote"==g.getParent().getName())for(f=g;f=f.getNext();)if(f.type==CKEDITOR.NODE_ELEMENT&&f.isBlockBoundary()){g.move(f,!0);break}if(h&&"blockquote"==h.getParent().getName())for(f=h;f=f.getPrevious();)if(f.type==CKEDITOR.NODE_ELEMENT&&f.isBlockBoundary()){h.move(f);break}}var i=d.createIterator();if(i.enlargeBr=a.config.enterMode!=CKEDITOR.ENTER_BR,b==CKEDITOR.TRISTATE_OFF){for(g=[];b=i.getNextParagraph();)g.push(b);for(1>g.length&&(b=a.document.createElement(a.config.enterMode==CKEDITOR.ENTER_P?"p":"div"),h=e.shift(),d.insertNode(b),b.append(new CKEDITOR.dom.text("\ufeff",a.document)),d.moveToBookmark(h),d.selectNodeContents(b),d.collapse(!0),h=d.createBookmark(),g.push(b),e.unshift(h)),f=g[0].getParent(),d=[],h=0;h<g.length;h++)b=g[h],f=f.getCommonAncestor(b.getParent());for(b={table:1,tbody:1,tr:1,ol:1,ul:1};b[f.getName()];)f=f.getParent();for(h=null;0<g.length;){for(b=g.shift();!b.getParent().equals(f);)b=b.getParent();b.equals(h)||d.push(b),h=b}for(;0<d.length;)if(b=d.shift(),"blockquote"==b.getName()){for(h=new CKEDITOR.dom.documentFragment(a.document);b.getFirst();)h.append(b.getFirst().remove()),g.push(h.getLast());h.replace(b)}else g.push(b);for(d=a.document.createElement("blockquote"),d.insertBefore(g[0]);0<g.length;)b=g.shift(),d.append(b)}else if(b==CKEDITOR.TRISTATE_ON){for(h=[],f={};b=i.getNextParagraph();){for(g=d=null;b.getParent();){if("blockquote"==b.getParent().getName()){d=b.getParent(),g=b;break}b=b.getParent()}d&&g&&!g.getCustomData("blockquote_moveout")&&(h.push(g),CKEDITOR.dom.element.setMarker(f,g,"blockquote_moveout",!0))}for(CKEDITOR.dom.element.clearAllMarkers(f),b=[],g=[],f={};0<h.length;)i=h.shift(),d=i.getParent(),i.getPrevious()?i.getNext()?(i.breakParent(i.getParent()),g.push(i.getNext())):i.remove().insertAfter(d):i.remove().insertBefore(d),d.getCustomData("blockquote_processed")||(g.push(d),CKEDITOR.dom.element.setMarker(f,d,"blockquote_processed",!0)),b.push(i);for(CKEDITOR.dom.element.clearAllMarkers(f),h=g.length-1;h>=0;h--){d=g[h];a:{f=d;for(var i=0,j=f.getChildCount(),k=void 0;j>i&&(k=f.getChild(i));i++)if(k.type==CKEDITOR.NODE_ELEMENT&&k.isBlockBoundary()){f=!1;break a}f=!0}f&&d.remove()}if(a.config.enterMode==CKEDITOR.ENTER_BR)for(d=!0;b.length;)if(i=b.shift(),"div"==i.getName()){for(h=new CKEDITOR.dom.documentFragment(a.document),!d||!i.getPrevious()||i.getPrevious().type==CKEDITOR.NODE_ELEMENT&&i.getPrevious().isBlockBoundary()||h.append(a.document.createElement("br")),d=i.getNext()&&!(i.getNext().type==CKEDITOR.NODE_ELEMENT&&i.getNext().isBlockBoundary());i.getFirst();)i.getFirst().remove().appendTo(h);d&&h.append(a.document.createElement("br")),h.replace(i),d=!1}}c.selectBookmarks(e),a.focus()}},refresh:function(a,b){this.setState(a.elementPath(b.block||b.blockLimit).contains("blockquote",1)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)},context:"blockquote",allowedContent:"blockquote",requiredContent:"blockquote"};CKEDITOR.plugins.add("blockquote",{init:function(b){b.blockless||(b.addCommand("blockquote",a),b.ui.addButton&&b.ui.addButton("Blockquote",{label:b.lang.blockquote.toolbar,command:"blockquote",toolbar:"blocks,10"}))}})}(),function(){function a(a,b,c){return b.type||(b.type="auto"),c&&!1===a.fire("beforePaste",b)||!b.dataValue&&b.dataTransfer.isEmpty()?!1:(b.dataValue||(b.dataValue=""),CKEDITOR.env.gecko&&"drop"==b.method&&a.toolbox&&a.once("afterPaste",function(){a.toolbox.focus()}),a.fire("paste",b))}function b(b){function c(){var a=b.editable();if(CKEDITOR.plugins.clipboard.isCustomCopyCutSupported){var c=function(a){b.readOnly&&"cut"==a.name||p.initPasteDataTransfer(a,b),a.data.preventDefault()};a.on("copy",c),a.on("cut",c),a.on("cut",function(){b.readOnly||b.extractSelectedHtml()},null,null,999)}a.on(p.mainPasteEvent,function(a){"beforepaste"==p.mainPasteEvent&&q||m(a)}),"beforepaste"==p.mainPasteEvent&&(a.on("paste",function(a){r||(f(),a.data.preventDefault(),m(a),h("paste")||b.openDialog("paste"))}),a.on("contextmenu",g,null,null,0),a.on("beforepaste",function(a){!a.data||a.data.$.ctrlKey||a.data.$.shiftKey||g()},null,null,0)),a.on("beforecut",function(){!q&&i(b)});var d;a.attachListener(CKEDITOR.env.ie?a:b.document.getDocumentElement(),"mouseup",function(){d=setTimeout(function(){n()},0)}),b.on("destroy",function(){clearTimeout(d)}),a.on("keyup",n)}function d(a){return{type:a,canUndo:"cut"==a,startDisabled:!0,exec:function(){"cut"==this.type&&i();var a,c=this.type;if(CKEDITOR.env.ie)a=h(c);else try{a=b.document.$.execCommand(c,!1,null)}catch(d){a=!1}return a||b.showNotification(b.lang.clipboard[this.type+"Error"]),a}}}function e(){return{canUndo:!1,async:!0,exec:function(b,c){var d=this,e=function(c,e){c&&a(b,c,!!e),b.fire("afterCommandExec",{name:"paste",command:d,returnValue:!!c})};"string"==typeof c?e({dataValue:c,method:"paste",dataTransfer:p.initPasteDataTransfer()},1):b.getClipboardData(e)}}}function f(){r=1,setTimeout(function(){r=0},100)}function g(){q=1,setTimeout(function(){q=0},10)}function h(a){var c=b.document,d=c.getBody(),e=!1,f=function(){e=!0};return d.on(a,f),7<CKEDITOR.env.version?c.$.execCommand(a):c.$.selection.createRange().execCommand(a),d.removeListener(a,f),e}function i(){if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var a,c,d,e=b.getSelection();e.getType()==CKEDITOR.SELECTION_ELEMENT&&(a=e.getSelectedElement())&&(c=e.getRanges()[0],d=b.document.createText(""),d.insertBefore(a),c.setStartBefore(d),c.setEndAfter(a),e.selectRanges([c]),setTimeout(function(){a.getParent()&&(d.remove(),e.selectElement(a))},0))}}function j(a,c){var d,e=b.document,f=b.editable(),g=function(a){a.cancel()};if(!e.getById("cke_pastebin")){var h=b.getSelection(),i=h.createBookmarks();CKEDITOR.env.ie&&h.root.fire("selectionchange");var j=new CKEDITOR.dom.element(!CKEDITOR.env.webkit&&!f.is("body")||CKEDITOR.env.ie?"div":"body",e);j.setAttributes({id:"cke_pastebin","data-cke-temp":"1"});var k=0,e=e.getWindow();CKEDITOR.env.webkit?(f.append(j),j.addClass("cke_editable"), +f.is("body")||(k="static"!=f.getComputedStyle("position")?f:CKEDITOR.dom.element.get(f.$.offsetParent),k=k.getDocumentPosition().y)):f.getAscendant(CKEDITOR.env.ie?"body":"html",1).append(j),j.setStyles({position:"absolute",top:e.getScrollPosition().y-k+10+"px",width:"1px",height:Math.max(1,e.getViewPaneSize().height-20)+"px",overflow:"hidden",margin:0,padding:0}),CKEDITOR.env.safari&&j.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select","text")),(k=j.getParent().isReadOnly())?(j.setOpacity(0),j.setAttribute("contenteditable",!0)):j.setStyle("ltr"==b.config.contentsLangDirection?"left":"right","-10000px"),b.on("selectionChange",g,null,null,0),(CKEDITOR.env.webkit||CKEDITOR.env.gecko)&&(d=f.once("blur",g,null,null,-100)),k&&j.focus(),k=new CKEDITOR.dom.range(j),k.selectNodeContents(j);var l=k.select();CKEDITOR.env.ie&&(d=f.once("blur",function(){b.lockSelection(l)}));var m=CKEDITOR.document.getWindow().getScrollPosition().y;setTimeout(function(){CKEDITOR.env.webkit&&(CKEDITOR.document.getBody().$.scrollTop=m),d&&d.removeListener(),CKEDITOR.env.ie&&f.focus(),h.selectBookmarks(i),j.remove();var a;CKEDITOR.env.webkit&&(a=j.getFirst())&&a.is&&a.hasClass("Apple-style-span")&&(j=a),b.removeListener("selectionChange",g),c(j.getHtml())},0)}}function k(){if("paste"==p.mainPasteEvent)return b.fire("beforePaste",{type:"auto",method:"paste"}),!1;b.focus(),f();var a=b.focusManager;return a.lock(),b.editable().fire(p.mainPasteEvent)&&!h("paste")?(a.unlock(),!1):(a.unlock(),!0)}function l(a){if("wysiwyg"==b.mode)switch(a.data.keyCode){case CKEDITOR.CTRL+86:case CKEDITOR.SHIFT+45:a=b.editable(),f(),"paste"==p.mainPasteEvent&&a.fire("beforepaste");break;case CKEDITOR.CTRL+88:case CKEDITOR.SHIFT+46:b.fire("saveSnapshot"),setTimeout(function(){b.fire("saveSnapshot")},50)}}function m(c){var d={type:"auto",method:"paste",dataTransfer:p.initPasteDataTransfer(c)};d.dataTransfer.cacheData();var e=!1!==b.fire("beforePaste",d);e&&p.canClipboardApiBeTrusted(d.dataTransfer,b)?(c.data.preventDefault(),setTimeout(function(){a(b,d)},0)):j(c,function(c){d.dataValue=c.replace(/<span[^>]+data-cke-bookmark[^<]*?<\/span>/gi,""),e&&a(b,d)})}function n(){if("wysiwyg"==b.mode){var a=o("paste");b.getCommand("cut").setState(o("cut")),b.getCommand("copy").setState(o("copy")),b.getCommand("paste").setState(a),b.fire("pasteState",a)}}function o(a){if(s&&a in{paste:1,cut:1})return CKEDITOR.TRISTATE_DISABLED;if("paste"==a)return CKEDITOR.TRISTATE_OFF;a=b.getSelection();var c=a.getRanges();return a.getType()==CKEDITOR.SELECTION_NONE||1==c.length&&c[0].collapsed?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_OFF}var p=CKEDITOR.plugins.clipboard,q=0,r=0,s=0;!function(){b.on("key",l),b.on("contentDom",c),b.on("selectionChange",function(a){s=a.data.selection.getRanges()[0].checkReadOnly(),n()}),b.contextMenu&&b.contextMenu.addListener(function(a,b){return s=b.getRanges()[0].checkReadOnly(),{cut:o("cut"),copy:o("copy"),paste:o("paste")}})}(),function(){function a(a,c,d,e,f){var g=b.lang.clipboard[c];b.addCommand(c,d),b.ui.addButton&&b.ui.addButton(a,{label:g,command:c,toolbar:"clipboard,"+e}),b.addMenuItems&&b.addMenuItem(c,{label:g,command:c,group:"clipboard",order:f})}a("Cut","cut",d("cut"),10,1),a("Copy","copy",d("copy"),20,4),a("Paste","paste",e(),30,8)}(),b.getClipboardData=function(a,c){function d(a){a.removeListener(),a.cancel(),c(a.data)}function e(a){a.removeListener(),a.cancel(),i=!0,c({type:h,dataValue:a.data.dataValue,dataTransfer:a.data.dataTransfer,method:"paste"})}function f(){this.customTitle=a&&a.title}var g=!1,h="auto",i=!1;c||(c=a,a=null),b.on("paste",d,null,null,0),b.on("beforePaste",function(a){a.removeListener(),g=!0,h=a.data.type},null,null,1e3),!1===k()&&(b.removeListener("paste",d),g&&b.fire("pasteDialog",f)?(b.on("pasteDialogCommit",e),b.on("dialogHide",function(a){a.removeListener(),a.data.removeListener("pasteDialogCommit",e),setTimeout(function(){i||c(null)},10)})):c(null))}}function c(a){if(CKEDITOR.env.webkit){if(!a.match(/^[^<]*$/g)&&!a.match(/^(<div><br( ?\/)?><\/div>|<div>[^<]*<\/div>)*$/gi))return"html"}else if(CKEDITOR.env.ie){if(!a.match(/^([^<]|<br( ?\/)?>)*$/gi)&&!a.match(/^(<p>([^<]|<br( ?\/)?>)*<\/p>|(\r\n))*$/gi))return"html"}else{if(!CKEDITOR.env.gecko)return"html";if(!a.match(/^([^<]|<br( ?\/)?>)*$/gi))return"html"}return"htmlifiedtext"}function d(a,b){function c(a){return CKEDITOR.tools.repeat("</p><p>",~~(a/2))+(1==a%2?"<br>":"")}return b=b.replace(/\s+/g," ").replace(/> +</g,"><").replace(/<br ?\/>/gi,"<br>"),b=b.replace(/<\/?[A-Z]+>/g,function(a){return a.toLowerCase()}),b.match(/^[^<]$/)?b:(CKEDITOR.env.webkit&&-1<b.indexOf("<div>")&&(b=b.replace(/^(<div>(<br>|)<\/div>)(?!$|(<div>(<br>|)<\/div>))/g,"<br>").replace(/^(<div>(<br>|)<\/div>){2}(?!$)/g,"<div></div>"),b.match(/<div>(<br>|)<\/div>/)&&(b="<p>"+b.replace(/(<div>(<br>|)<\/div>)+/g,function(a){return c(a.split("</div><div>").length+1)})+"</p>"),b=b.replace(/<\/div><div>/g,"<br>"),b=b.replace(/<\/?div>/g,"")),CKEDITOR.env.gecko&&a.enterMode!=CKEDITOR.ENTER_BR&&(CKEDITOR.env.gecko&&(b=b.replace(/^<br><br>$/,"<br>")),-1<b.indexOf("<br><br>")&&(b="<p>"+b.replace(/(<br>){2,}/g,function(a){return c(a.length/4)})+"</p>")),g(a,b))}function e(){function a(){var a,b={};for(a in CKEDITOR.dtd)"$"!=a.charAt(0)&&"div"!=a&&"span"!=a&&(b[a]=1);return b}var b={};return{get:function(c){return"plain-text"==c?b.plainText||(b.plainText=new CKEDITOR.filter("br")):"semantic-content"==c?((c=b.semanticContent)||(c=new CKEDITOR.filter,c.allow({$1:{elements:a(),attributes:!0,styles:!1,classes:!1}}),c=b.semanticContent=c),c):c?new CKEDITOR.filter(c):null}}}function f(a,b,c){b=CKEDITOR.htmlParser.fragment.fromHtml(b);var d=new CKEDITOR.htmlParser.basicWriter;return c.applyTo(b,!0,!1,a.activeEnterMode),b.writeHtml(d),d.getHtml()}function g(a,b){return a.enterMode==CKEDITOR.ENTER_BR?b=b.replace(/(<\/p><p>)+/g,function(a){return CKEDITOR.tools.repeat("<br>",a.length/7*2)}).replace(/<\/?p>/g,""):a.enterMode==CKEDITOR.ENTER_DIV&&(b=b.replace(/<(\/)?p>/g,"<$1div>")),b}function h(a){a.data.preventDefault(),a.data.$.dataTransfer.dropEffect="none"}function i(b){var c=CKEDITOR.plugins.clipboard;b.on("contentDom",function(){function d(c,d,e){d.select(),a(b,{dataTransfer:e,method:"drop"},1),e.sourceEditor.fire("saveSnapshot"),e.sourceEditor.editable().extractHtmlFromRange(c),e.sourceEditor.getSelection().selectRanges([c]),e.sourceEditor.fire("saveSnapshot")}function e(d,e){d.select(),a(b,{dataTransfer:e,method:"drop"},1),c.resetDragDataTransfer()}function f(a,c,d){var e={$:a.data.$,target:a.data.getTarget()};c&&(e.dragRange=c),d&&(e.dropRange=d),!1===b.fire(a.name,e)&&a.data.preventDefault()}function g(a){return a.type!=CKEDITOR.NODE_ELEMENT&&(a=a.getParent()),a.getChildCount()}var h=b.editable(),i=CKEDITOR.plugins.clipboard.getDropTarget(b),j=b.ui.space("top"),k=b.ui.space("bottom");c.preventDefaultDropOnElement(j),c.preventDefaultDropOnElement(k),h.attachListener(i,"dragstart",f),h.attachListener(b,"dragstart",c.resetDragDataTransfer,c,null,1),h.attachListener(b,"dragstart",function(a){c.initDragDataTransfer(a,b)},null,null,2),h.attachListener(b,"dragstart",function(){var a=c.dragRange=b.getSelection().getRanges()[0];CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(c.dragStartContainerChildCount=a?g(a.startContainer):null,c.dragEndContainerChildCount=a?g(a.endContainer):null)},null,null,100),h.attachListener(i,"dragend",f),h.attachListener(b,"dragend",c.initDragDataTransfer,c,null,1),h.attachListener(b,"dragend",c.resetDragDataTransfer,c,null,100),h.attachListener(i,"dragover",function(a){var b=a.data.getTarget();b&&b.is&&b.is("html")?a.data.preventDefault():CKEDITOR.env.ie&&CKEDITOR.plugins.clipboard.isFileApiSupported&&a.data.$.dataTransfer.types.contains("Files")&&a.data.preventDefault()}),h.attachListener(i,"drop",function(a){if(!a.data.$.defaultPrevented){a.data.preventDefault();var d=a.data.getTarget();if(!d.isReadOnly()||d.type==CKEDITOR.NODE_ELEMENT&&d.is("html")){var d=c.getRangeAtDropPosition(a,b),e=c.dragRange;d&&f(a,e,d)}}},null,null,9999),h.attachListener(b,"drop",c.initDragDataTransfer,c,null,1),h.attachListener(b,"drop",function(a){if(a=a.data){var f=a.dropRange,g=a.dragRange,h=a.dataTransfer;h.getTransferType(b)==CKEDITOR.DATA_TRANSFER_INTERNAL?setTimeout(function(){c.internalDrop(g,f,h,b)},0):h.getTransferType(b)==CKEDITOR.DATA_TRANSFER_CROSS_EDITORS?d(g,f,h):e(f,h)}},null,null,9999)})}CKEDITOR.plugins.add("clipboard",{requires:"dialog",init:function(a){var g,h=e();a.config.forcePasteAsPlainText?g="plain-text":a.config.pasteFilter?g=a.config.pasteFilter:!CKEDITOR.env.webkit||"pasteFilter"in a.config||(g="semantic-content"),a.pasteFilter=h.get(g),b(a),i(a),CKEDITOR.dialog.add("paste",CKEDITOR.getUrl(this.path+"dialogs/paste.js")),a.on("paste",function(b){if(b.data.dataTransfer||(b.data.dataTransfer=new CKEDITOR.plugins.clipboard.dataTransfer),!b.data.dataValue){var c=b.data.dataTransfer,d=c.getData("text/html");d?(b.data.dataValue=d,b.data.type="html"):(d=c.getData("text/plain"))&&(b.data.dataValue=a.editable().transformPlainTextToHtml(d),b.data.type="text")}},null,null,1),a.on("paste",function(a){var b=a.data.dataValue,c=CKEDITOR.dtd.$block;if(-1<b.indexOf("Apple-")&&(b=b.replace(/<span class="Apple-converted-space"> <\/span>/gi," "),"html"!=a.data.type&&(b=b.replace(/<span class="Apple-tab-span"[^>]*>([^<]*)<\/span>/gi,function(a,b){return b.replace(/\t/g," ")})),-1<b.indexOf('<br class="Apple-interchange-newline">')&&(a.data.startsWithEOL=1,a.data.preSniffing="html",b=b.replace(/<br class="Apple-interchange-newline">/,"")),b=b.replace(/(<[^>]+) class="Apple-[^"]*"/gi,"$1")),b.match(/^<[^<]+cke_(editable|contents)/i)){var d,e,f=new CKEDITOR.dom.element("div");for(f.setHtml(b);1==f.getChildCount()&&(d=f.getFirst())&&d.type==CKEDITOR.NODE_ELEMENT&&(d.hasClass("cke_editable")||d.hasClass("cke_contents"));)f=e=d;e&&(b=e.getHtml().replace(/<br>$/i,""))}CKEDITOR.env.ie?b=b.replace(/^ (?: |\r\n)?<(\w+)/g,function(b,d){return d.toLowerCase()in c?(a.data.preSniffing="html","<"+d):b}):CKEDITOR.env.webkit?b=b.replace(/<\/(\w+)><div><br><\/div>$/,function(b,d){return d in c?(a.data.endsWithEOL=1,"</"+d+">"):b}):CKEDITOR.env.gecko&&(b=b.replace(/(\s)<br>$/,"$1")),a.data.dataValue=b},null,null,3),a.on("paste",function(b){b=b.data;var e,g=b.type,i=b.dataValue,j=a.config.clipboard_defaultContentType||"html",k=b.dataTransfer.getTransferType(a);e="html"==g||"html"==b.preSniffing?"html":c(i),"htmlifiedtext"==e&&(i=d(a.config,i)),"text"==g&&"html"==e?i=f(a,i,h.get("plain-text")):k==CKEDITOR.DATA_TRANSFER_EXTERNAL&&a.pasteFilter&&!b.dontFilter&&(i=f(a,i,a.pasteFilter)),b.startsWithEOL&&(i='<br data-cke-eol="1">'+i),b.endsWithEOL&&(i+='<br data-cke-eol="1">'),"auto"==g&&(g="html"==e||"html"==j?"html":"text"),b.type=g,b.dataValue=i,delete b.preSniffing,delete b.startsWithEOL,delete b.endsWithEOL},null,null,6),a.on("paste",function(b){b=b.data,b.dataValue&&(a.insertHtml(b.dataValue,b.type,b.range),setTimeout(function(){a.fire("afterPaste")},0))},null,null,1e3),a.on("pasteDialog",function(b){setTimeout(function(){a.openDialog("paste",b.data)},0)})}}),CKEDITOR.plugins.clipboard={isCustomCopyCutSupported:!CKEDITOR.env.ie&&!CKEDITOR.env.iOS,isCustomDataTypesSupported:!CKEDITOR.env.ie,isFileApiSupported:!CKEDITOR.env.ie||9<CKEDITOR.env.version,mainPasteEvent:CKEDITOR.env.ie&&!CKEDITOR.env.edge?"beforepaste":"paste",canClipboardApiBeTrusted:function(a,b){return!!(a.getTransferType(b)!=CKEDITOR.DATA_TRANSFER_EXTERNAL||CKEDITOR.env.chrome&&!a.isEmpty()||CKEDITOR.env.gecko&&(a.getData("text/html")||a.getFilesCount()))},getDropTarget:function(a){var b=a.editable();return CKEDITOR.env.ie&&9>CKEDITOR.env.version||b.isInline()?b:a.document},fixSplitNodesAfterDrop:function(a,b,c,d){function e(a,c,d){var e=a;return e.type==CKEDITOR.NODE_TEXT&&(e=a.getParent()),e.equals(c)&&d!=c.getChildCount()?(a=b.startContainer.getChild(b.startOffset-1),c=b.startContainer.getChild(b.startOffset),a&&a.type==CKEDITOR.NODE_TEXT&&c&&c.type==CKEDITOR.NODE_TEXT&&(d=a.getLength(),a.setText(a.getText()+c.getText()),c.remove(),b.setStart(a,d),b.collapse(!0)),!0):void 0}var f=b.startContainer;"number"==typeof d&&"number"==typeof c&&f.type==CKEDITOR.NODE_ELEMENT&&(e(a.startContainer,f,c)||e(a.endContainer,f,d))},isDropRangeAffectedByDragRange:function(a,b){var c=b.startContainer,d=b.endOffset;return!!(a.endContainer.equals(c)&&a.endOffset<=d||a.startContainer.getParent().equals(c)&&a.startContainer.getIndex()<d||a.endContainer.getParent().equals(c)&&a.endContainer.getIndex()<d)},internalDrop:function(b,c,d,e){var f,g,h=CKEDITOR.plugins.clipboard,i=e.editable();e.fire("saveSnapshot"),e.fire("lockSnapshot",{dontUpdate:1}),CKEDITOR.env.ie&&10>CKEDITOR.env.version&&this.fixSplitNodesAfterDrop(b,c,h.dragStartContainerChildCount,h.dragEndContainerChildCount),(g=this.isDropRangeAffectedByDragRange(b,c))||(f=b.createBookmark(!1)),h=c.clone().createBookmark(!1),g&&(f=b.createBookmark(!1)),b=f.startNode,c=f.endNode,g=h.startNode,c&&b.getPosition(g)&CKEDITOR.POSITION_PRECEDING&&c.getPosition(g)&CKEDITOR.POSITION_FOLLOWING&&g.insertBefore(b),b=e.createRange(),b.moveToBookmark(f),i.extractHtmlFromRange(b,1),c=e.createRange(),c.moveToBookmark(h),a(e,{dataTransfer:d,method:"drop",range:c},1),e.fire("unlockSnapshot")},getRangeAtDropPosition:function(a,b){var c=a.data.$,d=c.clientX,e=c.clientY,f=b.getSelection(!0).getRanges()[0],g=b.createRange();if(a.data.testRange)return a.data.testRange;if(document.caretRangeFromPoint)c=b.document.$.caretRangeFromPoint(d,e),g.setStart(CKEDITOR.dom.node(c.startContainer),c.startOffset),g.collapse(!0);else if(c.rangeParent)g.setStart(CKEDITOR.dom.node(c.rangeParent),c.rangeOffset),g.collapse(!0);else{if(CKEDITOR.env.ie&&8<CKEDITOR.env.version&&f&&b.editable().hasFocus)return f;if(!document.body.createTextRange)return null;b.focus(),c=b.document.getBody().$.createTextRange();try{for(var h=!1,i=0;20>i&&!h;i++){if(!h)try{c.moveToPoint(d,e-i),h=!0}catch(j){}if(!h)try{c.moveToPoint(d,e+i),h=!0}catch(k){}}if(h){var l="cke-temp-"+(new Date).getTime();c.pasteHTML('<span id="'+l+'">​</span>');var m=b.document.getById(l);g.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START),m.remove()}else{var n,o=b.document.$.elementFromPoint(d,e),p=new CKEDITOR.dom.element(o);if(p.equals(b.editable())||"html"==p.getName())return f&&f.startContainer&&!f.startContainer.equals(b.editable())?f:null;n=p.getClientRect(),d<n.left?g.setStartAt(p,CKEDITOR.POSITION_AFTER_START):g.setStartAt(p,CKEDITOR.POSITION_BEFORE_END),g.collapse(!0)}}catch(q){return null}}return g},initDragDataTransfer:function(a,b){var c=a.data.$?a.data.$.dataTransfer:null,d=new this.dataTransfer(c,b);c?this.dragData&&d.id==this.dragData.id?d=this.dragData:this.dragData=d:this.dragData?d=this.dragData:this.dragData=d,a.data.dataTransfer=d},resetDragDataTransfer:function(){this.dragData=null},initPasteDataTransfer:function(a,b){if(this.isCustomCopyCutSupported&&a&&a.data&&a.data.$){var c=new this.dataTransfer(a.data.$.clipboardData,b);return this.copyCutData&&c.id==this.copyCutData.id?(c=this.copyCutData,c.$=a.data.$.clipboardData):this.copyCutData=c,c}return new this.dataTransfer(null,b)},preventDefaultDropOnElement:function(a){a&&a.on("dragover",h)}};var j=CKEDITOR.plugins.clipboard.isCustomDataTypesSupported?"cke/id":"Text";CKEDITOR.plugins.clipboard.dataTransfer=function(a,b){if(a&&(this.$=a),this._={metaRegExp:/^<meta.*?>/i,bodyRegExp:/<body(?:[\s\S]*?)>([\s\S]*)<\/body>/i,fragmentRegExp:/\x3c!--(?:Start|End)Fragment--\x3e/g,data:{},files:[],normalizeType:function(a){return a=a.toLowerCase(),"text"==a||"text/plain"==a?"Text":"url"==a?"URL":a}},this.id=this.getData(j),this.id||(this.id="Text"==j?"":"cke-"+CKEDITOR.tools.getUniqueId()),"Text"!=j)try{this.$.setData(j,this.id)}catch(c){}b&&(this.sourceEditor=b,this.setData("text/html",b.getSelectedHtml(1)),"Text"==j||this.getData("text/plain")||this.setData("text/plain",b.getSelection().getSelectedText()))},CKEDITOR.DATA_TRANSFER_INTERNAL=1,CKEDITOR.DATA_TRANSFER_CROSS_EDITORS=2,CKEDITOR.DATA_TRANSFER_EXTERNAL=3,CKEDITOR.plugins.clipboard.dataTransfer.prototype={getData:function(a){a=this._.normalizeType(a);var b=this._.data[a];if(void 0===b||null===b||""===b)try{b=this.$.getData(a)}catch(c){}return void 0!==b&&null!==b&&""!==b||(b=""),"text/html"==a?(b=b.replace(this._.metaRegExp,""),(a=this._.bodyRegExp.exec(b))&&a.length&&(b=a[1],b=b.replace(this._.fragmentRegExp,""))):"Text"==a&&CKEDITOR.env.gecko&&this.getFilesCount()&&"file://"==b.substring(0,7)&&(b=""),b},setData:function(a,b){if(a=this._.normalizeType(a),this._.data[a]=b,CKEDITOR.plugins.clipboard.isCustomDataTypesSupported||"URL"==a||"Text"==a){"Text"==j&&"Text"==a&&(this.id=b);try{this.$.setData(a,b)}catch(c){}}},getTransferType:function(a){return this.sourceEditor?this.sourceEditor==a?CKEDITOR.DATA_TRANSFER_INTERNAL:CKEDITOR.DATA_TRANSFER_CROSS_EDITORS:CKEDITOR.DATA_TRANSFER_EXTERNAL},cacheData:function(){function a(a){a=d._.normalizeType(a);var b=d.getData(a);b&&(d._.data[a]=b)}if(this.$){var b,c,d=this;if(CKEDITOR.plugins.clipboard.isCustomDataTypesSupported){if(this.$.types)for(b=0;b<this.$.types.length;b++)a(this.$.types[b])}else a("Text"),a("URL");if(c=this._getImageFromClipboard(),this.$&&this.$.files||c){for(this._.files=[],b=0;b<this.$.files.length;b++)this._.files.push(this.$.files[b]);0===this._.files.length&&c&&this._.files.push(c)}}},getFilesCount:function(){return this._.files.length?this._.files.length:this.$&&this.$.files&&this.$.files.length?this.$.files.length:this._getImageFromClipboard()?1:0},getFile:function(a){return this._.files.length?this._.files[a]:this.$&&this.$.files&&this.$.files.length?this.$.files[a]:0===a?this._getImageFromClipboard():void 0},isEmpty:function(){var a,b={};if(this.getFilesCount())return!1;for(a in this._.data)b[a]=1;if(this.$)if(CKEDITOR.plugins.clipboard.isCustomDataTypesSupported){if(this.$.types)for(var c=0;c<this.$.types.length;c++)b[this.$.types[c]]=1}else b.Text=1,b.URL=1;"Text"!=j&&(b[j]=0);for(a in b)if(b[a]&&""!==this.getData(a))return!1;return!0},_getImageFromClipboard:function(){var a;if(this.$&&this.$.items&&this.$.items[0])try{if((a=this.$.items[0].getAsFile())&&a.type)return a}catch(b){}}}}(),function(){CKEDITOR.plugins.add("panel",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_PANEL,CKEDITOR.ui.panel.handler)}}),CKEDITOR.UI_PANEL="panel",CKEDITOR.ui.panel=function(a,b){b&&CKEDITOR.tools.extend(this,b),CKEDITOR.tools.extend(this,{className:"",css:[]}),this.id=CKEDITOR.tools.getNextId(),this.document=a,this.isFramed=this.forceIFrame||this.css.length,this._={blocks:{}}},CKEDITOR.ui.panel.handler={create:function(a){return new CKEDITOR.ui.panel(a)}};var a=CKEDITOR.addTemplate("panel",'<div lang="{langCode}" id="{id}" dir={dir} class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}" style="z-index:{z-index}" role="presentation">{frame}</div>'),b=CKEDITOR.addTemplate("panel-frame",'<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>'),c=CKEDITOR.addTemplate("panel-frame-inner",'<!DOCTYPE html><html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}"><head>{css}</head><body class="cke_{dir}" style="margin:0;padding:0" onload="{onload}"></body></html>');CKEDITOR.ui.panel.prototype={render:function(d,e){this.getHolderElement=function(){var a=this._.holder;if(!a){if(this.isFramed){var a=this.document.getById(this.id+"_frame"),b=a.getParent(),a=a.getFrameDocument();CKEDITOR.env.iOS&&b.setStyles({overflow:"scroll","-webkit-overflow-scrolling":"touch"}),b=CKEDITOR.tools.addFunction(CKEDITOR.tools.bind(function(){this.isLoaded=!0,this.onLoad&&this.onLoad()},this)),a.write(c.output(CKEDITOR.tools.extend({css:CKEDITOR.tools.buildStyleHtml(this.css),onload:"window.parent.CKEDITOR.tools.callFunction("+b+");"},f))),a.getWindow().$.CKEDITOR=CKEDITOR,a.on("keydown",function(a){var b=a.data.getKeystroke(),c=this.document.getById(this.id).getAttribute("dir");this._.onKeyDown&&!1===this._.onKeyDown(b)?a.data.preventDefault():(27==b||b==("rtl"==c?39:37))&&this.onEscape&&!1===this.onEscape(b)&&a.data.preventDefault()},this),a=a.getBody(),a.unselectable(),CKEDITOR.env.air&&CKEDITOR.tools.callFunction(b)}else a=this.document.getById(this.id);this._.holder=a}return a};var f={editorId:d.id,id:this.id,langCode:d.langCode,dir:d.lang.dir,cls:this.className,frame:"",env:CKEDITOR.env.cssClass,"z-index":d.config.baseFloatZIndex+1};if(this.isFramed){var g=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())":"";f.frame=b.output({id:this.id+"_frame",src:g})}return g=a.output(f),e&&e.push(g),g},addBlock:function(a,b){return b=this._.blocks[a]=b instanceof CKEDITOR.ui.panel.block?b:new CKEDITOR.ui.panel.block(this.getHolderElement(),b),this._.currentBlock||this.showBlock(a),b},getBlock:function(a){return this._.blocks[a]},showBlock:function(a){a=this._.blocks[a];var b=this._.currentBlock,c=!this.forceIFrame||CKEDITOR.env.ie?this._.holder:this.document.getById(this.id+"_frame");return b&&b.hide(),this._.currentBlock=a,CKEDITOR.fire("ariaWidget",c),a._.focusIndex=-1,this._.onKeyDown=a.onKeyDown&&CKEDITOR.tools.bind(a.onKeyDown,a),a.show(),a},destroy:function(){this.element&&this.element.remove()}},CKEDITOR.ui.panel.block=CKEDITOR.tools.createClass({$:function(a,b){this.element=a.append(a.getDocument().createElement("div",{attributes:{tabindex:-1,"class":"cke_panel_block"},styles:{display:"none"}})),b&&CKEDITOR.tools.extend(this,b),this.element.setAttributes({role:this.attributes.role||"presentation","aria-label":this.attributes["aria-label"],title:this.attributes.title||this.attributes["aria-label"]}),this.keys={},this._.focusIndex=-1,this.element.disableContextMenu()},_:{markItem:function(a){-1!=a&&(a=this.element.getElementsByTag("a").getItem(this._.focusIndex=a),CKEDITOR.env.webkit&&a.getDocument().getWindow().focus(),a.focus(),this.onMark&&this.onMark(a))}},proto:{show:function(){this.element.setStyle("display","")},hide:function(){this.onHide&&!0===this.onHide.call(this)||this.element.setStyle("display","none")},onKeyDown:function(a,b){var c=this.keys[a];switch(c){case"next":for(var d,e=this._.focusIndex,c=this.element.getElementsByTag("a");d=c.getItem(++e);)if(d.getAttribute("_cke_focus")&&d.$.offsetWidth){this._.focusIndex=e,d.focus();break}return d||b?!1:(this._.focusIndex=-1,this.onKeyDown(a,1));case"prev":for(e=this._.focusIndex,c=this.element.getElementsByTag("a");e>0&&(d=c.getItem(--e));){if(d.getAttribute("_cke_focus")&&d.$.offsetWidth){this._.focusIndex=e,d.focus();break}d=null}return d||b?!1:(this._.focusIndex=c.count(),this.onKeyDown(a,1));case"click":case"mouseup":return e=this._.focusIndex,(d=e>=0&&this.element.getElementsByTag("a").getItem(e))&&(d.$[c]?d.$[c]():d.$["on"+c]()),!1}return!0}}})}(),CKEDITOR.plugins.add("floatpanel",{requires:"panel"}),function(){function a(a,c,d,e,f){f=CKEDITOR.tools.genKey(c.getUniqueId(),d.getUniqueId(),a.lang.dir,a.uiColor||"",e.css||"",f||"");var g=b[f];return g||(g=b[f]=new CKEDITOR.ui.panel(c,e),g.element=d.append(CKEDITOR.dom.element.createFromHtml(g.render(a),c)),g.element.setStyles({display:"none",position:"absolute"})),g}var b={};CKEDITOR.ui.floatPanel=CKEDITOR.tools.createClass({$:function(b,c,d,e){function f(){j.hide()}d.forceIFrame=1,d.toolbarRelated&&b.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&(c=CKEDITOR.document.getById("cke_"+b.name));var g=c.getDocument();e=a(b,g,c,d,e||0);var h=e.element,i=h.getFirst(),j=this;h.disableContextMenu(),this.element=h,this._={editor:b,panel:e,parentElement:c,definition:d,document:g,iframe:i,children:[],dir:b.lang.dir,showBlockParams:null},b.on("mode",f),b.on("resize",f),g.getWindow().on("resize",function(){this.reposition()},this)},proto:{addBlock:function(a,b){return this._.panel.addBlock(a,b)},addListBlock:function(a,b){return this._.panel.addListBlock(a,b)},getBlock:function(a){return this._.panel.getBlock(a)},showBlock:function(a,b,c,d,e,f){var g=this._.panel,h=g.showBlock(a);this._.showBlockParams=[].slice.call(arguments),this.allowBlur(!1);var i=this._.editor.editable();this._.returnFocus=i.hasFocus?i:new CKEDITOR.dom.element(CKEDITOR.document.$.activeElement),this._.hideTimeout=0;var j=this.element,i=this._.iframe,i=CKEDITOR.env.ie&&!CKEDITOR.env.edge?i:new CKEDITOR.dom.window(i.$.contentWindow),k=j.getDocument(),l=this._.parentElement.getPositionedAncestor(),m=b.getDocumentPosition(k),k=l?l.getDocumentPosition(k):{x:0,y:0},n="rtl"==this._.dir,o=m.x+(d||0)-k.x,p=m.y+(e||0)-k.y;!n||1!=c&&4!=c?n||2!=c&&3!=c||(o+=b.$.offsetWidth-1):o+=b.$.offsetWidth,3!=c&&4!=c||(p+=b.$.offsetHeight-1),this._.panel._.offsetParentId=b.getId(),j.setStyles({top:p+"px",left:0,display:""}),j.setOpacity(0),j.getFirst().removeStyle("width"),this._.editor.focusManager.add(i),this._.blurSet||(CKEDITOR.event.useCapture=!0,i.on("blur",function(a){function b(){delete this._.returnFocus,this.hide()}this.allowBlur()&&a.data.getPhase()==CKEDITOR.EVENT_PHASE_AT_TARGET&&this.visible&&!this._.activeChild&&(CKEDITOR.env.iOS?this._.hideTimeout||(this._.hideTimeout=CKEDITOR.tools.setTimeout(b,0,this)):b.call(this))},this),i.on("focus",function(){this._.focused=!0,this.hideChild(),this.allowBlur(!0)},this),CKEDITOR.env.iOS&&(i.on("touchstart",function(){clearTimeout(this._.hideTimeout)},this),i.on("touchend",function(){this._.hideTimeout=0,this.focus()},this)),CKEDITOR.event.useCapture=!1,this._.blurSet=1),g.onEscape=CKEDITOR.tools.bind(function(a){return this.onEscape&&!1===this.onEscape(a)?!1:void 0},this),CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.tools.bind(function(){var a=j;if(a.removeStyle("width"),h.autoSize){var b=h.element.getDocument(),b=(CKEDITOR.env.webkit||CKEDITOR.env.edge?h.element:b.getBody()).$.scrollWidth;CKEDITOR.env.ie&&CKEDITOR.env.quirks&&b>0&&(b+=(a.$.offsetWidth||0)-(a.$.clientWidth||0)+3),a.setStyle("width",b+10+"px"),b=h.element.$.scrollHeight,CKEDITOR.env.ie&&CKEDITOR.env.quirks&&b>0&&(b+=(a.$.offsetHeight||0)-(a.$.clientHeight||0)+3),a.setStyle("height",b+"px"),g._.currentBlock.element.setStyle("display","none").removeStyle("display")}else a.removeStyle("height");n&&(o-=j.$.offsetWidth),j.setStyle("left",o+"px");var b=g.element.getWindow(),a=j.$.getBoundingClientRect(),b=b.getViewPaneSize(),c=a.width||a.right-a.left,d=a.height||a.bottom-a.top,e=n?a.right:b.width-a.left,i=n?b.width-a.right:a.left;n?c>e&&(o=i>c?o+c:b.width>c?o-a.left:o-a.right+b.width):c>e&&(o=i>c?o-c:b.width>c?o-a.right+b.width:o-a.left),c=a.top,b.height-a.top<d&&(p=c>d?p-d:b.height>d?p-a.bottom+b.height:p-a.top),CKEDITOR.env.ie&&(b=a=new CKEDITOR.dom.element(j.$.offsetParent),"html"==b.getName()&&(b=b.getDocument().getBody()),"rtl"==b.getComputedStyle("direction")&&(o=CKEDITOR.env.ie8Compat?o-2*j.getDocument().getDocumentElement().$.scrollLeft:o-(a.$.scrollWidth-a.$.clientWidth)));var k,a=j.getFirst();(k=a.getCustomData("activePanel"))&&k.onHide&&k.onHide.call(this,1),a.setCustomData("activePanel",this),j.setStyles({top:p+"px",left:o+"px"}),j.setOpacity(1),f&&f()},this);g.isLoaded?a():g.onLoad=a,CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.env.webkit&&CKEDITOR.document.getWindow().getScrollPosition().y;this.focus(),h.element.focus(),CKEDITOR.env.webkit&&(CKEDITOR.document.getBody().$.scrollTop=a),this.allowBlur(!0),this._.editor.fire("panelShow",this)},0,this)},CKEDITOR.env.air?200:0,this),this.visible=1,this.onShow&&this.onShow.call(this)},reposition:function(){var a=this._.showBlockParams;this.visible&&this._.showBlockParams&&(this.hide(),this.showBlock.apply(this,a))},focus:function(){if(CKEDITOR.env.webkit){var a=CKEDITOR.document.getActive();a&&!a.equals(this._.iframe)&&a.$.blur()}(this._.lastFocused||this._.iframe.getFrameDocument().getWindow()).focus()},blur:function(){var a=this._.iframe.getFrameDocument().getActive();a&&a.is("a")&&(this._.lastFocused=a)},hide:function(a){!this.visible||this.onHide&&!0===this.onHide.call(this)||(this.hideChild(),CKEDITOR.env.gecko&&this._.iframe.getFrameDocument().$.activeElement.blur(),this.element.setStyle("display","none"),this.visible=0,this.element.getFirst().removeCustomData("activePanel"),(a=a&&this._.returnFocus)&&(CKEDITOR.env.webkit&&a.type&&a.getWindow().$.focus(),a.focus()),delete this._.lastFocused,this._.showBlockParams=null,this._.editor.fire("panelHide",this))},allowBlur:function(a){var b=this._.panel;return void 0!==a&&(b.allowBlur=a),b.allowBlur},showAsChild:function(a,b,c,d,e,f){this._.activeChild==a&&a._.panel._.offsetParentId==c.getId()||(this.hideChild(),a.onHide=CKEDITOR.tools.bind(function(){CKEDITOR.tools.setTimeout(function(){this._.focused||this.hide()},0,this)},this),this._.activeChild=a,this._.focused=!1,a.showBlock(b,c,d,e,f),this.blur(),(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&setTimeout(function(){a.element.getChild(0).$.style.cssText+=""},100))},hideChild:function(a){var b=this._.activeChild;b&&(delete b.onHide,delete this._.activeChild,b.hide(),a&&this.focus())}}}),CKEDITOR.on("instanceDestroyed",function(){var a,c=CKEDITOR.tools.isEmpty(CKEDITOR.instances);for(a in b){var d=b[a];c?d.destroy():d.element.hide()}c&&(b={})})}(),CKEDITOR.plugins.add("menu",{requires:"floatpanel",beforeInit:function(a){for(var b=a.config.menu_groups.split(","),c=a._.menuGroups={},d=a._.menuItems={},e=0;e<b.length;e++)c[b[e]]=e+1;a.addMenuGroup=function(a,b){c[a]=b||100},a.addMenuItem=function(a,b){c[b.group]&&(d[a]=new CKEDITOR.menuItem(this,a,b))},a.addMenuItems=function(a){for(var b in a)this.addMenuItem(b,a[b])},a.getMenuItem=function(a){return d[a]},a.removeMenuItem=function(a){delete d[a]}}}),function(){function a(a){a.sort(function(a,b){return a.group<b.group?-1:a.group>b.group?1:a.order<b.order?-1:a.order>b.order?1:0})}var b='<span class="cke_menuitem"><a id="{id}" class="cke_menubutton cke_menubutton__{name} cke_menubutton_{state} {cls}" href="{href}" title="{title}" tabindex="-1"_cke_focus=1 hidefocus="true" role="{role}" aria-haspopup="{hasPopup}" aria-disabled="{disabled}" {ariaChecked}';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(b+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(b+=' onblur="this.style.cssText = this.style.cssText;"');var b=b+(' onmouseover="CKEDITOR.tools.callFunction({hoverFn},{index});" onmouseout="CKEDITOR.tools.callFunction({moveOutFn},{index});" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},{index}); return false;">'),c=CKEDITOR.addTemplate("menuItem",b+'<span class="cke_menubutton_inner"><span class="cke_menubutton_icon"><span class="cke_button_icon cke_button__{iconName}_icon" style="{iconStyle}"></span></span><span class="cke_menubutton_label">{label}</span>{arrowHtml}</span></a></span>'),d=CKEDITOR.addTemplate("menuArrow",'<span class="cke_menuarrow"><span>{label}</span></span>');CKEDITOR.menu=CKEDITOR.tools.createClass({$:function(a,b){b=this._.definition=b||{},this.id=CKEDITOR.tools.getNextId(),this.editor=a,this.items=[],this._.listeners=[],this._.level=b.level||1;var c=CKEDITOR.tools.extend({},b.panel,{css:[CKEDITOR.skin.getPath("editor")],level:this._.level-1,block:{}}),d=c.block.attributes=c.attributes||{};!d.role&&(d.role="menu"),this._.panelDefinition=c},_:{onShow:function(){var a=this.editor.getSelection(),b=a&&a.getStartElement(),c=this.editor.elementPath(),d=this._.listeners;this.removeAll();for(var e=0;e<d.length;e++){var f=d[e](b,a,c);if(f)for(var g in f){var h=this.editor.getMenuItem(g);!h||h.command&&!this.editor.getCommand(h.command).state||(h.state=f[g],this.add(h))}}},onClick:function(a){this.hide(),a.onClick?a.onClick():a.command&&this.editor.execCommand(a.command)},onEscape:function(a){var b=this.parent;return b?b._.panel.hideChild(1):27==a&&this.hide(1),!1},onHide:function(){this.onHide&&this.onHide()},showSubMenu:function(a){var b=this._.subMenu,c=this.items[a];if(c=c.getItems&&c.getItems()){b?b.removeAll():(b=this._.subMenu=new CKEDITOR.menu(this.editor,CKEDITOR.tools.extend({},this._.definition,{level:this._.level+1},!0)),b.parent=this,b._.onClick=CKEDITOR.tools.bind(this._.onClick,this)); +for(var d in c){var e=this.editor.getMenuItem(d);e&&(e.state=c[d],b.add(e))}var f=this._.panel.getBlock(this.id).element.getDocument().getById(this.id+String(a));setTimeout(function(){b.show(f,2)},0)}else this._.panel.hideChild(1)}},proto:{add:function(a){a.order||(a.order=this.items.length),this.items.push(a)},removeAll:function(){this.items=[]},show:function(b,c,d,e){if(this.parent||(this._.onShow(),this.items.length)){c=c||("rtl"==this.editor.lang.dir?2:1);var f=this.items,g=this.editor,h=this._.panel,i=this._.element;if(!h){h=this._.panel=new CKEDITOR.ui.floatPanel(this.editor,CKEDITOR.document.getBody(),this._.panelDefinition,this._.level),h.onEscape=CKEDITOR.tools.bind(function(a){return!1===this._.onEscape(a)?!1:void 0},this),h.onShow=function(){h._.panel.getHolderElement().getParent().addClass("cke").addClass("cke_reset_all")},h.onHide=CKEDITOR.tools.bind(function(){this._.onHide&&this._.onHide()},this),i=h.addBlock(this.id,this._.panelDefinition.block),i.autoSize=!0;var j=i.keys;j[40]="next",j[9]="next",j[38]="prev",j[CKEDITOR.SHIFT+9]="prev",j["rtl"==g.lang.dir?37:39]=CKEDITOR.env.ie?"mouseup":"click",j[32]=CKEDITOR.env.ie?"mouseup":"click",CKEDITOR.env.ie&&(j[13]="mouseup"),i=this._.element=i.element,j=i.getDocument(),j.getBody().setStyle("overflow","hidden"),j.getElementsByTag("html").getItem(0).setStyle("overflow","hidden"),this._.itemOverFn=CKEDITOR.tools.addFunction(function(a){clearTimeout(this._.showSubTimeout),this._.showSubTimeout=CKEDITOR.tools.setTimeout(this._.showSubMenu,g.config.menu_subMenuDelay||400,this,[a])},this),this._.itemOutFn=CKEDITOR.tools.addFunction(function(){clearTimeout(this._.showSubTimeout)},this),this._.itemClickFn=CKEDITOR.tools.addFunction(function(a){var b=this.items[a];b.state==CKEDITOR.TRISTATE_DISABLED?this.hide(1):b.getItems?this._.showSubMenu(a):this._.onClick(b)},this)}a(f);for(var j=g.elementPath(),j=['<div class="cke_menu'+(j&&j.direction()!=g.lang.dir?" cke_mixed_dir_content":"")+'" role="presentation">'],k=f.length,l=k&&f[0].group,m=0;k>m;m++){var n=f[m];l!=n.group&&(j.push('<div class="cke_menuseparator" role="separator"></div>'),l=n.group),n.render(this,m,j)}j.push("</div>"),i.setHtml(j.join("")),CKEDITOR.ui.fire("ready",this),this.parent?this.parent._.panel.showAsChild(h,this.id,b,c,d,e):h.showBlock(this.id,b,c,d,e),g.fire("menuShow",[h])}},addListener:function(a){this._.listeners.push(a)},hide:function(a){this._.onHide&&this._.onHide(),this._.panel&&this._.panel.hide(a)}}}),CKEDITOR.menuItem=CKEDITOR.tools.createClass({$:function(a,b,c){CKEDITOR.tools.extend(this,c,{order:0,className:"cke_menubutton__"+b}),this.group=a._.menuGroups[this.group],this.editor=a,this.name=b},proto:{render:function(a,b,e){var f=a.id+String(b),g="undefined"==typeof this.state?CKEDITOR.TRISTATE_OFF:this.state,h="",i=g==CKEDITOR.TRISTATE_ON?"on":g==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";this.role in{menuitemcheckbox:1,menuitemradio:1}&&(h=' aria-checked="'+(g==CKEDITOR.TRISTATE_ON?"true":"false")+'"');var j=this.getItems,k="&#"+("rtl"==this.editor.lang.dir?"9668":"9658")+";",l=this.name;this.icon&&!/\./.test(this.icon)&&(l=this.icon),a={id:f,name:this.name,iconName:l,label:this.label,cls:this.className||"",state:i,hasPopup:j?"true":"false",disabled:g==CKEDITOR.TRISTATE_DISABLED,title:this.label,href:"javascript:void('"+(this.label||"").replace("'")+"')",hoverFn:a._.itemOverFn,moveOutFn:a._.itemOutFn,clickFn:a._.itemClickFn,index:b,iconStyle:CKEDITOR.skin.getIconStyle(l,"rtl"==this.editor.lang.dir,l==this.icon?null:this.icon,this.iconOffset),arrowHtml:j?d.output({label:k}):"",role:this.role?this.role:"menuitem",ariaChecked:h},c.output(a,e)}}})}(),CKEDITOR.config.menu_groups="clipboard,form,tablecell,tablecellproperties,tablerow,tablecolumn,table,anchor,link,image,flash,checkbox,radio,textfield,hiddenfield,imagebutton,button,select,textarea,div",CKEDITOR.plugins.add("contextmenu",{requires:"menu",onLoad:function(){CKEDITOR.plugins.contextMenu=CKEDITOR.tools.createClass({base:CKEDITOR.menu,$:function(a){this.base.call(this,a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.contextmenu.options}}})},proto:{addTarget:function(a,b){if(a.on("contextmenu",function(a){a=a.data;var d=CKEDITOR.env.webkit?c:CKEDITOR.env.mac?a.$.metaKey:a.$.ctrlKey;if(!b||!d){if(a.preventDefault(),CKEDITOR.env.mac&&CKEDITOR.env.webkit){var d=this.editor,e=new CKEDITOR.dom.elementPath(a.getTarget(),d.editable()).contains(function(a){return a.hasAttribute("contenteditable")},!0);e&&"false"==e.getAttribute("contenteditable")&&d.getSelection().fake(e)}var e=a.getTarget().getDocument(),f=a.getTarget().getDocument().getDocumentElement(),d=!e.equals(CKEDITOR.document),e=e.getWindow().getScrollPosition(),g=d?a.$.clientX:a.$.pageX||e.x+a.$.clientX,h=d?a.$.clientY:a.$.pageY||e.y+a.$.clientY;CKEDITOR.tools.setTimeout(function(){this.open(f,null,g,h)},CKEDITOR.env.ie?200:0,this)}},this),CKEDITOR.env.webkit){var c,d=function(){c=0};a.on("keydown",function(a){c=CKEDITOR.env.mac?a.data.$.metaKey:a.data.$.ctrlKey}),a.on("keyup",d),a.on("contextmenu",d)}},open:function(a,b,c,d){this.editor.focus(),a=a||CKEDITOR.document.getDocumentElement(),this.editor.selectionChange(1),this.show(a,b,c,d)}}})},beforeInit:function(a){var b=a.contextMenu=new CKEDITOR.plugins.contextMenu(a);a.on("contentDom",function(){b.addTarget(a.editable(),!1!==a.config.browserContextMenuOnCtrl)}),a.addCommand("contextMenu",{exec:function(){a.contextMenu.open(a.document.getBody())}}),a.setKeystroke(CKEDITOR.SHIFT+121,"contextMenu"),a.setKeystroke(CKEDITOR.CTRL+CKEDITOR.SHIFT+121,"contextMenu")}}),function(){function a(a,c){function e(b){if(b=i.list[b],b.equals(a.editable())||"true"==b.getAttribute("contenteditable")){var c=a.createRange();c.selectNodeContents(b),c.select()}else a.getSelection().selectElement(b);a.focus()}function f(){g&&g.setHtml('<span class="cke_path_empty"> </span>'),delete i.list}var g,h=a.ui.spaceId("path"),i=a._.elementsPath,j=i.idBase;c.html+='<span id="'+h+'_label" class="cke_voice_label">'+a.lang.elementspath.eleLabel+'</span><span id="'+h+'" class="cke_path" role="group" aria-labelledby="'+h+'_label"><span class="cke_path_empty"> </span></span>',a.on("uiReady",function(){var b=a.ui.space("path");b&&a.focusManager.add(b,1)}),i.onClick=e;var k=CKEDITOR.tools.addFunction(e),l=CKEDITOR.tools.addFunction(function(b,c){var d,f=i.idBase;switch(c=new CKEDITOR.dom.event(c),d="rtl"==a.lang.dir,c.getKeystroke()){case d?39:37:case 9:return(d=CKEDITOR.document.getById(f+(b+1)))||(d=CKEDITOR.document.getById(f+"0")),d.focus(),!1;case d?37:39:case CKEDITOR.SHIFT+9:return(d=CKEDITOR.document.getById(f+(b-1)))||(d=CKEDITOR.document.getById(f+(i.list.length-1))),d.focus(),!1;case 27:return a.focus(),!1;case 13:case 32:return e(b),!1}return!0});a.on("selectionChange",function(){for(var b,c=[],e=i.list=[],f=[],m=i.filters,n=!0,o=a.elementPath().elements,p=o.length;p--;){var q=o[p],r=0;b=q.data("cke-display-name")?q.data("cke-display-name"):q.data("cke-real-element-type")?q.data("cke-real-element-type"):q.getName(),(n=q.hasAttribute("contenteditable")?"true"==q.getAttribute("contenteditable"):n)||q.hasAttribute("contenteditable")||(r=1);for(var s=0;s<m.length;s++){var t=m[s](q,b);if(!1===t){r=1;break}b=t||b}r||(e.unshift(q),f.unshift(b))}for(e=e.length,m=0;e>m;m++)b=f[m],n=a.lang.elementspath.eleTitle.replace(/%1/,b),b=d.output({id:j+m,label:n,text:b,jsTitle:"javascript:void('"+b+"')",index:m,keyDownFn:l,clickFn:k}),c.unshift(b);g||(g=CKEDITOR.document.getById(h)),f=g,f.setHtml(c.join("")+'<span class="cke_path_empty"> </span>'),a.fire("elementsPathUpdate",{space:f})}),a.on("readOnly",f),a.on("contentDomUnload",f),a.addCommand("elementsPathFocus",b.toolbarFocus),a.setKeystroke(CKEDITOR.ALT+122,"elementsPathFocus")}var b={toolbarFocus:{editorFocus:!1,readOnly:1,exec:function(a){(a=CKEDITOR.document.getById(a._.elementsPath.idBase+"0"))&&a.focus(CKEDITOR.env.ie||CKEDITOR.env.air)}}},c="";CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var d=CKEDITOR.addTemplate("pathItem",'<a id="{id}" href="{jsTitle}" tabindex="-1" class="cke_path_item" title="{label}"'+c+' hidefocus="true" onkeydown="return CKEDITOR.tools.callFunction({keyDownFn},{index}, event );" onclick="CKEDITOR.tools.callFunction({clickFn},{index}); return false;" role="button" aria-label="{label}">{text}</a>');CKEDITOR.plugins.add("elementspath",{init:function(b){b._.elementsPath={idBase:"cke_elementspath_"+CKEDITOR.tools.getNextNumber()+"_",filters:[]},b.on("uiSpace",function(c){"bottom"==c.data.space&&a(b,c.data)})}})}(),function(){function a(a,d){var e,f;d.on("refresh",function(a){var d,e=[b];for(d in a.data.states)e.push(a.data.states[d]);this.setState(CKEDITOR.tools.search(e,c)?c:b)},d,null,100),d.on("exec",function(b){e=a.getSelection(),f=e.createBookmarks(1),b.data||(b.data={}),b.data.done=!1},d,null,0),d.on("exec",function(){a.forceNextSelectionCheck(),e.selectBookmarks(f)},d,null,100)}var b=CKEDITOR.TRISTATE_DISABLED,c=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indent",{init:function(b){var c=CKEDITOR.plugins.indent.genericDefinition;a(b,b.addCommand("indent",new c(!0))),a(b,b.addCommand("outdent",new c)),b.ui.addButton&&(b.ui.addButton("Indent",{label:b.lang.indent.indent,command:"indent",directional:!0,toolbar:"indent,20"}),b.ui.addButton("Outdent",{label:b.lang.indent.outdent,command:"outdent",directional:!0,toolbar:"indent,10"})),b.on("dirChanged",function(a){var c=b.createRange(),d=a.data.node;c.setStartBefore(d),c.setEndAfter(d);for(var e,f=new CKEDITOR.dom.walker(c);e=f.next();)if(e.type==CKEDITOR.NODE_ELEMENT)if(!e.equals(d)&&e.getDirection())c.setStartAfter(e),f=new CKEDITOR.dom.walker(c);else{var g=b.config.indentClasses;if(g)for(var h="ltr"==a.data.dir?["_rtl",""]:["","_rtl"],i=0;i<g.length;i++)e.hasClass(g[i]+h[0])&&(e.removeClass(g[i]+h[0]),e.addClass(g[i]+h[1]));g=e.getStyle("margin-right"),h=e.getStyle("margin-left"),g?e.setStyle("margin-left",g):e.removeStyle("margin-left"),h?e.setStyle("margin-right",h):e.removeStyle("margin-right")}})}}),CKEDITOR.plugins.indent={genericDefinition:function(a){this.isIndent=!!a,this.startDisabled=!this.isIndent},specificDefinition:function(a,b,c){this.name=b,this.editor=a,this.jobs={},this.enterBr=a.config.enterMode==CKEDITOR.ENTER_BR,this.isIndent=!!c,this.relatedGlobal=c?"indent":"outdent",this.indentKey=c?9:CKEDITOR.SHIFT+9,this.database={}},registerCommands:function(a,b){a.on("pluginsLoaded",function(){for(var a in b)(function(a,b){var c,d=a.getCommand(b.relatedGlobal);for(c in b.jobs)d.on("exec",function(d){d.data.done||(a.fire("lockSnapshot"),b.execJob(a,c)&&(d.data.done=!0),a.fire("unlockSnapshot"),CKEDITOR.dom.element.clearAllMarkers(b.database))},this,null,c),d.on("refresh",function(d){d.data.states||(d.data.states={}),d.data.states[b.name+"@"+c]=b.refreshJob(a,c,d.data.path)},this,null,c);a.addFeature(b)})(this,b[a])})}},CKEDITOR.plugins.indent.genericDefinition.prototype={context:"p",exec:function(){}},CKEDITOR.plugins.indent.specificDefinition.prototype={execJob:function(a,c){var d=this.jobs[c];return d.state!=b?d.exec.call(this,a):void 0},refreshJob:function(a,c,d){return c=this.jobs[c],a.activeFilter.checkFeature(this)?c.state=c.refresh.call(this,a,d):c.state=b,c.state},getContext:function(a){return a.contains(this.context)}}}(),function(){function a(a){function d(b){for(var d=e.startContainer,i=e.endContainer;d&&!d.getParent().equals(b);)d=d.getParent();for(;i&&!i.getParent().equals(b);)i=i.getParent();if(!d||!i)return!1;for(var j=d,d=[],k=!1;!k;)j.equals(i)&&(k=!0),d.push(j),j=j.getNext();if(1>d.length)return!1;for(j=b.getParents(!0),i=0;i<j.length;i++)if(j[i].getName&&h[j[i].getName()]){b=j[i];break}for(var j=f.isIndent?1:-1,i=d[0],d=d[d.length-1],k=CKEDITOR.plugins.list.listToArray(b,g),l=k[d.getCustomData("listarray_index")].indent,i=i.getCustomData("listarray_index");i<=d.getCustomData("listarray_index");i++)if(k[i].indent+=j,j>0){var m=k[i].parent;k[i].parent=new CKEDITOR.dom.element(m.getName(),m.getDocument())}for(i=d.getCustomData("listarray_index")+1;i<k.length&&k[i].indent>l;i++)k[i].indent+=j;if(d=CKEDITOR.plugins.list.arrayToList(k,g,null,a.config.enterMode,b.getDirection()),!f.isIndent){var n;if((n=b.getParent())&&n.is("li"))for(var o,j=d.listNode.getChildren(),p=[],i=j.count()-1;i>=0;i--)(o=j.getItem(i))&&o.is&&o.is("li")&&p.push(o)}if(d&&d.listNode.replace(b),p&&p.length)for(i=0;i<p.length;i++){for(o=b=p[i];(o=o.getNext())&&o.is&&o.getName()in h;)CKEDITOR.env.needsNbspFiller&&!b.getFirst(c)&&b.append(e.document.createText(" ")),b.append(o);b.insertAfter(n)}return d&&a.fire("contentDomInvalidated"),!0}for(var e,f=this,g=this.database,h=this.context,i=a.getSelection(),i=(i&&i.getRanges()).createIterator();e=i.getNextRange();){for(var j=e.getCommonAncestor();j&&(j.type!=CKEDITOR.NODE_ELEMENT||!h[j.getName()]);){if(a.editable().equals(j)){j=!1;break}j=j.getParent()}if(j||(j=e.startPath().contains(h))&&e.setEndAt(j,CKEDITOR.POSITION_BEFORE_END),!j){var k=e.getEnclosedNode();k&&k.type==CKEDITOR.NODE_ELEMENT&&k.getName()in h&&(e.setStartAt(k,CKEDITOR.POSITION_AFTER_START),e.setEndAt(k,CKEDITOR.POSITION_BEFORE_END),j=k)}if(j&&e.startContainer.type==CKEDITOR.NODE_ELEMENT&&e.startContainer.getName()in h&&(k=new CKEDITOR.dom.walker(e),k.evaluator=b,e.startContainer=k.next()),j&&e.endContainer.type==CKEDITOR.NODE_ELEMENT&&e.endContainer.getName()in h&&(k=new CKEDITOR.dom.walker(e),k.evaluator=b,e.endContainer=k.previous()),j)return d(j)}return 0}function b(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.is("li")}function c(a){return d(a)&&e(a)}var d=CKEDITOR.dom.walker.whitespaces(!0),e=CKEDITOR.dom.walker.bookmark(!1,!0),f=CKEDITOR.TRISTATE_DISABLED,g=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(b){function c(b){d.specificDefinition.apply(this,arguments),this.requiredContent=["ul","ol"],b.on("key",function(a){if("wysiwyg"==b.mode&&a.data.keyCode==this.indentKey){var c=this.getContext(b.elementPath());!c||this.isIndent&&CKEDITOR.plugins.indentList.firstItemInPath(this.context,b.elementPath(),c)||(b.execCommand(this.relatedGlobal),a.cancel())}},this),this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(a,b){var c=this.getContext(b),d=CKEDITOR.plugins.indentList.firstItemInPath(this.context,b,c);return c&&this.isIndent&&!d?g:f}:function(a,b){return!this.getContext(b)||this.isIndent?f:g},exec:CKEDITOR.tools.bind(a,this)}}var d=CKEDITOR.plugins.indent;d.registerCommands(b,{indentlist:new c(b,"indentlist",!0),outdentlist:new c(b,"outdentlist")}),CKEDITOR.tools.extend(c.prototype,d.specificDefinition.prototype,{context:{ol:1,ul:1}})}}),CKEDITOR.plugins.indentList={},CKEDITOR.plugins.indentList.firstItemInPath=function(a,c,d){var e=c.contains(b);return d||(d=c.contains(a)),d&&e&&e.equals(d.getFirst(b))}}(),function(){function a(a,b,c){function d(c){!(i=k[c?"getFirst":"getLast"]())||i.is&&i.isBlockBoundary()||!(j=b.root[c?"getPrevious":"getNext"](CKEDITOR.dom.walker.invisible(!0)))||j.is&&j.isBlockBoundary({br:1})||a.document.createElement("br")[c?"insertBefore":"insertAfter"](i)}for(var e=CKEDITOR.plugins.list.listToArray(b.root,c),f=[],g=0;g<b.contents.length;g++){var h=b.contents[g];(h=h.getAscendant("li",!0))&&!h.getCustomData("list_item_processed")&&(f.push(h),CKEDITOR.dom.element.setMarker(c,h,"list_item_processed",!0))}for(h=null,g=0;g<f.length;g++)h=f[g].getCustomData("listarray_index"),e[h].indent=-1;for(g=h+1;g<e.length;g++)if(e[g].indent>e[g-1].indent+1){for(f=e[g-1].indent+1-e[g].indent,h=e[g].indent;e[g]&&e[g].indent>=h;)e[g].indent+=f,g++;g--}var i,j,k=CKEDITOR.plugins.list.arrayToList(e,c,null,a.config.enterMode,b.root.getAttribute("dir")).listNode;d(!0),d(),k.replace(b.root),a.fire("contentDomInvalidated")}function b(a,b){this.name=a,this.context=this.type=b,this.allowedContent=b+" li",this.requiredContent=b}function c(a,b,c,d){for(var e,f;e=a[d?"getLast":"getFirst"](n);)(f=e.getDirection(1))!==b.getDirection(1)&&e.setAttribute("dir",f),e.remove(),c?e[d?"insertBefore":"insertAfter"](c):b.append(e,d)}function d(a){function b(b){var d=a[b?"getPrevious":"getNext"](k);d&&d.type==CKEDITOR.NODE_ELEMENT&&d.is(a.getName())&&(c(a,d,null,!b),a.remove(),a=d)}b(),b(1)}function e(a){return a.type==CKEDITOR.NODE_ELEMENT&&(a.getName()in CKEDITOR.dtd.$block||a.getName()in CKEDITOR.dtd.$listItem)&&CKEDITOR.dtd[a.getName()]["#"]}function f(a,b,e){a.fire("saveSnapshot"),e.enlarge(CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS);var f=e.extractContents();b.trim(!1,!0);var h=b.createBookmark(),i=new CKEDITOR.dom.elementPath(b.startContainer),j=i.block,i=i.lastElement.getAscendant("li",1)||j,m=new CKEDITOR.dom.elementPath(e.startContainer),n=m.contains(CKEDITOR.dtd.$listItem),m=m.contains(CKEDITOR.dtd.$list);for(j?(j=j.getBogus())&&j.remove():m&&(j=m.getPrevious(k))&&l(j)&&j.remove(),(j=f.getLast())&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("br")&&j.remove(),(j=b.startContainer.getChild(b.startOffset))?f.insertBefore(j):b.startContainer.append(f),n&&(f=g(n))&&(i.contains(n)?(c(f,n.getParent(),n),f.remove()):i.append(f));e.checkStartOfBlock()&&e.checkEndOfBlock()&&(m=e.startPath(),f=m.block,f);)f.is("li")&&(i=f.getParent(),f.equals(i.getLast(k))&&f.equals(i.getFirst(k))&&(f=i)),e.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START),f.remove();e=e.clone(),f=a.editable(),e.setEndAt(f,CKEDITOR.POSITION_BEFORE_END),e=new CKEDITOR.dom.walker(e),e.evaluator=function(a){return k(a)&&!l(a)},(e=e.next())&&e.type==CKEDITOR.NODE_ELEMENT&&e.getName()in CKEDITOR.dtd.$list&&d(e),b.moveToBookmark(h),b.select(),a.fire("saveSnapshot")}function g(a){return(a=a.getLast(k))&&a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in h?a:null}var h={ol:1,ul:1},i=CKEDITOR.dom.walker.whitespaces(),j=CKEDITOR.dom.walker.bookmark(),k=function(a){return!(i(a)||j(a))},l=CKEDITOR.dom.walker.bogus();CKEDITOR.plugins.list={listToArray:function(a,b,c,d,e){if(!h[a.getName()])return[];d||(d=0),c||(c=[]);for(var f=0,g=a.getChildCount();g>f;f++){var i=a.getChild(f);if(i.type==CKEDITOR.NODE_ELEMENT&&i.getName()in CKEDITOR.dtd.$list&&CKEDITOR.plugins.list.listToArray(i,b,c,d+1),"li"==i.$.nodeName.toLowerCase()){var j={parent:a,indent:d,element:i,contents:[]};e?j.grandparent=e:(j.grandparent=a.getParent(),j.grandparent&&"li"==j.grandparent.$.nodeName.toLowerCase()&&(j.grandparent=j.grandparent.getParent())),b&&CKEDITOR.dom.element.setMarker(b,i,"listarray_index",c.length),c.push(j);for(var k,l=0,m=i.getChildCount();m>l;l++)k=i.getChild(l),k.type==CKEDITOR.NODE_ELEMENT&&h[k.getName()]?CKEDITOR.plugins.list.listToArray(k,b,c,d+1,j.grandparent):j.contents.push(k)}}return c},arrayToList:function(a,b,c,d,e){if(c||(c=0),!a||a.length<c+1)return null;for(var f,g,i,l=a[c].parent.getDocument(),m=new CKEDITOR.dom.documentFragment(l),n=null,o=c,p=Math.max(a[c].indent,0),q=null,r=d==CKEDITOR.ENTER_P?"p":"div";;){var s=a[o];if(f=s.grandparent,g=s.element.getDirection(1),s.indent==p){for(n&&a[o].parent.getName()==n.getName()||(n=a[o].parent.clone(!1,1),e&&n.setAttribute("dir",e),m.append(n)),q=n.append(s.element.clone(0,1)),g!=n.getDirection(1)&&q.setAttribute("dir",g),f=0;f<s.contents.length;f++)q.append(s.contents[f].clone(1,1));o++}else if(s.indent==Math.max(p,0)+1)s=a[o-1].element.getDirection(1),o=CKEDITOR.plugins.list.arrayToList(a,null,o,d,s!=g?g:null),!q.getChildCount()&&CKEDITOR.env.needsNbspFiller&&7>=l.$.documentMode&&q.append(l.createText(" ")),q.append(o.listNode),o=o.nextIndex;else{if(-1!=s.indent||c||!f)return null;h[f.getName()]?(q=s.element.clone(!1,!0),g!=f.getDirection(1)&&q.setAttribute("dir",g)):q=new CKEDITOR.dom.documentFragment(l);var t,u,n=f.getDirection(1)!=g,v=s.element,w=v.getAttribute("class"),x=v.getAttribute("style"),y=q.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(d!=CKEDITOR.ENTER_BR||n||x||w),z=s.contents.length;for(f=0;z>f;f++)if(t=s.contents[f],j(t)&&z>1)y?u=t.clone(1,1):q.append(t.clone(1,1));else if(t.type==CKEDITOR.NODE_ELEMENT&&t.isBlockBoundary()){n&&!t.getDirection()&&t.setAttribute("dir",g),i=t;var A=v.getAttribute("style");A&&i.setAttribute("style",A.replace(/([^;])$/,"$1;")+(i.getAttribute("style")||"")),w&&t.addClass(w),i=null,u&&(q.append(u),u=null),q.append(t.clone(1,1))}else y?(i||(i=l.createElement(r),q.append(i),n&&i.setAttribute("dir",g)),x&&i.setAttribute("style",x),w&&i.setAttribute("class",w),u&&(i.append(u),u=null),i.append(t.clone(1,1))):q.append(t.clone(1,1));u&&((i||q).append(u),u=null),q.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&o!=a.length-1&&(CKEDITOR.env.needsBrFiller&&(g=q.getLast())&&g.type==CKEDITOR.NODE_ELEMENT&&g.is("br")&&g.remove(),(g=q.getLast(k))&&g.type==CKEDITOR.NODE_ELEMENT&&g.is(CKEDITOR.dtd.$block)||q.append(l.createElement("br"))),g=q.$.nodeName.toLowerCase(),"div"!=g&&"p"!=g||q.appendBogus(),m.append(q),n=null,o++}if(i=null,a.length<=o||Math.max(a[o].indent,0)<p)break}if(b)for(a=m.getFirst();a;){if(a.type==CKEDITOR.NODE_ELEMENT&&(CKEDITOR.dom.element.clearMarkers(b,a),a.getName()in CKEDITOR.dtd.$listItem&&(c=a,l=e=d=void 0,d=c.getDirection()))){for(e=c.getParent();e&&!(l=e.getDirection());)e=e.getParent();d==l&&c.removeAttribute("dir")}a=a.getNextSourceNode()}return{listNode:m,nextIndex:o}}};var m=/^h[1-6]$/,n=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT);b.prototype={exec:function(b){this.refresh(b,b.elementPath());var c=b.config,e=b.getSelection(),f=e&&e.getRanges();if(this.state==CKEDITOR.TRISTATE_OFF){var g=b.editable();if(g.getFirst(k)){var i=1==f.length&&f[0];(c=i&&i.getEnclosedNode())&&c.is&&this.type==c.getName()&&this.setState(CKEDITOR.TRISTATE_ON)}else c.enterMode==CKEDITOR.ENTER_BR?g.appendBogus():f[0].fixBlock(1,c.enterMode==CKEDITOR.ENTER_P?"p":"div"),e.selectRanges(f)}for(var c=e.createBookmarks(!0),g=[],j={},f=f.createIterator(),l=0;(i=f.getNextRange())&&++l;){var n=i.getBoundaryNodes(),o=n.startNode,p=n.endNode;for(o.type==CKEDITOR.NODE_ELEMENT&&"td"==o.getName()&&i.setStartAt(n.startNode,CKEDITOR.POSITION_AFTER_START),p.type==CKEDITOR.NODE_ELEMENT&&"td"==p.getName()&&i.setEndAt(n.endNode,CKEDITOR.POSITION_BEFORE_END),i=i.createIterator(),i.forceBrBreak=this.state==CKEDITOR.TRISTATE_OFF;n=i.getNextParagraph();)if(!n.getCustomData("list_block")){CKEDITOR.dom.element.setMarker(j,n,"list_block",1);for(var q,r=b.elementPath(n),o=r.elements,p=0,r=r.blockLimit,s=o.length-1;s>=0&&(q=o[s]);s--)if(h[q.getName()]&&r.contains(q)){r.removeCustomData("list_group_object_"+l),(o=q.getCustomData("list_group_object"))?o.contents.push(n):(o={root:q,contents:[n]},g.push(o),CKEDITOR.dom.element.setMarker(j,q,"list_group_object",o)),p=1;break}p||(p=r,p.getCustomData("list_group_object_"+l)?p.getCustomData("list_group_object_"+l).contents.push(n):(o={root:p,contents:[n]},CKEDITOR.dom.element.setMarker(j,p,"list_group_object_"+l,o),g.push(o)))}}for(q=[];0<g.length;)if(o=g.shift(),this.state==CKEDITOR.TRISTATE_OFF)if(h[o.root.getName()]){for(f=b,l=o,o=j,i=q,p=CKEDITOR.plugins.list.listToArray(l.root,o),r=[],n=0;n<l.contents.length;n++)s=l.contents[n],(s=s.getAscendant("li",!0))&&!s.getCustomData("list_item_processed")&&(r.push(s),CKEDITOR.dom.element.setMarker(o,s,"list_item_processed",!0));for(var s=l.root.getDocument(),t=void 0,u=void 0,n=0;n<r.length;n++){var v=r[n].getCustomData("listarray_index"),t=p[v].parent;t.is(this.type)||(u=s.createElement(this.type),t.copyAttributes(u,{start:1,type:1}),u.removeStyle("list-style-type"),p[v].parent=u)}for(o=CKEDITOR.plugins.list.arrayToList(p,o,null,f.config.enterMode),p=void 0,r=o.listNode.getChildCount(),n=0;r>n&&(p=o.listNode.getChild(n));n++)p.getName()==this.type&&i.push(p);o.listNode.replace(l.root),f.fire("contentDomInvalidated")}else{for(p=b,i=o,n=q,r=i.contents,f=i.root.getDocument(),l=[],1==r.length&&r[0].equals(i.root)&&(o=f.createElement("div"),r[0].moveChildren&&r[0].moveChildren(o),r[0].append(o),r[0]=o),i=i.contents[0].getParent(),s=0;s<r.length;s++)i=i.getCommonAncestor(r[s].getParent());for(t=p.config.useComputedState,p=o=void 0,t=void 0===t||t,s=0;s<r.length;s++)for(u=r[s];v=u.getParent();){if(v.equals(i)){l.push(u),!p&&u.getDirection()&&(p=1),u=u.getDirection(t),null!==o&&(o=o&&o!=u?null:u);break}u=v}if(!(1>l.length)){for(r=l[l.length-1].getNext(),s=f.createElement(this.type),n.push(s),t=n=void 0;l.length;)n=l.shift(),t=f.createElement("li"),u=n,u.is("pre")||m.test(u.getName())||"false"==u.getAttribute("contenteditable")?n.appendTo(t):(n.copyAttributes(t),o&&n.getDirection()&&(t.removeStyle("direction"),t.removeAttribute("dir")),n.moveChildren(t),n.remove()),t.appendTo(s);o&&p&&s.setAttribute("dir",o),r?s.insertBefore(r):s.appendTo(i)}}else this.state==CKEDITOR.TRISTATE_ON&&h[o.root.getName()]&&a.call(this,b,o,j);for(s=0;s<q.length;s++)d(q[s]);CKEDITOR.dom.element.clearAllMarkers(j),e.selectBookmarks(c),b.focus()},refresh:function(a,b){var c=b.contains(h,1),d=b.blockLimit||b.root;c&&d.contains(c)?this.setState(c.is(this.type)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_OFF)}},CKEDITOR.plugins.add("list",{requires:"indentlist",init:function(a){a.blockless||(a.addCommand("numberedlist",new b("numberedlist","ol")),a.addCommand("bulletedlist",new b("bulletedlist","ul")),a.ui.addButton&&(a.ui.addButton("NumberedList",{label:a.lang.list.numberedlist,command:"numberedlist",directional:!0,toolbar:"list,10"}),a.ui.addButton("BulletedList",{label:a.lang.list.bulletedlist,command:"bulletedlist",directional:!0,toolbar:"list,20"})),a.on("key",function(b){var c,d=b.data.domEvent.getKey();if("wysiwyg"==a.mode&&d in{8:1,46:1}){var i=a.getSelection().getRanges()[0],j=i&&i.startPath();if(i&&i.collapsed){var m=8==d,n=a.editable(),o=new CKEDITOR.dom.walker(i.clone());if(o.evaluator=function(a){return k(a)&&!l(a)},o.guard=function(a,b){return!(b&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))},d=i.clone(),m){var p;if((p=j.contains(h))&&i.checkBoundaryOfElement(p,CKEDITOR.START)&&(p=p.getParent())&&p.is("li")&&(p=g(p))?(c=p,p=p.getPrevious(k),d.moveToPosition(p&&l(p)?p:c,CKEDITOR.POSITION_BEFORE_START)):(o.range.setStartAt(n,CKEDITOR.POSITION_AFTER_START),o.range.setEnd(i.startContainer,i.startOffset),(p=o.previous())&&p.type==CKEDITOR.NODE_ELEMENT&&(p.getName()in h||p.is("li"))&&(p.is("li")||(o.range.selectNodeContents(p),o.reset(),o.evaluator=e,p=o.previous()),c=p,d.moveToElementEditEnd(c),d.moveToPosition(d.endPath().block,CKEDITOR.POSITION_BEFORE_END))),c)f(a,d,i),b.cancel();else{var q=j.contains(h);q&&i.checkBoundaryOfElement(q,CKEDITOR.START)&&(c=q.getFirst(k),i.checkBoundaryOfElement(c,CKEDITOR.START)&&(p=q.getPrevious(k),g(c)?p&&(i.moveToElementEditEnd(p),i.select()):a.execCommand("outdent"),b.cancel()))}}else if(c=j.contains("li")){if(o.range.setEndAt(n,CKEDITOR.POSITION_BEFORE_END),m=(n=c.getLast(k))&&e(n)?n:c,j=0,(p=o.next())&&p.type==CKEDITOR.NODE_ELEMENT&&p.getName()in h&&p.equals(n)?(j=1,p=o.next()):i.checkBoundaryOfElement(m,CKEDITOR.END)&&(j=2),j&&p){if(i=i.clone(),i.moveToElementEditStart(p),1==j&&(d.optimize(),!d.startContainer.equals(c))){for(c=d.startContainer;c.is(CKEDITOR.dtd.$inline);)q=c,c=c.getParent();q&&d.moveToPosition(q,CKEDITOR.POSITION_AFTER_END)}2==j&&(d.moveToPosition(d.endPath().block,CKEDITOR.POSITION_BEFORE_END),i.endPath().block&&i.moveToPosition(i.endPath().block,CKEDITOR.POSITION_AFTER_START)),f(a,d,i),b.cancel()}}else o.range.setEndAt(n,CKEDITOR.POSITION_BEFORE_END),(p=o.next())&&p.type==CKEDITOR.NODE_ELEMENT&&p.is(h)&&(p=p.getFirst(k),j.block&&i.checkStartOfBlock()&&i.checkEndOfBlock()?(j.block.remove(),i.moveToElementEditStart(p),i.select()):g(p)?(i.moveToElementEditStart(p),i.select()):(i=i.clone(),i.moveToElementEditStart(p),f(a,d,i)),b.cancel());setTimeout(function(){a.selectionChange(1)})}}}))}})}(),function(){function a(a,b,c){c=a.config.forceEnterMode||c,"wysiwyg"==a.mode&&(b||(b=a.activeEnterMode),a.elementPath().isContextFor("p")||(b=CKEDITOR.ENTER_BR,c=1),a.fire("saveSnapshot"),b==CKEDITOR.ENTER_BR?g(a,b,null,c):h(a,b,null,c),a.fire("saveSnapshot"))}function b(a){a=a.getSelection().getRanges(!0);for(var b=a.length-1;b>0;b--)a[b].deleteContents();return a[0]}function c(a){var b=a.startContainer.getAscendant(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&"true"==a.getAttribute("contenteditable")},!0);return a.root.equals(b)?a:(b=new CKEDITOR.dom.range(b),b.moveToRange(a),b)}CKEDITOR.plugins.add("enterkey",{init:function(b){b.addCommand("enter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){a(b)}}),b.addCommand("shiftEnter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){a(b,b.activeShiftEnterMode,1)}}),b.setKeystroke([[13,"enter"],[CKEDITOR.SHIFT+13,"shiftEnter"]])}});var d=CKEDITOR.dom.walker.whitespaces(),e=CKEDITOR.dom.walker.bookmark();CKEDITOR.plugins.enterkey={enterBlock:function(a,f,h,j){if(h=h||b(a)){h=c(h);var k,l=h.document,m=h.checkStartOfBlock(),n=h.checkEndOfBlock(),o=a.elementPath(h.startContainer),p=o.block,q=f==CKEDITOR.ENTER_DIV?"div":"p";if(m&&n){if(p&&(p.is("li")||p.getParent().is("li"))){p.is("li")||(p=p.getParent()),h=p.getParent(),k=h.getParent(),j=!p.hasPrevious();var r=!p.hasNext(),q=a.getSelection(),s=q.createBookmarks(),m=p.getDirection(1),n=p.getAttribute("class"),t=p.getAttribute("style"),u=k.getDirection(1)!=m;if(a=a.enterMode!=CKEDITOR.ENTER_BR||u||t||n,k.is("li"))j||r?(j&&r&&h.remove(),p[r?"insertAfter":"insertBefore"](k)):p.breakParent(k);else{if(a)o.block.is("li")?(k=l.createElement(f==CKEDITOR.ENTER_P?"p":"div"),u&&k.setAttribute("dir",m),t&&k.setAttribute("style",t),n&&k.setAttribute("class",n),p.moveChildren(k)):k=o.block,j||r?k[j?"insertBefore":"insertAfter"](h):(p.breakParent(h),k.insertAfter(h));else if(p.appendBogus(!0),j||r)for(;l=p[j?"getFirst":"getLast"]();)l[j?"insertBefore":"insertAfter"](h);else for(p.breakParent(h);l=p.getLast();)l.insertAfter(h);p.remove()}return void q.selectBookmarks(s)}if(p&&p.getParent().is("blockquote"))return p.breakParent(p.getParent()),p.getPrevious().getFirst(CKEDITOR.dom.walker.invisible(1))||p.getPrevious().remove(),p.getNext().getFirst(CKEDITOR.dom.walker.invisible(1))||p.getNext().remove(),h.moveToElementEditStart(p),void h.select()}else if(p&&p.is("pre")&&!n)return void g(a,f,h,j);if(m=h.splitBlock(q)){if(f=m.previousBlock,p=m.nextBlock,o=m.wasStartOfBlock,a=m.wasEndOfBlock,p?(s=p.getParent(),s.is("li")&&(p.breakParent(s),p.move(p.getNext(),1))):f&&(s=f.getParent())&&s.is("li")&&(f.breakParent(s),s=f.getNext(),h.moveToElementEditStart(s),f.move(f.getPrevious())),o||a){if(f?(f.is("li")||!i.test(f.getName())&&!f.is("pre"))&&(k=f.clone()):p&&(k=p.clone()),k?j&&!k.is("li")&&k.renameNode(q):s&&s.is("li")?k=s:(k=l.createElement(q),f&&(r=f.getDirection())&&k.setAttribute("dir",r)),l=m.elementPath)for(j=0,q=l.elements.length;q>j&&(s=l.elements[j],!s.equals(l.block)&&!s.equals(l.blockLimit));j++)CKEDITOR.dtd.$removeEmpty[s.getName()]&&(s=s.clone(),k.moveChildren(s),k.append(s));k.appendBogus(),k.getParent()||h.insertNode(k),k.is("li")&&k.removeAttribute("value"),!CKEDITOR.env.ie||!o||a&&f.getChildCount()||(h.moveToElementEditStart(a?f:k),h.select()),h.moveToElementEditStart(o&&!a?p:k)}else p.is("li")&&(k=h.clone(),k.selectNodeContents(p),k=new CKEDITOR.dom.walker(k),k.evaluator=function(a){return!(e(a)||d(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in CKEDITOR.dtd.$inline&&!(a.getName()in CKEDITOR.dtd.$empty))},(s=k.next())&&s.type==CKEDITOR.NODE_ELEMENT&&s.is("ul","ol")&&(CKEDITOR.env.needsBrFiller?l.createElement("br"):l.createText(" ")).insertBefore(s)),p&&h.moveToElementEditStart(p);h.select(),h.scrollIntoView()}}},enterBr:function(a,c,d,e){if(d=d||b(a)){var f=d.document,g=d.checkEndOfBlock(),j=new CKEDITOR.dom.elementPath(a.getSelection().getStartElement()),k=j.block,l=k&&j.block.getName();e||"li"!=l?(!e&&g&&i.test(l)?(g=k.getDirection())?(f=f.createElement("div"),f.setAttribute("dir",g),f.insertAfter(k),d.setStart(f,0)):(f.createElement("br").insertAfter(k),CKEDITOR.env.gecko&&f.createText("").insertAfter(k),d.setStartAt(k.getNext(),CKEDITOR.env.ie?CKEDITOR.POSITION_BEFORE_START:CKEDITOR.POSITION_AFTER_START)):(a="pre"==l&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?f.createText("\r"):f.createElement("br"),d.deleteContents(),d.insertNode(a), +CKEDITOR.env.needsBrFiller?(f.createText("\ufeff").insertAfter(a),g&&(k||j.blockLimit).appendBogus(),a.getNext().$.nodeValue="",d.setStartAt(a.getNext(),CKEDITOR.POSITION_AFTER_START)):d.setStartAt(a,CKEDITOR.POSITION_AFTER_END)),d.collapse(!0),d.select(),d.scrollIntoView()):h(a,c,d,e)}}};var f=CKEDITOR.plugins.enterkey,g=f.enterBr,h=f.enterBlock,i=/^h[1-6]$/}(),function(){function a(a,b){var c={},d=[],e={nbsp:" ",shy:"ÂÂ",gt:">",lt:"<",amp:"&",apos:"'",quot:'"'};if(a=a.replace(/\b(nbsp|shy|gt|lt|amp|apos|quot)(?:,|$)/g,function(a,f){var g=b?"&"+f+";":e[f];return c[g]=b?e[f]:"&"+f+";",d.push(g),""}),!b&&a){a=a.split(",");var f,g=document.createElement("div");for(g.innerHTML="&"+a.join(";&")+";",f=g.innerHTML,g=null,g=0;g<f.length;g++){var h=f.charAt(g);c[h]="&"+a[g]+";",d.push(h)}}return c.regex=d.join(b?"|":""),c}CKEDITOR.plugins.add("entities",{afterInit:function(b){function c(a){return i[a]}function d(a){return"force"!=e.entities_processNumerical&&g[a]?g[a]:"&#"+a.charCodeAt(0)+";"}var e=b.config;if(b=(b=b.dataProcessor)&&b.htmlFilter){var f=[];!1!==e.basicEntities&&f.push("nbsp,gt,lt,amp"),e.entities&&(f.length&&f.push("quot,iexcl,cent,pound,curren,yen,brvbar,sect,uml,copy,ordf,laquo,not,shy,reg,macr,deg,plusmn,sup2,sup3,acute,micro,para,middot,cedil,sup1,ordm,raquo,frac14,frac12,frac34,iquest,times,divide,fnof,bull,hellip,prime,Prime,oline,frasl,weierp,image,real,trade,alefsym,larr,uarr,rarr,darr,harr,crarr,lArr,uArr,rArr,dArr,hArr,forall,part,exist,empty,nabla,isin,notin,ni,prod,sum,minus,lowast,radic,prop,infin,ang,and,or,cap,cup,int,there4,sim,cong,asymp,ne,equiv,le,ge,sub,sup,nsub,sube,supe,oplus,otimes,perp,sdot,lceil,rceil,lfloor,rfloor,lang,rang,loz,spades,clubs,hearts,diams,circ,tilde,ensp,emsp,thinsp,zwnj,zwj,lrm,rlm,ndash,mdash,lsquo,rsquo,sbquo,ldquo,rdquo,bdquo,dagger,Dagger,permil,lsaquo,rsaquo,euro"),e.entities_latin&&f.push("Agrave,Aacute,Acirc,Atilde,Auml,Aring,AElig,Ccedil,Egrave,Eacute,Ecirc,Euml,Igrave,Iacute,Icirc,Iuml,ETH,Ntilde,Ograve,Oacute,Ocirc,Otilde,Ouml,Oslash,Ugrave,Uacute,Ucirc,Uuml,Yacute,THORN,szlig,agrave,aacute,acirc,atilde,auml,aring,aelig,ccedil,egrave,eacute,ecirc,euml,igrave,iacute,icirc,iuml,eth,ntilde,ograve,oacute,ocirc,otilde,ouml,oslash,ugrave,uacute,ucirc,uuml,yacute,thorn,yuml,OElig,oelig,Scaron,scaron,Yuml"),e.entities_greek&&f.push("Alpha,Beta,Gamma,Delta,Epsilon,Zeta,Eta,Theta,Iota,Kappa,Lambda,Mu,Nu,Xi,Omicron,Pi,Rho,Sigma,Tau,Upsilon,Phi,Chi,Psi,Omega,alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota,kappa,lambda,mu,nu,xi,omicron,pi,rho,sigmaf,sigma,tau,upsilon,phi,chi,psi,omega,thetasym,upsih,piv"),e.entities_additional&&f.push(e.entities_additional));var g=a(f.join(",")),h=g.regex?"["+g.regex+"]":"a^";delete g.regex,e.entities&&e.entities_processNumerical&&(h="[^ -~]|"+h);var h=new RegExp(h,"g"),i=a("nbsp,gt,lt,amp,shy",!0),j=new RegExp(i.regex,"g");b.addRules({text:function(a){return a.replace(j,c).replace(h,d)}},{applyToAll:!0,excludeNestedEditable:!0})}}})}(),CKEDITOR.config.basicEntities=!0,CKEDITOR.config.entities=!0,CKEDITOR.config.entities_latin=!0,CKEDITOR.config.entities_greek=!0,CKEDITOR.config.entities_additional="#39",CKEDITOR.plugins.add("popup"),CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{popup:function(a,b,c,d){b=b||"80%",c=c||"70%","string"==typeof b&&1<b.length&&"%"==b.substr(b.length-1,1)&&(b=parseInt(window.screen.width*parseInt(b,10)/100,10)),"string"==typeof c&&1<c.length&&"%"==c.substr(c.length-1,1)&&(c=parseInt(window.screen.height*parseInt(c,10)/100,10)),640>b&&(b=640),420>c&&(c=420);var e=parseInt((window.screen.height-c)/2,10),f=parseInt((window.screen.width-b)/2,10);d=(d||"location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes")+",width="+b+",height="+c+",top="+e+",left="+f;var g=window.open("",null,d,!0);if(!g)return!1;try{-1==navigator.userAgent.toLowerCase().indexOf(" chrome/")&&(g.moveTo(f,e),g.resizeTo(b,c)),g.focus(),g.location.href=a}catch(h){window.open(a,null,d,!0)}return!0}}),function(){function a(a,b){var c=[];if(!b)return a;for(var d in b)c.push(d+"="+encodeURIComponent(b[d]));return a+(-1!=a.indexOf("?")?"&":"?")+c.join("&")}function b(a){return a+="",a.charAt(0).toUpperCase()+a.substr(1)}function c(){var c=this.getDialog(),d=c.getParentEditor();d._.filebrowserSe=this;var e=d.config["filebrowser"+b(c.getName())+"WindowWidth"]||d.config.filebrowserWindowWidth||"80%",c=d.config["filebrowser"+b(c.getName())+"WindowHeight"]||d.config.filebrowserWindowHeight||"70%",f=this.filebrowser.params||{};f.CKEditor=d.name,f.CKEditorFuncNum=d._.filebrowserFn,f.langCode||(f.langCode=d.langCode),f=a(this.filebrowser.url,f),d.popup(f,e,c,d.config.filebrowserWindowFeatures||d.config.fileBrowserWindowFeatures)}function d(){var a=this.getDialog();return a.getParentEditor()._.filebrowserSe=this,!(!a.getContentElement(this["for"][0],this["for"][1]).getInputElement().$.value||!a.getContentElement(this["for"][0],this["for"][1]).getAction())}function e(b,c,d){var e=d.params||{};e.CKEditor=b.name,e.CKEditorFuncNum=b._.filebrowserFn,e.langCode||(e.langCode=b.langCode),c.action=a(d.url,e),c.filebrowser=d}function f(a,g,h,i){if(i&&i.length)for(var j,k=i.length;k--;)if(j=i[k],"hbox"!=j.type&&"vbox"!=j.type&&"fieldset"!=j.type||f(a,g,h,j.children),j.filebrowser)if("string"==typeof j.filebrowser&&(j.filebrowser={action:"fileButton"==j.type?"QuickUpload":"Browse",target:j.filebrowser}),"Browse"==j.filebrowser.action){var l=j.filebrowser.url;void 0===l&&(l=a.config["filebrowser"+b(g)+"BrowseUrl"],void 0===l&&(l=a.config.filebrowserBrowseUrl)),l&&(j.onClick=c,j.filebrowser.url=l,j.hidden=!1)}else if("QuickUpload"==j.filebrowser.action&&j["for"]&&(l=j.filebrowser.url,void 0===l&&(l=a.config["filebrowser"+b(g)+"UploadUrl"],void 0===l&&(l=a.config.filebrowserUploadUrl)),l)){var m=j.onClick;j.onClick=function(a){var b=a.sender;return m&&!1===m.call(b,a)?!1:d.call(b,a)?(a=b.getDialog().getContentElement(this["for"][0],this["for"][1]).getInputElement(),(b=new CKEDITOR.dom.element(a.$.form))&&((a=b.$.elements.ckCsrfToken)?a=new CKEDITOR.dom.element(a):(a=new CKEDITOR.dom.element("input"),a.setAttributes({name:"ckCsrfToken",type:"hidden"}),b.append(a)),a.setAttribute("value",CKEDITOR.tools.getCsrfToken())),!0):!1},j.filebrowser.url=l,j.hidden=!1,e(a,h.getContents(j["for"][0]).get(j["for"][1]),j.filebrowser)}}function g(a,b,c){if(-1!==c.indexOf(";")){c=c.split(";");for(var d=0;d<c.length;d++)if(g(a,b,c[d]))return!0;return!1}return(a=a.getContents(b).get(c).filebrowser)&&a.url}function h(a,b){var c=this._.filebrowserSe.getDialog(),d=this._.filebrowserSe["for"],e=this._.filebrowserSe.filebrowser.onSelect;d&&c.getContentElement(d[0],d[1]).reset(),"function"==typeof b&&!1===b.call(this._.filebrowserSe)||e&&!1===e.call(this._.filebrowserSe,a,b)||("string"==typeof b&&b&&alert(b),a&&(d=this._.filebrowserSe,c=d.getDialog(),d=d.filebrowser.target||null)&&(d=d.split(":"),(e=c.getContentElement(d[0],d[1]))&&(e.setValue(a),c.selectPage(d[0]))))}CKEDITOR.plugins.add("filebrowser",{requires:"popup",init:function(a){a._.filebrowserFn=CKEDITOR.tools.addFunction(h,a),a.on("destroy",function(){CKEDITOR.tools.removeFunction(this._.filebrowserFn)})}}),CKEDITOR.on("dialogDefinition",function(a){if(a.editor.plugins.filebrowser)for(var b,c=a.data.definition,d=0;d<c.contents.length;++d)(b=c.contents[d])&&(f(a.editor,a.data.name,c,b.elements),b.hidden&&b.filebrowser&&(b.hidden=!g(c,b.id,b.filebrowser)))})}(),function(){function a(a){var d=a.config,e=a.fire("uiSpace",{space:"top",html:""}).html,f=function(){function e(a,b,d){h.setStyle(b,c(d)),h.setStyle("position",a)}function g(a){var b=j.getDocumentPosition();switch(a){case"top":e("absolute","top",b.y-n-q);break;case"pin":e("fixed","top",s);break;case"bottom":e("absolute","top",b.y+(l.height||l.bottom-l.top)+q)}i=a}var i,j,k,l,m,n,o,p=d.floatSpaceDockedOffsetX||0,q=d.floatSpaceDockedOffsetY||0,r=d.floatSpacePinnedOffsetX||0,s=d.floatSpacePinnedOffsetY||0;return function(e){if(j=a.editable()){var s=e&&"focus"==e.name;s&&h.show(),a.fire("floatingSpaceLayout",{show:s}),h.removeStyle("left"),h.removeStyle("right"),k=h.getClientRect(),l=j.getClientRect(),m=b.getViewPaneSize(),n=k.height,o="pageXOffset"in b.$?b.$.pageXOffset:CKEDITOR.document.$.documentElement.scrollLeft,i?(g(n+q<=l.top?"top":n+q>m.height-l.bottom?"pin":"bottom"),e=m.width/2,e=d.floatSpacePreferRight?"right":0<l.left&&l.right<m.width&&l.width>k.width?"rtl"==d.contentsLangDirection?"right":"left":e-l.left>l.right-e?"left":"right",k.width>m.width?(e="left",s=0):(s="left"==e?0<l.left?l.left:0:l.right<m.width?m.width-l.right:0,s+k.width>m.width&&(e="left"==e?"right":"left",s=0)),h.setStyle(e,c(("pin"==i?r:p)+s+("pin"==i?0:"left"==e?o:-o)))):(i="pin",g("pin"),f(e))}}}();if(e){var g=new CKEDITOR.template('<div id="cke_{name}" class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_float cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" title="'+(CKEDITOR.env.gecko?" ":"")+'" lang="{langCode}" role="application" style="{style}"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':" ")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':" ")+'<div class="cke_inner"><div id="{topId}" class="cke_top" role="presentation">{content}</div></div></div>'),h=CKEDITOR.document.getBody().append(CKEDITOR.dom.element.createFromHtml(g.output({content:e,id:a.id,langDir:a.lang.dir,langCode:a.langCode,name:a.name,style:"display:none;z-index:"+(d.baseFloatZIndex-1),topId:a.ui.spaceId("top"),voiceLabel:a.title}))),i=CKEDITOR.tools.eventsBuffer(500,f),j=CKEDITOR.tools.eventsBuffer(100,f);h.unselectable(),h.on("mousedown",function(a){a=a.data,a.getTarget().hasAscendant("a",1)||a.preventDefault()}),a.on("focus",function(c){f(c),a.on("change",i.input),b.on("scroll",j.input),b.on("resize",j.input)}),a.on("blur",function(){h.hide(),a.removeListener("change",i.input),b.removeListener("scroll",j.input),b.removeListener("resize",j.input)}),a.on("destroy",function(){b.removeListener("scroll",j.input),b.removeListener("resize",j.input),h.clearCustomData(),h.remove()}),a.focusManager.hasFocus&&h.show(),a.focusManager.add(h,1)}}var b=CKEDITOR.document.getWindow(),c=CKEDITOR.tools.cssLength;CKEDITOR.plugins.add("floatingspace",{init:function(b){b.on("loaded",function(){a(this)},null,null,20)}})}(),CKEDITOR.plugins.add("listblock",{requires:"panel",onLoad:function(){var a=CKEDITOR.addTemplate("panel-list",'<ul role="presentation" class="cke_panel_list">{items}</ul>'),b=CKEDITOR.addTemplate("panel-list-item",'<li id="{id}" class="cke_panel_listItem" role=presentation><a id="{id}_option" _cke_focus=1 hidefocus=true title="{title}" href="javascript:void(\'{val}\')" {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;" role="option">{text}</a></li>'),c=CKEDITOR.addTemplate("panel-list-group",'<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>'),d=/\'/g;CKEDITOR.ui.panel.prototype.addListBlock=function(a,b){return this.addBlock(a,new CKEDITOR.ui.listBlock(this.getHolderElement(),b))},CKEDITOR.ui.listBlock=CKEDITOR.tools.createClass({base:CKEDITOR.ui.panel.block,$:function(a,b){b=b||{};var c=b.attributes||(b.attributes={});(this.multiSelect=!!b.multiSelect)&&(c["aria-multiselectable"]=!0),!c.role&&(c.role="listbox"),this.base.apply(this,arguments),this.element.setAttribute("role",c.role),c=this.keys,c[40]="next",c[9]="next",c[38]="prev",c[CKEDITOR.SHIFT+9]="prev",c[32]=CKEDITOR.env.ie?"mouseup":"click",CKEDITOR.env.ie&&(c[13]="mouseup"),this._.pendingHtml=[],this._.pendingList=[],this._.items={},this._.groups={}},_:{close:function(){if(this._.started){var b=a.output({items:this._.pendingList.join("")});this._.pendingList=[],this._.pendingHtml.push(b),delete this._.started}},getClick:function(){return this._.click||(this._.click=CKEDITOR.tools.addFunction(function(a){var b=this.toggle(a);this.onClick&&this.onClick(a,b)},this)),this._.click}},proto:{add:function(a,c,e){var f=CKEDITOR.tools.getNextId();this._.started||(this._.started=1,this._.size=this._.size||0),this._.items[a]=f;var g;g=CKEDITOR.tools.htmlEncodeAttr(a).replace(d,"\\'"),a={id:f,val:g,onclick:CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick",clickFn:this._.getClick(),title:CKEDITOR.tools.htmlEncodeAttr(e||a),text:c||a},this._.pendingList.push(b.output(a))},startGroup:function(a){this._.close();var b=CKEDITOR.tools.getNextId();this._.groups[a]=b,this._.pendingHtml.push(c.output({id:b,label:a}))},commit:function(){this._.close(),this.element.appendHtml(this._.pendingHtml.join("")),delete this._.size,this._.pendingHtml=[]},toggle:function(a){var b=this.isMarked(a);return b?this.unmark(a):this.mark(a),!b},hideGroup:function(a){var b=(a=this.element.getDocument().getById(this._.groups[a]))&&a.getNext();a&&(a.setStyle("display","none"),b&&"ul"==b.getName()&&b.setStyle("display","none"))},hideItem:function(a){this.element.getDocument().getById(this._.items[a]).setStyle("display","none")},showAll:function(){var a,b=this._.items,c=this._.groups,d=this.element.getDocument();for(a in b)d.getById(b[a]).setStyle("display","");for(var e in c)b=d.getById(c[e]),a=b.getNext(),b.setStyle("display",""),a&&"ul"==a.getName()&&a.setStyle("display","")},mark:function(a){this.multiSelect||this.unmarkAll(),a=this._.items[a];var b=this.element.getDocument().getById(a);b.addClass("cke_selected"),this.element.getDocument().getById(a+"_option").setAttribute("aria-selected",!0),this.onMark&&this.onMark(b)},unmark:function(a){var b=this.element.getDocument();a=this._.items[a];var c=b.getById(a);c.removeClass("cke_selected"),b.getById(a+"_option").removeAttribute("aria-selected"),this.onUnmark&&this.onUnmark(c)},unmarkAll:function(){var a,b=this._.items,c=this.element.getDocument();for(a in b){var d=b[a];c.getById(d).removeClass("cke_selected"),c.getById(d+"_option").removeAttribute("aria-selected")}this.onUnmark&&this.onUnmark()},isMarked:function(a){return this.element.getDocument().getById(this._.items[a]).hasClass("cke_selected")},focus:function(a){this._.focusIndex=-1;var b,c=this.element.getElementsByTag("a"),d=-1;if(a){for(b=this.element.getDocument().getById(this._.items[a]).getFirst();a=c.getItem(++d);)if(a.equals(b)){this._.focusIndex=d;break}}else this.element.focus();b&&setTimeout(function(){b.focus()},0)}}})}}),function(){var a='<a id="{id}" class="cke_button cke_button__{name} cke_button_{state} {cls}"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' title="{title}" tabindex="-1" hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="{hasArrow}" aria-disabled="{ariaDisabled}"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(a+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(a+=' onblur="this.style.cssText = this.style.cssText;"');var a=a+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"'),a=a+'> </span><span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>{arrowHtml}</a>',b=CKEDITOR.addTemplate("buttonArrow",'<span class="cke_button_arrow">'+(CKEDITOR.env.hc?"▼":"")+"</span>"),c=CKEDITOR.addTemplate("button",a);CKEDITOR.plugins.add("button",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_BUTTON,CKEDITOR.ui.button.handler)}}),CKEDITOR.UI_BUTTON="button",CKEDITOR.ui.button=function(a){CKEDITOR.tools.extend(this,a,{title:a.label,click:a.click||function(b){b.execCommand(a.command)}}),this._={}},CKEDITOR.ui.button.handler={create:function(a){return new CKEDITOR.ui.button(a)}},CKEDITOR.ui.button.prototype={render:function(a,d){function e(){var b=a.mode;b&&(b=this.modes[b]?void 0!==o[b]?o[b]:CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,b=a.readOnly&&!this.readOnly?CKEDITOR.TRISTATE_DISABLED:b,this.setState(b),this.refresh&&this.refresh())}var f,g=CKEDITOR.env,h=this._.id=CKEDITOR.tools.getNextId(),i="",j=this.command;this._.editor=a;var k={id:h,button:this,editor:a,focus:function(){CKEDITOR.document.getById(h).focus()},execute:function(){this.button.click(a)},attach:function(a){this.button.attach(a)}},l=CKEDITOR.tools.addFunction(function(a){return k.onkey?(a=new CKEDITOR.dom.event(a),!1!==k.onkey(k,a.getKeystroke())):void 0}),m=CKEDITOR.tools.addFunction(function(a){var b;return k.onfocus&&(b=!1!==k.onfocus(k,new CKEDITOR.dom.event(a))),b}),n=0;if(k.clickFn=f=CKEDITOR.tools.addFunction(function(){n&&(a.unlockSelection(1),n=0),k.execute(),g.iOS&&a.focus()}),this.modes){var o={};a.on("beforeModeUnload",function(){a.mode&&this._.state!=CKEDITOR.TRISTATE_DISABLED&&(o[a.mode]=this._.state)},this),a.on("activeFilterChange",e,this),a.on("mode",e,this),!this.readOnly&&a.on("readOnly",e,this)}else j&&(j=a.getCommand(j))&&(j.on("state",function(){this.setState(j.state)},this),i+=j.state==CKEDITOR.TRISTATE_ON?"on":j.state==CKEDITOR.TRISTATE_DISABLED?"disabled":"off");this.directional&&a.on("contentDirChanged",function(b){var c=CKEDITOR.document.getById(this._.id),d=c.getFirst();b=b.data,b!=a.lang.dir?c.addClass("cke_"+b):c.removeClass("cke_ltr").removeClass("cke_rtl"),d.setAttribute("style",CKEDITOR.skin.getIconStyle(q,"rtl"==b,this.icon,this.iconOffset))},this),j||(i+="off");var p=this.name||this.command,q=p;return this.icon&&!/\./.test(this.icon)&&(q=this.icon,this.icon=null),i={id:h,name:p,iconName:q,label:this.label,cls:this.className||"",state:i,ariaDisabled:"disabled"==i?"true":"false",title:this.title,titleJs:g.gecko&&!g.hc?"":(this.title||"").replace("'",""),hasArrow:this.hasArrow?"true":"false",keydownFn:l,focusFn:m,clickFn:f,style:CKEDITOR.skin.getIconStyle(q,"rtl"==a.lang.dir,this.icon,this.iconOffset),arrowHtml:this.hasArrow?b.output():""},c.output(i,d),this.onRender&&this.onRender(),k},setState:function(a){if(this._.state==a)return!1;this._.state=a;var b=CKEDITOR.document.getById(this._.id);return b?(b.setState(a,"cke_button"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this.hasArrow?(a=a==CKEDITOR.TRISTATE_ON?this._.editor.lang.button.selectedLabel.replace(/%1/g,this.label):this.label,CKEDITOR.document.getById(this._.id+"_label").setText(a)):a==CKEDITOR.TRISTATE_ON?b.setAttribute("aria-pressed",!0):b.removeAttribute("aria-pressed"),!0):!1},getState:function(){return this._.state},toFeature:function(a){if(this._.feature)return this._.feature;var b=this;return this.allowedContent||this.requiredContent||!this.command||(b=a.getCommand(this.command)||b),this._.feature=b}},CKEDITOR.ui.prototype.addButton=function(a,b){this.add(a,CKEDITOR.UI_BUTTON,b)}}(),CKEDITOR.plugins.add("richcombo",{requires:"floatpanel,listblock,button",beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_RICHCOMBO,CKEDITOR.ui.richCombo.handler)}}),function(){var a='<span id="{id}" class="cke_combo cke_combo__{name} {cls}" role="presentation"><span id="{id}_label" class="cke_combo_label">{label}</span><a class="cke_combo_button" title="{title}" tabindex="-1"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="true"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(a+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(a+=' onblur="this.style.cssText = this.style.cssText;"');var a=a+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span><span class="cke_combo_open"><span class="cke_combo_arrow">'+(CKEDITOR.env.hc?"▼":CKEDITOR.env.air?" ":"")+"</span></span></a></span>"),b=CKEDITOR.addTemplate("combo",a);CKEDITOR.UI_RICHCOMBO="richcombo",CKEDITOR.ui.richCombo=CKEDITOR.tools.createClass({$:function(a){CKEDITOR.tools.extend(this,a,{canGroup:!1,title:a.label,modes:{wysiwyg:1},editorFocus:1}),a=this.panel||{},delete this.panel,this.id=CKEDITOR.tools.getNextNumber(),this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document,a.className="cke_combopanel",a.block={multiSelect:a.multiSelect,attributes:a.attributes},a.toolbarRelated=!0,this._={panelDefinition:a,items:{}}},proto:{renderHtml:function(a){var b=[];return this.render(a,b),b.join("")},render:function(a,c){function d(){if(this.getState()!=CKEDITOR.TRISTATE_ON){var b=this.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;a.readOnly&&!this.readOnly&&(b=CKEDITOR.TRISTATE_DISABLED),this.setState(b),this.setValue(""),b!=CKEDITOR.TRISTATE_DISABLED&&this.refresh&&this.refresh()}}var e=CKEDITOR.env,f="cke_"+this.id,g=CKEDITOR.tools.addFunction(function(b){l&&(a.unlockSelection(1),l=0),i.execute(b)},this),h=this,i={id:f,combo:this,focus:function(){CKEDITOR.document.getById(f).getChild(1).focus()},execute:function(b){var c=h._;if(c.state!=CKEDITOR.TRISTATE_DISABLED)if(h.createPanel(a),c.on)c.panel.hide();else{h.commit();var d=h.getValue();d?c.list.mark(d):c.list.unmarkAll(),c.panel.showBlock(h.id,new CKEDITOR.dom.element(b),4)}},clickFn:g};a.on("activeFilterChange",d,this),a.on("mode",d,this),a.on("selectionChange",d,this),!this.readOnly&&a.on("readOnly",d,this);var j=CKEDITOR.tools.addFunction(function(b,c){b=new CKEDITOR.dom.event(b);var d=b.getKeystroke();switch(40==d&&a.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)}),d){case 13:case 32:case 40:CKEDITOR.tools.callFunction(g,c);break;default:i.onkey(i,d)}b.preventDefault()}),k=CKEDITOR.tools.addFunction(function(){i.onfocus&&i.onfocus()}),l=0;return i.keyDownFn=j,e={id:f,name:this.name||this.command,label:this.label,title:this.title,cls:this.className||"",titleJs:e.gecko&&!e.hc?"":(this.title||"").replace("'",""),keydownFn:j,focusFn:k,clickFn:g},b.output(e,c),this.onRender&&this.onRender(),i},createPanel:function(a){if(!this._.panel){var b=this._.panelDefinition,c=this._.panelDefinition.block,d=b.parent||CKEDITOR.document.getBody(),e="cke_combopanel__"+this.name,f=new CKEDITOR.ui.floatPanel(a,d,b),g=f.addListBlock(this.id,c),h=this;f.onShow=function(){this.element.addClass(e),h.setState(CKEDITOR.TRISTATE_ON),h._.on=1,h.editorFocus&&!a.focusManager.hasFocus&&a.focus(),h.onOpen&&h.onOpen(),a.once("panelShow",function(){g.focus(!g.multiSelect&&h.getValue())})},f.onHide=function(b){this.element.removeClass(e),h.setState(h.modes&&h.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),h._.on=0,!b&&h.onClose&&h.onClose()},f.onEscape=function(){f.hide(1)},g.onClick=function(a,b){h.onClick&&h.onClick.call(h,a,b),f.hide()},this._.panel=f,this._.list=g,f.getBlock(this.id).onHide=function(){h._.on=0,h.setState(CKEDITOR.TRISTATE_OFF)},this.init&&this.init()}},setValue:function(a,b){this._.value=a;var c=this.document.getById("cke_"+this.id+"_text");c&&(a||b?c.removeClass("cke_combo_inlinelabel"):(b=this.label,c.addClass("cke_combo_inlinelabel")),c.setText("undefined"!=typeof b?b:a))},getValue:function(){return this._.value||""},unmarkAll:function(){this._.list.unmarkAll()},mark:function(a){this._.list.mark(a)},hideItem:function(a){this._.list.hideItem(a)},hideGroup:function(a){this._.list.hideGroup(a)},showAll:function(){this._.list.showAll()},add:function(a,b,c){this._.items[a]=c||a,this._.list.add(a,b,c)},startGroup:function(a){this._.list.startGroup(a)},commit:function(){this._.committed||(this._.list.commit(),this._.committed=1,CKEDITOR.ui.fire("ready",this)),this._.committed=1},setState:function(a){if(this._.state!=a){var b=this.document.getById("cke_"+this.id);b.setState(a,"cke_combo"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this._.state=a}},getState:function(){return this._.state},enable:function(){this._.state==CKEDITOR.TRISTATE_DISABLED&&this.setState(this._.lastState)},disable:function(){this._.state!=CKEDITOR.TRISTATE_DISABLED&&(this._.lastState=this._.state,this.setState(CKEDITOR.TRISTATE_DISABLED))}},statics:{handler:{create:function(a){return new CKEDITOR.ui.richCombo(a)}}}}),CKEDITOR.ui.prototype.addRichCombo=function(a,b){this.add(a,CKEDITOR.UI_RICHCOMBO,b)}}(),CKEDITOR.plugins.add("format",{requires:"richcombo",init:function(a){if(!a.blockless){for(var b=a.config,c=a.lang.format,d=b.format_tags.split(";"),e={},f=0,g=[],h=0;h<d.length;h++){var i=d[h],j=new CKEDITOR.style(b["format_"+i]);a.filter.customConfig&&!a.filter.check(j)||(f++,e[i]=j,e[i]._.enterMode=a.config.enterMode,g.push(j))}0!==f&&a.ui.addRichCombo("Format",{label:c.label,title:c.panelTitle,toolbar:"styles,20",allowedContent:g,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(b.contentsCss),multiSelect:!1,attributes:{"aria-label":c.panelTitle}},init:function(){this.startGroup(c.panelTitle);for(var a in e){var b=c["tag_"+a];this.add(a,e[a].buildPreview(b),b)}},onClick:function(b){a.focus(),a.fire("saveSnapshot"),b=e[b];var c=a.elementPath();a[b.checkActive(c,a)?"removeStyle":"applyStyle"](b),setTimeout(function(){a.fire("saveSnapshot")},0)},onRender:function(){a.on("selectionChange",function(b){var c=this.getValue();b=b.data.path,this.refresh();for(var d in e)if(e[d].checkActive(b,a))return void(d!=c&&this.setValue(d,a.lang.format["tag_"+d]));this.setValue("")},this)},onOpen:function(){this.showAll();for(var b in e)a.activeFilter.check(e[b])||this.hideItem(b)},refresh:function(){var b=a.elementPath();if(b){if(b.isContextFor("p"))for(var c in e)if(a.activeFilter.check(e[c]))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}}})}}}),CKEDITOR.config.format_tags="p;h1;h2;h3;h4;h5;h6;pre;address;div",CKEDITOR.config.format_p={element:"p"},CKEDITOR.config.format_div={element:"div"},CKEDITOR.config.format_pre={element:"pre"},CKEDITOR.config.format_address={element:"address"},CKEDITOR.config.format_h1={element:"h1"},CKEDITOR.config.format_h2={element:"h2"},CKEDITOR.config.format_h3={element:"h3"},CKEDITOR.config.format_h4={element:"h4"},CKEDITOR.config.format_h5={element:"h5"},CKEDITOR.config.format_h6={element:"h6"},function(){var a={canUndo:!1,exec:function(a){var b=a.document.createElement("hr");a.insertElement(b)},allowedContent:"hr",requiredContent:"hr"};CKEDITOR.plugins.add("horizontalrule",{init:function(b){b.blockless||(b.addCommand("horizontalrule",a),b.ui.addButton&&b.ui.addButton("HorizontalRule",{label:b.lang.horizontalrule.toolbar,command:"horizontalrule",toolbar:"insert,40"}))}})}(),CKEDITOR.plugins.add("htmlwriter",{init:function(a){var b=new CKEDITOR.htmlWriter;b.forceSimpleAmpersand=a.config.forceSimpleAmpersand,b.indentationChars=a.config.dataIndentationChars||" ",a.dataProcessor.writer=b}}),CKEDITOR.htmlWriter=CKEDITOR.tools.createClass({base:CKEDITOR.htmlParser.basicWriter,$:function(){this.base(),this.indentationChars=" ",this.selfClosingEnd=" />",this.lineBreakChars="\n",this.sortAttributes=1,this._.indent=0,this._.indentation="",this._.inPre=0,this._.rules={};var a,b=CKEDITOR.dtd;for(a in CKEDITOR.tools.extend({},b.$nonBodyContent,b.$block,b.$listItem,b.$tableContent))this.setRules(a,{indent:!b[a]["#"],breakBeforeOpen:1,breakBeforeClose:!b[a]["#"],breakAfterClose:1,needsSpace:a in b.$block&&!(a in{li:1,dt:1,dd:1})});this.setRules("br",{breakAfterOpen:1}),this.setRules("title",{indent:0,breakAfterOpen:0}),this.setRules("style",{indent:0,breakBeforeClose:1}),this.setRules("pre",{breakAfterOpen:1,indent:0})},proto:{openTag:function(a){var b=this._.rules[a];this._.afterCloser&&b&&b.needsSpace&&this._.needsSpace&&this._.output.push("\n"),this._.indent?this.indentation():b&&b.breakBeforeOpen&&(this.lineBreak(),this.indentation()),this._.output.push("<",a),this._.afterCloser=0},openTagClose:function(a,b){var c=this._.rules[a];b?(this._.output.push(this.selfClosingEnd),c&&c.breakAfterClose&&(this._.needsSpace=c.needsSpace)):(this._.output.push(">"),c&&c.indent&&(this._.indentation+=this.indentationChars)),c&&c.breakAfterOpen&&this.lineBreak(),"pre"==a&&(this._.inPre=1)},attribute:function(a,b){"string"==typeof b&&(this.forceSimpleAmpersand&&(b=b.replace(/&/g,"&")),b=CKEDITOR.tools.htmlEncodeAttr(b)),this._.output.push(" ",a,'="',b,'"')},closeTag:function(a){var b=this._.rules[a];b&&b.indent&&(this._.indentation=this._.indentation.substr(this.indentationChars.length)),this._.indent?this.indentation():b&&b.breakBeforeClose&&(this.lineBreak(),this.indentation()),this._.output.push("</",a,">"),"pre"==a&&(this._.inPre=0),b&&b.breakAfterClose&&(this.lineBreak(),this._.needsSpace=b.needsSpace),this._.afterCloser=1},text:function(a){this._.indent&&(this.indentation(),!this._.inPre&&(a=CKEDITOR.tools.ltrim(a))),this._.output.push(a)},comment:function(a){this._.indent&&this.indentation(),this._.output.push("<!--",a,"-->")},lineBreak:function(){!this._.inPre&&0<this._.output.length&&this._.output.push(this.lineBreakChars),this._.indent=1},indentation:function(){!this._.inPre&&this._.indentation&&this._.output.push(this._.indentation),this._.indent=0},reset:function(){this._.output=[],this._.indent=0,this._.indentation="",this._.afterCloser=0,this._.inPre=0},setRules:function(a,b){var c=this._.rules[a];c?CKEDITOR.tools.extend(c,b,!0):this._.rules[a]=b}}}),function(){function a(a,b){return b||(b=a.getSelection().getSelectedElement()),b&&b.is("img")&&!b.data("cke-realelement")&&!b.isReadOnly()?b:void 0}function b(a){var b=a.getStyle("float");return"inherit"!=b&&"none"!=b||(b=0),b||(b=a.getAttribute("align")),b}CKEDITOR.plugins.add("image",{requires:"dialog",init:function(b){if(!b.plugins.image2){CKEDITOR.dialog.add("image",this.path+"dialogs/image.js");var c="img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}";CKEDITOR.dialog.isTabEnabled(b,"image","advanced")&&(c="img[alt,dir,id,lang,longdesc,!src,title]{*}(*)"),b.addCommand("image",new CKEDITOR.dialogCommand("image",{allowedContent:c,requiredContent:"img[alt,src]",contentTransformations:[["img{width}: sizeToStyle","img[width]: sizeToAttribute"],["img{float}: alignmentToStyle","img[align]: alignmentToAttribute"]]})),b.ui.addButton&&b.ui.addButton("Image",{label:b.lang.common.image,command:"image",toolbar:"insert,10"}),b.on("doubleclick",function(a){var b=a.data.element;!b.is("img")||b.data("cke-realelement")||b.isReadOnly()||(a.data.dialog="image")}),b.addMenuItems&&b.addMenuItems({image:{label:b.lang.image.menu,command:"image",group:"image"}}),b.contextMenu&&b.contextMenu.addListener(function(c){return a(b,c)?{image:CKEDITOR.TRISTATE_OFF}:void 0})}},afterInit:function(c){function d(d){var e=c.getCommand("justify"+d);e&&("left"!=d&&"right"!=d||e.on("exec",function(e){var f,g=a(c);g&&(f=b(g),f==d?(g.removeStyle("float"),d==b(g)&&g.removeAttribute("align")):g.setStyle("float",d),e.cancel())}),e.on("refresh",function(e){var f=a(c);f&&(f=b(f),this.setState(f==d?CKEDITOR.TRISTATE_ON:"right"==d||"left"==d?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),e.cancel())}))}c.plugins.image2||(d("left"),d("right"),d("center"),d("block"))}})}(),CKEDITOR.config.image_removeLinkByEmptyURL=!0,function(){function a(a,b){var c=d.exec(a),e=d.exec(b);if(c){if(!c[2]&&"px"==e[2])return e[1];if("px"==c[2]&&!e[2])return e[1]+"px"}return b}var b=CKEDITOR.htmlParser.cssStyle,c=CKEDITOR.tools.cssLength,d=/^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i,e={elements:{$:function(c){var d=c.attributes;if((d=(d=(d=d&&d["data-cke-realelement"])&&new CKEDITOR.htmlParser.fragment.fromHtml(decodeURIComponent(d)))&&d.children[0])&&c.attributes["data-cke-resizable"]){var e=new b(c).rules;c=d.attributes;var f=e.width,e=e.height;f&&(c.width=a(c.width,f)),e&&(c.height=a(c.height,e))}return d}}};CKEDITOR.plugins.add("fakeobjects",{init:function(a){a.filter.allow("img[!data-cke-realelement,src,alt,title](*){*}","fakeobjects")},afterInit:function(a){(a=(a=a.dataProcessor)&&a.htmlFilter)&&a.addRules(e,{applyToAll:!0})}}),CKEDITOR.editor.prototype.createFakeElement=function(a,d,e,f){ +var g=this.lang.fakeobjects,g=g[e]||g.unknown;return d={"class":d,"data-cke-realelement":encodeURIComponent(a.getOuterHtml()),"data-cke-real-node-type":a.type,alt:g,title:g,align:a.getAttribute("align")||""},CKEDITOR.env.hc||(d.src=CKEDITOR.tools.transparentImageData),e&&(d["data-cke-real-element-type"]=e),f&&(d["data-cke-resizable"]=f,e=new b,f=a.getAttribute("width"),a=a.getAttribute("height"),f&&(e.rules.width=c(f)),a&&(e.rules.height=c(a)),e.populate(d)),this.document.createElement("img",{attributes:d})},CKEDITOR.editor.prototype.createFakeParserElement=function(a,d,e,f){var g,h=this.lang.fakeobjects,h=h[e]||h.unknown;return g=new CKEDITOR.htmlParser.basicWriter,a.writeHtml(g),g=g.getHtml(),d={"class":d,"data-cke-realelement":encodeURIComponent(g),"data-cke-real-node-type":a.type,alt:h,title:h,align:a.attributes.align||""},CKEDITOR.env.hc||(d.src=CKEDITOR.tools.transparentImageData),e&&(d["data-cke-real-element-type"]=e),f&&(d["data-cke-resizable"]=f,f=a.attributes,a=new b,e=f.width,f=f.height,void 0!==e&&(a.rules.width=c(e)),void 0!==f&&(a.rules.height=c(f)),a.populate(d)),new CKEDITOR.htmlParser.element("img",d)},CKEDITOR.editor.prototype.restoreRealElement=function(b){if(b.data("cke-real-node-type")!=CKEDITOR.NODE_ELEMENT)return null;var c=CKEDITOR.dom.element.createFromHtml(decodeURIComponent(b.data("cke-realelement")),this.document);if(b.data("cke-resizable")){var d=b.getStyle("width");b=b.getStyle("height"),d&&c.setAttribute("width",a(c.getAttribute("width"),d)),b&&c.setAttribute("height",a(c.getAttribute("height"),b))}return c}}(),function(){function a(a){return a.replace(/'/g,"\\$&")}function b(a){for(var b,c=a.length,d=[],e=0;c>e;e++)b=a.charCodeAt(e),d.push(b);return"String.fromCharCode("+d.join(",")+")"}function c(b,c){var d,e,f=b.plugins.link,g=f.compiledProtectionFunction.params;e=[f.compiledProtectionFunction.name,"("];for(var h=0;h<g.length;h++)f=g[h].toLowerCase(),d=c[f],h>0&&e.push(","),e.push("'",d?a(encodeURIComponent(c[f])):"","'");return e.push(")"),e.join("")}function d(a){a=a.config.emailProtection||"";var b;return a&&"encode"!=a&&(b={},a.replace(/^([^(]+)\(([^)]+)\)$/,function(a,c,d){b.name=c,b.params=[],d.replace(/[^,\s]+/g,function(a){b.params.push(a)})})),b}CKEDITOR.plugins.add("link",{requires:"dialog,fakeobjects",onLoad:function(){function a(a){return c.replace(/%1/g,"rtl"==a?"right":"left").replace(/%2/g,"cke_contents_"+a)}var b="background:url("+CKEDITOR.getUrl(this.path+"images"+(CKEDITOR.env.hidpi?"/hidpi":"")+"/anchor.png")+") no-repeat %1 center;border:1px dotted #00f;background-size:16px;",c=".%2 a.cke_anchor,.%2 a.cke_anchor_empty,.cke_editable.%2 a[name],.cke_editable.%2 a[data-cke-saved-name]{"+b+"padding-%1:18px;cursor:auto;}.%2 img.cke_anchor{"+b+"width:16px;min-height:15px;height:1.15em;vertical-align:text-bottom;}";CKEDITOR.addCss(a("ltr")+a("rtl"))},init:function(a){var b="a[!href]";CKEDITOR.dialog.isTabEnabled(a,"link","advanced")&&(b=b.replace("]",",accesskey,charset,dir,id,lang,name,rel,tabindex,title,type]{*}(*)")),CKEDITOR.dialog.isTabEnabled(a,"link","target")&&(b=b.replace("]",",target,onclick]")),a.addCommand("link",new CKEDITOR.dialogCommand("link",{allowedContent:b,requiredContent:"a[href]"})),a.addCommand("anchor",new CKEDITOR.dialogCommand("anchor",{allowedContent:"a[!name,id]",requiredContent:"a[name]"})),a.addCommand("unlink",new CKEDITOR.unlinkCommand),a.addCommand("removeAnchor",new CKEDITOR.removeAnchorCommand),a.setKeystroke(CKEDITOR.CTRL+76,"link"),a.ui.addButton&&(a.ui.addButton("Link",{label:a.lang.link.toolbar,command:"link",toolbar:"links,10"}),a.ui.addButton("Unlink",{label:a.lang.link.unlink,command:"unlink",toolbar:"links,20"}),a.ui.addButton("Anchor",{label:a.lang.link.anchor.toolbar,command:"anchor",toolbar:"links,30"})),CKEDITOR.dialog.add("link",this.path+"dialogs/link.js"),CKEDITOR.dialog.add("anchor",this.path+"dialogs/anchor.js"),a.on("doubleclick",function(b){var c=CKEDITOR.plugins.link.getSelectedLink(a)||b.data.element;c.isReadOnly()||(c.is("a")?(b.data.dialog=!c.getAttribute("name")||c.getAttribute("href")&&c.getChildCount()?"link":"anchor",b.data.link=c):CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,c)&&(b.data.dialog="anchor"))},null,null,0),a.on("doubleclick",function(b){b.data.dialog in{link:1,anchor:1}&&b.data.link&&a.getSelection().selectElement(b.data.link)},null,null,20),a.addMenuItems&&a.addMenuItems({anchor:{label:a.lang.link.anchor.menu,command:"anchor",group:"anchor",order:1},removeAnchor:{label:a.lang.link.anchor.remove,command:"removeAnchor",group:"anchor",order:5},link:{label:a.lang.link.menu,command:"link",group:"link",order:1},unlink:{label:a.lang.link.unlink,command:"unlink",group:"link",order:5}}),a.contextMenu&&a.contextMenu.addListener(function(b){if(!b||b.isReadOnly())return null;if(b=CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b),!b&&!(b=CKEDITOR.plugins.link.getSelectedLink(a)))return null;var c={};return b.getAttribute("href")&&b.getChildCount()&&(c={link:CKEDITOR.TRISTATE_OFF,unlink:CKEDITOR.TRISTATE_OFF}),b&&b.hasAttribute("name")&&(c.anchor=c.removeAnchor=CKEDITOR.TRISTATE_OFF),c}),this.compiledProtectionFunction=d(a)},afterInit:function(a){a.dataProcessor.dataFilter.addRules({elements:{a:function(b){return b.attributes.name?b.children.length?null:a.createFakeParserElement(b,"cke_anchor","anchor"):null}}});var b=a._.elementsPath&&a._.elementsPath.filters;b&&b.push(function(b,c){return"a"!=c||!CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b)&&(!b.getAttribute("name")||b.getAttribute("href")&&b.getChildCount())?void 0:"anchor"})}});var e=/^javascript:/,f=/^mailto:([^?]+)(?:\?(.+))?$/,g=/subject=([^;?:@&=$,\/]*)/i,h=/body=([^;?:@&=$,\/]*)/i,i=/^#(.*)$/,j=/^((?:http|https|ftp|news):\/\/)?(.*)$/,k=/^(_(?:self|top|parent|blank))$/,l=/^javascript:void\(location\.href='mailto:'\+String\.fromCharCode\(([^)]+)\)(?:\+'(.*)')?\)$/,m=/^javascript:([^(]+)\(([^)]+)\)$/,n=/\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*/,o=/(?:^|,)([^=]+)=(\d+|yes|no)/gi,p={id:"advId",dir:"advLangDir",accessKey:"advAccessKey",name:"advName",lang:"advLangCode",tabindex:"advTabIndex",title:"advTitle",type:"advContentType","class":"advCSSClasses",charset:"advCharset",style:"advStyles",rel:"advRel"};CKEDITOR.plugins.link={getSelectedLink:function(a){var b=a.getSelection(),c=b.getSelectedElement();return c&&c.is("a")?c:(b=b.getRanges()[0])?(b.shrink(CKEDITOR.SHRINK_TEXT),a.elementPath(b.getCommonAncestor()).contains("a",1)):null},getEditorAnchors:function(a){for(var b,c=a.editable(),d=c.isInline()&&!a.plugins.divarea?a.document:c,c=d.getElementsByTag("a"),d=d.getElementsByTag("img"),e=[],f=0;b=c.getItem(f++);)(b.data("cke-saved-name")||b.hasAttribute("name"))&&e.push({name:b.data("cke-saved-name")||b.getAttribute("name"),id:b.getAttribute("id")});for(f=0;b=d.getItem(f++);)(b=this.tryRestoreFakeAnchor(a,b))&&e.push({name:b.getAttribute("name"),id:b.getAttribute("id")});return e},fakeAnchor:!0,tryRestoreFakeAnchor:function(a,b){if(b&&b.data("cke-real-element-type")&&"anchor"==b.data("cke-real-element-type")){var c=a.restoreRealElement(b);if(c.data("cke-saved-name"))return c}},parseLinkAttributes:function(a,b){var c,d=b&&(b.data("cke-saved-href")||b.getAttribute("href"))||"",q=a.plugins.link.compiledProtectionFunction,r=a.config.emailProtection,s={};if(d.match(e)&&("encode"==r?d=d.replace(l,function(a,b,c){return c=c||"","mailto:"+String.fromCharCode.apply(String,b.split(","))+c.replace(/\\'/g,"'")}):r&&d.replace(m,function(a,b,c){if(b==q.name){s.type="email",a=s.email={},b=/(^')|('$)/g,c=c.match(/[^,\s]+/g);for(var d,e,f=c.length,g=0;f>g;g++)d=decodeURIComponent,e=c[g].replace(b,"").replace(/\\'/g,"'"),e=d(e),d=q.params[g].toLowerCase(),a[d]=e;a.address=[a.name,a.domain].join("@")}})),!s.type)if(r=d.match(i))s.type="anchor",s.anchor={},s.anchor.name=s.anchor.id=r[1];else if(r=d.match(f)){c=d.match(g),d=d.match(h),s.type="email";var t=s.email={};t.address=r[1],c&&(t.subject=decodeURIComponent(c[1])),d&&(t.body=decodeURIComponent(d[1]))}else d&&(c=d.match(j))&&(s.type="url",s.url={},s.url.protocol=c[1],s.url.url=c[2]);if(b){if(d=b.getAttribute("target"))s.target={type:d.match(k)?d:"frame",name:d};else if(d=(d=b.data("cke-pa-onclick")||b.getAttribute("onclick"))&&d.match(n))for(s.target={type:"popup",name:d[1]};r=o.exec(d[2]);)"yes"!=r[2]&&"1"!=r[2]||r[1]in{height:1,width:1,top:1,left:1}?isFinite(r[2])&&(s.target[r[1]]=r[2]):s.target[r[1]]=!0;var u,d={};for(u in p)(r=b.getAttribute(u))&&(d[p[u]]=r);(u=b.data("cke-saved-name")||d.advName)&&(d.advName=u),CKEDITOR.tools.isEmpty(d)||(s.advanced=d)}return s},getLinkAttributes:function(d,e){var f=d.config.emailProtection||"",g={};switch(e.type){case"url":var f=e.url&&void 0!==e.url.protocol?e.url.protocol:"http://",h=e.url&&CKEDITOR.tools.trim(e.url.url)||"";g["data-cke-saved-href"]=0===h.indexOf("/")?h:f+h;break;case"anchor":f=e.anchor&&e.anchor.id,g["data-cke-saved-href"]="#"+(e.anchor&&e.anchor.name||f||"");break;case"email":var i=e.email,h=i.address;switch(f){case"":case"encode":var j=encodeURIComponent(i.subject||""),k=encodeURIComponent(i.body||""),i=[];j&&i.push("subject="+j),k&&i.push("body="+k),i=i.length?"?"+i.join("&"):"","encode"==f?(f=["javascript:void(location.href='mailto:'+",b(h)],i&&f.push("+'",a(i),"'"),f.push(")")):f=["mailto:",h,i];break;default:f=h.split("@",2),i.name=f[0],i.domain=f[1],f=["javascript:",c(d,i)]}g["data-cke-saved-href"]=f.join("")}if(e.target)if("popup"==e.target.type){for(var f=["window.open(this.href, '",e.target.name||"","', '"],l="resizable status location toolbar menubar fullscreen scrollbars dependent".split(" "),h=l.length,j=function(a){e.target[a]&&l.push(a+"="+e.target[a])},i=0;h>i;i++)l[i]+=e.target[l[i]]?"=yes":"=no";j("width"),j("left"),j("height"),j("top"),f.push(l.join(","),"'); return false;"),g["data-cke-pa-onclick"]=f.join("")}else"notSet"!=e.target.type&&e.target.name&&(g.target=e.target.name);if(e.advanced){for(var m in p)(f=e.advanced[p[m]])&&(g[m]=f);g.name&&(g["data-cke-saved-name"]=g.name)}g["data-cke-saved-href"]&&(g.href=g["data-cke-saved-href"]),m={target:1,onclick:1,"data-cke-pa-onclick":1,"data-cke-saved-name":1},e.advanced&&CKEDITOR.tools.extend(m,p);for(var n in g)delete m[n];return{set:g,removed:CKEDITOR.tools.objectKeys(m)}}},CKEDITOR.unlinkCommand=function(){},CKEDITOR.unlinkCommand.prototype={exec:function(a){var b=new CKEDITOR.style({element:"a",type:CKEDITOR.STYLE_INLINE,alwaysRemoveElement:1});a.removeStyle(b)},refresh:function(a,b){var c=b.lastElement&&b.lastElement.getAscendant("a",!0);c&&"a"==c.getName()&&c.getAttribute("href")&&c.getChildCount()?this.setState(CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_DISABLED)},contextSensitive:1,startDisabled:1,requiredContent:"a[href]"},CKEDITOR.removeAnchorCommand=function(){},CKEDITOR.removeAnchorCommand.prototype={exec:function(a){var b,c=a.getSelection(),d=c.createBookmarks();c&&(b=c.getSelectedElement())&&(b.getChildCount()?b.is("a"):CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b))?b.remove(1):(b=CKEDITOR.plugins.link.getSelectedLink(a))&&(b.hasAttribute("href")?(b.removeAttributes({name:1,"data-cke-saved-name":1}),b.removeClass("cke_anchor")):b.remove(1)),c.selectBookmarks(d)},requiredContent:"a[name]"},CKEDITOR.tools.extend(CKEDITOR.config,{linkShowAdvancedTab:!0,linkShowTargetTab:!0})}(),function(){function a(a,b,c){return l(b)&&l(c)&&c.equals(b.getNext(function(a){return!(W(a)||X(a)||m(a))}))}function b(a){this.upper=a[0],this.lower=a[1],this.set.apply(this,a.slice(2))}function c(a){var b=a.element;if(b&&l(b)&&(b=b.getAscendant(a.triggers,!0))&&a.editable.contains(b)){var c=g(b);if("true"==c.getAttribute("contenteditable"))return b;if(c.is(a.triggers))return c}return null}function d(a,b,c){return u(a,b),u(a,c),a=b.size.bottom,c=c.size.top,a&&c?0|(a+c)/2:a||c}function e(a,b,c){return b=b[c?"getPrevious":"getNext"](function(b){return b&&b.type==CKEDITOR.NODE_TEXT&&!W(b)||l(b)&&!m(b)&&!k(a,b)})}function f(a,b,c){return a>b&&c>a}function g(a,b){if(a.data("cke-editable"))return null;for(b||(a=a.getParent());a&&!a.data("cke-editable");){if(a.hasAttribute("contenteditable"))return a;a=a.getParent()}return null}function h(a){var b=a.doc,c=A('<span contenteditable="false" style="'+S+"position:absolute;border-top:1px dashed "+a.boxColor+'"></span>',b),d=CKEDITOR.getUrl(this.path+"images/"+(B.hidpi?"hidpi/":"")+"icon"+(a.rtl?"-rtl":"")+".png");for(y(c,{attach:function(){return this.wrap.getParent()||this.wrap.appendTo(a.editable,!0),this},lineChildren:[y(A('<span title="'+a.editor.lang.magicline.title+'" contenteditable="false">↵</span>',b),{base:S+"height:17px;width:17px;"+(a.rtl?"left":"right")+":17px;background:url("+d+") center no-repeat "+a.boxColor+";cursor:pointer;"+(B.hc?"font-size: 15px;line-height:14px;border:1px solid #fff;text-align:center;":"")+(B.hidpi?"background-size: 9px 10px;":""),looks:["top:-8px; border-radius: 2px;","top:-17px; border-radius: 2px 2px 0px 0px;","top:-1px; border-radius: 0px 0px 2px 2px;"]}),y(A(U,b),{base:T+"left:0px;border-left-color:"+a.boxColor+";",looks:["border-width:8px 0 8px 8px;top:-8px","border-width:8px 0 0 8px;top:-8px","border-width:0 0 8px 8px;top:0px"]}),y(A(U,b),{base:T+"right:0px;border-right-color:"+a.boxColor+";",looks:["border-width:8px 8px 8px 0;top:-8px","border-width:8px 8px 0 0;top:-8px","border-width:0 8px 8px 0;top:0px"]})],detach:function(){return this.wrap.getParent()&&this.wrap.remove(),this},mouseNear:function(){u(a,this);var b=a.holdDistance,c=this.size;return!!(c&&f(a.mouse.y,c.top-b,c.bottom+b)&&f(a.mouse.x,c.left-b,c.right+b))},place:function(){var b=a.view,c=a.editable,d=a.trigger,e=d.upper,g=d.lower,h=e||g,i=h.getParent(),j={};this.trigger=d,e&&u(a,e,!0),g&&u(a,g,!0),u(a,i,!0),a.inInlineMode&&v(a,!0),i.equals(c)?(j.left=b.scroll.x,j.right=-b.scroll.x,j.width=""):(j.left=h.size.left-h.size.margin.left+b.scroll.x-(a.inInlineMode?b.editable.left+b.editable.border.left:0),j.width=h.size.outerWidth+h.size.margin.left+h.size.margin.right+b.scroll.x,j.right=""),e&&g?j.top=e.size.margin.bottom===g.size.margin.top?0|e.size.bottom+e.size.margin.bottom/2:e.size.margin.bottom<g.size.margin.top?e.size.bottom+e.size.margin.bottom:e.size.bottom+e.size.margin.bottom-g.size.margin.top:e?g||(j.top=e.size.bottom+e.size.margin.bottom):j.top=g.size.top-g.size.margin.top,d.is(J)||f(j.top,b.scroll.y-15,b.scroll.y+5)?(j.top=a.inInlineMode?0:b.scroll.y,this.look(J)):d.is(K)||f(j.top,b.pane.bottom-5,b.pane.bottom+15)?(j.top=a.inInlineMode?b.editable.height+b.editable.padding.top+b.editable.padding.bottom:b.pane.bottom-1,this.look(K)):(a.inInlineMode&&(j.top-=b.editable.top+b.editable.border.top),this.look(L)),a.inInlineMode&&(j.top--,j.top+=b.editable.scroll.top,j.left+=b.editable.scroll.left);for(var k in j)j[k]=CKEDITOR.tools.cssLength(j[k]);this.setStyles(j)},look:function(a){if(this.oldLook!=a){for(var b,c=this.lineChildren.length;c--;)(b=this.lineChildren[c]).setAttribute("style",b.base+b.looks[0|a/2]);this.oldLook=a}},wrap:new z("span",a.doc)}),b=c.lineChildren.length;b--;)c.lineChildren[b].appendTo(c);c.look(L),c.appendTo(c.wrap),c.unselectable(),c.lineChildren[0].on("mouseup",function(b){c.detach(),i(a,function(b){var c=a.line.trigger;b[c.is(F)?"insertBefore":"insertAfter"](c.is(F)?c.lower:c.upper)},!0),a.editor.focus(),B.ie||a.enterMode==CKEDITOR.ENTER_BR||a.hotNode.scrollIntoView(),b.data.preventDefault(!0)}),c.on("mousedown",function(a){a.data.preventDefault(!0)}),a.line=c}function i(a,b,c){var d,e=new CKEDITOR.dom.range(a.doc),f=a.editor;B.ie&&a.enterMode==CKEDITOR.ENTER_BR?d=a.doc.createText(M):(d=(d=g(a.element,!0))&&d.data("cke-enter-mode")||a.enterMode,d=new z(E[d],a.doc),d.is("br")||a.doc.createText(M).appendTo(d)),c&&f.fire("saveSnapshot"),b(d),e.moveToPosition(d,CKEDITOR.POSITION_AFTER_START),f.getSelection().selectRanges([e]),a.hotNode=d,c&&f.fire("saveSnapshot")}function j(a,b){return{canUndo:!0,modes:{wysiwyg:1},exec:function(){function d(c){var d=B.ie&&9>B.version?" ":M,e=a.hotNode&&a.hotNode.getText()==d&&a.element.equals(a.hotNode)&&a.lastCmdDirection===!!b;i(a,function(d){e&&a.hotNode&&a.hotNode.remove(),d[b?"insertAfter":"insertBefore"](c),d.setAttributes({"data-cke-magicline-hot":1,"data-cke-magicline-dir":!!b}),a.lastCmdDirection=!!b}),B.ie||a.enterMode==CKEDITOR.ENTER_BR||a.hotNode.scrollIntoView(),a.line.detach()}return function(f){f=f.getSelection().getStartElement();var h;if(f=f.getAscendant(Q,1),!p(a,f)&&f&&!f.equals(a.editable)&&!f.contains(a.editable)){(h=g(f))&&"false"==h.getAttribute("contenteditable")&&(f=h),a.element=f,h=e(a,f,!b);var i;l(h)&&h.is(a.triggers)&&h.is(P)&&(!e(a,h,!b)||(i=e(a,h,!b))&&l(i)&&i.is(a.triggers))?d(h):(i=c(a,f),l(i)&&(e(a,i,!b)?(f=e(a,i,!b))&&l(f)&&f.is(a.triggers)&&d(i):d(i)))}}}()}}function k(a,b){if(!b||b.type!=CKEDITOR.NODE_ELEMENT||!b.$)return!1;var c=a.line;return c.wrap.equals(b)||c.wrap.contains(b)}function l(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.$}function m(a){if(!l(a))return!1;var b;return(b=n(a))||(l(a)?(b={left:1,right:1,center:1},b=!(!b[a.getComputedStyle("float")]&&!b[a.getAttribute("align")])):b=!1),b}function n(a){return!!{absolute:1,fixed:1}[a.getComputedStyle("position")]}function o(a,b){return l(b)?b.is(a.triggers):null}function p(a,b){if(!b)return!1;for(var c=b.getParents(1),d=c.length;d--;)for(var e=a.tabuList.length;e--;)if(c[d].hasAttribute(a.tabuList[e]))return!0;return!1}function q(a,b,c){return(b=b[c?"getLast":"getFirst"](function(b){return a.isRelevant(b)&&!b.is(O)}))?(u(a,b),c?b.size.top>a.mouse.y:b.size.bottom<a.mouse.y):!1}function r(a){var c=a.editable,d=a.mouse,e=a.view,g=a.triggerOffset;v(a);var h=d.y>(a.inInlineMode?e.editable.top+e.editable.height/2:Math.min(e.editable.height,e.pane.height)/2),c=c[h?"getLast":"getFirst"](function(a){return!(W(a)||X(a))});return c?(k(a,c)&&(c=a.line.wrap[h?"getPrevious":"getNext"](function(a){return!(W(a)||X(a))})),l(c)&&!m(c)&&o(a,c)?(u(a,c),!h&&0<=c.size.top&&f(d.y,0,c.size.top+g)?(a=a.inInlineMode||0===e.scroll.y?J:L,new b([null,c,F,I,a])):h&&c.size.bottom<=e.pane.height&&f(d.y,c.size.bottom-g,e.pane.height)?(a=a.inInlineMode||f(c.size.bottom,e.pane.height-g,e.pane.height)?K:L,new b([c,null,G,I,a])):null):null):null}function s(a){var d=a.mouse,g=a.view,h=a.triggerOffset,i=c(a);if(!i)return null;u(a,i);var j,k,h=Math.min(h,0|i.size.outerHeight/2),n=[];if(f(d.y,i.size.top-1,i.size.top+h))k=!1;else{if(!f(d.y,i.size.bottom-h,i.size.bottom+1))return null;k=!0}if(m(i)||q(a,i,k)||i.getParent().is(N))return null;var p=e(a,i,!k);if(p){if(p&&p.type==CKEDITOR.NODE_TEXT)return null;if(l(p)){if(m(p)||!o(a,p)||p.getParent().is(N))return null;n=[p,i][k?"reverse":"concat"]().concat([H,I])}}else i.equals(a.editable[k?"getLast":"getFirst"](a.isRelevant))?(v(a),k&&f(d.y,i.size.bottom-h,g.pane.height)&&f(i.size.bottom,g.pane.height-h,g.pane.height)?j=K:f(d.y,0,i.size.top+h)&&(j=J)):j=L,n=[null,i][k?"reverse":"concat"]().concat([k?G:F,I,j,i.equals(a.editable[k?"getLast":"getFirst"](a.isRelevant))?k?K:J:L]);return 0 in n?new b(n):null}function t(a,b,c,d){for(var e=b.getDocumentPosition(),f={},g={},h={},i={},j=Z.length;j--;)f[Z[j]]=parseInt(b.getComputedStyle.call(b,"border-"+Z[j]+"-width"),10)||0,h[Z[j]]=parseInt(b.getComputedStyle.call(b,"padding-"+Z[j]),10)||0,g[Z[j]]=parseInt(b.getComputedStyle.call(b,"margin-"+Z[j]),10)||0;return c&&!d||w(a,d),i.top=e.y-(c?0:a.view.scroll.y),i.left=e.x-(c?0:a.view.scroll.x),i.outerWidth=b.$.offsetWidth,i.outerHeight=b.$.offsetHeight,i.height=i.outerHeight-(h.top+h.bottom+f.top+f.bottom),i.width=i.outerWidth-(h.left+h.right+f.left+f.right),i.bottom=i.top+i.outerHeight,i.right=i.left+i.outerWidth,a.inInlineMode&&(i.scroll={top:b.$.scrollTop,left:b.$.scrollLeft}),y({border:f,padding:h,margin:g,ignoreScroll:c},i,!0)}function u(a,b,c){if(!l(b))return b.size=null;if(b.size){if(b.size.ignoreScroll==c&&b.size.date>new Date-R)return null}else b.size={};return y(b.size,t(a,b,c),{date:+new Date},!0)}function v(a,b){a.view.editable=t(a,a.editable,b,!0)}function w(a,b){a.view||(a.view={});var c=a.view;if(!(!b&&c&&c.date>new Date-R)){var d=a.win,c=d.getScrollPosition(),d=d.getViewPaneSize();y(a.view,{scroll:{x:c.x,y:c.y,width:a.doc.$.documentElement.scrollWidth-d.width,height:a.doc.$.documentElement.scrollHeight-d.height},pane:{width:d.width,height:d.height,bottom:d.height+c.y},date:+new Date},!0)}}function x(a,c,d,e){for(var f=e,g=e,h=0,i=!1,j=!1,k=a.view.pane.height,l=a.mouse;l.y+h<k&&0<l.y-h&&(i||(i=c(f,e)),j||(j=c(g,e)),!i&&0<l.y-h&&(f=d(a,{x:l.x,y:l.y-h})),!j&&l.y+h<k&&(g=d(a,{x:l.x,y:l.y+h})),!i||!j);)h+=2;return new b([f,g,null,null])}CKEDITOR.plugins.add("magicline",{init:function(a){var d,f,g,o=a.config,q=o.magicline_triggerOffset||30,u={editor:a,enterMode:o.enterMode,triggerOffset:q,holdDistance:0|q*(o.magicline_holdDistance||.5),boxColor:o.magicline_color||"#ff0000",rtl:"rtl"==o.contentsLangDirection,tabuList:["data-cke-hidden-sel"].concat(o.magicline_tabuList||[]),triggers:o.magicline_everywhere?Q:{table:1,hr:1,div:1,ul:1,ol:1,dl:1,form:1,blockquote:1}};u.isRelevant=function(a){return l(a)&&!k(u,a)&&!m(a)},a.on("contentDom",function(){var l=a.editable(),m=a.document,q=a.window;y(u,{editable:l,inInlineMode:l.isInline(),doc:m,win:q,hotNode:null},!0),u.boundary=u.inInlineMode?u.editable:u.doc.getDocumentElement(),l.is(D.$inline)||(u.inInlineMode&&!n(l)&&l.setStyles({position:"relative",top:null,left:null}),h.call(this,u),w(u),l.attachListener(a,"beforeUndoImage",function(){u.line.detach()}),l.attachListener(a,"beforeGetData",function(){u.line.wrap.getParent()&&(u.line.detach(),a.once("getData",function(){u.line.attach()},null,null,1e3))},null,null,0),l.attachListener(u.inInlineMode?m:m.getWindow().getFrame(),"mouseout",function(b){if("wysiwyg"==a.mode)if(u.inInlineMode){var c=b.data.$.clientX;b=b.data.$.clientY,w(u),v(u,!0);var d=u.view.editable,e=u.view.scroll;c>d.left-e.x&&c<d.right-e.x&&b>d.top-e.y&&b<d.bottom-e.y||(clearTimeout(g),g=null,u.line.detach())}else clearTimeout(g),g=null,u.line.detach()}),l.attachListener(l,"keyup",function(){u.hiddenMode=0}),l.attachListener(l,"keydown",function(b){if("wysiwyg"==a.mode)switch(b.data.getKeystroke()){case 2228240:case 16:u.hiddenMode=1,u.line.detach()}}),l.attachListener(u.inInlineMode?l:m,"mousemove",function(b){if(f=!0,"wysiwyg"==a.mode&&!a.readOnly&&!g){var c={x:b.data.$.clientX,y:b.data.$.clientY};g=setTimeout(function(){u.mouse=c,g=u.trigger=null,w(u),f&&!u.hiddenMode&&a.focusManager.hasFocus&&!u.line.mouseNear()&&(u.element=V(u,!0))&&((u.trigger=r(u)||s(u)||Y(u))&&!p(u,u.trigger.upper||u.trigger.lower)?u.line.attach().place():(u.trigger=null,u.line.detach()),f=!1)},30)}}),l.attachListener(q,"scroll",function(){"wysiwyg"==a.mode&&(u.line.detach(),B.webkit&&(u.hiddenMode=1,clearTimeout(d),d=setTimeout(function(){u.mouseDown||(u.hiddenMode=0)},50)))}),l.attachListener(C?m:q,"mousedown",function(){"wysiwyg"==a.mode&&(u.line.detach(),u.hiddenMode=1,u.mouseDown=1)}),l.attachListener(C?m:q,"mouseup",function(){u.hiddenMode=0,u.mouseDown=0}),a.addCommand("accessPreviousSpace",j(u)),a.addCommand("accessNextSpace",j(u,!0)),a.setKeystroke([[o.magicline_keystrokePrevious,"accessPreviousSpace"],[o.magicline_keystrokeNext,"accessNextSpace"]]),a.on("loadSnapshot",function(){var b,c,d,e;for(e in{p:1,br:1,div:1})for(b=a.document.getElementsByTag(e),d=b.count();d--;)if((c=b.getItem(d)).data("cke-magicline-hot"))return u.hotNode=c,void(u.lastCmdDirection="true"===c.data("cke-magicline-dir"))}),this.backdoor={accessFocusSpace:i,boxTrigger:b,isLine:k,getAscendantTrigger:c,getNonEmptyNeighbour:e,getSize:t,that:u,triggerEdge:s,triggerEditable:r,triggerExpand:Y})},this)}});var y=CKEDITOR.tools.extend,z=CKEDITOR.dom.element,A=z.createFromHtml,B=CKEDITOR.env,C=CKEDITOR.env.ie&&9>CKEDITOR.env.version,D=CKEDITOR.dtd,E={},F=128,G=64,H=32,I=16,J=4,K=2,L=1,M=" ",N=D.$listItem,O=D.$tableContent,P=y({},D.$nonEditable,D.$empty),Q=D.$block,R=100,S="width:0px;height:0px;padding:0px;margin:0px;display:block;z-index:9999;color:#fff;position:absolute;font-size: 0px;line-height:0px;",T=S+"border-color:transparent;display:block;border-style:solid;",U="<span>"+M+"</span>";E[CKEDITOR.ENTER_BR]="br",E[CKEDITOR.ENTER_P]="p",E[CKEDITOR.ENTER_DIV]="div",b.prototype={set:function(a,b,c){return this.properties=a+b+(c||L),this},is:function(a){return(this.properties&a)==a}};var V=function(){function a(a,b){var c=a.$.elementFromPoint(b.x,b.y);return c&&c.nodeType?new CKEDITOR.dom.element(c):null}return function(b,c,d){if(!b.mouse)return null;var e=b.doc,f=b.line.wrap;d=d||b.mouse;var g=a(e,d);return c&&k(b,g)&&(f.hide(),g=a(e,d),f.show()),!g||g.type!=CKEDITOR.NODE_ELEMENT||!g.$||B.ie&&9>B.version&&!b.boundary.equals(g)&&!b.boundary.contains(g)?null:g}}(),W=CKEDITOR.dom.walker.whitespaces(),X=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_COMMENT),Y=function(){function b(b){var e,g,h,i=b.element;if(!l(i)||i.contains(b.editable)||i.isReadOnly())return null;if(h=x(b,function(a,b){return!b.equals(a)},function(a,b){return V(a,!0,b)},i),e=h.upper,g=h.lower,a(b,e,g))return h.set(H,8);if(e&&i.contains(e))for(;!e.getParent().equals(i);)e=e.getParent();else e=i.getFirst(function(a){return c(b,a)});if(g&&i.contains(g))for(;!g.getParent().equals(i);)g=g.getParent();else g=i.getLast(function(a){return c(b,a)});if(!e||!g)return null;if(u(b,e),u(b,g),!f(b.mouse.y,e.size.top,g.size.bottom))return null;for(var j,k,m,n,i=Number.MAX_VALUE;g&&!g.equals(e)&&(k=e.getNext(b.isRelevant));)j=Math.abs(d(b,e,k)-b.mouse.y),i>j&&(i=j,m=e,n=k),e=k,u(b,e);return m&&n&&f(b.mouse.y,m.size.top,n.size.bottom)?(h.upper=m,h.lower=n,h.set(H,8)):null}function c(a,b){return!(b&&b.type==CKEDITOR.NODE_TEXT||X(b)||m(b)||k(a,b)||b.type==CKEDITOR.NODE_ELEMENT&&b.$&&b.is("br"))}return function(c){var d,e=b(c);if(d=e){d=e.upper;var f=e.lower;d=!d||!f||m(f)||m(d)||f.equals(d)||d.equals(f)||f.contains(d)||d.contains(f)?!1:!!(o(c,d)&&o(c,f)&&a(c,d,f))}return d?e:null}}(),Z=["top","left","right","bottom"]}(),CKEDITOR.config.magicline_keystrokePrevious=CKEDITOR.CTRL+CKEDITOR.SHIFT+51,CKEDITOR.config.magicline_keystrokeNext=CKEDITOR.CTRL+CKEDITOR.SHIFT+52,function(){function a(a){if(!a||a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())return[];for(var b=[],c=["style","className"],d=0;d<c.length;d++){var e=a.$.elements.namedItem(c[d]);e&&(e=new CKEDITOR.dom.element(e),b.push([e,e.nextSibling]),e.remove())}return b}function b(a,b){if(a&&a.type==CKEDITOR.NODE_ELEMENT&&"form"==a.getName()&&0<b.length)for(var c=b.length-1;c>=0;c--){var d=b[c][0],e=b[c][1];e?d.insertBefore(e):d.appendTo(a)}}function c(c,d){var e=a(c),f={},g=c.$;return d||(f["class"]=g.className||"",g.className=""),f.inline=g.style.cssText||"",d||(g.style.cssText="position: static; overflow: visible"),b(e),f}function d(c,d){var e=a(c),f=c.$;"class"in d&&(f.className=d["class"]),"inline"in d&&(f.style.cssText=d.inline),b(e)}function e(a){if(!a.editable().isInline()){var b,c=CKEDITOR.instances;for(b in c){var d=c[b];"wysiwyg"!=d.mode||d.readOnly||(d=d.document.getBody(),d.setAttribute("contentEditable",!1),d.setAttribute("contentEditable",!0))}a.editable().hasFocus&&(a.toolbox.focus(),a.focus())}}CKEDITOR.plugins.add("maximize",{init:function(a){function b(){var b=k.getViewPaneSize();a.resize(b.width,b.height,null,!0)}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f,g,h,i=a.lang,j=CKEDITOR.document,k=j.getWindow(),l=CKEDITOR.TRISTATE_OFF;a.addCommand("maximize",{modes:{wysiwyg:!CKEDITOR.env.iOS,source:!CKEDITOR.env.iOS},readOnly:1,editorFocus:!1,exec:function(){var m=a.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}),n=a.ui.space("contents");if("wysiwyg"==a.mode){var o=a.getSelection();f=o&&o.getRanges(),g=k.getScrollPosition()}else{var p=a.editable().$;f=!CKEDITOR.env.ie&&[p.selectionStart,p.selectionEnd],g=[p.scrollLeft,p.scrollTop]}if(this.state==CKEDITOR.TRISTATE_OFF){for(k.on("resize",b),h=k.getScrollPosition(),o=a.container;o=o.getParent();)o.setCustomData("maximize_saved_styles",c(o)),o.setStyle("z-index",a.config.baseFloatZIndex-5);n.setCustomData("maximize_saved_styles",c(n,!0)),m.setCustomData("maximize_saved_styles",c(m,!0)),n={overflow:CKEDITOR.env.webkit?"":"hidden",width:0,height:0},j.getDocumentElement().setStyles(n),!CKEDITOR.env.gecko&&j.getDocumentElement().setStyle("position","fixed"),CKEDITOR.env.gecko&&CKEDITOR.env.quirks||j.getBody().setStyles(n),CKEDITOR.env.ie?setTimeout(function(){k.$.scrollTo(0,0)},0):k.$.scrollTo(0,0),m.setStyle("position",CKEDITOR.env.gecko&&CKEDITOR.env.quirks?"fixed":"absolute"),m.$.offsetLeft,m.setStyles({"z-index":a.config.baseFloatZIndex-5,left:"0px",top:"0px"}),m.addClass("cke_maximized"),b(),n=m.getDocumentPosition(),m.setStyles({left:-1*n.x+"px",top:-1*n.y+"px"}),CKEDITOR.env.gecko&&e(a)}else if(this.state==CKEDITOR.TRISTATE_ON){k.removeListener("resize",b);for(var o=[n,m],q=0;q<o.length;q++)d(o[q],o[q].getCustomData("maximize_saved_styles")),o[q].removeCustomData("maximize_saved_styles");for(o=a.container;o=o.getParent();)d(o,o.getCustomData("maximize_saved_styles")),o.removeCustomData("maximize_saved_styles");CKEDITOR.env.ie?setTimeout(function(){k.$.scrollTo(h.x,h.y)},0):k.$.scrollTo(h.x,h.y),m.removeClass("cke_maximized"),CKEDITOR.env.webkit&&(m.setStyle("display","inline"),setTimeout(function(){m.setStyle("display","block")},0)),a.fire("resize",{outerHeight:a.container.$.offsetHeight,contentsHeight:n.$.offsetHeight,outerWidth:a.container.$.offsetWidth})}this.toggleState(),(o=this.uiItems[0])&&(n=this.state==CKEDITOR.TRISTATE_OFF?i.maximize.maximize:i.maximize.minimize,o=CKEDITOR.document.getById(o._.id),o.getChild(1).setHtml(n),o.setAttribute("title",n),o.setAttribute("href",'javascript:void("'+n+'");')),"wysiwyg"==a.mode?f?(CKEDITOR.env.gecko&&e(a),a.getSelection().selectRanges(f),(p=a.getSelection().getStartElement())&&p.scrollIntoView(!0)):k.$.scrollTo(g.x,g.y):(f&&(p.selectionStart=f[0],p.selectionEnd=f[1]),p.scrollLeft=g[0],p.scrollTop=g[1]),f=g=null,l=this.state,a.fire("maximize",this.state)},canUndo:!1}),a.ui.addButton&&a.ui.addButton("Maximize",{label:i.maximize.maximize,command:"maximize",toolbar:"tools,10"}),a.on("mode",function(){var b=a.getCommand("maximize");b.setState(b.state==CKEDITOR.TRISTATE_DISABLED?CKEDITOR.TRISTATE_DISABLED:l)},null,null,100)}}})}(),function(){function a(a,b,c){var d=CKEDITOR.cleanWord;return d?c():(a=CKEDITOR.getUrl(a.config.pasteFromWordCleanupFile||b+"filter/default.js"),CKEDITOR.scriptLoader.load(a,c,null,!0)),!d}function b(a){a.data.type="html"}CKEDITOR.plugins.add("pastefromword",{requires:"clipboard",init:function(c){var d=0,e=this.path;c.addCommand("pastefromword",{canUndo:!1,async:!0,exec:function(a){var c=this;d=1,a.once("beforePaste",b),a.getClipboardData({title:a.lang.pastefromword.title},function(b){b&&a.fire("paste",{type:"html",dataValue:b.dataValue,method:"paste",dataTransfer:CKEDITOR.plugins.clipboard.initPasteDataTransfer()}),a.fire("afterCommandExec",{name:"pastefromword",command:c,returnValue:!!b})})}}),c.ui.addButton&&c.ui.addButton("PasteFromWord",{label:c.lang.pastefromword.toolbar,command:"pastefromword",toolbar:"clipboard,50"}),c.on("pasteState",function(a){c.getCommand("pastefromword").setState(a.data)}),c.on("paste",function(b){var f=b.data,g=f.dataValue;if(g&&(d||/(class=\"?Mso|style=\"[^\"]*\bmso\-|w:WordDocument)/.test(g))){f.dontFilter=!0;var h=a(c,e,function(){h?c.fire("paste",f):(!c.config.pasteFromWordPromptCleanup||d||confirm(c.lang.pastefromword.confirmCleanup))&&(f.dataValue=CKEDITOR.cleanWord(g,c)),d=0});h&&b.cancel()}},null,null,3)}})}(),function(){var a={canUndo:!1,async:!0,exec:function(b){b.getClipboardData({title:b.lang.pastetext.title},function(c){c&&b.fire("paste",{type:"text",dataValue:c.dataValue,method:"paste",dataTransfer:CKEDITOR.plugins.clipboard.initPasteDataTransfer()}),b.fire("afterCommandExec",{name:"pastetext",command:a,returnValue:!!c})})}};CKEDITOR.plugins.add("pastetext",{requires:"clipboard",init:function(b){b.addCommand("pastetext",a),b.ui.addButton&&b.ui.addButton("PasteText",{label:b.lang.pastetext.button,command:"pastetext",toolbar:"clipboard,40"}),b.config.forcePasteAsPlainText&&b.on("beforePaste",function(a){ +"html"!=a.data.type&&(a.data.type="text")}),b.on("pasteState",function(a){b.getCommand("pastetext").setState(a.data)})}})}(),CKEDITOR.plugins.add("removeformat",{init:function(a){a.addCommand("removeFormat",CKEDITOR.plugins.removeformat.commands.removeformat),a.ui.addButton&&a.ui.addButton("RemoveFormat",{label:a.lang.removeformat.toolbar,command:"removeFormat",toolbar:"cleanup,10"})}}),CKEDITOR.plugins.removeformat={commands:{removeformat:{exec:function(a){for(var b,c=a._.removeFormatRegex||(a._.removeFormatRegex=new RegExp("^(?:"+a.config.removeFormatTags.replace(/,/g,"|")+")$","i")),d=a._.removeAttributes||(a._.removeAttributes=a.config.removeFormatAttributes.split(",")),e=CKEDITOR.plugins.removeformat.filter,f=a.getSelection().getRanges(),g=f.createIterator(),h=function(a){return a.type==CKEDITOR.NODE_ELEMENT};b=g.getNextRange();){b.collapsed||b.enlarge(CKEDITOR.ENLARGE_ELEMENT);var i=b.createBookmark(),j=i.startNode,k=i.endNode,l=function(b){for(var d,f=a.elementPath(b),g=f.elements,h=1;(d=g[h])&&!d.equals(f.block)&&!d.equals(f.blockLimit);h++)c.test(d.getName())&&e(a,d)&&b.breakParent(d)};if(l(j),k)for(l(k),j=j.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT);j&&!j.equals(k);)if(j.isReadOnly()){if(j.getPosition(k)&CKEDITOR.POSITION_CONTAINS)break;j=j.getNext(h)}else l=j.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT),"img"==j.getName()&&j.data("cke-realelement")||!e(a,j)||(c.test(j.getName())?j.remove(1):(j.removeAttributes(d),a.fire("removeFormatCleanup",j))),j=l;b.moveToBookmark(i)}a.forceNextSelectionCheck(),a.getSelection().selectRanges(f)}}},filter:function(a,b){for(var c=a._.removeFormatFilters||[],d=0;d<c.length;d++)if(!1===c[d](b))return!1;return!0}},CKEDITOR.editor.prototype.addRemoveFormatFilter=function(a){this._.removeFormatFilters||(this._.removeFormatFilters=[]),this._.removeFormatFilters.push(a)},CKEDITOR.config.removeFormatTags="b,big,cite,code,del,dfn,em,font,i,ins,kbd,q,s,samp,small,span,strike,strong,sub,sup,tt,u,var",CKEDITOR.config.removeFormatAttributes="class,style,lang,width,height,align,hspace,valign",CKEDITOR.plugins.add("resize",{init:function(a){function b(b){var c=h.width,e=h.height,i=c+(b.data.$.screenX-g.x)*("rtl"==f?-1:1);b=e+(b.data.$.screenY-g.y),j&&(c=Math.max(d.resize_minWidth,Math.min(i,d.resize_maxWidth))),k&&(e=Math.max(d.resize_minHeight,Math.min(b,d.resize_maxHeight))),a.resize(j?c:null,e)}function c(){CKEDITOR.document.removeListener("mousemove",b),CKEDITOR.document.removeListener("mouseup",c),a.document&&(a.document.removeListener("mousemove",b),a.document.removeListener("mouseup",c))}var d=a.config,e=a.ui.spaceId("resizer"),f=a.element?a.element.getDirection(1):"ltr";if(!d.resize_dir&&(d.resize_dir="vertical"),void 0===d.resize_maxWidth&&(d.resize_maxWidth=3e3),void 0===d.resize_maxHeight&&(d.resize_maxHeight=3e3),void 0===d.resize_minWidth&&(d.resize_minWidth=750),void 0===d.resize_minHeight&&(d.resize_minHeight=250),!1!==d.resize_enabled){var g,h,i=null,j=("both"==d.resize_dir||"horizontal"==d.resize_dir)&&d.resize_minWidth!=d.resize_maxWidth,k=("both"==d.resize_dir||"vertical"==d.resize_dir)&&d.resize_minHeight!=d.resize_maxHeight,l=CKEDITOR.tools.addFunction(function(e){i||(i=a.getResizable()),h={width:i.$.offsetWidth||0,height:i.$.offsetHeight||0},g={x:e.screenX,y:e.screenY},d.resize_minWidth>h.width&&(d.resize_minWidth=h.width),d.resize_minHeight>h.height&&(d.resize_minHeight=h.height),CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),a.document&&(a.document.on("mousemove",b),a.document.on("mouseup",c)),e.preventDefault&&e.preventDefault()});a.on("destroy",function(){CKEDITOR.tools.removeFunction(l)}),a.on("uiSpace",function(b){if("bottom"==b.data.space){var c="";j&&!k&&(c=" cke_resizer_horizontal"),!j&&k&&(c=" cke_resizer_vertical");var d='<span id="'+e+'" class="cke_resizer'+c+" cke_resizer_"+f+'" title="'+CKEDITOR.tools.htmlEncode(a.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+l+', event)">'+("ltr"==f?"◢":"◣")+"</span>";"ltr"==f&&"ltr"==c?b.data.html+=d:b.data.html=d+b.data.html}},a,null,100),a.on("maximize",function(b){a.ui.space("resizer")[b.data==CKEDITOR.TRISTATE_ON?"hide":"show"]()})}}}),CKEDITOR.plugins.add("menubutton",{requires:"button,menu",onLoad:function(){var a=function(a){var b=this._,c=b.menu;b.state!==CKEDITOR.TRISTATE_DISABLED&&(b.on&&c?c.hide():(b.previousState=b.state,c||(c=b.menu=new CKEDITOR.menu(a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.common.options}}}),c.onHide=CKEDITOR.tools.bind(function(){var c=this.command?a.getCommand(this.command).modes:this.modes;this.setState(!c||c[a.mode]?b.previousState:CKEDITOR.TRISTATE_DISABLED),b.on=0},this),this.onMenu&&c.addListener(this.onMenu)),this.setState(CKEDITOR.TRISTATE_ON),b.on=1,setTimeout(function(){c.show(CKEDITOR.document.getById(b.id),4)},0)))};CKEDITOR.ui.menuButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(b){delete b.panel,this.base(b),this.hasArrow=!0,this.click=a},statics:{handler:{create:function(a){return new CKEDITOR.ui.menuButton(a)}}}})},beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_MENUBUTTON,CKEDITOR.ui.menuButton.handler)}}),CKEDITOR.UI_MENUBUTTON="menubutton",CKEDITOR.plugins.add("scayt",{requires:"menubutton,dialog",tabToOpen:null,dialogName:"scaytDialog",init:function(a){var b=this,c=CKEDITOR.plugins.scayt;this.bindEvents(a),this.parseConfig(a),this.addRule(a),CKEDITOR.dialog.add(this.dialogName,CKEDITOR.getUrl(this.path+"dialogs/options.js")),this.addMenuItems(a);var d=a.lang.scayt,e=CKEDITOR.env;a.ui.add("Scayt",CKEDITOR.UI_MENUBUTTON,{label:d.text_title,title:a.plugins.wsc?a.lang.wsc.title:d.text_title,modes:{wysiwyg:!(e.ie&&(8>e.version||e.quirks))},toolbar:"spellchecker,20",refresh:function(){var b=a.ui.instances.Scayt.getState();a.scayt&&(b=c.state.scayt[a.name]?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF),a.fire("scaytButtonState",b)},onRender:function(){var b=this;a.on("scaytButtonState",function(a){void 0!==typeof a.data&&b.setState(a.data)})},onMenu:function(){var b=a.scayt;return a.getMenuItem("scaytToggle").label=a.lang.scayt[b&&c.state.scayt[a.name]?"btn_disable":"btn_enable"],b={scaytToggle:CKEDITOR.TRISTATE_OFF,scaytOptions:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytLangs:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytDict:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytAbout:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,WSC:a.plugins.wsc?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED},a.config.scayt_uiTabs[0]||delete b.scaytOptions,a.config.scayt_uiTabs[1]||delete b.scaytLangs,a.config.scayt_uiTabs[2]||delete b.scaytDict,b}}),a.contextMenu&&a.addMenuItems&&(a.contextMenu.addListener(function(c,d){var e,f,g=a.scayt;return g&&(f=g.getSelectionNode())&&(e=b.menuGenerator(a,f),g.showBanner("."+a.contextMenu._.definition.panel.className.split(" ").join(" ."))),e}),a.contextMenu._.onHide=CKEDITOR.tools.override(a.contextMenu._.onHide,function(b){return function(){var c=a.scayt;return c&&c.hideBanner(),b.apply(this)}}))},addMenuItems:function(a){var b=this,c=CKEDITOR.plugins.scayt;a.addMenuGroup("scaytButton");for(var d=a.config.scayt_contextMenuItemsOrder.split("|"),e=0;e<d.length;e++)d[e]="scayt_"+d[e];if((d=["grayt_description","grayt_suggest","grayt_control"].concat(d))&&d.length)for(e=0;e<d.length;e++)a.addMenuGroup(d[e],e-10);a.addCommand("scaytToggle",{exec:function(a){var b=a.scayt;c.state.scayt[a.name]=!c.state.scayt[a.name],!0===c.state.scayt[a.name]?b||c.createScayt(a):b&&c.destroy(a)}}),a.addCommand("scaytAbout",{exec:function(a){a.scayt.tabToOpen="about",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytOptions",{exec:function(a){a.scayt.tabToOpen="options",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytLangs",{exec:function(a){a.scayt.tabToOpen="langs",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytDict",{exec:function(a){a.scayt.tabToOpen="dictionaries",a.lockSelection(),a.openDialog(b.dialogName)}}),d={scaytToggle:{label:a.lang.scayt.btn_enable,group:"scaytButton",command:"scaytToggle"},scaytAbout:{label:a.lang.scayt.btn_about,group:"scaytButton",command:"scaytAbout"},scaytOptions:{label:a.lang.scayt.btn_options,group:"scaytButton",command:"scaytOptions"},scaytLangs:{label:a.lang.scayt.btn_langs,group:"scaytButton",command:"scaytLangs"},scaytDict:{label:a.lang.scayt.btn_dictionaries,group:"scaytButton",command:"scaytDict"}},a.plugins.wsc&&(d.WSC={label:a.lang.wsc.toolbar,group:"scaytButton",onClick:function(){var b=CKEDITOR.plugins.scayt,c=a.scayt,d=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():a.document.getBody().getText();(d=d.replace(/\s/g,""))?(c&&b.state.scayt[a.name]&&c.setMarkupPaused&&c.setMarkupPaused(!0),a.lockSelection(),a.execCommand("checkspell")):alert("Nothing to check!")}}),a.addMenuItems(d)},bindEvents:function(a){var b=CKEDITOR.plugins.scayt,c=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE,d=function(){b.destroy(a)},e=function(){!b.state.scayt[a.name]||a.readOnly||a.scayt||b.createScayt(a)},f=function(){var b=a.editable();b.attachListener(b,"focus",function(b){CKEDITOR.plugins.scayt&&!a.scayt&&setTimeout(e,0),b=CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[a.name]&&a.scayt;var d,f;if((c||b)&&a._.savedSelection){b=a._.savedSelection.getSelectedElement(),b=!b&&a._.savedSelection.getRanges();for(var g=0;g<b.length;g++)f=b[g],"string"==typeof f.startContainer.$.nodeValue&&(d=f.startContainer.getText().length,(d<f.startOffset||d<f.endOffset)&&a.unlockSelection(!1))}},this,null,-10)},g=function(){c?a.config.scayt_inlineModeImmediateMarkup?e():(a.on("blur",function(){setTimeout(d,0)}),a.on("focus",e),a.focusManager.hasFocus&&e()):e(),f();var b=a.editable();b.attachListener(b,"mousedown",function(b){b=b.data.getTarget();var c=a.widgets&&a.widgets.getByElement(b);c&&(c.wrapper=b.getAscendant(function(a){return a.hasAttribute("data-cke-widget-wrapper")},!0))},this,null,-10)};a.on("contentDom",g),a.on("beforeCommandExec",function(c){var d=a.scayt,e=null,f=!1,g=!0;c.data.name in b.options.disablingCommandExec&&"wysiwyg"==a.mode?d&&(b.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)):"bold"!==c.data.name&&"italic"!==c.data.name&&"underline"!==c.data.name&&"strike"!==c.data.name&&"subscript"!==c.data.name&&"superscript"!==c.data.name&&"enter"!==c.data.name&&"cut"!==c.data.name&&"language"!==c.data.name||!d||("cut"===c.data.name&&(g=!1,f=!0),"language"===c.data.name&&(e=(e=a.plugins.language.getCurrentLangElement(a))&&e.$,f=!0),a.fire("reloadMarkupScayt",{removeOptions:{removeInside:g,forceBookmark:f,selectionNode:e},timeout:0}))}),a.on("beforeSetMode",function(c){"source"==c.data&&((c=a.scayt)&&(b.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)),a.document&&a.document.getBody().removeAttribute("_jquid"))}),a.on("afterCommandExec",function(b){"wysiwyg"!=a.mode||"undo"!=b.data.name&&"redo"!=b.data.name||setTimeout(function(){var b=a.scayt,c=b&&b.getScaytLangList();c&&c.ltr&&c.rtl&&b.fire("startSpellCheck, startGrammarCheck")},250)}),a.on("readOnly",function(c){var d;c&&(d=a.scayt,!0===c.editor.readOnly?d&&d.fire("removeMarkupInDocument",{}):d?d.fire("startSpellCheck, startGrammarCheck"):"wysiwyg"==c.editor.mode&&!0===b.state.scayt[c.editor.name]&&(b.createScayt(a),c.editor.fire("scaytButtonState",CKEDITOR.TRISTATE_ON)))}),a.on("beforeDestroy",d),a.on("setData",function(){d(),(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE||a.plugins.divarea)&&g()},this,null,50),a.on("reloadMarkupScayt",function(b){var c=b.data&&b.data.removeOptions;setTimeout(function(){var b=a.scayt,d=b&&b.getScaytLangList();d&&d.ltr&&d.rtl&&(a.document.fire("keydown",new CKEDITOR.dom.event({keyCode:37})),b.removeMarkupInSelectionNode(c),b.fire("startSpellCheck, startGrammarCheck"))},b.data&&b.data.timeout||0)}),a.on("insertElement",function(){a.fire("reloadMarkupScayt",{removeOptions:{forceBookmark:!0}})},this,null,50),a.on("insertHtml",function(){a.fire("reloadMarkupScayt")},this,null,50),a.on("insertText",function(){a.fire("reloadMarkupScayt")},this,null,50),a.on("scaytDialogShown",function(b){b.data.selectPage(a.scayt.tabToOpen)})},parseConfig:function(a){var b=CKEDITOR.plugins.scayt;if(b.replaceOldOptionsNames(a.config),"boolean"!=typeof a.config.scayt_autoStartup&&(a.config.scayt_autoStartup=!1),b.state.scayt[a.name]=a.config.scayt_autoStartup,"boolean"!=typeof a.config.grayt_autoStartup&&(a.config.grayt_autoStartup=!1),"boolean"!=typeof a.config.scayt_inlineModeImmediateMarkup&&(a.config.scayt_inlineModeImmediateMarkup=!1),b.state.grayt[a.name]=a.config.grayt_autoStartup,a.config.scayt_contextCommands||(a.config.scayt_contextCommands="ignore|ignoreall|add"),a.config.scayt_contextMenuItemsOrder||(a.config.scayt_contextMenuItemsOrder="suggest|moresuggest|control"),a.config.scayt_sLang||(a.config.scayt_sLang="en_US"),(void 0===a.config.scayt_maxSuggestions||"number"!=typeof a.config.scayt_maxSuggestions||0>a.config.scayt_maxSuggestions)&&(a.config.scayt_maxSuggestions=5),(void 0===a.config.scayt_minWordLength||"number"!=typeof a.config.scayt_minWordLength||1>a.config.scayt_minWordLength)&&(a.config.scayt_minWordLength=4),void 0!==a.config.scayt_customDictionaryIds&&"string"==typeof a.config.scayt_customDictionaryIds||(a.config.scayt_customDictionaryIds=""),void 0!==a.config.scayt_userDictionaryName&&"string"==typeof a.config.scayt_userDictionaryName||(a.config.scayt_userDictionaryName=null),"string"==typeof a.config.scayt_uiTabs&&3===a.config.scayt_uiTabs.split(",").length){var c=[],d=[];a.config.scayt_uiTabs=a.config.scayt_uiTabs.split(","),CKEDITOR.tools.search(a.config.scayt_uiTabs,function(a){1===Number(a)||0===Number(a)?(d.push(!0),c.push(Number(a))):d.push(!1)}),null===CKEDITOR.tools.search(d,!1)?a.config.scayt_uiTabs=c:a.config.scayt_uiTabs=[1,1,1]}else a.config.scayt_uiTabs=[1,1,1];if("string"!=typeof a.config.scayt_serviceProtocol&&(a.config.scayt_serviceProtocol=null),"string"!=typeof a.config.scayt_serviceHost&&(a.config.scayt_serviceHost=null),"string"!=typeof a.config.scayt_servicePort&&(a.config.scayt_servicePort=null),"string"!=typeof a.config.scayt_servicePath&&(a.config.scayt_servicePath=null),a.config.scayt_moreSuggestions||(a.config.scayt_moreSuggestions="on"),"string"!=typeof a.config.scayt_customerId&&(a.config.scayt_customerId="1:WvF0D4-UtPqN1-43nkD4-NKvUm2-daQqk3-LmNiI-z7Ysb4-mwry24-T8YrS3-Q2tpq2"),"string"!=typeof a.config.scayt_srcUrl&&(b=document.location.protocol,b=-1!=b.search(/https?:/)?b:"http:",a.config.scayt_srcUrl=b+"//svc.webspellchecker.net/spellcheck31/lf/scayt3/ckscayt/ckscayt.js"),"boolean"!=typeof CKEDITOR.config.scayt_handleCheckDirty&&(CKEDITOR.config.scayt_handleCheckDirty=!0),"boolean"!=typeof CKEDITOR.config.scayt_handleUndoRedo&&(CKEDITOR.config.scayt_handleUndoRedo=!0),CKEDITOR.config.scayt_handleUndoRedo=CKEDITOR.plugins.undo?CKEDITOR.config.scayt_handleUndoRedo:!1,"boolean"!=typeof a.config.scayt_multiLanguageMode&&(a.config.scayt_multiLanguageMode=!1),"object"!=typeof a.config.scayt_multiLanguageStyles&&(a.config.scayt_multiLanguageStyles={}),a.config.scayt_ignoreAllCapsWords&&"boolean"!=typeof a.config.scayt_ignoreAllCapsWords&&(a.config.scayt_ignoreAllCapsWords=!1),a.config.scayt_ignoreDomainNames&&"boolean"!=typeof a.config.scayt_ignoreDomainNames&&(a.config.scayt_ignoreDomainNames=!1),a.config.scayt_ignoreWordsWithMixedCases&&"boolean"!=typeof a.config.scayt_ignoreWordsWithMixedCases&&(a.config.scayt_ignoreWordsWithMixedCases=!1),a.config.scayt_ignoreWordsWithNumbers&&"boolean"!=typeof a.config.scayt_ignoreWordsWithNumbers&&(a.config.scayt_ignoreWordsWithNumbers=!1),a.config.scayt_disableOptionsStorage){var b=CKEDITOR.tools.isArray(a.config.scayt_disableOptionsStorage)?a.config.scayt_disableOptionsStorage:"string"==typeof a.config.scayt_disableOptionsStorage?[a.config.scayt_disableOptionsStorage]:void 0,e="all options lang ignore-all-caps-words ignore-domain-names ignore-words-with-mixed-cases ignore-words-with-numbers".split(" "),f=["lang","ignore-all-caps-words","ignore-domain-names","ignore-words-with-mixed-cases","ignore-words-with-numbers"],g=CKEDITOR.tools.search,h=CKEDITOR.tools.indexOf;a.config.scayt_disableOptionsStorage=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],i=!!g(a,"options");if(!g(e,d)||i&&g(f,function(a){return"lang"===a?!1:void 0}))return;if(g(f,d)&&f.splice(h(f,d),1),"all"===d||i&&g(a,"lang"))return[];"options"===d&&(f=["lang"])}return b=b.concat(f)}(b)}},addRule:function(a){var b=CKEDITOR.plugins.scayt,c=a.dataProcessor,d=c&&c.htmlFilter,e=a._.elementsPath&&a._.elementsPath.filters,c=c&&c.dataFilter,f=a.addRemoveFormatFilter,g=function(c){return a.scayt&&(c.hasAttribute(b.options.data_attribute_name)||c.hasAttribute(b.options.problem_grammar_data_attribute))?!1:void 0},h=function(c){var d=!0;return a.scayt&&(c.hasAttribute(b.options.data_attribute_name)||c.hasAttribute(b.options.problem_grammar_data_attribute))&&(d=!1),d};e&&e.push(g),c&&c.addRules({elements:{span:function(a){var c=a.hasClass(b.options.misspelled_word_class)&&a.attributes[b.options.data_attribute_name],d=a.hasClass(b.options.problem_grammar_class)&&a.attributes[b.options.problem_grammar_data_attribute];return b&&(c||d)&&delete a.name,a}}}),d&&d.addRules({elements:{span:function(a){var c=a.hasClass(b.options.misspelled_word_class)&&a.attributes[b.options.data_attribute_name],d=a.hasClass(b.options.problem_grammar_class)&&a.attributes[b.options.problem_grammar_data_attribute];return b&&(c||d)&&delete a.name,a}}}),f&&f.call(a,h)},scaytMenuDefinition:function(a){var b=this;return a=a.scayt,{scayt:{scayt_ignore:{label:a.getLocal("btn_ignore"),group:"scayt_control",order:1,exec:function(a){a.scayt.ignoreWord()}},scayt_ignoreall:{label:a.getLocal("btn_ignoreAll"),group:"scayt_control",order:2,exec:function(a){a.scayt.ignoreAllWords()}},scayt_add:{label:a.getLocal("btn_addWord"),group:"scayt_control",order:3,exec:function(a){var b=a.scayt;setTimeout(function(){b.addWordToUserDictionary()},10)}},scayt_option:{label:a.getLocal("btn_options"),group:"scayt_control",order:4,exec:function(a){a.scayt.tabToOpen="options",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[0]}},scayt_language:{label:a.getLocal("btn_langs"),group:"scayt_control",order:5,exec:function(a){a.scayt.tabToOpen="langs",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[1]}},scayt_dictionary:{label:a.getLocal("btn_dictionaries"),group:"scayt_control",order:6,exec:function(a){a.scayt.tabToOpen="dictionaries",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[2]}},scayt_about:{label:a.getLocal("btn_about"),group:"scayt_control",order:7,exec:function(a){a.scayt.tabToOpen="about",a.lockSelection(),a.openDialog(b.dialogName)}}},grayt:{grayt_problemdescription:{label:"Grammar problem description",group:"grayt_description",order:1,state:CKEDITOR.TRISTATE_DISABLED,exec:function(a){}},grayt_ignore:{label:a.getLocal("btn_ignore"),group:"grayt_control",order:2,exec:function(a){a.scayt.ignorePhrase()}}}}},buildSuggestionMenuItems:function(a,b,c){var d={},e={},f=c?"word":"phrase",g=c?"startGrammarCheck":"startSpellCheck",h=a.scayt;if(0<b.length&&"no_any_suggestions"!==b[0])if(c)for(c=0;c<b.length;c++){var i="scayt_suggest_"+CKEDITOR.plugins.scayt.suggestions[c].replace(" ","_");a.addCommand(i,this.createCommand(CKEDITOR.plugins.scayt.suggestions[c],f,g)),c<a.config.scayt_maxSuggestions?(a.addMenuItem(i,{label:b[c],command:i,group:"scayt_suggest",order:c+1}),d[i]=CKEDITOR.TRISTATE_OFF):(a.addMenuItem(i,{label:b[c],command:i,group:"scayt_moresuggest",order:c+1}),e[i]=CKEDITOR.TRISTATE_OFF,"on"===a.config.scayt_moreSuggestions&&(a.addMenuItem("scayt_moresuggest",{label:h.getLocal("btn_moreSuggestions"),group:"scayt_moresuggest",order:10,getItems:function(){return e}}),d.scayt_moresuggest=CKEDITOR.TRISTATE_OFF))}else for(c=0;c<b.length;c++)i="grayt_suggest_"+CKEDITOR.plugins.scayt.suggestions[c].replace(" ","_"),a.addCommand(i,this.createCommand(CKEDITOR.plugins.scayt.suggestions[c],f,g)),a.addMenuItem(i,{label:b[c],command:i,group:"grayt_suggest",order:c+1}),d[i]=CKEDITOR.TRISTATE_OFF;else d.no_scayt_suggest=CKEDITOR.TRISTATE_DISABLED,a.addCommand("no_scayt_suggest",{exec:function(){}}),a.addMenuItem("no_scayt_suggest",{label:h.getLocal("btn_noSuggestions")||"no_scayt_suggest",command:"no_scayt_suggest",group:"scayt_suggest",order:0});return d},menuGenerator:function(a,b){var c,d,e=a.scayt,f=this.scaytMenuDefinition(a),g={},h=a.config.scayt_contextCommands.split("|"),i=b.getAttribute(e.getLangAttribute())||e.getLang();if(c=e.isScaytNode(b),d=e.isGraytNode(b),c?(f=f.scayt,g=b.getAttribute(e.getScaytNodeAttributeName()),e.fire("getSuggestionsList",{lang:i,word:g}),g=this.buildSuggestionMenuItems(a,CKEDITOR.plugins.scayt.suggestions,c)):d&&(f=f.grayt,g=b.getAttribute(e.getGraytNodeAttributeName()),d=e.getProblemDescriptionText(g,i),f.grayt_problemdescription&&d&&(f.grayt_problemdescription.label=d),e.fire("getGrammarSuggestionsList",{lang:i,phrase:g}),g=this.buildSuggestionMenuItems(a,CKEDITOR.plugins.scayt.suggestions,c)),c&&"off"==a.config.scayt_contextCommands)return g;for(var j in f)c&&-1==CKEDITOR.tools.indexOf(h,j.replace("scayt_",""))&&"all"!=a.config.scayt_contextCommands||(g[j]="undefined"!=typeof f[j].state?f[j].state:CKEDITOR.TRISTATE_OFF,"function"!=typeof f[j].verification||f[j].verification(a)||delete g[j],a.addCommand(j,{exec:f[j].exec}),a.addMenuItem(j,{label:a.lang.scayt[f[j].label]||f[j].label,command:j,group:f[j].group,order:f[j].order}));return g},createCommand:function(a,b,c){return{exec:function(d){d=d.scayt;var e={};e[b]=a,d.replaceSelectionNode(e),"startGrammarCheck"===c&&d.removeMarkupInSelectionNode({grammarOnly:!0}),d.fire(c)}}}}),CKEDITOR.plugins.scayt={state:{scayt:{},grayt:{}},suggestions:[],loadingHelper:{loadOrder:[]},isLoading:!1,options:{disablingCommandExec:{source:!0,newpage:!0,templates:!0},data_attribute_name:"data-scayt-word",misspelled_word_class:"scayt-misspell-word",problem_grammar_data_attribute:"data-grayt-phrase",problem_grammar_class:"gramm-problem"},backCompatibilityMap:{scayt_service_protocol:"scayt_serviceProtocol",scayt_service_host:"scayt_serviceHost",scayt_service_port:"scayt_servicePort",scayt_service_path:"scayt_servicePath",scayt_customerid:"scayt_customerId"},replaceOldOptionsNames:function(a){for(var b in a)b in this.backCompatibilityMap&&(a[this.backCompatibilityMap[b]]=a[b],delete a[b])},createScayt:function(a){var b=this,c=CKEDITOR.plugins.scayt;this.loadScaytLibrary(a,function(a){var d=a.window&&a.window.getFrame()||a.editable();d?(d={lang:a.config.scayt_sLang,container:d.$,customDictionary:a.config.scayt_customDictionaryIds,userDictionaryName:a.config.scayt_userDictionaryName,localization:a.langCode,customer_id:a.config.scayt_customerId,debug:a.config.scayt_debug,data_attribute_name:b.options.data_attribute_name,misspelled_word_class:b.options.misspelled_word_class,problem_grammar_data_attribute:b.options.problem_grammar_data_attribute,problem_grammar_class:b.options.problem_grammar_class,"options-to-restore":a.config.scayt_disableOptionsStorage,focused:a.editable().hasFocus,ignoreElementsRegex:a.config.scayt_elementsToIgnore,minWordLength:a.config.scayt_minWordLength,multiLanguageMode:a.config.scayt_multiLanguageMode,multiLanguageStyles:a.config.scayt_multiLanguageStyles,graytAutoStartup:c.state.grayt[a.name]},a.config.scayt_serviceProtocol&&(d.service_protocol=a.config.scayt_serviceProtocol),a.config.scayt_serviceHost&&(d.service_host=a.config.scayt_serviceHost),a.config.scayt_servicePort&&(d.service_port=a.config.scayt_servicePort),a.config.scayt_servicePath&&(d.service_path=a.config.scayt_servicePath),"boolean"==typeof a.config.scayt_ignoreAllCapsWords&&(d["ignore-all-caps-words"]=a.config.scayt_ignoreAllCapsWords),"boolean"==typeof a.config.scayt_ignoreDomainNames&&(d["ignore-domain-names"]=a.config.scayt_ignoreDomainNames),"boolean"==typeof a.config.scayt_ignoreWordsWithMixedCases&&(d["ignore-words-with-mixed-cases"]=a.config.scayt_ignoreWordsWithMixedCases),"boolean"==typeof a.config.scayt_ignoreWordsWithNumbers&&(d["ignore-words-with-numbers"]=a.config.scayt_ignoreWordsWithNumbers),d=new SCAYT.CKSCAYT(d,function(){},function(){}),d.subscribe("suggestionListSend",function(a){for(var b={},c=[],d=0;d<a.suggestionList.length;d++)b["word_"+a.suggestionList[d]]||(b["word_"+a.suggestionList[d]]=a.suggestionList[d],c.push(a.suggestionList[d]));CKEDITOR.plugins.scayt.suggestions=c}),d.subscribe("selectionIsChanged",function(b){a.getSelection().isLocked&&a.lockSelection()}),d.subscribe("graytStateChanged",function(b){c.state.grayt[a.name]=b.state}),a.scayt=d,a.fire("scaytButtonState",a.readOnly?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_ON)):c.state.scayt[a.name]=!1})},destroy:function(a){a.scayt&&a.scayt.destroy(),delete a.scayt,a.fire("scaytButtonState",CKEDITOR.TRISTATE_OFF)},loadScaytLibrary:function(a,b){var c,d,e=this;this.loadingHelper[a.name]||("undefined"==typeof window.SCAYT||"function"!=typeof window.SCAYT.CKSCAYT?(this.loadingHelper[a.name]=b,this.loadingHelper.loadOrder.push(a.name),c=new Date,c=c.getTime(),d=a.config.scayt_srcUrl,d+=0<=d.indexOf("?")?"":"?"+c,this.loadingHelper.ckscaytLoading||(CKEDITOR.scriptLoader.load(d,function(a){if(a){CKEDITOR.fireOnce("scaytReady");for(var b=0;b<e.loadingHelper.loadOrder.length;b++)a=e.loadingHelper.loadOrder[b],"function"==typeof e.loadingHelper[a]&&e.loadingHelper[a](CKEDITOR.instances[a]),delete e.loadingHelper[a];e.loadingHelper.loadOrder=[]}}),this.loadingHelper.ckscaytLoading=!0)):window.SCAYT&&"function"==typeof window.SCAYT.CKSCAYT&&(CKEDITOR.fireOnce("scaytReady"),a.scayt||"function"==typeof b&&b(a)))}},CKEDITOR.on("dialogDefinition",function(a){var b=a.data.name;a=a.data.definition.dialog,"scaytDialog"===b&&a.on("cancel",function(a){return!1},this,null,-1),"checkspell"===b&&a.on("cancel",function(a){a=a.sender&&a.sender.getParentEditor();var b=CKEDITOR.plugins.scayt,c=a.scayt;c&&b.state.scayt[a.name]&&c.setMarkupPaused&&c.setMarkupPaused(!1),a.unlockSelection()},this,null,-2),"link"===b&&a.on("ok",function(a){var b=a.sender&&a.sender.getParentEditor();b&&setTimeout(function(){b.fire("reloadMarkupScayt",{removeOptions:{removeInside:!0,forceBookmark:!0},timeout:0})},0)})}),CKEDITOR.on("scaytReady",function(){if(!0===CKEDITOR.config.scayt_handleCheckDirty){var a=CKEDITOR.editor.prototype;a.checkDirty=CKEDITOR.tools.override(a.checkDirty,function(a){return function(){var b=null,c=this.scayt;if(CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[this.name]&&this.scayt){if(b="ready"==this.status)var d=c.removeMarkupFromString(this.getSnapshot()),c=c.removeMarkupFromString(this._.previousValue),b=b&&c!==d}else b=a.call(this);return b}}),a.resetDirty=CKEDITOR.tools.override(a.resetDirty,function(a){return function(){var b=this.scayt;CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[this.name]&&this.scayt?this._.previousValue=b.removeMarkupFromString(this.getSnapshot()):a.call(this)}})}if(!0===CKEDITOR.config.scayt_handleUndoRedo){var a=CKEDITOR.plugins.undo.Image.prototype,b="function"==typeof a.equalsContent?"equalsContent":"equals";a[b]=CKEDITOR.tools.override(a[b],function(a){return function(b){var c=b.editor.scayt,d=this.contents,e=b.contents,f=null;return CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[b.editor.name]&&b.editor.scayt&&(this.contents=c.removeMarkupFromString(d)||"",b.contents=c.removeMarkupFromString(e)||""),f=a.apply(this,arguments),this.contents=d,b.contents=e,f}})}}),function(){var a={preserveState:!0,editorFocus:!1,readOnly:1,exec:function(a){this.toggleState(),this.refresh(a)},refresh:function(a){if(a.document){var b=this.state==CKEDITOR.TRISTATE_ON?"attachClass":"removeClass";a.editable()[b]("cke_show_borders")}}};CKEDITOR.plugins.add("showborders",{modes:{wysiwyg:1},onLoad:function(){var a;a=(CKEDITOR.env.ie6Compat?[".%1 table.%2,",".%1 table.%2 td, .%1 table.%2 th","{","border : #d3d3d3 1px dotted","}"]:".%1 table.%2,;.%1 table.%2 > tr > td, .%1 table.%2 > tr > th,;.%1 table.%2 > tbody > tr > td, .%1 table.%2 > tbody > tr > th,;.%1 table.%2 > thead > tr > td, .%1 table.%2 > thead > tr > th,;.%1 table.%2 > tfoot > tr > td, .%1 table.%2 > tfoot > tr > th;{;border : #d3d3d3 1px dotted;}".split(";")).join("").replace(/%2/g,"cke_show_border").replace(/%1/g,"cke_show_borders "),CKEDITOR.addCss(a)},init:function(b){var c=b.addCommand("showborders",a);c.canUndo=!1,!1!==b.config.startupShowBorders&&c.setState(CKEDITOR.TRISTATE_ON),b.on("mode",function(){c.state!=CKEDITOR.TRISTATE_DISABLED&&c.refresh(b)},null,null,100),b.on("contentDom",function(){c.state!=CKEDITOR.TRISTATE_DISABLED&&c.refresh(b)}),b.on("removeFormatCleanup",function(a){a=a.data,b.getCommand("showborders").state==CKEDITOR.TRISTATE_ON&&a.is("table")&&(!a.hasAttribute("border")||0>=parseInt(a.getAttribute("border"),10))&&a.addClass("cke_show_border")})},afterInit:function(a){var b=a.dataProcessor;a=b&&b.dataFilter,b=b&&b.htmlFilter,a&&a.addRules({elements:{table:function(a){a=a.attributes;var b=a["class"],c=parseInt(a.border,10);c&&!(0>=c)||b&&-1!=b.indexOf("cke_show_border")||(a["class"]=(b||"")+" cke_show_border")}}}),b&&b.addRules({elements:{table:function(a){a=a.attributes;var b=a["class"];b&&(a["class"]=b.replace("cke_show_border","").replace(/\s{2}/," ").replace(/^\s+|\s+$/,""))}}})}}),CKEDITOR.on("dialogDefinition",function(a){var b=a.data.name;"table"!=b&&"tableProperties"!=b||(a=a.data.definition,b=a.getContents("info").get("txtBorder"),b.commit=CKEDITOR.tools.override(b.commit,function(a){return function(b,c){a.apply(this,arguments);var d=parseInt(this.getValue(),10);c[!d||0>=d?"addClass":"removeClass"]("cke_show_border")}}),(a=(a=a.getContents("advanced"))&&a.get("advCSSClasses"))&&(a.setup=CKEDITOR.tools.override(a.setup,function(a){return function(){a.apply(this,arguments),this.setValue(this.getValue().replace(/cke_show_border/,""))}}),a.commit=CKEDITOR.tools.override(a.commit,function(a){return function(b,c){a.apply(this,arguments),parseInt(c.getAttribute("border"),10)||c.addClass("cke_show_border")}})))})}(),function(){CKEDITOR.plugins.add("sourcearea",{init:function(b){function c(){var a=e&&this.equals(CKEDITOR.document.getActive());this.hide(),this.setStyle("height",this.getParent().$.clientHeight+"px"),this.setStyle("width",this.getParent().$.clientWidth+"px"),this.show(),a&&this.focus()}if(b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var d=CKEDITOR.plugins.sourcearea;b.addMode("source",function(d){var e=b.ui.space("contents").getDocument().createElement("textarea");e.setStyles(CKEDITOR.tools.extend({width:CKEDITOR.env.ie7Compat?"99%":"100%",height:"100%",resize:"none",outline:"none","text-align":"left"},CKEDITOR.tools.cssVendorPrefix("tab-size",b.config.sourceAreaTabSize||4))),e.setAttribute("dir","ltr"),e.addClass("cke_source").addClass("cke_reset").addClass("cke_enable_context_menu"),b.ui.space("contents").append(e),e=b.editable(new a(b,e)),e.setData(b.getData(1)),CKEDITOR.env.ie&&(e.attachListener(b,"resize",c,e),e.attachListener(CKEDITOR.document.getWindow(),"resize",c,e),CKEDITOR.tools.setTimeout(c,0,e)),b.fire("ariaWidget",this),d()}),b.addCommand("source",d.commands.source),b.ui.addButton&&b.ui.addButton("Source",{label:b.lang.sourcearea.toolbar,command:"source",toolbar:"mode,10"}),b.on("mode",function(){b.getCommand("source").setState("source"==b.mode?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)});var e=CKEDITOR.env.ie&&9==CKEDITOR.env.version}}});var a=CKEDITOR.tools.createClass({base:CKEDITOR.editable,proto:{setData:function(a){this.setValue(a),this.status="ready",this.editor.fire("dataReady")},getData:function(){return this.getValue()},insertHtml:function(){},insertElement:function(){},insertText:function(){},setReadOnly:function(a){this[(a?"set":"remove")+"Attribute"]("readOnly","readonly")},detach:function(){a.baseProto.detach.call(this),this.clearCustomData(),this.remove()}}})}(),CKEDITOR.plugins.sourcearea={ +commands:{source:{modes:{wysiwyg:1,source:1},editorFocus:!1,readOnly:1,exec:function(a){"wysiwyg"==a.mode&&a.fire("saveSnapshot"),a.getCommand("source").setState(CKEDITOR.TRISTATE_DISABLED),a.setMode("source"==a.mode?"wysiwyg":"source")},canUndo:!1}}},CKEDITOR.plugins.add("specialchar",{availableLangs:{af:1,ar:1,bg:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fr:1,"fr-ca":1,gl:1,he:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ko:1,ku:1,lt:1,lv:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ru:1,si:1,sk:1,sl:1,sq:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},requires:"dialog",init:function(a){var b=this;CKEDITOR.dialog.add("specialchar",this.path+"dialogs/specialchar.js"),a.addCommand("specialchar",{exec:function(){var c=a.langCode,c=b.availableLangs[c]?c:b.availableLangs[c.replace(/-.*/,"")]?c.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(b.path+"dialogs/lang/"+c+".js"),function(){CKEDITOR.tools.extend(a.lang.specialchar,b.langEntries[c]),a.openDialog("specialchar")})},modes:{wysiwyg:1},canUndo:!1}),a.ui.addButton&&a.ui.addButton("SpecialChar",{label:a.lang.specialchar.toolbar,command:"specialchar",toolbar:"insert,50"})}}),CKEDITOR.config.specialChars="! " # $ % & ' ( ) * + - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ € ‘ ’ “ ” – — ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ ° ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ Œ œ Ŵ Ŷ ŵ ŷ ‚ ‛ „ … ™ ► • → ⇒ ⇔ ♦ ≈".split(" "),function(){CKEDITOR.plugins.add("stylescombo",{requires:"richcombo",init:function(a){var b=a.config,c=a.lang.stylescombo,d={},e=[],f=[];a.on("stylesSet",function(c){if(c=c.data.styles){for(var g,h,i,j=0,k=c.length;k>j;j++)g=c[j],a.blockless&&g.element in CKEDITOR.dtd.$block||(h=g.name,g=new CKEDITOR.style(g),a.filter.customConfig&&!a.filter.check(g))||(g._name=h,g._.enterMode=b.enterMode,g._.type=i=g.assignedTo||g.type,g._.weight=j+1e3*(i==CKEDITOR.STYLE_OBJECT?1:i==CKEDITOR.STYLE_BLOCK?2:3),d[h]=g,e.push(g),f.push(g));e.sort(function(a,b){return a._.weight-b._.weight})}}),a.ui.addRichCombo("Styles",{label:c.label,title:c.panelTitle,toolbar:"styles,10",allowedContent:f,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(b.contentsCss),multiSelect:!0,attributes:{"aria-label":c.panelTitle}},init:function(){var a,b,d,f,g,h;for(g=0,h=e.length;h>g;g++)a=e[g],b=a._name,f=a._.type,f!=d&&(this.startGroup(c["panelTitle"+String(f)]),d=f),this.add(b,a.type==CKEDITOR.STYLE_OBJECT?b:a.buildPreview(),b);this.commit()},onClick:function(b){a.focus(),a.fire("saveSnapshot"),b=d[b];var c=a.elementPath();a[b.checkActive(c,a)?"removeStyle":"applyStyle"](b),a.fire("saveSnapshot")},onRender:function(){a.on("selectionChange",function(b){var c=this.getValue();b=b.data.path.elements;for(var e,f=0,g=b.length;g>f;f++){e=b[f];for(var h in d)if(d[h].checkElementRemovable(e,!0,a))return void(h!=c&&this.setValue(h))}this.setValue("")},this)},onOpen:function(){var b=a.getSelection().getSelectedElement(),b=a.elementPath(b),e=[0,0,0,0];this.showAll(),this.unmarkAll();for(var f in d){var g=d[f],h=g._.type;g.checkApplicable(b,a,a.activeFilter)?e[h]++:this.hideItem(f),g.checkActive(b,a)&&this.mark(f)}e[CKEDITOR.STYLE_BLOCK]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_BLOCK)]),e[CKEDITOR.STYLE_INLINE]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_INLINE)]),e[CKEDITOR.STYLE_OBJECT]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_OBJECT)])},refresh:function(){var b=a.elementPath();if(b){for(var c in d)if(d[c].checkApplicable(b,a,a.activeFilter))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){d={},e=[]}})}})}(),function(){function a(a){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(b){if(b.editable().hasFocus){var c,d=b.getSelection();if(c=new CKEDITOR.dom.elementPath(d.getCommonAncestor(),d.root).contains({td:1,th:1},1)){var d=b.createRange(),e=CKEDITOR.tools.tryThese(function(){var b=c.getParent().$.cells[c.$.cellIndex+(a?-1:1)];return b.parentNode.parentNode,b},function(){var b=c.getParent(),b=b.getAscendant("table").$.rows[b.$.rowIndex+(a?-1:1)];return b.cells[a?b.cells.length-1:0]});if(e||a){if(!e)return!0;e=new CKEDITOR.dom.element(e),d.moveToElementEditStart(e),d.checkStartOfBlock()&&d.checkEndOfBlock()||d.selectNodeContents(e)}else{for(var f=c.getAscendant("table").$,e=c.getParent().$.cells,f=new CKEDITOR.dom.element(f.insertRow(-1),b.document),g=0,h=e.length;h>g;g++)f.append(new CKEDITOR.dom.element(e[g],b.document).clone(!1,!1)).appendBogus();d.moveToElementEditStart(f)}return d.select(!0),!0}}return!1}}}var b={editorFocus:!1,modes:{wysiwyg:1,source:1}},c={exec:function(a){a.container.focusNext(!0,a.tabIndex)}},d={exec:function(a){a.container.focusPrevious(!0,a.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(e){for(var f=!1!==e.config.enableTabKeyTools,g=e.config.tabSpaces||0,h="";g--;)h+=" ";h&&e.on("key",function(a){9==a.data.keyCode&&(e.insertText(h),a.cancel())}),f&&e.on("key",function(a){(9==a.data.keyCode&&e.execCommand("selectNextCell")||a.data.keyCode==CKEDITOR.SHIFT+9&&e.execCommand("selectPreviousCell"))&&a.cancel()}),e.addCommand("blur",CKEDITOR.tools.extend(c,b)),e.addCommand("blurBack",CKEDITOR.tools.extend(d,b)),e.addCommand("selectNextCell",a()),e.addCommand("selectPreviousCell",a(!0))}})}(),CKEDITOR.dom.element.prototype.focusNext=function(a,b){var c,d,e,f,g,h,i=void 0===b?this.getTabIndex():b;if(0>=i)for(g=this.getNextSourceNode(a,CKEDITOR.NODE_ELEMENT);g;){if(g.isVisible()&&0===g.getTabIndex()){e=g;break}g=g.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT)}else for(g=this.getDocument().getBody().getFirst();g=g.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!c)if(!d&&g.equals(this)){if(d=!0,a){if(!(g=g.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;c=1}}else d&&!this.contains(g)&&(c=1);if(g.isVisible()&&!(0>(h=g.getTabIndex()))){if(c&&h==i){e=g;break}h>i&&(!e||!f||f>h)?(e=g,f=h):e||0!==h||(e=g,f=h)}}e&&e.focus()},CKEDITOR.dom.element.prototype.focusPrevious=function(a,b){for(var c,d,e,f,g=void 0===b?this.getTabIndex():b,h=0,i=this.getDocument().getBody().getLast();i=i.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!c)if(!d&&i.equals(this)){if(d=!0,a){if(!(i=i.getPreviousSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;c=1}}else d&&!this.contains(i)&&(c=1);if(i.isVisible()&&!(0>(f=i.getTabIndex())))if(0>=g){if(c&&0===f){e=i;break}f>h&&(e=i,h=f)}else{if(c&&f==g){e=i;break}g>f&&(!e||f>h)&&(e=i,h=f)}}e&&e.focus()},CKEDITOR.plugins.add("table",{requires:"dialog",init:function(a){function b(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains("table",1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}if(!a.blockless){var c=a.lang.table;a.addCommand("table",new CKEDITOR.dialogCommand("table",{context:"table",allowedContent:"table{width,height}[align,border,cellpadding,cellspacing,summary];caption tbody thead tfoot;th td tr[scope];"+(a.plugins.dialogadvtab?"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table",contentTransformations:[["table{width}: sizeToStyle","table[width]: sizeToAttribute"]]})),a.addCommand("tableProperties",new CKEDITOR.dialogCommand("tableProperties",b())),a.addCommand("tableDelete",b({exec:function(a){var b=a.elementPath().contains("table",1);if(b){var c=b.getParent(),d=a.editable();1!=c.getChildCount()||c.is("td","th")||c.equals(d)||(b=c),a=a.createRange(),a.moveToPosition(b,CKEDITOR.POSITION_BEFORE_START),b.remove(),a.select()}}})),a.ui.addButton&&a.ui.addButton("Table",{label:c.toolbar,command:"table",toolbar:"insert,30"}),CKEDITOR.dialog.add("table",this.path+"dialogs/table.js"),CKEDITOR.dialog.add("tableProperties",this.path+"dialogs/table.js"),a.addMenuItems&&a.addMenuItems({table:{label:c.menu,command:"tableProperties",group:"table",order:5},tabledelete:{label:c.deleteTable,command:"tableDelete",group:"table",order:1}}),a.on("doubleclick",function(a){a.data.element.is("table")&&(a.data.dialog="tableProperties")}),a.contextMenu&&a.contextMenu.addListener(function(){return{tabledelete:CKEDITOR.TRISTATE_OFF,table:CKEDITOR.TRISTATE_OFF}})}}}),function(){function a(a){function b(a){0<c.length||a.type!=CKEDITOR.NODE_ELEMENT||!m.test(a.getName())||a.getCustomData("selected_cell")||(CKEDITOR.dom.element.setMarker(d,a,"selected_cell",!0),c.push(a))}a=a.getRanges();for(var c=[],d={},e=0;e<a.length;e++){var f=a[e];if(f.collapsed)f=f.getCommonAncestor(),(f=f.getAscendant("td",!0)||f.getAscendant("th",!0))&&c.push(f);else{var g,f=new CKEDITOR.dom.walker(f);for(f.guard=b;g=f.next();)g.type==CKEDITOR.NODE_ELEMENT&&g.is(CKEDITOR.dtd.table)||(g=g.getAscendant("td",!0)||g.getAscendant("th",!0))&&!g.getCustomData("selected_cell")&&(CKEDITOR.dom.element.setMarker(d,g,"selected_cell",!0),c.push(g))}}return CKEDITOR.dom.element.clearAllMarkers(d),c}function b(b,c){for(var d=a(b),e=d[0],f=e.getAscendant("table"),e=e.getDocument(),g=d[0].getParent(),h=g.$.rowIndex,d=d[d.length-1],i=d.getParent().$.rowIndex+d.$.rowSpan-1,d=new CKEDITOR.dom.element(f.$.rows[i]),h=c?h:i,g=c?g:d,d=CKEDITOR.tools.buildTableMap(f),f=d[h],h=c?d[h-1]:d[h+1],d=d[0].length,e=e.createElement("tr"),i=0;f[i]&&d>i;i++){var j;1<f[i].rowSpan&&h&&f[i]==h[i]?(j=f[i],j.rowSpan+=1):(j=new CKEDITOR.dom.element(f[i]).clone(),j.removeAttribute("rowSpan"),j.appendBogus(),e.append(j),j=j.$),i+=j.colSpan-1}c?e.insertBefore(g):e.insertAfter(g)}function c(b){if(b instanceof CKEDITOR.dom.selection){var d=a(b),e=d[0].getAscendant("table"),f=CKEDITOR.tools.buildTableMap(e);b=d[0].getParent().$.rowIndex;for(var d=d[d.length-1],g=d.getParent().$.rowIndex+d.$.rowSpan-1,d=[],h=b;g>=h;h++){for(var i=f[h],j=new CKEDITOR.dom.element(e.$.rows[h]),k=0;k<i.length;k++){var l=new CKEDITOR.dom.element(i[k]),m=l.getParent().$.rowIndex;1==l.$.rowSpan?l.remove():(--l.$.rowSpan,m==h&&(m=f[h+1],m[k-1]?l.insertAfter(new CKEDITOR.dom.element(m[k-1])):new CKEDITOR.dom.element(e.$.rows[h+1]).append(l,1))),k+=l.$.colSpan-1}d.push(j)}for(f=e.$.rows,e=new CKEDITOR.dom.element(f[g+1]||(b>0?f[b-1]:null)||e.$.parentNode),h=d.length;h>=0;h--)c(d[h]);return e}return b instanceof CKEDITOR.dom.element&&(e=b.getAscendant("table"),1==e.$.rows.length?e.remove():b.remove()),null}function d(a,b){for(var c=b?1/0:0,d=0;d<a.length;d++){var e;e=a[d];for(var f=b,g=e.getParent().$.cells,h=0,i=0;i<g.length;i++){var j=g[i],h=h+(f?1:j.colSpan);if(j==e.$)break}e=h-1,(b?c>e:e>c)&&(c=e)}return c}function e(b,c){for(var e=a(b),f=e[0].getAscendant("table"),g=d(e,1),e=d(e),g=c?g:e,h=CKEDITOR.tools.buildTableMap(f),f=[],e=[],i=h.length,j=0;i>j;j++)f.push(h[j][g]),e.push(c?h[j][g-1]:h[j][g+1]);for(j=0;i>j;j++)f[j]&&(1<f[j].colSpan&&e[j]==f[j]?(g=f[j],g.colSpan+=1):(g=new CKEDITOR.dom.element(f[j]).clone(),g.removeAttribute("colSpan"),g.appendBogus(),g[c?"insertBefore":"insertAfter"].call(g,new CKEDITOR.dom.element(f[j])),g=g.$),j+=g.rowSpan-1)}function f(a,b){var c=a.getStartElement();if(c=c.getAscendant("td",1)||c.getAscendant("th",1)){var d=c.clone();d.appendBogus(),b?d.insertBefore(c):d.insertAfter(c)}}function g(b){if(b instanceof CKEDITOR.dom.selection){b=a(b);var c,d=b[0]&&b[0].getAscendant("table");a:{var e=0;c=b.length-1;for(var f,i,j={};f=b[e++];)CKEDITOR.dom.element.setMarker(j,f,"delete_cell",!0);for(e=0;f=b[e++];)if((i=f.getPrevious())&&!i.getCustomData("delete_cell")||(i=f.getNext())&&!i.getCustomData("delete_cell")){CKEDITOR.dom.element.clearAllMarkers(j),c=i;break a}CKEDITOR.dom.element.clearAllMarkers(j),i=b[0].getParent(),(i=i.getPrevious())?c=i.getLast():(i=b[c].getParent(),c=(i=i.getNext())?i.getChild(0):null)}for(i=b.length-1;i>=0;i--)g(b[i]);c?h(c,!0):d&&d.remove()}else b instanceof CKEDITOR.dom.element&&(d=b.getParent(),1==d.getChildCount()?d.remove():b.remove())}function h(a,b){var c=a.getDocument(),d=CKEDITOR.document;CKEDITOR.env.ie&&10==CKEDITOR.env.version&&(d.focus(),c.focus()),c=new CKEDITOR.dom.range(c),c["moveToElementEdit"+(b?"End":"Start")](a)||(c.selectNodeContents(a),c.collapse(!b)),c.select(!0)}function i(a,b,c){if(a=a[b],"undefined"==typeof c)return a;for(b=0;a&&b<a.length;b++){if(c.is&&a[b]==c.$)return b;if(b==c)return new CKEDITOR.dom.element(a[b])}return c.is?-1:null}function j(b,c,d){var e,f=a(b);if((c?1!=f.length:2>f.length)||(e=b.getCommonAncestor())&&e.type==CKEDITOR.NODE_ELEMENT&&e.is("table"))return!1;var g;b=f[0],e=b.getAscendant("table");var h=CKEDITOR.tools.buildTableMap(e),j=h.length,k=h[0].length,l=b.getParent().$.rowIndex,m=i(h,l,b);if(c){var n;try{var o=parseInt(b.getAttribute("rowspan"),10)||1;g=parseInt(b.getAttribute("colspan"),10)||1,n=h["up"==c?l-o:"down"==c?l+o:l]["left"==c?m-g:"right"==c?m+g:m]}catch(p){return!1}if(!n||b.$==n)return!1;f["up"==c||"left"==c?"unshift":"push"](new CKEDITOR.dom.element(n))}c=b.getDocument();var q=l,o=n=0,r=!d&&new CKEDITOR.dom.documentFragment(c),s=0;for(c=0;c<f.length;c++){g=f[c];var t=g.getParent(),u=g.getFirst(),v=g.$.colSpan,w=g.$.rowSpan,t=t.$.rowIndex,x=i(h,t,g),s=s+v*w,o=Math.max(o,x-m+v);n=Math.max(n,t-l+w),d||(v=g,(w=v.getBogus())&&w.remove(),v.trim(),g.getChildren().count()&&(t==q||!u||u.isBlockBoundary&&u.isBlockBoundary({br:1})||(q=r.getLast(CKEDITOR.dom.walker.whitespaces(!0)),!q||q.is&&q.is("br")||r.append("br")),g.moveChildren(r)),c?g.remove():g.setHtml("")),q=t}if(d)return n*o==s;for(r.moveChildren(b),b.appendBogus(),o>=k?b.removeAttribute("rowSpan"):b.$.rowSpan=n,n>=j?b.removeAttribute("colSpan"):b.$.colSpan=o,d=new CKEDITOR.dom.nodeList(e.$.rows),f=d.count(),c=f-1;c>=0;c--)e=d.getItem(c),e.$.cells.length||(e.remove(),f++);return b}function k(b,c){var d=a(b);if(1<d.length)return!1;if(c)return!0;var e,d=d[0],f=d.getParent(),g=f.getAscendant("table"),h=CKEDITOR.tools.buildTableMap(g),j=f.$.rowIndex,k=i(h,j,d),l=d.$.rowSpan;if(l>1){e=Math.ceil(l/2);for(var m,l=Math.floor(l/2),f=j+e,g=new CKEDITOR.dom.element(g.$.rows[f]),h=i(h,f),f=d.clone(),j=0;j<h.length;j++){if(m=h[j],m.parentNode==g.$&&j>k){f.insertBefore(new CKEDITOR.dom.element(m));break}m=null}m||g.append(f)}else for(l=e=1,g=f.clone(),g.insertAfter(f),g.append(f=d.clone()),m=i(h,j),k=0;k<m.length;k++)m[k].rowSpan++;return f.appendBogus(),d.$.rowSpan=e,f.$.rowSpan=l,1==e&&d.removeAttribute("rowSpan"),1==l&&f.removeAttribute("rowSpan"),f}function l(b,c){var d=a(b);if(1<d.length)return!1;if(c)return!0;var d=d[0],e=d.getParent(),f=e.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(f),g=i(f,e.$.rowIndex,d),h=d.$.colSpan;if(h>1)e=Math.ceil(h/2),h=Math.floor(h/2);else{for(var h=e=1,j=[],k=0;k<f.length;k++){var l=f[k];j.push(l[g]),1<l[g].rowSpan&&(k+=l[g].rowSpan-1)}for(f=0;f<j.length;f++)j[f].colSpan++}return f=d.clone(),f.insertAfter(d),f.appendBogus(),d.$.colSpan=e,f.$.colSpan=h,1==e&&d.removeAttribute("colSpan"),1==h&&f.removeAttribute("colSpan"),f}var m=/^(?:td|th)$/;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(d){function i(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function m(a,b){var c=d.addCommand(a,b);d.addFeature(c)}var n=d.lang.table;m("cellProperties",new CKEDITOR.dialogCommand("cellProperties",i({allowedContent:"td th{width,height,border-color,background-color,white-space,vertical-align,text-align}[colspan,rowspan]",requiredContent:"table"}))),CKEDITOR.dialog.add("cellProperties",this.path+"dialogs/tableCell.js"),m("rowDelete",i({requiredContent:"table",exec:function(a){a=a.getSelection(),h(c(a))}})),m("rowInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),b(a,!0)}})),m("rowInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),b(a)}})),m("columnDelete",i({requiredContent:"table",exec:function(b){b=b.getSelection(),b=a(b);var c=b[0],d=b[b.length-1];b=c.getAscendant("table");for(var e,f,g=CKEDITOR.tools.buildTableMap(b),i=[],j=0,k=g.length;k>j;j++)for(var l=0,m=g[j].length;m>l;l++)g[j][l]==c.$&&(e=l),g[j][l]==d.$&&(f=l);for(j=e;f>=j;j++)for(l=0;l<g.length;l++)d=g[l],c=new CKEDITOR.dom.element(b.$.rows[l]),d=new CKEDITOR.dom.element(d[j]),d.$&&(1==d.$.colSpan?d.remove():--d.$.colSpan,l+=d.$.rowSpan-1,c.$.cells.length||i.push(c));f=b.$.rows[0]&&b.$.rows[0].cells,e=new CKEDITOR.dom.element(f[e]||(e?f[e-1]:b.$.parentNode)),i.length==k&&b.remove(),e&&h(e,!0)}})),m("columnInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),e(a,!0)}})),m("columnInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),e(a)}})),m("cellDelete",i({requiredContent:"table",exec:function(a){a=a.getSelection(),g(a)}})),m("cellMerge",i({allowedContent:"td[colspan,rowspan]",requiredContent:"td[colspan,rowspan]",exec:function(a){h(j(a.getSelection()),!0)}})),m("cellMergeRight",i({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){h(j(a.getSelection(),"right"),!0)}})),m("cellMergeDown",i({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){h(j(a.getSelection(),"down"),!0)}})),m("cellVerticalSplit",i({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){h(l(a.getSelection()))}})),m("cellHorizontalSplit",i({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){h(k(a.getSelection()))}})),m("cellInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),f(a,!0)}})),m("cellInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),f(a)}})),d.addMenuItems&&d.addMenuItems({tablecell:{label:n.cell.menu,group:"tablecell",order:1,getItems:function(){var b=d.getSelection(),c=a(b);return{tablecell_insertBefore:CKEDITOR.TRISTATE_OFF,tablecell_insertAfter:CKEDITOR.TRISTATE_OFF,tablecell_delete:CKEDITOR.TRISTATE_OFF,tablecell_merge:j(b,null,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_right:j(b,"right",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_down:j(b,"down",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_vertical:l(b,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_horizontal:k(b,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_properties:0<c.length?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED}}},tablecell_insertBefore:{label:n.cell.insertBefore,group:"tablecell",command:"cellInsertBefore",order:5},tablecell_insertAfter:{label:n.cell.insertAfter,group:"tablecell",command:"cellInsertAfter",order:10},tablecell_delete:{label:n.cell.deleteCell,group:"tablecell",command:"cellDelete",order:15},tablecell_merge:{label:n.cell.merge,group:"tablecell",command:"cellMerge",order:16},tablecell_merge_right:{label:n.cell.mergeRight,group:"tablecell",command:"cellMergeRight",order:17},tablecell_merge_down:{label:n.cell.mergeDown,group:"tablecell",command:"cellMergeDown",order:18},tablecell_split_horizontal:{label:n.cell.splitHorizontal,group:"tablecell",command:"cellHorizontalSplit",order:19},tablecell_split_vertical:{label:n.cell.splitVertical,group:"tablecell",command:"cellVerticalSplit",order:20},tablecell_properties:{label:n.cell.title,group:"tablecellproperties",command:"cellProperties",order:21},tablerow:{label:n.row.menu,group:"tablerow",order:1,getItems:function(){return{tablerow_insertBefore:CKEDITOR.TRISTATE_OFF,tablerow_insertAfter:CKEDITOR.TRISTATE_OFF,tablerow_delete:CKEDITOR.TRISTATE_OFF}}},tablerow_insertBefore:{label:n.row.insertBefore,group:"tablerow",command:"rowInsertBefore",order:5},tablerow_insertAfter:{label:n.row.insertAfter,group:"tablerow",command:"rowInsertAfter",order:10},tablerow_delete:{label:n.row.deleteRow,group:"tablerow",command:"rowDelete",order:15},tablecolumn:{label:n.column.menu,group:"tablecolumn",order:1,getItems:function(){return{tablecolumn_insertBefore:CKEDITOR.TRISTATE_OFF,tablecolumn_insertAfter:CKEDITOR.TRISTATE_OFF,tablecolumn_delete:CKEDITOR.TRISTATE_OFF}}},tablecolumn_insertBefore:{label:n.column.insertBefore,group:"tablecolumn",command:"columnInsertBefore",order:5},tablecolumn_insertAfter:{label:n.column.insertAfter,group:"tablecolumn",command:"columnInsertAfter",order:10},tablecolumn_delete:{label:n.column.deleteColumn,group:"tablecolumn",command:"columnDelete",order:15}}),d.contextMenu&&d.contextMenu.addListener(function(a,b,c){return(a=c.contains({td:1,th:1},1))&&!a.isReadOnly()?{tablecell:CKEDITOR.TRISTATE_OFF,tablerow:CKEDITOR.TRISTATE_OFF,tablecolumn:CKEDITOR.TRISTATE_OFF}:null})},getSelectedCells:a},CKEDITOR.plugins.add("tabletools",CKEDITOR.plugins.tabletools)}(),CKEDITOR.tools.buildTableMap=function(a){a=a.$.rows;for(var b=-1,c=[],d=0;d<a.length;d++){b++,!c[b]&&(c[b]=[]);for(var e=-1,f=0;f<a[d].cells.length;f++){var g=a[d].cells[f];for(e++;c[b][e];)e++;for(var h=isNaN(g.colSpan)?1:g.colSpan,g=isNaN(g.rowSpan)?1:g.rowSpan,i=0;g>i;i++){c[b+i]||(c[b+i]=[]);for(var j=0;h>j;j++)c[b+i][e+j]=a[d].cells[f]}e+=h-1}}return c},function(){function a(a){function c(){for(var c=d(),f=CKEDITOR.tools.clone(a.config.toolbarGroups)||b(a),g=0;g<f.length;g++){var h=f[g];if("/"!=h){"string"==typeof h&&(h=f[g]={name:h});var i,j=h.groups;if(j)for(var k=0;k<j.length;k++)i=j[k],(i=c[i])&&e(h,i);(i=c[h.name])&&e(h,i)}}return f}function d(){var b,c,d,e={};for(b in a.ui.items)c=a.ui.items[b],d=c.toolbar||"others",d=d.split(","),c=d[0],d=parseInt(d[1]||-1,10),e[c]||(e[c]=[]),e[c].push({name:b,order:d});for(c in e)e[c]=e[c].sort(function(a,b){return a.order==b.order?0:0>b.order?-1:0>a.order?1:a.order<b.order?-1:1});return e}function e(b,c){if(c.length){b.items?b.items.push(a.ui.create("-")):b.items=[];for(var d;d=c.shift();)d="string"==typeof d?d:d.name,g&&-1!=CKEDITOR.tools.indexOf(g,d)||(d=a.ui.create(d))&&a.addFeature(d)&&b.items.push(d)}}function f(a){var b,c,d,f=[];for(b=0;b<a.length;++b)c=a[b],d={},"/"==c?f.push(c):CKEDITOR.tools.isArray(c)?(e(d,CKEDITOR.tools.clone(c)),f.push(d)):c.items&&(e(d,CKEDITOR.tools.clone(c.items)),d.name=c.name,f.push(d));return f}var g=a.config.removeButtons,g=g&&g.split(","),h=a.config.toolbar;return"string"==typeof h&&(h=a.config["toolbar_"+h]),a.toolbar=h?f(h):c()}function b(a){return a._.toolbarGroups||(a._.toolbarGroups=[{name:"document",groups:["mode","document","doctools"]},{name:"clipboard",groups:["clipboard","undo"]},{name:"editing",groups:["find","selection","spellchecker"]},{name:"forms"},"/",{name:"basicstyles",groups:["basicstyles","cleanup"]},{name:"paragraph",groups:["list","indent","blocks","align","bidi"]},{name:"links"},{name:"insert"},"/",{name:"styles"},{name:"colors"},{name:"tools"},{name:"others"},{name:"about"}])}var c=function(){this.toolbars=[],this.focusCommandExecuted=!1};c.prototype.focus=function(){for(var a,b=0;a=this.toolbars[b++];)for(var c,d=0;c=a.items[d++];)if(c.focus)return void c.focus()};var d={modes:{wysiwyg:1,source:1},readOnly:1,exec:function(a){a.toolbox&&(a.toolbox.focusCommandExecuted=!0,CKEDITOR.env.ie||CKEDITOR.env.air?setTimeout(function(){a.toolbox.focus()},100):a.toolbox.focus())}};CKEDITOR.plugins.add("toolbar",{requires:"button",init:function(b){var e,f=function(a,c){var d,g="rtl"==b.lang.dir,h=b.config.toolbarGroupCycling,i=g?37:39,g=g?39:37,h=void 0===h||h;switch(c){case 9:case CKEDITOR.SHIFT+9:for(;!d||!d.items.length;)if(d=9==c?(d?d.next:a.toolbar.next)||b.toolbox.toolbars[0]:(d?d.previous:a.toolbar.previous)||b.toolbox.toolbars[b.toolbox.toolbars.length-1],d.items.length)for(a=d.items[e?d.items.length-1:0];a&&!a.focus;)(a=e?a.previous:a.next)||(d=0);return a&&a.focus(),!1;case i:d=a;do d=d.next,!d&&h&&(d=a.toolbar.items[0]);while(d&&!d.focus);return d?d.focus():f(a,9),!1;case 40:return a.button&&a.button.hasArrow?(b.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)}),a.execute()):f(a,40==c?i:g),!1;case g:case 38:d=a;do d=d.previous,!d&&h&&(d=a.toolbar.items[a.toolbar.items.length-1]);while(d&&!d.focus);return d?d.focus():(e=1,f(a,CKEDITOR.SHIFT+9),e=0),!1;case 27:return b.focus(),!1;case 13:case 32:return a.execute(),!1}return!0};b.on("uiSpace",function(d){if(d.data.space==b.config.toolbarLocation){d.removeListener(),b.toolbox=new c;var e,g,h=CKEDITOR.tools.getNextId(),i=['<span id="',h,'" class="cke_voice_label">',b.lang.toolbar.toolbars,"</span>",'<span id="'+b.ui.spaceId("toolbox")+'" class="cke_toolbox" role="group" aria-labelledby="',h,'" onmousedown="return false;">'],h=!1!==b.config.toolbarStartupExpanded;b.config.toolbarCanCollapse&&b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&i.push('<span class="cke_toolbox_main"'+(h?">":' style="display:none">'));for(var j=b.toolbox.toolbars,k=a(b),l=0;l<k.length;l++){var m,n,o,p=0,q=k[l];if(q)if(e&&(i.push("</span>"),g=e=0),"/"===q)i.push('<span class="cke_toolbar_break"></span>');else{o=q.items||q;for(var r=0;r<o.length;r++){var s,t=o[r];if(t){var u=function(a){a=a.render(b,i),v=p.items.push(a)-1,v>0&&(a.previous=p.items[v-1],a.previous.next=a),a.toolbar=p,a.onkey=f,a.onfocus=function(){b.toolbox.focusCommandExecuted||b.focus()}};if(t.type==CKEDITOR.UI_SEPARATOR)g=e&&t;else{if(s=!1!==t.canGroup,!p){m=CKEDITOR.tools.getNextId(),p={id:m,items:[]},n=q.name&&(b.lang.toolbar.toolbarGroups[q.name]||q.name),i.push('<span id="',m,'" class="cke_toolbar"',n?' aria-labelledby="'+m+'_label"':"",' role="toolbar">'),n&&i.push('<span id="',m,'_label" class="cke_voice_label">',n,"</span>"),i.push('<span class="cke_toolbar_start"></span>');var v=j.push(p)-1;v>0&&(p.previous=j[v-1],p.previous.next=p)}s?e||(i.push('<span class="cke_toolgroup" role="presentation">'),e=1):e&&(i.push("</span>"),e=0),g&&(u(g),g=0),u(t)}}}e&&(i.push("</span>"),g=e=0),p&&i.push('<span class="cke_toolbar_end"></span></span>')}}if(b.config.toolbarCanCollapse&&i.push("</span>"),b.config.toolbarCanCollapse&&b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var w=CKEDITOR.tools.addFunction(function(){b.execCommand("toolbarCollapse")});b.on("destroy",function(){CKEDITOR.tools.removeFunction(w)}),b.addCommand("toolbarCollapse",{readOnly:1,exec:function(a){var b=a.ui.space("toolbar_collapser"),c=b.getPrevious(),d=a.ui.space("contents"),e=c.getParent(),f=parseInt(d.$.style.height,10),g=e.$.offsetHeight,h=b.hasClass("cke_toolbox_collapser_min");h?(c.show(),b.removeClass("cke_toolbox_collapser_min"),b.setAttribute("title",a.lang.toolbar.toolbarCollapse)):(c.hide(),b.addClass("cke_toolbox_collapser_min"),b.setAttribute("title",a.lang.toolbar.toolbarExpand)),b.getFirst().setText(h?"▲":"◀"),d.setStyle("height",f-(e.$.offsetHeight-g)+"px"),a.fire("resize",{outerHeight:a.container.$.offsetHeight,contentsHeight:d.$.offsetHeight,outerWidth:a.container.$.offsetWidth})},modes:{wysiwyg:1,source:1}}),b.setKeystroke(CKEDITOR.ALT+(CKEDITOR.env.ie||CKEDITOR.env.webkit?189:109),"toolbarCollapse"),i.push('<a title="'+(h?b.lang.toolbar.toolbarCollapse:b.lang.toolbar.toolbarExpand)+'" id="'+b.ui.spaceId("toolbar_collapser")+'" tabIndex="-1" class="cke_toolbox_collapser'),h||i.push(" cke_toolbox_collapser_min"),i.push('" onclick="CKEDITOR.tools.callFunction('+w+')">','<span class="cke_arrow">▲</span>',"</a>")}i.push("</span>"),d.data.html+=i.join("")}}),b.on("destroy",function(){if(this.toolbox){var a,b,c,d,e=0;for(a=this.toolbox.toolbars;e<a.length;e++)for(c=a[e].items,b=0;b<c.length;b++)d=c[b],d.clickFn&&CKEDITOR.tools.removeFunction(d.clickFn),d.keyDownFn&&CKEDITOR.tools.removeFunction(d.keyDownFn)}}),b.on("uiReady",function(){var a=b.ui.space("toolbox");a&&b.focusManager.add(a,1)}),b.addCommand("toolbarFocus",d),b.setKeystroke(CKEDITOR.ALT+121,"toolbarFocus"),b.ui.add("-",CKEDITOR.UI_SEPARATOR,{}),b.ui.addHandler(CKEDITOR.UI_SEPARATOR,{create:function(){return{render:function(a,b){return b.push('<span class="cke_toolbar_separator" role="separator"></span>'),{}}}}})}}),CKEDITOR.ui.prototype.addToolbarGroup=function(a,c,d){var e=b(this.editor),f=0===c,g={name:a};if(d){if(d=CKEDITOR.tools.search(e,function(a){return a.name==d}))return!d.groups&&(d.groups=[]),c&&(c=CKEDITOR.tools.indexOf(d.groups,c),c>=0)?void d.groups.splice(c+1,0,a):void(f?d.groups.splice(0,0,a):d.groups.push(a));c=null}c&&(c=CKEDITOR.tools.indexOf(e,function(a){return a.name==c})),f?e.splice(0,0,a):"number"==typeof c?e.splice(c+1,0,g):e.push(a)}}(),CKEDITOR.UI_SEPARATOR="separator",CKEDITOR.config.toolbarLocation="top",function(){var a=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],b={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(b){function d(a){g.enabled&&!1!==a.data.command.canUndo&&g.save()}function e(){g.enabled=b.readOnly?!1:"wysiwyg"==b.mode,g.onChange()}var g=b.undoManager=new c(b),h=g.editingHandler=new f(g),i=b.addCommand("undo",{exec:function(){g.undo()&&(b.selectionChange(),this.fire("afterUndo"))},startDisabled:!0,canUndo:!1}),j=b.addCommand("redo",{exec:function(){g.redo()&&(b.selectionChange(),this.fire("afterRedo"))},startDisabled:!0,canUndo:!1});b.setKeystroke([[a[0],"undo"],[a[1],"redo"],[a[2],"redo"]]),g.onChange=function(){i.setState(g.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),j.setState(g.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)},b.on("beforeCommandExec",d),b.on("afterCommandExec",d),b.on("saveSnapshot",function(a){g.save(a.data&&a.data.contentOnly)}),b.on("contentDom",h.attachListeners,h),b.on("instanceReady",function(){b.fire("saveSnapshot")}),b.on("beforeModeUnload",function(){"wysiwyg"==b.mode&&g.save(!0)}),b.on("mode",e),b.on("readOnly",e),b.ui.addButton&&(b.ui.addButton("Undo",{label:b.lang.undo.undo,command:"undo",toolbar:"undo,10"}),b.ui.addButton("Redo",{label:b.lang.undo.redo,command:"redo",toolbar:"undo,20"})),b.resetUndo=function(){g.reset(),b.fire("saveSnapshot")},b.on("updateSnapshot",function(){g.currentImage&&g.update()}),b.on("lockSnapshot",function(a){a=a.data,g.lock(a&&a.dontUpdate,a&&a.forceUpdate)}),b.on("unlockSnapshot",g.unlock,g)}}),CKEDITOR.plugins.undo={};var c=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0],this.locked=null,this.previousKeyGroup=-1,this.limit=a.config.undoStackSize||20,this.strokesLimit=25,this.editor=a,this.reset()};c.prototype={type:function(a,b){var d=c.getKeyGroup(a),e=this.strokesRecorded[d]+1;b=b||e>=this.strokesLimit,this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange()),b?(e=0,this.editor.fire("saveSnapshot")):this.editor.fire("change"),this.strokesRecorded[d]=e,this.previousKeyGroup=d},keyGroupChanged:function(a){return c.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[],this.index=-1,this.currentImage=null,this.hasRedo=this.hasUndo=!1,this.locked=null,this.resetType()},resetType:function(){this.strokesRecorded=[0,0],this.typing=!1,this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0),this.hasRedo=!!this.getNextImage(!1),this.resetType(),this.onChange()},save:function(a,b,c){var e=this.editor;if(this.locked||"ready"!=e.status||"wysiwyg"!=e.mode)return!1;var f=e.editable();if(!f||"ready"!=f.status)return!1;if(f=this.snapshots,b||(b=new d(e)),!1===b.contents)return!1;if(this.currentImage)if(b.equalsContent(this.currentImage)){if(a||b.equalsSelection(this.currentImage))return!1}else!1!==c&&e.fire("change");return f.splice(this.index+1,f.length-this.index-1),f.length==this.limit&&f.shift(),this.index=f.push(b)-1,this.currentImage=b,!1!==c&&this.refreshState(),!0},restoreImage:function(a){var b,c=this.editor;a.bookmarks&&(c.focus(), +b=c.getSelection()),this.locked={level:999},this.editor.loadSnapshot(a.contents),a.bookmarks?b.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(b=this.editor.document.getBody().$.createTextRange(),b.collapse(!0),b.select()),this.locked=null,this.index=a.index,this.currentImage=this.snapshots[this.index],this.update(),this.refreshState(),c.fire("change")},getNextImage:function(a){var b,c=this.snapshots,d=this.currentImage;if(d)if(a){for(b=this.index-1;b>=0;b--)if(a=c[b],!d.equalsContent(a))return a.index=b,a}else for(b=this.index+1;b<c.length;b++)if(a=c[b],!d.equalsContent(a))return a.index=b,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||(a=new d(this.editor));for(var b=this.index,c=this.snapshots;b>0&&this.currentImage.equalsContent(c[b-1]);)--b;c.splice(b,this.index-b+1,a),this.index=b,this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var b=this.snapshots,c=b[b.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=b[b.length-1]=a,!0):!1},lock:function(a,b){if(this.locked)this.locked.level++;else if(a)this.locked={level:1};else{var c=null;if(b)c=!0;else{var e=new d(this.editor,!0);this.currentImage&&this.currentImage.equalsContent(e)&&(c=e)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;if(this.locked=null,!0===a)this.update();else if(a){var b=new d(this.editor,!0);a.equalsContent(b)||this.update()}}}},c.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1},c.keyGroups={PRINTABLE:0,FUNCTIONAL:1},c.isNavigationKey=function(a){return!!c.navigationKeyCodes[a]},c.getKeyGroup=function(a){var d=c.keyGroups;return b[a]?d.FUNCTIONAL:d.PRINTABLE},c.getOppositeKeyGroup=function(a){var b=c.keyGroups;return a==b.FUNCTIONAL?b.PRINTABLE:b.FUNCTIONAL},c.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&c.getKeyGroup(a)==c.keyGroups.FUNCTIONAL};var d=CKEDITOR.plugins.undo.Image=function(a,b){this.editor=a,a.fire("beforeUndoImage");var c=a.getSnapshot();CKEDITOR.env.ie&&c&&(c=c.replace(/\s+data-cke-expando=".*?"/g,"")),this.contents=c,b||(this.bookmarks=(c=c&&a.getSelection())&&c.createBookmarks2(!0)),a.fire("afterUndoImage")},e=/\b(?:href|src|name)="[^"]*?"/gi;d.prototype={equalsContent:function(a){var b=this.contents;return a=a.contents,CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)&&(b=b.replace(e,""),a=a.replace(e,"")),b==a},equalsSelection:function(a){var b=this.bookmarks;if(a=a.bookmarks,b||a){if(!b||!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++){var d=b[c],e=a[c];if(d.startOffset!=e.startOffset||d.endOffset!=e.endOffset||!CKEDITOR.tools.arrayCompare(d.start,e.start)||!CKEDITOR.tools.arrayCompare(d.end,e.end))return!1}}return!0}};var f=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a,this.ignoreInputEvent=!1,this.keyEventsStack=new g,this.lastKeydownImage=null};f.prototype={onKeydown:function(b){var e=b.data.getKey();229!==e&&(-1<CKEDITOR.tools.indexOf(a,b.data.getKeystroke())?b.data.preventDefault():(this.keyEventsStack.cleanUp(b),b=this.undoManager,this.keyEventsStack.getLast(e)||this.keyEventsStack.push(e),this.lastKeydownImage=new d(b.editor),(c.isNavigationKey(e)||this.undoManager.keyGroupChanged(e))&&(b.strokesRecorded[0]||b.strokesRecorded[1])&&(b.save(!1,this.lastKeydownImage,!1),b.resetType())))},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=!1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0)),this.keyEventsStack.increment(a.keyCode),this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&(this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var b=this.undoManager;a=a.data.getKey();var e=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a),c.ieFunctionalKeysBug(a)&&this.lastKeydownImage&&this.lastKeydownImage.equalsContent(new d(b.editor,!0))||(e>0?b.type(a):c.isNavigationKey(a)&&this.onNavigationKey(!0))},onNavigationKey:function(a){var b=this.undoManager;!a&&b.save(!0,null,!1)||b.updateSelection(new d(b.editor)),b.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},attachListeners:function(){var a=this.undoManager.editor,b=a.editable(),d=this;b.attachListener(b,"keydown",function(a){d.onKeydown(a),c.ieFunctionalKeysBug(a.data.getKey())&&d.onInput()},null,null,999),b.attachListener(b,CKEDITOR.env.ie?"keypress":"input",d.onInput,d,null,999),b.attachListener(b,"keyup",d.onKeyup,d,null,999),b.attachListener(b,"paste",d.ignoreInputEventListener,d,null,999),b.attachListener(b,"drop",d.ignoreInputEventListener,d,null,999),b.attachListener(b.isInline()?b:a.document.getDocumentElement(),"click",function(){d.onNavigationKey()},null,null,999),b.attachListener(this.undoManager.editor,"blur",function(){d.keyEventsStack.remove(9)},null,null,999)}};var g=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};g.prototype={push:function(a){return a=this.stack.push({keyCode:a,inputs:0}),this.stack[a-1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var b=this.stack.length;b--;)if(this.stack[b].keyCode==a)return b;return-1},getLast:function(a){return a=this.getLastIndex(a),-1!=a?this.stack[a]:null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a),-1!=a&&this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=this.stack.length,b=0;a--;)b+=this.stack[a].inputs;return b},cleanUp:function(a){a=a.data.$,a.ctrlKey||a.metaKey||this.remove(17),a.shiftKey||this.remove(16),a.altKey||this.remove(18)}}}(),CKEDITOR.plugins.add("wsc",{requires:"dialog",parseApi:function(a){a.config.wsc_onFinish="function"==typeof a.config.wsc_onFinish?a.config.wsc_onFinish:function(){},a.config.wsc_onClose="function"==typeof a.config.wsc_onClose?a.config.wsc_onClose:function(){}},parseConfig:function(a){a.config.wsc_customerId=a.config.wsc_customerId||CKEDITOR.config.wsc_customerId||"1:ua3xw1-2XyGJ3-GWruD3-6OFNT1-oXcuB1-nR6Bp4-hgQHc-EcYng3-sdRXG3-NOfFk",a.config.wsc_customDictionaryIds=a.config.wsc_customDictionaryIds||CKEDITOR.config.wsc_customDictionaryIds||"",a.config.wsc_userDictionaryName=a.config.wsc_userDictionaryName||CKEDITOR.config.wsc_userDictionaryName||"",a.config.wsc_customLoaderScript=a.config.wsc_customLoaderScript||CKEDITOR.config.wsc_customLoaderScript,CKEDITOR.config.wsc_cmd=a.config.wsc_cmd||CKEDITOR.config.wsc_cmd||"spell",CKEDITOR.config.wsc_version="v4.3.0-master-d769233",CKEDITOR.config.wsc_removeGlobalVariable=!0},init:function(a){var b=CKEDITOR.env;this.parseConfig(a),this.parseApi(a),a.addCommand("checkspell",new CKEDITOR.dialogCommand("checkspell")).modes={wysiwyg:!(CKEDITOR.env.opera||CKEDITOR.env.air||document.domain!=window.location.hostname||b.ie&&(8>b.version||b.quirks))},"undefined"==typeof a.plugins.scayt&&a.ui.addButton&&a.ui.addButton("SpellChecker",{label:a.lang.wsc.toolbar,click:function(a){var b=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():a.document.getBody().getText();(b=b.replace(/\s/g,""))?a.execCommand("checkspell"):alert("Nothing to check!")},toolbar:"spellchecker,10"}),CKEDITOR.dialog.add("checkspell",this.path+(CKEDITOR.env.ie&&7>=CKEDITOR.env.version?"dialogs/wsc_ie.js":window.postMessage?"dialogs/wsc.js":"dialogs/wsc_ie.js"))}}),function(){function a(a){function c(a){var b=!1;h.attachListener(h,"keydown",function(){var c=e.getBody().getElementsByTag(a);if(!b){for(var d=0;d<c.count();d++)c.getItem(d).setCustomData("retain",!0);b=!0}},null,null,1),h.attachListener(h,"keyup",function(){var c=e.getElementsByTag(a);b&&(1!=c.count()||c.getItem(0).getCustomData("retain")||c.getItem(0).remove(1),b=!1)})}var d=this.editor,e=a.document,f=e.body,g=e.getElementById("cke_actscrpt");g&&g.parentNode.removeChild(g),(g=e.getElementById("cke_shimscrpt"))&&g.parentNode.removeChild(g),(g=e.getElementById("cke_basetagscrpt"))&&g.parentNode.removeChild(g),f.contentEditable=!0,CKEDITOR.env.ie&&(f.hideFocus=!0,f.disabled=!0,f.removeAttribute("disabled")),delete this._.isLoadingData,this.$=f,e=new CKEDITOR.dom.document(e),this.setup(),this.fixInitialSelection();var h=this;CKEDITOR.env.ie&&!CKEDITOR.env.edge&&e.getDocumentElement().addClass(e.$.compatMode),CKEDITOR.env.ie&&!CKEDITOR.env.edge&&d.enterMode!=CKEDITOR.ENTER_P?c("p"):CKEDITOR.env.edge&&d.enterMode!=CKEDITOR.ENTER_DIV&&c("div"),(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)&&e.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&setTimeout(function(){d.editable().focus()})}),b(d);try{d.document.$.execCommand("2D-position",!1,!0)}catch(i){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==d.document.$.compatMode)&&this.attachListener(this,"keydown",function(a){var b=a.data.getKeystroke();if(33==b||34==b)if(CKEDITOR.env.ie)setTimeout(function(){d.getSelection().scrollIntoView()},0);else if(d.window.$.innerHeight>this.$.offsetHeight){var c=d.createRange();c[33==b?"moveToElementEditStart":"moveToElementEditEnd"](this),c.select(),a.data.preventDefault()}}),CKEDITOR.env.ie&&this.attachListener(e,"blur",function(){try{e.$.selection.empty()}catch(a){}}),CKEDITOR.env.iOS&&this.attachListener(e,"touchend",function(){a.focus()}),f=d.document.getElementsByTag("title").getItem(0),f.data("cke-title",f.getText()),CKEDITOR.env.ie&&(d.document.$.title=this._.docTitle),CKEDITOR.tools.setTimeout(function(){"unloaded"==this.status&&(this.status="ready"),d.fire("contentDom"),this._.isPendingFocus&&(d.focus(),this._.isPendingFocus=!1),setTimeout(function(){d.fire("dataReady")},0)},0,this)}function b(a){function b(){var b;a.editable().attachListener(a,"selectionChange",function(){var d=a.getSelection().getSelectedElement();d&&(b&&(b.detachEvent("onresizestart",c),b=null),d.$.attachEvent("onresizestart",c),b=d.$)})}function c(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var d=a.document.$;d.execCommand("enableObjectResizing",!1,!a.config.disableObjectResizing),d.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(e){}else CKEDITOR.env.ie&&11>CKEDITOR.env.version&&a.config.disableObjectResizing&&b(a)}function c(){var a=[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable=false]{min-height:0 !important}");var b,c=[];for(b in CKEDITOR.dtd.$removeEmpty)c.push("html.CSS1Compat "+b+"[contenteditable=false]");a.push(c.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&(a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));return a.push("html{cursor:text;*cursor:auto}"),a.push("img,input,textarea{cursor:default}"),a.join("\n")}CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",requiredContent:"body"}),a.addMode("wysiwyg",function(b){function c(c){c&&c.removeListener(),a.editable(new d(a,f.$.contentWindow.document.body)),a.setData(a.getData(1),b)}var e="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",e=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie&&!CKEDITOR.env.edge?"javascript:void(function(){"+encodeURIComponent(e)+"}())":"",f=CKEDITOR.dom.element.createFromHtml('<iframe src="'+e+'" frameBorder="0"></iframe>');f.setStyles({width:"100%",height:"100%"}),f.addClass("cke_wysiwyg_frame").addClass("cke_reset"),e=a.ui.space("contents"),e.append(f);var g=CKEDITOR.env.ie&&!CKEDITOR.env.edge||CKEDITOR.env.gecko;g&&f.on("load",c);var h=a.title,i=a.fire("ariaEditorHelpLabel",{}).label;if(h&&(CKEDITOR.env.ie&&i&&(h+=", "+i),f.setAttribute("title",h)),i){var h=CKEDITOR.tools.getNextId(),j=CKEDITOR.dom.element.createFromHtml('<span id="'+h+'" class="cke_voice_label">'+i+"</span>");e.append(j,1),f.setAttribute("aria-describedby",h)}a.on("beforeModeUnload",function(a){a.removeListener(),j&&j.remove()}),f.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"}),!g&&c(),a.fire("ariaWidget",f)})}}),CKEDITOR.editor.prototype.addContentsCss=function(a){var b=this.config,c=b.contentsCss;CKEDITOR.tools.isArray(c)||(b.contentsCss=c?[c]:[]),b.contentsCss.push(a)};var d=CKEDITOR.tools.createClass({$:function(){this.base.apply(this,arguments),this._.frameLoadedHandler=CKEDITOR.tools.addFunction(function(b){CKEDITOR.tools.setTimeout(a,0,this,b)},this),this._.docTitle=this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,b){var d=this.editor;if(b)this.setHtml(a),this.fixInitialSelection(),d.fire("dataReady");else{this._.isLoadingData=!0,d._.dataStore={id:1};var e=d.config,f=e.fullPage,g=e.docType,h=CKEDITOR.tools.buildStyleHtml(c()).replace(/<style>/,'<style data-cke-temp="1">');f||(h+=CKEDITOR.tools.buildStyleHtml(d.config.contentsCss));var i=e.baseHref?'<base href="'+e.baseHref+'" data-cke-temp="1" />':"";f&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){return d.docType=g=a,""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){return d.xmlDeclaration=a,""})),a=d.dataProcessor.toHtml(a),f?(/<body[\s|>]/.test(a)||(a="<body>"+a),/<html[\s|>]/.test(a)||(a="<html>"+a+"</html>"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$&<title></title>")):a=a.replace(/<html[^>]*>/,"$&<head><title></title></head>"),i&&(a=a.replace(/<head[^>]*?>/,"$&"+i)),a=a.replace(/<\/head\s*>/,h+"$&"),a=g+a):a=e.docType+'<html dir="'+e.contentsLangDirection+'" lang="'+(e.contentsLanguage||d.langCode)+'"><head><title>'+this._.docTitle+"</title>"+i+h+"</head><body"+(e.bodyId?' id="'+e.bodyId+'"':"")+(e.bodyClass?' class="'+e.bodyClass+'"':"")+">"+a+"</body></html>",CKEDITOR.env.gecko&&(a=a.replace(/<body/,'<body contenteditable="true" '),2e4>CKEDITOR.env.version&&(a=a.replace(/<body[^>]*>/,"$&<!-- cke-content-start -->"))),e='<script id="cke_actscrpt" type="text/javascript"'+(CKEDITOR.env.ie?' defer="defer" ':"")+">var wasLoaded=0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded=1;}"+(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"</script>",CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(e+='<script id="cke_shimscrpt">window.parent.CKEDITOR.tools.enableHtml5Elements(document)</script>'),i&&CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(e+='<script id="cke_basetagscrpt">var baseTag = document.querySelector( "base" );baseTag.href = baseTag.href;</script>'),a=a.replace(/(?=\s*<\/(:?head)>)/,e),this.clearCustomData(),this.clearListeners(),d.fire("contentDomUnload");var j=this.getDocument();try{j.write(a)}catch(k){setTimeout(function(){j.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();a=this.editor;var b=a.config,c=b.fullPage,d=c&&a.docType,e=c&&a.xmlDeclaration,f=this.getDocument(),c=c?f.getDocumentElement().getOuterHtml():f.getBody().getHtml();return CKEDITOR.env.gecko&&b.enterMode!=CKEDITOR.ENTER_BR&&(c=c.replace(/<br>(?=\s*(:?$|<\/body>))/,"")),c=a.dataProcessor.toDataFormat(c),e&&(c=e+"\n"+c),d&&(c=d+"\n"+c),c},focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:d.baseProto.focus.call(this)},detach:function(){var a,b=this.editor,c=b.document;try{a=b.window.getFrame()}catch(e){}d.baseProto.detach.call(this),this.clearCustomData(),c.getDocumentElement().clearCustomData(),CKEDITOR.tools.removeFunction(this._.frameLoadedHandler),a&&a.getParent()?(a.clearCustomData(),(b=a.removeCustomData("onResize"))&&b.removeListener(),a.remove()):CKEDITOR.warn("editor-destroy-iframe")}}})}(),CKEDITOR.config.disableObjectResizing=!1,CKEDITOR.config.disableNativeTableHandles=!0,CKEDITOR.config.disableNativeSpellChecker=!0,CKEDITOR.config.plugins="dialogui,dialog,a11yhelp,about,basicstyles,blockquote,clipboard,panel,floatpanel,menu,contextmenu,elementspath,indent,indentlist,list,enterkey,entities,popup,filebrowser,floatingspace,listblock,button,richcombo,format,horizontalrule,htmlwriter,image,fakeobjects,link,magicline,maximize,pastefromword,pastetext,removeformat,resize,menubutton,scayt,showborders,sourcearea,specialchar,stylescombo,tab,table,tabletools,toolbar,undo,wsc,wysiwygarea",CKEDITOR.config.skin="moono",function(){var a=function(a,b){var c=CKEDITOR.getUrl("plugins/"+b);a=a.split(",");for(var d=0;d<a.length;d++)CKEDITOR.skin.icons[a[d]]={path:c,offset:-a[++d],bgsize:a[++d]}};CKEDITOR.env.hidpi?a("about,0,,bold,24,,italic,48,,strike,72,,subscript,96,,superscript,120,,underline,144,,bidiltr,168,,bidirtl,192,,blockquote,216,,copy-rtl,240,,copy,264,,cut-rtl,288,,cut,312,,paste-rtl,336,,paste,360,,codesnippet,384,,bgcolor,408,,textcolor,432,,creatediv,456,,docprops-rtl,480,,docprops,504,,embed,528,,embedsemantic,552,,find-rtl,576,,find,600,,replace,624,,flash,648,,button,672,,checkbox,696,,form,720,,hiddenfield,744,,imagebutton,768,,radio,792,,select-rtl,816,,select,840,,textarea-rtl,864,,textarea,888,,textfield-rtl,912,,textfield,936,,horizontalrule,960,,iframe,984,,image,1008,,indent-rtl,1032,,indent,1056,,outdent-rtl,1080,,outdent,1104,,justifyblock,1128,,justifycenter,1152,,justifyleft,1176,,justifyright,1200,,language,1224,,anchor-rtl,1248,,anchor,1272,,link,1296,,unlink,1320,,bulletedlist-rtl,1344,,bulletedlist,1368,,numberedlist-rtl,1392,,numberedlist,1416,,mathjax,1440,,maximize,1464,,newpage-rtl,1488,,newpage,1512,,pagebreak-rtl,1536,,pagebreak,1560,,pastefromword-rtl,1584,,pastefromword,1608,,pastetext-rtl,1632,,pastetext,1656,,placeholder,1680,,preview-rtl,1704,,preview,1728,,print,1752,,removeformat,1776,,save,1800,,scayt,1824,,selectall,1848,,showblocks-rtl,1872,,showblocks,1896,,smiley,1920,,source-rtl,1944,,source,1968,,sourcedialog-rtl,1992,,sourcedialog,2016,,specialchar,2040,,table,2064,,templates-rtl,2088,,templates,2112,,uicolor,2136,,redo-rtl,2160,,redo,2184,,undo-rtl,2208,,undo,2232,,simplebox,4512,auto,spellchecker,2280,","icons_hidpi.png"):a("about,0,auto,bold,24,auto,italic,48,auto,strike,72,auto,subscript,96,auto,superscript,120,auto,underline,144,auto,bidiltr,168,auto,bidirtl,192,auto,blockquote,216,auto,copy-rtl,240,auto,copy,264,auto,cut-rtl,288,auto,cut,312,auto,paste-rtl,336,auto,paste,360,auto,codesnippet,384,auto,bgcolor,408,auto,textcolor,432,auto,creatediv,456,auto,docprops-rtl,480,auto,docprops,504,auto,embed,528,auto,embedsemantic,552,auto,find-rtl,576,auto,find,600,auto,replace,624,auto,flash,648,auto,button,672,auto,checkbox,696,auto,form,720,auto,hiddenfield,744,auto,imagebutton,768,auto,radio,792,auto,select-rtl,816,auto,select,840,auto,textarea-rtl,864,auto,textarea,888,auto,textfield-rtl,912,auto,textfield,936,auto,horizontalrule,960,auto,iframe,984,auto,image,1008,auto,indent-rtl,1032,auto,indent,1056,auto,outdent-rtl,1080,auto,outdent,1104,auto,justifyblock,1128,auto,justifycenter,1152,auto,justifyleft,1176,auto,justifyright,1200,auto,language,1224,auto,anchor-rtl,1248,auto,anchor,1272,auto,link,1296,auto,unlink,1320,auto,bulletedlist-rtl,1344,auto,bulletedlist,1368,auto,numberedlist-rtl,1392,auto,numberedlist,1416,auto,mathjax,1440,auto,maximize,1464,auto,newpage-rtl,1488,auto,newpage,1512,auto,pagebreak-rtl,1536,auto,pagebreak,1560,auto,pastefromword-rtl,1584,auto,pastefromword,1608,auto,pastetext-rtl,1632,auto,pastetext,1656,auto,placeholder,1680,auto,preview-rtl,1704,auto,preview,1728,auto,print,1752,auto,removeformat,1776,auto,save,1800,auto,scayt,1824,auto,selectall,1848,auto,showblocks-rtl,1872,auto,showblocks,1896,auto,smiley,1920,auto,source-rtl,1944,auto,source,1968,auto,sourcedialog-rtl,1992,auto,sourcedialog,2016,auto,specialchar,2040,auto,table,2064,auto,templates-rtl,2088,auto,templates,2112,auto,uicolor,2136,auto,redo-rtl,2160,auto,redo,2184,auto,undo-rtl,2208,auto,undo,2232,auto,simplebox,2256,auto,spellchecker,2280,auto","icons.png")}())}();var Metronic=function(){var a,b=!1,c=!1,d=!1,e=!1,f=[],g="assets/",h="img/",i="plugins/",j="css/",k={blue:"#89C4F4",red:"#F3565D",green:"#1bbc9b",purple:"#9b59b6",grey:"#95a5a6",yellow:"#F8CB00"},l=function(){"rtl"===$("body").css("direction")&&(b=!0),c=!!navigator.userAgent.match(/MSIE 8.0/),d=!!navigator.userAgent.match(/MSIE 9.0/),e=!!navigator.userAgent.match(/MSIE 10.0/),e&&$("html").addClass("ie10"),(e||d||c)&&$("html").addClass("ie")},m=function(){for(var a=0;a<f.length;a++){var b=f[a];b.call()}},n=function(){var a;if(c){var b;$(window).resize(function(){b!=document.documentElement.clientHeight&&(a&&clearTimeout(a),a=setTimeout(function(){m()},50),b=document.documentElement.clientHeight)})}else $(window).resize(function(){a&&clearTimeout(a),a=setTimeout(function(){m()},50)})},o=function(){$("body").on("click",".portlet > .portlet-title > .tools > a.remove",function(a){a.preventDefault();var b=$(this).closest(".portlet");$("body").hasClass("page-portlet-fullscreen")&&$("body").removeClass("page-portlet-fullscreen"),b.find(".portlet-title .fullscreen").tooltip("destroy"),b.find(".portlet-title > .tools > .reload").tooltip("destroy"),b.find(".portlet-title > .tools > .remove").tooltip("destroy"),b.find(".portlet-title > .tools > .config").tooltip("destroy"),b.find(".portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip("destroy"),b.remove()}),$("body").on("click",".portlet > .portlet-title .fullscreen",function(a){a.preventDefault();var b=$(this).closest(".portlet");if(b.hasClass("portlet-fullscreen"))$(this).removeClass("on"),b.removeClass("portlet-fullscreen"),$("body").removeClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height","auto");else{var c=Metronic.getViewPort().height-b.children(".portlet-title").outerHeight()-parseInt(b.children(".portlet-body").css("padding-top"))-parseInt(b.children(".portlet-body").css("padding-bottom"));$(this).addClass("on"),b.addClass("portlet-fullscreen"),$("body").addClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height",c)}}),$("body").on("click",".portlet > .portlet-title > .tools > a.reload",function(a){a.preventDefault();var b=$(this).closest(".portlet").children(".portlet-body"),c=$(this).attr("data-url"),d=$(this).attr("data-error-display");c?(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),$.ajax({type:"GET",cache:!1,url:c,dataType:"html",success:function(a){Metronic.unblockUI(b),b.html(a)},error:function(a,c,e){Metronic.unblockUI(b);var f="Error on reloading the content. Please check your connection and try again.";"toastr"==d&&toastr?toastr.error(f):"notific8"==d&&$.notific8?($.notific8("zindex",11500),$.notific8(f,{theme:"ruby",life:3e3})):alert(f)}})):(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),window.setTimeout(function(){Metronic.unblockUI(b)},1e3))}),$('.portlet .portlet-title a.reload[data-load="true"]').click(),$("body").on("click",".portlet > .portlet-title > .tools > .collapse, .portlet .portlet-title > .tools > .expand",function(a){a.preventDefault()})},p=function(){if($().uniform){var a=$("input[type=checkbox]:not(.toggle, .make-switch, .icheck), input[type=radio]:not(.toggle, .star, .make-switch, .icheck)");a.size()>0&&a.each(function(){0===$(this).parents(".checker").size()&&$(this).show()})}},q=function(){$().iCheck&&$(".icheck").each(function(){var a=$(this).attr("data-checkbox")?$(this).attr("data-checkbox"):"icheckbox_minimal-grey",b=$(this).attr("data-radio")?$(this).attr("data-radio"):"iradio_minimal-grey";a.indexOf("_line")>-1||b.indexOf("_line")>-1?$(this).iCheck({checkboxClass:a,radioClass:b,insert:'<div class="icheck_line-icon"></div>'+$(this).attr("data-label")}):$(this).iCheck({checkboxClass:a,radioClass:b})})},r=function(){$().bootstrapSwitch&&$(".make-switch").bootstrapSwitch()},s=function(){$().confirmation&&$("[data-toggle=confirmation]").confirmation({container:"body",btnOkClass:"btn-xs btn-success",btnCancelClass:"btn-xs btn-danger"})},t=function(){$("body").on("shown.bs.collapse",".accordion.scrollable",function(a){Metronic.scrollTo($(a.target))})},u=function(){if(location.hash){var a=location.hash.substr(1);$('a[href="#'+a+'"]').parents(".tab-pane:hidden").each(function(){var a=$(this).attr("id");$('a[href="#'+a+'"]').click()}),$('a[href="#'+a+'"]').click()}},v=function(){$("body").on("hide.bs.modal",function(){$(".modal:visible").size()>1&&$("html").hasClass("modal-open")===!1?$("html").addClass("modal-open"):$(".modal:visible").size()<=1&&$("html").removeClass("modal-open")}),$("body").on("show.bs.modal",".modal",function(){$(this).hasClass("modal-scroll")&&$("body").addClass("modal-open-noscroll")}),$("body").on("hide.bs.modal",".modal",function(){$("body").removeClass("modal-open-noscroll")}),$("body").on("hidden.bs.modal",".modal:not(.modal-cached)",function(){$(this).removeData("bs.modal")})},w=function(){$(".tooltips").tooltip(),$(".portlet > .portlet-title .fullscreen").tooltip({container:"body",title:"Fullscreen"}),$(".portlet > .portlet-title > .tools > .reload").tooltip({container:"body",title:"Reload"}),$(".portlet > .portlet-title > .tools > .remove").tooltip({container:"body",title:"Remove"}),$(".portlet > .portlet-title > .tools > .config").tooltip({container:"body",title:"Settings"}),$(".portlet > .portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip({container:"body",title:"Collapse/Expand"})},x=function(){$("body").on("click",".dropdown-menu.hold-on-click",function(a){a.stopPropagation()})},y=function(){$("body").on("click",'[data-close="alert"]',function(a){$(this).parent(".alert").hide(),$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-close="note"]',function(a){$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-remove="note"]',function(a){$(this).closest(".note").remove(),a.preventDefault()})},z=function(){$('[data-hover="dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")})},A=function(){$(".popovers").popover(),$(document).on("click.bs.popover.data-api",function(b){a&&a.popover("hide")})},B=function(){Metronic.initSlimScroll(".scroller")},C=function(){jQuery.fancybox&&$(".fancybox-button").size()>0&&$(".fancybox-button").fancybox({groupAttr:"data-rel",prevEffect:"none",nextEffect:"none",closeBtn:!0,helpers:{title:{type:"inside"}}})},D=function(){(c||d)&&$("input[placeholder]:not(.placeholder-no-fix), textarea[placeholder]:not(.placeholder-no-fix)").each(function(){var a=$(this);""===a.val()&&""!==a.attr("placeholder")&&a.addClass("placeholder").val(a.attr("placeholder")),a.focus(function(){a.val()==a.attr("placeholder")&&a.val("")}),a.blur(function(){""!==a.val()&&a.val()!=a.attr("placeholder")||a.val(a.attr("placeholder"))})})},E=function(){$().select2&&$(".select2me").select2({placeholder:"Select"})};return{init:function(){l(),n(),p(),q(),r(),B(),C(),E(),o(),y(),x(),u(),w(),A(),t(),v(),s(),D()},initAjax:function(){p(),q(),r(),z(),B(),E(),C(),x(),w(),A(),t(),s()},initComponents:function(){this.initAjax()},setLastPopedPopover:function(b){a=b},addResizeHandler:function(a){f.push(a)},runResizeHandlers:function(){m()},scrollTo:function(a,b){var c=a&&a.size()>0?a.offset().top:0;a&&($("body").hasClass("page-header-fixed")&&(c-=$(".page-header").height()),c+=b?b:-1*a.height()),$("html,body").animate({scrollTop:c},"slow")},initSlimScroll:function(a){$(a).each(function(){if(!$(this).attr("data-initialized")){var a;a=$(this).attr("data-height")?$(this).attr("data-height"):$(this).css("height"),$(this).slimScroll({allowPageScroll:!0,size:"7px",color:$(this).attr("data-handle-color")?$(this).attr("data-handle-color"):"#bbb",wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",railColor:$(this).attr("data-rail-color")?$(this).attr("data-rail-color"):"#eaeaea",position:b?"left":"right",height:a,alwaysVisible:"1"==$(this).attr("data-always-visible"),railVisible:"1"==$(this).attr("data-rail-visible"),disableFadeOut:!0}),$(this).attr("data-initialized","1")}})},destroySlimScroll:function(a){$(a).each(function(){if("1"===$(this).attr("data-initialized")){$(this).removeAttr("data-initialized"),$(this).removeAttr("style");var a={};$(this).attr("data-handle-color")&&(a["data-handle-color"]=$(this).attr("data-handle-color")),$(this).attr("data-wrapper-class")&&(a["data-wrapper-class"]=$(this).attr("data-wrapper-class")),$(this).attr("data-rail-color")&&(a["data-rail-color"]=$(this).attr("data-rail-color")),$(this).attr("data-always-visible")&&(a["data-always-visible"]=$(this).attr("data-always-visible")),$(this).attr("data-rail-visible")&&(a["data-rail-visible"]=$(this).attr("data-rail-visible")),$(this).slimScroll({wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",destroy:!0});var b=$(this);$.each(a,function(a,c){b.attr(a,c)})}})},scrollTop:function(){Metronic.scrollTo()},blockUI:function(a){a=$.extend(!0,{},a);var b="";if(b=a.animate?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><div class="block-spinner-bar"><div class="bounce1"></div><div class="bounce2"></div><div class="bounce3"></div></div></div>':a.iconOnly?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif" align=""></div>':a.textOnly?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><span> '+(a.message?a.message:"LOADING...")+"</span></div>":'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif" align=""><span> '+(a.message?a.message:"LOADING...")+"</span></div>",a.target){var c=$(a.target);c.height()<=$(window).height()&&(a.cenrerY=!0),c.block({message:b,baseZ:a.zIndex?a.zIndex:1e3,centerY:void 0!==a.cenrerY?a.cenrerY:!1,css:{top:"10%",border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})}else $.blockUI({message:b,baseZ:a.zIndex?a.zIndex:1e3,css:{border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})},unblockUI:function(a){a?$(a).unblock({onUnblock:function(){$(a).css("position",""),$(a).css("zoom","")}}):$.unblockUI()},startPageLoading:function(a){a&&a.animate?($(".page-spinner-bar").remove(),$("body").append('<div class="page-spinner-bar"><div class="bounce1"></div><div class="bounce2"></div><div class="bounce3"></div></div>')):($(".page-loading").remove(),$("body").append('<div class="page-loading"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif"/> <span>'+(a&&a.message?a.message:"Loading...")+"</span></div>"))},stopPageLoading:function(){$(".page-loading, .page-spinner-bar").remove()},alert:function(a){a=$.extend(!0,{container:"",place:"append",type:"success",message:"",close:!0,reset:!0,focus:!0,closeInSeconds:0,icon:""},a);var b=Metronic.getUniqueID("Metronic_alert"),c='<div id="'+b+'" class="Metronic-alerts alert alert-'+a.type+' fade in">'+(a.close?'<button type="button" class="close" data-dismiss="alert" aria-hidden="true"></button>':"")+(""!==a.icon?'<i class="fa-lg fa fa-'+a.icon+'"></i> ':"")+a.message+"</div>";return a.reset&&$(".Metronic-alerts").remove(),a.container?"append"==a.place?$(a.container).append(c):$(a.container).prepend(c):$("body").hasClass("page-container-bg-solid")?$(".page-title").after(c):$(".page-bar").size()>0?$(".page-bar").after(c):$(".page-breadcrumb").after(c),a.focus&&Metronic.scrollTo($("#"+b)),a.closeInSeconds>0&&setTimeout(function(){$("#"+b).remove()},1e3*a.closeInSeconds),b},initUniform:function(a){ +a?$(a).each(function(){0===$(this).parents(".checker").size()&&($(this).show(),$(this).uniform())}):p()},updateUniform:function(a){$.uniform.update(a)},initFancybox:function(){C()},getActualVal:function(a){return a=$(a),a.val()===a.attr("placeholder")?"":a.val()},getURLParameter:function(a){var b,c,d=window.location.search.substring(1),e=d.split("&");for(b=0;b<e.length;b++)if(c=e[b].split("="),c[0]==a)return unescape(c[1]);return null},isTouchDevice:function(){try{return document.createEvent("TouchEvent"),!0}catch(a){return!1}},getViewPort:function(){var a=window,b="inner";return"innerWidth"in window||(b="client",a=document.documentElement||document.body),{width:a[b+"Width"],height:a[b+"Height"]}},getUniqueID:function(a){return"prefix_"+Math.floor(Math.random()*(new Date).getTime())},isIE8:function(){return c},isIE9:function(){return d},isRTL:function(){return b},isAngularJsApp:function(){return"undefined"!=typeof angular},getAssetsPath:function(){return g},setAssetsPath:function(a){g=a},setGlobalImgPath:function(a){h=a},getGlobalImgPath:function(){return g+h},setGlobalPluginsPath:function(a){i=a},getGlobalPluginsPath:function(){return g+i},getGlobalCssPath:function(){return g+j},getBrandColor:function(a){return k[a]?k[a]:""},getResponsiveBreakpoint:function(a){var b={xs:480,sm:768,md:900,lg:1200};return b[a]?b[a]:0}}}(),Layout=function(){var a="img/",b="css/",c=Metronic.getResponsiveBreakpoint("md"),d=function(){var a,b=$(".page-content"),d=$(".page-sidebar"),e=$("body");if(e.hasClass("page-footer-fixed")===!0&&e.hasClass("page-sidebar-fixed")===!1){var f=Metronic.getViewPort().height-$(".page-footer").outerHeight()-$(".page-header").outerHeight();b.height()<f&&b.attr("style","min-height:"+f+"px")}else{if(e.hasClass("page-sidebar-fixed"))a=g(),e.hasClass("page-footer-fixed")===!1&&(a-=$(".page-footer").outerHeight());else{var h=$(".page-header").outerHeight(),i=$(".page-footer").outerHeight();a=Metronic.getViewPort().width<c?Metronic.getViewPort().height-h-i:d.height()+20,a+h+i<=Metronic.getViewPort().height&&(a=Metronic.getViewPort().height-h-i)}b.attr("style","min-height:"+a+"px")}},e=function(a,b){var d=location.hash.toLowerCase(),e=$(".page-sidebar-menu");if("click"===a||"set"===a?b=$(b):"match"===a&&e.find("li > a").each(function(){var a=$(this).attr("href").toLowerCase();return a.length>1&&d.substr(1,a.length-1)==a.substr(1)?void(b=$(this)):void 0}),b&&0!=b.size()&&"javascript:;"!==b.attr("href").toLowerCase()&&"#"!==b.attr("href").toLowerCase()){parseInt(e.data("slide-speed")),e.data("keep-expanded");e.find("li.active").removeClass("active"),e.find("li > a > .selected").remove(),e.hasClass("page-sidebar-menu-hover-submenu")===!1?e.find("li.open").each(function(){0===$(this).children(".sub-menu").size()&&($(this).removeClass("open"),$(this).find("> a > .arrow.open").removeClass("open"))}):e.find("li.open").removeClass("open"),b.parents("li").each(function(){$(this).addClass("active"),$(this).find("> a > span.arrow").addClass("open"),1===$(this).parent("ul.page-sidebar-menu").size()&&$(this).find("> a").append('<span class="selected"></span>'),1===$(this).children("ul.sub-menu").size()&&$(this).addClass("open")}),"click"===a&&Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click()}},f=function(){jQuery(".page-sidebar").on("click","li > a",function(a){var b=$(this).next().hasClass("sub-menu");if(!(Metronic.getViewPort().width>=c&&1===$(this).parents(".page-sidebar-menu-hover-submenu").size())){if(b===!1)return void(Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click());if(!$(this).next().hasClass("sub-menu always-open")){var e=$(this).parent().parent(),f=$(this),g=$(".page-sidebar-menu"),h=jQuery(this).next(),i=g.data("auto-scroll"),j=parseInt(g.data("slide-speed")),k=g.data("keep-expanded");k!==!0&&(e.children("li.open").children("a").children(".arrow").removeClass("open"),e.children("li.open").children(".sub-menu:not(.always-open)").slideUp(j),e.children("li.open").removeClass("open"));var l=-200;h.is(":visible")?(jQuery(".arrow",jQuery(this)).removeClass("open"),jQuery(this).parent().removeClass("open"),h.slideUp(j,function(){i===!0&&$("body").hasClass("page-sidebar-closed")===!1&&($("body").hasClass("page-sidebar-fixed")?g.slimScroll({scrollTo:f.position().top}):Metronic.scrollTo(f,l)),d()})):b&&(jQuery(".arrow",jQuery(this)).addClass("open"),jQuery(this).parent().addClass("open"),h.slideDown(j,function(){i===!0&&$("body").hasClass("page-sidebar-closed")===!1&&($("body").hasClass("page-sidebar-fixed")?g.slimScroll({scrollTo:f.position().top}):Metronic.scrollTo(f,l)),d()})),a.preventDefault()}}}),jQuery(".page-sidebar").on("click"," li > a.ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=jQuery(".page-sidebar ul"),e=($(".page-content"),$(".page-content .page-content-body"));d.children("li.active").removeClass("active"),d.children("arrow.open").removeClass("open"),$(this).parents("li").each(function(){$(this).addClass("active"),$(this).children("a > span.arrow").addClass("open")}),$(this).parents("li").addClass("active"),Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click(),Metronic.startPageLoading();var f=$(this);$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(a){0===f.parents("li.open").size()&&$(".page-sidebar-menu > li.open > a").click(),Metronic.stopPageLoading(),e.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){Metronic.stopPageLoading(),e.html("<h4>Could not load the requested content.</h4>")}})}),jQuery(".page-content").on("click",".ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=($(".page-content"),$(".page-content .page-content-body"));Metronic.startPageLoading(),Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click(),$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(a){Metronic.stopPageLoading(),d.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){d.html("<h4>Could not load the requested content.</h4>"),Metronic.stopPageLoading()}})}),i(),$(".page-sidebar").on("click",".sidebar-search .remove",function(a){a.preventDefault(),$(".sidebar-search").removeClass("open")}),$(".page-sidebar .sidebar-search").on("keypress","input.form-control",function(a){return 13==a.which?($(".sidebar-search").submit(),!1):void 0}),0!==$(".sidebar-search").size()&&($(".sidebar-search .input-group").on("click",function(a){a.stopPropagation()}),$("body").on("click",function(){$(".sidebar-search").hasClass("open")&&$(".sidebar-search").removeClass("open")}))},g=function(){var a=Metronic.getViewPort().height-$(".page-header").outerHeight();return $("body").hasClass("page-footer-fixed")&&(a-=$(".page-footer").outerHeight()),a},h=function(){var a=$(".page-sidebar-menu");return Metronic.destroySlimScroll(a),0===$(".page-sidebar-fixed").size()?void d():void(Metronic.getViewPort().width>=c&&(a.attr("data-height",g()),Metronic.initSlimScroll(a),d()))},i=function(){var a=$("body");a.hasClass("page-sidebar-fixed")&&$(".page-sidebar").on("mouseenter",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").removeClass("page-sidebar-menu-closed")}).on("mouseleave",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").addClass("page-sidebar-menu-closed")})},j=function(){$("body");$.cookie&&"1"===$.cookie("sidebar_closed")&&Metronic.getViewPort().width>=c?($("body").addClass("page-sidebar-closed"),$(".page-sidebar-menu").addClass("page-sidebar-menu-closed")):$.cookie&&$.cookie("sidebar_closed","0")},k=function(){$(".page-header").on("click",'.hor-menu a[data-toggle="tab"]',function(a){a.preventDefault();var b=$(".hor-menu .nav"),c=b.find("li.current");$("li.active",c).removeClass("active"),$(".selected",c).remove();var d=$(this).parents("li").last();d.addClass("current"),d.find("a:first").append('<span class="selected"></span>')}),$(".page-header").on("click",".search-form",function(a){$(this).addClass("open"),$(this).find(".form-control").focus(),$(".page-header .search-form .form-control").on("blur",function(a){$(this).closest(".search-form").removeClass("open"),$(this).unbind("blur")})}),$(".page-header").on("keypress",".hor-menu .search-form .form-control",function(a){return 13==a.which?($(this).closest(".search-form").submit(),!1):void 0}),$(".page-header").on("mousedown",".search-form.open .submit",function(a){a.preventDefault(),a.stopPropagation(),$(this).closest(".search-form").submit()}),$('[data-hover="megamenu-dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")}),$(document).on("click",".mega-menu-dropdown .dropdown-menu",function(a){a.stopPropagation()})},l=function(){$("body").on("shown.bs.tab",'a[data-toggle="tab"]',function(){d()})},m=function(){var a=300,b=500;navigator.userAgent.match(/iPhone|iPad|iPod/i)?$(window).bind("touchend touchcancel touchleave",function(c){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}):$(window).scroll(function(){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}),$(".scroll-to-top").click(function(a){return a.preventDefault(),$("html, body").animate({scrollTop:0},b),!1})},n=function(){var a,b=$(".full-height-content");if(a=Metronic.getViewPort().height-$(".page-header").outerHeight(!0)-$(".page-footer").outerHeight(!0)-$(".page-title").outerHeight(!0)-$(".page-bar").outerHeight(!0),b.hasClass("portlet")){var d=b.find(".portlet-body");if(Metronic.getViewPort().width<c)return void Metronic.destroySlimScroll(d.find(".full-height-content-body"));a=a-b.find(".portlet-title").outerHeight(!0)-parseInt(b.find(".portlet-body").css("padding-top"))-parseInt(b.find(".portlet-body").css("padding-bottom"))-2,b.hasClass("full-height-content-scrollable")?(a-=35,d.find(".full-height-content-body").css("height",a),Metronic.initSlimScroll(d.find(".full-height-content-body"))):d.css("min-height",a)}else{if(Metronic.getViewPort().width<c)return void Metronic.destroySlimScroll(b.find(".full-height-content-body"));b.hasClass("full-height-content-scrollable")?(a-=35,b.find(".full-height-content-body").css("height",a),Metronic.initSlimScroll(b.find(".full-height-content-body"))):b.css("min-height",a)}};return{initHeader:function(){k()},setSidebarMenuActiveLink:function(a,b){e(a,b)},initSidebar:function(){h(),f(),j(),Metronic.isAngularJsApp()&&e("match"),Metronic.addResizeHandler(h)},initContent:function(){n(),l(),Metronic.addResizeHandler(d),Metronic.addResizeHandler(n)},initFooter:function(){m()},init:function(){this.initHeader(),this.initSidebar(),this.initContent(),this.initFooter()},fixContentHeight:function(){d()},initFixedSidebarHoverEffect:function(){i()},initFixedSidebar:function(){h()},getLayoutImgPath:function(){return Metronic.getAssetsPath()+a},getLayoutCssPath:function(){return Metronic.getAssetsPath()+b}}}();angular.module("xCallyShuttleApp").run(["$templateCache",function(a){a.put("app/analytic/extracted/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-file-pdf-o"></i>\n <a href="/analytics/extracted/list">{{ \'APPLICATION_EXTRACTED_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-file-pdf-o font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_EXTRACTED_REPORTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_METRIC\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.metric" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="item.metric" required/></textarea>\n <span data-ng-show="(forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.metric.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/metric/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calculator"></i>\n <a href="/analytics/metrics/list">{{ \'APPLICATION_METRICS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-calculator font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DEFAULT_METRICS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptionsDefault" data-ng-if="gridOptionsDefault" name="gridOptionsDefault" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionsDefault.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n <div class="portlet-title margin-top20">\n <div class="caption font-green-sharp">\n <i class="icon-calculator font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_METRICS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_METRIC\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" data-ng-if="gridOptions" name="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/list/view.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_METRIC\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.metric" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required readonly/>\n <span data-ng-show="(forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}</label>\n <ui-select data-ng-model="item.table" name="table" theme="bootstrap" required data-ng-disabled="true">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}</label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="item.metric" required readonly/></textarea>\n <span data-ng-show="(forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description" readonly></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/analytic/metric/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getMetric()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/analytics/metrics/list">{{ \'APPLICATION_METRICS\' | translate }}</a>\n <i data-ng-show="metric" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="metric">\n <a href="#">{{metric.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/metric.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{metric.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.analytics.metrics.view.settings\')}">\n <a data-ng-href="/analytics/metrics/view/{{metric.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_METRIC\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateMetric()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="metric.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.table.$touched || forms.general.$submitted) && forms.general.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="metric.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.table.$touched || forms.general.$submitted) && forms.general.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.metric.$touched || forms.general.$submitted) && forms.general.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="metric.metric" required/></textarea>\n <span data-ng-show="(forms.general.metric.$touched || forms.general.$submitted) && forms.general.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="metric.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/analytic/report/list/copy.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_COPY_REPORT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp" style="padding-left:10px;">\n <i class="icon-folder font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_COPY_TO\' | translate }} </span>\n </div>\n </div>\n <div class="portlet-body">\n <div js-tree="customTreeConfig" ng-model="customTreeData" should-apply="ac()" tree="customTreeInstance" tree-events="ready:initCustomScopeTree;"></div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-disabled="!customTree.get_selected(true).pop().id" ng-click="ok()" ng-disabled="forms.report.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_REPORT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.report" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_PATH\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_PATH\' | translate}}" class="form-control" data-ng-model="path" disabled/>\n <span data-ng-show="(forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.report.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), +a.put("app/analytic/report/list/extract.modal.html",'<div class="modal-header">\n <button type="button" ng-click="cancel()" class="close">×</button>\n <h4 class="modal-title">{{ \'APPLICATION_EXTRACT_REPORT\' | translate }}</h4>\n</div>\n<div class="modal-body" style="text-align:center;">\n <form name="forms.report" class="form-inline mbottom20" novalidate>\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DATE_RANGE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="daterange" onkeydown="return false" name="dates" ranges="ranges" placeholder="{{\'APPLICATION_DATE_RANGE\' | translate}}" class="form-control" data-ng-model="dates" max-date="{{yesterday}}" data-ng-required="!daily" data-ng-disabled="daily" data-ng-class="{\'disabled-invisible\':daily}" style="cursor:pointer;" readonly/>\n <input\n bs-switch\n class="form-control"\n ng-model="daily"\n type="checkbox"\n name="auth"\n switch-active="{{ dailySwitch.isActive }}"\n switch-on-text="{{ dailySwitch.onText }}"\n switch-off-text="{{ dailySwitch.offText }}"\n switch-on-color="{{ dailySwitch.onColor }}"\n switch-off-color="{{ dailySwitch.offColor }}"\n switch-animate="{{ dailySwitch.animate }}"\n switch-size="{{ dailySwitch.size }}"\n switch-label="{{ dailySwitch.label }}"\n switch-icon="{{ dailySwitch.icon }}"\n switch-radio-off="{{ dailySwitch.radioOff }}"\n switch-label-width="{{ dailySwitch.labelWidth }}"\n switch-handle-width="{{ dailySwitch.handleWidth }}">\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn default green-jungle" type="button" data-ng-click="extract(\'csv\')"><i class="fa fa-file-excel-o"></i> {{ \'APPLICATION_SAVE_AS_CSV\' | translate }}</button>\n <button class="btn default red-intense" type="button" data-ng-click="extract(\'pdf\')"><i class="fa fa-file-pdf-o"></i> {{ \'APPLICATION_SAVE_AS_PDF\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getTrees()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="/analytics/reports/list">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <div class="col-fixed">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp" style="padding-left:10px;">\n <i class="icon-folder font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FOLDERS\' | translate }} </span>\n </div>\n <div class="inputs">\n <div class="portlet-input input-inline input-small">\n <div class="input-icon right">\n <i class="icon-magnifier"></i>\n <input type="text" data-ng-model="searchField" data-ng-change="searchTrees()" class="form-control input-circle" placeholder="search...">\n </div>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div js-tree="defaultTreeConfig" ng-model="defaultTreeData" should-apply="ac()" tree="defaultTreeInstance" tree-events="ready:initDefaultScopeTree;select_node:selectDefaultNode;"></div>\n <div js-tree="customTreeConfig" ng-model="customTreeData" should-apply="ac()" tree="customTreeInstance" tree-events="ready:initCustomScopeTree;select_node:selectCustomNode;rename_node:updateCustomTree;delete_node:updateCustomTree;move_node:updateCustomTree;create_node:updateCustomTree;"></div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n <div class="row tree-row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_REPORTS\' | translate }}<span data-ng-if="selectedNode"> - {{selectedNode}}</span></span>\n </div>\n <div data-ng-if="!defaultTreeActive" class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <span class="btn default btn-file">\n <span class="fileinput-new">\n <i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_JSON\' | translate}}</span>\n <input type="file" on-read-file="import($fileContent)"/>\n </span>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_REPORT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div ng-slide-down="gridOptions" lazy-render duration="1">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/report/list/preview.modal.html",'<div class="modal-header">\n <button type="button" ng-click="cancel()" class="close">×</button>\n <h4 class="modal-title">{{ \'APPLICATION_REPORT_PREVIEW\' | translate }}</h4>\n</div>\n<div class="modal-body" style="text-align:center;">\n <form name="forms.report" class="form-inline mbottom20" novalidate>\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DATE_RANGE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="daterange" name="dates" ranges="ranges" placeholder="{{\'APPLICATION_DATE_RANGE\' | translate}}" class="form-control" data-ng-model="dates" data-ng-change="getPage()" max-date="{{yesterday}}" data-ng-required="!daily" data-ng-disabled="daily" data-ng-class="{\'disabled-invisible\':daily}" style="cursor:pointer;" readonly/>\n <!-- START STATUS -->\n <input\n bs-switch\n class="form-control"\n ng-model="daily"\n type="checkbox"\n name="auth"\n data-ng-change="getPage()"\n switch-active="{{ dailySwitch.isActive }}"\n switch-on-text="{{ dailySwitch.onText }}"\n switch-off-text="{{ dailySwitch.offText }}"\n switch-on-color="{{ dailySwitch.onColor }}"\n switch-off-color="{{ dailySwitch.offColor }}"\n switch-animate="{{ dailySwitch.animate }}"\n switch-size="{{ dailySwitch.size }}"\n switch-label="{{ dailySwitch.label }}"\n switch-icon="{{ dailySwitch.icon }}"\n switch-radio-off="{{ dailySwitch.radioOff }}"\n switch-label-width="{{ dailySwitch.labelWidth }}"\n switch-handle-width="{{ dailySwitch.handleWidth }}">\n </div>\n </form>\n <div ng-slide-down="showResult" lazy-render duration="1">\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="grid extract-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n<button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getReport()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="/analytics/reports/list">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n <i data-ng-show="report" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="report">\n <a href="#">{{report.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/report.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{report.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.analytics.reports.view.settings\')}">\n <a data-ng-href="/analytics/reports/view/{{report.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/report/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_REPORT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li>\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li class="active">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_BUILD\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab" data-ng-click="showResult = true">{{ \'APPLICATION_TEST_PREVIEW\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.report.$valid && forms.general.$valid && updateReport()" novalidate>\n\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="report.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="report.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TABLE INPUT -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_2">\n <form name="forms.report" data-ng-submit="forms.report.$valid && forms.general.$valid && updateReport()" novalidate>\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.table.$touched || forms.report.$submitted) && forms.report.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="report.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n </span>\n <span data-ng-show="(forms.report.table.$touched || forms.report.$submitted) && forms.report.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE INPUT-->\n <div data-ng-if="report.table" class="mbottom20 pbottom20">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_FIELDS\' | translate}} </span>\n </div>\n </div>\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{ \'APPLICATION_FIELD\' | translate }} / {{ \'APPLICATION_METRIC\' | translate }}</th>\n <th style="min-width:167px;">{{ \'APPLICATION_ALIAS\' | translate }}</th>\n <th>{{ \'APPLICATION_FUNCTION\' | translate }}</th>\n <th>{{ \'APPLICATION_FORMAT\' | translate }}</th>\n <th>{{ \'APPLICATION_GROUP_BY\' | translate }}</th>\n <th>{{ \'APPLICATION_ORDER_BY\' | translate }}</th>\n <th></th>\n <th style="min-width:66px;"></th>\n </tr>\n </thead>\n <tbody ui-sortable="sortableOptions" data-ng-model="report.Fields">\n <tr data-ng-repeat="field in report.Fields">\n <td>\n <!-- START FIELD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.report.$submitted && !field.field}">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.field" dynamic-name="randomName()" theme="bootstrap" on-select="setMetricId($item,$index)" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}"><span ng-bind-html="$select.selected.name"></span></ui-select-match>\n <ui-select-choices repeat="tableField.value as tableField in tableFields | filter: $select.search">\n <div ng-bind-html="tableField.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.report.$submitted && !field.field" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIELD-->\n </td>\n <td>\n <!-- START ALIAS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.report.$submitted && !field.alias}">\n <!-- <label class="control-label">{{\'APPLICATION_ALIAS\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <input type="text" dynamic-name="randomName()" placeholder="{{\'APPLICATION_ALIAS\' | translate}}" class="form-control" data-ng-model="field.alias" required/>\n <span data-ng-show="forms.report.$submitted && !field.alias" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ALIAS -->\n </td>\n <td>\n <!-- START FUNCTION -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.function" name="function" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_FUNCTION\' | translate}}" allow-clear>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="function.value as function in functions | filter: $select.search">\n <div ng-bind-html="function.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END FUNCTION-->\n </td>\n <td>\n <!-- START FORMAT -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.format" name="format" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_FORMAT\' | translate}}" allow-clear>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="format.value as format in formatFunctions | filter: $select.search">\n <div ng-bind-html="format.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END FORMAT-->\n </td>\n <td>\n <!-- START GROUP_BY -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.groupBy" name="groupBy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_GROUP_BY\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="groupBy.value as groupBy in groupByField | filter: $select.search">\n {{$translate.instant(groupBy.name)}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END GROUP_BY-->\n </td>\n <td>\n <!-- START ORDER_BY -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.orderBy" name="orderBy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_ORDER_BY\' | translate}}" allow-clear>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="orderBy in [\'ASC\',\'DESC\'] | filter: $select.search">\n <div ng-bind-html="orderBy | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TABLE INPUT-->\n </td>\n <td class="report-field-remove">\n <button class="btn red" type="button" data-ng-click="removeField($index)"><i class="fa fa-times"></i></button>\n </td>\n <td class="report-field-handle">\n <!-- <img data-ng-src="assets/images/move.png" class="img-responsive"> -->\n </td>\n </tr>\n <tr data-ng-hide="report.Fields.length" class="unsortable">\n <td colspan="7" style="text-align:center;">\n <i>{{ \'MESSAGE_ADD_A_FIELD\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_FIELD\' | translate}}\n </button>\n <!-- END TABLE -->\n </div>\n <div data-ng-if="report.Fields.length" class="mbottom20 pbottom20">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CONDITIONS\' | translate}} </span>\n </div>\n </div>\n <div class="alert alert-info">\n <strong>Output</strong><br>\n <span ng-bind-html="output"></span>\n </div>\n\n <report-builder group="report.conditions.group" fields="tableFields" forms="forms" firstCall=\'true\'></report-builder>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <div ng-slide-down="showResult" lazy-render duration="0.5">\n <div ui-grid="gridOptions" data-ng-if="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-move-columns class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/offline/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/offline/list">{{ \'APPLICATION_OFFLINE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/offline/view/view.detail.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body row" data-ng-init="initView()">\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_MESSAGE\' | translate}}</a>\n <hr>\n </h3>\n <div class="news-block-tags">\n <em am-time-ago="chatVisitor.ChatEnquiry.createdAt"></em>\n </div>\n <p>\n {{chatVisitor.ChatEnquiry.text}}\n </p>\n </div>\n </div>\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_VISITOR\' | translate}}</a>\n <hr>\n </h3>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatVisitor.fullname}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-envelope"></i>\n <a href="#" class="inactive-link">{{chatVisitor.email}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatVisitor.referer}} - {{chatVisitor.ChatWebsite.name}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/offline/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/offline/list">Offline</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/enquiry.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- START USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatVisitor.ChatEnquiry.email}}\n </div>\n <div class="profile-usertitle-job">\n {{chatVisitor.ChatEnquiry.username}}\n </div>\n </div>\n <!-- END USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.offline.view.detail\')}">\n <a data-ng-href="/channels/chat/offline/view/{{chatVisitor.id}}/detail">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_DETAIL\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/online/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/online/list">{{ \'APPLICATION_ONLINE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/online/view/view.detail.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body row" data-ng-init="initView()">\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_MESSAGES\' | translate}}</a>\n <!-- <a href="#" data-ng-click="export()" data-ng-show="chatRoom.ChatMessages.length" class="btn btn-sm blue pull-right"><i class="icon-cloud-download"></i> {{\'APPLICATION_EXPORT\' | translate}} CSV </a> -->\n <a href="api/chat/rooms/{{chatRoom.id}}/export" target="_blank" data-ng-show="chatRoom.ChatMessages.length" class="btn btn-sm blue pull-right"><i class="icon-cloud-download"></i> {{\'APPLICATION_EXPORT\' | translate}} CSV </a>\n <hr>\n </h3>\n <div class="news-block-tags">\n <em am-time-ago="chatRoom.ChatVisitor.ChatEnquiry.createdAt"></em>\n </div>\n <p>\n <div ng-scrollbars ng-scrollbars-config="config">\n <ul class="chats">\n <li data-ng-class="{\'out\': message.User, \'in\':message.ChatVisitor}" data-ng-repeat="message in chatRoom.ChatMessages | orderBy:\'createdAt\'">\n <img class="avatar" data-ng-src="api/users/avatar/{{message.User.userpic || \'unknown_avatar\'}}">\n <div class="message">\n <span class="arrow">\n </span>\n <a href="#" class="name">\n {{message.User ? message.User.fullname : message.ChatVisitor.fullname}}\n </a>\n <span class="datetime">\n at {{message.createdAt | date: \'medium\'}}\n </span>\n <span class="body">\n {{message.body}}\n </span>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_VISITOR\' | translate}}</a>\n <hr>\n </h3>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.fullname}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-envelope"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.email}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.referer}} - {{chatRoom.ChatVisitor.ChatWebsite.name}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'), +a.put("app/channels/chat/online/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/online/list">Online</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/enquiry.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- START USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatRoom.ChatVisitor.email}}\n </div>\n <div class="profile-usertitle-job">\n {{chatRoom.ChatVisitor.fullname}}\n </div>\n </div>\n <!-- END USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.online.view.detail\')}">\n <a data-ng-href="/channels/chat/online/view/{{chatRoom.id}}/detail">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_DETAIL\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/preview/preview.html",'<style>\n.xc_header_logo\n{\n display:block;\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/motion_logo.png);\n width:40px;\n height:40px;\n float:left;;\n margin-left: 10px !important;\n margin-top: 6px !important;\n}\n.xc_rating {\n text-align: center;\n}\n.xc_rating_label > input{ /* HIDE RADIO */\n display:none;\n}\n.xc_rating_label > input + img{ /* IMAGE STYLES */\n cursor:pointer;\n border:2px solid transparent;\n}\n.xc_rating_label > input:checked + img{ /* (CHECKED) IMAGE STYLES */\n /*border:2px solid #f00;*/\n background-color: #efefef;\n}\n\n.xc_label {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n.xc_online_message,\n.xc_offline_message,\n.xc_rating_message\n{\n text-align: center;\n}\n\n.xc_div_group {\n margin: 10px 0 10px 0;\n}\n.xc_footer\n{\n text-align: center;\n padding-bottom: 5px;\n}\n\n.xc_powered\n{\n color: grey;\n font: 10px/16px "Lucida Grande","Lucida Sans Unicode",Arial,Verdana,sans-serif;\n padding-bottom: 5px;\n}\n\n.xc_chat_container\n{\n //width:379px;\n //position:fixed;\n //bottom:0;\n //right:50px;\n z-index:9999;\n background-color:transparent;\n}\n\n.xc_chat_container *\n{\n font-family:Arial,Helvetica,sans-serif;\n font-size:13px;\n margin:0;\n padding:0;\n}\n\n.xc_chat_container p\n{\n margin:5px 0;\n}\n\n.xc_signup_wrapper\n{\n max-height:375px;\n}\n\n.xc_conversation_container\n{\n max-height:375px;\n list-style:none;\n overflow:auto;\n margin:0;\n padding:20px 10px;\n}\n\n.xc_conversation_container a\n{\n color:#036;\n}\n\n.xc_conversation_container a.xc_btn_style\n{\n color:#fff;\n}\n\ndiv.xc_chat_head\n{\n color:#fff;\n background:{{chatWebsite.color}};\n //border-radius: 20px 20px 0px 0px !important;\n height:52px;\n line-height:55px;\n cursor:pointer;\n}\n\ndiv.xc_chat_head.rounded\n{\n border-radius: 20px 20px 0px 0px !important;\n}\n\ndiv.xc_chat_head.squared\n{\n //border-radius: 20px 20px 0px 0px !important;\n}\n\n.xc_chat_head-title\n{\n margin:5px 0 0 15px;\n color: #fff;\n}\n\n.xc_header_icon\n{\n display:block;\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/icon_visitorchat.png);\n width:21px;\n height:16px;\n float:right;\n margin:20px 20px 0 0;\n}\n\n.xc_header_icon span.xc_notification_badge span\n{\n display:block;\n height:16px;\n width:15px;\n text-align:center;\n font-size:9px;\n color:#555;\n position:relative;\n top:-20px;\n left:4px;\n margin:0;\n padding:0;\n}\n\n.xc_sub-head-spacer\n{\n padding:1px;\n}\n\n.xc_conversation\n{\n display:none;\n margin:0 12px 0 11px;\n}\n\n.xc_chat_toggle_container\n{\n /*background:mediumslateblue center 52px;*/\n background: white;\n border-style: solid;\n border-width: 1px;\n border-color: {{chatWebsite.color}};\n //display:none;\n}\n\n.xc_signup_wrapper,.xc_notifications_wrapper,.xc_enquiry_wrapper,.xc_rating_wrapper\n{\n //display:none;\n display:block;\n overflow:auto;\n line-height:1;\n padding:25px;\n}\n\n.xc_exit_chat_container\n{\n text-align:right;\n width:95%;\n margin:0 auto;\n padding:5px 1px 0 0;\n}\n\n.xc_exit_chat_container span,.xc_exit_chat_container a\n{\n font-size:80%;\n color:#666;\n text-decoration:none;\n}\n\n.xc_exit_chat_container a:hover\n{\n color:#333;\n}\n\na.xc_btn_exit_chat_confirm:hover\n{\n color:red;\n}\n\na.xc_btn_exit_chat_cancel:hover\n{\n color:#0c0;\n}\n\nform.xc_form_reply\n{\n position:relative;\n}\n\n.xc_form_reply\n{\n /*background-color:#e3e3e3;*/\n text-align:center;\n /*border-top:1px solid #d3d3d3;*/\n}\n\n.xc_input_message\n{\n height:100px;\n margin:10px auto 5px;\n}\n\n.xc_input_enquiry_message,\n.xc_input_rating_message\n{\n height:100px;\n}\n\n.xc_form_signup,.xc_form_enquiry,.xc_form_rating\n{\n /*text-align:center;*/\n}\n\n.xc_chat_container textarea,.xc_chat_container input[type=text]\n{\n width:95%;\n min-width:95%;\n max-width:95%;\n -webkit-box-sizing:border-box;\n -moz-box-sizing:border-box;\n box-sizing:border-box;\n background-color:#fff;\n border:1px solid #ccc;\n -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n -moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n -webkit-transition:border linear .2s, box-shadow linear .2s;\n -moz-transition:border linear .2s, box-shadow linear .2s;\n -o-transition:border linear .2s, box-shadow linear .2s;\n transition:border linear .2s, box-shadow linear .2s;\n display:inline-block;\n font-size:14px;\n line-height:20px;\n color:#555;\n -webkit-border-radius:4px;\n -moz-border-radius:4px;\n border-radius:4px;\n vertical-align:middle;\n margin:3px 0;\n padding:4px 6px;\n resize: none;\n}\n\n.xc_chat_container textarea:focus,.xc_chat_container input[type=text]:focus\n{\n outline: {{chatWebsite.color_focus}} auto 5px;\n}\n\n.xc_chat_container input[type=text]\n{\n height: 30px;\n}\n\n.xc_message_sending textarea, .xc_enquiry_sending textarea\n{\n background: #fff url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/loading.gif) 98% 5px no-repeat;\n}\n\n.xc_chatrow\n{\n display:block;\n border-top:1px dashed #e3e3e3;\n margin:5px 0;\n clear: both;\n}\n\n.xc_chatrow p\n{\n color:#444;\n word-wrap:break-word;\n}\n\n.xc_time\n{\n float:right;\n font-size:80%;\n color:#ccc;\n padding-left:12px;\n margin:3px;\n}\n\n.xc_submission_pending\n{\n background:transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_clock.png) left center norepeat;\n}\n\n.xc_submission_confirmed\n{\n background:transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_tick.png) left center norepeat;\n}\n\n.xc_fullname\n{\n font-weight:700;\n}\n\n.xc_fullname:after\n{\n content:":";\n}\n\n.xc_avatar\n{\n float: left;\n margin: 0 5px 5px 0;\n display: inline-block;\n width: 40px;\n height: 40px;\n border-radius: 5px;\n -moz-border-radius: 5px;\n -webkit-border-radius: 5px;\n}\n\n.xc_smilie\n{\n background-repeat:no-repeat;\n display:inline-block;\n width:18px;\n height:18px;\n text-indent:-9999px;\n white-space:nowrap;\n}\n\n.xc_btn_load_more\n{\n width:100%!important;\n}\n\n.xc_notifications_wrapper\n{\n text-shadow:0 1px 0 rgba(255,255,255,0.5);\n}\n\n.xc_notification_success\n{\n color:#468847;\n}\n\n.xc_notification_error\n{\n color:#b94a48;\n}\n\n.xc_errorlist\n{\n margin:0 0 0 25px;\n padding:0;\n}\n\ni.xc_btn_notifications_close\n{\n float:right;\n font-weight:700;\n font-size:20px;\n color:#ccc;\n cursor:pointer;\n margin:-15px 0 0;\n padding:0;\n}\n\n.xc_btn_style\n{\n width:95%;\n text-align:center;\n line-height:1.2;\n font-size:90%;\n -moz-box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n -webkit-box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n background:0;\n background-color:{{chatWebsite.color_button}};\n -moz-border-radius:4px;\n -webkit-border-radius:4px;\n border-radius:4px;\n border:1px solid {{chatWebsite.color_button}};\n display:inline-block;\n color:#fff;\n font-weight:700;\n text-decoration:none;\n text-shadow:1px 1px 0 #000c17;\n margin:0 auto 5px;\n padding:2px 0;\n}\n\n.xc_btn_style:hover\n{\n background:0;\n background-color:{{chatWebsite.color_button}};\n color: #fff;\n text-decoration: none;\n}\n\n.xc_btn_style:active\n{\n position:relative;\n top:1px;\n}\n\n.xc_composing_container\n{\n display: none;\n width: 95%;\n margin: 0 auto;\n background: transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_pencil.png) 6px center no-repeat;\n padding-left: 19px;\n font-style: italic;\n}\n\n@media only screen and (max-height: 620px) {\n .xc_conversation_container\n {\n max-height:300px!important;\n }\n}\n\n@media only screen and (max-height: 545px) {\n .xc_conversation_container\n {\n max-height:200px!important;\n }\n}\n\n@media only screen and (max-height: 445px) {\n .xc_conversation_container\n {\n max-height:150px!important;\n }\n}\n\n@media only screen and (max-width: 480px) {\n .xc_chat_container\n {\n width:95%!important;\n right:auto!important;\n -webkit-border-top-left-radius:15px;\n -webkit-border-top-right-radius:15px;\n -moz-border-radius-topleft:15px;\n -moz-border-radius-topright:15px;\n border-top-left-radius:15px;\n border-top-right-radius:15px;\n box-shadow:0 0 5px rgba(0,0,0,.5);\n -webkit-box-shadow:0 0 5px rgba(0,0,0,.5);\n -moz-box-shadow:0 0 5px rgba(0,0,0,.5);\n }\n\n div.xc_chat_head\n {\n background-color:#036;\n background-image:none;\n line-height:25px;\n height:auto;\n -webkit-border-top-left-radius:15px;\n -webkit-border-top-right-radius:15px;\n -moz-border-radius-topleft:15px;\n -moz-border-radius-topright:15px;\n border-top-left-radius:15px;\n border-top-right-radius:15px;\n padding:10px;\n }\n\n .xc_chat_toggle_container\n {\n background-color:#fff;\n background-image:none;\n border-color:#036;\n border-style:solid;\n border-width:0 1px;\n }\n\n .xc_header_icon\n {\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/icon_visitorchat.png);\n margin:0;\n }\n\n .xc_header_icon span.xc_notification_badge span\n {\n top:-5px;\n left:5px;\n }\n\n .xc_notification_success\n {\n background-color:#dff0d8;\n border:1px solid #d6e9c6;\n }\n\n .xc_conversation_container\n {\n max-height:375px;\n border-color:#036;\n }\n\n .xc_notification_error\n {\n background-color:#f2dede;\n border:1px solid #eed3d7;\n }\n\n .xc_sub-head-spacer\n {\n display:none;\n padding:0;\n }\n\n .xc_chat_head-title,.xc_conversation\n {\n margin:0;\n }\n}\n</style>\n<div class="xc_chat_container">\n <div class="xc_chat_head {{chatWebsite.header_shape}}">\n <i class="xc_header_icon">\n <span class="xc_notification_badge">\n <span class="xc_notification_badge_number"></span>\n </span>\n </i>\n <i class="xc_header_logo"></i>\n <span class="xc_chat_head-title">{{statePreview.state == \'online\' ? chatWebsite.header_online : chatWebsite.header_offline}}</span>\n </div>\n <div class="xc_chat_toggle_container">\n <div class="xc_sub-head-spacer"></div>\n <!-- <div class="xc_notifications_wrapper">\n <ul class="xc_errorlist"></ul>\n </div> -->\n <div class="xc_enquiry_wrapper" data-ng-show=\'statePreview.state == "offline"\'>\n <form class="xc_form_enquiry" accept-charset="UTF-8">\n <p class="xc_offline_message" ng-bind-html=\'chatWebsite.offline_message\'></p>\n <br>\n <div ng-if="chatWebsite.enquiry_enable">\n <div class="xc_div_group">\n <label for="enquiryFullname" class="xc_label">{{chatWebsite.name_title}} *</label>\n <input id="enquiryFullname" maxlength="45" data-label="Name" type="text" name="data[Enquiry][fullname]" placeholder="{{chatWebsite.username_placeholder}}" class="xc_input_enquiry_fullname" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="enquiryEmail" class="xc_label">{{chatWebsite.email_title}} *</label>\n <input id="enquiryEmail" maxlength="85" type="text" data-label="Email Address" name="data[Enquiry][email]" placeholder="{{chatWebsite.email_placeholder}}" class="xc_input_enquiry_email" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="enquiryMessage" class="xc_label">{{chatWebsite.message_title}} *</label>\n <textarea id="enquiryMessage" data-label="Message" maxlength="1500" placeholder="{{chatWebsite.enquiry_message_placeholder}}" name="data[Enquiry][message]" class="xc_input_enquiry_message" required></textarea>\n </div>\n <br>\n <button type="submit" class="xc_btn_enquiry xc_btn_style">{{chatWebsite.enquiry_button}}</button>\n </div>\n </form>\n </div>\n <div class="xc_signup_wrapper" data-ng-show=\'statePreview.state == "online"\'>\n <form class="xc_form_signup" accept-charset="UTF-8">\n <p class="xc_online_message" ng-bind-html=\'chatWebsite.online_message\'></p>\n <br>\n <div class="xc_div_group">\n <label for="dataFullname" class="xc_label">{{chatWebsite.name_title}} *</label>\n <input maxlength="45" id="dataFullname" data-label="Fullname" type="text" name="data[Discussion][fullname]" placeholder="{{chatWebsite.username_placeholder}}" class="xc_input_fullname" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="dataEmail" class="xc_label">{{chatWebsite.email_title}} *</label>\n <input maxlength="85" id="dataEmail" data-label="Email Address" type="text" name="data[Discussion][email]" placeholder="{{chatWebsite.email_placeholder}}" class="xc_input_email" required/>\n </div>\n <br>\n <input type="hidden" class="xc_input_visitor_time" name="data[Discussion][visitor_time]" />\n <button type="submit" class="xc_btn_signup xc_btn_style">{{chatWebsite.start_chat_button}}</button>\n </form>\n </div>\n <div class="xc_rating_wrapper" data-ng-show=\'statePreview.state == "rating"\'>\n <form class="xc_form_rating" accept-charset="UTF-8">\n <p class="xc_rating_message">{{chatWebsite.rating_message}}</p>\n <br>\n <div class="xc_rating">\n <label class="xc_rating_label" style="padding:30px;">\n <input type="radio" name="data[Rating][rating]" value="good" />\n <img src="{{chatWebsite.remote}}/api/xchatty/assets?resource=images/like.png" alt="Good" height="50"/>\n </label>\n <label class="xc_rating_label" style="padding:30px;">\n <input type="radio" name="data[Rating][rating]" value="bad"/>\n <img src="{{chatWebsite.remote}}/api/xchatty/assets?resource=images/dislike.png" alt="Good" height="50"/>\n </label>\n </div>\n <div class="xc_div_group">\n <label for="ratingMessage" class="xc_label">Message</label>\n <textarea id="ratingMessage" data-label="Message" maxlength="1500" name="data[Rating][message]" class="xc_input_rating_message"></textarea>\n </div>\n <button type="submit" class="xc_button_rating xc_btn_style">{{chatWebsite.rating_send}}</button>\n <button type="button" class="xc_button_skip_rating xc_btn_style">{{chatWebsite.rating_skip}}</button>\n </form>\n </div>\n <div class="xc_footer">\n <div class="xc_powered"><a>Powered by xCALLY</a></div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/chat/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/chat/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.queues.view.settings\')}">\n <a data-ng-href="/channels/chat/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.chat.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/chat/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateChatQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}} {{\'APPLICATION_TIMEOUT\' | translate}}</label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), +a.put("app/channels/chat/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.chat.realtime.view.agents\')}">\n <a href="/channels/chat/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.chat.realtime.view.applications\')}">\n <a href="/channels/chat/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/external/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n </div>\n</div>\n<div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n</div>\n<div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-selection ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/group/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n </div>\n</div>\n<div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n</div>\n<div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/internal/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initView()">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/room.add.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 class="modal-title">{{\'APPLICATION_NEW_GROUP\' | translate}}</h4>\n</div>\n\n<div class="modal-body">\n <div class="portlet box blue">\n <div class="portlet-title">\n <div class="caption">\n <i class="icon-people"></i>{{\'APPLICATION_AGENTS\' | translate}}\n </div>\n </div>\n <div class="portlet-body">\n <ul>\n <li data-ng-repeat="item in items">\n {{item.fullname}}\n </li>\n <li data-ng-repeat="item in selected.items">\n {{item.fullname}}\n </li>\n </ul>\n </div>\n </div>\n\n <ui-select multiple name="items" ng-model="selected.items" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SELECTED_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="{id: agent.id, fullname: agent.fullname} as agent in agents.rows | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n</div>\n\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="selected.items.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/room/room.close.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'),a.put("app/channels/chat/room/room.directive.html",'<div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button type="button" data-ng-click="togglePanelLeft()" style="background: white;">\n <i class="icon-menu"></i>\n </button>\n <span data-ng-if="chatRoom.status === \'CLOSED\'"> | </span>\n <span data-ng-if="chatRoom.status === \'CLOSED\'" class="label label-sm label-default">{{chatRoom.status}}</span>\n <span data-ng-if="chatRoom.ChatWebsite"> | </span>\n <span data-ng-if="chatRoom.ChatWebsite" class="caption-subject font-green-sharp bold uppercase">{{chatRoom.ChatWebsite.name | truncate: 25: \'...\': true}}</span>\n </div>\n <div class="actions">\n <button class="btn btn-icon-only btn-primary" data-ng-click="addAgent(chatRoom.id)" data-ng-disabled="chatRoom.status === \'CLOSED\'">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="btn btn-icon-only" data-ng-class="{\'btn-success\':chatRoom.status !== \'CLOSED\',\'grey-cascade\':chatRoom.status === \'CLOSED\'}" data-ng-click="closeRoom(chatRoom.id)" data-ng-if="chatRoom.ChatVisitors.length" data-ng-disabled="chatRoom.status === \'CLOSED\' && chatRoom.disposition">\n <i data-ng-class="{\'fa fa-upload\':chatRoom.status !== \'CLOSED\',\'icon-target\':chatRoom.status === \'CLOSED\'}"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n<div class="row">\n <div data-ng-class="panelLeft" data-ng-show="panelLeft">\n <div class="portlet">\n <div class="portlet-body">\n <div class="portlet-title line">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged(chatRoom.id)" on-remove="onChanged(chatRoom.id)">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n </div>\n <v-accordion class="vAccordion--default">\n <v-pane data-ng-if="chatRoom.ChatVisitors.length" data-ng-repeat="chatVisitor in chatRoom.ChatVisitors" expanded="true">\n <v-pane-header>\n <ng-letter-avatar\n height="40"\n width="40"\n data="{{chatRoom.ChatVisitor.fullname}}"\n fontsize="25"\n avatarcustombgcolor="#B0B0B0"\n charCount="2"\n avatarcustomborder="border:2px solid #EA4C61"\n shape="round"></ng-letter-avatar>\n </v-pane-header>\n <v-pane-content>\n {{\'APPLICATION_ROOM_ID\' | translate}}: <p>{{chatRoom.id}}</p>\n {{\'APPLICATION_NAME\' | translate}}: <p>{{chatRoom.ChatVisitor.fullname}}</p>\n {{\'APPLICATION_EMAIL\' | translate}}: <p><a data-ng-click="openContact(chatRoom.ChatVisitor.email)" href="">{{chatRoom.ChatVisitor.email}}</a></p>\n {{\'APPLICATION_REMOTE_ADDRESS\' | translate}}: <p>{{chatRoom.ChatVisitor.remote_address}}</p>\n {{\'APPLICATION_BROWSER\' | translate}}: <p>{{chatRoom.ChatVisitor.browser}}</p>\n {{\'APPLICATION_OS\' | translate}}: <p>{{chatRoom.ChatVisitor.os}}</p>\n </v-pane-content>\n </v-pane>\n\n <v-pane data-ng-repeat="user in chatRoom.Users | filter:{ id: \'!\' + user.id}">\n <v-pane-header>\n <ng-letter-avatar\n height="40"\n width="40"\n data="{{user.fullname}}"\n fontsize="25"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n </v-pane-header>\n <v-pane-content>\n {{\'APPLICATION_NAME\' | translate}}: <p>{{user.fullname}}</p>\n {{\'APPLICATION_ROLE\' | translate}}: <p>{{user.role}}</p>\n {{\'APPLICATION_INTERNAL\' | translate}}: <p>{{user.internal}}</p>\n {{\'APPLICATION_EMAIL\' | translate}}: <p><a data-ng-href="mailto:{{user.email}}">{{user.email}}</a></p>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="portlet light bordered">\n <div class="portlet-body">\n <div id="chat-box" schroll-bottom="chatRoom.ChatMessages">\n <ul class="chats">\n <li data-ng-repeat="message in chatRoom.ChatMessages" data-ng-class="message.UserId == user.id ? \'out\' : \'in\'">\n <div class="avatar" data-ng-class="message.ChatVisitor ? \'pretty-avatar-v\' : \'pretty-avatar\'">\n <ng-letter-avatar\n data-ng-if="!message.ChatVisitor"\n height="40"\n width="40"\n fontsize="25"\n data="{{message.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="message.ChatVisitor"\n height="40"\n width="40"\n fontsize="25"\n data="{{message.ChatVisitor.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="2"\n shape="round"></ng-letter-avatar>\n </div>\n <div class="message">\n <span class="arrow"></span>\n <a href="#" class="name">{{message.User.fullname || message.ChatVisitor.fullname}} </a>\n <span am-time-ago="message.createdAt"></span>\n <ng-emoticons emoticons-data="message.body"></ng-emoticons>\n </div>\n </li>\n <li data-ng-if="chatRoom.status === \'CLOSED\'">\n <div class="media-body" style="text-align: center;">\n <h5 class="media-heading"><i>{{\'MESSAGE_CHAT_CLOSED\' | translate | lowercase}}</i></h5>\n </div>\n </li>\n </ul>\n </div>\n <div class="chat-form" data-ng-if="chatRoom && isMyRoom(chatRoom.Users)">\n <div class="input-cont">\n <input class="form-control" type="text" placeholder="Type a message here..." ng-enter="sendMessage()" data-ng-model="message.body" data-ng-disabled="chatRoom.status === \'CLOSED\'"/>\n </div>\n <div class="btn-cont">\n <span class="arrow"></span>\n <a href="#" class="btn blue icn-only" data-ng-disabled="chatRoom.status === \'CLOSED\'" data-ng-click="sendMessage()">\n <i class="fa fa-check icon-white"></i>\n </a>\n </div>\n </div>\n <div class="form-group chat-canned-answer-div" data-ng-if="chatRoom.status !== \'CLOSED\'" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelect($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <span data-ng-show="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n</div>\n</div>\n</div>\n"),a.put("app/channels/chat/room/room.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_ROOMS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div class="row inbox">\n <div class="col-md-2">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.internal\')}">\n <a href="/channels/chat/room/internal/list" class="btn">\n {{\'APPLICATION_INTERNAL\' | translate}}\n </a>\n <b></b>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.external\')}">\n <a href="/channels/chat/room/external/list" class="btn">\n {{\'APPLICATION_EXTERNAL\' | translate}}\n </a>\n <b></b>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.group\')}">\n <a href="/channels/chat/room/group/list" class="btn">\n {{\'APPLICATION_GROUPS\' | translate}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-10">\n <div class="room-content">\n <div ui-view></div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/template.html",'<div ng-bind-html="neText" ne-hljs></div>\n<div class="ne-video" ng-if="video.host" class="fade">\n <div class="ne-video-preview" ng-hide="nePlayVideo || !options.video.details">\n <div class="ne-video-thumb" ng-click="nePlayVideo=!nePlayVideo">\n <img ng-src="{{video.thumbnail}}" alt=""/>\n <i class="fa fa-play-circle-o"></i>\n </div>\n <div class="ne-video-detail">\n <div class="ne-video-title">\n <a ng-href="{{video.url}}">{{video.title}}</a>\n </div>\n <div class="ne-video-desc">\n {{video.description}}\n </div>\n <div class="ne-video-stats">\n <span><i class="fa fa-eye"></i> {{video.views}}</span>\n <span><i class="fa fa-heart"></i> {{video.likes}}</span>\n </div>\n </div>\n </div>\n <div class="ne-video-player" ng-if="nePlayVideo || !(options.video.details)">\n <iframe ng-src="{{video.embedSrc}}" frameBorder="0" width="{{video.width}}" height="{{video.height}}" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\n </div>\n</div>\n<div class="ne-video" ng-if="video.basic">\n <div class="ne-video-player">\n <div class="player">\n <video ng-src="{{video.basic}}" controls></video>\n </div>\n </div>\n</div>\n<div ng-init="neImageLong=false" ng-class="{false:\'ne-image\', true:\'ne-image ne-image-long\'}[neImageLong]"\nng-if="image.url">\n<div class="ne-image-wrapper">\n <img ng-src="{{image.url}}" ng-click="neImageLong=!neImageLong" alt=""/>\n</div>\n</div>\n<!-- <div class="ne-pdf" ng-if="pdf.url">\n <div class="ne-pdf-preview" ng-hide="neShowPdf">\n <div class="ne-pdf-icon">\n <i class="fa fa-file-pdf-o"></i>\n </div>\n <div class="ne-pdf-detail" >\n <div class="ne-pdf-title">\n <a href="">{{pdf.url}}</a>\n </div>\n <div class="ne-pdf-view">\n\n <button><i class="fa fa-download"></i> <a ng-href="{{pdf.url}}" target="_blank">Download</a></button>\n <button ng-click="neShowPdf=!neShowPdf"><i class="fa fa-eye"></i> View PDF</button>\n\n </div>\n </div>\n </div>\n <div class="ne-pdf-viewer" ng-if="neShowPdf" ng-show="neShowPdf">\n <iframe ng-src="{{pdf.url}}" frameBorder="0"></iframe>\n </div>\n\n</div>\n<div class="ne-audio" ng-if="audio.url">\n <audio ng-src="{{audio.url}}" controls></audio>\n</div> -->\n'),a.put("app/channels/chat/room/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/chat/visitor/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-question"></i>\n <a href="/channels/chat/visitors/list">{{ \'APPLICATION_VISITORS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/visitor/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-question"></i>\n <a href="/channels/chat/visitors/list">{{ \'APPLICATION_VISITORS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="chatVisitor">\n <a href="#">{{chatVisitor.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/visitor.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatVisitor.fullname}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.visitors.view.profile\')}">\n <a data-ng-href="/channels/chat/visitors/view/{{chatVisitor.id}}/profile">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_PROFILE\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/visitor/view/view.profile.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_PROFILE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div>\n <h4 class="profile-desc-title">{{chatVisitor.email}}</h4>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-magnifier"></i>\n <a href="#" class="inactive-link">{{chatVisitor.origin}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatVisitor.user_agent | truncate: 50: \'...\'}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-flag"></i>\n <a href="#" class="inactive-link">{{chatVisitor.visitor_language}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatVisitor.referer}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="#">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_WEB_SITES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/chat/websites/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_WEB_SITE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/chat/website/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/chat/websites/view/{{chatWebsite.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.ChatQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.ChatQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/website/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/embedding/view/view.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_EMBEDDING\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard();">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-12">\n <h3>{{\'APPLICATION_EMBED_SNIPPET\' | translate}}</h3>\n <p>\n {{\'MESSAGE_EMBED_SNIPPET\' | translate}}\n </p>\n <div class="form-body">\n <div class="form-group">\n <div class="col-md-12">\n <code-mirror lang="html" model="snippetCode"></code-mirror>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/chat/website/view/form/view/view.html",'<div class="row" data-ng-init="getChatWebsiteFields(\'online\');getChatWebsiteFields(\'offline\');">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_ONLINE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_OFFLINE\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-12">\n <div class="tab-content">\n <div class="tab-pane active" id="tab_1_1">\n <div class="row">\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_SELECTED\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="saveForm(\'online\');">\n <i class="fa fa-check"></i> {{ \'APPLICATION_SAVE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-builder="online"></div>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_AVAILABLE\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-components></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="tab-pane" id="tab_1_2">\n <div class="row">\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_SELECTED\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="saveForm(\'offline\');">\n <i class="fa fa-check"></i> {{ \'APPLICATION_SAVE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-builder="offline"></div>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_AVAILABLE\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-components></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/chat/website/view/proactive/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.type.$touched || form.$submitted) && form.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <ui-select name="type" ng-model="item.type" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in possibleType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TYPE -->\n\n <!-- START SELECTOR -->\n <div class="form-group" data-ng-if="item.type === \'mouseOver\'" data-ng-class="{\'has-error\': (form.selector.$touched || form.$submitted) && form.selector.$invalid}">\n <label class="control-label">{{\'APPLICATION_SELECTOR\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="selector" placeholder="{{\'APPLICATION_SELECTOR\' | translate}}" class="form-control" data-ng-model="item.selector" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SELECTOR -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="item.type === \'timeout\'" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.timeout" min="0" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/website/view/proactive/list/list.html",'<div class="row" data-ng-init="initProactiveActions()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_PROACTIVE_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROACTIVE_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemChatWebsite()" novalidate>\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="chatWebsite.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="chatWebsite.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/snippet/view/view.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SNIPPET\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_APPEARANCE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_FORMS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_LABELS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_4" data-toggle="tab">{{\'APPLICATION_SETTINGS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_5" data-toggle="tab">{{\'APPLICATION_OFFLINE\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-8">\n <div class="tab-content">\n\n <!-- APPEARANCE TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formAppearance" data-ng-submit="forms.formAppearance.$valid && updateItem()" novalidate>\n\n <!-- START MAIN COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIN_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="mainColor" placeholder="{{\'APPLICATION_MAIN_COLOR\' | translate}}" style="color:{{chatWebsite.color}}" class="form-control" data-ng-model="chatWebsite.color" required/>\n <span data-ng-show="(forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.mainColor.$invalid && forms.formAppearance.mainColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIN COLOR -->\n\n <!-- START FOCUS COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_FOCUS_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="focusColor" placeholder="{{\'APPLICATION_FOCUS_COLOR\' | translate}}" style="color:{{chatWebsite.color_focus}}" class="form-control" data-ng-model="chatWebsite.color_focus" required/>\n <span data-ng-show="(forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid && forms.formAppearance.focusColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FOCUS COLOR -->\n\n <!-- START BUTTON COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_BUTTON_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="buttonColor" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" style="color:{{chatWebsite.color_button}}" class="form-control" data-ng-model="chatWebsite.color_button" required/>\n <span data-ng-show="(forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid && forms.formAppearance.buttonColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUTTON COLOR -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.headerShape.$touched || forms.formAppearance.$submitted) && forms.formAppearance.headerShape.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="chatWebsite.header_shape" name="headerShape" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant(\'APPLICATION_\' + $select.selected.toUpperCase())}}</ui-select-match>\n <ui-select-choices repeat="headerShape in [\'rounded\',\'squared\'] | filter: $select.search">\n <div ng-bind-html="$translate.instant(\'APPLICATION_\' + headerShape.toUpperCase()) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n\n <!-- START ANIMATION TOGGLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.animationToggle.$touched || forms.formAppearance.$submitted) && forms.formAppearance.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="chatWebsite.animation" name="animationToggle" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="animationToggle in [true, false] | filter: $select.search">\n <div ng-bind-html="animationToggle ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END ANIMATION TOGGLE -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END APPEARANCE TAB -->\n\n <!-- FORMS TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.formFunctionality" data-ng-submit="forms.formFunctionality.$valid && updateItem()" novalidate>\n\n <!-- START DOWNLOAD TRANSCRIPT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formFunctionality.animationToggle.$touched || forms.formFunctionality.$submitted) && forms.formFunctionality.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_DOWNLOAD_TRANSCRIPT\' | translate}}</label>\n <ui-select data-ng-model="chatWebsite.download_transcript" name="downloadTranscript" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="downloadTranscript in [true, false] | filter: $select.search">\n <div ng-bind-html="downloadTranscript ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DOWNLOAD TRANSCRIPT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END FORMS TAB -->\n\n <!-- STRINGS TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.formLabel" data-ng-submit="forms.formLabel.$valid && updateItem()" novalidate>\n\n <h4 class="block" data-ng-show="statePreview.state == \'online\'">{{\'APPLICATION_ONLINE_STATE\' | translate}}</h4>\n\n <!-- START HEADER ONLINE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.headerOnline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_ONLINE\' | translate}}</label>\n <input type="text" name="headerOnline" placeholder="{{\'APPLICATION_HEADER_ONLINE\' | translate}}" class="form-control" data-ng-model="chatWebsite.header_online"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START ONLINE MESSAGE-->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.onlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="onlineMessage" placeholder="{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.online_message"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START USERNAME TITLE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.nameTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.nameTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_TITLE\' | translate}}</label>\n <input type="text" name="nameTitle" placeholder="{{\'APPLICATION_USERNAME_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.name_title"/>\n </div>\n <!-- END USERNAME TITLE -->\n\n <!-- START USERNAME PLACEHOLDER -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.usernamePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.usernamePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="usernamePlaceholder" placeholder="{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.username_placeholder"/>\n </div>\n <!-- END USERNAME PLACEHOLDER -->\n\n <!-- START EMAIL TITLE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.emailTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.emailTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_TITLE\' | translate}}</label>\n <input type="text" name="emailTitle" placeholder="{{\'APPLICATION_EMAIL_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.email_title"/>\n </div>\n <!-- END EMAIL TITLE -->\n\n <!-- START EMAIL PLACEHOLDER -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.emailPlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.emailPlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailPlaceholder" placeholder="{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.email_placeholder"/>\n </div>\n <!-- END EMAIL PLACEHOLDER -->\n\n <!-- START START CHAT BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.startChatButton.$touched || forms.formLabel.$submitted) && forms.formLabel.startChatButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}</label>\n <input type="text" name="startChatButton" placeholder="{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.start_chat_button"/>\n </div>\n <!-- END START CHAT BUTTON -->\n\n <h4 class="block" data-ng-show="statePreview.state == \'rating\'">{{\'APPLICATION_RATING_STATE\' | translate}}</h4>\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_MESSAGE\' | translate}}</label>\n <input type="text" name="ratingMessage" placeholder="{{\'APPLICATION_RATING_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_message"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START RATING SEND BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingSend.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSend.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSend" placeholder="{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_send"/>\n </div>\n <!-- END RATING SEND BUTTON -->\n\n <!-- START RATING SKIP BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingSkip.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSkip.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSkip" placeholder="{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_skip"/>\n </div>\n <!-- END RATING SKIP BUTTON -->\n\n <h4 class="block" data-ng-show="statePreview.state == \'offline\'">{{\'APPLICATION_OFFLINE_STATE\' | translate}}</h4>\n\n <!-- START HEADER OFFLINE -->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.headerOffline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_OFFLINE\' | translate}}</label>\n <input type="text" name="headerOffline" placeholder="{{\'APPLICATION_HEADER_OFFLINE\' | translate}}" class="form-control" data-ng-model="chatWebsite.header_offline"/>\n </div>\n <!-- END HEADER OFFLINE -->\n\n <!-- START OFFLINE MESSAGE-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.offlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.offlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="offlineMessage" placeholder="{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.offline_message"/>\n </div>\n <!-- END OFFLINE MESSAGE -->\n\n <!-- START ENQUIRY MESSAGE TITLE-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessageTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessageTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}</label>\n <input type="text" name="enquiryMessageTitle" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.message_title"/>\n </div>\n <!-- END ENQUIRY MESSAGE TITLE -->\n\n <!-- START ENQUIRY MESSAGE PLACEHOLDER-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessagePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessagePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="enquiryMessagePlaceholder" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_message_placeholder"/>\n </div>\n <!-- END ENQUIRY MESSAGE PLACEHOLDER -->\n\n <!-- START ENQUIRY BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryButton.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}</label>\n <input type="text" name="enquiryButton" placeholder="{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_button"/>\n </div>\n <!-- END ENQUIRY BUTTON -->\n\n <!-- START AGENTS BUSY BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.agentsBusy.$touched || forms.formLabel.$submitted) && forms.formLabel.agentsBusy.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS_BUSY\' | translate}}</label>\n <input type="text" name="agentsBusy" placeholder="{{\'APPLICATION_AGENTS_BUSY\' | translate}}" class="form-control" data-ng-model="chatWebsite.agents_busy"/>\n </div>\n <!-- END AGENTS BUSY BUTTON -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END STRINGS TAB -->\n\n <!-- SETTINGS TAB -->\n <div class="tab-pane" id="tab_1_4">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="chatWebsite.name" required/>\n <span data-ng-show="(forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSettings.name.$invalid && forms.formSetting.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEB_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="address" placeholder="{{\'APPLICATION_WEB_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.address" required/>\n <span data-ng-show="(forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid && forms.formSetting.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.remote" required/>\n <span data-ng-show="(forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid && forms.formSetting.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="chatWebsite.fidelity"\n type="checkbox"\n switch-active="{{ fidelitySwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ fidelitySwitch.onColor }}"\n switch-off-color="{{ fidelitySwitch.offColor }}"\n switch-animate="{{ fidelitySwitch.animate }}"\n switch-size="{{ fidelitySwitch.size }}"\n switch-label="{{ fidelitySwitch.label }}"\n switch-icon="{{ fidelitySwitch.icon }}"\n switch-radio-off="{{ fidelitySwitch.radioOff }}"\n switch-label-width="{{ fidelitySwitch.labelWidth }}"\n switch-handle-width="{{ fidelitySwitch.handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="chatWebsite.fidelity" data-ng-class="{\'has-error\': (forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="chatWebsite.timeout" required/>\n <span data-ng-show="(forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid && forms.formSetting.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid && forms.formSetting.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.description.$touched || forms.formSetting.$submitted) && forms.formSetting.description.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="chatWebsite.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END SETTINGS TAB -->\n\n <!-- OFFLINE TAB -->\n <div class="tab-pane" id="tab_1_5">\n <form name="forms.formOffline" data-ng-submit="forms.formOffline.$valid && updateItem()" novalidate>\n\n <!-- START ENQUIRY ENABLE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_ENABLED\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chatWebsite.enquiry_enable"\n type="checkbox"\n switch-active="{{ enquirySwitch.isActive }}"\n switch-on-text="{{ enquirySwitch.onText }}"\n switch-off-text="{{ enquirySwitch.offText }}"\n switch-on-color="{{ enquirySwitch.onColor }}"\n switch-off-color="{{ enquirySwitch.offColor }}"\n switch-animate="{{ enquirySwitch.animate }}"\n switch-size="{{ enquirySwitch.size }}"\n switch-label="{{ enquirySwitch.label }}"\n switch-icon="{{ enquirySwitch.icon }}"\n switch-radio-off="{{ enquirySwitch.radioOff }}"\n switch-label-width="{{ enquirySwitch.labelWidth }}"\n switch-handle-width="{{ enquirySwitch.handleWidth }}">\n </div>\n <!-- END ENQUIRY ENABLE -->\n\n <!-- START ENQUIRY FORWARDING -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_FORWARDING\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chatWebsite.enquiry_forwarding"\n type="checkbox"\n switch-active="{{ enquirySwitch.isActive }}"\n switch-on-text="{{ enquirySwitch.onText }}"\n switch-off-text="{{ enquirySwitch.offText }}"\n switch-on-color="{{ enquirySwitch.onColor }}"\n switch-off-color="{{ enquirySwitch.offColor }}"\n switch-animate="{{ enquirySwitch.animate }}"\n switch-size="{{ enquirySwitch.size }}"\n switch-label="{{ enquirySwitch.label }}"\n switch-icon="{{ enquirySwitch.icon }}"\n switch-radio-off="{{ enquirySwitch.radioOff }}"\n switch-label-width="{{ enquirySwitch.labelWidth }}"\n switch-handle-width="{{ enquirySwitch.handleWidth }}">\n <span class="help-block col-md-12">{{\'MESSAGE_REMEMBER_SMTP_SERVICE_ACCOUNT\' | translate}}.</span>\n </div>\n <!-- END ENQUIRY FORWARDING -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable && chatWebsite.enquiry_forwarding" data-ng-class="{\'has-error\': (forms.formOffline.forwardingAddress.$touched || forms.formOffline.$submitted) && forms.formSetting.forwardingAddress.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_FORWARDING_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="forwardingAddress" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_forwarding_address" required/>\n <span data-ng-show="(forms.formOffline.forwardingAddress.$touched || forms.formOffline.$submitted) && forms.formOffline.forwardingAddress.$invalid && forms.formOffline.forwardingAddress.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable && chatWebsite.enquiry_forwarding" data-ng-class="{\'has-error\': (forms.formOffline.OfflineTemplateId.$touched || forms.formOffline.$submitted) && forms.formOffline.OfflineTemplateId.$invalid}">\n <label class="control-label">{{\'APPLICATION_TEMPLATE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="chatWebsite.OfflineTemplateId" name="OfflineTemplateId" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.formOffline.OfflineTemplateId.$touched || forms.formOffline.$submitted) && forms.formOffline.OfflineTemplateId.$invalid && forms.formOffline.OfflineTemplateId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HEADER SHAPE -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END OFFLINE TAB -->\n </div>\n </div>\n <div class="col-md-4">\n <!-- START STATE -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label> -->\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="statePreview.state" name="statePreview" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="statePreview in [\'online\',\'rating\',\'offline\'] | filter: $select.search">\n <div ng-bind-html="statePreview | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END STATE -->\n <preview></preview>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/chat/website/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{chatWebsite.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/website.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatWebsite.name}}\n </div>\n <div class="profile-usertitle-job">\n {{chatWebsite.address}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.embedding\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/embedding/view">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_EMBEDDING\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.snippet\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/snippet/view">\n <i class="icon-note"></i>\n {{ \'APPLICATION_SNIPPET\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.form\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/forms/view">\n <i class="icon-list"></i>\n {{ \'APPLICATION_FORMS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.proactive\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/proactive/list">\n <i class="icon-target"></i>\n {{ \'APPLICATION_PROACTIVE_ACTIONS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.actions\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/actions/list">\n <i class="icon-directions"></i>\n {{ \'APPLICATION_ACTIONS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.dispositions\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/dispositions">\n <i class="icon-target"></i>\n {{ \'APPLICATION_DISPOSITIONS\' | translate }} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.chat.websites.view.settings\')}">\n <a href="/channels/chat/websites/view/{{chatWebsite.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_WEB_SITE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_WEB_SITE_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$touched && !forms.formSettings.name.$valid && forms.formSetting.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEB_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="address" placeholder="{{\'APPLICATION_WEB_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required/>\n <span data-ng-show="(forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid && forms.formSetting.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remote" required/>\n <span data-ng-show="(forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid && forms.formSetting.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.form.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_WEB_SITE_APPEARANCE\' | translate}}" canexit="exitValidation(forms.formAppearance.$valid)">\n <form name="forms.formAppearance" novalidate>\n\n <!-- START MAIN COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIN_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="mainColor" placeholder="{{\'APPLICATION_MAIN_COLOR\' | translate}}" style="color:{{item.color}}" class="form-control" data-ng-model="item.color" required/>\n <span data-ng-show="(forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.mainColor.$invalid && forms.formAppearance.mainColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIN COLOR -->\n\n <!-- START FOCUS COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_FOCUS_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="focusColor" placeholder="{{\'APPLICATION_FOCUS_COLOR\' | translate}}" style="color:{{item.color_focus}}" class="form-control" data-ng-model="item.color_focus" required/>\n <span data-ng-show="(forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid && forms.formAppearance.focusColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FOCUS COLOR -->\n\n <!-- START BUTTON COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_BUTTON_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="buttonColor" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" style="color:{{item.color_button}}" class="form-control" data-ng-model="item.color_button" required/>\n <span data-ng-show="(forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid && forms.formAppearance.buttonColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUTTON COLOR -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.headerShape.$touched || forms.formAppearance.$submitted) && forms.formAppearance.headerShape.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_SHAPE\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="item.animation" required/> -->\n <ui-select data-ng-model="item.header_shape" name="headerShape" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant(\'APPLICATION_\' + $select.selected.toUpperCase())}}</ui-select-match>\n <ui-select-choices repeat="headerShape in [\'rounded\',\'squared\'] | filter: $select.search">\n <div ng-bind-html="$translate.instant(\'APPLICATION_\' + headerShape.toUpperCase()) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n\n <!-- START ANIMATION TOGGLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.animationToggle.$touched || forms.formAppearance.$submitted) && forms.formAppearance.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <ui-select data-ng-model="item.animation" name="animationToggle" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="filter in [true,false] | filter: $select.search">\n <div ng-bind-html="filter ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END ANIMATION TOGGLE -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_LABELS\' | translate}}" canexit="exitValidation(forms.formLabel.$valid)">\n <form name="forms.formLabel" novalidate>\n\n <!-- START HEADER ONLINE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.headerOnline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_ONLINE\' | translate}}</label>\n <input type="text" name="headerOnline" placeholder="{{\'APPLICATION_HEADER_ONLINE\' | translate}}" class="form-control" data-ng-model="item.header_online"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START ONLINE MESSAGE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.onlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="onlineMessage" placeholder="{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.online_message"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START USERNAME TITLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.usernameTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.usernameTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_TITLE\' | translate}}</label>\n <input type="text" name="usernameTitle" placeholder="{{\'APPLICATION_USERNAME_TITLE\' | translate}}" class="form-control" data-ng-model="item.username_title"/>\n </div>\n <!-- END USERNAME TITLE -->\n\n <!-- START USERNAME PLACEHOLDER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.usernamePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.usernamePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="usernamePlaceholder" placeholder="{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.username_placeholder"/>\n </div>\n <!-- END USERNAME PLACEHOLDER -->\n\n <!-- START EMAIL TITLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.emailTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.emailTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailTitle" placeholder="{{\'APPLICATION_EMAIL_TITLE\' | translate}}" class="form-control" data-ng-model="item.email_title"/>\n </div>\n <!-- END EMAIL TITLE -->\n\n <!-- START EMAIL PLACEHOLDER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.emailPlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.emailPlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailPlaceholder" placeholder="{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.email_placeholder"/>\n </div>\n <!-- END EMAIL PLACEHOLDER -->\n\n <!-- START START CHAT BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.startChatButton.$touched || forms.formLabel.$submitted) && forms.formLabel.startChatButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}</label>\n <input type="text" name="startChatButton" placeholder="{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}" class="form-control" data-ng-model="item.start_chat_button"/>\n </div>\n <!-- END START CHAT BUTTON -->\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_MESSAGE\' | translate}}</label>\n <input type="text" name="ratingMessage" placeholder="{{\'APPLICATION_RATING_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.rating_message"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START RATING START TEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingSend.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSend.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSend" placeholder="{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}" class="form-control" data-ng-model="item.rating_send"/>\n </div>\n <!-- END RATING START TEXT -->\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingSkip.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSkip.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSkip" placeholder="{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}" class="form-control" data-ng-model="item.rating_skip"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START HEADER OFFLINE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.headerOffline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_OFFLINE\' | translate}}</label>\n <input type="text" name="headerOffline" placeholder="{{\'APPLICATION_HEADER_OFFLINE\' | translate}}" class="form-control" data-ng-model="item.header_offline"/>\n </div>\n <!-- END HEADER OFFLINE -->\n\n <!-- START OFFLINE MESSAGE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.offlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="offlineMessage" placeholder="{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.offline_message"/>\n </div>\n <!-- END OFFLINE MESSAGE -->\n\n <!-- START ENQUIRY MESSAGE TITLE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessageTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessageTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}</label>\n <input type="text" name="enquiryMessageTitle" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}" class="form-control" data-ng-model="item.message_title"/>\n </div>\n <!-- END ENQUIRY MESSAGE TITLE -->\n\n <!-- START ENQUIRY MESSAGE PLACEHOLDER-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessagePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="enquiryMessagePlaceholder" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.enquiry_message_placeholder"/>\n </div>\n <!-- END ENQUIRY MESSAGE PLACEHOLDER -->\n\n <!-- START ENQUIRY BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryButton.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}</label>\n <input type="text" name="enquiryButton" placeholder="{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}" class="form-control" data-ng-model="item.enquiry_button"/>\n </div>\n <!-- END ENQUIRY BUTTON -->\n\n <!-- START AGENTS BUSY BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.agentsBusy.$touched || forms.formLabel.$submitted) && forms.formLabel.agentsBusy.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS_BUSY\' | translate}}</label>\n <input type="text" name="agentsBusy" placeholder="{{\'APPLICATION_AGENTS_BUSY\' | translate}}" class="form-control" data-ng-model="item.agents_busy"/>\n </div>\n <!-- END AGENTS BUSY BUTTON -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_FORMS\' | translate}}" canexit="exitValidation(forms.formAppearance.$valid)">\n <form name="forms.formFunctionality" novalidate>\n\n <!-- START DOWNLOAD TRANSCRIPT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formFunctionality.animationToggle.$touched || forms.formFunctionality.$submitted) && forms.formFunctionality.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_DOWNLOAD_TRANSCRIPT\' | translate}}</label>\n <ui-select data-ng-model="item.download_transcript" name="downloadTranscript" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="downloadTranscript in [true, false] | filter: $select.search">\n <div ng-bind-html="downloadTranscript ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DOWNLOAD TRANSCRIPT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_FAX_ACCOUNT\' | translate }}</h3>\n</div>\n<div class="modal-body" data-ng-init="initWizard();">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.name.$touched) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="form.name.$error.required && (form.$submitted || form.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.trunk.$touched) && form.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="form.trunk.$error.required && (form.$submitted || form.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.localstationid.$touched) && form.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="item.localstationid" required/>\n <span data-ng-show="form.localstationid.$error.required && (form.$submitted || form.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button type="button" class="btn green-jungle" data-toggle="dropdown" data-hover="dropdown" data-delay="1000" data-close-others="true" aria-expanded="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }} <i class="fa fa-angle-down"></i>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <a href="/channels/fax/accounts/wizard">\n {{ \'APPLICATION_STANDARD\' | translate }}\n </a>\n </li>\n <li>\n <a href="#" data-ng-click="createItem()">\n {{ \'APPLICATION_QUICK\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\r\n <div class="col-md-12">\r\n <div class="portlet light">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="/channels/fax/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'), +a.put("app/channels/fax/account/view/action/view/view.html",'\r\n<div class="row" data-ng-init="initAction()">\r\n <div class="col-md-12">\r\n <!-- BEGIN PORTLET-->\r\n <div class="portlet light bordered">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-directions font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\r\n <!-- START APP -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\r\n <div ng-bind-html="app.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END APP -->\r\n\r\n <!-- START HOST -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\r\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\r\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END HOST -->\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\r\n <!-- START QUEUE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.FaxQueueId" name="queue" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\r\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="queues.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END QUEUE -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\r\n <!-- START AGENT -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\r\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\r\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="agents.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END AGENT -->\r\n </div>\r\n\r\n <!-- START INTERVAL_TYPE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\r\n {{ intType.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVAL_TYPE -->\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\r\n <!-- START TIME -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\r\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\r\n </fieldset>\r\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\r\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\r\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\r\n </div>\r\n </div>\r\n <!-- END TIME -->\r\n\r\n <!-- START ALWAYS -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <label class="control-label pointer-cursor">\r\n <input\r\n bs-switch\r\n data-ng-model="application.alwaysTime"\r\n type="checkbox"\r\n switch-active="{{ isActive }}"\r\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\r\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\r\n switch-on-color="{{ onColor }}"\r\n switch-off-color="{{ offColor }}"\r\n switch-animate="{{ animate }}"\r\n switch-size="{{ size }}"\r\n switch-label="{{ label }}"\r\n switch-icon="{{ icon }}"\r\n switch-radio-off="{{ radioOff }}"\r\n switch-label-width="{{ labelWidth }}"\r\n switch-handle-width="{{ handleWidth }}">\r\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\r\n </label>\r\n </div>\r\n </div>\r\n <!-- END ALWAYS -->\r\n\r\n <!-- START WEEKDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END WEEKDAY -->\r\n\r\n <!-- START MONTHDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTHDAY -->\r\n\r\n <!-- START MONTH -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTH -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\r\n\r\n <!-- START INTERVALS -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\r\n {{ interval.name}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="intervals.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_INTERVALS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/intervals/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVALS -->\r\n\r\n </div>\r\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\r\n </form>\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/channels/fax/account/view/action/wizard/wizard.html",'\r\n<div class="row" data-ng-init="initWizard()">\r\n <div class="col-md-12">\r\n <!-- BEGIN PORTLET-->\r\n <div class="portlet light bordered">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-directions font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <wizard on-finish="createItem()">\r\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\r\n <form name="forms.action" novalidate>\r\n <!-- START APP -->\r\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\r\n <div ng-bind-html="app.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END APP -->\r\n\r\n <!-- START HOST -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\r\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\r\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END HOST -->\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\r\n <!-- START QUEUE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.FaxQueueId" name="queue" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\r\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="queues.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END QUEUE -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\r\n <!-- START AGENT -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\r\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\r\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="agents.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END AGENT -->\r\n </div>\r\n\r\n <!-- START INTERVAL_TYPE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\r\n {{ intType.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVAL_TYPE -->\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\r\n <!-- START TIME -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\r\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\r\n </fieldset>\r\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\r\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\r\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\r\n </div>\r\n </div>\r\n <!-- END TIME -->\r\n\r\n <!-- START ALWAYS -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <label class="control-label pointer-cursor">\r\n <input\r\n bs-switch\r\n data-ng-model="application.alwaysTime"\r\n type="checkbox"\r\n switch-active="{{ isActive }}"\r\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\r\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\r\n switch-on-color="{{ onColor }}"\r\n switch-off-color="{{ offColor }}"\r\n switch-animate="{{ animate }}"\r\n switch-size="{{ size }}"\r\n switch-label="{{ label }}"\r\n switch-icon="{{ icon }}"\r\n switch-radio-off="{{ radioOff }}"\r\n switch-label-width="{{ labelWidth }}"\r\n switch-handle-width="{{ handleWidth }}">\r\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\r\n </label>\r\n </div>\r\n </div>\r\n <!-- END ALWAYS -->\r\n\r\n <!-- START WEEKDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END WEEKDAY -->\r\n\r\n <!-- START MONTHDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTHDAY -->\r\n\r\n <!-- START MONTH -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTH -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\r\n\r\n <!-- START INTERVALS -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\r\n {{ interval.name}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="intervals.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_INTERVALS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/intervals/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVALS -->\r\n\r\n </div>\r\n\r\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\r\n </form>\r\n </wz-step>\r\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\r\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\r\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\r\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\r\n </wz-step>\r\n </wizard>\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/channels/fax/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <!-- <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" data-ng-pattern="/^[a-zA-Z0-9]*$/" required/> -->\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <!-- <span data-ng-show="form.form.$touched && form.form.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PATTERN\' | translate}}.\n </span> -->\n </div>\n <!-- <div class="help-block">\n {{\'MESSAGE_ALLOWED_NUMBERS_AND_LETTERS\' | translate}}\n </div> -->\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), +a.put("app/channels/fax/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/account/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateItemFaxAccount()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.name.$touched) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.general.name.$error.required && (forms.general.$submitted || forms.general.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HEADERINFO -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.headerinfo.$touched) && forms.general.headerinfo.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADERINFO\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="headerinfo" placeholder="{{\'APPLICATION_HEADERINFO\' | translate}}" class="form-control" data-ng-model="account.headerinfo" required/>\n <span data-ng-show="forms.general.headerinfo.$error.required && (forms.general.$submitted || forms.general.headerinfo.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_HEADERINFO\' | translate}}.\n </span>\n </div>\n <!-- END HEADERINFO -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.trunk.$touched) && forms.general.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.trunk.$error.required && (forms.general.$submitted || forms.general.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.localstationid.$touched) && forms.general.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="account.localstationid" required/>\n <span data-ng-show="forms.general.localstationid.$error.required && (forms.general.$submitted || forms.general.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="account.fidelity"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.timeout.$touched) && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid && forms.general.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid && forms.general.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateItemFaxAccount()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START ECM -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ECM\' | translate}}<span class="required" aria-required="true">*</span></label><br>\n <input\n bs-switch\n ng-model="account.ecm"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}"\n ng-true-value="\'yes\'"\n ng-false-value="\'no\'">\n <span class="help-block">\n {{\'DESCRIPTION_ECM\' | translate}}.\n </span>\n </div>\n <!-- END ECM -->\n\n <!-- START MINRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.minrate.$touched) && forms.advanced.minrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MINRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.minrate" name="minrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MINRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="minrate in rate | filter: $select.search">\n <div data-ng-bind="minrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MINRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.minrate.$error.required && (forms.advanced.$submitted || forms.advanced.minrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MINRATE -->\n\n <!-- START MAXRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.maxrate.$touched) && forms.advanced.maxrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.maxrate" name="maxrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MAXRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="maxrate in rate | filter: $select.search">\n <div data-ng-bind="maxrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MAXRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.maxrate.$error.required && (forms.advanced.$submitted || forms.advanced.maxrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MAXRATE -->\n\n <!-- START MODEM -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.modem.$touched) && forms.advanced.modem.$invalid}">\n <label class="control-label">{{\'APPLICATION_MODEM\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="modem" placeholder="{{\'APPLICATION_MODEM\' | translate}}" class="form-control" data-ng-model="account.modem" required/>\n <span class="help-block">\n {{\'DESCRIPTION_MODEM\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.modem.$error.required && (forms.advanced.$submitted || forms.advanced.modem.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MODEM -->\n </div>\n <div class="col-md-6">\n <!-- START GATEWAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.gateway.$touched) && forms.advanced.gateway.$invalid}">\n <label class="control-label">{{\'APPLICATION_GATEWAY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="gateway" placeholder="{{\'APPLICATION_GATEWAY\' | translate}}" class="form-control" data-ng-model="account.gateway" required data-ng-pattern="settings.patternGateway"/>\n <span class="help-block">\n {{\'DESCRIPTION_GATEWAY\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.gateway.$touched || forms.advanced.$submitted) && forms.advanced.gateway.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.gateway.$touched || forms.advanced.$submitted) && forms.advanced.gateway.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_GATEWAY\' | translate}}.\n </span>\n </div>\n <!-- END GATEWAY -->\n\n <!-- START FAXDETECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.faxdetect.$touched) && forms.advanced.faxdetect.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAXDETECT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="faxdetect" placeholder="{{\'APPLICATION_FAXDETECT\' | translate}}" class="form-control" data-ng-model="account.faxdetect" required data-ng-pattern="settings.patternFaxdetect"/>\n <span class="help-block">\n {{\'DESCRIPTION_FAXDETECT\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.faxdetect.$touched || forms.advanced.$submitted) && forms.advanced.faxdetect.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.faxdetect.$touched || forms.advanced.$submitted) && forms.advanced.faxdetect.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_FAXDETECT\' | translate}}.\n </span>\n </div>\n <!-- END FAXDETECT -->\n\n <!-- START T38TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.t38timeout.$touched) && forms.advanced.t38timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_T38TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="t38timeout" placeholder="{{\'APPLICATION_T38TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.t38timeout" required min="1000"/>\n <span class="help-block">\n {{\'DESCRIPTION_T38TIMEOUT\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.t38timeout.$touched || forms.advanced.$submitted) && forms.advanced.t38timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.t38timeout.$touched || forms.advanced.$submitted) && forms.advanced.t38timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_T38TIMEOUT\' | translate}}.\n </span>\n </div>\n <!-- END T38TIMEOUT -->\n\n <!-- START TECH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.tech.$touched) && forms.advanced.tech.$invalid}">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.tech" name="tech" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TECHNOLOGY\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="tech in techs | filter: $select.search">\n <div data-ng-bind="tech | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.advanced.tech.$touched || forms.advanced.$submitted) && forms.advanced.tech.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TECH -->\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.name || account.description }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.name || account.description }}\n </div>\n <div class="profile-usertitle-job">\n {{ account.phone }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.fax.accounts.view.settings\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.fax.accounts.view.dispositions\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.fax.accounts.view.actions\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.formGeneral.$valid)">\n <form name="forms.formGeneral" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.name.$touched) && forms.formGeneral.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formGeneral.name.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HEADERINFO -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.headerinfo.$touched) && forms.formGeneral.headerinfo.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADERINFO\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="headerinfo" placeholder="{{\'APPLICATION_HEADERINFO\' | translate}}" class="form-control" data-ng-model="item.headerinfo" required/>\n <span data-ng-show="forms.formGeneral.headerinfo.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.headerinfo.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_HEADERINFO\' | translate}}.\n </span>\n </div>\n <!-- END HEADERINFO -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.trunk.$touched) && forms.formGeneral.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.formGeneral.trunk.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.localstationid.$touched) && forms.formGeneral.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="item.localstationid" required/>\n <span data-ng-show="forms.formGeneral.localstationid.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_ADVANCED\' | translate}}" canexit="exitValidation(forms.formAdvanced.$valid)">\n <form name="forms.formAdvanced" novalidate>\n\n <!-- START ECM -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ECM\' | translate}}<span class="required" aria-required="true">*</span></label><br>\n <input\n bs-switch\n ng-model="item.ecm"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}"\n ng-true-value="\'yes\'"\n ng-false-value="\'no\'">\n <span class="help-block">\n {{\'DESCRIPTION_ECM\' | translate}}.\n </span>\n </div>\n <!-- END ECM -->\n\n <!-- START MINRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.minrate.$touched) && forms.formAdvanced.minrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MINRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.minrate" name="minrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MINRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="minrate in rate | filter: $select.search">\n <div data-ng-bind="minrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MINRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.minrate.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.minrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MINRATE -->\n\n <!-- START MAXRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.maxrate.$touched) && forms.formAdvanced.maxrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.maxrate" name="maxrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MAXRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="maxrate in rate | filter: $select.search">\n <div data-ng-bind="maxrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MAXRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.maxrate.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.maxrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MAXRATE -->\n\n <!-- START MODEM -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.modem.$touched) && forms.formAdvanced.modem.$invalid}">\n <label class="control-label">{{\'APPLICATION_MODEM\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="modem" placeholder="{{\'APPLICATION_MODEM\' | translate}}" class="form-control" data-ng-model="item.modem" required/>\n <span class="help-block">\n {{\'DESCRIPTION_MODEM\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.modem.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.modem.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MODEM -->\n\n <!-- START GATEWAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.gateway.$touched) && forms.formAdvanced.gateway.$invalid}">\n <label class="control-label">{{\'APPLICATION_GATEWAY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="gateway" placeholder="{{\'APPLICATION_GATEWAY\' | translate}}" class="form-control" data-ng-model="item.gateway" required data-ng-pattern="settings.patternGateway"/>\n <span class="help-block">\n {{\'DESCRIPTION_GATEWAY\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.gateway.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.gateway.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.gateway.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.gateway.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_GATEWAY\' | translate}}.\n </span>\n </div>\n <!-- END GATEWAY -->\n\n <!-- START FAXDETECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.faxdetect.$touched) && forms.formAdvanced.faxdetect.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAXDETECT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="faxdetect" placeholder="{{\'APPLICATION_FAXDETECT\' | translate}}" class="form-control" data-ng-model="item.faxdetect" required data-ng-pattern="settings.patternFaxdetect"/>\n <span class="help-block">\n {{\'DESCRIPTION_FAXDETECT\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.faxdetect.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.faxdetect.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.faxdetect.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.faxdetect.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_FAXDETECT\' | translate}}.\n </span>\n </div>\n <!-- END FAXDETECT -->\n\n <!-- START T38TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.t38timeout.$touched) && forms.formAdvanced.t38timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_T38TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="t38timeout" placeholder="{{\'APPLICATION_T38TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.t38timeout" required min="1000"/>\n <span class="help-block">\n {{\'DESCRIPTION_T38TIMEOUT\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.t38timeout.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.t38timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.t38timeout.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.t38timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_T38TIMEOUT\' | translate}}.\n </span>\n </div>\n <!-- END T38TIMEOUT -->\n\n <!-- START TECH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.tech.$touched) && forms.formAdvanced.tech.$invalid}">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.tech" name="tech" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TECHNOLOGY\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="tech in techs | filter: $select.search">\n <div data-ng-bind="tech | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.formAdvanced.tech.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.tech.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TECH -->\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/fax/inbox/message/message.directive.html",'<div class="message">\n <div class="row">\n <div class="col-md-6">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(message.from)">{{message.from}}</a>]\n <br>\n <span class="bold">To: </span>\n [<a href="" data-ng-click="openContact(message.to)">{{message.to}}</a>]\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-if="message.status!==\'RECEIVED\'" data-ng-switch="message.status" uib-tooltip="{{\'APPLICATION_PAGE_TRANSFERRED\' | translate}}: {{message.pagestransferred}} - {{\'APPLICATION_RETRY\' | translate}}: {{message.retry}}">\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe"> {{message.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe" data-ng-click="retry(message.id)"> {{message.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <span class="pull-right" data-ng-if="message.status===\'RECEIVED\'" uib-tooltip="{{\'APPLICATION_PAGE_TRANSFERRED\' | translate}}: {{message.pagestransferred}}">\n <a href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </span>\n <hr data-ng-if="message.FaxAttachments.length">\n <div data-ng-repeat="faxAttachment in message.FaxAttachments">\n <strong>{{faxAttachment.name}}</strong>\n <a target="_self" download="{{faxAttachment.name}}" href="api/fax/attachments/{{faxAttachment.id}}">\n <i class="icon-cloud-download"></i>\n </a>\n </div>\n</div>\n'),a.put("app/channels/fax/inbox/note/note.directive.html",'<div class="note">\n <div class="row">\n <div class="col-md-6">\n <a type="button" name="button" data-ng-if="::(Auth.getCurrentUser().id == message.UserId)" data-ng-click="deleteNote()">\n <i class="fa fa-trash-o" style="color: red;"></i>\n </a>\n\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_ADD_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <hr>\n <span class="body text-left" data-ng-bind-html="message.text" style="white-space: pre-wrap;"></span>\n</div>\n'),a.put("app/channels/fax/inbox/note/note.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_NOTES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <div class="form-group">\n <textarea data-ng-model="item.text" name="text" rows="10" style="resize: none; width: 100%;"></textarea>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button class="btn btn-sm btn-default green-meadow" data-ng-disabled="faxRoom.status == \'CLOSED\' || !uploader.queue.length" data-ng-click="sendFax()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-if="faxRoom" class="label label-default"> #{{faxRoom.id}} {{faxRoom.status}}</span>\n <span data-ng-if="faxRoom"> | </span>\n <span data-ng-if="faxRoom" class="caption-subject font-green-sharp bold">{{faxRoom.from}}</span>\n </div>\n <div class="actions" data-ng-switch="faxRoom.status">\n <button class="btn btn-icon-only yellow" data-ng-if="faxRoom" data-ng-click="loadNote()" data-ng-disabled="faxRoom.status == \'CLOSED\'" title="{{\'APPLICATION_NOTES\' | translate}}">\n <i class="fa fa-sticky-note"></i>\n </button>\n <button href="#" class="btn btn-icon-only btn-primary" data-ng-if="faxRoom" data-ng-click="loadAgents();" data-ng-disabled="faxRoom.status == \'CLOSED\'" title="{{\'APPLICATION_AGENTS\' | translate}}">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="file-upload" data-ng-disabled="faxRoom.status == \'CLOSED\'">\n <i class="fa fa-paperclip"></i> <input type="file" data-ng-if="uploader" data-ng-disabled="faxRoom.status == \'CLOSED\'" nv-file-select uploader="uploader" multiple class="file-input" title="{{\'APPLICATION_ATTACHMENTS\' | translate}}">\n </button>\n <!-- UPDATE SECTION START -->\n <button data-ng-class="faxRoom.status == \'CLOSED\' ? \'grey-cascade\' : \'btn-success\'" class="btn btn-icon-only" data-ng-disabled="faxRoom.status == \'CLOSED\' && faxRoom.disposition" data-ng-if="faxRoom" data-ng-click="closeRoom()" title="{{\'APPLICATION_STATUS\' | translate}}">\n <i data-ng-class="faxRoom.status == \'CLOSED\' ? \'icon-target\' : \'fa fa-upload\'"></i>\n </button>\n <!-- UPDATE SECTION END -->\n <button class="btn default btn-icon-only" data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-show="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)" data-ng-disabled="faxRoom.status == \'CLOSED\'">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n\n <hr data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'">\n\n <!-- END TAGS -->\n\n <div id="mail-box">\n <ul class="chats">\n <li\n data-ng-switch="faxMessage.status"\n data-ng-class="{\'in\': faxMessage.status == \'RECEIVED\', \'out\': faxMessage.status == \'SENT\' || faxMessage.status == \'SENDING\' || faxMessage.status == \'FAILED\' || faxMessage.status == \'NOTE\'}"\n data-ng-repeat="faxMessage in faxRoom.FaxMessages | orderBy:\'-createdAt\'">\n <div class="avatar" data-ng-class="faxMessage.UserId ? \'pretty-avatar\' : \'pretty-avatar-v\'">\n <ng-letter-avatar\n data-ng-if="faxMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{faxMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!faxMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{faxMessage.from}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <fax-note message="faxMessage" ng-switch-when="NOTE"></fax-note>\n <fax-message message="faxMessage" list-id="faxRoom.FaxAccount.ListId" ng-switch-default></fax-message>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="faxRoom && faxRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_FAX_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_FAX_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="sendFax()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-model="form.from" theme="bootstrap" name="from" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="faxAccount.localstationid as faxAccount in faxAccounts | filter: $select.search">\n <div data-ng-bind-html="faxAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="faxAccount.localstationid | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.compose.from.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n\n <!-- START TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="to" class="form-control" placeholder="To..." data-ng-model="form.to" required>\n <span data-ng-show="forms.compose.to.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n\n <!-- START ATTACH -->\n <div class="form-group" data-ng-if="uploader && (faxRoom.status !== \'CLOSED\')">\n <div class="col-md-12">\n <hr ng-if="uploader.queue.length">\n <table class="table">\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td style="border-top:none"><strong>{{ item.file.name | truncate: 5: \'...\': true}}</strong></td>\n <td style="border-top:none" ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td style="border-top:none" ng-show="uploader.isHTML5">\n <div class="progress" style="margin-bottom: 0;">\n <div class="progress-bar" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td style="border-top-style:none" class="text-center">\n <span ng-show="item.isSuccess"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError"><i class="glyphicon glyphicon-remove"></i></span>\n </td>\n <td style="border-top-style:none" nowrap>\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n <div>\n </div>\n </div>\n </div>\n <!-- END ATTACH -->\n\n <!-- <div class="form-group">\n <div class="col-md-12">\n <div class="form-actions right todo-form-actions" style="border-top: none;">\n <input type="submit" value="{{ \'APPLICATION_SEND\' | translate }}" class="btn btn-sm green-meadow" data-ng-disabled="form.disabled || !uploader.queue.length" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <input type="button" value="{{ \'APPLICATION_CANCEL\' | translate }}"class="btn btn-sm btn-default" data-ng-click="cancel()" data-ng-if="faxRoom.status !== \'CLOSED\'">\n </div>\n </div>\n </div> -->\n\n </div>\n </form>\n </div>\n </div>\n</div>\n</div>\n</div>\n<!-- END TODO CONTENT -->\n'),a.put("app/channels/fax/inbox/status/status.modal.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 data-ng-if="modal.title" data-ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="disposition" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-if="dispositions.length < 1">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\r\n<div class="portlet light" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption">\r\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\r\n </div>\r\n </div>\r\n <div class="actions">\r\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\r\n <i class="fa fa-refresh"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\r\n <i class="fa fa-trash"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\r\n <i class="fa fa-tags"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\r\n <i class="fa fa-plus"></i>\r\n </a>\r\n </div>\r\n </div>\r\n <div class="portlet-title" data-ng-show="tags.length">\r\n <!-- START TAGS -->\r\n <div class="form-group">\r\n <div class="row">\r\n <div class="col-md-1">\r\n <a href="#" class="btn btn-icon-only">\r\n <i class="fa fa-tags" style="color: gray;"></i>\r\n </a>\r\n </div>\r\n <div class="col-md-11">\r\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\r\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\r\n <ui-select-choices repeat="tag in tags | filter:$select.search">\r\n {{tag}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END TAGS -->\r\n </div>\r\n <div class="portlet-body">\r\n <!-- BEGIN UI-GRID SPINNER -->\r\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\r\n <!-- END UI-GRID SPINNER -->\r\n\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid-inbox">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n</div>\r\n<!-- END Portlet PORTLET-->\r\n'),a.put("app/channels/fax/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="agents">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_AGENTS\' | translate}}</a>\n </p>\n </div>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/view/view.html",'<div class="row">\r\n <div class="col-md-12">\r\n <div class="page-bar">\r\n <ul class="page-breadcrumb">\r\n <li>\r\n <i class="icon-rocket"></i>\r\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-directions"></i>\r\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-paper-plane"></i>\r\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-note"></i>\r\n <a href="#">{{ \'APPLICATION_INBOX\' | translate }}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<!-- BEGIN PAGE CONTENT-->\r\n<div class="row inbox">\r\n <div class="col-md-3">\r\n <ul class="inbox-nav margin-bottom-10">\r\n <li data-ng-class="{active: $stateParams.id == faxAccount.id}" data-ng-repeat="faxAccount in faxAccounts">\r\n <a href="/channels/fax/inbox/view/account/{{faxAccount.id}}/list" class="btn">\r\n <i class="icon-notebook"></i> {{faxAccount.name}}\r\n </a>\r\n <b></b>\r\n </li>\r\n </ul>\r\n <div class="note note-warning" data-ng-hide="faxAccounts.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AVAILABLE_ACCOUNTS\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/accounts/list">{{\'APPLICATION_ACCOUNTS\' | translate}}</a>\r\n </p>\r\n </div>\r\n </div>\r\n\r\n <div class="col-md-9" data-ng-init="initView()">\r\n <!-- BEGIN PROFILE CONTENT -->\r\n <div class="room-content">\r\n <div ui-view>\r\n <div class="note note-info">\r\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END PROFILE CONTENT -->\r\n </div>\r\n</div>\r\n'),a.put("app/channels/fax/inbox/view/view.status.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ modal.title | translate }}</h3>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text" data-ng-bind="modal.text"></p>\n <div data-ng-if="modal.html" data-ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button data-ng-repeat="button in modal.buttons"\n data-ng-class="button.classes"\n data-ng-click="button.click($event)"\n data-ng-bind="button.text | translate" class="btn"></button>\n</div>\n'),a.put("app/channels/fax/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/fax/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HEADER SHAPE -->\n\n\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/fax/queues/lis">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/fax/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.fax.queues.view.settings\')}">\n <a data-ng-href="/channels/fax/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.fax.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/fax/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/fax/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateFaxQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}</label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.fax.realtime.view.agents\')}">\n <a href="/channels/fax/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.fax.realtime.view.applications\')}">\n <a href="/channels/fax/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="#">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/mail/accounts/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/mail/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.MailQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.MailQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/mail/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <!-- <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" data-ng-pattern="/^[a-zA-Z0-9]*$/" required/> -->\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <!-- <span data-ng-show="form.form.$touched && form.form.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PATTERN\' | translate}}.\n </span> -->\n </div>\n <!-- <div class="help-block">\n {{\'MESSAGE_ALLOWED_NUMBERS_AND_LETTERS\' | translate}}\n </div> -->\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_MAIL_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">IMAP</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">SMTP</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemMailAccount()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.address" required/>\n <span data-ng-show="(forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid && forms.info.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n <!-- START TEMPLATE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TEMPLATE\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.TemplateId" name="template" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TEMPLATE\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.TemplateId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END TEMPLATE -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="account.fidelity"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n <!-- IMAP TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="note note-danger" data-ng-show="account.MailServerIn.state === \'DISCONNECTED\' || account.MailServerIn.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="account.MailServerIn.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="account.MailServerIn.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="account.MailServerIn.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n\n <form name="forms.formIn" data-ng-submit="forms.formIn.$valid && updateItemMailServerIn()" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.host.$touched || forms.formIn.$submitted) && forms.formIn.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.host" required/>\n <span data-ng-show="(forms.formIn.host.$touched || forms.formIn.$submitted) && forms.formIn.host.$invalid && forms.formIn.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.username.$touched || forms.formIn.$submitted) && forms.formIn.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.username" required/>\n <span data-ng-show="(forms.formIn.username.$touched || forms.formIn.$submitted) && forms.formIn.username.$invalid && forms.formIn.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.password.$touched || forms.formIn.$submitted) && forms.formIn.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.password" required/>\n <span data-ng-show="(forms.formIn.password.$touched || forms.formIn.$submitted) && forms.formIn.password.$invalid && forms.formIn.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.port" required/>\n <span data-ng-show="(forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid && forms.formIn.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid && forms.formIn.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START MAILBOX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}</label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.mailbox"/>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START SEARCH FILTER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEARCH_FILTER\' | translate}}</label>\n <ui-select data-ng-model="account.MailServerIn.filter" name="filter" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="filter in [\'UNSEEN\'] | filter: $select.search">\n <div ng-bind-html="filter | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- START SEARCH FILTER -->\n\n <!-- START connTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="connTimeout" placeholder="{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.connTimeout" required/>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END connTimeout -->\n\n <!-- START authTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="authTimeout" placeholder="{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.authTimeout" required/>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END authTimeout -->\n\n <!-- START DELETE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DELETE_MAIL_FROM_SERVER\' | translate}}</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.delete"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END DELETE -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <!-- START Keepalive -->\n <div class="form-group">\n <label class="control-label">Keepalive</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.keepalive"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END Keepalive -->\n\n <input data-ng-disabled="imapDisabled" class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END IMAP TAB -->\n\n <!-- SMTP TAB -->\n <div class="tab-pane" id="tab_1_3">\n\n <div class="note note-danger" data-ng-show="account.MailServerOut.state === \'DISCONNECTED\' || account.MailServerOut.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="account.MailServerOut.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="account.MailServerOut.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="account.MailServerOut.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n\n <form name="forms.formOut" data-ng-submit="forms.formOut.$valid && updateItemMailServerOut()" novalidate>\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.host.$touched || forms.formOut.$submitted) && forms.formOut.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.host" required/>\n <span data-ng-show="(forms.formOut.host.$touched || forms.formOut.$submitted) && forms.formOut.host.$invalid && forms.formOut.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.username.$touched || forms.formOut.$submitted) && forms.formOut.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.username" required/>\n <span data-ng-show="(forms.formOut.username.$touched || forms.formOut.$submitted) && forms.formOut.username.$invalid && forms.formOut.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.password.$touched || forms.formOut.$submitted) && forms.formOut.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.password" required/>\n <span data-ng-show="(forms.formOut.password.$touched || forms.formOut.$submitted) && forms.formOut.password.$invalid && forms.formOut.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.port.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.port" required/>\n <span data-ng-show="(forms.formOut.form.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid && forms.formOut.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formOut.form.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid && forms.formOut.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerOut.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <input data-ng-disabled="smtpDisabled" class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n <input data-ng-disabled="smtpDisabled" class="btn blue-madison" type="button" value="Test" data-ng-click="test()"/>\n </form>\n </div>\n <!-- END SMTP TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/mail/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.description || account.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar" data-ng-init="initView()">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.description || account.name }}\n </div>\n <div class="profile-usertitle-job">\n {{account.email}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-class="{active: $state.is(\'main.channels.mail.accounts.view.settings\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.mail.accounts.view.dispositions\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.mail.accounts.view.actions\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n<!-- END PAGE CONTENT-->\n</div>\n'),a.put("app/channels/mail/account/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/mail/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required/>\n <span data-ng-show="(forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid && forms.info.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="IMAP" canexit="formValidation(forms.in.$valid)">\n <form name="forms.in" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.host.$touched || forms.in.$submitted) && forms.in.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_INCOMING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.host" required/>\n <span data-ng-show="(forms.in.host.$touched || forms.in.$submitted) && forms.in.host.$invalid && forms.in.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.username.$touched || forms.in.$submitted) && forms.in.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.username" name="username" required/>\n <span data-ng-show="(forms.in.username.$touched || forms.in.$submitted) && forms.in.username.$invalid && forms.in.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.password.$touched || forms.in.$submitted) && forms.in.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.password" required/>\n <span data-ng-show="(forms.in.password.$touched || forms.in.$submitted) && forms.in.password.$invalid && forms.in.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.port" required/>\n <span data-ng-show="(forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid && forms.in.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid && forms.in.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START MAILBOX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}</label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.mailbox"/>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START SEARCH FILTER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEARCH_FILTER\' | translate}}</label>\n <ui-select data-ng-model="item.MailServerIn.filter" name="filter" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="filter in [\'UNSEEN\'] | filter: $select.search">\n <div data-ng-bind="filter | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- START SEARCH FILTER -->\n\n <!-- START connTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="connTimeout" placeholder="{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.connTimeout" required/>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END connTimeout -->\n\n <!-- START authTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="authTimeout" placeholder="{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.authTimeout" required/>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END authTimeout -->\n\n <!-- START DELETE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DELETE_MAIL_FROM_SERVER\' | translate}}</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.delete"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END DELETE -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <!-- START Keepalive -->\n <div class="form-group">\n <label class="control-label">Keepalive</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.keepalive"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END Keepalive -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="SMTP" canexit="formValidation(forms.out.$valid)">\n <form name="forms.out" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.host.$touched || forms.out.$submitted) && forms.out.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTGOING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.host" required/>\n <span data-ng-show="(forms.out.host.$touched || forms.out.$submitted) && forms.out.host.$invalid && forms.out.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.username.$touched || forms.out.$submitted) && forms.out.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.username" required/>\n <span data-ng-show="(forms.out.username.$touched || forms.out.$submitted) && forms.out.username.$invalid && forms.out.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.password.$touched || forms.out.$submitted) && forms.out.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.password" required/>\n <span data-ng-show="(forms.out.password.$touched || forms.out.$submitted) && forms.out.password.$invalid && forms.out.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.port.$touched || forms.out.$submitted) && forms.out.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.port" required/>\n <span data-ng-show="(out.$touched || forms.out.$submitted) && forms.out.port.$invalid && forms.out.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(out.$touched || forms.out.$submitted) && forms.out.port.$invalid && forms.out.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerOut.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="goNext()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/mail/inbox/message/message.directive.html",'<div class="message">\n <div class="row">\n <div class="col-md-8">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(message.from[0])">{{message.from[0]}}</a>]\n <br>\n <span class="bold">To: </span>\n <p style="word-wrap:break-word;">[<span data-ng-repeat="to in message.to">"<a href="" data-ng-click="openContact(to)">{{to}}</a>"<span data-ng-hide="$last">,</span></span>]</p>\n <br>\n <span data-ng-if="message.cc.length" class="bold">Cc: </span>\n <p style="word-wrap:break-word;" data-ng-if="message.cc.length">[<span data-ng-repeat="cc in message.cc">"<a href="" data-ng-click="openContact(cc)">{{cc}}</a>"<span data-ng-hide="$last">,</span></span>]</p>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-if="message.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-switch="message.status" data-ng-if="message.status!==\'RECEIVED\'" uib-tooltip="{{\'APPLICATION_RETRY\' | translate}}: {{message.retry}}">\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe"> {{message.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe" data-ng-click="retry(message.id)"> {{message.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n </span>\n <span class="pull-right" data-ng-if="message.status===\'RECEIVED\'">\n <a href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </span>\n <hr>\n <div class="body text-left message-body" data-ng-bind="message.text"></div>\n <h5 data-ng-hide="message.text" class="media-heading"><i>{{\'MESSAGE_NO_AVAILABLE_TEXT\' | translate | lowercase}}</i></h5>\n <hr data-ng-if="message.MailAttachments.length">\n <div data-ng-repeat="mailAttachment in message.MailAttachments">\n <strong>{{mailAttachment.name}}</strong>\n <span>\n ({{mailAttachment.size | prettyBytes}})\n </span>\n <a target="_self" download="{{mailAttachment.name}}" href="api/mail/attachments/{{mailAttachment.id}}">\n <i class="icon-cloud-download"></i>\n </a>\n <a ng-if="::(mailAttachment.type.indexOf(\'image\') > -1)" ng-click="openPreview(mailAttachment.id)">\n <i class="icon-picture"></i>\n </a>\n </div>\n</div>\n'),a.put("app/channels/mail/inbox/note/note.directive.html",'<div class="note">\n <div class="row">\n <div class="col-md-6">\n <a type="button" name="button" data-ng-if="::(Auth.getCurrentUser().id == message.UserId)" data-ng-click="deleteNote()">\n <i class="fa fa-trash-o" style="color: red;"></i>\n </a>\n\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_ADD_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <hr>\n <span class="body text-left" data-ng-bind-html="message.text" style="white-space: pre-wrap;"></span>\n</div>\n'),a.put("app/channels/mail/inbox/note/note.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_NOTES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <div class="form-group">\n <textarea data-ng-model="item.text" name="text" rows="10" style="resize: none; width: 100%;"></textarea>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button class="btn btn-sm btn-default green-meadow" data-ng-if="form.html && mailRoom.status !== \'CLOSED\'" data-ng-click="sendMail()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-if="mailRoom && form.html && mailRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-if="mailRoom" class="label label-default"> #{{mailRoom.id}} {{mailRoom.status}}</span>\n <span data-ng-if="mailRoom"> | </span>\n <span data-ng-if="mailRoom && mailRoom.ParentId" class="label label-warning"> Ref: <a data-ng-click="openRoom(mailRoom.ParentId)">#{{mailRoom.ParentId}}</a></span>\n <span data-ng-if="mailRoom && mailRoom.ParentId"> | </span>\n <span data-ng-if="mailRoom" class="caption-subject font-green-sharp bold uppercase">{{mailRoom.subject || \'No subject\' | truncate: 25: \'...\': true}}</span>\n </div>\n <div class="actions">\n <button class="btn btn-icon-only yellow" data-ng-if="mailRoom" data-ng-click="loadNote()" data-ng-disabled="mailRoom.status == \'CLOSED\'" title="{{\'APPLICATION_NOTES\' | translate}}">\n <i class="fa fa-sticky-note"></i>\n </button>\n <button class="btn btn-icon-only btn-primary" data-ng-if="mailRoom" data-ng-click="loadAgents();" data-ng-disabled="mailRoom.status == \'CLOSED\'" title="{{\'APPLICATION_AGENTS\' | translate}}">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="file-upload" data-ng-disabled="mailRoom.status == \'CLOSED\'">\n <i class="fa fa-paperclip"></i> <input type="file" data-ng-if="uploader" data-ng-disabled="mailRoom.status == \'CLOSED\'" nv-file-select uploader="uploader" multiple class="file-input" title="{{\'APPLICATION_ATTACHMENTS\' | translate}}">\n </button>\n <!-- UPDATE SECTION START -->\n <button data-ng-class="mailRoom.status == \'CLOSED\' ? \'grey-cascade\' : \'btn-success\'" class="btn btn-icon-only" data-ng-disabled="mailRoom.status == \'CLOSED\' && mailRoom.disposition" data-ng-if="mailRoom" data-ng-click="closeRoom()" title="{{\'APPLICATION_STATUS\' | translate}}">\n <i data-ng-class="mailRoom.status == \'CLOSED\' ? \'icon-target\' : \'fa fa-upload\'"></i>\n </button>\n <!-- UPDATE SECTION END -->\n <button class="btn default btn-icon-only" data-ng-if="mailRoom && mailRoom.status !== \'CLOSED\'" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-if="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)" data-ng-disabled="mailRoom.status == \'CLOSED\'">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n\n <hr data-ng-if="mailRoom && mailRoom.status !== \'CLOSED\'">\n\n <!-- END TAGS -->\n <div id="mail-box">\n <ul class="chats">\n <li\n data-ng-switch="mailMessage.status"\n data-ng-class="{\'in\': mailMessage.status == \'RECEIVED\', \'out\': mailMessage.status == \'SENT\' || mailMessage.status == \'SENDING\' || mailMessage.status == \'FAILED\' || mailMessage.status == \'NOTE\'}"\n data-ng-repeat="mailMessage in mailRoom.MailMessages | orderBy:\'-createdAt\'">\n <div class="avatar" data-ng-class="message.UserId ? \'pretty-avatar\' : \'pretty-avatar-v\'">\n <ng-letter-avatar\n data-ng-if="mailMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{mailMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!mailMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{mailMessage.from[0]}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <mail-note message="mailMessage" ng-switch-when="NOTE"></mail-note>\n <mail-message message="mailMessage" list-id="mailRoom.MailAccount.ListId" ng-switch-default></mail-message>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="mailRoom && mailRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_MAIL_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_MAIL_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="sendMail()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-model="form.from[0]" theme="bootstrap" name="from" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="mailAccount.address as mailAccount in mailAccounts | filter: $select.search">\n <div data-ng-bind-html="mailAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="mailAccount.address | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-if="forms.compose.from.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n\n <!-- MAIL TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <ui-select tagging tagging-label multiple data-ng-model="form.sto" theme="bootstrap" name="to">\n <ui-select-match placeholder="To...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="to in form.to | filter:$select.search">\n {{to}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-if="forms.compose.to.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n\n <!-- START CC -->\n <div class="form-group" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">Cc:</label>\n </div>\n <div class="col-md-11">\n <ui-select tagging tagging-label multiple data-ng-model="form.scc" theme="bootstrap" name="cc">\n <ui-select-match placeholder="Cc...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="cc in form.cc | filter:$select.search">\n {{cc}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n </div>\n <!-- END CC -->\n\n <!-- START SUBJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">Subj:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="Subject..." rows="8" data-ng-model="form.subject">\n <span data-ng-if="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START ATTACH -->\n <div class="form-group" data-ng-if="uploader && (mailRoom.status !== \'CLOSED\')">\n <div class="col-md-12">\n <hr ng-if="uploader.queue.length">\n <table class="table">\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td style="border-top:none" rowspan="{{uploader.queue.length}}" ng-if="(!$index)">\n {{\'APPLICATION_ATTACHMENTS\' | translate}}:\n </td>\n <td style="border-top:none"><strong>{{ item.file.name }}</strong></td>\n <td style="border-top:none" ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td style="border-top:none" ng-show="uploader.isHTML5">\n <div class="progress" style="margin-bottom: 0;">\n <div class="progress-bar" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td style="border-top-style:none" class="text-center">\n <span ng-show="item.isSuccess"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError"><i class="glyphicon glyphicon-remove"></i></span>\n </td>\n <td style="border-top-style:none" nowrap>\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n <div>\n </div>\n </div>\n </div>\n <!-- END ATTACH -->\n\n <!-- START HTML -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.text.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12"\n <div ckeditor="options" ng-model="form.html"></div>\n <!-- <ng-ckeditor bind="form.html" skin="kama" remove-buttons="Image" remove-plugins="iframe,flash,smiley"></ng-ckeditor> -->\n <span data-ng-if="forms.compose.text.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n <!-- START CANNED -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelectAnswer($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <span data-ng-if="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <!-- END CANNED -->\n\n </div>\n </form>\n </div>\n </div>\n</div>\n</div>\n</div>\n<!-- END TODO CONTENT -->\n"),a.put("app/channels/mail/inbox/status/status.modal.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 data-ng-if="modal.title" data-ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="disposition" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-if="dispositions.length < 1">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\n<div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\n <i class="fa fa-trash"></i>\n </a>\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END Portlet PORTLET-->\n'),a.put("app/channels/mail/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-note"></i>\n <a href="#">{{ \'APPLICATION_INBOX\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row inbox">\n <div class="col-md-3">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $stateParams.id == mailAccount.id}" data-ng-repeat="mailAccount in mailAccounts">\n <a href="/channels/mail/inbox/view/account/{{mailAccount.id}}/list" class="btn">\n <i class="icon-notebook"></i> {{mailAccount.name}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-9" data-ng-init="initView()">\n <!-- BEGIN PROFILE CONTENT -->\n <div class="room-content">\n <div ui-view>\n <div class="note note-info">\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\n </div>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n\n</div>\n'),a.put("app/channels/mail/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/mail/inbox/view/view.templates.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TEMPLATES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="note note-info" data-ng-show="!templates.length">\n <h4 class="block">Info!</h4>\n <p>\n {{\'MESSAGE_NO_TEMPLATES_AVAILABLE\' | translate}}\n </p>\n </div>\n <form name="form" data-ng-show="templates.length" novalidate>\n <div class="form-group">\n <ui-select data-ng-model="item.template" theme="bootstrap">\n <ui-select-match placeholder="Select a template in the list or search his name...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template in templates | propsFilter: {name: $select.search}">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n <small data-ng-show="template.description">\n {{\'APPLICATION_DESCRIPTION\' | translate}}: {{template.description}}\n </small>\n </ui-select-choices>\n </ui-select>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="templates.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/mail/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/mail/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.mail.queues.view.settings\')}">\n <a data-ng-href="/channels/mail/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.mail.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/mail/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateMailQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">Agent Timeout</label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.mail.realtime.view.agents\')}">\n <a href="/channels/mail/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.mail.realtime.view.applications\')}">\n <a href="/channels/mail/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/view.queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div id="grid1" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-tree-view class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/channels/realtime/view/agents">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.realtime.view.agents\')}">\n <a href="/channels/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/sms/accounts/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/view/action/list/list.html",'<div class="row" data-ng-init="initActions()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/sms/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/account/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.SmsQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/sms/account/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.SmsQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_SMS_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.description || account.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.description || account.name }}\n </div>\n <div class="profile-usertitle-job">\n {{account.email}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-class="{active: $state.is(\'main.channels.sms.accounts.view.settings\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.sms.accounts.view.dispositions\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.sms.accounts.view.actions\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n<!-- END PAGE CONTENT-->\n</div>\n'),a.put("app/channels/sms/account/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemSmsAccount()" novalidate>\n <!-- START ID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_ID\' | translate}}<span class="required" aria-required="true">*</span>\n </label>\n <input type="text" name="id" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.id" ng-disabled="true" required/>\n </div>\n <!-- END ID-->\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="account.fidelity"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START PHONE FOR TWILLIO ACCOUNT -->\n\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="account.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.in.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE FOR TWILLIO ACCOUNT -->\n\n <!-- START SID -->\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="sid" placeholder="{{\'APPLICATION_SID\' | translate}}" class="form-control" data-ng-model="account.sid" name="sid" required/>\n <span data-ng-show="(forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid && forms.info.sid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n <!-- START TOKEN -->\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid}">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="account.token" name="token" required/>\n <span data-ng-show="(forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid && forms.info.token.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n\n <!-- START SMS TYPE -->\n\n <div ng-if= " account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.smstype" name="smstype" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'SMS_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="smstype in [\'basic\',\'classic\',\'classic+\'] | filter: $select.search">\n <div data-ng-bind="smstype | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid && forms.info.smstype.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR SKEBBY ACCOUNT -->\n <div ng-if= "account.type == \'skebby\' " class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="account.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.in.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n <!-- START USERNAME -->\n <div ng-if= "account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" name="username" required/>\n <span data-ng-show="(forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid && forms.info.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div ng-if= "account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n <!-- START REMOTE IP -->\n <div ng-if= "account.type == \'twilio\' || account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remote" required/>\n <span data-ng-show="(forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid && forms.info.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n <!-- START CALLBACK URL -->\n <div ng-if= "account.type == \'twilio\' || account.type == \'skebby\'" ng-show="!forms.info.remote.$invalid" class="form-group" >\n\n <label class="control-label">URL </label><br>\n Copy the following url and insert it into your {{account.type}} account settings to receive sms.\n <a href="https://wiki.xcallymotion.com/display/XMD/SMS" target="_blank">Detail.</a>\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard(receiveurl);">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n <br><br>\n <code-mirror model="receiveurl"></code-mirror>\n\n </div>\n <!-- END CALLACK URL -->\n <!-- START DELIVERY CALLBACK URL -->\n <div ng-if= "account.smstype == \'classic+\'" class="form-group" ng-show="!forms.info.remote.$invalid">\n\n <label class="control-label">Delivery URL </label><br>\n Copy the following url and insert it into your {{account.type}} account settings to receive delivery status.\n <a href="https://wiki.xcallymotion.com/display/XMD/SMS" target="_blank">Detail</a>\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard(deliveryurl);">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n <br><br>\n\n <code-mirror model="deliveryurl"></code-mirror>\n\n </div>\n <!-- END DELIVERY CALLACK URL -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/sms/account/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <!-- START APPLICATION TYPE -->\n\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.type.$touched || forms.info.$submitted) && forms.info.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="type in [\'twilio\',\'skebby\'] | filter: $select.search">\n <div data-ng-bind="type | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.type.$touched || forms.info.$submitted) && forms.info.type.$invalid && forms.info.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR TWILLIO ACCOUNT -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" name="phone" required/>\n <span></span>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.info.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE FOR TWILLIO ACCOUNT -->\n <!-- START SID -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.sid.$touched ||forms.info.$submitted) && forms.info.sid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" placeholder="{{\'APPLICATION_SID\' | translate}}" class="form-control" data-ng-model="item.sid" name="sid" required/>\n <span data-ng-show="(forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid && forms.info.sid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n <!-- START TOKEN -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid}">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="item.token" name="token" required/>\n <span data-ng-show="(forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid && forms.info.token.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n\n <!-- START SMS TYPE -->\n\n <div ng-if= " item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.smstype" name="smstype" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'SMS_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="smstype in [\'basic\',\'classic\',\'classic+\'] | filter: $select.search">\n <div data-ng-bind="smstype | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid && forms.info.smstype.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR SKEBBY ACCOUNT -->\n <div ng-if= "item.type == \'skebby\' " class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.info.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n\n\n\n </div>\n <!-- END PHONE -->\n <!-- START USERNAME -->\n <div ng-if= "item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" name="username" required/>\n <span data-ng-show="(forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid && forms.info.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n <!-- START PASSWORD -->\n <div ng-if= "item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n <!-- START REMOTE IP -->\n <div ng-if= "item.type == \'twilio\' || item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remote" required/>\n <span data-ng-show="(forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid && forms.info.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <!-- <button type="button" data-ng-click="togglePanelLeft()" style="background: white;">\n <i class="icon-menu"></i>\n </button> -->\n <!-- <input type="submit" value="{{ \'APPLICATION_SEND\' | translate }}" class="btn btn-sm green-meadow" data-ng-disabled="SmsRoom.status === \'CLOSED\'" > -->\n <!-- <button class="btn btn-sm btn-default green-meadow" data-ng-disabled="!(form.body) || SmsRoom.status == \'CLOSED\'" data-ng-click="sendSMS()"> -->\n <button class="btn btn-sm btn-default green-meadow" data-ng-if="SmsRoom.status !== \'CLOSED\'" data-ng-disabled="!form.body || forms.compose.from.$invalid || forms.compose.to.$invalid" data-ng-click="sendSMS()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-show="SmsRoom && SmsRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-show="SmsRoom" class="label label-default">#{{SmsRoom.id}} {{SmsRoom.status}}</span>\n <!-- <span data-ng-show="SmsRoom"> | </span> -->\n </div>\n <div class="actions" data-ng-switch="SmsRoom.status">\n <button class="btn btn-icon-only btn-primary" data-ng-show="SmsRoom" data-ng-click="loadAgents();" data-ng-disabled="SmsRoom.status === \'CLOSED\'">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="btn btn-icon-only" data-ng-show="SmsRoom" data-ng-class="{\'btn-success\':SmsRoom.status !== \'CLOSED\',\'grey-cascade\':SmsRoom.status === \'CLOSED\'}" data-ng-click="closeRoom(SmsRoom.id)" data-ng-disabled="SmsRoom.status === \'CLOSED\' && SmsRoom.disposition">\n <i data-ng-class="{\'fa fa-upload\':SmsRoom.status !== \'CLOSED\',\'icon-target\':SmsRoom.status === \'CLOSED\'}"></i>\n </button>\n <button class="btn default btn-icon-only" data-ng-if="SmsRoom && SmsRoom.status !== \'CLOSED\'" type="button" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-show="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <!-- <div class="form-group" > -->\n <div class="form-group" data-ng-if="SmsRoom.status !== \'CLOSED\' || (SmsRoom.status == \'CLOSED\' && form.tags.length)">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-disabled="SmsRoom.status == \'CLOSED\'" multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <hr data-ng-if="SmsRoom && SmsRoom.status !== \'CLOSED\'">\n\n <div ng-scrollbars ng-scrollbars-config="{\n autoHideScrollbar: false,\n theme: \'light\',\n advanced: {\n updateOnContentResize: true\n },\n setHeight: 781,\n scrollInertia: 0\n }">\n <ul class="chats">\n <li data-ng-switch="SmsRoom.status" data-ng-class="{\'in\': smsMessage.status == \'RECEIVED\', \'out\': smsMessage.status == \'SENT\' || smsMessage.status == \'SENDING\' || smsMessage.status == \'FAILED\' || smsMessage.status == \'NOTE\' || smsMessage.status == \'DELIVERED\' || smsMessage.status == \'QUEUED\' || smsMessage.status != \'RECEIVED\' }" data-ng-repeat="smsMessage in SmsRoom.SmsMessages | orderBy:\'-createdAt\'">\n <!-- <img class="avatar" alt="" data-ng-src="api/users/avatar/{{getCurrentUser().userpic && smsMessage.status === \'SENT\' ? getCurrentUser().userpic : \'unknown_avatar\'}}"> -->\n <!-- <note message="smsMessage" ng-switch-when="NOTE"></note> -->\n <div class="avatar" data-ng-class="message.ChatVisitor ? \'pretty-avatar-v\' : \'pretty-avatar\'">\n <ng-letter-avatar\n data-ng-if="smsMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{smsMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!smsMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{smsMessage.from[0]}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <sms message="smsMessage" list-id="SmsRoom.SmsAccount.ListId" accounttype=\'SmsRoom.SmsAccount.type\' ng-switch-default></sms>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="SmsRoom && SmsRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_SMS_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_SMS_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="forms.compose.$valid && sendSMS()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-disabled="SmsRoom" theme="bootstrap" name="from" data-ng-model="form.from[0]" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="smsAccount.phone as smsAccount in smsAccounts | filter: $select.search">\n <div data-ng-bind-html="smsAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="smsAccount.phone | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.compose.from.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n <!-- START TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <input type="text" ng-pattern="/^[0-9]+$/" name="to" class="form-control todo-taskbody-taskdesc" placeholder="To..." rows="8" data-ng-disabled="SmsRoom" data-ng-model="form.to" required>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="forms.compose.to.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n <!-- START CANNED -->\n <div class="form-group" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <!-- <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'"> -->\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelect($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <!-- <span data-ng-show="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span> -->\n </div>\n </div>\n\n </div>\n <!-- END CANNED -->\n <!-- START message -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.body.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <textarea id="text" class="form-control maxlength-handler" rows="8" maxlength="160" name="body" data-ng-model="form.body" ></textarea>\n <button id="btnPost" type="button" class="btn btn-success pull-right" ng-class="{\'btn-warning\': form.body.length >= 120, \'btn-danger\': form.body.length >= 141 }">{{ 160 - form.body.length }}</button>\n <span class="help-block"> Max 160 chars</span>\n <span data-ng-show="forms.compose.body.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n\n <!-- END message -->\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- END TODO CONTENT -->\n"),a.put("app/channels/sms/inbox/sms/sms.html",'<div class="message">\n <div class="row">\n <div class="col-md-6">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(smsMessage.from)">{{smsMessage.from}}</a>]\n <br>\n <span class="bold">To: </span>\n [<a href="" data-ng-click="openContact(smsMessage.to)">{{smsMessage.to}}</a>]\n <br>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="smsMessage.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{smsMessage.User.fullname}}</strong></span>\n <span class="pull-right" data-ng-show="smsMessage.source">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{smsMessage.source}}</strong></span>\n\n </div>\n </div>\n\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-switch="smsMessage.status">\n <a ng-switch-when="RECEIVED" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="DELIVERED" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe" > {{smsMessage.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n <a ng-switch-default href="#" class="btn default btn-xs"> {{smsMessage.status | uppercase}}\n </a>\n <br>\n <a ng-href="https://www.twilio.com/docs/errors/{{smsMessage.errorcode}}" target="_blank" ng-if="(smsMessage.errorcode) && (accounttype==\'twilio\')">Error Code:{{smsMessage.errorcode}}</a>\n <a ng-href="{{smsMessage.errorcode.length > 2 ? \'http://www.skebby.com/sms-api/sms-gateway/developers-docs/#receiveNotifySection\' : \'http://www.skebby.com/sms-api/sms-gateway/developers-docs/#errorCodesSection\'}}" target="_blank" ng-if="(smsMessage.errorcode != 1) && (smsMessage.errorcode) && (accounttype==\'skebby\')">Error Code:{{smsMessage.errorcode}}</a>\n </span>\n\n <i class="icon-calendar"></i> <span am-time-ago="smsMessage.updatedAt"></span>\n </span>\n <hr>\n <span class="body text-left" data-ng-bind-html="smsMessage.body" style="white-space: pre-wrap;"></span>\n\n </div>\n'),a.put("app/channels/sms/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\n<div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\n <i class="fa fa-trash"></i>\n </a>\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid-inbox">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END Portlet PORTLET-->\n'),a.put("app/channels/sms/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/inbox/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-note"></i>\n <a href="/channels/sms/inbox/list">{{ \'APPLICATION_INBOX\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row inbox" data-ng-init="initView()">\n <div class="col-md-3">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $stateParams.id == smsAccount.id}" data-ng-repeat="smsAccount in smsAccounts">\n <a href="/channels/sms/inbox/view/account/{{smsAccount.id}}/list" class="btn">\n <i class="icon-notebook"></i> {{smsAccount.name}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-9" >\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view>\n <div class="note note-info">\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/inbox/view/view.status.modal.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SMS_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'), +a.put("app/channels/sms/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/sms/inbox/view/view.templates.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TEMPLATES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="note note-info" data-ng-show="!templates.length">\n <h4 class="block">Info!</h4>\n <p>\n {{\'MESSAGE_NO_TEMPLATES_AVAILABLE\' | translate}}\n </p>\n </div>\n <form name="form" data-ng-show="templates.length" novalidate>\n <div class="form-group">\n <ui-select data-ng-model="item.template" theme="bootstrap">\n <ui-select-match placeholder="Select a template in the list or search his name...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template in templates | propsFilter: {name: $select.search}">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n <small data-ng-show="template.description">\n {{\'APPLICATION_DESCRIPTION\' | translate}}: {{template.description}}\n </small>\n </ui-select-choices>\n </ui-select>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="templates.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/sms/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.sms.queues.view.settings\')}">\n <a data-ng-href="/channels/sms/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.sms.queues.view.agents\')}">\n <a data-ng-href="/channels/sms/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateSmsQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">Timeout</label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.sms.realtime.view.agents\')}">\n <a href="/channels/sms/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.sms.realtime.view.applications\')}">\n <a href="/channels/sms/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/view.queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div id="grid1" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-tree-view class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CHANSPY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.prefix.$touched || form.$submitted) && form.prefix.$invalid}">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="prefix" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="item.prefix" required/>\n <span data-ng-show="(form.prefix.$touched || form.$submitted) && form.prefix.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.options.$touched || form.$submitted) && form.options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="item.options" name="options" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.value}}: {{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="option.value as option in options | filter: $select.search">\n <div ng-bind-html="option.value + \': \' + (option.name | translate) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.options.$touched || form.$submitted) && form.options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START AUTH -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTH\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.auth"\n type="checkbox"\n name="auth"\n data-ng-init="item.auth = 0"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END AUTH -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.password.$touched || form.$submitted) && form.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span data-ng-show="item.auth" class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" data-ng-disabled="!item.auth" data-ng-required="item.auth"/>\n <span data-ng-show="(form.password.$touched || form.$submitted) && form.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/chanspy/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magnifier"></i>\n <a href="/channels/voice/chanspys/list">{{ \'APPLICATION_CHANSPY\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANSPY\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CHANSPY\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getChanSpy()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/channels/voice/chanspys/list">{{ \'APPLICATION_CHANSPY\' | translate }}</a>\n <i data-ng-show="chanspy" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="chanspy">\n <a href="#">{{chanspy.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/chanspy.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chanspy.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.chanspy.view.settings\')}">\n <a data-ng-href="/tools/chanspy/view/{{chanspy.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CHANSPY\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateChanSpy()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="chanspy.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.prefix.$touched || form.general.$submitted) && form.general.prefix.$invalid}">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="prefix" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="chanspy.prefix" required/>\n <span data-ng-show="(form.general.prefix.$touched || form.general.$submitted) && form.general.prefix.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.options.$touched || form.general.$submitted) && form.general.options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="chanspy.options" name="options" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.value}}: {{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="option.value as option in options | filter: $select.search">\n <div ng-bind-html="option.value + \': \' + (option.name | translate) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.general.options.$touched || form.general.$submitted) && form.general.options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START AUTH -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTH\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chanspy.auth"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END AUTH -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.password.$touched || form.general.$submitted) && form.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" data-ng-show="chanspy.auth" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="chanspy.password" data-ng-disabled="!chanspy.auth" data-ng-required="chanspy.auth"/>\n <span data-ng-show="(form.general.password.$touched || form.general.$submitted) && form.general.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="chanspy.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/voice/context/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTEXT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/context/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_CONTEXTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONTEXTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTEXT\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/context/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getContext()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/voice/contexts/list">{{ \'APPLICATION_CONTEXTS\' | translate }}</a>\n <i data-ng-show="context" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="context">\n <a href="#">{{context.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/context.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{context.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.contexts.view.settings\')}">\n <a data-ng-href="/channels/voice/contexts/view/{{context.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/context/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CONTEXT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceContext()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="context.name" required readonly/>\n <span class="help-block">\n {{ \'DESCRIPTION_CANT_EDIT_NAME\' | translate }}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="context.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/disposition/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-target"></i>\n <a href="/channels/voice/dispositions/list">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/disposition/list/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/moh/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_MOH_CLASS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/moh/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone"></i>\n <a href="#">{{ \'APPLICATION_MOHS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-music-tone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_MOHS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_MOH_CLASS\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.addFiles.html",'\n<div class="row" data-ng-init="getSounds()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_MOH\' | translate }} {{ \'APPLICATION_ADD_FILES\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="note note-warning" data-ng-hide="soundList.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <form name="forms.general" data-ng-submit="(item.sounds.length > 0) && addMohs()" data-ng-show="soundList.length" novalidate>\n\n <!-- START SOUNDS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.sounds.$touched || forms.general.$submitted) && item.sounds.length == 0}">\n <label class="control-label">{{\'APPLICATION_SOUNDS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="item.sounds" theme="bootstrap" name="sounds" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.display_name}}</ui-select-match>\n <ui-select-choices repeat="sound.id as sound in soundList | filter: $select.search">\n {{sound.display_name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.sounds.$touched || forms.general.$submitted) && item.sounds.length == 0" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <input type="submit" class="btn green-haze" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.audios.html",'<div ui-view class="profile-content">\n<div class="row" data-ng-init="getAudioFiles()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AUDIOS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="audioFiles">\n <a class="btn green-jungle " href="/channels/voice/mohs/view/{{moh.id}}/add" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_ADD_FILES\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div class="note note-warning" data-ng-hide="audioFiles">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_FOLDER_DOES_NOT_EXIST\' | translate }}\n </p>\n </div>\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover" data-ng-show="audioFiles">\n <thead>\n <tr>\n <th>{{ \'APPLICATION_NAME\' | translate }}</th>\n <th width="30%">{{ \'APPLICATION_PREVIEW\' | translate }}</th>\n <th width="10%">{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody data-ng-model="audioFiles">\n <tr data-ng-repeat="audiofile in audioFiles">\n <td>{{audiofile}}</td>\n <td>\n <audio controls ng-src="{{getSecureSrc(audioSources[audiofile])}}" preload="none">\n Your browser does not support the audio tag.\n </audio></td>\n <td>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(audiofile,audiofile)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="audioFiles.length">\n <td colspan="3" style="text-align:center;">\n <i>{{ \'MESSAGE_NO_AUDIOFILES_AVAILABLE\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/moh/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getMoh()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone"></i>\n <a href="/channels/voice/mohs/list">{{ \'APPLICATION_MOH_CLASS\' | translate }}</a>\n <i data-ng-show="moh" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="moh">\n <a href="#">{{moh.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/moh.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{moh.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.mohs.view.settings\')}">\n <a data-ng-href="/channels/voice/mohs/view/{{moh.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.mohs.view.audios\') || $state.is(\'main.channels.voice.mohs.view.add\')}">\n <a data-ng-href="/channels/voice/mohs/view/{{moh.id}}/audios">\n <i class="icon-list"></i>\n {{ \'APPLICATION_AUDIOS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_MOH_CLASS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceMoh()" novalidate>\n\n <!-- START PATH -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_PATH\' | translate}}</label>\n <input type="text" name="path" class="form-control" data-ng-model="moh.directory" disabled/>\n </div>\n <!-- END PATH -->\n\n <!-- START SORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.sort.$touched || forms.general.$submitted) && forms.general.sort.$invalid}">\n <label class="control-label">{{\'APPLICATION_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="moh.sort" theme="bootstrap" name="sort" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant($select.selected.name)}}</ui-select-match>\n <ui-select-choices repeat="sort.value as sort in sortOptions | filter: $select.search">\n {{$translate.instant(sort.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.sort.$touched || forms.general.$submitted) && forms.general.sort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SORT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.description.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" class="form-control" data-ng-model="moh.description"/></textarea>\n <span data-ng-show="forms.general.$submitted && forms.general.description.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.strategy.$touched || form.queue.$submitted) && form.queue.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'ringall\', \'leastrecent\', \'fewestcalls\', \'random\', \'rrmemory\', \'linear\', \'wrandom\', \'rrordered\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n </span>\n <span data-ng-show="(form.queue.strategy.$touched || form.queue.$submitted) && form.queue.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/queue/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4><p>{{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}</p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/voice/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/voice/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.queues.view.settings\')}">\n <a data-ng-href="/channels/voice/queues/view/{{queue.name}}/settings"> <i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/voice/queues/view/{{queue.name}}/agents"><i class="icon-people"></i>{{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_QUEUE_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_PERIODIC_ANNOUNCE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();getMohs();getSounds();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceQueue()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'ringall\', \'leastrecent\', \'fewestcalls\', \'random\', \'rrmemory\', \'linear\', \'wrandom\', \'rrordered\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n <!-- START MOH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.musiconhold.$touched || forms.general.$submitted) && forms.general.musiconhold.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOH\' | translate}}</label>\n <ui-select data-ng-model="queue.musiconhold" name="musiconhold" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="musiconhold.name as musiconhold in voiceMohs | filter: $select.search">\n <div ng-bind-html="musiconhold.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_VOICE_MOH\' | translate }}\n </span>\n <span data-ng-show="(forms.general.musiconhold.$touched || forms.general.$submitted) && forms.general.musiconhold.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOH -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="queue.timeout" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_TIMEOUT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START MAXLEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.maxlen.$touched || forms.general.$submitted) && forms.general.maxlen.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXLEN\' | translate}}</label>\n <input type="number" min="0" name="maxlen" placeholder="{{\'APPLICATION_MAXLEN\' | translate}}" class="form-control" data-ng-model="queue.maxlen" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MAXLEN\' | translate }}\n </span>\n <span data-ng-show="(forms.general.maxlen.$touched || forms.general.$submitted) && forms.general.maxlen.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAXLEN -->\n\n <!-- START RETRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.retry.$touched || forms.general.$submitted) && forms.general.retry.$invalid}">\n <label class="control-label">{{\'APPLICATION_RETRY\' | translate}}</label>\n <input type="number" min="0" name="retry" placeholder="{{\'APPLICATION_RETRY\' | translate}}" class="form-control" data-ng-model="queue.retry" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RETRY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.retry.$touched || forms.general.$submitted) && forms.general.retry.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RETRY -->\n\n </div>\n <div class="col-md-6">\n <!-- START WRAPUPTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.wrapuptime.$touched || forms.general.$submitted) && forms.general.wrapuptime.$invalid}">\n <label class="control-label">{{\'APPLICATION_WRAPUPTIME\' | translate}}</label>\n <input type="number" min="0" name="wrapuptime" placeholder="{{\'APPLICATION_WRAPUPTIME\' | translate}}" class="form-control" data-ng-model="queue.wrapuptime" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_WRAPUPTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.general.wrapuptime.$touched || forms.general.$submitted) && forms.general.wrapuptime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WRAPUPTIME -->\n\n <!-- START WEIGHT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.weight.$touched || forms.general.$submitted) && forms.general.weight.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEIGHT\' | translate}}</label>\n <input type="number" min="0" name="weight" placeholder="{{\'APPLICATION_WEIGHT\' | translate}}" class="form-control" data-ng-model="queue.weight" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_WEIGHT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.weight.$touched || forms.general.$submitted) && forms.general.weight.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEIGHT -->\n\n <!-- START JOINEMPTY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.joinempty.$touched || forms.general.$submitted) && forms.general.joinempty.$invalid}">\n <label class="control-label">{{\'APPLICATION_JOINEMPTY\' | translate}}</label>\n <ui-select multiple data-ng-model="queue.joinempty" name="joinempty" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'strict\',\'loose\',\'paused\',\'penalty\',\'inuse\',\'ringing\',\'unavailable\',\'invalid\',\'unknown\',\'wrapup\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_JOINEMPTY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.joinempty.$touched || forms.general.$submitted) && forms.general.joinempty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END JOINEMPTY -->\n\n <!-- START LEAVEWHENEMPTY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.leavewhenempty.$touched || forms.general.$submitted) && forms.general.leavewhenempty.$invalid}">\n <label class="control-label">{{\'APPLICATION_LEAVEWHENEMPTY\' | translate}}</label>\n <ui-select multiple data-ng-model="queue.leavewhenempty" name="leavewhenempty" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'strict\',\'loose\',\'paused\',\'penalty\',\'inuse\',\'ringing\',\'unavailable\',\'invalid\',\'unknown\',\'wrapup\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_LEAVEWHENEMPTY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.leavewhenempty.$touched || forms.general.$submitted) && forms.general.leavewhenempty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LEAVEWHENEMPTY -->\n\n <!-- START ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.announce.$touched || forms.general.$submitted) && forms.general.announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.announce" name="announce" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in sounds | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.announce.$touched || forms.general.$submitted) && forms.general.announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE -->\n </div>\n </div>\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.announce" data-ng-submit="forms.announce.$valid && updateVoiceQueue()" novalidate>\n <div class="row">\n <div class="col-md-12">\n <!-- START PERIODIC_ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.periodic_announce.$touched || forms.announce.$submitted) && forms.announce.periodic_announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_PERIODIC_ANNOUNCE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="queue.periodic_announce" name="periodic_announce" theme="bootstrap" data-ng-disabled="!periodicAnnounces.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in periodicAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="periodicAnnounces.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.periodic_announce.$touched || forms.announce.$submitted) && forms.announce.periodic_announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PERIODIC_ANNOUNCE -->\n </div>\n </div>\n <div class="row">\n <div class="col-md-6">\n <p><h3>{{\'APPLICATION_SETTINGS\' | translate}}</h3></p>\n <!-- START ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_frequency.$touched || forms.announce.$submitted) && forms.announce.announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="announce_frequency" placeholder="{{\'APPLICATION_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.announce_frequency" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_frequency.$touched || forms.announce.$submitted) && forms.announce.announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_FREQUENCY -->\n\n <!-- START MIN_ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.min_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.min_announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_MIN_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="min_announce_frequency" placeholder="{{\'APPLICATION_MIN_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.min_announce_frequency" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MIN_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.min_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.min_announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MIN_ANNOUNCE_FREQUENCY -->\n\n <!-- START PERIODIC_ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.periodic_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.periodic_announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_PERIODIC_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="periodic_announce_frequency" placeholder="{{\'APPLICATION_PERIODIC_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.periodic_announce_frequency"/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.periodic_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.periodic_announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PERIODIC_ANNOUNCE_FREQUENCY -->\n\n <!-- START RANDOM_PERIODIC_ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.random_periodic_announce.$touched || forms.announce.$submitted) && forms.announce.random_periodic_announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_RANDOM_PERIODIC_ANNOUNCE\' | translate}}</label>\n <ui-select data-ng-model="queue.random_periodic_announce" name="random_periodic_announce" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RANDOM_PERIODIC_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.random_periodic_announce.$touched || forms.announce.$submitted) && forms.announce.random_periodic_announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANDOM_PERIODIC_ANNOUNCE -->\n\n <!-- START ANNOUNCE_HOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_holdtime.$touched || forms.announce.$submitted) && forms.announce.announce_holdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_HOLDTIME\' | translate}}</label>\n <ui-select data-ng-model="queue.announce_holdtime" name="announce_holdtime" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'once\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_HOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_holdtime.$touched || forms.announce.$submitted) && forms.announce.announce_holdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_HOLDTIME -->\n\n <!-- START ANNOUNCE_POSITION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_position.$touched || forms.announce.$submitted) && forms.announce.announce_position.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_POSITION\' | translate}}</label>\n <ui-select data-ng-model="queue.announce_position" name="announce_position" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'limit\',\'more\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_position.$touched || forms.announce.$submitted) && forms.announce.announce_position.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_POSITION -->\n\n <!-- START ANNOUNCE_POSITION_LIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_position_limit.$touched || forms.announce.$submitted) && forms.announce.announce_position_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_POSITION_LIMIT\' | translate}}</label>\n <input type="number" min="0" name="announce_position_limit" placeholder="{{\'APPLICATION_ANNOUNCE_POSITION_LIMIT\' | translate}}" class="form-control" data-ng-model="queue.announce_position_limit"/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION_LIMIT\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_position_limit.$touched || forms.announce.$submitted) && forms.announce.announce_position_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_POSITION_LIMIT -->\n\n <!-- START REPORTHOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.reportholdtime.$touched || forms.announce.$submitted) && forms.announce.reportholdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_REPORTHOLDTIME\' | translate}}</label>\n <ui-select data-ng-model="queue.reportholdtime" name="reportholdtime" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_REPORTHOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.reportholdtime.$touched || forms.announce.$submitted) && forms.announce.reportholdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORTHOLDTIME -->\n\n </div>\n <div class="col-md-6">\n <p><h3>{{\'APPLICATION_SOUNDS\' | translate}}</h3></p>\n <!-- START QUEUE_REPORTHOLD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_reporthold.$touched || forms.announce.$submitted) && forms.announce.queue_reporthold.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_REPORTHOLD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_reporthold" name="queue_reporthold" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_REPORTHOLD\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_reporthold.$touched || forms.announce.$submitted) && forms.announce.queue_reporthold.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_REPORTHOLD -->\n\n <!-- START QUEUE_YOUARENEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_youarenext.$touched || forms.announce.$submitted) && forms.announce.queue_youarenext.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_YOUARENEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_youarenext" name="queue_youarenext" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_YOUARENEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_youarenext.$touched || forms.announce.$submitted) && forms.announce.queue_youarenext.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_YOUARENEXT -->\n\n <!-- START QUEUE_THEREARE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_thereare.$touched || forms.announce.$submitted) && forms.announce.queue_thereare.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_THEREARE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_thereare" name="queue_thereare" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_THEREARE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_thereare.$touched || forms.announce.$submitted) && forms.announce.queue_thereare.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_THEREARE -->\n\n <!-- START QUEUE_CALLSWAITING -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_callswaiting.$touched || forms.announce.$submitted) && forms.announce.queue_callswaiting.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_CALLSWAITING\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_callswaiting" name="queue_callswaiting" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_CALLSWAITING\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_callswaiting.$touched || forms.announce.$submitted) && forms.announce.queue_callswaiting.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_CALLSWAITING -->\n\n <!-- START QUEUE_HOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_holdtime.$touched || forms.announce.$submitted) && forms.announce.queue_holdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_HOLDTIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_holdtime" name="queue_holdtime" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_HOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_holdtime.$touched || forms.announce.$submitted) && forms.announce.queue_holdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_HOLDTIME -->\n\n <!-- START QUEUE_MINUTES -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_minutes.$touched || forms.announce.$submitted) && forms.announce.queue_minutes.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_MINUTES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_minutes" name="queue_minutes" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MINUTES\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_minutes.$touched || forms.announce.$submitted) && forms.announce.queue_minutes.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_MINUTES -->\n\n <!-- START QUEUE_MINUTE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_minute.$touched || forms.announce.$submitted) && forms.announce.queue_minute.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_MINUTE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_minute" name="queue_minute" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MINUTE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_minute.$touched || forms.announce.$submitted) && forms.announce.queue_minute.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_MINUTE -->\n\n <!-- START QUEUE_SECONDS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_seconds.$touched || forms.announce.$submitted) && forms.announce.queue_seconds.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_SECONDS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_seconds" name="queue_seconds" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_SECONDS\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_seconds.$touched || forms.announce.$submitted) && forms.announce.queue_seconds.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_SECONDS -->\n\n <!-- START QUEUE_THANKYOU -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_thankyou.$touched || forms.announce.$submitted) && forms.announce.queue_thankyou.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_THANKYOU\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_thankyou" name="QUEUE_THANKYOU" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_THANKYOU\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_thankyou.$touched || forms.announce.$submitted) && forms.announce.queue_thankyou.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_THANKYOU -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateVoiceQueue()" novalidate>\n\n <div class="row">\n <div class="col-md-6">\n\n <!-- START AUTOPAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.autopause.$touched || forms.advanced.$submitted) && forms.advanced.autopause.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTOPAUSE\' | translate}}</label>\n <ui-select data-ng-model="queue.autopause" name="autopause" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'all\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_AUTOPAUSE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.autopause.$touched || forms.advanced.$submitted) && forms.advanced.autopause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUTOPAUSE -->\n\n <!-- START RINGINUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.ringinuse.$touched || forms.advanced.$submitted) && forms.advanced.ringinuse.$invalid}">\n <label class="control-label">{{\'APPLICATION_RINGINUSE\' | translate}}</label>\n <ui-select data-ng-model="queue.ringinuse" name="ringinuse" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RINGINUSE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.ringinuse.$touched || forms.advanced.$submitted) && forms.advanced.ringinuse.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RINGINUSE -->\n\n <!-- START MEMBER_DELAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.memberdelay.$touched || forms.advanced.$submitted) && forms.advanced.memberdelay.$invalid}">\n <label class="control-label">{{\'APPLICATION_MEMBER_DELAY\' | translate}}</label>\n <input type="number" min="0" name="memberdelay" placeholder="{{\'APPLICATION_MEMBER_DELAY\' | translate}}" class="form-control" data-ng-model="queue.memberdelay" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MEMBER_DELAY\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.memberdelay.$touched || forms.advanced.$submitted) && forms.advanced.memberdelay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MEMBER_DELAY -->\n\n <!-- START ACW -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.acw.$touched || forms.advanced.$submitted) && forms.advanced.acw.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACW\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="queue.acw"\n type="checkbox"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n <span class="help-block">\n {{ \'DESCRIPTION_ACW\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.acw.$touched || forms.advanced.$submitted) && forms.advanced.acw.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_ACW\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACW -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START TIMEOUTRESTART -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.timeoutrestart.$touched || forms.advanced.$submitted) && forms.advanced.timeoutrestart.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUTRESTART\' | translate}}</label>\n <ui-select data-ng-model="queue.timeoutrestart" name="timeoutrestart" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_TIMEOUTRESTART\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.timeoutrestart.$touched || forms.advanced.$submitted) && forms.advanced.timeoutrestart.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUTRESTART -->\n\n <!-- START MONITOR_FORMAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.monitor_format.$touched || forms.advanced.$submitted) && forms.advanced.monitor_format.$invalid}">\n <label class="control-label">{{\'APPLICATION_MONITOR_FORMAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.monitor_format" name="monitor_format" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="monFormat.value as monFormat in monitorFormats | filter: $select.search">\n <div ng-bind-html="monFormat.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MONITOR_FORMAT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.monitor_format.$touched || forms.advanced.$submitted) && forms.advanced.monitor_format.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONITOR_FORMAT -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.context.$touched || forms.advanced.$submitted) && forms.advanced.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}</label>\n <ui-select data-ng-model="queue.context" name="context" theme="bootstrap">\n <ui-select-match allow-clear placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.context.$touched || forms.advanced.$submitted) && forms.advanced.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START ACW_TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.acwTimeout.$touched || forms.advanced.$submitted) && forms.advanced.acwTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACW_TIMEOUT\' | translate}}</label>\n <input type="number" min="0" name="acwTimeout" placeholder="{{\'APPLICATION_ACW_TIMEOUT\' | translate}}" class="form-control" data-ng-model="queue.acwTimeout" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_ACW_TIMEOUT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.acwTimeout.$touched || forms.advanced.$submitted) && forms.advanced.acwTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACW_TIMEOUT -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/channels/voice/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/parameter/parameter.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initParameters()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/queue/queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initQueues()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/telephone/telephone.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initTelephones()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/telephone/telephone.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="telephone.ipaddr" class="well">\n <div>{{telephone.ipaddr}}:{{telephone.port}}</div>\n <div>{{telephone.fullcontact}}</div>\n <div>{{telephone.useragent}}</div>\n <div>{{telephone.lastms}}</div>\n</div>\n<div data-ng-if="!telephone.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/channels/voice/realtime/view/agents">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.agents\')}">\n <a href="/channels/voice/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.telephones\')}" data-ng-show="Auth.isAdmin()">\n <a href="/channels/voice/realtime/view/telephones">\n {{\'APPLICATION_TELEPHONES\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.queues\')}">\n <a href="/channels/voice/realtime/view/queues">\n {{\'APPLICATION_QUEUES\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.parameters\')}">\n <a href="/channels/voice/realtime/view/parameters">\n {{\'APPLICATION_QUEUE_PARAMETERS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/recording/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-play"></i>\n <a href="#">{{ \'APPLICATION_RECORDINGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-play font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_RECORDINGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/inbound/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'),a.put("app/channels/voice/route/inbound/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-in"></i>\n <a href="/channels/voice/routes/inbound/list">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/inbound/view/view.applications.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/inbound/view/{{route.id}}/application" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_APPLICATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows ui-grid-auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/inbound/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/channels/voice/routes/inbound/list">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/inboundroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.inbound.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/inbound/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.inbound.view.applications') || $state.is('main.channels.voice.routes.inbound.view.application') || $state.is('main.channels.voice.routes.inbound.view.applications.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/inbound/view/'+route.id+'/applications')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/inbound/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INBOUND\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/internal/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'),a.put("app/channels/voice/route/internal/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/voice/routes/internal/list">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/internal/view/view.applications.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/internal/view/{{route.id}}/application" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_APPLICATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/internal/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/channels/voice/routes/internal/list">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/internalroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.internal.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/internal/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.internal.view.applications') || $state.is('main.channels.voice.routes.internal.view.application') || $state.is('main.channels.voice.routes.internal.view.applications.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/internal/view/'+route.id+'/applications')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- <pre>\n {{route | json}}\n </pre> -->\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/internal/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INTERNAL\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/outbound/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body" data-ng-init="getTags()">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START TAG -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.tag.$touched || forms.extension.$submitted) && forms.extension.tag.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TAG\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.tag" name="tag" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TAG\' | translate }}" data-ng-init="item.tag = \'--\'">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="tag.name as tag in tags | filter: $select.search">\n <div ng-bind-html="tag.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.extension.tag.$touched || forms.extension.$submitted) && forms.extension.tag.$invalid && forms.extension.tag.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAG -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'), +a.put("app/channels/voice/route/outbound/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-out"></i>\n <a href="/channels/voice/routes/outbound/list">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/outbound/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-out"></i>\n <a href="/channels/voice/routes/outbound/list">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/outboundroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.outbound.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/outbound/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.outbound.view.routes') || $state.is('main.channels.voice.routes.outbound.view.route') || $state.is('main.channels.voice.routes.outbound.view.routes.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/outbound/view/'+route.id+'/routes')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- <pre>\n {{route | json}}\n </pre> -->\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/outbound/view/view.route.html",'<div class="row" data-ng-init="initApplication(true);getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_ROUTE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wizard on-finish="addApplication()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.app.$touched || forms.info.$submitted) && forms.info.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="main.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="app in applications | filter: $select.search">\n <div ng-bind-html="app.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.app.$touched || forms.info.$submitted) && forms.info.app.$invalid && forms.info.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'outboundDial\'" lazy-render duration="1">\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CALLERID\' | translate }}</label>\n <input type="text" name="callerID" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder=\'"name" <number>\' class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }}\n </span>\n <span data-ng-show="(forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PREFIX\' | translate }}</label>\n <input type="text" name="prefix" placeholder="{{ \'APPLICATION_PREFIX\' | translate }}" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_PREFIX\' | translate }}\n </span>\n <span data-ng-show="(forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[5]" data-ng-init="application.appdata[5] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="application.app" data-ng-init="application.appdata[0] = null" required>\n <span data-ng-show="(forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid && forms.info.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid && forms.info.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{$translate.instant(intType.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/outbound/view/view.routeSettings.html",'<div class="row" data-ng-init="initApplication();getApplication();getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_APPLICATION_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateRoute(\'routes\')">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'outboundDial\'" lazy-render duration="1">\n\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CALLERID\' | translate }}</label>\n <input type="text" name="callerID" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder=\'"name" <number>\' class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }} "name" <number>\n </span>\n <span data-ng-show="(forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PREFIX\' | translate }}</label>\n <input type="text" name="prefix" placeholder="{{ \'APPLICATION_PREFIX\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_PREFIX\' | translate }}\n </span>\n <span data-ng-show="(forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[5]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].app" required>\n <span data-ng-show="(forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid && forms.info.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]">\n <span data-ng-show="(forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid && forms.info.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{intType.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/channels/voice/route/outbound/view/view.routes.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/outbound/view/{{route.id}}/route" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/outbound/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_OUTBOUND\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();getTags();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CUTDIGITS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CUTDIGITS\' | translate}}</label>\n <input type="text" pattern="[0-9]+" class="form-control" name="cutdigits" data-ng-model="route.cutdigits">\n <span class="help-block">\n </span>\n </div>\n <!-- END CUTDIGITS -->\n\n <!-- START TAG -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.tag.$touched || forms.general.$submitted) && forms.general.tag.$invalid}">\n <label class="control-label">{{\'APPLICATION_TAG\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.tag" name="tag" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="tag.name as tag in tags | filter: $select.search">\n <div ng-bind-html="tag.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.tag.$touched || forms.general.$submitted) && forms.general.tag.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAG -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START RECORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.record.$touched || forms.general.$submitted) && forms.general.record.$invalid}">\n <label class="control-label">{{\'APPLICATION_RECORDING\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="route.record"\n type="checkbox"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n <span data-ng-show="(forms.general.record.$touched || forms.general.$submitted) && forms.general.record.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RECORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/view.application.html",'\n<div class="row" data-ng-init="initApplication(true); getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_APPLICATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="addApplication()">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="main.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="app in $application.applications| filter: $select.search">\n <div ng-bind-html="app.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <div id="Queue" class="app-settings" ng-slide-down="main.app.value == \'Queue\'" lazy-render duration="1">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="queue" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in items | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}</label>\n <ui-select data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null" name="audiofile" theme="bootstrap" data-ng-disabled="!items2.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items2 | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items2.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </div>\n <div id="Playback" class="app-settings" ng-slide-down="main.app.value == \'Playback\'" lazy-render duration="1">\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="audiofile" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && !main.app.type" lazy-render duration="1">\n <!-- START INTERFACE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}/{{ \'APPLICATION_IDENTIFIER\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="interface" placeholder="SIP/0000" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" required>\n <span data-ng-show="(forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid && forms.settings.interface.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERFACE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="internalDial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'internalDial\'" lazy-render duration="1">\n <!-- START INTERNAL DIAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$invalid}">\n <label class="control-label">{{\'APPLICATION_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="user" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="user.internal as user in items | filter: $select.search">\n <div ng-bind-html="user.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL DIAL -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'externalDial\'" lazy-render duration="1">\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PHONE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" required>\n <span data-ng-show="(forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid && forms.settings.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="AGI" class="app-settings" ng-slide-down="main.app.value == \'AGI\'" lazy-render duration="1">\n <!-- START PROJECT -->\n <input type="hidden" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = \'agi://127.0.0.1/square\'">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" name="project" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.name as project in items | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_PROJECTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/square/projects/list">{{\'APPLICATION_PROJECTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n\n </div>\n <div id="Goto" class="app-settings" ng-slide-down="main.app.value == \'Goto\'" lazy-render duration="1">\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in items | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXTENSION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" required>\n <span data-ng-show="(forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid && forms.settings.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PRIORITY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="priority" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null" required>\n <span data-ng-show="(forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n </div>\n <div id="Hangup" class="app-settings" ng-slide-down="main.app.value == \'Hangup\'" lazy-render duration="1">\n <!-- START HANGUPCAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$invalid}">\n <label class="control-label">{{\'APPLICATION_HANGUP_CAUSE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" theme="bootstrap" name="hangupCause" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="hangupCause.value as hangupCause in $application.hangupCauses | filter: $select.search">\n <div ng-bind-html="hangupCause.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HANGUPCAUSE -->\n </div>\n <div id="Set" class="app-settings" ng-slide-down="main.app.value == \'Set\'" lazy-render duration="1">\n <!-- START VARIABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VARIABLE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="variable" placeholder="" class="form-control" data-ng-model="application.variable" data-ng-init="application.appdata[0] = null" data-ng-change="updateSetAppdata()" required>\n <span data-ng-show="(forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid && forms.settings.variable.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARIABLE -->\n\n <!-- START VARVALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VALUE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="varvalue" placeholder="" class="form-control" data-ng-model="application.value" data-ng-change="updateSetAppdata()" required>\n <span data-ng-show="(forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid && forms.settings.varvalue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARVALUE -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="application.app" required>\n <span data-ng-show="(forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid && forms.settings.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null">\n <span data-ng-show="(forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid && forms.settings.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <div id="Voicemail" class="app-settings" ng-slide-down="main.app.value == \'Voicemail\'" lazy-render duration="1">\n <!-- START VOICEMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MAILBOX\' | translate }}@{{ \'APPLICATION_CONTEXT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" theme="bootstrap" name="voicemail" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.mailbox}}</ui-select-match>\n <ui-select-choices repeat="mailbox.mailbox+\'@\'+mailbox.context as mailbox in items | filter: $select.search">\n <div ng-bind-html="mailbox.mailbox | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_VOICEMAILS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/voicemails/list">{{\'APPLICATION_VOICEMAILS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid && forms.settings.voicemail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VOICEMAIL -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n <div ng-bind-html="intType.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<!-- <pre>\n {{application | json}}\n</pre> -->\n<!-- <pre>\n {{interval | json}}\n</pre> -->\n'), +a.put("app/channels/voice/route/view.applicationSettings.html",'\n<div class="row" data-ng-init="initApplication();getIntervals();getApplication();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_APPLICATION_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateRoute(\'applications\')">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <div id="Queue" class="app-settings" ng-slide-down="main.app.value == \'Queue\'" lazy-render duration="1">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="queue" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in items | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}</label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[3]" name="audiofile" theme="bootstrap" data-ng-disabled="!items2.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items2 | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items2.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </div>\n <div id="Playback" class="app-settings" ng-slide-down="main.app.value == \'Playback\'" lazy-render duration="1">\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="audiofile" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && !main.app.type" lazy-render duration="1">\n <!-- START INTERFACE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}/{{ \'APPLICATION_IDENTIFIER\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="interface" placeholder="SIP/0000" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]" required>\n <span data-ng-show="(forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid && forms.settings.interface.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERFACE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="internalDial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'internalDial\'" lazy-render duration="1">\n <!-- START INTERNAL DIAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$invalid}">\n <label class="control-label">{{\'APPLICATION_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="user" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="user.internal as user in items | filter: $select.search">\n <div ng-bind-html="user.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL DIAL -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'externalDial\'" lazy-render duration="1">\n\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PHONE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid && forms.settings.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="AGI" class="app-settings" ng-slide-down="main.app.value == \'AGI\'" lazy-render duration="1">\n <!-- START PROJECT -->\n <input type="hidden" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]" data-ng-init="route.Applications[selectedApp].appdata[0] = \'agi://127.0.0.1/square\'">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[1]" name="project" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.name as project in items | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_PROJECTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/square/projects/list">{{\'APPLICATION_PROJECTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n\n <!-- START URL -->\n <!-- <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <div class="input-group">\n <input type="text" name="url" placeholder="agi://127.0.0.1/square" class="form-control" data-ng-model="application.url" data-ng-disabled="!application.urlEnabled" data-ng-required="application.urlEnabled" rpattern="/^agi:\\/\\/(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\/square$/">\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="application.urlEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div> -->\n <!-- END URL -->\n\n </div>\n <div id="Goto" class="app-settings" ng-slide-down="main.app.value == \'Goto\'" lazy-render duration="1">\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in items | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXTENSION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]" required>\n <span data-ng-show="(forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid && forms.settings.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PRIORITY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="priority" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]" required>\n <span data-ng-show="(forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n </div>\n <div id="Hangup" class="app-settings" ng-slide-down="main.app.value == \'Hangup\'" lazy-render duration="1">\n <!-- START HANGUPCAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$invalid}">\n <label class="control-label">{{\'APPLICATION_HANGUP_CAUSE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" theme="bootstrap" name="hangupCause" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="hangupCause.value as hangupCause in $application.hangupCauses | filter: $select.search">\n {{hangupCause.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HANGUPCAUSE -->\n </div>\n <div id="Set" class="app-settings" ng-slide-down="main.app.value == \'Set\'" lazy-render duration="1">\n <!-- START VARIABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VARIABLE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="variable" placeholder="" class="form-control" data-ng-model="application.variable" data-ng-change="updateSetAppdataSettings()" required>\n <span data-ng-show="(forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid && forms.settings.variable.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARIABLE -->\n\n <!-- START VARVALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VALUE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="varvalue" placeholder="" class="form-control" data-ng-model="application.value" data-ng-change="updateSetAppdataSettings()" required>\n <span data-ng-show="(forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid && forms.settings.varvalue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARVALUE -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].app" required>\n <span data-ng-show="(forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid && forms.settings.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]">\n <span data-ng-show="(forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid && forms.settings.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <div id="Voicemail" class="app-settings" ng-slide-down="main.app.value == \'Voicemail\'" lazy-render duration="1">\n <!-- START VOICEMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MAILBOX\' | translate }}@{{ \'APPLICATION_CONTEXT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" theme="bootstrap" name="voicemail" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.mailbox}}</ui-select-match>\n <ui-select-choices repeat="mailbox.mailbox+\'@\'+mailbox.context as mailbox in items | filter: $select.search">\n <div ng-bind-html="mailbox.mailbox | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_VOICEMAILS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/voicemails/list">{{\'APPLICATION_VOICEMAILS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid && forms.settings.voicemail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VOICEMAIL -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{intType.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<!-- <pre>\n {{application | json}}\n</pre> -->\n'), +a.put("app/channels/voice/voicemail/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="#">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-envelope-letter font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/channels/voice/voicemails/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_VOICEMAIL\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/voicemail/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getVoicemail()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="/channels/voice/voicemails/list">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n <i data-ng-show="voicemail" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="voicemail">\n <a href="#">{{voicemail.mailbox}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/voicemail.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{voicemail.mailbox}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.voicemails.view.settings\')}">\n <a data-ng-href="/channels/voice/voicemails/view/{{voicemail.uniqueid}}/settings"><i class="icon-settings"></i>{{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.voicemails.view.messages\')}">\n <a data-ng-href="/channels/voice/voicemails/view/{{voicemail.uniqueid}}/messages"><i class="icon-speech"></i>{{ \'APPLICATION_MESSAGES\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/voicemail/view/view.messages.html",'<div class="row" data-ng-init="getMessages()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_MESSAGES\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns data-ng-if="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/voicemail/view/view.settings.html",'<div class="row" data-ng-init="getContexts()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_VOICEMAIL\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <!-- <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li> -->\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceVoicemail()" novalidate>\n\n <!-- START FULLNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_FULLNAME\' | translate}}" class="form-control" data-ng-model="voicemail.fullname" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.fullname.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FULLNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="voicemail.email" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}</label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="voicemail.password" />\n <span data-ng-show="forms.general.$submitted && forms.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONFIRM PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}</label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="voicemail.rpassword" nx-equal="voicemail.password"/>\n <span data-ng-show="forms.general.$submitted && (forms.general.rpassword.$invalid || forms.general.rpassword.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END CONFIRM PASSWORD -->\n\n <!-- START MAILBOX -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.mailbox.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="voicemail.mailbox" required readonly/>\n <span data-ng-show="forms.general.$submitted && forms.general.mailbox.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="voicemail.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <!-- <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="updateVoiceVoicemail()" novalidate>\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div> -->\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/voicemail/wizard/wizard.html",'<div class="col-md-12" data-ng-init="initWizard()">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="/channels/voice/voicemails/list">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeMailbox()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-envelope-letter font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VOICEMAIL\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(form.general.$valid)">\n <form name="form.general" novalidate>\n\n <!-- START FULLNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_FULLNAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="form.general.$submitted && form.general.fullname.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FULLNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required/>\n <span data-ng-show="form.general.$submitted && form.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="form.general.$submitted && form.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONFIRM PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="form.general.$submitted && (form.general.rpassword.$invalid || form.general.rpassword.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END CONFIRM PASSWORD -->\n\n <!-- START MAILBOX -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.mailbox.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="item.mailbox" required readonly/>\n <span data-ng-show="form.general.$submitted && form.general.mailbox.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAILBOX -->\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/contactmanager/company/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_COMPANY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.company" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.name.$touched || forms.company.$submitted) && forms.company.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.cmopany.name.$touched || forms.company.$submitted) && forms.company.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.vat.$touched || forms.company.$submitted) && forms.company.vat.$invalid}">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="item.vat"/>\n <span data-ng-show="(forms.cmopany.vat.$touched || forms.company.$submitted) && forms.company.vat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.companyId.$touched || forms.company.$submitted) && forms.company.companyId.$invalid}">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="item.companyId"/>\n <span data-ng-show="(forms.cmopany.companyId.$touched || forms.company.$submitted) && forms.company.companyId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.website.$touched || forms.company.$submitted) && forms.company.website.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="item.website"/>\n <span data-ng-show="(forms.cmopany.website.$touched || forms.company.$submitted) && forms.company.website.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.email.$touched || forms.company.$submitted) && forms.company.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email"/>\n <span data-ng-show="(forms.cmopany.email.$touched || forms.company.$submitted) && forms.company.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.phone.$touched || forms.company.$submitted) && forms.company.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone"/>\n <span data-ng-show="(forms.cmopany.phone.$touched || forms.company.$submitted) && forms.company.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.fax.$touched || forms.company.$submitted) && forms.company.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="item.fax"/>\n <span data-ng-show="(forms.cmopany.fax.$touched || forms.company.$submitted) && forms.company.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.type.$touched || forms.company.$submitted) && forms.company.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="item.type"/>\n <span data-ng-show="(forms.cmopany.type.$touched || forms.company.$submitted) && forms.company.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.emailDomain.$touched || forms.company.$submitted) && forms.company.emailDomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}</label>\n <input type="text" name="domain" placeholder="{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}" class="form-control" data-ng-model="item.emailDomain"/>\n <span data-ng-show="(forms.cmopany.emailDomain.$touched || forms.company.$submitted) && forms.company.emailDomain.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DOMAIN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n</div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.company.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/company/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-briefcase"></i>\n <a href="/contactmanager/companies/list">{{ \'APPLICATION_COMPANIES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-briefcase font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_COMPANIES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_COMPANY\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/company/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getCompany()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-briefcase"></i>\n <a href="/contactmanager/companies/list">{{ \'APPLICATION_COMPANIES\' | translate }}</a>\n <i data-ng-show="company" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="company">\n <a href="#">{{company.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/company.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{company.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.contactmanager.companies.view.settings\')}">\n <a data-ng-href="/contactmanager/companies/view/{{company.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/company/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_COMPANY\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADDRESS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_SHIPMENT_ADDRESS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCompany()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="company.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.vat.$touched || forms.general.$submitted) && forms.general.vat.$invalid}">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="company.vat"/>\n <span data-ng-show="(forms.cmopany.vat.$touched || forms.general.$submitted) && forms.general.vat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.companyId.$touched || forms.general.$submitted) && forms.general.companyId.$invalid}">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="company.companyId"/>\n <span data-ng-show="(forms.cmopany.companyId.$touched || forms.general.$submitted) && forms.general.companyId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.website.$touched || forms.general.$submitted) && forms.general.website.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="company.website"/>\n <span data-ng-show="(forms.cmopany.website.$touched || forms.general.$submitted) && forms.general.website.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="company.email"/>\n <span data-ng-show="(forms.cmopany.email.$touched || forms.general.$submitted) && forms.general.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="company.phone"/>\n <span data-ng-show="(forms.cmopany.phone.$touched || forms.general.$submitted) && forms.general.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="company.fax"/>\n <span data-ng-show="(forms.cmopany.fax.$touched || forms.general.$submitted) && forms.general.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="company.type"/>\n <span data-ng-show="(forms.cmopany.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.emailDomain.$touched || forms.general.$submitted) && forms.general.emailDomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}</label>\n <input type="text" name="domain" placeholder="{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}" class="form-control" data-ng-model="company.emailDomain"/>\n <span data-ng-show="(forms.cmopany.emailDomain.$touched || forms.general.$submitted) && forms.general.emailDomain.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DOMAIN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="company.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.address" data-ng-submit="forms.address.$valid && updateCompany()" novalidate>\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.street.$touched || forms.address.$submitted) && forms.address.street.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.street"/>\n <span data-ng-show="(forms.address.street.$touched || forms.address.$submitted) && forms.address.street.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.postalCode.$touched || forms.address.$submitted) && forms.address.postalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.postalCode"/>\n <span data-ng-show="(forms.address.postalCode.$touched || forms.address.$submitted) && forms.address.postalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.city.$touched || forms.address.$submitted) && forms.address.city.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.city"/>\n <span data-ng-show="(forms.address.city.$touched || forms.address.$submitted) && forms.address.city.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.country.$touched || forms.address.$submitted) && forms.address.country.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.country"/>\n <span data-ng-show="(forms.address.country.$touched || forms.address.$submitted) && forms.address.country.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.shipmentAddress" data-ng-submit="forms.shipmentAddress.$valid && updateCompany()" novalidate>\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sStreet.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sStreet.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="sStreet" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.sStreet"/>\n <span data-ng-show="(forms.shipmentAddress.sStreet.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sStreet.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sPostalCode.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sPostalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="sPostalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.sPostalCode"/>\n <span data-ng-show="(forms.shipmentAddress.sPostalCode.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sPostalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sCity.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCity.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="sCity" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.sCity"/>\n <span data-ng-show="(forms.shipmentAddress.sCity.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCity.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sCountry.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCountry.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="sCountry" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.sCountry"/>\n <span data-ng-show="(forms.shipmentAddress.sCountry.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCountry.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/contactmanager/contact/list/import.modal.html",'<div class="modal-header" data-ng-init="getLists()">\n <h3 class="modal-title">{{ \'APPLICATION_IMPORT_FROM_CSV\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.csv" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.ListId.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <ui-select data-ng-model="item.ListId" theme="bootstrap" name="ListId" data-ng-disabled="disabled" data-ng-change="getCustomFields()">\n <ui-select-match placeholder="{{ \'APPLICATION_LIST\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.ListId.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n\n <!-- START FIRSTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.firstName.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_FIRSTNAME\' | translate}}</label>\n <ui-select data-ng-model="item.firstName" theme="bootstrap" name="firstName" data-ng-disabled="disabled" required>\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_FIRSTNAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.firstName.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIRSTNAME -->\n\n <!-- START LASTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.lastName.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_LASTNAME\' | translate}}</label>\n <ui-select data-ng-model="item.lastName" theme="bootstrap" name="lastName" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_LASTNAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.lastName.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LASTNAME -->\n\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.street.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <ui-select data-ng-model="item.street" theme="bootstrap" name="street" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_STREET\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.street.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.postalCode.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <ui-select data-ng-model="item.postalCode" theme="bootstrap" name="postalCode" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_POSTALCODE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.postalCode.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.city.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <ui-select data-ng-model="item.city" theme="bootstrap" name="city" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_CITY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.city.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.phone.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <ui-select data-ng-model="item.phone" theme="bootstrap" name="phone" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_PHONE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.phone.$invalid && forms.phone.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START MOBILE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.mobile.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_MOBILE\' | translate}}</label>\n <ui-select data-ng-model="item.mobile" theme="bootstrap" name="mobile" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_MOBILE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.mobile.$invalid && forms.mobile.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOBILE -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.country.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <ui-select data-ng-model="item.country" theme="bootstrap" name="country" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_COUNTRY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.country.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n\n <!-- START DATEOFBIRTH -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.dateOfBirth.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_DATEOFBIRTH\' | translate}}</label>\n <ui-select data-ng-model="item.dateOfBirth" theme="bootstrap" name="dateOfBirth" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DATEOFBIRTH\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.dateOfBirth.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DATEOFBIRTH -->\n\n <!-- START TAGS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.tags.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_TAGS\' | translate}}</label>\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap" name="tags" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.tags.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAGS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.description.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <ui-select data-ng-model="item.description" theme="bootstrap" name="description" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DESCRIPTION\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.description.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.fax.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <ui-select data-ng-model="item.fax" theme="bootstrap" name="fax" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_FAX\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.fax.$invalid && forms.fax.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.email.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <ui-select data-ng-model="item.email" theme="bootstrap" name="email" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_EMAIL\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.email.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START COMPANY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.CompanyId.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_COMPANY\' | translate}}</label>\n <ui-select data-ng-model="item.CompanyId" theme="bootstrap" name="CompanyId" data-ng-disabled="!companies.length">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_COMPANY\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="company.id as company in companies | filter: $select.search">\n <div ng-bind-html="company.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="companies.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_COMPANIES_AVAILABLE\' | translate }}\n </p>\n </div>\n <span data-ng-show="forms.csv.CompanyId.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANY -->\n\n </div>\n </div>\n\n <!-- START CUSTOMFIELDS -->\n <div data-ng-repeat="customField in customFields">\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv[customField.name].$invalid && forms.csv.$submitted}">\n <label class="control-label">{{customField.alias}}</label>\n <ui-select data-ng-model="item[customField.name]" theme="bootstrap" name="{{customField.name}}" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{customField.alias}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv[customField.name].$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END CUSTOMFIELDS -->\n\n <div>\n <p>{{\'APPLICATION_IMPORT_SUCCEEDED\' | translate}}: {{import.succeeded}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': import.success + \'%\' }"></div>\n </div>\n </div>\n <div>\n <p>{{\'APPLICATION_IMPORT_FAILED\' | translate}}: {{import.failed}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-danger" role="progressbar" ng-style="{ \'width\': import.fail + \'%\' }"></div>\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="start()" ng-disabled="forms.csv.$invalid || !forms.csv.firstName || submitted">{{ \'APPLICATION_SUBMIT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="close()" data-ng-if="!importing">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="stop()" data-ng-if="importing">{{ \'APPLICATION_STOP\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/contact/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="/contactmanager/contacts/list">{{ \'APPLICATION_CONTACTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONTACTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length && !Auth.isAgent()">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle" data-ng-click="newContact();">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n <span class="btn default btn-file" data-ng-if="!Auth.isAgent()">\n <span class="fileinput-new">\n <i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_CSV\' | translate}}</span>\n <input type="file" accept=".csv" nv-file-select="" uploader="uploader"/>\n </span>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="gridOptions" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_LIST\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.list" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.list.name.$touched || forms.list.$submitted) && forms.list.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.list.name.$touched || forms.list.$submitted) && forms.list.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.list.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/list/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-tty"></i>\n <a href="/contactmanager/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-tty font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LISTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LIST\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/view/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CUSTOM_FIELD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.customField" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.customField.name.$touched || forms.customField.$submitted) && forms.customField.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.alias" required/>\n <span data-ng-show="(forms.customField.name.$touched || forms.customField.$submitted) && forms.customField.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.customField.type.$touched || forms.customField.$submitted) && forms.customField.type.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$translate.instant($select.selected.name)}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in types| filter: $select.search">\n {{$translate.instant(type.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.customField.type.$touched || forms.customField.$submitted) && forms.customField.type.$invalid && forms.customField.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <div ng-slide-down="item.type == \'select\'" lazy-render duration="1">\n <div>\n <label class="control-label">{{\'APPLICATION_CHOICES\' | translate}}</label>\n </div>\n <div class="padding-bottom" ng-repeat="choice in choices">\n <div class="form-group">\n <div class="input-group">\n <input type="text" class="form-control" ng-model="choice.value" required>\n <span class="input-group-btn">\n <button class="btn red" type="button"data-ng-click="removeField($index)" data-ng-disabled="choices.length<=1"><i class="fa fa-times"></i></button>\n </span>\n </div>\n </div>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CHOICE\' | translate}}\n </button>\n\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.customField.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/list/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/contactmanager/list/view/view.customFieldSettings.html",'<div class="row" data-ng-init="getCustomField()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CUSTOM_FIELD\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- GENERAL TAB -->\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCustomField()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="customField.alias" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <div ng-slide-down="customField.type == \'select\'" lazy-render duration="1" class="mbottom20">\n <div>\n <label class="control-label">{{\'APPLICATION_CHOICES\' | translate}}</label>\n </div>\n <div class="padding-bottom" ng-repeat="choice in choices">\n <div class="form-group">\n <div class="input-group">\n <input type="text" class="form-control" ng-model="choice.value" required>\n <span class="input-group-btn">\n <button class="btn red" type="button"data-ng-click="removeField($index)" data-ng-disabled="choices.length<=1"><i class="fa fa-times"></i></button>\n </span>\n </div>\n </div>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CHOICE\' | translate}}\n </button>\n\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="customField.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/contactmanager/list/view/view.customFields.html",'<div ui-view class="profile-content">\n<div class="row" data-ng-init="initCustomFields()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CUSTOM_FIELDS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CUSTOM_FIELD\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'), +a.put("app/contactmanager/list/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getList()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-tty"></i>\n <a href="/contactmanager/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n <i data-ng-show="list" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="list">\n <a href="#">{{list.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/list.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{list.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.contactmanager.lists.view.settings\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-if="!list.defaultEntry" data-ng-class="{active: $state.is(\'main.contactmanager.lists.view.agents\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.lists.view.customfields\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/customfields">\n <i class="icon-pencil"></i>\n {{ \'APPLICATION_CUSTOM_FIELDS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateList()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="list.name" data-ng-disabled="list.defaultEntry" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="list.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/dashboard/chat/chat.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="row">\n <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-ng-init="initAbandoned()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandoned || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDONED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/dashboard.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="navbar-header">\n <button type="button" class="navbar-toggle" data-ng-init="navCollapsed = true" data-ng-click="navCollapsed = !navCollapsed">\n <span class="sr-only">Toggle navigation</span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n </button>\n </div>\n\n <!-- Collect the nav links, forms, and other content for toggling -->\n <div class="collapse navbar-collapse" ng-class="!navCollapsed && \'in\'">\n <ul class="nav navbar-nav">\n <li data-ng-class="{active: $state.is(\'main.dashboard.voice\')}">\n <a href="/dashboard/voice">\n <b class=\'icon-earphones-alt\'></b>\n {{ \'APPLICATION_VOICE\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.chat\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(8)) && license.chat)">\n <a href="/dashboard/chat">\n <b class=\'icon-bubble\'></b>\n {{ \'APPLICATION_CHAT\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.mail\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(9)) && license.mail)">\n <a href="/dashboard/mail">\n <b class=\'icon-envelope\'></b>\n {{ \'APPLICATION_MAIL\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.fax\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(10)) && license.fax)">\n <a href="/dashboard/fax">\n <b class=\'icon-paper-plane\'></b>\n {{ \'APPLICATION_FAX\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.sms\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(11)) && license.messaging)">\n <a href="/dashboard/sms">\n <b class=\'glyphicon glyphicon-comment\'></b>\n {{ \'APPLICATION_SMS\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n <!-- /.navbar-collapse -->\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/dashboard/fax/fax.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/mail/mail.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/sms/sms.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/voice/voice.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject">{{ \'APPLICATION_INBOUND\' | translate }}</span><small class="font-grey-cascade pull-right">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initWaiting()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{waiting || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_WAITING\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initActive()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{active || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ACTIVE\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAnswered()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{answered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAbandoned()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandoned || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDONED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAvgAnswerTime()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{avganswertime || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_ANSWER_TIME\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAvgTalkTime()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{avgtalktime || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_TALK_TIME\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAnswerRate()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{answerrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWER_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAbandonRate()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandonrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDON_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12" data-ng-init="initTotalOffered()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-info"></i>\n </div>\n <div class="details">\n <div class="number">\n {{totaloffered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_TOTAL_OFFERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-info"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n <fieldset>\n <legend>\n <span class="caption-subject">{{ \'APPLICATION_OUTBOUND\' | translate }}</span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutbound()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-call-out"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutbound || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_MANUAL_OUTBOUND\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundGlobalDuration()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundglobalduration || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_GLOBAL_DURATION\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundAnswered()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundanswered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundAvgDuration()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundavgduration || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_DURATION\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-ng-init="initManualOutboundAnswerRate()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundanswerrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWER_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </fieldset>\n </div>\n</div>\n'),a.put("app/desk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DESK_COM\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="accounts.checked.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/desk/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="getAccounts([\'name\',\'username\',\'remoteUri\',\'authType\',\'consumerKey\',\'consumerSecret\',\'token\',\'tokenSecret\',\'password\'])" csv-header="[\'Name\', \'Username\', \'Remote Address\', \'Authentication Type\', \'Consumer Key\', \'Consumer Secret\', \'Token\', \'Token Secret\', \'Password\']" field-separator=";" filename="desk_accounts.csv">\n <i class="icon-cloud-download"></i></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedDeskAccounts" st-pipe="initList" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="7">\n <div class="row">\n <div class="col-md-6">\n <ui-select class="input-xsmall" ng-model="conf.accountsByPage" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="accountByPage in accountsByPage | filter: $select.search">\n <div ng-bind-html="accountByPage.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th class="small-cells" style="text-align: center; vertical-align: middle"><input type="checkbox" ng-change="check(account, checked)" checklist-model checklist-value="id"></th>\n <th st-sort="name">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="username">{{ \'APPLICATION_EMAIL\' | translate }}</th>\n <th st-sort="remoteUri">{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}</th>\n <th>{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="account in displayedDeskAccounts" class="animate-repeat">\n <td style="text-align: center; vertical-align: middle"><input type="checkbox" checklist-model="accounts.checked" checklist-value="account.id"></td>\n <td>{{account.name}}</td>\n <td>{{account.username}}</td>\n <td>{{account.remoteUri}}</td>\n <td>{{account.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/desk/view/{{account.id}}/account">\n {{ \'APPLICATION_EDIT\' | translate }}\n </a>\n <a class="btn default btn-xs green-stripe" data-ng-click="checkAccount(account.id)">\n {{ \'APPLICATION_CHECK\' | translate }}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(account.name,account.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="displayedDeskAccounts.length">\n <td colspan="7" style="text-align:center;">\n <i>No account available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td/>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="email" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_EMAIL\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="remoteUri" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_REMOTE_ADDRESS\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td/>\n <td/>\n </tr>\n <tr>\n <td colspan="7" class="text-center">\n <div class="pagination" st-pagination st-items-by-page="conf.accountsByPage.value" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/desk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="account.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'basic\', \'oauth\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="account.authType == \'basic\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONSUMER KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerKey.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerKey" placeholder="{{\'APPLICATION_CONSUMER_KEY\' | translate}}" class="form-control" data-ng-model="account.consumerKey" required/>\n <span data-ng-show="forms.formSetting.consumerKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER KEY -->\n\n <!-- START CONSUMER SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerSecret.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerSecret" placeholder="{{\'APPLICATION_CONSUMER_SECRET\' | translate}}" class="form-control" data-ng-model="account.consumerSecret" required/>\n <span data-ng-show="forms.formSetting.consumerSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER SECRET -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="account.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <!-- START TOKEN SECRET-->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.tokenSecret.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="tokenSecret" placeholder="{{\'APPLICATION_TOKEN_SECRET\' | translate}}" class="form-control" data-ng-model="account.tokenSecret" required/>\n <span data-ng-show="forms.formSetting.tokenSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN SECRET-->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/desk/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.id as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/desk/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/desk/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/desk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.desk.view.account\')}">\n <a ng-href="/desk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.desk.view.configurations\') || $state.is(\'main.desk.view.configuration\')}">\n <a ng-href="/desk/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/desk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/desk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/desk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'basic\', \'oauth\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="item.authType == \'basic\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONSUMER KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerKey.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerKey" placeholder="{{\'APPLICATION_CONSUMER_KEY\' | translate}}" class="form-control" data-ng-model="item.consumerKey" required/>\n <span data-ng-show="forms.formSetting.consumerKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER KEY -->\n\n <!-- START CONSUMER SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerSecret.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerSecret" placeholder="{{\'APPLICATION_CONSUMER_SECRET\' | translate}}" class="form-control" data-ng-model="item.consumerSecret" required/>\n <span data-ng-show="forms.formSetting.consumerSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER SECRET -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="item.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <!-- START TOKEN SECRET-->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.tokenSecret.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="tokenSecret" placeholder="{{\'APPLICATION_TOKEN_SECRET\' | translate}}" class="form-control" data-ng-model="item.tokenSecret" required/>\n <span data-ng-show="forms.formSetting.tokenSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN SECRET-->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/freshdesk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FRESHDESK\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="accounts.checked.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/freshdesk/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="getAccounts([\'name\',\'username\',\'remoteUri\',\'apiKey\'])" csv-header="[\'Name\', \'Username\', \'Remote Address\', \'Api Key\']" field-separator=";" filename="freshdesk_accounts.csv">\n <i class="icon-cloud-download"></i></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedFreshdeskAccounts" st-pipe="initList" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="7">\n <div class="row">\n <div class="col-md-6">\n <ui-select class="input-xsmall" ng-model="conf.accountsByPage" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="accountByPage in accountsByPage | filter: $select.search">\n <div ng-bind-html="accountByPage.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th class="small-cells" style="text-align: center; vertical-align: middle"><input type="checkbox" ng-change="check(account, checked)" checklist-model checklist-value="id"></th>\n <th st-sort="name">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="username">{{ \'APPLICATION_EMAIL\' | translate }}</th>\n <th st-sort="remoteUri">{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}</th>\n <th>{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="account in displayedFreshdeskAccounts" class="animate-repeat">\n <td style="text-align: center; vertical-align: middle"><input type="checkbox" checklist-model="accounts.checked" checklist-value="account.id"></td>\n <td>{{account.name}}</td>\n <td>{{account.username}}</td>\n <td>{{account.remoteUri}}</td>\n <td>{{account.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/freshdesk/view/{{account.id}}/account">\n {{ \'APPLICATION_EDIT\' | translate }}\n </a>\n <a class="btn default btn-xs green-stripe" data-ng-click="checkAccount(account.id)">\n {{ \'APPLICATION_CHECK\' | translate }}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(account.name,account.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="displayedFreshdeskAccounts.length">\n <td colspan="7" style="text-align:center;">\n <i>No account available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td/>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="email" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_EMAIL\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="remoteUri" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_REMOTE_ADDRESS\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td/>\n <td/>\n </tr>\n <tr>\n <td colspan="7" class="text-center">\n <div class="pagination" st-pagination st-items-by-page="conf.accountsByPage.value" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START API KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.apiKey.$invalid}">\n <label class="control-label">{{\'APPLICATION_API_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="apiKey" placeholder="{{\'APPLICATION_API_KEY\' | translate}}" class="form-control" data-ng-model="account.apiKey" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected[0]}}</ui-select-match>\n <ui-select-choices repeat="item[0] as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item[0] | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/freshdesk/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/freshdesk/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/freshdesk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.freshdesk.view.account\')}">\n <a ng-href="/freshdesk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.freshdesk.view.configurations\') || $state.is(\'main.freshdesk.view.configuration\')}">\n <a ng-href="/freshdesk/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/freshdesk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/freshdesk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START API KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.apiKey.$invalid}">\n <label class="control-label">{{\'APPLICATION_API_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="apiKey" placeholder="{{\'APPLICATION_API_KEY\' | translate}}" class="form-control" data-ng-model="item.apiKey" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/integration/list/list.html",'\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-game-controller"></i>\n <a href="/integrations/list">{{ \'APPLICATION_INTEGRATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initList()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-eye font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTEGRATIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <span class="btn green-jungle btn-file">\n <span> <i class="icon-plus"></i> New App </span>\n <input type="file" accept=".zip" nv-file-select="" uploader="uploader"/>\n </span>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="displayedIntegrations" filename="integrations.csv">\n <i class="icon-cloud-download"></i></a>\n <a class="btn btn-icon-only btn-default fullscreen" href="#"></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedIntegrations" st-safe-src="integrations" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="6">\n <div class="row">\n <div class="col-md-6">\n <select class="form-control input-small select2me" data-ng-model="integrationsByPage">\n <option value="10">10</option>\n <option value="25">25</option>\n <option value="50">50</option>\n <option value="{{integrations.length}}">{{ \'APPLICATION_ALL\' | translate }}</option>\n </select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th st-sort="id" width="5%" st-sort-default="reverse">{{ \'APPLICATION_ID\' | translate }}</th>\n <th st-sort="fullname">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_FILENAME\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_VERSION\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="integration in displayedIntegrations">\n <td>{{integration.id}}</td>\n <td>{{integration.name}}</td>\n <td>{{integration.filename}}</td>\n <td>{{integration.version}}</td>\n <td>{{integration.description}}</td>\n <td>\n <span class="btn default btn-xs blue-stripe btn-file">\n <span> {{ \'APPLICATION_UPDATE\' | translate }} </span>\n <input type="file" accept=".zip" nv-file-select="" uploader="uploader"/>\n </span>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(integration.name, integration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="integrations.length">\n <td colspan="6" style="text-align:center;">\n <i>No integrations available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="id" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="filename" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_FILENAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n </td>\n <td>\n </td>\n <td>\n </td>\n </tr>\n <tr>\n <td colspan="6" class="text-center">\n <div st-pagination class="pagination" st-items-by-page="integrationsByPage" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/jscripty/project/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/jscripty/project/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROJECTS\' | translate }}</a> </span>\n </div>\n <div class="actions" ng-show="isAdmin">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROJECT\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n\n <!-- <div class="table-responsive"> -->\n\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/jscripty/project/report/report.detail.html",'<div class="portlet light bordered" data-ng-init="getProjectDetail();initView()">\n<div class="portlet-title">\n<div class="caption font-green-sharp">\n<i class="fa fa-list font-green-sharp"></i>\n<span class="caption-subject">{{ \'APPLICATION_SUMMARY\' | translate }}</a> </span>\n</div>\n<div class="actions">\n <div class="btn-group">\n <button class="btn btn-icon-only btn-primary" data-ng-click="pdf(\'header\',projectDetail)">\n <i class="fa fa-download"></i>\n </button>\n <!-- <button class="btn btn-icon-only btn-default" data-ng-click="accordion.expandAll()">\n <i class="fa fa-folder-open-o"></i>\n </button>\n <button class="btn btn-icon-only btn-default" data-ng-click="accordion.collapseAll()">\n <i class="fa fa-folder"></i>\n </button> -->\n </div>\n</div>\n</div>\n<div id=\'detail\' class="portlet-body">\n <div class="alert alert-success text-center" ng-show="!projectDetail.length">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div>\n <div class="row" ng-show="projectDetail.length">\n <div class="col-md-10 col-md-offset-1">\n <div id="header" class="panel panel-info">\n <div class="panel-heading">\n <strong>Project Name: </strong>{{project.name}}<br>\n <strong>Project Id: </strong>{{project.id}}<br>\n <strong>Completed: </strong>{{projectStats.completed}}<br>\n <strong>Incomplete: </strong>{{projectStats.incomplete}}<br>\n <strong>% Completed: </strong>{{projectStats.completed * 100 /(projectStats.completed + projectStats.incomplete) | number:2}}<br>\n </div>\n </div><br>\n <v-accordion class="vAccordion--default" multiple control="accordion">\n <v-pane id="{{question.question_id }}" ng-repeat="question in projectDetail" expanded="true">\n <v-pane-header>\n Question Id: {{question.question_id}}\n </v-pane-header>\n <v-pane-content>\n <div ng-class=" {{question.graphData.length > 0}} ? \'col-md-8\' : \'col-md-12\'">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4><strong>{{question.question_label}}</strong> : {{question.question_text}}</h4>\n <br><br>\n <table ng-if="question.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th>Response</th>\n <th> #Response </th>\n <th> % </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-if="!choice.other_option" ng-repeat="choice in question.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <td>{{choice.percentage | number:2}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <div class="row" ng-if="question.question_other_label">\n <!-- <div class="row" ng-if="choice.other_option" ng-repeat="choice in question.choices "> -->\n <!-- <div class="col-md-10 col-md-offset-1 ">\n <strong>{{choice.value}}</strong> <span class="badge">{{choice.count}}</span><br>\n </div> -->\n <!-- accordions can be nested :) -->\n <v-accordion >\n <v-pane >\n <!-- ng-repeat="subpane in pane.subpanes" ng-disabled="subpane.isDisabled" -->\n <v-pane-header>\n <strong>{{question.question_other_label}}</strong><br>\n </v-pane-header>\n <v-pane-content>\n <table ng-if="question.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th>Response</th>\n <th> #Response </th>\n <!-- <th> % </th> -->\n </tr>\n </thead>\n <tbody>\n\n <tr ng-if="choice.other_option" ng-repeat="choice in question.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <!-- <td>{{choice.percentage | number:2}}</td> -->\n </tr>\n </tbody>\n </table>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4> <strong>Total Respondents: {{question.total}}</strong></h4><br>\n </div>\n </div>\n </div>\n <div class=" col-md-4 pull-right " ng-if="question.graphType == \'bar\' && question.graphData">\n <canvas class="chart chart-bar" chart-data="question.graphData" chart-labels="question.graphLabels" chart-legend="true">\n </canvas>\n </div>\n <div class="col-md-4 pull-right " ng-if="question.graphType == \'pie\' && question.graphData">\n <canvas class="chart chart-pie" chart-data="question.graphData" chart-labels="question.graphLabels" chart-legend="true">\n </canvas>\n </div>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-edit"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_JSCRIPTY\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/report.png" class="img-responsive" >\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{project.name}}[{{project.id}}]\n </div>\n <div class="profile-usertitle-job">\n\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.sessions\')|| $state.is(\'main.jscripty.projects.report.sessionDetail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/sessions\'>\n <i class="icon-settings"></i>\n Sessions</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.summary\') || $state.is( \'main.jscripty.projects.report.questionDetail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/summary\'>\n <i class="fa fa-bar-chart"></i>\n Questions</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.detail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/detail\'>\n <i class="fa fa-list"></i>\n Summary</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.inputs\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/inputs\'>\n <i class="fa fa-edit"></i>\n Inputs</a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n\n </div>\n\n </div>\n\n <div class="profile-content margin-top-20">\n <div class="row">\n <div class="col-md-12">\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-green-sharp">{{projectStats.started}}</h3>\n <small>Started</small>\n </div>\n <div class="icon">\n <i class="icon-pie-chart"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success green-sharp">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-red-haze">{{projectStats.incomplete}}</h3>\n <small>Incomplete</small>\n </div>\n <div class="icon">\n <i class="icon-chart"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success red-haze">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-blue-sharp">{{projectStats.completed}}</h3>\n <small>Completed</small>\n </div>\n <div class="icon">\n <i class="icon-like"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success blue-sharp">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div ui-view class="col-md-12">\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/jscripty/project/report/report.inputs.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getQuestionInputs()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-edit font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INPUTS\' | translate }}</a> </span>\n </div>\n <div class="tools">\n <!-- <a href="" class="fullscreen" data-original-title="" title="">\n </a> -->\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.question.detail.html",'<div class="row" data-ng-init="getDetail()">\n <div class="col-md-12">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-list font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DETAIL\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body" >\n <div class="alert alert-success text-center" ng-show="!questionDetail">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div>\n <div class="row margin-top-20" ng-show="questionDetail">\n <div class="col-md-10 col-md-offset-1">\n <div class="panel panel-info" >\n <div class="panel-heading">\n <h3 class="panel-title">\n\n <i class="fa-chart "></i>Question Id: {{questionDetail.question_id}}\n </div>\n <div class="panel-body">\n <div class="row">\n <div class="col-md-12">\n <h4><strong>{{questionDetail.question_label}}</strong></h4>\n </div>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <strong><h4>{{questionDetail.question_text}}</h4></strong><br>\n </div>\n </div>\n <div class="row">\n <div class="col-md-6">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <!-- <div class="alert alert-success text-center" ng-show="!questionDetail.choices.length">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div> -->\n <table ng-if="questionDetail.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th style="width=5%"> Value </th>\n <th style="width=5%"> Count </th>\n <th ng-if="question.graphType != \'PolarArea\'" style="width=5%"> % </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-if="!choice.other_option" ng-repeat="choice in questionDetail.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <td ng-if="question.graphType != \'PolarArea\'">{{choice.percentage | number:2}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <div class="row" ng-if="choice.other_option" ng-repeat="choice in questionDetail.choices ">\n <div class="col-md-6 col-md-offset-3 ">\n <strong><a href="">{{choice.value}}</a> </strong> <span class="badge">{{choice.count}}</span><br>\n\n </div>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4> <strong>Total: {{questionDetail.total}}</strong></h4><br>\n </div>\n </div>\n </div>\n <div class="col-md-6 pull-right ">\n <canvas id="base" class="chart-base" chart-type="questionDetail.graphType"\n chart-data="questionDetail.graphData" chart-labels="questionDetail.graphLabels" chart-legend="true">\n </canvas>\n <!-- <button class="btn btn-success btn-sm pull-right" ng-click="toggle(questionDetail)">{{questionDetail.graphType}}</button> -->\n </div>\n </div>\n\n </div>\n\n </div>\n\n </div>\n </div>\n\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.session.detail.html",'\n\n<div class="row" data-ng-init="getSessionDetails()">\n <div class="col-md-12">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-list font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DETAIL\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn btn-icon-only btn-primary" data-ng-click="pdf(\'header\',sessionQuestions)">\n <i class="fa fa-download"></i>\n </button>\n <!-- <button class="btn btn-icon-only btn-default" data-ng-click="accordion.expandAll()">\n <i class="fa fa-plus-square-o"></i>\n </button>\n <button class="btn btn-icon-only btn-default" data-ng-click="accordion.collapseAll()">\n <i class="icon-collapse-alt"></i>\n </button> -->\n </div>\n </div>\n </div>\n <div class="portlet-body" style="height: auto;">\n <div class="row margin-top-20">\n <div class="col-md-10 col-md-offset-1">\n <div id = "header" class="panel panel-info">\n <div class="panel-heading">\n <strong>Project Name: </strong>{{project.name}}<br>\n <strong>Project Id: </strong>{{project.id}}<br>\n <strong>Session Id: </strong>{{session.session_id}}<br>\n <strong>Status: </strong>{{session.status}}<br>\n <strong>Started At: </strong>{{session.createdAt}}<br>\n <strong>Closed At: </strong>{{session.completedAt}}<br>\n </div>\n </div>\n <v-accordion class="vAccordion--default" multiple control="accordion">\n <v-pane id="{{question.question_id }}" ng-repeat=" question in sessionQuestions | orderBy:\'index\'"" expanded="true">\n <v-pane-header>\n Question Id: {{question.question_id}}\n </v-pane-header>\n <v-pane-content>\n <h4><strong>{{question.question_label}}</strong> : {{question.question_text}}</h4>\n <div ng-if="question.question_type == \'question\'">\n <h4><strong>Answer: </strong>{{question.question_answer}}</h4>\n </div>\n <div ng-if="question.question_other_label">\n <h4>\n <strong>{{question.question_other_label}}: </strong>\n {{question.question_other_answer || \'No Value\'}}\n </h4>\n </div>\n <table class="table table-hover" ng-if="question.ReportJscriptyInputs.length">\n <thead>\n <tr>\n <th > Label </th>\n <th >Answer </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="input in question.ReportJscriptyInputs |orderBy:\'id\'">\n <td>{{input.input_label}}</td>\n <td>{{input.input_value || \'No Value\'}}</td>\n </tr>\n </tbody>\n </table>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.sessions.html",'\n <div class="row" >\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getProjectSessions()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SESSIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();initView()">\n <i class="icon-reload"></i>\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/jscripty/project/report/report.summary.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getQuestionSummary()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-bar-chart font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUESTIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <!-- <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();initView()">\n <i class="icon-reload"></i>\n </a> -->\n </div>\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/view/view.html",'<div class="row" data-ng-init="getProject()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-edit"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_JSCRIPTY\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a ng-href="/jscripty/projects/view/{{jscriptyProject.id}}">{{jscriptyProject.name}}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div id="geEditor" class="geEditor"></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<script>\n\n\n</script>\n'),a.put("app/landing/landing.html",'<!-- BEGIN LOGO -->\n<div class="logo">\n <a href="index.html">\n <img src="assets/images/logo-big.png" alt=""/>\n </a>\n</div>\n<!-- END LOGO -->\n\n<!-- BEGIN LANDING -->\n<div data-ng-init="initLanding()">\n <div data-ng-show="message" class="col-md-12 page-500" style="padding-bottom: 50px;">\n <div class="number">\n Oops!\n </div>\n <div class=" details" style="color: white;">\n <h3>{{message | translate}}.</h3>\n <p>\n Please contact your administrator.<br><br>\n </p>\n </div>\n </div>\n</div>\n<!-- END LANDING -->\n\n<div class="copyright">\n xCALLY Motion | 2016 © Powered by Xenialab\n</div>\n'), +a.put("app/login/login.html",'<!-- BEGIN LOGO -->\n<div class="logo">\n <a href="index.html">\n <img src="assets/images/logo-big.png" alt=""/>\n </a>\n</div>\n<!-- END LOGO -->\n<!-- BEGIN LOGIN -->\n<div class="content">\n <!-- BEGIN LOGIN FORM -->\n <form class="login-form" name="loginForm" data-ng-show="!flagLogin1" data-ng-submit="login(loginForm)" novalidate>\n <h3 class="form-title">Sign In</h3>\n <div class="alert alert-danger" data-ng-class="{\'display-hide\': !loginSubmitted || !errorLogin}">\n <button class="close" data-close="alert"></button>\n <span>{{ errorLog ? errorLog : \'Enter any username and password.\'}}</span>\n </div>\n <div class="form-group" data-ng-class="{\'has-error\': loginSubmitted && loginForm.name.$invalid}">\n <label class="control-label">Username</label>\n <div class="input-icon">\n <i class="fa fa-user"></i>\n <input ng-enter="login(loginForm)" class="form-control form-control-solid placeholder-no-fix" type="text" autocomplete="off" placeholder="Username" name="name" ng-model="userLogin.name" required/>\n </div>\n <span data-ng-show="loginSubmitted && loginForm.name.$invalid" class="help-block">Username is required.</span>\n </div>\n <div class="form-group" data-ng-class="{\'has-error\': loginSubmitted && loginForm.password.$invalid}">\n <label class="control-label">Password</label>\n <div class="input-icon">\n <i class="fa fa-lock"></i>\n <input ng-enter="login(loginForm)" class="form-control form-control-solid placeholder-no-fix" type="password" autocomplete="off" placeholder="Password" name="password" ng-model="userLogin.password" required/>\n </div>\n <span data-ng-show="loginSubmitted && loginForm.password.$invalid" class="help-block">Password is required.</span>\n </div>\n <div class="form-actions">\n <button type="submit" class="btn btn-success uppercase">Login</button>\n <label class="rememberme check">\n <input type="checkbox"> Remember me\n </label>\n <!-- <label class="rememberme check">\n <input type="checkbox" name="remember" value="1"/>Remember </label> -->\n <!-- <a href="javascript:;" id="forget-password" class="forget-password">Forgot Password?</a> -->\n </div>\n <div class="login-options">\n <h4>Follow Us on</h4>\n <ul class="social-icons">\n <li>\n <a class="social-icon-color facebook" data-original-title="facebook" href="https://www.facebook.com/xenialab"></a>\n </li>\n <li>\n <a class="social-icon-color twitter" data-original-title="Twitter" href="https://twitter.com/xenialab"></a>\n </li>\n <li>\n <a class="social-icon-color googleplus" data-original-title="Goole Plus" href="#"></a>\n </li>\n <li>\n <a class="social-icon-color linkedin" data-original-title="Linkedin" href="#"></a>\n </li>\n </ul>\n </div>\n </form>\n</div>\n<div class="copyright">\n xCALLY Motion | {{year}} - {{year + 1}} © Powered by Xenialab\n</div>\n<!-- END LOGIN -->\n'),a.put("app/main/chooseContact.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_CHOOSE_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <table st-table="rowCollection" class="table table-striped">\n <tbody>\n <tr ng-repeat="contact in contacts">\n <td>{{contact.firstName}} {{contact.lastName || \'\'}}</td>\n <td>{{contact.List.name}}</td>\n <td>\n <button class="btn default btn-xs green-stripe" data-ng-click="open(contact)">\n {{ \'APPLICATION_OPEN\' | translate}}\n </button>\n </td>\n </tr>\n <tr data-ng-hide="contacts.length">\n <td colspan="3" style="text-align:center;">\n <i>{{ \'MESSAGE_NO_CONTACTS_AVAILABLE\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="open()"><i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/closeEditedTab.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>{{\'MESSAGE_CLOSE_EDITED_TAB\' | translate}}</p>\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/closeEditedTab.modal.jscripty.html",' <div class="modal-header" data-ng-init="init()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n <!-- <h3 ng-if="projectStatus == \'incomplete\'" class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3> -->\n\n</div>\n<div class="modal-body">\n<!-- <div ng-if="projectStatus == \'incomplete\'" class="modal-body"> -->\n <p>{{\'MESSAGE_CLOSE_INCOMPLETE\' | translate}}</p>\n</div>\n\n\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/cm.disposition.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()" data-ng-disabled="!item.disposition">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'),a.put("app/main/company.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_COMPANY_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADDRESS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_SHIPMENT_ADDRESS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCompany()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <input readonly type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="company.name" required/>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input readonly type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="company.vat"/>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input readonly type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="company.companyId"/>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input readonly type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="company.website"/>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input readonly type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="company.email"/>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input readonly type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="company.phone"/>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input readonly type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="company.fax"/>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input readonly type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="company.type"/>\n </div>\n <!-- END TYPE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea readonly type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="company.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n </div>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.address" novalidate>\n <!-- START STREET -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input readonly type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.street"/>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input readonly type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.postalCode"/>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input readonly type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.city"/>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input readonly type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.country"/>\n </div>\n <!-- END COUNTRY -->\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.shipmentAddress" novalidate>\n <!-- START STREET -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input readonly type="text" name="sStreet" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.sStreet"/>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input readonly type="text" name="sPostalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.sPostalCode"/>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input readonly type="text" name="sCity" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.sCity"/>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input readonly type="text" name="sCountry" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.sCountry"/>\n </div>\n <!-- END COUNTRY -->\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/main/customDateFilter.modal.html",'<div class="modal-body">\n <uib-datepicker ng-model="filterDate"\n class="well well-sm">\n </uib-datepicker>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="setFilterDate(filterDate)">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancelDateFilter()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/customDateFilterHeader.html",'<input class="ui-grid-filter-input date-time-filter-buttons pointer-cursor" style="width:90%;padding:inherit;" data-ng-click="openDatePicker(colFilter)" placeholder="{{ colFilter.name }}" readonly value="{{colFilter.term | date:\'dd-MM-yyyy\'}}">\n<span role="button" class="ui-grid-filter-button-select cancel-custom-date-range-filter-button ng-scope" data-ng-click="removeFilter(colFilter, $index)" data-ng-if="!colFilter.disableCancelFilterButton" data-ng-disabled="colFilter.term === undefined || colFilter.term === null || colFilter.term === \'\'" data-ng-show="colFilter.term !== undefined && colFilter.term != null" tabindex="0" aria-hidden="false" aria-disabled="false" style="right:22px;">\n <i class="ui-grid-icon-cancel cancel-custom-date-range-filter" ui-grid-one-bind-aria-label="aria.removeFilter" aria-label="Remove Filter"> </i>\n</span>\n'),a.put("app/main/main.html",'<!-- BEGIN HEADER -->\n<div data-ng-include="\'components/header/header.html\'" data-ng-controller="HeaderController" class="page-header navbar navbar-fixed-top">\n</div>\n<!-- END HEADER -->\n\n<div class="clearfix">\n</div>\n<!-- BEGIN CONTAINER -->\n<div class="page-container" data-ng-init="initMain()">\n\n <!-- BEGIN SIDEBAR -->\n <div data-ng-include="\'components/sidebar/sidebar.html\'" data-ng-controller="SidebarController" class="page-sidebar-wrapper">\n </div>\n <!-- END SIDEBAR -->\n\n <!-- BEGIN CONTENT -->\n <div class="page-content-wrapper">\n <div class="page-content" data-ng-class="{\'demo\': !license.expiration}">\n\n <!-- BEGIN PAGE CONTENT -->\n <uib-tabset>\n <uib-tab select="addWorkspace()" active="mainTab.active">\n <uib-tab-heading>\n Motion <i class="icon-rocket"></i>\n </uib-tab-heading>\n <div ui-view class=""></div>\n </uib-tab>\n <uib-tab class="motion-{{workspace.type}}-uib-tab" data-ng-repeat="workspace in workspaces" active="workspace.active" data-ng-switch="workspace.type" select="select(workspace)" deselect="deselect(workspace)">\n <uib-tab-heading>\n <i data-ng-if="workspace.class" class="prova" data-ng-class="workspace.class"></i> {{workspace.name | truncate: 25: \'...\': true}} <span class="badge badge-danger" data-ng-if="workspace.unread">{{workspace.unread}}</span> <i class="icon-close pointer-cursor" data-ng-click="closeTab($index)"></i>\n </uib-tab-heading>\n <div class="" data-ng-switch="workspace.type">\n <new-contact data-ng-switch-when="newContact" workspace="workspace" index="$index" on-submit="createContact(index,item)"></new-contact>\n <contact data-ng-switch-when="contact" workspace="workspace" index="$index" on-submit="updateContact(index,item)"></contact>\n <jscripty data-ng-switch-when="jscripty" workspace="workspace" index="$index" on-submit="closeJscriptyTab(index)"></jscripty>\n <!-- <jscripty data-ng-switch-when="jscripty" workspace="workspace" index="$index" on-submit="closeTab(index,item)"></jscripty> -->\n <chat-room data-ng-switch-when="chatRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></chat-room>\n <fax-room data-ng-switch-when="faxRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></fax-room>\n <mail-room data-ng-switch-when="mailRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></mail-room>\n <sms-room data-ng-switch-when="smsRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></sms-room>\n </div>\n </uib-tab>\n </uib-tabset>\n <!-- END PAGE CONTENT -->\n\n </div>\n </div>\n <!-- END CONTENT -->\n\n</div>\n<!-- END CONTAINER -->\n\n<!-- BEGIN FOOTER -->\n<div data-ng-include="\'components/footer/footer.html\'" data-ng-controller="FooterController" class="page-footer">\n</div>\n<!-- END FOOTER -->\n\n<!-- BEGIN JAVASCRIPTS(Load javascripts at bottom, this will reduce page load time) -->\n<!-- BEGIN CORE PLUGINS -->\n<!--[if lt IE 9]>\n<script src="../../assets/global/plugins/respond.min.js"></script>\n<script src="../../assets/global/plugins/excanvas.min.js"></script>\n<![endif]-->\n\n<!-- END JAVASCRIPTS -->\n'),a.put("app/main/template/actionBuilder/template.actionBuilderIntegration.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" data-ng-change="changeIntegration()" required>\n <ui-select-match placeholder="{{ \'APPLICATION_INTEGRATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="integration.state as integration in integrations | filter: $select.search">\n <div ng-bind-html="integration.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_INTEGRATION\' | translate}}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data1 && accounts && randomName" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data2" name="data2{{randomName}}" theme="bootstrap" data-ng-change="changeAccount();" required>\n <ui-select-match placeholder="{{\'APPLICATION_ACCOUNT\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in accounts | filter: $select.search">\n <div ng-bind-html="account.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_ACCOUNT\' | translate}}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data2 && configurations && randomName" data-ng-class="{\'has-error\': (form[\'data3\'+randomName].$touched || form.$submitted) && form[\'data3\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data3" name="data3{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CONFIGURATION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="config.id as config in configurations | filter: $select.search">\n <div ng-bind-html="config.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_CONFIGURATION\' | translate}}\n </span>\n <span data-ng-show="(form[\'data3\'+randomName].$touched || form.$submitted) && form[\'data3\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderJscripty.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.id as project in projects | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderMotionBar.html",'<!-- data1: 0 POPUP, 1 URL, 2 WINAPP -->\n<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required data-ng-change="changeMode();">\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="motionAction.value as motionAction in motionActions | filter: $select.search">\n <div ng-bind-html="motionAction.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_TYPE\' | translate }}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:0 data2:Template -->\n<div data-ng-if="randomName && element.data1==0" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data2" name="data2{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TEMPLATE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_TEMPLATE\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:1 data2:URL -->\n<div data-ng-if="randomName && element.data1==1" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required placeholder="{{ \'APPLICATION_URL\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_URL\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:2 data2:Application data3:Arguments -->\n<div data-ng-if="randomName && element.data1==2" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_APPLICATION\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName && element.data1==2" class="form-group col-md-2">\n <input type="text" ng-model="element.data3" name="data3{{randomName}}" class="form-control" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_ARGUMENTS\' | translate }}\n </span>\n</div>\n'),a.put("app/main/template/actionBuilder/template.actionBuilderStatus.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="status.value as status in states | filter: $select.search">\n <div ng-bind-html="status.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderTemplate.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required/>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="col-md-2">\n <input type="text" ng-model="element.data3" class="form-control"/>\n</div>\n'),a.put("app/main/template/actionBuilder/template.actionBuilderUrlForward.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in types | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_TYPE\' | translate}}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data1 && randomName" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="url" ng-model="element.data2" placeholder="{{ \'APPLICATION_URL\' | translate }}" name="data2{{randomName}}" class="form-control" required/>\n <span class="help-block">\n {{\'APPLICATION_URL\' | translate}}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"), +a.put("app/main/template/template.conditionBuilder.html",'<div data-ng-if="randomName" class="form-group col-md-3" data-ng-class="{\'has-error\': (form[\'field\'+randomName].$touched || form.$submitted) && form[\'field\'+randomName].$invalid}">\n <ui-select data-ng-model="element.field" name="field{{randomName}}" theme="bootstrap" data-ng-change="checkCondition(element.field)" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="condition.value as condition in service.services[serviceindex].conditions | filter: $select.search">\n <div ng-bind-html="condition.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'field\'+randomName].$touched || form.$submitted) && form[\'field\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName && element.field" class="form-group col-md-3" data-ng-class="{\'has-error\': (form[\'operator\'+randomName].$touched || form.$submitted) && form[\'operator\'+randomName].$invalid}">\n <ui-select data-ng-model="element.operator" name="operator{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="operator.value as operator in _.find(service.services[serviceindex].conditions,{value:element.field}).operators | filter: $select.search">\n <div ng-bind-html="operator.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'operator\'+randomName].$touched || form.$submitted) && form[\'operator\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="col-md-3" data-ng-if="elementType === \'input\' && randomName && element.field" data-ng-class="{\'has-error\': (form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$invalid}">\n <input type="text" ng-model="element.value" class="form-control" name="value{{randomName}}" required/>\n <span data-ng-show="(form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-3" data-ng-if="elementType === \'select\' && randomName && element.field" data-ng-class="{\'has-error\': (form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$invalid}">\n <ui-select data-ng-model="element.value" name="value{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="value.value as value in values| filter: $select.search">\n <div ng-bind-html="value.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/template.contactTab.html",'<div class="row margin-top-20 contact-tab-container">\n <div class="col-md-12 contact-tab">\n <form name="forms.general" data-ng-submit="submit({index:index,item:contact})" novalidate>\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#tab_1_1{{contact.id || \'\'}}" data-toggle="tab">{{\'APPLICATION_DETAIL\' | translate}}</a>\n </li>\n <li data-ng-if="contact.id">\n <a href="#tab_1_2{{contact.id || \'\'}}" data-toggle="tab">{{\'APPLICATION_LOG\' | translate}}</a>\n </li>\n</ul>\n<div class="tab-content">\n <div class="tab-pane fade active in" id="tab_1_1{{contact.id || \'\'}}">\n <!--end add-portfolio-->\n <div class="row portfolio-block" data-ng-if="workspace.data">\n <div class="col-md-3">\n <div class="portfolio-text">\n <img src="assets/images/media/CmCall.png" alt=""/>\n <div class="portfolio-text-info">\n <h4>{{\'MESSAGE_INBOUND_CALL_FROM\' | translate}} - {{workspace.data.calleridnum}}</h4>\n <p>\n {{\'MESSAGE_CALL_UNIQUEID\' | translate}} : {{workspace.data.uniqueid}}\n </p>\n </div>\n </div>\n </div>\n <div class="col-md-2 portfolio-stat">\n <div>{{\'APPLICATION_QUEUE\' | translate}} </div>\n <p> {{workspace.data.queue}} </p>\n </div>\n <div class="col-md-3 portfolio-stat">\n <div>{{\'APPLICATION_AGENT\' | translate}} </div>\n <p> {{workspace.data.membername}} </p>\n </div>\n <div class="col-md-2 portfolio-stat">\n <div>{{\'APPLICATION_DATE\' | translate}} </div>\n <p> {{workspace.data.agentcalledAt | date:\'dd/MM/yyyy HH:mm:ss\'}} </p>\n </div>\n <div class="col-md-2 portfolio-stat">\n <button class="btn grey-cascade" type="button" data-ng-click="dispose()" data-ng-disabled="contact.disposed">\n <i class="icon-target"></i> {{\'APPLICATION_DISPOSITION\' | translate}}\n </button>\n </div>\n </div>\n <!--end row-->\n <!-- BEGIN PORTLET -->\n <div class="portlet light ">\n <div class="portlet-title">\n <div class="caption caption-md">\n <i class="icon-bar-chart theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm active" data-ng-click="detail.tab=\'main\'">\n <input type="radio" class="toggle">{{\'APPLICATION_MAIN\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-click="detail.tab=\'other\'">\n <input type="radio" class="toggle">{{\'APPLICATION_OTHER\' | translate}}</label>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div data-ng-class="{\'hidden\':detail.tab != \'main\'}" class="portlet-body contact-portlet row">\n <div class="col-md-4">\n <!-- START FIRSTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.firstName.$touched || forms.general.$submitted) && forms.general.firstName.$invalid}">\n <label class="control-label">{{\'APPLICATION_FIRSTNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="firstName" placeholder="{{\'APPLICATION_FIRSTNAME\' | translate}}" class="form-control" data-ng-model="contact.firstName" required/>\n <span data-ng-show="(forms.general.firstName.$touched || forms.general.$submitted) && forms.general.firstName.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIRSTNAME -->\n\n <!-- START LASTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.lastName.$touched || forms.general.$submitted) && forms.general.lastName.$invalid}">\n <label class="control-label">{{\'APPLICATION_LASTNAME\' | translate}}</label>\n <input type="text" name="lastName" placeholder="{{\'APPLICATION_LASTNAME\' | translate}}" class="form-control" data-ng-model="contact.lastName"/>\n <span data-ng-show="(forms.general.lastName.$touched || forms.general.$submitted) && forms.general.lastName.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LASTNAME -->\n\n <!-- START COMPANY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.CompanyId.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_COMPANY\' | translate}}</label>\n <div class="input-group">\n <ui-select data-ng-model="contact.CompanyId" theme="bootstrap" name="CompanyId" ng-disabled="!companies.length" required>\n <ui-select-match placeholder="{{ \'APPLICATION_COMPANY\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="company.id as company in companies | filter: $select.search" null-option="scope.noCompany">\n <div ng-bind-html="company.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="input-group-btn">\n <button type="button" data-ng-click="companyInfo(contact.CompanyId)" class="btn btn-default" data-ng-disabled="!contact.CompanyId">\n <span class="icon-info" data-ng-class="{\'font-blue\':contact.CompanyId}"></span>\n </button>\n </span>\n </div>\n <div class="note note-warning" data-ng-hide="companies.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_COMPANIES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/contactmanager/companies/list">{{\'APPLICATION_COMPANIES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.CompanyId.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANY -->\n </div>\n <div class="col-md-4">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="contact.phone"/>\n <span data-ng-show="(forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n <!-- START MOBILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.mobile.$touched || forms.general.$submitted) && forms.general.mobile.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOBILE\' | translate}}</label>\n <input type="text" name="mobile" placeholder="{{\'APPLICATION_MOBILE\' | translate}}" class="form-control" data-ng-model="contact.mobile"/>\n <span data-ng-show="(forms.general.mobile.$touched || forms.general.$submitted) && forms.general.mobile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOBILE -->\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="text" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="contact.email"/>\n <span data-ng-show="(forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-4">\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="contact.fax"/>\n <span data-ng-show="(forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n <!-- START TAGS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.tags.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_TAGS\' | translate}}</label>\n <ui-select multiple=\'true\' data-ng-model="contact.tags" theme="bootstrap" name="tags" ng-disabled="disabled">\n <ui-select-match placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.general.tags.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAGS -->\n <!-- START LIST -->\n <div class="form-group" data-ng-if="contact.id">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <input type="text" name="list" placeholder="{{\'APPLICATION_LIST\' | translate}}" class="form-control" data-ng data-ng-model="contact.List.name" disabled/>\n </div>\n <!-- END LIST -->\n <!-- START LIST -->\n <div data-ng-if="!contact.id" class="form-group" data-ng-class="{\'has-error\': forms.general.ListId.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <ui-select data-ng-model="contact.ListId" theme="bootstrap" name="ListId" data-ng-change="getCustomFields()" required>\n <ui-select-match placeholder="{{ \'APPLICATION_LIST\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="lists.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_LISTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/contactmanager/lists/list">{{\'APPLICATION_LISTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.ListId.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n </div>\n </div>\n <div data-ng-class="{\'hidden\':detail.tab != \'other\'}" class="portlet-body contact-portlet row">\n <div class="col-md-4">\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.street.$touched || forms.general.$submitted) && forms.general.street.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="contact.street"/>\n <span data-ng-show="(forms.general.street.$touched || forms.general.$submitted) && forms.general.street.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.postalCode.$touched || forms.general.$submitted) && forms.general.postalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="contact.postalCode"/>\n <span data-ng-show="(forms.general.postalCode.$touched || forms.general.$submitted) && forms.general.postalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.city.$touched || forms.general.$submitted) && forms.general.city.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="contact.city"/>\n <span data-ng-show="(forms.general.city.$touched || forms.general.$submitted) && forms.general.city.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n </div>\n <div class="col-md-4">\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.country.$touched || forms.general.$submitted) && forms.general.country.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="contact.country"/>\n <span data-ng-show="(forms.general.country.$touched || forms.general.$submitted) && forms.general.country.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n\n <!-- START DATEOFBIRTH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.dateOfBirth.$touched || forms.general.$submitted) && forms.general.dateOfBirth.$invalid}">\n <label class="control-label">{{\'APPLICATION_DATEOFBIRTH\' | translate}}</label>\n <input name="dateOfBirth" type="date" placeholder="{{\'APPLICATION_DATEOFBIRTH\' | translate}}" class="form-control date-picker" data-ng-model="contact.dateOfBirth"/>\n <span data-ng-show="(forms.general.dateOfBirth.$touched || forms.general.$submitted) && forms.general.dateOfBirth.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DATEOFBIRTH -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea style="resize: vertical;" type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="contact.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n <div class="col-md-4">\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.url.$touched || forms.general.$submitted) && forms.general.url.$invalid}">\n <label class="control-label">{{\'APPLICATION_URL\' | translate}}</label>\n <input type="text" name="url" placeholder="{{\'APPLICATION_URL\' | translate}}" class="form-control" data-ng-model="contact.url"/>\n <span data-ng-show="(forms.general.url.$touched || forms.general.$submitted) && forms.general.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START CREATED_BY -->\n <div class="form-group" data-ng-if="contact.id">\n <label class="control-label">{{\'APPLICATION_CREATED_BY\' | translate}}</label>\n <input type="text" name="createdBy" placeholder="{{\'APPLICATION_CREATED_BY\' | translate}}" class="form-control" data-ng-model="contact.User.name" disabled/>\n </div>\n <!-- END CREATED_BY -->\n </div>\n </div>\n </div>\n <button type="submit" class="btn btn-circle green-haze btn-sm" data-ng-disabled="!contact.firstName || !contact.ListId">{{submitButtonLabel}}</button>\n </div>\n <!-- END PORTLET -->\n <!-- BEGIN PORTLET -->\n <div class="portlet light" data-ng-if="customFields.length">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CUSTOM_FIELDS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div data-ng-repeat="customField in customFields">\n <div data-ng-if="customField.type==\'text\'" class="form-group" data-ng-class="{\'has-error\': (forms.general[customField.name].$touched || forms.general.$submitted) && forms.general[customField.name].$invalid}">\n <label class="control-label">{{customField.alias}}</label>\n <input type="text" name="{{customField.name}}" placeholder="{{customField.alias}}" class="form-control" data-ng-model="contact[customField.name]"/>\n <span data-ng-show="(forms.general[customField.name].$touched || forms.general.$submitted) && forms.general[customField.name].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div data-ng-if="customField.type==\'select\'" class="form-group" data-ng-class="{\'has-error\': forms.general[customField.name].$invalid && forms.general.$submitted}">\n <label class="control-label">{{customField.alias}}</label>\n <ui-select data-ng-model="contact[customField.name]" theme="bootstrap" name="{{customField.name}}" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{customField.alias}}">{{$select.selected.value}}</ui-select-match>\n <ui-select-choices repeat="choice.value as choice in customField.values | filter: $select.search">\n <div ng-bind-html="choice.value | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.general[customField.name].$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <button type="submit" class="btn btn-circle green-haze btn-sm" data-ng-disabled="!contact.firstName || !contact.ListId">{{submitButtonLabel}}</button>\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n <div class="tab-pane fade" id="tab_1_2{{contact.id || \'\'}}">\n <!-- BEGIN PORTLET -->\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_LOG\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_2_1" data-toggle="tab">{{ \'APPLICATION_DAILY\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_2_2" data-toggle="tab">{{ \'APPLICATION_HISTORY\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!--BEGIN TABS-->\n <div class="tab-content">\n <div class="tab-pane active" id="tab_2_1">\n <div class="contact-portlet">\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.show === \'phone\'}" data-ng-click="updateLog(\'daily\',\'phone\')">\n <input type="radio" class="toggle">{{\'APPLICATION_PHONES\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.show === \'email\'}" data-ng-click="updateLog(\'daily\',\'email\',\'general\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_EMAILS\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.type === \'inbound\'}" data-ng-click="updateLog(\'daily\',false,false,\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_INBOUND\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-if="log.daily.show==\'phone\'" data-ng-class="{\'active\':log.daily.type === \'outbound\'}" data-ng-click="updateLog(\'daily\',false,\'general\',\'outbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_OUTBOUND\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons" data-ng-if="log.daily.show==\'phone\'">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.detail === \'general\'}" data-ng-click="updateLog(\'daily\',false,\'general\',false)">\n <input type="radio" class="toggle">{{\'APPLICATION_GENERAL\' | translate}}</label>\n <label data-ng-if="log.daily.type===\'inbound\'" class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.detail === \'queue\'}" data-ng-click="updateLog(\'daily\',false,\'queue\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_QUEUES\' | translate}}</label>\n </div>\n </div>\n <div data-ng-if="gridOptionsdaily" ui-grid="gridOptionsdaily" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionsdaily.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n <div class="tab-pane" id="tab_2_2">\n <div class="contact-portlet">\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.show === \'phone\'}" data-ng-click="updateLog(\'history\',\'phone\')">\n <input type="radio" class="toggle">{{\'APPLICATION_PHONES\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.show === \'email\'}" data-ng-click="updateLog(\'history\',\'email\',\'general\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_EMAILS\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.type === \'inbound\'}" data-ng-click="updateLog(\'history\',false,false,\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_INBOUND\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-if="log.history.show==\'phone\'" data-ng-class="{\'active\':log.history.type === \'outbound\'}" data-ng-click="updateLog(\'history\',false,\'general\',\'outbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_OUTBOUND\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons" data-ng-if="log.history.show==\'phone\'">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.detail === \'general\'}" data-ng-click="updateLog(\'history\',false,\'general\',false)">\n <input type="radio" class="toggle">{{\'APPLICATION_GENERAL\' | translate}}</label>\n <label data-ng-if="log.history.type===\'inbound\'" class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.detail === \'queue\'}" data-ng-click="updateLog(\'history\',false,\'queue\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_QUEUES\' | translate}}</label>\n </div>\n </div>\n <div data-ng-if="gridOptionshistory" ui-grid="gridOptionshistory" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionshistory.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n <!--END TABS-->\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n <!-- END PROFILE CONTENT -->\n </form>\n</div>\n </div>\n</div>\n'), +a.put("app/main/template/template.jscriptyTab.html",'<div class="portlet light bordered">\n <!-- BEGIN PORTLET BODY -->\n <div class="portlet-body">\n <div class="row">\n <!-- BEGIN SIDEBAR -->\n <div class="profile-sidebar" style="width: 250px;">\n <!-- PORTLET MAIN -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-repeat= \'question in questions track by $index\' ng-class="{active: $index == count}">\n <a ng-click="setCurrentQuestion($index)" >\n <i class="fa fa-check"></i> <label ng-if="attribute.nodeName == \'label\'" ng-repeat=\'attribute in question.value.attributes track by $index\'>{{attribute.value}}</label>\n </a>\n </li>\n </ul>\n </div>\n <!-- END SIDEBAR MENU -->\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END SIDEBAR -->\n <div class="profile-content">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-edit font-green-sharp"></i>\n <span ng-if="attribute.nodeName ==\'label\'" ng-repeat=\'attribute in currentQuestion.value.attributes\' class="caption-subject">{{attribute.value}} </span>\n </div>\n\n </div>\n <div class="portlet-body form ">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <form >\n <div class="form-body" style="height: 400px; overflow-y: auto;overflow-x:hidden">\n\n <!-- Question -->\n <div class="form-group" style="word-wrap: break-word;" >\n <h3 ng-if="attribute.nodeName ==\'question\' || attribute.nodeName ==\'text\'" ng-repeat=\'attribute in currentQuestion.value.attributes\'>{{attribute.value}}</h3>\n </div>\n <!-- Buttons -->\n\n <div ng-if ="(edge.source.id == currentQuestion.id) && edge.value" ng-repeat=\'edge in currentQuestion.edges track by $index\' class="row">\n <div class="col-md-8 col-md-offset-2">\n <input checked="checked" type="radio" ng-model="currentQuestion.button" ng-value="edge" >\n <label ng-show="(edge.source.id == currentQuestion.id) && edge.value">{{edge.value}}</label><br><br>\n </div>\n </div>\n <!-- Question Other Option -->\n\n <div class="form-group" ng-if= "attribute.nodeName ==\'other\' && attribute.value " ng-repeat=\'attribute in currentQuestion.value.attributes track by $index\'>\n <br>\n <div class="col-md-2">\n <label class="control-label">{{attribute.value}}</label>\n </div>\n <div class="col-md-8">\n <textarea style="overflow:auto" ng-model="currentQuestion.otheranswer" placeholder="Enter text" rows="8" cols="40" ></textarea>\n </div>\n </div>\n <!-- Inputs -->\n <div class="row margin-top-10" ng-repeat=\'question in currentQuestion.children track by $index\'>\n <div class="col-md-10 col-md-offset-1">\n <div ng-repeat=\'attribute in question.value.attributes track by $index\'>\n <div ng-switch="attribute.nodeName">\n <div ng-class="col-md-2" ng-switch-when="label">\n <label class="control-label" style=" display:block;word-break:break-all;" >{{attribute.value}}</label>\n </div>\n <div ng-class="attribute.value != \'checkbox\' ? \'col-md-10 pull-right\': \'col-md-2\'" ng-switch-when="type" ng-switch="attribute.value">\n <input class="form-control" ng-switch-when="text" type="text" ng-model="question.answer" />\n <input class="form-control" ng-switch-when="number" type="number" ng-model="question.answer" />\n <input class=" pull-right" ng-switch-when="checkbox" type="checkbox" ng-model="question.answer" />\n <!-- ng-true-value="\'Selected\'" ng-false-value="\'Not Selected\'" -->\n <textarea class="form-control" ng-switch-when="textarea" ng-model="question.answer" rows="8" cols="40"></textarea>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- actions -->\n <div class="form-actions">\n <div ng-switch="attribute.nodeName" class="btn-set pull-left">\n <button class="btn red-haze " ng-click="end()">\n <span class="fa fa-times" > Close</span>\n </button>\n <!-- <button class="btn red-haze " ng-click="end()">\n <span ng-if="attribute.nodeName ==\'end\'" ng-repeat=\'attribute in currentQuestion.value.attributes\' class="fa fa-times" > Finish</span>\n </button> -->\n <button class="btn blue-haze" ng-show="count" ng-click="back()"><span class="glyphicon glyphicon-chevron-left"></span>Back</button>\n </div>\n <div class="btn-set pull-right">\n <button ng-show=" currentQuestion.button" class="btn blue-hoki" ng-click="next(currentQuestion.button.target, currentQuestion.button.value)">Next<span class="glyphicon glyphicon-chevron-right" ></span></button>\n <button ng-repeat=\'edge in currentQuestion.edges track by $index\' ng-show="(edge.source.id == currentQuestion.id) && !edge.value" class="btn blue-hoki" ng-click="next(edge.target)">Next<span class="glyphicon glyphicon-chevron-right" ></span></button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- END PORTLET BODY -->\n</div>\n'),a.put("app/main/template/template.notification.html",'<div class="ui-notification custom-template">\n <h3 ng-show="title" ng-bind-html="title"></h3>\n <div class="message" ng-bind-html="message"></div>\n <div class="message">\n <a class="btn btn-success btn-primary close-notification" ng-click="nAccept()"><i class="glyphicon glyphicon-ok"></i> {{acceptBtn}}</a>\n <a class="btn btn-error btn-primary close-notification" ng-click="nReject()"><i class="glyphicon glyphicon-remove"></i> {{rejectBtn}}</a>\n </div>\n</div>\n'),a.put("app/main/template/template.reportBuilderView.html",'<div class="alert alert-warning alert-group">\n <div class="form-inline" data-ng-class="{\'has-error\': forms.report.$submitted && !group.rules.length}">\n <select ng-options="o.name as o.name for o in operators" ng-model="group.operator" class="form-control input-sm"></select>\n <button style="margin-left: 5px" type="button" ng-click="addCondition()" class="btn btn-sm btn-success"><span class="glyphicon glyphicon-plus-sign"></span> {{\'APPLICATION_ADD_CONDITION\' | translate}}</button>\n <button style="margin-left: 5px" type="button" ng-click="addGroup()" class="btn btn-sm btn-success"><span class="glyphicon glyphicon-plus-sign"></span> {{\'APPLICATION_ADD_GROUP\' | translate}}</button>\n <button style="margin-left: 5px" type="button" ng-click="removeGroup()" class="btn btn-sm btn-danger"><span class="glyphicon glyphicon-minus-sign"></span> {{\'APPLICATION_REMOVE_GROUP\' | translate}}</button>\n </div>\n <div class="group-conditions">\n <div ng-repeat="rule in group.rules | orderBy:\'index\'" class="condition">\n <div ng-switch="rule.hasOwnProperty(\'group\')">\n <div ng-switch-when="true">\n <report-builder group="rule.group" fields="fields" forms="forms"></report-builder>\n </div>\n <div ng-switch-default="ng-switch-default">\n <div class="row">\n <div class="col-md-2" data-ng-class="{\'has-error\': forms.report.$submitted && !rule.field}">\n <ui-select data-ng-model="rule.field" theme="bootstrap" dynamic-name="randomName()" required>\n <ui-select-match placeholder="" ><span ng-bind-html="$select.selected.name"></span></ui-select-match>\n <ui-select-choices repeat="field.value as field in fields | filter: $select.search">\n <div ng-bind-html="field.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.report.$submitted && !rule.field" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <ui-select data-ng-model="rule.condition" theme="bootstrap" class="col-md-1" dynamic-name="randomName()">\n <ui-select-match placeholder="">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="condition.name as condition in conditions | filter: $select.search">\n <div ng-bind-html="condition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="col-md-2 left-margin" data-ng-class="{\'has-error\': forms.report.$submitted && !rule.value}">\n <input type="text" ng-model="rule.value" class="form-control" dynamic-name="randomName()" required/>\n <span data-ng-show="forms.report.$submitted && !rule.value" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <button style="margin-left: 5px" ng-click="removeCondition($index)" class="btn btn-sm btn-danger" type="button"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/market/market.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/market">Market Place</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <!-- Our Integration -->\n <div class="headline">\n <h3>Our Integrations</h3>\n </div>\n <div class="row thumbnails" data-ng-repeat="group in groupedIntegration">\n <div class="col-md-3" data-ng-repeat="integration in group">\n <div class="our-integrations">\n <h3> {{integration.name}} <small> {{integration.author}}</small></h3>\n <img data-ng-src="{{integration.logo}}" alt="{{integration.name}}" class="img-responsive"/>\n <div class="integration-info" data-ng-if="!integration.downloading">\n <p>\n {{integration.description}}\n </p>\n <div class="pull-right">\n <a data-ng-disabled="isProgressing" data-ng-if="!integration.active" data-ng-click="installIntegration(integration)" href="#" class="btn btn-xs green-meadow">Install <i class="fa fa-download"></i></a>\n <a data-ng-disabled="isProgressing" data-ng-if="integration.active" data-ng-click="uninstallIntegration(integration)" href="#" class="btn btn-xs red-sunglo">Uninstall <i class="fa fa-trash"></i></a>\n <a href="https://wiki.xcallymotion.com/" class="btn btn-xs grey-cascade" target="_blank">More <i class="fa fa-link"></i></a>\n </div>\n </div>\n <div class="integration-info" data-ng-if="integration.downloading">\n <div>\n <uib-progressbar class="progress-striped active" value="percentage" type="success"><i style="color:black;">{{status}}</i></uib-progressbar>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!--/thumbnails-->\n <!-- //End Meer Our Team -->\n </div>\n</div>\n'),a.put("app/motiondialer/blacklist/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phone.$touched || form.$submitted) && form.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" required/>\n <span data-ng-show="(form.phone.$touched || form.$submitted) && form.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/blacklist/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-doc"></i>\n <a href="#">{{ \'APPLICATION_BLACKLIST\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-doc font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_BLACKLIST\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/info/view/view.about.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ABOUT\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form class="form-horizontal form-row-seperated">\n <div class="form-body">\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Specification</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.SpecificationTitle}} ({{properties.SpecificationVersion}}) - {{properties.SpecificationVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Implementation</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.ImplementationTitle}} ({{properties.ImplementationVersion}}) - {{properties.ImplementationVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Start Time</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.StartTime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Uptime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.Uptime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Operating System</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.OsName}} {{properties.OsVersion}} {{properties.OsArch}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Processors</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.Processors" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">System Start Time</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.SystemStartTime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">System Uptime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.SystemUptime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">File System</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="Usable: {{properties.FileSystem.Usable | number:2}} Free: {{properties.FileSystem.Free | number:2}} Total: {{properties.FileSystem.Total | number:2}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/info/view/view.details.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_DETAILS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form class="form-horizontal form-row-seperated">\n <div class="form-body">\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Specification Name</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.JavaSpecificationName" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Home</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.JavaHome" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">JavaVm</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaVmName}} ({{properties.JavaVmVersion}} {{properties.JavaVmInfo}}) - {{properties.JavaVmVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="Java ({{properties.JavaVersion}} {{properties.JavaClassVersion}}) - {{properties.JavaVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Runtime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaRuntimeName}} ({{JavaRuntimeVersion}})" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Rmi Server Hostname</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaRmiServerHostname}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">User</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.UserName}} {{properties.UserLanguage}}-{{properties.UserCountry}} {{properties.UserTimezone}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">User Home</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.UserHome}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Hostname</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.Hostname}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/info/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getProperties()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-info"></i>\n <a href="/motiondialer/info/view/properties">{{ \'APPLICATION_INFO\' | translate }}</a>\n <i data-ng-show="variable" class="fa fa-angle-right"></i>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ \'APPLICATION_INFO\' | translate }}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.info.view.about\')}">\n <a data-ng-href="/motiondialer/info/view/about">\n <i class="icon-globe"></i>\n {{ \'APPLICATION_ABOUT\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.info.view.details\')}">\n <a data-ng-href="/motiondialer/info/view/details">\n <i class="icon-support"></i>\n {{ \'APPLICATION_DETAILS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/list/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_LIST\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_LISTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LISTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LIST\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/motiondialer/list/view/view.contact.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phones.$touched || form.$submitted) && form.phones.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phones" placeholder="{{\'APPLICATION_PHONES\' | translate}}" class="form-control" data-ng-model="item.phones" required/>\n <span data-ng-show="(form.phones.$touched || form.$submitted) && form.phones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n <p>Insert one or multiple phones separated by commas, for example:</p>\n <p>0123455678, 3456785673, 2345667899</p>\n </span>\n </div>\n <!-- END PHONES -->\n\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">Timezone</label><br>\n <select ng-model="item.timezone">\n <option value="">--</option>\n <optgroup ng-repeat="timezone in timezones" label="{{timezone.group}}">\n <option ng-repeat="zone in timezone.zones" value="{{zone.value}}">{{zone.name}}</option>\n </optgroup>\n </select>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/view/view.contact.import.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <ui-select data-ng-model="item.name" theme="bootstrap" name="name" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_NAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END NAME -->\n\n <!-- START PHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phones.$touched || form.$submitted) && form.phones.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.phones" theme="bootstrap" name="phones" data-ng-disabled="disabled" required>\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_PHONE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.phones.$touched || form.$submitted) && form.phones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONES -->\n\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">Timezone</label><br>\n <select ng-model="item.timezone">\n <option value="">--</option>\n <optgroup ng-repeat="timezone in timezones" label="{{timezone.group}}">\n <option ng-repeat="zone in timezone.zones" value="{{zone.value}}">{{zone.name}}</option>\n </optgroup>\n </select>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <ui-select data-ng-model="item.description" theme="bootstrap" name="description" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DESCRIPTION\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n <!-- START PROGRESS -->\n <div>\n <p>{{\'APPLICATION_IMPORT_SUCCEEDED\' | translate}}: {{import.succeeded}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': import.success + \'%\' }"></div>\n </div>\n </div>\n <div>\n <p>{{\'APPLICATION_IMPORT_FAILED\' | translate}}: {{import.failed}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-danger" role="progressbar" ng-style="{ \'width\': import.fail + \'%\' }"></div>\n </div>\n </div>\n <!-- END PROGRESS -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="start()" ng-disabled="form.$invalid || !form.phones || submitted">{{ \'APPLICATION_SUBMIT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="close()" data-ng-if="!importing">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="stop()" data-ng-if="importing">{{ \'APPLICATION_STOP\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/view/view.contacts.html",'<div class="row" data-ng-init="getContacts()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_CONTACTS\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <div class="btn-group">\n <button class="btn green-jungle margin-bottom-10" ng-click="createContact()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n <span class="btn default btn-file">\n <span class="fileinput-new"><i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_CSV\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader"/>\n </span>\n </div>\n\n <!-- <div class="btn-group">\n <button class="btn green-jungle" data-ng-click="newContact();">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n\n </div> -->\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/list/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getList()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-doc"></i>\n <a href="/motiondialer/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n <i data-ng-show="list.name" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="list.name">\n <a href="#">{{list.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{list.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.lists.view.settings\')}">\n <a data-ng-href="/motiondialer/lists/view/{{list.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.lists.view.contacts\')}">\n <a data-ng-href="/motiondialer/lists/view/{{list.id}}/contacts">\n <i class="icon-people"></i>\n {{ \'APPLICATION_CONTACTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/list/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_general" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START GENERAL TAB -->\n <div class="tab-pane active" id="tab_general">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateList()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="list.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="list.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/process/list/list.create.queue.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROCESS\' | translate }} {{\'APPLICATION_QUEUE\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" ng-init="initModal()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.list.$touched || form.$submitted) && form.list.$invalid}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="list" class="form-control" data-ng-model="item.list" ng-options="list.name for list in lists" required>\n </select>\n <span data-ng-show="(form.list.$touched || form.$submitted) && form.list.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.$touched || form.$submitted) && form.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="queue" class="form-control" data-ng-model="item.queue" ng-options="queue.name for queue in queues" required>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n <!-- START TIMEOUT QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.timeout" required/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.timeout.$error.max || form.timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MAX RETRIES -->\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="device" class="form-control" data-ng-model="item.device" ng-options="trunk.name for trunk in trunks" required>\n <option value="fake">{{\'APPLICATION_SELECT\' | translate}} {{\'APPLICATION_TRUNK\' | translate}}</option>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n <!-- START FETCH SORT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FETCH_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="fetch_sort" class="form-control" data-ng-model="item.fetch_sort" ng-options="fetch_sort for fetch_sort in [\'ASC\', \'DESC\']" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_FETCH_SORT\' | translate}}</span>\n </div>\n <!-- END FETCH SORT-->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/list/list.create.square.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROCESS\' | translate }} {{\'APPLICATION_CALLYSQUARE\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" ng-init="initModal()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.list.$touched || form.$submitted) && form.list.$invalid}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="list" class="form-control" data-ng-model="item.list" ng-options="list.name for list in lists" required>\n </select>\n <span data-ng-show="(form.list.$touched || form.$submitted) && form.list.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n <!-- START PROJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.project.$touched || form.$submitted) && form.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="project" class="form-control" data-ng-model="item.project" ng-options="project.name for project in projects" required>\n </select>\n <span data-ng-show="(form.project.$touched || form.$submitted) && form.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="device" class="form-control" data-ng-model="item.device" ng-options="trunk.name for trunk in trunks" required>\n <option value="fake">{{\'APPLICATION_SELECT\' | translate}} {{\'APPLICATION_TRUNK\' | translate}}</option>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n <!-- START FETCH SORT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FETCH_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="fetch_sort" class="form-control" data-ng-model="item.fetch_sort" ng-options="fetch_sort for fetch_sort in [\'ASC\', \'DESC\']" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_FETCH_SORT\' | translate}}</span>\n </div>\n <!-- END FETCH SORT-->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_PROCESSES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROCESSES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle dropdown-toggle" data-toggle="dropdown" data-close-others="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROCESS\' | translate }}\n </button>\n <ul class="dropdown-menu pull-right">\n <li>\n <a href="#" ng-click="createProcessQueue()">{{ \'APPLICATION_QUEUE\' | translate }}</a>\n </li>\n <li>\n <a href="#" ng-click="createProcessSquare()">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/process/view/view.create.interval.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_INTERVAL\' | translate }} </h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.monthsNumber | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.monthsNumber | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getProcess()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/motiondialer/processes/list">{{ \'APPLICATION_PROCESSES\' | translate }}</a>\n <i data-ng-show="process.name" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="process.name">\n <a href="#">{{process.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{process.name}} ({{ (process.status === \'RUN\') ? \'RUNNING...\' : \'STOPPED\' }})\n </div>\n <div class="profile-usertitle-job">\n <a href="/motiondialer/lists/view/{{process.id_list}}/settings">{{ \'APPLICATION_LIST\' | translate}} #{{process.id_list}} ({{process.fetch_sort}})</a>\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <div class="profile-userbuttons">\n <button data-ng-show="process.status" type="button" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': process.status == \'STOP\', \'red-sunglo\': process.status == \'RUN\'}" data-ng-click="runOrStop()">{{ (process.status === \'RUN\') ? \'STOP\' : \'RUN\' }}</button>\n </div>\n <div class="profile-userbuttons">\n <button style="cursor:default" data-ng-show="process.runtime" type="button" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': process.runtime.completed, \'yellow-crusta\': !process.runtime.completed}">{{process.runtime.completed ? \'Complete\' : \'Incomplete\'}}</button>\n <button style="cursor:default" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': !process.runtime.outOfTime, \'red-sunglo\': process.runtime.outOfTime}"><i data-ng-class="{\'icon-clock\': !process.runtime.outOfTime, \'icon-close\': process.runtime.outOfTime}"></i> {{process.runtime.outOfTime ? \'Out of time\' : \'On time\'}}</button>\n </div>\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.overview\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/overview">\n <i class="icon-home"></i>\n {{ \'APPLICATION_OVERVIEW\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.settings\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.intervals\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/intervals">\n <i class="icon-clock"></i>\n {{ \'APPLICATION_INTERVALS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.spooler\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/spooler">\n <i class="icon-options-vertical"></i>\n {{ \'APPLICATION_SPOOLER\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/motiondialer/process/view/view.intervals.html",'<div class="row" data-ng-init="initIntervals()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-clock theme-font"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROCESS\' | translate}} {{ \'APPLICATION_INTERVALS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_allow" data-toggle="tab">{{ \'APPLICATION_ALLOW\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_disallow" data-toggle="tab">{{ \'APPLICATION_DISALLOW\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- ALLOW TAB -->\n <div class="tab-pane active" id="tab_allow">\n <button class="btn green-jungle margin-bottom-10" ng-click="createInterval(true)">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }} ({{ \'APPLICATION_ALLOW\' | translate }})\n </button>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_ACTIONS\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="interval in process.intervals track by $index">\n <td>\n {{interval}}\n </td>\n <td>\n <button href="javascript:;" data-ng-click="editInterval(true, interval)" class="btn blue-hoki btn-sm"> {{ \'APPLICATION_EDIT\' | translate}} </button>\n <button data-ng-click="deleteInterval(interval, $index, true)" class="btn red-sunglo btn-sm"> {{ \'APPLICATION_DELETE\' | translate}} </button>\n </td>\n </tr>\n <tr ng-show="!process.intervals.length"><td colspan=2>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</td></tr>\n </tbody>\n </table>\n </div>\n <!-- END ALLOW TAB -->\n <!-- DISALLOW TAB -->\n <div class="tab-pane" id="tab_disallow">\n <button class="btn green-jungle margin-bottom-10" ng-click="createInterval(false)">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }} ({{ \'APPLICATION_DISALLOW\' | translate }})\n </button>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_ACTIONS\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="interval in process.not_intervals track by $index">\n <td>\n {{interval}}\n </td>\n <td>\n <button href="javascript:;" data-ng-click="editInterval(false, interval)" class="btn blue-hoki btn-sm"> {{ \'APPLICATION_EDIT\' | translate}} </button>\n <button href="javascript:;" data-ng-click="deleteInterval($index, interval, false)" class="btn red-sunglo btn-sm"> {{ \'APPLICATION_DELETE\' | translate}} </button>\n </td>\n </tr>\n <tr ng-show="!process.not_intervals.length"><td colspan=2>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</td></tr>\n </tbody>\n </table>\n\n </div>\n <!-- END DISALLOW TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/process/view/view.overview.html",'<div class="row" data-ng-init="getSummary()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET -->\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-bar-chart theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_OVERVIEW\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_summary" data-toggle="tab">{{ \'APPLICATION_SUMMARY\' | translate}}</a>\n </li>\n <li ng-show="process.runtime">\n <a href="#" data-target="#tab_advanced" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START SUMMARY TAB -->\n <div class="tab-pane active" id="tab_summary">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <div class="row number-stats margin-bottom-30">\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-left">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_TOTAL\' | translate}}\n </div>\n <div class="number">\n {{total}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-right">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_FRESH\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.fresh || 0}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th>\n {{\'APPLICATION_STATUS\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_RATE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tr ng-repeat="sum in summary">\n <td>\n <a href="#" class="primary-link">{{\'APPLICATION_TD_\' + sum[0] | translate}}</a>\n </td>\n <td>\n {{sum[1]}}\n </td>\n <td>\n <span class="bold theme-font">{{ total ? ((sum[1]/total)*100).toFixed(2) : 0 }}%</span>\n </td>\n <td>\n {{\'DESCRIPTION_TD_\' + sum[0] | translate}}\n </td>\n </tr>\n </table>\n </div>\n </div>\n <!-- END SUMMARY TAB -->\n <!-- START SUMMARY TAB -->\n <div class="tab-pane" id="tab_advanced" ng-show="process.runtime">\n <div class="row number-stats margin-bottom-30">\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-left">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_SUCCESS\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.success || 0}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-right">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_FAILED\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.failed || 0}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th>\n {{\'APPLICATION_STATUS\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tr ng-repeat="(key, value) in process.runtime">\n <td>\n <a href="#" class="primary-link">{{\'APPLICATION_\' + key.toUpperCase() | translate}}</a>\n </td>\n <td ng-switch on="key">\n <span ng-switch-when="avgDial">{{value | number:2}}</span>\n <span ng-switch-when="avgDuration">{{value | number:2}}</span>\n <span ng-switch-when="avgProgress">{{value | number:2}}</span>\n <span ng-switch-when="completed">{{((value)? \'APPLICATION_YES\' : \'APPLICATION_NO\') | translate}}</span>\n <span ng-switch-when="outOfTime">{{((value)? \'APPLICATION_YES\' : \'APPLICATION_NO\') | translate}}</span>\n <span ng-switch-default>{{value}}</span>\n </td>\n <td>\n {{\'DESCRIPTION_TD_\' + key.toUpperCase() | translate}}\n </td>\n </tr>\n </table>\n </div>\n </div>\n <!-- END SUMMARY TAB -->\n </div>\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n</div>\n'),a.put("app/motiondialer/process/view/view.run.process.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_STATUS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>\n Do you want to {{ status }} the process?\n </p>\n</div>\n<div class="modal-footer">\n <button class="btn default green-meadow" type="button" ng-click="yes()">{{ \'APPLICATION_YES\' | translate }}</button>\n <button class="btn default" type="button" ng-click="no()">{{ \'APPLICATION_NO\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.settings.html",'<div class="row" data-ng-init="initSettings()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROCESS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_general" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_channel" data-toggle="tab">{{ \'APPLICATION_CHANNEL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_advanced" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_status" data-toggle="tab">{{ \'APPLICATION_STATUS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_general">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="process.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START QUEUE -->\n <div data-ng-show="process.queue != \'none\'" class="form-group" data-ng-class="{\'has-error\': (form.queue.$touched || form.$submitted) && form.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="queue" class="form-control" data-ng-model="queue" ng-options="queue.name for queue in queues track by queue.name" required>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n <!-- START MAX RETRIES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.max_retries.$touched || form.$submitted) && form.max_retries.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAX_RETRIES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" max="10" name="max_retries" placeholder="{{\'APPLICATION_MAX_RETRIES\' | translate}}" class="form-control" data-ng-model="process.max_retries" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_MAX_RETRIES\' | translate}}</span>\n <span data-ng-show="(form.max_retries.$touched || form.$submitted) && form.max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.max_retries.$error.max || form.max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MAX RETRIES -->\n <!-- START RETRY TIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.retry_time.$touched || form.$submitted) && form.retry_time.$invalid}">\n <label class="control-label">{{\'APPLICATION_RETRY_TIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="retry_time" placeholder="{{\'APPLICATION_RETRY_TIME\' | translate}}" class="form-control" data-ng-model="process.retry_time" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_RETRY_TIME\' | translate}}</span>\n <span data-ng-show="(form.retry_time.$touched || form.$submitted) && form.retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.retry_time.$error.max || form.retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END RETRY TIME -->\n <!-- START RETRY TIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.wait_time.$touched || form.$submitted) && form.wait_time.$invalid}">\n <label class="control-label">{{\'APPLICATION_WAIT_TIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1000" name="wait_time" placeholder="{{\'APPLICATION_WAIT_TIME\' | translate}}" class="form-control" data-ng-model="process.wait_time" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_WAIT_TIME\' | translate}}</span>\n <span data-ng-show="(form.wait_time.$touched || form.$submitted) && form.wait_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.wait_time.$error.max || form.wait_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END WAIT TIME -->\n <!-- START AUTO CLOSED -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_CLOSED\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.auto_closed"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_AUTO_CLOSED\' | translate}}</span>\n </div>\n <!-- END AUTO CLOSED -->\n <!-- START WEIGHT -->\n <!-- END WEIGHT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTODIAL_LEVEL\' | translate}}</label></br>\n <slider ng-model="process.weight" min="0" step="1" max="50"></slider>\n <label>{{\'APPLICATION_VALUE\' | translate}}: {{process.weight}}</label>\n <span class="help-block">{{\'DESCRIPTION_TD_WEIGHT\' | translate}}</span>\n </div>\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="process.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- CHANNEL TAB -->\n <div class="tab-pane" id="tab_channel">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.context.$touched || form.$submitted) && form.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="context" placeholder="{{\'APPLICATION_CONTEXT\' | translate}}" class="form-control" data-ng-model="process.context" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CONTEXT\' | translate}}</span>\n <span data-ng-show="(form.context.$touched || form.$submitted) && form.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.extension.$touched || form.$submitted) && form.extension.$invalid}">\n <label class="control-label">{{\'APPLICATION_EXTENSION\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="{{\'APPLICATION_EXTENSION\' | translate}}" class="form-control" data-ng-model="process.extension" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENSION\' | translate}}</span><a href="/channels/voice/routes/internal/list">Link {{\'APPLICATION_INTERNAL\' | translate}}</a>\n <span data-ng-show="(form.extension.$touched || form.$submitted) && form.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.priority.$touched || form.$submitted) && form.priority.$invalid}">\n <label class="control-label">{{\'APPLICATION_PRIORITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="priority" placeholder="{{\'APPLICATION_PRIORITY\' | translate}}" class="form-control" data-ng-model="process.priority" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_PRIORITY\' | translate}}</span>\n <span data-ng-show="(form.priority.$touched || form.$submitted) && form.priority.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.priority.$error.max || form.priority.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n <!-- START PREFIX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}</label>\n <input type="text" name="prefix_code" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="process.prefix_code"/>\n <span class="help-block">{{\'DESCRIPTION_TD_PREFIX\' | translate}}</span>\n </div>\n <!-- END PREFIX -->\n <!-- START TECHNOLOGY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="tech" class="form-control" data-ng-model="process.tech" ng-options="tech for tech in techs" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_TECHNOLOGY\' | translate}}</span>\n </div>\n <!-- END TECHNOLOGY -->\n <!-- START DEVICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="device" placeholder="{{\'APPLICATION_TRUNK\' | translate}}" class="form-control" data-ng-model="process.device" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_TRUNK\' | translate}}</span>\n <span data-ng-show="(form.device.$touched || form.$submitted) && form.device.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DEVICE -->\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.callerid.$touched || form.$submitted) && form.callerid.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLERID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="callerid" placeholder="{{\'APPLICATION_CALLERID\' | translate}}" class="form-control" data-ng-model="process.callerid" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CALLERID\' | translate}}</span>\n <span data-ng-show="(form.callerid.$touched || form.$submitted) && form.callerid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple data-ng-model="process.codecs" name="codecs" theme="bootstrap" data-ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="codec in codecs">\n {{codec}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END CODEC -->\n <!-- START DIAL FORMAT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DIAL_FORMAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="dial_format" class="form-control" data-ng-model="process.dial_format" ng-options="dial_format for dial_format in dialFormats" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_DIAL_FORMAT\' | translate}}</span>\n </div>\n <!-- END DIAL FORMAT -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANNEL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_advanced">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <!-- START CHECK DUPLICATE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_DUPLICATE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="check_duplicate" class="form-control" data-ng-model="process.check_duplicate" ng-options="check_duplicate for check_duplicate in checkDuplicates" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_DUPLICATE\' | translate}}</span>\n </div>\n <!-- END CHECK DUPLICATE -->\n <!-- START CHECK BLACKLIST -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_BLACKLIST\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.check_blacklist"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_BLACKLIST\' | translate}}</span>\n </div>\n <!-- END CHECK BLACKLIST -->\n <!-- START CHECK PHONE LENGHT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.check_phone_length.$touched || form.$submitted) && form.check_phone_length.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHECK_PHONE_LENGHT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="check_phone_length" placeholder="{{\'APPLICATION_CHECK_PHONE_LENGHT\' | translate}}" class="form-control" data-ng-model="process.check_phone_length" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_PHONE_LENGHT\' | translate}}</span>\n <span data-ng-show="(form.check_phone_length.$touched || form.$submitted) && form.check_phone_length.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.check_phone_length.$error.max || form.check_phone_length.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END CHECK PHONE LENGHT -->\n <!-- START TIME SLICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.time_slice.$touched || form.$submitted) && form.time_slice.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIME_SLICE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="time_slice" placeholder="{{\'APPLICATION_TIME_SLICE\' | translate}}" class="form-control" data-ng-model="process.time_slice" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_TIME_SLICE\' | translate}}</span>\n <span data-ng-show="(form.time_slice.$touched || form.$submitted) && form.time_slice.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.time_slice.$error.max || form.time_slice.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END TIME SLICE -->\n <!-- START MISSED -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_MISSED\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.missed"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_MISSED\' | translate}}</span>\n </div>\n <!-- END MISSED -->\n <!-- START CHANNEL LIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel_limit.$touched || form.$submitted) && form.channel_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHANNEL_LIMIT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="channel_limit" placeholder="{{\'APPLICATION_CHANNEL_LIMIT\' | translate}}" class="form-control" data-ng-model="process.channel_limit" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CHANNEL_LIMIT\' | translate}}</span>\n <span data-ng-show="(form.channel_limit.$touched || form.$submitted) && form.channel_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.channel_limit.$error.max || form.channel_limit.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END CHANNEL LIMIT -->\n <!-- START CONTEXT FOR OTHER CALLS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CONTEXT_FOR_OTHER_CALLS\' | translate}}</label>\n <input type="text" name="context_for_other_calls" placeholder="{{\'APPLICATION_CONTEXT_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.context_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_CONTEXT_FOR_OTHER_CALLS\' | translate}}</span>\n </div>\n <!-- END CONTEXT FOR OTHER CALLS -->\n <!-- START EXTENSION FOR OTHER CALLS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXTENSION_FOR_OTHER_CALLS\' | translate}}</label>\n <input type="text" name="extension_for_other_calls" placeholder="{{\'APPLICATION_EXTENSION_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.extension_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENSION_FOR_OTHER_CALLS\' | translate}}</span>\n </div>\n <!-- END EXTENSION FOR OTHER CALLS-->\n <!-- START PRIORITY FOR OTHER CALLS-->\n <div class="form-group" data-ng-class="{\'has-error\': (form.priority_for_other_calls.$touched || form.$submitted) && form.priority_for_other_calls.$invalid}">\n <label class="control-label">{{\'APPLICATION_PRIORITY_FOR_OTHER_CALLS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="priority_for_other_calls" placeholder="{{\'APPLICATION_PRIORITY_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.priority_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_PRIORITY_FOR_OTHER_CALLS\' | translate}}</span>\n <span data-ng-show="form.priority_for_other_calls.$error.max || form.priority_for_other_calls.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY FOR OTHER CALLS -->\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXTENDED_TIME_INTERVAL\' | translate}}</label>\n <input type="text" name="timezone" placeholder="08:30-20:30" class="form-control" data-ng-model="process.timezone"/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENDED_TIME_INTERVAL\' | translate}}</span>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START AUTO TIMEZONE MANAGEMENT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_TIMEZONE_MANAGEMENT\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.auto_timezone_management"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_AUTO_TIMEZONE_MANAGEMENT\' | translate}}</span>\n </div>\n <!-- END AUTO TIMEZONE MANAGEMENT -->\n <!-- START IGNORE STRINGS-->\n <!-- COMMENTED: BECAUSE IGNORE_STRINGS IS AN ARRAY NOT A STRING-->\n <!-- <div class="form-group">\n <label class="control-label">{{\'APPLICATION_IGNORE_STRINGS\' | translate}}</label>\n <input type="text" name="ignore_strings" placeholder="{{\'APPLICATION_IGNORE_STRINGS\' | translate}}" class="form-control" data-ng-model="process.ignore_strings"/>\n <span class="help-block">{{\'DESCRIPTION_TD_IGNORE_STRINGS\' | translate}}</span>\n </div> -->\n <!-- END IGNORE STRINGS-->\n <!-- START MIN OPERATOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.min_operator.$touched || form.$submitted) && form.min_operator.$invalid}">\n <label class="control-label">{{\'APPLICATION_MIN_OPERATOR\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="min_operator" placeholder="{{\'APPLICATION_MIN_OPERATOR\' | translate}}" class="form-control" data-ng-model="process.min_operator" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_MIN_OPERATOR\' | translate}}</span>\n <span data-ng-show="(form.min_operator.$touched || form.$submitted) && form.min_operator.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.min_operator.$error.max || form.min_operator.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MIN OPERATOR -->\n <!-- START ALERT MAX CALLS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.alert_max_calls.$touched || form.$submitted) && form.alert_max_calls.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALERT_MAX_CALLS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="alert_max_calls" placeholder="{{\'APPLICATION_ALERT_MAX_CALLS\' | translate}}" class="form-control" data-ng-model="process.alert_max_calls" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_ALERT_MAX_CALLS\' | translate}}</span>\n <span data-ng-show="(form.alert_max_calls.$touched || form.$submitted) && form.alert_max_calls.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.alert_max_calls.$error.max || form.alert_max_calls.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END ALERT MAX CALLS -->\n <!-- START ALERT TIME SLICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.alert_time_slice.$touched || form.$submitted) && form.alert_time_slice.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALERT_TIME_SLICE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="alert_time_slice" placeholder="{{\'APPLICATION_ALERT_TIME_SLICE\' | translate}}" class="form-control" data-ng-model="process.alert_time_slice" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_ALERT_TIME_SLICE\' | translate}}</span>\n <span data-ng-show="(form.alert_time_slice.$touched || form.$submitted) && form.alert_time_slice.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.alert_time_slice.$error.max || form.alert_time_slice.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END ALERT TIME SLICE -->\n <!-- START DROP MAX COUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.drop_max_count.$touched || form.$submitted) && form.drop_max_count.$invalid}">\n <label class="control-label">{{\'APPLICATION_DROP_MAX_COUNT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="drop_max_count" placeholder="{{\'APPLICATION_DROP_MAX_COUNT\' | translate}}" class="form-control" data-ng-model="process.drop_max_count" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_DROP_MAX_COUNT\' | translate}}</span>\n <span data-ng-show="(form.drop_max_count.$touched || form.$submitted) && form.drop_max_count.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_max_count.$error.max || form.drop_max_count.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END DROP MAX COUNT -->\n <!-- START SUCCESS CALL SIZE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.success_call_size.$touched || form.$submitted) && form.success_call_size.$invalid}">\n <label class="control-label">{{\'APPLICATION_SUCCESS_CALL_SIZE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="success_call_size" placeholder="{{\'APPLICATION_SUCCESS_CALL_SIZE\' | translate}}" class="form-control" data-ng-model="process.success_call_size" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_SUCCESS_CALL_SIZE\' | translate}}</span>\n <span data-ng-show="(form.success_call_size.$touched || form.$submitted) && form.success_call_size.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.success_call_size.$error.max || form.success_call_size.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END SUCCESS CALL SIZE -->\n <!-- START IGNORE STRINGS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TIME_EXPIRED\' | translate}}</label>\n <input type="text" name="expiredtime" placeholder="yyyy-MM-dd HH:mm:ss" class="form-control" data-ng-model="process.expiredtime"/>\n <span class="help-block">{{\'DESCRIPTION_TD_TIME_EXPIRED\' | translate}}</span>\n </div>\n <!-- END IGNORE STRINGS-->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ANDVANCED TAB -->\n <!-- START STATUS TAB -->\n <div class="tab-pane" id="tab_status">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_MAX_RETRIES\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_RETRY_TIME\' | translate}} [min]\n </th>\n <th>\n {{ \'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td>\n {{ \'APPLICATION_AMD\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="amd_max_retries"class="form-control" data-ng-model="process.amd_max_retries" required/>\n <span data-ng-show="(form.amd_max_retries.$touched || form.$submitted) && form.amd_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.amd_max_retries.$error.max || form.amd_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="amd_retry_time" class="form-control" data-ng-model="process.amd_retry_time" required/>\n <span data-ng-show="(form.amd_retry_time.$touched || form.$submitted) && form.amd_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.amd_retry_time.$error.max || form.amd_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_AMD\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_BUSY\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="busy_max_retries"class="form-control" data-ng-model="process.busy_max_retries" required/>\n <span data-ng-show="(form.busy_max_retries.$touched || form.$submitted) && form.busy_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.busy_max_retries.$error.max || form.busy_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="busy_retry_time"class="form-control" data-ng-model="process.busy_retry_time" required/>\n <span data-ng-show="(form.busy_retry_time.$touched || form.$submitted) && form.busy_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.busy_retry_time.$error.max || form.busy_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_BUSY\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_CONGESTION\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="congestion_max_retries"class="form-control" data-ng-model="process.congestion_max_retries" required/>\n <span data-ng-show="(form.congestion_max_retries.$touched || form.$submitted) && form.congestion_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.congestion_max_retries.$error.max || form.congestion_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="congestion_retry_time"class="form-control" data-ng-model="process.congestion_retry_time" required/>\n <span data-ng-show="(form.congestion_retry_time.$touched || form.$submitted) && form.congestion_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.congestion_retry_time.$error.max || form.congestion_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_CONGESTION\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_DROP\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="drop_max_retries"class="form-control" data-ng-model="process.drop_max_retries" required/>\n <span data-ng-show="(form.drop_max_retries.$touched || form.$submitted) && form.drop_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_max_retries.$error.max || form.drop_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="drop_retry_time"class="form-control" data-ng-model="process.drop_retry_time" required/>\n <span data-ng-show="(form.drop_retry_time.$touched || form.$submitted) && form.drop_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_retry_time.$error.max || form.drop_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_DROP\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_FAILED\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="failed_max_retries"class="form-control" data-ng-model="process.failed_max_retries" required/>\n <span data-ng-show="(form.failed_max_retries.$touched || form.$submitted) && form.failed_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.failed_max_retries.$error.max || form.failed_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="failed_retry_time"class="form-control" data-ng-model="process.failed_retry_time" required/>\n <span data-ng-show="(form.failed_retry_time.$touched || form.$submitted) && form.failed_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.failed_retry_time.$error.max || form.failed_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_FAILED\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_NOANSWER\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="noanswer_max_retries"class="form-control" data-ng-model="process.noanswer_max_retries" required/>\n <span data-ng-show="(form.noanswer_max_retries.$touched || form.$submitted) && form.noanswer_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.noanswer_max_retries.$error.max || form.noanswer_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="noanswer_retry_time"class="form-control" data-ng-model="process.noanswer_retry_time" required/>\n <span data-ng-show="(form.noanswer_retry_time.$touched || form.$submitted) && form.noanswer_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.noanswer_retry_time.$error.max || form.noanswer_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_NOANSWER\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_NOSUCHEXTENSION\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="nosuchextension_max_retries"class="form-control" data-ng-model="process.nosuchextension_max_retries" required/>\n <span data-ng-show="(form.nosuchextension_max_retries.$touched || form.$submitted) && form.nosuchextension_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.nosuchextension_max_retries.$error.max || form.nosuchextension_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="nosuchextension_retry_time"class="form-control" data-ng-model="process.nosuchextension_retry_time" required/>\n <span data-ng-show="(form.nosuchextension_retry_time.$touched || form.$submitted) && form.nosuchextension_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.nosuchextension_retry_time.$error.max || form.nosuchextension_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_NOSUCHEXTENSION\' | translate}}\n </td>\n </tr>\n </tbody>\n </table>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END STATUS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/motiondialer/process/view/view.spooler.history.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_HISTORY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <json-formatter json="historySpooler" open="2"></json-formatter>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.spooler.html",'<div class="row" data-ng-init="getSpooler()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_SPOOLER\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/salesforce/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-cloud font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SALESFORCE\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/salesforce/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/salesforce/view/configuration/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.name.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.name.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START CHANNEL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel.$touched || form.channel.$submitted) && form.channel.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CHANNEL\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="channel.value as channel in channels | filter: $select.search">\n <div data-ng-bind="channel.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.channel.$touched || form.channel.$submitted) && form.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START CHANNEL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/salesforce/view/configuration/list/list.html",'<div ui-view class="profile-content">\r\n <div class="row">\r\n <div class="col-md-12">\r\n <div class="portlet light" data-ng-init="initView()">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'),a.put("app/salesforce/view/configuration/view/view.html",'<div class="row" data-ng-init="initView();getConfiguration();getCustomVariables();getFields();">\r\n <div class="col-md-12">\r\n <div class="portlet light">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\r\n </div>\r\n <ul class="nav nav-tabs">\r\n <li class="active">\r\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\r\n </li>\r\n <li>\r\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\r\n </li>\r\n <li>\r\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class="portlet-body">\r\n <div class="tab-content">\r\n <!-- SUBJECT TAB -->\r\n <div class="tab-pane ui-padding active" id="tab_1_1">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">All following fields will be join by blank space:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'subject\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="subject-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\r\n <div class="col-md-3">\r\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.variableName" data-ng-change="updateField(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END SUBJECT TAB -->\r\n <!-- DESCRIPTION TAB -->\r\n <div class="tab-pane ui-padding" id="tab_1_2">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">All following fields will be join by new line:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'description\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="description-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\r\n <div class="col-md-2">\r\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in descFieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\r\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\r\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'string\'">\r\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.variableName" data-ng-change="updateField(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END DESCRIPTION TAB -->\r\n <!-- FIELDS TAB -->\r\n <div class="tab-pane ui-padding" id="tab_1_3">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'field\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="field-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\r\n <div class="col-md-3">\r\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\r\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\r\n <div ng-bind-html="item.label | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\r\n <div class="form-group">\r\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\r\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\r\n <div ng-bind-html="item.label | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\r\n <div class="form-group">\r\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search | ucfirst"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.variableName" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END FIELDS TAB -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'),a.put("app/salesforce/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CLIENT ID -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientId.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_ID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientId" placeholder="{{\'APPLICATION_CLIENT_ID\' | translate}}" class="form-control" data-ng-model="account.clientId" required/>\n <span data-ng-show="forms.formSetting.clientId.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT ID -->\n\n <!-- START CLIENT SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientSecret.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientSecret" placeholder="{{\'APPLICATION_CLIENT_SECRET\' | translate}}" class="form-control" data-ng-model="account.clientSecret" required/>\n <span data-ng-show="forms.formSetting.clientSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT SECRET -->\n\n <!-- START SECURITY TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.securityToken.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECURITY_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="securityToken" placeholder="{{\'APPLICATION_SECURITY_TOKEN\' | translate}}" class="form-control" data-ng-model="account.securityToken" required/>\n <span data-ng-show="forms.formSetting.securityToken.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECURITY TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/salesforce/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/salesforce.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.salesforce.view.account\')}">\n <a ng-href="/salesforce/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.salesforce.view.configurations\') || $state.is(\'main.salesforce.view.configuration\')}">\n <a ng-href="/salesforce/view/{{account.id}}/configurations/list">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/salesforce/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/salesforce/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CLIENT ID -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientId.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_ID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientId" placeholder="{{\'APPLICATION_CLIENT_ID\' | translate}}" class="form-control" data-ng-model="item.clientId" required/>\n <span data-ng-show="forms.formSetting.clientId.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT ID -->\n\n <!-- START CLIENT SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientSecret.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientSecret" placeholder="{{\'APPLICATION_CLIENT_SECRET\' | translate}}" class="form-control" data-ng-model="item.clientSecret" required/>\n <span data-ng-show="forms.formSetting.clientSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT SECRET -->\n\n <!-- START SECURITY TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.securityToken.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECURITY_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="securityToken" placeholder="{{\'APPLICATION_SECURITY_TOKEN\' | translate}}" class="form-control" data-ng-model="item.securityToken" required/>\n <span data-ng-show="forms.formSetting.securityToken.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECURITY TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/setting/license/view/update.modal.html",'<div class="modal-header" data-ng-init="getLicense()">\n <h3 class="modal-title">{{ \'APPLICATION_UPDATE_LICENSE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START LICENSE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_LICENSE\' | translate}}</label>\n <textarea type="text" style="min-height:95px;" name="description" placeholder="{{\'APPLICATION_LICENSE\' | translate}}" class="form-control" data-ng-model="item.license"></textarea>\n </div>\n <!-- END LICENSE -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="update()" ng-disabled="form.$invalid">{{ \'APPLICATION_UPDATE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/license/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div\n class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-info"></i>\n <a href="#">{{ \'APPLICATION_LICENSE\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <div class="row">\n <div class="col-md-6">\n <div class="pricing hover-effect">\n <div class="pricing-head" data-ng-switch="license.months">\n <h3 ng-switch-when="1">{{\'APPLICATION_MONTH_TO_MONTH\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-when="12">{{\'APPLICATION_YEARLY\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-when="36">{{\'APPLICATION_PERPETUAL\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-default>{{\'APPLICATION_UNKNOWN\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h4><i>{{license.expiration ? (license.expiration | date:\'medium\') : \'DEMO\'}}</i>\n <span data-ng-show="license.expiration">Expiration Date </span>\n </h4>\n </div>\n <ul class="pricing-content list-unstyled">\n <li class="row">\n <div class="col-md-9">\n <i class="icon-eye"></i> {{\'APPLICATION_USERS\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n {{(license.users || license.users >= 0) ? license.users : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-people"></i> {{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}}):\n </div>\n <div class="col-md-3 text-center">\n {{(license.agents || license.agents >= 0) ? license.agents : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-phone"></i> {{\'APPLICATION_TELEPHONES\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n {{(license.telephones || license.telephones >= 0) ? license.telephones : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-bubble"></i> {{\'APPLICATION_CHAT\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.chat ? \'label-success\' : \'label-danger\'">{{license.chat ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-envelope"></i> {{\'APPLICATION_MAIL\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.mail ? \'label-success\' : \'label-danger\'">{{license.mail ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-paper-plane"></i> {{\'APPLICATION_FAX\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.fax ? \'label-success\' : \'label-danger\'">{{license.fax ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="glyphicon glyphicon-comment"></i> {{\'APPLICATION_SMS\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.messaging ? \'label-success\' : \'label-danger\'">{{license.messaging ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-notebook"></i> {{\'APPLICATION_CONTACT_MANAGER\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.cm ? \'label-success\' : \'label-danger\'">{{license.cm ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-control-forward"></i> {{\'APPLICATION_MOTION_DIALER\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.dialer ? \'label-success\' : \'label-danger\'">{{license.dialer ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="fa fa-edit"></i> {{\'APPLICATION_JSCRIPTY\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.jscripty ? \'label-success\' : \'label-danger\'">{{license.jscripty ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-cloud-download"></i> {{\'APPLICATION_UPDATE\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.update ? \'label-success\' : \'label-danger\'">{{license.update ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n </ul>\n <div class="pricing-footer">\n <p>\n {{license.description}}\n </p>\n <a href="#" class="btn yellow-crusta">\n {{\'APPLICATION_PRICES\' | translate}} <i class="m-icon-swapright m-icon-white"></i>\n </a>\n <a href="#" class="btn purple-plum" data-ng-click="updateLicense()">\n {{\'APPLICATION_UPDATE\' | translate}} <i class="icon-refresh m-icon-white"></i>\n </a>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-info font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LICENSE_REQUEST\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="form" novalidate data-ng-submit="submitRequest()">\n\n <!-- START USERS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.users.$touched || form.$submitted) && form.users.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERS\' | translate}}</label>\n <div class="input-icon">\n <i class="icon-eye"></i>\n <input type="number" name="users" placeholder="{{\'APPLICATION_USERS\' | translate}}" class="form-control" data-ng-model="item.users" min="0" required>\n </div>\n <span data-ng-show="(form.users.$touched || forms.$submitted) && form.users.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERS -->\n\n <!-- START AGENTS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.agents.$touched || form.$submitted) && form.agents.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}})</label>\n <div class="input-icon">\n <i class="icon-people"></i>\n <input type="number" name="agents" placeholder="{{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}})" class="form-control" data-ng-model="item.agents" min="0" required>\n </div>\n <span data-ng-show="(form.users.$touched || forms.$submitted) && form.users.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENTS -->\n\n <!-- START TELEPHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.telephones.$touched || form.$submitted) && form.telephones.$invalid}">\n <label class="control-label">{{\'APPLICATION_TELEPHONES\' | translate}}</label>\n <div class="input-icon">\n <i class="icon-phone"></i>\n <input type="number" name="telephones" placeholder="{{\'APPLICATION_TELEPHONES\' | translate}}" class="form-control" data-ng-model="item.telephones" min="0" required>\n </div>\n <span data-ng-show="(form.telephones.$touched || forms.$submitted) && form.telephones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TELEPHONES -->\n\n <!-- START CHAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.chat.$touched || form.$submitted) && form.chat.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHAT\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-bubble"></i>\n <input type="text" placeholder="{{\'APPLICATION_CHAT\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="chat" data-ng-model="item.chat">\n </span>\n </div>\n <span data-ng-show="(form.chat.$touched || forms.$submitted) && form.chat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CHAT -->\n\n <!-- START MAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.mail.$touched || form.$submitted) && form.mail.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIL\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-envelope"></i>\n <input type="text" placeholder="{{\'APPLICATION_MAIL\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="mail" data-ng-model="item.mail">\n </span>\n </div>\n <span data-ng-show="(form.mail.$touched || forms.$submitted) && form.mail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIL -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.fax.$touched || form.$submitted) && form.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-paper-plane"></i>\n <input type="text" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="fax" data-ng-model="item.fax">\n </span>\n </div>\n <span data-ng-show="(form.fax.$touched || forms.$submitted) && form.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START SMS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.messaging.$touched || form.$submitted) && form.messaging.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="glyphicon glyphicon-comment"></i>\n <input type="text" placeholder="{{\'APPLICATION_SMS\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="messaging" data-ng-model="item.messaging">\n </span>\n </div>\n <span data-ng-show="(form.messaging.$touched || forms.$submitted) && form.messaging.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SMS -->\n\n <!-- START CM -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.cm.$touched || form.$submitted) && form.cm.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTACT_MANAGER\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-notebook"></i>\n <input type="text" placeholder="{{\'APPLICATION_CONTACT_MANAGER\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="cm" data-ng-model="item.cm">\n </span>\n </div>\n <span data-ng-show="(form.cm.$touched || forms.$submitted) && form.cm.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CM -->\n\n <!-- START DIALER -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.dialer.$touched || form.$submitted) && form.dialer.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_DIALER\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-control-forward"></i>\n <input type="text" placeholder="{{\'APPLICATION_MOTION_DIALER\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="dialer" data-ng-model="item.dialer">\n </span>\n </div>\n <span data-ng-show="(form.dialer.$touched || forms.$submitted) && form.dialer.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DIALER -->\n\n <!-- START JSCRITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.jscripty.$touched || form.$submitted) && form.jscripty.$invalid}">\n <label class="control-label">{{\'APPLICATION_JSCRIPTY\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="fa fa-edit"></i>\n <input type="text" placeholder="{{\'APPLICATION_JSCRIPTY\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="jscripy" data-ng-model="item.jscripty">\n </span>\n </div>\n <span data-ng-show="(form.jscripty.$touched || forms.$submitted) && form.jscripty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END JSCRIPTY -->\n\n <!-- START UPDATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.update.$touched || form.$submitted) && form.update.$invalid}">\n <label class="control-label">{{\'APPLICATION_UPDATE\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-cloud-download"></i>\n <input type="text" placeholder="{{\'APPLICATION_UPDATE\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="update" data-ng-model="item.update">\n </span>\n </div>\n <span data-ng-show="(form.update.$touched || forms.$submitted) && form.update.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END UPDATE -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_SUBMIT\' | translate}} {{\'APPLICATION_REQUEST\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/network/view/externip/externip.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body" data-ng-init="initModal()">\n <form name="form" novalidate>\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.address.$touched || form.$submitted) && form.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.value" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/network/view/externip/externip.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row">\r\n <div class="col-md-12">\r\n <!-- BEGIN Portlet PORTLET-->\r\n <div class="portlet light bordered" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-globe font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_EXTERNIP\' | translate }}</a> </span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_EXTERNIP\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/network/view/localnet/localnet.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body" data-ng-init="initModal()">\n <form name="form" novalidate>\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.address.$touched || form.$submitted) && form.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START MASK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.mask.$touched || form.$submitted) && form.mask.$invalid}">\n <label class="control-label">{{\'APPLICATION_MASK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mask" placeholder="{{\'APPLICATION_MASK\' | translate}}" class="form-control" data-ng-model="item.mask" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.mask.$touched || form.$submitted) && form.mask.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.mask.$touched || form.$submitted) && form.mask.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END MASK -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/network/view/localnet/localnet.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row">\r\n <div class="col-md-12">\r\n <!-- BEGIN Portlet PORTLET-->\r\n <div class="portlet light bordered" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-desktop font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_LOCALNET\' | translate }}</a> </span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LOCALNET\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/network/view/view.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row" data-ng-init="initView()">\r\n <div class="col-md-12">\r\n <div class="page-bar">\r\n <ul class="page-breadcrumb">\r\n <li>\r\n <i class="icon-rocket"></i>\r\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-settings"></i>\r\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-globe"></i>\r\n <a href="#">{{ \'APPLICATION_NETWORK\' | translate }}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <!-- BEGIN PROFILE SIDEBAR -->\r\n <div class="profile-sidebar">\r\n <!-- PORTLET MAIN -->\r\n <div class="portlet light profile-sidebar-portlet">\r\n <!-- SIDEBAR USERPIC -->\r\n <div class="profile-image">\r\n <img src="assets/images/media/business.png" class="img-responsive">\r\n </div>\r\n <!-- END SIDEBAR USERPIC -->\r\n <!-- SIDEBAR USER TITLE -->\r\n <div class="profile-usertitle">\r\n <div class="profile-usertitle-name">\r\n {{ \'APPLICATION_NETWORK\' | translate }}\r\n </div>\r\n </div>\r\n <!-- END SIDEBAR USER TITLE -->\r\n <!-- SIDEBAR MENU -->\r\n <div class="profile-usermenu">\r\n <ul class="nav">\r\n <li data-ng-class="{active: $state.is(\'main.setting.network.view.localnet\')}">\r\n <a ng-href="/setting/network/view/localnet">\r\n <i class="icon-desktop"></i>\r\n {{ \'APPLICATION_LOCALNET\' | translate }} </a>\r\n </li>\r\n <li data-ng-class="{active: $state.is(\'main.setting.network.view.externip\')}">\r\n <a ng-href="/setting/network/view/externip">\r\n <i class="icon-globe"></i>\r\n {{ \'APPLICATION_EXTERNIP\' | translate }} </a>\r\n </li>\r\n </ul>\r\n </div>\r\n <!-- END MENU -->\r\n </div>\r\n <!-- END PORTLET MAIN -->\r\n </div>\r\n <!-- END BEGIN PROFILE SIDEBAR -->\r\n <!-- BEGIN PROFILE CONTENT -->\r\n <div ui-view class="profile-content">\r\n </div>\r\n <!-- END PROFILE CONTENT -->\r\n\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/smtp/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">SMTP</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <ui-select data-ng-model="item.type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'custom\', \'account\'] | filter: $select.search">\n <div ng-bind-html="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <!-- START CUSTOM TAB -->\n <form name="custom" data-ng-submit="custom.$valid && updateItem()" ng-slide-down="item.type === \'custom\'" lazy-render duration="1" novalidate>\n\n <hr>\n\n <div data-ng-show="item.account.id">\n <div class="note note-danger" data-ng-show="item.account.state === \'DISCONNECTED\' || item.account.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="item.account.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="item.account.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="item.account.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n </div>\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.host.$touched || custom.$submitted) && custom.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTGOING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.account.host" required/>\n <span data-ng-show="(custom.host.$touched || custom.$submitted) && custom.host.$invalid && custom.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.username.$touched || custom.$submitted) && custom.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.account.username" required/>\n <span data-ng-show="(custom.username.$touched || custom.$submitted) && custom.username.$invalid && custom.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.password.$touched || custom.$submitted) && custom.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.account.password" required/>\n <span data-ng-show="(custom.password.$touched || custom.$submitted) && custom.password.$invalid && custom.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.port.$touched || custom.$submitted) && custom.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.account.port" required/>\n <span data-ng-show="(custom.custom.$touched || custom.$submitted) && custom.port.$invalid && custom.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(custom.port.$touched || custom.$submitted) && custom.port.$invalid && custom.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group row">\n <label class="col-md-2">\n SSL\n </label>\n <label class="col-md-10">\n <input\n bs-switch\n data-ng-model="item.account.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </label>\n </div>\n <!-- END SSL -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" data-ng-show="custom.$valid" data-ng-disabled="smtpDisabled"/>\n <input class="btn blue-madison" type="button" value="Test" data-ng-click="test()" data-ng-show="custom.$valid" data-ng-disabled="smtpDisabled"/>\n </form>\n <!-- END CUSTOM TAB -->\n\n <!-- START CUSTOM TAB -->\n <form name="account" data-ng-init="initMailAccounts()" data-ng-submit="account.$valid && updateItem()" ng-slide-down="item.type === \'account\'" lazy-render duration="1" novalidate>\n\n <hr>\n\n <div data-ng-show="item.account.id">\n <div class="note note-danger" data-ng-show="item.account.state === \'DISCONNECTED\' || item.account.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="item.account.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="item.account.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="item.account.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n </div>\n\n <!-- START ACCOUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (account.account.$touched || account.$submitted) && account.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACCOUNTS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.account" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.username}}</ui-select-match>\n <ui-select-choices repeat="server in servers | filter: $select.search">\n <div ng-bind-html="server.username | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(account.queue.$touched || account.$submitted) && account.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" data-ng-disabled="smtpDisabled"/>\n <input class="btn blue-madison" type="button" value="Test" data-ng-click="test()" data-ng-disabled="smtpDisabled"/>\n </form>\n <!-- END SMTP TAB -->\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/setting/update/list/landing.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-cloud-download"></i>\n <a href="#">{{ \'APPLICATION_UPDATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- BEGIN PAGE CONTENT-->\n <div class="row" data-ng-init="initCounter()">\n <div class="col-md-12 page-500">\n <div class="number">\n <timer interval="1000" countdown="120">{{countdown}}</timer>\n </div>\n <div class="details">\n <h3>Wait! We need to restart xCALLY Motion server.</h3>\n <p>\n We are updating it!<br/>\n xCALLY Motion Team<br/><br/>\n </p>\n </div>\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/update/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-cloud-download"></i>\n <a href="#">{{ \'APPLICATION_UPDATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-cloud-download font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_UPDATES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <a class="btn btn-default" href="#" data-ng-click="pull()">\n <i class="icon-cloud-download"></i> {{ \'APPLICATION_UPDATE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/update/list/list.pull.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text" data-ng-bind="modal.text"></p>\n <div data-ng-if="modal.html" data-ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button data-ng-repeat="button in modal.buttons" data-ng-class="button.classes" data-ng-click="button.click($event)" data-ng-bind="button.text" class="btn"></button>\n</div>\n'),a.put("app/square/odbc/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DSN -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.dsn.$touched || form.$submitted) && form.dsn.$invalid}">\n <label class="control-label">{{\'APPLICATION_ODBC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="dsn" placeholder="DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion" class="form-control" data-ng-model="item.dsn" required/>\n <p class="help-block">Es. DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion</p>\n <span data-ng-show="(form.dsn.$touched || form.$submitted) && form.dsn.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DSN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/square/odbc/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_ODBCS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ODBCS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ODBC\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/odbc/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getOdbc()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/square/odbc/list">{{ \'APPLICATION_ODBCS\' | translate }}</a>\n <i data-ng-show="odbc" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="odbc">\n <a href="#">{{odbc.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/odbc.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{odbc.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.square.odbc.view.settings\')}">\n <a data-ng-href="/square/odbc/view/{{odbc.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/odbc/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ODBC\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateOdbc()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="odbc.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DSN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.odbc.dsn.$touched || forms.odbc.$submitted) && forms.odbc.dsn.$invalid}">\n <label class="control-label">{{\'APPLICATION_ODBC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="dsn" placeholder="{{\'APPLICATION_DSN\' | translate}}" class="form-control" data-ng-model="odbc.dsn" required/>\n <p class="help-block">Es. DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion</p>\n <span data-ng-show="(forms.odbc.dsn.$touched || forms.odbc.$submitted) && forms.odbc.dsn.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DSN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="odbc.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/square/project/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/square/project/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="#">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROJECTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROJECT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/project/view/view.html",'<div class="row" data-ng-init="getProject()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/square/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a ng-href="/square/projects/view/{{squareProject.id}}">{{squareProject.name}}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div id="geEditor" class="geEditor"></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<script>\n\n\n</script>\n'),a.put("app/square/realtime/view/general/general.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="init()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a href="#">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/square/realtime/view/general">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.square.realtime.view.general\')}">\n <a href="/square/realtime/view/general">\n {{\'APPLICATION_GENERAL\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/recording/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a href="#">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-microphone"></i>\n <a href="#">{{ \'APPLICATION_RECORDINGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-play font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_RECORDINGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_STAFF\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="#">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-people font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <button type="button" class="btn green-jungle" data-toggle="dropdown" data-hover="dropdown" data-delay="1000" data-close-others="true" aria-expanded="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_AGENT\' | translate }} <i class="fa fa-angle-down"></i>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <a href="/staff/agents/wizard">\n Standard\n </a>\n </li>\n <li>\n <a href="/staff/agents/bulk">\n {{ \'APPLICATION_BULK\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/view/view.account.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_PERSONAL_INFO\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_AVATAR\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin() || agent.id === Auth.getCurrentUser().id" data-ng-class="{\'active\': !Auth.isAdmin() && agent.id === Auth.getCurrentUser().id}">\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane" data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="agent.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="agent.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="agent.email" required/>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="agent.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START INTERNAL -->\n <!-- <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.internal" required disabled/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div> -->\n <!-- END INTERNAL -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n <!-- CHANGE AVATAR TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_2">\n <form action="#" role="form">\n <div class="form-group">\n <div class="fileinput fileinput-new" data-provides="fileinput">\n <div class="fileinput-new thumbnail" style="width: 200px; height: 150px;">\n <img ng-src="assets/images/media/noProfileImage.png" alt=""/>\n </div>\n <div class="fileinput-preview fileinput-exists thumbnail" style="max-width: 200px; max-height: 150px;">\n </div>\n <div>\n <span class="btn default btn-file" data-ng-show="!uploader.queue[0]">\n <span> {{ \'APPLICATION_SELECT_IMAGE\' | translate }} </span>\n <input type="file" nv-file-select="" uploader="uploader" /><br/>\n </span>\n <button type="button" class="btn default" data-ng-show="uploader.queue[0]" data-dismiss="fileinput" ng-click="uploader.queue[0].remove()">\n {{ \'APPLICATION_REMOVE\' | translate }}\n </button>\n <button type="button" class="btn green-haze" data-ng-show="uploader.queue[0]" data-ng-click="uploader.queue[0].upload()" ng-disabled="uploader.queue[0].isReady || uploader.queue[0].isUploading || uploader.queue[0].isSuccess">\n {{ \'APPLICATION_CONFIRM\' | translate }}\n </button>\n </div>\n <p>\n </br> {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>jpg, png, jpeg</b>.\n </p>\n </div>\n </div>\n </form>\n <div class="row">\n <div class="col-md-2">\n <table class="table" border="0">\n <tbody>\n <tr data-ng-repeat="item in uploader.queue">\n <td style="border-top-style:none">\n <strong>\n {{ item.file.name }}\n </strong>\n </td>\n <td data-ng-show="uploader.isHTML5" nowrap style="border-top-style:none">\n {{ item.file.size/1024/1024|number:2 }} MB\n </td>\n <td nowrap style="border-top-style:none">\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> Remove\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n <!-- END CHANGE AVATAR TAB -->\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin() || agent.id === Auth.getCurrentUser().id" data-ng-class="{\'active\': !Auth.isAdmin() && agent.id === Auth.getCurrentUser().id}" id="tab_1_3">\n <form name="forms.changePwd" data-ng-submit="forms.changePwd.$valid && updatePassword()" novalidate>\n <!-- START CURRENT PWD -->\n <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.reNewPwd" nx-equal="agent.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/staff/agent/view/view.chat.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_CHAT\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="chatCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.chatCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.fax.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_FAX\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="faxCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.faxCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_STAFF\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/staff/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{agent.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-userpic">\n <img ng-src="api/users/avatar/{{agent.userpic ? agent.userpic : \'unknown_avatar\'}}" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- START SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{agent.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{agent.role}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.account\')}">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.chat\')}" data-ng-show="Auth.isAdmin() && license.chat">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/chat">\n <i class="icon-bubble"></i>\n {{ \'APPLICATION_CHAT\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.mail\')}" data-ng-show="Auth.isAdmin() && license.mail">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/mail">\n <i class="icon-envelope"></i>\n {{ \'APPLICATION_MAIL\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.fax\')}" data-ng-show="Auth.isAdmin() && license.fax">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/fax">\n <i class="icon-paper-plane"></i>\n {{ \'APPLICATION_FAX\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.sms\')}" data-ng-show="Auth.isAdmin() && license.messaging">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/sms">\n <i class=" glyphicon glyphicon-comment "></i>\n {{ \'APPLICATION_SMS\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.motionbar\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/motionbar">\n <i class="icon-screen-desktop"></i>\n {{ \'APPLICATION_MOTION_BAR\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/view/view.mail.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_MAIL\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="mailCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.mailCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.motionbar.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_MOTION_BAR\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CALL_FORWARDING\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START GENERAL TAB -->\n <div class="tab-pane" data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()" id="tab_1_1">\n <form name="forms.general" data-ng-submit="updateItem()" novalidate>\n\n <!-- START ENABLE_SETTINGS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ENABLE_SETTINGS\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarEnableSettings"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END ENABLE_SETTINGS -->\n\n <!-- START AUTO_ANSWER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_ANSWER\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarAutoAnswer"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END AUTO_ANSWER -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- START CALL FORWARDING TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_2">\n <form name="forms.callForwarding" data-ng-submit="updateItem()" novalidate>\n\n <!-- START UNCONDITIONAL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_UNCONDITIONAL\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarUnconditional"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END UNCONDITIONAL -->\n\n\n <!-- START UNCONDITIONAL NUMBER -->\n <div class="form-group" data-ng-if="agent.phoneBarUnconditional" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarUnconditionalNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarUnconditionalNumber.$invalid}">\n <input type="text" name="phoneBarUnconditionalNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarUnconditionalNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarUnconditionalNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarUnconditionalNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END UNCONDITIONAL NUMBER -->\n\n <!-- START NO REPLY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_NO_REPLY\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarNoReply"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END NO REPLY -->\n\n <!-- START NO REPLY -->\n <div class="form-group" data-ng-if="agent.phoneBarNoReply" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarNoReplyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarNoReplyNumber.$invalid}">\n <input type="text" name="phoneBarNoReplyNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarNoReplyNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarNoReplyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarNoReplyNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPLY -->\n\n <!-- START BUSY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_BUSY\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarBusy"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END BUSY -->\n\n <!-- START BUSY NUMBER -->\n <div class="form-group" data-ng-if="agent.phoneBarBusy" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarBusyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarBusyNumber.$invalid}">\n <input type="text" name="phoneBarBusyNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarBusyNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarBusyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarBusyNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUSY NUMBER -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CALL FORWARDING TAB -->\n <!-- START ADVANCED TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_3">\n <form name="forms.advanced" data-ng-submit="updateItem()" novalidate>\n\n <!-- START ENABLE REMOTE CONTROL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REMOTE_CONTROL\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarRemoteControl"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END ENABLE REMOTE CONTROL -->\n\n\n <!-- START REMOTE CONTROL PORT -->\n <div class="form-group" data-ng-if="agent.phoneBarRemoteControl" data-ng-class="{\'has-error\': (forms.advanced.phoneBarRemoteControlPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarRemoteControlPort.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_CONTROL\' | translate}} {{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="phoneBarRemoteControlPort" placeholder="{{\'APPLICATION_REMOTE_CONTROL\' | translate}} {{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="agent.phoneBarRemoteControlPort" required/>\n <span class="help-block">Default: 9888</span>\n <span data-ng-show="(forms.advanced.phoneBarRemoteControlPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarRemoteControlPort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarRemoteControlPort.$error.max || form.advanced.phoneBarRemoteControlPort.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE CONTROL PORT -->\n\n <!-- START SIP EXPIRES -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.phoneBarExpires.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarExpires.$invalid}">\n <label class="control-label">SIP {{\'APPLICATION_EXPIRES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="phoneBarExpires" placeholder="SIP {{\'APPLICATION_EXPIRES\' | translate}}" class="form-control" data-ng-model="agent.phoneBarExpires" required/>\n <span class="help-block">Default: 3600</span>\n <span data-ng-show="(forms.advanced.phoneBarExpires.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarExpires.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarExpires.$error.max || form.advanced.phoneBarExpires.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}} (min 1).\n </span>\n </div>\n <!-- END SIP EXPIRES -->\n\n <!-- START SIP PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.phoneBarListenPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarListenPort.$invalid}">\n <label class="control-label">SIP {{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" max="65535" name="phoneBarListenPort" placeholder="SIP {{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="agent.phoneBarListenPort" required/>\n <span class="help-block">Default: 5060</span>\n <span data-ng-show="(forms.advanced.phoneBarListenPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarListenPort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarListenPort.$error.max || form.advanced.phoneBarListenPort.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}} (0-65535).\n </span>\n </div>\n <!-- END SIP PORT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/agent/view/view.sms.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_SMS\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="smsCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.smsCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.voice" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.internal.$touched || forms.voice.$submitted) && forms.voice.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.internal" required disabled/>\n <span data-ng-show="(forms.voice.internal.$touched || forms.voice.$submitted) && forms.voice.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="agent.transport" theme="bootstrap">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.host.$touched || forms.voice.$submitted) && forms.voice.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="agent.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_HOST\' | translate }}\n </span>\n <span data-ng-show="(forms.voice.host.$touched || forms.voice.$submitted) && forms.voice.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START NAT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_NAT\' | translate}}</label>\n <ui-select multiple data-ng-model="agent.nat" name="nat" theme="bootstrap">\n <ui-select-match placeholder="{{ \'APPLICATION_SEARCH_FILTER\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="nat in [\'yes\', \'no\', \'never\', \'route\', \'force_rport\', \'comedia\'] | filter: $select.search">\n {{nat}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_NAT\' | translate }}\n </span>\n </div>\n <!-- END NAT -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.type.$touched || forms.voice.$submitted) && forms.voice.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="agent.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_SEARCH_FILTER\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="type in [\'friend\', \'user\', \'peer\'] | filter: $select.search">\n <div ng-bind-html="type | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TYPE\' | translate }}\n </span>\n <span data-ng-show="(forms.voice.type.$touched || forms.voice.$submitted) && forms.voice.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="agent.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHANSPY\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="agent.chanspy"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/staff/agent/wizard/wizard-bulk.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/agents/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal(); item.amount = 2;">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItems()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START AMOUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$invalid}">\n <label class="control-label">{{\'APPLICATION_AMOUNT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="amount" min="2" placeholder="{{\'APPLICATION_AMOUNT\' | translate}}" class="form-control" data-ng-model="item.amount" required>\n <span data-ng-show="(forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END AMOUNT -->\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/agent/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/staff/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/agents/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/team/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_TEAM\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/staff/team/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-shield"></i>\n <a href="/staff/teams/list">{{ \'APPLICATION_TEAMS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-shield font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEAMS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TEAM\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/team/view/view.agents.html",'<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- GENERAL TAB -->\n <!-- BEGIN PORTLET-->\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n <!-- END PORTLET-->\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/team/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-shield"></i>\n <a href="/staff/teams/list">{{ \'APPLICATION_TEAMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{team.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/team.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{team.name}}\n </div>\n\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.teams.view.settings\')}">\n <a data-ng-href="/staff/teams/view/{{team.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.teams.view.agents\')}">\n <a data-ng-href="/staff/teams/view/{{team.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/team/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- PERSONAL INFO TAB -->\n <div>\n\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="team.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="team.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/telephone/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-phone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TELEPHONES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/staff/telephones/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TELEPHONE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/telephone/view/view.account.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_ACCOUNT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-ng-show="Auth.isAdmin() || item.id === getCurrentTelephone().id" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem() && forms.info.$valid" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" required ng-remote-validate="/api/agents/validate/name"/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" ng-click="next()"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" id="tab_1_2" data-ng-show="Auth.isAdmin() || item.id === getCurrentTelephone().id">\n <form name="forms.changePwd" data-ng-submit="updateItem() && forms.changePwd.$valid" novalidate>\n <!-- START CURRENT PWD -->\n <!-- <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div> -->\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.reNewPwd" nx-equal="item.password" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/staff/telephone/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{item.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR TELEPHONEPIC -->\n <div class="profile-userpic">\n <img data-ng-src="assets/images/media/telephone.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR TELEPHONEPIC -->\n <!-- SIDEBAR TELEPHONE TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{item.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{item.role}}\n </div>\n </div>\n <!-- END SIDEBAR TELEPHONE TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.telephones.view.account\')}">\n <a data-ng-href="/staff/telephones/view/{{item.id}}/account">\n <i class="icon-phone"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.telephones.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/telephones/view/{{item.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/telephone/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" required readonly/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n'+" <ui-select-choices repeat=\"allow in ['g729', 'ilbc', 'gsm', 'ulaw', 'alaw'] | filter: $select.search\">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class=\"help-block\">\n {{ 'DESCRIPTION_VOICE_CODEC' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class=\"btn green-haze\" type=\"submit\" value=\"{{'APPLICATION_UPDATE' | translate}}\"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n"),a.put("app/staff/telephone/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/staff/telephones/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-phone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TELEPHONE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" ata-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/user/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="#">{{ \'APPLICATION_USERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-eye font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_USERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/staff/users/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_USER\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_PERSONAL_INFO\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_AVATAR\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-ng-show="Auth.isAdmin() || user.id === getCurrentUser().id" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="user.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="user.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="user.email" required/>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="user.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n\n <!-- CHANGE AVATAR TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form action="#" role="form">\n <div class="form-group">\n <div class="fileinput fileinput-new" data-provides="fileinput">\n <div class="fileinput-new thumbnail" style="width: 200px; height: 150px;">\n <img ng-src="assets/images/media/noProfileImage.png" alt=""/>\n </div>\n <div class="fileinput-preview fileinput-exists thumbnail" style="max-width: 200px; max-height: 150px;">\n </div>\n <div>\n <span class="btn default btn-file" data-ng-show="!uploader.queue[0]">\n <span> {{ \'APPLICATION_SELECT_IMAGE\' | translate }} </span>\n <input type="file" nv-file-select="" uploader="uploader" /><br/>\n </span>\n <button type="button" class="btn default" data-ng-show="uploader.queue[0]" data-dismiss="fileinput" ng-click="uploader.queue[0].remove()">\n <span> {{ \'APPLICATION_REMOVE\' | translate }} </span>\n </button>\n <button type="button" class="btn green-haze" data-ng-show="uploader.queue[0]" data-ng-click="uploader.queue[0].upload()" ng-disabled="uploader.queue[0].isReady || uploader.queue[0].isUploading || uploader.queue[0].isSuccess">\n <span> {{ \'APPLICATION_CONFIRM\' | translate }} </span>\n </button>\n </div>\n <p>\n </br> {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>jpg, png, jpeg</b>.\n </p>\n </div>\n </div>\n </form>\n <div class="row">\n <div class="col-md-2">\n <table class="table" border="0">\n <tbody>\n <tr data-ng-repeat="item in uploader.queue">\n <td style="border-top-style:none">\n <strong>\n {{ item.file.name }}\n </strong>\n </td>\n <td data-ng-show="uploader.isHTML5" nowrap style="border-top-style:none">\n {{ item.file.size/1024/1024|number:2 }} MB\n </td>\n <td nowrap style="border-top-style:none">\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> Remove\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n <!-- END CHANGE AVATAR TAB -->\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" id="tab_1_3" data-ng-show="Auth.isAdmin() || user.id === getCurrentUser().id">\n <form name="forms.changePwd" data-ng-submit="forms.changePwd.$valid && updatePassword()" novalidate>\n <!-- START CURRENT PWD -->\n <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.reNewPwd" nx-equal="user.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/user/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/staff/users/list">{{ \'APPLICATION_USERS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{user.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-userpic">\n <img ng-src="api/users/avatar/{{user.userpic ? user.userpic : \'unknown_avatar\'}}" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{user.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{user.role}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.users.view.account\')}">\n <a data-ng-href="/staff/users/view/{{user.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.users.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/users/view/{{user.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}}\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.staff.users.view.permit\')}" data-ng-show="Auth.isAdmin() && user.role === \'user\'">\n <a data-ng-href="/staff/users/view/{{user.id}}/permit/voice">\n <i class="icon-key"></i>\n {{ \'APPLICATION_PERMITS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.chat.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initChatQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.fax.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initFaxQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.voice\')}">\n <a href="/staff/users/view/{{user.id}}/permit/voice">\n <i class="icon-earphones-alt"></i> {{\'APPLICATION_VOICE\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.chat\')}">\n <a href="/staff/users/view/{{user.id}}/permit/chat">\n <i class="icon-bubble"></i> {{\'APPLICATION_CHAT\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.mail\')}">\n <a href="/staff/users/view/{{user.id}}/permit/mail">\n <i class="icon-envelope"></i>{{\'APPLICATION_MAIL\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.fax\')}">\n <a href="/staff/users/view/{{user.id}}/permit/fax">\n <i class="icon-paper-plane"></i> {{\'APPLICATION_FAX\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.sms\')}">\n <a href="/staff/users/view/{{user.id}}/permit/sms">\n <i class="glyphicon glyphicon-comment"></i> {{\'APPLICATION_SMS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.modules\')}" data-ng-if="user.role !== \'admin\'">\n <a href="/staff/users/view/{{user.id}}/permit/modules">\n <i class="icon-menu"></i> {{\'APPLICATION_MODULES\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.mail.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initMailQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/staff/user/view/view.permit.modules.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row left-margin" data-ng-init="getModules()">\n <div data-ng-repeat="module in modules" data-ng-if="(module.id === 8 && license.chat) || (module.id === 9 && license.mail) || (module.id === 10 && license.fax) || (module.id === 11 && license.messaging) || !_.includes([8,9,10,11],module.id)">\n <div class="form-group" data-ng-class="{\'left-margin-40\':module.ModuleId}">\n <span data-ng-if="module.ModuleId">└──</span> <input\n bs-switch\n class="form-control"\n ng-model="module.status"\n type="checkbox"\n data-ng-change="updatePermissions(module)"\n switch-active="{{ moduleSwitch.isActive }}"\n switch-on-text="{{ moduleSwitch.onText }}"\n switch-off-text="{{ moduleSwitch.offText }}"\n switch-on-color="{{ moduleSwitch.onColor }}"\n switch-off-color="{{ moduleSwitch.offColor }}"\n switch-animate="{{ moduleSwitch.animate }}"\n switch-size="{{ moduleSwitch.size }}"\n switch-label="{{ moduleSwitch.label }}"\n switch-icon="{{ moduleSwitch.icon }}"\n switch-radio-off="{{ moduleSwitch.radioOff }}"\n switch-label-width="{{ moduleSwitch.labelWidth }}"\n switch-handle-width="{{ moduleSwitch.handleWidth }}">\n <label class="control-label">{{module.name | capitalize}}</label>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.sms.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initSmsQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.voice.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initVoiceQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="user.internal" required readonly/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="user.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="user.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n'+" <ui-select-choices repeat=\"allow in ['g729', 'ilbc', 'gsm', 'ulaw', 'alaw'] | filter: $select.search\">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class=\"help-block\">\n {{ 'DESCRIPTION_VOICE_CODEC' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class=\"btn green-haze\" type=\"submit\" value=\"{{'APPLICATION_UPDATE' | translate}}\"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n"),a.put("app/staff/user/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/staff/users/list">{{ \'APPLICATION_USERS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/staff/users/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_USER\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required />\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/sugarcrm/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SUGARCRM\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/sugarcrm/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/sugarcrm/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/sugarcrm/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/sugarcrm/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/sugarcrm/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/sugarcrm/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/sugarcrm.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.sugarcrm.view.account\')}">\n <a ng-href="/sugarcrm/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.sugarcrm.view.configurations\') || $state.is(\'main.sugarcrm.view.configuration\')}">\n <a ng-href="/sugarcrm/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/sugarcrm/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CANNED_ANSWER\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.key.$touched || form.$submitted) && form.key.$invalid}">\n <label class="control-label">{{\'APPLICATION_KEY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="key" placeholder="{{\'APPLICATION_KEY\' | translate}}" class="form-control" data-ng-model="item.key" required/>\n <span data-ng-show="(form.key.$touched || form.$submitted) && form.key.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.value.$touched || form.$submitted) && form.value.$invalid}">\n <label class="control-label">{{\'APPLICATION_VALUE\' | translate}}<span class="required" aria-required="true">*</span></label></label>\n <textarea type="text" name="value" placeholder="{{\'APPLICATION_VALUE\' | translate}}" class="form-control" data-ng-model="item.value" required></textarea>\n <span data-ng-show="(form.value.$touched || form.$submitted) && form.value.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VALUE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/answer/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magic-wand"></i>\n <a href="#">{{ \'APPLICATION_CANNED_ANSWERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-magic-wand font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CANNED_ANSWERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CANNED_ANSWER\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getAnswer()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magic-wand"></i>\n <a href="/tools/answers/list">{{ \'APPLICATION_CANNED_ANSWER\' | translate }}</a>\n <i data-ng-show="answer" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="answer">\n <a href="#">{{answer.key}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/answer.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{answer.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.answers.view.settings\')}">\n <a data-ng-href="/tools/answers/view/{{answer.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CANNED_ANSWER\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateAnswer()" novalidate>\n\n <!-- START KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.key.$touched || forms.general.$submitted) && forms.general.key.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="key" placeholder="{{\'APPLICATION_KEY\' | translate}}" class="form-control" data-ng-model="answer.key" required/>\n <span data-ng-show="(forms.general.key.$touched || forms.general.$submitted) && forms.general.key.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END KEY -->\n\n <!-- START VALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.value.$touched || forms.general.$submitted) && forms.general.value.$invalid}">\n <label class="control-label">{{\'APPLICATION_VALUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="value" placeholder="{{\'APPLICATION_VALUE\' | translate}}" class="form-control" data-ng-model="answer.value" required></textarea>\n <span data-ng-show="(forms.general.value.$touched || forms.general.$submitted) && forms.general.value.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VALUE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="answer.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/automation/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="#">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/automations/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_AUTOMATION\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/automation/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/tools/automations/list">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="automation"></i>\n </li>\n <li data-ng-show="automation">\n <a href="#">{{ automation.description || automation.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/automation.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ automation.name }}\n </div>\n <div class="profile-usertitle-job">\n {{ automation.description }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.automations.view.settings\')}">\n <a href="/tools/automations/view/{{automation.id}}/settings">\n <i class="icon-bulb"></i>\n {{ \'APPLICATION_SETTINGS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/automation/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_CONDITIONS\' | translate}} & {{\'APPLICATION_ACTIONS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!-- <pre>\n {{conditionsData.query | json}}\n </pre>\n <pre>\n {{actionsData.query | json}}\n </pre> -->\n <form name="forms.general" data-ng-submit="exitValidation(forms.general.$valid) && updateAutomation()" novalidate>\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="automation.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.timeout.$touched && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} ({{\'APPLICATION_MINUTES\' | translate}})</label>\n <input type="number" name="timeout" min="10" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}} (min 10 {{\'APPLICATION_MINUTES\' | translate}})" class="form-control" data-ng-model="automation.timeout" data-ng-init="item.timeout = 10" required/>\n <span data-ng-show="forms.general.timeout.$touched && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="automation.status"\n type="checkbox"\n name="status"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="automation.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in automation.All">\n <condition-builder element="all" serviceindex="automation.channel" service="$automations" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in automation.Any">\n <condition-builder element="any" serviceindex="automation.channel" service="$automations" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in automation.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $automations.services[automation.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.general"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.general"></action-builder-integration>\n <action-builder-status ng-switch-when="status" element="action" form="forms.general"></action-builder-status>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !automation.All.length && !automation.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !automation.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/tools/automation/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/tools/automations/list">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AUTOMATIONS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" data-ng-submit="submit()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.name.$touched && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.general.name.$touched && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.status"\n type="checkbox"\n name="status"\n data-ng-init="item.status = 0"\n switch-active="{{ statusSwitch.isActive }}"\n switch-on-text="{{ statusSwitch.onText }}"\n switch-off-text="{{ statusSwitch.offText }}"\n switch-on-color="{{ statusSwitch.onColor }}"\n switch-off-color="{{ statusSwitch.offColor }}"\n switch-animate="{{ statusSwitch.animate }}"\n switch-size="{{ statusSwitch.size }}"\n switch-label="{{ statusSwitch.label }}"\n switch-icon="{{ statusSwitch.icon }}"\n switch-radio-off="{{ statusSwitch.radioOff }}"\n switch-label-width="{{ statusSwitch.labelWidth }}"\n switch-handle-width="{{ statusSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitSettingsValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANNEL\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CHANNEL\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_CHANNEL\' | translate }}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="channel in $automations.channels | filter: $select.search">\n <div ng-bind-html="channel | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in item.All">\n <condition-builder element="all" serviceindex="item.channel" service="$automations" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in item.Any">\n <condition-builder element="any" serviceindex="item.channel" service="$automations" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in item.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $automations.services[item.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.settings"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.settings"></action-builder-integration>\n <action-builder-status ng-switch-when="status" element="action" form="forms.settings"></action-builder-status>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.All.length && !item.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_INTERVAL\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/interval/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-clock"></i>\n <a href="#">{{ \'APPLICATION_INTERVALS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTERVALS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getInterval()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-clock"></i>\n <a href="/tools/intervals/list">{{ \'APPLICATION_INTERVALS\' | translate }}</a>\n <i data-ng-show="interval" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="interval">\n <a href="#">{{interval.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/interval.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{interval.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.intervals.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/tools/intervals/view/\'+interval.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.tools.intervals.view.subintervals') || $state.is('main.tools.intervals.view.subinterval') || $state.is('main.tools.intervals.view.subintervals.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/tools/intervals/view/'+interval.id+'/subintervals')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_SUBINTERVALS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/tools/interval/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INTERVAL\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateInterval()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="interval.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="interval.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/interval/view/view.subinterval.html",'\n<div class="row" data-ng-init="initSubInterval(true)">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_SUBINTERVAL\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="addSubInterval()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitValidation(forms.subinterval.name.$valid)">\n <form name="forms.subinterval" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="subinterval.name" required/>\n <span data-ng-show="(forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n\n\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/view/view.subintervalSettings.html",'\n<div class="row" data-ng-init="initSubInterval();getSubInterval();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SUBINTERVAL_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateInterval(\'subintervals\')">\n <div class="profile-usertitle-name">\n {{subinterval.name}}\n </div>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitValidation(forms.subinterval.name.$valid)">\n <form name="forms.subinterval" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="interval.SubIntervals[selectedSubInterval].name" required/>\n <span data-ng-show="(forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n\n\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/tools/interval/view/view.subintervals.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SUBINTERVALS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/intervals/view/{{interval.id}}/subinterval" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_SUBINTERVAL\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="selectedSubInterval === undefined" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/tools/pause/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PAUSE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/pause/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-pause"></i>\n <a href="#">{{ \'APPLICATION_PAUSES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-pause font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PAUSES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PAUSE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/pause/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getPause()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-pause"></i>\n <a href="/tools/pauses/list">{{ \'APPLICATION_PAUSES\' | translate }}</a>\n <i data-ng-show="pause" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="pause">\n <a href="#">{{pause.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/pause.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{pause.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.pauses.view.settings\')}">\n <a data-ng-href="/tools/pauses/view/{{pause.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/pause/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PAUSE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updatePause()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="pause.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="pause.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/scheduler/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="#">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SCHEDULES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/tools/scheduler/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_SCHEDULE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/scheduler/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="/tools/scheduler/list">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n <i data-ng-show="schedule" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="schedule">\n <a href="#">{{schedule.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/scheduler.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{schedule.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.scheduler.view.settings\')}">\n <a data-ng-href="/tools/scheduler/view/{{schedule.id}}/settings"><i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/scheduler/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_SCHEDULE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab" data-ng-click="refreshSlider()">{{ \'APPLICATION_CONFIGURATION\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && forms.config.$valid && updateSchedule()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="schedule.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="schedule.active"\n type="checkbox"\n name="status"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="schedule.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- CONFIG TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.config" data-ng-submit="forms.config.$valid && forms.general.$valid && updateSchedule()" data-ng-if="schedule.type===\'report\'" data-ng-init="initReports()" novalidate>\n\n <div class="row">\n\n <!-- START REPORT -->\n <div class="form-group col-md-10" data-ng-class="{\'has-error\': (forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportId" name="reportId" theme="bootstrap" on-select="setReportTree($item,$model)" required>\n <ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices group-by="\'parent\'" repeat="report.id as report in reports | filter: $select.search">\n <div ng-bind-html="report.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n <!-- START REPORT -->\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OUTPUT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportOutput" name="reportOutput" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_OUTPUT\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="output in [\'CSV\',\'PDF\'] | filter: $select.search">\n <div ng-bind-html="output | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n </div>\n\n <!-- START TODAY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_RUN_ON\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="switchValues.today"\n type="checkbox"\n name="status"\n data-ng-change="checkToday()"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_TODAY\' | translate }}"\n switch-off-text="{{ \'APPLICATION_RANGE\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END TODAY -->\n\n <!-- START VALIDITY -->\n <div class="form-group" data-ng-if="switchValues.today">\n <label class="control-label">{{\'APPLICATION_VALIDITY\' | translate}}</label>\n <rzslider rz-slider-model="schedule.validityStart" rz-slider-high="schedule.validityEnd" rz-slider-options="validitySlider"></rzslider>\n </div>\n <!-- END VALIDITY -->\n\n <!-- START RANGE -->\n <div class="form-group" data-ng-if="!switchValues.today" data-ng-class="{\'has-error\': (forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT_RANGE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportRange" name="range" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_RANGE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="range.value as range in reportRanges | filter: $select.search">\n <div ng-bind-html="range.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANGE -->\n\n <!-- START TODAY CRON -->\n <div class="form-group" data-ng-if="switchValues.today" data-ng-class="{\'has-error\': (forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.cron" name="cron" theme="bootstrap" data-ng-required="switchValues.today">\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="cron.value as cron in todayCron | filter: $select.search">\n <div ng-bind-html="cron.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TODAY -->\n <div class="row" data-ng-if="!switchValues.today">\n <!-- START CRONTYPE EXEC -->\n <div class="form-group col-md-4" data-ng-class="{\'has-error\': (forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.type" name="cronType" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in cronTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CRONTYPE -->\n\n <!-- START WEEKDAY -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType === \'weekly\'" data-ng-class="{\'has-error\': (forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_WEEKDAYS\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="rangeExec.weekDays" name="weekDay" theme="bootstrap" data-ng-required="schedule.cronType === \'weekly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_WEEKDAYS\' | translate }}">{{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="day.value as day in weekDays | filter: $select.search">\n <div ng-bind-html="day.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType === \'monthly\'" data-ng-class="{\'has-error\': (forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.monthDay" name="monthDay" theme="bootstrap" data-ng-required="schedule.cronType === \'monthly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_MONTHDAY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="day in monthDays | filter: $select.search">\n <div ng-bind-html="day | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START HOUR -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType" data-ng-class="{\'has-error\': (forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$invalid}">\n <label class="control-label">{{ \'APPLICATION_HOUR\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.hour" name="hour" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_HOUR\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="hour in hours | filter: $select.search">\n <div ng-bind-html="hour | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOUR -->\n </div>\n\n <!-- START SEND MAIL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEND_MAIL\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="schedule.sendMail"\n type="checkbox"\n name="status"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END SEND MAIL -->\n <div class="row">\n <!-- START ACCOUNT -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ACCOUNT\' | translate }}<span class="required" data-ng-if="schedule.sendMail" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.MailAccountId" name="MailAccountId" theme="bootstrap" data-ng-disabled="!schedule.sendMail" data-ng-required="schedule.sendMail">\n <ui-select-match placeholder="{{ \'APPLICATION_ACCOUNT\' | translate }}">{{$select.selected.address | translate}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in mailAccounts | filter: $select.search">\n <div ng-bind-html="account.address | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <!-- START EMAIL -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.$submitted && forms.config.email.$invalid) || forms.config.email.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span data-ng-if="schedule.sendMail" class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}" class="form-control" data-ng-model="schedule.email" data-ng-disabled="!schedule.sendMail" data-ng-required="schedule.sendMail"/>\n <span data-ng-show="forms.config.$submitted && forms.config.email.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CONFIG TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- <pre>\n {{rangeExec | json}}\n</pre>\n<pre>\n {{schedule | json}}\n</pre> -->\n'),a.put("app/tools/scheduler/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="/tools/scheduler/list">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SCHEDULE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.active"\n type="checkbox"\n name="status"\n data-ng-init="item.active = 0"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in scheduleTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <button class="btn green-haze" type="submit" ng-click="next(true)">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIGURATION\' | translate}}" canexit="exitValidation(forms.config.$valid)">\n <form name="forms.config" data-ng-if="item.type===\'report\'" data-ng-init="initReports()" novalidate>\n <div class="row">\n\n <!-- START REPORT -->\n <div class="form-group col-md-10" data-ng-class="{\'has-error\': (forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportId" name="reportId" theme="bootstrap" on-select="setReportTree($item,$model)" required>\n <ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices group-by="\'parent\'" repeat="report.id as report in reports | filter: $select.search">\n <div ng-bind-html="report.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n <!-- START REPORT -->\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OUTPUT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportOutput" name="reportOutput" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_OUTPUT\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="output in [\'CSV\',\'PDF\'] | filter: $select.search">\n <div ng-bind-html="output | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n </div>\n\n <!-- START TODAY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_RUN_ON\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="switchValues.today"\n type="checkbox"\n name="status"\n data-ng-change="checkToday()"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_TODAY\' | translate }}"\n switch-off-text="{{ \'APPLICATION_RANGE\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END TODAY -->\n\n <!-- START VALIDITY -->\n <div class="form-group" data-ng-if="switchValues.today">\n <label class="control-label">{{\'APPLICATION_VALIDITY\' | translate}}</label>\n <rzslider rz-slider-model="item.validityStart" rz-slider-high="item.validityEnd" rz-slider-options="validitySlider" data-ng-init="item.validityStart = 8;item.validityEnd = 16;"></rzslider>\n </div>\n <!-- END VALIDITY -->\n\n <!-- START RANGE -->\n <div class="form-group" data-ng-if="!switchValues.today" data-ng-class="{\'has-error\': (forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT_RANGE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportRange" name="range" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_RANGE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="range.value as range in reportRanges | filter: $select.search">\n <div ng-bind-html="range.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANGE -->\n\n <!-- START TODAY CRON EXEC -->\n <div class="form-group" data-ng-if="switchValues.today" data-ng-class="{\'has-error\': (forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.cron" name="cron" theme="bootstrap" data-ng-required="switchValues.today">\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="cron.value as cron in todayCron | filter: $select.search">\n <div ng-bind-html="cron.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TODAY CRON -->\n <div class="row" data-ng-if="!switchValues.today">\n <!-- START CRONTYPE EXEC -->\n <div class="form-group col-md-4" data-ng-class="{\'has-error\': (forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.type" name="cronType" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in cronTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CRONTYPE -->\n\n <!-- START WEEKDAY -->\n <div class="form-group col-md-4" data-ng-if="item.cronType === \'weekly\'" data-ng-class="{\'has-error\': (forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_WEEKDAYS\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="rangeExec.weekDays" name="weekDay" theme="bootstrap" data-ng-required="item.cronType === \'weekly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_WEEKDAYS\' | translate }}">{{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="day.value as day in weekDays | filter: $select.search">\n <div ng-bind-html="day.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group col-md-4" data-ng-if="item.cronType === \'monthly\'" data-ng-class="{\'has-error\': (forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.monthDay" name="monthDay" theme="bootstrap" data-ng-required="item.cronType === \'monthly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_MONTHDAY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="day in monthDays | filter: $select.search">\n <div ng-bind-html="day | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START HOUR -->\n <div class="form-group col-md-4" data-ng-if="item.cronType" data-ng-class="{\'has-error\': (forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$invalid}">\n <label class="control-label">{{ \'APPLICATION_HOUR\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.hour" name="hour" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_HOUR\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="hour in hours | filter: $select.search">\n <div ng-bind-html="hour | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOUR -->\n </div>\n\n <!-- START SEND MAIL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEND_MAIL\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="item.sendMail"\n type="checkbox"\n name="status"\n data-ng-init="item.sendMail = 0"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END SEND MAIL -->\n <div class="row">\n <!-- START ACCOUNT -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ACCOUNT\' | translate }}<span class="required" data-ng-if="item.sendMail" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.MailAccountId" name="MailAccountId" theme="bootstrap" data-ng-disabled="!item.sendMail" data-ng-required="item.sendMail">\n <ui-select-match placeholder="{{ \'APPLICATION_ACCOUNT\' | translate }}">{{$select.selected.address | translate}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in mailAccounts | filter: $select.search">\n <div ng-bind-html="account.address | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <!-- START EMAIL -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.$submitted && forms.config.email.$invalid) || forms.config.email.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span data-ng-if="item.sendMail" class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.email" required data-ng-disabled="!item.sendMail" data-ng-required="item.sendMail"/>\n <span data-ng-show="forms.config.$submitted && forms.config.email.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n<!-- <pre>\n {{rangeExec | json}}\n</pre>\n<pre>\n {{item | json}}\n</pre> -->\n'), +a.put("app/tools/sound/list/list.html",'<div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone-alt"></i>\n <a href="#">{{ \'APPLICATION_SOUNDS\' | translate }}</a>\n </li>\n </ul>\n <div class="page-toolbar">\n </div>\n</div>\n<!-- END PAGE HEADER-->\n<!-- BEGIN PAGE CONTENT-->\n<!-- Audio Portlets -->\n<div class="headline">\n <h3><i class="icon-music-tone-alt sounds-title-icon"></i> {{ \'APPLICATION_SOUNDS\' | translate }}</h3>\n</div>\n<div class="portlet light bg-inverse">\n <div class="portlet-title collapsible" ng-click="isCollapsed = !isCollapsed">\n <div class="caption">\n <i class="icon-puzzle font-red-flamingo"></i>\n <span class="caption-subject bold font-red-flamingo uppercase">\n {{\'APPLICATION_FILE_UPLOAD\' | translate}} </span>\n </div>\n <div class="tools">\n <a href="" ng-class="{\'collapse\': !isCollapsed, \'expand\' : isCollapsed}">\n </a>\n </div>\n </div>\n <div class="portlet-body" ng-slide-down="!isCollapsed">\n <div class="row" nv-file-drop="" uploader="uploader" filters="queueLimit, customFilter">\n <div class="col-md-4">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject bold uppercase">{{\'APPLICATION_SELECT_FILES\' | translate}}</span>\n <span class="caption-helper hide"></span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <div ng-show="uploader.isHTML5">\n <div class="file-drop-zone margin-bottom-20" nv-file-over="" uploader="uploader" over-class="file-drop-zone-over">\n Base drop zone\n </div>\n </div>\n <span class="btn default btn-file">\n <span class="fileinput-new">\n {{\'APPLICATION_FILE_UPLOAD\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader" />\n </span>\n <span class="btn default btn-file">\n <span class="fileinput-new">\n {{\'APPLICATION_MULTI_FILE_UPLOAD\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader" multiple /><br/>\n </span>\n <p>\n </br>\n {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>wav, mp3, gsm, ogg</b>.\n </p>\n <p>\n {{ \'MESSAGE_MAXIMUM_SOUND_UPLOAD_SIZE\' | translate }} <b>15 Mb</b>.\n </p>\n </div>\n </div>\n </div>\n <div class="col-md-8">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject bold uppercase">{{\'APPLICATION_UPLOAD_QUEUE\' | translate}}</span>\n <span class="caption-helper">{{\'APPLICATION_QUEUE_LENGTH\' | translate}}: {{ uploader.queue.length }}</span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th width="50%">{{\'APPLICATION_NAME\' | translate}}</th>\n <th ng-show="uploader.isHTML5">{{\'APPLICATION_SIZE\' | translate}}</th>\n <th ng-show="uploader.isHTML5">{{\'APPLICATION_PROGRESS\' | translate}}</th>\n <th>{{\'APPLICATION_STATUS\' | translate}}</th>\n <th>{{\'APPLICATION_MESSAGE\' | translate}}</th>\n <th>{{\'APPLICATION_ACTIONS\' | translate}}</th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td><strong>{{ item.file.name }}</strong></td>\n <td ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td ng-show="uploader.isHTML5">\n <div class="progress progress-sm" style="margin-bottom: 0;">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td class="text-center">\n <span ng-show="item.isSuccess" class="text-success"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel" class="text-info"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError" class="text-danger"><i class="glyphicon glyphicon-remove"></i></span>\n <span ng-show="item.isUploading" class="text-info"><i class="glyphicon glyphicon-upload"></i></span>\n </td>\n <td class="text-center">\n <span ng-show="item.responseMessage" class="text-danger">{{item.responseMessage}}</span>\n </td>\n <td nowrap>\n <button type="button" class="btn btn-success btn-xs" ng-click="item.upload()" ng-disabled="item.isReady || item.isUploading || item.isSuccess">\n <span class="glyphicon glyphicon-upload"></span> {{\'APPLICATION_UPLOAD\' | translate}}\n </button>\n <button type="button" class="btn btn-warning btn-xs" ng-click="item.cancel()" ng-disabled="!item.isUploading">\n <span class="glyphicon glyphicon-ban-circle"></span> {{\'APPLICATION_CANCEL\' | translate}}\n </button>\n <button type="button" class="btn btn-danger btn-xs" ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div>\n <p>{{\'APPLICATION_UPLOAD_QUEUE_PROGRESS\' | translate}}:</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': uploader.progress + \'%\' }"></div>\n </div>\n </div>\n <button type="button" class="btn btn-success btn-s" ng-click="uploader.uploadAll()" ng-disabled="!uploader.getNotUploadedItems().length">\n <span class="glyphicon glyphicon-upload"></span> {{\'APPLICATION_UPLOAD_ALL\' | translate}}\n </button>\n <button type="button" class="btn btn-warning btn-s" ng-click="uploader.cancelAll()" ng-disabled="!uploader.isUploading">\n <span class="glyphicon glyphicon-ban-circle"></span> {{\'APPLICATION_CANCEL_ALL\' | translate}}\n </button>\n <button type="button" class="btn btn-danger btn-s" ng-click="uploader.clearQueue()" ng-disabled="!uploader.queue.length">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE_ALL\' | translate}}\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class="row thumbnails" data-ng-init="initList()">\n <div class="row" ng-show="sounds.length == 0">\n <div class="col-md-12 page-404">\n <div class="details">\n <h3>{{ \'MESSAGE_NO_SOUNDS\' | translate }}</h3>\n <p>\n <a href="/">\n {{ \'MESSAGE_RETURN_HOME\' | translate }} </a>\n {{ \'MESSAGE_OR_UPLOAD_SOUND_FILE\' | translate }}\n </p>\n </div>\n </div>\n </div>\n <div class="audio-portlet-wrapper animate-repeat" ng-repeat="sound in sounds">\n <div class="audio-portlet">\n <div class="audio-portlet-title"><a href="#" editable-text="sound.display_name" onbeforesave="updateAudio(sound.id,{display_name : $data})">{{ sound.display_name || "Empty" }}</a></div>\n <img src="../assets/images/note_placeholder.png" alt="" class="img-responsive"/>\n <div class="file-info">\n <div class="audio-tag-wrapper">\n <audio-file-download params="{id:sound.id,controller:\'stream\'}" resource="Sound"></audio-file-download>\n </div>\n <p id="description_div">\n <a href="#" editable-text="sound.description" onbeforesave="updateAudio(sound.id,{description : $data})">{{ sound.description || "Empty" }}</a>\n </p>\n <p class="float-right">\n <button class="btn btn-xs green-meadow" uib-tooltip-template="\'audioInfoTemplate.html\'"><i class="icon-list"></i></button>\n <motion-file-download params="{id:sound.id,controller:\'download\'}" resource="Sound" mimetype="\'audio/\'+sound.original_format" tooltiptext="Download" filename="sound.name+\'.\'+sound.original_format" btnclass="{{downloadButtonClass}}" btncontent=\'{{downloadButtonContent}}\'></motion-file-download>\n <button uib-tooltip="Delete" class="btn btn-xs red-sunglo" ng-click="delete(sound.display_name, sound.id)" tooltip="Delete"><i class="icon-close" ></i></button>\n </p>\n </div>\n </div>\n </div>\n <script type="text/ng-template" id="audioInfoTemplate.html">\n <div>\n <ul class="list-unstyled">\n <li><b>Format : </b>{{sound.original_format}}</li>\n <li><b>Duration : </b>{{sound.original_duration | date: \'mm:ss\'}}</li>\n <li><b>Channels : </b>{{sound.original_channelCount}}</li>\n <li><b>Bitrate : </b>{{sound.original_bitRate/1024}} kbs</li>\n <li><b>Sample Rate : </b>{{sound.original_sampleRate/1000}} KHz</li>\n </ul>\n </div>\n </script>\n</div>\n<!-- End Audio Portlets -->\n'),a.put("app/tools/tag/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_TAG\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required data-ng-pattern="settings.patternName"/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/tag/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-tag"></i>\n <a href="#">{{ \'APPLICATION_TAGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TAGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TAG\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/tag/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getTag()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-tag"></i>\n <a href="/tools/tags/list">{{ \'APPLICATION_TAGS\' | translate }}</a>\n <i data-ng-show="tag" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="tag">\n <a href="#">{{tag.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/tag.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{tag.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.tags.view.settings\')}">\n <a data-ng-href="/tools/tags/view/{{tag.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/tag/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_TAG\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateTag()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="tag.name" required data-ng-pattern="settings.patternName"/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="tag.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/template/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-wrench font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEMPLATES\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/tools/templates/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TEMPLATE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/template/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initItem()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/tools/templates/list">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n <i data-ng-show="item" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="item">\n <a href="#">{{item.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{item.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.templates.view.settings\')}">\n <a data-ng-href="/tools/templates/view/{{item.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/template/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n\n <form name="form" data-ng-submit="form.$valid && updateItem()" class="form-horizontal" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.name.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}:<span class="required" aria-required="true">*</span></label>\n </div>\n <div class="col-md-10">\n <input type="text" name="name" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_NAME\' | translate}}..." data-ng-model="item.name" required>\n <span data-ng-show="form.name.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': form.description.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}:</label>\n </div>\n <div class="col-md-10">\n <input type="text" name="description" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}..." rows="8" data-ng-model="item.description">\n <span data-ng-show="form.description.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <hr>\n\n <!-- START SUBJECT -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.subject.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_SUBJECT\' | translate}}:</label>\n </div>\n <div class="col-md-10">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_SUBJECT\' | translate}}..." rows="8" data-ng-model="item.subject">\n <span data-ng-show="form.subject.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START HTML -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.text.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div ckeditor="options" ng-model="item.html"></div>\n <span data-ng-show="form.text.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/template/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/tools/templates/list">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="initWizard()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEMPLATES\' | translate }} FORM</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="form" data-ng-submit="form.$valid && createItem()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.name.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}:<span class="required" aria-required="true">*</span></label>\n </div>\n <div class="col-md-11">\n <input type="text" name="name" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_NAME\' | translate}}..." data-ng-model="item.name" required>\n <span data-ng-show="form.name.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': form.description.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="description" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}..." rows="8" data-ng-model="item.description">\n <span data-ng-show="form.description.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START SUBJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': form.subject.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_SUBJECT\' | translate}}:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_SUBJECT\' | translate}}..." rows="8" data-ng-model="item.subject">\n <span data-ng-show="form.subject.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START HTML -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.text.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div ckeditor="options" ng-model="item.html"></div>\n <span data-ng-show="form.text.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n'),a.put("app/tools/trigger/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="#">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRIGGERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/triggers/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TRIGGER\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("app/tools/trigger/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView();">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="/tools/triggers/list">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="trigger"></i>\n </li>\n <li data-ng-show="trigger">\n <a href="#">{{ trigger.description || trigger.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/trigger.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ trigger.name }}\n </div>\n <div class="profile-usertitle-job">\n {{ trigger.description }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.triggers.view.settings\')}">\n <a href="/tools/triggers/view/{{trigger.id}}/settings">\n <i class="icon-bulb"></i>\n {{ \'APPLICATION_SETTINGS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trigger/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_CONDITIONS\' | translate}} & {{\'APPLICATION_ACTIONS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!-- <pre>\n {{conditionsData.query | json}}\n </pre>\n <pre>\n {{actionsData.query | json}}\n </pre> -->\n <form name="forms.general" data-ng-submit="exitValidation(forms.general.$valid) && updateTrigger()" novalidate>\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="trigger.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="trigger.status"\n type="checkbox"\n name="status"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="trigger.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in trigger.All">\n <condition-builder element="all" serviceindex="trigger.channel" service="$triggers" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in trigger.Any">\n <condition-builder element="any" serviceindex="trigger.channel" service="$triggers" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in trigger.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $triggers.services[trigger.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_ACTION\' | translate }}\n </span>\n <span data-ng-show="(forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.general"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.general"></action-builder-integration>\n <action-builder-motion-bar ng-switch-when="motionbar" element="action" form="forms.general"></action-builder-motion-bar>\n <action-builder-jscripty ng-switch-when="jscripty" element="action" form="forms.general"></action-builder-jscripty>\n <action-builder-url-forward ng-switch-when="urlForward" element="action" form="forms.general"></action-builder-url-forward>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !trigger.All.length && !trigger.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !trigger.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/trigger/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="/tools/triggers/list">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRIGGERS\' | translate }} WIZARD</span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.status"\n type="checkbox"\n name="status"\n data-ng-init="item.status = 0"\n switch-active="{{ statusSwitch.isActive }}"\n switch-on-text="{{ statusSwitch.onText }}"\n switch-off-text="{{ statusSwitch.offText }}"\n switch-on-color="{{ statusSwitch.onColor }}"\n switch-off-color="{{ statusSwitch.offColor }}"\n switch-animate="{{ statusSwitch.animate }}"\n switch-size="{{ statusSwitch.size }}"\n switch-label="{{ statusSwitch.label }}"\n switch-icon="{{ statusSwitch.icon }}"\n switch-radio-off="{{ statusSwitch.radioOff }}"\n switch-label-width="{{ statusSwitch.labelWidth }}"\n switch-handle-width="{{ statusSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitSettingsValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANNEL\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CHANNEL\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_CHANNEL\' | translate }}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="channel in $triggers.channels | filter: $select.search">\n <div ng-bind-html="channel | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in item.All">\n <condition-builder element="all" serviceindex="item.channel" service="$triggers" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in item.Any">\n <condition-builder element="any" serviceindex="item.channel" service="$triggers" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in item.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $triggers.services[item.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_ACTION\' | translate }}\n </span>\n <span data-ng-show="(forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.settings"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.settings"></action-builder-integration>\n <action-builder-motion-bar ng-switch-when="motionbar" element="action" form="forms.settings"></action-builder-motion-bar>\n <action-builder-jscripty ng-switch-when="jscripty" element="action" form="forms.settings"></action-builder-jscripty>\n <action-builder-url-forward ng-switch-when="urlForward" element="action" form="forms.settings"></action-builder-url-forward>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.All.length && !item.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="#">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRUNKS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/tools/trunks/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TRUNK\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="/tools/trunks/list">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n <i data-ng-show="trunk" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="trunk">\n <a href="#">{{trunk.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/trunk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{trunk.name}}\n </div>\n <p data-ng-if="trunk.active && trunk.registry && trunk.status">({{trunk.status}})</p>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.trunks.view.settings\')}">\n <a data-ng-href="/tools/trunks/view/{{trunk.name}}/settings"><i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_TRUNK\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_OTHER_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateTrunk()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="trunk.name" data-ng-pattern="settings.patternName" required readonly/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="trunk.active"\n type="checkbox"\n name="auth"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-off-color="{{ activeSwitch.offColor }}"\n switch-on-color="{{ activeSwitch.onColor }}"\n switch-animate="{{ activeSwitch.animate }}"\n switch-size="{{ activeSwitch.size }}"\n switch-label="{{ activeSwitch.label }}"\n switch-icon="{{ activeSwitch.icon }}"\n switch-radio-off="{{ activeSwitch.radioOff }}"\n switch-label-width="{{ activeSwitch.labelWidth }}"\n switch-handle-width="{{ activeSwitch.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n <div class="row">\n\n <div class="col-md-6">\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.host.$touched || forms.general.$submitted) && forms.general.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="trunk.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n </span>\n <span data-ng-show="(forms.general.host.$touched || forms.general.$submitted) && forms.general.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.secret.$touched || forms.general.$submitted) && forms.general.secret.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECRET\' | translate}}</label>\n <input type="password" name="secret" placeholder="{{\'APPLICATION_SECRET\' | translate}}" class="form-control" data-ng-model="trunk.secret">\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n </span>\n <span data-ng-show="(forms.general.secret.$touched || forms.general.$submitted) && forms.general.secret.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECRET -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.callerid.$touched || forms.general.$submitted) && forms.general.callerid.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLERID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="callerid" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder="{{\'APPLICATION_CALLERID\' | translate}}" class="form-control" data-ng-model="trunk.callerid"/>\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }} "name" <number>\n </span>\n <span data-ng-show="(forms.general.callerid.$touched || forms.general.$submitted) && forms.general.callerid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'user\',\'peer\',\'friend\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TYPE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DTMFMODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.dtmfmode.$touched || forms.general.$submitted) && forms.general.dtmfmode.$invalid}">\n <label class="control-label">{{\'APPLICATION_DTMFMODE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.dtmfmode" name="dtmfmode" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="item in [\'rfc2833\', \'info\', \'shortinfo\', \'inband\',\'auto\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DTMFMODE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.dtmfmode.$touched || forms.general.$submitted) && forms.general.dtmfmode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DTMFMODE -->\n\n </div>\n\n <div class="col-md-6">\n\n <!-- START DEFAULT USER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.defaultuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_DEFAULT_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="defaultuser" placeholder="{{\'APPLICATION_DEFAULT_USER\' | translate}}" class="form-control" data-ng-model="trunk.defaultuser" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && (forms.general.defaultuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DEFAULT USER -->\n\n <!-- START NAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.nat.$touched || forms.general.$submitted) && forms.general.nat.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.nat" name="nat" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\', \'no\', \'never\', \'route\', \'force_rport\', \'comedia\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_NAT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.nat.$touched || forms.general.$submitted) && forms.general.nat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAT -->\n\n <!-- START QUALIFY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.qualify.$touched || forms.general.$submitted) && forms.general.qualify.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUALIFY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.qualify" name="qualify" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_QUALIFY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.qualify.$touched || forms.general.$submitted) && forms.general.qualify.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUALIFY -->\n\n <!-- START ALLOW -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.allow.$touched || forms.general.$submitted) && forms.general.allow.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALLOW_CODEC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.allow" name="allow" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'g723\',\'gsm\',\'ulaw\',\'alaw\',\'g726\',\'g722\',\'g729\',\'ilbc\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_ALLOW_CODEC\' | translate }}\n </span>\n <span data-ng-show="(forms.general.allow.$touched || forms.general.$submitted) && forms.general.allow.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ALLOW -->\n\n <!-- START INSECURE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.insecure.$touched || forms.general.$submitted) && forms.general.insecure.$invalid}">\n <label class="control-label">{{\'APPLICATION_INSECURE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.insecure" name="insecure" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'port\',\'invite\',\'very\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_INSECURE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.insecure.$touched || forms.general.$submitted) && forms.general.insecure.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INSECURE -->\n\n <!-- START CALLLIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.call_limit.$touched || forms.general.$submitted) && forms.general.call_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLLIMIT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="call-limit" placeholder="{{\'APPLICATION_CALLLIMIT\' | translate}}" class="form-control" data-ng-model="trunk.call_limit"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_CALLLIMIT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.call_limit.$touched || forms.general.$submitted) && forms.general.call_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLLIMIT -->\n\n </div>\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="trunk.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateTrunk()" novalidate>\n <div class="row">\n <div class="col-md-6">\n\n <!-- START REGISTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REGISTRY\' | translate}}</label>\n <input type="text" name="registry" placeholder="{{\'APPLICATION_REGISTRY\' | translate}}" class="form-control" data-ng-model="trunk.registry"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n </span>\n </div>\n <!-- END REGISTRY -->\n\n <!-- START DIRECTMEDIA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.directmedia.$touched || forms.advanced.$submitted) && forms.advanced.directmedia.$invalid}">\n <label class="control-label">{{\'APPLICATION_DIRECTMEDIA\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.directmedia" name="directmedia" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\', \'no\', \'nonat\', \'update\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DIRECTMEDIA\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.directmedia.$touched || forms.advanced.$submitted) && forms.advanced.directmedia.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DIRECTMEDIA -->\n\n <!-- START CALLCOUNTER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.callcounter.$touched || forms.advanced.$submitted) && forms.advanced.callcounter.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLCOUNTER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.callcounter" name="callcounter" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_CALLCOUNTER\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.callcounter.$touched || forms.advanced.$submitted) && forms.advanced.callcounter.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLCOUNTER -->\n\n <!-- START FROMDOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.fromdomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_FROMDOMAIN\' | translate}}</label>\n <input type="text" name="fromdomain" placeholder="{{\'APPLICATION_FROMDOMAIN\' | translate}}" class="form-control" data-ng-model="trunk.fromdomain" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_FROMDOMAIN\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.fromdomain.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FROMDOMAIN -->\n\n <!-- START FROMUSER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.fromuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_FROMUSER\' | translate}}</label>\n <input type="text" name="fromuser" placeholder="{{\'APPLICATION_FROMUSER\' | translate}}" class="form-control" data-ng-model="trunk.fromuser" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_FROMUSER\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.fromuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FROMUSER -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START OUTBOUNDPROXY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.outboundproxy.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTBOUNDPROXY\' | translate}}</label>\n <input type="text" name="outboundproxy" placeholder="{{\'APPLICATION_OUTBOUNDPROXY\' | translate}}" class="form-control" data-ng-model="trunk.outboundproxy" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_OUTBOUNDPROXY\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.outboundproxy.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OUTBOUNDPROXY -->\n\n <!-- START USEREQPHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.usereqphone.$touched || forms.advanced.$submitted) && forms.advanced.usereqphone.$invalid}">\n <label class="control-label">{{\'APPLICATION_USEREQPHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.usereqphone" name="usereqphone" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_USEREQPHONE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.usereqphone.$touched || forms.advanced.$submitted) && forms.advanced.usereqphone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USEREQPHONE -->\n\n <!-- START TRUSTRPID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.trustrpid.$touched || forms.advanced.$submitted) && forms.advanced.trustrpid.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUSTRPID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.trustrpid" name="trustrpid" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TRUSTRPID\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.trustrpid.$touched || forms.advanced.$submitted) && forms.advanced.trustrpid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUSTRPID -->\n\n <!-- START SENDRPID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.sendrpid.$touched || forms.advanced.$submitted) && forms.advanced.sendrpid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SENDRPID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.sendrpid" name="sendrpid" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SENDRPID\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.sendrpid.$touched || forms.advanced.$submitted) && forms.advanced.sendrpid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SENDRPID -->\n\n <!-- START ENCRYPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.encryption.$touched || forms.advanced.$submitted) && forms.advanced.encryption.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENCRYPTION\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.encryption" name="encryption" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_ENCRYPTION\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.encryption.$touched || forms.advanced.$submitted) && forms.advanced.encryption.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ENCRYPTION -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.port.$touched || forms.advanced.$submitted) && forms.advanced.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}</label>\n <input type="number" min="0" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="trunk.port"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_PORT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.port.$touched || forms.advanced.$submitted) && forms.advanced.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START TRANSPORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.transport.$touched || forms.advanced.$submitted) && forms.advanced.transport.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRANSPORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.transport" name="transport" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'udp\',\'wss\',\'ws\',\'tcp\',\'tls\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TRANSPORT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.transport.$touched || forms.advanced.$submitted) && forms.advanced.transport.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <!-- START OTHER FIELDS TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.otherFields" data-ng-submit="forms.otherFields.$valid && updateTrunk()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START OTHER FIELDS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_OTHER_FIELDS\' | translate}}</label>\n <textarea name="otherFields" placeholder="{{\'APPLICATION_OTHER_FIELDS\' | translate}}" class="form-control otherfields-col" data-ng-model="trunk.otherFields"></textarea>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_OTHER_FIELDS\' | translate }}\n </span>\n </div>\n <!-- END OTHER FIELDS -->\n </div>\n <div class="col-md-6">\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXAMPLE\' | translate}}</label>\n <div class="well">\n <div>host=dynamicp</div>\n <div>secret=********</div>\n <div>regcontext=tammari-internal</div>\n <div>regexten=1005</div>\n <div>dtmfmode=rfc2833</div>\n <div>insecure=invite,port</div>\n <div>canreinvite=yes</div>\n <div>nat=yes</div>\n <div>qualify=yes</div>\n <div>context=merus-sipphone</div>\n <div>pickupgroup=1</div>\n <div>callgroup=1</div>\n <div>mailbox=1000@default</div>\n </div>\n </div>\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n <!-- END OTHER FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), +a.put("app/tools/trunk/wizard/wizard.html",'<div class="col-md-12" data-ng-init="initWizard()">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="/tools/trunks/list">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRUNK\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && forms.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECRET\' | translate}}</label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.secret"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && forms.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DEFAULT USER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.defaultuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_DEFAULT_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="defaultuser" placeholder="{{\'APPLICATION_DEFAULT\' | translate}} {{\'APPLICATION_USER\' | translate}}" class="form-control" data-ng-model="item.defaultuser" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && (forms.general.defaultuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END DEFAULT USER -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <button class="btn green-haze" type="submit" ng-click="next(true)">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_ADVANCED\' | translate}}" canexit="exitValidation(forms.advanced.$valid)">\n <form name="forms.advanced" novalidate>\n\n <!-- START REGISTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REGISTRY\' | translate}}</label>\n <input type="text" name="registry" placeholder="{{\'APPLICATION_REGISTRY\' | translate}}" class="form-control" data-ng-model="item.registry"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n </span>\n </div>\n <!-- END REGISTRY -->\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/tools/variable/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_VARIABLE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/variable/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="#">{{ \'APPLICATION_VARIABLES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VARIABLES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_VARIABLE\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/variable/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getVariable()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/tools/variables/list">{{ \'APPLICATION_VARIABLES\' | translate }}</a>\n <i data-ng-show="variable" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="variable">\n <a href="#">{{variable.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/variable.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{variable.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.variables.view.settings\')}">\n <a data-ng-href="/tools/variables/view/{{variable.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/variable/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_VARIABLE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVariable()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="variable.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="variable.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/yourdashboard/list/clone.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_CLONE_DASHBOARD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.dashboard" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.dashboard.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_DASHBOARD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.dashboard" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.dashboard.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-screen-desktop"></i>\n <a href="/tools/yourdashboards/list">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_DASHBOARD\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/yourdashboard/show/leaveEditedDashboard.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>{{\'MESSAGE_LEAVE_EDITED_PAGE\' | translate}}</p>\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CONTINUE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/show/show.html",'<div class="row" style="min-height: 466px;">\n <div class="col-md-12" ng-init="getDashboard()">\n <adf-dashboard\n data-ng-if="dashboard"\n name="{{dashboard.name}}"\n collapsible="{{dashboard.collapsible}}"\n maximizable="{{dashboard.maximizable}}"\n enableconfirmdelete="{{dashboard.enableconfirmdelete}}"\n structure="{{dashboard.structure}}"\n editable="{{dashboard.editable}}"\n adf-model="dashboard.model"/>\n </div>\n</div>\n'),a.put("app/tools/yourdashboard/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getDashboard()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-screen-desktop"></i>\n <a href="/tools/yourdashboards/list">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a>\n <i data-ng-show="dashboard" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="dashboard">\n <a href="#">{{dashboard.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/dashboard.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{dashboard.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.yourdashboards.view.settings\')}">\n <a data-ng-href="/tools/yourdashboards/view/{{dashboard.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/yourdashboard/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_DASHBOARD\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateDashboard()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="dashboard.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VISIBLE TO ADMIN -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_ADMIN\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.admin"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO ADMIN -->\n\n <!-- START VISIBLE TO USER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_USER\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.user"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO USER -->\n\n <!-- START VISIBLE TO AGENT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_AGENT\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.agent"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO AGENT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="dashboard.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-heart font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ZENDESK\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/zendesk/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/zendesk/view/configuration/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.name.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.name.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START CHANNEL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel.$touched || form.channel.$submitted) && form.channel.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CHANNEL\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="channel.value as channel in channels | filter: $select.search">\n <div data-ng-bind="channel.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.channel.$touched || form.channel.$submitted) && form.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START CHANNEL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), +a.put("app/zendesk/view/configuration/list/list.html",'<div ui-view class="profile-content">\n <div class="row">\n <div class="col-md-12">\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/configuration/view/view.html",'<div class="row" data-ng-init="initView();getConfiguration();getCustomVariables();getFields();getTags();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_4" data-toggle="tab">{{\'APPLICATION_TAGS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'subject\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="subject-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.variableName" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'description\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="description-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in descFieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.variableName" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'field\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="field-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.id as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.variableName" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n <!-- TAG TAB -->\n <div class="tab-pane ui-padding" id="tab_1_4">\n <div class="row">\n <div class="col-md-12">\n <span class="caption-subject">Select tags that you want add in the ticket:</span>\n </div>\n </div>\n <hr>\n <form name="forms.tags" data-ng-submit="updateTags()" novalidate>\n <!-- TAG -->\n <div class="form-group">\n <ui-select multiple data-ng-model="selectedTags.tags" theme="bootstrap" name="tags" ng-disabled="disabled">\n <ui-select-match placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="tag.id as tag in tags | filter: $select.search">\n {{tag.name}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAG -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END TAG TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="account.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'password\', \'token\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="account.authType == \'password\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="account.authType == \'token\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/zendesk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.zendesk.view.account\')}">\n <a ng-href="/zendesk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.zendesk.view.configurations\') || $state.is(\'main.zendesk.view.configuration\')}">\n <a ng-href="/zendesk/view/{{account.id}}/configurations/list">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/zendesk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/zendesk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/zendesk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'password\', \'token\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="item.authType == \'password\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="item.authType == \'token\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), +a.put("components/footer/footer.html",'<!-- BEGIN FOOTER -->\n<div class="page-footer" data-ng-init="initFooter()">\n <div class="page-footer-inner">\n xCALLY Motion v. {{info.version}} | {{year}} - {{year + 1}} © Powered by Xenialab\n </div>\n <div class="scroll-to-top">\n <i class="icon-arrow-up"></i>\n </div>\n</div>\n<!-- END FOOTER -->\n'),a.put("components/header/header.html",'<!-- BEGIN HEADER INNER -->\n<div class="page-header-inner" data-ng-init="initHeader()">\n <!-- BEGIN LOGO -->\n <div class="page-logo">\n <a href="/">\n <img src="assets/images/logo.png" alt="logo" class="logo-default"/>\n </a>\n <div class="menu-toggler sidebar-toggler" data-ng-click="toogleSidebar()">\n <!-- DOC: Remove the above "hide" to enable the sidebar toggler button on header -->\n </div>\n </div>\n <!-- END LOGO -->\n <!-- BEGIN HEADER SEARCH BOX -->\n <!-- DOC: Apply "search-form-expanded" right after the "search-form" class to have half expanded search box -->\n <form class="search-form hide" action="extra_search.html" method="GET">\n <div class="input-group">\n <input type="text" class="form-control" placeholder="Search..." name="query">\n <span class="input-group-btn">\n <a href="javascript:;" class="btn submit"><i class="icon-magnifier"></i></a>\n </span>\n </div>\n </form>\n <!-- END HEADER SEARCH BOX -->\n <!-- BEGIN RESPONSIVE MENU TOGGLER -->\n <a href="javascript:;" class="menu-toggler responsive-toggler" data-toggle="collapse" data-target=".navbar-collapse">\n </a>\n <!-- END RESPONSIVE MENU TOGGLER -->\n <!-- BEGIN TOP NAVIGATION MENU -->\n <div class="top-menu">\n <ul class="nav navbar-nav pull-right">\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n\n <!-- BEGIN USER LOGIN DROPDOWN -->\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n <li class="dropdown dropdown-user">\n <a href="#" class="dropdown-toggle" dropdown-menu-hover data-toggle="dropdown" data-close-others="true">\n <img class="img-circle" data-ng-src="api/users/avatar/{{getCurrentUser().userpic || \'unknown_avatar\'}}" alt="...">\n <span class="username username-hide-on-mobile">\n {{ getCurrentUser().fullname }}\n </span>\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default">\n <li>\n <a ng-href=" {{isAdmin() ? \'/staff/users/view/\'+getCurrentUser().id+\'/account\' : \'/staff/agents/view/\'+getCurrentUser().id+\'/account\'}}">\n <i class="icon-key"></i>{{\'APPLICATION_CHANGE_PASSWORD\' | translate}}\n </a>\n </li>\n <li data-ng-click="logout()">\n <a href="#">\n <i class="icon-logout"></i> Log Out\n </a>\n </li>\n </ul>\n </li>\n <!-- END USER LOGIN DROPDOWN -->\n <!-- BEGIN QUICK SIDEBAR TOGGLER -->\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n <!-- <li class="dropdown dropdown-quick-sidebar-toggler" data-ng-click="toggleQuickSidebar()">\n <a href="#" class="dropdown-toggle">\n <i class="icon-logout"></i>\n </a>\n </li> -->\n <!-- END QUICK SIDEBAR TOGGLER -->\n </ul>\n <ul data-ng-if="getCurrentUser().role === \'agent\'" class="nav navbar-nav pull-right header-ul-with-separator padding-side-7" data-ng-class="{\'paused-header\':headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause}">\n <li class="dropdown dropdown-user" >\n <a href="#" class="dropdown-toggle custom-header-a" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" style="cursor:default;">\n <div>{{(headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause) ? headerAgent.pauseType : \'READY\'}}</div>\n <div data-ng-if="headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause"><timer start-time="moment(headerAgent.lastPauseAt).unix()*1000"> {{hhours}}:{{mminutes}}:{{sseconds}}</timer></div>\n </a>\n </li>\n <li class="dropdown dropdown-user" data-ng-if="headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause">\n <a href="#" class="dropdown-toggle padding-side-7 header-bar-button header-bar-button-controls" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" data-ng-click="headerPause(\'unpause\')">\n <i class="fa fa-play font-green"></i></a>\n </li>\n <li class="dropdown dropdown-user">\n <a href="#" class="dropdown-toggle padding-side-7 header-bar-button header-bar-button-controls" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" data-ng-click="headerPause(\'pause\',\'DEFAULT PAUSE\')">\n <i class="fa fa-pause font-yellow"></i></a>\n </li>\n <li class="dropdown dropdown-user" data-ng-if="headerPauses.length">\n <a href="#" class="dropdown-toggle header-bar-button" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default scrollable-menu">\n <li data-ng-repeat="pause in headerPauses">\n <a href="#" data-ng-click="headerPause(\'pause\',pause.name)">\n {{pause.name}}\n </a>\n </li>\n </ul>\n </li>\n </ul>\n <ul class="nav navbar-nav pull-right">\n <!-- BEGIN LANGUAGE BAR -->\n <li class="dropdown dropdown-language">\n <a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">\n <img ng-src="assets/images/flags/{{ language }}.png">\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default scrollable-menu">\n <li>\n <a href="#" ng-click="changeLanguage(\'ar\')">\n <img alt="" src="assets/images/flags/ar.png"> {{\'APPLICATION_ARABIC\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'de\')">\n <img alt="" src="assets/images/flags/de.png"> {{\'APPLICATION_GERMAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'en_EN\')">\n <img alt="" src="assets/images/flags/en_EN.png"> {{\'APPLICATION_ENGLISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'es\')">\n <img alt="" src="assets/images/flags/es.png"> {{\'APPLICATION_SPANISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'fr\')">\n <img alt="" src="assets/images/flags/fr.png"> {{\'APPLICATION_FRENCH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'hi\')">\n <img alt="" src="assets/images/flags/hi.png"> {{\'APPLICATION_HINDI\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'it\')">\n <img alt="" src="assets/images/flags/it.png"> {{\'APPLICATION_ITALIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ja\')">\n <img alt="" src="assets/images/flags/ja.png"> {{\'APPLICATION_JAPANASE\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ko\')">\n <img alt="" src="assets/images/flags/ko.png"> {{\'APPLICATION_KOREAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'nl\')">\n <img alt="" src="assets/images/flags/nl.png"> {{\'APPLICATION_DUTCH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'no\')">\n <img alt="" src="assets/images/flags/no.png"> {{\'APPLICATION_NORWEGIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'pt-BR\')">\n <img alt="" src="assets/images/flags/pt-BR.png"> {{\'APPLICATION_PORTUGUESE_BRAZIL\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'pt-PT\')">\n <img alt="" src="assets/images/flags/pt-PT.png"> {{\'APPLICATION_PORTUGUESE_PORTUGAL\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ru\')">\n <img alt="" src="assets/images/flags/ru.png"> {{\'APPLICATION_RUSSIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'sv\')">\n <img alt="" src="assets/images/flags/sv.png"> {{\'APPLICATION_SWEDISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'tr\')">\n <img alt="" src="assets/images/flags/tr.png"> {{\'APPLICATION_TURKISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'fa\')">\n <img alt="" src="assets/images/flags/fa.png"> {{\'APPLICATION_PERSIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'zh-CN\')">\n <img alt="" src="assets/images/flags/zh-CN.png"> {{\'APPLICATION_CHINESE_SIMPLIFIED\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'zh-TW\')">\n <img alt="" src="assets/images/flags/zh-TW.png"> {{\'APPLICATION_CHINESE_TRADITIONAL\' | translate}}\n </a>\n </li>\n </ul>\n </li>\n <!-- END LANGUAGE BAR -->\n </ul>\n </div>\n <!-- END TOP NAVIGATION MENU -->\n</div>\n<!-- END HEADER INNER -->\n'),a.put("components/modal/delete.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text" ng-bind="modal.text"></p>\n <div ng-if="modal.html" ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button>\n</div>\n'),a.put("components/sidebar/sidebar.html",'<div id="page-sidebar" class="page-sidebar navbar-collapse collapse" data-ng-init="initSidebar()">\n <!-- BEGIN SIDEBAR MENU -->\n <!-- DOC: Apply "page-sidebar-menu-light" class right after "page-sidebar-menu" to enable light sidebar menu style(without borders) -->\n <!-- DOC: Apply "page-sidebar-menu-hover-submenu" class right after "page-sidebar-menu" to enable hoverable(hover vs accordion) sub menu mode -->\n <!-- DOC: Apply "page-sidebar-menu-closed" class right after "page-sidebar-menu" to collapse("page-sidebar-closed" class must be applied to the body element) the sidebar sub menu mode -->\n <!-- DOC: Set data-auto-scroll="false" to disable the sidebar from auto scrolling/focusing -->\n <!-- DOC: Set data-keep-expand="true" to keep the submenues expanded -->\n <!-- DOC: Set data-auto-speed="200" to adjust the sub menu slide up/down speed -->\n <ul data-ng-click="mainTab.active=true" class="page-sidebar-menu" data-keep-expanded="false" data-auto-scroll="true" data-slide-speed="200" data-ng-class="{\'page-sidebar-menu-closed\': settings.layout.pageSidebarClosed}" data-ng-init="getSidebarIntegrations()">\n <!-- DOC: To remove the search box from the sidebar you just need to completely remove the below "sidebar-search-wrapper" LI element -->\n <li class="sidebar-search-wrapper">\n <!-- BEGIN RESPONSIVE QUICK SEARCH FORM -->\n <!-- DOC: Apply "sidebar-search-bordered" class the below search form to have bordered search box -->\n <!-- DOC: Apply "sidebar-search-bordered sidebar-search-solid" class the below search form to have bordered & solid search box -->\n <form class="sidebar-search sidebar-search-bordered" action="extra_search.html" method="POST">\n <a href="javascript:;" class="remove">\n <i class="icon-close"></i>\n </a>\n </form>\n <!-- END RESPONSIVE QUICK SEARCH FORM -->\n </li>\n\n <!-- START DASHBOARD CASE -->\n <li class="start" data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[1])" data-ng-class="{active: $state.includes(\'main.dashboard\')}">\n <a href="/dashboard/voice">\n <i class="icon-rocket"></i>\n <span class="title">{{\'APPLICATION_DASHBOARD\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.dashboard\')" class="selected"></span>\n </a>\n </li>\n <!-- END DASHBOARD CASE -->\n\n <!-- START YOURDASHBOARD LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[2])" data-ng-class="{active: $state.is(\'main.tools.yourdashboards.show\')}">\n <a href="javascript:;">\n <i class="icon-screen-desktop"></i>\n <span class="title" >{{\'APPLICATION_YOUR_DASHBOARDS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.tools.yourdashboards.show\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-init="getSidebarDashboards()">\n <li data-ng-class="{active: $stateParams.id == dashboard.id && $state.includes(\'main.tools.yourdashboards.show\')}" data-ng-repeat="dashboard in dashboards" data-ng-if="::(dashboard[Auth.getRole()] && dashboard.visible)">\n <a href="/tools/yourdashboards/show/{{dashboard.id}}" >\n <i class="icon-screen-tablet"></i>\n <span class="title" >{{dashboard.name}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END YOURDASHBOARD LIST CASE -->\n\n <!-- START STAFF LIST CASE -->\n <li data-ng-class="{active: $state.includes(\'main.staff\')}">\n <a href="javascript:;" data-ng-if="::(Auth.isAdmin() || userModules[3])">\n <i class="icon-puzzle"></i>\n <span class="title" >{{\'APPLICATION_STAFF\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.staff\')}"></span>\n </a>\n <ul class="sub-menu">\n <!-- START USERS CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.users\')}">\n <a href="/staff/users/list">\n <i class="icon-eye"></i>\n <span class="title" >{{\'APPLICATION_USERS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.users\')" class="selected"></span>\n </a>\n </li>\n <!-- END USERS CASE -->\n\n <!-- START AGENTS CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[4])" data-ng-class="{active: $state.includes(\'main.staff.agents\')}">\n <a href="/staff/agents/list">\n <i class="icon-people"></i>\n <span class="title" >{{\'APPLICATION_AGENTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.agents\')" class="selected"></span>\n </a>\n </li>\n <!-- END AGENTS CASE -->\n\n <!-- START TELEPHONES CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.telephones\')}">\n <a href="/staff/telephones/list">\n <i class="icon-phone"></i>\n <span class="title" >{{\'APPLICATION_TELEPHONES\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.telephones\')" class="selected"></span>\n </a>\n </li>\n <!-- END TELEPHONES CASE -->\n\n <!-- START TEAMS CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.teams\')}">\n <a href="/staff/teams/list">\n <i class="icon-shield"></i>\n <span class="title" >{{\'APPLICATION_TEAMS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.teams\')" class="selected"></span>\n </a>\n </li>\n <!-- END TEAMS CASE -->\n </ul>\n </li>\n <!-- END STAFF LIST CASE -->\n\n <!-- START CONTACT MANAGER LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[5])" data-ng-class="{active: $state.includes(\'main.contactmanager\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.cm}">\n <i class="icon-notebook"></i>\n <span class="title disable-target" >{{\'APPLICATION_CONTACT_MANAGER\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.contactmanager.contacts\')\n || $state.includes(\'main.contactmanager.companies\')\n || $state.includes(\'main.contactmanager.listss\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.cm">\n <!-- START CONTACTS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.contacts\')}">\n <a href="/contactmanager/contacts/list">\n <i class=" fa fa-users"></i>\n <span class="title" >{{\'APPLICATION_CONTACTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.contacts\')" class="selected"></span>\n </a>\n </li>\n <!-- END CONTACTS CASE -->\n <!-- START COMPANIES CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.companies\')}" data-ng-if="::(Auth.isAdmin() || Auth.isUser())">\n <a href="/contactmanager/companies/list">\n <i class="icon-briefcase"></i>\n <span class="title" >{{\'APPLICATION_COMPANIES\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.companies\')" class="selected"></span>\n </a>\n </li>\n <!-- END COMPANIES CASE -->\n <!-- START LISTS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.lists\')}" data-ng-if="::(Auth.isAdmin() || Auth.isUser())">\n <a href="/contactmanager/lists/list">\n <i class="fa fa-tty"></i>\n <span class="title" >{{\'APPLICATION_LISTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.lists\')" class="selected"></span>\n </a>\n </li>\n <!-- END LISTS CASE -->\n </ul>\n </li>\n <!-- END CONTACT MANAGER LIST CASE -->\n\n <!-- START CHANNEL LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[6])" data-ng-class="{active: $state.includes(\'main.channels\')}">\n <a href="javascript:;">\n <i class="icon-directions"></i>\n <span class="title" >{{\'APPLICATION_CHANNELS\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.channels\')}"></span>\n </a>\n <ul class="sub-menu">\n <!-- START VOICE CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[7])" data-ng-class="{ active: $state.includes(\'main.channels.voice\') }">\n <a href="javascript:;">\n <i class="icon-earphones-alt"></i>\n <span class="title">{{ \'APPLICATION_VOICE\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.voice\') }"></span>\n </a>\n\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.queues\')}">\n <a href="/channels/voice/queues/list">\n <i class="icon-docs"></i>\n <span class="title">{{\'APPLICATION_QUEUES\' | translate}}</span>\n </a>\n </li>\n <li>\n <a href="javascript:;">\n <i class="icon-directions"></i>\n <span class="title"> {{ \'APPLICATION_ROUTES\' | translate}} </span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.voice.routes\') }"></span>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.inbound\')}">\n <a href="/channels/voice/routes/inbound/list">\n <i class="icon-call-in"></i>\n <span class="title"> {{\'APPLICATION_INBOUND\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.outbound\')}">\n <a href="/channels/voice/routes/outbound/list">\n <i class="icon-call-out"></i>\n <span class="title"> {{\'APPLICATION_OUTBOUND\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.internal\')}">\n <a href="/channels/voice/routes/internal/list">\n <i class="icon-reload"></i>\n <span class="title"> {{\'APPLICATION_INTERNALS\' | translate}} </span>\n </a>\n </li>\n </ul>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.contexts\')}">\n <a href="/channels/voice/contexts/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_CONTEXTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.voicemails\')}">\n <a href="/channels/voice/voicemails/list">\n <i class="icon-envelope-letter"></i>\n <span class="title"> {{\'APPLICATION_VOICEMAILS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.mohs\')}">\n <a href="/channels/voice/mohs/list">\n <i class="icon-music-tone"></i>\n <span class="title"> {{\'APPLICATION_MOH\' | translate}} </span>\n </a>\n </li>\n <!-- START RECORDING CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.recordings\')}">\n <a href="/channels/voice/recordings/list">\n <i class="icon-control-play"></i>\n <span class="title">{{\'APPLICATION_RECORDINGS\' | translate}}</span>\n </a>\n </li>\n <!-- END RECORDING CASE -->\n <!-- START REALTIME CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.realtime\')}">\n <a href="/channels/voice/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n <!-- START CHANSPY CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.chanspy\')}">\n <a href="/channels/voice/chanspy/list">\n <i class="icon-magnifier"></i>\n <span class="title" >{{\'APPLICATION_CHANSPY\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.chanspy\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END CHANSPY CASE -->\n <!-- START CHANSPY CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.dispositions\')}">\n <a href="/channels/voice/dispositions/list">\n <i class="icon-target"></i>\n <span class="title" >{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </a>\n </li>\n <!-- END CHANSPY CASE -->\n </ul>\n </li>\n <!-- END VOICE CASE -->\n\n <!-- START CHAT CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.chat}">\n <i class="icon-bubble"></i>\n <span class="title disable-target">{{\'APPLICATION_CHAT\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.channels.chat\')}"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.chat">\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.websites\')}">\n <a href="/channels/chat/websites/list">\n <i class="icon-globe"></i>\n <span class="title"> {{\'APPLICATION_WEB_SITES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.queues\')}">\n <a href="/channels/chat/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.room\')}">\n <a href="/channels/chat/room/internal/list">\n <i class="fa fa-users"></i>\n <span class="title"> {{\'APPLICATION_ROOMS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.online\')}">\n <a href="/channels/chat/online/list">\n <i class="icon-login"></i>\n <span class="title"> {{\'APPLICATION_ONLINE_MESSAGES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.offline\')}">\n <a href="/channels/chat/offline/list">\n <i class="icon-logout"></i>\n <span class="title"> {{\'APPLICATION_OFFLINE_MESSAGES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.realtime\')}">\n <a href="/channels/chat/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END CHAT CASE -->\n\n <!-- START MAIL CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail\')}" >\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.mail}">\n <i class="icon-envelope"></i>\n <span class="title disable-target">{{\'APPLICATION_MAIL\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.mail\') }"></span>\n </a>\n\n <ul class="sub-menu" data-ng-if="license.mail">\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.accounts\') || $state.includes(\'main.channels.mail.account\')}">\n <a href="/channels/mail/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{\'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.queues\') || $state.includes(\'main.channels.mail.queue\')}">\n <a href="/channels/mail/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.inbox\')}">\n <a href="/channels/mail/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{\'APPLICATION_INBOX\' | translate}} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.realtime\')}">\n <a href="/channels/mail/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END MAIL CASE -->\n\n <!-- START FAX CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.fax}">\n <i class="icon-paper-plane"></i>\n <span class="title disable-target"> {{ \'APPLICATION_FAX\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.fax\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.fax">\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.accounts\')}">\n <a href="/channels/fax/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{ \'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.queues\')}">\n <a href="/channels/fax/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{ \'APPLICATION_QUEUES\' | translate }} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.inbox\')}">\n <a href="/channels/fax/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{ \'APPLICATION_INBOX\' | translate }} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.realtime\')}">\n <a href="/channels/fax/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END FAX CASE -->\n\n <!-- START SMS CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.messaging}">\n <i class="glyphicon glyphicon-comment"></i>\n <span class="title disable-target">{{\'APPLICATION_SMS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.sms\') }"></span>\n </a>\n\n <ul class="sub-menu" data-ng-if="license.messaging">\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.accounts\') || $state.includes(\'main.channels.sms.account\')}">\n <a href="/channels/sms/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{\'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.queues\') || $state.includes(\'main.channels.sms.queue\')}">\n <a href="/channels/sms/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.inbox\')}">\n <a href="/channels/sms/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{\'APPLICATION_INBOX\' | translate}} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.realtime\')}">\n <a href="/channels/sms/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n\n <!-- END SMS CASE -->\n\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[12])" data-ng-class="{active: $state.includes(\'main.channels.realtime\')}">\n <a href="/channels/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END CHANNEL LIST CASE -->\n\n <!-- START TOOLS LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[13])" data-ng-class="{active: $state.includes(\'main.tools\') && !$state.is(\'main.tools.yourdashboards.show\')}">\n <a href="javascript:;">\n <i class="icon-wrench"></i>\n <span class="title" >{{\'APPLICATION_TOOLS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.tools\') && !$state.is(\'main.tools.yourdashboards.show\')}"></span>\n </a>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.tools.triggers\')}">\n <a href="/tools/triggers/list">\n <i class="icon-bulb"></i>\n <span class="title"> {{\'APPLICATION_TRIGGERS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.automations\')}">\n <a href="/tools/automations/list">\n <i class="icon-settings"></i>\n <span class="title"> {{\'APPLICATION_AUTOMATIONS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.trunks\')}">\n <a href="/tools/trunks/list">\n <i class="icon-link"></i>\n <span class="title"> {{\'APPLICATION_TRUNKS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.intervals\')}">\n <a href="/tools/intervals/list">\n <i class="icon-clock"></i>\n <span class="title"> {{\'APPLICATION_INTERVALS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.variables\')}">\n <a href="/tools/variables/list">\n <i class="fa fa-eye"></i>\n <span class="title" >{{\'APPLICATION_VARIABLES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.tags\')}">\n <a href="/tools/tags/list">\n <i class="icon-tag"></i>\n <span class="title" >{{\'APPLICATION_TAGS\' | translate}} </span>\n </a>\n </li>\n <!-- START TEMPLATE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.templates\')}">\n <a href="/tools/templates/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_TEMPLATES\' | translate}} </span>\n </a>\n </li>\n <!-- END TEMPLATE CASE -->\n\n <!-- START PAUSE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.pauses\')}">\n <a href="/tools/pauses/list">\n <i class="icon-control-pause"></i>\n <span class="title"> {{\'APPLICATION_PAUSES\' | translate}} </span>\n </a>\n </li>\n <!-- END PAUSE CASE -->\n\n <!-- START ANSWER CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.answers\')}">\n <a href="/tools/answers/list">\n <i class="icon-magic-wand"></i>\n <span class="title"> {{\'APPLICATION_CANNED_ANSWERS\' | translate}} </span>\n </a>\n </li>\n <!-- END ANSWER CASE -->\n\n <!-- START DASHBOARD MANAGER CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.yourdashboards\') && !$state.is(\'main.tools.yourdashboards.show\')}">\n <a href="/tools/yourdashboards/list">\n <i class="icon-grid"></i>\n <span class="title"> {{\'APPLICATION_DASHBOARDS_MANAGER\' | translate}} </span>\n </a>\n </li>\n <!-- END DASHBOARD MANAGER CASE -->\n\n <!-- START SOUND CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.sounds\')}">\n <a href="/tools/sounds/list">\n <i class="icon-music-tone-alt"></i>\n <span class="title" >{{\'APPLICATION_SOUNDS\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.sounds\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SOUND CASE -->\n\n <!-- START SCHEDULE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.scheduler\')}">\n <a href="/tools/scheduler/list">\n <i class="icon-calendar"></i>\n <span class="title" >{{\'APPLICATION_SCHEDULER\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.sounds\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SCHEDULE CASE -->\n </ul>\n </li>\n <!-- END TOOLS LIST CASE -->\n\n <!-- START CALLYSQUARE CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[14])" data-ng-class="{active: $state.includes(\'main.square\')}">\n <a href="javascript:;">\n <i class="fa fa-superscript"></i>\n <span class="title" >Cally ²</span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.square.projects\')}">\n <a href="/square/projects/list">\n <i class="fa fa-slack"></i>\n <span class="title" >{{\'APPLICATION_PROJECTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.odbc\')}">\n <a href="/square/odbc/list">\n <i class="fa fa-database"></i>\n <span class="title" >{{\'APPLICATION_ODBC\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.recordings\')}">\n <a href="/square/recordings/list">\n <i class="icon-microphone"></i>\n <span class="title" >{{\'APPLICATION_RECORDINGS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.realtime.view.general\')}">\n <a href="/square/realtime/view/general">\n <i class="icon-energy"></i>\n <span class="title" >{{\'APPLICATION_REALTIME\' | translate}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END CALLYSQUARE CASE -->\n <!-- START JSCRIPTY LIST -->\n <li data-ng-show="::(Auth.isAdmin() || Auth.isAgent() || userModules[15])" data-ng-class="{active: $state.includes(\'main.jscripty\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.jscripty}" >\n <i class="icon-note"></i>\n <span class="title" >{{\'APPLICATION_JSCRIPTY\' | translate}} </span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.jscripty">\n <!-- -->\n <!-- START PROJECTS CASE -->\n <li data-ng-show="Auth.isAdmin() || Auth.isAgent()|| isAvailableModule(15)" data-ng-class="{active: $state.includes(\'main.jscripty.projects\')}">\n <a href="/jscripty/projects/list">\n <i class="fa fa-slack"></i>\n <span class="title" >{{\'APPLICATION_PROJECTS\' | translate}} </span>\n </a>\n </li>\n <!-- END PROJECTS CASE -->\n </ul>\n </li>\n <!-- END JSCRIPTY LIST -->\n\n <!-- START MOTION DIALER LIST CASE-->\n <li data-ng-if="::(Auth.isAdmin() || userModules[16])" data-ng-class="{active: $state.includes(\'main.motiondialer\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.dialer}">\n <i class="icon-control-forward"></i>\n <span class="title disable-target" >{{\'APPLICATION_MOTION_DIALER\' | translate}} </span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.dialer">\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.lists\')}">\n <a href="/motiondialer/lists/list">\n <i class="icon-docs"></i>\n <span class="title" >{{\'APPLICATION_LISTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.blacklist\')}">\n <a href="/motiondialer/blacklist/list">\n <i class="icon-doc"></i>\n <span class="title" >{{\'APPLICATION_BLACKLIST\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.processes\')}">\n <a href="/motiondialer/processes/list">\n <i class="icon-settings"></i>\n <span class="title" >{{\'APPLICATION_PROCESSES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.info\')}">\n <a href="/motiondialer/info/view/about">\n <i class="icon-info"></i>\n <span class="title" >{{\'APPLICATION_INFO\' | translate}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END MOTION DIALER LIST CASE-->\n\n <!-- START ANALYTIC LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[17])" data-ng-class="{active: $state.includes(\'main.analytics.reports\')\n || $state.includes(\'main.analytics.extracted\')\n || $state.includes(\'main.analytics.metrics\')}" data-ng-if="::(Auth.isAdmin())">\n <a href="javascript:;">\n <i class="icon-calculator"></i>\n <span class="title" >{{\'APPLICATION_ANALYTICS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.analytics.reports\')\n || $state.includes(\'main.analytics.extracted\')\n || $state.includes(\'main.analytics.metrics\') }"></span>\n </a>\n <ul class="sub-menu">\n <!-- START REPORT CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.reports\')}">\n <a href="/analytics/reports/list">\n <i class="icon-book-open"></i>\n <span class="title" >{{\'APPLICATION_REPORTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.analytics.reports\')" class="selected"></span>\n </a>\n </li>\n <!-- END REPORT CASE -->\n <!-- START EXTRA REPORT CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.extracted\')}">\n <a href="/analytics/extracted/list">\n <i class="fa fa-file-pdf-o"></i>\n <span class="title" >{{\'APPLICATION_EXTRACTED_REPORTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.analytics.extracted\')" class="selected"></span>\n </a>\n </li>\n <!-- END EXTRA REPORT CASE -->\n <!-- START METRICS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.metrics\')}">\n <a href="/analytics/metrics/list">\n <i class="icon-calculator"></i>\n <span class="title" >{{\'APPLICATION_METRICS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.metrics.reports\')" class="selected"></span>\n </a>\n </li>\n <!-- END METRICS CASE -->\n </ul>\n </li>\n <!-- END ANALYTIC LIST CASE -->\n\n <!-- START SETTINGS LIST -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[18])" data-ng-class="{active: $state.includes(\'main.setting\')}">\n <a href="javascript:;">\n <i class="icon-settings"></i>\n <span class="title" >{{\'APPLICATION_SETTINGS\' | translate}}</span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu">\n <!-- START UPDATES CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.updates\')}">\n <a href="{{license.update ? \'/setting/updates/list\' : \'javascript:;\'}}" data-ng-class="{\'disabled-link\':!license.update}">\n <i class="icon-cloud-download"></i>\n <span class="title disable-target" >{{\'APPLICATION_UPDATES\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.updates\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END UPDATES CASE -->\n\n <!-- START SMTP CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.smtp\')}">\n <a href="/setting/smtp/view">\n <i class="icon-envelope"></i>\n <span class="title">SMTP</span>\n <!-- <span data-ng-if="$state.includes(\'main.smtp\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SMTP CASE -->\n\n <!-- START LICENSE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.license\')}">\n <a href="/setting/license/view">\n <i class="icon-info"></i>\n <span class="title"> {{\'APPLICATION_LICENSE\' | translate}} </span>\n </a>\n </li>\n <!-- END LICENSE CASE -->\n\n <!-- START NETWORK CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.network\')}">\n <a href="/setting/network/view/localnet">\n <i class="icon-globe"></i>\n <span class="title"> {{\'APPLICATION_NETWORK\' | translate}} </span>\n </a>\n </li>\n <!-- END NETWORK CASE -->\n </ul>\n </li>\n <!-- END SETTINGS LIST -->\n\n <!-- START INTEGRATION CASE -->\n <li data-ng-if="(Auth.isAdmin() || userModules[19]) && integration.active" data-ng-repeat="integration in integrations" data-ng-class="{active: $state.includes(\'main.{{integration.state}}\')}">\n <a href="/{{integration.state}}/list" ng-switch on="integration.state">\n <i ng-switch-when="zendesk" class="icon-heart"></i>\n <i ng-switch-when="salesforce" class="fa fa-cloud"></i>\n <i ng-switch-default class="icon-handbag"></i>\n <span class="title" >{{integration.name}}</span>\n <span data-ng-if="$state.includes(\'main.{{integration.state}}\')" class="selected"></span>\n </a>\n </li>\n\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.is(\'main.market\')}">\n <a href="/market">\n <i class="icon-handbag"></i>\n <span class="title" translate>Market Place</span>\n <span data-ng-if="$state.includes(\'main.market\')" class="selected"></span>\n </a>\n </li>\n <!-- END INTEGRATIONS CASE -->\n\n</ul>\n<!-- END SIDEBAR MENU -->\n</div>\n'); +}]); \ No newline at end of file diff --git a/public/app/b01e0669.app.js b/public/app/b01e0669.app.js deleted file mode 100644 index 11fa799..0000000 --- a/public/app/b01e0669.app.js +++ /dev/null @@ -1,88 +0,0 @@ -"use strict";angular.module("xCallyShuttleApp",["adf","adf.structures.base","adf.widget.clock","adf.widget.iframe","adf.widget.counter","adf.widget.pie-chart","angular-md5","angular.filter","angularFileUpload","ngLetterAvatar","vAccordion","btford.socket-io","chart.js","checklist-model","colorpicker.module","frapontillo.bootstrap-switch","infinite-scroll","LocalStorageModule","mgo-angular-wizard","ng-slide-down","ngAnimate","ngBootstrap","ngCookies","ngCsv","ngFileSaver","ngJsTree","ngMap","ngPapaParse","ngResource","ngSanitize","notification","oc.lazyLoad","pascalprecht.translate","remoteValidation","smart-table","sprintf","timer","toastr","permission","ui-notification","ui.bootstrap.modal","ui.bootstrap.dropdown","ui.bootstrap.popover","ui.bootstrap.timepicker","ui.bootstrap.tooltip","ui.bootstrap.tpls","ui.bootstrap.accordion","ui.bootstrap.progressbar","ui.bootstrap.buttons","ui.bootstrap.typeahead","ui.grid","ui.grid.autoResize","ui.grid.draggable-rows","ui.grid.exporter","ui.grid.grouping","ui.grid.moveColumns","ui.grid.pagination","ui.grid.treeView","ui.grid.selection","ui.grid.exporter","ui.grid.resizeColumns","ui.router","ui.navbar","ui.select","ui.sortable","xeditable","ngAudio","truncate","ngScrollbars","ngEmoticons","angularSpinner","builder","builder.components","validator","angular-clipboard","ng-code-mirror","angularMoment","jsonFormatter","ui.bootstrap-slider","ui.bootstrap.datepicker","prettyBytes","bootstrapLightbox","rzModule","ckeditor"]).config(["$stateProvider","$urlRouterProvider","$locationProvider","$httpProvider","$translateProvider","localStorageServiceProvider","dashboardProvider","ScrollBarsProvider",function(a,b,c,d,e,f,g,h){b.otherwise(function(a){var b=a.get("$state");b.go("landing")}),e.useStaticFilesLoader({prefix:"assets/languages/locale-",suffix:".json"}),e.preferredLanguage("en_EN"),e.useLocalStorage(),e.useSanitizeValueStrategy("sanitize"),c.html5Mode(!0),d.interceptors.push("authInterceptor"),g.structure("4-4-4",{rows:[{columns:[{styleClass:"col-md-4"},{styleClass:"col-md-4"},{styleClass:"col-md-4"}]}]}).structure("3-3-3-3",{rows:[{columns:[{styleClass:"col-md-3"},{styleClass:"col-md-3"},{styleClass:"col-md-3"},{styleClass:"col-md-3"}]}]}),f.setPrefix("motion"),h.defaults={scrollButtons:{scrollAmount:"auto",enable:!0},axis:"y"}}]).factory("settings",["$rootScope","$interval","License","localStorageService","Setting",function(a,b,c,d,e){return a.settings={patternName:"[A-Za-z0-9._\\+*!\\-\\[\\]]+",patternGateway:"^(?:yes|no|[0-9]+)$",patternFaxdetect:"^(?:yes|no|t38|cng|[0-9]+)$",layout:{pageSidebarClosed:d.get("sidebarClosed")||!1,pageQuickSidebarOpened:!1,pageBodySolid:!1,pageAutoScrollOnLoad:1e3}},e.get({id:1}).$promise.then(function(b){a.soundPath=b.soundPath||"/var/opt/motion/server/files/sounds/converted"})["catch"](function(a){console.error(a)}),a.settings}]).factory("authInterceptor",["$rootScope","$q","$cookieStore",function(a,b,c){return{request:function(a){return a.headers=a.headers||{},c.get("token")&&(a.headers.Authorization="Bearer "+c.get("token")),a}}}]).run(["$rootScope","$location","$state","$stateParams","$window","$q","Auth","RoleStore","editableThemes","editableOptions","License","User","PermissionStore",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.$state=c,a.$stateParams=d,i.bs3.inputClass="input-sm",i.bs3.buttonsClass="btn-xs",j.theme="bs3",a.$on("$stateChangeStart",function(a,c){g.isLoggedInAsync(function(a){c.authenticate&&!a&&b.path("/login")})}),a.updateTableConfig=function(a,b){var c=_.find(a,{name:"All"});c&&(c.value=b)},k.get().$promise.then(function(b){a.license=b.license,m.definePermission("hasCm",function(){return a.license.cm}),m.definePermission("hasChat",function(){return a.license.chat}),m.definePermission("hasMail",function(){return a.license.mail}),m.definePermission("hasFax",function(){return a.license.fax}),m.definePermission("hasSms",function(){return a.license.messaging}),m.definePermission("hasDialer",function(){return a.license.dialer}),m.definePermission("hasJscripty",function(){return a.license.jscripty}),m.definePermission("hasUpdate",function(){return a.license.update})})["catch"](function(a){console.log(a)}),m.definePermission("agent",function(){return g.isAgent()}),m.definePermission("admin",function(){return g.isAdmin()}),m.definePermission("user",function(a,b){var c=f.defer(),d=g.getCurrentUser().$promise;return d?d.then(function(a){_.includes(_.map(a.Modules,"id"),b.toState.data.permissions.id)&&"user"===a.role?c.resolve():c.reject()})["catch"](function(){c.reject()}):c.resolve(),c.promise})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics",{url:"/analytics",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:17}}})}]),angular.module("xCallyShuttleApp").factory("Extracted",["$resource",function(a){return a("/api/analytics/extracted/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.extracted",{url:"/extracted",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("AnalyticExtractedListCtrl",["$scope","$translate","gridOptions","Extracted","uiGridConstants",function(a,b,c,d,e){a.moment=moment,a.Extracted=d,a.initView=function(){var b={exporterCsvFilename:"ExtractedReports.csv",columnDefs:[{name:"name"},{name:"startDate",displayName:"APPLICATION_START_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"endDate",displayName:"APPLICATION_END_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"createdAt",displayName:"APPLICATION_RUN_DATE",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:e.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:e.filter.LESS_THAN_OR_EQUAL}]},{name:"output"},{name:"type"},{name:"status"},{name:"action",width:140,buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{directive:"<motion-file-download data-ng-show=\"row.entity.status == 'completed'\" resource=\"grid.appScope.Extracted\" params=\"{id:row.entity.id,controller:'download'}\" mimetype=\"'application/'+row.entity.output.toLowerCase()\" filename=\"row.entity.name+'_'+row.entity.startDate.toString()+'_'+row.entity.endDate.toString()+'.'+row.entity.output.toLowerCase()\"></motion-file-download>"}]}]};a.gridOptions=c.gridOptions(d,b,a,{order:"createdAt DESC"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.extracted.list",{url:"/list",templateUrl:"app/analytic/extracted/list/list.html",controller:"AnalyticExtractedListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("DefaultMetric",["$resource",function(a){return a("/api/analytics/metrics/default/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListCreateModalCtrl",["$scope","$uibModalInstance","Metric","xAlert","$translate","report",function(a,b,c,d,e,f){a.forms={dashboard:void 0},a.item={},a.tables=f.tables,a.ok=function(){return c.save(a.item).$promise.then(function(){b.close()})["catch"](function(a){d.show(e.instant(a.translatedMessage||a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListCtrl",["$scope","xAlert","Modal","$uibModal","$log","gridOptions","Metric","DefaultMetric","$translate",function(a,b,c,d,e,f,g,h,i){a.$translate=i,a.initView=function(){var b={exporterCsvFilename:"Metrics.csv",columnDefs:[{name:"name"},{name:"table",cellTemplate:"<div style=\"padding:5px\">{{'APPLICATION_'+row.entity.table.toUpperCase() | translate}}</div>"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/analytics/metrics/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]},c={exporterCsvFilename:"defaultMetrics.csv",columnDefs:[{name:"name"},{name:"table",cellTemplate:"<div style=\"padding:5px\">{{'APPLICATION_'+row.entity.table.toUpperCase() | translate}}</div>"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",name:"view",onClick:"grid.appScope.showMetric(row.entity)"},{"class":"purple",name:"clone",onClick:"grid.appScope.cloneMetric(row.entity.id)"}]}]};a.gridOptionsDefault=f.gridOptions(h,c,a,null,null,"Default"),a.gridOptions=f.gridOptions(g,b,a)},a.showMetric=function(a){d.open({animation:!0,templateUrl:"app/analytic/metric/list/view.modal.html",controller:"AnalyticMetricListViewModalCtrl",resolve:{metric:a}})},a.cloneMetric=function(c){return h.get({id:c,controller:"clone"}).$promise.then(function(){b.show(i.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){b.error(a)})},a.create=function(){var c=d.open({animation:!0,templateUrl:"app/analytic/metric/list/create.modal.html",controller:"AnalyticMetricListCreateModalCtrl"});c.result.then(function(){b.show(i.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridOptions.getPage()},function(){e.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics.list",{url:"/list",templateUrl:"app/analytic/metric/list/list.html",controller:"AnalyticMetricListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricListViewModalCtrl",["$scope","$uibModalInstance","metric","xAlert","$translate","report",function(a,b,c,d,e,f){a.item=c,a.tables=f.tables,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").factory("Metric",["$resource",function(a){return a("/api/analytics/metrics/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics",{url:"/metrics",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("AnalyticMetricViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","Metric","report",function(a,b,c,d,e,f,g){a.tables=g.tables,a.getMetric=function(){return f.get({id:d.id}).$promise.then(function(b){a.metric=b})["catch"](function(a){e.path("/analytics/metrics/list")})},a.updateMetric=function(){return f.update({id:d.id},a.metric).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(c.instant(a.translatedMessage||a.data.translatedMessage),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.metrics.view",{url:"/view/:id",templateUrl:"app/analytic/metric/view/view.html",controller:"AnalyticMetricViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.analytics.metrics.view.settings",{url:"/settings",templateUrl:"app/analytic/metric/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("CustomReport",["$resource",function(a){return a("/api/analytics/reports/custom/:id/:controller/:action",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("DefaultReport",["$resource",function(a){return a("/api/analytics/reports/default/:id/:controller/:action",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ReportListCopyModalCtrl",["$scope","$uibModalInstance","$log","customTreeData",function(a,b,c,d){a.customTreeData=d,a.forms={dashboard:void 0},a.item={},a.customTreeConfig={multiple:!1,animation:!0,core:{error:function(a){c.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0}},a.ac=function(){return!0},a.initCustomScopeTree=function(){a.customTree=a.customTreeInstance.jstree(!0),a.customTree.deselect_all(),a.customTree.open_all()},a.ok=function(){b.close({parent:a.customTree.get_selected(!0).pop().id})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ReportListCreateModalCtrl",["$scope","$uibModalInstance","path",function(a,b,c){a.path=c,a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ReportListExtractModalCtrl",["$scope","$uibModalInstance","$translate",function(a,b,c){a.daily=!1,a.dailySwitch={onText:c.instant("APPLICATION_TODAY"),offText:c.instant("APPLICATION_RANGE"),isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"primary"},a.dates={startDate:moment().subtract(1,"days").startOf("day"),endDate:moment().subtract(1,"days").endOf("day")},a.ranges={Yesterday:[moment().subtract(1,"days").startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 7 days":[moment().subtract("days",7).startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 30 days":[moment().subtract("days",30),moment()],"This month":[moment().startOf("month"),moment().endOf("month")]},a.yesterday=moment().subtract(1,"days").format("YYYY-MM-DD"),a.today=moment().format("YYYY-MM-DD"),a.extract=function(c){var d={startDate:moment(a.dates.startDate).format("YYYY-MM-DD"),endDate:moment(a.dates.endDate).format("YYYY-MM-DD"),daily:a.daily,action:c};b.close(d)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("AnalyticReportListCtrl",["$scope","xAlert","$translate","$location","$log","Modal","$uibModal","FileSaver","Blob","gridOptions","CustomReport","DefaultReport","ReportTree",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(b,c){var d={parent:c.id};a.selectedNode=b?a.defaultTree.get_path(c," / "):a.customTree.get_path(c," / "),a.gridOptions?a.gridOptions.getPage({parent:c.id},b?l:k):a.gridOptions=j.gridOptions(b?l:k,o,a,d)}var o={exporterCsvFilename:"reports.csv",columnDefs:[{name:"name"},{name:"description"},{name:"manage",width:120,buttons:[{"class":"{{grid.appScope.defaultTreeActive ? 'display-none' : 'blue-hoki'}}",href:"/analytics/reports/view/{{row.entity.id}}/settings",icon:"icon-settings",title:c.instant("APPLICATION_SETTINGS")},{"class":"{{grid.appScope.defaultTreeActive ? 'display-none' : 'red-sunglo'}}",icon:"fa fa-trash-o",title:c.instant("APPLICATION_DELETE"),onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green",icon:"fa fa-files-o",title:c.instant("APPLICATION_COPY"),onClick:"grid.appScope.copy(row.entity.id)"},{"class":"purple",icon:"fa fa-download",title:c.instant("APPLICATION_EXPORT"),onClick:"grid.appScope.export(row.entity.id)"}]},{name:"actions",buttons:[{"class":"yellow",name:"preview",onClick:"grid.appScope.preview(row.entity.id)"},{"class":"green-turquoise",name:"run",onClick:"grid.appScope.extract(row.entity.id)"}]}]};a.searchField="",a.ac=function(){return!0},a.initDefaultScopeTree=function(){a.defaultTree=a.defaultTreeInstance.jstree(!0),a.defaultTree.deselect_all(),a.defaultTree.close_all(),a.defaultTree.open_node({id:1}),a.defaultTreeReady=!0,a.defaultTreeActive=!0,a.previousDefaultNode=""},a.initCustomScopeTree=function(){a.customTree=a.customTreeInstance.jstree(!0),a.customTree.deselect_all(),a.customTree.close_all(),a.customTree.open_node({id:1}),a.customTreeReady=!0,a.previousCustomNode=""},a.$watchGroup(["defaultTreeReady","customTreeReady"],function(b,c,d){b[0]&&b[1]&&a.defaultTree.select_node({id:"1"})}),a.updateCustomTree=function(){var d={tree:angular.toJson(a.customTree.get_json("#",{flat:!0}))};return m.update({id:2},d).$promise.then(function(a){console.log("Custom Tree Updated")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.configTrees=function(){a.defaultTreeConfig={multiple:!1,animation:!0,core:{error:function(a){e.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0,themes:{name:"default",url:"../../../assets/css/jstree-metronic/style.css"}},plugins:["search"]},a.customTreeConfig={multiple:!1,animation:!0,core:{error:function(a){e.error("treeCtrl: error from js tree - "+angular.toJson(a))},check_callback:!0,themes:{name:"default",url:"../../../assets/css/jstree-metronic/style.css"}},plugins:["contextmenu","dnd","search"],contextmenu:{items:function(b,d){var e={create:{label:c.instant("APPLICATION_CREATE"),action:function(c){a.customTree.create_node(b),a.customTree.open_node(b)}},rename:{label:c.instant("APPLICATION_RENAME"),action:function(c){a.customTree.edit(b)}},remove:{label:c.instant("APPLICATION_REMOVE"),action:function(c){console.log(b),a.deleteNode(b.text,b)}}};return"#"===b.parent&&(delete e.rename,delete e.remove),d(e),e}}}},a.deleteNode=f.confirm["delete"](function(b){a.customTree.delete_node(b),a.previousCustomNode==b.id&&a.customTree.select_node({id:b.parent})}),a.searchTrees=function(){a.defaultTree.search(a.searchField),a.customTree.search(a.searchField)},a.selectDefaultNode=function(){if(a.customTreeReady){a.previousCustomNode="";var b=a.defaultTree.get_selected(!0),c=b.pop();if(a.defaultTree.deselect_node(b[0],!0),a.customTree.deselect_all(),a.defaultTree.select_node(c,!0),c.id===a.previousDefaultNode)return void console.log("def");a.previousDefaultNode=c.id,a.defaultTreeActive=!0,n(!0,c)}},a.selectCustomNode=function(){if(a.defaultTreeReady){a.previousDefaultNode="";var b=a.customTree.get_selected(!0),c=b.pop();if(a.customTree.deselect_node(b[0],!0),a.defaultTree.deselect_all(),a.customTree.select_node(c,!0),c.id===a.previousCustomNode)return void console.log("cus");a.previousCustomNode=c.id,a.defaultTreeActive=!1,n(!1,c)}},a.getTrees=function(){return m.query().$promise.then(function(b){a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),a.configTrees()})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.create=function(){var c=g.open({animation:!0,templateUrl:"app/analytic/report/list/create.modal.html",controller:"ReportListCreateModalCtrl",resolve:{path:function(){return a.selectedNode}}});c.result.then(function(c){return c.parent=a.previousCustomNode,k.save(c).$promise.then(function(a){d.path("/analytics/reports/view/"+a.id+"/settings")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})},a.copy=function(d){var f=a.defaultTreeActive?l:k,h=g.open({animation:!0,templateUrl:"app/analytic/report/list/copy.modal.html",controller:"ReportListCopyModalCtrl",resolve:{customTreeData:function(){return a.customTree.get_json("#",{flat:!0})}}});h.result.then(function(e){return f.save({id:d,controller:"copy"},e).$promise.then(function(){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})},a["export"]=function(c){var d=a.defaultTreeActive?l:k;return d.get({id:c,controller:"export"}).$promise.then(function(a){var b=new i([angular.toJson(a)],{type:"application/json;charset=utf-8"});h.saveAs(b,a.name+".json")})["catch"](function(a){console.error(data),b.show(a.message,"danger")})},a["import"]=function(d){var e=JSON.parse(d);e.parent=a.previousCustomNode;var f=!(!e.name||!e.parent),g=!0;return _.forEach(e.Fields,function(a){a.field&&a.alias||(g=!1)}),f&&g?k.save({controller:"import"},e).$promise.then(function(){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")}):void b.show(c.instant("MESSAGE_INVALID_JSON"),"danger")},a.preview=function(b){g.open({animation:!0,templateUrl:"app/analytic/report/list/preview.modal.html",controller:"ReportListPreviewModalCtrl",size:"full",resolve:{report:function(){return{id:b,tree:a.defaultTreeActive?"default":"custom"}}}})},a.extract=function(d){var f=g.open({animation:!0,templateUrl:"app/analytic/report/list/extract.modal.html",controller:"ReportListExtractModalCtrl",size:"md",resolve:{report:function(){return{id:d,tree:a.defaultTreeActive?"default":"custom"}}}});f.result.then(function(e){e.daily||delete e.daily;var f=a.defaultTreeActive?l:k;return f.get(_.merge({id:d,controller:"extract"},e)).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message,"danger")})},function(){e.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports.list",{url:"/list",templateUrl:"app/analytic/report/list/list.html",controller:"AnalyticReportListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ReportListPreviewModalCtrl",["$scope","$uibModalInstance","report","xAlert","$translate","$timeout","CustomReport","DefaultReport",function(a,b,c,d,e,f,g,h){a.daily=!1,a.dailySwitch={onText:e.instant("APPLICATION_TODAY"),offText:e.instant("APPLICATION_RANGE"),isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"primary"},a.dates={startDate:moment().subtract(1,"days").startOf("day"),endDate:moment().subtract(1,"days").endOf("day")},a.ranges={Yesterday:[moment().subtract(1,"days").startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 7 days":[moment().subtract("days",7).startOf("day"),moment().subtract(1,"days").endOf("day")],"Last 30 days":[moment().subtract("days",30),moment()],"This month":[moment().startOf("month"),moment().endOf("month")]},a.yesterday=moment().subtract(1,"days").format("YYYY-MM-DD"),a.today=moment().format("YYYY-MM-DD");var i={offset:0,limit:25,sort:null,where:{},order:{}};a.gridOptions={paginationPageSizes:[10,25,50],paginationPageSize:25,useExternalPagination:!0,enableSorting:!1,enableFiltering:!0,useExternalFiltering:!0,enableGrouping:!1,enableColumnMenus:!1,treeRowHeaderAlwaysVisible:!1,gridMenuShowHideColumns:!1,enableGridMenu:!1,onRegisterApi:function(b){a.gridApi=b,b.pagination.on.paginationChanged(a,function(b,c){i.offset=(b-1)*c,i.limit=c,a.getPage()}),b.core.on.filterChanged(a,function(){var b=this.grid,c={};b.columns.forEach(function(a){a.filters[0].term&&(c[a.field]=a.filters[0].term)}),i.where=c,a.getPage()})}},a.getPage=function(){var b={offset:i.offset,limit:i.limit,startDate:moment(a.dates.startDate).format("YYYY-MM-DD"),endDate:moment(a.dates.endDate).format("YYYY-MM-DD"),daily:a.daily};_.forOwn(i.where,function(a,c){b[c]=a});var e="custom"===c.tree?g:h;return e.get(_.merge({id:c.id,controller:"preview"},b)).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.paginationPageSizes[3]=b.count,a.gridOptions.data=b.rows,a.showResult=!0})["catch"](function(a){d.error(a)})},a.cancel=function(){b.dismiss("cancel")},f(function(){a.getPage()})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports",{url:"/reports",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ReportAgent",["$resource",function(a){return a("/api/report/agents/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportIntegration",["$resource",function(a){return a("/api/report/integrations/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportMember",["$resource",function(a){return a("/api/report/members/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportTree",["$resource",function(a){return a("/api/analytics/reports/trees/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("AnalyticReportViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","ReportAgent","ReportCall","ReportMailSession","ReportSmsSession","ReportMember","ReportQueue","ReportIntegration","ReportChatSession","DefaultReport","CustomReport","Metric","report",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){function r(d){var e=_.find(a.tables,{value:d}).resource;e.get({controller:"describe"}).$promise.then(function(b){a.tableFields=_.map(b,function(a,b){return"$promise"!==b&&"$resolved"!==b?{name:b,value:b}:void 0})})["catch"](function(a){b.show(c.instant(a.message),"danger")})["finally"](function(){s(d)})}function s(d){return p.get({controller:"table",table:d}).$promise.then(function(b){_.forEach(b.rows,function(b){a.tableFields.push({name:"<strong>Metric.</strong>"+b.name,value:b.metric,MetricId:b.id})})})["catch"](function(a){b.show(c.instant(a.message),"danger")})}function t(a){return String(a).replace(/</g,"<").replace(/>/g,">")}function u(a){if(!a)return"";for(var b="(",c=0;c<a.rules.length;c++)c>0&&(b+=" <strong>"+a.operator+"</strong> "),b+=a.rules[c].group?u(a.rules[c].group):a.rules[c].field+" "+t(a.rules[c].condition)+" '"+("like"===a.rules[c].condition?"%"+a.rules[c].value+"%":a.rules[c].value)+"'";return b+")"}a.$translate=c,a.tempReport={},a.tables=q.tables;var v={group:{operator:"AND",rules:[]}};a.getReport=function(){return a.firstLoad=!0,o.get({id:d.id}).$promise.then(function(b){a.report=b,_.forEach(a.report.Fields,function(a){delete a.id}),a.report.conditions=a.report.conditions?JSON.parse(a.report.conditions):_.clone(v,!0),a.report.Fields.length&&a.getPreview()})["catch"](function(a){console.error(a),e.path("/analytics/reports/list")})},a.randomName=function(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")},a.$watch("report.table",function(b,c){b&&(r(b),c&&(a.tempReport[c]={conditions:a.report.conditions,fields:a.report.Fields}),a.firstLoad?a.firstLoad=!1:a.tempReport[b]?(a.report.Fields=a.tempReport[b].fields,a.report.conditions=a.tempReport[b].conditions):(a.report.Fields=[],a.report.conditions=_.clone(v,!0)))},!0),a.setMetricId=function(b,c){a.report.Fields[c].MetricId=b.MetricId?b.MetricId:null},a.groupByField=[{name:"APPLICATION_YES",value:!0},{name:"APPLICATION_NO",value:!1}],a.functions=[{name:"Sum",value:"SUM"},{name:"Count",value:"COUNT"},{name:"Count Distinct",value:"COUNT DISTINCT"},{name:"Maximum",value:"MAX"},{name:"Minimum",value:"MIN"},{name:"Average",value:"AVG"},{name:"Group Concat",value:"GROUP_CONCAT"},{name:"Group Concat(asc)",value:"GROUP_CONCAT ASC"},{name:"Group Concat(desc)",value:"GROUP_CONCAT DESC"}],a.formatFunctions=[{name:"Sec To Time",value:"SEC_TO_TIME"},{name:"Date",value:"DATE"},{name:"Hour",value:"HOUR"},{name:"Round",value:"ROUND"},{name:"Unix TimeStamp",value:"UNIX_TIMESTAMP"}],a.addField=function(){a.report.Fields.push({groupBy:!1})},a.removeField=function(b){a.report.Fields.splice(b,1)},a.sortableOptions={"ui-floating":!0,cancel:".unsortable",handle:".report-field-handle",axis:"y"},a.updateReport=function(){if(a.report.Fields.length){var e=angular.copy(a.report);return e.conditions=angular.toJson(e.conditions),o.update({id:d.id},e).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),a.getPreview()})["catch"](function(a){b.error(a)})}b.show(c.instant("MESSAGE_SELECT_A_FIELD"),"danger")},a.$watch("report.conditions",function(b){a.output=b?u(b.group):"()"},!0),a.getPreview=function(){return a.gridOptions=null,o.get({id:d.id,controller:"preview",limit:20}).$promise.then(function(b){a.gridOptions={enableFiltering:!0,treeRowHeaderAlwaysVisible:!1,enableGridMenu:!0,data:b.rows}})["catch"](function(a){console.log(a),b.show(c.instant(a.message||"MESSAGE_QUERY_NOT_VALID"),"warning")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.analytics.reports.view",{url:"/view/:id",templateUrl:"app/analytic/report/view/view.html",controller:"AnalyticReportViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.analytics.reports.view.settings",{url:"/settings",templateUrl:"app/analytic/report/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels",{url:"/channels",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat",{url:"/chat",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ChatEnquiry",["$resource",function(a){return a("/api/chat/enquiries/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatReport",["$resource",function(a){return a("/api/report/chats/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatVisitor",["$resource",function(a){return a("/api/chat/visitors/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatMessage",["$resource",function(a){return a("/api/chat/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatRoom",["$resource",function(a){return a("/api/chat/rooms/:id/:controller",{id:"@id"},{me:{method:"GET",isArray:!0,params:{id:"me"}},users:{method:"GET",params:{id:"users"}},externals:{method:"GET",isArray:!0,params:{id:"type",controller:"external"}},groups:{method:"GET",isArray:!0,params:{id:"groups"}},update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").controller("ChatOfflineListCtrl",["$scope","ChatVisitor","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_offline_messages.csv",columnDefs:[{name:"fullname",cellClass:"text-center"},{name:"email",cellClass:"text-center"},{name:"ChatWebsite.name",displayName:"Website",cellClass:"text-center"},{name:"createdAt",displayName:"createdAt",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/offline/view/{{row.entity.id}}/detail",name:"detail"}]}]};a.gridOptions=c.gridOptions(b,d,a,{origin:"enquiry"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline.list",{url:"/list",templateUrl:"app/channels/chat/offline/list/list.html",controller:"ChatOfflineListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline",{url:"/offline",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatOfflineViewCtrl",["$scope","$stateParams","ChatVisitor",function(a,b,c){ -a.initView=function(){return c.get({id:b.id}).$promise.then(function(b){a.chatVisitor=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.offline.view",{url:"/view/:id",templateUrl:"app/channels/chat/offline/view/view.html",controller:"ChatOfflineViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.offline.view.detail",{url:"/detail",templateUrl:"app/channels/chat/offline/view/view.detail.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/news.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ChatOnlineListCtrl",["$scope","ChatRoom","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_online_messages.csv",columnDefs:[{name:"ChatVisitor.fullname",displayName:"APPLICATION_FULLNAME",cellClass:"text-center"},{name:"ChatVisitor.email",displayName:"APPLICATION_EMAIL",cellClass:"text-center"},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/online/view/{{row.entity.id}}/detail",name:"detail"}]}]};a.gridOptions=c.gridOptions(b,d,a,{id:"online"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online.list",{url:"/list",templateUrl:"app/channels/chat/online/list/list.html",controller:"ChatOnlineListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online",{url:"/online",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatOnlineViewCtrl",["$scope","$stateParams","ChatRoom",function(a,b,c){a.initView=function(){return a.config={autoHideScrollbar:!1,theme:"light",advanced:{updateOnContentResize:!0},setHeight:400,scrollInertia:0},c.get({id:b.id}).$promise.then(function(b){a.chatRoom=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.online.view",{url:"/view/:id",templateUrl:"app/channels/chat/online/view/view.html",controller:"ChatOnlineViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.online.view.detail",{url:"/detail",templateUrl:"app/channels/chat/online/view/view.detail.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/news.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("PreviewCtrl",["$scope",function(a){a.message="Hello"}]),angular.module("xCallyShuttleApp").directive("preview",function(){return{templateUrl:"app/channels/chat/preview/preview.html",restrict:"EA",link:function(a,b,c){}}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("preview",{url:"/preview",templateUrl:"app/channels/chat/preview/preview.html",controller:"PreviewCtrl",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").factory("ChatQueue",["$resource",function(a){return a("/api/chat/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChatQueueListCtrl",["$scope","ChatQueue","gridOptions","Auth","$uibModal",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var e={exporterCsvFilename:"chat_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"strategy"},{name:"timeout"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/chat/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/chat/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===d.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a)},a.createItem=function(){var b=e.open({animation:!0,templateUrl:"app/channels/chat/queue/list/list.create.modal.html",controller:"ChatQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChatQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","ChatQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues.list",{url:"/list",templateUrl:"app/channels/chat/queue/list/list.html",controller:"ChatQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","ChatQueue","Team","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return f.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return f["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getQueue=function(){b.get("/api/chat/queues/"+e.id).success(function(b){b.penalty=0,a.queue=b}).error(function(a){console.error(a)})},a.updateChatQueue=function(){var f=angular.copy(a.queue);b.put("/api/chat/queues/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){a.queue=f,b.errors.forEach(function(a){c.show(a.message,"danger")})})},a.getTeams=function(){return g.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,f.get({id:e.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindChatQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasChatQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.queues.view",{url:"/view/:id",templateUrl:"app/channels/chat/queue/view/view.html",controller:"ChatQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.queues.view.settings",{url:"/settings",templateUrl:"app/channels/chat/queue/view/view.settings.html"}).state("main.channels.chat.queues.view.agents",{url:"/agents",templateUrl:"app/channels/chat/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","ChatQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.chatPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_chat_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PChatQueues,"id"),b.ChatQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.ChatQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_chat_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.ChatQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.chatPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.ChatQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.chatQueues=b.rows,e.syncUpdates("chat_queue",a.chatQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.chatQueues=[];var t={controller:"realtime",controller1:"chat",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"chatPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.chatQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_chat_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/chat/realtime/view/agent/queue.modal.add.html",controller:"ChatRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.chatQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.chatQueues,function(a){return _.includes(b.queues,a.id)}),channel:"chat",data1:e,data3:b.queues.join(","),data4:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"chat",data1:a,data3:b,data4:"chat"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/chat/realtime/view/agent/agent.modal.info.html",controller:"ChatRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/chat/realtime/view/agent/agent.html",controller:"ChatRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportChatSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_chat_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_chat_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_chat_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/chat/realtime/view/application/application.html",controller:"ChatRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRealtimeViewCtrl",["$scope",function(a){a.agents=[{name:"Queues",link:"main.chat.realtime.view.agent.queues"},{name:"Timeline",link:"main.chat.realtime.view.agent.timeline"}],a.sessions=[{name:"Sessions",link:"main.chat.realtime.view.sessions"}]}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.realtime.view",{url:"/view",templateUrl:"app/channels/chat/realtime/view/view.html",controller:"ChatRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportChatRoom",["$resource",function(a){return a("/api/report/chat/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportChatSession",["$resource",function(a){return a("/api/report/chat/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.external",{url:"/external",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomExternalListCtrl",["$scope","$timeout","socket","Auth","ChatRoom","usSpinnerService","Tag","$uibModal",function(a,b,c,d,e,f,g,h){function i(){return g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}a.openChat=function(b){return e.get({id:b.id}).$promise.then(function(b){var c=_.find(a.workspaces,{id:b.id,type:"chatRoom"});c?c.active=!0:a.workspaces.push({id:b.id,name:b.ChatVisitor.fullname,type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.id=[],a.query={status:"OPEN",tags:[]},a.gridOptions={enableGridMenu:!1,enableFiltering:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"userpic",displayName:"",width:35,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar height="20" width="20" fontsize="12" data="{{row.entity.ChatVisitor.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #EA4C61" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"fullname",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span style="padding-left: 5px;" class="pull-left">{{row.entity.ChatVisitor.fullname}}</span></div>',enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(),i()},a.tagItems=function(){h.open({animation:!0,templateUrl:"app/channels/chat/room/view.tags.modal.html",controller:"ChatRoomViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.onChanged=function(){a.getPage()},a.$watch("query.status",function(){a.getPage()},!0),a.getPage=function(){return f.spin("spinner-grid"),e.get(_.merge({id:"externals"},a.query)).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.external.list",{url:"/list",templateUrl:"app/channels/chat/room/external/list/list.html",controller:"ChatRoomExternalListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.group",{url:"/group",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomGroupListCtrl",["$scope","$timeout","Auth","ChatRoom","usSpinnerService","Tag",function(a,b,c,d,e,f){function g(){return f.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}a.getFullnames=function(a){var b=_.map(a.Users,"fullname");return a.ChatVisitor&&b.unshift(a.ChatVisitor.fullname),_.without(b,c.getCurrentUser().fullname).join(", ")},a.openChat=function(b){return d.get({id:b.id}).$promise.then(function(c){var d=_.find(a.workspaces,{id:c.id,type:"chatRoom"});d?d.active=!0:a.workspaces.push({id:c.id,data:b,name:a.getFullnames(c),type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.query={status:"OPEN",tags:[]},a.currentUser=c.getCurrentUser(),a.gridOptions={enableGridMenu:!1,enableColumnResizing:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"userpic",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar data-ng-if="row.entity.ChatVisitor" height="20" width="20" fontsize="12" data="{{row.entity.ChatVisitor.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #EA4C61" shape="round"></ng-letter-avatar> <ng-letter-avatar data-ng-repeat="user in row.entity.Users | filter:{ id: \'!\' + grid.appScope.currentUser.id} track by user.id" style="margin-right: 3px;" height="20" width="20" fontsize="12" data="{{user.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #3399CC" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"Users",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{grid.appScope.getFullnames(row.entity)}}</div>",enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[]},a.getPage(),g()},a.onChanged=function(){a.getPage()},a.$watch("query.status",function(){a.getPage()},!0),a.getPage=function(){return e.spin("spinner-grid"),d.get(_.merge({id:"groups"},a.query)).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){e.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.group.list",{url:"/list",templateUrl:"app/channels/chat/room/group/list/list.html",controller:"ChatRoomGroupListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.internal",{url:"/internal",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatRoomInternalListCtrl",["$scope","$timeout","socket","Auth","ChatRoom","usSpinnerService",function(a,b,c,d,e,f){a.openChat=function(b){return e.users({users:[d.getCurrentUser().id,b.id]}).$promise.then(function(c){var d=_.find(a.workspaces,{id:c.id,type:"chatRoom"});d?d.active=!0:a.workspaces.push({id:c.id,name:b.fullname,type:"chatRoom","class":"icon-bubble",active:!0})})["catch"](function(a){console.error(a)})},a.initView=function(){a.gridOptions={enableGridMenu:!1,enableFiltering:!0,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"userpic",displayName:"",width:35,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div> <ng-letter-avatar height="20" width="20" fontsize="12" data="{{row.entity.fullname}}" avatarcustombgcolor="#B0B0B0" charCount="2" avatarcustomborder="border:2px solid #3399CC" shape="round"></ng-letter-avatar> </div>',enableColumnMenu:!1,enableSorting:!1,enableFiltering:!1},{name:"fullname",enableSorting:!0,enableFiltering:!0,enableColumnMenu:!0},{name:"action",cellTemplate:'<div><a class="btn btn-xs green-meadow" href="#" data-ng-click="grid.appScope.openChat(row.entity)">{{\'APPLICATION_CHAT\' | translate}}</a></div>',cellClass:"ui-grid-vcenter",width:100,enableFiltering:!1,enableSorting:!1,enableColumnMenu:!1}],data:[]},c.socket.on("user:save",function(b){if(b.online&&d.getCurrentUser().id!==b.id){var c=_.find(a.gridOptions.data,{id:b.id});c?_.merge(c,b):a.gridOptions.data.push(b)}else _.remove(a.gridOptions.data,{id:b.id})}),c.socket.on("agent:save",function(b){if(b.online&&d.getCurrentUser().id!==b.id){var c=_.find(a.gridOptions.data,{id:b.id});c?_.merge(c,b):a.gridOptions.data.push(b)}else _.remove(a.gridOptions.data,{id:b.id})}),e.get({id:"agents"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room.internal.list",{url:"/list",templateUrl:"app/channels/chat/room/internal/list/list.html",controller:"ChatRoomInternalListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatRoomAddCtrl",["$scope","$uibModalInstance","Agent","items",function(a,b,c,d){a.items=d,a.agents=c.get(function(b){a.agents=b,a.items.forEach(function(b){_.remove(a.agents.rows,{id:b.id})})}),a.selected={items:[]},a.ok=function(){b.close(_.union(_.map(a.selected.items,"id"),_.map(a.items,"id")))},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("ChatRoomCloseCtrl",["$scope","$uibModalInstance","closed","ChatWebsite","websiteId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_CHAT"},a.initDisposition=function(){return d.get({websiteId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.closed=c,a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss(); -}}]),angular.module("xCallyShuttleApp").directive("chatRoom",["$interval","$rootScope","$uibModal","$notification","$window","socket","Auth","ChatRoom","ngAudio","xAlert","Tag","CannedAnswer","List","$translate",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/chat/room/room.directive.html",link:function(a){a.user=g.getCurrentUser(),a.message={body:""},a.openContact=function(c){return a.chatRoom.ChatWebsite.List?m.get({listId:a.chatRoom.ChatWebsite.List.id,controller:"contacts",email:c}).$promise.then(function(a){b.$root.workspaces.push({active:!0,"class":"icon-user",contactID:a.id,name:a.email,type:"contact"})})["catch"](function(a){console.error(a)}):void j.show(n.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},a.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},a.form={},a.panelLeft="col-md-4",a.panelRight="col-md-8",a.onSelect=function(){a.message.body=a.modelOptions.selectedAnswer,delete a.modelOptions.selectedAnswer},a.togglePanelLeft=function(){a.panelLeft?(a.panelLeft=null,a.panelRight="col-md-12"):(a.panelLeft="col-md-4",a.panelRight="col-md-8")},a.options={link:!0,linkTarget:"_blank",pdf:{embed:!0},image:{embed:!0},audio:{embed:!0},code:{highlight:!0,lineNumbers:!1},basicVideo:!0},a.getAnswers=function(a){return l.get({key:a}).$promise.then(function(a){return console.log(a),_.map(a.rows,"value")})},a.isMyRoom=function(b){return!!_.find(b,{id:a.user.id})},h.get({id:a.workspace.id}).$promise.then(function(c){a.chatRoom=c,a.form.tags=c.tags,a.chatRoom.ChatVisitor&&(a.chatRoom.ChatVisitors=[],a.chatRoom.ChatVisitors.push(a.chatRoom.ChatVisitor)),f.socket.on("chat_room:save",function(b){a.chatRoom.id===b.id&&_.merge(a.chatRoom,b)}),f.socket.on("user_has_chat_room:save",function(b){return b.UserId!=a.user.id&&b.ChatRoomId==a.chatRoom.id?h.get({id:"agents",controller:b.UserId}).$promise.then(function(b){var c=_.map(a.chatRoom.Users,"fullname");a.chatRoom.ChatVisitor&&c.unshift(a.chatRoom.ChatVisitor.fullname),a.chatRoom.Users.push(b),a.workspace.name=_.without(c,g.getCurrentUser().fullname).join(", ")})["catch"](function(a){console.error(a)}):void 0}),f.socket.on("chat_message:save",function(c){a.chatRoom.id==c.ChatRoomId&&(a.user.id!=c.UserId&&a.chatRoom.ChatMessages.push(c),!b.settings.layout.onFocus&&e.Notification&&d("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Chat Message!",delay:5e3}),a.workspace.active||(i.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play(),a.workspace.unread++))})})["catch"](function(a){console.error(a)}),k.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.closeRoom=function(b){return c.open({animation:!0,templateUrl:"app/channels/chat/room/room.close.html",controller:"ChatRoomCloseCtrl",resolve:{closed:function(){return"CLOSED"===a.chatRoom.status},websiteId:function(){return a.chatRoom.ChatWebsiteId}}}).result.then(function(a){var c={id:b,status:"CLOSED",completeReason:"agent"};return a.disposition&&(c.disposition=a.disposition),h.update(c).$promise["catch"](function(a){j.show(a.data.message,"danger")})})},a.onChanged=function(b){return h.update({id:b},{tags:a.form.tags}).$promise["catch"](function(a){console.error(a)})},a.addAgent=function(b){c.open({animation:!0,templateUrl:"app/channels/chat/room/room.add.html",controller:"ChatRoomAddCtrl",resolve:{items:function(){return _.map(a.chatRoom.Users||[],function(a){return{id:a.id,fullname:a.fullname}})}}}).result.then(function(a){return h.update({id:b,controller:"users"},{users:a}).$promise["catch"](function(a){j.show(a.data.message,"danger")})})},a.sendMessage=function(){var b={body:angular.copy(a.message.body),createdAt:moment(),UserId:a.user.id,User:{fullname:a.user.fullname}};return a.message.body.trim().length?(a.chatRoom.ChatMessages.push(b),a.message.body="",h.save({id:a.chatRoom.id,controller:"messages"},{body:b.body}).$promise["catch"](function(a){console.error(a)})):void 0}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.room",{url:"/room",templateUrl:"app/channels/chat/room/room.html",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:8}},resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ChatRoomViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","ChatRoom","xAlert","id",function(a,b,c,d,e,f,g,h){a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("ChatVisitorListCtrl",["$scope","ChatVisitor","gridOptions","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"chat_visitors.csv",columnDefs:[{name:"fullname",cellClass:"text-center"},{name:"email",cellClass:"text-center"},{name:"origin",cellClass:"text-center"},{name:"createdAt",displayName:"createdAt",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/channels/chat/visitors/view/{{row.entity.id}}/profile",name:"profile"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors.list",{url:"/list",templateUrl:"app/channels/chat/visitor/list/list.html",controller:"ChatVisitorListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatVisitorViewCtrl",["$scope","$stateParams","ChatVisitor",function(a,b,c){a.initView=function(){return c.get({id:b.id}).$promise.then(function(b){a.chatVisitor=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors.view",{url:"/view/:id",templateUrl:"app/channels/chat/visitor/view/view.html",controller:"ChatVisitorViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.chat.visitors.view.profile",{url:"/profile",templateUrl:"app/channels/chat/visitor/view/view.profile.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.visitors",{url:"/visitors",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").factory("ChatApplication",["$resource",function(a){return a("/api/chat/applications/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ChatWebsite",["$resource",function(a){return a("/api/chat/websites/:websiteId/:controller/:id",{id:"@websiteId"},{update:{method:"PUT"},updateFields:{method:"PUT",isArray:!0}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteListCtrl",["$scope","gridOptions","ChatWebsite",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"chat_websites.csv",columnDefs:[{name:"name"},{name:"description"},{name:"address"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/chat/websites/view/{{row.entity.id}}/embedding/view",name:"embedding"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.list",{url:"/list",templateUrl:"app/channels/chat/website/list/list.html",controller:"ChatWebsiteListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionListCtrl",["$scope","gridOptions","ChatWebsite","$http","$translate","$stateParams","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"chat_applications.csv",columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.ChatQueue ? row.entity.ChatQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/chat/websites/view/{{row.entity.ChatWebsiteId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{websiteId:f.websiteId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.list",{url:"/list",templateUrl:"app/channels/chat/website/view/action/list/list.html",controller:"ChatWebsiteViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","ChatApplication","ChatQueue","Agent","Interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){return a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],k.get({id:c.actionId}).$promise.then(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getQueues=function(){return l.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getAgents=function(){return m.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.getIntervals=function(){return n.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.updateItem=function(){var b=["*","*","*","*"],e={app:a.application.app,timeout:a.application.timeout,chatAccountId:c.id};switch(a.application.app){case"agent":e.UserId=a.application.UserId,e.ChatQueueId=null;break;case"queue":e.ChatQueueId=a.application.ChatQueueId,e.UserId=null}switch(a.application.intType){case"always":e.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",e.interval=b.join(","),delete a.application.IntervalId;break;case"list":e.IntervalId=a.application.IntervalId}return k.update({id:c.actionId},e).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/chat/website/view/action/view/view.html",controller:"ChatWebsiteViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewActionWizardCtrl",["$scope","$http","Agent","Interval","ChatQueue","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={app:"queue",intType:"always",alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return e.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){i.show(a.message||a.data.message,"danger")})},a.getIntervals=function(){return d.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){i.show(a.message||a.data.message,"danger")})},a.createItem=function(){var c=["*","*","*","*"],d={app:a.application.app,timeout:a.application.timeout,ChatWebsiteId:f.websiteId};switch(a.application.app){case"agent":d.UserId=a.application.UserId;break;case"queue":d.ChatQueueId=a.application.ChatQueueId}switch(a.application.intType){case"always":d.interval=c.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(c[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?c[1]="*":c[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?c[2]="*":c[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?c[3]="*":c[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",d.interval=c.join(","),delete a.application.IntervalId;break;case"list":d.IntervalId=a.application.IntervalId}b.post("/api/chat/applications",d).success(function(){h.path("/channels/chat/websites/view/"+f.websiteId+"/actions/list")}).error(function(a){i.show(a.message||a.data.message,"danger")})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/chat/website/view/action/wizard/wizard.html",controller:"ChatWebsiteViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("ChatDisposition",["$resource",function(a){return a("/api/chat/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewModalDispositionAddCtrl",["$scope","$uibModalInstance","ChatWebsite","id","xAlert","$translate",function(a,b,c,d,e,f){a.ok=function(){return c.save({websiteId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.show(f.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","ChatWebsite","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({websiteId:b.websiteId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({websiteId:b.websiteId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({websiteId:b.websiteId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/chat/website/view/disposition/modal/add.modal.html",controller:"ChatWebsiteViewModalDispositionAddCtrl",resolve:{id:function(){return b.websiteId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.dispositions",{url:"/dispositions",controller:"ChatWebsiteDispositionViewCtrl",templateUrl:"app/channels/chat/website/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.embedding",{url:"/embedding",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewEmbeddingViewCtrl",["$scope","$stateParams","$translate","clipboard","xAlert","ChatWebsite",function(a,b,c,d,e,f){a.initView=function(){return f.get({websiteId:b.websiteId,controller:"snippet"}).$promise.then(function(b){a.snippetCode=b.html})["catch"](function(a){e.show(a.message||a.data.message,"danger")})},a.copyToClipboard=function(){d.copyText(a.snippetCode),e.show(c.instant("MESSAGE_TEXT_COPIED_CLIPBOARD")+"!","success")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.embedding.view",{url:"/view",templateUrl:"app/channels/chat/website/view/embedding/view/view.html",controller:"ChatWebsiteViewEmbeddingViewCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.form",{url:"/forms",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewFormViewCtrl",["$scope","$builder","$validator","$stateParams","$translate","ChatWebsite","xAlert",function(a,b,c,d,e,f,g){a.saveForm=function(a){var c=angular.copy(b.forms[a]);return c.length>3?g.show("You can insert at least 3 input elements","danger"):(_.forEach(c,function(a){delete a.id}),f.updateFields({websiteId:d.websiteId,controller:"fields",id:a},c).$promise.then(function(){g.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message||a.data.message,"danger")}))},a.getChatWebsiteFields=function(a){return f.query({websiteId:d.websiteId,controller:"fields",id:a}).$promise.then(function(c){_.forEach(c,function(c){b.addFormObject(a,c)})})["catch"](function(a){g.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.form.view",{url:"/view",templateUrl:"app/channels/chat/website/view/form/view/view.html",controller:"ChatWebsiteViewFormViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewProactiveListCtrl",["$scope","gridOptions","ChatWebsite","$http","$translate","$stateParams","$uibModal",function(a,b,c,d,e,f,g){a.initProactiveActions=function(){var d={exporterCsvFilename:"telephones.csv",columnDefs:[{name:"name"},{name:"type"},{name:"action",width:125,buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{websiteId:f.websiteId,controller:"proactive"})},a.createItem=function(b){var c=g.open({animation:!0,templateUrl:"app/channels/chat/website/view/proactive/list/list.create.modal.html",controller:"ChatWebsiteProactiveListCreateCtrl",resolve:{item:b}});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteProactiveListCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","ChatWebsite","xAlert","item",function(a,b,c,d,e,f,g){a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_PROACTIVE_ACTION"):b.instant("APPLICATION_NEW_PROACTIVE_ACTION"),a.possibleType=[{type:"mouseOver",title:"Mouse Over"},{type:"timeout",title:"Timeout"}],a.save=function(){return g?e.update({websiteId:d.websiteId,controller:"proactive",id:a.item.id},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.show(a.message||a.data.message,"danger")}):e.save({websiteId:d.websiteId,controller:"proactive"},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.show(a.message||a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.proactive.list",{url:"/list",templateUrl:"app/channels/chat/website/view/proactive/list/list.html",controller:"ChatWebsiteViewProactiveListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.proactive",{url:"/proactive",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteSettingViewCtrl",["$scope","$stateParams","$translate","$location","$timeout","socket","xAlert","ChatWebsite","List",function(a,b,c,d,e,f,g,h,i){a.initView=function(){return i.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)})},a.updateItemChatWebsite=function(){return h.update({id:b.websiteId},{ListId:a.chatWebsite.ListId}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.settings",{url:"/settings",controller:"ChatWebsiteSettingViewCtrl",templateUrl:"app/channels/chat/website/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.snippet",{url:"/snippet",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewSnippetViewCtrl",["$scope","$http","$stateParams","$translate","Template",function(a,b,c,d,e){a.$translate=d,a.statePreview={state:"online"},a.enquirySwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.fidelitySwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.lang={HeaderCurrentlyChatting:"Live Chat",HeaderOffline:"Contact us",OperatorOfflineMessage:"It appears as if all operators are currently offline.",OfflineMessage:"<strong>We're not online.</strong><br/>It doesn't mean we're not there to help - leave your message below and we'll be in touch as soon as possible.",EnquiryMessagePlaceholder:"Your message...",EnquiryButtonText:"Leave message",EnquirySubmitSuccess:"Your message was sucessfully submitted - we will contact you as soon as possible.",OperatorComposing:"{fullname} is typing...",FirstMessageText:"",ExitChatButtonText:"Exit Chat",ExitChatQuestionText:"Are you sure?",ExitChatButtonConfirmText:"Yes",ExitChatButtonCancelText:"No",MessagePlaceholderText:"Your message...",MessageSendButtonText:"Send",ValidationEmailRequired:"Please enter your email address",ValidationEmailInvalid:"Please enter a valid email address",ValidationEmailMaxLength:"The email address may not exceed 85 characters",ValidationUsernameRequired:"Please enter your name",ValidationUsernameMaxLength:"The name may not exceed 45 characters",ValidationEnquiryRequired:"Please enter your enquiry",ValidationEnquiryMaxLength:"The enquiry may not exceed 1500 characters",ValidationMessageRequired:"Please enter your message",ValidationMessageMaxLength:"The message may not exceed 750 characters"},a.initView=function(){return e.get().$promise.then(function(b){a.templates=b.rows})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view.snippet.view",{url:"/view",templateUrl:"app/channels/chat/website/view/snippet/view/view.html",controller:"ChatWebsiteViewSnippetViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteViewCtrl",["$scope","xAlert","$http","$location","$stateParams","$translate","WizardHandler","ChatApplication","ChatWebsite",function(a,b,c,d,e,f,g,h,i){a.initApplication=function(){a.forms={},a.application={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.deleteItem=function(a){return h["delete"]({id:a}).$promise.then(function(){b.show(f.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},a.initView=function(){return i.get({id:e.websiteId}).$promise.then(function(b){a.chatWebsite=b})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},a.updateItem=function(){return i.update({id:a.chatWebsite.id},a.chatWebsite).$promise.then(function(){b.show(f.instant("MESSAGE_CHAT_WEBSITE_UPDATE_SUCCESS")+"!","success")})["catch"](function(a){b.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.view",{url:"/view/:websiteId",templateUrl:"app/channels/chat/website/view/view.html",controller:"ChatWebsiteViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites",{url:"/websites",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:8}}})}]),angular.module("xCallyShuttleApp").controller("ChatWebsiteWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","ChatWebsite",function(a,b,c,d,e,f,g){a.$translate=d,a.forms={formSetting:void 0,formAppearance:void 0,formLabel:void 0,formFunctionality:void 0},a.next=function(){e.wizard().next()},a.exitValidation=function(a){return a},a.item={},a.createItem=function(){return g.save(a.item).$promise.then(function(){f.show(d.instant("MESSAGE_CHAT_WEBSITE_CREATE_SUCCESS"),"success"),c.path("/channels/chat/websites/list")})["catch"](function(a){f.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.chat.websites.wizard",{url:"/wizard",templateUrl:"app/channels/chat/website/wizard/wizard.html",controller:"ChatWebsiteWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts",{url:"/accounts",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxAccountListCtrl",["$scope","$uibModal","gridOptions","FaxAccount",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"chat_websites.csv",columnDefs:[{name:"name"},{name:"description"},{name:"localstationid"},{name:"TrunkName",displayName:"APPLICATION_TRUNK"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/fax/accounts/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/channels/fax/account/list/list.create.modal.html",controller:"FaxAccountListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("FaxAccountListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","FaxAccount","Trunk",function(a,b,c,d,e,f){a.initWizard=function(){return a.form={},a.item={},a.trunks=[],f.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){d.error(a)})},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.list",{url:"/list",templateUrl:"app/channels/fax/account/list/list.html",controller:"FaxAccountListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionListCtrl",["$scope","gridOptions","FaxAccount","$http","$translate","$stateParams",function(a,b,c,d,e,f){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"fax_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.FaxQueue ? row.entity.FaxQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/fax/accounts/view/{{row.entity.FaxAccountId}}/actions/view/{{row.entity.id}}", -name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.list",{url:"/list",templateUrl:"app/channels/fax/account/view/action/list/list.html",controller:"FaxAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","FaxQueue","FaxAccount",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){return a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],n.get({accountId:c.accountId,controller:"applications",id:c.actionId}).$promise.then(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})})["catch"](function(a){f.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var b=["*","*","*","*"],e={app:a.application.app,timeout:a.application.timeout};switch(a.application.app){case"agent":e.UserId=a.application.UserId;break;case"queue":e.FaxQueueId=a.application.FaxQueueId}switch(a.application.intType){case"always":e.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",e.interval=b.join(","),delete a.application.IntervalId;break;case"list":e.IntervalId=a.application.IntervalId}return n.update({accountId:c.accountId,controller:"applications",id:c.actionId},e).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/fax/account/view/action/view/view.html",controller:"FaxAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewActionWizardCtrl",["$scope","$http","Agent","FaxQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","FaxAccount",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var b=["*","*","*","*"],c={app:a.application.app,timeout:a.application.timeout};switch(a.application.app){case"agent":c.UserId=a.application.UserId;break;case"queue":c.FaxQueueId=a.application.FaxQueueId}switch(a.application.intType){case"always":c.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",c.interval=b.join(","),delete a.application.IntervalId;break;case"list":c.IntervalId=a.application.IntervalId}return n.save({accountId:f.accountId,controller:"applications"},c).$promise.then(function(){i.show(g.instant("MESSAGE_WELL_DONE"),"success"),h.path("/channels/fax/accounts/view/"+f.accountId+"/actions/list")})["catch"](function(a){i.error(a)})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/fax/account/view/action/wizard/wizard.html",controller:"FaxAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("FaxDisposition",["$resource",function(a){return a("/api/fax/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","FaxAccount","id","xAlert",function(a,b,c,d,e){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","FaxAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){f.error(a)})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){f.error(a)})},a.deleteDisposition=function(c){return e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){f.error(a)})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/fax/account/view/disposition/modal/add.modal.html",controller:"FaxInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.dispositions",{url:"/dispositions",controller:"FaxAccountDispositionViewCtrl",templateUrl:"app/channels/fax/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountSettingViewCtrl",["$scope","$stateParams","$translate","FaxAccount","List","Trunk","xAlert",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){return a.rate=["2400","4800","7200","9600","12000","14400"],a.techs=["SIP","IAX","DADHI","KHOMP"],f.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){g.error(a)}),e.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){g.error(a)}),d.get({id:b.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){g.error(a)})},a.updateItemFaxAccount=function(){return d.update({id:b.accountId},a.account).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view.settings",{url:"/settings",controller:"FaxAccountSettingViewCtrl",templateUrl:"app/channels/fax/account/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("FaxAccountViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","FaxAccount",function(a,b,c,d,e,f,g,h,i,j){a.initView=function(){return j.get({id:c.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){h.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.view",{url:"/view/:accountId",templateUrl:"app/channels/fax/account/view/view.html",controller:"FaxAccountViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}})}]),angular.module("xCallyShuttleApp").controller("FaxAccountWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler","Trunk","FaxAccount",function(a,b,c,d,e,f,g,h){a.translate=d,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){return a.$translate=d,a.forms={},a.item={},a.rate=["2400","4800","7200","9600","12000","14400"],a.techs=["SIP","IAX","DADHI","KHOMP"],a.item.headerinfo="xCALLY Motion Fax",a.item.ecm="yes",a.item.minrate="4800",a.item.maxrate="14400",a.item.modem="v17,v27,v29",a.item.gateway="no",a.item.faxdetect="no",a.item.t38timeout=5e3,a.item.tech="SIP",g.get().$promise.then(function(b){a.trunks=b.rows})["catch"](function(a){e.error(a)})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return h.save(a.item).$promise.then(function(a){e.show(d.instant("MESSAGE_WELL_DONE"),"success"),c.path("/channels/fax/accounts/list")})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/fax/account/wizard/wizard.html",controller:"FaxAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax",{url:"/fax",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("FaxAccount",["$resource",function(a){return a("/api/fax/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxAttachment",["$resource",function(a){return a("/api/fax/attachments/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").factory("FaxMessage",["$resource",function(a){return a("/api/fax/messages/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxReport",["$resource",function(a){return a("/api/report/faxs/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("FaxRoom",["$resource",function(a){return a("/api/fax/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox",{url:"/inbox",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").directive("faxMessage",["$rootScope","$translate","FaxMessage","List","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"=",listId:"="},templateUrl:"app/channels/fax/inbox/message/message.directive.html",link:function(f){f.openContact=function(c){return f.listId?d.get({listId:f.listId,controller:"contacts",phone:c}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.phone,type:"contact"})})["catch"](function(a){e.error(a)}):void e.show(b.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},f.retry=function(a){return c.update({id:a,status:"SENDING"}).$promise["catch"](function(a){console.error(a)})}}}}]),angular.module("xCallyShuttleApp").directive("faxNote",["$translate","Modal","Auth","FaxMessage","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"="},templateUrl:"app/channels/fax/inbox/note/note.directive.html",link:function(f){f.Auth=c,f.deleteNote=b.confirm["delete"](function(){return d.remove({id:f.message.id}).$promise.then(function(){e.show(a.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.error(a)})})}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalNoteCtrl",["$scope","$uibModalInstance","$translate","id","FaxRoom","xAlert",function(a,b,c,d,e,f){a.initModal=function(){a.item={}},a.ok=function(){return e.save({id:d,controller:"messages"},{text:a.item.text,status:"NOTE"}).$promise.then(function(){f.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})["finally"](function(){b.close()})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").directive("faxRoom",["$cookieStore","$translate","$uibModal","$timeout","FaxAccount","FaxRoom","FaxMessage","FileUploader","xAlert","usSpinnerService","socket","Tag","Auth","FaxAttachment",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/fax/inbox/room/room.directive.html",link:function(o){function p(a){if(a){var b=_.words(a),c=_.map(b,function(a){return a?a[0]:""});return c.join("").toUpperCase()}return!1}o.$on("$destroy",function(){k.unsyncUpdates("fax_message")});var q=[];o.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},o.panelLeft=null,o.panelRight="col-md-12",o.forms={},o.form={from:"",to:"",disabled:!1},k.socket.on("fax_message:remove",function(a){_.remove(o.faxRoom.FaxMessages,{id:a.id})}),k.socket.on("fax_message:save",function(a){return o.workspace.id&&a.FaxRoomId==o.workspace.id?(o.workspace.active||o.workspace.unread++,g.get({id:a.id}).$promise.then(function(a){o.faxRoom||(o.faxRoom={FaxMessages:[]});var b=_.findIndex(o.faxRoom.FaxMessages,{id:a.id});b>-1?_.merge(o.faxRoom.FaxMessages[b],a):o.faxRoom.FaxMessages.unshift(a),o.panelLeft="col-md-6",o.panelRight="col-md-6"})["catch"](function(a){console.error(a)})):void 0});var r=o.uploader=new h({url:"api/fax/attachments",autoUpload:!0,withCredentials:!0,queueLimit:1,headers:{Authorization:"Bearer "+a.get("token")}});return r.filters.push({name:"pdfFilter",fn:function(a,b){var c="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|pdf|".indexOf(c)}}),r.onWhenAddingFileFailed=function(a,c,d){switch(c.name){case"queueLimit":i.show(b.instant("MESSAGE_QUEUE_LIMIT_EXCEEDED"),"danger");break;case"pdfFilter":i.show(b.instant("MESSAGE_WRONG_FILE_FORMAT"),"danger");break;default:i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")}},r.removeFromQueue=function(a){var c=this;return n["delete"]({id:a.basename}).$promise.then(function(){var b=c.getIndexOfItem(a),d=c.queue[b];d.isUploading&&d.cancel(),c.queue.splice(b,1),d._destroy(),c.progress=c._getTotalProgress(),q=_.reject(q,{basename:a.basename})})["catch"](function(){i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},r.onErrorItem=function(){i.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},r.onSuccessItem=function(a,b){var c={path:b.path,name:b.name,basename:b.basename};a=_.merge(a,c),q.push(c)},o.getMessageMailId=function(a){var b=a.UserId?"imgFaxUserId"+a.UserId:"imgFaxVisitorId";return b+=o.faxRoom.id.toString()+a.id.toString()},o.togglePanelLeft=function(){o.panelLeft?(o.panelLeft=null,o.panelRight="col-md-12"):(o.panelLeft="col-md-6",o.panelRight="col-md-6")},o.closeRoom=function(){return c.open({animation:!0,templateUrl:"app/channels/fax/inbox/status/status.modal.html",controller:"FaxInboxStatusModalCtrl",resolve:{status:function(){return o.faxRoom.status},accountId:function(){return o.faxRoom.FaxAccount.id}}}).result.then(function(a){return f.update({id:o.workspace.id},a).$promise["catch"](function(a){i.error(a)})})},o.loadAgents=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.agents.modal.html",controller:"FaxInboxViewModalAgentCtrl",resolve:{roomId:function(){return o.workspace.id}}})},o.cancel=function(){o.form.disabled=!1,o.form.from="",o.form.to=""},o.loadNote=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/note/note.modal.html",controller:"FaxInboxViewModalNoteCtrl",resolve:{id:function(){return o.workspace.id}}})},o.getMessageFaxId=function(a){var b=a.UserId?"imgFaxUserId"+a.UserId:"imgFaxVisitorId";return b+=o.faxRoom.id.toString()+a.id.toString()},o.getMessageRoomAvatar=function(a,b,c,e){d(function(){var d=b?"#imgFaxUserId"+b:"#imgFaxVisitorId";d+=o.faxRoom.id.toString()+a.toString(),angular.element(d).avatar({useGravatar:!1,initials:e?[]:p(c),fallbackImage:e?"api/users/avatar/"+e:"api/users/avatar/unknown_avatar"})})},o.onChanged=function(){return f.update({id:o.workspace.id},{tags:o.form.tags}).$promise["catch"](function(a){i.error(a)})},o.sendFax=function(){j.spin("spinner-grid"),o.form.disabled=!0;var a={from:o.form.from,to:o.form.to||"",status:"SENDING",FaxAttachments:q};return o.faxRoom?f.save({id:o.workspace.id,controller:"messages"},a).$promise.then(function(){r.queue=[],q=[],i.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1}):g.save(a).$promise.then(function(a){return i.show(b.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),f.get({id:"messages",controller:a.id}).$promise}).then(function(a){r.queue=[],q=[],o.workspace.id=a.id,o.workspace.name=a.from,o.faxRoom=a})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1})},l.get().$promise.then(function(a){o.tags=_.map(a.rows,"name")})["catch"](function(a){console.error(a)}),e.get().$promise.then(function(a){o.faxAccounts=a.rows})["catch"](function(a){console.error(a)}),o.workspace.id?(o.panelLeft="col-md-6",o.panelRight="col-md-6",f.get({id:o.workspace.id}).$promise.then(function(a){o.faxRoom=a,o.form.from=a.FaxAccount.localstationid,o.form.tags=a.tags;var b=_.findLast(a.FaxMessages,{status:"RECEIVED"});return b&&(o.form.to=b.from),k.socket.on("fax_room:save",function(a){a.id===o.workspace.id&&_.merge(o.faxRoom,a)}),a}).then(function(a){return m.isAgent()&&"CLOSED"!==a.status?f.update({id:o.workspace.id},{status:"OPEN"}):void 0}).then(function(){return m.isAgent()?f.update({id:o.workspace.id,controller:"agents"},{agents:[m.getCurrentUser().id]}).$promise:void 0})["catch"](function(a){i.error(a)})["finally"](function(){j.stop("spinner-grid"),o.form.disabled=!1})):(o.panelLeft=null,o.panelRight="col-md-12",j.stop("spinner-grid"),void 0)}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxStatusModalCtrl",["$scope","$uibModalInstance","FaxAccount","status","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_FAX"},a.initDisposition=function(){return a.item={disposition:null,status:"CLOSED"},c.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","FaxAccount","FaxRoom","gridOptions","uiGridConstants","Auth","Modal","xAlert","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"faxRoom"});d?d.active=!0:a.workspaces.push({id:b,name:c,type:"faxRoom","class":"icon-paper-plane",active:!0})},a.getPage=function(){h.spin("spinner-grid");var b={accountId:e.id,controller:"rooms"};return a.query&&_.merge(b,a.query),j.query(b).$promise.then(function(b){q.set("faxAccountId",e.id),a.gridOptions.data=b,i.unsyncUpdates("fax_room"),i.socket.on("fax_room:save",function(b){if(b.FaxAccountId==e.id){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status!==b.status?_.remove(a.gridOptions.data,{id:b.id}):_.merge(c,b))}}),i.socket.on("fax_room:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})})["catch"](function(a){p.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.initView=function(){a.id=[],a.isAdmin=n.isAdmin(),a.isAgent=n.isAgent(),a.uncheckable=!1,a.query={status:q.get("faxStatus")?q.get("faxStatus"):"UNMANAGED",tags:q.get("faxTags")?q.get("faxTags"):[]},a.$watch("query.status",function(){q.set("faxStatus",a.query.status),a.getPage(a.query)},!0),j.get().$promise.then(function(b){a.faxAccounts=b.rows})["catch"](function(a){console.error(a)}),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"fax_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"lastEvent",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div> <span data-ng-class=\"{'icon-arrow-up font-green': row.entity.lastEvent === 'SENT', 'icon-arrow-up font-yellow': row.entity.lastEvent === 'SENDING', 'icon-arrow-down font-green': row.entity.lastEvent === 'RECEIVED', 'icon-close font-red': row.entity.lastEvent === 'FAILED', 'icon-question': !row.entity.lastEvent}\"> </span> </div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"from",cellClass:"text-center"},{name:"disposition",displayName:"APPLICATION_DISPOSITION",headerCellFilter:"translate"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:m.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.from)"><i class="fa fa-envelope" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id, row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(a.query)},a.onChanged=function(){q.set("faxTags",a.query.tags),a.getPage(a.query)},a.loadAgents=function(a){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.agents.modal.html",controller:"FaxInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.tagItems=function(){c.open({animation:!0,templateUrl:"app/channels/fax/inbox/view/view.tags.modal.html",controller:"FaxInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.deleteItem=o.confirm["delete"](function(b){var c={id:b};return k.remove(c).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.error(a)})}),a.deleteItems=o.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.error(a)})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/fax/inbox/view/account/list/list.html",controller:"FaxInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","FaxRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h){a.initModal=function(){a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){b.rows.forEach(function(b){a.agents.push(b)})})["catch"](function(a){console.error(a)}),f.query({id:h,controller:"agents"}).$promise.then(function(b){b.forEach(function(b){a.agents.push(b),a.item.agents.push(b.id)})})["catch"](function(a){console.error(a)}),a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{classes:"btn btn-success",text:"APPLICATION_RETRY",click:function(a){b.close(a)}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}},a.ok=function(){return f.update({id:h,controller:"agents",agents:a.item.agents}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewCtrl",["$scope","$timeout","$location","FaxAccount","xAlert",function(a,b,c,d,e){a.initView=function(){return d.get().$promise.then(function(b){var d=null;a.faxAccounts=b.rows,a.faxAccounts.length&&(d="/channels/fax/inbox/view/account/"+a.faxAccounts[0].id+"/list"),d&&c.path(d)})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.inbox.view",{url:"/view",templateUrl:"app/channels/fax/inbox/view/view.html",controller:"FaxInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalStatusCtrl",["$scope","$uibModalInstance","$translate","$stateParams","$location","FaxRoom","xAlert","id","status",function(a,b,c,d,e,f,g,h,i){a.initModal=function(){a.modal={dismissable:!0,title:"APPLICATION_STATUS",html:"<p>"+c.instant("MESSAGE_CHANGE_STATUS")+"<strong> "+i+"</strong>?</p>",status:i,buttons:[{classes:"btn btn-success",text:"APPLICATION_CONFIRM",click:function(a){return f.update({id:h},{status:i}).$promise.then(function(){g.show(c.instant("MESSAGE_STATUS_UPDATE_SUCCESS"),"success"),b.close(a)})["catch"](function(a){g.error(a)})}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}}}]),angular.module("xCallyShuttleApp").controller("FaxInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","FaxRoom","xAlert","id",function(a,b,c,d,e,f,g,h){console.log(h),a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").factory("FaxQueue",["$resource",function(a){return a("/api/fax/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FaxQueueListCtrl",["$scope","FaxQueue","gridOptions","Auth","$uibModal",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var e={exporterCsvFilename:"fax_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"strategy"},{name:"timeout"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/fax/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow", -href:"/channels/fax/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===d.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a)},a.createItem=function(){var b=e.open({animation:!0,templateUrl:"app/channels/fax/queue/list/list.create.modal.html",controller:"FaxQueueListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("FaxQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","FaxQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues.list",{url:"/list",templateUrl:"app/channels/fax/queue/list/list.html",controller:"FaxQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","FaxQueue","Team","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return f.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return f["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return f.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){e.show(a.message,"danger")})},a.updateFaxQueue=function(){return f.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.message,"danger")})},a.getTeams=function(){return g.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,f.get({id:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindMailQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasFaxQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.queues.view",{url:"/view/:id",templateUrl:"app/channels/fax/queue/view/view.html",controller:"FaxQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.fax.queues.view.settings",{url:"/settings",templateUrl:"app/channels/fax/queue/view/view.settings.html"}).state("main.channels.fax.queues.view.agents",{url:"/agents",templateUrl:"app/channels/fax/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:10}}})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","FaxQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.faxPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_fax_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PFaxQueues,"id"),b.FaxQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.FaxQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_fax_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.FaxQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.faxPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.FaxQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.faxQueues=b.rows,e.syncUpdates("fax_queue",a.faxQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.faxQueues=[];var t={controller:"realtime",controller1:"fax",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"faxPause",width:300,displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.faxQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_fax_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/fax/realtime/view/agent/queue.modal.add.html",controller:"FaxRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.faxQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.faxQueues,function(a){return _.includes(b.queues,a.id)}),channel:"fax",data1:e,data3:b.queues.join(","),data4:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"fax",data1:a,data3:b,data4:"fax"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/fax/realtime/view/agent/agent.modal.info.html",controller:"FaxRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/fax/realtime/view/agent/agent.html",controller:"FaxRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportFaxSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_fax_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_fax_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_fax_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/fax/realtime/view/application/application.html",controller:"FaxRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("FaxRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.fax.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.fax.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.fax.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.fax.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.fax.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.fax.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.fax.realtime.view",{url:"/view",templateUrl:"app/channels/fax/realtime/view/view.html",controller:"FaxRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportFaxRoom",["$resource",function(a){return a("/api/report/fax/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportFaxSession",["$resource",function(a){return a("/api/report/fax/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailAccount",["$resource",function(a){return a("/api/mail/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts",{url:"/accounts",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailAccountListCtrl",["$scope","$stateParams","gridOptions","MailAccount","socket",function(a,b,c,d,e){a.$on("$destroy",function(){e.unsyncUpdates("mail_server_in")}),a.initView=function(){e.socket.on("mail_server_in:save",function(b){var c=_.find(a.gridOptions.data,{id:b.MailAccountId});c&&(c.MailServerIn.state=b.state,c.MailServerIn.source=JSON.parse(b.source))});var f={exporterCsvFilename:"mail_accounts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"address"},{name:"MailServerIn.state",width:100,cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span class=\"label label-sm\" data-ng-class=\"row.entity.MailServerIn.state === 'CONNECTED' ? 'label-success' : 'label-danger'\">{{row.entity.MailServerIn.state}}</span></div>",displayName:"IMAP",enableSorting:!1,enableFiltering:!1},{name:"MailServerOut.state",width:110,cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span class=\"label label-sm\" data-ng-class=\"row.entity.MailServerOut.state === 'CONNECTED' ? 'label-success' : 'label-danger'\">{{row.entity.MailServerOut.state}}</span></div>",displayName:"SMTP",enableSorting:!1,enableFiltering:!1},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/mail/accounts/view/{{row.entity.id}}/settings",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,f,a,{accountId:b.accountId})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.list",{url:"/list",templateUrl:"app/channels/mail/account/list/list.html",controller:"MailAccountListCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailServerIn",["$resource",function(a){return a("/api/mail/servers/in/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailServerOut",["$resource",function(a){return a("/api/mail/servers/out/:id/:controller",{id:"@id"},{update:{method:"PUT"},test:{method:"GET"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionListCtrl",["$scope","gridOptions","MailAccount","$http","$translate","$stateParams",function(a,b,c,d,e,f){a.initActons=function(){var d={draggable:!0,exporterCsvFilename:"mail_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.MailQueue ? row.entity.MailQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/mail/accounts/view/{{row.entity.MailAccountId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.list",{url:"/list",templateUrl:"app/channels/mail/account/view/action/list/list.html",controller:"MailAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","MailQueue",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],b.get("/api/mail/applications/"+c.actionId).success(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})}).error(function(a){console.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var e=["*","*","*","*"],g={app:a.application.app,timeout:a.application.timeout,MailAccountId:c.id};switch(a.application.app){case"agent":g.UserId=a.application.UserId;break;case"queue":g.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":g.interval=e.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(e[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?e[1]="*":e[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?e[2]="*":e[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?e[3]="*":e[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=e.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}b.put("/api/mail/applications/"+c.actionId,g).success(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.view",{url:"/view/:actionId",templateUrl:"app/channels/mail/account/view/action/view/view.html",controller:"MailAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewActionWizardCtrl",["$scope","$http","Agent","MailQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var c=["*","*","*","*"],d={app:a.application.app,timeout:a.application.timeout,MailAccountId:f.accountId};switch(a.application.app){case"agent":d.UserId=a.application.UserId;break;case"queue":d.MailQueueId=a.application.MailQueueId}switch(a.application.intType){case"always":d.interval=c.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(c[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?c[1]="*":c[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?c[2]="*":c[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?c[3]="*":c[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",d.interval=c.join(","),delete a.application.IntervalId;break;case"list":d.IntervalId=a.application.IntervalId}b.post("/api/mail/applications",d).success(function(){h.path("/channels/mail/accounts/view/"+f.accountId+"/actions/list")}).error(function(a){console.error(a)})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.actions.wizard",{url:"/wizard",templateUrl:"app/channels/mail/account/view/action/wizard/wizard.html",controller:"MailAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailDisposition",["$resource",function(a){return a("/api/mail/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","MailAccount","id","xAlert","$translate",function(a,b,c,d,e,f){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){e.show(f.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","MailAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/mail/account/view/disposition/modal/add.modal.html",controller:"MailInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.dispositions",{url:"/dispositions",controller:"MailAccountDispositionViewCtrl",templateUrl:"app/channels/mail/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("MailAccountSettingViewCtrl",["$scope","$http","$stateParams","$translate","$location","$timeout","socket","xAlert","MailAccount","MailMessage","MailServerIn","MailServerOut","usSpinnerService","List","Template",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a.imapDisabled=!1,a.smtpDisabled=!1,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.$on("$destroy",function(){g.socket.removeAllListeners("mail_message:sent"),g.socket.removeAllListeners("mail_message:failed")}),a.initView=function(){return g.socket.on("mail_message:sent",function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success"),m.stop("spinner-grid")}),g.socket.on("mail_message:failed",function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"),m.stop("spinner-grid")}),n.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)}),o.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)}),i.get({id:c.accountId}).$promise.then(function(b){a.account=b,a.account.MailServerIn.source=JSON.parse(a.account.MailServerIn.source),a.account.MailServerOut.source=JSON.parse(a.account.MailServerOut.source),g.socket.on("mail_server_in:state",function(b){if(b.id===a.account.MailServerIn.id)switch(a.account.MailServerIn.state=b.state, -a.account.MailServerIn.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:m.stop("spinner-grid"),a.imapDisabled=!1}}),g.socket.on("mail_server_out:state",function(b){if(b.id===a.account.MailServerOut.id)switch(a.account.MailServerOut.state=b.state,a.account.MailServerOut.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:m.stop("spinner-grid"),a.smtpDisabled=!1}})})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailAccount=function(){return i.update({id:c.accountId},{name:a.account.name,description:a.account.description,address:a.account.address,fidelity:a.account.fidelity,timeout:a.account.timeout,ListId:a.account.ListId,TemplateId:a.account.TemplateId}).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailServerIn=function(){var b=angular.copy(a.account.MailServerIn);return delete b.source,m.spin("spinner-grid"),a.imapDisabled=!0,k.update({id:b.id},b).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updateItemMailServerOut=function(){var b=angular.copy(a.account.MailServerOut);return delete b.source,m.spin("spinner-grid"),a.smtpDisabled=!0,l.update({id:b.id},b).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.test=function(){return m.spin("spinner-grid"),a.smtpDisabled=!0,l.update({id:a.account.MailServerOut.id},{state:"CONNECTING"}).$promise["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view.settings",{url:"/settings",controller:"MailAccountSettingViewCtrl",templateUrl:"app/channels/mail/account/view/setting/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("MailAccountViewCtrl",["$scope","$stateParams","MailAccount",function(a,b,c){a.initView=function(){return c.get({id:b.accountId}).$promise.then(function(b){a.account=b})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.view",{url:"/view/:accountId",controller:"MailAccountViewCtrl",templateUrl:"app/channels/mail/account/view/view.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}})}]),angular.module("xCallyShuttleApp").controller("MailAccountWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","MailAccount",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.forms={},a.item={MailServerIn:{port:993,ssl:!0,"delete":!1,protocol:"IMAP",filter:"UNSEEN",mailbox:"INBOX",keepalive:!0,authTimeout:5,connTimeout:10},MailServerOut:{port:465,ssl:!0}}},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a},a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/channels/mail/accounts/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/mail/account/wizard/wizard.html",controller:"MailAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox",{url:"/inbox",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").directive("mailMessage",["$rootScope","$translate","MailMessage","List","xAlert","Lightbox",function(a,b,c,d,e,f){return{restrict:"E",scope:{message:"=",listId:"="},templateUrl:"app/channels/mail/inbox/message/message.directive.html",link:function(g){g.openPreview=function(a){f.openModal(["api/mail/attachments/"+a],0)},g.openContact=function(c){return g.listId?d.get({listId:g.listId,controller:"contacts",email:c}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.email,type:"contact"})})["catch"](function(a){console.error(a)}):void e.show(b.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")},g.retry=function(a){return c.update({id:a,status:"SENDING"}).$promise["catch"](function(a){console.error(a)})}}}}]),angular.module("xCallyShuttleApp").directive("mailNote",["$translate","Modal","Auth","MailMessage","xAlert",function(a,b,c,d,e){return{restrict:"E",scope:{message:"="},templateUrl:"app/channels/mail/inbox/note/note.directive.html",link:function(f){f.Auth=c,f.deleteNote=b.confirm["delete"](function(){return d.remove({id:f.message.id}).$promise.then(function(){e.show(a.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})})}}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalNoteCtrl",["$scope","$uibModalInstance","$translate","id","MailRoom","xAlert",function(a,b,c,d,e,f){a.initModal=function(){a.item={}},a.ok=function(){return e.save({id:d,controller:"messages"},{text:a.item.text,status:"NOTE"}).$promise.then(function(){f.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){f.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close()})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").directive("mailRoom",["$rootScope","$cookieStore","$translate","$uibModal","$timeout","Tag","CannedAnswer","MailAttachment","MailAccount","MailRoom","MailMessage","FileUploader","xAlert","usSpinnerService","socket","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return{restrict:"E",scope:{workspace:"="},templateUrl:"app/channels/mail/inbox/room/room.directive.html",link:function(e){function q(a){return a?"<br><blockquote>"+a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\n/g,"<br>")+"</blockquote>":void 0}e.$on("$destroy",function(){o.unsyncUpdates("mail_message")});var r=[];e.options={language:a.language,allowedContent:!0,entities:!1,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]}]},e.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},e.panelLeft=null,e.panelRight="col-md-12",e.forms={},e.form={from:[],to:[],sto:[],cc:[],scc:[],tags:[],html:"",disabled:!1},o.socket.on("mail_message:remove",function(a){_.remove(e.mailRoom.MailMessages,{id:a.id})}),o.socket.on("mail_message:save",function(a){return e.workspace.id&&a.MailRoomId==e.workspace.id?(e.workspace.active||e.workspace.unread++,k.get({id:a.id}).$promise.then(function(a){e.mailRoom||(e.mailRoom={MailMessages:[]});var b=_.findIndex(e.mailRoom.MailMessages,{id:a.id});b>-1?_.merge(e.mailRoom.MailMessages[b],a):e.mailRoom.MailMessages.unshift(a),e.panelLeft="col-md-6",e.panelRight="col-md-6"})["catch"](function(a){console.error(a)})):void 0});var s=e.uploader=new l({url:"api/mail/attachments",autoUpload:!0,withCredentials:!0,headers:{Authorization:"Bearer "+b.get("token")}});return s.removeFromQueue=function(a){var b=this;return h["delete"]({id:a.basename}).$promise.then(function(){var c=b.getIndexOfItem(a),d=b.queue[c];d.isUploading&&d.cancel(),b.queue.splice(c,1),d._destroy(),b.progress=b._getTotalProgress(),r=_.reject(r,{basename:a.basename})})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},s.onErrorItem=function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},s.onSuccessItem=function(a,b){var c={size:b.size,path:b.path,name:b.name,basename:b.basename,type:b.type};a=_.merge(a,c),r.push(c)},e.openRoom=function(b){var c=_.find(a.workspaces,{id:b,type:"mailRoom"});c?c.active=!0:a.workspaces.push({id:b,type:"mailRoom","class":"icon-envelope",active:!0})},e.togglePanelLeft=function(){e.panelLeft?(e.panelLeft=null,e.panelRight="col-md-12"):(e.panelLeft="col-md-6",e.panelRight="col-md-6")},e.onSelectAnswer=function(){e.form.html=e.modelOptions.selectedAnswer+e.form.html,delete e.modelOptions.selectedAnswer},e.getAnswers=function(a){return g.get({key:a}).$promise.then(function(a){return _.map(a.rows,"value")})},e.cancel=function(){e.form.disabled=!1,e.form.from=[],e.form.to=[],e.form.sto=[],e.form.cc=[],e.form.scc=[],delete e.form.subject,delete e.form.html},e.updateStatus=function(a){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/status/status.modal.html",controller:"MailInboxStatusModalCtrl",resolve:{roomId:function(){return e.workspace.id},accountId:function(){return e.mailRoom.MailAccount.id},status:function(){return a}}})},e.loadAgents=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.agents.modal.html",controller:"MailInboxViewModalAgentCtrl",resolve:{roomId:function(){return e.workspace.id}}})},e.loadTemplate=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.templates.modal.html",controller:"MailInboxViewModalTemplateCtrl"}).result.then(function(a){e.form.subject=a.template.subject,e.form.html=a.template.html})},e.closeRoom=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/status/status.modal.html",controller:"MailInboxStatusModalCtrl",resolve:{status:function(){return e.mailRoom.status},accountId:function(){return e.mailRoom.MailAccount.id}}}).result.then(function(a){return j.update({id:e.workspace.id},a).$promise["catch"](function(a){m.show(a.data.message,"danger")})})},e.loadNote=function(){return d.open({animation:!0,templateUrl:"app/channels/mail/inbox/note/note.modal.html",controller:"MailInboxViewModalNoteCtrl",resolve:{id:function(){return e.workspace.id}}})},e.onChanged=function(){return j.update({id:e.workspace.id},{tags:e.form.tags}).$promise["catch"](function(a){console.error(a)})},e.sendMail=function(){n.spin("spinner-grid"),e.form.disabled=!0;var a={},b={subject:e.form.subject||e.mailRoom.subject,from:e.form.from,to:e.form.sto||[],cc:e.form.scc||[],html:e.form.html||null,text:e.form.text||null,inReplyTo:a.messageId||null,status:"SENDING",MailAttachments:r};return e.mailRoom?(a=_.last(e.mailRoom.MailMessages,{status:"RECEIVED"}),b.inReplyTo=a.messageId||null,j.save({id:e.workspace.id,controller:"messages"},b).$promise.then(function(){e.form.html="",s.queue=[],r=[],m.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})):k.save(b).$promise.then(function(a){return m.show(c.instant("MESSAGE_MAIL_MESSAGE_SEND_SUCCESS"),"success"),j.get({id:"messages",controller:a.id}).$promise}).then(function(a){e.form.html="",s.queue=[],r=[],e.workspace.id=a.id,e.workspace.name=a.subject,e.mailRoom=a})["catch"](function(){m.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})},f.get().$promise.then(function(a){e.tags=_.map(a.rows,"name")})["catch"](function(a){console.error(a)}),i.get().$promise.then(function(a){e.mailAccounts=a.rows})["catch"](function(a){console.error(a)}),e.workspace.id?(e.panelLeft="col-md-6",e.panelRight="col-md-6",j.get({id:e.workspace.id}).$promise.then(function(a){e.mailRoom=a,e.workspace.name=a.subject||"No subject",e.form.from.push(a.MailAccount.address),e.form.tags=a.tags;var b=_.findLast(e.mailRoom.MailMessages,{status:"RECEIVED"});return b&&(e.form.to=e.form.cc=e.form.bcc=_.union(b.from,b.to,b.cc,b.bcc),e.form.sto=_.remove(e.form.to,function(b){return b!==a.MailAccount.address}),e.form.subject="Re: "+(b.subject||"No subject"),e.form.html=q(b.text)),o.socket.on("mail_room:save",function(a){a.id===e.workspace.id&&_.merge(e.mailRoom,a)}),a}).then(function(a){return p.isAgent()&&"CLOSED"!==a.status?j.update({id:e.workspace.id},{status:"OPEN"}):void 0}).then(function(){return p.isAgent()?j.update({id:e.workspace.id,controller:"agents"},{agents:[p.getCurrentUser().id]}).$promise:void 0})["catch"](function(a){console.error(a)})["finally"](function(){n.stop("spinner-grid"),e.form.disabled=!1})):(e.panelLeft=null,e.panelRight="col-md-12",n.stop("spinner-grid"),void 0)}}}]),angular.module("xCallyShuttleApp").controller("MailInboxStatusModalCtrl",["$scope","$uibModalInstance","MailAccount","status","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_MAIL"},a.initDisposition=function(){return a.item={disposition:null,status:"CLOSED"},c.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","MailAccount","MailRoom","uiGridConstants","Auth","Modal","xAlert","localStorageService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"mailRoom"});d?d.active=!0:a.workspaces.push({id:b,type:"mailRoom","class":"icon-envelope",active:!0})},a.getPage=function(){h.spin("spinner-grid");var b={accountId:e.id,controller:"rooms"};return a.query&&_.merge(b,a.query),j.query(b).$promise.then(function(b){p.set("mailAccountId",e.id),a.gridOptions.data=b,i.unsyncUpdates("mail_room"),i.socket.on("mail_room:save",function(b){if(b.MailAccountId==e.id){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status!==b.status?_.remove(a.gridOptions.data,{id:b.id}):_.merge(c,b))}}),i.socket.on("mail_room:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})})["catch"](function(a){console.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.initView=function(){a.id=[],a.isAdmin=m.isAdmin(),a.isAgent=m.isAgent(),a.uncheckable=!1,a.query={status:p.get("mailStatus")?p.get("mailStatus"):"UNMANAGED",tags:p.get("mailTags")?p.get("mailTags"):[]},a.$watch("query.status",function(){p.set("mailStatus",a.query.status),a.getPage()},!0),j.get().$promise.then(function(b){a.mailAccounts=b.rows})["catch"](function(a){console.error(a)}),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"mail_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"lastEvent",displayName:"",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div> <span data-ng-class=\"{'icon-arrow-up font-green': row.entity.lastEvent === 'SENT', 'icon-arrow-up font-yellow': row.entity.lastEvent === 'SENDING', 'icon-arrow-down font-green': row.entity.lastEvent === 'RECEIVED', 'icon-close font-red': row.entity.lastEvent === 'FAILED', 'icon-question': !row.entity.lastEvent}\"> </span> </div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"attachment",displayName:"",headerCellTemplate:'<i class="icon-paper-clip" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.attachment ? 'icon-paper-clip' : ''\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!0,enableColumnMenu:!1},{name:"subject"},{name:"from",cellClass:"text-center"},{name:"disposition",displayName:"APPLICATION_DISPOSITION",headerCellFilter:"translate"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:l.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.subject)"><i class="fa fa-envelope" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id, row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},a.getPage(a.query)},a.onChanged=function(){p.set("mailTags",a.query.tags),a.getPage(a.query)},a.loadAgents=function(a){return c.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.agents.modal.html",controller:"MailInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.tagItems=function(){return c.open({animation:!0,templateUrl:"app/channels/mail/inbox/view/view.tags.modal.html",controller:"MailInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[]})},a.deleteItem=n.confirm["delete"](function(b){var c={id:b};return k.remove(c).$promise.then(function(){a.getPage(),o.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){o.show(a.message?a.message:a.data.message,"danger")})}),a.deleteItems=n.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),o.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){o.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/mail/inbox/view/account/list/list.html",controller:"MailInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","Auth","MailRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h,i){var j=[];a.initModal=function(){return a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){for(var c=0;c<b.rows.length;c++)a.agents.push(b.rows[c]);return g.query({id:i,controller:"agents"}).$promise}).then(function(b){for(var c=0;c<b.length;c++)f.isAgent()||a.item.agents.push(b[c]),j.push(b[c].id)})["catch"](function(a){console.error(a)})},a.ok=function(){return j=f.isAgent()?_.union(j,a.item.agents):angular.copy(a.item.agents),g.update({id:i,controller:"agents",agents:j}).$promise.then(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewCtrl",["$scope","$timeout","$location","localStorageService","MailAccount",function(a,b,c,d,e){a.initView=function(){return console.log("ok"),e.get().$promise.then(function(b){var e=null;a.mailAccounts=b.rows,a.mailAccounts.length&&(e="/channels/mail/inbox/view/account/"+(d.get("mailAccountId")||a.mailAccounts[0].id)+"/list"),e&&c.path(e)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.inbox.view",{url:"/view",templateUrl:"app/channels/mail/inbox/view/view.html",controller:"MailInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css","assets/css/global/ui-grid-inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","MailRoom","xAlert","id",function(a,b,c,d,e,f,g,h){a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("MailInboxViewModalTemplateCtrl",["$scope","$uibModalInstance","Template",function(a,b,c){a.initModal=function(){return a.item={},c.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail",{url:"/mail",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("MailReport",["$resource",function(a){return a("/api/report/mails/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("MailRoom",["$resource",function(a){return a("/api/mail/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").factory("MailAttachment",["$resource",function(a){return a("/api/mail/attachments/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").factory("MailMessage",["$resource",function(a){return a("/api/mail/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MailQueueListCtrl",["$scope","MailQueue","gridOptions","$uibModal","Auth",function(a,b,c,d,e){a.initView=function(){a.Auth=e;var d={exporterCsvFilename:"voice_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"timeout"},{name:"strategy"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/mail/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/mail/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===e.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/mail/queue/list/list.create.modal.html",controller:"MailQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("MailQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","MailQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues.list",{url:"/list",templateUrl:"app/channels/mail/queue/list/list.html",controller:"MailQueueListCtrl"})}]),angular.module("xCallyShuttleApp").factory("MailQueue",["$resource",function(a){return a("/api/mail/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/scripts/components-dropdowns.js"]})}]},data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","Team","MailQueue","Auth",function(a,b,c,d,e,f,g,h){a.Auth=h;var i=function(){return{select:function(b){return g.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return g["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return g.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){console.error(a)})},a.updateMailQueue=function(){return g.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getTeams=function(){return f.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,g.get({id:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindMailQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasMailQueue.penalty}}),i)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.queues.view",{url:"/view/:id",templateUrl:"app/channels/mail/queue/view/view.html",controller:"MailQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.mail.queues.view.settings",{url:"/settings",templateUrl:"app/channels/mail/queue/view/view.settings.html"}).state("main.channels.mail.queues.view.agents",{url:"/agents",templateUrl:"app/channels/mail/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:9}}})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","MailQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.mailPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_mail_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PMailQueues,"id"),b.MailQueueId)||n.isAdmin();if(c){var d=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0});if(d){var e=a.gridOptions.data.indexOf(d);a.gridOptions.data.splice(e+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.MailQueueId,agent:b.membername,online:d.online})}}}),e.socket.on("user_has_mail_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.MailQueueId})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.mailPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.MailQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.mailQueues=b.rows,e.syncUpdates("mail_queue",a.mailQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.mailQueues=[];var t={controller:"realtime",controller1:"mail",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>', -filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"mailPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.mailQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_mail_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/mail/realtime/view/agent/queue.modal.add.html",controller:"MailRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.mailQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.mailQueues,function(a){return _.includes(b.queues,a.id)}),channel:"mail",data1:e,data3:b.queues.join(","),data4:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"mail",data1:a,data3:b,data4:"mail"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/mail/realtime/view/agent/agent.modal.info.html",controller:"MailRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/mail/realtime/view/agent/agent.html",controller:"MailRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportMailSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_mail_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_mail_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_mail_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/mail/realtime/view/application/application.html",controller:"MailRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("MailRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.mail.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.mail.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.mail.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.mail.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.mail.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.mail.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.mail.realtime.view",{url:"/view",templateUrl:"app/channels/mail/realtime/view/view.html",controller:"MailRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportMailRoom",["$resource",function(a){return a("/api/report/mail/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportMailSession",["$resource",function(a){return a("/api/report/mail/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:12}}})}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(b){return j.spin("spinner-grid"),g.get(p).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){b&&n(),j.stop("spinner-grid")})}function n(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c&&_.merge(c,b)}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}function o(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}var p={controller:"realtime",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.name}} <{{row.entity.internal}}></div>"},{name:"online",displayName:"APPLICATION_ONLINE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"pauseStatus",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span class="left-margin"><i data-ng-if="row.entity.voicePause || row.entity.mailPause || row.entity.chatPause || row.entity.faxPause || row.entity.smsPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,null)" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i> <i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.id,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i></span><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.id,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select><span data-ng-if="row.entity.voicePause || row.entity.mailPause || row.entity.chatPause || row.entity.faxPause || row.entity.smsPause"> [{{row.entity.pauseType}}]<timer start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000"> [{{hhours}}:{{mminutes}}:{{sseconds}}]</timer></span></div>'},{name:"voicePause",displayName:"APPLICATION_VOICE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.voicePause}"><span class="left-margin"><i data-ng-if="row.entity.voicePause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'voice\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"mailPause",displayName:"APPLICATION_MAIL",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.mailPause}"><span class="left-margin"><i data-ng-if="row.entity.mailPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'mail\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"chatPause",displayName:"APPLICATION_CHAT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.chatPause}"><span class="left-margin"><i data-ng-if="row.entity.chatPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'chat\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"faxPause",displayName:"APPLICATION_FAX",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.faxPause}"><span class="left-margin"><i data-ng-if="row.entity.faxPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'fax\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"smsPause",displayName:"APPLICATION_SMS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online" data-ng-class="{\'paused-agent\':row.entity.smsPause}"><span class="left-margin"><i data-ng-if="row.entity.smsPause" data-ng-click="grid.appScope.pause(row.entity.id,\'unpause\',null,\'sms\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i></span></div>',filter:{type:l.filter.SELECT,selectOptions:[{value:"true",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_NOT_PAUSED")}]},enableSorting:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){q(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?p.order=null:p.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),m()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){p.offset=(a-1)*b,p.limit=b,m()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?p[a.name]=a.filters[0].term:delete p[a.name]}),m()})}},m(!0),o()};var q=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent")}),a.pause=function(b,c,e,g){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:g||"all"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(d.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/realtime/view/agent/agent.html",controller:"RealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("RealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("RealtimeViewCtrl",["$scope",function(a){}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.realtime.view",{url:"/view",templateUrl:"app/channels/realtime/view/view.html",controller:"RealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("ReportCall",["$resource",function(a){return a("/api/report/calls/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsAccount",["$resource",function(a){return a("/api/sms/accounts/:accountId/:controller/:id",{id:"@accountId"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts",{url:"/accounts",template:"<div ui-view></div>",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsAccountListCtrl",["$scope","SmsAccount","gridOptions","$stateParams","xAlert","$translate",function(a,b,c,d,e,f){a.message="Hello",a.initView=function(){var e={exporterCsvFilename:"sms_accounts.csv",columnDefs:[{name:"id",displayName:"ID",cellClass:"text-center",width:75,enableSorting:!1,enableFiltering:!1},{name:"name"},{name:"description"},{name:"type",displayName:"APPLICATION_ACCOUNT_TYPE"},{name:"action",buttons:[{"class":"blue-hoki",href:"/channels/sms/accounts/view/{{row.entity.id}}/settings",name:"profile"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,e,a,{accountId:d.accountId})},a.checkAccount=function(a){return b.get({accountId:a,controller:"check"}).$promise.then(function(){e.show(f.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(a){e.show(f.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.list",{url:"/list",templateUrl:"app/channels/sms/account/list/list.html",controller:"SmsAccountListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action",{url:"/actions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SmsApplication",["$resource",function(a){return a("/api/sms/applications/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionListCtrl",["$scope","gridOptions","SmsAccount","$http","$translate","$stateParams","xAlert",function(a,b,c,d,e,f,g){console.log("SmsAccountViewActionListCtrl"),c.get({accountId:f.accountId,controller:"applications"}).$promise.then(function(a){console.log("apps",a)})["catch"](function(a){g.show(a.message,"danger")}),a.initActions=function(){var d={draggable:!0,exporterCsvFilename:"sms_applications.csv",enableSorting:!1,enableFiltering:!1,columnDefs:[{name:"app",cellClass:"text-center"},{name:"name",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>{{row.entity.SmsQueue ? row.entity.SmsQueue.name : row.entity.User.name}}</span></div>"},{name:"timeout",cellClass:"text-center"},{name:"interval",cellClass:"text-center"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/sms/accounts/view/{{row.entity.SmsAccountId}}/actions/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.app, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a,{accountId:f.accountId,controller:"applications"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.list",{url:"/list",templateUrl:"app/channels/sms/account/view/action/list/list.html",controller:"SmsAccountViewActionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionViewCtrl",["$scope","$http","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","Agent","Interval","SmsQueue","SmsApplication",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initAction=function(){a.$application=i.application,a.$stateParams=c,a.$interval=j.interval,a.forms={},a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],b.get("/api/sms/applications/"+c.actionId).success(function(b){if(a.application=b,a.application.alwaysTime=!1,a.application.IntervalId)a.application.intType="list";else switch(a.application.interval){case"*,*,*,*":a.application.intType="always";break;default:a.application.intType="custom"}var c=a.application.interval.split(",");"*"===c[0]?a.application.alwaysTime=!0:(a.application.t_from=moment(new Date),a.application.t_to=moment(new Date),a.application.t_from.hour(c[0].split("-")[0].split(":")[0]),a.application.t_from.minute(c[0].split("-")[0].split(":")[1]),a.application.t_to.hour(c[0].split("-")[1].split(":")[0]),a.application.t_to.minute(c[0].split("-")[1].split(":")[1])),"*"===c[1]?(a.application.wd_from="always",a.application.wd_to="always"):(a.application.wd_from=c[1].split("-")[0],a.application.wd_to=c[1].split("-")[1]),"*"===c[2]?(a.application.md_from="always",a.application.md_to="always"):(a.application.md_from=c[2].split("-")[0],a.application.md_to=c[2].split("-")[1]),"*"===c[3]?(a.application.m_from="always",a.application.m_to="always"):(a.application.m_from=c[3].split("-")[0],a.application.m_to=c[3].split("-")[1]),a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})}).error(function(a){console.error(a)})},a.getQueues=function(){return m.get().$promise.then(function(b){a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return k.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return l.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.updateItem=function(){var b=["*","*","*","*"],g={app:a.application.app,timeout:a.application.timeout,SmsAccountId:c.id};switch(a.application.app){case"agent":g.UserId=a.application.UserId;break;case"queue":g.SmsQueueId=a.application.SmsQueueId}switch(a.application.intType){case"always":g.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",g.interval=b.join(","),delete a.application.IntervalId;break;case"list":g.IntervalId=a.application.IntervalId}return n.update({id:c.actionId},g).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success"),e.path("/channels/sms/accounts/view/"+c.accountId+"/actions/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.view",{url:"/view/:actionId",templateUrl:"app/channels/sms/account/view/action/view/view.html",controller:"SmsAccountViewActionViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewActionWizardCtrl",["$scope","$http","Agent","SmsQueue","Interval","$stateParams","$translate","$location","xAlert","WizardHandler","socket","application","interval","SmsApplication",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.apps=[{name:"Queue",value:"queue"},{name:"Agent",value:"agent"}],a.$application=l.application,a.$stateParams=f,a.$interval=m.interval,a.forms={},a.application={alwaysTime:!0},a.$watch("application.t_from",function(b){a.application.t_from_hm=moment(b).format("HH:mm")}),a.$watch("application.t_to",function(b){a.application.t_to_hm=moment(b).format("HH:mm")})},a.getQueues=function(){return d.get().$promise.then(function(b){console.log(b),a.queues=b.rows})["catch"](function(a){console.error(a)})},a.getAgents=function(){return c.get().$promise.then(function(b){a.agents=b.rows})["catch"](function(a){console.error(a)})},a.getIntervals=function(){return e.get().$promise.then(function(b){a.intervals=b.rows})["catch"](function(a){console.error(a)})},a.createItem=function(){var b=["*","*","*","*"];console.log(a.application);var c={app:a.application.app,timeout:a.application.timeout,SmsAccountId:f.accountId};switch(a.application.app){case"agent":c.UserId=a.application.UserId;break;case"queue":c.SmsQueueId=a.application.SmsQueueId}switch(a.application.intType){case"always":c.interval=b.join(","),delete a.application.IntervalId;break;case"custom":a.application.alwaysTime||(b[0]=a.application.alwaysTime?"*":a.application.t_from_hm+"-"+a.application.t_to_hm),a.application.wd_from&&a.application.wd_to&&"always"===a.application.wd_from&&"always"===a.application.wd_to?b[1]="*":b[1]=a.application.wd_from&&a.application.wd_to?a.application.wd_from+"-"+a.application.wd_to:"*",a.application.md_from&&a.application.md_to&&"always"===a.application.md_from&&"always"===a.application.md_to?b[2]="*":b[2]=a.application.md_from&&a.application.md_to?a.application.md_from+"-"+a.application.md_to:"*",a.application.m_from&&a.application.m_to&&"always"===a.application.m_from&&"always"===a.application.m_to?b[3]="*":b[3]=a.application.m_from&&a.application.m_to?a.application.m_from+"-"+a.application.m_to:"*",c.interval=b.join(","),delete a.application.IntervalId;break;case"list":c.IntervalId=a.application.IntervalId}return console.log(c),n.save(c).$promise.then(function(){h.path("/channels/sms/accounts/view/"+f.accountId+"/actions/list")})["catch"](function(a){i.show(a.data.message,"danger")})},a.formValidation=function(a){return a},a.next=function(){j.wizard().next()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.action.wizard",{url:"/wizard",templateUrl:"app/channels/sms/account/view/action/wizard/wizard.html",controller:"SmsAccountViewActionWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("SmsDisposition",["$resource",function(a){return a("/api/sms/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModaDispositionAddCtrl",["$scope","$uibModalInstance","SmsAccount","id",function(a,b,c,d){a.ok=function(){return c.save({accountId:d,controller:"dispositions"},{name:a.name}).$promise.then(function(a){b.close(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsAccountDispositionViewCtrl",["$scope","$stateParams","$uibModal","$translate","SmsAccount","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get({accountId:b.accountId,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,c){return e.update({accountId:b.accountId,controller:"dispositions",id:a},{name:c}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(c){return console.log("delete"),e.remove({accountId:b.accountId,controller:"dispositions",id:c}).$promise.then(function(){_.remove(a.dispositions,{id:c})})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/sms/account/view/disposition/modal/add.modal.html",controller:"SmsInboxViewModaDispositionAddCtrl",resolve:{id:function(){return b.accountId}}}).result.then(function(b){b&&a.dispositions.push(b); -})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view.dispositions",{url:"/dispositions",controller:"SmsAccountDispositionViewCtrl",templateUrl:"app/channels/sms/account/view/disposition/view/view.html"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountViewCtrl",["$scope","SmsAccount","$http","$stateParams","clipboard","$translate","$location","xAlert","List",function(a,b,c,d,e,f,g,h,i){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.copyToClipboard=function(a){e.copyText(a),h.show(f.instant("MESSAGE_TEXT_COPIED_CLIPBOARD")+"!","success")},a.initView=function(){return a.account={},i.get().$promise.then(function(b){a.lists=b.rows})["catch"](function(a){console.error(a)}),b.get({id:d.accountId}).$promise.then(function(b){a.account=b,console.log(b)})["catch"](function(a){h.show(a.message,"danger")})},a.$watch("account.remote",function(){a.deliveryurl=a.account.remote+"/api/sms/accounts/"+a.account.id+"/messageStatus",a.receiveurl=a.account.remote+"/api/sms/accounts/"+a.account.id+"/receive"}),a.updateItemSmsAccount=function(){return b.update({id:d.accountId},a.account).$promise.then(function(){h.show(f.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.view",{url:"/view/:accountId",templateUrl:"app/channels/sms/account/view/view.html",controller:"SmsAccountViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.channels.sms.accounts.view.settings",{url:"/settings",templateUrl:"app/channels/sms/account/view/view.settings.html",controller:"SmsAccountViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsAccountWizardCtrl",["$scope","$http","$location","$translate","WizardHandler","xAlert","SmsAccount",function(a,b,c,d,e,f,g){a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initWizard=function(){a.forms={},a.item={}},a.goNext=function(){e.wizard().next()},a.formValidation=function(a){return a},a.createItem=function(){return console.log(a.item),g.save(a.item).$promise.then(function(){c.path("/channels/sms/accounts/list")})["catch"](function(a){f.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.accounts.wizard",{url:"/wizard",templateUrl:"app/channels/sms/account/wizard/wizard.html",controller:"SmsAccountWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox",{url:"/inbox",template:"<div ui-view></div>",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").directive("smsRoom",["$cookieStore","$translate","$uibModal","$timeout","Tag","CannedAnswer","Auth","SmsAccount","SmsRoom","SmsMessage","xAlert","usSpinnerService","socket","$stateParams",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/channels/sms/inbox/room/room.directive.html",link:function(a){a.modelOptions={debounce:{"default":500,blur:250},getterSetter:!0},a.panelLeft=null,a.panelRight="col-md-12",a.togglePanelLeft=function(){a.panelLeft?(a.panelLeft=null,a.panelRight="col-md-12"):(a.panelLeft="col-md-6",a.panelRight="col-md-6")},a.form={disabled:!1,from:[],to:"",body:""},m.socket.on("sms_message:save",function(b){return a.workspace.id&&b.SmsRoomId==a.workspace.id?j.get({id:b.id}).$promise.then(function(c){a.SmsRoom.SmsMessages.unshift(b),a.panelLeft="col-md-6",a.panelRight="col-md-6"})["catch"](function(a){console.error(a)}):void 0}),m.socket.on("sms_message:update",function(b){if(a.SmsRoom&&b.SmsRoomId==a.workspace.id){var c=_.find(a.SmsRoom.SmsMessages,{id:b.id});c&&_.merge(c,b)}}),m.socket.on("sms_room:update",function(b){a.SmsRoom&&b.id==a.workspace.id&&(a.SmsRoom.status=b.status)}),a.closeRoom=function(b){return c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.status.modal.html",controller:"SmsInboxViewModalStatusCtrl",resolve:{closed:function(){return"CLOSED"===a.SmsRoom.status},accountId:function(){return a.SmsRoom.SmsAccountId}}}).result.then(function(a){var c={id:b,status:"CLOSED"};return a.disposition&&(c.disposition=a.disposition),i.update(c).$promise["catch"](function(a){k.show(a.data.message,"danger")})})},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),h.get().$promise.then(function(b){a.smsAccounts=b.rows})["catch"](function(a){console.error(a)}),a.workspace.id?(a.panelLeft="col-md-6",a.panelRight="col-md-6",i.get({id:a.workspace.id}).$promise.then(function(b){return a.SmsRoom=b,a.form.from[0]=a.SmsRoom.SmsAccount.phone,a.form.to=a.SmsRoom.from,a.form.tags=a.SmsRoom.tags,"NEW"==a.SmsRoom.status||"UNMANAGED"==a.SmsRoom.status?i.update({id:a.SmsRoom.id,status:"OPEN"}):void 0}).then(function(b){if(b){var c=[];return c[0]=g.getCurrentUser().id,i.update({id:a.SmsRoom.id,controller:"agents",agents:c})}})["catch"](function(a){console.error(a)})["finally"](function(){l.stop("spinner-grid"),a.form.disabled=!1})):l.stop("spinner-grid"),a.onSelect=function(){a.form.body+=a.modelOptions.selectedAnswer,delete a.modelOptions.selectedAnswer},a.onSelectAnswer=function(b){a.form.body+=b,a.selectedAnswer=""},a.getAnswers=function(a){return f.get({key:a}).$promise.then(function(a){return _.map(a.rows,"value")})},a.loadAgents=function(){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.agents.modal.html",controller:"SmsInboxViewModalAgentCtrl",resolve:{roomId:function(){return a.workspace.id}}})},a.onChanged=function(){return i.patch({id:a.workspace.id},{tags:a.form.tags}).$promise["catch"](function(a){console.error(a)})},a.cancel=function(){a.forms.compose.$setPristine(),a.form.body=""},a.sendSMS=function(){l.spin("spinner-grid");var c=_.find(a.smsAccounts,{phone:a.form.from[0]}).id;if(c){var d={from:a.form.from[0],to:a.form.to,body:a.form.body};return h.save({accountId:c,controller:"send"},d).$promise.then(function(b){return a.SmsRoom?(a.forms.compose.$setPristine(),void(a.form.body="")):i.get({id:b.SmsRoomId}).$promise}).then(function(b){b&&(a.forms.compose.$setPristine(),a.form.body="",a.workspace.id=b.id,a.workspace.name=b.from,a.SmsRoom=b,a.panelLeft="col-md-6",a.panelRight="col-md-6")})["catch"](function(){k.show(b.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){l.stop("spinner-grid")})}}}}}]),angular.module("xCallyShuttleApp").directive("sms",["$rootScope","SmsMessage","List","xAlert","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{smsMessage:"=message",accounttype:"=accounttype",listId:"="},templateUrl:"app/channels/sms/inbox/sms/sms.html",link:function(b){b.openContact=function(f){return b.listId?c.get({listId:b.listId,controller:"contacts",phone:f}).$promise.then(function(b){a.$root.workspaces.push({active:!0,"class":"icon-user",contactID:b.id,name:b.phone,type:"contact"})})["catch"](function(a){console.error(a)}):void d.show(e.instant("MESSAGE_NO_LIST_CONFIGURED"),"info")}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view.account",{url:"/account/:id",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewAccountListCtrl",["$scope","$rootScope","$uibModal","$translate","$stateParams","$state","Tag","usSpinnerService","socket","SmsAccount","SmsRoom","gridOptions","uiGridConstants","Auth","Modal","xAlert",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.loadAgents=function(a){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.agents.modal.html",controller:"SmsInboxViewModalAgentCtrl",resolve:{roomId:a}})},a.initView=function(){a.id=[],a.isAdmin=n.isAdmin(),a.isAgent=n.isAgent(),a.uncheckable=!1,a.query={status:"UNMANAGED",tags:[]},a.$watch("query.status",function(){a.getPage(a.query)},!0),g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)}),a.gridOptions={exporterCsvFilename:"sms_rooms.csv",enableRowHeaderSelection:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!1,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,enableSelectAll:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,columnDefs:[{name:"tags",displayName:"",headerCellTemplate:'<i class="icon-tag" style="margin-top: 8px; margin-left: 8px;"></i>',cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"row.entity.tags.length ? 'icon-tag' : ''\" title=\"{{row.entity.tags}}\"></i></div>",width:30,enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"id",displayName:"Id",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><span>#{{row.entity.id}}</span></div>",width:75,enableSorting:!1,enableFiltering:!0,enableColumnMenu:!1},{name:"from",cellClass:"text-center"},{name:"disposition",cellClass:"text-center"},{name:"updatedAt",cellFilter:"date:'MM/dd/yyyy HH:mm'",width:120,enableSorting:!1,enableFiltering:!1,sort:{direction:m.DESC}},{name:"action",cellTemplate:'<div> <a class="btn btn-xs green" data-ng-click="grid.appScope.openRoom(row.entity.id, row.entity.from)"><i class="glyphicon glyphicon-comment" aria-hidden="true"></i></a> <a class="btn btn-xs btn-primary" data-ng-click="grid.appScope.loadAgents(row.entity.id)"><i class="fa fa-user-plus" aria-hidden="true"></i></a> <a class="btn btn-xs btn-danger" data-ng-show="grid.appScope.isAdmin" data-ng-click="grid.appScope.deleteItem(row.entity.id,row.entity.id)"><i class="fa fa-trash" aria-hidden="true"></i> </div>',enableSorting:!1,cellClass:"ui-grid-vcenter",width:90,enableFiltering:!1,enableColumnMenu:!1}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.selection&&(a.gridApi.selection.on.rowSelectionChanged(a,function(b){b.isSelected?a.id.push(a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id):_.pull(a.id,a.gridApi.grid.options.primaryKey?b.entity[a.gridApi.grid.options.primaryKey]:b.entity.id)}),a.gridApi.selection.on.rowSelectionChangedBatch(a,function(b){b[0].isSelected?a.id=_.union(a.id,_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id")):_.map(b,a.gridApi.grid.options.primaryKey?"entity."+a.gridApi.grid.options.primaryKey:"entity.id").forEach(function(b){_.pull(a.id,b)})}))}},i.socket.on("sms_room:remove",function(b){_.remove(a.workspaces,{id:b.id,type:"smsRoom"}),_.remove(a.gridOptions.data,{id:b.id})}),a.getPage(a.query)},a.onChanged=function(){a.getPage(a.query)},a.tagItems=function(){c.open({animation:!0,templateUrl:"app/channels/sms/inbox/view/view.tags.modal.html",controller:"SmsInboxViewModalTagCtrl",resolve:{id:function(){return a.id}}}).result.then(function(){a.gridApi.selection.clearSelectedRows(),a.id=[],a.getPage()})},a.openRoom=function(b,c){var d=_.find(a.workspaces,{id:b,type:"smsRoom"});d?d.active=!0:a.workspaces.push({id:b,name:c,type:"smsRoom","class":"glyphicon glyphicon-comment",active:!0})},a.getPage=function(b){h.spin("spinner-grid");var c={accountId:e.id,controller:"rooms"};return b&&_.merge(c,b),a.query&&_.merge(c,a.query),j.query(c).$promise.then(function(b){a.gridOptions.data=b})["catch"](function(a){console.error(a)})["finally"](function(){h.stop("spinner-grid")})},a.deleteItem=o.confirm["delete"](function(b){var c={id:b};return console.log(c),k["delete"](c).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.show(a.message?a.message:a.data.message,"danger")})}),a.deleteItems=o.confirm["delete"](function(){var b={ids:a.id};return k["delete"](b).$promise.then(function(){a.getPage(),p.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),a.gridApi.selection.clearSelectedRows(),a.id=[]})["catch"](function(a){p.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view.account.list",{url:"/list",templateUrl:"app/channels/sms/inbox/view/account/list/list.html",controller:"SmsInboxViewAccountListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalAgentCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Agent","SmsRoom","xAlert","roomId",function(a,b,c,d,e,f,g,h){a.initModal=function(){a.agents=[],a.item={agents:[]},e.get().$promise.then(function(b){b.rows.forEach(function(b){a.agents.push(b)})})["catch"](function(a){console.error(a)}),f.query({id:h,controller:"agents"}).$promise.then(function(b){b.forEach(function(b){a.agents.push(b),a.item.agents.push(b.id)})})["catch"](function(a){console.error(a)}),a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{classes:"btn btn-success",text:"APPLICATION_RETRY",click:function(a){b.close(a)}},{classes:"btn default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]}},a.ok=function(){return f.update({id:h,controller:"agents",agents:a.item.agents}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close()})["catch"](function(a){console.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewCtrl",["$scope","$location","$stateParams","$translate","$uibModal","socket","Auth","xAlert","SmsRoom","SmsAccount",function(a,b,c,d,e,f,g,h,i,j){a.initView=function(){j.get().$promise.then(function(c){var d=null;a.smsAccounts=c.rows,a.smsAccounts.length&&(d="/channels/sms/inbox/view/account/"+a.smsAccounts[0].id+"/list"),d&&b.path(d)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.inbox.view",{url:"/view",templateUrl:"app/channels/sms/inbox/view/view.html",controller:"SmsInboxViewCtrl",reload:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/inbox.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalStatusCtrl",["$scope","$uibModalInstance","closed","SmsAccount","accountId",function(a,b,c,d,e){a.modal={title:"APPLICATION_CONFIRM_CLOSE",text:"MESSAGE_ARE_YOU_SURE_YOU_WANT_TO_CLOSE_THE_SMS"},a.initDisposition=function(){return d.get({accountId:e,controller:"dispositions"}).$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.closed=c,a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalTagCtrl",["$scope","$uibModalInstance","$translate","$stateParams","Tag","SmsRoom","xAlert","id",function(a,b,c,d,e,f,g,h){console.log(h),a.initModal=function(){return a.tags=[],a.item={tags:[]},a.modal={dismissable:!0,title:"APPLICATION_MESSAGE_SEND_RETRY",text:"MESSAGE_MESSAGE_SEND_RETRY",buttons:[{"class":"btn-success",text:"APPLICATION_TAG",click:function(){var d={status:!0};return f.patch({id:h},{tags:a.item.tags}).$promise.then(function(){g.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(){d.status=!1,g.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})["finally"](function(){b.close(d)})}},{"class":"default",text:"APPLICATION_CANCEL",click:function(a){b.dismiss(a)}}]},e.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("SmsInboxViewModalTemplateCtrl",["$scope","$uibModalInstance","Template",function(a,b,c){a.initModal=function(){return a.item={},c.get().$promise.then(function(b){a.templates=b.rows})["catch"](function(a){console.error(a)})},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsQueueListCtrl",["$scope","SmsQueue","gridOptions","$uibModal","xAlert","Auth",function(a,b,c,d,e,f){a.initView=function(){a.Auth=f;var d={exporterCsvFilename:"voice_queues.csv",columnDefs:[{name:"name"},{name:"description"},{name:"timeout"},{name:"strategy"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/sms/queues/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/sms/queues/view/{{row.entity.id}}/agents",name:"agents",hide:"user"===f.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/sms/queue/list/list.create.modal.html",controller:"SmsQueueListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SmsQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","SmsQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return console.log(a.item),e.save(a.item).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues.list",{url:"/list",templateUrl:"app/channels/sms/queue/list/list.html",controller:"SmsQueueListCtrl"})}]),angular.module("xCallyShuttleApp").factory("SmsQueue",["$resource",function(a){return a("/api/sms/queues/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues",{url:"/queues",template:"<div ui-view></div>",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsQueueViewCtrl",["$scope","$http","$translate","$stateParams","xAlert","Team","SmsQueue",function(a,b,c,d,e,f,g){var h=function(){return{select:function(b){return g.save({id:a.queue.id,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(b){console.log("sel",b),a.getTeams()})["catch"](function(a){console.error(a)})},deselect:function(b){return g["delete"]({id:a.queue.id,controller:"agents",agents:b}).$promise.then(function(b){console.log("desel",b),a.getTeams()})["catch"](function(a){console.error(a)})}}};a.getQueue=function(){return g.get({id:d.id}).$promise.then(function(b){b.penalty=0,a.queue=b})["catch"](function(a){console.error(a)})},a.updateSmsQueue=function(){return g.update({id:d.id},{name:a.queue.name,description:a.queue.description,timeout:a.queue.timeout,strategy:a.queue.strategy}).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getTeams=function(){return f.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,console.log(b.rows),g.get({id:d.id,controller:"agents"}).$promise}).then(function(b){console.log(b),ComponentsDropdowns.bindSmsQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasSmsQueue.penalty}}),h)})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.queues.view",{url:"/view/:id",templateUrl:"app/channels/sms/queue/view/view.html",controller:"SmsQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.sms.queues.view.settings",{url:"/settings",templateUrl:"app/channels/sms/queue/view/view.settings.html"}).state("main.channels.sms.queues.view.agents",{url:"/agents",templateUrl:"app/channels/sms/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","SmsQueue","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){return k.spin("spinner-grid"),g.get(s).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){p(a)})})["catch"](function(a){f.error(a)})["finally"](function(){k.stop("spinner-grid")})}function o(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.smsPause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_sms_queue:save",function(b){console.log("new queue",b);var c=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0}),d=a.gridOptions.data.indexOf(c);a.gridOptions.data.splice(d+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,queueId:b.SmsQueueId,agent:b.membername,online:c.online})}),e.socket.on("user_has_sms_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queueId:b.SmsQueueId})})}function p(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.smsPause,pauseType:b.pauseType,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.SmsQueues.forEach(function(c){a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,queueId:c.id,agent:b.name,online:b.online})})}function q(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.error(a)})}function r(){return j.get().$promise.then(function(b){a.smsQueues=b.rows,e.syncUpdates("sms_queue",a.smsQueues)})["catch"](function(a){f.error(a)})}a.smsQueues=[];var s={controller:"realtime",controller1:"sms",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"smsPause",displayName:"APPLICATION_PAUSE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.pause != null && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor left-margin" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select> <span data-ng-if="row.entity.pause" class="left-margin">({{row.entity.pauseType}})</span><span class="left-margin"><timer data-ng-if="row.entity.pause" start-time="grid.appScope.moment(row.entity.lastPauseAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"PAUSED"},{value:"false",label:"NOT PAUSED"}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queueId" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queueId)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.smsQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length)}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){t(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?s.order=null:s.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),n()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){s.offset=(a-1)*b,s.limit=b,n()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?s[a.name]=a.filters[0].term:delete s[a.name]}),n()})}},n(),q(),r(),o()};var t=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_sms_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/sms/realtime/view/agent/queue.modal.add.html",controller:"SmsRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.smsQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(b){return i.save({name:"QueueAdd",agent:e,queues:_.filter(a.smsQueues,function(a){return _.includes(b.queues,a.id)}),channel:"sms",data1:e,data3:b.queues.join(","),data4:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queueId:b,channel:"sms",data1:a,data3:b,data4:"sms"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.error(a)})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/sms/realtime/view/agent/agent.modal.info.html",controller:"SmsRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/sms/realtime/view/agent/agent.html",controller:"SmsRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","$http","agent",function(a,b,c,d){a.agent=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewApplicationCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportSmsSession","usSpinnerService","$q","uiGridConstants","$timeout",function(a,b,c,d,e,f,g,h,i,j,k){function l(){return h.spin("spinner-grid"),g.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){m(),h.stop("spinner-grid")})}function m(){e.socket.on("report_sms_session:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&k(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.leaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_sms_session:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initApplications=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> <span data-ng-if="!leaveAt">[<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</span></div>', -enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)})}},l()};var n=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_sms_session")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view.applications",{url:"/applications",templateUrl:"app/channels/sms/realtime/view/application/application.html",controller:"SmsRealtimeViewApplicationCtrl"})}]),angular.module("xCallyShuttleApp").controller("SmsRealtimeViewCtrl",["$scope","$state",function(a,b){a.agents=[{name:"Queues",link:"main.channels.sms.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.sms.realtime.view.agents.timeline"}],a.sessions=[{name:"Sessions",link:"main.channels.sms.realtime.view.sessions"}],a.tree={queues:[{name:"Queues",link:"main.channels.sms.realtime.view.agents.queues"},{name:"Timeline",link:"main.channels.sms.realtime.view.agents.timeline"}],sessions:[{name:"Sessions",link:"main.channels.sms.realtime.view.sessions"}]}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms.realtime.view",{url:"/view",templateUrl:"app/channels/sms/realtime/view/view.html",controller:"SmsRealtimeViewCtrl"})}]),angular.module("xCallyShuttleApp").factory("ReportSmsRoom",["$resource",function(a){return a("/api/report/sms/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportSmsSession",["$resource",function(a){return a("/api/report/sms/sessions/:id/:controller/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.sms",{url:"/sms",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SmsQueue",["$resource",function(a){return a("/api/sms/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsReport",["$resource",function(a){return a("/api/report/sms/:id/:controller1/:controller2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsMessage",["$resource",function(a){return a("/api/sms/messages/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SmsRoom",["$resource",function(a){return a("/api/sms/rooms/:id/:controller",{id:"@id",controller:"@controller"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").factory("ChanSpy",["$resource",function(a){return a("/api/chanspy/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy",{url:"/chanspy",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ChanSpyListCtrl",["$scope","$uibModal","ChanSpy","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"chanspy.csv",columnDefs:[{name:"name"},{name:"prefix"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/channels/voice/chanspy/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/channels/voice/chanspy/list/list.create.modal.html",controller:"ChanSpyListCreateCtrl"});c.result.then(function(b){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ChanSpyListCreateCtrl",["$scope","$translate","$uibModalInstance","ChanSpy","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.options=[{name:"APPLICATION_CHANSPY_OPTION_b",value:"b"},{name:"APPLICATION_CHANSPY_OPTION_B",value:"B"},{name:"APPLICATION_CHANSPY_OPTION_E",value:"E"},{name:"APPLICATION_CHANSPY_OPTION_o",value:"o"},{name:"APPLICATION_CHANSPY_OPTION_q",value:"q"},{name:"APPLICATION_CHANSPY_OPTION_s",value:"s"},{name:"APPLICATION_CHANSPY_OPTION_S",value:"S"},{name:"APPLICATION_CHANSPY_OPTION_w",value:"w"},{name:"APPLICATION_CHANSPY_OPTION_W",value:"W"}],a.save=function(){return a.item.options=a.item.options.join(""),d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy.list",{url:"/list",templateUrl:"app/channels/voice/chanspy/list/list.html",controller:"ChanSpyListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ChanSpyViewCtrl",["$scope","$translate","$stateParams","xAlert","ChanSpy",function(a,b,c,d,e){a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.options=[{name:"APPLICATION_CHANSPY_OPTION_b",value:"b"},{name:"APPLICATION_CHANSPY_OPTION_B",value:"B"},{name:"APPLICATION_CHANSPY_OPTION_E",value:"E"},{name:"APPLICATION_CHANSPY_OPTION_o",value:"o"},{name:"APPLICATION_CHANSPY_OPTION_q",value:"q"},{name:"APPLICATION_CHANSPY_OPTION_s",value:"s"},{name:"APPLICATION_CHANSPY_OPTION_S",value:"S"},{name:"APPLICATION_CHANSPY_OPTION_w",value:"w"},{name:"APPLICATION_CHANSPY_OPTION_W",value:"W"}],a.getChanSpy=function(){return e.get({id:c.id}).$promise.then(function(b){b.options=b.options.split(""),a.chanspy=b})["catch"](function(a){d.show(a.data.message,"danger")})},a.updateChanSpy=function(){var f=angular.copy(a.chanspy);return f.options=f.options.join(""),e.update({id:c.id},f).$promise.then(function(){d.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.chanspy.view",{url:"/view/:id",templateUrl:"app/channels/voice/chanspy/view/view.html",controller:"ChanSpyViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.chanspy.view.settings",{url:"/settings",templateUrl:"app/channels/voice/chanspy/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("VoiceContext",["$resource",function(a){return a("/api/voice/contexts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts",{url:"/contexts",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceContextListCtrl",["$scope","VoiceContext","gridOptions","$uibModal","xAlert","$translate",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"voice_contexts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:170,buttons:[{"class":"{{row.entity.defaultEntry ? 'blue-hoki disabled' : 'blue-hoki'}}",href:"/channels/voice/contexts/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){var c=d.open({animation:!0,templateUrl:"app/channels/voice/context/list/create.modal.html",controller:["$scope","$uibModalInstance",function(a,b){a.form={},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]});c.result.then(function(c){return b.save(c).$promise.then(function(){a.gridOptions.getPage(),e.show(f.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){e.show(a.data.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts.list",{url:"/list",templateUrl:"app/channels/voice/context/list/list.html",controller:"VoiceContextListCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceContextViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.getContext=function(){b.get("/api/voice/contexts/"+e.id).success(function(b){a.context=b}).error(function(a){console.error(a),f.path("/voice/contexts/list")})},a.updateVoiceContext=function(){var f=angular.copy(a.context);b.put("/api/voice/contexts/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.context=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.contexts.view",{url:"/view/:id",templateUrl:"app/channels/voice/context/view/view.html",controller:"VoiceContextViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.contexts.view.settings",{url:"/settings",templateUrl:"app/channels/voice/context/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.dispositions",{url:"/dispositions",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceDispositionListCtrl",["$scope","$stateParams","$uibModal","$translate","VoiceDisposition","xAlert",function(a,b,c,d,e,f){a.initView=function(){return e.get().$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.updateDisposition=function(a,b){return e.update({id:a},{name:b}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.deleteDisposition=function(b){return e.remove({id:b}).$promise.then(function(){_.remove(a.dispositions,{id:b}),f.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){console.error(a),f.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addDisposition=function(){return c.open({animation:!0,templateUrl:"app/channels/voice/disposition/list/modal/add.modal.html",controller:"VoiceDispositionListModalDispositionAddCtrl"}).result.then(function(b){b&&(a.dispositions.push(b),f.show(d.instant("MESSAGE_WELL_DONE")+"!","success"))})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.dispositions.list",{url:"/list",templateUrl:"app/channels/voice/disposition/list/list.html",controller:"VoiceDispositionListCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceDispositionListModalDispositionAddCtrl",["$scope","$uibModalInstance","VoiceDisposition","xAlert","$translate",function(a,b,c,d,e){a.ok=function(){return c.save({name:a.name}).$promise.then(function(a){b.close(a)})["catch"](function(a){d.show(e.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").factory("VoiceDisposition",["$resource",function(a){return a("/api/voice/dispositions/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceMohListCtrl",["$scope","gridOptions","VoiceMoh","$uibModal","xAlert","$translate",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"voice_mohs.csv",columnDefs:[{name:"name"},{name:"directory"},{name:"sort"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/voice/mohs/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)},a.createItem=function(){var b=d.open({animation:!0,templateUrl:"app/channels/voice/moh/list/create.modal.html",controller:["$scope","$uibModalInstance",function(a,b){a.form={},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]});b.result.then(function(b){return c.save(b).$promise.then(function(){a.gridOptions.getPage(),e.show(f.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs.list",{url:"/list",templateUrl:"app/channels/voice/moh/list/list.html",controller:"VoiceMohListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("VoiceMoh",["$resource",function(a){return a("/api/voice/musiconholds/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs",{url:"/mohs",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceMohViewCtrl",["$scope","$http","xAlert","$translate","VoiceMoh","$stateParams","socket","Modal","$sce","$location","Sound",function(a,b,c,d,e,f,g,h,i,j,k){a.$translate=d,a.audioSources={},a.sortOptions=[{value:"random",name:"APPLICATION_RANDOM"},{value:"alpha",name:"APPLICATION_ALPHABETICAL"}],a.getMoh=function(){return e.get({id:f.id}).$promise.then(function(b){delete b.stamp,a.moh=b})["catch"](function(a){c.show(a.message,"danger")})},a.updateVoiceMoh=function(){return console.log("update"),e.update({id:f.id},a.moh).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){c.show(a.message,"danger")})},a.addMohs=function(){return e.save({id:f.id,controller:"files"},a.item).$promise.then(function(){j.path("/channels/voice/mohs/view/"+f.id+"/audios")})["catch"](function(a){c.show(a.message,"danger")})},a.getAudioFiles=function(){return e.get({id:f.id,controller:"files"}).$promise.then(function(b){a.audioFiles=b.files,a.mohPath=b.path,a.audioFiles.forEach(function(a){l(a)})})["catch"](function(a){c.show(a.message,"danger")})},a.getSecureSrc=function(a){return i.trustAsResourceUrl(a)},a.getSounds=function(){return a.item={sounds:[]},k.get().$promise.then(function(b){a.soundList=b.rows})["catch"](function(a){c.show(a.message,"danger")})};var l=function(c){b.get("/api/voice/musiconholds/stream",{params:{path:encodeURI(a.mohPath+"/"+c)}}).success(function(b){a.audioSources[c]="data:audio/ogg;base64,"+b}).error(function(a){console.error(a)})};a.deleteItem=h.confirm["delete"](function(e){b["delete"]("/api/voice/musiconholds/"+f.id+"/files",{params:{filename:e}}).success(function(){_.remove(a.audioFiles,function(a){return a===e}),c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){c.show(a.message,"danger")})})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.mohs.view",{url:"/view/:id",templateUrl:"app/channels/voice/moh/view/view.html",controller:"VoiceMohViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.mohs.view.settings",{url:"/settings",templateUrl:"app/channels/voice/moh/view/view.settings.html"}).state("main.channels.voice.mohs.view.audios",{url:"/audios",templateUrl:"app/channels/voice/moh/view/view.audios.html",cache:!1}).state("main.channels.voice.mohs.view.add",{url:"/add",templateUrl:"app/channels/voice/moh/view/view.addFiles.html",cache:!1})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCtrl",["$scope","$rootScope","$uibModal","VoiceQueue","gridOptions","Auth",function(a,b,c,d,e,f){a.initView=function(){a.Auth=f;var b={exporterCsvFilename:"voice_queues.csv",primaryKey:"name",columnDefs:[{name:"name"},{name:"strategy"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/channels/voice/queues/view/{{row.entity.name}}/settings",name:"settings"},{"class":"green-meadow",href:"/channels/voice/queues/view/{{row.entity.name}}/agents",name:"agents",hide:"user"===f.getCurrentUser().role},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.name)"}]}]};a.gridOptions=e.gridOptions(d,b,a)},a.createItem=function(){var b=c.open({animation:!0,templateUrl:"app/channels/voice/queue/list/list.create.modal.html",controller:"VoiceQueueListCreateCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("VoiceQueueListCreateCtrl",["$scope","$uibModalInstance","$translate","xAlert","VoiceQueue",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return e.save(a.item).$promise.then(function(a){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),b.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues.list",{url:"/list",templateUrl:"app/channels/voice/queue/list/list.html",controller:"VoiceQueueListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues",{url:"/queues",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("ReportQueue",["$resource",function(a){return a("/api/report/queues/:id/:controller/:controller2",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceQueueViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","VoiceQueue","VoiceContext","Team","Auth",function(a,b,c,d,e,f,g,h,i,j,k){a.penalty=0,a.Auth=k,a.binaryChoices=[{name:"Yes",value:1},{name:"No",value:0}],a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.monitorFormats=[{name:"wav",value:"wav"},{name:"gsm",value:"gsm"},{name:"Inactive",value:""}],a.queueAnnounces=[{display_name:"Default",value:null},{display_name:"Disabled",value:""}];var l=function(){return{select:function(b){return h.save({id:a.queue.name,controller:"agents"},{agents:b,penalty:a.queue.penalty}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return h["delete"]({id:a.queue.name,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getQueue=function(){return h.get({id:e.id}).$promise.then(function(b){b.joinempty=""===b.joinempty?[]:b.joinempty.split(","),b.leavewhenempty=""===b.leavewhenempty?[]:b.leavewhenempty.split(","),b.periodic_announce=""===b.periodic_announce?[]:b.periodic_announce.split(","),b.penalty=0,a.queue=b})["catch"](function(a){g.path("/channels/voice/queues/list")})},a.updateVoiceQueue=function(){var b=angular.copy(a.queue);return b.joinempty=b.joinempty.join(","),b.leavewhenempty=b.leavewhenempty.join(","),b.periodic_announce=b.periodic_announce.join(","),b.context||(b.context=null),h.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(d.instant(a.data.message),"danger")})},a.getTeams=function(){return j.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,h.get({id:e.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindQueue(a.teams,_.map(b.rows,function(a){return{id:a.id,penalty:a.UserHasVoiceQueue.penalty}}),l)})["catch"](function(a){console.error(a)})},a.getContexts=function(){return i.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){c.show(d.instant(data.message),"danger")})},a.getMohs=function(){b.get("/api/voice/musiconholds").success(function(b){a.voiceMohs=b.rows,f.syncUpdates("voice_musiconhold",a.voiceMohs)}).error(function(a){c.show(a.message,"danger")})},a.getSounds=function(){b.get("/api/sounds").success(function(b){a.queueAnnounces=a.queueAnnounces.concat(b),a.periodicAnnounces=angular.copy(b.rows),b.rows.unshift({display_name:"None",converted_path:null,value:""}),a.sounds=b.rows,f.syncUpdates("sound",a.sounds)}).error(function(a){console.error(a)})},a.returnAnnouncePath=function(a){return a.converted_path?a.converted_path+"/"+a.save_name:null===a.value?null:a.value}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.queues.view",{url:"/view/:id",templateUrl:"app/channels/voice/queue/view/view.html",controller:"VoiceQueueViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.queues.view.settings",{url:"/settings",templateUrl:"app/channels/voice/queue/view/view.settings.html"}).state("main.channels.voice.queues.view.agents",{url:"/agents",templateUrl:"app/channels/voice/queue/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}})}]),angular.module("xCallyShuttleApp").factory("VoiceQueue",["$resource",function(a){return a("/api/voice/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Agent","Pause","Action","VoiceQueue","usSpinnerService","$q","uiGridConstants","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return k.spin("spinner-grid"),g.get(t).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=[],b.rows.forEach(function(a){q(a)})})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){k.stop("spinner-grid")})}function p(){e.socket.on("agent:save",function(b){var c=_.find(a.gridOptions.data,{agentId:b.id,isAgent:!0});c&&(c.online=b.online,c.lastLoginAt=b.lastLoginAt,c.pause=b.voicePause,c.pauseType=b.pauseType,c.lastPauseAt=b.lastPauseAt,c.status=b.status,c.statusAt=b.statusAt,c.queueStatus=b.queueStatus,c.queueStatusAt=b.queueStatusAt,c.lastQueue=b.lastQueue,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal,_.map(a.gridOptions.data,function(a){a.isAgent||a.agentId!==b.id||(a.online=b.online)}))}),e.socket.on("agent:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.id})}),e.socket.on("user_has_voice_queue:save",function(b){var c=_.includes(_.map(a.CurrentUser.PVoiceQueues,"name"),b.queue)||n.isAdmin(),d=_.find(a.gridOptions.data,{agentId:b.UserId,queue:b.queue});if(!d&&b.logged&&c){var e=_.find(a.gridOptions.data,{agentId:b.UserId,isAgent:!0}),f=a.gridOptions.data.indexOf(e);a.gridOptions.data.splice(f+1,0,{isAgent:!1,agentId:b.UserId,queue:b.queue,agent:b.membername,callstaken:b.callstaken?b.callstaken:0,online:e.online})}else d&&!b.logged?_.remove(a.gridOptions.data,{agentId:b.UserId,queue:b.queue}):d&&b.logged&&c&&(d.callstaken=b.callstaken?b.callstaken:0)}),e.socket.on("user_has_voice_queue:remove",function(b){_.remove(a.gridOptions.data,{agentId:b.UserId,queue:b.queue})})}function q(b){a.gridOptions.data.push({isAgent:!0,agentId:b.id,agent:b.name,online:b.online,lastLoginAt:b.lastLoginAt,lastPauseAt:b.lastPauseAt,pause:b.voicePause,pauseType:b.pauseType,status:b.status||"UNKNOWN",statusAt:b.statusAt,queueStatus:b.queueStatus||"READY",queueStatusAt:b.queueStatusAt,lastQueue:b.lastQueue,ipaddr:b.ipaddr,port:b.port,fullcontact:b.fullcontact,useragent:b.useragent,lastms:b.lastms,internal:b.internal,$$treeLevel:0}),b.VoiceQueues.forEach(function(c){c.UserHasVoiceQueue.logged&&a.gridOptions.data.push({isAgent:!1,agentId:b.id,queue:c.name,agent:b.name,callstaken:c.UserHasVoiceQueue.callstaken?c.UserHasVoiceQueue.callstaken:0,online:b.online})})}function r(){return h.get().$promise.then(function(b){a.pauses=b.rows,e.syncUpdates("pause",a.pauses)})["catch"](function(a){f.show(a.message,"danger")})}function s(){return j.get().$promise.then(function(b){a.voiceQueues=b.rows,e.syncUpdates("voice_queue",a.voiceQueues)})["catch"](function(a){f.show(a.message,"danger")})}a.voiceQueues=[];var t={controller:"realtime",controller1:"voice",offset:0,limit:10};a.moment=moment,a.initAgents=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent">{{row.entity.agent}} <{{row.entity.internal}}></div>'},{name:"online",displayName:"APPLICATION_ONLINE",width:150,headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.online != null && row.entity.isAgent"><i class="fa" data-ng-class="{\'font-green\':row.entity.online, \'font-red\':!row.entity.online,\'fa-user\':row.entity.online,\'fa-user-times\':!row.entity.online}"></i> <span data-ng-if="row.entity.online" class="left-margin">(<timer start-time="grid.appScope.moment(row.entity.lastLoginAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"true",label:"ONLINE"},{value:"false",label:"OFFLINE"}]}},{name:"status",displayName:"APPLICATION_PHONE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div data-ng-if=\"row.entity.isAgent\">{{'APPLICATION_'+row.entity.status | translate}} <span data-ng-if=\"row.entity.statusAt && (row.entity.status === 'BUSY' || row.entity.status === 'ONHOLD' || row.entity.status === 'INUSE')\">(<timer start-time=\"grid.appScope.moment(row.entity.statusAt).unix()*1000\">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></span></div>",filter:{type:m.filter.SELECT,selectOptions:[{value:"UNKNOWN",label:d.instant("APPLICATION_UNKNOWN")},{value:"NOT_INUSE",label:d.instant("APPLICATION_NOT_INUSE")},{value:"INUSE",label:d.instant("APPLICATION_INUSE")},{value:"BUSY",label:d.instant("APPLICATION_BUSY")},{value:"INVALID",label:d.instant("APPLICATION_INVALID")},{value:"UNAVAILABLE",label:d.instant("APPLICATION_UNAVAILABLE")},{value:"RINGING",label:d.instant("APPLICATION_RINGING")},{value:"RINGINUSE",label:d.instant("APPLICATION_RINGINUSE")},{value:"ONHOLD",label:d.instant("APPLICATION_ONHOLD")}]}},{name:"queueStatus",displayName:"APPLICATION_QUEUE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.isAgent && row.entity.online" class="ui-grid-vcenter" data-ng-class="{\'paused-agent\':row.entity.pause}"><span class="left-margin"><i data-ng-if="row.entity.pause" data-ng-click="grid.appScope.pause(row.entity.agentId,\'unpause\')" class="fa fa-play font-green pointer-cursor" title="{{\'APPLICATION_RESUME\' | translate}}"></i><i class="fa fa-pause font-yellow pointer-cursor" data-ng-click="grid.appScope.pause(row.entity.agentId,\'pause\',\'DEFAULT PAUSE\')" title="{{\'APPLICATION_DEFAULT_PAUSE\' | translate}}"></i></span><select data-ng-if="grid.appScope.pauses.length" class="pause-select pointer-cursor" data-ng-model="grid.appScope.pauseType" data-ng-change="grid.appScope.pause(row.entity.agentId,\'pause\',grid.appScope.pauseType)"><option class="pointer-cursor" data-ng-repeat="pause in grid.appScope.pauses">{{pause.name}}</option></select><span>{{\'APPLICATION_\'+row.entity.queueStatus.toUpperCase() | translate}}</span><span data-ng-if="(row.entity.queueStatus!==\'complete\' && (row.entity.queueStatus!==\'paused\' || row.entity.pauseType === \'ACW\'))"> [{{row.entity.lastQueue}}]</span><span data-ng-if="row.entity.pause"> [{{row.entity.pauseType}}]</span><timer data-ng-if="row.entity.queueStatusAt && row.entity.queueStatus!==\'complete\'" start-time="grid.appScope.moment(row.entity.queueStatusAt).unix()*1000"> [{{hhours}}:{{mminutes}}:{{sseconds}}]</timer></span></div>',filter:{type:m.filter.SELECT,selectOptions:[{value:"paused",label:d.instant("APPLICATION_PAUSED")},{value:"connect",label:d.instant("APPLICATION_CONNECT")},{value:"complete",label:d.instant("APPLICATION_COMPLETE")},{value:"called",label:d.instant("APPLICATION_CALLED")}]},enableSorting:!1,enableColumnMenu:!1},{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"callstaken",displayName:"APPLICATION_CALLS_TAKEN",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.callstaken !== null">{{row.entity.callstaken}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1,width:100},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button data-ng-if="row.entity.queue" class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.leaveQueue(row.entity.agentId,row.entity.queue)"><i class="icon-ban"></i> {{\'APPLICATION_LEAVE\' | translate}}</button><button data-ng-if="row.entity.isAgent && row.treeNode.children.length < grid.appScope.voiceQueues.length" class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.joinQueue(row.entity.agentId)"><i class="icon-plus"></i> {{\'APPLICATION_JOIN_QUEUE\' | translate}}</button> <button data-ng-if="row.entity.isAgent" class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=l.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.treeBase.on.rowExpanded(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length+b.treeNode.children.length); -}),a.gridApi.treeBase.on.rowCollapsed(a,function(b){u(a.gridApi.core.getVisibleRows(a.gridApi.grid).length-b.treeNode.children.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?t.order=null:t.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),o()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){t.offset=(a-1)*b,t.limit=b,o()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?t[a.name]=a.filters[0].term:delete t[a.name]}),o()})}},o(),r(),s(),p()};var u=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("agent"),e.unsyncUpdates("user_has_voice_queue")}),a.pause=function(b,c,e){return e&&(a.pauseType=null),i.save({name:c,agent:b,type:e||"DEFAULT PAUSE",data4:e||"DEFAULT PAUSE",channel:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(d.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})},a.joinQueue=function(e){var g=c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/agent/queue.modal.add.html",controller:"VoiceRealtimeViewAgentQueueModalCtrl",resolve:{queues:function(){return _.reject(a.voiceQueues,function(b){return!!_.find(a.gridOptions.data,{queue:b.name,isAgent:!1,agentId:e})})}}});g.result.then(function(a){return i.save({name:"QueueAdd",agent:e,queues:a.queues,channel:"voice",data1:e,data3:a.queues.join(","),data4:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},function(){b.info("Modal dismissed at: "+new Date)})},a.leaveQueue=function(a,b){return i.save({name:"QueueRemove",agent:a,queue:b,channel:"voice",data1:a,data3:b,data4:"voice"}).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/agent/agent.modal.info.html",controller:"VoiceRealtimeViewAgentInfoModalCtrl",resolve:{agent:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.agents",{url:"/agents",templateUrl:"app/channels/voice/realtime/view/agent/agent.html",controller:"VoiceRealtimeViewAgentCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentInfoModalCtrl",["$scope","$uibModalInstance","agent",function(a,b,c){a.agent=c,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewAgentQueueModalCtrl",["$scope","$uibModalInstance","$http","queues",function(a,b,c,d){a.queues=d,a.item={},a.save=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewParameterCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportQueue","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j){function k(){return h.spin("spinner-grid"),g.get(m).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){h.stop("spinner-grid")})}function l(){e.socket.on("voice_queue:save",function(b){_.find(a.gridOptions.data,{name:b.name})||a.gridOptions.data.push({abandoned:0,active:0,answered:0,holdtime:"00:00:00",name:b.name,talktime:"00:00:00",totalcalls:0,unmanaged:0,waiting:0})}),e.socket.on("voice_queue:remove",function(b){_.remove(a.gridOptions.data,{name:b.name})}),e.socket.on("report_queue:parameters",function(b){var c=_.find(a.gridOptions.data,{name:b.name});c&&_.merge(c,b)})}var m={offset:0,limit:10,controller:"parameters"};a.moment=moment,a.initParameters=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,enableSorting:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalFiltering:!0,useExternalSorting:!0,columnDefs:[{name:"name",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter"},{name:"waiting",displayName:"APPLICATION_WAITING",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"active",displayName:"APPLICATION_ACTIVE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"answered",displayName:"APPLICATION_ANSWERED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN_OR_EQUAL,placeholder:"from"},{condition:j.filter.LESS_THAN_OR_EQUAL,placeholder:"to"}]},{name:"abandoned",displayName:"APPLICATION_ABANDONED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN,placeholder:"from"},{condition:j.filter.LESS_THAN,placeholder:"to"}]},{name:"unmanaged",displayName:"APPLICATION_UNMANAGED",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableColumnMenu:!1,filters:[{condition:j.filter.GREATER_THAN,placeholder:"from"},{condition:j.filter.LESS_THAN,placeholder:"to"}]},{name:"holdtime",displayName:"APPLICATION_HOLDTIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"talktime",displayName:"APPLICATION_TALKTIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"totalcalls",displayName:"APPLICATION_TOTAL_CALLS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridOptions.data.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?m.order=null:m.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),k()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){m.offset=(a-1)*b,m.limit=b,k()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){if(a.filters.length>1){a.filters.forEach(function(b){b.term?64===b.condition?m[a.name+"_uiFrom"]=b.term:256===b.condition&&(m[a.name+"_uiTo"]=b.term):64===b.condition?delete m[a.name+"_uiFrom"]:256===b.condition&&delete m[a.name+"_uiTo"]})}else a.filters.length&&a.filters[0].term?m[a.name]=a.filters[0].term:delete m[a.name]}),k()})}},k(),l()};var n=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("voice_queue")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.parameters",{url:"/parameters",templateUrl:"app/channels/voice/realtime/view/parameter/parameter.html",controller:"VoiceRealtimeViewParameterCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewQueueCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportQueue","Pause","Action","usSpinnerService","$q","uiGridConstants","$timeout","Auth",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){function o(){return j.spin("spinner-grid"),g.get({controller:"waiting",controller2:"calls"}).$promise.then(function(b){a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){p(),j.stop("spinner-grid")})}function p(){e.socket.on("report_queue:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c?(_.merge(c,b),b.queuecallerleaveAt&&m(function(){_.remove(a.gridOptions.data,{id:b.id})},1e4)):b.queuecallerleaveAt||a.gridOptions.data.push(b)}),e.socket.on("report_queue:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}a.moment=moment,a.initQueues=function(){a.gridOptions={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"queue",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.queuecallerleaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.queuecallerleaveAt && row.entity.queuecallerabandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.queuecallerleaveAt && row.entity.queuecallercomplete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"caller",displayName:"APPLICATION_CALLER",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.calleridnum || ''}} {{row.entity.calleridname || ''}}</span></div>",enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"agent",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.connectedlinenum || ''}} {{row.entity.connectedlinename || ''}}</span></div>",enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){q(a.gridOptions.data.length)})}},o()};var q=function(a){var b=a?30*a+60:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_queue")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.queues",{url:"/queues",templateUrl:"app/channels/voice/realtime/view/queue/queue.html",controller:"VoiceRealtimeViewQueueCtrl"})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewTelephoneCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","Telephone","Pause","Action","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(){return j.spin("spinner-grid"),g.get(o).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){j.stop("spinner-grid")})}function n(){e.socket.on("telephone:save",function(b){var c=_.find(a.gridOptions.data,{id:b.id});c&&(c.status=b.status,c.statusAt=b.statusAt,c.ipaddr=b.ipaddr,c.port=b.port,c.fullcontact=b.fullcontact,c.useragent=b.useragent,c.lastms=b.lastms,c.internal=b.internal)}),e.socket.on("telephone:remove",function(b){_.remove(a.gridOptions.data,{id:b.id})})}var o={offset:0,limit:10};a.moment=moment,a.initTelephones=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"name",displayName:"APPLICATION_TELEPHONE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.name}} <{{row.entity.internal}}></div>"},{name:"status",displayName:"APPLICATION_PHONE_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{'APPLICATION_'+row.entity.status | translate}} <span data-ng-if=\"row.entity.statusAt && (row.entity.status === 'BUSY' || row.entity.status === 'ONHOLD' || row.entity.status === 'INUSE')\">(<timer start-time=\"grid.appScope.moment(row.entity.statusAt).unix()*1000\">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>)</span></span></div>",filter:{type:l.filter.SELECT,selectOptions:[{value:"UNKNOWN",label:d.instant("APPLICATION_UNKNOWN")},{value:"NOT_INUSE",label:d.instant("APPLICATION_NOT_INUSE")},{value:"INUSE",label:d.instant("APPLICATION_INUSE")},{value:"BUSY",label:d.instant("APPLICATION_BUSY")},{value:"INVALID",label:d.instant("APPLICATION_INVALID")},{value:"UNAVAILABLE",label:d.instant("APPLICATION_UNAVAILABLE")},{value:"RINGING",label:d.instant("APPLICATION_RINGING")},{value:"RINGINUSE",label:d.instant("APPLICATION_RINGINUSE")},{value:"ONHOLD",label:d.instant("APPLICATION_ONHOLD")}]}},{name:"action",displayName:"",width:170,cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><button class="btn btn-xs blue-madison" data-ng-click="grid.appScope.showInfo(row.entity)"><i class="icon-info"></i> {{\'APPLICATION_INFO\' | translate}}</button><div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1}],data:[],gridMenuTitleFilter:function(a){var b=k.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){p(a.gridOptions.data.length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?o.order=null:o.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),m()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){o.offset=(a-1)*b,o.limit=b,m()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?o[a.name]=a.filters[0].term:delete o[a.name]}),m()})}},m(),n()};var p=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("telephone")}),a.showInfo=function(a){c.open({animation:!0,templateUrl:"app/channels/voice/realtime/view/telephone/telephone.modal.info.html",controller:"VoiceRealtimeViewTelephoneInfoModalCtrl",resolve:{telephone:a}})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view.telephones",{url:"/telephones",templateUrl:"app/channels/voice/realtime/view/telephone/telephone.html",controller:"VoiceRealtimeViewTelephoneCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewTelephoneInfoModalCtrl",["$scope","$uibModalInstance","$http","telephone",function(a,b,c,d){a.telephone=d,a.close=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRealtimeViewCtrl",["$scope","Auth",function(a,b){a.Auth=b}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.realtime.view",{url:"/view",templateUrl:"app/channels/voice/realtime/view/view.html",controller:"VoiceRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRecordingListCtrl",["$scope","$translate","$sce","Recording","gridOptions","xAlert","uiGridConstants",function(a,b,c,d,e,f,g){a.Recording=d;a.updateRating=function(a,c){return d.update({id:a,rating:c}).$promise.then(function(){f.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})},a.initView=function(){var b={exporterCsvFilename:"recordings.csv",rowHeight:30,primaryKey:"uniqueid",columnDefs:[{name:"uniqueid"},{name:"calleridnum"},{name:"membername"},{name:"type",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div><i data-ng-class=\"{'icon-call-in font-green':row.entity.type === 'inbound','icon-call-out font-red':row.entity.type === 'outbound','icon-question':row.entity.type === 'unknown','icon-earphones font-purple':row.entity.type === 'internal'}\"></i></div>",filter:{type:g.filter.SELECT,selectOptions:[{value:"inbound",label:"Inbound"},{value:"outbound",label:"Outbound"}]}},{name:"queue"},{name:"createdAt",displayName:"APPLICATION_DATE",headerCellFilter:"translate",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:g.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:g.filter.LESS_THAN_OR_EQUAL}]},{name:"rating",filter:{type:g.filter.SELECT,selectOptions:[{value:1,label:"1"},{value:2,label:"2"},{value:3,label:"3"},{value:4,label:"4"},{value:5,label:"5"}]},cellClass:"ui-grid-vcenter",width:"100",cellTemplate:'<div><uib-rating data-ng-model="row.entity.rating" data-ng-click="grid.appScope.updateRating(row.entity.uniqueid, row.entity.rating)" aria-labelledby="default-rating"></uib-rating></div>'},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.uniqueid,controller:\'stream\'}" resource="grid.appScope.Recording"></audio-file-download>'}]},{name:"action",width:150,buttons:[{directive:'<motion-file-download params="{id:row.entity.uniqueid,controller:\'stream\'}" resource="grid.appScope.Recording" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="row.entity.uniqueid+\'.wav\'"></motion-file-download>'},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.uniqueid, row.entity.uniqueid)"}]}]};a.gridOptions=e.gridOptions(d,b,a,{order:"createdAt DESC"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.recordings.list",{url:"/list",templateUrl:"app/channels/voice/recording/list/list.html",controller:"VoiceRecordingListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Recording",["$resource",function(a){return a("/api/voice/recordings/:id/:controller",{id:"@id"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.recordings",{url:"/recordings",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound",{url:"/inbound",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCreateCtrl",["$scope","$uibModalInstance","Route","application","xAlert","$location","$translate",function(a,b,c,d,e,f,g){a.$application=d.application,a.forms={route:void 0},a.item={type:"inbound",appdata:"Inbound Call",context:"from-voip-provider"},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),f.path("/channels/voice/routes/inbound/view/"+a.id+"/applications")})["catch"](function(a){console.log(a),e.show(g.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"InboundRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_PHONE_NUMBER"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}), </span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/inbound/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)"}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"inbound"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/inbound/list/create.modal.html",controller:"VoiceRouteInboundListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound.list",{url:"/list",templateUrl:"app/channels/voice/route/inbound/list/list.html",controller:"VoiceRouteInboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInboundViewCtrl",["$scope","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval","Route","VoiceQueue","Sound","SquareProject","VoiceContext","Interval","VoiceMail","User","Trunk",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){function t(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function u(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=b,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",headerCellFilter:"translate",displayName:"APPLICATION_APPLICATION",enableColumnMenu:!1},{name:"appType",headerCellFilter:"translate",displayName:"APPLICATION_INFO",enableColumnMenu:!1},{name:"appdata",headerCellFilter:"translate",displayName:"APPLICATION_ARGUMENTS",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",headerCellFilter:"translate",displayName:"APPLICATION_TIME",enableColumnMenu:!1},{name:"action",enableColumnMenu:!1,headerCellFilter:"translate",displayName:"APPLICATION_ACTION",width:125,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){v(a.gridOptions.data.length)})}};var v=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={settings:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.$watch("interval",function(a){a&&t(a)},!0),a.updateSetAppdata=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.application.appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.updateSetAppdataSettings=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.route.Applications[a.selectedApp].appdata[0]=a.application.variable+"="+a.application.value:a.route.Applications[a.selectedApp].appdata[0]=null},a.$watch("main.app",function(c){if(c){var d,e,f={},g={};switch(void 0===a.selectedApp&&(a.application={appType:c.type,app:c.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),c.value){case"Queue":d=l,e=m;break;case"Playback":d=m;break;case"AGI":d=n;break;case"Goto":d=o;break;case"Voicemail":d=q;break;case"Dial":switch(c.type){case"internalDial":d=r,f={controller:"all"};break;case"externalDial":d=s}}if(d)return d.get(f).$promise.then(function(b){a.items=b.rows}).then(function(){return e?e.get(g).$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){h.show(b.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,e.path(b)},a.getIntervals=function(){return p.get().$promise.then(function(b){a.Intervals=b.rows,d.syncUpdates("interval",a.Intervals)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:c.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,v(a.gridOptions.data.length)})["catch"](function(a){e.path("/channels/voice/routes/inbound/list")})},a.getApplication=function(){if(void 0===a.selectedApp)e.path("/channels/voice/routes/inbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.$application.applications,{type:a.route.Applications[a.selectedApp].appType});else{var b=_.find(a.$application.applications,{value:a.route.Applications[a.selectedApp].app});if(b)a.main.app=b;else{a.main.app=_.find(a.$application.applications,{type:"custom"});var c=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[c],a.route.Applications[a.selectedApp].appType="custom"}}if("Set"===a.main.app.value){var d=a.route.Applications[a.selectedApp].appdata[0].split("=");a.application.variable=d[0],a.application.value=d[1]}u()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,e.path("/channels/voice/routes/inbound/view/"+c.id+"/applications/settings")},a.updateRoute=function(d){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(f){a.selectedApp=void 0,h.show(b.instant("MESSAGE_WELL_DONE")+"!","success"),d&&e.path("/channels/voice/routes/inbound/view/"+c.id+"/"+d)})["catch"](function(a){console.log(a),h.show(b.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return o.get().$promise.then(function(b){a.voiceContexts=b.rows,d.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.deleteApp=g.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("applications")},a.goNext=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){d.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.inbound.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/inbound/view/view.html",controller:"VoiceRouteInboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.inbound.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/inbound/view/view.settings.html"}).state("main.channels.voice.routes.inbound.view.applications",{url:"/applications",templateUrl:"app/channels/voice/route/inbound/view/view.applications.html"}).state("main.channels.voice.routes.inbound.view.application",{url:"/application",templateUrl:"app/channels/voice/route/view.application.html"}).state("main.channels.voice.routes.inbound.view.applications.settings",{url:"/settings",templateUrl:"app/channels/voice/route/view.applicationSettings.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal",{url:"/internal",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCreateCtrl",["$scope","$uibModalInstance","Route","application","$location","$translate","xAlert",function(a,b,c,d,e,f,g){a.$application=d.application,a.forms={route:void 0},a.item={type:"internal",appdata:"Internal Call",context:"from-sip"},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),e.path("/channels/voice/routes/internal/view/"+a.id+"/applications")})["catch"](function(a){g.error(a)})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"InternalRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_PHONE_NUMBER"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}),</span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/internal/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)" -}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"internal"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/internal/list/create.modal.html",controller:"VoiceRouteInternalListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal.list",{url:"/list",templateUrl:"app/channels/voice/route/internal/list/list.html",controller:"VoiceRouteInternalListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteInternalViewCtrl",["$scope","$translate","$stateParams","socket","$location","WizardHandler","Modal","xAlert","application","interval","Route","VoiceQueue","Sound","SquareProject","VoiceContext","Interval","VoiceMail","User","Trunk",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){function t(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function u(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=b,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",headerCellFilter:"translate",displayName:"APPLICATION_APPLICATION",enableColumnMenu:!1},{name:"appType",headerCellFilter:"translate",displayName:"APPLICATION_INFO",enableColumnMenu:!1},{name:"appdata",headerCellFilter:"translate",displayName:"APPLICATION_ARGUMENTS",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",headerCellFilter:"translate",displayName:"APPLICATION_TIME",enableColumnMenu:!1},{name:"action",enableColumnMenu:!1,headerCellFilter:"translate",displayName:"APPLICATION_ACTION",width:125,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){v(a.gridOptions.data.length)})}};var v=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={settings:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""}},a.$watch("interval",function(a){a&&t(a)},!0),a.updateSetAppdata=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.application.appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.updateSetAppdataSettings=function(){a.application.variable&&a.application.value&&"Set"===a.main.app.value?a.route.Applications[a.selectedApp].appdata[0]=a.application.variable+"="+a.application.value:a.application.appdata[0]=null},a.$watch("main.app",function(c){if(c){var d,e,f={},g={};switch(void 0===a.selectedApp&&(a.application={appType:c.type,app:c.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),c.value){case"Queue":d=l,e=m;break;case"Playback":d=m;break;case"AGI":d=n;break;case"Goto":d=o;break;case"Voicemail":d=q;break;case"Dial":switch(c.type){case"internalDial":d=r,f={controller:"all"};break;case"externalDial":d=s}}if(d)return d.get(f).$promise.then(function(b){a.items=b.rows}).then(function(){return e?e.get(g).$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){h.show(b.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,e.path(b)},a.getIntervals=function(){return p.get().$promise.then(function(b){a.Intervals=b.rows,d.syncUpdates("interval",a.Intervals)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:c.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,v(a.gridOptions.data.length)})["catch"](function(a){e.path("/channels/voice/routes/internal/list")})},a.getApplication=function(){if(void 0===a.selectedApp)e.path("/channels/voice/routes/inbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.$application.applications,{type:a.route.Applications[a.selectedApp].appType});else{var b=_.find(a.$application.applications,{value:a.route.Applications[a.selectedApp].app});if(b)a.main.app=b;else{a.main.app=_.find(a.$application.applications,{type:"custom"});var c=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[c],a.route.Applications[a.selectedApp].appType="custom"}}if("Set"===a.main.app.value){var d=a.route.Applications[a.selectedApp].appdata[0].split("=");a.application.variable=d[0],a.application.value=d[1]}u()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,e.path("/channels/voice/routes/internal/view/"+c.id+"/applications/settings")},a.updateRoute=function(d){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(f){a.selectedApp=void 0,h.show(b.instant("MESSAGE_WELL_DONE")+"!","success"),d&&e.path("/channels/voice/routes/internal/view/"+c.id+"/"+d)})["catch"](function(a){h.show(b.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return o.get().$promise.then(function(b){a.voiceContexts=b.rows,d.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){h.show(b.instant(a.message),"danger")})},a.deleteApp=g.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("applications")},a.goNext=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){d.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.internal.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/internal/view/view.html",controller:"VoiceRouteInternalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.internal.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/internal/view/view.settings.html"}).state("main.channels.voice.routes.internal.view.applications",{url:"/applications",templateUrl:"app/channels/voice/route/internal/view/view.applications.html"}).state("main.channels.voice.routes.internal.view.application",{url:"/application",templateUrl:"app/channels/voice/route/view.application.html"}).state("main.channels.voice.routes.internal.view.applications.settings",{url:"/settings",templateUrl:"app/channels/voice/route/view.applicationSettings.html"})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCreateCtrl",["$scope","$uibModalInstance","Route","application","xAlert","$translate","$location","Tag",function(a,b,c,d,e,f,g,h){a.$application=d.application,a.forms={route:void 0},a.item={type:"outbound",appdata:"Outbound Call",context:"from-sip"},a.getTags=function(){return h.get().$promise.then(function(b){b.rows.unshift({name:"--"}),a.tags=b.rows})["catch"](function(a){e.show(f.instant(a.data.translatedMessage),"danger")})},a.ok=function(){return a.item.exten=a.$application.checkUnderscore(a.item.exten),c.save(a.item).$promise.then(function(a){b.close(a),g.path("/channels/voice/routes/outbound/view/"+a.id+"/routes")})["catch"](function(a){e.show(f.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundListCtrl",["$scope","$http","socket","$translate","$rootScope","xAlert","Modal","stResource","gridOptions","Route","$uibModal","$location","$log",function(a,b,c,d,e,f,g,h,i,j,k,l,m){a.initView=function(){var b={exporterCsvFilename:"OutboundRoutes.csv",columnDefs:[{name:"exten",displayName:"APPLICATION_DESTINATION_PATTERN"},{name:"description"},{name:"applications",cellClass:"ui-grid-vcenter",cellTemplate:'<div data-ng-if="row.entity.Applications.length"><span data-ng-repeat="app in row.entity.Applications | limitTo:2">{{app.app}}({{app.appdata[0]}}),</span>...</div><div data-ng-if="!row.entity.Applications.length">{{\'MESSAGE_NO_AVAILABLE_APPLICATIONS\' | translate}}</div>',enableSorting:!1,enableFiltering:!1,enableColumnMenu:!1},{name:"action",width:170,buttons:[{"class":"blue-hoki",href:"/channels/voice/routes/outbound/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.exten, row.entity.id)"}]}]};a.gridOptions=i.gridOptions(j,b,a,{type:"outbound"})},a.create=function(){k.open({animation:!0,templateUrl:"app/channels/voice/route/outbound/list/create.modal.html",controller:"VoiceRouteOutboundListCreateCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound.list",{url:"/list",templateUrl:"app/channels/voice/route/outbound/list/list.html",controller:"VoiceRouteOutboundListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound",{url:"/outbound",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("VoiceRouteOutboundViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","application","interval","Route","Trunk","VoiceContext","Interval","Tag",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){function p(b){var c,d;if("always"===b.intType)c=null,d="*,*,*,*";else if("list"===b.intType)d=b.IntervalId?_.find(a.Intervals,{id:b.IntervalId}).name:"*,*,*,*",c=b.IntervalId||null;else if("custom"===b.intType){c=null;var e,f,g,h;e=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(f=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(f+="-"+b.wd_to)):f="*",b.md_from&&"always"!==b.md_from?(g=b.md_from,b.md_to&&"always"!==b.md_to&&(g+="-"+b.md_to)):g="*",b.m_from&&"always"!==b.m_from?(h=b.m_from,b.m_to&&"always"!==b.m_to&&(h+="-"+b.m_to)):h="*",d=e+","+f+","+g+","+h}void 0===a.selectedApp?(a.application.interval=d,a.application.IntervalId=c):(a.route.Applications[a.selectedApp].interval=d,a.route.Applications[a.selectedApp].IntervalId=c)}function q(){if(a.interval.intType=a.route.Applications[a.selectedApp].IntervalId?"list":"*,*,*,*"===a.route.Applications[a.selectedApp].interval?"always":"custom",a.interval.IntervalId=a.route.Applications[a.selectedApp].IntervalId,!a.route.Applications[a.selectedApp].IntervalId){var b,c=a.route.Applications[a.selectedApp].interval?a.route.Applications[a.selectedApp].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.interval.t_from=moment(b[0],"HH:mm"),a.interval.t_to=moment(b[1],"HH:mm"),a.interval.alwaysTime=!1):(a.interval.t_from=moment(new Date),a.interval.t_to=moment(new Date),a.interval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.interval.wd_from=b[0],a.interval.wd_to=b[1]?b[1]:"always"):(a.interval.wd_from="always",a.interval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.interval.md_from=b[0],a.interval.md_to=b[1]?b[1]:"always"):(a.interval.md_from="always",a.interval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.interval.m_from=b[0],a.interval.m_to=b[1]?b[1]:"always"):(a.interval.m_from="always",a.interval.m_to="always")}})}}a.$translate=c,a.selectedApp=void 0,a.showGrid=!0,a.$application=i.application,a.$interval=j.interval,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.gridOptions={enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableSorting:!1,rowTemplate:'<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',columnDefs:[{name:"app",displayName:"APPLICATION_APPLICATION",cellClass:"ui-grid-vcenter",cellTemplate:"<div><span data-ng-if=\"row.entity.appType === 'externalDial'\">Default</span><span data-ng-if=\"row.entity.appType !== 'externalDial'\">{{row.entity.app}}</span></div>",headerCellFilter:"translate",enableColumnMenu:!1},{name:"appdata",displayName:"APPLICATION_ARGUMENTS",headerCellFilter:"translate",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.appdata.join(',')}}</div>",enableColumnMenu:!1},{name:"interval",displayName:"APPLICATION_TIME",headerCellFilter:"translate",enableColumnMenu:!1},{name:"action",displayName:"APPLICATION_ACTION",headerCellFilter:"translate",width:125,enableColumnMenu:!1,cellClass:"ui-grid-vcenter",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openApplication(grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="icon-settings"></i></a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteApp(row.entity.app+\' application\', grid.appScope.gridOptions.data.indexOf(row.entity))"><i class="fa fa-trash"></i></a></div>'}],onRegisterApi:function(b){b.draggableRows.on.rowDropped(a,function(b,c){a.updateRoute()}),b.grid.registerDataChangeCallback(function(){r(a.gridOptions.data.length)})}};var r=function(a){var b=a?30*a+120:177;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px")};a.initApplication=function(b){b&&(a.selectedApp=void 0),a.forms={info:void 0,interval:void 0},a.application={},a.interval={intType:"always",t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0},a.main={app:""},a.applications=[{name:"Default",value:"Dial",type:"outboundDial"},{name:"Custom",value:"custom",type:"custom"}]},a.$watch("interval",function(a){a&&p(a)},!0),a.$watch("main.app",function(d){if(d){var e,f;switch(void 0===a.selectedApp&&(a.application={appType:d.type,app:d.value,interval:a.application.interval||"*,*,*,*",appdata:[]}),d.value){case"Dial":e=l;break;default:e=null,f=null}if(e)return e.get().$promise.then(function(b){a.items=b.rows}).then(function(){return f?f.get().$promise:void 0}).then(function(b){b&&(a.items2=b.rows)})["catch"](function(a){b.show(c.instant(a.message),"danger")})}},!0),a.deselectAndRedirect=function(b){a.selectedApp=void 0,f.path(b)},a.getIntervals=function(){return n.get().$promise.then(function(b){a.Intervals=b.rows,e.syncUpdates("interval",a.Intervals)})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getRoute=function(){return k.get({id:d.id}).$promise.then(function(b){a.route=b,a.gridOptions.data=b.Applications,r(a.gridOptions.data.length)})["catch"](function(a){f.path("/channels/voice/routes/outbound/list")})},a.getApplication=function(){if(void 0===a.selectedApp)f.path("/channels/voice/routes/outbound/list");else{if(a.showGrid=!0,a.route.Applications[a.selectedApp].appType)a.main.app=_.find(a.applications,{type:a.route.Applications[a.selectedApp].appType});else{a.main.app=_.find(a.applications,{type:"custom"});var b=a.route.Applications[a.selectedApp].appdata.join(",");a.route.Applications[a.selectedApp].appdata=[b],a.route.Applications[a.selectedApp].appType="custom"}q()}},a.openApplication=function(b){a.selectedApp=b,a.showGrid=!1,f.path("/channels/voice/routes/outbound/view/"+d.id+"/routes/settings")},a.updateRoute=function(e){return a.route.exten=a.$application.checkUnderscore(a.route.exten),k.update({id:a.route.id},a.route).$promise.then(function(g){a.selectedApp=void 0,b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),e&&f.path("/channels/voice/routes/outbound/view/"+d.id+"/"+e)})["catch"](function(a){b.show(c.instant(a.data.translatedMessage),"danger")})},a.getContexts=function(){return m.get().$promise.then(function(b){a.voiceContexts=b.rows,e.syncUpdates("voice_context",a.voiceContexts)})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getTags=function(){return o.get().$promise.then(function(b){b.rows.unshift({name:"--"}),a.tags=b.rows})["catch"](function(a){b.show(c.instant(a.data.translatedMessage),"danger")})},a.deleteApp=h.confirm["delete"](function(b){a.route.Applications.splice(b,1),a.updateRoute()}),a.addApplication=function(){a.route.Applications.push(a.application),a.updateRoute("routes")},a.goNext=function(){g.wizard().next()},a.previous=function(){g.wizard().previous()},a.formValidation=function(a){return a},a.$on("destroy",function(){e.unsyncUpdates("voice_extension")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes.outbound.view",{url:"/view/:id",templateUrl:"app/channels/voice/route/outbound/view/view.html",controller:"VoiceRouteOutboundViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.routes.outbound.view.settings",{url:"/settings",templateUrl:"app/channels/voice/route/outbound/view/view.settings.html"}).state("main.channels.voice.routes.outbound.view.routes",{url:"/routes",templateUrl:"app/channels/voice/route/outbound/view/view.routes.html"}).state("main.channels.voice.routes.outbound.view.route",{url:"/route",templateUrl:"app/channels/voice/route/outbound/view/view.route.html"}).state("main.channels.voice.routes.outbound.view.routes.settings",{url:"/settings",templateUrl:"app/channels/voice/route/outbound/view/view.routeSettings.html"})}]),angular.module("xCallyShuttleApp").factory("Route",["$resource",function(a){return a("/api/voice/extensions/:id",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.routes",{url:"/routes",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice",{url:"/voice",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:7}}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailListCtrl",["$scope","VoiceMail","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"voice_mails.csv",primaryKey:"uniqueid",columnDefs:[{name:"mailbox"},{name:"fullname"},{name:"email"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/channels/voice/voicemails/view/{{row.entity.uniqueid}}/settings",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.mailbox, row.entity.uniqueid)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.list",{url:"/list",templateUrl:"app/channels/voice/voicemail/list/list.html",controller:"VoiceVoicemailListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailViewCtrl",["$scope","VoiceMail","VoiceMailMessage","VoiceContext","$http","xAlert","$translate","$stateParams","socket","$sce","Modal","$location","gridOptions",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){var b={exporterCsvFilename:"voice_mail_messages.csv",primaryKey:"id",columnDefs:[{name:"callerid"},{name:"stamp",displayName:"APPLICATION_DATE",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{grid.appScope.moment(row.entity.stamp).format('YYYY-MM-DD HH:mm:ss')}}</div>"},{name:"duration",cellClass:"ui-grid-vcenter",cellTemplate:"<div>{{row.entity.duration*1000 | date:'mm:ss'}}</div>"},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.id,controller:\'download\'}" resource="grid.appScope.VoiceMailMessage"></audio-file-download>'}]},{name:"action",width:150,buttons:[{directive:'<motion-file-download params="{id:row.entity.id,controller:\'download\'}" resource="grid.appScope.VoiceMailMessage" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="row.entity.msg_id+\'.wav\'"></motion-file-download>'},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.id, row.entity.id)"}]}]};a.gridOptions=m.gridOptions(c,b,a,{mailbox:a.voicemail.mailbox,context:a.voicemail.context})}a.moment=moment,a.VoiceMailMessage=c,a.getVoicemail=function(){return b.get({id:h.uniqueid}).$promise.then(function(b){delete b.password,delete b.stamp,a.voicemail=b})["catch"](function(a){l.path("/voice/voicemails/list")})},a.updateVoiceVoicemail=function(){return b.update({id:h.uniqueid},a.voicemail).$promise.then(function(){f.show(g.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(g.instant(a.message),"danger")})},a.getContexts=function(){return d.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){f.show(a.message,"danger")})},a.getMessages=function(){return a.voicemail?void n():b.get({id:h.uniqueid}).$promise.then(function(b){delete b.password,delete b.stamp,a.voicemail=b,n()})["catch"](function(a){l.path("/voice/voicemails/view/"+h.uniqueid+"/settings")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.view",{url:"/view/:uniqueid",templateUrl:"app/channels/voice/voicemail/view/view.html",controller:"VoiceVoicemailViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.channels.voice.voicemails.view.settings",{url:"/settings",templateUrl:"app/channels/voice/voicemail/view/view.settings.html"}).state("main.channels.voice.voicemails.view.messages",{url:"/messages",templateUrl:"app/channels/voice/voicemail/view/view.messages.html"})}]),angular.module("xCallyShuttleApp").factory("VoiceMail",["$resource",function(a){return a("/api/voice/voicemails/:id/:controller",{uniqueid:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails",{url:"/voicemails",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("VoiceMailMessage",["$resource",function(a){return a("/api/voice/voicemails/messages/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("VoiceVoicemailWizardCtrl",["$scope","VoiceMail","xAlert","WizardHandler","$location","Setting",function(a,b,c,d,e,f){a.initWizard=function(){a.form={},a.item={context:"from-voicemail"}},a.next=function(){d.wizard().next()},a.previous=function(){d.wizard().previous()},a.exitValidation=function(a){return a},a.getFirstFreeMailbox=function(){f.get({controller:"mailbox"}).$promise.then(function(b){a.item.mailbox=b.value})["catch"](function(a){c.show(a.data.message,"danger")})},a.createItem=function(){return a.item.customer_id=a.item.mailbox,b.save(a.item).$promise.then(function(){e.path("/channels/voice/voicemails/list")})["catch"](function(a){c.show(data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.channels.voice.voicemails.wizard",{url:"/wizard",templateUrl:"app/channels/voice/voicemail/wizard/wizard.html",controller:"VoiceVoicemailWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("VoiceQueue",["$resource",function(a){return a("/api/voice/queues/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Company",["$resource",function(a){return a("/api/contactmanager/companies/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies",{url:"/companies",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").controller("CompanyListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerCompanyListCtrl",["$scope","$translate","xAlert","Modal","$uibModal","$log","Company","gridOptions","$location",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"Companies.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:190,buttons:[{"class":"blue-hoki",name:"profile",href:"/contactmanager/companies/view/{{row.entity.id}}/settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green-turquoise",name:"contacts",uisref:"main.contactmanager.contacts.list({companyId:{{row.entity.id}}})"}]}]};a.gridOptions=h.gridOptions(g,b,a)},a.create=function(){var a=e.open({animation:!0,size:"lg",templateUrl:"app/contactmanager/company/list/create.modal.html",controller:"CompanyListCreateModalCtrl"});a.result.then(function(a){return g.save(a).$promise.then(function(a){i.path("/contactmanager/companies/view/"+a.id+"/settings")})["catch"](function(a){c.show(a.data.message,"danger")})},function(){f.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies.list",{url:"/list",templateUrl:"app/contactmanager/company/list/list.html",controller:"ContactManagerCompanyListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("ContactManagerCompanyViewCtrl",["$scope","xAlert","$translate","$stateParams","$location","Company",function(a,b,c,d,e,f){a.getCompany=function(){return f.get({id:d.id}).$promise.then(function(b){a.company=b})["catch"](function(a){e.path("/contactmanager/companies/list")})},a.updateCompany=function(){return f.update({id:d.id},a.company).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.companies.view",{url:"/view/:id",templateUrl:"app/contactmanager/company/view/view.html",controller:"ContactManagerCompanyViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.contactmanager.companies.view.settings",{url:"/settings",templateUrl:"app/contactmanager/company/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("Contact",["$resource",function(a){return a("/api/contactmanager/contacts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.contacts",{url:"/contacts",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListImportModalCtrl",["$scope","$uibModalInstance","indexes","csv","xAlert","socket","List","Contact","$translate",function(a,b,c,d,e,f,g,h,i){function j(b){if(b>=a.csvLength||a.stopped)return void(a.importing=!1);for(var c,f=[],g=b;b+200>g&&g<a.csvLength;g++)c={},_.forOwn(a.item,function(b,e){switch(e){case"tags":c.tags=[],a.item.tags.forEach(function(a){""!==d[g][a]&&c.tags.push(d[g][a])});break;default:c[e]=d[g][b]}}),c.tags=c.tags?c.tags.join(","):void 0,c.ListId=a.item.ListId,c.CompanyId=a.item.CompanyId||null,f.push(c);return h.save({controller:"bulk"},{contacts:f}).$promise.then(function(b){a["import"].success+=b.ok*a.addingQuote,a["import"].succeeded+=b.ok,a["import"].fail+=b.ko*a.addingQuote,a["import"].failed+=b.ko,j(g)})["catch"](function(b){a.stopped=!0,e.error(b),j(g)})}a.indexes=c,a.importing=!1,a.submitted=!1,a.stopped=!1,a["import"]={success:0,fail:0,succeeded:0,failed:0},a.csvLength=d.length,a.addingQuote=100/a.csvLength,a.forms={csv:void 0},a.item={},a.start=function(){a.importing=!0,a.submitted=!0,j(0)},a.getLists=function(){return g.get().$promise.then(function(b){a.lists=b.rows,a.item.ListId=1,a.getCustomFields()})["catch"](function(a){e.show(i.instant(a.message)+"!","danger")})},a.getCustomFields=function(){return g.get({listId:a.item.ListId,controller:"customfields"}).$promise.then(function(b){b.rows.forEach(function(a){a.values=JSON.parse(a.values); -}),a.customFields=b.rows,f.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),f.socket.on("custom_field:save",function(b){if(b.ListId===a.item.ListId){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}})})["catch"](function(a){console.error(a),e.show(a.message,"danger")})},a.close=function(){b.close()},a.stop=function(){a.stopped=!0}}]),angular.module("xCallyShuttleApp").controller("ContactManagerContactListCtrl",["$scope","$translate","Modal","FileUploader","Papa","$uibModal","$log","Contact","gridOptions","List","uiGridConstants","xAlert","socket","$stateParams","Auth","Company",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a.Auth=o,a.initView=function(){var c;return j.get().$promise.then(function(b){return a.lists=[],b.rows.forEach(function(b,c){a.lists.push({value:b.id,label:b.name})}),p.get().$promise}).then(function(b){a.companies=[],b.rows.forEach(function(b,c){a.companies.push({value:b.id,label:b.name})})}).then(function(){var b=[{"class":"blue-hoki",name:"profile",onClick:"grid.appScope.openContactTab(row.entity)"}];o.isAgent()||b.push({"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}),c={exporterCsvFilename:"Contacts.csv",columnDefs:[{name:"firstName"},{name:"lastName"},{name:"phone"},{name:"mobile"},{name:"email"},{name:"ListId",displayName:"APPLICATION_LIST",field:"List.name",filter:{type:k.filter.SELECT,term:n.listId||null,selectOptions:a.lists}},{name:"CompanyId",displayName:"APPLICATION_COMPANY",field:"Company.name",filter:{type:k.filter.SELECT,term:n.companyId||null,selectOptions:a.companies}},{name:"description"},{name:"action",width:125,buttons:b}]},a.gridOptions=i.gridOptions(h,c,a)})["catch"](function(a){l.show(b.instant(a.message)+"!","danger")})},d.FileSelect.prototype.isEmptyAfterSelection=function(){return!0};var q=a.uploader=new d({queueLimit:1,clearInputAfterAddedToQueue:!0});q.onAfterAddingFile=function(b){console.log("fileadded"),e.parse(b._file,{header:!0,complete:function(b){a.uploader.clearQueue(),a["import"](b.data)},error:function(a){console.log(a)}})},a["import"]=function(b){var c=f.open({animation:!0,size:"lg",backdrop:"static",keyboard:!1,templateUrl:"app/contactmanager/contact/list/import.modal.html",controller:"ContactManagerListImportModalCtrl",resolve:{indexes:function(){return _.keys(b[0])},csv:function(){return b}}});c.result.then(function(b){a.gridOptions.getPage()},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.contacts.list",{url:"/list",templateUrl:"app/contactmanager/contact/list/list.html",params:{listId:null,companyId:null},controller:"ContactManagerContactListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager",{url:"/contactmanager",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").factory("List",["$resource",function(a){return a("/api/contactmanager/lists/:listId/:controller/:id",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists",{url:"/lists",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:5}}})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerListListCtrl",["$scope","$http","$translate","Modal","xAlert","$uibModal","$log","List","gridOptions",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"Lists.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:190,buttons:[{"class":"blue-hoki",name:"settings",href:"/contactmanager/lists/view/{{row.entity.id}}/settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"green-turquoise",name:"contacts",uisref:"main.contactmanager.contacts.list({listId:{{row.entity.id}}})"}]}]};a.gridOptions=i.gridOptions(h,b,a)},a.create=function(){var d=f.open({animation:!0,templateUrl:"app/contactmanager/list/list/create.modal.html",controller:"ContactManagerListListCreateModalCtrl"});d.result.then(function(d){b.post("/api/contactmanager/lists/",d).then(function(b){a.gridOptions.getPage(),e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists.list",{url:"/list",templateUrl:"app/contactmanager/list/list/list.html",controller:"ContactManagerListListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ContactManagerListCustomFieldViewCreateModalCtrl",["$scope","$uibModalInstance","$translate",function(a,b,c){a.$translate=c,a.forms={dashboard:void 0},a.item={},a.choices=[{value:""}],a.addField=function(){a.choices.push({})},a.removeField=function(b){a.choices.splice(b,1)},a.types=[{name:"APPLICATION_TEXT",value:"text"},{name:"APPLICATION_SELECT",value:"select"}],a.ok=function(){"select"===a.item.type&&(a.item.values=angular.toJson(a.choices)),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerListViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","$uibModal","$log","Modal","List","Team","gridOptions",function(a,b,c,d,e,f,g,h,i,j,k,l){var m=function(){return{select:function(b){return j.save({listId:a.list.id,controller:"agents"},{agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})},deselect:function(b){return j["delete"]({listId:a.list.id,controller:"agents",agents:b}).$promise.then(function(){a.getTeams()})["catch"](function(a){console.log(a)})}}};a.getList=function(){return j.get({listId:d.id}).$promise.then(function(b){a.list=b})["catch"](function(a){f.path("/contactmanager/lists/list")})},a.updateList=function(){return j.update({id:d.id},a.list).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.getTeams=function(){return k.get({controller:"associations"}).$promise.then(function(b){return a.teams=b.rows,a.list?void 0:a.getList()}).then(function(){return a.list.defaultEntry&&f.path("/contactmanager/lists/list"),j.get({listId:d.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindQueue(a.teams,_.map(b.rows,function(a){return{id:a.id}}),m)})["catch"](function(a){console.error(a)})},a.initCustomFields=function(){var b={exporterCsvFilename:"customfields.csv",primaryKey:"id",columnDefs:[{name:"alias",displayName:"APPLICATION_NAME"},{name:"name",displayName:"APPLICATION_FIELD"},{name:"type"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/contactmanager/lists/view/{{grid.appScope.$stateParams.id}}/customfields/settings/{{row.entity.id}}",name:"settings"},{"class":"red-sunglo",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)",name:"delete"}]}]};a.gridOptions=l.gridOptions(j,b,a,{listId:d.id,controller:"customfields"})},a.create=function(){var e=g.open({animation:!0,templateUrl:"app/contactmanager/list/view/create.modal.html",controller:"ContactManagerListCustomFieldViewCreateModalCtrl"});e.result.then(function(e){return j.save({listId:d.id,controller:"customfields"},e).$promise.then(function(d){a.gridOptions.getPage(),b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.message||a.data.message,"danger")})},function(){h.info("Modal dismissed at: "+new Date)})},a.getCustomField=function(){return j.get({listId:d.id,controller:"customfields",id:d.cfId}).$promise.then(function(b){console.log(b),a.customField=b,"select"===a.customField.type&&(a.choices=JSON.parse(a.customField.values))})["catch"](function(a){console.error(a)})},a.updateCustomField=function(){var e=angular.copy(a.customField);return"select"===e.type&&(e.values=angular.toJson(a.choices)),j.update({listId:d.id,controller:"customfields",id:d.cfId},e).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(c.instant(a.message),"danger")})},a.addField=function(){a.choices.push({})},a.removeField=function(b){a.choices.splice(b,1)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.contactmanager.lists.view",{url:"/view/:id",templateUrl:"app/contactmanager/list/view/view.html",controller:"ContactManagerListViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.contactmanager.lists.view.settings",{url:"/settings",templateUrl:"app/contactmanager/list/view/view.settings.html"}).state("main.contactmanager.lists.view.agents",{url:"/agents",templateUrl:"app/contactmanager/list/view/view.agents.html",cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}}).state("main.contactmanager.lists.view.customfields",{url:"/customfields",templateUrl:"app/contactmanager/list/view/view.customFields.html"}).state("main.contactmanager.lists.view.customfields.settings",{url:"/settings/:cfId",templateUrl:"app/contactmanager/list/view/view.customFieldSettings.html",controller:"ContactManagerListViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("DashboardChatCtrl",["$scope","Auth","ReportChatRoom","socket","Agent","$q","$translate","ReportChatSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment;var j=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasChatQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){j(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)})}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"websitename",displayName:"APPLICATION_WEBSITE",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=f.defer();return b.resolve(g.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){j(a.table2.data.length)})}},e.get({id:b.getCurrentUser().id,controller:"chat",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_chat_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.ChatQueueId})||a.table1.data.push({id:c.ChatQueueId,UserHasChatQueue:c})}),d.socket.on("user_has_chat_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.ChatQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_chat_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_chat_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("chat_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("chat_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("chat_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("chat_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})},a.initAbandoned=function(){return c.get({id:"abandoned"}).$promise.then(function(b){a.abandoned=b.value,d.socket.on("chat_dashboard:unmanaged",function(b){a.abandoned=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardCtrl",["$scope","$translate","Auth",function(a,b,c){a.Auth=c}]),angular.module("xCallyShuttleApp").factory("Dashboard",["$resource",function(a){return a("/api/dashboards/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.dashboard",{"abstract":!0,url:"/dashboard",templateUrl:"app/dashboard/dashboard.html",controller:"DashboardCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:1}}}).state("main.dashboard.voice",{url:"/voice",controller:"DashboardVoiceCtrl",templateUrl:"app/dashboard/voice/voice.html"}).state("main.dashboard.chat",{url:"/chat",controller:"DashboardChatCtrl",templateUrl:"app/dashboard/chat/chat.html",data:{permissions:{redirectTo:"landing",id:8}}}).state("main.dashboard.mail",{url:"/mail",controller:"DashboardMailCtrl",templateUrl:"app/dashboard/mail/mail.html",data:{permissions:{redirectTo:"landing",id:9}}}).state("main.dashboard.fax",{url:"/fax",controller:"DashboardFaxCtrl",templateUrl:"app/dashboard/fax/fax.html",data:{permissions:{redirectTo:"landing",id:10}}}).state("main.dashboard.sms",{url:"/sms",controller:"DashboardSmsCtrl",templateUrl:"app/dashboard/sms/sms.html",data:{permissions:{redirectTo:"landing",id:11}}})}]),angular.module("xCallyShuttleApp").controller("DashboardFaxCtrl",["$scope","Auth","ReportFaxRoom","socket","Agent","$translate","$q","ReportFaxSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasFaxQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b}},e.get({id:b.getCurrentUser().id,controller:"fax",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_fax_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.FaxQueueId})||a.table1.data.push({id:c.FaxQueueId,UserHasFaxQueue:c})}),d.socket.on("user_has_fax_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.FaxQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_fax_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_fax_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("fax_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("fax_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("fax_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("fax_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardMailCtrl",["$scope","Auth","ReportMailRoom","socket","Agent","$translate","$q","ReportMailSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasMailQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){reSize(a.table2.data.length)})}},e.get({id:b.getCurrentUser().id,controller:"mail",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_mail_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.MailQueueId})||a.table1.data.push({id:c.MailQueueId,UserHasMailQueue:c})}),d.socket.on("user_has_mail_queue:remove",function(c){console.log(c),c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.MailQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_mail_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_mail_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("mail_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("mail_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("mail_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("mail_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardSmsCtrl",["$scope","Auth","ReportSmsRoom","socket","Agent","$translate","$q","ReportSmsSession","$timeout",function(a,b,c,d,e,f,g,h,i){a.Auth=b,a.moment=moment,a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasSmsQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b}},a.table2={headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,columnDefs:[{name:"uniqueid",displayName:"APPLICATION_UNIQUEID",headerCellFilter:"translate"},{name:"accountname",displayName:"APPLICATION_ACCOUNT",headerCellFilter:"translate"},{name:"application",displayName:"APPLICATION_APPLICATION",headerCellFilter:"translate"},{name:"status",displayName:"APPLICATION_STATUS",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span data-ng-if="!row.entity.leaveAt">{{\'APPLICATION_QUEUESTATUS_WAITING\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.abandon">{{\'APPLICATION_QUEUESTATUS_ABANDON\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.complete">{{\'APPLICATION_QUEUESTATUS_COMPLETE\' | translate}}</span><span data-ng-if="row.entity.leaveAt && row.entity.unmanaged">{{\'APPLICATION_UNMANAGED\' | translate}}</span> [<timer start-time="grid.appScope.moment(row.entity.updatedAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer>]</div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1},{name:"membername",displayName:"APPLICATION_AGENT",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.membername || ''}}</span></div>"},{name:"queuename",displayName:"APPLICATION_QUEUE",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:"<div>{{row.entity.queuename || ''}}</span></div>"}],data:[],gridMenuTitleFilter:function(a){var b=g.defer();return b.resolve(f.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b}},e.get({id:b.getCurrentUser().id,controller:"sms",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){d.socket.on("user_has_sms_queue:save",function(c){c.UserId!=b.getCurrentUser().id||_.find(a.table1.data,{id:c.SmsQueueId})||a.table1.data.push({id:c.SmsQueueId,UserHasSmsQueue:c})}),d.socket.on("user_has_sms_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{id:c.SmsQueueId})})})["catch"](function(a){console.error(a)}),h.get({controller:"waiting",controller2:"applications"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){d.socket.on("report_sms_session:save",function(b){var c=_.find(a.table2.data,{id:b.id});c?(_.merge(c,b),b.leaveAt&&i(function(){_.remove(a.table2.data,{id:b.id})},1e4)):b.leaveAt||a.table2.data.push(b)}),d.socket.on("report_sms_session:remove",function(b){_.remove(a.table2.data,{id:b.id})})})["catch"](function(a){console.log(a)})},a.initOpen=function(){return c.get({id:"open"}).$promise.then(function(b){a.open=b.value,d.socket.on("sms_dashboard:open",function(b){a.open=b.value})})["catch"](function(a){console.error(a)})},a.initClosed=function(){return c.get({id:"closed"}).$promise.then(function(b){a.closed=b.value,d.socket.on("sms_dashboard:closed",function(b){a.closed=b.value})})["catch"](function(a){console.error(a)})},a.initNew=function(){return c.get({id:"new"}).$promise.then(function(b){a["new"]=b.value,d.socket.on("sms_dashboard:new",function(b){a["new"]=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,d.socket.on("sms_dashboard:unmanaged",function(b){a.umanaged=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("DashboardVoiceCtrl",["$scope","Auth","ReportQueue","ReportCall","Agent","socket",function(a,b,c,d,e,f){a.Auth=b;var g=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.initAgent=function(){a.table1={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"UserHasVoiceQueue.queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"},{name:"UserHasVoiceQueue.loggedAt",displayName:"logged At",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.UserHasVoiceQueue.loggedAt"></span></div>'},{name:"UserHasVoiceQueue.lastcall",headerCellFilter:"translate",displayName:"APPLICATION_LAST_CALL",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.UserHasVoiceQueue.lastcall"></span></div>'},{name:"UserHasVoiceQueue.callstaken",headerCellFilter:"translate",displayName:"APPLICATION_CALLS_TAKEN",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){g(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)})}},a.table2={enableGridMenu:!1,enableHorizontalScrollbar:0,enableVerticalScrollbar:0,multiSelect:!0,columnDefs:[{name:"calleridnum",headerCellFilter:"translate",displayName:"APPLICATION_NUMBER",cellClass:"text-center ui-grid-vcenter"},{name:"calleridname",headerCellFilter:"translate",displayName:"APPLICATION_NAME",cellClass:"text-center ui-grid-vcenter"},{name:"queue",headerCellFilter:"translate",displayName:"APPLICATION_QUEUE",cellClass:"text-center ui-grid-vcenter"}],data:[],onRegisterApi:function(b){a.gridApi1=b,a.gridApi1.grid.registerDataChangeCallback(function(){g(a.gridApi1.core.getVisibleRows(a.gridApi1.grid).length)})}},e.get({id:b.getCurrentUser().id,controller:"voice",controller1:"queues"}).$promise.then(function(b){a.table1.data=b.rows})["finally"](function(){f.socket.on("user_has_voice_queue:save",function(c){if(c.UserId===b.getCurrentUser().id){var d=_.findIndex(a.table1.data,{name:c.queue});d>-1?(a.table1.data[d].UserHasVoiceQueue.loggedAt=c.loggedAt,a.table1.data[d].UserHasVoiceQueue.lastcall=c.lastcall,a.table1.data[d].UserHasVoiceQueue.callstaken=c.callstaken):(c.callstaken=0,a.table1.data.push({name:c.queue,UserHasVoiceQueue:c}))}}),f.socket.on("user_has_voice_queue:remove",function(c){c.UserId===b.getCurrentUser().id&&_.remove(a.table1.data,{name:c.queue})})})["catch"](function(a){console.error(a)}),c.get({id:"waiting",controller:"list"}).$promise.then(function(b){a.table2.data=b.rows})["finally"](function(){f.socket.on("report_queue:save",function(b){b.queuecallerleaveAt?_.remove(a.table2.data,{id:b.id}):_.find(a.table1.data,{name:b.queue})&&a.table2.data.push(b)})})["catch"](function(a){console.error(a)})},a.initWaiting=function(){return c.get({id:"waiting"}).$promise.then(function(b){a.waiting=b.value,f.socket.on("dashboard:waiting",function(b){a.waiting=b.value})})["catch"](function(a){console.error(a)})},a.initActive=function(){return c.get({id:"active"}).$promise.then(function(b){a.active=b.value,f.socket.on("dashboard:active",function(b){a.active=b.value})})["catch"](function(a){console.error(a)})},a.initAnswered=function(){return c.get({id:"answered"}).$promise.then(function(b){a.answered=b.value,f.socket.on("dashboard:answered",function(b){a.answered=b.value})})["catch"](function(a){console.error(a)})},a.initAbandoned=function(){return c.get({id:"abandoned"}).$promise.then(function(b){a.abandoned=b.value,f.socket.on("dashboard:abandoned",function(b){a.abandoned=b.value})})["catch"](function(a){console.error(a)}); -},a.initAvgAnswerTime=function(){return c.get({id:"avganswertime"}).$promise.then(function(b){a.avganswertime=b.value,f.socket.on("dashboard:avganswertime",function(b){a.avganswertime=b.value})})["catch"](function(a){console.error(a)})},a.initAvgTalkTime=function(){return c.get({id:"avgtalktime"}).$promise.then(function(b){a.avgtalktime=b.value,f.socket.on("dashboard:avgtalktime",function(b){a.avgtalktime=b.value})})["catch"](function(a){console.error(a)})},a.initAnswerRate=function(){return c.get({id:"answerrate"}).$promise.then(function(b){a.answerrate=b.value,f.socket.on("dashboard:answerrate",function(b){a.answerrate=b.value})})["catch"](function(a){console.error(a)})},a.initTotalOffered=function(){return c.get({id:"totaloffered"}).$promise.then(function(b){a.totaloffered=b.value,f.socket.on("dashboard:totaloffered",function(b){a.totaloffered=b.value})})["catch"](function(a){console.error(a)})},a.initUnmanaged=function(){return c.get({id:"unmanaged"}).$promise.then(function(b){a.unmanaged=b.value,f.socket.on("dashboard:unmanaged",function(b){a.unmanaged=b.value})})["catch"](function(a){console.error(a)})},a.initAbandonRate=function(){return c.get({id:"abandonrate"}).$promise.then(function(b){a.abandonrate=b.value,f.socket.on("dashboard:abandonrate",function(b){a.abandonrate=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutbound=function(){return d.get({id:"manualoutbound"}).$promise.then(function(b){a.manualoutbound=b.value,f.socket.on("dashboard:manualoutbound",function(b){a.manualoutbound=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundGlobalDuration=function(){return d.get({id:"manualoutboundglobalduration"}).$promise.then(function(b){a.manualoutboundglobalduration=b.value,f.socket.on("dashboard:manualoutboundglobalduration",function(b){a.manualoutboundglobalduration=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAvgDuration=function(){return d.get({id:"manualoutboundavgduration"}).$promise.then(function(b){a.manualoutboundavgduration=b.value,f.socket.on("dashboard:manualoutboundavgduration",function(b){a.manualoutboundavgduration=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAnswered=function(){return d.get({id:"manualoutboundanswered"}).$promise.then(function(b){a.manualoutboundanswered=b.value,f.socket.on("dashboard:manualoutboundanswered",function(b){a.manualoutboundanswered=b.value})})["catch"](function(a){console.error(a)})},a.initManualOutboundAnswerRate=function(){return d.get({id:"manualoutboundanswerrate"}).$promise.then(function(b){a.manualoutboundanswerrate=b.value,f.socket.on("dashboard:manualoutboundanswerrate",function(b){a.manualoutboundanswerrate=b.value})})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk",{url:"/desk",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("DeskAccount",["$resource",function(a){return a("/api/desk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("DeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.map(a.displayedDeskAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedDeskAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("desk_account"),b.url="/api/desk/accounts",h.getPage(b).then(function(d){a.displayedDeskAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedDeskAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedDeskAccounts.length)}),f.socket.on("desk_account:save",function(){a.initList(b)}),f.socket.on("desk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/desk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/desk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/desk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.list",{url:"/list",templateUrl:"app/desk/list/list.html",controller:"DeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("DeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","desk_com",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){f.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){g.unsyncUpdates("desk_configuration"),g.unsyncUpdates("desk_field")}),a.initView=function(){b.get("/api/desk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){h.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/desk/accounts/"+c.id,a.account).success(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/desk/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,g.socket.on("desk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.deleteConfiguration=i.confirm["delete"](function(a){b["delete"]("api/desk/configurations/"+a).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/desk/configurations",a.configuration).success(function(a){e.path("desk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){h.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/desk/accounts/"+c.id+"/fields").success(function(b){a.accountFields=j.fields.concat(b)}).error(function(a){h.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/desk/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,g.socket.on("desk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){h.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){h.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/desk/fields/"+a.id).success(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/desk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/desk/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/desk/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){h.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/desk/fields/"+a.id,a).success(function(){}).error(function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.idField){var c=_.find(a.accountFields,"id",b.idField);c&&(b.customField=_.result(c,"custom",!0))}a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"id",b);return c?c.data.choices?c.data.choices:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.view",{url:"/view/:id",templateUrl:"app/desk/view/view.html",controller:"DeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.desk.view.account",{url:"/account",templateUrl:"app/desk/view/view.account.html"}).state("main.desk.view.configurations",{url:"/configurations",templateUrl:"app/desk/view/view.configurations.html"}).state("main.desk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/desk/view/view.configurationSettings.html",controller:"DeskViewCtrl"}).state("main.desk.view.configuration",{url:"/configuration",templateUrl:"app/desk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("DeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/desk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/desk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.desk.wizard",{url:"/wizard",templateUrl:"app/desk/wizard/wizard.html",controller:"DeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk",{url:"/freshdesk",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("FreshdeskAccount",["$resource",function(a){return a("/api/freshdesk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("FreshdeskListCtrl",["$scope","$http","$rootScope","xAlert","$translate","socket","Modal","stResource",function(a,b,c,d,e,f,g,h){a.conf={accountsByPage:{name:"10",value:10}},a.accountsByPage=[{name:"10",value:10},{name:"25",value:25},{name:"50",value:50},{name:"All",value:0}],a.accounts={checked:[]},a.check=function(b,c){c?a.accounts.checked=angular.copy(_.map(a.displayedFreshdeskAccounts,"id")):a.accounts.checked=[]},a.getAccounts=function(b){return _.map(a.displayedFreshdeskAccounts,function(a){var c={};return b.forEach(function(b){c[b]=a[b]}),c})},a.initList=function(b){f.unsyncUpdates("freshdesk_account"),b.url="/api/freshdesk/accounts",h.getPage(b).then(function(d){a.displayedFreshdeskAccounts=d.rows,b.pagination.numberOfPages=d.total_pages,c.updateTableConfig(a.accountsByPage,a.displayedFreshdeskAccounts.length),c.updateTableConfig(a.conf.accountsByPage,a.displayedFreshdeskAccounts.length)}),f.socket.on("freshdesk_account:save",function(){a.initList(b)}),f.socket.on("freshdesk_account:remove",function(c){a.accounts.checked=_.without(a.accounts.checked,c.id),a.initList(b)})},a.deleteItem=g.confirm["delete"](function(a){b["delete"]("/api/freshdesk/accounts/"+a).success(function(){d.show(e.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.deleteItems=g.confirm["delete"](function(){b["delete"]("/api/freshdesk/accounts",{params:{id:a.accounts.checked}}).success(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")}).error(function(a){d.show(e.instant(a.message),"danger")})}),a.checkAccount=function(a){b.get("/api/freshdesk/accounts/"+a+"/check").then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.list",{url:"/list",templateUrl:"app/freshdesk/list/list.html",controller:"FreshdeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("FreshdeskViewCtrl",["$scope","$http","$stateParams","$translate","$location","$filter","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){h.unsyncUpdates("freshdesk_configuration"),h.unsyncUpdates("freshdesk_field")}),a.initView=function(){b.get("/api/freshdesk/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){i.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/freshdesk/accounts/"+c.id,a.account).success(function(){i.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/freshdesk/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,h.socket.on("freshdesk_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.deleteConfiguration=j.confirm["delete"](function(a){b["delete"]("api/freshdesk/configurations/"+a).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/freshdesk/configurations",a.configuration).success(function(a){e.path("freshdesk/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){i.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/freshdesk/accounts/"+c.id+"/fields").success(function(b){a.accountFields=[],b=f("freshdesk")(b),_.forEach(b,function(b){a.accountFields.push(b.ticket_field)})}).error(function(a){i.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/freshdesk/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,h.socket.on("freshdesk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){i.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/freshdesk/fields/"+a.id).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/freshdesk/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/freshdesk/fields/"+a.id,a).success(function(){}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.idField){var c=_.find(a.accountFields,"name",b.idField);c&&(b.customField=!_.result(c,"default",!0))}a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);return c?c.choices.length>0?c.choices:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.view",{url:"/view/:id",templateUrl:"app/freshdesk/view/view.html",controller:"FreshdeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.freshdesk.view.account",{url:"/account",templateUrl:"app/freshdesk/view/view.account.html"}).state("main.freshdesk.view.configurations",{url:"/configurations",templateUrl:"app/freshdesk/view/view.configurations.html"}).state("main.freshdesk.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/freshdesk/view/view.configurationSettings.html",controller:"FreshdeskViewCtrl"}).state("main.freshdesk.view.configuration",{url:"/configuration",templateUrl:"app/freshdesk/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("FreshdeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/freshdesk/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/freshdesk/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.freshdesk.wizard",{url:"/wizard",templateUrl:"app/freshdesk/wizard/wizard.html",controller:"FreshdeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations",{url:"/integrations",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:19}}})}]),angular.module("xCallyShuttleApp").factory("Integration",["$resource",function(a){return a("/api/integrations/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").controller("IntegrationListCtrl",["$scope","Modal","socket","FileUploader","Integration","xAlert",function(a,b,c,d,e,f){a.integrationsByPage=10;var g=a.uploader=new d({url:"api/integrations",autoUpload:!0,removeAfterUpload:!0});g.filters.push({name:"zipFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|zip|".indexOf(b)}}),g.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),f.show(b.name,"success")},g.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),b.errors.forEach(function(a){f.show(a.message,"danger")})},a.deleteItem=b.confirm["delete"](function(a){e["delete"]({id:a},function(){f.show("Integration Removed","success")},function(a){f.show(a.data.errors,"danger")})}),a.initList=function(){a.integrations=e.query({},function(a){c.syncUpdates("integration",a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.integrations.list",{url:"/list",templateUrl:"app/integration/list/list.html",controller:"IntegrationListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty",{url:"/jscripty",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("JscriptyProject",["$resource",function(a){return a("/api/jscripty/projects/:id/:controller/:action/:action2",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectListCtrl",["$scope","$uibModal","JscriptyProject","gridOptions","Auth",function(a,b,c,d,e){a.isAdmin=e.isAdmin(),a.initView=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:300,buttons:[{"class":"blue-hoki",icon:"icon-settings",href:"/jscripty/projects/view/{{row.entity.id}}",hide:!e.isAdmin()},{"class":" green-turquoise",icon:"fa fa-play",onClick:"grid.appScope.openJscriptyTab(row.entity)"},{"class":"purple",icon:"icon-book-open",href:"/jscripty/projects/report/{{row.entity.id}}/sessions",hide:!e.isAdmin()},{"class":"red-sunglo",icon:"fa fa-trash",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)",hide:!e.isAdmin()}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/jscripty/project/list/list.create.modal.html",controller:"JscriptyProjectListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectListCreateCtrl",["$scope","$translate","$uibModalInstance","JscriptyProject","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){console.log(a),e.show(b.instant(a.data.translatedMessage),"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.list",{url:"/list",templateUrl:"app/jscripty/project/list/list.html",controller:"JscriptyProjectListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects",{url:"/projects",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectReportCtrl",["$scope","uiGridConstants","$http","$state","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope","gridOptions","JscriptyProject","$location",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a.projectStats={started:0,incomplete:0,completed:0},a.projectId=e.id,a.initView=function(){m.get({id:e.id}).$promise.then(function(b){a.project=b})["catch"](function(a){i.show(a.message,"danger")}),m.get({id:e.id,controller:"sessions"}).$promise.then(function(b){var c=_.groupBy(b.rows,"status");a.projectStats.started=c.started?c.started.length:0,a.projectStats.completed=c.completed?c.completed.length:0,a.projectStats.incomplete=c.incomplete?c.incomplete.length:0})["catch"](function(a){i.show(a.message,"danger")})},a.pdf=function(a,b){var c=[];if(a){var d=html2canvas(document.getElementById(a)),e=d.parse(),f=d.render(e),g=f.toDataURL("image/png");c.push({image:g,width:500,style:"img"})}b.length&&_.forEach(b,function(a){var b=html2canvas(document.getElementById(a.question_id)),d=b.parse(),e=b.render(d),f=e.toDataURL("image/png");c.push({image:f,width:500,style:"img"})});var h={content:c};pdfMake.createPdf(h).download("Project_summary.pdf")},a.getProjectSessions=function(){var c={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"session_id",displayName:"APPLICATION_SESSIONID"},{name:"queue",displayName:"APPLICATION_QUEUE"},{name:"membername",displayName:"APPLICATION_AGENT"},{name:"calleridnum",displayName:"APPLICATION_CALLERIDNUM"},{name:"createdAt",displayName:"APPLICATION_STARTEDAT",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:b.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:b.filter.LESS_THAN_OR_EQUAL}]},{name:"completedAt",displayName:"APPLICATION_COMPLETEDAT",filterHeaderTemplate:'<div class="ui-grid-filter-container row"><div ng-repeat="colFilter in col.filters" class="col-md-6 col-md-offset-0 col-sm-5 col-sm-offset-0 col-xs-5 col-xs-offset-0"><div custom-grid-date-filter-header></div></div></div>',filters:[{name:"From",condition:b.filter.GREATER_THAN_OR_EQUAL},{name:"To",condition:b.filter.LESS_THAN_OR_EQUAL}]},{name:"status",displayName:"APPLICATION_STATUS"},{name:"last_question_id",displayName:"APPLICATION_LASTQUESTIONID"},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/jscripty/projects/report/{{row.entity.projectId}}/session/{{row.entity.session_id}}",name:"Detail"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteSession(row.entity.session_id)"}]}]};a.gridOptions=l.gridOptions(m,c,a,{id:e.id,controller:"sessions"})},a.deleteSession=function(b){m["delete"]({id:e.id,controller:"sessions",action:b}).$promise.then(function(b){a.gridOptions.getPage(),a.initView(),i.show(j.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){i.show(a.message,"danger")})},a.getSessionDetails=function(){m.get({id:e.id,controller:"sessions",action:e.sessionId}).$promise.then(function(b){a.session=b,a.sessionQuestions=b.ReportJscriptyQuestions})["catch"](function(a){i.show(a.message,"danger")})},a.getQuestionSummary=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"question_id",displayName:"APPLICATION_QUESTIONID"},{name:"question_type",displayName:"APPLICATION_QUESTIONTYPE"},{name:"question_label",displayName:"APPLICATION_QUESTIONLABEL"},{name:"question_text",displayName:"APPLICATION_QUESTION"},{name:"count",displayName:"APPLICATION_COUNT",enableFiltering:!1},{name:"action",width:100,buttons:[{"class":"blue-hoki",href:"/jscripty/projects/report/"+e.id+"/detail/{{row.entity.question_id}}",name:"Detail"}]}]};a.gridOptions=l.gridOptions(m,b,a,{id:e.id,controller:"questions",action:"summary"})},a.getQuestionInputs=function(){var b={exporterCsvFilename:"jscriptyProjects.csv",columnDefs:[{name:"session_id",displayName:"APPLICATION_SESSIONID"},{name:"question_id",displayName:"APPLICATION_QUESTIONID",enableFiltering:!1},{name:"question_label",displayName:"APPLICATION_QUESTIONLABEL",enableFiltering:!1},{name:"question_text",displayName:"APPLICATION_QUESTION",enableFiltering:!1},{name:"input_label",displayName:"APPLICATION_INPUTLABEL",enableFiltering:!1},{name:"input_value",cellTemplate:'<div uib-tooltip="{{row.entity.input_value}}">{{row.entity.input_value}}</div>',displayName:"APPLICATION_INPUTVALUE",enableFiltering:!1}]};a.gridOptions=l.gridOptions(m,b,a,{id:e.id,controller:"inputs"})},a.getProjectDetail=function(){a.projectDetail=[],m.query({id:e.id,controller:"questions",action:"detail"}).$promise.then(function(b){console.log(e.questionId),e.questionId?a.projectDetail.push(_.find(b,function(a){return a.question_id==parseInt(e.questionId)})):a.projectDetail=b,console.log(a.projectDetail)})["catch"](function(a){i.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.report",{url:"/report/:id",templateUrl:"app/jscripty/project/report/report.html",controller:"JscriptyProjectReportCtrl"}).state("main.jscripty.projects.report.sessions",{url:"/sessions",templateUrl:"app/jscripty/project/report/report.sessions.html"}).state("main.jscripty.projects.report.summary",{url:"/summary",templateUrl:"app/jscripty/project/report/report.summary.html"}).state("main.jscripty.projects.report.inputs",{url:"/inputs",templateUrl:"app/jscripty/project/report/report.inputs.html"}).state("main.jscripty.projects.report.detail",{url:"/detail",templateUrl:"app/jscripty/project/report/report.detail.html"}).state("main.jscripty.projects.report.questionDetail",{url:"/detail/:questionId",controller:"JscriptyProjectReportCtrl",templateUrl:"app/jscripty/project/report/report.detail.html"}).state("main.jscripty.projects.report.sessionDetail",{url:"/session/:sessionId",controller:"JscriptyProjectReportCtrl",templateUrl:"app/jscripty/project/report/report.session.detail.html"})}]),angular.module("xCallyShuttleApp").controller("JscriptyProjectViewCtrl",["$scope","$http","$state","$stateParams","socket","Auth","Modal","xAlert","$translate","$rootScope",function(a,b,c,d,e,f,g,h,i,j){a.jscriptyProject={},a.getProject=function(){b.get("/api/jscripty/projects/"+d.id).success(function(b){a.jscriptyProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!=a&&-1!=a.indexOf("Script error."));else{var d=new Image;d.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(e){}},b.token=f.getToken();var a=new EditorUi(new Editor);a.openString(b.draft,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}}),e.syncUpdates("jscripty_project",[b],function(a,c,d){c.id===b.id})})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.jscripty.projects.view",{url:"/view/:id",templateUrl:"app/jscripty/project/view/view.html",controller:"JscriptyProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/jscripty/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/jscripty/js/Editor.js","assets/plugins/jscripty/js/Graph.js","assets/plugins/jscripty/js/EditorUi.js","assets/plugins/jscripty/js/Actions.js","assets/plugins/jscripty/js/Menus.js","assets/plugins/jscripty/js/Sidebar.js","assets/plugins/jscripty/js/Toolbar.js","assets/plugins/jscripty/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("LandingCtrl",["$scope","$location","$window","$timeout","Auth",function(a,b,c,d,e){a.initLanding=function(){var c,f,g;return(g=e.getCurrentUser().$promise)?g.then(function(e){switch(f=e,f.role){case"user":for(var g=0;g<f.Modules.length&&!(c=f.Modules[g].path);g++);break;case"admin":case"agent":c="/dashboard/voice"}c||(a.message="MESSAGE_NO_AVAILABLE_MODULES"), -d(function(){b.path(c)},500)})["catch"](function(a){console.error(a),b.path("/login")}):void b.path("/login")}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("landing",{url:"/landing",templateUrl:"app/landing/landing.html",controller:"LandingCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/error.css","assets/css/login.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("LoginCtrl",["$scope","Auth","$location","$window","$rootScope",function(a,b,c,d,e){a.year=moment().year(),a.userLogin={},a.userSignUp={},a.loginSubmitted=!1,a.signupSubmitted=!1,a.errorLogin=!1,a.errorSignup=!1,a.errorLog="",a.flagLogin1=!1,a.toogleLogin=function(){a.flagLogin1=!a.flagLogin1},e.bodyLayout="login",a.$on("$viewContentLoaded",function(){Metronic.init(),Layout.init()}),a.login=function(d){a.loginSubmitted=!0,d.$valid?b.login({name:a.userLogin.name,password:a.userLogin.password,remember:a.userLogin.remember}).then(function(){c.path("/landing")})["catch"](function(b){console.log("login errLogin",b),a.errorLog=b.message||"error",a.errorLogin=!0}):a.errorLogin=!0},a.signup=function(c){a.signupSubmitted=!0,c.$valid?b.createUser({email:a.userSignUp.email,fullname:a.userSignUp.fullname,name:a.userSignUp.name,password:a.userSignUp.password,role:a.userSignUp.role,online:!0})["catch"](function(b){console.log("signup errLogin",b),a.errorLog=b.message||"error",a.errorSignup=!0}):a.errorSignup=!0},a.loginOauth=function(a){d.location.href="/auth/"+a}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("login",{url:"/login",templateUrl:"app/login/login.html",controller:"LoginCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/login.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Action",["$resource",function(a){return a("/api/actions/:name/:controller",{name:"@name"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").directive("actionBuilderTemplate",["$compile","xAlert","$http","$timeout","Template","$translate",function(a,b,c,d,e,f){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderTemplate.html",compile:function(c,g){var h,i;return h=c.contents().remove(),function(c,g,j){function k(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=k(),d(function(){return e.get().$promise.then(function(a){c.templates=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}),i||(i=a(h)),g.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderIntegration",["$compile","xAlert","$http","$timeout","Integration","$translate","ZendeskAccount","DeskAccount","SalesforceAccount","FreshdeskAccount","SugarcrmAccount",function(a,b,c,d,e,f,g,h,i,j,k){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderIntegration.html",compile:function(c,l){var m,n;return m=c.contents().remove(),function(c,l,o){function p(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=p(),d(function(){return e.get({active:1}).$promise.then(function(a){c.integrations=a.rows,c.element.data1&&q()})["catch"](function(a){b.show(f.instant(a.message),"danger")})});var q=function(){var a;switch(c.element.data1){case"zendesk":a=g;break;case"desk":a=h;break;case"salesforce":a=i;break;case"freshdesk":a=j;break;case"sugarcrm":a=k}return a.get().$promise.then(function(a){c.accounts=a.rows,c.element.data2&&r()})["catch"](function(a){b.show(f.instant(a.message),"danger")})},r=function(){c.configurations=_.find(c.accounts,{id:Number(c.element.data2)}).Configurations};c.changeIntegration=function(){c.element.data2="",q()},c.changeAccount=function(){c.element.data3="",r()},n||(n=a(m)),l.append(n(c,function(a){return a}))}}}}]).directive("actionBuilderStatus",["$compile","xAlert","$http","$timeout","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderStatus.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){function g(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}b.randomName=g(),b.states=[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]).directive("actionBuilderJscripty",["$compile","xAlert","$http","$timeout","Template","$translate","JscriptyProject",function(a,b,c,d,e,f,g){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderJscripty.html",compile:function(c,e){var h,i;return h=c.contents().remove(),function(c,e,j){function k(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=k(),console.log(c.randomName),d(function(){return g.get().$promise.then(function(a){console.log(a),c.projects=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}),i||(i=a(h)),e.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderMotionBar",["$compile","xAlert","$http","$timeout","Template","$translate",function(a,b,c,d,e,f){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderMotionBar.html",compile:function(c,g){var h,i;return h=c.contents().remove(),function(c,g,j){function k(){return e.get().$promise.then(function(a){c.templates=a.rows})["catch"](function(a){b.show(f.instant(a.message),"danger")})}function l(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}c.randomName=l(),console.log(c.randomName),c.motionActions=[{name:"Popup",value:"0"},{name:"URL",value:"1"},{name:"Windows App",value:"2"}],c.changeMode=function(){c.element.data2="",c.element.data3="",k()},d(function(){return k()}),i||(i=a(h)),g.append(i(c,function(a){return a}))}}}}]).directive("actionBuilderUrlForward",["$compile","xAlert","$http","$timeout","$translate",function(a,b,c,d,e){return{restrict:"E",scope:{element:"=",form:"="},templateUrl:"app/main/template/actionBuilder/template.actionBuilderUrlForward.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){function g(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}b.randomName=g(),b.types=[{name:"HTTP GET",value:"GET"},{name:"HTTP POST",value:"POST"}],e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]),angular.module("xCallyShuttleApp").factory("Ami",["$resource",function(a){return a("/api/ami/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("ChooseContactModalCtrl",["$scope","$uibModalInstance","eventId","xAlert","$translate","Contact",function(a,b,c,d,e,f){a.open=function(a){b.close(a)},a.getContacts=function(){return f.query({id:c,controller:"checkevent"}).$promise.then(function(b){a.contacts=b})["catch"](function(a){d.show(e.instant(a.message)+"!","danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("CloseEditedTabModalCtrl",["$scope","$uibModalInstance",function(a,b){a.close=function(){b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("CloseEditedTabModalJscriptyCtrl",["$scope","$uibModalInstance","project","JscriptyProject","xAlert",function(a,b,c,d,e){a.init=function(){a.project=c},a.close=function(){d.update({id:a.project.projectId,controller:"sessions",action:a.project.sessionId},{status:"incomplete",completedAt:Date(),last_question_id:a.project.lastQuestionId}).$promise.then(function(a){e.show("Project Ended","success")}),b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("ContactManagerSetDisposition",["$scope","$uibModalInstance","VoiceDisposition",function(a,b,c){a.initDisposition=function(){return c.get().$promise.then(function(b){a.dispositions=b.rows})["catch"](function(a){console.error(a)})},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss()}}]),angular.module("xCallyShuttleApp").controller("customGridDateFilterModalCtrl",["$scope","$rootScope","$log","$uibModalInstance","term",function(a,b,c,d,e){e&&(a.filterDate=moment(e)),a.setFilterDate=function(a){d.close(a)},a.cancelDateFilter=function(){d.dismiss()}}]),angular.module("xCallyShuttleApp").factory("templateVariable",["$translate",function(a){return[{id:"chat",label:a.instant("APPLICATION_CHAT"),title:a.instant("APPLICATION_CHAT"),groups:[{label:a.instant("APPLICATION_VARIABLES"),values:[{value:"{{username}}",label:a.instant("APPLICATION_USERNAME"),description:a.instant("APPLICATION_USERNAME")},{value:"{{email}}",label:a.instant("APPLICATION_MAIL"),description:a.instant("APPLICATION_MAIL")},{value:"{{text}}",label:a.instant("APPLICATION_TEXT"),description:a.instant("APPLICATION_TEXT")},{value:"{{chatWebsite}}",label:a.instant("APPLICATION_WEBSITE"),description:a.instant("APPLICATION_WEBSITE")}]}]},{id:"mail",label:a.instant("APPLICATION_MAIL"),title:a.instant("APPLICATION_MAIL"),groups:[{label:a.instant("APPLICATION_INTERACTION"),values:[{value:"{{interactionId}}",label:a.instant("APPLICATION_INTERACTION_ID"),description:a.instant("APPLICATION_INTERACTION_ID")},{value:"{{subject}}",label:a.instant("APPLICATION_SUBJECT"),description:a.instant("APPLICATION_SUBJECT")},{value:"{{body}}",label:a.instant("APPLICATION_MESSAGE"),description:a.instant("APPLICATION_MESSAGE")},{value:"{{accountName}}",label:a.instant("APPLICATION_ACCOUNT"),description:a.instant("APPLICATION_ACCOUNT")},{value:"{{from}}",label:"From",description:"From"},{value:"{{to}}",label:"To",description:"To"},{value:"{{cc}}",label:"Cc",description:"Cc"},{value:"{{agentName}}",label:a.instant("APPLICATION_AGENT_NAME"),description:a.instant("APPLICATION_AGENT_NAME")},{value:"{{agentEmail}}",label:a.instant("APPLICATION_AGENT_EMAIL"),description:a.instant("APPLICATION_AGENT_EMAIL")},{value:"{{createdAt}}",label:a.instant("APPLICATION_CREATED_AT"),description:a.instant("APPLICATION_CREATED_AT")}]}]}]}]),angular.module("xCallyShuttleApp").controller("gridDatePickerFilterCtrl",["$scope","$timeout","$uibModal","uiGridConstants",function(a,b,c,d){b(function(){a.col.colDef.name;a.openDatePicker=function(b){var d=c.open({templateUrl:"app/main/customDateFilter.modal.html",controller:"customGridDateFilterModalCtrl",size:"md",windowClass:"custom-date-filter-modal",resolve:{term:[function(){return b.term||null}]}});d.result.then(function(b){console.log("date",b),a.colFilter.listTerm=[],console.log(typeof b),console.log(b instanceof Date),a.colFilter.term=moment(b).format("YYYY-MM-DD"),console.log(a.colFilter)})}})}]),angular.module("xCallyShuttleApp").factory("gridOptions",["Modal","xAlert","$translate","$interval","$q","usSpinnerService",function(a,b,c,d,e,f){return{gridOptions:function(d,g,h,i,j,k,l){function m(a,b){a.filter&&a.filter.term&&b&&(o[a.name]=a.filter.term),a.filters&&(a.filters.length>1?a.filters.forEach(function(b){b.term?64===b.condition?o[a.name+"_uiFrom"]=b.term:256===b.condition&&(o[a.name+"_uiTo"]=b.term):64===b.condition?delete o[a.name+"_uiFrom"]:256===b.condition&&delete o[a.name+"_uiTo"]}):a.filters.length&&a.filters[0].term?o[a.name]=a.filters[0].term:delete o[a.name])}h.id=[];var n=k?"gridOptions"+k:"gridOptions",o={offset:0,limit:10};g.draggable&&(g.rowTemplate='<div grid="grid" class="ui-grid-draggable-row" draggable="true"><div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell" ng-class="{ \'ui-grid-row-header-cell\': col.isRowHeader, \'custom\': true }" ui-grid-cell></div></div>',g.useExternalPagination=!1,g.enablePaginationControls=!1,g.showGridFooter=!1);var p=function(a){var b=a?30*a+120:177,c=angular.element(document.getElementsByName(n)).length?angular.element(document.getElementsByName(n)[0]):angular.element(document.getElementsByClassName("ui-grid")[0]);c.css("height",b+"px")},q=function(a,b){return h[n].enablePaginationControls||(delete o.offset,delete o.limit),f.spin("spinner-grid"),i=a||i,d=b||d,d.get(i?_.merge(o,i):o).$promise.then(function(a){h[n].totalItems=a.count,h[n].data=a.rows,p(a.rows.length),l&&l()})["catch"](function(a){console.error(a)})["finally"](function(){f.stop("spinner-grid")})};return h.deleteItem=a.confirm["delete"](function(a){var e=i?angular.copy(i):{};return _.merge(e,{id:a}),d.remove(e).$promise.then(function(){q(),b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),h.gridApi.selection.clearSelectedRows(),h.id=[]})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}),h.deleteItems=a.confirm["delete"](function(){var a=i?angular.copy(i):{};return _.merge(a,{ids:h.id}),d["delete"](a).$promise.then(function(){q(),b.show(c.instant("MESSAGE_WELL_DONE")+"!","success"),h.gridApi.selection.clearSelectedRows(),h.id=[]})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}),g.columnDefs.forEach(function(a){m(a,!0),a.hasOwnProperty("displayName")||(a.displayName="APPLICATION_"+a.name.toUpperCase()),a.headerCellFilter="translate",a.hasOwnProperty("buttons")&&(a.displayName="",a.cellClass="ui-grid-vcenter",a.enableSorting=!1,a.enableFiltering=!1,a.enableColumnMenu=!1,a.cellTemplate="<div>",a.buttons.forEach(function(b){if(b.directive)a.cellTemplate+=b.directive;else{if(a.cellTemplate+="<a",a.cellTemplate+=b.hide?' data-ng-hide="'+b.hide+'" ':" ",a.cellTemplate+=b["class"]?' class="btn btn-xs '+b["class"]+'" ':" ",a.cellTemplate+=b.href?' data-ng-href="'+b.href+'" ':" ",a.cellTemplate+=b.uisref?' ui-sref="'+b.uisref+'" ':" ",a.cellTemplate+=b.onClick?' data-ng-click="'+b.onClick+'" ':" ",a.cellTemplate+=b.title?' title="'+b.title+'"':"",a.cellTemplate+=">",a.cellTemplate+=b.icon?'<i class="'+b.icon+'"></i>':"",b.name)switch(b.name){case"delete":a.cellTemplate+='<i class="fa fa-trash"></i>';break;case"profile":case"settings":case"detail":case"embedding":a.cellTemplate+='<i class="icon-settings"></i>';break;case"agents":a.cellTemplate+='<i class="icon-people"></i>';break;case"run":a.cellTemplate+='<i class="fa fa-cogs"></i>';break;default:a.cellTemplate+="{{'APPLICATION_"+b.name.toUpperCase()+"' | translate}}"}else a.cellTemplate+=b.displayName?"{{'"+b.displayName+"' | translate}}":"";a.cellTemplate+="</a> "}}),a.cellTemplate+="<div>",delete a.buttons)}),_.merge({enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableRowSelection:!0,enableSelectAll:!0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:10,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,multiSelect:!0,getPage:q,gridMenuTitleFilter:function(a){var b=e.defer();return b.resolve(c.instant(a)),b.promise},onRegisterApi:function(a){h.gridApi=a,h.gridApi.selection&&(h.gridApi.selection.on.rowSelectionChanged(h,function(a){a.isSelected?h.id.push(h.gridApi.grid.options.primaryKey?a.entity[h.gridApi.grid.options.primaryKey]:a.entity.id):_.pull(h.id,h.gridApi.grid.options.primaryKey?a.entity[h.gridApi.grid.options.primaryKey]:a.entity.id)}),h.gridApi.selection.on.rowSelectionChangedBatch(h,function(a){a[0].isSelected?h.id=_.union(h.id,_.map(a,h.gridApi.grid.options.primaryKey?"entity."+h.gridApi.grid.options.primaryKey:"entity.id")):_.map(a,h.gridApi.grid.options.primaryKey?"entity."+h.gridApi.grid.options.primaryKey:"entity.id").forEach(function(a){_.pull(h.id,a)})})),h.gridApi.core.on.sortChanged(h,function(a,b){0===b.length?o.order=null:o.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),q()}),h.gridApi.pagination.on.paginationChanged(h,function(a,b){o.offset=(a-1)*b,o.limit=b,q()}),h.gridApi.core.on.filterChanged(h,function(){var a=this.grid;a.columns.forEach(function(a){m(a)}),q()}),h.gridApi.draggableRows&&h.gridApi.draggableRows.on.rowDropped(h,function(a){a.fromIndex!==a.toIndex&&d.update(i,h[n].data).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){b.show(a.message,"danger")})}),j||q()}},g)}}}]),angular.module("xCallyShuttleApp").controller("MainCtrl",["$scope","$rootScope","$translate","$timeout","socket","Auth","xAlert","$uibModal","$log","$state","Contact","$window",function(a,b,c,d,e,f,g,h,i,j,k,l){a.awesomeThings=[],b.workspaces=[],a.select=function(a){switch(a.type){case"chatRoom":case"mailRoom":a.unread=0}},a.deselect=function(){},a.isAdmin=f.isAdmin,a.isLoggedIn=f.isLoggedIn,a.getCurrentUser=f.getCurrentUser,a.CurrentUser=f.getCurrentUser(),e.socket.on("user_has_voice_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_chat_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_mail_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_fax_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),e.socket.on("user_has_sms_queue_permit:change",function(){a.CurrentUser=f.getCurrentUser()}),a.mainTab={active:!0},a.closeJscriptyTab=function(a){if(b.workspaces[a].edited){var c=h.open({animation:!0,templateUrl:"app/main/closeEditedTab.modal.jscripty.html",controller:"CloseEditedTabModalJscriptyCtrl",resolve:{project:b.workspaces[a]}});c.result.then(function(){b.workspaces.splice(a,1)})}else b.workspaces.splice(a,1)},a.closeTab=function(a){var c;b.workspaces[a].edited?"jscripty"==b.workspaces[a].type?b.workspaces[a].end():(c=h.open({animation:!0,templateUrl:"app/main/closeEditedTab.modal.html",controller:"CloseEditedTabModalCtrl"}),c.result.then(function(){b.workspaces.splice(a,1)},function(){i.info("Modal dismissed at: "+new Date)})):b.workspaces.splice(a,1)},a.createContact=function(d,e){return e.tags=e.tags?e.tags.join(","):void 0,e.CompanyId||delete e.CompanyId,k.save(e).$promise.then(function(e){b.workspaces.splice(d,1);var f=e.firstName;e.lastName&&(f+=" "+e.lastName),a.openContactTab({firstName:e.firstName,lastName:e.lastName,id:e.id}),g.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.show(a.message,"danger")})};var m=function(b){var c=h.open({animation:!0,templateUrl:"app/main/chooseContact.modal.html",controller:"ChooseContactModalCtrl",resolve:{eventId:function(){return b.id}}});c.result.then(function(c){c?a.openContactTab(c,b):a.newContact(b)},function(){i.info("Modal dismissed at: "+new Date)})};a.updateContact=function(a,d){var e=angular.copy(d);return e.tags=e.tags?e.tags.join(","):void 0,e.CompanyId||(e.CompanyId=null),k.update({id:e.id},e).$promise.then(function(){b.workspaces[a].edited=!1,g.show(c.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.show(c.instant(a.message)+"!","danger")})},e.socket.on("report_integration:contactmanager",function(a){console.log("choosecontact"),m(a)}),e.socket.on("report_integration:jscripty",function(b){a.openJscriptyTab({name:"Jscripty",id:b.projectId,calleridnum:b.calleridnum,calleridname:b.calleridname,queue:b.queue,membername:b.membername})}),e.socket.on("report_integration:salesforce",function(a){l.open(a.url,"_blank")}),a.openContactTab=function(a,c){var d=_.find(b.workspaces,{contactID:a.id});if(d)d.active=!0;else{var e=a.firstName;a.lastName&&(e+=" "+a.lastName),b.workspaces.push({name:e,type:"contact",contactID:a.id,"class":"icon-user",active:!0,eventData:a.uniqueid?a:null,data:c||null})}},a.openJscriptyTab=function(a){b.workspaces.push({name:a.name,type:"jscripty",active:!0,data:a})},a.newContact=function(a){b.workspaces.push({name:"New Contact",type:"newContact","class":"icon-user",active:!0,data:a||null,eventData:a&&a.uniqueid?a:""})},b.language=c.use(),a.changeLanguage=function(a){c.use(a).then(function(a){b.language=a,-1!==["main.jscripty.projects.view","main.square.projects.view"].indexOf(j.current.name)&&l.location.reload()})["catch"](function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").directive("ngSpinnerBar",["$rootScope",function(a){return{link:function(b,c){c.addClass("hide"),a.$on("$stateChangeStart",function(){"spinner-page"===c[0].id&&c.removeClass("hide")}),a.$on("$stateChangeSuccess",function(){"spinner-page"===c[0].id&&(c.addClass("hide"),$("body").removeClass("page-on-load"),Layout.setSidebarMenuActiveLink("match"),setTimeout(function(){Metronic.scrollTop()},1e3))}),a.$on("$spinnerStart",function(){"spinner-request"===c[0].id&&c.removeClass("hide")}),a.$on("$spinnerStop",function(){"spinner-request"===c[0].id&&c.addClass("hide")}),a.$on("$stateNotFound",function(){"spinner-page"===c[0].id&&c.addClass("hide")}),a.$on("$stateChangeError",function(){"spinner-page"===c[0].id&&c.addClass("hide")})}}}]).directive("a",function(){return{restrict:"E",link:function(a,b,c){(c.ngClick||""===c.href||"#"===c.href)&&b.on("click",function(a){a.preventDefault()})}}}).directive("nxEqual",function(){return{require:"ngModel",link:function(a,b,c,d){return c.nxEqual?(a.$watch(c.nxEqual,function(a){d.$setValidity("nxEqual",a===d.$viewValue)}),void d.$parsers.push(function(b){var e=b===a.$eval(c.nxEqual);return d.$setValidity("nxEqual",e),e?b:void 0})):void console.error("nxEqual expects a model as an argument!")}}}).directive("ngEnter",function(){return function(a,b,c){b.bind("keydown keypress",function(b){13===b.which&&(a.$apply(function(){a.$eval(c.ngEnter)}),b.preventDefault())})}}).directive("dropdownMenuHover",function(){return{link:function(a,b){b.dropdownHover()}}}).directive("uiSelectRequired",function(){return{require:"ngModel",link:function(a,b,c,d){d.$validators.uiSelectRequired=function(a){return a&&a.length}}}}).directive("rpattern",function(){return{restrict:"A",require:"ngModel",link:function(a,b,c,d){function e(a,b){return null==b||""===b||!h||a.test(b)?(d.$setValidity("pattern",!0),b):void d.$setValidity("pattern",!1)}var f,g=c.rpattern,h=!0;g&&(g.match(/^\/(.*)\/$/)?(g=new RegExp(g.substr(1,g.length-2)),f=function(a){return e(g,a)}):f=function(b){var c=a.$eval(g);if(!c||!c.test)throw new Error("Expected "+g+" to be a RegExp but was "+c);return e(c,b)}),d.$formatters.push(f),d.$parsers.push(f),c.$observe("required",function(a){h=a,f(d.$viewValue)})}}}).directive("conditionBuilder",["$compile","xAlert","$timeout",function(a,b,c){return{restrict:"E",scope:{element:"=",serviceindex:"=",service:"=",form:"="},templateUrl:"app/main/template/template.conditionBuilder.html",compile:function(d,e){var f,g;return f=d.contents().remove(),function(d,e,h){function i(a){var c=_.find(d.service.services[d.serviceindex].conditions,{value:a});if(c)if(d.elementType=c.type,c.arr)d.values=c.arr;else if(c.resource)return c.resource.get().$promise.then(function(a){d.values=_.map(a.rows,function(a){return{name:a[c.resValue],value:a[c.resValue]}})})["catch"](function(a){b.show($translate.instant(a.message),"danger")})}function j(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")}d._=_,d.randomName=j(),c(function(){d.element.field&&i(d.element.field)}),d.checkCondition=function(a){d.element.value="",d.element.operator="",i(a)},g||(g=a(f)),e.append(g(d,function(a){return a}))}}}}]).directive("newContact",["$compile","xAlert","socket","$translate","$timeout","List","Tag","Company","ReportCall","$uibModal",function(a,b,c,d,e,f,g,h,i,j){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.contactTab.html",compile:function(a,k){return function(a,k,l){function m(){a.$watch("contact",function(b,c){angular.equals(b,c)||(a.workspace.edited=!0)},!0)}a.forms={general:{}},a.firstLoad=!0,a.detail={tab:"main"},a.contact={CompanyId:"",disposed:!1},a.submitButtonLabel=d.instant("APPLICATION_CONFIRM"),a.dispose=function(){return j.open({animation:!0,templateUrl:"app/main/cm.disposition.html",controller:"ContactManagerSetDisposition"}).result.then(function(c){return i.update({id:a.workspace.data.uniqueid},c).$promise.then(function(){a.contact.disposed=!0,b.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.data.message,"danger")})})},a.init=function(){a.workspace.data&&(a.contact.firstName=a.workspace.data.calleridname?a.workspace.data.calleridname:a.workspace.data.messageId?a.workspace.data.messageId:a.workspace.data.uniqueid?a.workspace.data.uniqueid:"",a.workspace.data.calleridnum&&(a.contact.phone=a.workspace.data.calleridnum),a.workspace.data.from&&(a.contact.email=a.workspace.data.from)),a.getTags(),a.getCompanies(),a.getLists()},a.getLists=function(){return f.get().$promise.then(function(b){a.lists=b.rows,c.syncUpdates("list",a.lists),a.contact.ListId=a.lists[0]?a.lists[0].id:null,a.getCustomFields()})["catch"](function(a){b.show(d.instant(a.message)+"!","danger")})},a.getCustomFields=function(){return f.get({listId:a.contact.ListId,controller:"customfields"}).$promise.then(function(b){a.customFields=b.rows,a.customFields.forEach(function(a){a.values=JSON.parse(a.values)}),c.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),c.socket.on("custom_field:save",function(b){if(b.ListId===a.contact.ListId){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}}),!a.firstLoad||a.workspace.data?(a.workspace.edited=!0,a.firstLoad=!1):(a.firstLoad=!1,m())})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getTags=function(){return g.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCompanies=function(){return h.get().$promise.then(function(b){a.companies=b.rows,a.companies.unshift({id:"",name:"-- None --"}),c.syncUpdates("company",a.companies)})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},e(function(){a.init()})}}}}]).directive("contact",["$compile","xAlert","socket","$timeout","List","Tag","Company","Contact","$translate","gridOptions","$uibModal","ReportCall",function(a,b,c,d,e,f,g,h,i,j,k,l){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.contactTab.html",compile:function(a,m){return function(a,m,n){function o(b){var c=[];_.forEach(a.columns[a.log[b].show][a.log[b].detail].indexes,function(d,e){c.push({name:d,displayName:a.columns[a.log[b].show][a.log[b].detail].header[e],headerCellFilter:"translate",enableSorting:!1,enableColumnMenu:!1})});var d={enablePaginationControls:!0,exporterCsvFilename:b+".csv",columnDefs:c};a["gridOptions"+b]=j.gridOptions(h,d,a,_.merge({id:a.workspace.contactID,controller:"log",logType:b,order:"createdAt DESC"},a.log[b]),!0,b),a["gridOptions"+b].getPage()}a.moment=moment,a.submitButtonLabel=i.instant("APPLICATION_UPDATE"),a.forms={general:{}},a.detail={tab:"main"},a.log={daily:{show:"phone",type:"inbound",detail:"general"},history:{show:"phone",type:"inbound",detail:"general"}},a.columns={phone:{general:{header:["APPLICATION_SOURCE","APPLICATION_DESTINATION","APPLICATION_DISPOSITION","APPLICATION_DATE"],indexes:["source","destination","disposition","createdAt"]},queue:{header:["APPLICATION_CALLERID","APPLICATION_QUEUE","APPLICATION_DATE"],indexes:["calleridnum","queue","createdAt"]}},email:{general:{header:["APPLICATION_FROM","APPLICATION_TO","APPLICATION_DISPOSITION","APPLICATION_DATE"],indexes:["from","accountaddress","disposition","createdAt"]}}},a.dispose=function(){return k.open({animation:!0,templateUrl:"app/main/cm.disposition.html",controller:"ContactManagerSetDisposition"}).result.then(function(c){return l.update({id:a.workspace.data.uniqueid},c).$promise.then(function(){a.contact.disposed=!0,b.show(i.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){b.show(a.data.message,"danger")})})},a.companyInfo=function(b){k.open({animation:!0,size:"lg",templateUrl:"app/main/company.info.html",controller:["$scope","$uibModalInstance","company",function(a,b,c){a.company=c,a.close=function(){b.dismiss("cancel")}}],resolve:{company:_.find(a.companies,{id:b})}})},a.updateLog=function(b,c,d,e){c&&(a.log[b].show=c),d&&(a.log[b].detail=d),e&&(a.log[b].type=e),o(b)},a.getContact=function(){return h.get({id:a.workspace.contactID}).$promise.then(function(b){b.tags=b.tags?b.tags.split(","):[],a.contact=b,a.contact.CompanyId||(a.contact.CompanyId=""),a.getCustomFields(b.ListId),a.updateLog("daily"),a.updateLog("history")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getTags=function(){return f.get().$promise.then(function(b){a.tags=_.map(b.rows,"name")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCompanies=function(){return g.get().$promise.then(function(b){a.companies=b.rows,a.companies.unshift({id:"",name:"-- None --"}),c.syncUpdates("company",a.companies)})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},a.getCustomFields=function(d){return e.get({listId:d,controller:"customfields"}).$promise.then(function(b){a.customFields=b.rows,a.customFields.forEach(function(a){a.values=JSON.parse(a.values)}),c.socket.on("custom_field:remove",function(b){_.remove(a.customFields,function(a){return b.id==a.id})}),c.socket.on("custom_field:save",function(b){if(b.ListId===d){var c=_.find(a.customFields,{id:b.id});c||("string"==typeof b.values&&(b.values=JSON.parse(b.values)),a.customFields.push(b))}})})["catch"](function(a){console.error(a),b.show(a.message,"danger")})},d(function(){a.getTags(),a.getCompanies(),a.getContact()})}}}}]).directive("jscripty",["$compile","xAlert","$http","socket","JscriptyProject",function(a,b,c,d,e){return{restrict:"E",scope:{workspace:"=",index:"=",submit:"&onSubmit"},templateUrl:"app/main/template/template.jscriptyTab.html",compile:function(a,d){return function(a,d,f){a.count=0,a.questions=[];var g,h=a.workspace.data.id;c.get("/api/jscripty/projects/"+h+"/download").success(function(b){b?c.post("/api/jscripty/projects/"+h+"/sessions",{projectId:h,status:"started",queue:a.workspace.data.queue,calleridnum:a.workspace.data.calleridnum,callername:a.workspace.data.callername,membername:a.workspace.data.membername}).success(function(c){g=c.session_id,a.workspace.edited=!0,a.workspace.sessionId=g,a.workspace.projectId=h;var d=mxUtils.parseXml(b),e=new mxCodec(d);a.decObj=e.decode(d.documentElement);var f=_.find(a.decObj.cells,function(a){return a.vertex&&"start"==a.value.nodeName});if("OFF"==f.getAttribute("state")){var j=_.find(f.edges,function(a){return a.source.id==f.id}).target;a.questions[a.count]=a.currentQuestion=i(j)}else a.questions[a.count]=a.currentQuestion=f;a.saveQuestions()}):(console.log("No project published!"),alert("No project published!"),a.submit({index:a.index}))}),a.next=function(b,c){switch(a.currentQuestion.answer&&a.currentQuestion.answer!=c&&(a.questions=_.take(a.questions,a.count+1)),a.currentQuestion.answer=c,b.value.nodeName){case"question":b=i(b)}a.questions[a.count]=a.currentQuestion,a.currentQuestion=b,a.count++,a.questions[a.count]=b,a.saveQuestions()};var i=function(a){var b=[];return a.options=[],_.forEach(a.edges,function(c,d){if(c.source.id==a.id&&c.value){var e=String(c.value).split(",");e.length>1?(_.forEach(e,function(b,d){var e=Object.create(c);e.setValue(b),a.edges.push(e),a.options.push(b)}),b.push(c)):a.options.push(e[0]); -}}),_.forEach(b,function(b){_.remove(a.edges,function(a){return a.value==b.value&&a.id==b.id})}),a};a.end=function(){a.saveQuestions(),a.workspace.lastQuestionId=a.questions[a.questions.length-1].id,"end"==a.questions[a.questions.length-1].value.nodeName&&(a.workspace.edited=!1,e.update({id:h,controller:"sessions",action:g},{status:"completed",completedAt:Date(),last_question_id:a.questions[a.questions.length-1].id}).$promise.then(function(a){b.show("Project Ended","success")})),a.submit({index:a.index})},a.workspace.end=a.end,a.back=function(){a.count--,a.currentQuestion=a.questions[a.count]},a.setCurrentQuestion=function(b){a.count=b,a.currentQuestion=a.questions[a.count]},a.saveQuestions=function(){for(var c=[],d=[],f=0;f<a.questions.length;f++){if(a.questions[f].children)for(var i=a.questions[f].children,j=0;j<i.length;j++)d[j]={input_id:i[j].id,input_type:i[j].getAttribute("type"),input_label:i[j].getAttribute("label"),input_value:"checkbox"!=i[j].getAttribute("type")||i[j].answer?i[j].answer:!1};c[f]={sessionId:g,projectId:h,question_id:a.questions[f].id,question_type:a.questions[f].value.nodeName,question_label:a.questions[f].getAttribute("label"),question_text:a.questions[f].getAttribute("question")||a.questions[f].getAttribute("text"),question_other_label:a.questions[f].getAttribute("other"),question_other_answer:a.questions[f].otheranswer,question_answer:a.questions[f].answer,question_options:a.questions[f].options?JSON.stringify({options:a.questions[f].options}):null,index:f,ReportJscriptyInputs:d},d=[]}e.save({id:h,controller:"sessions",action:g,action2:"questions"},c).$promise.then(function(a){})["catch"](function(a){b.show(a.message,"danger")})}}}}}]).directive("reportBuilder",["$compile",function(a){return{restrict:"E",scope:{group:"=",fields:"=",forms:"=",firstCall:"="},templateUrl:"app/main/template/template.reportBuilderView.html",compile:function(b,c){var d,e;return d=b.contents().remove(),function(b,c,f){b.operators=[{name:"AND"},{name:"OR"}],b.conditions=[{name:"="},{name:"!="},{name:"<"},{name:"<="},{name:">"},{name:">="},{name:"LIKE"}],b.addCondition=function(){b.group.rules.push({condition:"=",field:"",value:""})},b.removeCondition=function(a){b.group.rules.splice(a,1)},b.addGroup=function(){b.group.rules.push({group:{operator:"AND",rules:[{condition:"=",field:"",value:""}]}})},b.randomName=function(a,b){var c=[];for(a=a||5,b=b||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";--a;)c.push(b.charAt(Math.floor(Math.random()*b.length)));return c.join("")},b.removeGroup=function(){b.$parent.group&&b.$parent.group.rules.splice(b.$parent.$index,1)},e||(e=a(d)),c.append(e(b,function(a){return a}))}}}}]).directive("dynamicName",["$compile",function(a){return{restrict:"A",terminal:!0,priority:1e3,link:function(b,c,d){c.attr("name",b.$eval(d.dynamicName)),c.removeAttr("dynamic-name"),a(c)(b)}}}]).directive("onReadFile",["$parse",function(a){return{restrict:"A",scope:!1,link:function(b,c,d){var e=a(d.onReadFile);c.on("change",function(a){var c=new FileReader;c.onload=function(a){b.$apply(function(){e(b,{$fileContent:a.target.result})})},c.readAsText((a.srcElement||a.target).files[0])})}}}]).directive("motionFileDownload",["xAlert","$translate","$timeout","$location","FileSaver","$compile",function(a,b,c,d,e,f){return{restrict:"E",template:'<a uib-tooltip=\'{{tooltiptext}}\' class="{{btnclass || \'btn default btn-xs blue-hoki\'}}" href="" data-ng-click="download()" ><i class="icon-cloud-download"></i>{{btncontent || \'\'}}</a>',scope:{mimetype:"=",filename:"=",resource:"=",params:"=",btnclass:"@",btncontent:"@",tooltiptext:"@"},link:function(c,d,f){var g=d.children()[0];c.$on("download-start",function(){$(g).attr("disabled","disabled")}),c.$on("downloaded",function(a,b){var d=base64ToBlob(b,c.mimetype);e.saveAs(d,c.filename),$(g).attr("disabled",!1)}),c.download=function(){return c.$emit("download-start"),c.resource.get(c.params).$promise.then(function(a){c.$emit("downloaded",a.downloadString)})["catch"](function(d){a.show(b.instant(d.translatedMessage||d.data.translatedMessage||d.message||d.data.message),"danger"),c.download=function(){}})}}}}]).directive("audioFileDownload",["xAlert","$translate","$sce",function(a,b,c){return{restrict:"E",template:'<button type="button" class="btn default btn-xs blue-hoki" data-ng-click="download()"><i class="fa fa-play"></i> {{ \'APPLICATION_PREVIEW\' | translate}}</button>',scope:{resource:"=",params:"="},link:function(d,e,f){var g=e.children()[0];d.$on("download-start",function(a,b){$(g).attr("disabled","disabled").html('<i class="icon-refresh"></i> Loading...')}),d.$on("downloaded",function(a,b){var d=new Audio(c.trustAsResourceUrl("data:audio/ogg;base64,"+b));d.controls=!0,$(g).remove(),e.append(d),d.play()}),d.$on("error",function(a,b){$(g).removeClass("blue-stripe").addClass("red-stripe").html('<i class="icon-ban"></i> Error!')}),d.download=function(){return d.$emit("download-start"),d.resource.get(d.params).$promise.then(function(a){d.$emit("downloaded",a.downloadString)})["catch"](function(c){a.show(b.instant(c.translatedMessage||c.data.translatedMessage||c.message||c.data.message),"danger")})}}}}]).directive("uiRequired",function(){return{require:"ngModel",link:function(a,b,c,d){d.$validators.required=function(a,b){return!(b&&0===b.length&&"true"===c.uiRequired)},c.$observe("uiRequired",function(){d.$setValidity("required",!("true"===c.uiRequired&&d.$viewValue&&0===d.$viewValue.length))})}}}).directive("schrollBottom",function(){return{scope:{schrollBottom:"="},link:function(a,b){a.$watchCollection("schrollBottom",function(a){a&&$(b).scrollTop($(b)[0].scrollHeight)})}}}).directive("customGridDateFilterHeader",function(){return{templateUrl:"app/main/customDateFilterHeader.html",controller:"gridDatePickerFilterCtrl"}}),angular.module("xCallyShuttleApp").filter("propsFilter",function(){return function(a,b){var c=[];return angular.isArray(a)?a.forEach(function(a){for(var d=!1,e=Object.keys(b),f=0;f<e.length;f++){var g=e[f],h=b[g].toLowerCase();if(-1!==a[g].toString().toLowerCase().indexOf(h)){d=!0;break}}d&&c.push(a)}):c=a,c}}).filter("capitalize",function(){return function(a){return a?a.replace(/([^\W_]+[^\s-]*) */g,function(a){return a.charAt(0).toUpperCase()+a.substr(1).toLowerCase()}):""}}).filter("salesforce",function(){var a=["CallDisposition","CallDurationInSeconds","CallObject","CallType","IsArchived","Priority","Status","Type"];return function(b){return _.remove(b,function(b){return b.custom===!1&&a.indexOf(b.name)<0}),b}}).filter("sugarcrm",function(){var a=["account_id","account_name","account_name1","assigned_user_name","assigned_user_id","case_number","created_by","created_by_name","date_entered","date_modified","deleted","description","id","modified_by_name","modified_user_id","name"];return function(b){return _.remove(b,function(b){return a.indexOf(b.name)>=0}),b}}).filter("freshdesk",function(){var a=["requester","subject","agent","description"];return function(b){return _.remove(b,function(b){return a.indexOf(b.ticket_field.name)>=0}),b}}).filter("zendesk",function(){var a=["subject","assignee","description"];return function(b){return _.remove(b,function(b){return a.indexOf(b.type)>=0}),b}}).filter("slice",function(){return function(a,b,c){return a?a.slice(b,c):void 0}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main",{"abstract":!0,templateUrl:"app/main/main.html",controller:"MainCtrl",resolve:{authorization:["$q","Auth","$state","$timeout","$location",function(a,b,c,d,e){return b.getToken()?a.when():(d(function(){e.path("/login")}),a.reject())}],deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/mxgraph/js/mxClient.js"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("xAlert",["$translate","Notification",function(a,b){return{show:function(c,d){switch(d){case"success":b.success({message:c,title:'<i class="glyphicon glyphicon-ok"></i> <strong>'+a.instant("MESSAGE_SUCCESS")+"!</strong>",delay:5e3});break;case"info":b.info({message:c,title:'<i class="glyphicon glyphicon-info-sign"></i> <strong>'+a.instant("MESSAGE_INFO")+"!</strong>",delay:5e3});break;case"danger":b.error({message:c,title:'<i class="glyphicon glyphicon-exclamation-sign"></i> <strong>'+a.instant("MESSAGE_ERROR")+"!</strong>",delay:1e4});break;case"warning":b.warning({message:c,title:'<i class="glyphicon glyphicon-warning-sign"></i> <strong>'+a.instant("MESSAGE_WARNING")+"!</strong>",delay:1e4});break;default:b.info(c)}},error:function(c){var d;d=c?c.data?c.data.translatedMessage||c.data.message||"Generic Error":c.translatedMessage||c.message||"Generic Error":"Generic Error",b.error({message:a.instant(d),title:'<i class="glyphicon glyphicon-exclamation-sign"></i> <strong>'+a.instant("MESSAGE_ERROR")+"!</strong>",delay:1e4})}}}]).factory("stResource",["$q","$filter","$timeout","$rootScope","$http","$translate","xAlert",function(a,b,c,d,e,f,g){return{getPage:function(b){var c={page:Math.ceil(b.pagination.start/b.pagination.number),per_page:b.pagination.number};b.sort.predicate&&(c.sort_by=b.sort.predicate,c.sort_order=b.sort.reverse?"DESC":"ASC"),_.forIn(b.search.predicateObject,function(a,b){c[b]=a}),b.search.params&&(c.clientQuery={},_.forIn(b.search.params,function(a,b){c.clientQuery[b]=a})),d.$broadcast("$spinnerStart"),e.get(b.url,{params:c}).success(function(a){h.resolve(a),d.$broadcast("$spinnerStop")}).error(function(a){g.show(f.instant(a.message),"danger"),d.$broadcast("$spinnerStop")});var h=a.defer();return h.promise}}}]).factory("xNotification",["$translate","Notification","$rootScope",function(a,b,c){return{show:function(d,e,f,g,h,i){var j=c.$new();switch(j.acceptBtn=a.instant("APPLICATION_ACCEPT"),j.rejectBtn=a.instant("APPLICATION_REJECT"),j.nAccept=h,j.nReject=i,f){case"chat":return b.info({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"mail":return b.success({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"fax":return b.warning({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});case"sms":return b.error({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j});default:return b.primary({message:e,title:d,templateUrl:"app/main/template/template.notification.html",delay:g,scope:j})}}}}]),angular.module("xCallyShuttleApp").factory("Widget",["$resource",function(a){return a("/api/widgets/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("MarketCtrl",["$scope","$http","$translate","socket","xAlert","Modal","$timeout",function(a,b,c,d,e,f,g){function h(a,b){return Math.floor(Math.random()*(b-a+1))+a}a.initView=function(){b.get("/api/integrations").success(function(b){a.integrations=b.rows,a.groupedIntegration=_.chunk(a.integrations,4),d.syncUpdates("integration",a.integrations,function(){a.groupedIntegration=_.chunk(a.integrations,4)})}).error(function(a){e.show(a.message,"danger")})},a.isProgressing=!1,a.$on("$destroy",function(){d.unsyncUpdates("integration")}),a.installIntegration=function(d){a.status="Downloading",a.percentage=h(1,50),a.isProgressing=!0,d.downloading=!0,b.put("/api/integrations/"+d.id,{active:!0}).success(function(){g(function(){a.percentage=h(51,99),a.status="Installing"},2500),g(function(){a.percentage=100,a.isProgressing=!1,a.status="Completed!",d.downloading=!1,e.show(c.instant("MESSAGE_WELL_DONE")+".","success")},5e3)}).error(function(){d.downloading=!1,a.percentage=0,a.isProgressing=!1,e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.uninstallIntegration=function(d){a.status="Uninstalling",a.percentage=h(1,99),a.isProgressing=!0,d.downloading=!0,b.put("/api/integrations/"+d.id,{active:!1}).success(function(){g(function(){a.percentage=100,a.isProgressing=!1,a.status="Completed!",d.downloading=!1,e.show(c.instant("MESSAGE_WELL_DONE")+".","success")},5e3)}).error(function(){d.downloading=!1,a.percentage=0,a.isProgressing=!1,e.show(c.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.market",{url:"/market",templateUrl:"app/market/market.html",controller:"MarketCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("MotionbarCtrl",["$scope","$stateParams","$cookieStore","$window","$location","settings","Auth",function(a,b,c,d,e,f,g){console.log(b),b.token&&b.userId&&b.role&&b.redirectTo?(g.loginWithToken(b.token,b.userId,b.role),d.location.href=decodeURIComponent(b.redirectTo)):e.path("/login")}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("motionbar",{url:"/motionbar?redirectTo&token&userId&role",template:"<div ui-view></div>",controller:"MotionbarCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.blacklist",{url:"/blacklist",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerBlackListListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerBlackList","uiGridConstants",function(a,b,c,d,e,f,g){a.initView=function(){a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"phone"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.phone, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/blacklist/list/list.create.modal.html",controller:"MotionDialerBlackListListCreateCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerBlackListListCreateCtrl",["$scope","$translate","$uibModalInstance","MotionDialerBlackList","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.insert(a.item).$promise.then(function(a){a.status>0?(e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.blacklist.list",{url:"/list",templateUrl:"app/motiondialer/blacklist/list/list.html",controller:"MotionDialerBlackListListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerBlackList",["$resource",function(a){return a("/api/rest/blacklist/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.info",{url:"/info",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerSystem",["$resource",function(a){return a("/api/rest/system/:controller",null,{properties:{method:"POST",params:{controller:"properties"}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerInfoViewCtrl",["$scope","xAlert","MotionDialerSystem",function(a,b,c){a.getProperties=function(){return c.properties().$promise.then(function(c){console.log(c),c.status>0?a.properties=c.response.RMI:b.show(c.message||"Please, check your connection!","danger")})["catch"](function(a){b.show(a.message?a.message:a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.info.view",{url:"/view",templateUrl:"app/motiondialer/info/view/view.html",controller:"MotionDialerInfoViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.info.view.about",{url:"/about",templateUrl:"app/motiondialer/info/view/view.about.html"}).state("main.motiondialer.info.view.details",{url:"/details",templateUrl:"app/motiondialer/info/view/view.details.html"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists",{url:"/lists",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerListListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerList","uiGridConstants","usSpinnerService",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"name"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" href="/motiondialer/lists/view/{{row.entity.id}}/settings">{{\'APPLICATION_SETTINGS\' | translate}}</a> <a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){h.stop("spinner-grid")})},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/list/list/list.create.modal.html",controller:"MotionDialerListListCreateCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerListListCreateCtrl",["$scope","$translate","$uibModalInstance","MotionDialerList","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.insert(a.item).$promise.then(function(a){a.status>0?(e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists.list",{url:"/list",templateUrl:"app/motiondialer/list/list/list.html",controller:"MotionDialerListListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerContact",["$resource",function(a){return a("/api/rest/contact/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").factory("MotionDialerList",["$resource",function(a){return a("/api/rest/list/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewContactCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerContact","xAlert","MotionDialerTimezone",function(a,b,c,d,e,f,g){a.form={},a.item={},a.timezones=g.list(),a.save=function(){return console.log(a.item),e.insert({id_list:parseInt(d.id),name:a.item.name,phones:a.item.phones.trim().split(","),description:a.item.description||""}).$promise.then(function(a){console.log(a),a.status>0?(f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):f.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){f.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerListContactImportModalCtrl",["$scope","$uibModalInstance","$stateParams","indexes","csv","xAlert","MotionDialerContact","MotionDialerTimezone",function(a,b,c,d,e,f,g,h){function i(b){if(b>=a.csvLength||a.stopped)return void(a.importing=!1);var d={id_list:parseInt(c.id),name:"",phones:[],description:""};return _.forOwn(a.item,function(a,c){"phones"===c?d[c].push(e[b][a]):d[c]=e[b][a]}),g.insert(d).$promise.then(function(b){b.status>0?(a["import"].success+=j,a["import"].succeeded++,k.push(b.response.RMI)):(console.log(b),a["import"].fail+=j,a["import"].failed++)})["catch"](function(b){console.log(b),a["import"].fail+=j,a["import"].failed++})["finally"](function(){i(b+1)})}a.form={},a.item={},a.timezones=h.list(),console.log(d),console.log(e),a.indexes=d,a.importing=!1,a.submitted=!1,a.stopped=!1,a["import"]={success:0,fail:0,succeeded:0,failed:0},a.csvLength=e.length;var j=100/a.csvLength,k=[];a.start=function(){a.importing=!0,a.submitted=!0,i(0)},a.close=function(){b.close(k)},a.stop=function(){a.stopped=!0}}]),angular.module("xCallyShuttleApp").controller("MotionDialerListViewCtrl",["$scope","$translate","$stateParams","$uibModal","xAlert","uiGridConstants","usSpinnerService","MotionDialerList","MotionDialerContact","Modal","FileUploader","Papa",function(a,b,c,d,e,f,g,h,i,j,k,l){a.getList=function(){return h.find({id:parseInt(c.id)}).$promise.then(function(b){b.status>0?a.list=b.response.RMI:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.updateList=function(){return h.update({id:a.list.id,name:a.list.name,description:a.list.description}).$promise.then(function(a){a.status>0?e.show(b.instant("MESSAGE_WELL_DONE"),"success"):e.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.data.message,"danger")})},a.getContacts=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"name"},{name:"phones"},{name:"description",enableSorting:!1},{name:"updatedtime",sort:{direction:f.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteContact(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},i.list({id_list:parseInt(c.id),page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.deleteContact=j.confirm["delete"](function(c){return i["delete"]({id:c}).$promise.then(function(d){d.status>0?(_.remove(a.gridOptions.data,{id:c}),e.show(b.instant("MESSAGE_WELL_DONE"),"success")):e.show(d.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.createContact=function(){var b=d.open({animation:!0,templateUrl:"app/motiondialer/list/view/view.contact.create.modal.html",controller:"MotionDialerViewContactCreateCtrl"});b.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})};var m=a.uploader=new k({queueLimit:1,clearInputAfterAddedToQueue:!0});m.onAfterAddingFile=function(b){l.parse(b._file,{header:!0,complete:function(b){a.uploader.clearQueue(),a["import"](b.data)},error:function(a){e.show(a,"danger")}})},a["import"]=function(b){var c=d.open({animation:!0,backdrop:"static",keyboard:!1,templateUrl:"app/motiondialer/list/view/view.contact.import.modal.html",controller:"MotionDialerListContactImportModalCtrl",resolve:{indexes:function(){return _.keys(b[0])},csv:function(){return b}}});c.result.then(function(b){console.log(b),a.gridOptions.data=a.gridOptions.data.concat(b)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.lists.view",{url:"/view/:id",templateUrl:"app/motiondialer/list/view/view.html",controller:"MotionDialerListViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.lists.view.settings",{url:"/settings",templateUrl:"app/motiondialer/list/view/view.settings.html"}).state("main.motiondialer.lists.view.contacts",{url:"/contacts",templateUrl:"app/motiondialer/list/view/view.contacts.html"})}]),angular.module("xCallyShuttleApp").factory("MotionDialerTimezone",function(){return{list:function(){return[{group:"US (Common)",zones:[{value:"America/Puerto_Rico",name:"Puerto Rico (Atlantic)"},{value:"America/New_York",name:"New York (Eastern)"},{value:"America/Chicago",name:"Chicago (Central)"},{value:"America/Denver",name:"Denver (Mountain)"},{value:"America/Phoenix",name:"Phoenix (MST)"},{value:"America/Los_Angeles",name:"Los Angeles (Pacific)"},{value:"America/Anchorage",name:"Anchorage (Alaska)"},{value:"Pacific/Honolulu",name:"Honolulu (Hawaii)"}]},{group:"America",zones:[{value:"America/Adak",name:"Adak"},{value:"America/Anchorage",name:"Anchorage"},{value:"America/Anguilla",name:"Anguilla"},{value:"America/Antigua",name:"Antigua"},{value:"America/Araguaina",name:"Araguaina"},{value:"America/Argentina/Buenos_Aires",name:"Argentina - Buenos Aires"},{value:"America/Argentina/Catamarca",name:"Argentina - Catamarca"},{value:"America/Argentina/ComodRivadavia",name:"Argentina - ComodRivadavia"},{value:"America/Argentina/Cordoba",name:"Argentina - Cordoba"},{value:"America/Argentina/Jujuy",name:"Argentina - Jujuy"},{value:"America/Argentina/La_Rioja",name:"Argentina - La Rioja"},{value:"America/Argentina/Mendoza",name:"Argentina - Mendoza"},{value:"America/Argentina/Rio_Gallegos",name:"Argentina - Rio Gallegos"},{value:"America/Argentina/Salta",name:"Argentina - Salta"},{value:"America/Argentina/San_Juan",name:"Argentina - San Juan"},{value:"America/Argentina/San_Luis",name:"Argentina - San Luis"},{value:"America/Argentina/Tucuman",name:"Argentina - Tucuman"},{value:"America/Argentina/Ushuaia",name:"Argentina - Ushuaia"},{value:"America/Aruba",name:"Aruba"},{value:"America/Asuncion",name:"Asuncion"},{value:"America/Atikokan",name:"Atikokan"},{value:"America/Atka",name:"Atka"},{value:"America/Bahia",name:"Bahia"},{value:"America/Barbados",name:"Barbados"},{value:"America/Belem",name:"Belem"},{value:"America/Belize",name:"Belize"},{value:"America/Blanc-Sablon",name:"Blanc-Sablon"},{value:"America/Boa_Vista",name:"Boa Vista"},{value:"America/Bogota",name:"Bogota"},{value:"America/Boise",name:"Boise"},{value:"America/Buenos_Aires",name:"Buenos Aires"},{value:"America/Cambridge_Bay",name:"Cambridge Bay"},{value:"America/Campo_Grande",name:"Campo Grande"},{value:"America/Cancun",name:"Cancun"},{value:"America/Caracas",name:"Caracas"},{value:"America/Catamarca",name:"Catamarca"},{value:"America/Cayenne",name:"Cayenne"},{value:"America/Cayman",name:"Cayman"},{value:"America/Chicago",name:"Chicago"},{value:"America/Chihuahua",name:"Chihuahua"},{value:"America/Coral_Harbour",name:"Coral Harbour"},{value:"America/Cordoba",name:"Cordoba"},{value:"America/Costa_Rica",name:"Costa Rica"},{value:"America/Cuiaba",name:"Cuiaba"},{value:"America/Curacao",name:"Curacao"},{value:"America/Danmarkshavn",name:"Danmarkshavn"},{value:"America/Dawson",name:"Dawson"},{value:"America/Dawson_Creek",name:"Dawson Creek"},{value:"America/Denver",name:"Denver"},{value:"America/Detroit",name:"Detroit"},{value:"America/Dominica",name:"Dominica"},{value:"America/Edmonton",name:"Edmonton"},{value:"America/Eirunepe",name:"Eirunepe"},{value:"America/El_Salvador",name:"El Salvador"},{value:"America/Ensenada",name:"Ensenada"},{value:"America/Fortaleza",name:"Fortaleza"},{value:"America/Fort_Wayne",name:"Fort Wayne"},{value:"America/Glace_Bay",name:"Glace Bay"},{value:"America/Godthab",name:"Godthab"},{value:"America/Goose_Bay",name:"Goose Bay"},{value:"America/Grand_Turk",name:"Grand Turk"},{value:"America/Grenada",name:"Grenada"},{value:"America/Guadeloupe",name:"Guadeloupe"},{value:"America/Guatemala",name:"Guatemala"},{value:"America/Guayaquil",name:"Guayaquil"},{value:"America/Guyana",name:"Guyana"},{value:"America/Halifax",name:"Halifax"},{value:"America/Havana",name:"Havana"},{value:"America/Hermosillo",name:"Hermosillo"},{value:"America/Indiana/Indianapolis",name:"Indiana - Indianapolis"},{value:"America/Indiana/Knox",name:"Indiana - Knox"},{value:"America/Indiana/Marengo",name:"Indiana - Marengo"},{value:"America/Indiana/Petersburg",name:"Indiana - Petersburg"},{value:"America/Indiana/Tell_City",name:"Indiana - Tell City"},{value:"America/Indiana/Vevay",name:"Indiana - Vevay"},{value:"America/Indiana/Vincennes",name:"Indiana - Vincennes"},{value:"America/Indiana/Winamac",name:"Indiana - Winamac"},{value:"America/Indianapolis",name:"Indianapolis"},{value:"America/Inuvik",name:"Inuvik"},{value:"America/Iqaluit",name:"Iqaluit"},{value:"America/Jamaica",name:"Jamaica"},{value:"America/Jujuy",name:"Jujuy"},{value:"America/Juneau",name:"Juneau"},{value:"America/Kentucky/Louisville",name:"Kentucky - Louisville"},{value:"America/Kentucky/Monticello",name:"Kentucky - Monticello"},{value:"America/Knox_IN",name:"Knox IN"},{value:"America/La_Paz",name:"La Paz"},{value:"America/Lima",name:"Lima"},{value:"America/Los_Angeles",name:"Los Angeles"},{value:"America/Louisville",name:"Louisville"},{value:"America/Maceio",name:"Maceio"},{value:"America/Managua",name:"Managua"},{value:"America/Manaus",name:"Manaus"},{value:"America/Marigot",name:"Marigot"},{value:"America/Martinique",name:"Martinique"},{value:"America/Matamoros",name:"Matamoros"},{value:"America/Mazatlan",name:"Mazatlan"},{value:"America/Mendoza",name:"Mendoza"},{value:"America/Menominee",name:"Menominee"},{value:"America/Merida",name:"Merida"},{value:"America/Mexico_City",name:"Mexico City"},{value:"America/Miquelon",name:"Miquelon"},{value:"America/Moncton",name:"Moncton"},{value:"America/Monterrey",name:"Monterrey"},{value:"America/Montevideo",name:"Montevideo"},{value:"America/Montreal",name:"Montreal"},{value:"America/Montserrat",name:"Montserrat"},{value:"America/Nassau",name:"Nassau"},{value:"America/New_York", -name:"New York"},{value:"America/Nipigon",name:"Nipigon"},{value:"America/Nome",name:"Nome"},{value:"America/Noronha",name:"Noronha"},{value:"America/North_Dakota/Center",name:"North Dakota - Center"},{value:"America/North_Dakota/New_Salem",name:"North Dakota - New Salem"},{value:"America/Ojinaga",name:"Ojinaga"},{value:"America/Panama",name:"Panama"},{value:"America/Pangnirtung",name:"Pangnirtung"},{value:"America/Paramaribo",name:"Paramaribo"},{value:"America/Phoenix",name:"Phoenix"},{value:"America/Port-au-Prince",name:"Port-au-Prince"},{value:"America/Porto_Acre",name:"Porto Acre"},{value:"America/Port_of_Spain",name:"Port of Spain"},{value:"America/Porto_Velho",name:"Porto Velho"},{value:"America/Puerto_Rico",name:"Puerto Rico"},{value:"America/Rainy_River",name:"Rainy River"},{value:"America/Rankin_Inlet",name:"Rankin Inlet"},{value:"America/Recife",name:"Recife"},{value:"America/Regina",name:"Regina"},{value:"America/Resolute",name:"Resolute"},{value:"America/Rio_Branco",name:"Rio Branco"},{value:"America/Rosario",name:"Rosario"},{value:"America/Santa_Isabel",name:"Santa Isabel"},{value:"America/Santarem",name:"Santarem"},{value:"America/Santiago",name:"Santiago"},{value:"America/Santo_Domingo",name:"Santo Domingo"},{value:"America/Sao_Paulo",name:"Sao Paulo"},{value:"America/Scoresbysund",name:"Scoresbysund"},{value:"America/Shiprock",name:"Shiprock"},{value:"America/St_Barthelemy",name:"St Barthelemy"},{value:"America/St_Johns",name:"St Johns"},{value:"America/St_Kitts",name:"St Kitts"},{value:"America/St_Lucia",name:"St Lucia"},{value:"America/St_Thomas",name:"St Thomas"},{value:"America/St_Vincent",name:"St Vincent"},{value:"America/Swift_Current",name:"Swift Current"},{value:"America/Tegucigalpa",name:"Tegucigalpa"},{value:"America/Thule",name:"Thule"},{value:"America/Thunder_Bay",name:"Thunder Bay"},{value:"America/Tijuana",name:"Tijuana"},{value:"America/Toronto",name:"Toronto"},{value:"America/Tortola",name:"Tortola"},{value:"America/Vancouver",name:"Vancouver"},{value:"America/Virgin",name:"Virgin"},{value:"America/Whitehorse",name:"Whitehorse"},{value:"America/Winnipeg",name:"Winnipeg"},{value:"America/Yakutat",name:"Yakutat"},{value:"America/Yellowknife",name:"Yellowknife"}]},{group:"Europe",zones:[{value:"Europe/Amsterdam",name:"Amsterdam"},{value:"Europe/Andorra",name:"Andorra"},{value:"Europe/Athens",name:"Athens"},{value:"Europe/Belfast",name:"Belfast"},{value:"Europe/Belgrade",name:"Belgrade"},{value:"Europe/Berlin",name:"Berlin"},{value:"Europe/Bratislava",name:"Bratislava"},{value:"Europe/Brussels",name:"Brussels"},{value:"Europe/Bucharest",name:"Bucharest"},{value:"Europe/Budapest",name:"Budapest"},{value:"Europe/Chisinau",name:"Chisinau"},{value:"Europe/Copenhagen",name:"Copenhagen"},{value:"Europe/Dublin",name:"Dublin"},{value:"Europe/Gibraltar",name:"Gibraltar"},{value:"Europe/Guernsey",name:"Guernsey"},{value:"Europe/Helsinki",name:"Helsinki"},{value:"Europe/Isle_of_Man",name:"Isle of Man"},{value:"Europe/Istanbul",name:"Istanbul"},{value:"Europe/Jersey",name:"Jersey"},{value:"Europe/Kaliningrad",name:"Kaliningrad"},{value:"Europe/Kiev",name:"Kiev"},{value:"Europe/Lisbon",name:"Lisbon"},{value:"Europe/Ljubljana",name:"Ljubljana"},{value:"Europe/London",name:"London"},{value:"Europe/Luxembourg",name:"Luxembourg"},{value:"Europe/Madrid",name:"Madrid"},{value:"Europe/Malta",name:"Malta"},{value:"Europe/Mariehamn",name:"Mariehamn"},{value:"Europe/Minsk",name:"Minsk"},{value:"Europe/Monaco",name:"Monaco"},{value:"Europe/Moscow",name:"Moscow"},{value:"Europe/Nicosia",name:"Nicosia"},{value:"Europe/Oslo",name:"Oslo"},{value:"Europe/Paris",name:"Paris"},{value:"Europe/Podgorica",name:"Podgorica"},{value:"Europe/Prague",name:"Prague"},{value:"Europe/Riga",name:"Riga"},{value:"Europe/Rome",name:"Rome"},{value:"Europe/Samara",name:"Samara"},{value:"Europe/San_Marino",name:"San Marino"},{value:"Europe/Sarajevo",name:"Sarajevo"},{value:"Europe/Simferopol",name:"Simferopol"},{value:"Europe/Skopje",name:"Skopje"},{value:"Europe/Sofia",name:"Sofia"},{value:"Europe/Stockholm",name:"Stockholm"},{value:"Europe/Tallinn",name:"Tallinn"},{value:"Europe/Tirane",name:"Tirane"},{value:"Europe/Tiraspol",name:"Tiraspol"},{value:"Europe/Uzhgorod",name:"Uzhgorod"},{value:"Europe/Vaduz",name:"Vaduz"},{value:"Europe/Vatican",name:"Vatican"},{value:"Europe/Vienna",name:"Vienna"},{value:"Europe/Vilnius",name:"Vilnius"},{value:"Europe/Volgograd",name:"Volgograd"},{value:"Europe/Warsaw",name:"Warsaw"},{value:"Europe/Zagreb",name:"Zagreb"},{value:"Europe/Zaporozhye",name:"Zaporozhye"},{value:"Europe/Zurich",name:"Zurich"}]},{group:"Asia",zones:[{value:"Asia/Aden",name:"Aden"},{value:"Asia/Almaty",name:"Almaty"},{value:"Asia/Amman",name:"Amman"},{value:"Asia/Anadyr",name:"Anadyr"},{value:"Asia/Aqtau",name:"Aqtau"},{value:"Asia/Aqtobe",name:"Aqtobe"},{value:"Asia/Ashgabat",name:"Ashgabat"},{value:"Asia/Ashkhabad",name:"Ashkhabad"},{value:"Asia/Baghdad",name:"Baghdad"},{value:"Asia/Bahrain",name:"Bahrain"},{value:"Asia/Baku",name:"Baku"},{value:"Asia/Bangkok",name:"Bangkok"},{value:"Asia/Beirut",name:"Beirut"},{value:"Asia/Bishkek",name:"Bishkek"},{value:"Asia/Brunei",name:"Brunei"},{value:"Asia/Calcutta",name:"Calcutta"},{value:"Asia/Choibalsan",name:"Choibalsan"},{value:"Asia/Chongqing",name:"Chongqing"},{value:"Asia/Chungking",name:"Chungking"},{value:"Asia/Colombo",name:"Colombo"},{value:"Asia/Dacca",name:"Dacca"},{value:"Asia/Damascus",name:"Damascus"},{value:"Asia/Dhaka",name:"Dhaka"},{value:"Asia/Dili",name:"Dili"},{value:"Asia/Dubai",name:"Dubai"},{value:"Asia/Dushanbe",name:"Dushanbe"},{value:"Asia/Gaza",name:"Gaza"},{value:"Asia/Harbin",name:"Harbin"},{value:"Asia/Ho_Chi_Minh",name:"Ho Chi Minh"},{value:"Asia/Hong_Kong",name:"Hong Kong"},{value:"Asia/Hovd",name:"Hovd"},{value:"Asia/Irkutsk",name:"Irkutsk"},{value:"Asia/Istanbul",name:"Istanbul"},{value:"Asia/Jakarta",name:"Jakarta"},{value:"Asia/Jayapura",name:"Jayapura"},{value:"Asia/Jerusalem",name:"Jerusalem"},{value:"Asia/Kabul",name:"Kabul"},{value:"Asia/Kamchatka",name:"Kamchatka"},{value:"Asia/Karachi",name:"Karachi"},{value:"Asia/Kashgar",name:"Kashgar"},{value:"Asia/Kathmandu",name:"Kathmandu"},{value:"Asia/Katmandu",name:"Katmandu"},{value:"Asia/Kolkata",name:"Kolkata"},{value:"Asia/Krasnoyarsk",name:"Krasnoyarsk"},{value:"Asia/Kuala_Lumpur",name:"Kuala Lumpur"},{value:"Asia/Kuching",name:"Kuching"},{value:"Asia/Kuwait",name:"Kuwait"},{value:"Asia/Macao",name:"Macao"},{value:"Asia/Macau",name:"Macau"},{value:"Asia/Magadan",name:"Magadan"},{value:"Asia/Makassar",name:"Makassar"},{value:"Asia/Manila",name:"Manila"},{value:"Asia/Muscat",name:"Muscat"},{value:"Asia/Nicosia",name:"Nicosia"},{value:"Asia/Novokuznetsk",name:"Novokuznetsk"},{value:"Asia/Novosibirsk",name:"Novosibirsk"},{value:"Asia/Omsk",name:"Omsk"},{value:"Asia/Oral",name:"Oral"},{value:"Asia/Phnom_Penh",name:"Phnom Penh"},{value:"Asia/Pontianak",name:"Pontianak"},{value:"Asia/Pyongyang",name:"Pyongyang"},{value:"Asia/Qatar",name:"Qatar"},{value:"Asia/Qyzylorda",name:"Qyzylorda"},{value:"Asia/Rangoon",name:"Rangoon"},{value:"Asia/Riyadh",name:"Riyadh"},{value:"Asia/Saigon",name:"Saigon"},{value:"Asia/Sakhalin",name:"Sakhalin"},{value:"Asia/Samarkand",name:"Samarkand"},{value:"Asia/Seoul",name:"Seoul"},{value:"Asia/Shanghai",name:"Shanghai"},{value:"Asia/Singapore",name:"Singapore"},{value:"Asia/Taipei",name:"Taipei"},{value:"Asia/Tashkent",name:"Tashkent"},{value:"Asia/Tbilisi",name:"Tbilisi"},{value:"Asia/Tehran",name:"Tehran"},{value:"Asia/Tel_Aviv",name:"Tel Aviv"},{value:"Asia/Thimbu",name:"Thimbu"},{value:"Asia/Thimphu",name:"Thimphu"},{value:"Asia/Tokyo",name:"Tokyo"},{value:"Asia/Ujung_Pandang",name:"Ujung Pandang"},{value:"Asia/Ulaanbaatar",name:"Ulaanbaatar"},{value:"Asia/Ulan_Bator",name:"Ulan Bator"},{value:"Asia/Urumqi",name:"Urumqi"},{value:"Asia/Vientiane",name:"Vientiane"},{value:"Asia/Vladivostok",name:"Vladivostok"},{value:"Asia/Yakutsk",name:"Yakutsk"},{value:"Asia/Yekaterinburg",name:"Yekaterinburg"},{value:"Asia/Yerevan",name:"Yerevan"}]},{group:"Africa",zones:[{value:"Africa/Abidjan",name:"Abidjan"},{value:"Africa/Accra",name:"Accra"},{value:"Africa/Addis_Ababa",name:"Addis Ababa"},{value:"Africa/Algiers",name:"Algiers"},{value:"Africa/Asmara",name:"Asmara"},{value:"Africa/Asmera",name:"Asmera"},{value:"Africa/Bamako",name:"Bamako"},{value:"Africa/Bangui",name:"Bangui"},{value:"Africa/Banjul",name:"Banjul"},{value:"Africa/Bissau",name:"Bissau"},{value:"Africa/Blantyre",name:"Blantyre"},{value:"Africa/Brazzaville",name:"Brazzaville"},{value:"Africa/Bujumbura",name:"Bujumbura"},{value:"Africa/Cairo",name:"Cairo"},{value:"Africa/Casablanca",name:"Casablanca"},{value:"Africa/Ceuta",name:"Ceuta"},{value:"Africa/Conakry",name:"Conakry"},{value:"Africa/Dakar",name:"Dakar"},{value:"Africa/Dar_es_Salaam",name:"Dar es Salaam"},{value:"Africa/Djibouti",name:"Djibouti"},{value:"Africa/Douala",name:"Douala"},{value:"Africa/El_Aaiun",name:"El Aaiun"},{value:"Africa/Freetown",name:"Freetown"},{value:"Africa/Gaborone",name:"Gaborone"},{value:"Africa/Harare",name:"Harare"},{value:"Africa/Johannesburg",name:"Johannesburg"},{value:"Africa/Kampala",name:"Kampala"},{value:"Africa/Khartoum",name:"Khartoum"},{value:"Africa/Kigali",name:"Kigali"},{value:"Africa/Kinshasa",name:"Kinshasa"},{value:"Africa/Lagos",name:"Lagos"},{value:"Africa/Libreville",name:"Libreville"},{value:"Africa/Lome",name:"Lome"},{value:"Africa/Luanda",name:"Luanda"},{value:"Africa/Lubumbashi",name:"Lubumbashi"},{value:"Africa/Lusaka",name:"Lusaka"},{value:"Africa/Malabo",name:"Malabo"},{value:"Africa/Maputo",name:"Maputo"},{value:"Africa/Maseru",name:"Maseru"},{value:"Africa/Mbabane",name:"Mbabane"},{value:"Africa/Mogadishu",name:"Mogadishu"},{value:"Africa/Monrovia",name:"Monrovia"},{value:"Africa/Nairobi",name:"Nairobi"},{value:"Africa/Ndjamena",name:"Ndjamena"},{value:"Africa/Niamey",name:"Niamey"},{value:"Africa/Nouakchott",name:"Nouakchott"},{value:"Africa/Ouagadougou",name:"Ouagadougou"},{value:"Africa/Porto-Novo",name:"Porto-Novo"},{value:"Africa/Sao_Tome",name:"Sao Tome"},{value:"Africa/Timbuktu",name:"Timbuktu"},{value:"Africa/Tripoli",name:"Tripoli"},{value:"Africa/Tunis",name:"Tunis"},{value:"Africa/Windhoek",name:"Windhoek"}]},{group:"Australia",zones:[{value:"Australia/ACT",name:"ACT"},{value:"Australia/Adelaide",name:"Adelaide"},{value:"Australia/Brisbane",name:"Brisbane"},{value:"Australia/Broken_Hill",name:"Broken Hill"},{value:"Australia/Canberra",name:"Canberra"},{value:"Australia/Currie",name:"Currie"},{value:"Australia/Darwin",name:"Darwin"},{value:"Australia/Eucla",name:"Eucla"},{value:"Australia/Hobart",name:"Hobart"},{value:"Australia/LHI",name:"LHI"},{value:"Australia/Lindeman",name:"Lindeman"},{value:"Australia/Lord_Howe",name:"Lord Howe"},{value:"Australia/Melbourne",name:"Melbourne"},{value:"Australia/North",name:"North"},{value:"Australia/NSW",name:"NSW"},{value:"Australia/Perth",name:"Perth"},{value:"Australia/Queensland",name:"Queensland"},{value:"Australia/South",name:"South"},{value:"Australia/Sydney",name:"Sydney"},{value:"Australia/Tasmania",name:"Tasmania"},{value:"Australia/Victoria",name:"Victoria"},{value:"Australia/West",name:"West"},{value:"Australia/Yancowinna",name:"Yancowinna"}]},{group:"Indian",zones:[{value:"Indian/Antananarivo",name:"Antananarivo"},{value:"Indian/Chagos",name:"Chagos"},{value:"Indian/Christmas",name:"Christmas"},{value:"Indian/Cocos",name:"Cocos"},{value:"Indian/Comoro",name:"Comoro"},{value:"Indian/Kerguelen",name:"Kerguelen"},{value:"Indian/Mahe",name:"Mahe"},{value:"Indian/Maldives",name:"Maldives"},{value:"Indian/Mauritius",name:"Mauritius"},{value:"Indian/Mayotte",name:"Mayotte"},{value:"Indian/Reunion",name:"Reunion"}]},{group:"Atlantic",zones:[{value:"Atlantic/Azores",name:"Azores"},{value:"Atlantic/Bermuda",name:"Bermuda"},{value:"Atlantic/Canary",name:"Canary"},{value:"Atlantic/Cape_Verde",name:"Cape Verde"},{value:"Atlantic/Faeroe",name:"Faeroe"},{value:"Atlantic/Faroe",name:"Faroe"},{value:"Atlantic/Jan_Mayen",name:"Jan Mayen"},{value:"Atlantic/Madeira",name:"Madeira"},{value:"Atlantic/Reykjavik",name:"Reykjavik"},{value:"Atlantic/South_Georgia",name:"South Georgia"},{value:"Atlantic/Stanley",name:"Stanley"},{value:"Atlantic/St_Helena",name:"St Helena"}]},{group:"Pacific",zones:[{value:"Pacific/Apia",name:"Apia"},{value:"Pacific/Auckland",name:"Auckland"},{value:"Pacific/Chatham",name:"Chatham"},{value:"Pacific/Easter",name:"Easter"},{value:"Pacific/Efate",name:"Efate"},{value:"Pacific/Enderbury",name:"Enderbury"},{value:"Pacific/Fakaofo",name:"Fakaofo"},{value:"Pacific/Fiji",name:"Fiji"},{value:"Pacific/Funafuti",name:"Funafuti"},{value:"Pacific/Galapagos",name:"Galapagos"},{value:"Pacific/Gambier",name:"Gambier"},{value:"Pacific/Guadalcanal",name:"Guadalcanal"},{value:"Pacific/Guam",name:"Guam"},{value:"Pacific/Honolulu",name:"Honolulu"},{value:"Pacific/Johnston",name:"Johnston"},{value:"Pacific/Kiritimati",name:"Kiritimati"},{value:"Pacific/Kosrae",name:"Kosrae"},{value:"Pacific/Kwajalein",name:"Kwajalein"},{value:"Pacific/Majuro",name:"Majuro"},{value:"Pacific/Marquesas",name:"Marquesas"},{value:"Pacific/Midway",name:"Midway"},{value:"Pacific/Nauru",name:"Nauru"},{value:"Pacific/Niue",name:"Niue"},{value:"Pacific/Norfolk",name:"Norfolk"},{value:"Pacific/Noumea",name:"Noumea"},{value:"Pacific/Pago_Pago",name:"Pago Pago"},{value:"Pacific/Palau",name:"Palau"},{value:"Pacific/Pitcairn",name:"Pitcairn"},{value:"Pacific/Ponape",name:"Ponape"},{value:"Pacific/Port_Moresby",name:"Port Moresby"},{value:"Pacific/Rarotonga",name:"Rarotonga"},{value:"Pacific/Saipan",name:"Saipan"},{value:"Pacific/Samoa",name:"Samoa"},{value:"Pacific/Tahiti",name:"Tahiti"},{value:"Pacific/Tarawa",name:"Tarawa"},{value:"Pacific/Tongatapu",name:"Tongatapu"},{value:"Pacific/Truk",name:"Truk"},{value:"Pacific/Wake",name:"Wake"},{value:"Pacific/Wallis",name:"Wallis"},{value:"Pacific/Yap",name:"Yap"}]},{group:"Antarctica",zones:[{value:"Antarctica/Casey",name:"Casey"},{value:"Antarctica/Davis",name:"Davis"},{value:"Antarctica/DumontDUrville",name:"DumontDUrville"},{value:"Antarctica/Macquarie",name:"Macquarie"},{value:"Antarctica/Mawson",name:"Mawson"},{value:"Antarctica/McMurdo",name:"McMurdo"},{value:"Antarctica/Palmer",name:"Palmer"},{value:"Antarctica/Rothera",name:"Rothera"},{value:"Antarctica/South_Pole",name:"South Pole"},{value:"Antarctica/Syowa",name:"Syowa"},{value:"Antarctica/Vostok",name:"Vostok"}]},{group:"Arctic",zones:[{value:"Arctic/Longyearbyen",name:"Longyearbyen"}]},{group:"UTC",zones:[{value:"UTC",name:"UTC"}]},{group:"Manual Offsets",zones:[{value:"UTC-12",name:"UTC-12"},{value:"UTC-11",name:"UTC-11"},{value:"UTC-10",name:"UTC-10"},{value:"UTC-9",name:"UTC-9"},{value:"UTC-8",name:"UTC-8"},{value:"UTC-7",name:"UTC-7"},{value:"UTC-6",name:"UTC-6"},{value:"UTC-5",name:"UTC-5"},{value:"UTC-4",name:"UTC-4"},{value:"UTC-3",name:"UTC-3"},{value:"UTC-2",name:"UTC-2"},{value:"UTC-1",name:"UTC-1"},{value:"UTC+0",name:"UTC+0"},{value:"UTC+1",name:"UTC+1"},{value:"UTC+2",name:"UTC+2"},{value:"UTC+3",name:"UTC+3"},{value:"UTC+4",name:"UTC+4"},{value:"UTC+5",name:"UTC+5"},{value:"UTC+6",name:"UTC+6"},{value:"UTC+7",name:"UTC+7"},{value:"UTC+8",name:"UTC+8"},{value:"UTC+9",name:"UTC+9"},{value:"UTC+10",name:"UTC+10"},{value:"UTC+11",name:"UTC+11"},{value:"UTC+12",name:"UTC+12"},{value:"UTC+13",name:"UTC+13"},{value:"UTC+14",name:"UTC+14"}]}]}}}),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer",{url:"/motiondialer",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:16}}})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCtrl",["$scope","$uibModal","$translate","xAlert","Modal","MotionDialerProcess","uiGridConstants","usSpinnerService",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,columnDefs:[{name:"id",width:60},{name:"name"},{name:"queue",enableSorting:!1},{name:"extension",enableSorting:!1},{name:"id_list",enableSorting:!1,cellTemplate:'<div><a class="btn btn-xs grey-cascade" href="/motiondialer/lists/view/{{row.entity.id_list}}/settings">{{row.entity.id_list}}</a></div>',cellClass:"ui-grid-vcenter"},{name:"status",cellTemplate:"<div><a class=\"btn btn-xs\" data-ng-class=\"row.entity.status == 'STOP' ? 'red-sunglo' : 'green-meadow'\" data-ng-href=\"#\">{{ (row.entity.status === 'RUN') ? 'RUNNING' : 'STOPPED'}}</a></div>",cellClass:"ui-grid-vcenter",filter:{type:g.filter.SELECT,selectOptions:[{value:"RUN",label:"RUNNING"},{value:"STOP",label:"STOPPED"}]}},{name:"updatedtime",sort:{direction:g.DESC},enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" href="/motiondialer/processes/view/{{row.entity.id}}/overview">{{\'APPLICATION_SETTINGS\' | translate}}</a> <a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteItem(row.entity.name, row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},f.list({page:1,size:6e5}).$promise.then(function(b){console.log(b),b.status>0?a.gridOptions.data=b.response.RMI.rows:d.show("Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){h.stop("spinner-grid")})},a.createProcessQueue=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/process/list/list.create.queue.modal.html",controller:"MotionDialerProcessListCreateQueueCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.createProcessSquare=function(){var c=b.open({animation:!0,templateUrl:"app/motiondialer/process/list/list.create.square.modal.html",controller:"MotionDialerProcessListCreateSquareCtrl"});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.deleteItem=e.confirm["delete"](function(b){return f["delete"]({id:b}).$promise.then(function(e){e.status>0?(_.remove(a.gridOptions.data,{id:b}),d.show(c.instant("MESSAGE_WELL_DONE"),"success")):d.show(e.message||"Please, check your connection!","danger")})["catch"](function(a){d.show(a.message?a.message:a.data.message,"danger")})})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCreateQueueCtrl",["$scope","$translate","$uibModalInstance","MotionDialerProcess","MotionDialerList","Trunk","VoiceQueue","Route","xAlert",function(a,b,c,d,e,f,g,h,i){a.form={},a.item={fetch_sort:"ASC",timeout:3},a.initModal=function(){return g.get().$promise.then(function(b){return a.queues={},b&&(a.queues=b.rows),f.get().$promise}).then(function(b){return a.trunks={},b&&(a.trunks=b.rows),a.trunks.push({name:"fake"}),e.list({page:1,size:6e5}).$promise}).then(function(b){a.lists={},b.status>0?a.lists=b.response.RMI.rows:i.show("Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.save=function(){console.log(a.item);var e="process_"+a.item.name+"_queue_"+a.item.queue.name+"_"+Math.round(1e5*Math.random()),f="Generated by Motion Dialer, Process Queue"+(a.item.description?", "+a.item.description:"");return h.save({appdata:"Internal Call",context:"from-sip",exten:e.replace(/\s/g,"_"),type:"internal",description:f,Applications:[{appdata:["QUEUE_PRIO=99"],app:"Set",interval:"*,*,*,*",type:"internal"},{appdata:[a.item.queue.name,"","","",a.item.timeout],app:"Queue",interval:"*,*,*,*",type:"internal"}]}).$promise.then(function(b){return console.log(b),d.insert({name:a.item.name,id_list:a.item.list.id,queue:a.item.queue.name,device:a.item.device.name,context:"from-sip",extension:e.replace(/\s/g,"_"),description:a.item.description,auto_closed:!0,fetch_sort:a.item.fetch_sort}).$promise}).then(function(a){a.status>0?(i.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):i.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessListCreateSquareCtrl",["$scope","$translate","$uibModalInstance","MotionDialerProcess","MotionDialerList","SquareProject","Trunk","Route","xAlert",function(a,b,c,d,e,f,g,h,i){a.form={},a.item={fetch_sort:"ASC"},a.initModal=function(){return f.get().$promise.then(function(b){return a.projects={},b&&(a.projects=b.rows),g.get().$promise}).then(function(b){return a.trunks={},b&&(a.trunks=b.rows),a.trunks.push({name:"fake"}),e.list({page:1,size:6e5}).$promise}).then(function(b){a.lists={},b.status>0?a.lists=b.response.RMI.rows:i.show("Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.save=function(){console.log(a.item);var e="process_"+a.item.name+"_square_"+a.item.project.name+"_"+Math.round(1e5*Math.random()),f="Generated by Motion Dialer, Process Square"+(a.item.description?", "+a.item.description:"");return h.save({appdata:"Internal Call",context:"from-sip",exten:e.replace(/\s/g,"_"),type:"internal",description:f,Applications:[{appdata:["agi://127.0.0.1/square",a.item.project.name],app:"AGI",interval:"*,*,*,*",type:"internal"}]}).$promise.then(function(b){return console.log(b),d.insert({name:a.item.name,id_list:a.item.list.id,queue:"none",device:a.item.device.name,context:"from-sip",extension:e.replace(/\s/g,"_"),description:a.item.description,auto_closed:!0,channel_limit:15,fetch_sort:a.item.fetch_sort}).$promise}).then(function(a){a.status>0?(i.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)):i.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){i.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes.list",{url:"/list",templateUrl:"app/motiondialer/process/list/list.html",controller:"MotionDialerProcessListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").factory("MotionDialerProcess",["$resource",function(a){return a("/api/rest/process/:controller",null,{list:{method:"POST",params:{controller:"list"}},insert:{method:"POST",params:{controller:"insert"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},update:{method:"POST",params:{controller:"update"}}})}]),angular.module("xCallyShuttleApp").factory("MotionDialerSpooler",["$resource",function(a){return a("/api/rest/spooler/:controller/:retrieve",null,{list:{method:"POST",params:{controller:"list"}},"delete":{method:"POST",params:{controller:"delete"}},find:{method:"POST",params:{controller:"find"}},summary:{method:"POST",params:{controller:"summary"}},close:{method:"POST",params:{controller:"retrieve",retrieve:"close"}},open:{method:"POST",params:{controller:"retrieve",retrieve:"open"}},blacklist:{method:"POST",params:{controller:"retrieve",retrieve:"blacklist"}},planning:{method:"POST",params:{controller:"retrieve",retrieve:"planning"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes",{url:"/processes",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("MotionDialerProcessViewCtrl",["$scope","$translate","$stateParams","$uibModal","xAlert","uiGridConstants","usSpinnerService","MotionDialerProcess","MotionDialerSpooler","Modal","VoiceQueue",function(a,b,c,d,e,f,g,h,i,j,k){a.process={},a.techs=["SIP","IAX","LOCAL","KHOMP"],a.dialFormats=["tech/device/number","tech/number@device"],a.checkDuplicates=["ALWAYS","IFOPEN","NO"],a.codecs=["g729","ilbc","gsm","ulaw","alaw"],a.getProcess=function(){return h.find({id:parseInt(c.id)}).$promise.then(function(b){console.log(b),b.status>0?(b.response.RMI.codecs=b.response.RMI.codecs.split(","),a.process=b.response.RMI):e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.getSummary=function(){return i.summary({id_process:parseInt(c.id)}).$promise.then(function(b){if(b.status>0){a.summary=b.response.RMI.totals,a.total=0;for(var c=0;c<a.summary.length;c++)a.total+=a.summary[c][1]}else e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.updateProcess=function(){var c=_.clone(a.process);return delete c.updatedtime,delete c.id_list,delete c.createdtime,delete c.runtime,delete c.fetch_sort,c.codecs=c.codecs.join(","),""===c.timezone&&delete c.timezone,h.update(c).$promise.then(function(c){c.status>0?(c.response.RMI.codecs=c.response.RMI.codecs.split(","),a.process=c.response.RMI,e.show(b.instant("MESSAGE_WELL_DONE"),"success")):c.response.RMI.errors.forEach(function(a){a?e.show(a.field+": "+a.error,"danger"):e.show("Please, check your connection!","danger")})})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.getSpooler=function(){return a.gridOptions={paginationPageSizes:[10,25,50,75],paginationPageSize:10,enableFiltering:!0,enableSorting:!0,enableGridMenu:!0,flatEntityAccess:!0,showGridFooter:!0,fastWatch:!0,headerCellFilter:"translate",columnDefs:[{name:"name"},{name:"phones"},{name:"retrieve",filter:{type:f.filter.SELECT,selectOptions:[{value:"PLANNED_PEER",label:"PLANNED PEER"},{value:"PLANNED",label:"PLANNED"},{value:"BLACK_LIST",label:"BLACKLIST"},{value:"OPEN",label:"OPEN"},{value:"CLOSED",label:"CLOSED"},{value:"MAX_ATTEMPTS",label:"MAX ATTEMPTS"},{value:"COUNTER_BLOCK",label:"COUNTER BLOCK"},{value:"PLANNED_REQUEST",label:"PLANNED REQUEST"},{value:"DELETE",label:"DELETE"}]}},{name:"counter",enableFiltering:!1},{name:"updatedtime",enableFiltering:!1},{name:"action",cellTemplate:'<div><a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.historySpooler(row.entity.history)">{{\'APPLICATION_HISTORY\' | translate}}</a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteSpooler(row.entity.phones.join(), row.entity.id)">{{\'APPLICATION_DELETE\' | translate}}</a></div>',enableSorting:!1,cellClass:"ui-grid-vcenter",enableFiltering:!1}]},i.list({id_process:parseInt(c.id),page:1,size:6e5}).$promise.then(function(b){b.status>0?a.gridOptions.data=b.response.RMI.rows:e.show(b.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})["finally"](function(){g.stop("spinner-grid")})},a.deleteSpooler=j.confirm["delete"](function(c){return i["delete"]({id:c}).$promise.then(function(d){d.status>0?(_.remove(a.gridOptions.data,{id:c}),e.show(b.instant("MESSAGE_WELL_DONE"),"success")):e.show(d.message||"Please, check your connection!","danger")})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.historySpooler=function(b){var c=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.spooler.history.modal.html",controller:"MotionDialerViewSpoolerHistoryCtrl",resolve:{historySpooler:function(){return b}}});c.result.then(function(b){a.gridOptions.data.push(b.response.RMI)})},a.initSettings=function(){return a.queues=null,k.get().$promise.then(function(b){b&&(a.queues=b.rows,a.process.queue&&"none"!==a.process.queue&&(a.queue=_.find(b.rows,{name:a.process.queue})))})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})},a.createInterval=function(b){var c=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.create.interval.modal.html",controller:"MotionDialerViewCreateIntervalCtrl",resolve:{objectProcess:function(){return a.process},intervalType:function(){return b},intervalValue:function(){return b?"8:00-20:00|MON-FRI|*|*":"00:01-07:59|SAT-SUN|*|*"}}});c.result.then(function(b){a.process=b})},a.editInterval=function(b,c){var e=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.create.interval.modal.html",controller:"MotionDialerViewCreateIntervalCtrl",resolve:{objectProcess:function(){return a.process},intervalType:function(){return b},intervalValue:function(){return c}}});e.result.then(function(b){a.process=b})},a.deleteInterval=j.confirm["delete"](function(c,d){var f={id:a.process.id};return d?(f.intervals=[],f.intervals=f.intervals.concat(a.process.intervals),f.intervals.splice(c,1)):(f.not_intervals=[],f.not_intervals=f.not_intervals.concat(a.process.not_intervals),f.not_intervals.splice(c,1)),h.update(f).$promise.then(function(c){c.status>0?(c.response.RMI.codecs=c.response.RMI.codecs.split(","),a.process=c.response.RMI,e.show(b.instant("MESSAGE_WELL_DONE"),"success")):c.response.RMI.errors.forEach(function(a){a?e.show(a.field+": "+a.error,"danger"):e.show("Please, check your connection!","danger")})})["catch"](function(a){e.show(a.message?a.message:a.data.message,"danger")})}),a.runOrStop=function(){var b=d.open({animation:!0,templateUrl:"app/motiondialer/process/view/view.run.process.modal.html",controller:"MotionDialerViewRunProcessCtrl",resolve:{statusProcess:function(){return a.process.status}}});b.result.then(function(b){a.process.status=b.status})}}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewCreateIntervalCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerProcess","xAlert","objectProcess","intervalType","intervalValue","interval",function(a,b,c,d,e,f,g,h,i,j){function k(a){var b,c=a.split("|"),d={};return c.forEach(function(a,c){switch(c){case 0:"*"!==a?(b=a.split("-"),d.t_from=moment(b[0],"HH:mm"),d.t_to=moment(b[1],"HH:mm"),d.alwaysTime=!1):(d.t_from=moment(new Date),d.t_to=moment(new Date),d.alwaysTime=!0);break;case 1:"*"!==a?(b=a.split("-"),d.wd_from=b[0].toLowerCase(),d.wd_to=b[1]?b[1].toLowerCase():"always"):(d.wd_from="always",d.wd_to="always");break;case 2:"*"!==a?(b=a.split("-"),d.md_from=b[0],d.md_to=b[1]?b[1]:"always"):(d.md_from="always",d.md_to="always");break;case 3:"*"!==a?(b=a.split("-"),d.m_from=b[0],d.m_to=b[1]?b[1]:"always"):(d.m_from="always",d.m_to="always")}}),d}function l(a){var b,c,d,e;return b=a.t_from&&a.t_to&&!a.alwaysTime?moment(a.t_from).format("HH:mm")+"-"+moment(a.t_to).format("HH:mm"):"*",a.wd_from&&"always"!==a.wd_from?(c=a.wd_from.toUpperCase(),a.wd_to&&"always"!==a.wd_to&&(c+="-"+a.wd_to.toUpperCase())):c="*",a.md_from&&"always"!==a.md_from?(d=a.md_from,a.md_to&&"always"!==a.md_to&&(d+="-"+a.md_to)):d="*",a.m_from&&"always"!==a.m_from?(e=a.m_from,a.m_to&&"always"!==a.m_to&&(e+="-"+a.m_to)):e="*",b+"|"+c+"|"+d+"|"+e}a.form={},a.$interval=j.interval,a.splittedInterval=k(i),a.save=function(){var d=l(a.splittedInterval);console.log(d);var i={id:g.id};return h?(i.intervals=[],i.intervals=i.intervals.concat(g.intervals),i.intervals.push(d)):(i.not_intervals=[],i.not_intervals=i.not_intervals.concat(g.not_intervals),i.not_intervals.push(d)),console.log(i),e.update(i).$promise.then(function(a){a.status>0?(a.response.RMI.codecs=a.response.RMI.codecs.split(","),f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a.response.RMI)):a.response.RMI.errors.forEach(function(a){a?f.show(a.field+": "+a.error,"danger"):f.show("Please, check your connection!","danger")})})["catch"](function(a){f.show(a.message?a.message:a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.motiondialer.processes.view",{url:"/view/:id",templateUrl:"app/motiondialer/process/view/view.html",controller:"MotionDialerProcessViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.motiondialer.processes.view.overview",{url:"/overview",templateUrl:"app/motiondialer/process/view/view.overview.html"}).state("main.motiondialer.processes.view.settings",{url:"/settings",templateUrl:"app/motiondialer/process/view/view.settings.html" -}).state("main.motiondialer.processes.view.intervals",{url:"/intervals",templateUrl:"app/motiondialer/process/view/view.intervals.html"}).state("main.motiondialer.processes.view.spooler",{url:"/spooler",templateUrl:"app/motiondialer/process/view/view.spooler.html"})}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewRunProcessCtrl",["$scope","$stateParams","$uibModalInstance","$translate","statusProcess","MotionDialerProcess","xAlert",function(a,b,c,d,e,f,g){a.status="RUN"===e?"STOP":"RUN",a.yes=function(){f.update({id:parseInt(b.id),status:a.status}).$promise.then(function(a){a.status>0?(g.show(d.instant("MESSAGE_WELL_DONE"),"success"),c.close(a.response.RMI)):g.show(a.message||"Please, check your connection!","danger")})["catch"](function(a){g.show(a.message?a.message:a.data.message,"danger")})},a.no=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("MotionDialerViewSpoolerHistoryCtrl",["$scope","$translate","$uibModalInstance","$stateParams","MotionDialerSpooler","xAlert","historySpooler",function(a,b,c,d,e,f,g){a.historySpooler=g,a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("SalesforceListCtrl",["$scope","SalesforceAccount","gridOptions","xAlert","$translate",function(a,b,c,d,e){a.initView=function(){var d={exporterCsvFilename:"salesforce_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_URI"},{name:"action",buttons:[{"class":"blue-hoki",href:"/salesforce/view/{{row.entity.id}}/account",name:"account"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.check({id:a}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.list",{url:"/list",templateUrl:"app/salesforce/list/list.html",controller:"SalesforceListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("SalesforceAccount",["$resource",function(a){return a("/api/salesforce/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"},fields:{params:{controller:"fields"},isArray:!0},check:{params:{controller:"check"}}})}]).factory("SalesforceConfiguration",["$resource",function(a){return a("/api/salesforce/accounts/:accountId/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]).factory("SalesforceField",["$resource",function(a){return a("/api/salesforce/accounts/:accountId/configurations/:configurationId/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce",{url:"/salesforce",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations",{url:"/configurations",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewConfigurationListCtrl",["$scope","$stateParams","$translate","gridOptions","SalesforceConfiguration","$uibModal",function(a,b,c,d,e,f){a.initView=function(){var c={exporterCsvFilename:"salesforce_configurations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/salesforce/view/{{row.entity.AccountId}}/configurations/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(e,c,a,{accountId:b.id})},a.createItem=function(){var b=f.open({animation:!0,templateUrl:"app/salesforce/view/configuration/list/create.modal.html",controller:"SalesforceCreateConfigurationCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SalesforceCreateConfigurationCtrl",["$scope","$translate","$uibModalInstance","SalesforceConfiguration","xAlert","$stateParams","channel",function(a,b,c,d,e,f,g){a.form={},a.item={},a.channels=g,a.item.channel="voice",a.save=function(){return d.save({accountId:f.id},a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations.list",{url:"/list",templateUrl:"app/salesforce/view/configuration/list/list.html",controller:"SalesforceViewConfigurationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewConfigurationViewCtrl",["$scope","$filter","$stateParams","$translate","socket","variable","xAlert","SalesforceAccount","SalesforceConfiguration","SalesforceField","Variable",function(a,b,c,d,e,f,g,h,i,j,k){a.$on("$destroy",function(){e.unsyncUpdates("salesforce_field")}),a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:300,scrollInertia:0},a.fieldType=[{type:"string",title:"String"},{type:"variable",title:"Variable"},{type:"customVariable",title:"Custom Variable"}],a.descFieldType=[{type:"string",title:"String"},{type:"keyValue",title:"Key Value"}],a.groupVariableByGroup=function(a){switch(a.group){case"voice_queue":return"Voice: Queue";default:return"Other"}},a.initView=function(){a.configurationName="",a.subjectConfig=[],a.descriptionConfig=[],a.fieldConfig=[],a.variables=f},a.getConfiguration=function(){return i.get({accountId:c.id,id:c.configurationId}).$promise.then(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,e.socket.on("salesforce_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})})["catch"](function(a){g.error(a)})},a.getCustomVariables=function(){return k.get().$promise.then(function(b){a.customVariables=b.rows})["catch"](function(a){g.error(a)})},a.getFields=function(){return h.fields({id:c.id}).$promise.then(function(c){a.accountFields=_.sortByOrder(b("salesforce")(c),"name","asc"),console.log(a.accountFields)})["catch"](function(a){g.error(a)})},a.addItem=function(b){var d={};switch(b){case"subject":case"description":d={type:"string",content:""};break;case"field":d={content:""}}return i.save({accountId:c.id,id:c.configurationId,controller:b},d).$promise.then(function(c){switch(b){case"subject":a.subjectConfig.push(c);break;case"description":a.descriptionConfig.push(c);break;case"field":a.fieldConfig.push(c)}})["catch"](function(a){g.error(a)})},a.changeType=function(b){"variable"===b.type?(b.content="",b.variableName=""):"string"===b.type?(b.VariableId=null,b.variableName=""):"customVariable"===b.type&&(b.VariableId=null,b.content=""),a.updateField(b)},a.updateField=function(a){return j.update({accountId:c.id,configurationId:c.configurationId,id:a.id},a).$promise.then(function(){})["catch"](function(a){g.error(a)})},a.removeItem=function(a){return j["delete"]({accountId:c.id,configurationId:c.configurationId,id:a.id}).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.error(a)})},a.changeDescType=function(b){"keyValue"===b.type?(b.content="","string"===b.keyType?(b.VariableId=null,b.variableName=""):"variable"===b.keyType?(b.keyContent="",b.VariableId=null):"customVariable"===b.keyType&&(b.keyContent="",b.variableName="")):"string"===b.type&&(b.VariableId=null,b.variableName="",b.key="",b.keyContent=""),a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);if(c)switch(c.type){case"picklist":return c.picklistValues;default:return}}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view.configurations.view",{url:"/view/:configurationId",templateUrl:"app/salesforce/view/configuration/view/view.html",controller:"SalesforceViewConfigurationViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("SalesforceViewCtrl",["$scope","$http","$stateParams","$translate","$location","WizardHandler","socket","xAlert","Modal","$filter","SalesforceAccount",function(a,b,c,d,e,f,g,h,i,j,k){a.initView=function(){return k.get({id:c.id}).$promise.then(function(b){a.account=b})["catch"](function(a){h.error(a)})},a.updateItem=function(){return k.update({id:c.id},a.account).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){h.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.view",{url:"/view/:id",templateUrl:"app/salesforce/view/view.html",controller:"SalesforceViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.salesforce.view.account",{url:"/account",templateUrl:"app/salesforce/view/view.account.html"})}]),angular.module("xCallyShuttleApp").controller("SalesforceWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){console.log(a.item),b.post("api/salesforce/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/salesforce/list")}).error(function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.salesforce.wizard",{url:"/wizard",templateUrl:"app/salesforce/wizard/wizard.html",controller:"SalesforceWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("License",["$resource",function(a){return a("/api/licenses/:id/:controller",{id:"@id"},{request:{method:"POST",params:{id:"request"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.license",{url:"/license",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("LicenseUpdateCtrl",["$scope","$translate","$uibModalInstance","xAlert","Setting",function(a,b,c,d,e){a.form={},a.item={},a.getLicense=function(){return e.get({id:1}).$promise.then(function(b){a.item.license=b.license})["catch"](function(a){d.show(a.data.message,"danger")})},a.update=function(){return e.update({id:1},a.item).$promise.then(function(a){d.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").controller("LicenseViewCtrl",["$scope","$rootScope","$translate","License","xAlert","$window","$uibModal",function(a,b,c,d,e,f,g){a.initView=function(){return d.get(function(b){a.item=b.license})},a.submitRequest=function(){return d.request(a.item,function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")},function(a){switch(a.status){case 304:e.show(a.statusText,"info");break;default:e.show(a.statusText,"danger")}})},a.updateLicense=function(){var a=g.open({animation:!0,templateUrl:"app/setting/license/view/update.modal.html",controller:"LicenseUpdateCtrl"});a.result.then(function(){f.location.reload()})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.license.view",{url:"/view",templateUrl:"app/setting/license/view/view.html",controller:"LicenseViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/pricing-tables.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Externip",["$resource",function(a){return a("/api/network/externips/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Localnet",["$resource",function(a){return a("/api/network/localnets/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network",{url:"/network",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ExternipCtrl",["$scope","$uibModal","gridOptions","Externip",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"network_externip.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(d,b,a)},a.createItem=function(c){var d=b.open({animation:!0,templateUrl:"app/setting/network/view/externip/externip.create.modal.html",controller:"ExternipCreateCtrl",resolve:{item:c}});d.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ExternipCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","Externip","xAlert","item",function(a,b,c,d,e,f,g){a.initModal=function(){a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_EXTERNIP"):b.instant("APPLICATION_NEW_EXTERNIP")},a.save=function(){return g?e.update({id:a.item.id},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)}):e.save({},a.item).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view.externip",{url:"/externip",templateUrl:"app/setting/network/view/externip/externip.html",controller:"ExternipCtrl"})}]),angular.module("xCallyShuttleApp").controller("LocalnetCtrl",["$scope","gridOptions","Localnet","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"network_localnet.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"blue-hoki",onClick:"grid.appScope.createItem(row.entity)",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)},a.createItem=function(b){var c=d.open({animation:!0,templateUrl:"app/setting/network/view/localnet/localnet.create.modal.html",controller:"LocalnetCreateCtrl",resolve:{item:b}});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("LocalnetCreateCtrl",["$scope","$translate","$uibModalInstance","$stateParams","Localnet","xAlert","item",function(a,b,c,d,e,f,g){a.initModal=function(){if(a.form={},a.item=g||{},a.title=g?b.instant("APPLICATION_EDIT_LOCALNET"):b.instant("APPLICATION_NEW_LOCALNET"),g&&g.value){var c=a.item.value.split("/");c.length>1&&(a.item.address=c[0],a.item.mask=c[1])}},a.save=function(){var d=a.item.address+"/"+a.item.mask;return g?e.update({id:a.item.id},{value:d}).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)}):e.save({},{value:d}).$promise.then(function(a){f.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){f.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view.localnet",{url:"/localnet",templateUrl:"app/setting/network/view/localnet/localnet.html",controller:"LocalnetCtrl"})}]),angular.module("xCallyShuttleApp").controller("NetworkViewCtrl",["$scope","gridOptions","Localnet","Externip",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"network_localnet.csv",columnDefs:[{name:"value"},{name:"action",buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=b.gridOptions(c,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.network.view",{url:"/view",templateUrl:"app/setting/network/view/view.html",controller:"NetworkViewCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting",{url:"/setting",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:18}}})}]),angular.module("xCallyShuttleApp").factory("Setting",["$resource",function(a){return a("/api/settings/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("Smtp",["$resource",function(a){return a("/api/mail/servers/out/:id/:controller",{id:"@id"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.smtp",{url:"/smtp",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("SmtpViewCtrl",["$scope","$stateParams","$translate","socket","MailServerOut","Setting","MailAccount","xAlert","usSpinnerService",function(a,b,c,d,e,f,g,h,i){a.initMailAccounts=function(){return e.query().$promise.then(function(b){a.servers=b})["catch"](function(a){h.show(a.message,"danger")})},a.initView=function(){a.smtpDisabled=!1,a.isActive=!0,a.size="small",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.CONST_TIMEOUT=3e4,a.item={type:"custom",account:{ssl:!1}},e.get({id:"service"}).$promise.then(function(b){b&&(a.item.account=b,d.socket.on("mail_server_out:state",function(b){if(b.id===a.item.account.id)switch(a.item.account.state=b.state,a.item.account.source=JSON.parse(b.source),b.state){case"CONNECTING":break;default:i.stop("spinner-grid"),a.smtpDisabled=!1}}),a.item.account.MailAccountId?a.item.type="account":(a.item.type="custom",a.item.account.ssl=!1))})["catch"](function(a){h.show(a.message,"danger")})},a.updateItem=function(){return a.item.account.service=!0,a.item.account.id?f.update({id:"smtp",controller:a.item.account.id},a.item.account).$promise.then(function(){h.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")}):f.save({id:"smtp"},a.item.account).$promise.then(function(b){a.item.account=b,h.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.test=function(){return i.spin("spinner-grid"),a.smtpDisabled=!0,e.update({id:a.item.account.id},{state:"CONNECTING"}).$promise["catch"](function(a){console.error(a)})["finally"](function(){i.stop("spinner-grid")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.smtp.view",{url:"/view",templateUrl:"app/setting/smtp/view/view.html",controller:"SmtpViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("UpdateListCtrl",["$scope","gridOptions","$uibModal","$location","Update",function(a,b,c,d,e){a.initCounter=function(){a.$on("timer-stopped",function(a,b){console.log("Timer Stopped - data = ",b),d.path("/dashboard/voice")})},a.initView=function(){var c={exporterCsvFilename:"updates.csv",enableFiltering:!1,enableSorting:!1,enablePaginationControls:!1,enableSelectAll:!1,columnDefs:[{name:"message"},{width:125,name:"version",cellClass:"text-center ui-grid-vcenter"},{width:125,name:"createdAt",displayName:"APPLICATION_UPDATED_AT",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><span am-time-ago="row.entity.createdAt"></span></div>'}]};a.gridOptions=b.gridOptions(e,c,a)},a.pull=function(){c.open({animation:!0,templateUrl:"app/setting/update/list/list.pull.html",controller:"UpdateListPullCtrl"})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.updates.list",{url:"/list",templateUrl:"app/setting/update/list/list.html",controller:"UpdateListCtrl"}).state("main.setting.updates.landing",{url:"/landing",templateUrl:"app/setting/update/list/landing.html",controller:"UpdateListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/error.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("UpdateListPullCtrl",["$scope","$uibModalInstance","$translate","$location","Update",function(a,b,c,d,e){a.modal={dismissable:!0,title:"Confirm Checkout",html:"Are you sure you want to checkout?",buttons:[{classes:"btn btn-success",text:"Checkout",click:function(){return e.pull().$promise["finally"](function(){b.dismiss("close"),d.path("/setting/updates/landing")})}},{classes:"btn default",text:"Cancel",click:function(){b.dismiss("cancel")}}]}}]),angular.module("xCallyShuttleApp").factory("Update",["$resource",function(a){return a("/api/updates/:id/:controller",{id:"@id"},{pull:{method:"GET",params:{id:"pull"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.setting.updates",{url:"/updates",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["hasUpdate"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCtrl",["$scope","$uibModal","$translate","SquareOdbc","gridOptions","xAlert",function(a,b,c,d,e,f){a.initView=function(){var b={exporterCsvFilename:"odbc.csv",columnDefs:[{name:"name"},{name:"dsn",displayName:"APPLICATION_ODBC"},{name:"description"},{name:"action",width:250,buttons:[{"class":"blue-hoki",href:"/square/odbc/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkConnection(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(d,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/square/odbc/list/list.create.modal.html",controller:"SquareOdbcListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})},a.checkConnection=function(a){return d.get({id:a,controller:"check"}).$promise.then(function(){f.show(c.instant("MESSAGE_CONNECTION_VERIFIED"),"success")})["catch"](function(){f.show(c.instant("MESSAGE_CONNECTION_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").controller("SquareOdbcListCreateCtrl",["$scope","$translate","$uibModalInstance","SquareOdbc","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.item.dsn||(a.item.dsn="DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion"),a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc.list",{url:"/list",templateUrl:"app/square/odbc/list/list.html",controller:"SquareOdbcListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc",{url:"/odbc",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareOdbc",["$resource",function(a){return a("/api/square/odbc/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareOdbcViewCtrl",["$scope","$translate","$stateParams","SquareOdbc","xAlert",function(a,b,c,d,e){a.odbc={},a.getOdbc=function(){return d.get({id:c.id}).$promise.then(function(b){a.odbc=b})["catch"](function(a){e.show(a.data.message,"danger")})},a.updateOdbc=function(){var f=angular.copy(a.odbc);return d.update({id:c.id},f).$promise.then(function(){e.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){e.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.odbc.view",{url:"/view/:id",templateUrl:"app/square/odbc/view/view.html",controller:"SquareOdbcViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.square.odbc.view.settings",{url:"/settings",templateUrl:"app/square/odbc/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCtrl",["$scope","$uibModal","SquareProject","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"projects.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/square/projects/view/{{row.entity.id}}",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/square/project/list/list.create.modal.html",controller:"SquareProjectListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("SquareProjectListCreateCtrl",["$scope","$translate","$uibModalInstance","SquareProject","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.list",{url:"/list",templateUrl:"app/square/project/list/list.html",controller:"SquareProjectListCtrl",authenticate:!0})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects",{url:"/projects",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareProject",["$resource",function(a){return a("/api/square/projects/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareProjectViewCtrl",["$scope","$stateParams","Auth","xAlert","SquareProject",function(a,b,c,d,e){a.squareProject={},a.getProject=function(){return e.get({id:b.id}).$promise.then(function(b){a.squareProject=b,angular.element(document).ready(function(){window.onerror=function(a,b,c){try{if(null!==a&&-1!==a.indexOf("Script error."));else{var e=new Image;e.src="assets/plugins/mxgraph/images/1x1.png?msg="+encodeURIComponent(a)+"&url="+encodeURIComponent(b)+"&lnum="+encodeURIComponent(c)}}catch(f){d.show(f,"danger")}},b.token=c.getToken();var a=new EditorUi(new Editor);a.openString(b.preproduction,b.name,b),a.editor.graphChangeListener=function(a,b){var c=b.properties.rtChange||!1;c||(this.modified=!0)}})})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.projects.view",{url:"/view/:id",templateUrl:"app/square/project/view/view.html",controller:"SquareProjectViewCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",serie:!0,cache:!1,files:["assets/plugins/mxgraph/css/common.css","assets/plugins/mxgraph/css/explorer.css","assets/plugins/mxgraph/styles/grapheditor.css","assets/plugins/mxgraph/styles/custom.css","assets/plugins/square/js/custom.js","assets/plugins/mxgraph/js/mxClient.js","assets/plugins/square/js/Editor.js","assets/plugins/square/js/Graph.js","assets/plugins/square/js/EditorUi.js","assets/plugins/square/js/Actions.js","assets/plugins/square/js/Menus.js","assets/plugins/square/js/Sidebar.js","assets/plugins/square/js/Toolbar.js","assets/plugins/square/js/Dialogs.js"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.realtime",{url:"/realtime",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:14}}})}]),angular.module("xCallyShuttleApp").factory("ReportSquare",["$resource",function(a){return a("/api/report/square/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("ReportSquareDetail",["$resource",function(a){return a("/api/report/square/details/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SquareRealtimeViewGeneralCtrl",["$scope","$log","$uibModal","$translate","socket","xAlert","ReportSquare","usSpinnerService","$q","uiGridConstants",function(a,b,c,d,e,f,g,h,i,j){function k(b){return h.spin("spinner-grid"),g.get(m).$promise.then(function(b){a.gridOptions.totalItems=b.count,a.gridOptions.data=b.rows})["catch"](function(a){f.show(a.message,"danger")})["finally"](function(){b&&l(),h.stop("spinner-grid")})}function l(){e.socket.on("report_square:save",function(b){if(b.leaveAt){var c=_.remove(a.gridOptions.data,{id:b.id});c&&k()}else{var d=_.find(a.gridOptions.data,{id:b.id});if(!d&&a.gridOptions.data.length<m.limit){var e=_.clone(m);if(_.forEach(["offset","limit","controller","order"],function(a){delete e[a]}),_.isEmpty(e))a.gridOptions.data.push(b);else{var f=!0;_.forOwn(e,function(a,c){_.includes(b[c],a)||(f=!1)}),f&&a.gridOptions.data.push(b)}}}})}var m={controller:"realtime",offset:0,limit:25};a.moment=moment,a.init=function(){a.gridOptions={enableGridMenu:!0,headerCellFilter:"translate",enableHorizontalScrollbar:0,enableVerticalScrollbar:0,enableFiltering:!0,showGridFooter:!0,paginationPageSizes:[10,25,50,75],paginationPageSize:25,useExternalPagination:!0,useExternalSorting:!0,useExternalFiltering:!0,showTreeExpandNoChildren:!0,columnDefs:[{name:"uniqueid"},{name:"callerid"},{name:"extension"},{name:"project_name",displayName:"APPLICATION_PROJECT",headerCellFilter:"translate"},{name:"joinAt",displayName:"APPLICATION_ELAPSED_TIME",headerCellFilter:"translate",cellClass:"text-center ui-grid-vcenter",cellTemplate:'<div><timer start-time="grid.appScope.moment(row.entity.joinAt).unix()*1000">{{hhours}}:{{mminutes}}:{{sseconds}}</timer></div>',enableSorting:!1,enableColumnMenu:!1,enableFiltering:!1}],data:[],gridMenuTitleFilter:function(a){var b=i.defer();return b.resolve(d.instant(a)),b.promise},onRegisterApi:function(b){a.gridApi=b,a.gridApi.grid.registerDataChangeCallback(function(){n(a.gridApi.core.getVisibleRows(a.gridApi.grid).length)}),a.gridApi.core.on.sortChanged(a,function(a,b){0===b.length?m.order=null:m.order=b[0].name+" "+b[0].sort.direction.toUpperCase(),k()}),a.gridApi.pagination.on.paginationChanged(a,function(a,b){m.offset=(a-1)*b,m.limit=b,k()}),a.gridApi.core.on.filterChanged(a,function(){var a=this.grid;a.columns.forEach(function(a){a.filters[0].term?m[a.name]=a.filters[0].term:delete m[a.name]}),k()})}},k(!0)};var n=function(a){var b=a?30*a+130:270;angular.element(document.getElementsByClassName("ui-grid")[0]).css("height",b+"px"),angular.element(document.getElementsByClassName("ui-grid-viewport")).css("height",30*a+"px")};a.$on("$destroy",function(){e.unsyncUpdates("report_square")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.realtime.view.general",{url:"/general",templateUrl:"app/square/realtime/view/general/general.html",controller:"SquareRealtimeViewGeneralCtrl"})}]),angular.module("xCallyShuttleApp").controller("SquareRealtimeViewCtrl",["$scope",function(a){}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){ -a.state("main.square.realtime.view",{url:"/view",templateUrl:"app/square/realtime/view/view.html",controller:"SquareRealtimeViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}})}]),angular.module("xCallyShuttleApp").controller("SquareRecordingListCtrl",["$scope","SquareRecording","gridOptions",function(a,b,c){a.SquareRecording=b;a.initView=function(){var d={exporterCsvFilename:"recordings.csv",rowHeight:30,columnDefs:[{name:"uniqueid"},{name:"callerid",displayName:"APPLICATION_CALLERIDNUM"},{name:"filename"},{name:"extension"},{name:"projectName",displayName:"APPLICATION_PROJECT"},{name:"audio",displayName:"",width:225,enableSorting:!1,enableFiltering:!1,buttons:[{directive:'<audio-file-download params="{id:row.entity.id,controller:\'stream\'}" resource="grid.appScope.SquareRecording"></audio-file-download>'}]},{name:"action",width:150,buttons:[{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.filename || row.entity.uniqueid, row.entity.id)"},{directive:'<motion-file-download params="{id:row.entity.id,controller:\'stream\'}" resource="grid.appScope.SquareRecording" mimetype="audio/wav" btnclass="btn btn-xs blue-hoki" filename="(row.entity.filename || row.entity.uniqueid)+\'.wav\'"></motion-file-download>'}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.recordings.list",{url:"/list",templateUrl:"app/square/recording/list/list.html",controller:"SquareRecordingListCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square.recordings",{url:"/recordings",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").factory("SquareRecording",["$resource",function(a){return a("/api/square/recordings/:id/:controller",{id:"@id"},{update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.square",{url:"/square",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:14}}})}]),angular.module("xCallyShuttleApp").factory("Agent",["$resource",function(a){return a("/api/agents/:id/:controller/:controller1",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},update:{method:"PUT"},patch:{method:"PATCH"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents",{url:"/agents",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentListCtrl",["$scope","$timeout","Agent","Auth","gridOptions",function(a,b,c,d,e){a.initView=function(){a.Auth=d;var b={exporterCsvFilename:"agents.csv",columnDefs:[{name:"fullname"},{name:"name",displayName:"APPLICATION_USERNAME"},{name:"internal"},{name:"email"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/staff/agents/view/{{row.entity.id}}/account",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(c,b,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.list",{url:"/list",templateUrl:"app/staff/agent/list/list.html",controller:"AgentListCtrl",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$cookieStore","Agent","FileUploader","Auth","User",function(a,b,c,d,e,f,g,h,i,j){a.Auth=i,a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"default",onColor:"success"},a.updatePassword=function(){var b={newPassword:a.agent.newPwd};return i.isAdmin()?b.id=e.id:b.oldPassword=a.agent.currentPwd,j.changePassword(b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})};var k=a.uploader=new h({url:"api/users/"+e.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+f.get("token")}});k.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),k.onSuccessItem=function(b,e){a.agent.userpic=e.userpic,a.agent.id===i.getCurrentUser().id&&(i.getCurrentUser().userpic=e.userpic),c.show(d.instant("MESSAGE_WELL_DONE"),"success")},k.onErrorItem=function(){c.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},k.onCompleteAll=function(){k.clearQueue()},a.initView=function(){return g.get({id:e.id}).$promise.then(function(b){a.agent=b,a.agent.transport=a.agent.transport?a.agent.transport.split(","):[],a.agent.allow=a.agent.allow?a.agent.allow.split(";"):[],a.agent.nat=a.agent.nat?a.agent.nat.split(","):[]})["catch"](function(a){c.show(a.message,"danger")})},a.patchItem=function(){return g.update({id:e.id},{chatCapacity:a.agent.chatCapacity,mailCapacity:a.agent.mailCapacity,faxCapacity:a.agent.faxCapacity,smsCapacity:a.agent.smsCapacity}).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.agent);return delete b.password,delete b.md5secret,b.transport=b.transport.join(","),b.allow=b.allow.join(";"),b.nat=b.nat.join(","),g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.view",{url:"/view/:id",templateUrl:"app/staff/agent/view/view.html",controller:"AgentViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]},data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.account",{url:"/account",templateUrl:"app/staff/agent/view/view.account.html",data:{permissions:{only:["admin","user","agent"],redirectTo:"landing",id:4}},resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.agents.view.voice",{url:"/voice",templateUrl:"app/staff/agent/view/view.voice.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.chat",{url:"/chat",templateUrl:"app/staff/agent/view/view.chat.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.mail",{url:"/mail",templateUrl:"app/staff/agent/view/view.mail.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.fax",{url:"/fax",templateUrl:"app/staff/agent/view/view.fax.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.sms",{url:"/sms",templateUrl:"app/staff/agent/view/view.sms.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}}).state("main.staff.agents.view.motionbar",{url:"/motionbar",templateUrl:"app/staff/agent/view/view.motionbar.html",data:{permissions:{only:["admin","user"],redirectTo:"landing",id:4}}})}]),angular.module("xCallyShuttleApp").controller("AgentWizardCtrl",["$scope","$rootScope","Agent","Setting","xAlert","$location","$translate","$http","WizardHandler",function(a,b,c,d,e,f,g,h,i){a.forms={info:void 0,voice:void 0},a.item={role:"agent",allow:["alaw","ulaw","gsm"],transport:["udp"],context:"from-sip"},a.next=function(){i.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return d.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){e.show(a.data.message,"danger")})},a.createItem=function(){var b=angular.copy(a.item);return b.transport&&(b.transport=b.transport.join(",")),a.item.allow&&(b.allow=b.allow.join(";")),c.save(b).$promise.then(function(){f.path("/staff/agents/list")})["catch"](function(a){console.log(a),e.show(a.message||a.data.message,"danger")})},a.createItems=function(){var b=[];a.item.transport&&(a.item.transport=a.item.transport.join(",")),a.item.allow&&(a.item.allow=a.item.allow.join(";"));for(var d=0;d<a.item.amount;d++){var g=angular.copy(a.item);g.internal+=d,g.name=g.name+d,g.fullname=g.fullname+d,g.email=g.email.split("@")[0]+d+"@"+g.email.split("@")[1],b.push(g)}return c.save({id:"bulk"},b).$promise.then(function(){f.path("/staff/agents/list")})["catch"](function(a){console.log(a),e.show(a.message||a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.agents.wizard",{url:"/wizard",templateUrl:"app/staff/agent/wizard/wizard.html",controller:"AgentWizardCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.agents.bulk",{url:"/bulk",templateUrl:"app/staff/agent/wizard/wizard-bulk.html",controller:"AgentWizardCtrl",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff",{url:"/staff",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TeamCreateCtrl",["$scope","$uibModalInstance","Team","xAlert",function(a,b,c,d){a.form={},a.item={},a.ok=function(){return c.save(a.item).$promise.then(function(){b.close(a.item)})["catch"](function(a){d.show(a.data.message,"danger")})},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("TeamListCtrl",["$scope","Team","gridOptions","$uibModal",function(a,b,c,d){a.initView=function(){var d={exporterCsvFilename:"teams.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"{{row.entity.defaultEntry ? 'blue-hoki disabled' : 'blue-hoki'}}",href:"/staff/teams/view/{{row.entity.id}}/settings",name:"profile"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.createItem=function(){d.open({animation:!0,templateUrl:"app/staff/team/list/create.modal.html",controller:"TeamCreateCtrl"}).result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams.list",{url:"/list",templateUrl:"app/staff/team/list/list.html",controller:"TeamListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Team",["$resource",function(a){return a("/api/teams/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams",{url:"/teams",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("TeamViewCtrl",["$scope","$http","$stateParams","$translate","Team","Agent","xAlert",function(a,b,c,d,e,f,g){var h=function(){return{select:function(b){return console.log("agents",b),e.save({id:a.team.id,controller:"agents"},{agents:b})},deselect:function(b){return e["delete"]({id:a.team.id,controller:"agents",agents:b})}}};a.initView=function(){return e.get({id:c.id}).$promise.then(function(b){a.team=b})["catch"](function(a){g.show(a.message,"danger")})},a.initAgents=function(){return f.get().$promise.then(function(b){return a.agents=b.rows,e.get({id:c.id,controller:"agents"}).$promise}).then(function(b){ComponentsDropdowns.bindTeam(_.map(b.rows,"id"),_.map(a.agents,function(a){return{id:a.id,name:a.name,fullname:a.fullname,internal:a.internal}}),h)})["catch"](function(a){g.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.team);return e.update({id:c.id},b).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.teams.view",{url:"/view/:id",templateUrl:"app/staff/team/view/view.html",controller:"TeamViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.teams.view.agents",{url:"/agents",templateUrl:"app/staff/team/view/view.agents.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]}])}]}}).state("main.staff.teams.view.settings",{url:"/settings",templateUrl:"app/staff/team/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TelephoneListCtrl",["$scope","Telephone","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"telephones.csv",columnDefs:[{name:"fullname"},{name:"name"},{name:"internal"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/staff/telephones/view/{{row.entity.id}}/account",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.list",{url:"/list",templateUrl:"app/staff/telephone/list/list.html",controller:"TelephoneListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").factory("Telephone",["$resource",function(a){return a("/api/telephones/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones",{url:"/telephones",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("TelephoneViewCtrl",["$scope","$http","$stateParams","$translate","$cookieStore","Auth","xAlert","Telephone",function(a,b,c,d,e,f,g,h){a.initView=function(){return a.Auth=f,a.forms={},h.get({id:c.id}).$promise.then(function(b){delete b.password,a.item=b,a.item.transport=a.item.transport?a.item.transport.split(","):[],a.item.allow=a.item.allow?a.item.allow.split(";"):[]})["catch"](function(a){g.show(a.message,"danger")})},a.updateItem=function(){var b=angular.copy(a.item);return b.transport=b.transport.join(","),b.allow=b.allow.join(";"),h.update(b).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){g.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.view",{url:"/view/:id",templateUrl:"app/staff/telephone/view/view.html",controller:"TelephoneViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.telephones.view.account",{url:"/account",templateUrl:"app/staff/telephone/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.telephones.view.voice",{url:"/voice",templateUrl:"app/staff/telephone/view/view.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("TelephoneWizardCtrl",["$scope","$http","$location","WizardHandler","xAlert","$translate","Telephone","Setting",function(a,b,c,d,e,f,g,h){a.forms={},a.item={allow:["alaw","ulaw","gsm"],transport:["udp"],context:"from-sip"},a.next=function(){d.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return h.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){e.show(a.data.message,"danger")})},a.createItem=function(){var b=angular.copy(a.item);return b.transport&&(b.transport=b.transport.join(",")),a.item.allow&&(b.allow=b.allow.join(";")),g.save(b).$promise.then(function(){c.path("/staff/telephones/list")})["catch"](function(a){e.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.telephones.wizard",{url:"/wizard",templateUrl:"app/staff/telephone/wizard/wizard.html",controller:"TelephoneWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("UserListCtrl",["$scope","$timeout","User","Auth","gridOptions",function(a,b,c,d,e){function f(a){if(a){var b=_.words(a),c=_.map(b,function(a){return a?a[0]:""});return c.join("").toUpperCase()}return!1}a.getUserAvatar=function(a,c,d){b(function(){angular.element("#userImg"+a).avatar({useGravatar:!1,initials:d?[]:f(c),fallbackImage:"api/users/avatar/"+d,size:80})})},a.isAdmin=function(a){return"admin"===a},a.initView=function(){var b={exporterCsvFilename:"users.csv",columnDefs:[{name:"fullname"},{name:"name",displayName:"APPLICATION_USERNAME"},{name:"internal"},{name:"email"},{name:"description"},{name:"action",width:200,buttons:[{"class":"blue-hoki",href:"/staff/users/view/{{row.entity.id}}/account",name:"profile"},{"class":"green-meadow",href:"/staff/users/view/{{row.entity.id}}/permit/voice",name:"permits",hide:"grid.appScope.isAdmin(row.entity.role)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.fullname, row.entity.id)"}]}]};a.gridOptions=e.gridOptions(c,b,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.list",{url:"/list",templateUrl:"app/staff/user/list/list.html",controller:"UserListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Module",["$resource",function(a){return a("/api/modules/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("User",["$resource",function(a){return a("/api/users/:id/:controller/:controller2/:controller3",{id:"@id"},{changePassword:{method:"PUT",params:{controller:"password"}},update:{method:"PUT"},me:{method:"GET",params:{id:"me"}}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users",{url:"/users",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"landing"}}})}]),angular.module("xCallyShuttleApp").controller("UserViewCtrl",["$scope","$stateParams","$cookieStore","$translate","FileUploader","User","Auth","xAlert","MailQueue","VoiceQueue","ChatQueue","FaxQueue","SmsQueue","Team","Module","$location",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){function q(b){var c=_.find(a.modules,{id:b.ModuleId});if(b.status===!0)c.status=!0;else{var d=_.filter(a.modules,{ModuleId:b.ModuleId,status:!0});d.length||(c.status=!1)}c.ModuleId&&q(c)}function r(b,c){b.forEach(function(b){b.status=c;var d=_.filter(a.modules,{ModuleId:b.id});d.length&&r(d,c)})}a.Auth=g,a._=_,a.moduleSwitch={onText:"On",offText:"Off",isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.initVoiceQueues=function(){var a={},c={};return j.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"voice",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"voice",b.id,f)})["catch"](function(a){console.error(a)})},a.initChatQueues=function(){var a={},c={};return k.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"chat",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"chat",b.id,f)})["catch"](function(a){console.error(a)})},a.initMailQueues=function(){var a={},c={};return i.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"mail",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"mail",b.id,f)})["catch"](function(a){console.error(a)})},a.initSmsQueues=function(){var a={},c={};return m.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),m.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"sms",controller3:"queues"}).$promise}).then(function(a){console.log("permits",a),c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"sms",b.id,f)})["catch"](function(a){console.error(a)})},a.initFaxQueues=function(){var a={},c={};return l.get().$promise.then(function(b){return a.queues=_.map(b.rows,function(a){return{id:a.id,name:a.name}}),i.get().$promise}).then(function(){return f.query({id:b.id,controller:"allowed",controller2:"fax",controller3:"queues"}).$promise}).then(function(a){c.queues=_.map(a,function(a){return{id:a.id,name:a.name}})}).then(function(){ComponentsDropdowns.bindPermit(a,c,"fax",b.id,f)})["catch"](function(a){console.error(a)})},a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.user=b,a.user.transport=a.user.transport?a.user.transport.split(","):[],a.user.allow=a.user.allow?a.user.allow.split(";"):[]})["catch"](function(a){h.show(a.message,"danger")})},a.updateItem=function(){var c=angular.copy(a.user);return delete c.password,delete c.md5secret,c.transport=c.transport.join(","),c.allow=c.allow.join(";"),f.update({id:b.id},c).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})},a.updatePassword=function(){var c={newPassword:a.user.newPwd};return g.isAdmin()?c.id=b.id:c.oldPassword=a.user.currentPwd,f.changePassword(c).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(a.message,"danger")})};var s=a.uploader=new e({url:"api/users/"+b.id+"/avatar",queueLimit:1,withCredentials:!0,headers:{Authorization:"Bearer "+c.get("token")}});s.filters.push({name:"imageFilter",fn:function(a){var b="|"+a.type.slice(a.type.lastIndexOf("/")+1)+"|";return-1!=="|jpg|png|jpeg|".indexOf(b)}}),a.getModules=function(){return a.associatedModules=[],o.get().$promise.then(function(c){return a.modules=c.rows,f.query({id:b.id,controller:"allowed",controller2:"modules"}).$promise}).then(function(b){a.modules.forEach(function(a){_.find(b,{id:a.id})?a.status=!0:a.status=!1})})["catch"](function(a){h.show(a.message,"danger")})},a.updatePermissions=function(c){c.ModuleId&&q(c);var e=_.filter(a.modules,{ModuleId:c.id});return e&&r(e,c.status),f.save({id:b.id,controller:"allowed",controller2:"modules"},{modules:_.map(_.filter(a.modules,{status:!0}),"id")}).$promise.then(function(){h.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.error(a)})},s.onSuccessItem=function(b,c){a.user.userpic=c.userpic,a.user.id===g.getCurrentUser().id&&(g.getCurrentUser().userpic=c.userpic),h.show(d.instant("MESSAGE_WELL_DONE"),"success")},s.onErrorItem=function(){h.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")},s.onCompleteAll=function(){s.clearQueue()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.view",{url:"/view/:id",templateUrl:"app/staff/user/view/view.html",controller:"UserViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.staff.users.view.account",{url:"/account",templateUrl:"app/staff/user/view/view.account.html",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css","assets/scripts/jquery.sparkline.min.js","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js","assets/scripts/profile.js"]})}]}}).state("main.staff.users.view.voice",{url:"/voice",templateUrl:"app/staff/user/view/view.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.users.view.permit",{url:"/permit",templateUrl:"app/staff/user/view/view.permit.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}},cache:!1,serie:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/jquery-multi-select/css/multi-select.css","assets/plugins/jquery-multi-select/js/jquery.multi-select.js","assets/plugins/jquery-quicksearch/jquery.quicksearch.js","assets/scripts/components-dropdowns.js"]})}]}}).state("main.staff.users.view.permit.voice",{url:"/voice",templateUrl:"app/staff/user/view/view.permit.voice.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}}).state("main.staff.users.view.permit.chat",{url:"/chat",templateUrl:"app/staff/user/view/view.permit.chat.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.chat"}}}).state("main.staff.users.view.permit.mail",{url:"/mail",templateUrl:"app/staff/user/view/view.permit.mail.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.mail"}}}).state("main.staff.users.view.permit.fax",{url:"/fax",templateUrl:"app/staff/user/view/view.permit.fax.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.fax"}}}).state("main.staff.users.view.permit.sms",{url:"/sms",templateUrl:"app/staff/user/view/view.permit.sms.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.sms"}}}).state("main.staff.users.view.permit.modules",{url:"/modules",templateUrl:"app/staff/user/view/view.permit.modules.html",data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").controller("UserWizardCtrl",["$scope","$location","WizardHandler","xAlert","$translate","User","Setting",function(a,b,c,d,e,f,g){a.forms={info:void 0,voice:void 0},a.item={role:"user",host:"dynamic",context:"from-sip"},a.next=function(){c.wizard().next()},a.exitValidation=function(a){return a},a.getFirstFreeInternal=function(){return g.get({controller:"internal"}).$promise.then(function(b){a.item.internal=b.value})["catch"](function(a){d.show(a.data.message,"danger")})},a.createItem=function(){return f.save(a.item).$promise.then(function(){b.path("/staff/users/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.staff.users.wizard",{url:"/wizard",templateUrl:"app/staff/user/wizard/wizard.html",controller:"UserWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SugarcrmListCtrl",["$scope","SugarcrmAccount","gridOptions","xAlert","$translate","Modal",function(a,b,c,d,e,f){a.initView=function(){var d={exporterCsvFilename:"sugarcrm_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_REMOTE_ADDRESS"},{name:"action",width:250,buttons:[{"class":"blue-hoki",href:"/sugarcrm/view/{{row.entity.id}}/account",name:"profile"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.get({id:a,controller:"check"}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(a){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.list",{url:"/list",templateUrl:"app/sugarcrm/list/list.html",controller:"SugarcrmListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm",{url:"/sugarcrm",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin"],redirectTo:"main.dashboard.voice"}}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmAccount",["$resource",function(a){return a("/api/sugarcrm/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmConfiguration",["$resource",function(a){return a("/api/sugarcrm/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").factory("SugarcrmField",["$resource",function(a){return a("/api/sugarcrm/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").controller("SugarcrmViewCtrl",["$scope","$http","$stateParams","$translate","$location","$filter","WizardHandler","socket","xAlert","Modal",function(a,b,c,d,e,f,g,h,i,j){a.$stateParams=c,a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:500,scrollInertia:0},a.initConfiguration=function(){a.formsConfiguration={},a.configuration={}},a.goNext=function(){g.wizard().next()},a.formValidation=function(a){return a},a.$on("$destroy",function(){h.unsyncUpdates("sugarcrm_configuration"),h.unsyncUpdates("sugarcrm_field")}),a.initView=function(){b.get("/api/sugarcrm/accounts/"+c.id).success(function(b){a.account=b}).error(function(a){i.show(a.message,"danger")})},a.updateItem=function(){b.put("/api/sugarcrm/accounts/"+c.id,a.account).success(function(){i.show(d.instant("MESSAGE_WELL_DONE")+".","success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.getConfigurations=function(){b.get("/api/sugarcrm/configurations",{params:{AccountId:c.id}}).success(function(b){a.configurations=b,h.socket.on("sugarcrm_configuration:remove",function(b){_.remove(a.configurations,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.deleteConfiguration=j.confirm["delete"](function(a){b["delete"]("api/sugarcrm/configurations/"+a).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger"); -})}),a.createConfiguration=function(){a.configuration.AccountId=c.id,b.post("api/sugarcrm/configurations",a.configuration).success(function(a){e.path("sugarcrm/view/"+c.id+"/configurations/settings/"+a.id)}).error(function(){i.show("Something went wrong!","danger")})},a.fieldType=["string","variable"],a.descFieldType=["string","key_value"],a.getFields=function(){b.get("/api/sugarcrm/accounts/"+c.id+"/fields").success(function(b){a.accountFields=_.sortByOrder(f("sugarcrm")(_.toArray(b)),"name","asc"),_.forEach(b,function(a){a.options=_.toArray(a.options)})}).error(function(a){i.show(a.message,"danger")})},a.getConfiguration=function(){b.get("/api/sugarcrm/configurations/"+c.configurationId).success(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,h.socket.on("sugarcrm_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})}).error(function(a){i.show(a.message,"danger")})},a.getVariables=function(){b.get("/api/variables").success(function(b){a.variables=b.rows}).error(function(a){i.show(a.message,"danger")})},a.removeItem=function(a){b["delete"]("api/sugarcrm/fields/"+a.id).success(function(){i.show(d.instant("MESSAGE_WELL_DONE"),"success")}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG"),"danger")})},a.addItemSubject=function(){var d={type:"string",content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/subject",d).success(function(b){a.subjectConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemDescription=function(){var d={type:"string",content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/description",d).success(function(b){a.descriptionConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.addItemField=function(){var d={content:""};b.post("/api/sugarcrm/configurations/"+c.configurationId+"/field",d).success(function(b){a.fieldConfig.push(b)}).error(function(){i.show("Something went wrong!","danger")})},a.updateField=function(a){b.put("/api/sugarcrm/fields/"+a.id,a).success(function(){}).error(function(){i.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})},a.changeType=function(b){"variable"===b.type?b.content="":"string"===b.type&&(b.VariableId=null),a.updateField(b)},a.changeDescType=function(b){"key_value"===b.type?(b.content="","string"===b.keyType?b.VariableId=null:"variable"===b.keyType&&(b.keyContent="")):"string"===b.type&&(b.VariableId=null,b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){b.content="",a.updateField(b)},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"name",b);return c?c.options.length>0?c.options:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.view",{url:"/view/:id",templateUrl:"app/sugarcrm/view/view.html",controller:"SugarcrmViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.sugarcrm.view.account",{url:"/account",templateUrl:"app/sugarcrm/view/view.account.html"}).state("main.sugarcrm.view.configurations",{url:"/configurations",templateUrl:"app/sugarcrm/view/view.configurations.html"}).state("main.sugarcrm.view.configurations.settings",{url:"/settings/:configurationId",templateUrl:"app/sugarcrm/view/view.configurationSettings.html",controller:"SugarcrmViewCtrl"}).state("main.sugarcrm.view.configuration",{url:"/configuration",templateUrl:"app/sugarcrm/view/view.configuration.html"})}]),angular.module("xCallyShuttleApp").controller("SugarcrmkWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler",function(a,b,c,d,e,f){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={}},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){b.post("api/sugarcrm/accounts",a.item).success(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/sugarcrm/list")}).error(function(){e.show(d.instant("MESSAGE_SOMETHING_WENT_WRONG")+".","danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.sugarcrm.wizard",{url:"/wizard",templateUrl:"app/sugarcrm/wizard/wizard.html",controller:"SugarcrmkWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("CannedAnswer",["$resource",function(a){return a("/api/answers/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers",{url:"/answers",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("AnswerListCtrl",["$scope","$uibModal","CannedAnswer","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"answers.csv",columnDefs:[{name:"key",displayName:"APPLICATION_NAME"},{name:"value"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/answers/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.key, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){b.open({animation:!0,templateUrl:"app/tools/answer/list/list.create.modal.html",controller:"AnswerListCreateCtrl"}).result.then(function(b){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("AnswerListCreateCtrl",["$scope","$translate","$uibModalInstance","CannedAnswer","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers.list",{url:"/list",templateUrl:"app/tools/answer/list/list.html",controller:"AnswerListCtrl"})}]),angular.module("xCallyShuttleApp").controller("AnswerViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","CannedAnswer",function(a,b,c,d,e,f,g){a.getAnswer=function(){return g.get({id:e.id}).$promise.then(function(b){a.answer=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updateAnswer=function(){var b=angular.copy(a.answer);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.answers.view",{url:"/view/:id",templateUrl:"app/tools/answer/view/view.html",controller:"AnswerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.answers.view.settings",{url:"/settings",templateUrl:"app/tools/answer/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("Automation",["$resource",function(a){return a("/api/automations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations",{url:"/automations",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("AutomationListCtrl",["$scope","$http","$translate","xAlert","Automation","gridOptions",function(a,b,c,d,e,f){a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var b={exporterCsvFilename:"Automations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"channel"},{name:"status",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.status" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ grid.appScope.onText }}" switch-off-text="{{ grid.appScope.offText }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>',width:100,enableFiltering:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/automations/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=f.gridOptions(e,b,a)},a.updateItem=function(a){return e.update({id:a.id},a).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.list",{url:"/list",templateUrl:"app/tools/automation/list/list.html",controller:"AutomationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("AutomationViewCtrl",["$scope","$stateParams","$http","$translate","xAlert","automations","Automation","$location",function(a,b,c,d,e,f,g,h){a.$automations=f,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.forms={general:{}},a.addCondition=function(b){a.automation[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.automation[b].splice(c,1)},a.addAction=function(){a.automation.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.automation.Actions.splice(b,1)},a.initView=function(){return g.get({id:b.id}).$promise.then(function(b){a.automation=b})["catch"](function(a){e.show(a.message,"danger"),h.path("/tools/automations/list")})},a.updateAutomation=function(){return g.update({id:b.id},a.automation).$promise.then(function(){e.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),e.show(a.message,"danger")})},a.exitValidation=function(b){return console.log(b&&(a.automation.All.length||a.automation.Any.length)&&a.automation.Actions.length),!(!b||!a.automation.All.length&&!a.automation.Any.length||!a.automation.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.view",{url:"/view/:id",templateUrl:"app/tools/automation/view/view.html",controller:"AutomationViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.tools.automations.view.settings",{url:"/settings",templateUrl:"app/tools/automation/view/view.settings.html"}).state("main.tools.automations.view.routes",{url:"/routes",templateUrl:"app/tools/automation/view/view.routes.html"}).state("main.tools.automations.view.application",{url:"/application",templateUrl:"app/tools/automation/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("AutomationWizardCtrl",["$scope","$http","$location","xAlert","automations","WizardHandler","Automation",function(a,b,c,d,e,f,g){a.$automations=e,a.statusSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={All:[],Any:[],Actions:[]},a.forms={general:void 0,settings:void 0},a.addCondition=function(b){a.item[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.item[b].splice(c,1)},a.addAction=function(){a.item.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.item.Actions.splice(b,1)},a.$watch("item.channel",function(b,c){c&&(a.tempData[c].All=_.clone(a.item.All,!0),a.tempData[c].Any=_.clone(a.item.Any,!0),a.tempData[c].Actions=_.clone(a.item.Actions,!0)),a.item.All=a.tempData[b].All?a.tempData[b].All:[],a.item.Any=a.tempData[b].Any?a.tempData[b].Any:[],a.item.Actions=a.tempData[b].Actions?a.tempData[b].Actions:[]},!0),a.item.channel="mail",a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/tools/automations/list")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.exitSettingsValidation=function(b){return!(!b||!a.item.All.length&&!a.item.Any.length||!a.item.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.automations.wizard",{url:"/wizard",templateUrl:"app/tools/automation/wizard/wizard.html",controller:"AutomationWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("Interval",["$resource",function(a){return a("/api/intervals/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals",{url:"/intervals",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("IntervalListCtrl",["$scope","$uibModal","Interval","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"intervals.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/intervals/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/interval/list/list.create.modal.html",controller:"IntervalListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("IntervalListCreateCtrl",["$scope","$translate","$uibModalInstance","Interval","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(b.instant(a.data.message),"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals.list",{url:"/list",templateUrl:"app/tools/interval/list/list.html",controller:"IntervalListCtrl"})}]),angular.module("xCallyShuttleApp").controller("IntervalViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","WizardHandler","Modal","interval",function(a,b,c,d,e,f,g,h,i,j){function k(b){console.log(b);var c,d,e,f;c=b.t_from&&b.t_to&&!b.alwaysTime?moment(b.t_from).format("HH:mm")+"-"+moment(b.t_to).format("HH:mm"):"*",b.wd_from&&"always"!==b.wd_from?(d=b.wd_from,b.wd_to&&"always"!==b.wd_to&&(d+="-"+b.wd_to)):d="*",b.md_from&&"always"!==b.md_from?(e=b.md_from,b.md_to&&"always"!==b.md_to&&(e+="-"+b.md_to)):e="*",b.m_from&&"always"!==b.m_from?(f=b.m_from,b.m_to&&"always"!==b.m_to&&(f+="-"+b.m_to)):f="*",void 0!==a.selectedSubInterval?a.interval.SubIntervals[a.selectedSubInterval].interval=c+","+d+","+e+","+f:a.subinterval.interval=c+","+d+","+e+","+f}a.$translate=d,a.$interval=j.interval,a.selectedSubInterval=void 0,a.gridOptions={columnDefs:[{name:"name",displayName:"APPLICATION_NAME",headerCellFilter:"translate"},{name:"interval",displayName:"APPLICATION_INTERVAL",headerCellFilter:"translate"},{name:"action",displayName:"APPLICATION_ACTION",headerCellFilter:"translate",width:125,cellTemplate:'<a class="btn btn-xs blue-hoki" data-ng-click="grid.appScope.openSubInterval(grid.appScope.gridOptions.data.indexOf(row.entity))">{{\'APPLICATION_SETTINGS\' | translate}}</a><a class="btn btn-xs red-sunglo" data-ng-click="grid.appScope.deleteSubInterval(row.entity.name+\' interval\', gridOptions.data.indexOf(row.entity))">{{\'APPLICATION_DELETE\' | translate}}</a>'}]},a.forms={subinterval:void 0,general:void 0},a.initSubInterval=function(b){b&&(a.selectedSubInterval=void 0),a.subinterval={},a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date),wd_from:"always",wd_to:"always",md_from:"always",md_to:"always",m_from:"always",m_to:"always",alwaysTime:!0}},a.next=function(){h.wizard().next()},a.previous=function(){h.wizard().previous()},a.exitValidation=function(a){return a},a.deselectAndRedirect=function(b){a.selectedSubInterval=void 0,g.path(b)},a.getInterval=function(){b.get("/api/intervals/"+e.id).success(function(b){a.interval=b,a.gridOptions.data=b.SubIntervals}).error(function(a){console.error(a),g.path("/tools/intervals/list")})},a.openSubInterval=function(b){a.selectedSubInterval=b,g.path("/tools/intervals/view/"+e.id+"/subintervals/settings")},a.updateInterval=function(f){a.selectedSubInterval=void 0,b.put("/api/intervals/"+e.id,a.interval).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success"),f&&g.path("/tools/intervals/view/"+e.id+"/"+f)}).error(function(a){c.show(d.instant(a.message),"danger")})},a.getSubInterval=function(){void 0===a.selectedSubInterval&&g.path("/tools/intervals/list"),a.splittedInterval={t_from:moment(new Date),t_to:moment(new Date)};var b,c=a.interval.SubIntervals[a.selectedSubInterval]?a.interval.SubIntervals[a.selectedSubInterval].interval.split(","):["*","*","*","*"];c.forEach(function(c,d){switch(d){case 0:"*"!==c?(b=c.split("-"),a.splittedInterval.t_from=moment(b[0],"HH:mm"),a.splittedInterval.t_to=moment(b[1],"HH:mm"),a.splittedInterval.alwaysTime=!1):(a.splittedInterval.t_from=moment(new Date),a.splittedInterval.t_to=moment(new Date),a.splittedInterval.alwaysTime=!0);break;case 1:"*"!==c?(b=c.split("-"),a.splittedInterval.wd_from=b[0],a.splittedInterval.wd_to=b[1]?b[1]:"always"):(a.splittedInterval.wd_from="always",a.splittedInterval.wd_to="always");break;case 2:"*"!==c?(b=c.split("-"),a.splittedInterval.md_from=b[0],a.splittedInterval.md_to=b[1]?b[1]:"always"):(a.splittedInterval.md_from="always",a.splittedInterval.md_to="always");break;case 3:"*"!==c?(b=c.split("-"),a.splittedInterval.m_from=b[0],a.splittedInterval.m_to=b[1]?b[1]:"always"):(a.splittedInterval.m_from="always",a.splittedInterval.m_to="always")}})},a.$watch("splittedInterval",function(a){a&&k(a)},!0),a.addSubInterval=function(){a.interval.SubIntervals.push(a.subinterval),a.updateInterval("subintervals")},a.deleteSubInterval=i.confirm["delete"](function(b){a.interval.SubIntervals.splice(b,1),a.updateInterval()})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.intervals.view",{url:"/view/:id",templateUrl:"app/tools/interval/view/view.html",controller:"IntervalViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.intervals.view.settings",{url:"/settings",templateUrl:"app/tools/interval/view/view.settings.html"}).state("main.tools.intervals.view.subintervals",{url:"/subintervals",templateUrl:"app/tools/interval/view/view.subintervals.html"}).state("main.tools.intervals.view.subinterval",{url:"/subinterval",templateUrl:"app/tools/interval/view/view.subinterval.html"}).state("main.tools.intervals.view.subintervals.settings",{url:"/settings",templateUrl:"app/tools/interval/view/view.subintervalSettings.html"})}]),angular.module("xCallyShuttleApp").controller("PauseListCtrl",["$scope","$log","$uibModal","$translate","Pause","gridOptions",function(a,b,c,d,e,f){a.initView=function(){var b={exporterCsvFilename:"pauses.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/pauses/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=f.gridOptions(e,b,a)},a.createItem=function(){var b=c.open({animation:!0,templateUrl:"app/tools/pause/list/list.create.modal.html",controller:"PauseListCreateCtrl"});b.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("PauseListCreateCtrl",["$scope","$translate","$uibModalInstance","Pause","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses.list",{url:"/list",templateUrl:"app/tools/pause/list/list.html",controller:"PauseListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Pause",["$resource",function(a){return a("/api/pauses/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses",{url:"/pauses",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("PauseViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","Pause",function(a,b,c,d,e,f,g){a.getPause=function(){return g.get({id:e.id}).$promise.then(function(b){a.pause=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updatePause=function(){var b=angular.copy(a.pause);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.pauses.view",{url:"/view/:id",templateUrl:"app/tools/pause/view/view.html",controller:"PauseViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.pauses.view.settings",{url:"/settings",templateUrl:"app/tools/pause/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SchedulerListCtrl",["$scope","Scheduler","gridOptions","xAlert","$translate","socket",function(a,b,c,d,e,f){a._=_,a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"},{name:"APPLICATION_HISTORY_MOVE",value:"history"},{name:"APPLICATION_DB_BACKUP",value:"backup"}],a.initView=function(){var d={exporterCsvFilename:"Schedules.csv",columnDefs:[{name:"name"},{name:"type"},{name:"description",cellTemplate:'<div class="centered-uigrid-td">{{grid.appScope._.find(grid.appScope.scheduleTypes,{value:row.entity.type}).name | translate}}</div>'},{name:"active",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.active" type="checkbox" switch-active="{{ grid.appScope.switches.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.switches.onColor }}" switch-off-color="{{ grid.appScope.switches.offColor }}" switch-animate="{{ grid.appScope.switches.animate }}" switch-size="{{ grid.appScope.switches.size }}" switch-label="{{ grid.appScope.switches.label }}" switch-icon="{{ grid.appScope.switches.icon }}" switch-radio-off="{{ grid.appScope.switches.radioOff }}" switch-label-width="{{ grid.appScope.switches.labelWidth }}" switch-handle-width="{{ grid.appScope.switches.handleWidth }}"></div>',enableFiltering:!1,enableSorting:!1},{name:"sendMail",displayName:"APPLICATION_SEND_MAIL",cellTemplate:'<div data-ng-if="row.entity.type == \'report\'" class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.sendMail" type="checkbox" switch-active="{{ grid.appScope.switches.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.switches.onColor }}" switch-off-color="{{ grid.appScope.switches.offColor }}" switch-animate="{{ grid.appScope.switches.animate }}" switch-size="{{ grid.appScope.switches.size }}" switch-label="{{ grid.appScope.switches.label }}" switch-icon="{{ grid.appScope.switches.icon }}" switch-radio-off="{{ grid.appScope.switches.radioOff }}" switch-label-width="{{ grid.appScope.switches.labelWidth }}" switch-handle-width="{{ grid.appScope.switches.handleWidth }}"></div>',enableFiltering:!1,enableSorting:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/scheduler/view/{{row.entity.id}}/settings",name:"settings"},{"class":"green-turquoise",name:"run",onClick:"grid.appScope.runSchedule(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.updateItem=function(a){return b.update({id:a.id},a).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.runSchedule=function(a){return b.get({id:a,controller:"run"}).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.list",{url:"/list",templateUrl:"app/tools/scheduler/list/list.html",controller:"SchedulerListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Scheduler",["$resource",function(a){return a("/api/scheduler/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler",{url:"/scheduler",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("SchedulerViewCtrl",["$scope","xAlert","$translate","$stateParams","socket","$location","ReportTree","Scheduler","DefaultReport","CustomReport","$timeout","MailAccount",function(a,b,c,d,e,f,g,h,i,j,k,l){function m(b){var c;switch(b.cronType){case"daily":a.rangeExec.hour=Number(b.cron.split(" ")[1]),a.rangeExec.type=b.cronType;break;case"weekly":c=b.cron.split(" "),a.rangeExec.hour=Number(c[1]),c[4].split(",").forEach(function(b){a.rangeExec.weekDays.push(Number(b))}),a.rangeExec.type=b.cronType;break;case"monthly":c=b.cron.split(" "),a.rangeExec.hour=Number(c[1]),a.rangeExec.monthDay=Number(c[2]),a.rangeExec.type=b.cronType;break;case"currentDay":a.switchValues.today=!0}a.$watch("rangeExec",function(b){a.switchValues.today||n()},!0)}function n(){switch(a.schedule.cronType=a.rangeExec.type,a.rangeExec.type){case"daily":a.schedule.cron="* "+a.rangeExec.hour+" * * *";break;case"weekly":a.schedule.cron="* "+a.rangeExec.hour+" * * "+a.rangeExec.weekDays.join(",");break;case"monthly":a.schedule.cron="* "+a.rangeExec.hour+" "+a.rangeExec.monthDay+" * *"}}a.forms={},a.rangeExec={weekDays:[],monthDay:null,hour:0,type:null},a.initReports=function(){return a.reports=[],a.tempTodayCron=null,g.query().$promise.then(function(b){return a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),i.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Default - "+_.find(a.defaultTreeData,{id:b.parent}).text,b.type="default"}),a.reports=a.reports.concat(b.rows)),j.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Custom - "+_.find(a.customTreeData,{id:b.parent}).text,b.type="custom"}),a.reports=a.reports.concat(b.rows)),l.get().$promise}).then(function(b){a.mailAccounts=b.rows})["catch"](function(a){b.error(a)})},a.initView=function(){return h.get({id:d.id}).$promise.then(function(b){a.schedule=b,m(b)}).then(function(){e.socket.on("schedule:update",function(b){a.schedule.id===b.id&&(a.schedule.active=b.active,a.schedule.sendMail=b.sendMail)})})["catch"](function(a){console.error(a),f.path("/tools/scheduler/list")})},a.refreshSlider=function(){k(function(){a.$broadcast("rzSliderForceRender"),a.refreshSlider=null})},a.monthDays=function(){for(var a=[],b=1;31>=b;b++)a.push(b);return a}(),a.hours=function(){for(var a=[],b=0;23>=b;b++)a.push(b);return a}(),a.setReportTree=function(b){a.schedule.reportType=b.type},a.validitySlider={ceil:24,floor:0,showTicks:!0},a.switchValues={today:!1},a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"}],a.todayCron=[{name:"15 min",value:"*/15 * * * *"},{name:"30 min",value:"*/30 * * * *"},{name:"1 h",value:"0 * * * *"}],a.reportRanges=[{name:"APPLICATION_PREVIOUS_DAY",value:"yesterday"},{name:"APPLICATION_LAST_SEVEN_DAYS",value:"last7"},{name:"APPLICATION_LAST_THIRTY_DAYS",value:"last30"},{name:"APPLICATION_LAST_MONTH",value:"lastMonth"}],a.cronTypes=[{name:"APPLICATION_DAY",value:"daily"},{name:"APPLICATION_WEEK",value:"weekly"},{name:"APPLICATION_MONTH",value:"monthly"}],a.weekDays=[{name:"APPLICATION_MONDAY",value:1},{name:"APPLICATION_TUESDAY",value:2},{name:"APPLICATION_WEDNESDAY",value:3},{name:"APPLICATION_THURSDAY",value:4},{name:"APPLICATION_FRIDAY",value:5},{name:"APPLICATION_SATURDAY",value:6},{name:"APPLICATION_SUNDAY",value:0}],a.checkToday=function(){a.switchValues.today?(a.schedule.cron=angular.copy(a.tempTodayCron),a.schedule.cronType="currentDay"):(a.tempTodayCron=angular.copy(a.schedule.cron),a.schedule.cron=void 0,n())},a.updateSchedule=function(){return h.update({id:a.schedule.id},a.schedule).$promise.then(function(){b.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),b.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.view",{url:"/view/:id",templateUrl:"app/tools/scheduler/view/view.html",controller:"SchedulerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.scheduler.view.settings",{url:"/settings",templateUrl:"app/tools/scheduler/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("SchedulerWizardCtrl",["$scope","WizardHandler","$location","xAlert","Scheduler","ReportTree","$translate","DefaultReport","CustomReport","MailAccount",function(a,b,c,d,e,f,g,h,i,j){function k(){switch(a.item.cronType=a.rangeExec.type,a.rangeExec.type){case"daily":a.item.cron="* "+a.rangeExec.hour+" * * *";break;case"weekly":a.item.cron="* "+a.rangeExec.hour+" * * "+a.rangeExec.weekDays.join(",");break; -case"monthly":a.item.cron="* "+a.rangeExec.hour+" "+a.rangeExec.monthDay+" * *"}}a.forms={},a.item={validityStart:8,validityEnd:16},a.initReports=function(){return a.reports=[],f.query().$promise.then(function(b){return a.defaultTreeData=JSON.parse(b[0].tree),a.customTreeData=JSON.parse(b[1].tree),h.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Default - "+_.find(a.defaultTreeData,{id:b.parent}).text,b.type="default"}),a.reports=a.reports.concat(b.rows)),i.get().$promise}).then(function(b){return b.rows.length&&(_.forEach(b.rows,function(b){b.parent="Custom - "+_.find(a.customTreeData,{id:b.parent}).text,b.type="custom"}),a.reports=a.reports.concat(b.rows)),j.get().$promise}).then(function(b){a.mailAccounts=b.rows})["catch"](function(a){d.error(a)})},a.setReportTree=function(b){a.item.reportType=b.type},a.validitySlider={ceil:24,floor:0,showTicks:!0},a.switchValues={today:!1},a.switches={isActive:!0,size:"mini",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.scheduleTypes=[{name:"APPLICATION_REPORT_EXTRACTION",value:"report"}],a.todayCron=[{name:"15 min",value:"*/15 * * * *"},{name:"30 min",value:"*/30 * * * *"},{name:"1 h",value:"0 * * * *"}],a.reportRanges=[{name:"APPLICATION_PREVIOUS_DAY",value:"yesterday"},{name:"APPLICATION_LAST_SEVEN_DAYS",value:"last7"},{name:"APPLICATION_LAST_THIRTY_DAYS",value:"last30"},{name:"APPLICATION_LAST_MONTH",value:"lastMonth"}],a.cronTypes=[{name:"APPLICATION_DAY",value:"daily"},{name:"APPLICATION_WEEK",value:"weekly"},{name:"APPLICATION_MONTH",value:"monthly"}],a.weekDays=[{name:"APPLICATION_MONDAY",value:1},{name:"APPLICATION_TUESDAY",value:2},{name:"APPLICATION_WEDNESDAY",value:3},{name:"APPLICATION_THURSDAY",value:4},{name:"APPLICATION_FRIDAY",value:5},{name:"APPLICATION_SATURDAY",value:6},{name:"APPLICATION_SUNDAY",value:0}],a.tempTodayCron=null,a.checkToday=function(){a.switchValues.today?(a.item.cron=angular.copy(a.tempTodayCron),a.item.cronType="currentDay"):(a.tempTodayCron=angular.copy(a.item.cron),a.item.cron=void 0,k())},a.monthDays=function(){for(var a=[],b=1;31>=b;b++)a.push(b);return a}(),a.hours=function(){for(var a=[],b=0;23>=b;b++)a.push(b);return a}(),a.rangeExec={weekDays:[],monthDay:null,hour:0,type:null},a.$watch("rangeExec",function(b){a.switchValues.today||k()},!0),a.next=function(){b.wizard().next()},a.previous=function(){b.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return e.save(a.item).$promise.then(function(){c.path("/tools/scheduler/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.scheduler.wizard",{url:"/wizard",templateUrl:"app/tools/scheduler/wizard/wizard.html",controller:"SchedulerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("SoundListCtrl",["$scope","$http","socket","Modal","$q","FileUploader","$translate","xAlert","$cookieStore","$sce","Sound",function(a,b,c,d,e,f,g,h,i,j,k){a.Sound=k,a.isCollapsed=!0,a.downloadButtonContent='<i class="icon-cloud-download"></i>',a.downloadButtonClass="btn btn-xs blue-hoki",a["delete"]=d.confirm["delete"](function(a){b["delete"]("/api/sounds/"+a).success(function(a){}).error(function(a){console.log(a)})}),a.updateAudio=function(a,c){var d=e.defer();return b.put("/api/sounds/"+a,c).success(function(a){d.resolve()}).error(function(a){console.log(a.message),d.reject(a.message)}),d.promise},a.$on("$destroy",function(){c.unsyncUpdates("sound")}),a.initList=function(){b.get("/api/sounds").success(function(b){a.sounds=b.rows,b.rows.length||(a.isCollapsed=!1),c.syncUpdates("sound",a.sounds,function(){a.sounds.length||(a.isCollapsed=!1)})}).error(function(a){})};var l=a.uploader=new f({url:"/api/sounds",withCredentials:!0,headers:{Authorization:"Bearer "+i.get("token")}});l.filters.push({name:"customFilter",fn:function(a,b){return this.queue.length<10}}),l.onWhenAddingFileFailed=function(a,b,c){console.info("onWhenAddingFileFailed",a,b,c)},l.onAfterAddingFile=function(a){console.info("onAfterAddingFile",a)},l.onAfterAddingAll=function(a){console.info("onAfterAddingAll",a)},l.onBeforeUploadItem=function(a){console.info("onBeforeUploadItem",a)},l.onProgressItem=function(a,b){console.info("onProgressItem",a,b),a.isUploading=!0},l.onProgressAll=function(a){console.info("onProgressAll",a)},l.onSuccessItem=function(a,b,c,d){console.info("onSuccessItem",a,b,c,d),a.isUploading=!1},l.onErrorItem=function(a,b,c,d){console.info("onErrorItem",a,b,c,d),a.responseMessage=b,a.isUploading=!1},l.onCancelItem=function(a,b,c,d){console.info("onCancelItem",a,b,c,d),a.isUploading=!1},l.onCompleteItem=function(a,b,c,d){console.info("onCompleteItem",a,b,c,d),a.isUploading=!1},l.onCompleteAll=function(){console.info("onCompleteAll")},console.info("uploader",l)}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.sounds.list",{url:"/list",templateUrl:"app/tools/sound/list/list.html",controller:"SoundListCtrl",authenticate:!0,resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/plugins/bootstrap-fileinput/bootstrap-fileinput.js"]})}]}})}]),angular.module("xCallyShuttleApp").factory("Sound",["$resource",function(a){return a("/api/sounds/:id/:controller",{name:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.sounds",{url:"/sounds",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TagListCtrl",["$scope","$uibModal","Tag","gridOptions","$rootScope",function(a,b,c,d,e){a.initView=function(){var b={exporterCsvFilename:"tag.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/tags/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/tag/list/list.create.modal.html",controller:"TagListCreateCtrl"});c.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("TagListCreateCtrl",["$scope","$translate","$uibModalInstance","Tag","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags.list",{url:"/list",templateUrl:"app/tools/tag/list/list.html",controller:"TagListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Tag",["$resource",function(a){return a("/api/tags/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags",{url:"/tags",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TagViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location","Tag",function(a,b,c,d,e,f,g){a.getTag=function(){return g.get({id:e.id}).$promise.then(function(b){a.tag=b})["catch"](function(a){c.show(a.data.message,"danger")})},a.updateTag=function(){var b=angular.copy(a.tag);return g.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.tags.view",{url:"/view/:id",templateUrl:"app/tools/tag/view/view.html",controller:"TagViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.tags.view.settings",{url:"/settings",templateUrl:"app/tools/tag/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TemplateListCtrl",["$scope","Template","gridOptions",function(a,b,c){a.initView=function(){var d={exporterCsvFilename:"templates.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/tools/templates/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.list",{url:"/list",templateUrl:"app/tools/template/list/list.html",controller:"TemplateListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Template",["$resource",function(a){return a("/api/templates/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates",{url:"/templates",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TemplateViewCtrl",["$scope","$rootScope","$http","$translate","$stateParams","xAlert","Template","templateVariable",function(a,b,c,d,e,f,g,h){a.initItem=function(){CKEDITOR.plugins.addExternal("richparams","/assets/plugins/ckeditor-richparams/"),a.options={language:b.language,allowedContent:!0,entities:!1,contentsCss:"/assets/css/global/richparams.css",extraPlugins:"richparams",richparams:h,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","PasteText","PasteFromWord","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},{name:"document",items:["Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]},"/",{name:"motion",items:["chat","mail"]}]},a.form={},a.item={},a.item=g.get({id:e.id})},a.updateItem=function(){return g.update(a.item).$promise.then(function(){f.show(d.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.view",{url:"/view/:id",templateUrl:"app/tools/template/view/view.html",controller:"TemplateViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.templates.view.settings",{url:"/settings",templateUrl:"app/tools/template/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TemplateWizardCtrl",["$scope","$rootScope","$location","$http","WizardHandler","xAlert","Template","templateVariable",function(a,b,c,d,e,f,g,h){a.initWizard=function(){CKEDITOR.plugins.addExternal("richparams","/assets/plugins/ckeditor-richparams/"),a.options={language:b.language,allowedContent:!0,entities:!1,contentsCss:"/assets/css/global/richparams.css",extraPlugins:"richparams",richparams:h,toolbar:[{name:"clipboard",items:["Cut","Copy","Paste","PasteText","PasteFromWord","-","Undo","Redo"]},{name:"links",items:["Link","Unlink","Anchor"]},{name:"insert",items:["Image","Table","HorizontalRule","SpecialChar"]},{name:"tools",items:["Maximize"]},{name:"document",items:["Source"]},"/",{name:"basicstyles",items:["Bold","Italic","Underline","Strike","Subscript","Superscript","-","RemoveFormat"]},{name:"paragraph",items:["NumberedList","BulletedList","-","Outdent","Indent","-","Blockquote"]},{name:"styles",items:["Styles","Format"]},"/",{name:"motion",items:["chat","mail"]}]},a.item={},a.form={}},a.exitValidation=function(a){return a},a.createItem=function(){return g.save({name:a.item.name,description:a.item.description,subject:a.item.subject||null,html:a.item.html||null,text:a.item.text||null}).$promise.then(function(){c.path("/tools/templates/list")})["catch"](function(a){f.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.templates.wizard",{url:"/wizard",templateUrl:"app/tools/template/wizard/wizard.html",controller:"TemplateWizardCtrl"})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools",{url:"/tools",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("TriggerListCtrl",["$scope","$http","$translate","Modal","xAlert","Trigger","gridOptions",function(a,b,c,d,e,f,g){a.onText="On",a.offText="Off",a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var b={exporterCsvFilename:"Triggers.csv",columnDefs:[{name:"name"},{name:"description"},{name:"channel"},{name:"status",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.status" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ grid.appScope.onText }}" switch-off-text="{{ grid.appScope.offText }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>',width:100,enableFiltering:!1},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/triggers/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=g.gridOptions(f,b,a)},a.updateItem=function(a){return f.update({id:a.id},a).$promise.then(function(){e.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),e.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.list",{url:"/list",templateUrl:"app/tools/trigger/list/list.html",controller:"TriggerListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Trigger",["$resource",function(a){return a("/api/triggers/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers",{url:"/triggers",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TriggerViewCtrl",["$scope","$stateParams","$translate","xAlert","triggers","Trigger","$location",function(a,b,c,d,e,f,g){a.$triggers=e,a.recordSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.forms={general:{}},a.addCondition=function(b){a.trigger[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.trigger[b].splice(c,1)},a.addAction=function(){a.trigger.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.trigger.Actions.splice(b,1)},a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.trigger=b})["catch"](function(a){d.show(a.message,"danger"),g.path("/tools/triggers/list")})},a.updateTrigger=function(){return f.update({id:b.id},a.trigger).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.exitValidation=function(b){return console.log(b&&(a.trigger.All.length||a.trigger.Any.length)&&a.trigger.Actions.length),!(!b||!a.trigger.All.length&&!a.trigger.Any.length||!a.trigger.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.view",{url:"/view/:id",templateUrl:"app/tools/trigger/view/view.html",controller:"TriggerViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load({insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]})}]}}).state("main.tools.triggers.view.settings",{url:"/settings",templateUrl:"app/tools/trigger/view/view.settings.html"}).state("main.tools.triggers.view.routes",{url:"/routes",templateUrl:"app/tools/trigger/view/view.routes.html"}).state("main.tools.triggers.view.application",{url:"/application",templateUrl:"app/tools/trigger/view/view.application.html"})}]),angular.module("xCallyShuttleApp").controller("TriggerWizardCtrl",["$scope","$http","$location","xAlert","triggers","WizardHandler","Trigger",function(a,b,c,d,e,f,g){a.$triggers=e,a.statusSwitch={onText:"On",offText:"Off",isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.tempData={voice:{},mail:{},chat:{},fax:{}},a.item={All:[],Any:[],Actions:[]},a.forms={general:void 0,settings:void 0},a.addCondition=function(b){a.item[b].push({field:"",operator:"",value:""})},a.removeCondition=function(b,c){a.item[b].splice(c,1)},a.addAction=function(){a.item.Actions.push({action:"",data1:"",data2:"",data3:"",data4:"",data5:""})},a.resetActionData=function(a){a.data1="",a.data2="",a.data3="",a.data4="",a.data5=""},a.removeAction=function(b){a.item.Actions.splice(b,1)},a.$watch("item.channel",function(b,c){c&&(a.tempData[c].All=_.clone(a.item.All,!0),a.tempData[c].Any=_.clone(a.item.Any,!0),a.tempData[c].Actions=_.clone(a.item.Actions,!0)),a.item.All=a.tempData[b].All?a.tempData[b].All:[],a.item.Any=a.tempData[b].Any?a.tempData[b].Any:[],a.item.Actions=a.tempData[b].Actions?a.tempData[b].Actions:[]},!0),a.item.channel="voice",a.createItem=function(){return g.save(a.item).$promise.then(function(){c.path("/tools/triggers/list")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},a.next=function(){f.wizard().next()},a.previous=function(){f.wizard().previous()},a.exitValidation=function(a){return a},a.exitSettingsValidation=function(b){return!(!b||!a.item.All.length&&!a.item.Any.length||!a.item.Actions.length)}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.triggers.wizard",{url:"/wizard",templateUrl:"app/tools/trigger/wizard/wizard.html",controller:"TriggerWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("TrunkListCtrl",["$scope","Trunk","gridOptions","xAlert","$translate","socket",function(a,b,c,d,e,f){function g(){f.socket.on("trunk:update",function(b){var c=_.find(a.gridOptions.data,{name:b.name});c&&(c.status=b.status,c.peerstatus=b.peerstatus)})}a.isActive=!0,a.size="mini",a.animate=!0,a.radioOff=!0,a.handleWidth="auto",a.labelWidth="auto",a.inverse=!0,a.offColor="danger",a.onColor="success",a.initView=function(){var d={exporterCsvFilename:"Trunks.csv",columnDefs:[{name:"name"},{name:"active",cellTemplate:'<div class="centered-uigrid-td"><input data-ng-change="grid.appScope.updateItem(row.entity)", bs-switch ng-model="row.entity.active" type="checkbox" switch-active="{{ grid.appScope.isActive }}" switch-on-text="{{ \'APPLICATION_YES\' | translate }}" switch-off-text="{{ \'APPLICATION_NO\' | translate }}" switch-on-color="{{ grid.appScope.onColor }}" switch-off-color="{{ grid.appScope.offColor }}" switch-animate="{{ grid.appScope.animate }}" switch-size="{{ grid.appScope.size }}" switch-label="{{ grid.appScope.label }}" switch-icon="{{ grid.appScope.icon }}" switch-radio-off="{{ grid.appScope.radioOff }}" switch-label-width="{{ grid.appScope.labelWidth }}" switch-handle-width="{{ grid.appScope.handleWidth }}"></div>'},{name:"host"},{name:"description"},{name:"status",cellTemplate:'<div class="centered-uigrid-td" data-ng-if="row.entity.active && row.entity.registry && row.entity.status">{{row.entity.status}}</div>'},{name:"peerstatus",cellTemplate:'<div class="centered-uigrid-td" data-ng-if="row.entity.active && row.entity.peerstatus">{{row.entity.peerstatus}}</div>'},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/trunks/view/{{row.entity.name}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.name)"}]}]};a.gridOptions=c.gridOptions(b,d,a,null,null,null,g)},a.updateItem=function(a){return b.update({id:a.name},a).$promise.then(function(){d.show(e.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){console.error(a),d.show(a.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.list",{url:"/list",templateUrl:"app/tools/trunk/list/list.html",controller:"TrunkListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Trunk",["$resource",function(a){return a("/api/trunks/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks",{url:"/trunks",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("TrunkViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","socket","$location","Trunk","VoiceContext",function(a,b,c,d,e,f,g,h,i){a.activeSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.initView=function(){return h.get({id:e.id}).$promise.then(function(b){b.nat=b.nat?b.nat.split(","):[],b.allow=b.allow?b.allow.split(";"):[],b.insecure=b.insecure?b.insecure.split(","):[],b.transport=b.transport?b.transport.split(","):[],a.trunk=b}).then(function(){f.socket.on("trunk:update",function(b){a.trunk.name===b.name&&(a.trunk.status=b.status)})})["catch"](function(a){console.error(a),g.path("/tools/trunks/list")})},a.updateTrunk=function(){""===a.trunk.password&&delete a.trunk.password;var b=angular.copy(a.trunk);return b.nat=b.nat.join(","),b.allow=b.allow.join(";"),b.insecure=b.insecure.join(","),b.transport=b.transport.join(","),h.update({id:e.id},b).$promise.then(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){c.show(a.data.message,"danger")})},a.getContexts=function(){return i.get().$promise.then(function(b){a.voiceContexts=b.rows})["catch"](function(a){c.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.view",{url:"/view/:id",templateUrl:"app/tools/trunk/view/view.html",controller:"TrunkViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.trunks.view.settings",{url:"/settings",templateUrl:"app/tools/trunk/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("TrunkWizardCtrl",["$scope","WizardHandler","$location","xAlert","Trunk",function(a,b,c,d,e){a.initWizard=function(){a.forms={},a.item={context:"from-voip-provider"}},a.next=function(){b.wizard().next()},a.previous=function(){b.wizard().previous()},a.exitValidation=function(a){return a},a.createItem=function(){return a.item.fromuser=a.item.defaultuser,a.item.fromdomain=a.item.host,e.save(a.item).$promise.then(function(){c.path("/tools/trunks/list")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.trunks.wizard",{url:"/wizard",templateUrl:"app/tools/trunk/wizard/wizard.html",controller:"TrunkWizardCtrl"})}]),angular.module("xCallyShuttleApp").controller("VariableListCtrl",["$scope","$uibModal","Variable","gridOptions",function(a,b,c,d){a.initView=function(){var b={exporterCsvFilename:"variables.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:160,buttons:[{"class":"blue-hoki",href:"/tools/variables/view/{{row.entity.id}}/settings",name:"settings"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(c,b,a)},a.createItem=function(){var c=b.open({animation:!0,templateUrl:"app/tools/variable/list/list.create.modal.html",controller:"VariableListCreateCtrl"});c.result.then(function(b){console.log(b),a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("VariableListCreateCtrl",["$scope","$translate","$uibModalInstance","Variable","xAlert",function(a,b,c,d,e){a.form={},a.item={},a.save=function(){return d.save(a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.show(a.data.message,"danger")})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables.list",{url:"/list",templateUrl:"app/tools/variable/list/list.html",controller:"VariableListCtrl"})}]),angular.module("xCallyShuttleApp").factory("Variable",["$resource",function(a){return a("/api/variables/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables",{url:"/variables",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:13}}})}]),angular.module("xCallyShuttleApp").controller("VariableViewCtrl",["$scope","$translate","$stateParams","xAlert","Variable",function(a,b,c,d,e){a.getVariable=function(){return e.get({id:c.id}).$promise.then(function(b){a.variable=b})["catch"](function(a){d.show(a.data.message,"danger")})},a.updateVariable=function(){return e.update({id:c.id},a.variable).$promise.then(function(){d.show(b.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){d.show(a.data.message,"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.variables.view",{url:"/view/:id",templateUrl:"app/tools/variable/view/view.html",controller:"VariableViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.variables.view.settings",{url:"/settings",templateUrl:"app/tools/variable/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCloneModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCreateModalCtrl",["$scope","$uibModalInstance",function(a,b){a.forms={dashboard:void 0},a.item={},a.ok=function(){a.item.model=JSON.stringify({title:a.item.name}),b.close(a.item)},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardListCtrl",["$scope","$http","$translate","xAlert","Modal","$uibModal","$log","YourDashboard","gridOptions",function(a,b,c,d,e,f,g,h,i){a.initView=function(){var b={exporterCsvFilename:"voice_contexts.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:220,buttons:[{"class":"green",href:"/tools/yourdashboards/show/{{row.entity.id}}",name:"view"},{"class":"blue-hoki",href:"/tools/yourdashboards/view/{{row.entity.id}}/settings",name:"settings"},{"class":"{{row.entity.defaultEntry ? 'red-sunglo disabled' : 'red-sunglo'}}",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"},{"class":"purple",name:"clone",onClick:"grid.appScope.clone(row.entity.id)"}]}]};a.gridOptions=i.gridOptions(h,b,a)},a.create=function(){var b=f.open({animation:!0,templateUrl:"app/tools/yourdashboard/list/create.modal.html",controller:"YourdashboardListCreateModalCtrl"});b.result.then(function(b){return h.save(b).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})},a.clone=function(b){var e=f.open({animation:!0,templateUrl:"app/tools/yourdashboard/list/clone.modal.html",controller:"YourdashboardListCloneModalCtrl"});e.result.then(function(e){return h.save({id:b,controller:"clone"},e).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE"),"success"),a.gridOptions.getPage()})["catch"](function(a){console.error(a),d.show(a.message,"danger")})},function(){g.info("Modal dismissed at: "+new Date)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.list",{url:"/list",templateUrl:"app/tools/yourdashboard/list/list.html",controller:"YourdashboardListCtrl"})}]),angular.module("xCallyShuttleApp").controller("LeaveEditedDashboardModalCtrl",["$scope","$uibModalInstance",function(a,b){a.close=function(){b.close()},a.cancel=function(){b.dismiss("cancel")}}]),angular.module("xCallyShuttleApp").controller("YourdashboardShowCtrl",["$scope","$rootScope","localStorageService","xAlert","$translate","Auth","$stateParams","$location","$uibModal","$log","YourDashboard",function(a,b,c,d,e,f,g,h,i,j,k){a.Auth=f,a.editMode=!1,a.getDashboard=function(){return k.get({id:g.id}).$promise.then(function(b){var c={name:"dashboard",structure:"4-8",enableconfirmdelete:!0,maximizable:!0,collapsible:!0};b.model=JSON.parse(b.model||'{"title":"Dashboard"}'),b.editable=!(!f.isAdmin()||!b.editable),a.dashboard=_.merge(c,b)})["catch"](function(a){h.path("/tools/yourdashboards/list")})},a.$on("$locationChangeStart",function(b,c,d){if(a.editMode){b.preventDefault();var e=i.open({animation:!0,templateUrl:"app/tools/yourdashboard/show/leaveEditedDashboard.modal.html",controller:"LeaveEditedDashboardModalCtrl"});e.result.then(function(b){a.editMode=!1;var d=location.protocol+"//"+location.host;h.path(c.replace(d,""))},function(){j.info("Modal dismissed at: "+new Date)})}});var l=function(b,c,f){var h=angular.copy(a.dashboard);return h.name=a.dashboard.model.title,h.model=JSON.stringify(h.model),k.update({id:g.id},h).$promise.then(function(){d.show(e.instant("MESSAGE_DASHBOARD_SAVED")+"!","success"),a.editMode=!1})["catch"](function(b){d.show(b.message,"danger"),h.model=JSON.parse(h.model),h.name="dashboard",a.dashboard=h})};a.$on("adfDashboardChanged",l),a.$on("adfIsEditMode",function(){a.editMode=!0}),a.$on("destroy",function(){console.log("main dashboard")})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.show",{url:"/show/:id",templateUrl:"app/tools/yourdashboard/show/show.html",controller:"YourdashboardShowCtrl"})}]),angular.module("xCallyShuttleApp").controller("YourdashboardViewCtrl",["$scope","$http","xAlert","$translate","$stateParams","$location",function(a,b,c,d,e,f){a.radioSwitch={isActive:!0,size:"small",animate:!0,radioOff:!0,handleWidth:"auto",labelWidth:"auto",inverse:!0,offColor:"danger",onColor:"success"},a.getDashboard=function(){ -b.get("/api/dashboards/"+e.id).success(function(b){delete b.model,a.dashboard=b}).error(function(a){f.path("/tools/yourdashboards/list")})},a.updateDashboard=function(){var f=angular.copy(a.dashboard);b.put("/api/dashboards/"+e.id,f).success(function(){c.show(d.instant("MESSAGE_WELL_DONE")+"!","success")}).error(function(b){c.show(d.instant(b.message),"danger"),a.dashboard=f})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards.view",{url:"/view/:id",templateUrl:"app/tools/yourdashboard/view/view.html",controller:"YourdashboardViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/plugins/bootstrap-fileinput/bootstrap-fileinput.css","assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.tools.yourdashboards.view.settings",{url:"/settings",templateUrl:"app/tools/yourdashboard/view/view.settings.html"})}]),angular.module("xCallyShuttleApp").factory("YourDashboard",["$resource",function(a){return a("/api/dashboards/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.tools.yourdashboards",{url:"/yourdashboards",template:"<div ui-view></div>","abstract":!0,data:{permissions:{only:["admin","user"],redirectTo:"landing",id:2}}})}]),angular.module("xCallyShuttleApp").controller("ZendeskListCtrl",["$scope","ZendeskAccount","gridOptions","xAlert","$translate",function(a,b,c,d,e){a.initView=function(){var d={exporterCsvFilename:"zendesk_account.csv",columnDefs:[{name:"name",displayName:"APPLICATION_NAME"},{name:"username"},{name:"remoteUri",displayName:"APPLICATION_URI"},{name:"action",buttons:[{"class":"blue-hoki",href:"/zendesk/view/{{row.entity.id}}/account",name:"account"},{"class":"green-jungle",name:"check",displayName:"APPLICATION_CHECK",onClick:"grid.appScope.checkAccount(row.entity.id)"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=c.gridOptions(b,d,a)},a.checkAccount=function(a){return b.check({id:a}).$promise.then(function(){d.show(e.instant("MESSAGE_ACCOUNT_VERIFIED"),"success")})["catch"](function(){d.show(e.instant("MESSAGE_ACCOUNT_INVALID"),"danger")})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.list",{url:"/list",templateUrl:"app/zendesk/list/list.html",controller:"ZendeskListCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{name:"smart-table",insertBefore:"#ng_load_plugins_before",files:["assets/css/smart_table.css"]}])}]}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations",{url:"/configurations",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewConfigurationListCtrl",["$scope","$stateParams","$translate","gridOptions","ZendeskConfiguration","$uibModal",function(a,b,c,d,e,f){a.initView=function(){var c={exporterCsvFilename:"zendesk_configurations.csv",columnDefs:[{name:"name"},{name:"description"},{name:"action",width:125,buttons:[{"class":"blue-hoki",href:"/zendesk/view/{{row.entity.AccountId}}/configurations/view/{{row.entity.id}}",name:"profile"},{"class":"red-sunglo",name:"delete",onClick:"grid.appScope.deleteItem(row.entity.name, row.entity.id)"}]}]};a.gridOptions=d.gridOptions(e,c,a,{accountId:b.id})},a.createItem=function(){var b=f.open({animation:!0,templateUrl:"app/zendesk/view/configuration/list/create.modal.html",controller:"ZendeskCreateConfigurationCtrl"});b.result.then(function(){a.gridOptions.getPage()})}}]),angular.module("xCallyShuttleApp").controller("ZendeskCreateConfigurationCtrl",["$scope","$translate","$uibModalInstance","ZendeskConfiguration","xAlert","$stateParams","channel",function(a,b,c,d,e,f,g){a.form={},a.item={},a.channels=g,a.item.channel="voice",a.save=function(){return d.save({accountId:f.id},a.item).$promise.then(function(a){e.show(b.instant("MESSAGE_WELL_DONE"),"success"),c.close(a)})["catch"](function(a){e.error(a)})},a.cancel=function(){c.dismiss()}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations.list",{url:"/list",templateUrl:"app/zendesk/view/configuration/list/list.html",controller:"ZendeskViewConfigurationListCtrl"})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewConfigurationViewCtrl",["$scope","$stateParams","$filter","$translate","socket","ZendeskConfiguration","xAlert","variable","Variable","ZendeskAccount","Tag","ZendeskField",function(a,b,c,d,e,f,g,h,i,j,k,l){a.$on("$destroy",function(){e.unsyncUpdates("zendesk_field")}),a.config={autoHideScrollbar:!1,theme:"dark",advanced:{updateOnContentResize:!0},setHeight:300,scrollInertia:0},a.fieldType=[{type:"string",title:"String"},{type:"variable",title:"Variable"},{type:"customVariable",title:"Custom Variable"}],a.descFieldType=[{type:"string",title:"String"},{type:"keyValue",title:"Key Value"}],a.groupVariableByGroup=function(a){switch(a.group){case"voice_queue":return"Voice: Queue";default:return"Other"}},a.initView=function(){a.configurationName="",a.subjectConfig=[],a.descriptionConfig=[],a.fieldConfig=[],a.selectedTags={tags:[]},a.variables=h},a.getConfiguration=function(){return f.get({accountId:b.id,id:b.configurationId}).$promise.then(function(b){a.configurationName=b.name,a.subjectConfig=b.Subject,a.descriptionConfig=b.Description,a.fieldConfig=b.Field,a.selectedTags={tags:_.map(b.Tags,function(a){return a.id})},e.socket.on("zendesk_field:remove",function(b){_.remove(a.subjectConfig,{id:b.id}),_.remove(a.descriptionConfig,{id:b.id}),_.remove(a.fieldConfig,{id:b.id})})})["catch"](function(a){g.error(a)})},a.getCustomVariables=function(){return i.get().$promise.then(function(b){a.customVariables=b.rows})["catch"](function(a){g.error(a)})},a.getFields=function(){return j.fields({id:b.id}).$promise.then(function(b){a.accountFields=c("zendesk")(b)})["catch"](function(a){g.error(a)})},a.getTags=function(){return k.get().$promise.then(function(b){a.tags=b.rows})["catch"](function(a){g.error(a)})},a.addItem=function(c){var d={};switch(c){case"subject":case"description":d={type:"string",content:""};break;case"field":d={content:""}}return f.save({accountId:b.id,id:b.configurationId,controller:c},d).$promise.then(function(b){switch(c){case"subject":a.subjectConfig.push(b);break;case"description":a.descriptionConfig.push(b);break;case"field":a.fieldConfig.push(b)}})["catch"](function(a){g.error(a)})},a.changeType=function(b){"variable"===b.type?(b.content="",b.variableName=""):"string"===b.type?(b.VariableId=null,b.variableName=""):"customVariable"===b.type&&(b.VariableId=null,b.content=""),a.updateField(b)},a.updateField=function(a){return l.update({accountId:b.id,configurationId:b.configurationId,id:a.id},a).$promise.then(function(){})["catch"](function(a){g.error(a)})},a.removeItem=function(a){return l["delete"]({accountId:b.id,configurationId:b.configurationId,id:a.id}).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+"!","success")})["catch"](function(a){g.error(a)})},a.changeDescType=function(b){"keyValue"===b.type?(b.content="","string"===b.keyType?(b.VariableId=null,b.variableName=""):"variable"===b.keyType?(b.keyContent="",b.VariableId=null):"customVariable"===b.keyType&&(b.keyContent="",b.variableName="")):"string"===b.type&&(b.VariableId=null,b.variableName="",b.key="",b.keyContent=""),a.updateField(b)},a.changeFieldType=function(b){if(b.content="",b.variableName="",b.nameField="",b.VariableId=null,b.idField){var c=_.find(a.accountFields,"id",b.idField);c&&(c.system_field_options?(b.customField=!1,b.nameField=c.title.toLowerCase()):b.customField=!0)}a.updateField(b)},a.updateTags=function(){return f.update({accountId:b.id,id:b.configurationId,controller:"tags"},a.selectedTags.tags).$promise.then(function(){g.show(d.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){g.error(a)})},a.getSystemFieldOptions=function(b){if(b){var c=_.find(a.accountFields,"id",b);return c?c.system_field_options?c.system_field_options:null:void 0}}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view.configurations.view",{url:"/view/:configurationId",templateUrl:"app/zendesk/view/configuration/view/view.html",controller:"ZendeskViewConfigurationViewCtrl"})}]),angular.module("xCallyShuttleApp").controller("ZendeskViewCtrl",["$scope","$stateParams","$translate","xAlert","Modal","ZendeskAccount",function(a,b,c,d,e,f){a.initView=function(){return f.get({id:b.id}).$promise.then(function(b){a.account=b})["catch"](function(a){d.error(a)})},a.updateItem=function(){return f.update({id:b.id},a.account).$promise.then(function(){d.show(c.instant("MESSAGE_WELL_DONE")+".","success")})["catch"](function(a){d.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.view",{url:"/view/:id",templateUrl:"app/zendesk/view/view.html",controller:"ZendeskViewCtrl",resolve:{deps:["$ocLazyLoad",function(a){return a.load([{insertBefore:"#ng_load_plugins_before",files:["assets/css/profile.css","assets/css/tasks.css"]}])}]}}).state("main.zendesk.view.account",{url:"/account",templateUrl:"app/zendesk/view/view.account.html"})}]),angular.module("xCallyShuttleApp").controller("ZendeskWizardCtrl",["$scope","$http","$location","$translate","xAlert","WizardHandler","ZendeskAccount",function(a,b,c,d,e,f,g){a.translate=d,a.initWizard=function(){a.$translate=d,a.forms={},a.item={},a.item.authType="password"},a.next=function(){f.wizard().next()},a.exitValidation=function(a){return a},a.createItem=function(){return g.save(a.item).$promise.then(function(){e.show(d.instant("MESSAGE_WELL_DONE")+".","success"),c.path("/zendesk/list")})["catch"](function(a){e.error(a)})}}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk.wizard",{url:"/wizard",templateUrl:"app/zendesk/wizard/wizard.html",controller:"ZendeskWizardCtrl"})}]),angular.module("xCallyShuttleApp").factory("ZendeskAccount",["$resource",function(a){return a("/api/zendesk/accounts/:id/:controller",{id:"@id"},{update:{method:"PUT"},fields:{params:{controller:"fields"},isArray:!0},check:{params:{controller:"check"}}})}]).factory("ZendeskConfiguration",["$resource",function(a){return a("/api/zendesk/accounts/:accountId/configurations/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]).factory("ZendeskField",["$resource",function(a){return a("/api/zendesk/accounts/:accountId/configurations/:configurationId/fields/:id/:controller",{id:"@id"},{update:{method:"PUT"}})}]),angular.module("xCallyShuttleApp").config(["$stateProvider",function(a){a.state("main.zendesk",{url:"/zendesk",template:"<div ui-view></div>","abstract":!0})}]),angular.module("xCallyShuttleApp").service("application",function(){var a={applications:[{type:null,name:"APPLICATION_QUEUE",value:"Queue"},{type:null,name:"APPLICATION_PLAYBACK",value:"Playback"},{type:null,name:"Dial",value:"Dial"},{type:"internalDial",name:"APPLICATION_INTERNAL_DIAL",value:"Dial"},{type:"externalDial",name:"APPLICATION_EXTERNAL_DIAL",value:"Dial"},{type:null,name:"Cally-Square Project",value:"AGI"},{type:null,name:"GoTo",value:"Goto"},{type:null,name:"Hangup",value:"Hangup"},{type:null,name:"Set",value:"Set"},{type:"custom",name:"Custom",value:"custom"},{type:null,name:"APPLICATION_VOICEMAIL",value:"Voicemail"}],queueOptions:[{value:"C",name:"APPLICATION_QUEUE_OPTION_C"},{value:"c",name:"APPLICATION_QUEUE_OPTION_c"},{value:"d",name:"APPLICATION_QUEUE_OPTION_d"},{value:"F",name:"APPLICATION_QUEUE_OPTION_F"},{value:"h",name:"APPLICATION_QUEUE_OPTION_h"},{value:"H",name:"APPLICATION_QUEUE_OPTION_H"},{value:"n",name:"APPLICATION_QUEUE_OPTION_n"},{value:"i",name:"APPLICATION_QUEUE_OPTION_i"},{value:"I",name:"APPLICATION_QUEUE_OPTION_I"},{value:"r",name:"APPLICATION_QUEUE_OPTION_r"},{value:"R",name:"APPLICATION_QUEUE_OPTION_R"},{value:"t",name:"APPLICATION_QUEUE_OPTION_t"},{value:"T",name:"APPLICATION_QUEUE_OPTION_T"},{value:"w",name:"APPLICATION_QUEUE_OPTION_w"},{value:"W",name:"APPLICATION_QUEUE_OPTION_W"},{value:"k",name:"APPLICATION_QUEUE_OPTION_k"},{value:"K",name:"APPLICATION_QUEUE_OPTION_K"},{value:"x",name:"APPLICATION_QUEUE_OPTION_x"},{value:"X",name:"APPLICATION_QUEUE_OPTION_X"}],audioOptions:[{value:"skip",name:"APPLICATION_PLAYBACK_OPTION_SKIP"},{value:"noanswer",name:"APPLICATION_PLAYBACK_OPTION_NOANSWER"},{value:"j",name:"APPLICATION_PLAYBACK_OPTION_J"},{value:"say",name:"APPLICATION_PLAYBACK_OPTION_SAY"}],hangupCauses:[{value:"",name:"--"},{value:"1",name:"APPLICATION_HANGUP_CAUSE_1"},{value:"16",name:"APPLICATION_HANGUP_CAUSE_16"},{value:"17",name:"APPLICATION_HANGUP_CAUSE_17"},{value:"18",name:"APPLICATION_HANGUP_CAUSE_18"},{value:"21",name:"APPLICATION_HANGUP_CAUSE_21"},{value:"22",name:"APPLICATION_HANGUP_CAUSE_22"},{value:"27",name:"APPLICATION_HANGUP_CAUSE_27"},{value:"38",name:"APPLICATION_HANGUP_CAUSE_38"},{value:"41",name:"APPLICATION_HANGUP_CAUSE_41"}],intTypes:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"custom",name:"APPLICATION_CUSTOM"},{value:"list",name:"APPLICATION_FROM_LIST"}],checkUnderscore:function(a){return 0===a.indexOf("_")?a:"_"+a}};return{application:a}}),angular.module("xCallyShuttleApp").factory("Auth",["$location","$rootScope","$http","User","$cookieStore","$q",function(a,b,c,d,e,f){var g={};return e.get("token")&&(g=d.me()),{login:function(a,h){var i=h||angular.noop,j=f.defer();return c.post("/auth/local",{name:a.name,password:a.password,remember:a.remember}).success(function(a){return e.put("role",a.role),e.put("token",a.token),e.put("userId",a.userId),g=d.me({},function(){b.$broadcast("login")}),j.resolve(a),i()}).error(function(a){return this.logout(),j.reject(a),i(a)}.bind(this)),j.promise},loginWithToken:function(a,c,f){e.put("role",f),e.put("token",a),e.put("userId",c),g=d.me({},function(){b.$broadcast("login")})},logout:function(){c.put("/api/users/"+g.id,{online:!1}).success(function(){e.remove("role"),e.remove("token"),e.remove("userId"),g={},b.$broadcast("logout")}).error(function(a){return a})},createUser:function(a,b){var c=b||angular.noop;return d.save(a,function(b){return e.put("token",b.token),g=d.me(),c(a)},function(a){return this.logout(),c(a)}.bind(this)).$promise},changePassword:function(a,b,c){var e=c||angular.noop;return d.changePassword({id:g.id},{oldPassword:a,newPassword:b},function(a){return e(null,a)},function(a){return e(a)}).$promise},getCurrentUser:function(){return g},isLoggedIn:function(){return g.hasOwnProperty("role")},isLoggedInAsync:function(a){g.hasOwnProperty("$promise")?g.$promise.then(function(){a(!0)})["catch"](function(){a(!1)}):a(g.hasOwnProperty("role")?!0:!1)},isAdmin:function(){return"admin"===(e.get("role")||g.role)},isUser:function(){return"user"===(e.get("role")||g.role)},isAgent:function(){return"agent"===(e.get("role")||g.role)},getRole:function(){return g.role},getToken:function(){return e.get("token")}}}]),angular.module("xCallyShuttleApp").service("automations",function(){var a={mail:{conditions:[{name:"APPLICATION_STATUS",value:"status",type:"select",arr:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",type:"input",operators:[{value:"greater_or_equal",name:"APPLICATION_GTE_TO"},{value:"less_or_equal",name:"APPLICATION_LTE_TO"},{value:"greater",name:"APPLICATION_GREATER_THAN"},{value:"less",name:"APPLICATION_LESS_THAN"}]}],actions:[{name:"APPLICATION_STATUS",value:"status"}]},fax:{conditions:[{name:"APPLICATION_STATUS",value:"status",type:"select",arr:[{name:"APPLICATION_STATUS_NEW",value:"NEW"},{name:"APPLICATION_STATUS_OPEN",value:"OPEN"},{name:"APPLICATION_STATUS_CLOSED",value:"CLOSED"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_HOURS_SINCE_CREATED",value:"createdAt",type:"input",operators:[{value:"greater_or_equal",name:"APPLICATION_GTE_TO"},{value:"less_or_equal",name:"APPLICATION_LTE_TO"},{value:"greater",name:"APPLICATION_GREATER_THAN"},{value:"less",name:"APPLICATION_LESS_THAN"}]}],actions:[{name:"APPLICATION_STATUS",value:"status"}]}},b=["mail","chat","fax"];return{services:a,channels:b}}),angular.module("xCallyShuttleApp").service("channel",function(){var a=[{name:"Voice",value:"voice"}];return a}),angular.module("xCallyShuttleApp").service("desk_com",function(){var a=[{id:"priority",label:"Priority",custom:!1,data:{choices:[1,2,3,4,5,6,7,8,9,10]}},{id:"status",label:"Status",custom:!1,data:{choices:["new","open","pending","resolved","closed"]}},{id:"type",label:"Type",custom:!1,data:{choices:["chat","twitter","email","qna","facebook","phone"]}}];return{fields:a}}),angular.module("xCallyShuttleApp").controller("FooterController",["$scope","$http",function(a,b){a.year=moment().year(),a.$on("$includeContentLoaded",function(){Layout.initFooter()}),a.initFooter=function(){b.get("/api/settings/info").success(function(b){a.info=b}).error(function(a){console.error(a)})}}]),angular.module("xCallyShuttleApp").controller("HeaderController",["$scope","$rootScope","$location","$state","$http","$notification","Auth","xAlert","socket","ngAudio","settings","toastr","localStorageService","Agent","SmsReport","MailReport","ChatReport","ChatRoom","xNotification","$timeout","$translate","$window","User","Pause","Action","FaxReport",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z){function A(){return a.headerAgent=g.getCurrentUser(),a.readyTimer=1e3*moment().unix(),x.get().$promise.then(function(b){a.headerPauses=b.rows,i.syncUpdates("pause",a.headerPauses)})["finally"](function(){i.socket.on("agent:save",function(b){a.headerAgent.id===b.id&&(_.merge(a.headerAgent,b),b.voicePause&&b.mailPause&&b.chatPause&&b.faxPause&&b.smsPause||(a.readyTimer=1e3*moment().unix()))})})["catch"](function(a){console.log("Error synchronizing agent status:",a)})}function B(a,b,c){return null===b&&(b=50),null===c&&(c="..."),a&&a.length>b?a.substring(0,b-c.length)+c:a}a.moment=moment,a.headerPause=function(b,c,d){return y.save({name:b,agent:a.headerAgent.id,type:c||"DEFAULT PAUSE",data4:c||"DEFAULT PAUSE",channel:d||"all"}).$promise.then(function(){h.show(u.instant("MESSAGE_WELL_DONE"),"success")})["catch"](function(a){h.show(u.instant(a.message||a.data.message||a.translatedMessage||a.data.translatedMessage),"danger")})},"agent"===g.getCurrentUser().role&&A(),i.socket.on("report_chat:save",function(a){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play(),v.Notification&&f("CHAT CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming Chat Visitor!",delay:1e3*a.timeslot});var b="<b>"+u.instant("APPLICATION_FROM")+"</b>: "+a.visitorname+"<br><b>"+u.instant("APPLICATION_EMAIL")+"</b>: "+a.visitoremail;"queue"===a.application&&(b+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+a.queuename),s.show(u.instant("APPLICATION_NEW_CHAT_REQUEST"),b,"chat",1e3*a.timeslot,function(){return q.get({id:a.id,controller1:"accept",controller2:a.uniqueid}).$promise.then(function(){h.show("Chat properly assigned","success")})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_CHAT_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return q.get({id:a.id,controller1:"reject"}).$promise.then(function(){h.show("Chat properly rejected","success")})["catch"](function(a){h.show(a.data.message,"danger")})})}),i.socket.on("user_has_chat_room:save",function(b){var c;return r.get({id:Number(b.ChatRoomId)}).$promise.then(function(b){c=b;var d=_.find(a.workspaces,{id:Number(c.id),type:"chatRoom"});d?d.name=a.getFullnames(c):a.workspaces.push({id:c.id,name:a.getFullnames(c),type:"chatRoom","class":"icon-bubble",unread:1})})["catch"](function(a){console.error(a)})}),i.socket.on("chat_message:save",function(b){var c;if(b.UserId!==g.getCurrentUser().id){var d=_.find(a.workspaces,{id:Number(b.ChatRoomId),type:"chatRoom"});if(!d)return r.get({id:Number(b.ChatRoomId)}).$promise.then(function(b){c=b,a.workspaces.push({id:c.id,name:a.getFullnames(b),type:"chatRoom","class":"icon-bubble",unread:1})})["catch"](function(a){console.error(a)})}}),a.getFullnames=function(a){var b=_.map(a.Users,"fullname");return a.ChatVisitor&&b.unshift(a.ChatVisitor.fullname),_.without(b,g.getCurrentUser().fullname).join(", ")},a.toggleQuickSidebar=function(){k.layout.pageQuickSidebarOpened=!k.layout.pageQuickSidebarOpened,k.layout.pageQuickSidebarOpened||m.remove("chatRoomId")};var C=function(){return v.Notification},D=function(){b.settings.layout.onFocus=!0},E=function(){b.settings.layout.onFocus=!1};v.onfocus=D,v.onblur=E,a.toogleSidebar=function(){k.layout.pageSidebarClosed=!k.layout.pageSidebarClosed,m.set("sidebarClosed",k.layout.pageSidebarClosed)},a.initHeader=function(){var c=j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3");"agent"===g.getCurrentUser().role&&(i.socket.on("report_mail:save",function(c){var d=_.find(a.workspaces,{id:c.roomid,type:"mailRoom"});if(!d){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play();var e="<b>"+u.instant("APPLICATION_ACCOUNT")+"</b>: "+c.accountname+"<br> <b>"+u.instant("APPLICATION_FROM")+"</b>: "+c.from+"<br> <b>"+u.instant("APPLICATION_SUBJECT")+"</b>: "+(B(c.subject,30,"...")||"No subject");"queue"===c.application&&(e+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+c.queuename),s.show(u.instant("APPLICATION_NEW_MAIL_REQUEST"),e,"mail",1e3*c.timeslot,function(){return p.get({id:c.id,controller1:"accept",controller2:c.uniqueid}).$promise.then(function(){var b=_.find(a.workspaces,{id:c.roomid,type:"mailRoom"});b?b.active=!0:a.workspaces.push({id:c.roomid,name:c.subject||"No subject",type:"mailRoom","class":"icon-envelope",active:!0,unread:0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_MAIL_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return p.get({id:c.id,controller1:"reject"}).$promise["catch"](function(a){h.show(a.data.message,"danger")})}),C&&!b.settings.layout.onFocus?f("MAIL CHANNEL",{icon:"assets/images/media/channels/mail64.png",body:"NEW Incoming Mail Message!",delay:1e3*c.timeslot}):console.log("Notification API not supported in your browser")}}),i.socket.on("report_sms:save",function(b){c.play();var d="<b>"+u.instant("APPLICATION_FROM")+"</b>: "+b.accountname+"<br><b>"+u.instant("APPLICATION_SMS")+"</b>: "+b.accountnumber;"queue"===b.application&&(d+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+b.queuename),s.show(u.instant("APPLICATION_NEW_SMS_REQUEST"),d,"sms",1e3*b.timeslot,function(){return o.get({id:b.id,controller1:"accept",controller2:b.uniqueid}).$promise.then(function(){var c=_.find(a.workspaces,{id:b.roomid,type:"smsRoom"});c?c.active=!0:a.workspaces.push({id:b.roomid,name:b.from,type:"smsRoom","class":"glyphicon glyphicon-comment",active:!0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_SMS_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return o.get({id:b.id,controller1:"reject"}).$promise.then(function(){h.show("SMS properly rejected","success")})["catch"](function(a){h.show(a.data.message,"danger")})}),C?f("SMS CHANNEL",{icon:"assets/images/media/channels/chat64.png",body:"NEW Incoming SMS Message!",delay:1e3*b.timeslot}):console.log("Notification API not supported in your browser")}),i.socket.on("report_fax:save",function(c){j.load("api/xchatty/assets?resource=notification/xc_blubb.mp3").play();var d="<b>"+u.instant("APPLICATION_ACCOUNT")+"</b>: "+c.accountname+"<br> <b>"+u.instant("APPLICATION_PHONE")+"</b>: "+c.from;"queue"===c.application&&(d+="<br><b>"+u.instant("APPLICATION_QUEUE")+"</b>: "+c.queuename),s.show(u.instant("APPLICATION_NEW_FAX_REQUEST"),d,"fax",1e3*c.timeslot,function(){return z.get({id:c.id,controller1:"accept",controller2:c.uniqueid}).$promise.then(function(){var b=_.find(a.workspaces,{id:c.roomid,type:"faxRoom"});b?b.active=!0:a.workspaces.push({id:c.roomid,name:c.from,type:"faxRoom","class":"icon-paper-plane",active:!0})})["catch"](function(a){switch(a.status){case 504:h.show(u.instant("MESSAGE_FAX_ALREADY_MANAGED"),"info");break;default:h.error(a)}})},function(){return z.get({id:c.id,controller1:"reject"}).$promise["catch"](function(a){h.error(a)})}),C&&!b.settings.layout.onFocus?f("FAX CHANNEL",{icon:"assets/images/media/channels/telephone124.png",body:"NEW Incoming Fax Message!",delay:1e3*c.timeslot}):console.log("Notification API not supported in your browser")}))},a.logout=function(){return e.get("/auth/local/logout").success(function(){g.logout(),c.path("/login")}).error(function(a){console.error(a)})},a.isActive=function(a){return a===c.path()}}]),angular.module("xCallyShuttleApp").service("interval",function(){var a={months:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"jan",name:"APPLICATION_JANUARY"},{value:"feb",name:"APPLICATION_FEBRUARY"},{value:"mar",name:"APPLICATION_MARCH"},{value:"apr",name:"APPLICATION_APRIL"},{value:"may",name:"APPLICATION_MAY"},{value:"jun",name:"APPLICATION_JUNE"},{value:"jul",name:"APPLICATION_JULY"},{value:"aug",name:"APPLICATION_AUGUST"},{value:"sep",name:"APPLICATION_SEPTEMBER"},{value:"oct",name:"APPLICATION_OCTOBER"},{value:"nov",name:"APPLICATION_NOVEMBER"},{value:"dec",name:"APPLICATION_DECEMBER"}],monthsNumber:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"1",name:"APPLICATION_JANUARY"},{value:"2",name:"APPLICATION_FEBRUARY"},{value:"3",name:"APPLICATION_MARCH"},{value:"4",name:"APPLICATION_APRIL"},{value:"5",name:"APPLICATION_MAY"},{value:"6",name:"APPLICATION_JUNE"},{value:"7",name:"APPLICATION_JULY"},{value:"8",name:"APPLICATION_AUGUST"},{value:"9",name:"APPLICATION_SEPTEMBER"},{value:"10",name:"APPLICATION_OCTOBER"},{value:"11",name:"APPLICATION_NOVEMBER"},{value:"12",name:"APPLICATION_DECEMBER"}],daysOfWeek:[{value:"always",name:"APPLICATION_ALWAYS"},{value:"mon",name:"APPLICATION_MONDAY"},{value:"tue",name:"APPLICATION_TUESDAY"},{value:"wed",name:"APPLICATION_WEDNESDAY"},{value:"thu",name:"APPLICATION_THURSDAY"},{value:"fri",name:"APPLICATION_FRIDAY"},{value:"sat",name:"APPLICATION_SATURDAY"},{value:"sun",name:"APPLICATION_SUNDAY"}],daysOfMonth:["always",1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]};return{interval:a}}),angular.module("xCallyShuttleApp").factory("Modal",["$rootScope","$uibModal",function(a,b){function c(c,d){var e=a.$new();return c=c||{},d=d||"modal-default",angular.extend(e,c),b.open({templateUrl:"components/modal/delete.html",windowClass:d,scope:e})}return{confirm:{"delete":function(a){return a=a||angular.noop,function(){var b,d=Array.prototype.slice.call(arguments),e=d.shift();b=c({modal:{dismissable:!0,title:"Confirm Delete",html:"<p>Are you sure you want to delete"+(e?"<strong> "+e+"</strong>":" selected items")+"?</p>",buttons:[{classes:"btn red",text:"Delete",click:function(a){b.close(a)}},{classes:"btn default",text:"Cancel",click:function(a){b.dismiss(a)}}]}},"over-topbar center"),b.result.then(function(b){a.apply(b,d)})}}}}}]),angular.module("xCallyShuttleApp").service("report",["ReportAgent","ReportCall","ReportMailSession","ReportMember","ReportQueue","ReportIntegration","ReportChatSession","ReportSmsSession","Contact","Recording","ReportSquare",function(a,b,c,d,e,f,g,h,i,j,k){var l=[{value:"report_agent_history",resource:a},{value:"report_call_history",resource:b},{value:"report_mail_session_history",resource:c},{value:"report_member_history",resource:d},{value:"report_queue_history",resource:e},{value:"report_integration_history",resource:f},{value:"report_chat_session_history",resource:g},{value:"report_sms_session_history",resource:h},{value:"cm_contacts",resource:i},{value:"voice_recordings",resource:j},{value:"report_square_history",resource:k},{value:"report_square_details_history",resource:k}];return{tables:l}}]),angular.module("xCallyShuttleApp").controller("SidebarController",["$scope","$rootScope","$resource","$location","Auth","Dashboard","Integration","xAlert","$stateParams","socket",function(a,b,c,d,e,f,g,h,i,j){a.Auth=e,a.userModules={},a.$on("$includeContentLoaded",function(){Metronic.init(),Layout.initSidebar()}),a.initSidebar=function(){e.getCurrentUser().Modules.forEach(function(b){a.userModules[b.id]=!0})},a.getSidebarDashboards=function(){return f.get().$promise.then(function(b){a.dashboards=b.rows,j.syncUpdates("dashboard",a.dashboards)})["catch"](function(){h.show("Error loading your dashboards","danger")})},a.getSidebarIntegrations=function(){return e.isAdmin()||a.userModules[19]?g.get().$promise.then(function(b){a.integrations=b.rows,j.syncUpdates("integration",a.integrations)})["catch"](function(a){h.show(a.message,"danger")}):void 0},a.$on("destroy",function(){j.unsyncUpdates("dashboard"),j.unsyncUpdates("integration")})}]),angular.module("xCallyShuttleApp").factory("socket",["$rootScope","$window","socketFactory","Auth",function(a,b,c,d){var e=d.getCurrentUser(),f=io("",{query:"token="+d.getToken()+"&userId="+e.id+"&name="+e.name+"&role="+(e.role||"agent")+"&source=browser",path:"/socket.io-client"}),g=c({ioSocket:f});return a.$on("logout",function(){g&&(g.disconnect(!0),b.location.reload())}),{socket:g,syncUpdates:function(a,b,c){c=c||angular.noop,g.on(a+":save",function(a){var d=_.find(b,{id:a.id}),e=b.indexOf(d),f="created";d?(_.merge(b[e],a),f="updated"):b.unshift(a),c(f,a,b)}),g.on(a+":remove",function(a){var d="deleted";_.remove(b,{id:a.id}),c(d,a,b)})},unsyncUpdates:function(a){g.removeAllListeners(a+":save"),g.removeAllListeners(a+":remove")},syncUpdatesByAttributes:function(a,b,c,d){d=d||angular.noop,g.on(a+":save",function(a){var e=!0;if(_.forIn(b,function(b,c){return a[c]&&a[c]===b?!0:e=!1}),e){var f=_.find(c,{id:a.id}),g=c.indexOf(f),h="created";f?(_.merge(c[g],a),h="updated"):c.unshift(a),d(h,a,c)}}),g.on(a+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},syncMailMessageUpdates:function(a,b,c,d){d=d||angular.noop,g.on(a+":"+b+":save",function(a){var b=_.find(c,{id:a.id}),e=c.indexOf(b),f="created";b?(_.merge(c[e],a),f="updated"):c.unshift(a),d(f,a)}),g.on(a+":"+b+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},unsyncMailMessageUpdates:function(a,b){g.removeAllListeners(a+":"+b+":save"),g.removeAllListeners(a+":"+b+":remove")},syncFaxMessageUpdates:function(a,b,c,d){d=d||angular.noop,g.on(a+":"+b+":save",function(a){var b=_.find(c,{id:a.id}),e=c.indexOf(b),f="created";b?(_.merge(c[e],a),f="updated"):c.unshift(a),d(f,a)}),g.on(a+":"+b+":remove",function(a){var b="deleted";_.remove(c,{id:a.id}),d(b,a,c)})},unsyncFaxMessageUpdates:function(a,b){g.removeAllListeners(a+":"+b+":save"),g.removeAllListeners(a+":"+b+":remove")}}}]),angular.module("xCallyShuttleApp").service("triggers",["VoiceQueue",function(a){var b={voice:{conditions:[{name:"APPLICATION_QUEUE",value:"queue",type:"select",resource:a,resValue:"name",operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]},{name:"APPLICATION_CALL_STATUS",value:"lastevent",type:"select",arr:[{name:"ringing",value:"called"},{name:"up",value:"connect"},{name:"hangup",value:"complete"},{name:"rejected",value:"rejected"},{name:"abandoned",value:"abandoned"}],operators:[{value:"equals",name:"APPLICATION_EQUALS_TO"},{value:"not_equals",name:"APPLICATION_NOT_EQUALS_TO"}]}],actions:[{name:"APPLICATION_CONTACT_MANAGER",value:"contactManager"},{name:"APPLICATION_INTEGRATIONS",value:"integration",propertyField:"select"},{name:"APPLICATION_MOTION_BAR",value:"motionbar",propertyField:"select"},{name:"APPLICATION_JSCRIPTY",value:"jscripty",propertyField:"select"},{name:"APPLICATION_URL_FORWARD",value:"urlForward"}]}},c=["voice"];return{services:b, -channels:c}}]),angular.module("xCallyShuttleApp").service("variable",function(){var a=[{title:"Unique ID",name:"uniqueid",group:"voice_queue"},{title:"Caller Number",name:"calleridnum",group:"voice_queue"},{title:"Caller Name",name:"calleridname",group:"voice_queue"},{title:"Queue",name:"queue",group:"voice_queue"},{title:"Called Number",name:"destcalleridnum",group:"voice_queue"},{title:"Called Name",name:"destcalleridname",group:"voice_queue"},{title:"Hold Time",name:"holdtime",group:"voice_queue"},{title:"Talk Time",name:"talktime",group:"voice_queue"},{title:"Connected Time",name:"agentconnectAt",group:"voice_queue"},{title:"Called Time",name:"agentcalledAt",group:"voice_queue"},{title:"DNID",name:"destexten",group:"voice_queue"},{title:"Complete Time",name:"agentcompleteAt",group:"voice_queue"},{title:"No Answer Time",name:"agentringnoanswerAt",group:"voice_queue"}];return a}),function(a,b){angular.module("adf.widget.counter",["adf.provider"]).config(["dashboardProvider",function(a){a.widget("counter",{title:"Single Value",description:"Single Value for db results",templateUrl:"{widgetsPath}/counter/src/view.html",controller:"apiwidgetCounterViewCtrl",edit:{templateUrl:"{widgetsPath}/counter/src/edit.html",controller:"apiwidgetCounterEditCtrl"}})}]).service("apiServiceCounter",["Widget",function(a){return{get:function(b){return a.get({select:b.select,condition:encodeURIComponent(b.condition),table:b.report.replace("_history",""),controller:"counter"}).$promise.then(function(a){return a})["catch"](function(a){console.log(a)})}}}]).controller("apiwidgetCounterEditCtrl",["$scope","report",function(a,b){a.config.reportTables=b.tables,a.config.colors=[{name:"Grey",value:"grey"},{name:"Grey 2",value:"grey-cascade"},{name:"Grey 3",value:"grey-silver"},{name:"Grey 4",value:"grey-steel"},{name:"Grey 5",value:"grey-carrara"},{name:"Grey 6",value:"grey-gallery"},{name:"Blue",value:"blue"},{name:"Blue 2",value:"blue-hoki"},{name:"Blue 3",value:"blue-steel"},{name:"Blue 4",value:"blue-madison"},{name:"Blue 5",value:"blue-chambray"},{name:"Blue 6",value:"blue-ebonyclay"},{name:"Red",value:"red"},{name:"Red 2",value:"red-pink"},{name:"Red 3",value:"red-sunglo"},{name:"Red 4",value:"red-intense"},{name:"Red 5",value:"red-thunderbird"},{name:"Red 6",value:"red-flamingo"},{name:"Green",value:"green"},{name:"Green 2",value:"green-meadow"},{name:"Green 3",value:"green-seagreen"},{name:"Green 4",value:"green-turquoise"},{name:"Green 5",value:"green-haze"},{name:"Green 6",value:"green-jungle"},{name:"Purple",value:"purple"},{name:"Purple 2",value:"purple-plum"},{name:"Purple 3",value:"purple-medium"},{name:"Purple 4",value:"purple-studio"},{name:"Purple 5",value:"purple-wisteria"},{name:"Purple 6",value:"purple-seance"},{name:"Yellow",value:"yellow"},{name:"Yellow 2",value:"yellow-gold"},{name:"Yellow 3",value:"yellow-casablanca"},{name:"Yellow 4",value:"yellow-crusta"},{name:"Yellow 5",value:"yellow-lemon"},{name:"Yellow 6",value:"yellow-saffron"}],a.config.icons=[{name:"Talk bubbles",value:"fa-comments"},{name:"Bar Chart",value:"fa-bar-chart"},{name:"Shopping Cart",value:"fa-shopping-cart"},{name:"Globe",value:"fa-globe"},{name:"Volume Control Phone",value:"fa-volume-control-phone"},{name:"Comments",value:"fa-comments-o"},{name:"Commenting",value:"fa-commenting-o"},{name:"Coffee",value:"fa-coffee"},{name:"Clock",value:"fa-clock-o"},{name:"Envelope",value:"fa-envelope-o"},{name:"Hourglass",value:"fa-hourglass-half"},{name:"Percent",value:"fa-percent"}],a.config.select=a.config.select?a.config.select:"COUNT(*)",a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE"}]).controller("apiwidgetCounterViewCtrl",["$scope","$interval","apiServiceCounter",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.condition=a.config.condition?a.config.condition:null,a.config.color=a.config.color?a.config.color:"blue-madison",a.config.icon=a.config.icon?a.config.icon:"fa-comments",a.config.link=a.config.link?a.config.link:"#",a.config.linkText=a.config.linkText?a.config.linkText:"VIEW MORE",a.counterApiCall=function(){a.config.report&&c.get(a.config).then(function(b){b?b.result&&b.result.length>1||_.keys(b.result[0]).length>1?(a.tooManyResults=!0,a.result=null):(a.tooManyResults=!1,null!==_.values(b.result[0])[0]?a.result=_.values(b.result[0])[0].toString():a.result="--"):a.result=null})},a.counterApiCall();var d=b(function(){a.counterApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.counter").run(["$templateCache",function(a){a.put("{widgetsPath}/counter/src/edit.html","<form role=form><div class=form-group><label for=select>Select</label> <input type=text class=form-control id=condition ng-model=config.select placeholder=Select></div><div class=form-group><label class=control-label>From</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder=From>{{'APPLICATION_'+$select.selected.value.toUpperCase() | translate}}</ui-select-match><ui-select-choices repeat=\"table.value as table in config.reportTables | filter: $select.search\"><div ng-bind-html=\"'APPLICATION_'+table.value.toUpperCase() | translate | highlight: $select.search\"></div></ui-select-choices></ui-select></div><div class=form-group><label for=condition>Where</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder=Where></div><div class=form-group><label for=condition>{{'APPLICATION_REFRESH_TIMEOUT' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder=\"{{'APPLICATION_REFRESH_TIMEOUT' | translate}}\" min=1></div><div class=form-group><label class=control-label>{{'APPLICATION_WIDGET_COLOR' | translate}}</label><ui-select data-ng-model=config.color name=color theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_WIDGET_COLOR' | translate }}\"><div data-ng-class=\"'bg-'+$select.selected.value\"> </div></ui-select-match><ui-select-choices repeat=\"color.value as color in config.colors | filter: $select.search\"><div data-ng-class=\"'bg-'+color.value\"> </div></ui-select-choices></ui-select></div><div class=form-group><label class=control-label>{{'APPLICATION_WIDGET_ICON' | translate}}</label><ui-select data-ng-model=config.icon name=icon theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_WIDGET_ICON' | translate }}\"><i class=fa ng-class=$select.selected.value></i></ui-select-match><ui-select-choices repeat=\"icon.value as icon in config.icons | filter: $select.search\"><i class=fa ng-class=icon.value></i></ui-select-choices></ui-select></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_DETAILS' | translate}}</label> <input type=text class=form-control id=details ng-model=config.details maxlength=30 placeholder=\"{{'APPLICATION_WIDGET_DETAILS' | translate}}\"></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_LINK' | translate}}</label> <input type=text class=form-control id=link ng-model=config.link placeholder=http://yourlink></div><div class=form-group><label for=condition>{{'APPLICATION_WIDGET_LINK_TEXT' | translate}}</label> <input type=text class=form-control id=linkText ng-model=config.linkText maxlength=30 placeholder=\"{{'APPLICATION_WIDGET_LINK_TEXT' | translate}}\"></div></form>"),a.put("{widgetsPath}/counter/src/view.html",'<div class=dashboard-stat ng-class=config.color ng-if=result><div class=visual><i class=fa ng-class=config.icon></i></div><div class=details><div class=number>{{result}}</div><div class=desc>{{config.details}}</div></div><a class=more href={{config.link}}>{{config.linkText}} <i class="m-icon-swapright m-icon-white"></i></a></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=tooManyResults><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_TOO_MANY_RESULTS\' | translate}}</div><div class="alert alert-danger" role=alert ng-if="!result && !tooManyResults"><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_QUERY_NOT_VALID\' | translate}}</div>')}])}(window),function(a,b){angular.module("adf.widget.pie-chart",["adf.provider"]).config(["dashboardProvider",function(a){a.widget("pie-chart",{title:"Pie-Chart",description:"Display a pie-chart starting from DB values",templateUrl:"{widgetsPath}/pie-chart/src/view.html",controller:"apiWidgetPieChartViewCtrl",edit:{templateUrl:"{widgetsPath}/pie-chart/src/edit.html",controller:"apiWidgetPieChartEditCtrl"}})}]).service("apiServicePieChart",["Widget",function(a){return{get:function(b){return a.get({condition:encodeURIComponent(b.condition),table:b.report.replace("_history",""),fields:b.fields,controller:"piechart"}).$promise.then(function(a){return a})["catch"](function(a){console.log(a)})}}}]).controller("apiWidgetPieChartEditCtrl",["$scope","report",function(a,b){function c(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=b.tables,a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){c().push({})},a.removeField=function(a){c().splice(a,1)}}]).controller("apiWidgetPieChartViewCtrl",["$scope","$interval","apiServicePieChart",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.pieChartApiCall=function(){a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){if(b&&b.result&&1===b.result.length){a.labels=[],a.data=[];for(var c in b.result[0])a.labels.push(c),a.data.push(b.result[0][c])}else a.labels=[],a.data=[]})},a.pieChartApiCall();var d=b(function(){a.pieChartApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.pie-chart").run(["$templateCache",function(a){a.put("{widgetsPath}/pie-chart/src/edit.html","<form role=form><div class=form-group><label class=control-label>{{'APPLICATION_REPORT' | translate}}</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder=\"{{ 'APPLICATION_REPORT' | translate }}\">{{'APPLICATION_'+$select.selected.value.toUpperCase() | translate}}</ui-select-match><ui-select-choices repeat=\"table.value as table in config.reportTables | filter: $select.search\"><div ng-bind-html=\"'APPLICATION_'+table.value.toUpperCase() | translate | highlight: $select.search\"></div></ui-select-choices></ui-select></div><div><label class=control-label>{{'APPLICATION_FIELDS' | translate}}</label></div><div class=padding-bottom ng-repeat=\"field in config.fields\"><div class=form-group><div class=input-group><input type=text class=form-control ng-model=field.column> <span class=input-group-addon>as</span> <input type=text class=form-control ng-model=field.alias> <span class=input-group-btn ng-if=\"config.fields.length>1\"><button class=\"btn btn-danger\" type=button data-ng-click=removeField($index)><i class=\"fa fa-times\"></i> {{'APPLICATION_REMOVE' | translate}}</button></span></div></div></div><button type=button class=\"btn btn-sm green mbottom20\" ng-click=addField()><i class=\"fa fa-plus\"></i> {{'APPLICATION_ADD_FIELD' | translate}}</button><div class=form-group><label for=condition>{{'APPLICATION_CONDITION' | translate}}</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder=\"{{'APPLICATION_CONDITION' | translate}}\"></div><div class=form-group><label for=condition>{{'APPLICATION_REFRESH_TIMEOUT' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder=\"{{'APPLICATION_REFRESH_TIMEOUT' | translate}}\" min=1></div></form>"),a.put("{widgetsPath}/pie-chart/src/view.html",'<div ng-if=labels.length ng-style=config.style><canvas id=doughnut class="chart chart-doughnut" chart-data=data chart-labels=labels legend=true></canvas></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!labels.length><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_VALID_CONDITION\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!labels.length><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_ONE_VALID_METRIC_AND_CHECK_OTHER\' | translate}}</div>')}])}(window),function(a,b){angular.module("adf.widget.table",["adf.provider"]).value("apiServiceUrlTable","/api/widgets/table").config(["dashboardProvider",function(a){a.widget("table",{title:"Table",description:"Show tabbed results from db",templateUrl:"{widgetsPath}/table/src/view.html",controller:"apiWidgetTableViewCtrl",edit:{templateUrl:"{widgetsPath}/table/src/edit.html",controller:"apiWidgetTableEditCtrl"}})}]).service("apiServiceTable",["$q","$http","apiServiceUrlTable",function(a,b,c){return{get:function(d){var e=a.defer();return b.get(c,{params:{condition:encodeURIComponent(d.condition),table:d.report,fields:d.fields}}).success(function(a){a?e.resolve(a):e.reject()}).error(function(a){console.log(a),e.reject()}),e.promise}}}]).controller("apiWidgetTableEditCtrl",["$scope",function(a){function b(){return a.config.fields||(a.config.fields=[{column:"",alias:""}]),a.config.fields}a.config.reportTables=[{name:"Agents",value:"agent"},{name:"Calls",value:"call"},{name:"Dials",value:"dial"},{name:"Members",value:"member"},{name:"Queues",value:"queue"}],a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.fields=a.config.fields?a.config.fields:[{column:"",alias:""}],a.addField=function(){b().push({})},a.removeField=function(a){b().splice(a,1)}}]).controller("apiWidgetTableViewCtrl",["$scope","$interval","apiServiceTable",function(a,b,c){a.config.timeout=a.config.timeout?a.config.timeout:1,a.config.height=a.config.height?a.config.height:350,a.config.style={"max-height":a.config.height+"px",overflow:"scroll"},a.tableApiCall=function(){a.config.condition&&a.config.report&&a.config.fields.length&&""!==a.config.fields[0].column&&""!==a.config.fields[0].alias&&c.get(a.config).then(function(b){a.results=b})},a.tableApiCall();var d=b(function(){a.tableApiCall()},1e3*parseInt(a.config.timeout));a.$on("$destroy",function(){b.cancel(d)})}]),angular.module("adf.widget.table").run(["$templateCache",function(a){a.put("{widgetsPath}/table/src/edit.html",'<form role=form><div class=form-group><label class=control-label>{{\'APPLICATION_REPORT\' | translate}}</label><ui-select data-ng-model=config.report name=report theme=bootstrap><ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match><ui-select-choices repeat="report.value as report in config.reportTables | filter: $select.search"><div ng-bind-html="report.name | highlight: $select.search"></div></ui-select-choices></ui-select></div><div><label class=control-label>{{\'APPLICATION_METRICS\' | translate}}</label></div><div class=padding-bottom ng-repeat="field in config.fields"><div class=form-group><div class=input-group><input type=text class=form-control ng-model=field.column> <span class=input-group-addon>as</span> <input type=text class=form-control ng-model=field.alias> <span class=input-group-btn ng-if="config.fields.length>1"><button class="btn btn-danger" type=button data-ng-click=removeField($index)><i class="fa fa-times"></i> {{\'APPLICATION_REMOVE\' | translate}}</button></span></div></div></div><button type=button class="btn btn-sm green mbottom20" ng-click=addField()><i class="fa fa-plus"></i> {{\'APPLICATION_ADD_FIELD\' | translate}}</button><div class=form-group><label for=condition>{{\'APPLICATION_CONDITION\' | translate}}</label> <input type=text class=form-control id=condition ng-model=config.condition placeholder="{{\'APPLICATION_CONDITION\' | translate}}"></div><div class=form-group><label for=condition>{{\'APPLICATION_REFRESH_TIMEOUT\' | translate}}</label> <input type=number class=form-control id=timeout ng-model=config.timeout placeholder="{{\'APPLICATION_REFRESH_TIMEOUT\' | translate}}" min=1></div><div class=form-group><label for=condition>{{\'APPLICATION_WIDGET_MAX_HEIGHT\' | translate}}</label> <input type=number class=form-control id=height ng-model=config.height placeholder="{{\'APPLICATION_WIDGET_MAX_HEIGHT\' | translate}}" min=350></div></form>'),a.put("{widgetsPath}/table/src/view.html",'<div ng-if=results ng-style=config.style><table st-table=results class="table table-striped table-bordered table-hover"><div class=table-responsive><thead><tr><th colspan={{config.fields.length}}><div class=row><div class=col-md-6></div><div class=col-md-6><div class="input-group input-medium pull-right"><input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class=form-control type=search> <span class=input-group-addon><i class="fa fa-search"></i></span></div></div></div></th></tr><tr><th ng-repeat="field in config.fields">{{field.alias}}</th></tr></thead><tbody><tr data-ng-repeat="result in results" class=animate-repeat><td ng-repeat="field in config.fields">{{result[field.alias]}}</td></tr><tr data-ng-hide=results.length><td colspan={{config.fields.length}} style=text-align:center;><i>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</i></td></tr></tbody><tfoot><tr><td colspan={{config.fields.length}} class=text-center><div st-pagination class=pagination st-items-by-page=10 st-displayed-pages=3></div></td></tr></tfoot></div></table></div><div class="alert alert-danger" role=alert ng-if=!config.report><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_WIDGET_SELECT_REPORT\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!results><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_VALID_CONDITION\' | translate}}</div><div class="alert alert-danger" role=alert ng-if=!results><span class="glyphicon glyphicon-exclamation-sign" aria-hidden=true></span> <span class=sr-only>{{\'APPLICATION_ERROR\' | translate}}:</span> {{\'MESSAGE_ENTER_ONE_VALID_FIELD_AND_CHECK_OTHER\' | translate}}</div>')}])}(window),function(){window.CKEDITOR&&window.CKEDITOR.dom||(window.CKEDITOR||(window.CKEDITOR=function(){var a=/(^|.*[\\\/])ckeditor\.js(?:\?.*|;.*)?$/i,b={timestamp:"G4CF",version:"4.5.9 (Standard)",revision:"a35abfe",rnd:Math.floor(900*Math.random())+100,_:{pending:[],basePathSrcPattern:a},status:"unloaded",basePath:function(){var b=window.CKEDITOR_BASEPATH||"";if(!b)for(var c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var e=c[d].src.match(a);if(e){b=e[1];break}}if(-1==b.indexOf(":/")&&"//"!=b.slice(0,2)&&(b=0===b.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+b:location.href.match(/^[^\?]*\/(?:)/)[0]+b),!b)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return b}(),getUrl:function(a){return-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a),this.timestamp&&"/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a)&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp),a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",a,!1),b()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),b())}catch(c){}}function b(){for(var a;a=c.shift();)a()}var c=[];return function(b){function d(){try{document.documentElement.doScroll("left")}catch(b){return void setTimeout(d,1)}a()}if(c.push(b),"complete"===document.readyState&&setTimeout(a,1),1==c.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",a),window.attachEvent("onload",a),b=!1;try{b=!window.frameElement}catch(e){}document.documentElement.doScroll&&b&&d()}}}()},c=window.CKEDITOR_GETURL;if(c){var d=b.getUrl;b.getUrl=function(a){return c.call(b,a)||d.call(b,a)}}return b}()),CKEDITOR.event||(CKEDITOR.event=function(){},CKEDITOR.event.implementOn=function(a){var b,c=CKEDITOR.event.prototype;for(b in c)null==a[b]&&(a[b]=c[b])},CKEDITOR.event.prototype=function(){function a(a){var d=b(this);return d[a]||(d[a]=new c(a))}var b=function(a){return a=a.getPrivate&&a.getPrivate()||a._||(a._={}),a.events||(a.events={})},c=function(a){this.name=a,this.listeners=[]};return c.prototype={getListenerIndex:function(a){for(var b=0,c=this.listeners;b<c.length;b++)if(c[b].fn==a)return b;return-1}},{define:function(b,c){var d=a.call(this,b);CKEDITOR.tools.extend(d,c,!0)},on:function(b,c,d,e,f){function g(a,f,g,i){return a={name:b,sender:this,editor:a,data:f,listenerData:e,stop:g,cancel:i,removeListener:h},!1===c.call(d,a)?!1:a.data}function h(){j.removeListener(b,c)}var i=a.call(this,b);if(0>i.getListenerIndex(c)){i=i.listeners,d||(d=this),isNaN(f)&&(f=10);var j=this;g.fn=c,g.priority=f;for(var k=i.length-1;k>=0;k--)if(i[k].priority<=f)return i.splice(k+1,0,g),{removeListener:h};i.unshift(g)}return{removeListener:h}},once:function(){var a=Array.prototype.slice.call(arguments),b=a[1];return a[1]=function(a){return a.removeListener(),b.apply(this,arguments)},this.on.apply(this,a)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);return CKEDITOR.event.useCapture=0,a},fire:function(){var a=0,c=function(){a=1},d=0,e=function(){d=1};return function(f,g,h){var i=b(this)[f];f=a;var j=d;if(a=d=0,i){var k=i.listeners;if(k.length)for(var l,k=k.slice(0),m=0;m<k.length;m++){if(i.errorProof)try{l=k[m].call(this,h,g,c,e)}catch(n){}else l=k[m].call(this,h,g,c,e);if(!1===l?d=1:"undefined"!=typeof l&&(g=l),a||d)break}}return g=d?!1:"undefined"==typeof g?!0:g,a=f,d=j,g}}(),fireOnce:function(a,c,d){return c=this.fire(a,c,d),delete b(this)[a],c},removeListener:function(a,c){var d=b(this)[a];if(d){var e=d.getListenerIndex(c);e>=0&&d.listeners.splice(e,1)}},removeAllListeners:function(){var a,c=b(this);for(a in c)delete c[a]},hasListeners:function(a){return(a=b(this)[a])&&0<a.listeners.length}}}()),CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]),CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,b){return a in{instanceReady:1,loaded:1}&&(this[a]=!0),CKEDITOR.event.prototype.fire.call(this,a,b,this)},CKEDITOR.editor.prototype.fireOnce=function(a,b){return a in{instanceReady:1,loaded:1}&&(this[a]=!0),CKEDITOR.event.prototype.fireOnce.call(this,a,b,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype)),CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),b=a.match(/edge[ \/](\d+.?\d*)/),c=-1<a.indexOf("trident/"),c=!(!b&&!c),c={ie:c,edge:!!b,webkit:!c&&-1<a.indexOf(" applewebkit/"),air:-1<a.indexOf(" adobeair/"),mac:-1<a.indexOf("macintosh"),quirks:"BackCompat"==document.compatMode&&(!document.documentMode||10>document.documentMode),mobile:-1<a.indexOf("mobile"),iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return!1;var a=document.domain,b=window.location.hostname;return a!=b&&a!="["+b+"]"},secure:"https:"==location.protocol};c.gecko="Gecko"==navigator.product&&!c.webkit&&!c.ie,c.webkit&&(-1<a.indexOf("chrome")?c.chrome=!0:c.safari=!0);var d=0;return c.ie&&(d=b?parseFloat(b[1]):c.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode,c.ie9Compat=9==d,c.ie8Compat=8==d,c.ie7Compat=7==d,c.ie6Compat=7>d||c.quirks),c.gecko&&(b=a.match(/rv:([\d\.]+)/))&&(b=b[1].split("."),d=1e4*b[0]+100*(b[1]||0)+1*(b[2]||0)),c.air&&(d=parseFloat(a.match(/ adobeair\/(\d+)/)[1])),c.webkit&&(d=parseFloat(a.match(/ applewebkit\/(\d+)/)[1])),c.version=d,c.isCompatible=!(c.ie&&7>d||c.gecko&&4e4>d||c.webkit&&534>d),c.hidpi=2<=window.devicePixelRatio,c.needsBrFiller=c.gecko||c.webkit||c.ie&&d>10,c.needsNbspFiller=c.ie&&11>d,c.cssClass="cke_browser_"+(c.ie?"ie":c.gecko?"gecko":c.webkit?"webkit":"unknown"),c.quirks&&(c.cssClass+=" cke_browser_quirks"),c.ie&&(c.cssClass+=" cke_browser_ie"+(c.quirks?"6 cke_browser_iequirks":c.version)),c.air&&(c.cssClass+=" cke_browser_air"),c.iOS&&(c.cssClass+=" cke_browser_ios"),c.hidpi&&(c.cssClass+=" cke_hidpi"),c}()),"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR),CKEDITOR.loadFullCore=function(){if("basic_ready"!=CKEDITOR.status)CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript",a.src=CKEDITOR.basePath+"ckeditor.js",document.getElementsByTagName("head")[0].appendChild(a)}},CKEDITOR.loadFullCoreTimeout=0,CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)},function(){CKEDITOR.domReady(function(){var a=CKEDITOR.loadFullCore,b=CKEDITOR.loadFullCoreTimeout;a&&(CKEDITOR.status="basic_ready",a&&a._load?a():b&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},1e3*b))})}(),CKEDITOR.status="basic_loaded"}(),CKEDITOR.VERBOSITY_WARN=1,CKEDITOR.VERBOSITY_ERROR=2,CKEDITOR.verbosity=CKEDITOR.VERBOSITY_WARN|CKEDITOR.VERBOSITY_ERROR,CKEDITOR.warn=function(a,b){CKEDITOR.verbosity&CKEDITOR.VERBOSITY_WARN&&CKEDITOR.fire("log",{type:"warn",errorCode:a,additionalData:b})},CKEDITOR.error=function(a,b){CKEDITOR.verbosity&CKEDITOR.VERBOSITY_ERROR&&CKEDITOR.fire("log",{type:"error",errorCode:a,additionalData:b})},CKEDITOR.on("log",function(a){if(window.console&&window.console.log){var b=console[a.data.type]?a.data.type:"log",c=a.data.errorCode;(a=a.data.additionalData)?console[b]("[CKEDITOR] Error code: "+c+".",a):console[b]("[CKEDITOR] Error code: "+c+"."),console[b]("[CKEDITOR] For more information about this error go to http://docs.ckeditor.com/#!/guide/dev_errors-section-"+c)}},null,null,999),CKEDITOR.dom={},function(){var a=[],b=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.ie?"-ms-":"",c=/&/g,d=/>/g,e=/</g,f=/"/g,g=/&(lt|gt|amp|quot|nbsp|shy|#\d{1,5});/g,h={lt:"<",gt:">",amp:"&",quot:'"',nbsp:"Â ",shy:"ÂÂ"},i=function(a,b){return"#"==b[0]?String.fromCharCode(parseInt(b.slice(1),10)):h[b]};CKEDITOR.on("reset",function(){a=[]}),CKEDITOR.tools={arrayCompare:function(a,b){if(!a&&!b)return!0;if(!a||!b||a.length!=b.length)return!1;for(var c=0;c<a.length;c++)if(a[c]!=b[c])return!1;return!0},getIndex:function(a,b){for(var c=0;c<a.length;++c)if(b(a[c]))return c;return-1},clone:function(a){var b;if(a&&a instanceof Array){b=[];for(var c=0;c<a.length;c++)b[c]=CKEDITOR.tools.clone(a[c]);return b}if(null===a||"object"!=typeof a||a instanceof String||a instanceof Number||a instanceof Boolean||a instanceof Date||a instanceof RegExp||a.nodeType||a.window===a)return a;b=new a.constructor;for(c in a)b[c]=CKEDITOR.tools.clone(a[c]);return b},capitalize:function(a,b){return a.charAt(0).toUpperCase()+(b?a.slice(1):a.slice(1).toLowerCase())},extend:function(a){var b,c,d=arguments.length;"boolean"==typeof(b=arguments[d-1])?d--:"boolean"==typeof(b=arguments[d-2])&&(c=arguments[d-1],d-=2);for(var e=1;d>e;e++){var f,g=arguments[e];for(f in g)!0!==b&&null!=a[f]||(!c||f in c)&&(a[f]=g[f])}return a},prototypedCopy:function(a){var b=function(){};return b.prototype=a,new b},copy:function(a){var b,c={};for(b in a)c[b]=a[b];return c},isArray:function(a){return"[object Array]"==Object.prototype.toString.call(a)},isEmpty:function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0},cssVendorPrefix:function(a,c,d){return d?b+a+":"+c+";"+a+":"+c:(d={},d[a]=c,d[b+a]=c,d)},cssStyleToDomStyle:function(){var a=document.createElement("div").style,b="undefined"!=typeof a.cssFloat?"cssFloat":"undefined"!=typeof a.styleFloat?"styleFloat":"float";return function(a){return"float"==a?b:a.replace(/-./g,function(a){return a.substr(1).toUpperCase()})}}(),buildStyleHtml:function(a){a=[].concat(a);for(var b,c=[],d=0;d<a.length;d++)(b=a[d])&&(/@import|[{}]/.test(b)?c.push("<style>"+b+"</style>"):c.push('<link type="text/css" rel=stylesheet href="'+b+'">'));return c.join("")},htmlEncode:function(a){return void 0===a||null===a?"":String(a).replace(c,"&").replace(d,">").replace(e,"<")},htmlDecode:function(a){return a.replace(g,i)},htmlEncodeAttr:function(a){return CKEDITOR.tools.htmlEncode(a).replace(f,""")},htmlDecodeAttr:function(a){return CKEDITOR.tools.htmlDecode(a)},transformPlainTextToHtml:function(a,b){var c=b==CKEDITOR.ENTER_BR,d=this.htmlEncode(a.replace(/\r\n/g,"\n")),d=d.replace(/\t/g," "),e=b==CKEDITOR.ENTER_P?"p":"div";if(!c){var f=/\n{2}/g;if(f.test(d))var g="<"+e+">",h="</"+e+">",d=g+d.replace(f,function(){return h+g})+h}return d=d.replace(/\n/g,"<br>"),c||(d=d.replace(new RegExp("<br>(?=</"+e+">)"),function(a){return CKEDITOR.tools.repeat(a,2)})),d=d.replace(/^ | $/g," "),d=d.replace(/(>|\s) /g,function(a,b){return b+" "}).replace(/ (?=<)/g," ")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},getUniqueId:function(){for(var a="e",b=0;8>b;b++)a+=Math.floor(65536*(1+Math.random())).toString(16).substring(1);return a},override:function(a,b){var c=b(a);return c.prototype=a.prototype,c},setTimeout:function(a,b,c,d,e){return e||(e=window),c||(c=e),e.setTimeout(function(){d?a.apply(c,[].concat(d)):a.apply(c)},b||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(b){return b.replace(a,"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(b){return b.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(b){return b.replace(a,"")}}(),indexOf:function(a,b){if("function"==typeof b){for(var c=0,d=a.length;d>c;c++)if(b(a[c]))return c}else{if(a.indexOf)return a.indexOf(b);for(c=0,d=a.length;d>c;c++)if(a[c]===b)return c}return-1},search:function(a,b){var c=CKEDITOR.tools.indexOf(a,b);return c>=0?a[c]:null},bind:function(a,b){return function(){return a.apply(b,arguments)}},createClass:function(a){var b=a.$,c=a.base,d=a.privates||a._,e=a.proto;if(a=a.statics,!b&&(b=function(){c&&this.base.apply(this,arguments)}),d)var f=b,b=function(){var a,b=this._||(this._={});for(a in d){var c=d[a];b[a]="function"==typeof c?CKEDITOR.tools.bind(c,this):c}f.apply(this,arguments)};return c&&(b.prototype=this.prototypedCopy(c.prototype),b.prototype.constructor=b,b.base=c,b.baseProto=c.prototype,b.prototype.base=function(){this.base=c.prototype.base,c.apply(this,arguments),this.base=arguments.callee}),e&&this.extend(b.prototype,e,!0),a&&this.extend(b,a,!0),b},addFunction:function(b,c){return a.push(function(){return b.apply(c||this,arguments)})-1},removeFunction:function(b){a[b]=null},callFunction:function(b){var c=a[b];return c&&c.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a,b=/^-?\d+\.?\d*px$/;return function(c){return a=CKEDITOR.tools.trim(c+"")+"px",b.test(a)?a:c||""}}(),convertToPx:function(){var a;return function(b){ -return a||(a=CKEDITOR.dom.element.createFromHtml('<div style="position:absolute;left:-9999px;top:-9999px;margin:0px;padding:0px;border:0px;"></div>',CKEDITOR.document),CKEDITOR.document.getBody().append(a)),/%$/.test(b)?b:(a.setStyle("width",b),a.$.clientWidth)}}(),repeat:function(a,b){return Array(b+1).join(a)},tryThese:function(){for(var a,b=0,c=arguments.length;c>b;b++){var d=arguments[b];try{a=d();break}catch(e){}}return a},genKey:function(){return Array.prototype.slice.call(arguments).join("-")},defer:function(a){return function(){var b=arguments,c=this;window.setTimeout(function(){a.apply(c,b)},0)}},normalizeCssText:function(a,b){var c,d=[],e=CKEDITOR.tools.parseCssText(a,!0,b);for(c in e)d.push(c+":"+e[c]);return d.sort(),d.length?d.join(";")+";":""},convertRgbToHex:function(a){return a.replace(/(?:rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\))/gi,function(a,b,c,d){for(a=[b,c,d],b=0;3>b;b++)a[b]=("0"+parseInt(a[b],10).toString(16)).slice(-2);return"#"+a.join("")})},parseCssText:function(a,b,c){var d={};return c&&(c=new CKEDITOR.dom.element("span"),c.setAttribute("style",a),a=CKEDITOR.tools.convertRgbToHex(c.getAttribute("style")||"")),a&&";"!=a?(a.replace(/"/g,'"').replace(/\s*([^:;\s]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,e){b&&(c=c.toLowerCase(),"font-family"==c&&(e=e.toLowerCase().replace(/["']/g,"").replace(/\s*,\s*/g,",")),e=CKEDITOR.tools.trim(e)),d[c]=e}),d):d},writeCssText:function(a,b){var c,d=[];for(c in a)d.push(c+":"+a[c]);return b&&d.sort(),d.join("; ")},objectCompare:function(a,b,c){var d;if(!a&&!b)return!0;if(!a||!b)return!1;for(d in a)if(a[d]!=b[d])return!1;if(!c)for(d in b)if(a[d]!=b[d])return!1;return!0},objectKeys:function(a){var b,c=[];for(b in a)c.push(b);return c},convertArrayToObject:function(a,b){var c={};1==arguments.length&&(b=!0);for(var d=0,e=a.length;e>d;++d)c[a[d]]=b;return c},fixDomain:function(){for(var a;;)try{a=window.parent.document.domain;break}catch(b){if(a=a?a.replace(/.+?(?:\.|$)/,""):document.domain,!a)break;document.domain=a}return!!a},eventsBuffer:function(a,b,c){function d(){f=(new Date).getTime(),e=!1,c?b.call(c):b()}var e,f=0;return{input:function(){if(!e){var b=(new Date).getTime()-f;a>b?e=setTimeout(d,a-b):d()}},reset:function(){e&&clearTimeout(e),e=f=0}}},enableHtml5Elements:function(a,b){for(var c,d="abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video".split(" "),e=d.length;e--;)c=a.createElement(d[e]),b&&a.appendChild(c)},checkIfAnyArrayItemMatches:function(a,b){for(var c=0,d=a.length;d>c;++c)if(a[c].match(b))return!0;return!1},checkIfAnyObjectPropertyMatches:function(a,b){for(var c in a)if(c.match(b))return!0;return!1},transparentImageData:"data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==",getCookie:function(a){a=a.toLowerCase();for(var b,c,d=document.cookie.split(";"),e=0;e<d.length;e++)if(b=d[e].split("="),c=decodeURIComponent(CKEDITOR.tools.trim(b[0]).toLowerCase()),c===a)return decodeURIComponent(1<b.length?b[1]:"");return null},setCookie:function(a,b){document.cookie=encodeURIComponent(a)+"="+encodeURIComponent(b)+";path=/"},getCsrfToken:function(){var a=CKEDITOR.tools.getCookie("ckCsrfToken");if(!a||40!=a.length){var a=[],b="";if(window.crypto&&window.crypto.getRandomValues)a=new Uint8Array(40),window.crypto.getRandomValues(a);else for(var c=0;40>c;c++)a.push(Math.floor(256*Math.random()));for(c=0;c<a.length;c++)var d="abcdefghijklmnopqrstuvwxyz0123456789".charAt(a[c]%36),b=b+(.5<Math.random()?d.toUpperCase():d);a=b,CKEDITOR.tools.setCookie("ckCsrfToken",a)}return a}}}(),CKEDITOR.dtd=function(){var a=CKEDITOR.tools.extend,b=function(a,b){for(var c=CKEDITOR.tools.clone(a),d=1;d<arguments.length;d++){b=arguments[d];for(var e in b)delete c[e]}return c},c={},d={},e={address:1,article:1,aside:1,blockquote:1,details:1,div:1,dl:1,fieldset:1,figure:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,hr:1,main:1,menu:1,nav:1,ol:1,p:1,pre:1,section:1,table:1,ul:1},f={command:1,link:1,meta:1,noscript:1,script:1,style:1},g={},h={"#":1},i={center:1,dir:1,noframes:1};return a(c,{a:1,abbr:1,area:1,audio:1,b:1,bdi:1,bdo:1,br:1,button:1,canvas:1,cite:1,code:1,command:1,datalist:1,del:1,dfn:1,em:1,embed:1,i:1,iframe:1,img:1,input:1,ins:1,kbd:1,keygen:1,label:1,map:1,mark:1,meter:1,noscript:1,object:1,output:1,progress:1,q:1,ruby:1,s:1,samp:1,script:1,select:1,small:1,span:1,strong:1,sub:1,sup:1,textarea:1,time:1,u:1,"var":1,video:1,wbr:1},h,{acronym:1,applet:1,basefont:1,big:1,font:1,isindex:1,strike:1,style:1,tt:1}),a(d,e,c,i),b={a:b(c,{a:1,button:1}),abbr:c,address:d,area:g,article:d,aside:d,audio:a({source:1,track:1},d),b:c,base:g,bdi:c,bdo:c,blockquote:d,body:d,br:g,button:b(c,{a:1,button:1}),canvas:c,caption:d,cite:c,code:c,col:g,colgroup:{col:1},command:g,datalist:a({option:1},c),dd:d,del:c,details:a({summary:1},d),dfn:c,div:d,dl:{dt:1,dd:1},dt:d,em:c,embed:g,fieldset:a({legend:1},d),figcaption:d,figure:a({figcaption:1},d),footer:d,form:d,h1:c,h2:c,h3:c,h4:c,h5:c,h6:c,head:a({title:1,base:1},f),header:d,hgroup:{h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},hr:g,html:a({head:1,body:1},d,f),i:c,iframe:h,img:g,input:g,ins:c,kbd:c,keygen:g,label:c,legend:c,li:d,link:g,main:d,map:d,mark:c,menu:a({li:1},d),meta:g,meter:b(c,{meter:1}),nav:d,noscript:a({link:1,meta:1,style:1},c),object:a({param:1},c),ol:{li:1},optgroup:{option:1},option:h,output:c,p:c,param:g,pre:c,progress:b(c,{progress:1}),q:c,rp:c,rt:c,ruby:a({rp:1,rt:1},c),s:c,samp:c,script:h,section:d,select:{optgroup:1,option:1},small:c,source:g,span:c,strong:c,style:h,sub:c,summary:a({h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},c),sup:c,table:{caption:1,colgroup:1,thead:1,tfoot:1,tbody:1,tr:1},tbody:{tr:1},td:d,textarea:h,tfoot:{tr:1},th:d,thead:{tr:1},time:b(c,{time:1}),title:h,tr:{th:1,td:1},track:g,u:c,ul:{li:1},"var":c,video:a({source:1,track:1},d),wbr:g,acronym:c,applet:a({param:1},d),basefont:g,big:c,center:d,dialog:g,dir:{li:1},font:c,isindex:g,noframes:d,strike:c,tt:c},a(b,{$block:a({audio:1,dd:1,dt:1,figcaption:1,li:1,video:1},e,i),$blockLimit:{article:1,aside:1,audio:1,body:1,caption:1,details:1,dir:1,div:1,dl:1,fieldset:1,figcaption:1,figure:1,footer:1,form:1,header:1,hgroup:1,main:1,menu:1,nav:1,ol:1,section:1,table:1,td:1,th:1,tr:1,ul:1,video:1},$cdata:{script:1,style:1},$editable:{address:1,article:1,aside:1,blockquote:1,body:1,details:1,div:1,fieldset:1,figcaption:1,footer:1,form:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,header:1,hgroup:1,main:1,nav:1,p:1,pre:1,section:1},$empty:{area:1,base:1,basefont:1,br:1,col:1,command:1,dialog:1,embed:1,hr:1,img:1,input:1,isindex:1,keygen:1,link:1,meta:1,param:1,source:1,track:1,wbr:1},$inline:c,$list:{dl:1,ol:1,ul:1},$listItem:{dd:1,dt:1,li:1},$nonBodyContent:a({body:1,head:1,html:1},b.head),$nonEditable:{applet:1,audio:1,button:1,embed:1,iframe:1,map:1,object:1,option:1,param:1,script:1,textarea:1,video:1},$object:{applet:1,audio:1,button:1,hr:1,iframe:1,img:1,input:1,object:1,select:1,table:1,textarea:1,video:1},$removeEmpty:{abbr:1,acronym:1,b:1,bdi:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,mark:1,meter:1,output:1,q:1,ruby:1,s:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,time:1,tt:1,u:1,"var":1},$tabIndex:{a:1,area:1,button:1,input:1,object:1,select:1,textarea:1},$tableContent:{caption:1,col:1,colgroup:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1},$transparent:{a:1,audio:1,canvas:1,del:1,ins:1,map:1,noscript:1,object:1,video:1},$intermediate:{caption:1,colgroup:1,dd:1,dt:1,figcaption:1,legend:1,li:1,optgroup:1,option:1,rp:1,rt:1,summary:1,tbody:1,td:1,tfoot:1,th:1,thead:1,tr:1}}),b}(),CKEDITOR.dom.event=function(a){this.$=a},CKEDITOR.dom.event.prototype={getKey:function(){return this.$.keyCode||this.$.which},getKeystroke:function(){var a=this.getKey();return(this.$.ctrlKey||this.$.metaKey)&&(a+=CKEDITOR.CTRL),this.$.shiftKey&&(a+=CKEDITOR.SHIFT),this.$.altKey&&(a+=CKEDITOR.ALT),a},preventDefault:function(a){var b=this.$;b.preventDefault?b.preventDefault():b.returnValue=!1,a&&this.stopPropagation()},stopPropagation:function(){var a=this.$;a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},getTarget:function(){var a=this.$.target||this.$.srcElement;return a?new CKEDITOR.dom.node(a):null},getPhase:function(){return this.$.eventPhase||2},getPageOffset:function(){var a=this.getTarget().getDocument().$;return{x:this.$.pageX||this.$.clientX+(a.documentElement.scrollLeft||a.body.scrollLeft),y:this.$.pageY||this.$.clientY+(a.documentElement.scrollTop||a.body.scrollTop)}}},CKEDITOR.CTRL=1114112,CKEDITOR.SHIFT=2228224,CKEDITOR.ALT=4456448,CKEDITOR.EVENT_PHASE_CAPTURING=1,CKEDITOR.EVENT_PHASE_AT_TARGET=2,CKEDITOR.EVENT_PHASE_BUBBLING=3,CKEDITOR.dom.domObject=function(a){a&&(this.$=a)},CKEDITOR.dom.domObject.prototype=function(){var a=function(a,b){return function(c){"undefined"!=typeof CKEDITOR&&a.fire(b,new CKEDITOR.dom.event(c))}};return{getPrivate:function(){var a;return(a=this.getCustomData("_"))||this.setCustomData("_",a={}),a},on:function(b){var c=this.getCustomData("_cke_nativeListeners");return c||(c={},this.setCustomData("_cke_nativeListeners",c)),c[b]||(c=c[b]=a(this,b),this.$.addEventListener?this.$.addEventListener(b,c,!!CKEDITOR.event.useCapture):this.$.attachEvent&&this.$.attachEvent("on"+b,c)),CKEDITOR.event.prototype.on.apply(this,arguments)},removeListener:function(a){if(CKEDITOR.event.prototype.removeListener.apply(this,arguments),!this.hasListeners(a)){var b=this.getCustomData("_cke_nativeListeners"),c=b&&b[a];c&&(this.$.removeEventListener?this.$.removeEventListener(a,c,!1):this.$.detachEvent&&this.$.detachEvent("on"+a,c),delete b[a])}},removeAllListeners:function(){var a,b=this.getCustomData("_cke_nativeListeners");for(a in b){var c=b[a];this.$.detachEvent?this.$.detachEvent("on"+a,c):this.$.removeEventListener&&this.$.removeEventListener(a,c,!1),delete b[a]}CKEDITOR.event.prototype.removeAllListeners.call(this)}}}(),function(a){var b={};CKEDITOR.on("reset",function(){b={}}),a.equals=function(a){try{return a&&a.$===this.$}catch(b){return!1}},a.setCustomData=function(a,c){var d=this.getUniqueId();return(b[d]||(b[d]={}))[a]=c,this},a.getCustomData=function(a){var c=this.$["data-cke-expando"];return(c=c&&b[c])&&a in c?c[a]:null},a.removeCustomData=function(a){var c,d,e=this.$["data-cke-expando"],e=e&&b[e];return e&&(c=e[a],d=a in e,delete e[a]),d?c:null},a.clearCustomData=function(){this.removeAllListeners();var a=this.$["data-cke-expando"];a&&delete b[a]},a.getUniqueId=function(){return this.$["data-cke-expando"]||(this.$["data-cke-expando"]=CKEDITOR.tools.getNextNumber())},CKEDITOR.event.implementOn(a)}(CKEDITOR.dom.domObject.prototype),CKEDITOR.dom.node=function(a){return a?new CKEDITOR.dom[a.nodeType==CKEDITOR.NODE_DOCUMENT?"document":a.nodeType==CKEDITOR.NODE_ELEMENT?"element":a.nodeType==CKEDITOR.NODE_TEXT?"text":a.nodeType==CKEDITOR.NODE_COMMENT?"comment":a.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT?"documentFragment":"domObject"](a):this},CKEDITOR.dom.node.prototype=new CKEDITOR.dom.domObject,CKEDITOR.NODE_ELEMENT=1,CKEDITOR.NODE_DOCUMENT=9,CKEDITOR.NODE_TEXT=3,CKEDITOR.NODE_COMMENT=8,CKEDITOR.NODE_DOCUMENT_FRAGMENT=11,CKEDITOR.POSITION_IDENTICAL=0,CKEDITOR.POSITION_DISCONNECTED=1,CKEDITOR.POSITION_FOLLOWING=2,CKEDITOR.POSITION_PRECEDING=4,CKEDITOR.POSITION_IS_CONTAINED=8,CKEDITOR.POSITION_CONTAINS=16,CKEDITOR.tools.extend(CKEDITOR.dom.node.prototype,{appendTo:function(a,b){return a.append(this,b),a},clone:function(a,b){function c(d){if(d["data-cke-expando"]&&(d["data-cke-expando"]=!1),(d.nodeType==CKEDITOR.NODE_ELEMENT||d.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&(b||d.nodeType!=CKEDITOR.NODE_ELEMENT||d.removeAttribute("id",!1),a)){d=d.childNodes;for(var e=0;e<d.length;e++)c(d[e])}}function d(b){if(b.type==CKEDITOR.NODE_ELEMENT||b.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT){if(b.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var c=b.getName();":"==c[0]&&b.renameNode(c.substring(1))}if(a)for(c=0;c<b.getChildCount();c++)d(b.getChild(c))}}var e=this.$.cloneNode(a);return c(e),e=new CKEDITOR.dom.node(e),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(this.type==CKEDITOR.NODE_ELEMENT||this.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&d(e),e},hasPrevious:function(){return!!this.$.previousSibling},hasNext:function(){return!!this.$.nextSibling},insertAfter:function(a){return a.$.parentNode.insertBefore(this.$,a.$.nextSibling),a},insertBefore:function(a){return a.$.parentNode.insertBefore(this.$,a.$),a},insertBeforeMe:function(a){return this.$.parentNode.insertBefore(a.$,this.$),a},getAddress:function(a){for(var b=[],c=this.getDocument().$.documentElement,d=this.$;d&&d!=c;){var e=d.parentNode;e&&b.unshift(this.getIndex.call({$:d},a)),d=e}return b},getDocument:function(){return new CKEDITOR.dom.document(this.$.ownerDocument||this.$.parentNode.ownerDocument)},getIndex:function(a){function b(a,d){var e=d?a.nextSibling:a.previousSibling;return e&&e.nodeType==CKEDITOR.NODE_TEXT?c(e)?b(e,d):e:null}function c(a){return!a.nodeValue||a.nodeValue==CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE}var d,e=this.$,f=-1;if(!this.$.parentNode||a&&e.nodeType==CKEDITOR.NODE_TEXT&&c(e)&&!b(e)&&!b(e,!0))return-1;do a&&e!=this.$&&e.nodeType==CKEDITOR.NODE_TEXT&&(d||c(e))||(f++,d=e.nodeType==CKEDITOR.NODE_TEXT);while(e=e.previousSibling);return f},getNextSourceNode:function(a,b,c){if(c&&!c.call){var d=c;c=function(a){return!a.equals(d)}}a=!a&&this.getFirst&&this.getFirst();var e;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&c&&!1===c(this,!0))return null;a=this.getNext()}for(;!a&&(e=(e||this).getParent());){if(c&&!1===c(e,!0))return null;a=e.getNext()}return!a||c&&!1===c(a)?null:b&&b!=a.type?a.getNextSourceNode(!1,b,c):a},getPreviousSourceNode:function(a,b,c){if(c&&!c.call){var d=c;c=function(a){return!a.equals(d)}}a=!a&&this.getLast&&this.getLast();var e;if(!a){if(this.type==CKEDITOR.NODE_ELEMENT&&c&&!1===c(this,!0))return null;a=this.getPrevious()}for(;!a&&(e=(e||this).getParent());){if(c&&!1===c(e,!0))return null;a=e.getPrevious()}return!a||c&&!1===c(a)?null:b&&a.type!=b?a.getPreviousSourceNode(!1,b,c):a},getPrevious:function(a){var b,c=this.$;do b=(c=c.previousSibling)&&10!=c.nodeType&&new CKEDITOR.dom.node(c);while(b&&a&&!a(b));return b},getNext:function(a){var b,c=this.$;do b=(c=c.nextSibling)&&new CKEDITOR.dom.node(c);while(b&&a&&!a(b));return b},getParent:function(a){var b=this.$.parentNode;return b&&(b.nodeType==CKEDITOR.NODE_ELEMENT||a&&b.nodeType==CKEDITOR.NODE_DOCUMENT_FRAGMENT)?new CKEDITOR.dom.node(b):null},getParents:function(a){var b=this,c=[];do c[a?"push":"unshift"](b);while(b=b.getParent());return c},getCommonAncestor:function(a){if(a.equals(this))return this;if(a.contains&&a.contains(this))return a;var b=this.contains?this:this.getParent();do if(b.contains(a))return b;while(b=b.getParent());return null},getPosition:function(a){var b=this.$,c=a.$;if(b.compareDocumentPosition)return b.compareDocumentPosition(c);if(b==c)return CKEDITOR.POSITION_IDENTICAL;if(this.type==CKEDITOR.NODE_ELEMENT&&a.type==CKEDITOR.NODE_ELEMENT){if(b.contains){if(b.contains(c))return CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING;if(c.contains(b))return CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING}if("sourceIndex"in b)return 0>b.sourceIndex||0>c.sourceIndex?CKEDITOR.POSITION_DISCONNECTED:b.sourceIndex<c.sourceIndex?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING}b=this.getAddress(),a=a.getAddress();for(var c=Math.min(b.length,a.length),d=0;c>d;d++)if(b[d]!=a[d])return b[d]<a[d]?CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_FOLLOWING;return b.length<a.length?CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_PRECEDING:CKEDITOR.POSITION_IS_CONTAINED+CKEDITOR.POSITION_FOLLOWING},getAscendant:function(a,b){var c,d,e=this.$;b||(e=e.parentNode),"function"==typeof a?(d=!0,c=a):(d=!1,c=function(b){return b="string"==typeof b.nodeName?b.nodeName.toLowerCase():"","string"==typeof a?b==a:b in a});for(;e;){if(c(d?new CKEDITOR.dom.node(e):e))return new CKEDITOR.dom.node(e);try{e=e.parentNode}catch(f){e=null}}return null},hasAscendant:function(a,b){var c=this.$;for(b||(c=c.parentNode);c;){if(c.nodeName&&c.nodeName.toLowerCase()==a)return!0;c=c.parentNode}return!1},move:function(a,b){a.append(this.remove(),b)},remove:function(a){var b=this.$,c=b.parentNode;if(c){if(a)for(;a=b.firstChild;)c.insertBefore(b.removeChild(a),b);c.removeChild(b)}return this},replace:function(a){this.insertBefore(a),a.remove()},trim:function(){this.ltrim(),this.rtrim()},ltrim:function(){for(var a;this.getFirst&&(a=this.getFirst());){if(a.type==CKEDITOR.NODE_TEXT){var b=CKEDITOR.tools.ltrim(a.getText()),c=a.getLength();if(!b){a.remove();continue}b.length<c&&(a.split(c-b.length),this.$.removeChild(this.$.firstChild))}break}},rtrim:function(){for(var a;this.getLast&&(a=this.getLast());){if(a.type==CKEDITOR.NODE_TEXT){var b=CKEDITOR.tools.rtrim(a.getText()),c=a.getLength();if(!b){a.remove();continue}b.length<c&&(a.split(b.length),this.$.lastChild.parentNode.removeChild(this.$.lastChild))}break}CKEDITOR.env.needsBrFiller&&(a=this.$.lastChild)&&1==a.type&&"br"==a.nodeName.toLowerCase()&&a.parentNode.removeChild(a)},isReadOnly:function(a){var b=this;if(this.type!=CKEDITOR.NODE_ELEMENT&&(b=this.getParent()),CKEDITOR.env.edge&&b&&b.is("textarea","input")&&(a=!0),!a&&b&&"undefined"!=typeof b.$.isContentEditable)return!(b.$.isContentEditable||b.data("cke-editable"));for(;b;){if(b.data("cke-editable"))return!1;if(b.hasAttribute("contenteditable"))return"false"==b.getAttribute("contenteditable");b=b.getParent()}return!0}}),CKEDITOR.dom.window=function(a){CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.window.prototype=new CKEDITOR.dom.domObject,CKEDITOR.tools.extend(CKEDITOR.dom.window.prototype,{focus:function(){this.$.focus()},getViewPaneSize:function(){var a=this.$.document,b="CSS1Compat"==a.compatMode;return{width:(b?a.documentElement.clientWidth:a.body.clientWidth)||0,height:(b?a.documentElement.clientHeight:a.body.clientHeight)||0}},getScrollPosition:function(){var a=this.$;return"pageXOffset"in a?{x:a.pageXOffset||0,y:a.pageYOffset||0}:(a=a.document,{x:a.documentElement.scrollLeft||a.body.scrollLeft||0,y:a.documentElement.scrollTop||a.body.scrollTop||0})},getFrame:function(){var a=this.$.frameElement;return a?new CKEDITOR.dom.element.get(a):null}}),CKEDITOR.dom.document=function(a){CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.document.prototype=new CKEDITOR.dom.domObject,CKEDITOR.tools.extend(CKEDITOR.dom.document.prototype,{type:CKEDITOR.NODE_DOCUMENT,appendStyleSheet:function(a){if(this.$.createStyleSheet)this.$.createStyleSheet(a);else{var b=new CKEDITOR.dom.element("link");b.setAttributes({rel:"stylesheet",type:"text/css",href:a}),this.getHead().append(b)}},appendStyleText:function(a){if(this.$.createStyleSheet){var b=this.$.createStyleSheet("");b.cssText=a}else{var c=new CKEDITOR.dom.element("style",this);c.append(new CKEDITOR.dom.text(a,this)),this.getHead().append(c)}return b||c.$.sheet},createElement:function(a,b){var c=new CKEDITOR.dom.element(a,this);return b&&(b.attributes&&c.setAttributes(b.attributes),b.styles&&c.setStyles(b.styles)),c},createText:function(a){return new CKEDITOR.dom.text(a,this)},focus:function(){this.getWindow().focus()},getActive:function(){var a;try{a=this.$.activeElement}catch(b){return null}return new CKEDITOR.dom.element(a)},getById:function(a){return(a=this.$.getElementById(a))?new CKEDITOR.dom.element(a):null},getByAddress:function(a,b){for(var c=this.$.documentElement,d=0;c&&d<a.length;d++){var e=a[d];if(b)for(var f=-1,g=0;g<c.childNodes.length;g++){var h=c.childNodes[g];if((!0!==b||3!=h.nodeType||!h.previousSibling||3!=h.previousSibling.nodeType)&&(f++,f==e)){c=h;break}}else c=c.childNodes[e]}return c?new CKEDITOR.dom.node(c):null},getElementsByTag:function(a,b){return CKEDITOR.env.ie&&8>=document.documentMode||!b||(a=b+":"+a),new CKEDITOR.dom.nodeList(this.$.getElementsByTagName(a))},getHead:function(){var a=this.$.getElementsByTagName("head")[0];return a=a?new CKEDITOR.dom.element(a):this.getDocumentElement().append(new CKEDITOR.dom.element("head"),!0)},getBody:function(){return new CKEDITOR.dom.element(this.$.body)},getDocumentElement:function(){return new CKEDITOR.dom.element(this.$.documentElement)},getWindow:function(){return new CKEDITOR.dom.window(this.$.parentWindow||this.$.defaultView)},write:function(a){this.$.open("text/html","replace"),CKEDITOR.env.ie&&(a=a.replace(/(?:^\s*<!DOCTYPE[^>]*?>)|^/i,'$&\n<script data-cke-temp="1">('+CKEDITOR.tools.fixDomain+")();</script>")),this.$.write(a),this.$.close()},find:function(a){return new CKEDITOR.dom.nodeList(this.$.querySelectorAll(a))},findOne:function(a){return(a=this.$.querySelector(a))?new CKEDITOR.dom.element(a):null},_getHtml5ShivFrag:function(){var a=this.getCustomData("html5ShivFrag");return a||(a=this.$.createDocumentFragment(),CKEDITOR.tools.enableHtml5Elements(a,!0),this.setCustomData("html5ShivFrag",a)),a}}),CKEDITOR.dom.nodeList=function(a){this.$=a},CKEDITOR.dom.nodeList.prototype={count:function(){return this.$.length},getItem:function(a){return 0>a||a>=this.$.length?null:(a=this.$[a])?new CKEDITOR.dom.node(a):null}},CKEDITOR.dom.element=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createElement(a)),CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.element.get=function(a){return(a="string"==typeof a?document.getElementById(a)||document.getElementsByName(a)[0]:a)&&(a.$?a:new CKEDITOR.dom.element(a))},CKEDITOR.dom.element.prototype=new CKEDITOR.dom.node,CKEDITOR.dom.element.createFromHtml=function(a,b){var c=new CKEDITOR.dom.element("div",b);return c.setHtml(a),c.getFirst().remove()},CKEDITOR.dom.element.setMarker=function(a,b,c,d){var e=b.getCustomData("list_marker_id")||b.setCustomData("list_marker_id",CKEDITOR.tools.getNextNumber()).getCustomData("list_marker_id"),f=b.getCustomData("list_marker_names")||b.setCustomData("list_marker_names",{}).getCustomData("list_marker_names");return a[e]=b,f[c]=1,b.setCustomData(c,d)},CKEDITOR.dom.element.clearAllMarkers=function(a){for(var b in a)CKEDITOR.dom.element.clearMarkers(a,a[b],1)},CKEDITOR.dom.element.clearMarkers=function(a,b,c){var d,e=b.getCustomData("list_marker_names"),f=b.getCustomData("list_marker_id");for(d in e)b.removeCustomData(d);b.removeCustomData("list_marker_names"),c&&(b.removeCustomData("list_marker_id"),delete a[f])},function(){function a(a,b){return-1<(" "+a+" ").replace(f," ").indexOf(" "+b+" ")}function b(a){var b=!0;return a.$.id||(a.$.id="cke_tmp_"+CKEDITOR.tools.getNextNumber(),b=!1),function(){b||a.removeAttribute("id")}}function c(a,b){return"#"+a.$.id+" "+b.split(/,\s*/).join(", #"+a.$.id+" ")}function d(a){for(var b=0,c=0,d=g[a].length;d>c;c++)b+=parseInt(this.getComputedStyle(g[a][c])||0,10)||0;return b}var e=document.createElement("_").classList,e="undefined"!=typeof e&&null!==String(e.add).match(/\[Native code\]/gi),f=/[\n\t\r]/g;CKEDITOR.tools.extend(CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_ELEMENT,addClass:e?function(a){return this.$.classList.add(a),this}:function(b){var c=this.$.className;return c&&(a(c,b)||(c+=" "+b)),this.$.className=c||b,this},removeClass:e?function(a){var b=this.$;return b.classList.remove(a),b.className||b.removeAttribute("class"),this}:function(b){var c=this.getAttribute("class");return c&&a(c,b)&&((c=c.replace(new RegExp("(?:^|\\s+)"+b+"(?=\\s|$)"),"").replace(/^\s+/,""))?this.setAttribute("class",c):this.removeAttribute("class")),this},hasClass:function(b){return a(this.$.className,b)},append:function(a,b){return"string"==typeof a&&(a=this.getDocument().createElement(a)),b?this.$.insertBefore(a.$,this.$.firstChild):this.$.appendChild(a.$),a},appendHtml:function(a){if(this.$.childNodes.length){var b=new CKEDITOR.dom.element("div",this.getDocument());b.setHtml(a),b.moveChildren(this)}else this.setHtml(a)},appendText:function(a){null!=this.$.text&&CKEDITOR.env.ie&&9>CKEDITOR.env.version?this.$.text+=a:this.append(new CKEDITOR.dom.text(a))},appendBogus:function(a){if(a||CKEDITOR.env.needsBrFiller){for(a=this.getLast();a&&a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.rtrim(a.getText());)a=a.getPrevious();a&&a.is&&a.is("br")||(a=this.getDocument().createElement("br"),CKEDITOR.env.gecko&&a.setAttribute("type","_moz"),this.append(a))}},breakParent:function(a,b){var c=new CKEDITOR.dom.range(this.getDocument());c.setStartAfter(this),c.setEndAfter(a);var d=c.extractContents(!1,b||!1);c.insertNode(this.remove()),d.insertAfterNode(this)},contains:document.compareDocumentPosition?function(a){return!!(16&this.$.compareDocumentPosition(a.$))}:function(a){var b=this.$;return a.type!=CKEDITOR.NODE_ELEMENT?b.contains(a.getParent().$):b!=a.$&&b.contains(a.$)},focus:function(){function a(){try{this.$.focus()}catch(a){}}return function(b){b?CKEDITOR.tools.setTimeout(a,100,this):a.call(this)}}(),getHtml:function(){var a=this.$.innerHTML;return CKEDITOR.env.ie?a.replace(/<\?[^>]*>/g,""):a},getOuterHtml:function(){if(this.$.outerHTML)return this.$.outerHTML.replace(/<\?[^>]*>/,"");var a=this.$.ownerDocument.createElement("div");return a.appendChild(this.$.cloneNode(!0)),a.innerHTML},getClientRect:function(){var a=CKEDITOR.tools.extend({},this.$.getBoundingClientRect());return!a.width&&(a.width=a.right-a.left),!a.height&&(a.height=a.bottom-a.top),a},setHtml:CKEDITOR.env.ie&&9>CKEDITOR.env.version?function(a){try{var b=this.$;if(this.getParent())return b.innerHTML=a;var c=this.getDocument()._getHtml5ShivFrag();return c.appendChild(b),b.innerHTML=a,c.removeChild(b),a}catch(d){for(this.$.innerHTML="",b=new CKEDITOR.dom.element("body",this.getDocument()),b.$.innerHTML=a,b=b.getChildren();b.count();)this.append(b.getItem(0));return a}}:function(a){return this.$.innerHTML=a},setText:function(){var a=document.createElement("p");return a.innerHTML="x",a=a.textContent,function(b){this.$[a?"textContent":"innerText"]=b}}(),getAttribute:function(){var a=function(a){return this.$.getAttribute(a,2)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){switch(a){case"class":a="className";break;case"http-equiv":a="httpEquiv";break;case"name":return this.$.name;case"tabindex":return a=this.$.getAttribute(a,2),0!==a&&0===this.$.tabIndex&&(a=null),a;case"checked":return a=this.$.attributes.getNamedItem(a),(a.specified?a.nodeValue:this.$.checked)?"checked":null;case"hspace":case"value":return this.$[a];case"style":return this.$.style.cssText;case"contenteditable":case"contentEditable":return this.$.attributes.getNamedItem("contentEditable").specified?this.$.getAttribute("contentEditable"):null}return this.$.getAttribute(a,2)}:a}(),getAttributes:function(a){var b,c={},d=this.$.attributes;for(a=CKEDITOR.tools.isArray(a)?a:[],b=0;b<d.length;b++)-1===CKEDITOR.tools.indexOf(a,d[b].name)&&(c[d[b].name]=d[b].value);return c},getChildren:function(){return new CKEDITOR.dom.nodeList(this.$.childNodes)},getComputedStyle:document.defaultView&&document.defaultView.getComputedStyle?function(a){var b=this.getWindow().$.getComputedStyle(this.$,null);return b?b.getPropertyValue(a):""}:function(a){return this.$.currentStyle[CKEDITOR.tools.cssStyleToDomStyle(a)]},getDtd:function(){var a=CKEDITOR.dtd[this.getName()];return this.getDtd=function(){return a},a},getElementsByTag:CKEDITOR.dom.document.prototype.getElementsByTag,getTabIndex:function(){var a=this.$.tabIndex;return 0!==a||CKEDITOR.dtd.$tabIndex[this.getName()]||0===parseInt(this.getAttribute("tabindex"),10)?a:-1},getText:function(){return this.$.textContent||this.$.innerText||""},getWindow:function(){return this.getDocument().getWindow()},getId:function(){return this.$.id||null},getNameAtt:function(){return this.$.name||null},getName:function(){var a=this.$.nodeName.toLowerCase();if(CKEDITOR.env.ie&&8>=document.documentMode){var b=this.$.scopeName;"HTML"!=b&&(a=b.toLowerCase()+":"+a)}return this.getName=function(){return a},this.getName()},getValue:function(){return this.$.value},getFirst:function(a){var b=this.$.firstChild;return(b=b&&new CKEDITOR.dom.node(b))&&a&&!a(b)&&(b=b.getNext(a)),b},getLast:function(a){var b=this.$.lastChild;return(b=b&&new CKEDITOR.dom.node(b))&&a&&!a(b)&&(b=b.getPrevious(a)),b},getStyle:function(a){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]},is:function(){var a=this.getName();if("object"==typeof arguments[0])return!!arguments[0][a];for(var b=0;b<arguments.length;b++)if(arguments[b]==a)return!0;return!1},isEditable:function(a){var b=this.getName();return this.isReadOnly()||"none"==this.getComputedStyle("display")||"hidden"==this.getComputedStyle("visibility")||CKEDITOR.dtd.$nonEditable[b]||CKEDITOR.dtd.$empty[b]||this.is("a")&&(this.data("cke-saved-name")||this.hasAttribute("name"))&&!this.getChildCount()?!1:!1!==a?(a=CKEDITOR.dtd[b]||CKEDITOR.dtd.span,!(!a||!a["#"])):!0},isIdentical:function(a){var b=this.clone(0,1);if(a=a.clone(0,1),b.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]),a.removeAttributes(["_moz_dirty","data-cke-expando","data-cke-saved-href","data-cke-saved-name"]),b.$.isEqualNode)return b.$.style.cssText=CKEDITOR.tools.normalizeCssText(b.$.style.cssText),a.$.style.cssText=CKEDITOR.tools.normalizeCssText(a.$.style.cssText),b.$.isEqualNode(a.$);if(b=b.getOuterHtml(),a=a.getOuterHtml(),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&this.is("a")){var c=this.getParent();c.type==CKEDITOR.NODE_ELEMENT&&(c=c.clone(),c.setHtml(b),b=c.getHtml(),c.setHtml(a),a=c.getHtml())}return b==a},isVisible:function(){var a,b,c=(this.$.offsetHeight||this.$.offsetWidth)&&"hidden"!=this.getComputedStyle("visibility");return c&&CKEDITOR.env.webkit&&(a=this.getWindow(),!a.equals(CKEDITOR.document.getWindow())&&(b=a.$.frameElement)&&(c=new CKEDITOR.dom.element(b).isVisible())),!!c},isEmptyInlineRemoveable:function(){if(!CKEDITOR.dtd.$removeEmpty[this.getName()])return!1;for(var a=this.getChildren(),b=0,c=a.count();c>b;b++){var d=a.getItem(b);if((d.type!=CKEDITOR.NODE_ELEMENT||!d.data("cke-bookmark"))&&(d.type==CKEDITOR.NODE_ELEMENT&&!d.isEmptyInlineRemoveable()||d.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(d.getText())))return!1}return!0},hasAttributes:CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(){for(var a=this.$.attributes,b=0;b<a.length;b++){var c=a[b];switch(c.nodeName){case"class":if(this.getAttribute("class"))return!0;case"data-cke-expando":continue;default:if(c.specified)return!0}}return!1}:function(){var a=this.$.attributes,b=a.length,c={"data-cke-expando":1,_moz_dirty:1};return b>0&&(b>2||!c[a[0].nodeName]||2==b&&!c[a[1].nodeName])},hasAttribute:function(){function a(a){var b=this.$.attributes.getNamedItem(a);if("input"==this.getName())switch(a){case"class":return 0<this.$.className.length;case"checked":return!!this.$.checked;case"value":return a=this.getAttribute("type"),"checkbox"==a||"radio"==a?"on"!=this.$.value:!!this.$.value}return b?b.specified:!1}return CKEDITOR.env.ie?8>CKEDITOR.env.version?function(b){return"name"==b?!!this.$.name:a.call(this,b)}:a:function(a){return!!this.$.attributes.getNamedItem(a)}}(),hide:function(){this.setStyle("display","none")},moveChildren:function(a,b){var c=this.$;if(a=a.$,c!=a){var d;if(b)for(;d=c.lastChild;)a.insertBefore(c.removeChild(d),a.firstChild);else for(;d=c.firstChild;)a.appendChild(c.removeChild(d))}},mergeSiblings:function(){function a(a,b,c){if(b&&b.type==CKEDITOR.NODE_ELEMENT){for(var d=[];b.data("cke-bookmark")||b.isEmptyInlineRemoveable();)if(d.push(b),b=c?b.getNext():b.getPrevious(),!b||b.type!=CKEDITOR.NODE_ELEMENT)return;if(a.isIdentical(b)){for(var e=c?a.getLast():a.getFirst();d.length;)d.shift().move(a,!c);b.moveChildren(a,!c),b.remove(),e&&e.type==CKEDITOR.NODE_ELEMENT&&e.mergeSiblings()}}}return function(b){(!1===b||CKEDITOR.dtd.$removeEmpty[this.getName()]||this.is("a"))&&(a(this,this.getNext(),!0),a(this,this.getPrevious()))}}(),show:function(){this.setStyles({display:"",visibility:""})},setAttribute:function(){var a=function(a,b){return this.$.setAttribute(a,b),this};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(b,c){return"class"==b?this.$.className=c:"style"==b?this.$.style.cssText=c:"tabindex"==b?this.$.tabIndex=c:"checked"==b?this.$.checked=c:"contenteditable"==b?a.call(this,"contentEditable",c):a.apply(this,arguments), -this}:CKEDITOR.env.ie8Compat&&CKEDITOR.env.secure?function(b,c){if("src"==b&&c.match(/^http:\/\//))try{a.apply(this,arguments)}catch(d){}else a.apply(this,arguments);return this}:a}(),setAttributes:function(a){for(var b in a)this.setAttribute(b,a[b]);return this},setValue:function(a){return this.$.value=a,this},removeAttribute:function(){var a=function(a){this.$.removeAttribute(a)};return CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)?function(a){"class"==a?a="className":"tabindex"==a?a="tabIndex":"contenteditable"==a&&(a="contentEditable"),this.$.removeAttribute(a)}:a}(),removeAttributes:function(a){if(CKEDITOR.tools.isArray(a))for(var b=0;b<a.length;b++)this.removeAttribute(a[b]);else for(b in a=a||this.getAttributes())a.hasOwnProperty(b)&&this.removeAttribute(b)},removeStyle:function(a){var b=this.$.style;if(b.removeProperty||"border"!=a&&"margin"!=a&&"padding"!=a)b.removeProperty?b.removeProperty(a):b.removeAttribute(CKEDITOR.tools.cssStyleToDomStyle(a)),this.$.style.cssText||this.removeAttribute("style");else{var c,d=["top","left","right","bottom"];"border"==a&&(c=["color","style","width"]);for(var b=[],e=0;e<d.length;e++)if(c)for(var f=0;f<c.length;f++)b.push([a,d[e],c[f]].join("-"));else b.push([a,d[e]].join("-"));for(a=0;a<b.length;a++)this.removeStyle(b[a])}},setStyle:function(a,b){return this.$.style[CKEDITOR.tools.cssStyleToDomStyle(a)]=b,this},setStyles:function(a){for(var b in a)this.setStyle(b,a[b]);return this},setOpacity:function(a){CKEDITOR.env.ie&&9>CKEDITOR.env.version?(a=Math.round(100*a),this.setStyle("filter",a>=100?"":"progid:DXImageTransform.Microsoft.Alpha(opacity="+a+")")):this.setStyle("opacity",a)},unselectable:function(){if(this.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select","none")),CKEDITOR.env.ie){this.setAttribute("unselectable","on");for(var a,b=this.getElementsByTag("*"),c=0,d=b.count();d>c;c++)a=b.getItem(c),a.setAttribute("unselectable","on")}},getPositionedAncestor:function(){for(var a=this;"html"!=a.getName();){if("static"!=a.getComputedStyle("position"))return a;a=a.getParent()}return null},getDocumentPosition:function(a){var b=0,c=0,d=this.getDocument(),e=d.getBody(),f="BackCompat"==d.$.compatMode;if(document.documentElement.getBoundingClientRect){var g=this.$.getBoundingClientRect(),h=d.$.documentElement,i=h.clientTop||e.$.clientTop||0,j=h.clientLeft||e.$.clientLeft||0,k=!0;CKEDITOR.env.ie&&(k=d.getDocumentElement().contains(this),d=d.getBody().contains(this),k=f&&d||!f&&k),k&&(CKEDITOR.env.webkit||CKEDITOR.env.ie&&12<=CKEDITOR.env.version?(b=e.$.scrollLeft||h.scrollLeft,c=e.$.scrollTop||h.scrollTop):(c=f?e.$:h,b=c.scrollLeft,c=c.scrollTop),b=g.left+b-j,c=g.top+c-i)}else for(i=this,j=null;i&&"body"!=i.getName()&&"html"!=i.getName();){for(b+=i.$.offsetLeft-i.$.scrollLeft,c+=i.$.offsetTop-i.$.scrollTop,i.equals(this)||(b+=i.$.clientLeft||0,c+=i.$.clientTop||0);j&&!j.equals(i);)b-=j.$.scrollLeft,c-=j.$.scrollTop,j=j.getParent();j=i,i=(g=i.$.offsetParent)?new CKEDITOR.dom.element(g):null}return a&&(g=this.getWindow(),i=a.getWindow(),!g.equals(i)&&g.$.frameElement&&(a=new CKEDITOR.dom.element(g.$.frameElement).getDocumentPosition(a),b+=a.x,c+=a.y)),document.documentElement.getBoundingClientRect||!CKEDITOR.env.gecko||f||(b+=this.$.clientLeft?1:0,c+=this.$.clientTop?1:0),{x:b,y:c}},scrollIntoView:function(a){var b=this.getParent();if(b)do if((b.$.clientWidth&&b.$.clientWidth<b.$.scrollWidth||b.$.clientHeight&&b.$.clientHeight<b.$.scrollHeight)&&!b.is("body")&&this.scrollIntoParent(b,a,1),b.is("html")){var c=b.getWindow();try{var d=c.$.frameElement;d&&(b=new CKEDITOR.dom.element(d))}catch(e){}}while(b=b.getParent())},scrollIntoParent:function(a,b,c){function d(b,c){/body|html/.test(a.getName())?a.getWindow().$.scrollBy(b,c):(a.$.scrollLeft+=b,a.$.scrollTop+=c)}function e(a,b){var c={x:0,y:0};if(!a.is(k?"body":"html")){var d=a.$.getBoundingClientRect();c.x=d.left,c.y=d.top}return d=a.getWindow(),d.equals(b)||(d=e(CKEDITOR.dom.element.get(d.$.frameElement),b),c.x+=d.x,c.y+=d.y),c}function f(a,b){return parseInt(a.getComputedStyle("margin-"+b)||0,10)||0}var g,h,i,j;!a&&(a=this.getWindow()),i=a.getDocument();var k="BackCompat"==i.$.compatMode;a instanceof CKEDITOR.dom.window&&(a=k?i.getBody():i.getDocumentElement()),i=a.getWindow(),h=e(this,i);var l=e(a,i),m=this.$.offsetHeight;g=this.$.offsetWidth;var n=a.$.clientHeight,o=a.$.clientWidth;i=h.x-f(this,"left")-l.x||0,j=h.y-f(this,"top")-l.y||0,g=h.x+g+f(this,"right")-(l.x+o)||0,h=h.y+m+f(this,"bottom")-(l.y+n)||0,(0>j||h>0)&&d(0,!0===b?j:!1===b?h:0>j?j:h),c&&(0>i||g>0)&&d(0>i?i:g,0)},setState:function(a,b,c){switch(b=b||"cke",a){case CKEDITOR.TRISTATE_ON:this.addClass(b+"_on"),this.removeClass(b+"_off"),this.removeClass(b+"_disabled"),c&&this.setAttribute("aria-pressed",!0),c&&this.removeAttribute("aria-disabled");break;case CKEDITOR.TRISTATE_DISABLED:this.addClass(b+"_disabled"),this.removeClass(b+"_off"),this.removeClass(b+"_on"),c&&this.setAttribute("aria-disabled",!0),c&&this.removeAttribute("aria-pressed");break;default:this.addClass(b+"_off"),this.removeClass(b+"_on"),this.removeClass(b+"_disabled"),c&&this.removeAttribute("aria-pressed"),c&&this.removeAttribute("aria-disabled")}},getFrameDocument:function(){var a=this.$;try{a.contentWindow.document}catch(b){a.src=a.src}return a&&new CKEDITOR.dom.document(a.contentWindow.document)},copyAttributes:function(a,b){var c=this.$.attributes;b=b||{};for(var d=0;d<c.length;d++){var e,f=c[d],g=f.nodeName.toLowerCase();g in b||("checked"==g&&(e=this.getAttribute(g))?a.setAttribute(g,e):CKEDITOR.env.ie&&!this.hasAttribute(g)||(e=this.getAttribute(g),null===e&&(e=f.nodeValue),a.setAttribute(g,e)))}""!==this.$.style.cssText&&(a.$.style.cssText=this.$.style.cssText)},renameNode:function(a){if(this.getName()!=a){var b=this.getDocument();a=new CKEDITOR.dom.element(a,b),this.copyAttributes(a),this.moveChildren(a),this.getParent(!0)&&this.$.parentNode.replaceChild(a.$,this.$),a.$["data-cke-expando"]=this.$["data-cke-expando"],this.$=a.$,delete this.getName}},getChild:function(){function a(a,b){var c=a.childNodes;return b>=0&&b<c.length?c[b]:void 0}return function(b){var c=this.$;if(b.slice)for(b=b.slice();0<b.length&&c;)c=a(c,b.shift());else c=a(c,b);return c?new CKEDITOR.dom.node(c):null}}(),getChildCount:function(){return this.$.childNodes.length},disableContextMenu:function(){function a(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_enable_context_menu")}this.on("contextmenu",function(b){b.data.getTarget().getAscendant(a,!0)||b.data.preventDefault()})},getDirection:function(a){return a?this.getComputedStyle("direction")||this.getDirection()||this.getParent()&&this.getParent().getDirection(1)||this.getDocument().$.dir||"ltr":this.getStyle("direction")||this.getAttribute("dir")},data:function(a,b){return a="data-"+a,void 0===b?this.getAttribute(a):(!1===b?this.removeAttribute(a):this.setAttribute(a,b),null)},getEditor:function(){var a,b,c=CKEDITOR.instances;for(a in c)if(b=c[a],b.element.equals(this)&&b.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO)return b;return null},find:function(a){var d=b(this);return a=new CKEDITOR.dom.nodeList(this.$.querySelectorAll(c(this,a))),d(),a},findOne:function(a){var d=b(this);return a=this.$.querySelector(c(this,a)),d(),a?new CKEDITOR.dom.element(a):null},forEach:function(a,b,c){if(!(c||b&&this.type!=b))var d=a(this);if(!1!==d){c=this.getChildren();for(var e=0;e<c.count();e++)d=c.getItem(e),d.type==CKEDITOR.NODE_ELEMENT?d.forEach(a,b):b&&d.type!=b||a(d)}}});var g={width:["border-left-width","border-right-width","padding-left","padding-right"],height:["border-top-width","border-bottom-width","padding-top","padding-bottom"]};CKEDITOR.dom.element.prototype.setSize=function(a,b,c){"number"==typeof b&&(!c||CKEDITOR.env.ie&&CKEDITOR.env.quirks||(b-=d.call(this,a)),this.setStyle(a,b+"px"))},CKEDITOR.dom.element.prototype.getSize=function(a,b){var c=Math.max(this.$["offset"+CKEDITOR.tools.capitalize(a)],this.$["client"+CKEDITOR.tools.capitalize(a)])||0;return b&&(c-=d.call(this,a)),c}}(),CKEDITOR.dom.documentFragment=function(a){a=a||CKEDITOR.document,this.$=a.type==CKEDITOR.NODE_DOCUMENT?a.$.createDocumentFragment():a},CKEDITOR.tools.extend(CKEDITOR.dom.documentFragment.prototype,CKEDITOR.dom.element.prototype,{type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,insertAfterNode:function(a){a=a.$,a.parentNode.insertBefore(this.$,a.nextSibling)},getHtml:function(){var a=new CKEDITOR.dom.element("div");return this.clone(1,1).appendTo(a),a.getHtml().replace(/\s*data-cke-expando=".*?"/g,"")}},!0,{append:1,appendBogus:1,clone:1,getFirst:1,getHtml:1,getLast:1,getParent:1,getNext:1,getPrevious:1,appendTo:1,moveChildren:1,insertBefore:1,insertAfterNode:1,replace:1,trim:1,type:1,ltrim:1,rtrim:1,getDocument:1,getChildCount:1,getChild:1,getChildren:1}),function(){function a(a,b){var c=this.range;if(this._.end)return null;if(!this._.start){if(this._.start=1,c.collapsed)return this.end(),null;c.optimize()}var d,e=c.startContainer;d=c.endContainer;var f,g=c.startOffset,h=c.endOffset,i=this.guard,j=this.type,k=a?"getPreviousSourceNode":"getNextSourceNode";if(!a&&!this._.guardLTR){var l=d.type==CKEDITOR.NODE_ELEMENT?d:d.getParent(),m=d.type==CKEDITOR.NODE_ELEMENT?d.getChild(h):d.getNext();this._.guardLTR=function(a,b){return!(b&&l.equals(a)||m&&a.equals(m)||a.type==CKEDITOR.NODE_ELEMENT&&b&&a.equals(c.root))}}if(a&&!this._.guardRTL){var n=e.type==CKEDITOR.NODE_ELEMENT?e:e.getParent(),o=e.type==CKEDITOR.NODE_ELEMENT?g?e.getChild(g-1):null:e.getPrevious();this._.guardRTL=function(a,b){return!(b&&n.equals(a)||o&&a.equals(o)||a.type==CKEDITOR.NODE_ELEMENT&&b&&a.equals(c.root))}}var p=a?this._.guardRTL:this._.guardLTR;for(f=i?function(a,b){return!1===p(a,b)?!1:i(a,b)}:p,this.current?d=this.current[k](!1,j,f):(a?d.type==CKEDITOR.NODE_ELEMENT&&(d=h>0?d.getChild(h-1):!1===f(d,!0)?null:d.getPreviousSourceNode(!0,j,f)):(d=e,d.type==CKEDITOR.NODE_ELEMENT&&((d=d.getChild(g))||(d=!1===f(e,!0)?null:e.getNextSourceNode(!0,j,f)))),d&&!1===f(d)&&(d=null));d&&!this._.end;){if(this.current=d,this.evaluator&&!1===this.evaluator(d)){if(b&&this.evaluator)return!1}else if(!b)return d;d=d[k](!1,j,f)}return this.end(),this.current=null}function b(b){for(var c,d=null;c=a.call(this,b);)d=c;return d}CKEDITOR.dom.walker=CKEDITOR.tools.createClass({$:function(a){this.range=a,this._={}},proto:{end:function(){this._.end=1},next:function(){return a.call(this)},previous:function(){return a.call(this,1)},checkForward:function(){return!1!==a.call(this,0,1)},checkBackward:function(){return!1!==a.call(this,1,1)},lastForward:function(){return b.call(this)},lastBackward:function(){return b.call(this,1)},reset:function(){delete this.current,this._={}}}});var c={block:1,"list-item":1,table:1,"table-row-group":1,"table-header-group":1,"table-footer-group":1,"table-row":1,"table-column-group":1,"table-column":1,"table-cell":1,"table-caption":1},d={absolute:1,fixed:1};CKEDITOR.dom.element.prototype.isBlockBoundary=function(a){return"none"!=this.getComputedStyle("float")||this.getComputedStyle("position")in d||!c[this.getComputedStyle("display")]?!!(this.is(CKEDITOR.dtd.$block)||a&&this.is(a)):!0},CKEDITOR.dom.walker.blockBoundary=function(a){return function(b){return!(b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary(a))}},CKEDITOR.dom.walker.listItemBoundary=function(){return this.blockBoundary({br:1})},CKEDITOR.dom.walker.bookmark=function(a,b){function c(a){return a&&a.getName&&"span"==a.getName()&&a.data("cke-bookmark")}return function(d){var e,f;return e=d&&d.type!=CKEDITOR.NODE_ELEMENT&&(f=d.getParent())&&c(f),e=a?e:e||c(d),!!(b^e)}},CKEDITOR.dom.walker.whitespaces=function(a){return function(b){var c;return b&&b.type==CKEDITOR.NODE_TEXT&&(c=!CKEDITOR.tools.trim(b.getText())||CKEDITOR.env.webkit&&b.getText()==CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE),!!(a^c)}},CKEDITOR.dom.walker.invisible=function(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.env.webkit?1:0;return function(d){return b(d)?d=1:(d.type==CKEDITOR.NODE_TEXT&&(d=d.getParent()),d=d.$.offsetWidth<=c),!!(a^d)}},CKEDITOR.dom.walker.nodeType=function(a,b){return function(c){return!!(b^c.type==a)}},CKEDITOR.dom.walker.bogus=function(a){function b(a){return!f(a)&&!g(a)}return function(c){var d=CKEDITOR.env.needsBrFiller?c.is&&c.is("br"):c.getText&&e.test(c.getText());return d&&(d=c.getParent(),c=c.getNext(b),d=d.isBlockBoundary()&&(!c||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary())),!!(a^d)}},CKEDITOR.dom.walker.temp=function(a){return function(b){return b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent()),b=b&&b.hasAttribute("data-cke-temp"),!!(a^b)}};var e=/^[\t\r\n ]*(?: |\xa0)$/,f=CKEDITOR.dom.walker.whitespaces(),g=CKEDITOR.dom.walker.bookmark(),h=CKEDITOR.dom.walker.temp(),i=function(a){return g(a)||f(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.is(CKEDITOR.dtd.$inline)&&!a.is(CKEDITOR.dtd.$empty)};CKEDITOR.dom.walker.ignored=function(a){return function(b){return b=f(b)||g(b)||h(b),!!(a^b)}};var j=CKEDITOR.dom.walker.ignored();CKEDITOR.dom.walker.empty=function(a){return function(b){for(var c=0,d=b.getChildCount();d>c;++c)if(!j(b.getChild(c)))return!!a;return!a}};var k=CKEDITOR.dom.walker.empty(),l=CKEDITOR.dom.walker.validEmptyBlockContainers=CKEDITOR.tools.extend(function(a){var b,c={};for(b in a)CKEDITOR.dtd[b]["#"]&&(c[b]=1);return c}(CKEDITOR.dtd.$block),{caption:1,td:1,th:1});CKEDITOR.dom.walker.editable=function(a){return function(b){return b=j(b)?!1:!!(b.type==CKEDITOR.NODE_TEXT||b.type==CKEDITOR.NODE_ELEMENT&&(b.is(CKEDITOR.dtd.$inline)||b.is("hr")||"false"==b.getAttribute("contenteditable")||!CKEDITOR.env.needsBrFiller&&b.is(l)&&k(b))),!!(a^b)}},CKEDITOR.dom.element.prototype.getBogus=function(){var a=this;do a=a.getPreviousSourceNode();while(i(a));return a&&(CKEDITOR.env.needsBrFiller?a.is&&a.is("br"):a.getText&&e.test(a.getText()))?a:!1}}(),CKEDITOR.dom.range=function(a){this.endOffset=this.endContainer=this.startOffset=this.startContainer=null,this.collapsed=!0;var b=a instanceof CKEDITOR.dom.document;this.document=b?a:a.getDocument(),this.root=b?a.getBody():a},function(){function a(a){a.collapsed=a.startContainer&&a.endContainer&&a.startContainer.equals(a.endContainer)&&a.startOffset==a.endOffset}function b(a,b,c,d,e){function f(a,b,c,d){var f=c?a.getPrevious():a.getNext();return d&&i?f:(k||d?b.append(a.clone(!0,e),c):(a.remove(),j&&b.append(a)),f)}function g(){var a,b,c,d=Math.min(y.length,z.length);for(a=0;d>a;a++)if(b=y[a],c=z[a],!b.equals(c))return a;return a-1}function h(){var b=A-1,c=n&&o&&!r.equals(s);B-1>b||C-1>b||c?(c?a.moveToPosition(s,CKEDITOR.POSITION_BEFORE_START):C==b+1&&m?a.moveToPosition(z[b],CKEDITOR.POSITION_BEFORE_END):a.moveToPosition(z[b+1],CKEDITOR.POSITION_BEFORE_START),d&&(b=y[b+1])&&b.type==CKEDITOR.NODE_ELEMENT&&(c=CKEDITOR.dom.element.createFromHtml('<span data-cke-bookmark="1" style="display:none"> </span>',a.document),c.insertAfter(b),b.mergeSiblings(!1),a.moveToBookmark({startNode:c}))):a.collapse(!0)}a.optimizeBookmark();var i=0===b,j=1==b,k=2==b;b=k||j;var l,m,n,o,p,q,r=a.startContainer,s=a.endContainer,t=a.startOffset,u=a.endOffset;if(k&&s.type==CKEDITOR.NODE_TEXT&&r.equals(s))r=a.document.createText(r.substring(t,u)),c.append(r);else{s.type==CKEDITOR.NODE_TEXT?k?q=!0:s=s.split(u):0<s.getChildCount()?u>=s.getChildCount()?(s=s.getChild(u-1),m=!0):s=s.getChild(u):o=m=!0,r.type==CKEDITOR.NODE_TEXT?k?p=!0:r.split(t):0<r.getChildCount()?0===t?(r=r.getChild(t),l=!0):r=r.getChild(t-1):n=l=!0;for(var v,w,x,y=r.getParents(),z=s.getParents(),A=g(),B=y.length-1,C=z.length-1,D=c,E=-1,F=A;B>=F;F++){for(w=y[F],x=w.getNext(),F!=B||w.equals(z[F])&&C>B?b&&(v=D.append(w.clone(0,e))):l?f(w,D,!1,n):p&&D.append(a.document.createText(w.substring(t)));x;){if(x.equals(z[F])){E=F;break}x=f(x,D)}D=v}for(D=c,F=A;C>=F;F++)if(c=z[F],x=c.getPrevious(),c.equals(y[F]))b&&(D=D.getChild(0));else{if(F!=C||c.equals(y[F])&&B>C?b&&(v=D.append(c.clone(0,e))):m?f(c,D,!1,o):q&&D.append(a.document.createText(c.substring(0,u))),F>E)for(;x;)x=f(x,D,!0);D=v}k||h()}}function c(){var a=!1,b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(!0),d=CKEDITOR.dom.walker.bogus();return function(e){return c(e)||b(e)?!0:d(e)&&!a?a=!0:!(e.type==CKEDITOR.NODE_TEXT&&(e.hasAscendant("pre")||CKEDITOR.tools.trim(e.getText()).length)||e.type==CKEDITOR.NODE_ELEMENT&&!e.is(f))}}function d(a){var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(1);return function(d){return c(d)||b(d)?!0:!a&&g(d)||d.type==CKEDITOR.NODE_ELEMENT&&d.is(CKEDITOR.dtd.$removeEmpty)}}function e(a){return function(){var b;return this[a?"getPreviousNode":"getNextNode"](function(a){return!b&&j(a)&&(b=a),i(a)&&!(g(a)&&a.equals(b))})}}var f={abbr:1,acronym:1,b:1,bdo:1,big:1,cite:1,code:1,del:1,dfn:1,em:1,font:1,i:1,ins:1,label:1,kbd:1,q:1,samp:1,small:1,span:1,strike:1,strong:1,sub:1,sup:1,tt:1,u:1,"var":1},g=CKEDITOR.dom.walker.bogus(),h=/^[\t\r\n ]*(?: |\xa0)$/,i=CKEDITOR.dom.walker.editable(),j=CKEDITOR.dom.walker.ignored(!0);CKEDITOR.dom.range.prototype={clone:function(){var a=new CKEDITOR.dom.range(this.root);return a._setStartContainer(this.startContainer),a.startOffset=this.startOffset,a._setEndContainer(this.endContainer),a.endOffset=this.endOffset,a.collapsed=this.collapsed,a},collapse:function(a){a?(this._setEndContainer(this.startContainer),this.endOffset=this.startOffset):(this._setStartContainer(this.endContainer),this.startOffset=this.endOffset),this.collapsed=!0},cloneContents:function(a){var c=new CKEDITOR.dom.documentFragment(this.document);return this.collapsed||b(this,2,c,!1,"undefined"==typeof a?!0:a),c},deleteContents:function(a){this.collapsed||b(this,0,null,a)},extractContents:function(a,c){var d=new CKEDITOR.dom.documentFragment(this.document);return this.collapsed||b(this,1,d,a,"undefined"==typeof c?!0:c),d},createBookmark:function(a){var b,c,d,e,f=this.collapsed;return b=this.document.createElement("span"),b.data("cke-bookmark",1),b.setStyle("display","none"),b.setHtml(" "),a&&(d="cke_bm_"+CKEDITOR.tools.getNextNumber(),b.setAttribute("id",d+(f?"C":"S"))),f||(c=b.clone(),c.setHtml(" "),a&&c.setAttribute("id",d+"E"),e=this.clone(),e.collapse(),e.insertNode(c)),e=this.clone(),e.collapse(!0),e.insertNode(b),c?(this.setStartAfter(b),this.setEndBefore(c)):this.moveToPosition(b,CKEDITOR.POSITION_AFTER_END),{startNode:a?d+(f?"C":"S"):b,endNode:a?d+"E":c,serializable:a,collapsed:f}},createBookmark2:function(){function a(a){var b,d=a.container,e=a.offset;b=d;var f=e;if(b=b.type!=CKEDITOR.NODE_ELEMENT||0===f||f==b.getChildCount()?0:b.getChild(f-1).type==CKEDITOR.NODE_TEXT&&b.getChild(f).type==CKEDITOR.NODE_TEXT,b&&(d=d.getChild(e-1),e=d.getLength()),d.type==CKEDITOR.NODE_ELEMENT&&e>0){a:{for(b=d;e--;)if(f=b.getChild(e).getIndex(!0),f>=0){e=f;break a}e=-1}e+=1}if(d.type==CKEDITOR.NODE_TEXT){for(b=d,f=0;(b=b.getPrevious())&&b.type==CKEDITOR.NODE_TEXT;)f+=b.getText().replace(CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE,"").length;b=f,d.getText()?e+=b:(f=d.getPrevious(c),b?(e=b,d=f?f.getNext():d.getParent().getFirst()):(d=d.getParent(),e=f?f.getIndex(!0)+1:0))}a.container=d,a.offset=e}function b(a,b){var c=b.getCustomData("cke-fillingChar");if(c){var d=a.container;c.equals(d)&&(a.offset-=CKEDITOR.dom.selection.FILLING_CHAR_SEQUENCE.length,0>=a.offset&&(a.offset=d.getIndex(),a.container=d.getParent()))}}var c=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_TEXT,!0);return function(c){var d=this.collapsed,e={container:this.startContainer,offset:this.startOffset},f={container:this.endContainer,offset:this.endOffset};return c&&(a(e),b(e,this.root),d||(a(f),b(f,this.root))),{start:e.container.getAddress(c),end:d?null:f.container.getAddress(c),startOffset:e.offset,endOffset:f.offset,normalized:c,collapsed:d,is2:!0}}}(),moveToBookmark:function(a){if(a.is2){var b=this.document.getByAddress(a.start,a.normalized),c=a.startOffset,d=a.end&&this.document.getByAddress(a.end,a.normalized);a=a.endOffset,this.setStart(b,c),d?this.setEnd(d,a):this.collapse(!0)}else b=(c=a.serializable)?this.document.getById(a.startNode):a.startNode,a=c?this.document.getById(a.endNode):a.endNode,this.setStartBefore(b),b.remove(),a?(this.setEndBefore(a),a.remove()):this.collapse(!0)},getBoundaryNodes:function(){var a,b=this.startContainer,c=this.endContainer,d=this.startOffset,e=this.endOffset;if(b.type==CKEDITOR.NODE_ELEMENT)if(a=b.getChildCount(),a>d)b=b.getChild(d);else if(1>a)b=b.getPreviousSourceNode();else{for(b=b.$;b.lastChild;)b=b.lastChild;b=new CKEDITOR.dom.node(b),b=b.getNextSourceNode()||b}if(c.type==CKEDITOR.NODE_ELEMENT)if(a=c.getChildCount(),a>e)c=c.getChild(e).getPreviousSourceNode(!0);else if(1>a)c=c.getPreviousSourceNode();else{for(c=c.$;c.lastChild;)c=c.lastChild;c=new CKEDITOR.dom.node(c)}return b.getPosition(c)&CKEDITOR.POSITION_FOLLOWING&&(b=c),{startNode:b,endNode:c}},getCommonAncestor:function(a,b){var c=this.startContainer,d=this.endContainer,c=c.equals(d)?a&&c.type==CKEDITOR.NODE_ELEMENT&&this.startOffset==this.endOffset-1?c.getChild(this.startOffset):c:c.getCommonAncestor(d);return b&&!c.is?c.getParent():c},optimize:function(){var a=this.startContainer,b=this.startOffset;a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setStartAfter(a):this.setStartBefore(a)),a=this.endContainer,b=this.endOffset,a.type!=CKEDITOR.NODE_ELEMENT&&(b?b>=a.getLength()&&this.setEndAfter(a):this.setEndBefore(a))},optimizeBookmark:function(){var a=this.startContainer,b=this.endContainer;a.is&&a.is("span")&&a.data("cke-bookmark")&&this.setStartAt(a,CKEDITOR.POSITION_BEFORE_START),b&&b.is&&b.is("span")&&b.data("cke-bookmark")&&this.setEndAt(b,CKEDITOR.POSITION_AFTER_END)},trim:function(a,b){var c=this.startContainer,d=this.startOffset,e=this.collapsed;if((!a||e)&&c&&c.type==CKEDITOR.NODE_TEXT){if(d)if(d>=c.getLength())d=c.getIndex()+1,c=c.getParent();else{var f=c.split(d),d=c.getIndex()+1,c=c.getParent();this.startContainer.equals(this.endContainer)?this.setEnd(f,this.endOffset-this.startOffset):c.equals(this.endContainer)&&(this.endOffset+=1)}else d=c.getIndex(),c=c.getParent();if(this.setStart(c,d),e)return void this.collapse(!0)}c=this.endContainer,d=this.endOffset,b||e||!c||c.type!=CKEDITOR.NODE_TEXT||(d?(d>=c.getLength()||c.split(d),d=c.getIndex()+1):d=c.getIndex(),c=c.getParent(),this.setEnd(c,d))},enlarge:function(a,b){function c(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.hasAttribute("contenteditable")?null:a}var d=new RegExp(/[^\s\ufeff]/);switch(a){case CKEDITOR.ENLARGE_INLINE:var e=1;case CKEDITOR.ENLARGE_ELEMENT:var f=function(a,b){var c=new CKEDITOR.dom.range(o);c.setStart(a,b),c.setEndAt(o,CKEDITOR.POSITION_BEFORE_END);var e,c=new CKEDITOR.dom.walker(c);for(c.guard=function(a){return!(a.type==CKEDITOR.NODE_ELEMENT&&a.isBlockBoundary())};e=c.next();){if(e.type!=CKEDITOR.NODE_TEXT)return!1;if(m=e!=a?e.getText():e.substring(b),d.test(m))return!1}return!0};if(this.collapsed)break;var g,h,i,j,k,l,m,n=this.getCommonAncestor(),o=this.root,p=!1;l=this.startContainer;var q=this.startOffset;for(l.type==CKEDITOR.NODE_TEXT?(q&&(l=!CKEDITOR.tools.trim(l.substring(0,q)).length&&l,p=!!l),l&&((j=l.getPrevious())||(i=l.getParent()))):(q&&(j=l.getChild(q-1)||l.getLast()),j||(i=l)),i=c(i);i||j;){if(i&&!j){if(!k&&i.equals(n)&&(k=!0),e?i.isBlockBoundary():!o.contains(i))break;p&&"inline"==i.getComputedStyle("display")||(p=!1,k?g=i:this.setStartBefore(i)),j=i.getPrevious()}for(;j;)if(l=!1,j.type==CKEDITOR.NODE_COMMENT)j=j.getPrevious();else{if(j.type==CKEDITOR.NODE_TEXT)m=j.getText(),d.test(m)&&(j=null),l=/[\s\ufeff]$/.test(m);else if((j.$.offsetWidth>(CKEDITOR.env.webkit?1:0)||b&&j.is("br"))&&!j.data("cke-bookmark"))if(p&&CKEDITOR.dtd.$removeEmpty[j.getName()]){if(m=j.getText(),d.test(m))j=null;else for(var r,q=j.$.getElementsByTagName("*"),s=0;r=q[s++];)if(!CKEDITOR.dtd.$removeEmpty[r.nodeName.toLowerCase()]){j=null;break}j&&(l=!!m.length)}else j=null;if(l&&(p?k?g=i:i&&this.setStartBefore(i):p=!0),j){if(l=j.getPrevious(),!i&&!l){i=j,j=null;break}j=l}else i=null}i&&(i=c(i.getParent()))}for(l=this.endContainer,q=this.endOffset,i=j=null,k=p=!1,l.type==CKEDITOR.NODE_TEXT?CKEDITOR.tools.trim(l.substring(q)).length?p=!0:(p=!l.getLength(),q==l.getLength()?(j=l.getNext())||(i=l.getParent()):f(l,q)&&(i=l.getParent())):(j=l.getChild(q))||(i=l);i||j;){if(i&&!j){if(!k&&i.equals(n)&&(k=!0),e?i.isBlockBoundary():!o.contains(i))break;p&&"inline"==i.getComputedStyle("display")||(p=!1,k?h=i:i&&this.setEndAfter(i)),j=i.getNext()}for(;j;){if(l=!1,j.type==CKEDITOR.NODE_TEXT)m=j.getText(),f(j,0)||(j=null),l=/^[\s\ufeff]/.test(m);else if(j.type==CKEDITOR.NODE_ELEMENT){if((0<j.$.offsetWidth||b&&j.is("br"))&&!j.data("cke-bookmark"))if(p&&CKEDITOR.dtd.$removeEmpty[j.getName()]){if(m=j.getText(),d.test(m))j=null;else for(q=j.$.getElementsByTagName("*"),s=0;r=q[s++];)if(!CKEDITOR.dtd.$removeEmpty[r.nodeName.toLowerCase()]){j=null;break}j&&(l=!!m.length)}else j=null}else l=1;if(l&&p&&(k?h=i:this.setEndAfter(i)),j){if(l=j.getNext(),!i&&!l){i=j,j=null;break}j=l}else i=null}i&&(i=c(i.getParent()))}g&&h&&(n=g.contains(h)?h:g,this.setStartBefore(n),this.setEndAfter(n));break;case CKEDITOR.ENLARGE_BLOCK_CONTENTS:case CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:i=new CKEDITOR.dom.range(this.root),o=this.root,i.setStartAt(o,CKEDITOR.POSITION_AFTER_START),i.setEnd(this.startContainer,this.startOffset),i=new CKEDITOR.dom.walker(i);var t,u,v=CKEDITOR.dom.walker.blockBoundary(a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?{br:1}:null),w=null,x=function(a){if(a.type==CKEDITOR.NODE_ELEMENT&&"false"==a.getAttribute("contenteditable"))if(w){if(w.equals(a))return void(w=null)}else w=a;else if(w)return;var b=v(a);return b||(t=a),b},e=function(a){var b=x(a);return!b&&a.is&&a.is("br")&&(u=a),b};if(i.guard=x,i=i.lastBackward(),t=t||o,this.setStartAt(t,!t.is("br")&&(!i&&this.checkStartOfBlock()||i&&t.contains(i))?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_AFTER_END),a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS){i=this.clone(),i=new CKEDITOR.dom.walker(i);var y=CKEDITOR.dom.walker.whitespaces(),z=CKEDITOR.dom.walker.bookmark();if(i.evaluator=function(a){return!y(a)&&!z(a)},(i=i.previous())&&i.type==CKEDITOR.NODE_ELEMENT&&i.is("br"))break}i=this.clone(),i.collapse(),i.setEndAt(o,CKEDITOR.POSITION_BEFORE_END),i=new CKEDITOR.dom.walker(i),i.guard=a==CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS?e:x,t=w=u=null,i=i.lastForward(),t=t||o,this.setEndAt(t,!i&&this.checkEndOfBlock()||i&&t.contains(i)?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_BEFORE_START),u&&this.setEndAfter(u)}},shrink:function(a,b,c){if(!this.collapsed){a=a||CKEDITOR.SHRINK_TEXT;var d=this.clone(),e=this.startContainer,f=this.endContainer,g=this.startOffset,h=this.endOffset,i=1,j=1;e&&e.type==CKEDITOR.NODE_TEXT&&(g?g>=e.getLength()?d.setStartAfter(e):(d.setStartBefore(e),i=0):d.setStartBefore(e)),f&&f.type==CKEDITOR.NODE_TEXT&&(h?h>=f.getLength()?d.setEndAfter(f):(d.setEndAfter(f),j=0):d.setEndBefore(f));var d=new CKEDITOR.dom.walker(d),k=CKEDITOR.dom.walker.bookmark();d.evaluator=function(b){return b.type==(a==CKEDITOR.SHRINK_ELEMENT?CKEDITOR.NODE_ELEMENT:CKEDITOR.NODE_TEXT)};var l;return d.guard=function(b,d){return k(b)?!0:a==CKEDITOR.SHRINK_ELEMENT&&b.type==CKEDITOR.NODE_TEXT||d&&b.equals(l)||!1===c&&b.type==CKEDITOR.NODE_ELEMENT&&b.isBlockBoundary()||b.type==CKEDITOR.NODE_ELEMENT&&b.hasAttribute("contenteditable")?!1:(d||b.type!=CKEDITOR.NODE_ELEMENT||(l=b),!0)},i&&(e=d[a==CKEDITOR.SHRINK_ELEMENT?"lastForward":"next"]())&&this.setStartAt(e,b?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_START),j&&(d.reset(),(d=d[a==CKEDITOR.SHRINK_ELEMENT?"lastBackward":"previous"]())&&this.setEndAt(d,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_END)),!(!i&&!j)}},insertNode:function(a){this.optimizeBookmark(),this.trim(!1,!0);var b=this.startContainer,c=b.getChild(this.startOffset);c?a.insertBefore(c):b.append(a),a.getParent()&&a.getParent().equals(this.endContainer)&&this.endOffset++,this.setStartBefore(a)},moveToPosition:function(a,b){this.setStartAt(a,b),this.collapse(!0)},moveToRange:function(a){this.setStart(a.startContainer,a.startOffset),this.setEnd(a.endContainer,a.endOffset)},selectNodeContents:function(a){this.setStart(a,0),this.setEnd(a,a.type==CKEDITOR.NODE_TEXT?a.getLength():a.getChildCount())},setStart:function(b,c){b.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[b.getName()]&&(c=b.getIndex(),b=b.getParent()),this._setStartContainer(b),this.startOffset=c,this.endContainer||(this._setEndContainer(b),this.endOffset=c),a(this)},setEnd:function(b,c){b.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$empty[b.getName()]&&(c=b.getIndex()+1,b=b.getParent()),this._setEndContainer(b),this.endOffset=c,this.startContainer||(this._setStartContainer(b),this.startOffset=c),a(this)},setStartAfter:function(a){this.setStart(a.getParent(),a.getIndex()+1)},setStartBefore:function(a){this.setStart(a.getParent(),a.getIndex())},setEndAfter:function(a){this.setEnd(a.getParent(),a.getIndex()+1)},setEndBefore:function(a){this.setEnd(a.getParent(),a.getIndex())},setStartAt:function(b,c){switch(c){case CKEDITOR.POSITION_AFTER_START:this.setStart(b,0);break;case CKEDITOR.POSITION_BEFORE_END:b.type==CKEDITOR.NODE_TEXT?this.setStart(b,b.getLength()):this.setStart(b,b.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setStartBefore(b);break;case CKEDITOR.POSITION_AFTER_END:this.setStartAfter(b)}a(this)},setEndAt:function(b,c){switch(c){case CKEDITOR.POSITION_AFTER_START:this.setEnd(b,0);break;case CKEDITOR.POSITION_BEFORE_END:b.type==CKEDITOR.NODE_TEXT?this.setEnd(b,b.getLength()):this.setEnd(b,b.getChildCount());break;case CKEDITOR.POSITION_BEFORE_START:this.setEndBefore(b);break;case CKEDITOR.POSITION_AFTER_END:this.setEndAfter(b)}a(this)},fixBlock:function(a,b){var c=this.createBookmark(),d=this.document.createElement(b);this.collapse(a),this.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS),this.extractContents().appendTo(d),d.trim(),this.insertNode(d);var e=d.getBogus();return e&&e.remove(),d.appendBogus(),this.moveToBookmark(c),d},splitBlock:function(a,b){var c=new CKEDITOR.dom.elementPath(this.startContainer,this.root),d=new CKEDITOR.dom.elementPath(this.endContainer,this.root),e=c.block,f=d.block,g=null;return c.blockLimit.equals(d.blockLimit)?("br"!=a&&(e||(e=this.fixBlock(!0,a),f=new CKEDITOR.dom.elementPath(this.endContainer,this.root).block),f||(f=this.fixBlock(!1,a))),c=e&&this.checkStartOfBlock(),d=f&&this.checkEndOfBlock(),this.deleteContents(),e&&e.equals(f)&&(d?(g=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(f,CKEDITOR.POSITION_AFTER_END),f=null):c?(g=new CKEDITOR.dom.elementPath(this.startContainer,this.root),this.moveToPosition(e,CKEDITOR.POSITION_BEFORE_START),e=null):(f=this.splitElement(e,b||!1),e.is("ul","ol")||e.appendBogus())),{previousBlock:e,nextBlock:f,wasStartOfBlock:c,wasEndOfBlock:d,elementPath:g}):null},splitElement:function(a,b){if(!this.collapsed)return null;this.setEndAt(a,CKEDITOR.POSITION_BEFORE_END);var c=this.extractContents(!1,b||!1),d=a.clone(!1,b||!1);return c.appendTo(d),d.insertAfter(a),this.moveToPosition(a,CKEDITOR.POSITION_AFTER_END),d},removeEmptyBlocksAtEnd:function(){function a(a){return function(d){return!(b(d)||c(d)||d.type==CKEDITOR.NODE_ELEMENT&&d.isEmptyInlineRemoveable()||a.is("table")&&d.is("caption"))}}var b=CKEDITOR.dom.walker.whitespaces(),c=CKEDITOR.dom.walker.bookmark(!1);return function(b){for(var c,d=this.createBookmark(),e=this[b?"endPath":"startPath"](),f=e.block||e.blockLimit;f&&!f.equals(e.root)&&!f.getFirst(a(f));)c=f.getParent(),this[b?"setEndAt":"setStartAt"](f,CKEDITOR.POSITION_AFTER_END),f.remove(1),f=c;this.moveToBookmark(d)}}(),startPath:function(){return new CKEDITOR.dom.elementPath(this.startContainer,this.root)},endPath:function(){return new CKEDITOR.dom.elementPath(this.endContainer,this.root)},checkBoundaryOfElement:function(a,b){var c=b==CKEDITOR.START,e=this.clone();return e.collapse(c),e[c?"setStartAt":"setEndAt"](a,c?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END),e=new CKEDITOR.dom.walker(e),e.evaluator=d(c),e[c?"checkBackward":"checkForward"]()},checkStartOfBlock:function(){var a=this.startContainer,b=this.startOffset; -return CKEDITOR.env.ie&&b&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.ltrim(a.substring(0,b)),h.test(a)&&this.trim(0,1)),this.trim(),a=new CKEDITOR.dom.elementPath(this.startContainer,this.root),b=this.clone(),b.collapse(!0),b.setStartAt(a.block||a.blockLimit,CKEDITOR.POSITION_AFTER_START),a=new CKEDITOR.dom.walker(b),a.evaluator=c(),a.checkBackward()},checkEndOfBlock:function(){var a=this.endContainer,b=this.endOffset;return CKEDITOR.env.ie&&a.type==CKEDITOR.NODE_TEXT&&(a=CKEDITOR.tools.rtrim(a.substring(b)),h.test(a)&&this.trim(1,0)),this.trim(),a=new CKEDITOR.dom.elementPath(this.endContainer,this.root),b=this.clone(),b.collapse(!1),b.setEndAt(a.block||a.blockLimit,CKEDITOR.POSITION_BEFORE_END),a=new CKEDITOR.dom.walker(b),a.evaluator=c(),a.checkForward()},getPreviousNode:function(a,b,c){var d=this.clone();return d.collapse(1),d.setStartAt(c||this.root,CKEDITOR.POSITION_AFTER_START),c=new CKEDITOR.dom.walker(d),c.evaluator=a,c.guard=b,c.previous()},getNextNode:function(a,b,c){var d=this.clone();return d.collapse(),d.setEndAt(c||this.root,CKEDITOR.POSITION_BEFORE_END),c=new CKEDITOR.dom.walker(d),c.evaluator=a,c.guard=b,c.next()},checkReadOnly:function(){function a(a,b){for(;a;){if(a.type==CKEDITOR.NODE_ELEMENT){if("false"==a.getAttribute("contentEditable")&&!a.data("cke-editable"))return 0;if(a.is("html")||"true"==a.getAttribute("contentEditable")&&(a.contains(b)||a.equals(b)))break}a=a.getParent()}return 1}return function(){var b=this.startContainer,c=this.endContainer;return!(a(b,c)&&a(c,b))}}(),moveToElementEditablePosition:function(a,b){if(a.type==CKEDITOR.NODE_ELEMENT&&!a.isEditable(!1))return this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START),!0;for(var c=0;a;){if(a.type==CKEDITOR.NODE_TEXT){b&&this.endContainer&&this.checkEndOfBlock()&&h.test(a.getText())?this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START):this.moveToPosition(a,b?CKEDITOR.POSITION_AFTER_END:CKEDITOR.POSITION_BEFORE_START),c=1;break}if(a.type==CKEDITOR.NODE_ELEMENT)if(a.isEditable())this.moveToPosition(a,b?CKEDITOR.POSITION_BEFORE_END:CKEDITOR.POSITION_AFTER_START),c=1;else if(b&&a.is("br")&&this.endContainer&&this.checkEndOfBlock())this.moveToPosition(a,CKEDITOR.POSITION_BEFORE_START);else if("false"==a.getAttribute("contenteditable")&&a.is(CKEDITOR.dtd.$block))return this.setStartBefore(a),this.setEndAfter(a),!0;var d=a,e=c,f=void 0;d.type==CKEDITOR.NODE_ELEMENT&&d.isEditable(!1)&&(f=d[b?"getLast":"getFirst"](j)),e||f||(f=d[b?"getPrevious":"getNext"](j)),a=f}return!!c},moveToClosestEditablePosition:function(a,b){var c,d,e,f=0,g=[CKEDITOR.POSITION_AFTER_END,CKEDITOR.POSITION_BEFORE_START];return a?(c=new CKEDITOR.dom.range(this.root),c.moveToPosition(a,g[b?0:1])):c=this.clone(),a&&!a.is(CKEDITOR.dtd.$block)?f=1:(d=c[b?"getNextEditableNode":"getPreviousEditableNode"]())&&(f=1,(e=d.type==CKEDITOR.NODE_ELEMENT)&&d.is(CKEDITOR.dtd.$block)&&"false"==d.getAttribute("contenteditable")?(c.setStartAt(d,CKEDITOR.POSITION_BEFORE_START),c.setEndAt(d,CKEDITOR.POSITION_AFTER_END)):!CKEDITOR.env.needsBrFiller&&e&&d.is(CKEDITOR.dom.walker.validEmptyBlockContainers)?(c.setEnd(d,0),c.collapse()):c.moveToPosition(d,g[b?1:0])),f&&this.moveToRange(c),!!f},moveToElementEditStart:function(a){return this.moveToElementEditablePosition(a)},moveToElementEditEnd:function(a){return this.moveToElementEditablePosition(a,!0)},getEnclosedNode:function(){var a=this.clone();if(a.optimize(),a.startContainer.type!=CKEDITOR.NODE_ELEMENT||a.endContainer.type!=CKEDITOR.NODE_ELEMENT)return null;var a=new CKEDITOR.dom.walker(a),b=CKEDITOR.dom.walker.bookmark(!1,!0),c=CKEDITOR.dom.walker.whitespaces(!0);a.evaluator=function(a){return c(a)&&b(a)};var d=a.next();return a.reset(),d&&d.equals(a.previous())?d:null},getTouchedStartNode:function(){var a=this.startContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.startOffset)||a},getTouchedEndNode:function(){var a=this.endContainer;return this.collapsed||a.type!=CKEDITOR.NODE_ELEMENT?a:a.getChild(this.endOffset-1)||a},getNextEditableNode:e(),getPreviousEditableNode:e(1),scrollIntoView:function(){var a,b,c,d=new CKEDITOR.dom.element.createFromHtml("<span> </span>",this.document),e=this.clone();e.optimize(),(c=e.startContainer.type==CKEDITOR.NODE_TEXT)?(b=e.startContainer.getText(),a=e.startContainer.split(e.startOffset),d.insertAfter(e.startContainer)):e.insertNode(d),d.scrollIntoView(),c&&(e.startContainer.setText(b),a.remove()),d.remove()},_setStartContainer:function(a){this.startContainer=a},_setEndContainer:function(a){this.endContainer=a}}}(),CKEDITOR.POSITION_AFTER_START=1,CKEDITOR.POSITION_BEFORE_END=2,CKEDITOR.POSITION_BEFORE_START=3,CKEDITOR.POSITION_AFTER_END=4,CKEDITOR.ENLARGE_ELEMENT=1,CKEDITOR.ENLARGE_BLOCK_CONTENTS=2,CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS=3,CKEDITOR.ENLARGE_INLINE=4,CKEDITOR.START=1,CKEDITOR.END=2,CKEDITOR.SHRINK_ELEMENT=1,CKEDITOR.SHRINK_TEXT=2,function(){function a(a){1>arguments.length||(this.range=a,this.forceBrBreak=0,this.enlargeBr=1,this.enforceRealBlocks=0,this._||(this._={}))}function b(a){var b=[];return a.forEach(function(a){return"true"==a.getAttribute("contenteditable")?(b.push(a),!1):void 0},CKEDITOR.NODE_ELEMENT,!0),b}function c(a,d,e,f){a:{null==f&&(f=b(e));for(var g;g=f.shift();)if(g.getDtd().p){f={element:g,remaining:f};break a}f=null}return f?(g=CKEDITOR.filter.instances[f.element.data("cke-filter")])&&!g.check(d)?c(a,d,e,f.remaining):(d=new CKEDITOR.dom.range(f.element),d.selectNodeContents(f.element),d=d.createIterator(),d.enlargeBr=a.enlargeBr,d.enforceRealBlocks=a.enforceRealBlocks,d.activeFilter=d.filter=g,a._.nestedEditable={element:f.element,container:e,remaining:f.remaining,iterator:d},1):0}function d(a,b,c){return b?(a=a.clone(),a.collapse(!c),a.checkBoundaryOfElement(b,c?CKEDITOR.START:CKEDITOR.END)):!1}var e=/^[\r\n\t ]+$/,f=CKEDITOR.dom.walker.bookmark(!1,!0),g=CKEDITOR.dom.walker.whitespaces(!0),h=function(a){return f(a)&&g(a)},i={dd:1,dt:1,li:1};a.prototype={getNextParagraph:function(a){var b,g,j,k,l;if(a=a||"p",this._.nestedEditable){if(b=this._.nestedEditable.iterator.getNextParagraph(a))return this.activeFilter=this._.nestedEditable.iterator.activeFilter,b;if(this.activeFilter=this.filter,c(this,a,this._.nestedEditable.container,this._.nestedEditable.remaining))return this.activeFilter=this._.nestedEditable.iterator.activeFilter,this._.nestedEditable.iterator.getNextParagraph(a);this._.nestedEditable=null}if(!this.range.root.getDtd()[a])return null;if(!this._.started){var m=this.range.clone();g=m.startPath();var n=m.endPath(),o=!m.collapsed&&d(m,g.block),p=!m.collapsed&&d(m,n.block,1);m.shrink(CKEDITOR.SHRINK_ELEMENT,!0),o&&m.setStartAt(g.block,CKEDITOR.POSITION_BEFORE_END),p&&m.setEndAt(n.block,CKEDITOR.POSITION_AFTER_START),g=m.endContainer.hasAscendant("pre",!0)||m.startContainer.hasAscendant("pre",!0),m.enlarge(this.forceBrBreak&&!g||!this.enlargeBr?CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS:CKEDITOR.ENLARGE_BLOCK_CONTENTS),m.collapsed||(g=new CKEDITOR.dom.walker(m.clone()),n=CKEDITOR.dom.walker.bookmark(!0,!0),g.evaluator=n,this._.nextNode=g.next(),g=new CKEDITOR.dom.walker(m.clone()),g.evaluator=n,g=g.previous(),this._.lastNode=g.getNextSourceNode(!0,null,m.root),this._.lastNode&&this._.lastNode.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(this._.lastNode.getText())&&this._.lastNode.getParent().isBlockBoundary()&&(n=this.range.clone(),n.moveToPosition(this._.lastNode,CKEDITOR.POSITION_AFTER_END),n.checkEndOfBlock()&&(n=new CKEDITOR.dom.elementPath(n.endContainer,n.root),this._.lastNode=(n.block||n.blockLimit).getNextSourceNode(!0))),this._.lastNode&&m.root.contains(this._.lastNode)||(this._.lastNode=this._.docEndMarker=m.document.createText(""),this._.lastNode.insertAfter(g)),m=null),this._.started=1,g=m}for(n=this._.nextNode,m=this._.lastNode,this._.nextNode=null;n;){var o=0,p=n.hasAscendant("pre"),q=n.type!=CKEDITOR.NODE_ELEMENT,r=0;if(q)n.type==CKEDITOR.NODE_TEXT&&e.test(n.getText())&&(q=0);else{var s=n.getName();if(CKEDITOR.dtd.$block[s]&&"false"==n.getAttribute("contenteditable")){b=n,c(this,a,b);break}if(n.isBlockBoundary(this.forceBrBreak&&!p&&{br:1})){if("br"==s)q=1;else if(!g&&!n.getChildCount()&&"hr"!=s){b=n,j=n.equals(m);break}g&&(g.setEndAt(n,CKEDITOR.POSITION_BEFORE_START),"br"!=s&&(this._.nextNode=n)),o=1}else{if(n.getFirst()){g||(g=this.range.clone(),g.setStartAt(n,CKEDITOR.POSITION_BEFORE_START)),n=n.getFirst();continue}q=1}}if(q&&!g&&(g=this.range.clone(),g.setStartAt(n,CKEDITOR.POSITION_BEFORE_START)),j=(!o||q)&&n.equals(m),g&&!o)for(;!n.getNext(h)&&!j;){if(s=n.getParent(),s.isBlockBoundary(this.forceBrBreak&&!p&&{br:1})){o=1,q=0,j||s.equals(m),g.setEndAt(s,CKEDITOR.POSITION_BEFORE_END);break}n=s,q=1,j=n.equals(m),r=1}if(q&&g.setEndAt(n,CKEDITOR.POSITION_AFTER_END),n=this._getNextSourceNode(n,r,m),(j=!n)||o&&g)break}if(!b){if(!g)return this._.docEndMarker&&this._.docEndMarker.remove(),this._.nextNode=null;b=new CKEDITOR.dom.elementPath(g.startContainer,g.root),n=b.blockLimit,o={div:1,th:1,td:1},b=b.block,!b&&n&&!this.enforceRealBlocks&&o[n.getName()]&&g.checkStartOfBlock()&&g.checkEndOfBlock()&&!n.equals(g.root)?b=n:!b||this.enforceRealBlocks&&b.is(i)?(b=this.range.document.createElement(a),g.extractContents().appendTo(b),b.trim(),g.insertNode(b),k=l=!0):"li"!=b.getName()?g.checkStartOfBlock()&&g.checkEndOfBlock()||(b=b.clone(!1),g.extractContents().appendTo(b),b.trim(),l=g.splitBlock(),k=!l.wasStartOfBlock,l=!l.wasEndOfBlock,g.insertNode(b)):j||(this._.nextNode=b.equals(m)?null:this._getNextSourceNode(g.getBoundaryNodes().endNode,1,m))}return k&&(k=b.getPrevious())&&k.type==CKEDITOR.NODE_ELEMENT&&("br"==k.getName()?k.remove():k.getLast()&&"br"==k.getLast().$.nodeName.toLowerCase()&&k.getLast().remove()),l&&(k=b.getLast())&&k.type==CKEDITOR.NODE_ELEMENT&&"br"==k.getName()&&(!CKEDITOR.env.needsBrFiller||k.getPrevious(f)||k.getNext(f))&&k.remove(),this._.nextNode||(this._.nextNode=j||b.equals(m)||!m?null:this._getNextSourceNode(b,1,m)),b},_getNextSourceNode:function(a,b,c){function d(a){return!(a.equals(c)||a.equals(e))}var e=this.range.root;for(a=a.getNextSourceNode(b,null,d);!f(a);)a=a.getNextSourceNode(b,null,d);return a}},CKEDITOR.dom.range.prototype.createIterator=function(){return new a(this)}}(),CKEDITOR.command=function(a,b){this.uiItems=[],this.exec=function(c){return this.state!=CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()?(this.editorFocus&&a.focus(),!1===this.fire("exec")?!0:!1!==b.exec.call(this,a,c)):!1},this.refresh=function(a,c){return!this.readOnly&&a.readOnly?!0:this.context&&!c.isContextFor(this.context)||!this.checkAllowed(!0)?(this.disable(),!0):(this.startDisabled||this.enable(),this.modes&&!this.modes[a.mode]&&this.disable(),!1===this.fire("refresh",{editor:a,path:c})?!0:b.refresh&&!1!==b.refresh.apply(this,arguments))};var c;this.checkAllowed=function(b){return b||"boolean"!=typeof c?c=a.activeFilter.checkFeature(this):c},CKEDITOR.tools.extend(this,b,{modes:{wysiwyg:1},editorFocus:1,contextSensitive:!!b.context,state:CKEDITOR.TRISTATE_DISABLED}),CKEDITOR.event.call(this)},CKEDITOR.command.prototype={enable:function(){this.state==CKEDITOR.TRISTATE_DISABLED&&this.checkAllowed()&&this.setState(this.preserveState&&"undefined"!=typeof this.previousState?this.previousState:CKEDITOR.TRISTATE_OFF)},disable:function(){this.setState(CKEDITOR.TRISTATE_DISABLED)},setState:function(a){return this.state==a||a!=CKEDITOR.TRISTATE_DISABLED&&!this.checkAllowed()?!1:(this.previousState=this.state,this.state=a,this.fire("state"),!0)},toggleState:function(){this.state==CKEDITOR.TRISTATE_OFF?this.setState(CKEDITOR.TRISTATE_ON):this.state==CKEDITOR.TRISTATE_ON&&this.setState(CKEDITOR.TRISTATE_OFF)}},CKEDITOR.event.implementOn(CKEDITOR.command.prototype),CKEDITOR.ENTER_P=1,CKEDITOR.ENTER_BR=2,CKEDITOR.ENTER_DIV=3,CKEDITOR.config={customConfig:"config.js",autoUpdateElement:!0,language:"",defaultLanguage:"en",contentsLangDirection:"",enterMode:CKEDITOR.ENTER_P,forceEnterMode:!1,shiftEnterMode:CKEDITOR.ENTER_BR,docType:"<!DOCTYPE html>",bodyId:"",bodyClass:"",fullPage:!1,height:200,contentsCss:CKEDITOR.getUrl("contents.css"),extraPlugins:"",removePlugins:"",protectedSource:[],tabIndex:0,width:"",baseFloatZIndex:1e4,blockedKeystrokes:[CKEDITOR.CTRL+66,CKEDITOR.CTRL+73,CKEDITOR.CTRL+85]},function(){function a(a,b,c,d,e){var f,h;a=[];for(f in b){h=b[f],h="boolean"==typeof h?{}:"function"==typeof h?{match:h}:B(h),"$"!=f.charAt(0)&&(h.elements=f),c&&(h.featureName=c.toLowerCase());var i=h;i.elements=g(i.elements,/\s+/)||null,i.propertiesOnly=i.propertiesOnly||!0===i.elements;var j=/\s*,\s*/,k=void 0;for(k in F){i[k]=g(i[k],j)||null;var l=i,m=G[k],n=g(i[G[k]],j),o=i[k],p=[],q=!0,s=void 0;n?q=!1:n={};for(s in o)"!"==s.charAt(0)&&(s=s.slice(1),p.push(s),n[s]=!0,q=!1);for(;s=p.pop();)o[s]=o["!"+s],delete o["!"+s];l[m]=(q?!1:n)||null}i.match=i.match||null,d.push(h),a.push(h)}b=e.elements,e=e.generic;var t;for(c=0,d=a.length;d>c;++c){f=B(a[c]),h=!0===f.classes||!0===f.styles||!0===f.attributes,i=f,k=m=j=void 0;for(j in F)i[j]=r(i[j]);l=!0;for(k in G){j=G[k],m=i[j],n=[],o=void 0;for(o in m)-1<o.indexOf("*")?n.push(new RegExp("^"+o.replace(/\*/g,".*")+"$")):n.push(o);m=n,m.length&&(i[j]=m,l=!1)}if(i.nothingRequired=l,i.noProperties=!(i.attributes||i.classes||i.styles),!0===f.elements||null===f.elements)e[h?"unshift":"push"](f);else for(t in i=f.elements,delete f.elements,i)b[t]?b[t][h?"unshift":"push"](f):b[t]=[f]}}function b(a,b,d,e){if((!a.match||a.match(b))&&(e||h(a,b))&&(a.propertiesOnly||(d.valid=!0),d.allAttributes||(d.allAttributes=c(a.attributes,b.attributes,d.validAttributes)),d.allStyles||(d.allStyles=c(a.styles,b.styles,d.validStyles)),!d.allClasses)){if(a=a.classes,b=b.classes,e=d.validClasses,a)if(!0===a)a=!0;else{for(var f,g=0,i=b.length;i>g;++g)f=b[g],e[f]||(e[f]=a(f));a=!1}else a=!1;d.allClasses=a}}function c(a,b,c){if(!a)return!1;if(!0===a)return!0;for(var d in b)c[d]||(c[d]=a(d));return!1}function d(a,b,c){if(!a.match||a.match(b)){if(a.noProperties)return!1;if(c.hadInvalidAttribute=e(a.attributes,b.attributes)||c.hadInvalidAttribute,c.hadInvalidStyle=e(a.styles,b.styles)||c.hadInvalidStyle,a=a.classes,b=b.classes,a){for(var d=!1,f=!0===a,g=b.length;g--;)(f||a(b[g]))&&(b.splice(g,1),d=!0);a=d}else a=!1;c.hadInvalidClass=a||c.hadInvalidClass}}function e(a,b){if(!a)return!1;var c,d=!1,e=!0===a;for(c in b)(e||a(c))&&(delete b[c],d=!0);return d}function f(a,b,c){return a.disabled||a.customConfig&&!c||!b?!1:(a._.cachedChecks={},!0)}function g(a,b){if(!a)return!1;if(!0===a)return a;if("string"==typeof a)return a=C(a),"*"==a?!0:CKEDITOR.tools.convertArrayToObject(a.split(b));if(CKEDITOR.tools.isArray(a))return a.length?CKEDITOR.tools.convertArrayToObject(a):!1;var c,d={},e=0;for(c in a)d[c]=a[c],e++;return e?d:!1}function h(a,b){if(a.nothingRequired)return!0;var c,d,e,f;if(e=a.requiredClasses)for(f=b.classes,c=0;c<e.length;++c)if(d=e[c],"string"==typeof d){if(-1==CKEDITOR.tools.indexOf(f,d))return!1}else if(!CKEDITOR.tools.checkIfAnyArrayItemMatches(f,d))return!1;return i(b.styles,a.requiredStyles)&&i(b.attributes,a.requiredAttributes)}function i(a,b){if(!b)return!0;for(var c,d=0;d<b.length;++d)if(c=b[d],"string"==typeof c){if(!(c in a))return!1}else if(!CKEDITOR.tools.checkIfAnyObjectPropertyMatches(a,c))return!1;return!0}function j(a){if(!a)return{};a=a.split(/\s*,\s*/).sort();for(var b={};a.length;)b[a.shift()]="cke-test";return b}function k(a){var b,c,d,e,f={},g=1;for(a=C(a);b=a.match(H);)(c=b[2])?(d=l(c,"styles"),e=l(c,"attrs"),c=l(c,"classes")):d=e=c=null,f["$"+g++]={elements:b[1],classes:c,styles:d,attributes:e},a=a.slice(b[0].length);return f}function l(a,b){var c=a.match(I[b]);return c?C(c[1]):null}function m(a){var b=a.styleBackup=a.attributes.style,c=a.classBackup=a.attributes["class"];a.styles||(a.styles=CKEDITOR.tools.parseCssText(b||"",1)),a.classes||(a.classes=c?c.split(/\s+/):[])}function n(a,c,e,f){var g,h=0;if(f.toHtml&&(c.name=c.name.replace(J,"$1")),f.doCallbacks&&a.elementCallbacks){a:{g=a.elementCallbacks;for(var i,j=0,k=g.length;k>j;++j)if(i=g[j](c)){g=i;break a}g=void 0}if(g)return g}if(f.doTransform&&(g=a._.transformations[c.name])){for(m(c),j=0;j<g.length;++j)v(a,c,g[j]);p(c)}if(f.doFilter){a:{j=c.name,k=a._,a=k.allowedRules.elements[j],g=k.allowedRules.generic,j=k.disallowedRules.elements[j],k=k.disallowedRules.generic,i=f.skipRequired;var l,n,o={valid:!1,validAttributes:{},validClasses:{},validStyles:{},allAttributes:!1,allClasses:!1,allStyles:!1,hadInvalidAttribute:!1,hadInvalidClass:!1,hadInvalidStyle:!1};if(a||g){if(m(c),j)for(l=0,n=j.length;n>l;++l)if(!1===d(j[l],c,o)){a=null;break a}if(k)for(l=0,n=k.length;n>l;++l)d(k[l],c,o);if(a)for(l=0,n=a.length;n>l;++l)b(a[l],c,o,i);if(g)for(l=0,n=g.length;n>l;++l)b(g[l],c,o,i);a=o}else a=null}if(!a||!a.valid)return e.push(c),1;n=a.validAttributes;var r=a.validStyles;g=a.validClasses;var j=c.attributes,s=c.styles,k=c.classes;i=c.classBackup;var t,u,w=c.styleBackup,x=[],o=[],y=/^data-cke-/;if(l=!1,delete j.style,delete j["class"],delete c.classBackup,delete c.styleBackup,!a.allAttributes)for(t in j)n[t]||(y.test(t)?t==(u=t.replace(/^data-cke-saved-/,""))||n[u]||(delete j[t],l=!0):(delete j[t],l=!0));if(!a.allStyles||a.hadInvalidStyle){for(t in s)a.allStyles||r[t]?x.push(t+":"+s[t]):l=!0;x.length&&(j.style=x.sort().join("; "))}else w&&(j.style=w);if(!a.allClasses||a.hadInvalidClass){for(t=0;t<k.length;++t)(a.allClasses||g[k[t]])&&o.push(k[t]);o.length&&(j["class"]=o.sort().join(" ")),i&&o.length<i.split(/\s+/).length&&(l=!0)}else i&&(j["class"]=i);if(l&&(h=1),!f.skipFinalValidation&&!q(c))return e.push(c),1}return f.toHtml&&(c.name=c.name.replace(K,"cke:$1")),h}function o(a){var b,c=[];for(b in a)-1<b.indexOf("*")&&c.push(b.replace(/\*/g,".*"));return c.length?new RegExp("^(?:"+c.join("|")+")$"):null}function p(a){var b,c=a.attributes;delete c.style,delete c["class"],(b=CKEDITOR.tools.writeCssText(a.styles,!0))&&(c.style=b),a.classes.length&&(c["class"]=a.classes.sort().join(" "))}function q(a){switch(a.name){case"a":if(!(a.children.length||a.attributes.name||a.attributes.id))return!1;break;case"img":if(!a.attributes.src)return!1}return!0}function r(a){if(!a)return!1;if(!0===a)return!0;var b=o(a);return function(c){return c in a||b&&c.match(b)}}function s(){return new CKEDITOR.htmlParser.element("br")}function t(a){return a.type==CKEDITOR.NODE_ELEMENT&&("br"==a.name||A.$block[a.name])}function u(a,b,c){var d=a.name;if(A.$empty[d]||!a.children.length)"hr"==d&&"br"==b?a.replaceWith(s()):(a.parent&&c.push({check:"it",el:a.parent}),a.remove());else if(A.$block[d]||"tr"==d)if("br"==b)a.previous&&!t(a.previous)&&(b=s(),b.insertBefore(a)),a.next&&!t(a.next)&&(b=s(),b.insertAfter(a)),a.replaceWithChildren();else{var e,d=a.children;a:{e=A[b];for(var f,g=0,h=d.length;h>g;++g)if(f=d[g],f.type==CKEDITOR.NODE_ELEMENT&&!e[f.name]){e=!1;break a}e=!0}if(e)a.name=b,a.attributes={},c.push({check:"parent-down",el:a});else{e=a.parent;for(var i,j,g=e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||"body"==e.name,h=d.length;h>0;)f=d[--h],g&&(f.type==CKEDITOR.NODE_TEXT||f.type==CKEDITOR.NODE_ELEMENT&&A.$inline[f.name])?(i||(i=new CKEDITOR.htmlParser.element(b),i.insertAfter(a),c.push({check:"parent-down",el:i})),i.add(f,0)):(i=null,j=A[e.name]||A.span,f.insertAfter(a),e.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||f.type!=CKEDITOR.NODE_ELEMENT||j[f.name]||c.push({check:"el-up",el:f}));a.remove()}}else d in{style:1,script:1}?a.remove():(a.parent&&c.push({check:"it",el:a.parent}),a.replaceWithChildren())}function v(a,b,c){var d,e;for(d=0;d<c.length;++d)if(e=c[d],!(e.check&&!a.check(e.check,!1)||e.left&&!e.left(b))){e.right(b,E);break}}function w(a,b){var c,d,e,f,g=b.getDefinition(),h=g.attributes,i=g.styles;if(a.name!=g.element)return!1;for(c in h)if("class"==c){for(g=h[c].split(/\s+/),e=a.classes.join("|");f=g.pop();)if(-1==e.indexOf(f))return!1}else if(a.attributes[c]!=h[c])return!1;for(d in i)if(a.styles[d]!=i[d])return!1;return!0}function x(a,b){var c,d;return"string"==typeof a?c=a:a instanceof CKEDITOR.style?d=a:(c=a[0],d=a[1]),[{element:c,left:d,right:function(a,c){c.transform(a,b)}}]}function y(a){return function(b){return w(b,a)}}function z(a){return function(b,c){c[a](b)}}var A=CKEDITOR.dtd,B=CKEDITOR.tools.copy,C=CKEDITOR.tools.trim,D=["","p","br","div"];CKEDITOR.FILTER_SKIP_TREE=2,CKEDITOR.filter=function(a){if(this.allowedContent=[],this.disallowedContent=[],this.elementCallbacks=null,this.disabled=!1,this.editor=null,this.id=CKEDITOR.tools.getNextNumber(),this._={allowedRules:{elements:{},generic:[]},disallowedRules:{elements:{},generic:[]},transformations:{},cachedTests:{}},CKEDITOR.filter.instances[this.id]=this,a instanceof CKEDITOR.editor){a=this.editor=a,this.customConfig=!0;var b=a.config.allowedContent;!0===b?this.disabled=!0:(b||(this.customConfig=!1),this.allow(b,"config",1),this.allow(a.config.extraAllowedContent,"extra",1),this.allow(D[a.enterMode]+" "+D[a.shiftEnterMode],"default",1),this.disallow(a.config.disallowedContent))}else this.customConfig=!1,this.allow(a,"default",1)},CKEDITOR.filter.instances={},CKEDITOR.filter.prototype={allow:function(b,c,d){if(!f(this,b,d))return!1;var e,g;if("string"==typeof b)b=k(b);else if(b instanceof CKEDITOR.style){if(b.toAllowedContentRules)return this.allow(b.toAllowedContentRules(this.editor),c,d);e=b.getDefinition(),b={},d=e.attributes,b[e.element]=e={styles:e.styles,requiredStyles:e.styles&&CKEDITOR.tools.objectKeys(e.styles)},d&&(d=B(d),e.classes=d["class"]?d["class"].split(/\s+/):null,e.requiredClasses=e.classes,delete d["class"],e.attributes=d,e.requiredAttributes=d&&CKEDITOR.tools.objectKeys(d))}else if(CKEDITOR.tools.isArray(b)){for(e=0;e<b.length;++e)g=this.allow(b[e],c,d);return g}return a(this,b,c,this.allowedContent,this._.allowedRules),!0},applyTo:function(a,b,c,d){if(this.disabled)return!1;var e,f=this,g=[],h=this.editor&&this.editor.config.protectedSource,i=!1,j={doFilter:!c,doTransform:!0,doCallbacks:!0,toHtml:b};a.forEach(function(a){if(a.type==CKEDITOR.NODE_ELEMENT){if("off"==a.attributes["data-cke-filter"])return!1;if(!b||"span"!=a.name||!~CKEDITOR.tools.objectKeys(a.attributes).join("|").indexOf("data-cke-"))if(e=n(f,a,g,j),1&e)i=!0;else if(2&e)return!1}else if(a.type==CKEDITOR.NODE_COMMENT&&a.value.match(/^\{cke_protected\}(?!\{C\})/)){var c;a:{var d=decodeURIComponent(a.value.replace(/^\{cke_protected\}/,""));c=[];var k,l,m;if(h)for(l=0;l<h.length;++l)if((m=d.match(h[l]))&&m[0].length==d.length){c=!0;break a}d=CKEDITOR.htmlParser.fragment.fromHtml(d),1==d.children.length&&(k=d.children[0]).type==CKEDITOR.NODE_ELEMENT&&n(f,k,c,j),c=!c.length}c||g.push(a)}},null,!0),g.length&&(i=!0);var k;a=[],d=D[d||(this.editor?this.editor.enterMode:CKEDITOR.ENTER_P)];for(var l;c=g.pop();)c.type==CKEDITOR.NODE_ELEMENT?u(c,d,a):c.remove();for(;k=a.pop();)if(c=k.el,c.parent)switch(l=A[c.parent.name]||A.span,k.check){case"it":A.$removeEmpty[c.name]&&!c.children.length?u(c,d,a):q(c)||u(c,d,a);break;case"el-up":c.parent.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||l[c.name]||u(c,d,a);break;case"parent-down":c.parent.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT||l[c.name]||u(c.parent,d,a)}return i},checkFeature:function(a){return this.disabled||!a?!0:(a.toFeature&&(a=a.toFeature(this.editor)),!a.requiredContent||this.check(a.requiredContent))},disable:function(){this.disabled=!0},disallow:function(b){return f(this,b,!0)?("string"==typeof b&&(b=k(b)),a(this,b,null,this.disallowedContent,this._.disallowedRules),!0):!1},addContentForms:function(a){if(!this.disabled&&a){var b,c,d,e=[];for(b=0;b<a.length&&!d;++b)c=a[b],("string"==typeof c||c instanceof CKEDITOR.style)&&this.check(c)&&(d=c);if(d){for(b=0;b<a.length;++b)e.push(x(a[b],d));this.addTransformations(e)}}},addElementCallback:function(a){this.elementCallbacks||(this.elementCallbacks=[]),this.elementCallbacks.push(a)},addFeature:function(a){return this.disabled||!a?!0:(a.toFeature&&(a=a.toFeature(this.editor)),this.allow(a.allowedContent,a.name),this.addTransformations(a.contentTransformations),this.addContentForms(a.contentForms),a.requiredContent&&(this.customConfig||this.disallowedContent.length)?this.check(a.requiredContent):!0)},addTransformations:function(a){var b,c;if(!this.disabled&&a){var d,e=this._.transformations;for(d=0;d<a.length;++d){b=a[d];var f=void 0,g=void 0,h=void 0,i=void 0,j=void 0,k=void 0;for(c=[],g=0;g<b.length;++g)h=b[g],"string"==typeof h?(h=h.split(/\s*:\s*/),i=h[0],j=null,k=h[1]):(i=h.check,j=h.left,k=h.right),f||(f=h,f=f.element?f.element:i?i.match(/^([a-z0-9]+)/i)[0]:f.left.getDefinition().element),j instanceof CKEDITOR.style&&(j=y(j)),c.push({check:i==f?null:i,left:j,right:"string"==typeof k?z(k):k});b=f,e[b]||(e[b]=[]),e[b].push(c)}}},check:function(a,b,c){if(this.disabled)return!0;if(CKEDITOR.tools.isArray(a)){for(var d=a.length;d--;)if(this.check(a[d],b,c))return!0;return!1}var e,f;if("string"==typeof a){if(f=a+"<"+(!1===b?"0":"1")+(c?"1":"0")+">",f in this._.cachedChecks)return this._.cachedChecks[f];d=k(a).$1,e=d.styles;var g=d.classes;d.name=d.elements,d.classes=g=g?g.split(/\s*,\s*/):[],d.styles=j(e),d.attributes=j(d.attributes),d.children=[],g.length&&(d.attributes["class"]=g.join(" ")),e&&(d.attributes.style=CKEDITOR.tools.writeCssText(d.styles)),e=d}else d=a.getDefinition(),e=d.styles,g=d.attributes||{},e&&!CKEDITOR.tools.isEmpty(e)?(e=B(e),g.style=CKEDITOR.tools.writeCssText(e,!0)):e={},e={name:d.element,attributes:g,classes:g["class"]?g["class"].split(/\s+/):[],styles:e,children:[]};var h,g=CKEDITOR.tools.clone(e),i=[];if(!1!==b&&(h=this._.transformations[e.name])){for(d=0;d<h.length;++d)v(this,e,h[d]);p(e)}return n(this,g,i,{doFilter:!0,doTransform:!1!==b,skipRequired:!c,skipFinalValidation:!c}),b=0<i.length?!1:!!CKEDITOR.tools.objectCompare(e.attributes,g.attributes,!0),"string"==typeof a&&(this._.cachedChecks[f]=b),b},getAllowedEnterMode:function(){var a=["p","div","br"],b={p:CKEDITOR.ENTER_P,div:CKEDITOR.ENTER_DIV,br:CKEDITOR.ENTER_BR};return function(c,d){var e,f=a.slice();if(this.check(D[c]))return c;for(d||(f=f.reverse());e=f.pop();)if(this.check(e))return b[e];return CKEDITOR.ENTER_BR}}(),destroy:function(){delete CKEDITOR.filter.instances[this.id],delete this._,delete this.allowedContent,delete this.disallowedContent}};var E,F={styles:1,attributes:1,classes:1},G={styles:"requiredStyles",attributes:"requiredAttributes",classes:"requiredClasses"},H=/^([a-z0-9\-*\s]+)((?:\s*\{[!\w\-,\s\*]+\}\s*|\s*\[[!\w\-,\s\*]+\]\s*|\s*\([!\w\-,\s\*]+\)\s*){0,3})(?:;\s*|$)/i,I={styles:/{([^}]+)}/,attrs:/\[([^\]]+)\]/,classes:/\(([^\)]+)\)/},J=/^cke:(object|embed|param)$/,K=/^(object|embed|param)$/;E=CKEDITOR.filter.transformationsTools={sizeToStyle:function(a){this.lengthToStyle(a,"width"),this.lengthToStyle(a,"height")},sizeToAttribute:function(a){this.lengthToAttribute(a,"width"),this.lengthToAttribute(a,"height")},lengthToStyle:function(a,b,c){if(c=c||b,!(c in a.styles)){var d=a.attributes[b];d&&(/^\d+$/.test(d)&&(d+="px"),a.styles[c]=d)}delete a.attributes[b]},lengthToAttribute:function(a,b,c){if(c=c||b,!(c in a.attributes)){var d=a.styles[b],e=d&&d.match(/^(\d+)(?:\.\d*)?px$/);e?a.attributes[c]=e[1]:"cke-test"==d&&(a.attributes[c]="cke-test")}delete a.styles[b]},alignmentToStyle:function(a){if(!("float"in a.styles)){var b=a.attributes.align;"left"!=b&&"right"!=b||(a.styles["float"]=b)}delete a.attributes.align},alignmentToAttribute:function(a){if(!("align"in a.attributes)){var b=a.styles["float"];"left"!=b&&"right"!=b||(a.attributes.align=b)}delete a.styles["float"]},matchesStyle:w,transform:function(a,b){if("string"==typeof b)a.name=b;else{var c,d,e,f,g=b.getDefinition(),h=g.styles,i=g.attributes;a.name=g.element;for(c in i)if("class"==c)for(g=a.classes.join("|"),e=i[c].split(/\s+/);f=e.pop();)-1==g.indexOf(f)&&a.classes.push(f);else a.attributes[c]=i[c];for(d in h)a.styles[d]=h[d]}}}}(),function(){CKEDITOR.focusManager=function(a){return a.focusManager?a.focusManager:(this.hasFocus=!1,this.currentActive=null,this._={editor:a},this)},CKEDITOR.focusManager._={blurDelay:200},CKEDITOR.focusManager.prototype={focus:function(a){this._.timer&&clearTimeout(this._.timer),a&&(this.currentActive=a),this.hasFocus||this._.locked||((a=CKEDITOR.currentInstance)&&a.focusManager.blur(1),this.hasFocus=!0,(a=this._.editor.container)&&a.addClass("cke_focus"),this._.editor.fire("focus"))},lock:function(){this._.locked=1},unlock:function(){delete this._.locked},blur:function(a){function b(){if(this.hasFocus){this.hasFocus=!1;var a=this._.editor.container;a&&a.removeClass("cke_focus"),this._.editor.fire("blur")}}if(!this._.locked){this._.timer&&clearTimeout(this._.timer);var c=CKEDITOR.focusManager._.blurDelay;a||!c?b.call(this):this._.timer=CKEDITOR.tools.setTimeout(function(){delete this._.timer,b.call(this)},c,this)}},add:function(a,b){var c=a.getCustomData("focusmanager");if(!c||c!=this){c&&c.remove(a);var c="focus",d="blur";b&&(CKEDITOR.env.ie?(c="focusin",d="focusout"):CKEDITOR.event.useCapture=1);var e={blur:function(){a.equals(this.currentActive)&&this.blur()},focus:function(){this.focus(a)}};a.on(c,e.focus,this),a.on(d,e.blur,this),b&&(CKEDITOR.event.useCapture=0),a.setCustomData("focusmanager",this),a.setCustomData("focusmanager_handlers",e)}},remove:function(a){a.removeCustomData("focusmanager");var b=a.removeCustomData("focusmanager_handlers");a.removeListener("blur",b.blur),a.removeListener("focus",b.focus)}}}(),CKEDITOR.keystrokeHandler=function(a){return a.keystrokeHandler?a.keystrokeHandler:(this.keystrokes={},this.blockedKeystrokes={},this._={editor:a},this)},function(){var a,b=function(b){b=b.data;var c=b.getKeystroke(),d=this.keystrokes[c],e=this._.editor;return a=!1===e.fire("key",{keyCode:c,domEvent:b}),a||(d&&(a=!1!==e.execCommand(d,{from:"keystrokeHandler"})),a||(a=!!this.blockedKeystrokes[c])),a&&b.preventDefault(!0),!a},c=function(b){a&&(a=!1,b.data.preventDefault(!0))};CKEDITOR.keystrokeHandler.prototype={attach:function(a){a.on("keydown",b,this),CKEDITOR.env.gecko&&CKEDITOR.env.mac&&a.on("keypress",c,this)}}}(),function(){CKEDITOR.lang={languages:{af:1,ar:1,bg:1,bn:1,bs:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,"en-au":1,"en-ca":1,"en-gb":1,en:1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,"fr-ca":1,fr:1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,is:1,it:1,ja:1,ka:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,ms:1,nb:1,nl:1,no:1,pl:1,"pt-br":1,pt:1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,"sr-latn":1,sr:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,"zh-cn":1,zh:1},rtl:{ar:1,fa:1,he:1,ku:1,ug:1},load:function(a,b,c){a&&CKEDITOR.lang.languages[a]||(a=this.detect(b,a));var d=this;b=function(){d[a].dir=d.rtl[a]?"rtl":"ltr",c(a,d[a])},this[a]?b():CKEDITOR.scriptLoader.load(CKEDITOR.getUrl("lang/"+a+".js"),b,this)},detect:function(a,b){var c=this.languages;b=b||navigator.userLanguage||navigator.language||a;var d=b.toLowerCase().match(/([a-z]+)(?:-([a-z]+))?/),e=d[1],d=d[2];return c[e+"-"+d]?e=e+"-"+d:c[e]||(e=null),CKEDITOR.lang.detect=e?function(){return e}:function(a){return a},e||a}}}(),CKEDITOR.scriptLoader=function(){var a={},b={};return{load:function(c,d,e,f){var g="string"==typeof c;g&&(c=[c]),e||(e=CKEDITOR);var h=c.length,i=[],j=[],k=function(a){d&&(g?d.call(e,a):d.call(e,i,j))};if(0===h)k(!0);else{var l=function(a,b){(b?i:j).push(a),0>=--h&&(f&&CKEDITOR.document.getDocumentElement().removeStyle("cursor"),k(b))},m=function(c,d){a[c]=1;var e=b[c];delete b[c];for(var f=0;f<e.length;f++)e[f](c,d)},n=function(c){if(a[c])l(c,!0);else{var e=b[c]||(b[c]=[]);if(e.push(l),!(1<e.length)){var f=new CKEDITOR.dom.element("script");f.setAttributes({type:"text/javascript",src:c}),d&&(CKEDITOR.env.ie&&11>CKEDITOR.env.version?f.$.onreadystatechange=function(){"loaded"!=f.$.readyState&&"complete"!=f.$.readyState||(f.$.onreadystatechange=null,m(c,!0))}:(f.$.onload=function(){setTimeout(function(){m(c,!0)},0)},f.$.onerror=function(){m(c,!1)})),f.appendTo(CKEDITOR.document.getHead())}}};f&&CKEDITOR.document.getDocumentElement().setStyle("cursor","wait");for(var o=0;h>o;o++)n(c[o])}},queue:function(){function a(){var a;(a=b[0])&&this.load(a.scriptUrl,a.callback,CKEDITOR,0)}var b=[];return function(c,d){var e=this;b.push({scriptUrl:c,callback:function(){ -d&&d.apply(this,arguments),b.shift(),a.call(e)}}),1==b.length&&a.call(this)}}()}}(),CKEDITOR.resourceManager=function(a,b){this.basePath=a,this.fileName=b,this.registered={},this.loaded={},this.externals={},this._={waitingList:{}}},CKEDITOR.resourceManager.prototype={add:function(a,b){if(this.registered[a])throw Error('[CKEDITOR.resourceManager.add] The resource name "'+a+'" is already registered.');var c=this.registered[a]=b||{};return c.name=a,c.path=this.getPath(a),CKEDITOR.fire(a+CKEDITOR.tools.capitalize(this.fileName)+"Ready",c),this.get(a)},get:function(a){return this.registered[a]||null},getPath:function(a){var b=this.externals[a];return CKEDITOR.getUrl(b&&b.dir||this.basePath+a+"/")},getFilePath:function(a){var b=this.externals[a];return CKEDITOR.getUrl(this.getPath(a)+(b?b.file:this.fileName+".js"))},addExternal:function(a,b,c){a=a.split(",");for(var d=0;d<a.length;d++){var e=a[d];c||(b=b.replace(/[^\/]+$/,function(a){return c=a,""})),this.externals[e]={dir:b,file:c||this.fileName+".js"}}},load:function(a,b,c){CKEDITOR.tools.isArray(a)||(a=a?[a]:[]);for(var d=this.loaded,e=this.registered,f=[],g={},h={},i=0;i<a.length;i++){var j=a[i];if(j)if(d[j]||e[j])h[j]=this.get(j);else{var k=this.getFilePath(j);f.push(k),k in g||(g[k]=[]),g[k].push(j)}}CKEDITOR.scriptLoader.load(f,function(a,e){if(e.length)throw Error('[CKEDITOR.resourceManager.load] Resource name "'+g[e[0]].join(",")+'" was not found at "'+e[0]+'".');for(var f=0;f<a.length;f++)for(var i=g[a[f]],j=0;j<i.length;j++){var k=i[j];h[k]=this.get(k),d[k]=1}b.call(c,h)},this)}},CKEDITOR.plugins=new CKEDITOR.resourceManager("plugins/","plugin"),CKEDITOR.plugins.load=CKEDITOR.tools.override(CKEDITOR.plugins.load,function(a){var b={};return function(c,d,e){var f={},g=function(c){a.call(this,c,function(a){CKEDITOR.tools.extend(f,a);var c,h=[];for(c in a){var i=a[c],j=i&&i.requires;if(!b[c]){if(i.icons)for(var k=i.icons.split(","),l=k.length;l--;)CKEDITOR.skin.addIcon(k[l],i.path+"icons/"+(CKEDITOR.env.hidpi&&i.hidpi?"hidpi/":"")+k[l]+".png");b[c]=1}if(j)for(j.split&&(j=j.split(",")),i=0;i<j.length;i++)f[j[i]]||h.push(j[i])}if(h.length)g.call(this,h);else{for(c in f)i=f[c],i.onLoad&&!i.onLoad._called&&(!1===i.onLoad()&&delete f[c],i.onLoad._called=1);d&&d.call(e||window,f)}},this)};g.call(this,c)}}),CKEDITOR.plugins.setLang=function(a,b,c){var d=this.get(a);a=d.langEntries||(d.langEntries={}),d=d.lang||(d.lang=[]),d.split&&(d=d.split(",")),-1==CKEDITOR.tools.indexOf(d,b)&&d.push(b),a[b]=c},CKEDITOR.ui=function(a){return a.ui?a.ui:(this.items={},this.instances={},this.editor=a,this._={handlers:{}},this)},CKEDITOR.ui.prototype={add:function(a,b,c){c.name=a.toLowerCase();var d=this.items[a]={type:b,command:c.command||null,args:Array.prototype.slice.call(arguments,2)};CKEDITOR.tools.extend(d,c)},get:function(a){return this.instances[a]},create:function(a){var b=this.items[a],c=b&&this._.handlers[b.type],d=b&&b.command&&this.editor.getCommand(b.command),c=c&&c.create.apply(this,b.args);return this.instances[a]=c,d&&d.uiItems.push(c),c&&!c.type&&(c.type=b.type),c},addHandler:function(a,b){this._.handlers[a]=b},space:function(a){return CKEDITOR.document.getById(this.spaceId(a))},spaceId:function(a){return this.editor.id+"_"+a}},CKEDITOR.event.implementOn(CKEDITOR.ui),function(){function a(a,e,g){if(CKEDITOR.event.call(this),a=a&&CKEDITOR.tools.clone(a),void 0!==e){if(!(e instanceof CKEDITOR.dom.element))throw Error("Expect element of type CKEDITOR.dom.element.");if(!g)throw Error("One of the element modes must be specified.");if(CKEDITOR.env.ie&&CKEDITOR.env.quirks&&g==CKEDITOR.ELEMENT_MODE_INLINE)throw Error("Inline element mode is not supported on IE quirks.");if(!c(e,g))throw Error('The specified element mode is not supported on element: "'+e.getName()+'".');this.element=e,this.elementMode=g,this.name=this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO&&(e.getId()||e.getNameAtt())}else this.elementMode=CKEDITOR.ELEMENT_MODE_NONE;this._={},this.commands={},this.templates={},this.name=this.name||b(),this.id=CKEDITOR.tools.getNextId(),this.status="unloaded",this.config=CKEDITOR.tools.prototypedCopy(CKEDITOR.config),this.ui=new CKEDITOR.ui(this),this.focusManager=new CKEDITOR.focusManager(this),this.keystrokeHandler=new CKEDITOR.keystrokeHandler(this),this.on("readOnly",d),this.on("selectionChange",function(a){f(this,a.data.path)}),this.on("activeFilterChange",function(){f(this,this.elementPath(),!0)}),this.on("mode",d),this.on("instanceReady",function(){this.config.startupFocus&&this.focus()}),CKEDITOR.fire("instanceCreated",null,this),CKEDITOR.add(this),CKEDITOR.tools.setTimeout(function(){"destroyed"!==this.status?h(this,a):CKEDITOR.warn("editor-incorrect-destroy")},0,this)}function b(){do var a="editor"+ ++n;while(CKEDITOR.instances[a]);return a}function c(a,b){return b==CKEDITOR.ELEMENT_MODE_INLINE?a.is(CKEDITOR.dtd.$editable)||a.is("textarea"):b==CKEDITOR.ELEMENT_MODE_REPLACE?!a.is(CKEDITOR.dtd.$nonBodyContent):1}function d(){var a,b=this.commands;for(a in b)e(this,b[a])}function e(a,b){b[b.startDisabled?"disable":a.readOnly&&!b.readOnly?"disable":b.modes[a.mode]?"enable":"disable"]()}function f(a,b,c){if(b){var d,e,f=a.commands;for(e in f)d=f[e],(c||d.contextSensitive)&&d.refresh(a,b)}}function g(a){var b=a.config.customConfig;if(!b)return!1;var b=CKEDITOR.getUrl(b),c=o[b]||(o[b]={});return c.fn?(c.fn.call(a,a.config),CKEDITOR.getUrl(a.config.customConfig)!=b&&g(a)||a.fireOnce("customConfigLoaded")):CKEDITOR.scriptLoader.queue(b,function(){c.fn=CKEDITOR.editorConfig?CKEDITOR.editorConfig:function(){},g(a)}),!0}function h(a,b){a.on("customConfigLoaded",function(){if(b){if(b.on)for(var c in b.on)a.on(c,b.on[c]);CKEDITOR.tools.extend(a.config,b,!0),delete a.config.on}c=a.config,a.readOnly=c.readOnly?!0:a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.is("textarea")?a.element.hasAttribute("disabled")||a.element.hasAttribute("readonly"):a.element.isReadOnly():a.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?a.element.hasAttribute("disabled")||a.element.hasAttribute("readonly"):!1,a.blockless=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?!(a.element.is("textarea")||CKEDITOR.dtd[a.element.getName()].p):!1,a.tabIndex=c.tabIndex||a.element&&a.element.getAttribute("tabindex")||0,a.activeEnterMode=a.enterMode=a.blockless?CKEDITOR.ENTER_BR:c.enterMode,a.activeShiftEnterMode=a.shiftEnterMode=a.blockless?CKEDITOR.ENTER_BR:c.shiftEnterMode,c.skin&&(CKEDITOR.skinName=c.skin),a.fireOnce("configLoaded"),a.dataProcessor=new CKEDITOR.htmlDataProcessor(a),a.filter=a.activeFilter=new CKEDITOR.filter(a),i(a)}),b&&null!=b.customConfig&&(a.config.customConfig=b.customConfig),g(a)||a.fireOnce("customConfigLoaded")}function i(a){CKEDITOR.skin.loadPart("editor",function(){j(a)})}function j(a){CKEDITOR.lang.load(a.config.language,a.config.defaultLanguage,function(b,c){var d=a.config.title;a.langCode=b,a.lang=CKEDITOR.tools.prototypedCopy(c),a.title="string"==typeof d||!1===d?d:[a.lang.editor,a.name].join(", "),a.config.contentsLangDirection||(a.config.contentsLangDirection=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.element.getDirection(1):a.lang.dir),a.fire("langLoaded"),k(a)})}function k(a){a.getStylesSet(function(b){a.once("loaded",function(){a.fire("stylesSet",{styles:b})},null,null,1),l(a)})}function l(a){var b=a.config,c=b.plugins,d=b.extraPlugins,e=b.removePlugins;if(d)var f=new RegExp("(?:^|,)(?:"+d.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(f,""),c=c+(","+d);if(e)var g=new RegExp("(?:^|,)(?:"+e.replace(/\s*,\s*/g,"|")+")(?=,|$)","g"),c=c.replace(g,"");CKEDITOR.env.air&&(c+=",adobeair"),CKEDITOR.plugins.load(c.split(","),function(c){var d=[],e=[],f=[];a.plugins=c;for(var h in c){var i,j=c[h],k=j.lang,l=null,m=j.requires;if(CKEDITOR.tools.isArray(m)&&(m=m.join(",")),m&&(i=m.match(g)))for(;m=i.pop();)CKEDITOR.error("editor-plugin-required",{plugin:m.replace(",",""),requiredBy:h});k&&!a.lang[h]&&(k.split&&(k=k.split(",")),0<=CKEDITOR.tools.indexOf(k,a.langCode)?l=a.langCode:(l=a.langCode.replace(/-.*/,""),l=l!=a.langCode&&0<=CKEDITOR.tools.indexOf(k,l)?l:0<=CKEDITOR.tools.indexOf(k,"en")?"en":k[0]),j.langEntries&&j.langEntries[l]?(a.lang[h]=j.langEntries[l],l=null):f.push(CKEDITOR.getUrl(j.path+"lang/"+l+".js"))),e.push(l),d.push(j)}CKEDITOR.scriptLoader.load(f,function(){for(var c=["beforeInit","init","afterInit"],f=0;f<c.length;f++)for(var g=0;g<d.length;g++){var h=d[g];0===f&&e[g]&&h.lang&&h.langEntries&&(a.lang[h.name]=h.langEntries[e[g]]),h[c[f]]&&h[c[f]](a)}for(a.fireOnce("pluginsLoaded"),b.keystrokes&&a.setKeystroke(a.config.keystrokes),g=0;g<a.config.blockedKeystrokes.length;g++)a.keystrokeHandler.blockedKeystrokes[a.config.blockedKeystrokes[g]]=1;a.status="loaded",a.fireOnce("loaded"),CKEDITOR.fire("instanceLoaded",null,a)})})}function m(){var a=this.element;if(a&&this.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO){var b=this.getData();return this.config.htmlEncodeOutput&&(b=CKEDITOR.tools.htmlEncode(b)),a.is("textarea")?a.setValue(b):a.setHtml(b),!0}return!1}a.prototype=CKEDITOR.editor.prototype,CKEDITOR.editor=a;var n=0,o={};CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{addCommand:function(a,b){b.name=a.toLowerCase();var c=new CKEDITOR.command(this,b);return this.mode&&e(this,c),this.commands[a]=c},_attachToForm:function(){function a(a){c.updateElement(),c._.required&&!d.getValue()&&!1===c.fire("required")&&a.data.preventDefault()}function b(a){return!!(a&&a.call&&a.apply)}var c=this,d=c.element,e=new CKEDITOR.dom.element(d.$.form);d.is("textarea")&&e&&(e.on("submit",a),b(e.$.submit)&&(e.$.submit=CKEDITOR.tools.override(e.$.submit,function(b){return function(){a(),b.apply?b.apply(this):b()}})),c.on("destroy",function(){e.removeListener("submit",a)}))},destroy:function(a){this.fire("beforeDestroy"),!a&&m.call(this),this.editable(null),this.filter&&(this.filter.destroy(),delete this.filter),delete this.activeFilter,this.status="destroyed",this.fire("destroy"),this.removeAllListeners(),CKEDITOR.remove(this),CKEDITOR.fire("instanceDestroyed",null,this)},elementPath:function(a){if(!a){if(a=this.getSelection(),!a)return null;a=a.getStartElement()}return a?new CKEDITOR.dom.elementPath(a,this.editable()):null},createRange:function(){var a=this.editable();return a?new CKEDITOR.dom.range(a):null},execCommand:function(a,b){var c=this.getCommand(a),d={name:a,commandData:b,command:c};return c&&c.state!=CKEDITOR.TRISTATE_DISABLED&&!1!==this.fire("beforeCommandExec",d)&&(d.returnValue=c.exec(d.commandData),!c.async&&!1!==this.fire("afterCommandExec",d))?d.returnValue:!1},getCommand:function(a){return this.commands[a]},getData:function(a){!a&&this.fire("beforeGetData");var b=this._.data;return"string"!=typeof b&&(b=(b=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?b.is("textarea")?b.getValue():b.getHtml():""),b={dataValue:b},!a&&this.fire("getData",b),b.dataValue},getSnapshot:function(){var a=this.fire("getSnapshot");return"string"!=typeof a&&(a=(a=this.element)&&this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE?a.is("textarea")?a.getValue():a.getHtml():""),a},loadSnapshot:function(a){this.fire("loadSnapshot",a)},setData:function(a,b,c){var d=!0,e=b;b&&"object"==typeof b&&(c=b.internal,e=b.callback,d=!b.noSnapshot),!c&&d&&this.fire("saveSnapshot"),!e&&c||this.once("dataReady",function(a){!c&&d&&this.fire("saveSnapshot"),e&&e.call(a.editor)}),a={dataValue:a},!c&&this.fire("setData",a),this._.data=a.dataValue,!c&&this.fire("afterSetData",a)},setReadOnly:function(a){a=null==a||a,this.readOnly!=a&&(this.readOnly=a,this.keystrokeHandler.blockedKeystrokes[8]=+a,this.editable().setReadOnly(a),this.fire("readOnly"))},insertHtml:function(a,b,c){this.fire("insertHtml",{dataValue:a,mode:b,range:c})},insertText:function(a){this.fire("insertText",a)},insertElement:function(a){this.fire("insertElement",a)},getSelectedHtml:function(a){var b=this.editable(),c=this.getSelection(),c=c&&c.getRanges();if(!b||!c||0===c.length)return null;for(var d,e,f,g=new CKEDITOR.dom.documentFragment,h=0;h<c.length;h++){var i=c[h],j=i.startContainer;j.getName&&"tr"==j.getName()?(d||(d=j.getAscendant("table").clone(),d.append(j.getAscendant("tbody").clone()),g.append(d),d=d.findOne("tbody")),e&&e.equals(j)||(e=j,f=j.clone(),d.append(f)),f.append(i.cloneContents())):g.append(i.cloneContents())}return b=d?g:b.getHtmlFromRange(c[0]),a?b.getHtml():b},extractSelectedHtml:function(a,b){var c=this.editable(),d=this.getSelection().getRanges();return c&&0!==d.length?(d=d[0],c=c.extractHtmlFromRange(d,b),b||this.getSelection().selectRanges([d]),a?c.getHtml():c):null},focus:function(){this.fire("beforeFocus")},checkDirty:function(){return"ready"==this.status&&this._.previousValue!==this.getSnapshot()},resetDirty:function(){this._.previousValue=this.getSnapshot()},updateElement:function(){return m.call(this)},setKeystroke:function(){for(var a,b,c=this.keystrokeHandler.keystrokes,d=CKEDITOR.tools.isArray(arguments[0])?arguments[0]:[[].slice.call(arguments,0)],e=d.length;e--;)a=d[e],b=0,CKEDITOR.tools.isArray(a)&&(b=a[1],a=a[0]),b?c[a]=b:delete c[a]},addFeature:function(a){return this.filter.addFeature(a)},setActiveFilter:function(a){a||(a=this.filter),this.activeFilter!==a&&(this.activeFilter=a,this.fire("activeFilterChange"),a===this.filter?this.setActiveEnterMode(null,null):this.setActiveEnterMode(a.getAllowedEnterMode(this.enterMode),a.getAllowedEnterMode(this.shiftEnterMode,!0)))},setActiveEnterMode:function(a,b){a=a?this.blockless?CKEDITOR.ENTER_BR:a:this.enterMode,b=b?this.blockless?CKEDITOR.ENTER_BR:b:this.shiftEnterMode,this.activeEnterMode==a&&this.activeShiftEnterMode==b||(this.activeEnterMode=a,this.activeShiftEnterMode=b,this.fire("activeEnterModeChange"))},showNotification:function(a){alert(a)}})}(),CKEDITOR.ELEMENT_MODE_NONE=0,CKEDITOR.ELEMENT_MODE_REPLACE=1,CKEDITOR.ELEMENT_MODE_APPENDTO=2,CKEDITOR.ELEMENT_MODE_INLINE=3,CKEDITOR.htmlParser=function(){this._={htmlPartsRegex:/<(?:(?:\/([^>]+)>)|(?:!--([\S|\s]*?)--\x3e)|(?:([^\/\s>]+)((?:\s+[\w\-:.]+(?:\s*=\s*?(?:(?:"[^"]*")|(?:'[^']*')|[^\s"'\/>]+))?)*)[\S\s]*?(\/?)>))/g}},function(){var a=/([\w\-:.]+)(?:(?:\s*=\s*(?:(?:"([^"]*)")|(?:'([^']*)')|([^\s>]+)))|(?=\s|$))/g,b={checked:1,compact:1,declare:1,defer:1,disabled:1,ismap:1,multiple:1,nohref:1,noresize:1,noshade:1,nowrap:1,readonly:1,selected:1};CKEDITOR.htmlParser.prototype={onTagOpen:function(){},onTagClose:function(){},onText:function(){},onCDATA:function(){},onComment:function(){},parse:function(c){for(var d,e,f,g=0;d=this._.htmlPartsRegex.exec(c);)if(e=d.index,e>g&&(g=c.substring(g,e),f?f.push(g):this.onText(g)),g=this._.htmlPartsRegex.lastIndex,!(e=d[1])||(e=e.toLowerCase(),f&&CKEDITOR.dtd.$cdata[e]&&(this.onCDATA(f.join("")),f=null),f))if(f)f.push(d[0]);else if(e=d[3]){if(e=e.toLowerCase(),!/="/.test(e)){var h,i={},j=d[4];if(d=!!d[5],j)for(;h=a.exec(j);){var k=h[1].toLowerCase();h=h[2]||h[3]||h[4]||"",i[k]=!h&&b[k]?k:CKEDITOR.tools.htmlDecodeAttr(h)}this.onTagOpen(e,i,d),!f&&CKEDITOR.dtd.$cdata[e]&&(f=[])}}else(e=d[2])&&this.onComment(e);else this.onTagClose(e);c.length>g&&this.onText(c.substring(g,c.length))}}}(),CKEDITOR.htmlParser.basicWriter=CKEDITOR.tools.createClass({$:function(){this._={output:[]}},proto:{openTag:function(a){this._.output.push("<",a)},openTagClose:function(a,b){b?this._.output.push(" />"):this._.output.push(">")},attribute:function(a,b){"string"==typeof b&&(b=CKEDITOR.tools.htmlEncodeAttr(b)),this._.output.push(" ",a,'="',b,'"')},closeTag:function(a){this._.output.push("</",a,">")},text:function(a){this._.output.push(a)},comment:function(a){this._.output.push("<!--",a,"-->")},write:function(a){this._.output.push(a)},reset:function(){this._.output=[],this._.indent=!1},getHtml:function(a){var b=this._.output.join("");return a&&this.reset(),b}}}),function(){CKEDITOR.htmlParser.node=function(){},CKEDITOR.htmlParser.node.prototype={remove:function(){var a=this.parent.children,b=CKEDITOR.tools.indexOf(a,this),c=this.previous,d=this.next;c&&(c.next=d),d&&(d.previous=c),a.splice(b,1),this.parent=null},replaceWith:function(a){var b=this.parent.children,c=CKEDITOR.tools.indexOf(b,this),d=a.previous=this.previous,e=a.next=this.next;d&&(d.next=a),e&&(e.previous=a),b[c]=a,a.parent=this.parent,this.parent=null},insertAfter:function(a){var b=a.parent.children,c=CKEDITOR.tools.indexOf(b,a),d=a.next;b.splice(c+1,0,this),this.next=a.next,this.previous=a,a.next=this,d&&(d.previous=this),this.parent=a.parent},insertBefore:function(a){var b=a.parent.children,c=CKEDITOR.tools.indexOf(b,a);b.splice(c,0,this),this.next=a,(this.previous=a.previous)&&(a.previous.next=this),a.previous=this,this.parent=a.parent},getAscendant:function(a){for(var b=("function"==typeof a?a:"string"==typeof a?function(b){return b.name==a}:function(b){return b.name in a}),c=this.parent;c&&c.type==CKEDITOR.NODE_ELEMENT;){if(b(c))return c;c=c.parent}return null},wrapWith:function(a){return this.replaceWith(a),a.add(this),a},getIndex:function(){return CKEDITOR.tools.indexOf(this.parent.children,this)},getFilterContext:function(a){return a||{}}}}(),CKEDITOR.htmlParser.comment=function(a){this.value=a,this._={isBlockLike:!1}},CKEDITOR.htmlParser.comment.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_COMMENT,filter:function(a,b){var c=this.value;return(c=a.onComment(b,c,this))?"string"!=typeof c?(this.replaceWith(c),!1):(this.value=c,!0):(this.remove(),!1)},writeHtml:function(a,b){b&&this.filter(b),a.comment(this.value)}}),function(){CKEDITOR.htmlParser.text=function(a){this.value=a,this._={isBlockLike:!1}},CKEDITOR.htmlParser.text.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(a,b){return(this.value=a.onText(b,this.value,this))?void 0:(this.remove(),!1)},writeHtml:function(a,b){b&&this.filter(b),a.text(this.value)}})}(),function(){CKEDITOR.htmlParser.cdata=function(a){this.value=a},CKEDITOR.htmlParser.cdata.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_TEXT,filter:function(){},writeHtml:function(a){a.write(this.value)}})}(),CKEDITOR.htmlParser.fragment=function(){this.children=[],this.parent=null,this._={isBlockLike:!0,hasInlineStarted:!1}},function(){function a(a){return a.attributes["data-cke-survive"]?!1:"a"==a.name&&a.attributes.href||CKEDITOR.dtd.$removeEmpty[a.name]}var b=CKEDITOR.tools.extend({table:1,ul:1,ol:1,dl:1},CKEDITOR.dtd.table,CKEDITOR.dtd.ul,CKEDITOR.dtd.ol,CKEDITOR.dtd.dl),c={ol:1,ul:1},d=CKEDITOR.tools.extend({},{html:1},CKEDITOR.dtd.html,CKEDITOR.dtd.body,CKEDITOR.dtd.head,{style:1,script:1}),e={ul:"li",ol:"li",dl:"dd",table:"tbody",tbody:"tr",thead:"tr",tfoot:"tr",tr:"td"};CKEDITOR.htmlParser.fragment.fromHtml=function(f,g,h){function i(a){var b;if(0<q.length)for(var c=0;c<q.length;c++){var d=q[c],e=d.name,f=CKEDITOR.dtd[e],g=s.name&&CKEDITOR.dtd[s.name];g&&!g[e]||a&&f&&!f[a]&&CKEDITOR.dtd[a]?e==s.name&&(l(s,s.parent,1),c--):(b||(j(),b=1),d=d.clone(),d.parent=s,s=d,q.splice(c,1),c--)}}function j(){for(;r.length;)l(r.shift(),s)}function k(a){if(a._.isBlockLike&&"pre"!=a.name&&"textarea"!=a.name){var b,c=a.children.length,d=a.children[c-1];d&&d.type==CKEDITOR.NODE_TEXT&&((b=CKEDITOR.tools.rtrim(d.value))?d.value=b:a.children.length=c-1)}}function l(b,c,d){c=c||s||p;var e=s;void 0===b.previous&&(m(c,b)&&(s=c,o.onTagOpen(h,{}),b.returnPoint=c=s),k(b),a(b)&&!b.children.length||c.add(b),"pre"==b.name&&(u=!1),"textarea"==b.name&&(t=!1)),b.returnPoint?(s=b.returnPoint,delete b.returnPoint):s=d?c:e}function m(a,b){if((a==p||"body"==a.name)&&h&&(!a.name||CKEDITOR.dtd[a.name][h])){var c,d;return(c=b.attributes&&(d=b.attributes["data-cke-real-element-type"])?d:b.name)&&c in CKEDITOR.dtd.$inline&&!(c in CKEDITOR.dtd.head)&&!b.isOrphan||b.type==CKEDITOR.NODE_TEXT}}function n(a,b){return a in CKEDITOR.dtd.$listItem||a in CKEDITOR.dtd.$tableContent?a==b||"dt"==a&&"dd"==b||"dd"==a&&"dt"==b:!1}var o=new CKEDITOR.htmlParser,p=g instanceof CKEDITOR.htmlParser.element?g:"string"==typeof g?new CKEDITOR.htmlParser.element(g):new CKEDITOR.htmlParser.fragment,q=[],r=[],s=p,t="textarea"==p.name,u="pre"==p.name;o.onTagOpen=function(e,f,g,h){if(f=new CKEDITOR.htmlParser.element(e,f),f.isUnknown&&g&&(f.isEmpty=!0),f.isOptionalClose=h,a(f))q.push(f);else{if("pre"==e)u=!0;else{if("br"==e&&u)return void s.add(new CKEDITOR.htmlParser.text("\n"));"textarea"==e&&(t=!0)}if("br"==e)r.push(f);else{for(;h=(g=s.name)?CKEDITOR.dtd[g]||(s._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):d,!(f.isUnknown||s.isUnknown||h[e]);)if(s.isOptionalClose)o.onTagClose(g);else if(e in c&&g in c)g=s.children,(g=g[g.length-1])&&"li"==g.name||l(g=new CKEDITOR.htmlParser.element("li"),s),!f.returnPoint&&(f.returnPoint=s),s=g;else if(e in CKEDITOR.dtd.$listItem&&!n(e,g))o.onTagOpen("li"==e?"ul":"dl",{},0,1);else if(g in b&&!n(e,g))!f.returnPoint&&(f.returnPoint=s),s=s.parent;else{if(g in CKEDITOR.dtd.$inline&&q.unshift(s),!s.parent){f.isOrphan=1;break}l(s,s.parent,1)}i(e),j(),f.parent=s,f.isEmpty?l(f):s=f}}},o.onTagClose=function(a){for(var b=q.length-1;b>=0;b--)if(a==q[b].name)return void q.splice(b,1);for(var c=[],d=[],e=s;e!=p&&e.name!=a;)e._.isBlockLike||d.unshift(e),c.push(e),e=e.returnPoint||e.parent;if(e!=p){for(b=0;b<c.length;b++){var f=c[b];l(f,f.parent)}s=e,e._.isBlockLike&&j(),l(e,e.parent),e==s&&(s=s.parent),q=q.concat(d)}"body"==a&&(h=!1)},o.onText=function(a){if(s._.hasInlineStarted&&!r.length||u||t||(a=CKEDITOR.tools.ltrim(a),0!==a.length)){var c=s.name,f=c?CKEDITOR.dtd[c]||(s._.isBlockLike?CKEDITOR.dtd.div:CKEDITOR.dtd.span):d;!t&&!f["#"]&&c in b?(o.onTagOpen(e[c]||""),o.onText(a)):(j(),i(),u||t||(a=a.replace(/[\t\r\n ]{2,}|[\t\r\n]/g," ")),a=new CKEDITOR.htmlParser.text(a),m(s,a)&&this.onTagOpen(h,{},0,1),s.add(a))}},o.onCDATA=function(a){s.add(new CKEDITOR.htmlParser.cdata(a))},o.onComment=function(a){j(),i(),s.add(new CKEDITOR.htmlParser.comment(a))},o.parse(f);for(j();s!=p;)l(s,s.parent,1);return k(p),p},CKEDITOR.htmlParser.fragment.prototype={type:CKEDITOR.NODE_DOCUMENT_FRAGMENT,add:function(a,b){isNaN(b)&&(b=this.children.length);var c=b>0?this.children[b-1]:null;if(c){if(a._.isBlockLike&&c.type==CKEDITOR.NODE_TEXT&&(c.value=CKEDITOR.tools.rtrim(c.value),0===c.value.length))return this.children.pop(),void this.add(a);c.next=a}a.previous=c,a.parent=this,this.children.splice(b,0,a),this._.hasInlineStarted||(this._.hasInlineStarted=a.type==CKEDITOR.NODE_TEXT||a.type==CKEDITOR.NODE_ELEMENT&&!a._.isBlockLike)},filter:function(a,b){b=this.getFilterContext(b),a.onRoot(b,this),this.filterChildren(a,!1,b)},filterChildren:function(a,b,c){if(this.childrenFilteredBy!=a.id)for(c=this.getFilterContext(c),b&&!this.parent&&a.onRoot(c,this),this.childrenFilteredBy=a.id,b=0;b<this.children.length;b++)!1===this.children[b].filter(a,c)&&b--},writeHtml:function(a,b){b&&this.filter(b),this.writeChildrenHtml(a)},writeChildrenHtml:function(a,b,c){var d=this.getFilterContext();for(c&&!this.parent&&b&&b.onRoot(d,this),b&&this.filterChildren(b,!1,d),b=0,c=this.children,d=c.length;d>b;b++)c[b].writeHtml(a)},forEach:function(a,b,c){if(!(c||b&&this.type!=b))var d=a(this);if(!1!==d){c=this.children;for(var e=0;e<c.length;e++)d=c[e],d.type==CKEDITOR.NODE_ELEMENT?d.forEach(a,b):b&&d.type!=b||a(d)}},getFilterContext:function(a){return a||{}}}}(),function(){function a(){this.rules=[]}function b(b,c,d,e){var f,g;for(f in c)(g=b[f])||(g=b[f]=new a),g.add(c[f],d,e)}CKEDITOR.htmlParser.filter=CKEDITOR.tools.createClass({$:function(b){this.id=CKEDITOR.tools.getNextNumber(),this.elementNameRules=new a,this.attributeNameRules=new a,this.elementsRules={},this.attributesRules={},this.textRules=new a,this.commentRules=new a,this.rootRules=new a,b&&this.addRules(b,10)},proto:{addRules:function(a,c){var d;"number"==typeof c?d=c:c&&"priority"in c&&(d=c.priority),"number"!=typeof d&&(d=10),"object"!=typeof c&&(c={}),a.elementNames&&this.elementNameRules.addMany(a.elementNames,d,c),a.attributeNames&&this.attributeNameRules.addMany(a.attributeNames,d,c),a.elements&&b(this.elementsRules,a.elements,d,c),a.attributes&&b(this.attributesRules,a.attributes,d,c),a.text&&this.textRules.add(a.text,d,c),a.comment&&this.commentRules.add(a.comment,d,c),a.root&&this.rootRules.add(a.root,d,c)},applyTo:function(a){a.filter(this)},onElementName:function(a,b){return this.elementNameRules.execOnName(a,b)},onAttributeName:function(a,b){return this.attributeNameRules.execOnName(a,b)},onText:function(a,b,c){return this.textRules.exec(a,b,c)},onComment:function(a,b,c){return this.commentRules.exec(a,b,c)},onRoot:function(a,b){return this.rootRules.exec(a,b)},onElement:function(a,b){for(var c,d=[this.elementsRules["^"],this.elementsRules[b.name],this.elementsRules.$],e=0;3>e;e++)if(c=d[e]){if(c=c.exec(a,b,this),!1===c)return null;if(c&&c!=b)return this.onNode(a,c);if(b.parent&&!b.name)break}return b},onNode:function(a,b){var c=b.type;return c==CKEDITOR.NODE_ELEMENT?this.onElement(a,b):c==CKEDITOR.NODE_TEXT?new CKEDITOR.htmlParser.text(this.onText(a,b.value)):c==CKEDITOR.NODE_COMMENT?new CKEDITOR.htmlParser.comment(this.onComment(a,b.value)):null},onAttribute:function(a,b,c,d){return(c=this.attributesRules[c])?c.exec(a,d,b,this):d}}}),CKEDITOR.htmlParser.filterRulesGroup=a,a.prototype={add:function(a,b,c){this.rules.splice(this.findIndex(b),0,{value:a,priority:b,options:c})},addMany:function(a,b,c){for(var d=[this.findIndex(b),0],e=0,f=a.length;f>e;e++)d.push({value:a[e],priority:b,options:c});this.rules.splice.apply(this.rules,d)},findIndex:function(a){for(var b=this.rules,c=b.length-1;c>=0&&a<b[c].priority;)c--;return c+1},exec:function(a,b){var c,d,e,f,g=b instanceof CKEDITOR.htmlParser.node||b instanceof CKEDITOR.htmlParser.fragment,h=Array.prototype.slice.call(arguments,1),i=this.rules,j=i.length;for(f=0;j>f;f++)if(g&&(c=b.type,d=b.name),e=i[f],!(a.nonEditable&&!e.options.applyToAll||a.nestedEditable&&e.options.excludeNestedEditable)){if(e=e.value.apply(null,h),!1===e||g&&e&&(e.name!=d||e.type!=c))return e;null!=e&&(h[0]=b=e)}return b},execOnName:function(a,b){for(var c,d=0,e=this.rules,f=e.length;b&&f>d;d++)c=e[d],a.nonEditable&&!c.options.applyToAll||a.nestedEditable&&c.options.excludeNestedEditable||(b=b.replace(c.value[0],c.value[1]));return b}}}(),function(){function a(a,b){function h(a){return a||CKEDITOR.env.needsNbspFiller?new CKEDITOR.htmlParser.text("Â "):new CKEDITOR.htmlParser.element("br",{"data-cke-bogus":1})}function i(a,b){return function(e){if(e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var g,i,k=[],l=c(e);if(l)for(j(l,1)&&k.push(l);l;)f(l)&&(g=d(l))&&j(g)&&((i=d(g))&&!f(i)?k.push(g):(h(m).insertAfter(g),g.remove())),l=l.previous;for(l=0;l<k.length;l++)k[l].remove();(k=!a||!1!==("function"==typeof b?b(e):b))&&((m||CKEDITOR.env.needsBrFiller||e.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT)&&(m||CKEDITOR.env.needsBrFiller||!(7<document.documentMode||e.name in CKEDITOR.dtd.tr||e.name in CKEDITOR.dtd.$listItem))?(k=c(e),k=!k||"form"==e.name&&"input"==k.name):k=!1),k&&e.add(h(a))}}}function j(a,b){if((!m||CKEDITOR.env.needsBrFiller)&&a.type==CKEDITOR.NODE_ELEMENT&&"br"==a.name&&!a.attributes["data-cke-eol"])return!0;var c;return!!(a.type==CKEDITOR.NODE_TEXT&&(c=a.value.match(q))&&(c.index&&(new CKEDITOR.htmlParser.text(a.value.substring(0,c.index)).insertBefore(a),a.value=c[0]),!CKEDITOR.env.needsBrFiller&&m&&(!b||a.parent.name in n)||!m&&((c=a.previous)&&"br"==c.name||!c||f(c))))}var k,l={elements:{}},m="html"==b,n=CKEDITOR.tools.extend({},u);for(k in n)"#"in s[k]||delete n[k];for(k in n)l.elements[k]=i(m,a.config.fillEmptyBlocks);return l.root=i(m,!1),l.elements.br=function(a){return function(b){if(b.parent.type!=CKEDITOR.NODE_DOCUMENT_FRAGMENT){var c=b.attributes;if("data-cke-bogus"in c||"data-cke-eol"in c)delete c["data-cke-bogus"];else{for(c=b.next;c&&e(c);)c=c.next;var i=d(b);!c&&f(b.parent)?g(b.parent,h(a)):f(c)&&i&&!f(i)&&h(a).insertBefore(c)}}}}(m),l}function b(a,b){return a!=CKEDITOR.ENTER_BR&&!1!==b?a==CKEDITOR.ENTER_DIV?"div":"p":!1}function c(a){for(a=a.children[a.children.length-1];a&&e(a);)a=a.previous;return a}function d(a){for(a=a.previous;a&&e(a);)a=a.previous;return a}function e(a){return a.type==CKEDITOR.NODE_TEXT&&!CKEDITOR.tools.trim(a.value)||a.type==CKEDITOR.NODE_ELEMENT&&a.attributes["data-cke-bookmark"]}function f(a){return a&&(a.type==CKEDITOR.NODE_ELEMENT&&a.name in u||a.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT)}function g(a,b){var c=a.children[a.children.length-1];a.children.push(b),b.parent=a,c&&(c.next=b,b.previous=c)}function h(a){a=a.attributes,"false"!=a.contenteditable&&(a["data-cke-editable"]=a.contenteditable?"true":1),a.contenteditable="false"}function i(a){switch(a=a.attributes,a["data-cke-editable"]){case"true":a.contenteditable="true";break;case"1":delete a.contenteditable}}function j(a){return a.replace(z,function(a,b,c){return"<"+b+c.replace(A,function(a,b){return B.test(b)&&-1==c.indexOf("data-cke-saved-"+b)?" data-cke-saved-"+a+" data-cke-"+CKEDITOR.rnd+"-"+a:a})+">"})}function k(a,b){return a.replace(b,function(a,b,c){return 0===a.indexOf("<textarea")&&(a=b+n(c).replace(/</g,"<").replace(/>/g,">")+"</textarea>"),"<cke:encoded>"+encodeURIComponent(a)+"</cke:encoded>"})}function l(a){return a.replace(E,function(a,b){return decodeURIComponent(b)})}function m(a){return a.replace(/\x3c!--(?!{cke_protected})[\s\S]+?--\x3e/g,function(a){return"<!--"+r+"{C}"+encodeURIComponent(a).replace(/--/g,"%2D%2D")+"-->"})}function n(a){return a.replace(/\x3c!--\{cke_protected\}\{C\}([\s\S]+?)--\x3e/g,function(a,b){return decodeURIComponent(b)})}function o(a,b){var c=b._.dataStore;return a.replace(/\x3c!--\{cke_protected\}([\s\S]+?)--\x3e/g,function(a,b){return decodeURIComponent(b)}).replace(/\{cke_protected_(\d+)\}/g,function(a,b){return c&&c[b]||""})}function p(a,b){var c=[],d=b.config.protectedSource,e=b._.dataStore||(b._.dataStore={id:1}),f=/<\!--\{cke_temp(comment)?\}(\d*?)--\x3e/g,d=[/<script[\s\S]*?(<\/script>|$)/gi,/<noscript[\s\S]*?<\/noscript>/gi,/<meta[\s\S]*?\/?>/gi].concat(d);a=a.replace(/\x3c!--[\s\S]*?--\x3e/g,function(a){return"<!--{cke_tempcomment}"+(c.push(a)-1)+"-->"});for(var g=0;g<d.length;g++)a=a.replace(d[g],function(a){return a=a.replace(f,function(a,b,d){return c[d]}),/cke_temp(comment)?/.test(a)?a:"<!--{cke_temp}"+(c.push(a)-1)+"-->"});return a=a.replace(f,function(a,b,d){return"<!--"+r+(b?"{C}":"")+encodeURIComponent(c[d]).replace(/--/g,"%2D%2D")+"-->"}),a=a.replace(/<\w+(?:\s+(?:(?:[^\s=>]+\s*=\s*(?:[^'"\s>]+|'[^']*'|"[^"]*"))|[^\s=\/>]+))+\s*\/?>/g,function(a){return a.replace(/\x3c!--\{cke_protected\}([^>]*)--\x3e/g,function(a,b){return e[e.id]=decodeURIComponent(b),"{cke_protected_"+e.id++ +"}"})}),a=a.replace(/<(title|iframe|textarea)([^>]*)>([\s\S]*?)<\/\1>/g,function(a,c,d,e){return"<"+c+d+">"+o(n(e),b)+"</"+c+">"})}CKEDITOR.htmlDataProcessor=function(c){var d,e,f=this;this.editor=c,this.dataFilter=d=new CKEDITOR.htmlParser.filter,this.htmlFilter=e=new CKEDITOR.htmlParser.filter,this.writer=new CKEDITOR.htmlParser.basicWriter,d.addRules(v),d.addRules(w,{applyToAll:!0}),d.addRules(a(c,"data"),{applyToAll:!0}),e.addRules(x),e.addRules(y,{applyToAll:!0}),e.addRules(a(c,"html"),{applyToAll:!0}),c.on("toHtml",function(a){a=a.data;var d,e=a.dataValue,e=p(e,c),e=k(e,D),e=j(e),e=k(e,C),e=e.replace(F,"$1cke:$2"),e=e.replace(H,"<cke:$1$2></cke:$1>"),e=e.replace(/(<pre\b[^>]*>)(\r\n|\n)/g,"$1$2$2"),e=e.replace(/([^a-z0-9<\-])(on\w{3,})(?!>)/gi,"$1data-cke-"+CKEDITOR.rnd+"-$2");d=a.context||c.editable().getName();var f;CKEDITOR.env.ie&&9>CKEDITOR.env.version&&"pre"==d&&(d="div",e="<pre>"+e+"</pre>",f=1),d=c.document.createElement(d),d.setHtml("a"+e),e=d.getHtml().substr(1),e=e.replace(new RegExp("data-cke-"+CKEDITOR.rnd+"-","ig"),""),f&&(e=e.replace(/^<pre>|<\/pre>$/gi,"")),e=e.replace(G,"$1$2"),e=l(e),e=n(e),d=!1===a.fixForBody?!1:b(a.enterMode,c.config.autoParagraph),e=CKEDITOR.htmlParser.fragment.fromHtml(e,a.context,d),d&&(f=e,!f.children.length&&CKEDITOR.dtd[f.name][d]&&(d=new CKEDITOR.htmlParser.element(d),f.add(d))),a.dataValue=e},null,null,5),c.on("toHtml",function(a){a.data.filter.applyTo(a.data.dataValue,!0,a.data.dontFilter,a.data.enterMode)&&c.fire("dataFiltered")},null,null,6),c.on("toHtml",function(a){ -a.data.dataValue.filterChildren(f.dataFilter,!0)},null,null,10),c.on("toHtml",function(a){a=a.data;var b=a.dataValue,c=new CKEDITOR.htmlParser.basicWriter;b.writeChildrenHtml(c),b=c.getHtml(!0),a.dataValue=m(b)},null,null,15),c.on("toDataFormat",function(a){var d=a.data.dataValue;a.data.enterMode!=CKEDITOR.ENTER_BR&&(d=d.replace(/^<br *\/?>/i,"")),a.data.dataValue=CKEDITOR.htmlParser.fragment.fromHtml(d,a.data.context,b(a.data.enterMode,c.config.autoParagraph))},null,null,5),c.on("toDataFormat",function(a){a.data.dataValue.filterChildren(f.htmlFilter,!0)},null,null,10),c.on("toDataFormat",function(a){a.data.filter.applyTo(a.data.dataValue,!1,!0)},null,null,11),c.on("toDataFormat",function(a){var b=a.data.dataValue,d=f.writer;d.reset(),b.writeChildrenHtml(d),b=d.getHtml(!0),b=n(b),b=o(b,c),a.data.dataValue=b},null,null,15)},CKEDITOR.htmlDataProcessor.prototype={toHtml:function(a,b,c,d){var e,f,g,h,i=this.editor;return b&&"object"==typeof b?(e=b.context,c=b.fixForBody,d=b.dontFilter,f=b.filter,g=b.enterMode,h=b.protectedWhitespaces):e=b,e||null===e||(e=i.editable().getName()),i.fire("toHtml",{dataValue:a,context:e,fixForBody:c,dontFilter:d,filter:f||i.filter,enterMode:g||i.enterMode,protectedWhitespaces:h}).dataValue},toDataFormat:function(a,b){var c,d,e;return b&&(c=b.context,d=b.filter,e=b.enterMode),c||null===c||(c=this.editor.editable().getName()),this.editor.fire("toDataFormat",{dataValue:a,filter:d||this.editor.filter,context:c,enterMode:e||this.editor.enterMode}).dataValue}};var q=/(?: |\xa0)$/,r="{cke_protected}",s=CKEDITOR.dtd,t="caption colgroup col thead tfoot tbody".split(" "),u=CKEDITOR.tools.extend({},s.$blockLimit,s.$block),v={elements:{input:h,textarea:h}},w={attributeNames:[[/^on/,"data-cke-pa-on"],[/^data-cke-expando$/,""]]},x={elements:{embed:function(a){var b=a.parent;if(b&&"object"==b.name){var c=b.attributes.width,b=b.attributes.height;c&&(a.attributes.width=c),b&&(a.attributes.height=b)}},a:function(a){var b=a.attributes;return a.children.length||b.name||b.id||a.attributes["data-cke-saved-name"]?void 0:!1}}},y={elementNames:[[/^cke:/,""],[/^\?xml:namespace$/,""]],attributeNames:[[/^data-cke-(saved|pa)-/,""],[/^data-cke-.*/,""],["hidefocus",""]],elements:{$:function(a){var b=a.attributes;if(b){if(b["data-cke-temp"])return!1;for(var c,d=["name","href","src"],e=0;e<d.length;e++)c="data-cke-saved-"+d[e],c in b&&delete b[d[e]]}return a},table:function(a){a.children.slice(0).sort(function(a,b){var c,d;return a.type==CKEDITOR.NODE_ELEMENT&&b.type==a.type&&(c=CKEDITOR.tools.indexOf(t,a.name),d=CKEDITOR.tools.indexOf(t,b.name)),c>-1&&d>-1&&c!=d||(c=a.parent?a.getIndex():-1,d=b.parent?b.getIndex():-1),c>d?1:-1})},param:function(a){return a.children=[],a.isEmpty=!0,a},span:function(a){"Apple-style-span"==a.attributes["class"]&&delete a.name},html:function(a){delete a.attributes.contenteditable,delete a.attributes["class"]},body:function(a){delete a.attributes.spellcheck,delete a.attributes.contenteditable},style:function(a){var b=a.children[0];b&&b.value&&(b.value=CKEDITOR.tools.trim(b.value)),a.attributes.type||(a.attributes.type="text/css")},title:function(a){var b=a.children[0];!b&&g(a,b=new CKEDITOR.htmlParser.text),b.value=a.attributes["data-cke-title"]||""},input:i,textarea:i},attributes:{"class":function(a){return CKEDITOR.tools.ltrim(a.replace(/(?:^|\s+)cke_[^\s]*/g,""))||!1}}};CKEDITOR.env.ie&&(y.attributes.style=function(a){return a.replace(/(^|;)([^\:]+)/g,function(a){return a.toLowerCase()})});var z=/<(a|area|img|input|source)\b([^>]*)>/gi,A=/([\w-:]+)\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|(?:[^ "'>]+))/gi,B=/^(href|src|name)$/i,C=/(?:<style(?=[ >])[^>]*>[\s\S]*?<\/style>)|(?:<(:?link|meta|base)[^>]*>)/gi,D=/(<textarea(?=[ >])[^>]*>)([\s\S]*?)(?:<\/textarea>)/gi,E=/<cke:encoded>([^<]*)<\/cke:encoded>/gi,F=/(<\/?)((?:object|embed|param|html|body|head|title)[^>]*>)/gi,G=/(<\/?)cke:((?:html|body|head|title)[^>]*>)/gi,H=/<cke:(param|embed)([^>]*?)\/?>(?!\s*<\/cke:\1)/gi}(),CKEDITOR.htmlParser.element=function(a,b){this.name=a,this.attributes=b||{},this.children=[];var c=a||"",d=c.match(/^cke:(.*)/);d&&(c=d[1]),c=!!(CKEDITOR.dtd.$nonBodyContent[c]||CKEDITOR.dtd.$block[c]||CKEDITOR.dtd.$listItem[c]||CKEDITOR.dtd.$tableContent[c]||CKEDITOR.dtd.$nonEditable[c]||"br"==c),this.isEmpty=!!CKEDITOR.dtd.$empty[a],this.isUnknown=!CKEDITOR.dtd[a],this._={isBlockLike:c,hasInlineStarted:this.isEmpty||!c}},CKEDITOR.htmlParser.cssStyle=function(a){var b={};return((a instanceof CKEDITOR.htmlParser.element?a.attributes.style:a)||"").replace(/"/g,'"').replace(/\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,function(a,c,d){"font-family"==c&&(d=d.replace(/["']/g,"")),b[c.toLowerCase()]=d}),{rules:b,populate:function(a){var b=this.toString();b&&(a instanceof CKEDITOR.dom.element?a.setAttribute("style",b):a instanceof CKEDITOR.htmlParser.element?a.attributes.style=b:a.style=b)},toString:function(){var a,c=[];for(a in b)b[a]&&c.push(a,":",b[a],";");return c.join("")}}},function(){function a(a){return function(b){return b.type==CKEDITOR.NODE_ELEMENT&&("string"==typeof a?b.name==a:b.name in a)}}var b=function(a,b){return a=a[0],b=b[0],b>a?-1:a>b?1:0},c=CKEDITOR.htmlParser.fragment.prototype;CKEDITOR.htmlParser.element.prototype=CKEDITOR.tools.extend(new CKEDITOR.htmlParser.node,{type:CKEDITOR.NODE_ELEMENT,add:c.add,clone:function(){return new CKEDITOR.htmlParser.element(this.name,this.attributes)},filter:function(a,b){var c,d,e=this;if(b=e.getFilterContext(b),b.off)return!0;for(e.parent||a.onRoot(b,e);;){if(c=e.name,!(d=a.onElementName(b,c)))return this.remove(),!1;if(e.name=d,!(e=a.onElement(b,e)))return this.remove(),!1;if(e!==this)return this.replaceWith(e),!1;if(e.name==c)break;if(e.type!=CKEDITOR.NODE_ELEMENT)return this.replaceWith(e),!1;if(!e.name)return this.replaceWithChildren(),!1}c=e.attributes;var f,g;for(f in c){for(d=c[f];;){if(!(g=a.onAttributeName(b,f))){delete c[f];break}if(g==f)break;delete c[f],f=g}g&&(!1===(d=a.onAttribute(b,e,g,d))?delete c[g]:c[g]=d)}return e.isEmpty||this.filterChildren(a,!1,b),!0},filterChildren:c.filterChildren,writeHtml:function(a,c){c&&this.filter(c);var d,e,f=this.name,g=[],h=this.attributes;a.openTag(f,h);for(d in h)g.push([d,h[d]]);for(a.sortAttributes&&g.sort(b),d=0,e=g.length;e>d;d++)h=g[d],a.attribute(h[0],h[1]);a.openTagClose(f,this.isEmpty),this.writeChildrenHtml(a),this.isEmpty||a.closeTag(f)},writeChildrenHtml:c.writeChildrenHtml,replaceWithChildren:function(){for(var a=this.children,b=a.length;b;)a[--b].insertAfter(this);this.remove()},forEach:c.forEach,getFirst:function(b){if(!b)return this.children.length?this.children[0]:null;"function"!=typeof b&&(b=a(b));for(var c=0,d=this.children.length;d>c;++c)if(b(this.children[c]))return this.children[c];return null},getHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;return this.writeChildrenHtml(a),a.getHtml()},setHtml:function(a){a=this.children=CKEDITOR.htmlParser.fragment.fromHtml(a).children;for(var b=0,c=a.length;c>b;++b)a[b].parent=this},getOuterHtml:function(){var a=new CKEDITOR.htmlParser.basicWriter;return this.writeHtml(a),a.getHtml()},split:function(a){for(var b=this.children.splice(a,this.children.length-a),c=this.clone(),d=0;d<b.length;++d)b[d].parent=c;return c.children=b,b[0]&&(b[0].previous=null),a>0&&(this.children[a-1].next=null),this.parent.add(c,this.getIndex()+1),c},addClass:function(a){if(!this.hasClass(a)){var b=this.attributes["class"]||"";this.attributes["class"]=b+(b?" ":"")+a}},removeClass:function(a){var b=this.attributes["class"];b&&((b=CKEDITOR.tools.trim(b.replace(new RegExp("(?:\\s+|^)"+a+"(?:\\s+|$)")," ")))?this.attributes["class"]=b:delete this.attributes["class"])},hasClass:function(a){var b=this.attributes["class"];return b?new RegExp("(?:^|\\s)"+a+"(?=\\s|$)").test(b):!1},getFilterContext:function(a){var b=[];if(a||(a={off:!1,nonEditable:!1,nestedEditable:!1}),a.off||"off"!=this.attributes["data-cke-processor"]||b.push("off",!0),a.nonEditable||"false"!=this.attributes.contenteditable?a.nonEditable&&!a.nestedEditable&&"true"==this.attributes.contenteditable&&b.push("nestedEditable",!0):b.push("nonEditable",!0),b.length){a=CKEDITOR.tools.copy(a);for(var c=0;c<b.length;c+=2)a[b[c]]=b[c+1]}return a}},!0)}(),function(){var a={},b=/{([^}]+)}/g,c=/([\\'])/g,d=/\n/g,e=/\r/g;CKEDITOR.template=function(f){if(a[f])this.output=a[f];else{var g=f.replace(c,"\\$1").replace(d,"\\n").replace(e,"\\r").replace(b,function(a,b){return"',data['"+b+"']==undefined?'{"+b+"}':data['"+b+"'],'"});this.output=a[f]=Function("data","buffer","return buffer?buffer.push('"+g+"'):['"+g+"'].join('');")}}}(),delete CKEDITOR.loadFullCore,CKEDITOR.instances={},CKEDITOR.document=new CKEDITOR.dom.document(document),CKEDITOR.add=function(a){CKEDITOR.instances[a.name]=a,a.on("focus",function(){CKEDITOR.currentInstance!=a&&(CKEDITOR.currentInstance=a,CKEDITOR.fire("currentInstance"))}),a.on("blur",function(){CKEDITOR.currentInstance==a&&(CKEDITOR.currentInstance=null,CKEDITOR.fire("currentInstance"))}),CKEDITOR.fire("instance",null,a)},CKEDITOR.remove=function(a){delete CKEDITOR.instances[a.name]},function(){var a={};CKEDITOR.addTemplate=function(b,c){var d=a[b];return d?d:(d={name:b,source:c},CKEDITOR.fire("template",d),a[b]=new CKEDITOR.template(d.source))},CKEDITOR.getTemplate=function(b){return a[b]}}(),function(){var a=[];CKEDITOR.addCss=function(b){a.push(b)},CKEDITOR.getCss=function(){return a.join("\n")}}(),CKEDITOR.on("instanceDestroyed",function(){CKEDITOR.tools.isEmpty(this.instances)&&CKEDITOR.fire("reset")}),CKEDITOR.TRISTATE_ON=1,CKEDITOR.TRISTATE_OFF=2,CKEDITOR.TRISTATE_DISABLED=0,function(){CKEDITOR.inline=function(a,b){if(!CKEDITOR.env.isCompatible)return null;if(a=CKEDITOR.dom.element.get(a),a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var c=new CKEDITOR.editor(b,a,CKEDITOR.ELEMENT_MODE_INLINE),d=a.is("textarea")?a:null;return d?(c.setData(d.getValue(),null,!0),a=CKEDITOR.dom.element.createFromHtml('<div contenteditable="'+!!c.readOnly+'" class="cke_textarea_inline">'+d.getValue()+"</div>",CKEDITOR.document),a.insertAfter(d),d.hide(),d.$.form&&c._attachToForm()):c.setData(a.getHtml(),null,!0),c.on("loaded",function(){c.fire("uiReady"),c.editable(a),c.container=a,c.ui.contentsElement=a,c.setData(c.getData(1)),c.resetDirty(),c.fire("contentDom"),c.mode="wysiwyg",c.fire("mode"),c.status="ready",c.fireOnce("instanceReady"),CKEDITOR.fire("instanceReady",null,c)},null,null,1e4),c.on("destroy",function(){d&&(c.container.clearCustomData(),c.container.remove(),d.show()),c.element.clearCustomData(),delete c.element}),c},CKEDITOR.inlineAll=function(){var a,b,c;for(c in CKEDITOR.dtd.$editable)for(var d=CKEDITOR.document.getElementsByTag(c),e=0,f=d.count();f>e;e++)a=d.getItem(e),"true"==a.getAttribute("contenteditable")&&(b={element:a,config:{}},!1!==CKEDITOR.fire("inline",b)&&CKEDITOR.inline(a,b.config))},CKEDITOR.domReady(function(){!CKEDITOR.disableAutoInline&&CKEDITOR.inlineAll()})}(),CKEDITOR.replaceClass="ckeditor",function(){function a(a,d,e,f){if(!CKEDITOR.env.isCompatible)return null;if(a=CKEDITOR.dom.element.get(a),a.getEditor())throw'The editor instance "'+a.getEditor().name+'" is already attached to the provided element.';var g=new CKEDITOR.editor(d,a,f);return f==CKEDITOR.ELEMENT_MODE_REPLACE&&(a.setStyle("visibility","hidden"),g._.required=a.hasAttribute("required"),a.removeAttribute("required")),e&&g.setData(e,null,!0),g.on("loaded",function(){c(g),f==CKEDITOR.ELEMENT_MODE_REPLACE&&g.config.autoUpdateElement&&a.$.form&&g._attachToForm(),g.setMode(g.config.startupMode,function(){g.resetDirty(),g.status="ready",g.fireOnce("instanceReady"),CKEDITOR.fire("instanceReady",null,g)})}),g.on("destroy",b),g}function b(){var a=this.container,b=this.element;a&&(a.clearCustomData(),a.remove()),b&&(b.clearCustomData(),this.elementMode==CKEDITOR.ELEMENT_MODE_REPLACE&&(b.show(),this._.required&&b.setAttribute("required","required")),delete this.element)}function c(a){var b=a.name,c=a.element,d=a.elementMode,e=a.fire("uiSpace",{space:"top",html:""}).html,f=a.fire("uiSpace",{space:"bottom",html:""}).html,g=new CKEDITOR.template('<{outerEl} id="cke_{name}" class="{id} cke cke_reset cke_chrome cke_editor_{name} cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" lang="{langCode}" role="application"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':"")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':"")+'<{outerEl} class="cke_inner cke_reset" role="presentation">{topHtml}<{outerEl} id="{contentId}" class="cke_contents cke_reset" role="presentation"></{outerEl}>{bottomHtml}</{outerEl}></{outerEl}>'),b=CKEDITOR.dom.element.createFromHtml(g.output({id:a.id,name:b,langDir:a.lang.dir,langCode:a.langCode,voiceLabel:a.title,topHtml:e?'<span id="'+a.ui.spaceId("top")+'" class="cke_top cke_reset_all" role="presentation" style="height:auto">'+e+"</span>":"",contentId:a.ui.spaceId("contents"),bottomHtml:f?'<span id="'+a.ui.spaceId("bottom")+'" class="cke_bottom cke_reset_all" role="presentation">'+f+"</span>":"",outerEl:CKEDITOR.env.ie?"span":"div"}));d==CKEDITOR.ELEMENT_MODE_REPLACE?(c.hide(),b.insertAfter(c)):c.append(b),a.container=b,a.ui.contentsElement=a.ui.space("contents"),e&&a.ui.space("top").unselectable(),f&&a.ui.space("bottom").unselectable(),c=a.config.width,d=a.config.height,c&&b.setStyle("width",CKEDITOR.tools.cssLength(c)),d&&a.ui.space("contents").setStyle("height",CKEDITOR.tools.cssLength(d)),b.disableContextMenu(),CKEDITOR.env.webkit&&b.on("focus",function(){a.focus()}),a.fireOnce("uiReady")}CKEDITOR.replace=function(b,c){return a(b,c,null,CKEDITOR.ELEMENT_MODE_REPLACE)},CKEDITOR.appendTo=function(b,c,d){return a(b,c,d,CKEDITOR.ELEMENT_MODE_APPENDTO)},CKEDITOR.replaceAll=function(){for(var a=document.getElementsByTagName("textarea"),b=0;b<a.length;b++){var c=null,d=a[b];if(d.name||d.id){if("string"==typeof arguments[0]){if(!new RegExp("(?:^|\\s)"+arguments[0]+"(?:$|\\s)").test(d.className))continue}else if("function"==typeof arguments[0]&&(c={},!1===arguments[0](d,c)))continue;this.replace(d,c)}}},CKEDITOR.editor.prototype.addMode=function(a,b){(this._.modes||(this._.modes={}))[a]=b},CKEDITOR.editor.prototype.setMode=function(a,b){var c=this,d=this._.modes;if(a!=c.mode&&d&&d[a]){if(c.fire("beforeSetMode",a),c.mode){var e,f=c.checkDirty(),d=c._.previousModeData,g=0;c.fire("beforeModeUnload"),c.editable(0),c._.previousMode=c.mode,c._.previousModeData=e=c.getData(1),"source"==c.mode&&d==e&&(c.fire("lockSnapshot",{forceUpdate:!0}),g=1),c.ui.space("contents").setHtml(""),c.mode=""}else c._.previousModeData=c.getData(1);this._.modes[a](function(){c.mode=a,void 0!==f&&!f&&c.resetDirty(),g?c.fire("unlockSnapshot"):"wysiwyg"==a&&c.fire("saveSnapshot"),setTimeout(function(){c.fire("mode"),b&&b.call(c)},0)})}},CKEDITOR.editor.prototype.resize=function(a,b,c,d){var e=this.container,f=this.ui.space("contents"),g=CKEDITOR.env.webkit&&this.document&&this.document.getWindow().$.frameElement;d=d?this.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}):e,d.setSize("width",a,!0),g&&(g.style.width="1%");var h=(d.$.offsetHeight||0)-(f.$.clientHeight||0),e=Math.max(b-(c?0:h),0);b=c?b+h:b,f.setStyle("height",e+"px"),g&&(g.style.width="100%"),this.fire("resize",{outerHeight:b,contentsHeight:e,outerWidth:a||d.getSize("width")})},CKEDITOR.editor.prototype.getResizable=function(a){return a?this.ui.space("contents"):this.container},CKEDITOR.domReady(function(){CKEDITOR.replaceClass&&CKEDITOR.replaceAll(CKEDITOR.replaceClass)})}(),CKEDITOR.config.startupMode="wysiwyg",function(){function a(a){var c,e=a.editor,f=a.data.path,h=f.blockLimit,i=a.data.selection,j=i.getRanges()[0];(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller)&&(i=b(i,f))&&(i.appendBogus(),c=CKEDITOR.env.ie),g(e,f.block,h)&&j.collapsed&&!j.getCommonAncestor().isReadOnly()&&(f=j.clone(),f.enlarge(CKEDITOR.ENLARGE_BLOCK_CONTENTS),h=new CKEDITOR.dom.walker(f),h.guard=function(a){return!d(a)||a.type==CKEDITOR.NODE_COMMENT||a.isReadOnly()},!h.checkForward()||f.checkStartOfBlock()&&f.checkEndOfBlock())&&(e=j.fixBlock(!0,e.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p"),CKEDITOR.env.needsBrFiller||(e=e.getFirst(d))&&e.type==CKEDITOR.NODE_TEXT&&CKEDITOR.tools.trim(e.getText()).match(/^(?: |\xa0)$/)&&e.remove(),c=1,a.cancel()),c&&j.select()}function b(a,b){if(a.isFake)return 0;var c=b.block||b.blockLimit,e=c&&c.getLast(d);return!c||!c.isBlockBoundary()||e&&e.type==CKEDITOR.NODE_ELEMENT&&e.isBlockBoundary()||c.is("pre")||c.getBogus()?void 0:c}function c(a){var b=a.data.getTarget();b.is("input")&&(b=b.getAttribute("type"),"submit"!=b&&"reset"!=b||a.data.preventDefault())}function d(a){return k(a)&&l(a)}function e(a,b){return function(c){var d=c.data.$.toElement||c.data.$.fromElement||c.data.$.relatedTarget;(d=d&&d.nodeType==CKEDITOR.NODE_ELEMENT?new CKEDITOR.dom.element(d):null)&&(b.equals(d)||b.contains(d))||a.call(this,c)}}function f(a){function b(a){return function(b,e){return e&&b.type==CKEDITOR.NODE_ELEMENT&&b.is(f)&&(c=b),e||!d(b)||a&&n(b)?void 0:!1}}var c,e=a.getRanges()[0];a=a.root;var f={table:1,ul:1,ol:1,dl:1};if(e.startPath().contains(f)){var g=e.clone();if(g.collapse(1),g.setStartAt(a,CKEDITOR.POSITION_AFTER_START),a=new CKEDITOR.dom.walker(g),a.guard=b(),a.checkBackward(),c)return g=e.clone(),g.collapse(),g.setEndAt(c,CKEDITOR.POSITION_AFTER_END),a=new CKEDITOR.dom.walker(g),a.guard=b(!0),c=!1,a.checkForward(),c}return null}function g(a,b,c){return!1!==a.config.autoParagraph&&a.activeEnterMode!=CKEDITOR.ENTER_BR&&(a.editable().equals(c)&&!b||b&&"true"==b.getAttribute("contenteditable"))}function h(a){return a.activeEnterMode!=CKEDITOR.ENTER_BR&&!1!==a.config.autoParagraph?a.activeEnterMode==CKEDITOR.ENTER_DIV?"div":"p":!1}function i(a){var b=a.editor;b.getSelection().scrollIntoView(),setTimeout(function(){b.fire("saveSnapshot")},0)}function j(a,b,c){var d=a.getCommonAncestor(b);for(b=a=c?b:a;(a=a.getParent())&&!d.equals(a)&&1==a.getChildCount();)b=a;b.remove()}var k,l,m,n,o,p,q,r,s;CKEDITOR.editable=CKEDITOR.tools.createClass({base:CKEDITOR.dom.element,$:function(a,b){this.base(b.$||b),this.editor=a,this.status="unloaded",this.hasFocus=!1,this.setup()},proto:{focus:function(){var a;if(CKEDITOR.env.webkit&&!this.hasFocus&&(a=this.editor._.previousActive||this.getDocument().getActive(),this.contains(a)))return void a.focus();try{this.$[CKEDITOR.env.ie&&this.getDocument().equals(CKEDITOR.document)?"setActive":"focus"]()}catch(b){if(!CKEDITOR.env.ie)throw b}CKEDITOR.env.safari&&!this.isInline()&&(a=CKEDITOR.document.getActive(),a.equals(this.getWindow().getFrame())||this.getWindow().focus())},on:function(a,b){var c=Array.prototype.slice.call(arguments,0);return CKEDITOR.env.ie&&/^focus|blur$/.exec(a)&&(a="focus"==a?"focusin":"focusout",b=e(b,this),c[0]=a,c[1]=b),CKEDITOR.dom.element.prototype.on.apply(this,c)},attachListener:function(a){!this._.listeners&&(this._.listeners=[]);var b=Array.prototype.slice.call(arguments,1),b=a.on.apply(a,b);return this._.listeners.push(b),b},clearListeners:function(){var a=this._.listeners;try{for(;a.length;)a.pop().removeListener()}catch(b){}},restoreAttrs:function(){var a,b,c=this._.attrChanges;for(b in c)c.hasOwnProperty(b)&&(a=c[b],null!==a?this.setAttribute(b,a):this.removeAttribute(b))},attachClass:function(a){var b=this.getCustomData("classes");this.hasClass(a)||(!b&&(b=[]),b.push(a),this.setCustomData("classes",b),this.addClass(a))},changeAttr:function(a,b){var c=this.getAttribute(a);b!==c&&(!this._.attrChanges&&(this._.attrChanges={}),a in this._.attrChanges||(this._.attrChanges[a]=c),this.setAttribute(a,b))},insertText:function(a){this.editor.focus(),this.insertHtml(this.transformPlainTextToHtml(a),"text")},transformPlainTextToHtml:function(a){var b=this.editor.getSelection().getStartElement().hasAscendant("pre",!0)?CKEDITOR.ENTER_BR:this.editor.activeEnterMode;return CKEDITOR.tools.transformPlainTextToHtml(a,b)},insertHtml:function(a,b,c){var d=this.editor;d.focus(),d.fire("saveSnapshot"),c||(c=d.getSelection().getRanges()[0]),p(this,b||"html",a,c),c.select(),i(this),this.editor.fire("afterInsertHtml",{})},insertHtmlIntoRange:function(a,b,c){p(this,c||"html",a,b),this.editor.fire("afterInsertHtml",{intoRange:b})},insertElement:function(a,b){var c=this.editor;c.focus(),c.fire("saveSnapshot");var e=c.activeEnterMode,c=c.getSelection(),f=a.getName(),f=CKEDITOR.dtd.$block[f];b||(b=c.getRanges()[0]),this.insertElementIntoRange(a,b)&&(b.moveToPosition(a,CKEDITOR.POSITION_AFTER_END),f&&((f=a.getNext(function(a){return d(a)&&!n(a)}))&&f.type==CKEDITOR.NODE_ELEMENT&&f.is(CKEDITOR.dtd.$block)?f.getDtd()["#"]?b.moveToElementEditStart(f):b.moveToElementEditEnd(a):f||e==CKEDITOR.ENTER_BR||(f=b.fixBlock(!0,e==CKEDITOR.ENTER_DIV?"div":"p"),b.moveToElementEditStart(f)))),c.selectRanges([b]),i(this)},insertElementIntoSelection:function(a){this.insertElement(a)},insertElementIntoRange:function(a,b){var c=this.editor,d=c.config.enterMode,e=a.getName(),f=CKEDITOR.dtd.$block[e];if(b.checkReadOnly())return!1;b.deleteContents(1),b.startContainer.type==CKEDITOR.NODE_ELEMENT&&b.startContainer.is({tr:1,table:1,tbody:1,thead:1,tfoot:1})&&q(b);var g,h;if(f)for(;(g=b.getCommonAncestor(0,1))&&(h=CKEDITOR.dtd[g.getName()])&&(!h||!h[e]);)g.getName()in CKEDITOR.dtd.span?b.splitElement(g):b.checkStartOfBlock()&&b.checkEndOfBlock()?(b.setStartBefore(g),b.collapse(!0),g.remove()):b.splitBlock(d==CKEDITOR.ENTER_DIV?"div":"p",c.editable());return b.insertNode(a),!0},setData:function(a,b){b||(a=this.editor.dataProcessor.toHtml(a)),this.setHtml(a),this.fixInitialSelection(),"unloaded"==this.status&&(this.status="ready"),this.editor.fire("dataReady")},getData:function(a){var b=this.getHtml();return a||(b=this.editor.dataProcessor.toDataFormat(b)),b},setReadOnly:function(a){this.setAttribute("contenteditable",!a)},detach:function(){this.removeClass("cke_editable"),this.status="detached";var a=this.editor;this._.detach(),delete a.document,delete a.window},isInline:function(){return this.getDocument().equals(CKEDITOR.document)},fixInitialSelection:function(){function a(){var a,b=c.getDocument().$,d=b.getSelection();a:if(d.anchorNode&&d.anchorNode==c.$)a=!0;else{if(CKEDITOR.env.webkit&&(a=c.getDocument().getActive())&&a.equals(c)&&!d.anchorNode){a=!0;break a}a=void 0}a&&(a=new CKEDITOR.dom.range(c),a.moveToElementEditStart(c),b=b.createRange(),b.setStart(a.startContainer.$,a.startOffset),b.collapse(!0),d.removeAllRanges(),d.addRange(b))}function b(){var a=c.getDocument().$,b=a.selection,d=c.getDocument().getActive();"None"==b.type&&d.equals(c)&&(b=new CKEDITOR.dom.range(c),a=a.body.createTextRange(),b.moveToElementEditStart(c),b=b.startContainer,b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent()),a.moveToElementText(b.$),a.collapse(!0),a.select())}var c=this;CKEDITOR.env.ie&&(9>CKEDITOR.env.version||CKEDITOR.env.quirks)?this.hasFocus&&(this.focus(),b()):this.hasFocus?(this.focus(),a()):this.once("focus",function(){a()},null,null,-999)},getHtmlFromRange:function(a){return a.collapsed?new CKEDITOR.dom.documentFragment(a.document):(a={doc:this.getDocument(),range:a.clone()},r.eol.detect(a,this),r.bogus.exclude(a),r.cell.shrink(a),a.fragment=a.range.cloneContents(),r.tree.rebuild(a,this),r.eol.fix(a,this),new CKEDITOR.dom.documentFragment(a.fragment.$))},extractHtmlFromRange:function(a,b){var c=s,d={range:a,doc:a.document},e=this.getHtmlFromRange(a);if(a.collapsed)return a.optimize(),e;a.enlarge(CKEDITOR.ENLARGE_INLINE,1),c.table.detectPurge(d),d.bookmark=a.createBookmark(),delete d.range;var f=this.editor.createRange();if(f.moveToPosition(d.bookmark.startNode,CKEDITOR.POSITION_BEFORE_START),d.targetBookmark=f.createBookmark(),c.list.detectMerge(d,this),c.table.detectRanges(d,this),c.block.detectMerge(d,this),d.tableContentsRanges?(c.table.deleteRanges(d),a.moveToBookmark(d.bookmark),d.range=a):(a.moveToBookmark(d.bookmark),d.range=a,a.extractContents(c.detectExtractMerge(d))),a.moveToBookmark(d.targetBookmark),a.optimize(),c.fixUneditableRangePosition(a),c.list.merge(d,this),c.table.purge(d,this),c.block.merge(d,this),b){if(c=a.startPath(),d=a.checkStartOfBlock()&&a.checkEndOfBlock()&&c.block&&!a.root.equals(c.block)){a:{var g,d=c.block.getElementsByTag("span"),f=0;if(d)for(;g=d.getItem(f++);)if(!l(g)){d=!0;break a}d=!1}d=!d}d&&(a.moveToPosition(c.block,CKEDITOR.POSITION_BEFORE_START),c.block.remove())}else c.autoParagraph(this.editor,a),m(a.startContainer)&&a.startContainer.appendBogus();return a.startContainer.mergeSiblings(),e},setup:function(){var a=this.editor;if(this.attachListener(a,"beforeGetData",function(){var b=this.getData();this.is("textarea")||!1!==a.config.ignoreEmptyParagraph&&(b=b.replace(o,function(a,b){return b})),a.setData(b,null,1)},this),this.attachListener(a,"getSnapshot",function(a){a.data=this.getData(1)},this),this.attachListener(a,"afterSetData",function(){this.setData(a.getData(1))},this),this.attachListener(a,"loadSnapshot",function(a){this.setData(a.data,1)},this),this.attachListener(a,"beforeFocus",function(){var b=a.getSelection();(b=b&&b.getNative())&&"Control"==b.type||this.focus()},this),this.attachListener(a,"insertHtml",function(a){this.insertHtml(a.data.dataValue,a.data.mode,a.data.range)},this),this.attachListener(a,"insertElement",function(a){this.insertElement(a.data)},this),this.attachListener(a,"insertText",function(a){this.insertText(a.data)},this),this.setReadOnly(a.readOnly),this.attachClass("cke_editable"),a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?this.attachClass("cke_editable_inline"):a.elementMode!=CKEDITOR.ELEMENT_MODE_REPLACE&&a.elementMode!=CKEDITOR.ELEMENT_MODE_APPENDTO||this.attachClass("cke_editable_themed"),this.attachClass("cke_contents_"+a.config.contentsLangDirection),a.keystrokeHandler.blockedKeystrokes[8]=+a.readOnly,a.keystrokeHandler.attach(this),this.on("blur",function(){this.hasFocus=!1},null,null,-1),this.on("focus",function(){this.hasFocus=!0},null,null,-1),a.focusManager.add(this),this.equals(CKEDITOR.document.getActive())&&(this.hasFocus=!0,a.once("contentDom",function(){a.focusManager.focus(this)},this)),this.isInline()&&this.changeAttr("tabindex",a.tabIndex),!this.is("textarea")){a.document=this.getDocument(),a.window=this.getWindow();var b=a.document;this.changeAttr("spellcheck",!a.config.disableNativeSpellChecker);var e=a.config.contentsLangDirection;this.getDirection(1)!=e&&this.changeAttr("dir",e);var g=CKEDITOR.getCss();if(g){var e=b.getHead(),h=e.getCustomData("stylesheet");h?g!=h.getText()&&(CKEDITOR.env.ie&&9>CKEDITOR.env.version?h.$.styleSheet.cssText=g:h.setText(g)):(g=b.appendStyleText(g),g=new CKEDITOR.dom.element(g.ownerNode||g.owningElement),e.setCustomData("stylesheet",g),g.data("cke-temp",1))}e=b.getCustomData("stylesheet_ref")||0,b.setCustomData("stylesheet_ref",e+1),this.setCustomData("cke_includeReadonly",!a.config.disableReadonlyStyling),this.attachListener(this,"click",function(a){a=a.data;var b=new CKEDITOR.dom.elementPath(a.getTarget(),this).contains("a");b&&2!=a.$.button&&b.isReadOnly()&&a.preventDefault()});var i={8:1,46:1};this.attachListener(a,"key",function(b){if(a.readOnly)return!0;var c,d=b.data.domEvent.getKey();if(d in i){b=a.getSelection();var e,g,h,j,l=b.getRanges()[0],m=l.startPath(),d=8==d;CKEDITOR.env.ie&&11>CKEDITOR.env.version&&(e=b.getSelectedElement())||(e=f(b))?(a.fire("saveSnapshot"),l.moveToPosition(e,CKEDITOR.POSITION_BEFORE_START),e.remove(),l.select(),a.fire("saveSnapshot"),c=1):l.collapsed&&((g=m.block)&&(j=g[d?"getPrevious":"getNext"](k))&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("table")&&l[d?"checkStartOfBlock":"checkEndOfBlock"]()?(a.fire("saveSnapshot"),l[d?"checkEndOfBlock":"checkStartOfBlock"]()&&g.remove(),l["moveToElementEdit"+(d?"End":"Start")](j),l.select(),a.fire("saveSnapshot"),c=1):m.blockLimit&&m.blockLimit.is("td")&&(h=m.blockLimit.getAscendant("table"))&&l.checkBoundaryOfElement(h,d?CKEDITOR.START:CKEDITOR.END)&&(j=h[d?"getPrevious":"getNext"](k))?(a.fire("saveSnapshot"),l["moveToElementEdit"+(d?"End":"Start")](j),l.checkStartOfBlock()&&l.checkEndOfBlock()?j.remove():l.select(),a.fire("saveSnapshot"),c=1):(h=m.contains(["td","th","caption"]))&&l.checkBoundaryOfElement(h,d?CKEDITOR.START:CKEDITOR.END)&&(c=1))}return!c}),a.blockless&&CKEDITOR.env.ie&&CKEDITOR.env.needsBrFiller&&this.attachListener(this,"keyup",function(b){b.data.getKeystroke()in i&&!this.getFirst(d)&&(this.appendBogus(),b=a.createRange(),b.moveToPosition(this,CKEDITOR.POSITION_AFTER_START),b.select())}),this.attachListener(this,"dblclick",function(b){return a.readOnly?!1:(b={element:b.data.getTarget()},void a.fire("doubleclick",b))}),CKEDITOR.env.ie&&this.attachListener(this,"click",c),CKEDITOR.env.ie&&!CKEDITOR.env.edge||this.attachListener(this,"mousedown",function(b){var c=b.data.getTarget();c.is("img","hr","input","textarea","select")&&!c.isReadOnly()&&(a.getSelection().selectElement(c),c.is("input","textarea","select")&&b.data.preventDefault())}),CKEDITOR.env.edge&&this.attachListener(this,"mouseup",function(b){(b=b.data.getTarget())&&b.is("img")&&a.getSelection().selectElement(b)}),CKEDITOR.env.gecko&&this.attachListener(this,"mouseup",function(b){if(2==b.data.$.button&&(b=b.data.getTarget(),!b.getOuterHtml().replace(o,""))){var c=a.createRange();c.moveToElementEditStart(b),c.select(!0)}}),CKEDITOR.env.webkit&&(this.attachListener(this,"click",function(a){a.data.getTarget().is("input","select")&&a.data.preventDefault()}),this.attachListener(this,"mouseup",function(a){a.data.getTarget().is("input","textarea")&&a.data.preventDefault()})),CKEDITOR.env.webkit&&this.attachListener(a,"key",function(b){if(a.readOnly)return!0;if(b=b.data.domEvent.getKey(),b in i){var c=8==b,d=a.getSelection().getRanges()[0];if(b=d.startPath(),d.collapsed)a:{var e=b.block;if(e&&d[c?"checkStartOfBlock":"checkEndOfBlock"]()&&d.moveToClosestEditablePosition(e,!c)&&d.collapsed){if(d.startContainer.type==CKEDITOR.NODE_ELEMENT){var f=d.startContainer.getChild(d.startOffset-(c?1:0));if(f&&f.type==CKEDITOR.NODE_ELEMENT&&f.is("hr")){a.fire("saveSnapshot"),f.remove(),b=!0;break a}}if(d=d.startPath().block,!d||d&&d.contains(e))b=void 0;else{a.fire("saveSnapshot");var g;(g=(c?d:e).getBogus())&&g.remove(),g=a.getSelection(),f=g.createBookmarks(),(c?e:d).moveChildren(c?d:e,!1),b.lastElement.mergeSiblings(),j(e,d,!c),g.selectBookmarks(f),b=!0}}else b=!1}else c=d,g=b.block,d=c.endPath().block,g&&d&&!g.equals(d)?(a.fire("saveSnapshot"),(e=g.getBogus())&&e.remove(),c.enlarge(CKEDITOR.ENLARGE_INLINE),c.deleteContents(),d.getParent()&&(d.moveChildren(g,!1),b.lastElement.mergeSiblings(),j(g,d,!0)),c=a.getSelection().getRanges()[0],c.collapse(1),c.optimize(),""===c.startContainer.getHtml()&&c.startContainer.appendBogus(),c.select(),b=!0):b=!1;if(!b)return;return a.getSelection().scrollIntoView(),a.fire("saveSnapshot"),!1}},this,null,100)}}},_:{detach:function(){this.editor.setData(this.editor.getData(),0,1),this.clearListeners(),this.restoreAttrs();var a;if(a=this.removeCustomData("classes"))for(;a.length;)this.removeClass(a.pop());if(!this.is("textarea")){a=this.getDocument();var b=a.getHead();if(b.getCustomData("stylesheet")){var c=a.getCustomData("stylesheet_ref");--c?a.setCustomData("stylesheet_ref",c):(a.removeCustomData("stylesheet_ref"),b.removeCustomData("stylesheet").remove())}}this.editor.fire("contentDomUnload"),delete this.editor}}}),CKEDITOR.editor.prototype.editable=function(a){var b=this._.editable;return b&&a?0:(arguments.length&&(b=this._.editable=a?a instanceof CKEDITOR.editable?a:new CKEDITOR.editable(this,a):(b&&b.detach(),null)),b)},CKEDITOR.on("instanceLoaded",function(b){var c=b.editor;c.on("insertElement",function(a){a=a.data,a.type==CKEDITOR.NODE_ELEMENT&&(a.is("input")||a.is("textarea"))&&("false"!=a.getAttribute("contentEditable")&&a.data("cke-editable",a.hasAttribute("contenteditable")?"true":"1"),a.setAttribute("contentEditable",!1))}),c.on("selectionChange",function(b){if(!c.readOnly){var d=c.getSelection();d&&!d.isLocked&&(d=c.checkDirty(),c.fire("lockSnapshot"),a(b),c.fire("unlockSnapshot"),!d&&c.resetDirty()); -}})}),CKEDITOR.on("instanceCreated",function(a){var b=a.editor;b.on("mode",function(){var a=b.editable();if(a&&a.isInline()){var c=b.title;a.changeAttr("role","textbox"),a.changeAttr("aria-label",c),c&&a.changeAttr("title",c);var d=b.fire("ariaEditorHelpLabel",{}).label;if(d&&(c=this.ui.space(this.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?"top":"contents"))){var e=CKEDITOR.tools.getNextId(),d=CKEDITOR.dom.element.createFromHtml('<span id="'+e+'" class="cke_voice_label">'+d+"</span>");c.append(d),a.changeAttr("aria-describedby",e)}}})}),CKEDITOR.addCss(".cke_editable{cursor:text}.cke_editable img,.cke_editable input,.cke_editable textarea{cursor:default}"),k=CKEDITOR.dom.walker.whitespaces(!0),l=CKEDITOR.dom.walker.bookmark(!1,!0),m=CKEDITOR.dom.walker.empty(),n=CKEDITOR.dom.walker.bogus(),o=/(^|<body\b[^>]*>)\s*<(p|div|address|h\d|center|pre)[^>]*>\s*(?:<br[^>]*>| |\u00A0| )?\s*(:?<\/\2>)?\s*(?=$|<\/body>)/gi,p=function(){function a(a){return a.type==CKEDITOR.NODE_ELEMENT}function b(c,d){var e,f,g,h,i=[],j=d.range.startContainer;e=d.range.startPath();for(var j=k[j.getName()],l=0,m=c.getChildren(),n=m.count(),o=-1,p=-1,q=0,r=e.contains(k.$list);n>l;++l)e=m.getItem(l),a(e)?(g=e.getName(),r&&g in CKEDITOR.dtd.$list?i=i.concat(b(e,d)):(h=!!j[g],"br"!=g||!e.data("cke-eol")||l&&l!=n-1||(q=(f=l?i[l-1].node:m.getItem(l+1))&&(!a(f)||!f.is("br")),f=f&&a(f)&&k.$block[f.getName()]),-1!=o||h||(o=l),h||(p=l),i.push({isElement:1,isLineBreak:q,isBlock:e.isBlockBoundary(),hasBlockSibling:f,node:e,name:g,allowed:h}),f=q=0)):i.push({isElement:0,node:e,allowed:1});return o>-1&&(i[o].firstNotAllowed=1),p>-1&&(i[p].lastNotAllowed=1),i}function c(b,d){var e,f=[],g=b.getChildren(),h=g.count(),i=0,j=k[d],l=!b.is(k.$inline)||b.is("br");for(l&&f.push(" ");h>i;i++)e=g.getItem(i),a(e)&&!e.is(j)?f=f.concat(c(e,d)):f.push(e);return l&&f.push(" "),f}function e(b){return a(b.startContainer)&&b.startContainer.getChild(b.startOffset-1)}function f(b){return b&&a(b)&&(b.is(k.$removeEmpty)||b.is("a")&&!b.isBlockBoundary())}function i(b,c,d,e){var f,g,h=b.clone();h.setEndAt(c,CKEDITOR.POSITION_BEFORE_END),(f=new CKEDITOR.dom.walker(h).next())&&a(f)&&l[f.getName()]&&(g=f.getPrevious())&&a(g)&&!g.getParent().equals(b.startContainer)&&d.contains(g)&&e.contains(f)&&f.isIdentical(g)&&(f.moveChildren(g),f.remove(),i(b,c,d,e))}function j(b,c){function d(b,c){return c.isBlock&&c.isElement&&!c.node.is("br")&&a(b)&&b.is("br")?(b.remove(),1):void 0}var e=c.endContainer.getChild(c.endOffset),f=c.endContainer.getChild(c.endOffset-1);e&&d(e,b[b.length-1]),f&&d(f,b[0])&&(c.setEnd(c.endContainer,c.endOffset-1),c.collapse())}var k=CKEDITOR.dtd,l={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,ul:1,ol:1,li:1,pre:1,dl:1,blockquote:1},m={p:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1},n=CKEDITOR.tools.extend({},k.$inline);return delete n.br,function(l,o,p,q){var r=l.editor,s=!1;if("unfiltered_html"==o&&(o="html",s=!0),!q.checkReadOnly()){var t=new CKEDITOR.dom.elementPath(q.startContainer,q.root).blockLimit||q.root;l={type:o,dontFilter:s,editable:l,editor:r,range:q,blockLimit:t,mergeCandidates:[],zombies:[]},o=l.range,q=l.mergeCandidates;var u,v;if("text"==l.type&&o.shrink(CKEDITOR.SHRINK_ELEMENT,!0,!1)&&(u=CKEDITOR.dom.element.createFromHtml("<span> </span>",o.document),o.insertNode(u),o.setStartAfter(u)),s=new CKEDITOR.dom.elementPath(o.startContainer),l.endPath=t=new CKEDITOR.dom.elementPath(o.endContainer),!o.collapsed){var r=t.block||t.blockLimit,w=o.getCommonAncestor();r&&!r.equals(w)&&!r.contains(w)&&o.checkEndOfBlock()&&l.zombies.push(r),o.deleteContents()}for(;(v=e(o))&&a(v)&&v.isBlockBoundary()&&s.contains(v);)o.moveToPosition(v,CKEDITOR.POSITION_BEFORE_END);for(i(o,l.blockLimit,s,t),u&&(o.setEndBefore(u),o.collapse(),u.remove()),u=o.startPath(),(r=u.contains(f,!1,1))&&(o.splitElement(r),l.inlineStylesRoot=r,l.inlineStylesPeak=u.lastElement),u=o.createBookmark(),(r=u.startNode.getPrevious(d))&&a(r)&&f(r)&&q.push(r),(r=u.startNode.getNext(d))&&a(r)&&f(r)&&q.push(r),r=u.startNode;(r=r.getParent())&&f(r);)q.push(r);if(o.moveToBookmark(u),u=p){if(u=l.range,"text"==l.type&&l.inlineStylesRoot){for(v=l.inlineStylesPeak,o=v.getDocument().createText("{cke-peak}"),q=l.inlineStylesRoot.getParent();!v.equals(q);)o=o.appendTo(v.clone()),v=v.getParent();p=o.getOuterHtml().split("{cke-peak}").join(p)}if(v=l.blockLimit.getName(),/^\s+|\s+$/.test(p)&&"span"in CKEDITOR.dtd[v]){var x='<span data-cke-marker="1"> </span>';p=x+p+x}if(p=l.editor.dataProcessor.toHtml(p,{context:null,fixForBody:!1,protectedWhitespaces:!!x,dontFilter:l.dontFilter,filter:l.editor.activeFilter,enterMode:l.editor.activeEnterMode}),v=u.document.createElement("body"),v.setHtml(p),x&&(v.getFirst().remove(),v.getLast().remove()),(x=u.startPath().block)&&(1!=x.getChildCount()||!x.getBogus()))a:{var y;if(1==v.getChildCount()&&a(y=v.getFirst())&&y.is(m)&&!y.hasAttribute("contenteditable")){for(x=y.getElementsByTag("*"),u=0,q=x.count();q>u;u++)if(o=x.getItem(u),!o.is(n))break a;y.moveChildren(y.getParent(1)),y.remove()}}l.dataWrapper=v,u=p}if(u){y=l.range,u=y.document;var z;v=l.blockLimit,q=0;var A,B,C,x=[];p=r=0;var D,E;o=y.startContainer;var F,s=l.endPath.elements[0],t=s.getPosition(o),w=!(!s.getCommonAncestor(o)||t==CKEDITOR.POSITION_IDENTICAL||t&CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED);for(o=b(l.dataWrapper,l),j(o,y);q<o.length;q++){if(t=o[q],z=t.isLineBreak){z=y,D=v;var G=void 0,H=void 0;t.hasBlockSibling?z=1:(G=z.startContainer.getAscendant(k.$block,1))&&G.is({div:1,p:1})?(H=G.getPosition(D),H==CKEDITOR.POSITION_IDENTICAL||H==CKEDITOR.POSITION_CONTAINS?z=0:(D=z.splitElement(G),z.moveToPosition(D,CKEDITOR.POSITION_AFTER_START),z=1)):z=0}if(z)p=q>0;else{if(z=y.startPath(),!t.isBlock&&g(l.editor,z.block,z.blockLimit)&&(C=h(l.editor))&&(C=u.createElement(C),C.appendBogus(),y.insertNode(C),CKEDITOR.env.needsBrFiller&&(A=C.getBogus())&&A.remove(),y.moveToPosition(C,CKEDITOR.POSITION_BEFORE_END)),(z=y.startPath().block)&&!z.equals(B)&&((A=z.getBogus())&&(A.remove(),x.push(z)),B=z),t.firstNotAllowed&&(r=1),r&&t.isElement){for(z=y.startContainer,D=null;z&&!k[z.getName()][t.name];){if(z.equals(v)){z=null;break}D=z,z=z.getParent()}if(z)D&&(E=y.splitElement(D),l.zombies.push(E),l.zombies.push(D));else{D=v.getName(),F=!q,z=q==o.length-1,D=c(t.node,D);for(var G=[],H=D.length,I=0,J=void 0,K=0,L=-1;H>I;I++)J=D[I]," "==J?(K||F&&!I||(G.push(new CKEDITOR.dom.text(" ")),L=G.length),K=1):(G.push(J),K=0);z&&L==G.length&&G.pop(),F=G}}if(F){for(;z=F.pop();)y.insertNode(z);F=0}else y.insertNode(t.node);t.lastNotAllowed&&q<o.length-1&&((E=w?s:E)&&y.setEndAt(E,CKEDITOR.POSITION_AFTER_START),r=0),y.collapse()}}1!=o.length?A=!1:(A=o[0],A=A.isElement&&"false"==A.node.getAttribute("contenteditable")),A&&(p=!0,z=o[0].node,y.setStartAt(z,CKEDITOR.POSITION_BEFORE_START),y.setEndAt(z,CKEDITOR.POSITION_AFTER_END)),l.dontMoveCaret=p,l.bogusNeededBlocks=x}A=l.range;var M;for(E=l.bogusNeededBlocks,F=A.createBookmark();B=l.zombies.pop();)B.getParent()&&(C=A.clone(),C.moveToElementEditStart(B),C.removeEmptyBlocksAtEnd());if(E)for(;B=E.pop();)CKEDITOR.env.needsBrFiller?B.appendBogus():B.append(A.document.createText("Â "));for(;B=l.mergeCandidates.pop();)B.mergeSiblings();if(A.moveToBookmark(F),!l.dontMoveCaret){for(B=e(A);B&&a(B)&&!B.is(k.$empty);){if(B.isBlockBoundary())A.moveToPosition(B,CKEDITOR.POSITION_BEFORE_END);else{if(f(B)&&B.getHtml().match(/(\s| )$/g)){M=null;break}M=A.clone(),M.moveToPosition(B,CKEDITOR.POSITION_BEFORE_END)}B=B.getLast(d)}M&&A.moveToRange(M)}}}}(),q=function(){function a(a){return a=new CKEDITOR.dom.walker(a),a.guard=function(a,b){return b?!1:a.type==CKEDITOR.NODE_ELEMENT?a.is(CKEDITOR.dtd.$tableContent):void 0},a.evaluator=function(a){return a.type==CKEDITOR.NODE_ELEMENT},a}function b(a,b,c){return b=a.getDocument().createElement(b),a.append(b,c),b}function c(a){var b,c=a.count();for(c;0<c--;)b=a.getItem(c),CKEDITOR.tools.trim(b.getHtml())||(b.appendBogus(),CKEDITOR.env.ie&&9>CKEDITOR.env.version&&b.getChildCount()&&b.getFirst().remove())}return function(d){var e=d.startContainer,f=e.getAscendant("table",1),g=!1;c(f.getElementsByTag("td")),c(f.getElementsByTag("th")),f=d.clone(),f.setStart(e,0),f=a(f).lastBackward(),f||(f=d.clone(),f.setEndAt(e,CKEDITOR.POSITION_BEFORE_END),f=a(f).lastForward(),g=!0),f||(f=e),f.is("table")?(d.setStartAt(f,CKEDITOR.POSITION_BEFORE_START),d.collapse(!0),f.remove()):(f.is({tbody:1,thead:1,tfoot:1})&&(f=b(f,"tr",g)),f.is("tr")&&(f=b(f,f.getParent().is("thead")?"th":"td",g)),(e=f.getBogus())&&e.remove(),d.moveToPosition(f,g?CKEDITOR.POSITION_AFTER_START:CKEDITOR.POSITION_BEFORE_END))}}(),r={eol:{detect:function(a,b){var c=a.range,d=c.clone(),e=c.clone(),f=new CKEDITOR.dom.elementPath(c.startContainer,b),g=new CKEDITOR.dom.elementPath(c.endContainer,b);d.collapse(1),e.collapse(),f.block&&d.checkBoundaryOfElement(f.block,CKEDITOR.END)&&(c.setStartAfter(f.block),a.prependEolBr=1),g.block&&e.checkBoundaryOfElement(g.block,CKEDITOR.START)&&(c.setEndBefore(g.block),a.appendEolBr=1)},fix:function(a,b){var c,d=b.getDocument();a.appendEolBr&&(c=this.createEolBr(d),a.fragment.append(c)),!a.prependEolBr||c&&!c.getPrevious()||a.fragment.append(this.createEolBr(d),1)},createEolBr:function(a){return a.createElement("br",{attributes:{"data-cke-eol":1}})}},bogus:{exclude:function(a){var b=a.range.getBoundaryNodes(),c=b.startNode,b=b.endNode;!b||!n(b)||c&&c.equals(b)||a.range.setEndBefore(b)}},tree:{rebuild:function(a,b){var c,d=a.range,e=d.getCommonAncestor(),f=new CKEDITOR.dom.elementPath(e,b),g=new CKEDITOR.dom.elementPath(d.startContainer,b),d=new CKEDITOR.dom.elementPath(d.endContainer,b);if(e.type==CKEDITOR.NODE_TEXT&&(e=e.getParent()),f.blockLimit.is({tr:1,table:1})){var h=f.contains("table").getParent();c=function(a){return!a.equals(h)}}else if(f.block&&f.block.is(CKEDITOR.dtd.$listItem)&&(g=g.contains(CKEDITOR.dtd.$list),d=d.contains(CKEDITOR.dtd.$list),!g.equals(d))){var i=f.contains(CKEDITOR.dtd.$list).getParent();c=function(a){return!a.equals(i)}}c||(c=function(a){return!a.equals(f.block)&&!a.equals(f.blockLimit)}),this.rebuildFragment(a,b,e,c)},rebuildFragment:function(a,b,c,d){for(var e;c&&!c.equals(b)&&d(c);)e=c.clone(0,1),a.fragment.appendTo(e),a.fragment=e,c=c.getParent()}},cell:{shrink:function(a){a=a.range;var b=a.startContainer,c=a.endContainer,d=a.startOffset,e=a.endOffset;b.type==CKEDITOR.NODE_ELEMENT&&b.equals(c)&&b.is("tr")&&++d==e&&a.shrink(CKEDITOR.SHRINK_TEXT)}}},s=function(){function a(a,b){var c=a.getParent();c.is(CKEDITOR.dtd.$inline)&&a[b?"insertBefore":"insertAfter"](c)}function b(b,c,d){a(c),a(d,1);for(var e;e=d.getNext();)e.insertAfter(c),c=e;m(b)&&b.remove()}function c(a,b){var c=new CKEDITOR.dom.range(a);return c.setStartAfter(b.startNode),c.setEndBefore(b.endNode),c}return{list:{detectMerge:function(a,b){var d=c(b,a.bookmark),e=d.startPath(),f=d.endPath(),g=e.contains(CKEDITOR.dtd.$list),h=f.contains(CKEDITOR.dtd.$list);a.mergeList=g&&h&&g.getParent().equals(h.getParent())&&!g.equals(h),a.mergeListItems=e.block&&f.block&&e.block.is(CKEDITOR.dtd.$listItem)&&f.block.is(CKEDITOR.dtd.$listItem),(a.mergeList||a.mergeListItems)&&(d=d.clone(),d.setStartBefore(a.bookmark.startNode),d.setEndAfter(a.bookmark.endNode),a.mergeListBookmark=d.createBookmark())},merge:function(a,c){if(a.mergeListBookmark){var d=a.mergeListBookmark.startNode,e=a.mergeListBookmark.endNode,f=new CKEDITOR.dom.elementPath(d,c),g=new CKEDITOR.dom.elementPath(e,c);if(a.mergeList){var h=f.contains(CKEDITOR.dtd.$list),i=g.contains(CKEDITOR.dtd.$list);h.equals(i)||(i.moveChildren(h),i.remove())}a.mergeListItems&&(f=f.contains(CKEDITOR.dtd.$listItem),g=g.contains(CKEDITOR.dtd.$listItem),f.equals(g)||b(g,d,e)),d.remove(),e.remove()}}},block:{detectMerge:function(a,b){if(!a.tableContentsRanges&&!a.mergeListBookmark){var c=new CKEDITOR.dom.range(b);c.setStartBefore(a.bookmark.startNode),c.setEndAfter(a.bookmark.endNode),a.mergeBlockBookmark=c.createBookmark()}},merge:function(a,c){if(a.mergeBlockBookmark&&!a.purgeTableBookmark){var d=a.mergeBlockBookmark.startNode,e=a.mergeBlockBookmark.endNode,f=new CKEDITOR.dom.elementPath(d,c),g=new CKEDITOR.dom.elementPath(e,c),f=f.block,g=g.block;f&&g&&!f.equals(g)&&b(g,d,e),d.remove(),e.remove()}}},table:function(){function a(a){var c,e=[],f=new CKEDITOR.dom.walker(a),g=a.startPath().contains(d),h=a.endPath().contains(d),i={};return f.guard=function(f,j){if(f.type==CKEDITOR.NODE_ELEMENT){var k="visited_"+(j?"out":"in");if(f.getCustomData(k))return;CKEDITOR.dom.element.setMarker(i,f,k,1)}j&&g&&f.equals(g)?(c=a.clone(),c.setEndAt(g,CKEDITOR.POSITION_BEFORE_END),e.push(c)):!j&&h&&f.equals(h)?(c=a.clone(),c.setStartAt(h,CKEDITOR.POSITION_AFTER_START),e.push(c)):((k=!j)&&(k=f.type==CKEDITOR.NODE_ELEMENT&&f.is(d)&&(!g||b(f,g))&&(!h||b(f,h))),k&&(c=a.clone(),c.selectNodeContents(f),e.push(c)))},f.lastForward(),CKEDITOR.dom.element.clearAllMarkers(i),e}function b(a,b){var c=CKEDITOR.POSITION_CONTAINS+CKEDITOR.POSITION_IS_CONTAINED,d=a.getPosition(b);return d===CKEDITOR.POSITION_IDENTICAL?!1:0===(d&c)}var d={td:1,th:1,caption:1};return{detectPurge:function(a){var b=a.range,c=b.clone();c.enlarge(CKEDITOR.ENLARGE_ELEMENT);var c=new CKEDITOR.dom.walker(c),e=0;if(c.evaluator=function(a){a.type==CKEDITOR.NODE_ELEMENT&&a.is(d)&&++e},c.checkForward(),e>1){var c=b.startPath().contains("table"),f=b.endPath().contains("table");c&&f&&b.checkBoundaryOfElement(c,CKEDITOR.START)&&b.checkBoundaryOfElement(f,CKEDITOR.END)&&(b=a.range.clone(),b.setStartBefore(c),b.setEndAfter(f),a.purgeTableBookmark=b.createBookmark())}},detectRanges:function(e,f){var g,h,i=c(f,e.bookmark),j=i.clone(),k=i.getCommonAncestor();k.is(CKEDITOR.dtd.$tableContent)&&!k.is(d)&&(k=k.getAscendant("table",!0)),h=k,k=new CKEDITOR.dom.elementPath(i.startContainer,h),h=new CKEDITOR.dom.elementPath(i.endContainer,h),k=k.contains("table"),h=h.contains("table"),(k||h)&&(k&&h&&b(k,h)?(e.tableSurroundingRange=j,j.setStartAt(k,CKEDITOR.POSITION_AFTER_END),j.setEndAt(h,CKEDITOR.POSITION_BEFORE_START),j=i.clone(),j.setEndAt(k,CKEDITOR.POSITION_AFTER_END),g=i.clone(),g.setStartAt(h,CKEDITOR.POSITION_BEFORE_START),g=a(j).concat(a(g))):k?h||(e.tableSurroundingRange=j,j.setStartAt(k,CKEDITOR.POSITION_AFTER_END),i.setEndAt(k,CKEDITOR.POSITION_AFTER_END)):(e.tableSurroundingRange=j,j.setEndAt(h,CKEDITOR.POSITION_BEFORE_START),i.setStartAt(h,CKEDITOR.POSITION_AFTER_START)),e.tableContentsRanges=g?g:a(i))},deleteRanges:function(a){for(var b;b=a.tableContentsRanges.pop();)b.extractContents(),m(b.startContainer)&&b.startContainer.appendBogus();a.tableSurroundingRange&&a.tableSurroundingRange.extractContents()},purge:function(a){if(a.purgeTableBookmark){var b=a.doc,c=a.range.clone(),b=b.createElement("p");b.insertBefore(a.purgeTableBookmark.startNode),c.moveToBookmark(a.purgeTableBookmark),c.deleteContents(),a.range.moveToPosition(b,CKEDITOR.POSITION_AFTER_START)}}}}(),detectExtractMerge:function(a){return!(a.range.startPath().contains(CKEDITOR.dtd.$listItem)&&a.range.endPath().contains(CKEDITOR.dtd.$listItem))},fixUneditableRangePosition:function(a){a.startContainer.getDtd()["#"]||a.moveToClosestEditablePosition(null,!0)},autoParagraph:function(a,b){var c,d=b.startPath();g(a,d.block,d.blockLimit)&&(c=h(a))&&(c=b.document.createElement(c),c.appendBogus(),b.insertNode(c),b.moveToPosition(c,CKEDITOR.POSITION_AFTER_START))}}}()}(),function(){function a(){var a,b=this._.fakeSelection;b&&(a=this.getSelection(1),a&&a.isHidden()||(b.reset(),b=0)),(b||(b=a||this.getSelection(1),b&&b.getType()!=CKEDITOR.SELECTION_NONE))&&(this.fire("selectionCheck",b),a=this.elementPath(),a.compare(this._.selectionPreviousPath)||(CKEDITOR.env.webkit&&(this._.previousActive=this.document.getActive()),this._.selectionPreviousPath=a,this.fire("selectionChange",{selection:b,path:a})))}function b(){m=!0,l||(c.call(this),l=CKEDITOR.tools.setTimeout(c,200,this))}function c(){l=null,m&&(CKEDITOR.tools.setTimeout(a,0,this),m=!1)}function d(a){return!(!n(a)&&(a.type!=CKEDITOR.NODE_ELEMENT||a.is(CKEDITOR.dtd.$empty)))}function e(a){function b(b,c){return b&&b.type!=CKEDITOR.NODE_TEXT?a.clone()["moveToElementEdit"+(c?"End":"Start")](b):!1}if(!(a.root instanceof CKEDITOR.editable))return!1;var c=a.startContainer,e=a.getPreviousNode(d,null,c),f=a.getNextNode(d,null,c);return!(!b(e)&&!b(f,1)&&(e||f||c.type==CKEDITOR.NODE_ELEMENT&&c.isBlockBoundary()&&c.getBogus()))}function f(a){g(a,!1);var b=a.getDocument().createText(s);return a.setCustomData("cke-fillingChar",b),b}function g(a,b){var c=a&&a.removeCustomData("cke-fillingChar");if(c){if(!1!==b){var d=a.getDocument().getSelection().getNative(),e=d&&"None"!=d.type&&d.getRangeAt(0),f=s.length;if(c.getLength()>f&&e&&e.intersectsNode(c.$)){var g=[{node:d.anchorNode,offset:d.anchorOffset},{node:d.focusNode,offset:d.focusOffset}];d.anchorNode==c.$&&d.anchorOffset>f&&(g[0].offset-=f),d.focusNode==c.$&&d.focusOffset>f&&(g[1].offset-=f)}}c.setText(h(c.getText(),1)),g&&(c=a.getDocument().$,d=c.getSelection(),c=c.createRange(),c.setStart(g[0].node,g[0].offset),c.collapse(!0),d.removeAllRanges(),d.addRange(c),d.extend(g[1].node,g[1].offset))}}function h(a,b){return b?a.replace(t,function(a,b){return b?"Â ":""}):a.replace(s,"")}function i(a){var b=CKEDITOR.dom.element.createFromHtml('<div data-cke-hidden-sel="1" data-cke-temp="1" style="'+(CKEDITOR.env.ie?"display:none":"position:fixed;top:0;left:-1000px")+'"> </div>',a.document);a.fire("lockSnapshot"),a.editable().append(b);var c=a.getSelection(1),d=a.createRange(),e=c.root.on("selectionchange",function(a){a.cancel()},null,null,0);d.setStartAt(b,CKEDITOR.POSITION_AFTER_START),d.setEndAt(b,CKEDITOR.POSITION_BEFORE_END),c.selectRanges([d]),e.removeListener(),a.fire("unlockSnapshot"),a._.hiddenSelectionContainer=b}function j(a){var b={37:1,39:1,8:1,46:1};return function(c){var d=c.data.getKeystroke();if(b[d]){var e=a.getSelection().getRanges(),f=e[0];1==e.length&&f.collapsed&&(d=f[38>d?"getPreviousEditableNode":"getNextEditableNode"]())&&d.type==CKEDITOR.NODE_ELEMENT&&"false"==d.getAttribute("contenteditable")&&(a.getSelection().fake(d),c.data.preventDefault(),c.cancel())}}}function k(a){for(var b=0;b<a.length;b++){var c=a[b];if(c.getCommonAncestor().isReadOnly()&&a.splice(b,1),!c.collapsed){if(c.startContainer.isReadOnly())for(var d,e=c.startContainer;e&&!((d=e.type==CKEDITOR.NODE_ELEMENT)&&e.is("body")||!e.isReadOnly());)d&&"false"==e.getAttribute("contentEditable")&&c.setStartAfter(e),e=e.getParent();e=c.startContainer,d=c.endContainer;var f=c.startOffset,g=c.endOffset,h=c.clone();e&&e.type==CKEDITOR.NODE_TEXT&&(f>=e.getLength()?h.setStartAfter(e):h.setStartBefore(e)),d&&d.type==CKEDITOR.NODE_TEXT&&(g?h.setEndAfter(d):h.setEndBefore(d)),e=new CKEDITOR.dom.walker(h),e.evaluator=function(d){if(d.type==CKEDITOR.NODE_ELEMENT&&d.isReadOnly()){var e=c.clone();return c.setEndBefore(d),c.collapsed&&a.splice(b--,1),d.getPosition(h.endContainer)&CKEDITOR.POSITION_CONTAINS||(e.setStartAfter(d),e.collapsed||a.splice(b+1,0,e)),!0}return!1},e.next()}}return a}var l,m,n=CKEDITOR.dom.walker.invisible(1),o=function(){function a(a){return function(b){var c=b.editor.createRange();return c.moveToClosestEditablePosition(b.selected,a)&&b.editor.getSelection().selectRanges([c]),!1}}function b(a){return function(b){var c,d=b.editor,e=d.createRange();return(c=e.moveToClosestEditablePosition(b.selected,a))||(c=e.moveToClosestEditablePosition(b.selected,!a)),c&&d.getSelection().selectRanges([e]),d.fire("saveSnapshot"),b.selected.remove(),c||(e.moveToElementEditablePosition(d.editable()),d.getSelection().selectRanges([e])),d.fire("saveSnapshot"),!1}}var c=a(),d=a(1);return{37:c,38:c,39:d,40:d,8:b(),46:b(1)}}();CKEDITOR.on("instanceCreated",function(c){function d(){var a=e.getSelection();a&&a.removeAllRanges()}var e=c.editor;e.on("contentDom",function(){function c(){h=new CKEDITOR.dom.selection(e.getSelection()),h.lock()}function d(){k.removeListener("mouseup",d),n.removeListener("mouseup",d);var a=CKEDITOR.document.$.selection,b=a.createRange();"None"!=a.type&&b.parentElement().ownerDocument==i.$&&b.select()}var f,h,i=e.document,k=CKEDITOR.document,l=e.editable(),m=i.getBody(),n=i.getDocumentElement(),o=l.isInline();if(CKEDITOR.env.gecko&&l.attachListener(l,"focus",function(a){a.removeListener(),0!==f&&(a=e.getSelection().getNative())&&a.isCollapsed&&a.anchorNode==l.$&&(a=e.createRange(),a.moveToElementEditStart(l),a.select())},null,null,-2),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){f&&CKEDITOR.env.webkit&&(f=e._.previousActive&&e._.previousActive.equals(i.getActive())),e.unlockSelection(f),f=0},null,null,-1),l.attachListener(l,"mousedown",function(){f=0}),(CKEDITOR.env.ie||o)&&(p?l.attachListener(l,"beforedeactivate",c,null,null,-1):l.attachListener(e,"selectionCheck",c,null,null,-1),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusOut":"blur",function(){e.lockSelection(h),f=1},null,null,-1),l.attachListener(l,"mousedown",function(){f=0})),CKEDITOR.env.ie&&!o){var q;l.attachListener(l,"mousedown",function(a){2==a.data.$.button&&((a=e.document.getSelection())&&a.getType()!=CKEDITOR.SELECTION_NONE||(q=e.window.getScrollPosition()))}),l.attachListener(l,"mouseup",function(a){2==a.data.$.button&&q&&(e.document.$.documentElement.scrollLeft=q.x,e.document.$.documentElement.scrollTop=q.y),q=null}),"BackCompat"!=i.$.compatMode&&((CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&n.on("mousedown",function(a){function b(a){if(a=a.data.$,d){var b=m.$.createTextRange();try{b.moveToPoint(a.clientX,a.clientY)}catch(c){}d.setEndPoint(0>f.compareEndPoints("StartToStart",b)?"EndToEnd":"StartToStart",b),d.select()}}function c(){n.removeListener("mousemove",b),k.removeListener("mouseup",c),n.removeListener("mouseup",c),d.select()}if(a=a.data,a.getTarget().is("html")&&a.$.y<n.$.clientHeight&&a.$.x<n.$.clientWidth){var d=m.$.createTextRange();try{d.moveToPoint(a.$.clientX,a.$.clientY)}catch(e){}var f=d.duplicate();n.on("mousemove",b),k.on("mouseup",c),n.on("mouseup",c)}}),7<CKEDITOR.env.version&&11>CKEDITOR.env.version&&n.on("mousedown",function(a){a.data.getTarget().is("html")&&(k.on("mouseup",d),n.on("mouseup",d))}))}if(l.attachListener(l,"selectionchange",a,e),l.attachListener(l,"keyup",b,e),l.attachListener(l,CKEDITOR.env.webkit?"DOMFocusIn":"focus",function(){e.forceNextSelectionCheck(),e.selectionChange(1)}),o&&(CKEDITOR.env.webkit||CKEDITOR.env.gecko)){var r;l.attachListener(l,"mousedown",function(){r=1}),l.attachListener(i.getDocumentElement(),"mouseup",function(){r&&b.call(e),r=0})}else l.attachListener(CKEDITOR.env.ie?l:i.getDocumentElement(),"mouseup",b,e);CKEDITOR.env.webkit&&l.attachListener(i,"keydown",function(a){switch(a.data.getKey()){case 13:case 33:case 34:case 35:case 36:case 37:case 39:case 8:case 45:case 46:g(l)}},null,null,-1),l.attachListener(l,"keydown",j(e),null,null,-1)}),e.on("setData",function(){e.unlockSelection(),CKEDITOR.env.webkit&&d()}),e.on("contentDomUnload",function(){e.unlockSelection()}),CKEDITOR.env.ie9Compat&&e.on("beforeDestroy",d,null,null,9),e.on("dataReady",function(){delete e._.fakeSelection,delete e._.hiddenSelectionContainer,e.selectionChange(1)}),e.on("loadSnapshot",function(){var a=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT),b=e.editable().getLast(a);b&&b.hasAttribute("data-cke-hidden-sel")&&(b.remove(),CKEDITOR.env.gecko&&(a=e.editable().getFirst(a))&&a.is("br")&&a.getAttribute("_moz_editor_bogus_node")&&a.remove())},null,null,100),e.on("key",function(a){if("wysiwyg"==e.mode){var b=e.getSelection();if(b.isFake){var c=o[a.data.keyCode];if(c)return c({editor:e,selected:b.getSelectedElement(),selection:b,keyEvent:a})}}})}),CKEDITOR.env.webkit&&CKEDITOR.on("instanceReady",function(a){var b=a.editor;b.on("selectionChange",function(){var a=b.editable(),c=a.getCustomData("cke-fillingChar");c&&(c.getCustomData("ready")?g(a):c.setCustomData("ready",1))},null,null,-1),b.on("beforeSetMode",function(){g(b.editable())},null,null,-1),b.on("getSnapshot",function(a){a.data&&(a.data=h(a.data))},b,null,20),b.on("toDataFormat",function(a){a.data.dataValue=h(a.data.dataValue)},null,null,0)}),CKEDITOR.editor.prototype.selectionChange=function(c){(c?a:b).call(this)},CKEDITOR.editor.prototype.getSelection=function(a){return!this._.savedSelection&&!this._.fakeSelection||a?(a=this.editable())&&"wysiwyg"==this.mode?new CKEDITOR.dom.selection(a):null:this._.savedSelection||this._.fakeSelection},CKEDITOR.editor.prototype.lockSelection=function(a){return a=a||this.getSelection(1),a.getType()!=CKEDITOR.SELECTION_NONE?(!a.isLocked&&a.lock(),this._.savedSelection=a,!0):!1},CKEDITOR.editor.prototype.unlockSelection=function(a){var b=this._.savedSelection;return b?(b.unlock(a),delete this._.savedSelection,!0):!1},CKEDITOR.editor.prototype.forceNextSelectionCheck=function(){delete this._.selectionPreviousPath},CKEDITOR.dom.document.prototype.getSelection=function(){return new CKEDITOR.dom.selection(this)},CKEDITOR.dom.range.prototype.select=function(){var a=this.root instanceof CKEDITOR.editable?this.root.editor.getSelection():new CKEDITOR.dom.selection(this.root);return a.selectRanges([this]),a},CKEDITOR.SELECTION_NONE=1,CKEDITOR.SELECTION_TEXT=2,CKEDITOR.SELECTION_ELEMENT=3;var p="function"!=typeof window.getSelection,q=1;CKEDITOR.dom.selection=function(a){if(a instanceof CKEDITOR.dom.selection){var b=a;a=a.root}var c=a instanceof CKEDITOR.dom.element;if(this.rev=b?b.rev:q++,this.document=a instanceof CKEDITOR.dom.document?a:a.getDocument(),this.root=c?a:this.document.getBody(),this.isLocked=0,this._={cache:{}},b)return CKEDITOR.tools.extend(this._.cache,b._.cache),this.isFake=b.isFake,this.isLocked=b.isLocked,this;a=this.getNative();var d,e;if(a)if(a.getRangeAt)d=(e=a.rangeCount&&a.getRangeAt(0))&&new CKEDITOR.dom.node(e.commonAncestorContainer);else{try{e=a.createRange()}catch(f){}d=e&&CKEDITOR.dom.element.get(e.item&&e.item(0)||e.parentElement())}return(!d||d.type!=CKEDITOR.NODE_ELEMENT&&d.type!=CKEDITOR.NODE_TEXT||!this.root.equals(d)&&!this.root.contains(d))&&(this._.cache.type=CKEDITOR.SELECTION_NONE,this._.cache.startElement=null,this._.cache.selectedElement=null,this._.cache.selectedText="",this._.cache.ranges=new CKEDITOR.dom.rangeList),this};var r={img:1,hr:1,li:1,table:1,tr:1,td:1,th:1,embed:1,object:1,ol:1,ul:1,a:1,input:1,form:1,select:1,textarea:1,button:1,fieldset:1,thead:1,tfoot:1},s=CKEDITOR.tools.repeat("​",7),t=new RegExp(s+"( )?","g");CKEDITOR.tools.extend(CKEDITOR.dom.selection,{_removeFillingCharSequenceString:h,_createFillingCharSequenceNode:f,FILLING_CHAR_SEQUENCE:s}),CKEDITOR.dom.selection.prototype={getNative:function(){return void 0!==this._.cache.nativeSel?this._.cache.nativeSel:this._.cache.nativeSel=p?this.document.$.selection:this.document.getWindow().$.getSelection()},getType:p?function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_NONE;try{var c=this.getNative(),d=c.type;"Text"==d&&(b=CKEDITOR.SELECTION_TEXT),"Control"==d&&(b=CKEDITOR.SELECTION_ELEMENT),c.createRange().parentElement()&&(b=CKEDITOR.SELECTION_TEXT)}catch(e){}return a.type=b}:function(){var a=this._.cache;if(a.type)return a.type;var b=CKEDITOR.SELECTION_TEXT,c=this.getNative();if(c&&c.rangeCount){if(1==c.rangeCount){var c=c.getRangeAt(0),d=c.startContainer;d==c.endContainer&&1==d.nodeType&&1==c.endOffset-c.startOffset&&r[d.childNodes[c.startOffset].nodeName.toLowerCase()]&&(b=CKEDITOR.SELECTION_ELEMENT)}}else b=CKEDITOR.SELECTION_NONE;return a.type=b},getRanges:function(){var a=p?function(){function a(a){return new CKEDITOR.dom.node(a).getIndex()}var b=function(b,c){b=b.duplicate(),b.collapse(c);var d=b.parentElement();if(!d.hasChildNodes())return{container:d,offset:0};for(var e,f,g,h,i=d.children,j=b.duplicate(),k=0,l=i.length-1,m=-1;l>=k;)if(m=Math.floor((k+l)/2),e=i[m],j.moveToElementText(e),g=j.compareEndPoints("StartToStart",b),g>0)l=m-1;else{if(!(0>g))return{container:d,offset:a(e)};k=m+1}if(-1==m||m==i.length-1&&0>g){if(j.moveToElementText(d),j.setEndPoint("StartToStart",b),j=j.text.replace(/(\r\n|\r)/g,"\n").length,i=d.childNodes,!j)return e=i[i.length-1],e.nodeType!=CKEDITOR.NODE_TEXT?{container:d,offset:i.length}:{container:e,offset:e.nodeValue.length};for(d=i.length;j>0&&d>0;)f=i[--d],f.nodeType==CKEDITOR.NODE_TEXT&&(h=f,j-=f.nodeValue.length);return{container:h,offset:-j}}if(j.collapse(g>0),j.setEndPoint(g>0?"StartToStart":"EndToStart",b),j=j.text.replace(/(\r\n|\r)/g,"\n").length,!j)return{container:d,offset:a(e)+(g>0?0:1)};for(;j>0;)try{f=e[g>0?"previousSibling":"nextSibling"],f.nodeType==CKEDITOR.NODE_TEXT&&(j-=f.nodeValue.length,h=f),e=f}catch(n){return{container:d,offset:a(e)}}return{container:h,offset:g>0?-j:h.nodeValue.length+j}};return function(){var a=this.getNative(),c=a&&a.createRange(),d=this.getType();if(!a)return[];if(d==CKEDITOR.SELECTION_TEXT)return a=new CKEDITOR.dom.range(this.root),d=b(c,!0),a.setStart(new CKEDITOR.dom.node(d.container),d.offset),d=b(c),a.setEnd(new CKEDITOR.dom.node(d.container),d.offset),a.endContainer.getPosition(a.startContainer)&CKEDITOR.POSITION_PRECEDING&&a.endOffset<=a.startContainer.getIndex()&&a.collapse(),[a];if(d==CKEDITOR.SELECTION_ELEMENT){for(var d=[],e=0;e<c.length;e++){for(var f=c.item(e),g=f.parentNode,h=0,a=new CKEDITOR.dom.range(this.root);h<g.childNodes.length&&g.childNodes[h]!=f;h++);a.setStart(new CKEDITOR.dom.node(g),h),a.setEnd(new CKEDITOR.dom.node(g),h+1),d.push(a)}return d}return[]}}():function(){var a,b=[],c=this.getNative();if(!c)return b;for(var d=0;d<c.rangeCount;d++){var e=c.getRangeAt(d);a=new CKEDITOR.dom.range(this.root),a.setStart(new CKEDITOR.dom.node(e.startContainer),e.startOffset),a.setEnd(new CKEDITOR.dom.node(e.endContainer),e.endOffset),b.push(a)}return b};return function(b){var c=this._.cache,d=c.ranges;return d||(c.ranges=d=new CKEDITOR.dom.rangeList(a.call(this))),b?k(new CKEDITOR.dom.rangeList(d.slice())):d}}(),getStartElement:function(){var a=this._.cache;if(void 0!==a.startElement)return a.startElement;var b;switch(this.getType()){case CKEDITOR.SELECTION_ELEMENT:return this.getSelectedElement();case CKEDITOR.SELECTION_TEXT:var c=this.getRanges()[0];if(c){if(c.collapsed)b=c.startContainer,b.type!=CKEDITOR.NODE_ELEMENT&&(b=b.getParent());else{for(c.optimize();b=c.startContainer,c.startOffset==(b.getChildCount?b.getChildCount():b.getLength())&&!b.isBlockBoundary();)c.setStartAfter(b);if(b=c.startContainer,b.type!=CKEDITOR.NODE_ELEMENT)return b.getParent();if((b=b.getChild(c.startOffset))&&b.type==CKEDITOR.NODE_ELEMENT)for(c=b.getFirst();c&&c.type==CKEDITOR.NODE_ELEMENT;)b=c,c=c.getFirst();else b=c.startContainer}b=b.$}}return a.startElement=b?new CKEDITOR.dom.element(b):null},getSelectedElement:function(){var a=this._.cache;if(void 0!==a.selectedElement)return a.selectedElement;var b=this,c=CKEDITOR.tools.tryThese(function(){return b.getNative().createRange().item(0)},function(){for(var a,c,d=b.getRanges()[0].clone(),e=2;e&&!((a=d.getEnclosedNode())&&a.type==CKEDITOR.NODE_ELEMENT&&r[a.getName()]&&(c=a));e--)d.shrink(CKEDITOR.SHRINK_ELEMENT);return c&&c.$});return a.selectedElement=c?new CKEDITOR.dom.element(c):null},getSelectedText:function(){var a=this._.cache;if(void 0!==a.selectedText)return a.selectedText;var b=this.getNative(),b=p?"Control"==b.type?"":b.createRange().text:b.toString();return a.selectedText=b},lock:function(){this.getRanges(),this.getStartElement(),this.getSelectedElement(),this.getSelectedText(),this._.cache.nativeSel=null,this.isLocked=1},unlock:function(a){if(this.isLocked){if(a)var b=this.getSelectedElement(),c=!b&&this.getRanges(),d=this.isFake;this.isLocked=0,this.reset(),a&&(a=b||c[0]&&c[0].getCommonAncestor())&&a.getAscendant("body",1)&&(d?this.fake(b):b?this.selectElement(b):this.selectRanges(c))}},reset:function(){this._.cache={},this.isFake=0;var a=this.root.editor;if(a&&a._.fakeSelection)if(this.rev==a._.fakeSelection.rev){delete a._.fakeSelection;var b=a._.hiddenSelectionContainer;if(b){var c=a.checkDirty();a.fire("lockSnapshot"),b.remove(),a.fire("unlockSnapshot"),!c&&a.resetDirty()}delete a._.hiddenSelectionContainer}else CKEDITOR.warn("selection-fake-reset");this.rev=q++},selectElement:function(a){ -var b=new CKEDITOR.dom.range(this.root);b.setStartBefore(a),b.setEndAfter(a),this.selectRanges([b])},selectRanges:function(a){var b=this.root.editor,b=b&&b._.hiddenSelectionContainer;if(this.reset(),b)for(var c,b=this.root,d=0;d<a.length;++d)c=a[d],c.endContainer.equals(b)&&(c.endOffset=Math.min(c.endOffset,b.getChildCount()));if(a.length)if(this.isLocked){var h=CKEDITOR.document.getActive();this.unlock(),this.selectRanges(a),this.lock(),h&&!h.equals(this.root)&&h.focus()}else{var i,j,k;if(1==a.length&&!(k=a[0]).collapsed&&(i=k.getEnclosedNode())&&i.type==CKEDITOR.NODE_ELEMENT&&(k=k.clone(),k.shrink(CKEDITOR.SHRINK_ELEMENT,!0),(j=k.getEnclosedNode())&&j.type==CKEDITOR.NODE_ELEMENT&&(i=j),"false"==i.getAttribute("contenteditable"))||(i=void 0),i)this.fake(i);else{if(p){k=CKEDITOR.dom.walker.whitespaces(!0),j=/\ufeff|\u00a0/,b={table:1,tbody:1,tr:1},1<a.length&&(i=a[a.length-1],a[0].setEnd(i.endContainer,i.endOffset)),i=a[0],a=i.collapsed;var l,m,n;if((c=i.getEnclosedNode())&&c.type==CKEDITOR.NODE_ELEMENT&&c.getName()in r&&(!c.is("a")||!c.getText()))try{return n=c.$.createControlRange(),n.addElement(c.$),void n.select()}catch(o){}(i.startContainer.type==CKEDITOR.NODE_ELEMENT&&i.startContainer.getName()in b||i.endContainer.type==CKEDITOR.NODE_ELEMENT&&i.endContainer.getName()in b)&&(i.shrink(CKEDITOR.NODE_ELEMENT,!0),a=i.collapsed),n=i.createBookmark(),b=n.startNode,a||(h=n.endNode),n=i.document.$.body.createTextRange(),n.moveToElementText(b.$),n.moveStart("character",1),h?(j=i.document.$.body.createTextRange(),j.moveToElementText(h.$),n.setEndPoint("EndToEnd",j),n.moveEnd("character",-1)):(l=b.getNext(k),m=b.hasAscendant("pre"),l=!(l&&l.getText&&l.getText().match(j))&&(m||!b.hasPrevious()||b.getPrevious().is&&b.getPrevious().is("br")),m=i.document.createElement("span"),m.setHtml(""),m.insertBefore(b),l&&i.document.createText("\ufeff").insertBefore(b)),i.setStartBefore(b),b.remove(),a?(l?(n.moveStart("character",-1),n.select(),i.document.$.selection.clear()):n.select(),i.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START),m.remove()):(i.setEndBefore(h),h.remove(),n.select())}else{if(h=this.getNative(),!h)return;for(this.removeAllRanges(),n=0;n<a.length;n++)if(n<a.length-1&&(l=a[n],m=a[n+1],j=l.clone(),j.setStart(l.endContainer,l.endOffset),j.setEnd(m.startContainer,m.startOffset),!j.collapsed&&(j.shrink(CKEDITOR.NODE_ELEMENT,!0),i=j.getCommonAncestor(),j=j.getEnclosedNode(),i.isReadOnly()||j&&j.isReadOnly())))m.setStart(l.startContainer,l.startOffset),a.splice(n--,1);else{i=a[n],m=this.document.$.createRange(),i.collapsed&&CKEDITOR.env.webkit&&e(i)&&(j=f(this.root),i.insertNode(j),(l=j.getNext())&&!j.getPrevious()&&l.type==CKEDITOR.NODE_ELEMENT&&"br"==l.getName()?(g(this.root),i.moveToPosition(l,CKEDITOR.POSITION_BEFORE_START)):i.moveToPosition(j,CKEDITOR.POSITION_AFTER_END)),m.setStart(i.startContainer.$,i.startOffset);try{m.setEnd(i.endContainer.$,i.endOffset)}catch(q){if(!(0<=q.toString().indexOf("NS_ERROR_ILLEGAL_VALUE")))throw q;i.collapse(1),m.setEnd(i.endContainer.$,i.endOffset)}h.addRange(m)}}this.reset(),this.root.fire("selectionchange")}}},fake:function(a){var b=this.root.editor;this.reset(),i(b);var c=this._.cache,d=new CKEDITOR.dom.range(this.root);d.setStartBefore(a),d.setEndAfter(a),c.ranges=new CKEDITOR.dom.rangeList(d),c.selectedElement=c.startElement=a,c.type=CKEDITOR.SELECTION_ELEMENT,c.selectedText=c.nativeSel=null,this.isFake=1,this.rev=q++,b._.fakeSelection=this,this.root.fire("selectionchange")},isHidden:function(){var a=this.getCommonAncestor();return a&&a.type==CKEDITOR.NODE_TEXT&&(a=a.getParent()),!(!a||!a.data("cke-hidden-sel"))},createBookmarks:function(a){return a=this.getRanges().createBookmarks(a),this.isFake&&(a.isFake=1),a},createBookmarks2:function(a){return a=this.getRanges().createBookmarks2(a),this.isFake&&(a.isFake=1),a},selectBookmarks:function(a){for(var b,c=[],d=0;d<a.length;d++){var e=new CKEDITOR.dom.range(this.root);e.moveToBookmark(a[d]),c.push(e)}return a.isFake&&(b=c[0].getEnclosedNode(),b&&b.type==CKEDITOR.NODE_ELEMENT||(CKEDITOR.warn("selection-not-fake"),a.isFake=0)),a.isFake?this.fake(b):this.selectRanges(c),this},getCommonAncestor:function(){var a=this.getRanges();return a.length?a[0].startContainer.getCommonAncestor(a[a.length-1].endContainer):null},scrollIntoView:function(){this.type!=CKEDITOR.SELECTION_NONE&&this.getRanges()[0].scrollIntoView()},removeAllRanges:function(){if(this.getType()!=CKEDITOR.SELECTION_NONE){var a=this.getNative();try{a&&a[p?"empty":"removeAllRanges"]()}catch(b){}this.reset()}}}}(),CKEDITOR.STYLE_BLOCK=1,CKEDITOR.STYLE_INLINE=2,CKEDITOR.STYLE_OBJECT=3,function(){function a(a,b){for(var c,d;(a=a.getParent())&&!a.equals(b);)if(a.getAttribute("data-nostyle"))c=a;else if(!d){var e=a.getAttribute("contentEditable");"false"==e?c=a:"true"==e&&(d=1)}return c}function b(a,b,c,d){return(a.getPosition(b)|d)==d&&(!c.childRule||c.childRule(a))}function c(d){var f=d.document;if(d.collapsed)f=r(this,f),d.insertNode(f),d.moveToPosition(f,CKEDITOR.POSITION_BEFORE_END);else{var g,h=this.element,i=this._.definition,j=i.ignoreReadonly,k=j||i.includeReadonly;null==k&&(k=d.root.getCustomData("cke_includeReadonly"));var l=CKEDITOR.dtd[h];l||(g=!0,l=CKEDITOR.dtd.span),d.enlarge(CKEDITOR.ENLARGE_INLINE,1),d.trim();var m,n=d.createBookmark(),p=n.startNode,q=n.endNode,s=p;if(!j){var t=d.getCommonAncestor(),j=a(p,t),t=a(q,t);j&&(s=j.getNextSourceNode(!0)),t&&(q=t)}for(s.getPosition(q)==CKEDITOR.POSITION_FOLLOWING&&(s=0);s;){if(j=!1,s.equals(q))s=null,j=!0;else{var u=s.type==CKEDITOR.NODE_ELEMENT?s.getName():null,t=u&&"false"==s.getAttribute("contentEditable"),v=u&&s.getAttribute("data-nostyle");if(u&&s.data("cke-bookmark")){s=s.getNextSourceNode(!0);continue}if(t&&k&&CKEDITOR.dtd.$block[u])for(var w=s,x=e(w),y=void 0,z=x.length,A=0,w=z&&new CKEDITOR.dom.range(w.getDocument());z>A;++A){var y=x[A],C=CKEDITOR.filter.instances[y.data("cke-filter")];(C?C.check(this):1)&&(w.selectNodeContents(y),c.call(this,w))}if(x=u?!l[u]||v?0:t&&!k?0:b(s,q,i,D):1){if(y=s.getParent(),x=i,z=h,A=g,!y||!(y.getDtd()||CKEDITOR.dtd.span)[z]&&!A||x.parentRule&&!x.parentRule(y))j=!0;else if(m||u&&CKEDITOR.dtd.$removeEmpty[u]&&(s.getPosition(q)|D)!=D||(m=d.clone(),m.setStartBefore(s)),u=s.type,u==CKEDITOR.NODE_TEXT||t||u==CKEDITOR.NODE_ELEMENT&&!s.getChildCount()){for(var F,u=s;(j=!u.getNext(B))&&(F=u.getParent(),l[F.getName()])&&b(F,p,i,E);)u=F;m.setEndAfter(u)}}else j=!0;s=s.getNextSourceNode(v||t)}if(j&&m&&!m.collapsed){for(var G,H,I,j=r(this,f),t=j.hasAttributes(),v=m.getCommonAncestor(),u={},x={},y={},z={};j&&v;){if(v.getName()==h){for(G in i.attributes)!z[G]&&(I=v.getAttribute(H))&&(j.getAttribute(G)==I?x[G]=1:z[G]=1);for(H in i.styles)!y[H]&&(I=v.getStyle(H))&&(j.getStyle(H)==I?u[H]=1:y[H]=1)}v=v.getParent()}for(G in x)j.removeAttribute(G);for(H in u)j.removeStyle(H);t&&!j.hasAttributes()&&(j=null),j?(m.extractContents().appendTo(j),m.insertNode(j),o.call(this,j),j.mergeSiblings(),CKEDITOR.env.ie||j.$.normalize()):(j=new CKEDITOR.dom.element("span"),m.extractContents().appendTo(j),m.insertNode(j),o.call(this,j),j.remove(!0)),m=null}}d.moveToBookmark(n),d.shrink(CKEDITOR.SHRINK_TEXT),d.shrink(CKEDITOR.NODE_ELEMENT,!0)}}function d(a){function b(){for(var a=new CKEDITOR.dom.elementPath(d.getParent()),b=new CKEDITOR.dom.elementPath(j.getParent()),c=null,e=null,f=0;f<a.elements.length;f++){var g=a.elements[f];if(g==a.block||g==a.blockLimit)break;k.checkElementRemovable(g,!0)&&(c=g)}for(f=0;f<b.elements.length&&(g=b.elements[f],g!=b.block&&g!=b.blockLimit);f++)k.checkElementRemovable(g,!0)&&(e=g);e&&j.breakParent(e),c&&d.breakParent(c)}a.enlarge(CKEDITOR.ENLARGE_INLINE,1);var c=a.createBookmark(),d=c.startNode;if(a.collapsed){for(var e,f,g=new CKEDITOR.dom.elementPath(d.getParent(),a.root),h=0;h<g.elements.length&&(f=g.elements[h])&&f!=g.block&&f!=g.blockLimit;h++)if(this.checkElementRemovable(f)){var i;a.collapsed&&(a.checkBoundaryOfElement(f,CKEDITOR.END)||(i=a.checkBoundaryOfElement(f,CKEDITOR.START)))?(e=f,e.match=i?"start":"end"):(f.mergeSiblings(),f.is(this.element)?n.call(this,f):p(f,u(this)[f.getName()]))}if(e){for(f=d,h=0;i=g.elements[h],!i.equals(e);h++)i.match||(i=i.clone(),i.append(f),f=i);f["start"==e.match?"insertBefore":"insertAfter"](e)}}else{var j=c.endNode,k=this;for(b(),g=d;!g.equals(j);)e=g.getNextSourceNode(),g.type==CKEDITOR.NODE_ELEMENT&&this.checkElementRemovable(g)&&(g.getName()==this.element?n.call(this,g):p(g,u(this)[g.getName()]),e.type==CKEDITOR.NODE_ELEMENT&&e.contains(d)&&(b(),e=d.getNext())),g=e}a.moveToBookmark(c),a.shrink(CKEDITOR.NODE_ELEMENT,!0)}function e(a){var b=[];return a.forEach(function(a){return"true"==a.getAttribute("contenteditable")?(b.push(a),!1):void 0},CKEDITOR.NODE_ELEMENT,!0),b}function f(a){var b=a.getEnclosedNode()||a.getCommonAncestor(!1,!0);(a=new CKEDITOR.dom.elementPath(b,a.root).contains(this.element,1))&&!a.isReadOnly()&&s(a,this)}function g(a){var b=a.getCommonAncestor(!0,!0);if(a=new CKEDITOR.dom.elementPath(b,a.root).contains(this.element,1)){var b=this._.definition,c=b.attributes;if(c)for(var d in c)a.removeAttribute(d,c[d]);if(b.styles)for(var e in b.styles)b.styles.hasOwnProperty(e)&&a.removeStyle(e)}}function h(a){var b=a.createBookmark(!0),c=a.createIterator();c.enforceRealBlocks=!0,this._.enterMode&&(c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR);for(var d,e,f=a.document;d=c.getNextParagraph();)!d.isReadOnly()&&(c.activeFilter?c.activeFilter.check(this):1)&&(e=r(this,f,d),j(d,e));a.moveToBookmark(b)}function i(a){var b=a.createBookmark(1),c=a.createIterator();c.enforceRealBlocks=!0,c.enlargeBr=this._.enterMode!=CKEDITOR.ENTER_BR;for(var d,e;d=c.getNextParagraph();)this.checkElementRemovable(d)&&(d.is("pre")?((e=this._.enterMode==CKEDITOR.ENTER_BR?null:a.document.createElement(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))&&d.copyAttributes(e),j(d,e)):n.call(this,d));a.moveToBookmark(b)}function j(a,b){var c=!b;c&&(b=a.getDocument().createElement("div"),a.copyAttributes(b));var d=b&&b.is("pre"),e=a.is("pre"),f=!d&&e;if(d&&!e){if(e=b,(f=a.getBogus())&&f.remove(),f=a.getHtml(),f=l(f,/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g,""),f=f.replace(/[ \t\r\n]*(<br[^>]*>)[ \t\r\n]*/gi,"$1"),f=f.replace(/([ \t\n\r]+| )/g," "),f=f.replace(/<br\b[^>]*>/gi,"\n"),CKEDITOR.env.ie){var g=a.getDocument().createElement("div");g.append(e),e.$.outerHTML="<pre>"+f+"</pre>",e.copyAttributes(g.getFirst()),e=g.getFirst().remove()}else e.setHtml(f);b=e}else f?b=m(c?[a.getHtml()]:k(a),b):a.moveChildren(b);if(b.replace(a),d){var h,c=b;(h=c.getPrevious(C))&&h.type==CKEDITOR.NODE_ELEMENT&&h.is("pre")&&(d=l(h.getHtml(),/\n$/,"")+"\n\n"+l(c.getHtml(),/^\n/,""),CKEDITOR.env.ie?c.$.outerHTML="<pre>"+d+"</pre>":c.setHtml(d),h.remove())}else c&&q(b)}function k(a){var b=[];return l(a.getOuterHtml(),/(\S\s*)\n(?:\s|(<span[^>]+data-cke-bookmark.*?\/span>))*\n(?!$)/gi,function(a,b,c){return b+"</pre>"+c+"<pre>"}).replace(/<pre\b.*?>([\s\S]*?)<\/pre>/gi,function(a,c){b.push(c)}),b}function l(a,b,c){var d="",e="";return a=a.replace(/(^<span[^>]+data-cke-bookmark.*?\/span>)|(<span[^>]+data-cke-bookmark.*?\/span>$)/gi,function(a,b,c){return b&&(d=b),c&&(e=c),""}),d+a.replace(b,c)+e}function m(a,b){var c;1<a.length&&(c=new CKEDITOR.dom.documentFragment(b.getDocument()));for(var d=0;d<a.length;d++){var e=a[d],e=e.replace(/(\r\n|\r)/g,"\n"),e=l(e,/^[ \t]*\n/,""),e=l(e,/\n$/,""),e=l(e,/^[ \t]+|[ \t]+$/g,function(a,b){return 1==a.length?" ":b?" "+CKEDITOR.tools.repeat(" ",a.length-1):CKEDITOR.tools.repeat(" ",a.length-1)+" "}),e=e.replace(/\n/g,"<br>"),e=e.replace(/[ \t]{2,}/g,function(a){return CKEDITOR.tools.repeat(" ",a.length-1)+" "});if(c){var f=b.clone();f.setHtml(e),c.append(f)}else b.setHtml(e)}return c||b}function n(a,b){var c,d=this._.definition,e=d.attributes,d=d.styles,f=u(this)[a.getName()],g=CKEDITOR.tools.isEmpty(e)&&CKEDITOR.tools.isEmpty(d);for(c in e)("class"!=c&&!this._.definition.fullMatch||a.getAttribute(c)==v(c,e[c]))&&(b&&"data-"==c.slice(0,5)||(g=a.hasAttribute(c),a.removeAttribute(c)));for(var h in d)this._.definition.fullMatch&&a.getStyle(h)!=v(h,d[h],!0)||(g=g||!!a.getStyle(h),a.removeStyle(h));p(a,f,x[a.getName()]),g&&(this._.definition.alwaysRemoveElement?q(a,1):!CKEDITOR.dtd.$block[a.getName()]||this._.enterMode==CKEDITOR.ENTER_BR&&!a.hasAttributes()?q(a):a.renameNode(this._.enterMode==CKEDITOR.ENTER_P?"p":"div"))}function o(a){for(var b,c=u(this),d=a.getElementsByTag(this.element),e=d.count();0<=--e;)b=d.getItem(e),b.isReadOnly()||n.call(this,b,!0);for(var f in c)if(f!=this.element)for(d=a.getElementsByTag(f),e=d.count()-1;e>=0;e--)b=d.getItem(e),b.isReadOnly()||p(b,c[f])}function p(a,b,c){if(b=b&&b.attributes)for(var d=0;d<b.length;d++){var e,f=b[d][0];if(e=a.getAttribute(f)){var g=b[d][1];(null===g||g.test&&g.test(e)||"string"==typeof g&&e==g)&&a.removeAttribute(f)}}c||q(a)}function q(a,b){if(!a.hasAttributes()||b)if(CKEDITOR.dtd.$block[a.getName()]){var c=a.getPrevious(C),d=a.getNext(C);!c||c.type!=CKEDITOR.NODE_TEXT&&c.isBlockBoundary({br:1})||a.append("br",1),!d||d.type!=CKEDITOR.NODE_TEXT&&d.isBlockBoundary({br:1})||a.append("br"),a.remove(!0)}else c=a.getFirst(),d=a.getLast(),a.remove(!0),c&&(c.type==CKEDITOR.NODE_ELEMENT&&c.mergeSiblings(),d&&!c.equals(d)&&d.type==CKEDITOR.NODE_ELEMENT&&d.mergeSiblings())}function r(a,b,c){var d;return d=a.element,"*"==d&&(d="span"),d=new CKEDITOR.dom.element(d,b),c&&c.copyAttributes(d),d=s(d,a),b.getCustomData("doc_processing_style")&&d.hasAttribute("id")?d.removeAttribute("id"):b.setCustomData("doc_processing_style",1),d}function s(a,b){var c=b._.definition,d=c.attributes,c=CKEDITOR.style.getStyleText(c);if(d)for(var e in d)a.setAttribute(e,d[e]);return c&&a.setAttribute("style",c),a}function t(a,b){for(var c in a)a[c]=a[c].replace(A,function(a,c){return b[c]})}function u(a){if(a._.overrides)return a._.overrides;var b=a._.overrides={},c=a._.definition.overrides;if(c){CKEDITOR.tools.isArray(c)||(c=[c]);for(var d=0;d<c.length;d++){var e,f,g=c[d];if("string"==typeof g?e=g.toLowerCase():(e=g.element?g.element.toLowerCase():a.element,f=g.attributes),g=b[e]||(b[e]={}),f){var h,g=g.attributes=g.attributes||[];for(h in f)g.push([h.toLowerCase(),f[h]])}}}return b}function v(a,b,c){var d=new CKEDITOR.dom.element("span");return d[c?"setStyle":"setAttribute"](a,b),d[c?"getStyle":"getAttribute"](a)}function w(a,b,c){var d=a.document,e=a.getRanges();b=b?this.removeFromRange:this.applyToRange;for(var f,g=e.createIterator();f=g.getNextRange();)b.call(this,f,c);a.selectRanges(e),d.removeCustomData("doc_processing_style")}var x={address:1,div:1,h1:1,h2:1,h3:1,h4:1,h5:1,h6:1,p:1,pre:1,section:1,header:1,footer:1,nav:1,article:1,aside:1,figure:1,dialog:1,hgroup:1,time:1,meter:1,menu:1,command:1,keygen:1,output:1,progress:1,details:1,datagrid:1,datalist:1},y={a:1,blockquote:1,embed:1,hr:1,img:1,li:1,object:1,ol:1,table:1,td:1,tr:1,th:1,ul:1,dl:1,dt:1,dd:1,form:1,audio:1,video:1},z=/\s*(?:;\s*|$)/,A=/#\((.+?)\)/g,B=CKEDITOR.dom.walker.bookmark(0,1),C=CKEDITOR.dom.walker.whitespaces(1);CKEDITOR.style=function(a,b){if("string"==typeof a.type)return new CKEDITOR.style.customHandlers[a.type](a);var c=a.attributes;c&&c.style&&(a.styles=CKEDITOR.tools.extend({},a.styles,CKEDITOR.tools.parseCssText(c.style)),delete c.style),b&&(a=CKEDITOR.tools.clone(a),t(a.attributes,b),t(a.styles,b)),c=this.element=a.element?"string"==typeof a.element?a.element.toLowerCase():a.element:"*",this.type=a.type||(x[c]?CKEDITOR.STYLE_BLOCK:y[c]?CKEDITOR.STYLE_OBJECT:CKEDITOR.STYLE_INLINE),"object"==typeof this.element&&(this.type=CKEDITOR.STYLE_OBJECT),this._={definition:a}},CKEDITOR.style.prototype={apply:function(a){if(a instanceof CKEDITOR.dom.document)return w.call(this,a.getSelection());if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;b||(this._.enterMode=a.activeEnterMode),w.call(this,a.getSelection(),0,a),this._.enterMode=b}},remove:function(a){if(a instanceof CKEDITOR.dom.document)return w.call(this,a.getSelection(),1);if(this.checkApplicable(a.elementPath(),a)){var b=this._.enterMode;b||(this._.enterMode=a.activeEnterMode),w.call(this,a.getSelection(),1,a),this._.enterMode=b}},applyToRange:function(a){return this.applyToRange=this.type==CKEDITOR.STYLE_INLINE?c:this.type==CKEDITOR.STYLE_BLOCK?h:this.type==CKEDITOR.STYLE_OBJECT?f:null,this.applyToRange(a)},removeFromRange:function(a){return this.removeFromRange=this.type==CKEDITOR.STYLE_INLINE?d:this.type==CKEDITOR.STYLE_BLOCK?i:this.type==CKEDITOR.STYLE_OBJECT?g:null,this.removeFromRange(a)},applyToObject:function(a){s(a,this)},checkActive:function(a,b){switch(this.type){case CKEDITOR.STYLE_BLOCK:return this.checkElementRemovable(a.block||a.blockLimit,!0,b);case CKEDITOR.STYLE_OBJECT:case CKEDITOR.STYLE_INLINE:for(var c,d=a.elements,e=0;e<d.length;e++)if(c=d[e],this.type!=CKEDITOR.STYLE_INLINE||c!=a.block&&c!=a.blockLimit){if(this.type==CKEDITOR.STYLE_OBJECT){var f=c.getName();if(!("string"==typeof this.element?f==this.element:f in this.element))continue}if(this.checkElementRemovable(c,!0,b))return!0}}return!1},checkApplicable:function(a,b,c){if(b&&b instanceof CKEDITOR.filter&&(c=b),c&&!c.check(this))return!1;switch(this.type){case CKEDITOR.STYLE_OBJECT:return!!a.contains(this.element);case CKEDITOR.STYLE_BLOCK:return!!a.blockLimit.getDtd()[this.element]}return!0},checkElementMatch:function(a,b){var c=this._.definition;if(!a||!c.ignoreReadonly&&a.isReadOnly())return!1;var d=a.getName();if("string"==typeof this.element?d==this.element:d in this.element){if(!b&&!a.hasAttributes())return!0;if(d=c._AC)c=d;else{var d={},e=0,f=c.attributes;if(f)for(var g in f)e++,d[g]=f[g];(g=CKEDITOR.style.getStyleText(c))&&(d.style||e++,d.style=g),d._length=e,c=c._AC=d}if(!c._length)return!0;for(var h in c)if("_length"!=h){if(e=a.getAttribute(h)||"","style"==h)a:{d=c[h],"string"==typeof d&&(d=CKEDITOR.tools.parseCssText(d)),"string"==typeof e&&(e=CKEDITOR.tools.parseCssText(e,!0)),g=void 0;for(g in d)if(!(g in e)||e[g]!=d[g]&&"inherit"!=d[g]&&"inherit"!=e[g]){d=!1;break a}d=!0}else d=c[h]==e;if(d){if(!b)return!0}else if(b)return!1}if(b)return!0}return!1},checkElementRemovable:function(a,b,c){if(this.checkElementMatch(a,b,c))return!0;if(b=u(this)[a.getName()]){var d;if(!(b=b.attributes))return!0;for(c=0;c<b.length;c++)if(d=b[c][0],d=a.getAttribute(d)){var e=b[c][1];if(null===e)return!0;if("string"==typeof e){if(d==e)return!0}else if(e.test(d))return!0}}return!1},buildPreview:function(a){var b=this._.definition,c=[],d=b.element;"bdo"==d&&(d="span");var c=["<",d],e=b.attributes;if(e)for(var f in e)c.push(" ",f,'="',e[f],'"');return(e=CKEDITOR.style.getStyleText(b))&&c.push(' style="',e,'"'),c.push(">",a||b.name,"</",d,">"),c.join("")},getDefinition:function(){return this._.definition}},CKEDITOR.style.getStyleText=function(a){var b=a._ST;if(b)return b;var b=a.styles,c=a.attributes&&a.attributes.style||"",d="";c.length&&(c=c.replace(z,";"));for(var e in b){var f=b[e],g=(e+":"+f).replace(z,";");"inherit"==f?d+=g:c+=g}return c.length&&(c=CKEDITOR.tools.normalizeCssText(c,!0)),a._ST=c+d},CKEDITOR.style.customHandlers={},CKEDITOR.style.addCustomHandler=function(a){var b=function(a){this._={definition:a},this.setup&&this.setup(a)};return b.prototype=CKEDITOR.tools.extend(CKEDITOR.tools.prototypedCopy(CKEDITOR.style.prototype),{assignedTo:CKEDITOR.STYLE_OBJECT},a,!0),this.customHandlers[a.type]=b};var D=CKEDITOR.POSITION_PRECEDING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED,E=CKEDITOR.POSITION_FOLLOWING|CKEDITOR.POSITION_IDENTICAL|CKEDITOR.POSITION_IS_CONTAINED}(),CKEDITOR.styleCommand=function(a,b){this.requiredContent=this.allowedContent=this.style=a,CKEDITOR.tools.extend(this,b,!0)},CKEDITOR.styleCommand.prototype.exec=function(a){a.focus(),this.state==CKEDITOR.TRISTATE_OFF?a.applyStyle(this.style):this.state==CKEDITOR.TRISTATE_ON&&a.removeStyle(this.style)},CKEDITOR.stylesSet=new CKEDITOR.resourceManager("","stylesSet"),CKEDITOR.addStylesSet=CKEDITOR.tools.bind(CKEDITOR.stylesSet.add,CKEDITOR.stylesSet),CKEDITOR.loadStylesSet=function(a,b,c){CKEDITOR.stylesSet.addExternal(a,b,""),CKEDITOR.stylesSet.load(a,c)},CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{attachStyleStateChange:function(a,b){var c=this._.styleStateChangeCallbacks;c||(c=this._.styleStateChangeCallbacks=[],this.on("selectionChange",function(a){for(var b=0;b<c.length;b++){var d=c[b],e=d.style.checkActive(a.data.path,this)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF;d.fn.call(this,e)}})),c.push({style:a,fn:b})},applyStyle:function(a){a.apply(this)},removeStyle:function(a){a.remove(this)},getStylesSet:function(a){if(this._.stylesDefinitions)a(this._.stylesDefinitions);else{var b=this,c=b.config.stylesCombo_stylesSet||b.config.stylesSet;if(!1===c)a(null);else if(c instanceof Array)b._.stylesDefinitions=c,a(c);else{c||(c="default");var c=c.split(":"),d=c[0];CKEDITOR.stylesSet.addExternal(d,c[1]?c.slice(1).join(":"):CKEDITOR.getUrl("styles.js"),""),CKEDITOR.stylesSet.load(d,function(c){b._.stylesDefinitions=c[d],a(b._.stylesDefinitions)})}}}}),CKEDITOR.dom.comment=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createComment(a)),CKEDITOR.dom.domObject.call(this,a)},CKEDITOR.dom.comment.prototype=new CKEDITOR.dom.node,CKEDITOR.tools.extend(CKEDITOR.dom.comment.prototype,{type:CKEDITOR.NODE_COMMENT,getOuterHtml:function(){return"<!--"+this.$.nodeValue+"-->"}}),function(){var a,b={},c={};for(a in CKEDITOR.dtd.$blockLimit)a in CKEDITOR.dtd.$list||(b[a]=1);for(a in CKEDITOR.dtd.$block)a in CKEDITOR.dtd.$blockLimit||a in CKEDITOR.dtd.$empty||(c[a]=1);CKEDITOR.dom.elementPath=function(a,d){var e,f=null,g=null,h=[],i=a;d=d||a.getDocument().getBody();do if(i.type==CKEDITOR.NODE_ELEMENT){if(h.push(i),!this.lastElement&&(this.lastElement=i,i.is(CKEDITOR.dtd.$object)||"false"==i.getAttribute("contenteditable")))continue;if(i.equals(d))break;if(!g&&(e=i.getName(),"true"==i.getAttribute("contenteditable")?g=i:!f&&c[e]&&(f=i),b[e])){if(e=!f&&"div"==e){a:{e=i.getChildren();for(var j=0,k=e.count();k>j;j++){var l=e.getItem(j);if(l.type==CKEDITOR.NODE_ELEMENT&&CKEDITOR.dtd.$block[l.getName()]){e=!0;break a}}e=!1}e=!e}e?f=i:g=i}}while(i=i.getParent());g||(g=d),this.block=f,this.blockLimit=g,this.root=d,this.elements=h}}(),CKEDITOR.dom.elementPath.prototype={compare:function(a){var b=this.elements;if(a=a&&a.elements,!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++)if(!b[c].equals(a[c]))return!1;return!0},contains:function(a,b,c){var d;"string"==typeof a&&(d=function(b){return b.getName()==a}),a instanceof CKEDITOR.dom.element?d=function(b){return b.equals(a)}:CKEDITOR.tools.isArray(a)?d=function(b){return-1<CKEDITOR.tools.indexOf(a,b.getName())}:"function"==typeof a?d=a:"object"==typeof a&&(d=function(b){return b.getName()in a});var e=this.elements,f=e.length;for(b&&f--,c&&(e=Array.prototype.slice.call(e,0),e.reverse()),b=0;f>b;b++)if(d(e[b]))return e[b];return null},isContextFor:function(a){var b;return a in CKEDITOR.dtd.$block?(b=this.contains(CKEDITOR.dtd.$intermediate)||this.root.equals(this.block)&&this.block||this.blockLimit,!!b.getDtd()[a]):!0},direction:function(){return(this.block||this.blockLimit||this.root).getDirection(1)}},CKEDITOR.dom.text=function(a,b){"string"==typeof a&&(a=(b?b.$:document).createTextNode(a)),this.$=a},CKEDITOR.dom.text.prototype=new CKEDITOR.dom.node,CKEDITOR.tools.extend(CKEDITOR.dom.text.prototype,{type:CKEDITOR.NODE_TEXT,getLength:function(){return this.$.nodeValue.length},getText:function(){return this.$.nodeValue},setText:function(a){this.$.nodeValue=a},split:function(a){var b=this.$.parentNode,c=b.childNodes.length,d=this.getLength(),e=this.getDocument(),f=new CKEDITOR.dom.text(this.$.splitText(a),e);return b.childNodes.length==c&&(a>=d?(f=e.createText(""),f.insertAfter(this)):(a=e.createText(""),a.insertAfter(f),a.remove())),f},substring:function(a,b){return"number"!=typeof b?this.$.nodeValue.substr(a):this.$.nodeValue.substring(a,b)}}),function(){function a(a,b,c){var d=a.serializable,e=b[c?"endContainer":"startContainer"],f=c?"endOffset":"startOffset",g=d?b.document.getById(a.startNode):a.startNode;return a=d?b.document.getById(a.endNode):a.endNode,e.equals(g.getPrevious())?(b.startOffset=b.startOffset-e.getLength()-a.getPrevious().getLength(),e=a.getNext()):e.equals(a.getPrevious())&&(b.startOffset-=e.getLength(),e=a.getNext()),e.equals(g.getParent())&&b[f]++,e.equals(a.getParent())&&b[f]++,b[c?"endContainer":"startContainer"]=e,b}CKEDITOR.dom.rangeList=function(a){return a instanceof CKEDITOR.dom.rangeList?a:(a?a instanceof CKEDITOR.dom.range&&(a=[a]):a=[],CKEDITOR.tools.extend(a,b))};var b={createIterator:function(){var a,b=this,c=CKEDITOR.dom.walker.bookmark(),d=[];return{getNextRange:function(e){a=void 0===a?0:a+1;var f=b[a];if(f&&1<b.length){if(!a)for(var g=b.length-1;g>=0;g--)d.unshift(b[g].createBookmark(!0));if(e)for(var h=0;b[a+h+1];){var i=f.document;for(e=0,g=i.getById(d[h].endNode),i=i.getById(d[h+1].startNode);;){if(g=g.getNextSourceNode(!1),i.equals(g))e=1;else if(c(g)||g.type==CKEDITOR.NODE_ELEMENT&&g.isBlockBoundary())continue;break}if(!e)break;h++}for(f.moveToBookmark(d.shift());h--;)g=b[++a],g.moveToBookmark(d.shift()),f.setEnd(g.endContainer,g.endOffset)}return f}}},createBookmarks:function(b){for(var c,d=[],e=0;e<this.length;e++){d.push(c=this[e].createBookmark(b,!0));for(var f=e+1;f<this.length;f++)this[f]=a(c,this[f]),this[f]=a(c,this[f],!0)}return d},createBookmarks2:function(a){for(var b=[],c=0;c<this.length;c++)b.push(this[c].createBookmark2(a));return b},moveToBookmarks:function(a){for(var b=0;b<this.length;b++)this[b].moveToBookmark(a[b])}}}(),function(){function a(){return CKEDITOR.getUrl(CKEDITOR.skinName.split(",")[1]||"skins/"+CKEDITOR.skinName.split(",")[0]+"/")}function b(b){var c=CKEDITOR.skin["ua_"+b],d=CKEDITOR.env;if(c)for(var e,c=c.split(",").sort(function(a,b){return a>b?-1:1}),f=0;f<c.length;f++)if(e=c[f],d.ie&&(e.replace(/^ie/,"")==d.version||d.quirks&&"iequirks"==e)&&(e="ie"),d[e]){b+="_"+c[f];break}return CKEDITOR.getUrl(a()+b+".css")}function c(a,c){f[a]||(CKEDITOR.document.appendStyleSheet(b(a)),f[a]=1),c&&c()}function d(a){var b=a.getById(g);return b||(b=a.getHead().append("style"),b.setAttribute("id",g),b.setAttribute("type","text/css")),b}function e(a,b,c){var d,e,f;if(CKEDITOR.env.webkit)for(b=b.split("}").slice(0,-1),e=0;e<b.length;e++)b[e]=b[e].split("{");for(var g=0;g<a.length;g++)if(CKEDITOR.env.webkit)for(e=0;e<b.length;e++){for(f=b[e][1],d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);a[g].$.sheet.addRule(b[e][0],f)}else{for(f=b,d=0;d<c.length;d++)f=f.replace(c[d][0],c[d][1]);CKEDITOR.env.ie&&11>CKEDITOR.env.version?a[g].$.styleSheet.cssText+=f:a[g].$.innerHTML+=f}}var f={};CKEDITOR.skin={path:a,loadPart:function(b,d){CKEDITOR.skin.name!=CKEDITOR.skinName.split(",")[0]?CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(a()+"skin.js"),function(){c(b,d)}):c(b,d)},getPath:function(a){return CKEDITOR.getUrl(b(a))},icons:{},addIcon:function(a,b,c,d){a=a.toLowerCase(),this.icons[a]||(this.icons[a]={path:b,offset:c||0,bgsize:d||"16px"})},getIconStyle:function(a,b,c,d,e){var f;return a&&(a=a.toLowerCase(),b&&(f=this.icons[a+"-rtl"]),f||(f=this.icons[a])),a=c||f&&f.path||"",d=d||f&&f.offset,e=e||f&&f.bgsize||"16px",a&&(a=a.replace(/'/g,"\\'")),a&&"background-image:url('"+CKEDITOR.getUrl(a)+"');background-position:0 "+d+"px;background-size:"+e+";"}},CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{getUiColor:function(){return this.uiColor},setUiColor:function(a){var b=d(CKEDITOR.document);return(this.setUiColor=function(a){this.uiColor=a;var c=CKEDITOR.skin.chameleon,d="",f="";"function"==typeof c&&(d=c(this,"editor"),f=c(this,"panel")),a=[[i,a]],e([b],d,a),e(h,f,a)}).call(this,a)}});var g="cke_ui_color",h=[],i=/\$color/g;CKEDITOR.on("instanceLoaded",function(a){if(!CKEDITOR.env.ie||!CKEDITOR.env.quirks){var b=a.editor;a=function(a){if(a=(a.data[0]||a.data).element.getElementsByTag("iframe").getItem(0).getFrameDocument(),!a.getById("cke_ui_color")){a=d(a),h.push(a);var c=b.getUiColor();c&&e([a],CKEDITOR.skin.chameleon(b,"panel"),[[i,c]])}},b.on("panelShow",a),b.on("menuShow",a),b.config.uiColor&&b.setUiColor(b.config.uiColor)}})}(),function(){if(CKEDITOR.env.webkit)CKEDITOR.env.hc=!1;else{var a=CKEDITOR.dom.element.createFromHtml('<div style="width:0;height:0;position:absolute;left:-10000px;border:1px solid;border-color:red blue"></div>',CKEDITOR.document);a.appendTo(CKEDITOR.document.getHead());try{var b=a.getComputedStyle("border-top-color"),c=a.getComputedStyle("border-right-color");CKEDITOR.env.hc=!(!b||b!=c)}catch(d){CKEDITOR.env.hc=!1}a.remove()}if(CKEDITOR.env.hc&&(CKEDITOR.env.cssClass+=" cke_hc"),CKEDITOR.document.appendStyleText(".cke{visibility:hidden;}"),CKEDITOR.status="loaded",CKEDITOR.fireOnce("loaded"),a=CKEDITOR._.pending)for(delete CKEDITOR._.pending,b=0;b<a.length;b++)CKEDITOR.editor.prototype.constructor.apply(a[b][0],a[b][1]),CKEDITOR.add(a[b][0])}(),CKEDITOR.skin.name="moono",CKEDITOR.skin.ua_editor="ie,iequirks,ie7,ie8,gecko",CKEDITOR.skin.ua_dialog="ie,iequirks,ie7,ie8",CKEDITOR.skin.chameleon=function(){var a=function(){return function(a,b){for(var c=a.match(/[^#]./g),d=0;3>d;d++){var e,f=d;e=parseInt(c[d],16),e=("0"+(0>b?0|e*(1+b):0|e+(255-e)*b).toString(16)).slice(-2),c[f]=e}return"#"+c.join("")}}(),b=function(){var a=new CKEDITOR.template("background:#{to};background-image:linear-gradient(to bottom,{from},{to});filter:progid:DXImageTransform.Microsoft.gradient(gradientType=0,startColorstr='{from}',endColorstr='{to}');");return function(b,c){return a.output({from:b,to:c})}}(),c={editor:new CKEDITOR.template("{id}.cke_chrome [border-color:{defaultBorder};] {id} .cke_top [ {defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_bottom [{defaultGradient}border-top-color:{defaultBorder};] {id} .cke_resizer [border-right-color:{ckeResizer}] {id} .cke_dialog_title [{defaultGradient}border-bottom-color:{defaultBorder};] {id} .cke_dialog_footer [{defaultGradient}outline-color:{defaultBorder};border-top-color:{defaultBorder};] {id} .cke_dialog_tab [{lightGradient}border-color:{defaultBorder};] {id} .cke_dialog_tab:hover [{mediumGradient}] {id} .cke_dialog_contents [border-top-color:{defaultBorder};] {id} .cke_dialog_tab_selected, {id} .cke_dialog_tab_selected:hover [background:{dialogTabSelected};border-bottom-color:{dialogTabSelectedBorder};] {id} .cke_dialog_body [background:{dialogBody};border-color:{defaultBorder};] {id} .cke_toolgroup [{lightGradient}border-color:{defaultBorder};] {id} a.cke_button_off:hover, {id} a.cke_button_off:focus, {id} a.cke_button_off:active [{mediumGradient}] {id} .cke_button_on [{ckeButtonOn}] {id} .cke_toolbar_separator [background-color: {ckeToolbarSeparator};] {id} .cke_combo_button [border-color:{defaultBorder};{lightGradient}] {id} a.cke_combo_button:hover, {id} a.cke_combo_button:focus, {id} .cke_combo_on a.cke_combo_button [border-color:{defaultBorder};{mediumGradient}] {id} .cke_path_item [color:{elementsPathColor};] {id} a.cke_path_item:hover, {id} a.cke_path_item:focus, {id} a.cke_path_item:active [background-color:{elementsPathBg};] {id}.cke_panel [border-color:{defaultBorder};] "),panel:new CKEDITOR.template(".cke_panel_grouptitle [{lightGradient}border-color:{defaultBorder};] .cke_menubutton_icon [background-color:{menubuttonIcon};] .cke_menubutton:hover .cke_menubutton_icon, .cke_menubutton:focus .cke_menubutton_icon, .cke_menubutton:active .cke_menubutton_icon [background-color:{menubuttonIconHover};] .cke_menuseparator [background-color:{menubuttonIcon};] a:hover.cke_colorbox, a:focus.cke_colorbox, a:active.cke_colorbox [border-color:{defaultBorder};] a:hover.cke_colorauto, a:hover.cke_colormore, a:focus.cke_colorauto, a:focus.cke_colormore, a:active.cke_colorauto, a:active.cke_colormore [background-color:{ckeColorauto};border-color:{defaultBorder};] ")};return function(d,e){var f=d.uiColor,f={id:"."+d.id,defaultBorder:a(f,-.1),defaultGradient:b(a(f,.9),f),lightGradient:b(a(f,1),a(f,.7)),mediumGradient:b(a(f,.8),a(f,.5)),ckeButtonOn:b(a(f,.6),a(f,.7)),ckeResizer:a(f,-.4),ckeToolbarSeparator:a(f,.5),ckeColorauto:a(f,.8),dialogBody:a(f,.7), -dialogTabSelected:b("#FFFFFF","#FFFFFF"),dialogTabSelectedBorder:"#FFF",elementsPathColor:a(f,-.6),elementsPathBg:f,menubuttonIcon:a(f,.5),menubuttonIconHover:a(f,.3)};return c[e].output(f).replace(/\[/g,"{").replace(/\]/g,"}")}}(),CKEDITOR.plugins.add("dialogui",{onLoad:function(){var a=function(a){this._||(this._={}),this._["default"]=this._.initValue=a["default"]||"",this._.required=a.required||!1;for(var b=[this._],c=1;c<arguments.length;c++)b.push(arguments[c]);return b.push(!0),CKEDITOR.tools.extend.apply(CKEDITOR.tools,b),this._},b={build:function(a,b,c){return new CKEDITOR.ui.dialog.textInput(a,b,c)}},c={build:function(a,b,c){return new CKEDITOR.ui.dialog[b.type](a,b,c)}},d={isChanged:function(){return this.getValue()!=this.getInitValue()},reset:function(a){this.setValue(this.getInitValue(),a)},setInitValue:function(){this._.initValue=this.getValue()},resetInitValue:function(){this._.initValue=this._["default"]},getInitValue:function(){return this._.initValue}},e=CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onChange:function(a,b){this._.domOnChangeRegistered||(a.on("load",function(){this.getInputElement().on("change",function(){a.parts.dialog.isVisible()&&this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0),this.on("change",b)}},!0),f=/^on([A-Z]\w+)/,g=function(a){for(var b in a)(f.test(b)||"title"==b||"type"==b)&&delete a[b];return a},h=function(a){a=a.data.getKeystroke(),a==CKEDITOR.SHIFT+CKEDITOR.ALT+36?this.setDirectionMarker("ltr"):a==CKEDITOR.SHIFT+CKEDITOR.ALT+35&&this.setDirectionMarker("rtl")};CKEDITOR.tools.extend(CKEDITOR.ui.dialog,{labeledElement:function(b,c,d,e){if(!(4>arguments.length)){var f=a.call(this,c);f.labelId=CKEDITOR.tools.getNextId()+"_label",this._.children=[];var g={role:c.role||"presentation"};c.includeLabel&&(g["aria-labelledby"]=f.labelId),CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"div",null,g,function(){var a=[],d=c.required?" cke_required":"";return"horizontal"!=c.labelLayout?a.push('<label class="cke_dialog_ui_labeled_label'+d+'" ',' id="'+f.labelId+'"',f.inputId?' for="'+f.inputId+'"':"",(c.labelStyle?' style="'+c.labelStyle+'"':"")+">",c.label,"</label>",'<div class="cke_dialog_ui_labeled_content"',c.controlStyle?' style="'+c.controlStyle+'"':"",' role="presentation">',e.call(this,b,c),"</div>"):(d={type:"hbox",widths:c.widths,padding:0,children:[{type:"html",html:'<label class="cke_dialog_ui_labeled_label'+d+'" id="'+f.labelId+'" for="'+f.inputId+'"'+(c.labelStyle?' style="'+c.labelStyle+'"':"")+">"+CKEDITOR.tools.htmlEncode(c.label)+"</label>"},{type:"html",html:'<span class="cke_dialog_ui_labeled_content"'+(c.controlStyle?' style="'+c.controlStyle+'"':"")+">"+e.call(this,b,c)+"</span>"}]},CKEDITOR.dialog._.uiElementBuilders.hbox.build(b,d,a)),a.join("")})}},textInput:function(b,c,d){if(!(3>arguments.length)){a.call(this,c);var e=this._.inputId=CKEDITOR.tools.getNextId()+"_textInput",f={"class":"cke_dialog_ui_input_"+c.type,id:e,type:c.type};c.validate&&(this.validate=c.validate),c.maxLength&&(f.maxlength=c.maxLength),c.size&&(f.size=c.size),c.inputStyle&&(f.style=c.inputStyle);var g=this,i=!1;b.on("load",function(){g.getInputElement().on("keydown",function(a){13==a.data.getKeystroke()&&(i=!0)}),g.getInputElement().on("keyup",function(a){13==a.data.getKeystroke()&&i&&(b.getButton("ok")&&setTimeout(function(){b.getButton("ok").click()},0),i=!1),g.bidi&&h.call(g,a)},null,null,1e3)}),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){var a=['<div class="cke_dialog_ui_input_',c.type,'" role="presentation"'];c.width&&a.push('style="width:'+c.width+'" '),a.push("><input "),f["aria-labelledby"]=this._.labelId,this._.required&&(f["aria-required"]=this._.required);for(var b in f)a.push(b+'="'+f[b]+'" ');return a.push(" /></div>"),a.join("")})}},textarea:function(b,c,d){if(!(3>arguments.length)){a.call(this,c);var e=this,f=this._.inputId=CKEDITOR.tools.getNextId()+"_textarea",g={};c.validate&&(this.validate=c.validate),g.rows=c.rows||5,g.cols=c.cols||20,g["class"]="cke_dialog_ui_input_textarea "+(c["class"]||""),"undefined"!=typeof c.inputStyle&&(g.style=c.inputStyle),c.dir&&(g.dir=c.dir),e.bidi&&b.on("load",function(){e.getInputElement().on("keyup",h)},e),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){g["aria-labelledby"]=this._.labelId,this._.required&&(g["aria-required"]=this._.required);var a,b=['<div class="cke_dialog_ui_input_textarea" role="presentation"><textarea id="',f,'" '];for(a in g)b.push(a+'="'+CKEDITOR.tools.htmlEncode(g[a])+'" ');return b.push(">",CKEDITOR.tools.htmlEncode(e._["default"]),"</textarea></div>"),b.join("")})}},checkbox:function(b,c,d){if(!(3>arguments.length)){var e=a.call(this,c,{"default":!!c["default"]});c.validate&&(this.validate=c.validate),CKEDITOR.ui.dialog.uiElement.call(this,b,c,d,"span",null,null,function(){var a=CKEDITOR.tools.extend({},c,{id:c.id?c.id+"_checkbox":CKEDITOR.tools.getNextId()+"_checkbox"},!0),d=[],f=CKEDITOR.tools.getNextId()+"_label",h={"class":"cke_dialog_ui_checkbox_input",type:"checkbox","aria-labelledby":f};return g(a),c["default"]&&(h.checked="checked"),"undefined"!=typeof a.inputStyle&&(a.style=a.inputStyle),e.checkbox=new CKEDITOR.ui.dialog.uiElement(b,a,d,"input",null,h),d.push(' <label id="',f,'" for="',h.id,'"'+(c.labelStyle?' style="'+c.labelStyle+'"':"")+">",CKEDITOR.tools.htmlEncode(c.label),"</label>"),d.join("")})}},radio:function(b,c,d){if(!(3>arguments.length)){a.call(this,c),this._["default"]||(this._["default"]=this._.initValue=c.items[0][1]),c.validate&&(this.validate=c.validate);var e=[],f=this;c.role="radiogroup",c.includeLabel=!0,CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){for(var a=[],d=[],h=(c.id?c.id:CKEDITOR.tools.getNextId())+"_radio",i=0;i<c.items.length;i++){var j=c.items[i],k=void 0!==j[2]?j[2]:j[0],l=void 0!==j[1]?j[1]:j[0],m=CKEDITOR.tools.getNextId()+"_radio_input",n=m+"_label",m=CKEDITOR.tools.extend({},c,{id:m,title:null,type:null},!0),k=CKEDITOR.tools.extend({},m,{title:k},!0),o={type:"radio","class":"cke_dialog_ui_radio_input",name:h,value:l,"aria-labelledby":n},p=[];f._["default"]==l&&(o.checked="checked"),g(m),g(k),"undefined"!=typeof m.inputStyle&&(m.style=m.inputStyle),m.keyboardFocusable=!0,e.push(new CKEDITOR.ui.dialog.uiElement(b,m,p,"input",null,o)),p.push(" "),new CKEDITOR.ui.dialog.uiElement(b,k,p,"label",null,{id:n,"for":o.id},j[0]),a.push(p.join(""))}return new CKEDITOR.ui.dialog.hbox(b,e,a,d),d.join("")}),this._.children=e}},button:function(b,c,d){if(arguments.length){"function"==typeof c&&(c=c(b.getParentEditor())),a.call(this,c,{disabled:c.disabled||!1}),CKEDITOR.event.implementOn(this);var e=this;b.on("load",function(){var a=this.getElement();!function(){a.on("click",function(a){e.click(),a.data.preventDefault()}),a.on("keydown",function(a){a.data.getKeystroke()in{32:1}&&(e.click(),a.data.preventDefault())})}(),a.unselectable()},this);var f=CKEDITOR.tools.extend({},c);delete f.style;var g=CKEDITOR.tools.getNextId()+"_label";CKEDITOR.ui.dialog.uiElement.call(this,b,f,d,"a",null,{style:c.style,href:"javascript:void(0)",title:c.label,hidefocus:"true","class":c["class"],role:"button","aria-labelledby":g},'<span id="'+g+'" class="cke_dialog_ui_button">'+CKEDITOR.tools.htmlEncode(c.label)+"</span>")}},select:function(b,c,d){if(!(3>arguments.length)){var e=a.call(this,c);c.validate&&(this.validate=c.validate),e.inputId=CKEDITOR.tools.getNextId()+"_select",CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){var a=CKEDITOR.tools.extend({},c,{id:c.id?c.id+"_select":CKEDITOR.tools.getNextId()+"_select"},!0),d=[],f=[],h={id:e.inputId,"class":"cke_dialog_ui_input_select","aria-labelledby":this._.labelId};d.push('<div class="cke_dialog_ui_input_',c.type,'" role="presentation"'),c.width&&d.push('style="width:'+c.width+'" '),d.push(">"),void 0!==c.size&&(h.size=c.size),void 0!==c.multiple&&(h.multiple=c.multiple),g(a);for(var i,j=0;j<c.items.length&&(i=c.items[j]);j++)f.push('<option value="',CKEDITOR.tools.htmlEncode(void 0!==i[1]?i[1]:i[0]).replace(/"/g,"""),'" /> ',CKEDITOR.tools.htmlEncode(i[0]));return"undefined"!=typeof a.inputStyle&&(a.style=a.inputStyle),e.select=new CKEDITOR.ui.dialog.uiElement(b,a,d,"select",null,h,f.join("")),d.push("</div>"),d.join("")})}},file:function(b,c,d){if(!(3>arguments.length)){void 0===c["default"]&&(c["default"]="");var e=CKEDITOR.tools.extend(a.call(this,c),{definition:c,buttons:[]});c.validate&&(this.validate=c.validate),b.on("load",function(){CKEDITOR.document.getById(e.frameId).getParent().addClass("cke_dialog_ui_input_file")}),CKEDITOR.ui.dialog.labeledElement.call(this,b,c,d,function(){e.frameId=CKEDITOR.tools.getNextId()+"_fileInput";var a=['<iframe frameborder="0" allowtransparency="0" class="cke_dialog_ui_input_file" role="presentation" id="',e.frameId,'" title="',c.label,'" src="javascript:void('];return a.push(CKEDITOR.env.ie?"(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"})()":"0"),a.push(')"></iframe>'),a.join("")})}},fileButton:function(b,c,d){var e=this;if(!(3>arguments.length)){a.call(this,c),c.validate&&(this.validate=c.validate);var f=CKEDITOR.tools.extend({},c),g=f.onClick;f.className=(f.className?f.className+" ":"")+"cke_dialog_ui_button",f.onClick=function(a){var d=c["for"];g&&!1===g.call(this,a)||(b.getContentElement(d[0],d[1]).submit(),this.disable())},b.on("load",function(){b.getContentElement(c["for"][0],c["for"][1])._.buttons.push(e)}),CKEDITOR.ui.dialog.button.call(this,b,f,d)}},html:function(){var a=/^\s*<[\w:]+\s+([^>]*)?>/,b=/^(\s*<[\w:]+(?:\s+[^>]*)?)((?:.|\r|\n)+)$/,c=/\/$/;return function(d,e,f){if(!(3>arguments.length)){var g=[],h=e.html;"<"!=h.charAt(0)&&(h="<span>"+h+"</span>");var i=e.focus;if(i){var j=this.focus;this.focus=function(){("function"==typeof i?i:j).call(this),this.fire("focus")},e.isFocusable&&(this.isFocusable=this.isFocusable),this.keyboardFocusable=!0}CKEDITOR.ui.dialog.uiElement.call(this,d,e,g,"span",null,null,""),g=g.join("").match(a),h=h.match(b)||["","",""],c.test(h[1])&&(h[1]=h[1].slice(0,-1),h[2]="/"+h[2]),f.push([h[1]," ",g[1]||"",h[2]].join(""))}}}(),fieldset:function(a,b,c,d,e){var f=e.label;this._={children:b},CKEDITOR.ui.dialog.uiElement.call(this,a,e,d,"fieldset",null,null,function(){var a=[];f&&a.push("<legend"+(e.labelStyle?' style="'+e.labelStyle+'"':"")+">"+f+"</legend>");for(var b=0;b<c.length;b++)a.push(c[b]);return a.join("")})}},!0),CKEDITOR.ui.dialog.html.prototype=new CKEDITOR.ui.dialog.uiElement,CKEDITOR.ui.dialog.labeledElement.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setLabel:function(a){var b=CKEDITOR.document.getById(this._.labelId);return 1>b.getChildCount()?new CKEDITOR.dom.text(a,CKEDITOR.document).appendTo(b):b.getChild(0).$.nodeValue=a,this},getLabel:function(){var a=CKEDITOR.document.getById(this._.labelId);return!a||1>a.getChildCount()?"":a.getChild(0).getText()},eventProcessors:e},!0),CKEDITOR.ui.dialog.button.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{click:function(){return this._.disabled?!1:this.fire("click",{dialog:this._.dialog})},enable:function(){this._.disabled=!1;var a=this.getElement();a&&a.removeClass("cke_disabled")},disable:function(){this._.disabled=!0,this.getElement().addClass("cke_disabled")},isVisible:function(){return this.getElement().getFirst().isVisible()},isEnabled:function(){return!this._.disabled},eventProcessors:CKEDITOR.tools.extend({},CKEDITOR.ui.dialog.uiElement.prototype.eventProcessors,{onClick:function(a,b){this.on("click",function(){b.apply(this,arguments)})}},!0),accessKeyUp:function(){this.click()},accessKeyDown:function(){this.focus()},keyboardFocusable:!0},!0),CKEDITOR.ui.dialog.textInput.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return CKEDITOR.document.getById(this._.inputId)},focus:function(){var a=this.selectParentTab();setTimeout(function(){var b=a.getInputElement();b&&b.$.focus()},0)},select:function(){var a=this.selectParentTab();setTimeout(function(){var b=a.getInputElement();b&&(b.$.focus(),b.$.select())},0)},accessKeyUp:function(){this.select()},setValue:function(a){if(this.bidi){var b=a&&a.charAt(0);(b="‪"==b?"ltr":"‫"==b?"rtl":null)&&(a=a.slice(1)),this.setDirectionMarker(b)}return a||(a=""),CKEDITOR.ui.dialog.uiElement.prototype.setValue.apply(this,arguments)},getValue:function(){var a=CKEDITOR.ui.dialog.uiElement.prototype.getValue.call(this);if(this.bidi&&a){var b=this.getDirectionMarker();b&&(a=("ltr"==b?"‪":"‫")+a)}return a},setDirectionMarker:function(a){var b=this.getInputElement();a?b.setAttributes({dir:a,"data-cke-dir-marker":a}):this.getDirectionMarker()&&b.removeAttributes(["dir","data-cke-dir-marker"])},getDirectionMarker:function(){return this.getInputElement().data("cke-dir-marker")},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.textarea.prototype=new CKEDITOR.ui.dialog.textInput,CKEDITOR.ui.dialog.select.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,{getInputElement:function(){return this._.select.getElement()},add:function(a,b,c){var d=new CKEDITOR.dom.element("option",this.getDialog().getParentEditor().document),e=this.getInputElement().$;return d.$.text=a,d.$.value=void 0===b||null===b?a:b,void 0===c||null===c?CKEDITOR.env.ie?e.add(d.$):e.add(d.$,null):e.add(d.$,c),this},remove:function(a){return this.getInputElement().$.remove(a),this},clear:function(){for(var a=this.getInputElement().$;0<a.length;)a.remove(0);return this},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.checkbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getInputElement:function(){return this._.checkbox.getElement()},setValue:function(a,b){this.getInputElement().$.checked=a,!b&&this.fire("change",{value:a})},getValue:function(){return this.getInputElement().$.checked},accessKeyUp:function(){this.setValue(!this.getValue())},eventProcessors:{onChange:function(a,b){return!CKEDITOR.env.ie||8<CKEDITOR.env.version?e.onChange.apply(this,arguments):(a.on("load",function(){var a=this._.checkbox.getElement();a.on("propertychange",function(b){b=b.data.$,"checked"==b.propertyName&&this.fire("change",{value:a.$.checked})},this)},this),this.on("change",b),null)}},keyboardFocusable:!0},d,!0),CKEDITOR.ui.dialog.radio.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{setValue:function(a,b){for(var c,d=this._.children,e=0;e<d.length&&(c=d[e]);e++)c.getElement().$.checked=c.getValue()==a;!b&&this.fire("change",{value:a})},getValue:function(){for(var a=this._.children,b=0;b<a.length;b++)if(a[b].getElement().$.checked)return a[b].getValue();return null},accessKeyUp:function(){var a,b=this._.children;for(a=0;a<b.length;a++)if(b[a].getElement().$.checked)return void b[a].getElement().focus();b[0].getElement().focus()},eventProcessors:{onChange:function(a,b){return!CKEDITOR.env.ie||8<CKEDITOR.env.version?e.onChange.apply(this,arguments):(a.on("load",function(){for(var a=this._.children,b=this,c=0;c<a.length;c++)a[c].getElement().on("propertychange",function(a){a=a.data.$,"checked"==a.propertyName&&this.$.checked&&b.fire("change",{value:this.getAttribute("value")})})},this),this.on("change",b),null)}}},d,!0),CKEDITOR.ui.dialog.file.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.labeledElement,d,{getInputElement:function(){var a=CKEDITOR.document.getById(this._.frameId).getFrameDocument();return 0<a.$.forms.length?new CKEDITOR.dom.element(a.$.forms[0].elements[0]):this.getElement()},submit:function(){return this.getInputElement().getParent().$.submit(),this},getAction:function(){return this.getInputElement().getParent().$.action},registerEvents:function(a){var b,c,d=/^on([A-Z]\w+)/,e=function(a,b,c,d){a.on("formLoaded",function(){a.getInputElement().on(c,d,a)})};for(c in a)(b=c.match(d))&&(this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,a[c]):e(this,this._.dialog,b[1].toLowerCase(),a[c]));return this},reset:function(){function a(){c.$.open();var a="";d.size&&(a=d.size-(CKEDITOR.env.ie?7:0));var j=b.frameId+"_input";for(c.$.write(['<html dir="'+h+'" lang="'+i+'"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">','<form enctype="multipart/form-data" method="POST" dir="'+h+'" lang="'+i+'" action="',CKEDITOR.tools.htmlEncode(d.action),'"><label id="',b.labelId,'" for="',j,'" style="display:none">',CKEDITOR.tools.htmlEncode(d.label),'</label><input style="width:100%" id="',j,'" aria-labelledby="',b.labelId,'" type="file" name="',CKEDITOR.tools.htmlEncode(d.id||"cke_upload"),'" size="',CKEDITOR.tools.htmlEncode(a>0?a:""),'" /></form></body></html><script>',CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"","window.parent.CKEDITOR.tools.callFunction("+f+");","window.onbeforeunload = function() {window.parent.CKEDITOR.tools.callFunction("+g+")}","</script>"].join("")),c.$.close(),a=0;a<e.length;a++)e[a].enable()}var b=this._,c=CKEDITOR.document.getById(b.frameId).getFrameDocument(),d=b.definition,e=b.buttons,f=this.formLoadedNumber,g=this.formUnloadNumber,h=b.dialog._.editor.lang.dir,i=b.dialog._.editor.langCode;f||(f=this.formLoadedNumber=CKEDITOR.tools.addFunction(function(){this.fire("formLoaded")},this),g=this.formUnloadNumber=CKEDITOR.tools.addFunction(function(){this.getInputElement().clearCustomData()},this),this.getDialog()._.editor.on("destroy",function(){CKEDITOR.tools.removeFunction(f),CKEDITOR.tools.removeFunction(g)})),CKEDITOR.env.gecko?setTimeout(a,500):a()},getValue:function(){return this.getInputElement().$.value||""},setInitValue:function(){this._.initValue=""},eventProcessors:{onChange:function(a,b){this._.domOnChangeRegistered||(this.on("formLoaded",function(){this.getInputElement().on("change",function(){this.fire("change",{value:this.getValue()})},this)},this),this._.domOnChangeRegistered=!0),this.on("change",b)}},keyboardFocusable:!0},!0),CKEDITOR.ui.dialog.fileButton.prototype=new CKEDITOR.ui.dialog.button,CKEDITOR.ui.dialog.fieldset.prototype=CKEDITOR.tools.clone(CKEDITOR.ui.dialog.hbox.prototype),CKEDITOR.dialog.addUIElement("text",b),CKEDITOR.dialog.addUIElement("password",b),CKEDITOR.dialog.addUIElement("textarea",c),CKEDITOR.dialog.addUIElement("checkbox",c),CKEDITOR.dialog.addUIElement("radio",c),CKEDITOR.dialog.addUIElement("button",c),CKEDITOR.dialog.addUIElement("select",c),CKEDITOR.dialog.addUIElement("file",c),CKEDITOR.dialog.addUIElement("fileButton",c),CKEDITOR.dialog.addUIElement("html",c),CKEDITOR.dialog.addUIElement("fieldset",{build:function(a,b,c){for(var d,e=b.children,f=[],g=[],h=0;h<e.length&&(d=e[h]);h++){var i=[];f.push(i),g.push(CKEDITOR.dialog._.uiElementBuilders[d.type].build(a,d,i))}return new CKEDITOR.ui.dialog[b.type](a,g,f,c,b)}})}}),CKEDITOR.DIALOG_RESIZE_NONE=0,CKEDITOR.DIALOG_RESIZE_WIDTH=1,CKEDITOR.DIALOG_RESIZE_HEIGHT=2,CKEDITOR.DIALOG_RESIZE_BOTH=3,CKEDITOR.DIALOG_STATE_IDLE=1,CKEDITOR.DIALOG_STATE_BUSY=2,function(){function a(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId)+a,c=b-1;c>b-a;c--)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function b(){for(var a=this._.tabIdList.length,b=CKEDITOR.tools.indexOf(this._.tabIdList,this._.currentTabId),c=b+1;b+a>c;c++)if(this._.tabs[this._.tabIdList[c%a]][0].$.offsetHeight)return this._.tabIdList[c%a];return null}function c(a,b){for(var c=a.$.getElementsByTagName("input"),d=0,e=c.length;e>d;d++){var f=new CKEDITOR.dom.element(c[d]);"text"==f.getAttribute("type").toLowerCase()&&(b?(f.setAttribute("value",f.getCustomData("fake_value")||""),f.removeCustomData("fake_value")):(f.setCustomData("fake_value",f.getAttribute("value")),f.setAttribute("value","")))}}function d(a,b){var c=this.getInputElement();c&&(a?c.removeAttribute("aria-invalid"):c.setAttribute("aria-invalid",!0)),a||(this.select?this.select():this.focus()),b&&alert(b),this.fire("validated",{valid:a,msg:b})}function e(){var a=this.getInputElement();a&&a.removeAttribute("aria-invalid")}function f(a){var b=CKEDITOR.dom.element.createFromHtml(CKEDITOR.addTemplate("dialog",p).output({id:CKEDITOR.tools.getNextNumber(),editorId:a.id,langDir:a.lang.dir,langCode:a.langCode,editorDialogClass:"cke_editor_"+a.name.replace(/\./g,"\\.")+"_dialog",closeTitle:a.lang.common.close,hidpi:CKEDITOR.env.hidpi?"cke_hidpi":""})),c=b.getChild([0,0,0,0,0]),d=c.getChild(0),e=c.getChild(1);return a.plugins.clipboard&&CKEDITOR.plugins.clipboard.preventDefaultDropOnElement(c),!CKEDITOR.env.ie||CKEDITOR.env.quirks||CKEDITOR.env.edge||(a="javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())",CKEDITOR.dom.element.createFromHtml('<iframe frameBorder="0" class="cke_iframe_shim" src="'+a+'" tabIndex="-1"></iframe>').appendTo(c.getParent())),d.unselectable(),e.unselectable(),{element:b,parts:{dialog:b.getChild(0),title:d,close:e,tabs:c.getChild(2),contents:c.getChild([3,0,0,0]),footer:c.getChild([3,0,1,0])}}}function g(a,b,c){this.element=b,this.focusIndex=c,this.tabIndex=0,this.isFocusable=function(){return!b.getAttribute("disabled")&&b.isVisible()},this.focus=function(){a._.currentFocusIndex=this.focusIndex,this.element.focus()},b.on("keydown",function(a){a.data.getKeystroke()in{32:1,13:1}&&this.fire("click")}),b.on("focus",function(){this.fire("mouseover")}),b.on("blur",function(){this.fire("mouseout")})}function h(a){function b(){a.layout()}var c=CKEDITOR.document.getWindow();c.on("resize",b),a.on("hide",function(){c.removeListener("resize",b)})}function i(a,b){this._={dialog:a},CKEDITOR.tools.extend(this,b)}function j(a){function b(b){var c=a.getSize(),i=CKEDITOR.document.getWindow().getViewPaneSize(),j=b.data.$.screenX,k=b.data.$.screenY,l=j-d.x,m=k-d.y;d={x:j,y:k},e.x+=l,e.y+=m,a.move(e.x+h[3]<g?-h[3]:e.x-h[1]>i.width-c.width-g?i.width-c.width+("rtl"==f.lang.dir?0:h[1]):e.x,e.y+h[0]<g?-h[0]:e.y-h[2]>i.height-c.height-g?i.height-c.height+h[2]:e.y,1),b.data.preventDefault()}function c(){if(CKEDITOR.document.removeListener("mousemove",b),CKEDITOR.document.removeListener("mouseup",c),CKEDITOR.env.ie6Compat){var a=w.getChild(0).getFrameDocument();a.removeListener("mousemove",b),a.removeListener("mouseup",c)}}var d=null,e=null,f=a.getParentEditor(),g=f.config.dialog_magnetDistance,h=CKEDITOR.skin.margins||[0,0,0,0];"undefined"==typeof g&&(g=20),a.parts.title.on("mousedown",function(f){if(d={x:f.data.$.screenX,y:f.data.$.screenY},CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),e=a.getPosition(),CKEDITOR.env.ie6Compat){var g=w.getChild(0).getFrameDocument();g.on("mousemove",b),g.on("mouseup",c)}f.data.preventDefault()},a)}function k(a){function b(b){var c="rtl"==l.lang.dir,k=j.width,m=j.height,n=k+(b.data.$.screenX-i.x)*(c?-1:1)*(a._.moved?1:2),o=m+(b.data.$.screenY-i.y)*(a._.moved?1:2),p=a._.element.getFirst(),p=c&&p.getComputedStyle("right"),q=a.getPosition();q.y+o>h.height&&(o=h.height-q.y),(c?p:q.x)+n>h.width&&(n=h.width-(c?p:q.x)),e!=CKEDITOR.DIALOG_RESIZE_WIDTH&&e!=CKEDITOR.DIALOG_RESIZE_BOTH||(k=Math.max(d.minWidth||0,n-f)),e!=CKEDITOR.DIALOG_RESIZE_HEIGHT&&e!=CKEDITOR.DIALOG_RESIZE_BOTH||(m=Math.max(d.minHeight||0,o-g)),a.resize(k,m),a._.moved||a.layout(),b.data.preventDefault()}function c(){if(CKEDITOR.document.removeListener("mouseup",c),CKEDITOR.document.removeListener("mousemove",b),k&&(k.remove(),k=null),CKEDITOR.env.ie6Compat){var a=w.getChild(0).getFrameDocument();a.removeListener("mouseup",c),a.removeListener("mousemove",b)}}var d=a.definition,e=d.resizable;if(e!=CKEDITOR.DIALOG_RESIZE_NONE){var f,g,h,i,j,k,l=a.getParentEditor(),m=CKEDITOR.tools.addFunction(function(d){j=a.getSize();var e=a.parts.contents;e.$.getElementsByTagName("iframe").length&&(k=CKEDITOR.dom.element.createFromHtml('<div class="cke_dialog_resize_cover" style="height: 100%; position: absolute; width: 100%;"></div>'),e.append(k)),g=j.height-a.parts.contents.getSize("height",!(CKEDITOR.env.gecko||CKEDITOR.env.ie&&CKEDITOR.env.quirks)),f=j.width-a.parts.contents.getSize("width",1),i={x:d.screenX,y:d.screenY},h=CKEDITOR.document.getWindow().getViewPaneSize(),CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),CKEDITOR.env.ie6Compat&&(e=w.getChild(0).getFrameDocument(),e.on("mousemove",b),e.on("mouseup",c)),d.preventDefault&&d.preventDefault()});a.on("load",function(){var b="";e==CKEDITOR.DIALOG_RESIZE_WIDTH?b=" cke_resizer_horizontal":e==CKEDITOR.DIALOG_RESIZE_HEIGHT&&(b=" cke_resizer_vertical"),b=CKEDITOR.dom.element.createFromHtml('<div class="cke_resizer'+b+" cke_resizer_"+l.lang.dir+'" title="'+CKEDITOR.tools.htmlEncode(l.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+m+', event )">'+("ltr"==l.lang.dir?"◢":"◣")+"</div>"),a.parts.footer.append(b,1)}),l.on("destroy",function(){CKEDITOR.tools.removeFunction(m)})}}function l(a){a.data.preventDefault(1)}function m(a){var b=CKEDITOR.document.getWindow(),c=a.config,d=c.dialog_backgroundCoverColor||"white",e=c.dialog_backgroundCoverOpacity,f=c.baseFloatZIndex,c=CKEDITOR.tools.genKey(d,e,f),g=x[c];g?g.show():(f=['<div tabIndex="-1" style="position: ',CKEDITOR.env.ie6Compat?"absolute":"fixed","; z-index: ",f,"; top: 0px; left: 0px; ",CKEDITOR.env.ie6Compat?"":"background-color: "+d,'" class="cke_dialog_background_cover">'],CKEDITOR.env.ie6Compat&&(d="<html><body style=\\'background-color:"+d+";\\'></body></html>",f.push('<iframe hidefocus="true" frameborder="0" id="cke_dialog_background_iframe" src="javascript:'),f.push("void((function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.write( '"+d+"' );document.close();")+"})())"),f.push('" style="position:absolute;left:0;top:0;width:100%;height: 100%;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0)"></iframe>')),f.push("</div>"),g=CKEDITOR.dom.element.createFromHtml(f.join("")),g.setOpacity(void 0!==e?e:.5),g.on("keydown",l),g.on("keypress",l),g.on("keyup",l),g.appendTo(CKEDITOR.document.getBody()),x[c]=g),a.focusManager.add(g),w=g,a=function(){var a=b.getViewPaneSize();g.setStyles({width:a.width+"px",height:a.height+"px"})};var h=function(){var a=b.getScrollPosition(),c=CKEDITOR.dialog._.currentTop;if(g.setStyles({left:a.x+"px",top:a.y+"px"}),c)do a=c.getPosition(),c.move(a.x,a.y);while(c=c._.parentDialog)};if(v=a,b.on("resize",a),a(),CKEDITOR.env.mac&&CKEDITOR.env.webkit||g.focus(),CKEDITOR.env.ie6Compat){var i=function(){h(),arguments.callee.prevScrollHandler.apply(this,arguments)};b.$.setTimeout(function(){i.prevScrollHandler=window.onscroll||function(){},window.onscroll=i},0),h()}}function n(a){w&&(a.focusManager.remove(w),a=CKEDITOR.document.getWindow(),w.hide(),a.removeListener("resize",v),CKEDITOR.env.ie6Compat&&a.$.setTimeout(function(){window.onscroll=window.onscroll&&window.onscroll.prevScrollHandler||null},0),v=null)}var o=CKEDITOR.tools.cssLength,p='<div class="cke_reset_all {editorId} {editorDialogClass} {hidpi}" dir="{langDir}" lang="{langCode}" role="dialog" aria-labelledby="cke_dialog_title_{id}"><table class="cke_dialog '+CKEDITOR.env.cssClass+' cke_{langDir}" style="position:absolute" role="presentation"><tr><td role="presentation"><div class="cke_dialog_body" role="presentation"><div id="cke_dialog_title_{id}" class="cke_dialog_title" role="presentation"></div><a id="cke_dialog_close_button_{id}" class="cke_dialog_close_button" href="javascript:void(0)" title="{closeTitle}" role="button"><span class="cke_label">X</span></a><div id="cke_dialog_tabs_{id}" class="cke_dialog_tabs" role="tablist"></div><table class="cke_dialog_contents" role="presentation"><tr><td id="cke_dialog_contents_{id}" class="cke_dialog_contents_body" role="presentation"></td></tr><tr><td id="cke_dialog_footer_{id}" class="cke_dialog_footer" role="presentation"></td></tr></table></div></td></tr></table></div>';CKEDITOR.dialog=function(c,g){function h(){var a=x._.focusList;a.sort(function(a,b){return a.tabIndex!=b.tabIndex?b.tabIndex-a.tabIndex:a.focusIndex-b.focusIndex});for(var b=a.length,c=0;b>c;c++)a[c].focusIndex=c}function i(a){var b=x._.focusList;if(a=a||0,!(1>b.length)){var c=x._.currentFocusIndex;x._.tabBarMode&&0>a&&(c=0);try{b[c].getInputElement().$.blur()}catch(d){}var e=c,f=1<x._.pageCount;do{if(e+=a,f&&!x._.tabBarMode&&(e==b.length||-1==e))return x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),void(x._.currentFocusIndex=-1);if(e=(e+b.length)%b.length,e==c)break}while(a&&!b[e].isFocusable());b[e].focus(),"text"==b[e].type&&b[e].select()}}function l(d){if(x==CKEDITOR.dialog._.currentTop){var e=d.data.getKeystroke(),f="rtl"==c.lang.dir,g=[37,38,39,40];if(n=o=0,9==e||e==CKEDITOR.SHIFT+9)i(e==CKEDITOR.SHIFT+9?-1:1),n=1;else if(e==CKEDITOR.ALT+121&&!x._.tabBarMode&&1<x.getPageCount())x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),x._.currentFocusIndex=-1,n=1;else if(-1!=CKEDITOR.tools.indexOf(g,e)&&x._.tabBarMode)e=-1!=CKEDITOR.tools.indexOf([f?39:37,38],e)?a.call(x):b.call(x),x.selectPage(e),x._.tabs[e][0].focus(),n=1;else if(13!=e&&32!=e||!x._.tabBarMode)if(13==e)e=d.data.getTarget(),e.is("a","button","select","textarea")||e.is("input")&&"button"==e.$.type||((e=this.getButton("ok"))&&CKEDITOR.tools.setTimeout(e.click,0,e),n=1),o=1;else{if(27!=e)return;(e=this.getButton("cancel"))?CKEDITOR.tools.setTimeout(e.click,0,e):!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),o=1}else this.selectPage(this._.currentTabId),this._.tabBarMode=!1,this._.currentFocusIndex=-1,i(1),n=1;m(d)}}function m(a){n?a.data.preventDefault(1):o&&a.data.stopPropagation()}var n,o,p=CKEDITOR.dialog._.dialogDefinitions[g],r=CKEDITOR.tools.clone(q),s=c.config.dialog_buttonsOrder||"OS",t=c.lang.dir,v={};if(("OS"==s&&CKEDITOR.env.mac||"rtl"==s&&"ltr"==t||"ltr"==s&&"rtl"==t)&&r.buttons.reverse(),p=CKEDITOR.tools.extend(p(c),r),p=CKEDITOR.tools.clone(p),p=new u(this,p),r=f(c),this._={editor:c,element:r.element,name:g,contentSize:{width:0,height:0},size:{width:0,height:0},contents:{},buttons:{},accessKeyMap:{},tabs:{},tabIdList:[],currentTabId:null,currentTabIndex:null,pageCount:0,lastTab:null,tabBarMode:!1,focusList:[],currentFocusIndex:0,hasFocus:!1},this.parts=r.parts,CKEDITOR.tools.setTimeout(function(){c.fire("ariaWidget",this.parts.contents)},0,this),r={position:CKEDITOR.env.ie6Compat?"absolute":"fixed",top:0,visibility:"hidden"},r["rtl"==t?"right":"left"]=0,this.parts.dialog.setStyles(r),CKEDITOR.event.call(this),this.definition=p=CKEDITOR.fire("dialogDefinition",{name:g,definition:p},c).definition,!("removeDialogTabs"in c._)&&c.config.removeDialogTabs){for(r=c.config.removeDialogTabs.split(";"),t=0;t<r.length;t++)if(s=r[t].split(":"),2==s.length){var w=s[0];v[w]||(v[w]=[]),v[w].push(s[1])}c._.removeDialogTabs=v}if(c._.removeDialogTabs&&(v=c._.removeDialogTabs[g]))for(t=0;t<v.length;t++)p.removeContents(v[t]);p.onLoad&&this.on("load",p.onLoad),p.onShow&&this.on("show",p.onShow),p.onHide&&this.on("hide",p.onHide),p.onOk&&this.on("ok",function(a){c.fire("saveSnapshot"),setTimeout(function(){c.fire("saveSnapshot")},0),!1===p.onOk.call(this,a)&&(a.data.hide=!1)}),this.state=CKEDITOR.DIALOG_STATE_IDLE,p.onCancel&&this.on("cancel",function(a){!1===p.onCancel.call(this,a)&&(a.data.hide=!1)});var x=this,y=function(a){var b,c=x._.contents,d=!1;for(b in c)for(var e in c[b])if(d=a.call(this,c[b][e]))return};this.on("ok",function(a){y(function(b){if(b.validate){var c=b.validate(this),e="string"==typeof c||!1===c;return e&&(a.data.hide=!1,a.stop()),d.call(b,!e,"string"==typeof c?c:void 0),e}})},this,null,0),this.on("cancel",function(a){y(function(b){return b.isChanged()?(c.config.dialog_noConfirmCancel||confirm(c.lang.common.confirmCancel)||(a.data.hide=!1),!0):void 0})},this,null,0),this.parts.close.on("click",function(a){!1!==this.fire("cancel",{hide:!0}).hide&&this.hide(),a.data.preventDefault()},this),this.changeFocus=i;var z=this._.element;for(c.focusManager.add(z,1),this.on("show",function(){z.on("keydown",l,this),CKEDITOR.env.gecko&&z.on("keypress",m,this)}),this.on("hide",function(){z.removeListener("keydown",l),CKEDITOR.env.gecko&&z.removeListener("keypress",m), -y(function(a){e.apply(a)})}),this.on("iframeAdded",function(a){new CKEDITOR.dom.document(a.data.iframe.$.contentWindow.document).on("keydown",l,this,null,0)}),this.on("show",function(){h();var a=1<x._.pageCount;c.config.dialog_startupFocusTab&&a?(x._.tabBarMode=!0,x._.tabs[x._.currentTabId][0].focus(),x._.currentFocusIndex=-1):this._.hasFocus||(this._.currentFocusIndex=a?-1:this._.focusList.length-1,p.onFocus?(a=p.onFocus.call(this))&&a.focus():i(1))},this,null,4294967295),CKEDITOR.env.ie6Compat&&this.on("load",function(){var a=this.getElement(),b=a.getFirst();b.remove(),b.appendTo(a)},this),j(this),k(this),new CKEDITOR.dom.text(p.title,CKEDITOR.document).appendTo(this.parts.title),t=0;t<p.contents.length;t++)(v=p.contents[t])&&this.addPage(v);for(this.parts.tabs.on("click",function(a){var b=a.data.getTarget();b.hasClass("cke_dialog_tab")&&(b=b.$.id,this.selectPage(b.substring(4,b.lastIndexOf("_"))),this._.tabBarMode&&(this._.tabBarMode=!1,this._.currentFocusIndex=-1,i(1)),a.data.preventDefault())},this),t=[],v=CKEDITOR.dialog._.uiElementBuilders.hbox.build(this,{type:"hbox",className:"cke_dialog_footer_buttons",widths:[],children:p.buttons},t).getChild(),this.parts.footer.setHtml(t.join("")),t=0;t<v.length;t++)this._.buttons[v[t].id]=v[t]},CKEDITOR.dialog.prototype={destroy:function(){this.hide(),this._.element.remove()},resize:function(){return function(a,b){this._.contentSize&&this._.contentSize.width==a&&this._.contentSize.height==b||(CKEDITOR.dialog.fire("resize",{dialog:this,width:a,height:b},this._.editor),this.fire("resize",{width:a,height:b},this._.editor),this.parts.contents.setStyles({width:a+"px",height:b+"px"}),"rtl"==this._.editor.lang.dir&&this._.position&&(this._.position.x=CKEDITOR.document.getWindow().getViewPaneSize().width-this._.contentSize.width-parseInt(this._.element.getFirst().getStyle("right"),10)),this._.contentSize={width:a,height:b})}}(),getSize:function(){var a=this._.element.getFirst();return{width:a.$.offsetWidth||0,height:a.$.offsetHeight||0}},move:function(a,b,c){var d=this._.element.getFirst(),e="rtl"==this._.editor.lang.dir,f="fixed"==d.getComputedStyle("position");CKEDITOR.env.ie&&d.setStyle("zoom","100%"),f&&this._.position&&this._.position.x==a&&this._.position.y==b||(this._.position={x:a,y:b},f||(f=CKEDITOR.document.getWindow().getScrollPosition(),a+=f.x,b+=f.y),e&&(f=this.getSize(),a=CKEDITOR.document.getWindow().getViewPaneSize().width-f.width-a),b={top:(b>0?b:0)+"px"},b[e?"right":"left"]=(a>0?a:0)+"px",d.setStyles(b),c&&(this._.moved=1))},getPosition:function(){return CKEDITOR.tools.extend({},this._.position)},show:function(){var a=this._.element,b=this.definition;a.getParent()&&a.getParent().equals(CKEDITOR.document.getBody())?a.setStyle("display","block"):a.appendTo(CKEDITOR.document.getBody()),this.resize(this._.contentSize&&this._.contentSize.width||b.width||b.minWidth,this._.contentSize&&this._.contentSize.height||b.height||b.minHeight),this.reset(),this.selectPage(this.definition.contents[0].id),null===CKEDITOR.dialog._.currentZIndex&&(CKEDITOR.dialog._.currentZIndex=this._.editor.config.baseFloatZIndex),this._.element.getFirst().setStyle("z-index",CKEDITOR.dialog._.currentZIndex+=10),null===CKEDITOR.dialog._.currentTop?(CKEDITOR.dialog._.currentTop=this,this._.parentDialog=null,m(this._.editor)):(this._.parentDialog=CKEDITOR.dialog._.currentTop,this._.parentDialog.getElement().getFirst().$.style.zIndex-=Math.floor(this._.editor.config.baseFloatZIndex/2),CKEDITOR.dialog._.currentTop=this),a.on("keydown",z),a.on("keyup",A),this._.hasFocus=!1;for(var c in b.contents)if(b.contents[c]){var a=b.contents[c],d=this._.tabs[a.id],e=a.requiredContent,f=0;if(d){for(var g in this._.contents[a.id]){var i=this._.contents[a.id][g];"hbox"!=i.type&&"vbox"!=i.type&&i.getInputElement()&&(i.requiredContent&&!this._.editor.activeFilter.check(i.requiredContent)?i.disable():(i.enable(),f++))}!f||e&&!this._.editor.activeFilter.check(e)?d[0].addClass("cke_dialog_tab_disabled"):d[0].removeClass("cke_dialog_tab_disabled")}}CKEDITOR.tools.setTimeout(function(){this.layout(),h(this),this.parts.dialog.setStyle("visibility",""),this.fireOnce("load",{}),CKEDITOR.ui.fire("ready",this),this.fire("show",{}),this._.editor.fire("dialogShow",this),this._.parentDialog||this._.editor.focusManager.lock(),this.foreach(function(a){a.setInitValue&&a.setInitValue()})},100,this)},layout:function(){var a=this.parts.dialog,b=this.getSize(),c=CKEDITOR.document.getWindow().getViewPaneSize(),d=(c.width-b.width)/2,e=(c.height-b.height)/2;CKEDITOR.env.ie6Compat||(b.height+(e>0?e:0)>c.height||b.width+(d>0?d:0)>c.width?a.setStyle("position","absolute"):a.setStyle("position","fixed")),this.move(this._.moved?this._.position.x:d,this._.moved?this._.position.y:e)},foreach:function(a){for(var b in this._.contents)for(var c in this._.contents[b])a.call(this,this._.contents[b][c]);return this},reset:function(){var a=function(a){a.reset&&a.reset(1)};return function(){return this.foreach(a),this}}(),setupContent:function(){var a=arguments;this.foreach(function(b){b.setup&&b.setup.apply(b,a)})},commitContent:function(){var a=arguments;this.foreach(function(b){CKEDITOR.env.ie&&this._.currentFocusIndex==b.focusIndex&&b.getInputElement().$.blur(),b.commit&&b.commit.apply(b,a)})},hide:function(){if(this.parts.dialog.isVisible()){this.fire("hide",{}),this._.editor.fire("dialogHide",this),this.selectPage(this._.tabIdList[0]);var a=this._.element;for(a.setStyle("display","none"),this.parts.dialog.setStyle("visibility","hidden"),C(this);CKEDITOR.dialog._.currentTop!=this;)CKEDITOR.dialog._.currentTop.hide();if(this._.parentDialog){var b=this._.parentDialog.getElement().getFirst();b.setStyle("z-index",parseInt(b.$.style.zIndex,10)+Math.floor(this._.editor.config.baseFloatZIndex/2))}else n(this._.editor);if(CKEDITOR.dialog._.currentTop=this._.parentDialog)CKEDITOR.dialog._.currentZIndex-=10;else{CKEDITOR.dialog._.currentZIndex=null,a.removeListener("keydown",z),a.removeListener("keyup",A);var c=this._.editor;c.focus(),setTimeout(function(){c.focusManager.unlock(),CKEDITOR.env.iOS&&c.window.focus()},0)}delete this._.parentDialog,this.foreach(function(a){a.resetInitValue&&a.resetInitValue()}),this.setState(CKEDITOR.DIALOG_STATE_IDLE)}},addPage:function(a){if(!a.requiredContent||this._.editor.filter.check(a.requiredContent)){for(var b=[],c=a.label?' title="'+CKEDITOR.tools.htmlEncode(a.label)+'"':"",d=CKEDITOR.dialog._.uiElementBuilders.vbox.build(this,{type:"vbox",className:"cke_dialog_page_contents",children:a.elements,expand:!!a.expand,padding:a.padding,style:a.style||"width: 100%;"},b),e=this._.contents[a.id]={},f=d.getChild(),g=0;d=f.shift();)d.notAllowed||"hbox"==d.type||"vbox"==d.type||g++,e[d.id]=d,"function"==typeof d.getChild&&f.push.apply(f,d.getChild());g||(a.hidden=!0),b=CKEDITOR.dom.element.createFromHtml(b.join("")),b.setAttribute("role","tabpanel"),d=CKEDITOR.env,e="cke_"+a.id+"_"+CKEDITOR.tools.getNextNumber(),c=CKEDITOR.dom.element.createFromHtml(['<a class="cke_dialog_tab"',0<this._.pageCount?" cke_last":"cke_first",c,a.hidden?' style="display:none"':"",' id="',e,'"',d.gecko&&!d.hc?"":' href="javascript:void(0)"',' tabIndex="-1" hidefocus="true" role="tab">',a.label,"</a>"].join("")),b.setAttribute("aria-labelledby",e),this._.tabs[a.id]=[c,b],this._.tabIdList.push(a.id),!a.hidden&&this._.pageCount++,this._.lastTab=c,this.updateStyle(),b.setAttribute("name",a.id),b.appendTo(this.parts.contents),c.unselectable(),this.parts.tabs.append(c),a.accessKey&&(B(this,this,"CTRL+"+a.accessKey,E,D),this._.accessKeyMap["CTRL+"+a.accessKey]=a.id)}},selectPage:function(a){if(this._.currentTabId!=a&&!this._.tabs[a][0].hasClass("cke_dialog_tab_disabled")&&!1!==this.fire("selectPage",{page:a,currentPage:this._.currentTabId})){for(var b in this._.tabs){var d=this._.tabs[b][0],e=this._.tabs[b][1];b!=a&&(d.removeClass("cke_dialog_tab_selected"),e.hide()),e.setAttribute("aria-hidden",b!=a)}var f=this._.tabs[a];f[0].addClass("cke_dialog_tab_selected"),CKEDITOR.env.ie6Compat||CKEDITOR.env.ie7Compat?(c(f[1]),f[1].show(),setTimeout(function(){c(f[1],1)},0)):f[1].show(),this._.currentTabId=a,this._.currentTabIndex=CKEDITOR.tools.indexOf(this._.tabIdList,a)}},updateStyle:function(){this.parts.dialog[(1===this._.pageCount?"add":"remove")+"Class"]("cke_single_page")},hidePage:function(b){var c=this._.tabs[b]&&this._.tabs[b][0];c&&1!=this._.pageCount&&c.isVisible()&&(b==this._.currentTabId&&this.selectPage(a.call(this)),c.hide(),this._.pageCount--,this.updateStyle())},showPage:function(a){(a=this._.tabs[a]&&this._.tabs[a][0])&&(a.show(),this._.pageCount++,this.updateStyle())},getElement:function(){return this._.element},getName:function(){return this._.name},getContentElement:function(a,b){var c=this._.contents[a];return c&&c[b]},getValueOf:function(a,b){return this.getContentElement(a,b).getValue()},setValueOf:function(a,b,c){return this.getContentElement(a,b).setValue(c)},getButton:function(a){return this._.buttons[a]},click:function(a){return this._.buttons[a].click()},disableButton:function(a){return this._.buttons[a].disable()},enableButton:function(a){return this._.buttons[a].enable()},getPageCount:function(){return this._.pageCount},getParentEditor:function(){return this._.editor},getSelectedElement:function(){return this.getParentEditor().getSelection().getSelectedElement()},addFocusable:function(a,b){if("undefined"==typeof b)b=this._.focusList.length,this._.focusList.push(new g(this,a,b));else{this._.focusList.splice(b,0,new g(this,a,b));for(var c=b+1;c<this._.focusList.length;c++)this._.focusList[c].focusIndex++}},setState:function(a){if(this.state!=a){if(this.state=a,a==CKEDITOR.DIALOG_STATE_BUSY){if(!this.parts.spinner){var b=this.getParentEditor().lang.dir,c={attributes:{"class":"cke_dialog_spinner"},styles:{"float":"rtl"==b?"right":"left"}};c.styles["margin-"+("rtl"==b?"left":"right")]="8px",this.parts.spinner=CKEDITOR.document.createElement("div",c),this.parts.spinner.setHtml("⌛"),this.parts.spinner.appendTo(this.parts.title,1)}this.parts.spinner.show(),this.getButton("ok").disable()}else a==CKEDITOR.DIALOG_STATE_IDLE&&(this.parts.spinner&&this.parts.spinner.hide(),this.getButton("ok").enable());this.fire("state",a)}}},CKEDITOR.tools.extend(CKEDITOR.dialog,{add:function(a,b){this._.dialogDefinitions[a]&&"function"!=typeof b||(this._.dialogDefinitions[a]=b)},exists:function(a){return!!this._.dialogDefinitions[a]},getCurrent:function(){return CKEDITOR.dialog._.currentTop},isTabEnabled:function(a,b,c){return a=a.config.removeDialogTabs,!(a&&a.match(new RegExp("(?:^|;)"+b+":"+c+"(?:$|;)","i")))},okButton:function(){var a=function(a,b){return b=b||{},CKEDITOR.tools.extend({id:"ok",type:"button",label:a.lang.common.ok,"class":"cke_dialog_ui_button_ok",onClick:function(a){a=a.data.dialog,!1!==a.fire("ok",{hide:!0}).hide&&a.hide()}},b,!0)};return a.type="button",a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)},a}(),cancelButton:function(){var a=function(a,b){return b=b||{},CKEDITOR.tools.extend({id:"cancel",type:"button",label:a.lang.common.cancel,"class":"cke_dialog_ui_button_cancel",onClick:function(a){a=a.data.dialog,!1!==a.fire("cancel",{hide:!0}).hide&&a.hide()}},b,!0)};return a.type="button",a.override=function(b){return CKEDITOR.tools.extend(function(c){return a(c,b)},{type:"button"},!0)},a}(),addUIElement:function(a,b){this._.uiElementBuilders[a]=b}}),CKEDITOR.dialog._={uiElementBuilders:{},dialogDefinitions:{},currentTop:null,currentZIndex:null},CKEDITOR.event.implementOn(CKEDITOR.dialog),CKEDITOR.event.implementOn(CKEDITOR.dialog.prototype);var q={resizable:CKEDITOR.DIALOG_RESIZE_BOTH,minWidth:600,minHeight:400,buttons:[CKEDITOR.dialog.okButton,CKEDITOR.dialog.cancelButton]},r=function(a,b,c){for(var d,e=0;d=a[e];e++)if(d.id==b||c&&d[c]&&(d=r(d[c],b,c)))return d;return null},s=function(a,b,c,d,e){if(c){for(var f,g=0;f=a[g];g++){if(f.id==c)return a.splice(g,0,b),b;if(d&&f[d]&&(f=s(f[d],b,c,d,!0)))return f}if(e)return null}return a.push(b),b},t=function(a,b,c){for(var d,e=0;d=a[e];e++){if(d.id==b)return a.splice(e,1);if(c&&d[c]&&(d=t(d[c],b,c)))return d}return null},u=function(a,b){this.dialog=a;for(var c,d=b.contents,e=0;c=d[e];e++)d[e]=c&&new i(a,c);CKEDITOR.tools.extend(this,b)};u.prototype={getContents:function(a){return r(this.contents,a)},getButton:function(a){return r(this.buttons,a)},addContents:function(a,b){return s(this.contents,a,b)},addButton:function(a,b){return s(this.buttons,a,b)},removeContents:function(a){t(this.contents,a)},removeButton:function(a){t(this.buttons,a)}},i.prototype={get:function(a){return r(this.elements,a,"children")},add:function(a,b){return s(this.elements,a,b,"children")},remove:function(a){t(this.elements,a,"children")}};var v,w,x={},y={},z=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,d=a.data.$.shiftKey,e=String.fromCharCode(a.data.$.keyCode);(b=y[(b?"CTRL+":"")+(c?"ALT+":"")+(d?"SHIFT+":"")+e])&&b.length&&(b=b[b.length-1],b.keydown&&b.keydown.call(b.uiElement,b.dialog,b.key),a.data.preventDefault())},A=function(a){var b=a.data.$.ctrlKey||a.data.$.metaKey,c=a.data.$.altKey,d=a.data.$.shiftKey,e=String.fromCharCode(a.data.$.keyCode);(b=y[(b?"CTRL+":"")+(c?"ALT+":"")+(d?"SHIFT+":"")+e])&&b.length&&(b=b[b.length-1],b.keyup&&(b.keyup.call(b.uiElement,b.dialog,b.key),a.data.preventDefault()))},B=function(a,b,c,d,e){(y[c]||(y[c]=[])).push({uiElement:a,dialog:b,key:c,keyup:e||a.accessKeyUp,keydown:d||a.accessKeyDown})},C=function(a){for(var b in y){for(var c=y[b],d=c.length-1;d>=0;d--)c[d].dialog!=a&&c[d].uiElement!=a||c.splice(d,1);0===c.length&&delete y[b]}},D=function(a,b){a._.accessKeyMap[b]&&a.selectPage(a._.accessKeyMap[b])},E=function(){};!function(){CKEDITOR.ui.dialog={uiElement:function(a,b,c,d,e,f,g){if(!(4>arguments.length)){var h=(d.call?d(b):d)||"div",i=["<",h," "],j=(e&&e.call?e(b):e)||{},k=(f&&f.call?f(b):f)||{},l=(g&&g.call?g.call(this,a,b):g)||"",m=this.domId=k.id||CKEDITOR.tools.getNextId()+"_uiElement";b.requiredContent&&!a.getParentEditor().filter.check(b.requiredContent)&&(j.display="none",this.notAllowed=!0),k.id=m;var n={};b.type&&(n["cke_dialog_ui_"+b.type]=1),b.className&&(n[b.className]=1),b.disabled&&(n.cke_disabled=1);for(var o=k["class"]&&k["class"].split?k["class"].split(" "):[],m=0;m<o.length;m++)o[m]&&(n[o[m]]=1);o=[];for(m in n)o.push(m);k["class"]=o.join(" "),b.title&&(k.title=b.title),n=(b.style||"").split(";"),b.align&&(o=b.align,j["margin-left"]="left"==o?0:"auto",j["margin-right"]="right"==o?0:"auto");for(m in j)n.push(m+":"+j[m]);for(b.hidden&&n.push("display:none"),m=n.length-1;m>=0;m--)""===n[m]&&n.splice(m,1);0<n.length&&(k.style=(k.style?k.style+"; ":"")+n.join("; "));for(m in k)i.push(m+'="'+CKEDITOR.tools.htmlEncode(k[m])+'" ');i.push(">",l,"</",h,">"),c.push(i.join("")),(this._||(this._={})).dialog=a,"boolean"==typeof b.isChanged&&(this.isChanged=function(){return b.isChanged}),"function"==typeof b.isChanged&&(this.isChanged=b.isChanged),"function"==typeof b.setValue&&(this.setValue=CKEDITOR.tools.override(this.setValue,function(a){return function(c){a.call(this,b.setValue.call(this,c))}})),"function"==typeof b.getValue&&(this.getValue=CKEDITOR.tools.override(this.getValue,function(a){return function(){return b.getValue.call(this,a.call(this))}})),CKEDITOR.event.implementOn(this),this.registerEvents(b),this.accessKeyUp&&this.accessKeyDown&&b.accessKey&&B(this,a,"CTRL+"+b.accessKey);var p=this;a.on("load",function(){var b=p.getInputElement();if(b){var c=p.type in{checkbox:1,ratio:1}&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?"cke_dialog_ui_focused":"";b.on("focus",function(){a._.tabBarMode=!1,a._.hasFocus=!0,p.fire("focus"),c&&this.addClass(c)}),b.on("blur",function(){p.fire("blur"),c&&this.removeClass(c)})}}),CKEDITOR.tools.extend(this,b),this.keyboardFocusable&&(this.tabIndex=b.tabIndex||0,this.focusIndex=a._.focusList.push(this)-1,this.on("focus",function(){a._.currentFocusIndex=p.focusIndex}))}},hbox:function(a,b,c,d,e){if(!(4>arguments.length)){this._||(this._={});var f,g=this._.children=b,h=e&&e.widths||null,i=e&&e.height||null,j={role:"presentation"};e&&e.align&&(j.align=e.align),CKEDITOR.ui.dialog.uiElement.call(this,a,e||{type:"hbox"},d,"table",{},j,function(){var a=['<tbody><tr class="cke_dialog_ui_hbox">'];for(f=0;f<c.length;f++){var b="cke_dialog_ui_hbox_child",d=[];0===f&&(b="cke_dialog_ui_hbox_first"),f==c.length-1&&(b="cke_dialog_ui_hbox_last"),a.push('<td class="',b,'" role="presentation" '),h?h[f]&&d.push("width:"+o(h[f])):d.push("width:"+Math.floor(100/c.length)+"%"),i&&d.push("height:"+o(i)),e&&void 0!==e.padding&&d.push("padding:"+o(e.padding)),CKEDITOR.env.ie&&CKEDITOR.env.quirks&&g[f].align&&d.push("text-align:"+g[f].align),0<d.length&&a.push('style="'+d.join("; ")+'" '),a.push(">",c[f],"</td>")}return a.push("</tr></tbody>"),a.join("")})}},vbox:function(a,b,c,d,e){if(!(3>arguments.length)){this._||(this._={});var f=this._.children=b,g=e&&e.width||null,h=e&&e.heights||null;CKEDITOR.ui.dialog.uiElement.call(this,a,e||{type:"vbox"},d,"div",null,{role:"presentation"},function(){var b=['<table role="presentation" cellspacing="0" border="0" '];b.push('style="'),e&&e.expand&&b.push("height:100%;"),b.push("width:"+o(g||"100%"),";"),CKEDITOR.env.webkit&&b.push("float:none;"),b.push('"'),b.push('align="',CKEDITOR.tools.htmlEncode(e&&e.align||("ltr"==a.getParentEditor().lang.dir?"left":"right")),'" '),b.push("><tbody>");for(var d=0;d<c.length;d++){var i=[];b.push('<tr><td role="presentation" '),g&&i.push("width:"+o(g||"100%")),h?i.push("height:"+o(h[d])):e&&e.expand&&i.push("height:"+Math.floor(100/c.length)+"%"),e&&void 0!==e.padding&&i.push("padding:"+o(e.padding)),CKEDITOR.env.ie&&CKEDITOR.env.quirks&&f[d].align&&i.push("text-align:"+f[d].align),0<i.length&&b.push('style="',i.join("; "),'" '),b.push(' class="cke_dialog_ui_vbox_child">',c[d],"</td></tr>")}return b.push("</tbody></table>"),b.join("")})}}}}(),CKEDITOR.ui.dialog.uiElement.prototype={getElement:function(){return CKEDITOR.document.getById(this.domId)},getInputElement:function(){return this.getElement()},getDialog:function(){return this._.dialog},setValue:function(a,b){return this.getInputElement().setValue(a),!b&&this.fire("change",{value:a}),this},getValue:function(){return this.getInputElement().getValue()},isChanged:function(){return!1},selectParentTab:function(){for(var a=this.getInputElement();(a=a.getParent())&&-1==a.$.className.search("cke_dialog_page_contents"););return a?(a=a.getAttribute("name"),this._.dialog._.currentTabId!=a&&this._.dialog.selectPage(a),this):this},focus:function(){return this.selectParentTab().getInputElement().focus(),this},registerEvents:function(a){var b,c,d=/^on([A-Z]\w+)/,e=function(a,b,c,d){b.on("load",function(){a.getInputElement().on(c,d,a)})};for(c in a)(b=c.match(d))&&(this.eventProcessors[c]?this.eventProcessors[c].call(this,this._.dialog,a[c]):e(this,this._.dialog,b[1].toLowerCase(),a[c]));return this},eventProcessors:{onLoad:function(a,b){a.on("load",b,this)},onShow:function(a,b){a.on("show",b,this)},onHide:function(a,b){a.on("hide",b,this)}},accessKeyDown:function(){this.focus()},accessKeyUp:function(){},disable:function(){var a=this.getElement();this.getInputElement().setAttribute("disabled","true"),a.addClass("cke_disabled")},enable:function(){var a=this.getElement();this.getInputElement().removeAttribute("disabled"),a.removeClass("cke_disabled")},isEnabled:function(){return!this.getElement().hasClass("cke_disabled")},isVisible:function(){return this.getInputElement().isVisible()},isFocusable:function(){return!(!this.isEnabled()||!this.isVisible())}},CKEDITOR.ui.dialog.hbox.prototype=CKEDITOR.tools.extend(new CKEDITOR.ui.dialog.uiElement,{getChild:function(a){return 1>arguments.length?this._.children.concat():(a.splice||(a=[a]),2>a.length?this._.children[a[0]]:this._.children[a[0]]&&this._.children[a[0]].getChild?this._.children[a[0]].getChild(a.slice(1,a.length)):null)}},!0),CKEDITOR.ui.dialog.vbox.prototype=new CKEDITOR.ui.dialog.hbox,function(){var a={build:function(a,b,c){for(var d,e=b.children,f=[],g=[],h=0;h<e.length&&(d=e[h]);h++){var i=[];f.push(i),g.push(CKEDITOR.dialog._.uiElementBuilders[d.type].build(a,d,i))}return new CKEDITOR.ui.dialog[b.type](a,g,f,c,b)}};CKEDITOR.dialog.addUIElement("hbox",a),CKEDITOR.dialog.addUIElement("vbox",a)}(),CKEDITOR.dialogCommand=function(a,b){this.dialogName=a,CKEDITOR.tools.extend(this,b,!0)},CKEDITOR.dialogCommand.prototype={exec:function(a){a.openDialog(this.dialogName)},canUndo:!1,editorFocus:1},function(){var a=/^([a]|[^a])+$/,b=/^\d*$/,c=/^\d*(?:\.\d+)?$/,d=/^(((\d*(\.\d+))|(\d*))(px|\%)?)?$/,e=/^(((\d*(\.\d+))|(\d*))(px|em|ex|in|cm|mm|pt|pc|\%)?)?$/i,f=/^(\s*[\w-]+\s*:\s*[^:;]+(?:;|$))*$/;CKEDITOR.VALIDATE_OR=1,CKEDITOR.VALIDATE_AND=2,CKEDITOR.dialog.validate={functions:function(){var a=arguments;return function(){var b,c,d=this&&this.getValue?this.getValue():a[0],e=CKEDITOR.VALIDATE_AND,f=[];for(c=0;c<a.length&&"function"==typeof a[c];c++)f.push(a[c]);c<a.length&&"string"==typeof a[c]&&(b=a[c],c++),c<a.length&&"number"==typeof a[c]&&(e=a[c]);var g=e==CKEDITOR.VALIDATE_AND;for(c=0;c<f.length;c++)g=e==CKEDITOR.VALIDATE_AND?g&&f[c](d):g||f[c](d);return g?!0:b}},regex:function(a,b){return function(c){return c=this&&this.getValue?this.getValue():c,a.test(c)?!0:b}},notEmpty:function(b){return this.regex(a,b)},integer:function(a){return this.regex(b,a)},number:function(a){return this.regex(c,a)},cssLength:function(a){return this.functions(function(a){return e.test(CKEDITOR.tools.trim(a))},a)},htmlLength:function(a){return this.functions(function(a){return d.test(CKEDITOR.tools.trim(a))},a)},inlineStyle:function(a){return this.functions(function(a){return f.test(CKEDITOR.tools.trim(a))},a)},equals:function(a,b){return this.functions(function(b){return b==a},b)},notEqual:function(a,b){return this.functions(function(b){return b!=a},b)}},CKEDITOR.on("instanceDestroyed",function(a){if(CKEDITOR.tools.isEmpty(CKEDITOR.instances)){for(var b;b=CKEDITOR.dialog._.currentTop;)b.hide();for(var c in x)x[c].remove();x={}}a=a.editor._.storedDialogs;for(var d in a)a[d].destroy()})}(),CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{openDialog:function(a,b){var c=null,d=CKEDITOR.dialog._.dialogDefinitions[a];if(null===CKEDITOR.dialog._.currentTop&&m(this),"function"==typeof d)c=this._.storedDialogs||(this._.storedDialogs={}),c=c[a]||(c[a]=new CKEDITOR.dialog(this,a)),b&&b.call(c,c),c.show();else{if("failed"==d)throw n(this),Error('[CKEDITOR.dialog.openDialog] Dialog "'+a+'" failed when loading definition.');"string"==typeof d&&CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(d),function(){"function"!=typeof CKEDITOR.dialog._.dialogDefinitions[a]&&(CKEDITOR.dialog._.dialogDefinitions[a]="failed"),this.openDialog(a,b)},this,0,1)}return CKEDITOR.skin.loadPart("dialog"),c}})}(),CKEDITOR.plugins.add("dialog",{requires:"dialogui",init:function(a){a.on("doubleclick",function(b){b.data.dialog&&a.openDialog(b.data.dialog)},null,null,999)}}),function(){CKEDITOR.plugins.add("a11yhelp",{requires:"dialog",availableLangs:{af:1,ar:1,bg:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fo:1,fr:1,"fr-ca":1,gl:1,gu:1,he:1,hi:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ko:1,ku:1,lt:1,lv:1,mk:1,mn:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ro:1,ru:1,si:1,sk:1,sl:1,sq:1,sr:1,"sr-latn":1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},init:function(a){var b=this;a.addCommand("a11yHelp",{exec:function(){var c=a.langCode,c=b.availableLangs[c]?c:b.availableLangs[c.replace(/-.*/,"")]?c.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(b.path+"dialogs/lang/"+c+".js"),function(){a.lang.a11yhelp=b.langEntries[c],a.openDialog("a11yHelp")})},modes:{wysiwyg:1,source:1},readOnly:1,canUndo:!1}),a.setKeystroke(CKEDITOR.ALT+48,"a11yHelp"),CKEDITOR.dialog.add("a11yHelp",this.path+"dialogs/a11yhelp.js"),a.on("ariaEditorHelpLabel",function(b){b.data.label=a.lang.common.editorHelp})}})}(),CKEDITOR.plugins.add("about",{requires:"dialog",init:function(a){var b=a.addCommand("about",new CKEDITOR.dialogCommand("about"));b.modes={wysiwyg:1,source:1},b.canUndo=!1,b.readOnly=1,a.ui.addButton&&a.ui.addButton("About",{label:a.lang.about.title,command:"about",toolbar:"about"}),CKEDITOR.dialog.add("about",this.path+"dialogs/about.js")}}),CKEDITOR.plugins.add("basicstyles",{init:function(a){var b=0,c=function(c,e,f,g){if(g){g=new CKEDITOR.style(g);var h=d[f];h.unshift(g),a.attachStyleStateChange(g,function(b){!a.readOnly&&a.getCommand(f).setState(b)}),a.addCommand(f,new CKEDITOR.styleCommand(g,{contentForms:h})),a.ui.addButton&&a.ui.addButton(c,{label:e,command:f,toolbar:"basicstyles,"+(b+=10)})}},d={bold:["strong","b",["span",function(a){return a=a.styles["font-weight"],"bold"==a||+a>=700}]],italic:["em","i",["span",function(a){return"italic"==a.styles["font-style"]}]],underline:["u",["span",function(a){return"underline"==a.styles["text-decoration"]}]],strike:["s","strike",["span",function(a){return"line-through"==a.styles["text-decoration"]}]],subscript:["sub"],superscript:["sup"]},e=a.config,f=a.lang.basicstyles;c("Bold",f.bold,"bold",e.coreStyles_bold),c("Italic",f.italic,"italic",e.coreStyles_italic),c("Underline",f.underline,"underline",e.coreStyles_underline),c("Strike",f.strike,"strike",e.coreStyles_strike),c("Subscript",f.subscript,"subscript",e.coreStyles_subscript),c("Superscript",f.superscript,"superscript",e.coreStyles_superscript),a.setKeystroke([[CKEDITOR.CTRL+66,"bold"],[CKEDITOR.CTRL+73,"italic"],[CKEDITOR.CTRL+85,"underline"]])}}),CKEDITOR.config.coreStyles_bold={element:"strong",overrides:"b"},CKEDITOR.config.coreStyles_italic={element:"em",overrides:"i"},CKEDITOR.config.coreStyles_underline={element:"u"},CKEDITOR.config.coreStyles_strike={element:"s",overrides:"strike"},CKEDITOR.config.coreStyles_subscript={element:"sub"},CKEDITOR.config.coreStyles_superscript={element:"sup"},function(){var a={exec:function(a){var b=a.getCommand("blockquote").state,c=a.getSelection(),d=c&&c.getRanges()[0];if(d){var e=c.createBookmarks();if(CKEDITOR.env.ie){var f,g=e[0].startNode,h=e[0].endNode;if(g&&"blockquote"==g.getParent().getName())for(f=g;f=f.getNext();)if(f.type==CKEDITOR.NODE_ELEMENT&&f.isBlockBoundary()){g.move(f,!0);break}if(h&&"blockquote"==h.getParent().getName())for(f=h;f=f.getPrevious();)if(f.type==CKEDITOR.NODE_ELEMENT&&f.isBlockBoundary()){h.move(f);break}}var i=d.createIterator();if(i.enlargeBr=a.config.enterMode!=CKEDITOR.ENTER_BR,b==CKEDITOR.TRISTATE_OFF){for(g=[];b=i.getNextParagraph();)g.push(b);for(1>g.length&&(b=a.document.createElement(a.config.enterMode==CKEDITOR.ENTER_P?"p":"div"),h=e.shift(),d.insertNode(b),b.append(new CKEDITOR.dom.text("\ufeff",a.document)),d.moveToBookmark(h),d.selectNodeContents(b),d.collapse(!0),h=d.createBookmark(),g.push(b),e.unshift(h)),f=g[0].getParent(),d=[],h=0;h<g.length;h++)b=g[h],f=f.getCommonAncestor(b.getParent());for(b={table:1,tbody:1,tr:1,ol:1,ul:1};b[f.getName()];)f=f.getParent();for(h=null;0<g.length;){for(b=g.shift();!b.getParent().equals(f);)b=b.getParent();b.equals(h)||d.push(b),h=b}for(;0<d.length;)if(b=d.shift(),"blockquote"==b.getName()){for(h=new CKEDITOR.dom.documentFragment(a.document);b.getFirst();)h.append(b.getFirst().remove()),g.push(h.getLast());h.replace(b)}else g.push(b);for(d=a.document.createElement("blockquote"),d.insertBefore(g[0]);0<g.length;)b=g.shift(),d.append(b)}else if(b==CKEDITOR.TRISTATE_ON){for(h=[],f={};b=i.getNextParagraph();){for(g=d=null;b.getParent();){if("blockquote"==b.getParent().getName()){d=b.getParent(),g=b;break}b=b.getParent()}d&&g&&!g.getCustomData("blockquote_moveout")&&(h.push(g),CKEDITOR.dom.element.setMarker(f,g,"blockquote_moveout",!0))}for(CKEDITOR.dom.element.clearAllMarkers(f),b=[],g=[],f={};0<h.length;)i=h.shift(),d=i.getParent(),i.getPrevious()?i.getNext()?(i.breakParent(i.getParent()),g.push(i.getNext())):i.remove().insertAfter(d):i.remove().insertBefore(d),d.getCustomData("blockquote_processed")||(g.push(d),CKEDITOR.dom.element.setMarker(f,d,"blockquote_processed",!0)),b.push(i);for(CKEDITOR.dom.element.clearAllMarkers(f),h=g.length-1;h>=0;h--){d=g[h];a:{f=d;for(var i=0,j=f.getChildCount(),k=void 0;j>i&&(k=f.getChild(i));i++)if(k.type==CKEDITOR.NODE_ELEMENT&&k.isBlockBoundary()){f=!1;break a}f=!0}f&&d.remove()}if(a.config.enterMode==CKEDITOR.ENTER_BR)for(d=!0;b.length;)if(i=b.shift(),"div"==i.getName()){for(h=new CKEDITOR.dom.documentFragment(a.document),!d||!i.getPrevious()||i.getPrevious().type==CKEDITOR.NODE_ELEMENT&&i.getPrevious().isBlockBoundary()||h.append(a.document.createElement("br")),d=i.getNext()&&!(i.getNext().type==CKEDITOR.NODE_ELEMENT&&i.getNext().isBlockBoundary());i.getFirst();)i.getFirst().remove().appendTo(h);d&&h.append(a.document.createElement("br")),h.replace(i),d=!1}}c.selectBookmarks(e),a.focus()}},refresh:function(a,b){this.setState(a.elementPath(b.block||b.blockLimit).contains("blockquote",1)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)},context:"blockquote",allowedContent:"blockquote",requiredContent:"blockquote"};CKEDITOR.plugins.add("blockquote",{init:function(b){b.blockless||(b.addCommand("blockquote",a),b.ui.addButton&&b.ui.addButton("Blockquote",{label:b.lang.blockquote.toolbar,command:"blockquote",toolbar:"blocks,10"}))}})}(),function(){function a(a,b,c){return b.type||(b.type="auto"),c&&!1===a.fire("beforePaste",b)||!b.dataValue&&b.dataTransfer.isEmpty()?!1:(b.dataValue||(b.dataValue=""),CKEDITOR.env.gecko&&"drop"==b.method&&a.toolbox&&a.once("afterPaste",function(){a.toolbox.focus()}),a.fire("paste",b))}function b(b){function c(){var a=b.editable();if(CKEDITOR.plugins.clipboard.isCustomCopyCutSupported){var c=function(a){b.readOnly&&"cut"==a.name||p.initPasteDataTransfer(a,b),a.data.preventDefault()};a.on("copy",c),a.on("cut",c),a.on("cut",function(){b.readOnly||b.extractSelectedHtml()},null,null,999)}a.on(p.mainPasteEvent,function(a){"beforepaste"==p.mainPasteEvent&&q||m(a)}),"beforepaste"==p.mainPasteEvent&&(a.on("paste",function(a){r||(f(),a.data.preventDefault(),m(a),h("paste")||b.openDialog("paste"))}),a.on("contextmenu",g,null,null,0),a.on("beforepaste",function(a){!a.data||a.data.$.ctrlKey||a.data.$.shiftKey||g()},null,null,0)),a.on("beforecut",function(){!q&&i(b)});var d;a.attachListener(CKEDITOR.env.ie?a:b.document.getDocumentElement(),"mouseup",function(){d=setTimeout(function(){n()},0)}),b.on("destroy",function(){clearTimeout(d)}),a.on("keyup",n)}function d(a){return{type:a,canUndo:"cut"==a,startDisabled:!0,exec:function(){"cut"==this.type&&i();var a,c=this.type;if(CKEDITOR.env.ie)a=h(c);else try{a=b.document.$.execCommand(c,!1,null)}catch(d){a=!1}return a||b.showNotification(b.lang.clipboard[this.type+"Error"]),a}}}function e(){return{canUndo:!1,async:!0,exec:function(b,c){var d=this,e=function(c,e){c&&a(b,c,!!e),b.fire("afterCommandExec",{name:"paste",command:d,returnValue:!!c})};"string"==typeof c?e({dataValue:c,method:"paste",dataTransfer:p.initPasteDataTransfer()},1):b.getClipboardData(e)}}}function f(){r=1,setTimeout(function(){r=0},100)}function g(){q=1,setTimeout(function(){q=0},10)}function h(a){var c=b.document,d=c.getBody(),e=!1,f=function(){e=!0};return d.on(a,f),7<CKEDITOR.env.version?c.$.execCommand(a):c.$.selection.createRange().execCommand(a),d.removeListener(a,f),e}function i(){if(CKEDITOR.env.ie&&!CKEDITOR.env.quirks){var a,c,d,e=b.getSelection();e.getType()==CKEDITOR.SELECTION_ELEMENT&&(a=e.getSelectedElement())&&(c=e.getRanges()[0],d=b.document.createText(""),d.insertBefore(a),c.setStartBefore(d),c.setEndAfter(a),e.selectRanges([c]),setTimeout(function(){a.getParent()&&(d.remove(),e.selectElement(a))},0))}}function j(a,c){var d,e=b.document,f=b.editable(),g=function(a){a.cancel()};if(!e.getById("cke_pastebin")){var h=b.getSelection(),i=h.createBookmarks();CKEDITOR.env.ie&&h.root.fire("selectionchange");var j=new CKEDITOR.dom.element(!CKEDITOR.env.webkit&&!f.is("body")||CKEDITOR.env.ie?"div":"body",e);j.setAttributes({id:"cke_pastebin","data-cke-temp":"1"});var k=0,e=e.getWindow();CKEDITOR.env.webkit?(f.append(j),j.addClass("cke_editable"), -f.is("body")||(k="static"!=f.getComputedStyle("position")?f:CKEDITOR.dom.element.get(f.$.offsetParent),k=k.getDocumentPosition().y)):f.getAscendant(CKEDITOR.env.ie?"body":"html",1).append(j),j.setStyles({position:"absolute",top:e.getScrollPosition().y-k+10+"px",width:"1px",height:Math.max(1,e.getViewPaneSize().height-20)+"px",overflow:"hidden",margin:0,padding:0}),CKEDITOR.env.safari&&j.setStyles(CKEDITOR.tools.cssVendorPrefix("user-select","text")),(k=j.getParent().isReadOnly())?(j.setOpacity(0),j.setAttribute("contenteditable",!0)):j.setStyle("ltr"==b.config.contentsLangDirection?"left":"right","-10000px"),b.on("selectionChange",g,null,null,0),(CKEDITOR.env.webkit||CKEDITOR.env.gecko)&&(d=f.once("blur",g,null,null,-100)),k&&j.focus(),k=new CKEDITOR.dom.range(j),k.selectNodeContents(j);var l=k.select();CKEDITOR.env.ie&&(d=f.once("blur",function(){b.lockSelection(l)}));var m=CKEDITOR.document.getWindow().getScrollPosition().y;setTimeout(function(){CKEDITOR.env.webkit&&(CKEDITOR.document.getBody().$.scrollTop=m),d&&d.removeListener(),CKEDITOR.env.ie&&f.focus(),h.selectBookmarks(i),j.remove();var a;CKEDITOR.env.webkit&&(a=j.getFirst())&&a.is&&a.hasClass("Apple-style-span")&&(j=a),b.removeListener("selectionChange",g),c(j.getHtml())},0)}}function k(){if("paste"==p.mainPasteEvent)return b.fire("beforePaste",{type:"auto",method:"paste"}),!1;b.focus(),f();var a=b.focusManager;return a.lock(),b.editable().fire(p.mainPasteEvent)&&!h("paste")?(a.unlock(),!1):(a.unlock(),!0)}function l(a){if("wysiwyg"==b.mode)switch(a.data.keyCode){case CKEDITOR.CTRL+86:case CKEDITOR.SHIFT+45:a=b.editable(),f(),"paste"==p.mainPasteEvent&&a.fire("beforepaste");break;case CKEDITOR.CTRL+88:case CKEDITOR.SHIFT+46:b.fire("saveSnapshot"),setTimeout(function(){b.fire("saveSnapshot")},50)}}function m(c){var d={type:"auto",method:"paste",dataTransfer:p.initPasteDataTransfer(c)};d.dataTransfer.cacheData();var e=!1!==b.fire("beforePaste",d);e&&p.canClipboardApiBeTrusted(d.dataTransfer,b)?(c.data.preventDefault(),setTimeout(function(){a(b,d)},0)):j(c,function(c){d.dataValue=c.replace(/<span[^>]+data-cke-bookmark[^<]*?<\/span>/gi,""),e&&a(b,d)})}function n(){if("wysiwyg"==b.mode){var a=o("paste");b.getCommand("cut").setState(o("cut")),b.getCommand("copy").setState(o("copy")),b.getCommand("paste").setState(a),b.fire("pasteState",a)}}function o(a){if(s&&a in{paste:1,cut:1})return CKEDITOR.TRISTATE_DISABLED;if("paste"==a)return CKEDITOR.TRISTATE_OFF;a=b.getSelection();var c=a.getRanges();return a.getType()==CKEDITOR.SELECTION_NONE||1==c.length&&c[0].collapsed?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_OFF}var p=CKEDITOR.plugins.clipboard,q=0,r=0,s=0;!function(){b.on("key",l),b.on("contentDom",c),b.on("selectionChange",function(a){s=a.data.selection.getRanges()[0].checkReadOnly(),n()}),b.contextMenu&&b.contextMenu.addListener(function(a,b){return s=b.getRanges()[0].checkReadOnly(),{cut:o("cut"),copy:o("copy"),paste:o("paste")}})}(),function(){function a(a,c,d,e,f){var g=b.lang.clipboard[c];b.addCommand(c,d),b.ui.addButton&&b.ui.addButton(a,{label:g,command:c,toolbar:"clipboard,"+e}),b.addMenuItems&&b.addMenuItem(c,{label:g,command:c,group:"clipboard",order:f})}a("Cut","cut",d("cut"),10,1),a("Copy","copy",d("copy"),20,4),a("Paste","paste",e(),30,8)}(),b.getClipboardData=function(a,c){function d(a){a.removeListener(),a.cancel(),c(a.data)}function e(a){a.removeListener(),a.cancel(),i=!0,c({type:h,dataValue:a.data.dataValue,dataTransfer:a.data.dataTransfer,method:"paste"})}function f(){this.customTitle=a&&a.title}var g=!1,h="auto",i=!1;c||(c=a,a=null),b.on("paste",d,null,null,0),b.on("beforePaste",function(a){a.removeListener(),g=!0,h=a.data.type},null,null,1e3),!1===k()&&(b.removeListener("paste",d),g&&b.fire("pasteDialog",f)?(b.on("pasteDialogCommit",e),b.on("dialogHide",function(a){a.removeListener(),a.data.removeListener("pasteDialogCommit",e),setTimeout(function(){i||c(null)},10)})):c(null))}}function c(a){if(CKEDITOR.env.webkit){if(!a.match(/^[^<]*$/g)&&!a.match(/^(<div><br( ?\/)?><\/div>|<div>[^<]*<\/div>)*$/gi))return"html"}else if(CKEDITOR.env.ie){if(!a.match(/^([^<]|<br( ?\/)?>)*$/gi)&&!a.match(/^(<p>([^<]|<br( ?\/)?>)*<\/p>|(\r\n))*$/gi))return"html"}else{if(!CKEDITOR.env.gecko)return"html";if(!a.match(/^([^<]|<br( ?\/)?>)*$/gi))return"html"}return"htmlifiedtext"}function d(a,b){function c(a){return CKEDITOR.tools.repeat("</p><p>",~~(a/2))+(1==a%2?"<br>":"")}return b=b.replace(/\s+/g," ").replace(/> +</g,"><").replace(/<br ?\/>/gi,"<br>"),b=b.replace(/<\/?[A-Z]+>/g,function(a){return a.toLowerCase()}),b.match(/^[^<]$/)?b:(CKEDITOR.env.webkit&&-1<b.indexOf("<div>")&&(b=b.replace(/^(<div>(<br>|)<\/div>)(?!$|(<div>(<br>|)<\/div>))/g,"<br>").replace(/^(<div>(<br>|)<\/div>){2}(?!$)/g,"<div></div>"),b.match(/<div>(<br>|)<\/div>/)&&(b="<p>"+b.replace(/(<div>(<br>|)<\/div>)+/g,function(a){return c(a.split("</div><div>").length+1)})+"</p>"),b=b.replace(/<\/div><div>/g,"<br>"),b=b.replace(/<\/?div>/g,"")),CKEDITOR.env.gecko&&a.enterMode!=CKEDITOR.ENTER_BR&&(CKEDITOR.env.gecko&&(b=b.replace(/^<br><br>$/,"<br>")),-1<b.indexOf("<br><br>")&&(b="<p>"+b.replace(/(<br>){2,}/g,function(a){return c(a.length/4)})+"</p>")),g(a,b))}function e(){function a(){var a,b={};for(a in CKEDITOR.dtd)"$"!=a.charAt(0)&&"div"!=a&&"span"!=a&&(b[a]=1);return b}var b={};return{get:function(c){return"plain-text"==c?b.plainText||(b.plainText=new CKEDITOR.filter("br")):"semantic-content"==c?((c=b.semanticContent)||(c=new CKEDITOR.filter,c.allow({$1:{elements:a(),attributes:!0,styles:!1,classes:!1}}),c=b.semanticContent=c),c):c?new CKEDITOR.filter(c):null}}}function f(a,b,c){b=CKEDITOR.htmlParser.fragment.fromHtml(b);var d=new CKEDITOR.htmlParser.basicWriter;return c.applyTo(b,!0,!1,a.activeEnterMode),b.writeHtml(d),d.getHtml()}function g(a,b){return a.enterMode==CKEDITOR.ENTER_BR?b=b.replace(/(<\/p><p>)+/g,function(a){return CKEDITOR.tools.repeat("<br>",a.length/7*2)}).replace(/<\/?p>/g,""):a.enterMode==CKEDITOR.ENTER_DIV&&(b=b.replace(/<(\/)?p>/g,"<$1div>")),b}function h(a){a.data.preventDefault(),a.data.$.dataTransfer.dropEffect="none"}function i(b){var c=CKEDITOR.plugins.clipboard;b.on("contentDom",function(){function d(c,d,e){d.select(),a(b,{dataTransfer:e,method:"drop"},1),e.sourceEditor.fire("saveSnapshot"),e.sourceEditor.editable().extractHtmlFromRange(c),e.sourceEditor.getSelection().selectRanges([c]),e.sourceEditor.fire("saveSnapshot")}function e(d,e){d.select(),a(b,{dataTransfer:e,method:"drop"},1),c.resetDragDataTransfer()}function f(a,c,d){var e={$:a.data.$,target:a.data.getTarget()};c&&(e.dragRange=c),d&&(e.dropRange=d),!1===b.fire(a.name,e)&&a.data.preventDefault()}function g(a){return a.type!=CKEDITOR.NODE_ELEMENT&&(a=a.getParent()),a.getChildCount()}var h=b.editable(),i=CKEDITOR.plugins.clipboard.getDropTarget(b),j=b.ui.space("top"),k=b.ui.space("bottom");c.preventDefaultDropOnElement(j),c.preventDefaultDropOnElement(k),h.attachListener(i,"dragstart",f),h.attachListener(b,"dragstart",c.resetDragDataTransfer,c,null,1),h.attachListener(b,"dragstart",function(a){c.initDragDataTransfer(a,b)},null,null,2),h.attachListener(b,"dragstart",function(){var a=c.dragRange=b.getSelection().getRanges()[0];CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(c.dragStartContainerChildCount=a?g(a.startContainer):null,c.dragEndContainerChildCount=a?g(a.endContainer):null)},null,null,100),h.attachListener(i,"dragend",f),h.attachListener(b,"dragend",c.initDragDataTransfer,c,null,1),h.attachListener(b,"dragend",c.resetDragDataTransfer,c,null,100),h.attachListener(i,"dragover",function(a){var b=a.data.getTarget();b&&b.is&&b.is("html")?a.data.preventDefault():CKEDITOR.env.ie&&CKEDITOR.plugins.clipboard.isFileApiSupported&&a.data.$.dataTransfer.types.contains("Files")&&a.data.preventDefault()}),h.attachListener(i,"drop",function(a){if(!a.data.$.defaultPrevented){a.data.preventDefault();var d=a.data.getTarget();if(!d.isReadOnly()||d.type==CKEDITOR.NODE_ELEMENT&&d.is("html")){var d=c.getRangeAtDropPosition(a,b),e=c.dragRange;d&&f(a,e,d)}}},null,null,9999),h.attachListener(b,"drop",c.initDragDataTransfer,c,null,1),h.attachListener(b,"drop",function(a){if(a=a.data){var f=a.dropRange,g=a.dragRange,h=a.dataTransfer;h.getTransferType(b)==CKEDITOR.DATA_TRANSFER_INTERNAL?setTimeout(function(){c.internalDrop(g,f,h,b)},0):h.getTransferType(b)==CKEDITOR.DATA_TRANSFER_CROSS_EDITORS?d(g,f,h):e(f,h)}},null,null,9999)})}CKEDITOR.plugins.add("clipboard",{requires:"dialog",init:function(a){var g,h=e();a.config.forcePasteAsPlainText?g="plain-text":a.config.pasteFilter?g=a.config.pasteFilter:!CKEDITOR.env.webkit||"pasteFilter"in a.config||(g="semantic-content"),a.pasteFilter=h.get(g),b(a),i(a),CKEDITOR.dialog.add("paste",CKEDITOR.getUrl(this.path+"dialogs/paste.js")),a.on("paste",function(b){if(b.data.dataTransfer||(b.data.dataTransfer=new CKEDITOR.plugins.clipboard.dataTransfer),!b.data.dataValue){var c=b.data.dataTransfer,d=c.getData("text/html");d?(b.data.dataValue=d,b.data.type="html"):(d=c.getData("text/plain"))&&(b.data.dataValue=a.editable().transformPlainTextToHtml(d),b.data.type="text")}},null,null,1),a.on("paste",function(a){var b=a.data.dataValue,c=CKEDITOR.dtd.$block;if(-1<b.indexOf("Apple-")&&(b=b.replace(/<span class="Apple-converted-space"> <\/span>/gi," "),"html"!=a.data.type&&(b=b.replace(/<span class="Apple-tab-span"[^>]*>([^<]*)<\/span>/gi,function(a,b){return b.replace(/\t/g," ")})),-1<b.indexOf('<br class="Apple-interchange-newline">')&&(a.data.startsWithEOL=1,a.data.preSniffing="html",b=b.replace(/<br class="Apple-interchange-newline">/,"")),b=b.replace(/(<[^>]+) class="Apple-[^"]*"/gi,"$1")),b.match(/^<[^<]+cke_(editable|contents)/i)){var d,e,f=new CKEDITOR.dom.element("div");for(f.setHtml(b);1==f.getChildCount()&&(d=f.getFirst())&&d.type==CKEDITOR.NODE_ELEMENT&&(d.hasClass("cke_editable")||d.hasClass("cke_contents"));)f=e=d;e&&(b=e.getHtml().replace(/<br>$/i,""))}CKEDITOR.env.ie?b=b.replace(/^ (?: |\r\n)?<(\w+)/g,function(b,d){return d.toLowerCase()in c?(a.data.preSniffing="html","<"+d):b}):CKEDITOR.env.webkit?b=b.replace(/<\/(\w+)><div><br><\/div>$/,function(b,d){return d in c?(a.data.endsWithEOL=1,"</"+d+">"):b}):CKEDITOR.env.gecko&&(b=b.replace(/(\s)<br>$/,"$1")),a.data.dataValue=b},null,null,3),a.on("paste",function(b){b=b.data;var e,g=b.type,i=b.dataValue,j=a.config.clipboard_defaultContentType||"html",k=b.dataTransfer.getTransferType(a);e="html"==g||"html"==b.preSniffing?"html":c(i),"htmlifiedtext"==e&&(i=d(a.config,i)),"text"==g&&"html"==e?i=f(a,i,h.get("plain-text")):k==CKEDITOR.DATA_TRANSFER_EXTERNAL&&a.pasteFilter&&!b.dontFilter&&(i=f(a,i,a.pasteFilter)),b.startsWithEOL&&(i='<br data-cke-eol="1">'+i),b.endsWithEOL&&(i+='<br data-cke-eol="1">'),"auto"==g&&(g="html"==e||"html"==j?"html":"text"),b.type=g,b.dataValue=i,delete b.preSniffing,delete b.startsWithEOL,delete b.endsWithEOL},null,null,6),a.on("paste",function(b){b=b.data,b.dataValue&&(a.insertHtml(b.dataValue,b.type,b.range),setTimeout(function(){a.fire("afterPaste")},0))},null,null,1e3),a.on("pasteDialog",function(b){setTimeout(function(){a.openDialog("paste",b.data)},0)})}}),CKEDITOR.plugins.clipboard={isCustomCopyCutSupported:!CKEDITOR.env.ie&&!CKEDITOR.env.iOS,isCustomDataTypesSupported:!CKEDITOR.env.ie,isFileApiSupported:!CKEDITOR.env.ie||9<CKEDITOR.env.version,mainPasteEvent:CKEDITOR.env.ie&&!CKEDITOR.env.edge?"beforepaste":"paste",canClipboardApiBeTrusted:function(a,b){return!!(a.getTransferType(b)!=CKEDITOR.DATA_TRANSFER_EXTERNAL||CKEDITOR.env.chrome&&!a.isEmpty()||CKEDITOR.env.gecko&&(a.getData("text/html")||a.getFilesCount()))},getDropTarget:function(a){var b=a.editable();return CKEDITOR.env.ie&&9>CKEDITOR.env.version||b.isInline()?b:a.document},fixSplitNodesAfterDrop:function(a,b,c,d){function e(a,c,d){var e=a;return e.type==CKEDITOR.NODE_TEXT&&(e=a.getParent()),e.equals(c)&&d!=c.getChildCount()?(a=b.startContainer.getChild(b.startOffset-1),c=b.startContainer.getChild(b.startOffset),a&&a.type==CKEDITOR.NODE_TEXT&&c&&c.type==CKEDITOR.NODE_TEXT&&(d=a.getLength(),a.setText(a.getText()+c.getText()),c.remove(),b.setStart(a,d),b.collapse(!0)),!0):void 0}var f=b.startContainer;"number"==typeof d&&"number"==typeof c&&f.type==CKEDITOR.NODE_ELEMENT&&(e(a.startContainer,f,c)||e(a.endContainer,f,d))},isDropRangeAffectedByDragRange:function(a,b){var c=b.startContainer,d=b.endOffset;return!!(a.endContainer.equals(c)&&a.endOffset<=d||a.startContainer.getParent().equals(c)&&a.startContainer.getIndex()<d||a.endContainer.getParent().equals(c)&&a.endContainer.getIndex()<d)},internalDrop:function(b,c,d,e){var f,g,h=CKEDITOR.plugins.clipboard,i=e.editable();e.fire("saveSnapshot"),e.fire("lockSnapshot",{dontUpdate:1}),CKEDITOR.env.ie&&10>CKEDITOR.env.version&&this.fixSplitNodesAfterDrop(b,c,h.dragStartContainerChildCount,h.dragEndContainerChildCount),(g=this.isDropRangeAffectedByDragRange(b,c))||(f=b.createBookmark(!1)),h=c.clone().createBookmark(!1),g&&(f=b.createBookmark(!1)),b=f.startNode,c=f.endNode,g=h.startNode,c&&b.getPosition(g)&CKEDITOR.POSITION_PRECEDING&&c.getPosition(g)&CKEDITOR.POSITION_FOLLOWING&&g.insertBefore(b),b=e.createRange(),b.moveToBookmark(f),i.extractHtmlFromRange(b,1),c=e.createRange(),c.moveToBookmark(h),a(e,{dataTransfer:d,method:"drop",range:c},1),e.fire("unlockSnapshot")},getRangeAtDropPosition:function(a,b){var c=a.data.$,d=c.clientX,e=c.clientY,f=b.getSelection(!0).getRanges()[0],g=b.createRange();if(a.data.testRange)return a.data.testRange;if(document.caretRangeFromPoint)c=b.document.$.caretRangeFromPoint(d,e),g.setStart(CKEDITOR.dom.node(c.startContainer),c.startOffset),g.collapse(!0);else if(c.rangeParent)g.setStart(CKEDITOR.dom.node(c.rangeParent),c.rangeOffset),g.collapse(!0);else{if(CKEDITOR.env.ie&&8<CKEDITOR.env.version&&f&&b.editable().hasFocus)return f;if(!document.body.createTextRange)return null;b.focus(),c=b.document.getBody().$.createTextRange();try{for(var h=!1,i=0;20>i&&!h;i++){if(!h)try{c.moveToPoint(d,e-i),h=!0}catch(j){}if(!h)try{c.moveToPoint(d,e+i),h=!0}catch(k){}}if(h){var l="cke-temp-"+(new Date).getTime();c.pasteHTML('<span id="'+l+'">​</span>');var m=b.document.getById(l);g.moveToPosition(m,CKEDITOR.POSITION_BEFORE_START),m.remove()}else{var n,o=b.document.$.elementFromPoint(d,e),p=new CKEDITOR.dom.element(o);if(p.equals(b.editable())||"html"==p.getName())return f&&f.startContainer&&!f.startContainer.equals(b.editable())?f:null;n=p.getClientRect(),d<n.left?g.setStartAt(p,CKEDITOR.POSITION_AFTER_START):g.setStartAt(p,CKEDITOR.POSITION_BEFORE_END),g.collapse(!0)}}catch(q){return null}}return g},initDragDataTransfer:function(a,b){var c=a.data.$?a.data.$.dataTransfer:null,d=new this.dataTransfer(c,b);c?this.dragData&&d.id==this.dragData.id?d=this.dragData:this.dragData=d:this.dragData?d=this.dragData:this.dragData=d,a.data.dataTransfer=d},resetDragDataTransfer:function(){this.dragData=null},initPasteDataTransfer:function(a,b){if(this.isCustomCopyCutSupported&&a&&a.data&&a.data.$){var c=new this.dataTransfer(a.data.$.clipboardData,b);return this.copyCutData&&c.id==this.copyCutData.id?(c=this.copyCutData,c.$=a.data.$.clipboardData):this.copyCutData=c,c}return new this.dataTransfer(null,b)},preventDefaultDropOnElement:function(a){a&&a.on("dragover",h)}};var j=CKEDITOR.plugins.clipboard.isCustomDataTypesSupported?"cke/id":"Text";CKEDITOR.plugins.clipboard.dataTransfer=function(a,b){if(a&&(this.$=a),this._={metaRegExp:/^<meta.*?>/i,bodyRegExp:/<body(?:[\s\S]*?)>([\s\S]*)<\/body>/i,fragmentRegExp:/\x3c!--(?:Start|End)Fragment--\x3e/g,data:{},files:[],normalizeType:function(a){return a=a.toLowerCase(),"text"==a||"text/plain"==a?"Text":"url"==a?"URL":a}},this.id=this.getData(j),this.id||(this.id="Text"==j?"":"cke-"+CKEDITOR.tools.getUniqueId()),"Text"!=j)try{this.$.setData(j,this.id)}catch(c){}b&&(this.sourceEditor=b,this.setData("text/html",b.getSelectedHtml(1)),"Text"==j||this.getData("text/plain")||this.setData("text/plain",b.getSelection().getSelectedText()))},CKEDITOR.DATA_TRANSFER_INTERNAL=1,CKEDITOR.DATA_TRANSFER_CROSS_EDITORS=2,CKEDITOR.DATA_TRANSFER_EXTERNAL=3,CKEDITOR.plugins.clipboard.dataTransfer.prototype={getData:function(a){a=this._.normalizeType(a);var b=this._.data[a];if(void 0===b||null===b||""===b)try{b=this.$.getData(a)}catch(c){}return void 0!==b&&null!==b&&""!==b||(b=""),"text/html"==a?(b=b.replace(this._.metaRegExp,""),(a=this._.bodyRegExp.exec(b))&&a.length&&(b=a[1],b=b.replace(this._.fragmentRegExp,""))):"Text"==a&&CKEDITOR.env.gecko&&this.getFilesCount()&&"file://"==b.substring(0,7)&&(b=""),b},setData:function(a,b){if(a=this._.normalizeType(a),this._.data[a]=b,CKEDITOR.plugins.clipboard.isCustomDataTypesSupported||"URL"==a||"Text"==a){"Text"==j&&"Text"==a&&(this.id=b);try{this.$.setData(a,b)}catch(c){}}},getTransferType:function(a){return this.sourceEditor?this.sourceEditor==a?CKEDITOR.DATA_TRANSFER_INTERNAL:CKEDITOR.DATA_TRANSFER_CROSS_EDITORS:CKEDITOR.DATA_TRANSFER_EXTERNAL},cacheData:function(){function a(a){a=d._.normalizeType(a);var b=d.getData(a);b&&(d._.data[a]=b)}if(this.$){var b,c,d=this;if(CKEDITOR.plugins.clipboard.isCustomDataTypesSupported){if(this.$.types)for(b=0;b<this.$.types.length;b++)a(this.$.types[b])}else a("Text"),a("URL");if(c=this._getImageFromClipboard(),this.$&&this.$.files||c){for(this._.files=[],b=0;b<this.$.files.length;b++)this._.files.push(this.$.files[b]);0===this._.files.length&&c&&this._.files.push(c)}}},getFilesCount:function(){return this._.files.length?this._.files.length:this.$&&this.$.files&&this.$.files.length?this.$.files.length:this._getImageFromClipboard()?1:0},getFile:function(a){return this._.files.length?this._.files[a]:this.$&&this.$.files&&this.$.files.length?this.$.files[a]:0===a?this._getImageFromClipboard():void 0},isEmpty:function(){var a,b={};if(this.getFilesCount())return!1;for(a in this._.data)b[a]=1;if(this.$)if(CKEDITOR.plugins.clipboard.isCustomDataTypesSupported){if(this.$.types)for(var c=0;c<this.$.types.length;c++)b[this.$.types[c]]=1}else b.Text=1,b.URL=1;"Text"!=j&&(b[j]=0);for(a in b)if(b[a]&&""!==this.getData(a))return!1;return!0},_getImageFromClipboard:function(){var a;if(this.$&&this.$.items&&this.$.items[0])try{if((a=this.$.items[0].getAsFile())&&a.type)return a}catch(b){}}}}(),function(){CKEDITOR.plugins.add("panel",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_PANEL,CKEDITOR.ui.panel.handler)}}),CKEDITOR.UI_PANEL="panel",CKEDITOR.ui.panel=function(a,b){b&&CKEDITOR.tools.extend(this,b),CKEDITOR.tools.extend(this,{className:"",css:[]}),this.id=CKEDITOR.tools.getNextId(),this.document=a,this.isFramed=this.forceIFrame||this.css.length,this._={blocks:{}}},CKEDITOR.ui.panel.handler={create:function(a){return new CKEDITOR.ui.panel(a)}};var a=CKEDITOR.addTemplate("panel",'<div lang="{langCode}" id="{id}" dir={dir} class="cke cke_reset_all {editorId} cke_panel cke_panel {cls} cke_{dir}" style="z-index:{z-index}" role="presentation">{frame}</div>'),b=CKEDITOR.addTemplate("panel-frame",'<iframe id="{id}" class="cke_panel_frame" role="presentation" frameborder="0" src="{src}"></iframe>'),c=CKEDITOR.addTemplate("panel-frame-inner",'<!DOCTYPE html><html class="cke_panel_container {env}" dir="{dir}" lang="{langCode}"><head>{css}</head><body class="cke_{dir}" style="margin:0;padding:0" onload="{onload}"></body></html>');CKEDITOR.ui.panel.prototype={render:function(d,e){this.getHolderElement=function(){var a=this._.holder;if(!a){if(this.isFramed){var a=this.document.getById(this.id+"_frame"),b=a.getParent(),a=a.getFrameDocument();CKEDITOR.env.iOS&&b.setStyles({overflow:"scroll","-webkit-overflow-scrolling":"touch"}),b=CKEDITOR.tools.addFunction(CKEDITOR.tools.bind(function(){this.isLoaded=!0,this.onLoad&&this.onLoad()},this)),a.write(c.output(CKEDITOR.tools.extend({css:CKEDITOR.tools.buildStyleHtml(this.css),onload:"window.parent.CKEDITOR.tools.callFunction("+b+");"},f))),a.getWindow().$.CKEDITOR=CKEDITOR,a.on("keydown",function(a){var b=a.data.getKeystroke(),c=this.document.getById(this.id).getAttribute("dir");this._.onKeyDown&&!1===this._.onKeyDown(b)?a.data.preventDefault():(27==b||b==("rtl"==c?39:37))&&this.onEscape&&!1===this.onEscape(b)&&a.data.preventDefault()},this),a=a.getBody(),a.unselectable(),CKEDITOR.env.air&&CKEDITOR.tools.callFunction(b)}else a=this.document.getById(this.id);this._.holder=a}return a};var f={editorId:d.id,id:this.id,langCode:d.langCode,dir:d.lang.dir,cls:this.className,frame:"",env:CKEDITOR.env.cssClass,"z-index":d.config.baseFloatZIndex+1};if(this.isFramed){var g=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie?"javascript:void(function(){"+encodeURIComponent("document.open();("+CKEDITOR.tools.fixDomain+")();document.close();")+"}())":"";f.frame=b.output({id:this.id+"_frame",src:g})}return g=a.output(f),e&&e.push(g),g},addBlock:function(a,b){return b=this._.blocks[a]=b instanceof CKEDITOR.ui.panel.block?b:new CKEDITOR.ui.panel.block(this.getHolderElement(),b),this._.currentBlock||this.showBlock(a),b},getBlock:function(a){return this._.blocks[a]},showBlock:function(a){a=this._.blocks[a];var b=this._.currentBlock,c=!this.forceIFrame||CKEDITOR.env.ie?this._.holder:this.document.getById(this.id+"_frame");return b&&b.hide(),this._.currentBlock=a,CKEDITOR.fire("ariaWidget",c),a._.focusIndex=-1,this._.onKeyDown=a.onKeyDown&&CKEDITOR.tools.bind(a.onKeyDown,a),a.show(),a},destroy:function(){this.element&&this.element.remove()}},CKEDITOR.ui.panel.block=CKEDITOR.tools.createClass({$:function(a,b){this.element=a.append(a.getDocument().createElement("div",{attributes:{tabindex:-1,"class":"cke_panel_block"},styles:{display:"none"}})),b&&CKEDITOR.tools.extend(this,b),this.element.setAttributes({role:this.attributes.role||"presentation","aria-label":this.attributes["aria-label"],title:this.attributes.title||this.attributes["aria-label"]}),this.keys={},this._.focusIndex=-1,this.element.disableContextMenu()},_:{markItem:function(a){-1!=a&&(a=this.element.getElementsByTag("a").getItem(this._.focusIndex=a),CKEDITOR.env.webkit&&a.getDocument().getWindow().focus(),a.focus(),this.onMark&&this.onMark(a))}},proto:{show:function(){this.element.setStyle("display","")},hide:function(){this.onHide&&!0===this.onHide.call(this)||this.element.setStyle("display","none")},onKeyDown:function(a,b){var c=this.keys[a];switch(c){case"next":for(var d,e=this._.focusIndex,c=this.element.getElementsByTag("a");d=c.getItem(++e);)if(d.getAttribute("_cke_focus")&&d.$.offsetWidth){this._.focusIndex=e,d.focus();break}return d||b?!1:(this._.focusIndex=-1,this.onKeyDown(a,1));case"prev":for(e=this._.focusIndex,c=this.element.getElementsByTag("a");e>0&&(d=c.getItem(--e));){if(d.getAttribute("_cke_focus")&&d.$.offsetWidth){this._.focusIndex=e,d.focus();break}d=null}return d||b?!1:(this._.focusIndex=c.count(),this.onKeyDown(a,1));case"click":case"mouseup":return e=this._.focusIndex,(d=e>=0&&this.element.getElementsByTag("a").getItem(e))&&(d.$[c]?d.$[c]():d.$["on"+c]()),!1}return!0}}})}(),CKEDITOR.plugins.add("floatpanel",{requires:"panel"}),function(){function a(a,c,d,e,f){f=CKEDITOR.tools.genKey(c.getUniqueId(),d.getUniqueId(),a.lang.dir,a.uiColor||"",e.css||"",f||"");var g=b[f];return g||(g=b[f]=new CKEDITOR.ui.panel(c,e),g.element=d.append(CKEDITOR.dom.element.createFromHtml(g.render(a),c)),g.element.setStyles({display:"none",position:"absolute"})),g}var b={};CKEDITOR.ui.floatPanel=CKEDITOR.tools.createClass({$:function(b,c,d,e){function f(){j.hide()}d.forceIFrame=1,d.toolbarRelated&&b.elementMode==CKEDITOR.ELEMENT_MODE_INLINE&&(c=CKEDITOR.document.getById("cke_"+b.name));var g=c.getDocument();e=a(b,g,c,d,e||0);var h=e.element,i=h.getFirst(),j=this;h.disableContextMenu(),this.element=h,this._={editor:b,panel:e,parentElement:c,definition:d,document:g,iframe:i,children:[],dir:b.lang.dir,showBlockParams:null},b.on("mode",f),b.on("resize",f),g.getWindow().on("resize",function(){this.reposition()},this)},proto:{addBlock:function(a,b){return this._.panel.addBlock(a,b)},addListBlock:function(a,b){return this._.panel.addListBlock(a,b)},getBlock:function(a){return this._.panel.getBlock(a)},showBlock:function(a,b,c,d,e,f){var g=this._.panel,h=g.showBlock(a);this._.showBlockParams=[].slice.call(arguments),this.allowBlur(!1);var i=this._.editor.editable();this._.returnFocus=i.hasFocus?i:new CKEDITOR.dom.element(CKEDITOR.document.$.activeElement),this._.hideTimeout=0;var j=this.element,i=this._.iframe,i=CKEDITOR.env.ie&&!CKEDITOR.env.edge?i:new CKEDITOR.dom.window(i.$.contentWindow),k=j.getDocument(),l=this._.parentElement.getPositionedAncestor(),m=b.getDocumentPosition(k),k=l?l.getDocumentPosition(k):{x:0,y:0},n="rtl"==this._.dir,o=m.x+(d||0)-k.x,p=m.y+(e||0)-k.y;!n||1!=c&&4!=c?n||2!=c&&3!=c||(o+=b.$.offsetWidth-1):o+=b.$.offsetWidth,3!=c&&4!=c||(p+=b.$.offsetHeight-1),this._.panel._.offsetParentId=b.getId(),j.setStyles({top:p+"px",left:0,display:""}),j.setOpacity(0),j.getFirst().removeStyle("width"),this._.editor.focusManager.add(i),this._.blurSet||(CKEDITOR.event.useCapture=!0,i.on("blur",function(a){function b(){delete this._.returnFocus,this.hide()}this.allowBlur()&&a.data.getPhase()==CKEDITOR.EVENT_PHASE_AT_TARGET&&this.visible&&!this._.activeChild&&(CKEDITOR.env.iOS?this._.hideTimeout||(this._.hideTimeout=CKEDITOR.tools.setTimeout(b,0,this)):b.call(this))},this),i.on("focus",function(){this._.focused=!0,this.hideChild(),this.allowBlur(!0)},this),CKEDITOR.env.iOS&&(i.on("touchstart",function(){clearTimeout(this._.hideTimeout)},this),i.on("touchend",function(){this._.hideTimeout=0,this.focus()},this)),CKEDITOR.event.useCapture=!1,this._.blurSet=1),g.onEscape=CKEDITOR.tools.bind(function(a){return this.onEscape&&!1===this.onEscape(a)?!1:void 0},this),CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.tools.bind(function(){var a=j;if(a.removeStyle("width"),h.autoSize){var b=h.element.getDocument(),b=(CKEDITOR.env.webkit||CKEDITOR.env.edge?h.element:b.getBody()).$.scrollWidth;CKEDITOR.env.ie&&CKEDITOR.env.quirks&&b>0&&(b+=(a.$.offsetWidth||0)-(a.$.clientWidth||0)+3),a.setStyle("width",b+10+"px"),b=h.element.$.scrollHeight,CKEDITOR.env.ie&&CKEDITOR.env.quirks&&b>0&&(b+=(a.$.offsetHeight||0)-(a.$.clientHeight||0)+3),a.setStyle("height",b+"px"),g._.currentBlock.element.setStyle("display","none").removeStyle("display")}else a.removeStyle("height");n&&(o-=j.$.offsetWidth),j.setStyle("left",o+"px");var b=g.element.getWindow(),a=j.$.getBoundingClientRect(),b=b.getViewPaneSize(),c=a.width||a.right-a.left,d=a.height||a.bottom-a.top,e=n?a.right:b.width-a.left,i=n?b.width-a.right:a.left;n?c>e&&(o=i>c?o+c:b.width>c?o-a.left:o-a.right+b.width):c>e&&(o=i>c?o-c:b.width>c?o-a.right+b.width:o-a.left),c=a.top,b.height-a.top<d&&(p=c>d?p-d:b.height>d?p-a.bottom+b.height:p-a.top),CKEDITOR.env.ie&&(b=a=new CKEDITOR.dom.element(j.$.offsetParent),"html"==b.getName()&&(b=b.getDocument().getBody()),"rtl"==b.getComputedStyle("direction")&&(o=CKEDITOR.env.ie8Compat?o-2*j.getDocument().getDocumentElement().$.scrollLeft:o-(a.$.scrollWidth-a.$.clientWidth)));var k,a=j.getFirst();(k=a.getCustomData("activePanel"))&&k.onHide&&k.onHide.call(this,1),a.setCustomData("activePanel",this),j.setStyles({top:p+"px",left:o+"px"}),j.setOpacity(1),f&&f()},this);g.isLoaded?a():g.onLoad=a,CKEDITOR.tools.setTimeout(function(){var a=CKEDITOR.env.webkit&&CKEDITOR.document.getWindow().getScrollPosition().y;this.focus(),h.element.focus(),CKEDITOR.env.webkit&&(CKEDITOR.document.getBody().$.scrollTop=a),this.allowBlur(!0),this._.editor.fire("panelShow",this)},0,this)},CKEDITOR.env.air?200:0,this),this.visible=1,this.onShow&&this.onShow.call(this)},reposition:function(){var a=this._.showBlockParams;this.visible&&this._.showBlockParams&&(this.hide(),this.showBlock.apply(this,a))},focus:function(){if(CKEDITOR.env.webkit){var a=CKEDITOR.document.getActive();a&&!a.equals(this._.iframe)&&a.$.blur()}(this._.lastFocused||this._.iframe.getFrameDocument().getWindow()).focus()},blur:function(){var a=this._.iframe.getFrameDocument().getActive();a&&a.is("a")&&(this._.lastFocused=a)},hide:function(a){!this.visible||this.onHide&&!0===this.onHide.call(this)||(this.hideChild(),CKEDITOR.env.gecko&&this._.iframe.getFrameDocument().$.activeElement.blur(),this.element.setStyle("display","none"),this.visible=0,this.element.getFirst().removeCustomData("activePanel"),(a=a&&this._.returnFocus)&&(CKEDITOR.env.webkit&&a.type&&a.getWindow().$.focus(),a.focus()),delete this._.lastFocused,this._.showBlockParams=null,this._.editor.fire("panelHide",this))},allowBlur:function(a){var b=this._.panel;return void 0!==a&&(b.allowBlur=a),b.allowBlur},showAsChild:function(a,b,c,d,e,f){this._.activeChild==a&&a._.panel._.offsetParentId==c.getId()||(this.hideChild(),a.onHide=CKEDITOR.tools.bind(function(){CKEDITOR.tools.setTimeout(function(){this._.focused||this.hide()},0,this)},this),this._.activeChild=a,this._.focused=!1,a.showBlock(b,c,d,e,f),this.blur(),(CKEDITOR.env.ie7Compat||CKEDITOR.env.ie6Compat)&&setTimeout(function(){a.element.getChild(0).$.style.cssText+=""},100))},hideChild:function(a){var b=this._.activeChild;b&&(delete b.onHide,delete this._.activeChild,b.hide(),a&&this.focus())}}}),CKEDITOR.on("instanceDestroyed",function(){var a,c=CKEDITOR.tools.isEmpty(CKEDITOR.instances);for(a in b){var d=b[a];c?d.destroy():d.element.hide()}c&&(b={})})}(),CKEDITOR.plugins.add("menu",{requires:"floatpanel",beforeInit:function(a){for(var b=a.config.menu_groups.split(","),c=a._.menuGroups={},d=a._.menuItems={},e=0;e<b.length;e++)c[b[e]]=e+1;a.addMenuGroup=function(a,b){c[a]=b||100},a.addMenuItem=function(a,b){c[b.group]&&(d[a]=new CKEDITOR.menuItem(this,a,b))},a.addMenuItems=function(a){for(var b in a)this.addMenuItem(b,a[b])},a.getMenuItem=function(a){return d[a]},a.removeMenuItem=function(a){delete d[a]}}}),function(){function a(a){a.sort(function(a,b){return a.group<b.group?-1:a.group>b.group?1:a.order<b.order?-1:a.order>b.order?1:0})}var b='<span class="cke_menuitem"><a id="{id}" class="cke_menubutton cke_menubutton__{name} cke_menubutton_{state} {cls}" href="{href}" title="{title}" tabindex="-1"_cke_focus=1 hidefocus="true" role="{role}" aria-haspopup="{hasPopup}" aria-disabled="{disabled}" {ariaChecked}';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(b+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(b+=' onblur="this.style.cssText = this.style.cssText;"');var b=b+(' onmouseover="CKEDITOR.tools.callFunction({hoverFn},{index});" onmouseout="CKEDITOR.tools.callFunction({moveOutFn},{index});" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},{index}); return false;">'),c=CKEDITOR.addTemplate("menuItem",b+'<span class="cke_menubutton_inner"><span class="cke_menubutton_icon"><span class="cke_button_icon cke_button__{iconName}_icon" style="{iconStyle}"></span></span><span class="cke_menubutton_label">{label}</span>{arrowHtml}</span></a></span>'),d=CKEDITOR.addTemplate("menuArrow",'<span class="cke_menuarrow"><span>{label}</span></span>');CKEDITOR.menu=CKEDITOR.tools.createClass({$:function(a,b){b=this._.definition=b||{},this.id=CKEDITOR.tools.getNextId(),this.editor=a,this.items=[],this._.listeners=[],this._.level=b.level||1;var c=CKEDITOR.tools.extend({},b.panel,{css:[CKEDITOR.skin.getPath("editor")],level:this._.level-1,block:{}}),d=c.block.attributes=c.attributes||{};!d.role&&(d.role="menu"),this._.panelDefinition=c},_:{onShow:function(){var a=this.editor.getSelection(),b=a&&a.getStartElement(),c=this.editor.elementPath(),d=this._.listeners;this.removeAll();for(var e=0;e<d.length;e++){var f=d[e](b,a,c);if(f)for(var g in f){var h=this.editor.getMenuItem(g);!h||h.command&&!this.editor.getCommand(h.command).state||(h.state=f[g],this.add(h))}}},onClick:function(a){this.hide(),a.onClick?a.onClick():a.command&&this.editor.execCommand(a.command)},onEscape:function(a){var b=this.parent;return b?b._.panel.hideChild(1):27==a&&this.hide(1),!1},onHide:function(){this.onHide&&this.onHide()},showSubMenu:function(a){var b=this._.subMenu,c=this.items[a];if(c=c.getItems&&c.getItems()){b?b.removeAll():(b=this._.subMenu=new CKEDITOR.menu(this.editor,CKEDITOR.tools.extend({},this._.definition,{level:this._.level+1},!0)),b.parent=this,b._.onClick=CKEDITOR.tools.bind(this._.onClick,this)); -for(var d in c){var e=this.editor.getMenuItem(d);e&&(e.state=c[d],b.add(e))}var f=this._.panel.getBlock(this.id).element.getDocument().getById(this.id+String(a));setTimeout(function(){b.show(f,2)},0)}else this._.panel.hideChild(1)}},proto:{add:function(a){a.order||(a.order=this.items.length),this.items.push(a)},removeAll:function(){this.items=[]},show:function(b,c,d,e){if(this.parent||(this._.onShow(),this.items.length)){c=c||("rtl"==this.editor.lang.dir?2:1);var f=this.items,g=this.editor,h=this._.panel,i=this._.element;if(!h){h=this._.panel=new CKEDITOR.ui.floatPanel(this.editor,CKEDITOR.document.getBody(),this._.panelDefinition,this._.level),h.onEscape=CKEDITOR.tools.bind(function(a){return!1===this._.onEscape(a)?!1:void 0},this),h.onShow=function(){h._.panel.getHolderElement().getParent().addClass("cke").addClass("cke_reset_all")},h.onHide=CKEDITOR.tools.bind(function(){this._.onHide&&this._.onHide()},this),i=h.addBlock(this.id,this._.panelDefinition.block),i.autoSize=!0;var j=i.keys;j[40]="next",j[9]="next",j[38]="prev",j[CKEDITOR.SHIFT+9]="prev",j["rtl"==g.lang.dir?37:39]=CKEDITOR.env.ie?"mouseup":"click",j[32]=CKEDITOR.env.ie?"mouseup":"click",CKEDITOR.env.ie&&(j[13]="mouseup"),i=this._.element=i.element,j=i.getDocument(),j.getBody().setStyle("overflow","hidden"),j.getElementsByTag("html").getItem(0).setStyle("overflow","hidden"),this._.itemOverFn=CKEDITOR.tools.addFunction(function(a){clearTimeout(this._.showSubTimeout),this._.showSubTimeout=CKEDITOR.tools.setTimeout(this._.showSubMenu,g.config.menu_subMenuDelay||400,this,[a])},this),this._.itemOutFn=CKEDITOR.tools.addFunction(function(){clearTimeout(this._.showSubTimeout)},this),this._.itemClickFn=CKEDITOR.tools.addFunction(function(a){var b=this.items[a];b.state==CKEDITOR.TRISTATE_DISABLED?this.hide(1):b.getItems?this._.showSubMenu(a):this._.onClick(b)},this)}a(f);for(var j=g.elementPath(),j=['<div class="cke_menu'+(j&&j.direction()!=g.lang.dir?" cke_mixed_dir_content":"")+'" role="presentation">'],k=f.length,l=k&&f[0].group,m=0;k>m;m++){var n=f[m];l!=n.group&&(j.push('<div class="cke_menuseparator" role="separator"></div>'),l=n.group),n.render(this,m,j)}j.push("</div>"),i.setHtml(j.join("")),CKEDITOR.ui.fire("ready",this),this.parent?this.parent._.panel.showAsChild(h,this.id,b,c,d,e):h.showBlock(this.id,b,c,d,e),g.fire("menuShow",[h])}},addListener:function(a){this._.listeners.push(a)},hide:function(a){this._.onHide&&this._.onHide(),this._.panel&&this._.panel.hide(a)}}}),CKEDITOR.menuItem=CKEDITOR.tools.createClass({$:function(a,b,c){CKEDITOR.tools.extend(this,c,{order:0,className:"cke_menubutton__"+b}),this.group=a._.menuGroups[this.group],this.editor=a,this.name=b},proto:{render:function(a,b,e){var f=a.id+String(b),g="undefined"==typeof this.state?CKEDITOR.TRISTATE_OFF:this.state,h="",i=g==CKEDITOR.TRISTATE_ON?"on":g==CKEDITOR.TRISTATE_DISABLED?"disabled":"off";this.role in{menuitemcheckbox:1,menuitemradio:1}&&(h=' aria-checked="'+(g==CKEDITOR.TRISTATE_ON?"true":"false")+'"');var j=this.getItems,k="&#"+("rtl"==this.editor.lang.dir?"9668":"9658")+";",l=this.name;this.icon&&!/\./.test(this.icon)&&(l=this.icon),a={id:f,name:this.name,iconName:l,label:this.label,cls:this.className||"",state:i,hasPopup:j?"true":"false",disabled:g==CKEDITOR.TRISTATE_DISABLED,title:this.label,href:"javascript:void('"+(this.label||"").replace("'")+"')",hoverFn:a._.itemOverFn,moveOutFn:a._.itemOutFn,clickFn:a._.itemClickFn,index:b,iconStyle:CKEDITOR.skin.getIconStyle(l,"rtl"==this.editor.lang.dir,l==this.icon?null:this.icon,this.iconOffset),arrowHtml:j?d.output({label:k}):"",role:this.role?this.role:"menuitem",ariaChecked:h},c.output(a,e)}}})}(),CKEDITOR.config.menu_groups="clipboard,form,tablecell,tablecellproperties,tablerow,tablecolumn,table,anchor,link,image,flash,checkbox,radio,textfield,hiddenfield,imagebutton,button,select,textarea,div",CKEDITOR.plugins.add("contextmenu",{requires:"menu",onLoad:function(){CKEDITOR.plugins.contextMenu=CKEDITOR.tools.createClass({base:CKEDITOR.menu,$:function(a){this.base.call(this,a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.contextmenu.options}}})},proto:{addTarget:function(a,b){if(a.on("contextmenu",function(a){a=a.data;var d=CKEDITOR.env.webkit?c:CKEDITOR.env.mac?a.$.metaKey:a.$.ctrlKey;if(!b||!d){if(a.preventDefault(),CKEDITOR.env.mac&&CKEDITOR.env.webkit){var d=this.editor,e=new CKEDITOR.dom.elementPath(a.getTarget(),d.editable()).contains(function(a){return a.hasAttribute("contenteditable")},!0);e&&"false"==e.getAttribute("contenteditable")&&d.getSelection().fake(e)}var e=a.getTarget().getDocument(),f=a.getTarget().getDocument().getDocumentElement(),d=!e.equals(CKEDITOR.document),e=e.getWindow().getScrollPosition(),g=d?a.$.clientX:a.$.pageX||e.x+a.$.clientX,h=d?a.$.clientY:a.$.pageY||e.y+a.$.clientY;CKEDITOR.tools.setTimeout(function(){this.open(f,null,g,h)},CKEDITOR.env.ie?200:0,this)}},this),CKEDITOR.env.webkit){var c,d=function(){c=0};a.on("keydown",function(a){c=CKEDITOR.env.mac?a.data.$.metaKey:a.data.$.ctrlKey}),a.on("keyup",d),a.on("contextmenu",d)}},open:function(a,b,c,d){this.editor.focus(),a=a||CKEDITOR.document.getDocumentElement(),this.editor.selectionChange(1),this.show(a,b,c,d)}}})},beforeInit:function(a){var b=a.contextMenu=new CKEDITOR.plugins.contextMenu(a);a.on("contentDom",function(){b.addTarget(a.editable(),!1!==a.config.browserContextMenuOnCtrl)}),a.addCommand("contextMenu",{exec:function(){a.contextMenu.open(a.document.getBody())}}),a.setKeystroke(CKEDITOR.SHIFT+121,"contextMenu"),a.setKeystroke(CKEDITOR.CTRL+CKEDITOR.SHIFT+121,"contextMenu")}}),function(){function a(a,c){function e(b){if(b=i.list[b],b.equals(a.editable())||"true"==b.getAttribute("contenteditable")){var c=a.createRange();c.selectNodeContents(b),c.select()}else a.getSelection().selectElement(b);a.focus()}function f(){g&&g.setHtml('<span class="cke_path_empty"> </span>'),delete i.list}var g,h=a.ui.spaceId("path"),i=a._.elementsPath,j=i.idBase;c.html+='<span id="'+h+'_label" class="cke_voice_label">'+a.lang.elementspath.eleLabel+'</span><span id="'+h+'" class="cke_path" role="group" aria-labelledby="'+h+'_label"><span class="cke_path_empty"> </span></span>',a.on("uiReady",function(){var b=a.ui.space("path");b&&a.focusManager.add(b,1)}),i.onClick=e;var k=CKEDITOR.tools.addFunction(e),l=CKEDITOR.tools.addFunction(function(b,c){var d,f=i.idBase;switch(c=new CKEDITOR.dom.event(c),d="rtl"==a.lang.dir,c.getKeystroke()){case d?39:37:case 9:return(d=CKEDITOR.document.getById(f+(b+1)))||(d=CKEDITOR.document.getById(f+"0")),d.focus(),!1;case d?37:39:case CKEDITOR.SHIFT+9:return(d=CKEDITOR.document.getById(f+(b-1)))||(d=CKEDITOR.document.getById(f+(i.list.length-1))),d.focus(),!1;case 27:return a.focus(),!1;case 13:case 32:return e(b),!1}return!0});a.on("selectionChange",function(){for(var b,c=[],e=i.list=[],f=[],m=i.filters,n=!0,o=a.elementPath().elements,p=o.length;p--;){var q=o[p],r=0;b=q.data("cke-display-name")?q.data("cke-display-name"):q.data("cke-real-element-type")?q.data("cke-real-element-type"):q.getName(),(n=q.hasAttribute("contenteditable")?"true"==q.getAttribute("contenteditable"):n)||q.hasAttribute("contenteditable")||(r=1);for(var s=0;s<m.length;s++){var t=m[s](q,b);if(!1===t){r=1;break}b=t||b}r||(e.unshift(q),f.unshift(b))}for(e=e.length,m=0;e>m;m++)b=f[m],n=a.lang.elementspath.eleTitle.replace(/%1/,b),b=d.output({id:j+m,label:n,text:b,jsTitle:"javascript:void('"+b+"')",index:m,keyDownFn:l,clickFn:k}),c.unshift(b);g||(g=CKEDITOR.document.getById(h)),f=g,f.setHtml(c.join("")+'<span class="cke_path_empty"> </span>'),a.fire("elementsPathUpdate",{space:f})}),a.on("readOnly",f),a.on("contentDomUnload",f),a.addCommand("elementsPathFocus",b.toolbarFocus),a.setKeystroke(CKEDITOR.ALT+122,"elementsPathFocus")}var b={toolbarFocus:{editorFocus:!1,readOnly:1,exec:function(a){(a=CKEDITOR.document.getById(a._.elementsPath.idBase+"0"))&&a.focus(CKEDITOR.env.ie||CKEDITOR.env.air)}}},c="";CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(c+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(c+=' onblur="this.style.cssText = this.style.cssText;"');var d=CKEDITOR.addTemplate("pathItem",'<a id="{id}" href="{jsTitle}" tabindex="-1" class="cke_path_item" title="{label}"'+c+' hidefocus="true" onkeydown="return CKEDITOR.tools.callFunction({keyDownFn},{index}, event );" onclick="CKEDITOR.tools.callFunction({clickFn},{index}); return false;" role="button" aria-label="{label}">{text}</a>');CKEDITOR.plugins.add("elementspath",{init:function(b){b._.elementsPath={idBase:"cke_elementspath_"+CKEDITOR.tools.getNextNumber()+"_",filters:[]},b.on("uiSpace",function(c){"bottom"==c.data.space&&a(b,c.data)})}})}(),function(){function a(a,d){var e,f;d.on("refresh",function(a){var d,e=[b];for(d in a.data.states)e.push(a.data.states[d]);this.setState(CKEDITOR.tools.search(e,c)?c:b)},d,null,100),d.on("exec",function(b){e=a.getSelection(),f=e.createBookmarks(1),b.data||(b.data={}),b.data.done=!1},d,null,0),d.on("exec",function(){a.forceNextSelectionCheck(),e.selectBookmarks(f)},d,null,100)}var b=CKEDITOR.TRISTATE_DISABLED,c=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indent",{init:function(b){var c=CKEDITOR.plugins.indent.genericDefinition;a(b,b.addCommand("indent",new c(!0))),a(b,b.addCommand("outdent",new c)),b.ui.addButton&&(b.ui.addButton("Indent",{label:b.lang.indent.indent,command:"indent",directional:!0,toolbar:"indent,20"}),b.ui.addButton("Outdent",{label:b.lang.indent.outdent,command:"outdent",directional:!0,toolbar:"indent,10"})),b.on("dirChanged",function(a){var c=b.createRange(),d=a.data.node;c.setStartBefore(d),c.setEndAfter(d);for(var e,f=new CKEDITOR.dom.walker(c);e=f.next();)if(e.type==CKEDITOR.NODE_ELEMENT)if(!e.equals(d)&&e.getDirection())c.setStartAfter(e),f=new CKEDITOR.dom.walker(c);else{var g=b.config.indentClasses;if(g)for(var h="ltr"==a.data.dir?["_rtl",""]:["","_rtl"],i=0;i<g.length;i++)e.hasClass(g[i]+h[0])&&(e.removeClass(g[i]+h[0]),e.addClass(g[i]+h[1]));g=e.getStyle("margin-right"),h=e.getStyle("margin-left"),g?e.setStyle("margin-left",g):e.removeStyle("margin-left"),h?e.setStyle("margin-right",h):e.removeStyle("margin-right")}})}}),CKEDITOR.plugins.indent={genericDefinition:function(a){this.isIndent=!!a,this.startDisabled=!this.isIndent},specificDefinition:function(a,b,c){this.name=b,this.editor=a,this.jobs={},this.enterBr=a.config.enterMode==CKEDITOR.ENTER_BR,this.isIndent=!!c,this.relatedGlobal=c?"indent":"outdent",this.indentKey=c?9:CKEDITOR.SHIFT+9,this.database={}},registerCommands:function(a,b){a.on("pluginsLoaded",function(){for(var a in b)(function(a,b){var c,d=a.getCommand(b.relatedGlobal);for(c in b.jobs)d.on("exec",function(d){d.data.done||(a.fire("lockSnapshot"),b.execJob(a,c)&&(d.data.done=!0),a.fire("unlockSnapshot"),CKEDITOR.dom.element.clearAllMarkers(b.database))},this,null,c),d.on("refresh",function(d){d.data.states||(d.data.states={}),d.data.states[b.name+"@"+c]=b.refreshJob(a,c,d.data.path)},this,null,c);a.addFeature(b)})(this,b[a])})}},CKEDITOR.plugins.indent.genericDefinition.prototype={context:"p",exec:function(){}},CKEDITOR.plugins.indent.specificDefinition.prototype={execJob:function(a,c){var d=this.jobs[c];return d.state!=b?d.exec.call(this,a):void 0},refreshJob:function(a,c,d){return c=this.jobs[c],a.activeFilter.checkFeature(this)?c.state=c.refresh.call(this,a,d):c.state=b,c.state},getContext:function(a){return a.contains(this.context)}}}(),function(){function a(a){function d(b){for(var d=e.startContainer,i=e.endContainer;d&&!d.getParent().equals(b);)d=d.getParent();for(;i&&!i.getParent().equals(b);)i=i.getParent();if(!d||!i)return!1;for(var j=d,d=[],k=!1;!k;)j.equals(i)&&(k=!0),d.push(j),j=j.getNext();if(1>d.length)return!1;for(j=b.getParents(!0),i=0;i<j.length;i++)if(j[i].getName&&h[j[i].getName()]){b=j[i];break}for(var j=f.isIndent?1:-1,i=d[0],d=d[d.length-1],k=CKEDITOR.plugins.list.listToArray(b,g),l=k[d.getCustomData("listarray_index")].indent,i=i.getCustomData("listarray_index");i<=d.getCustomData("listarray_index");i++)if(k[i].indent+=j,j>0){var m=k[i].parent;k[i].parent=new CKEDITOR.dom.element(m.getName(),m.getDocument())}for(i=d.getCustomData("listarray_index")+1;i<k.length&&k[i].indent>l;i++)k[i].indent+=j;if(d=CKEDITOR.plugins.list.arrayToList(k,g,null,a.config.enterMode,b.getDirection()),!f.isIndent){var n;if((n=b.getParent())&&n.is("li"))for(var o,j=d.listNode.getChildren(),p=[],i=j.count()-1;i>=0;i--)(o=j.getItem(i))&&o.is&&o.is("li")&&p.push(o)}if(d&&d.listNode.replace(b),p&&p.length)for(i=0;i<p.length;i++){for(o=b=p[i];(o=o.getNext())&&o.is&&o.getName()in h;)CKEDITOR.env.needsNbspFiller&&!b.getFirst(c)&&b.append(e.document.createText("Â ")),b.append(o);b.insertAfter(n)}return d&&a.fire("contentDomInvalidated"),!0}for(var e,f=this,g=this.database,h=this.context,i=a.getSelection(),i=(i&&i.getRanges()).createIterator();e=i.getNextRange();){for(var j=e.getCommonAncestor();j&&(j.type!=CKEDITOR.NODE_ELEMENT||!h[j.getName()]);){if(a.editable().equals(j)){j=!1;break}j=j.getParent()}if(j||(j=e.startPath().contains(h))&&e.setEndAt(j,CKEDITOR.POSITION_BEFORE_END),!j){var k=e.getEnclosedNode();k&&k.type==CKEDITOR.NODE_ELEMENT&&k.getName()in h&&(e.setStartAt(k,CKEDITOR.POSITION_AFTER_START),e.setEndAt(k,CKEDITOR.POSITION_BEFORE_END),j=k)}if(j&&e.startContainer.type==CKEDITOR.NODE_ELEMENT&&e.startContainer.getName()in h&&(k=new CKEDITOR.dom.walker(e),k.evaluator=b,e.startContainer=k.next()),j&&e.endContainer.type==CKEDITOR.NODE_ELEMENT&&e.endContainer.getName()in h&&(k=new CKEDITOR.dom.walker(e),k.evaluator=b,e.endContainer=k.previous()),j)return d(j)}return 0}function b(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.is("li")}function c(a){return d(a)&&e(a)}var d=CKEDITOR.dom.walker.whitespaces(!0),e=CKEDITOR.dom.walker.bookmark(!1,!0),f=CKEDITOR.TRISTATE_DISABLED,g=CKEDITOR.TRISTATE_OFF;CKEDITOR.plugins.add("indentlist",{requires:"indent",init:function(b){function c(b){d.specificDefinition.apply(this,arguments),this.requiredContent=["ul","ol"],b.on("key",function(a){if("wysiwyg"==b.mode&&a.data.keyCode==this.indentKey){var c=this.getContext(b.elementPath());!c||this.isIndent&&CKEDITOR.plugins.indentList.firstItemInPath(this.context,b.elementPath(),c)||(b.execCommand(this.relatedGlobal),a.cancel())}},this),this.jobs[this.isIndent?10:30]={refresh:this.isIndent?function(a,b){var c=this.getContext(b),d=CKEDITOR.plugins.indentList.firstItemInPath(this.context,b,c);return c&&this.isIndent&&!d?g:f}:function(a,b){return!this.getContext(b)||this.isIndent?f:g},exec:CKEDITOR.tools.bind(a,this)}}var d=CKEDITOR.plugins.indent;d.registerCommands(b,{indentlist:new c(b,"indentlist",!0),outdentlist:new c(b,"outdentlist")}),CKEDITOR.tools.extend(c.prototype,d.specificDefinition.prototype,{context:{ol:1,ul:1}})}}),CKEDITOR.plugins.indentList={},CKEDITOR.plugins.indentList.firstItemInPath=function(a,c,d){var e=c.contains(b);return d||(d=c.contains(a)),d&&e&&e.equals(d.getFirst(b))}}(),function(){function a(a,b,c){function d(c){!(i=k[c?"getFirst":"getLast"]())||i.is&&i.isBlockBoundary()||!(j=b.root[c?"getPrevious":"getNext"](CKEDITOR.dom.walker.invisible(!0)))||j.is&&j.isBlockBoundary({br:1})||a.document.createElement("br")[c?"insertBefore":"insertAfter"](i)}for(var e=CKEDITOR.plugins.list.listToArray(b.root,c),f=[],g=0;g<b.contents.length;g++){var h=b.contents[g];(h=h.getAscendant("li",!0))&&!h.getCustomData("list_item_processed")&&(f.push(h),CKEDITOR.dom.element.setMarker(c,h,"list_item_processed",!0))}for(h=null,g=0;g<f.length;g++)h=f[g].getCustomData("listarray_index"),e[h].indent=-1;for(g=h+1;g<e.length;g++)if(e[g].indent>e[g-1].indent+1){for(f=e[g-1].indent+1-e[g].indent,h=e[g].indent;e[g]&&e[g].indent>=h;)e[g].indent+=f,g++;g--}var i,j,k=CKEDITOR.plugins.list.arrayToList(e,c,null,a.config.enterMode,b.root.getAttribute("dir")).listNode;d(!0),d(),k.replace(b.root),a.fire("contentDomInvalidated")}function b(a,b){this.name=a,this.context=this.type=b,this.allowedContent=b+" li",this.requiredContent=b}function c(a,b,c,d){for(var e,f;e=a[d?"getLast":"getFirst"](n);)(f=e.getDirection(1))!==b.getDirection(1)&&e.setAttribute("dir",f),e.remove(),c?e[d?"insertBefore":"insertAfter"](c):b.append(e,d)}function d(a){function b(b){var d=a[b?"getPrevious":"getNext"](k);d&&d.type==CKEDITOR.NODE_ELEMENT&&d.is(a.getName())&&(c(a,d,null,!b),a.remove(),a=d)}b(),b(1)}function e(a){return a.type==CKEDITOR.NODE_ELEMENT&&(a.getName()in CKEDITOR.dtd.$block||a.getName()in CKEDITOR.dtd.$listItem)&&CKEDITOR.dtd[a.getName()]["#"]}function f(a,b,e){a.fire("saveSnapshot"),e.enlarge(CKEDITOR.ENLARGE_LIST_ITEM_CONTENTS);var f=e.extractContents();b.trim(!1,!0);var h=b.createBookmark(),i=new CKEDITOR.dom.elementPath(b.startContainer),j=i.block,i=i.lastElement.getAscendant("li",1)||j,m=new CKEDITOR.dom.elementPath(e.startContainer),n=m.contains(CKEDITOR.dtd.$listItem),m=m.contains(CKEDITOR.dtd.$list);for(j?(j=j.getBogus())&&j.remove():m&&(j=m.getPrevious(k))&&l(j)&&j.remove(),(j=f.getLast())&&j.type==CKEDITOR.NODE_ELEMENT&&j.is("br")&&j.remove(),(j=b.startContainer.getChild(b.startOffset))?f.insertBefore(j):b.startContainer.append(f),n&&(f=g(n))&&(i.contains(n)?(c(f,n.getParent(),n),f.remove()):i.append(f));e.checkStartOfBlock()&&e.checkEndOfBlock()&&(m=e.startPath(),f=m.block,f);)f.is("li")&&(i=f.getParent(),f.equals(i.getLast(k))&&f.equals(i.getFirst(k))&&(f=i)),e.moveToPosition(f,CKEDITOR.POSITION_BEFORE_START),f.remove();e=e.clone(),f=a.editable(),e.setEndAt(f,CKEDITOR.POSITION_BEFORE_END),e=new CKEDITOR.dom.walker(e),e.evaluator=function(a){return k(a)&&!l(a)},(e=e.next())&&e.type==CKEDITOR.NODE_ELEMENT&&e.getName()in CKEDITOR.dtd.$list&&d(e),b.moveToBookmark(h),b.select(),a.fire("saveSnapshot")}function g(a){return(a=a.getLast(k))&&a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in h?a:null}var h={ol:1,ul:1},i=CKEDITOR.dom.walker.whitespaces(),j=CKEDITOR.dom.walker.bookmark(),k=function(a){return!(i(a)||j(a))},l=CKEDITOR.dom.walker.bogus();CKEDITOR.plugins.list={listToArray:function(a,b,c,d,e){if(!h[a.getName()])return[];d||(d=0),c||(c=[]);for(var f=0,g=a.getChildCount();g>f;f++){var i=a.getChild(f);if(i.type==CKEDITOR.NODE_ELEMENT&&i.getName()in CKEDITOR.dtd.$list&&CKEDITOR.plugins.list.listToArray(i,b,c,d+1),"li"==i.$.nodeName.toLowerCase()){var j={parent:a,indent:d,element:i,contents:[]};e?j.grandparent=e:(j.grandparent=a.getParent(),j.grandparent&&"li"==j.grandparent.$.nodeName.toLowerCase()&&(j.grandparent=j.grandparent.getParent())),b&&CKEDITOR.dom.element.setMarker(b,i,"listarray_index",c.length),c.push(j);for(var k,l=0,m=i.getChildCount();m>l;l++)k=i.getChild(l),k.type==CKEDITOR.NODE_ELEMENT&&h[k.getName()]?CKEDITOR.plugins.list.listToArray(k,b,c,d+1,j.grandparent):j.contents.push(k)}}return c},arrayToList:function(a,b,c,d,e){if(c||(c=0),!a||a.length<c+1)return null;for(var f,g,i,l=a[c].parent.getDocument(),m=new CKEDITOR.dom.documentFragment(l),n=null,o=c,p=Math.max(a[c].indent,0),q=null,r=d==CKEDITOR.ENTER_P?"p":"div";;){var s=a[o];if(f=s.grandparent,g=s.element.getDirection(1),s.indent==p){for(n&&a[o].parent.getName()==n.getName()||(n=a[o].parent.clone(!1,1),e&&n.setAttribute("dir",e),m.append(n)),q=n.append(s.element.clone(0,1)),g!=n.getDirection(1)&&q.setAttribute("dir",g),f=0;f<s.contents.length;f++)q.append(s.contents[f].clone(1,1));o++}else if(s.indent==Math.max(p,0)+1)s=a[o-1].element.getDirection(1),o=CKEDITOR.plugins.list.arrayToList(a,null,o,d,s!=g?g:null),!q.getChildCount()&&CKEDITOR.env.needsNbspFiller&&7>=l.$.documentMode&&q.append(l.createText("Â ")),q.append(o.listNode),o=o.nextIndex;else{if(-1!=s.indent||c||!f)return null;h[f.getName()]?(q=s.element.clone(!1,!0),g!=f.getDirection(1)&&q.setAttribute("dir",g)):q=new CKEDITOR.dom.documentFragment(l);var t,u,n=f.getDirection(1)!=g,v=s.element,w=v.getAttribute("class"),x=v.getAttribute("style"),y=q.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&(d!=CKEDITOR.ENTER_BR||n||x||w),z=s.contents.length;for(f=0;z>f;f++)if(t=s.contents[f],j(t)&&z>1)y?u=t.clone(1,1):q.append(t.clone(1,1));else if(t.type==CKEDITOR.NODE_ELEMENT&&t.isBlockBoundary()){n&&!t.getDirection()&&t.setAttribute("dir",g),i=t;var A=v.getAttribute("style");A&&i.setAttribute("style",A.replace(/([^;])$/,"$1;")+(i.getAttribute("style")||"")),w&&t.addClass(w),i=null,u&&(q.append(u),u=null),q.append(t.clone(1,1))}else y?(i||(i=l.createElement(r),q.append(i),n&&i.setAttribute("dir",g)),x&&i.setAttribute("style",x),w&&i.setAttribute("class",w),u&&(i.append(u),u=null),i.append(t.clone(1,1))):q.append(t.clone(1,1));u&&((i||q).append(u),u=null),q.type==CKEDITOR.NODE_DOCUMENT_FRAGMENT&&o!=a.length-1&&(CKEDITOR.env.needsBrFiller&&(g=q.getLast())&&g.type==CKEDITOR.NODE_ELEMENT&&g.is("br")&&g.remove(),(g=q.getLast(k))&&g.type==CKEDITOR.NODE_ELEMENT&&g.is(CKEDITOR.dtd.$block)||q.append(l.createElement("br"))),g=q.$.nodeName.toLowerCase(),"div"!=g&&"p"!=g||q.appendBogus(),m.append(q),n=null,o++}if(i=null,a.length<=o||Math.max(a[o].indent,0)<p)break}if(b)for(a=m.getFirst();a;){if(a.type==CKEDITOR.NODE_ELEMENT&&(CKEDITOR.dom.element.clearMarkers(b,a),a.getName()in CKEDITOR.dtd.$listItem&&(c=a,l=e=d=void 0,d=c.getDirection()))){for(e=c.getParent();e&&!(l=e.getDirection());)e=e.getParent();d==l&&c.removeAttribute("dir")}a=a.getNextSourceNode()}return{listNode:m,nextIndex:o}}};var m=/^h[1-6]$/,n=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_ELEMENT);b.prototype={exec:function(b){this.refresh(b,b.elementPath());var c=b.config,e=b.getSelection(),f=e&&e.getRanges();if(this.state==CKEDITOR.TRISTATE_OFF){var g=b.editable();if(g.getFirst(k)){var i=1==f.length&&f[0];(c=i&&i.getEnclosedNode())&&c.is&&this.type==c.getName()&&this.setState(CKEDITOR.TRISTATE_ON)}else c.enterMode==CKEDITOR.ENTER_BR?g.appendBogus():f[0].fixBlock(1,c.enterMode==CKEDITOR.ENTER_P?"p":"div"),e.selectRanges(f)}for(var c=e.createBookmarks(!0),g=[],j={},f=f.createIterator(),l=0;(i=f.getNextRange())&&++l;){var n=i.getBoundaryNodes(),o=n.startNode,p=n.endNode;for(o.type==CKEDITOR.NODE_ELEMENT&&"td"==o.getName()&&i.setStartAt(n.startNode,CKEDITOR.POSITION_AFTER_START),p.type==CKEDITOR.NODE_ELEMENT&&"td"==p.getName()&&i.setEndAt(n.endNode,CKEDITOR.POSITION_BEFORE_END),i=i.createIterator(),i.forceBrBreak=this.state==CKEDITOR.TRISTATE_OFF;n=i.getNextParagraph();)if(!n.getCustomData("list_block")){CKEDITOR.dom.element.setMarker(j,n,"list_block",1);for(var q,r=b.elementPath(n),o=r.elements,p=0,r=r.blockLimit,s=o.length-1;s>=0&&(q=o[s]);s--)if(h[q.getName()]&&r.contains(q)){r.removeCustomData("list_group_object_"+l),(o=q.getCustomData("list_group_object"))?o.contents.push(n):(o={root:q,contents:[n]},g.push(o),CKEDITOR.dom.element.setMarker(j,q,"list_group_object",o)),p=1;break}p||(p=r,p.getCustomData("list_group_object_"+l)?p.getCustomData("list_group_object_"+l).contents.push(n):(o={root:p,contents:[n]},CKEDITOR.dom.element.setMarker(j,p,"list_group_object_"+l,o),g.push(o)))}}for(q=[];0<g.length;)if(o=g.shift(),this.state==CKEDITOR.TRISTATE_OFF)if(h[o.root.getName()]){for(f=b,l=o,o=j,i=q,p=CKEDITOR.plugins.list.listToArray(l.root,o),r=[],n=0;n<l.contents.length;n++)s=l.contents[n],(s=s.getAscendant("li",!0))&&!s.getCustomData("list_item_processed")&&(r.push(s),CKEDITOR.dom.element.setMarker(o,s,"list_item_processed",!0));for(var s=l.root.getDocument(),t=void 0,u=void 0,n=0;n<r.length;n++){var v=r[n].getCustomData("listarray_index"),t=p[v].parent;t.is(this.type)||(u=s.createElement(this.type),t.copyAttributes(u,{start:1,type:1}),u.removeStyle("list-style-type"),p[v].parent=u)}for(o=CKEDITOR.plugins.list.arrayToList(p,o,null,f.config.enterMode),p=void 0,r=o.listNode.getChildCount(),n=0;r>n&&(p=o.listNode.getChild(n));n++)p.getName()==this.type&&i.push(p);o.listNode.replace(l.root),f.fire("contentDomInvalidated")}else{for(p=b,i=o,n=q,r=i.contents,f=i.root.getDocument(),l=[],1==r.length&&r[0].equals(i.root)&&(o=f.createElement("div"),r[0].moveChildren&&r[0].moveChildren(o),r[0].append(o),r[0]=o),i=i.contents[0].getParent(),s=0;s<r.length;s++)i=i.getCommonAncestor(r[s].getParent());for(t=p.config.useComputedState,p=o=void 0,t=void 0===t||t,s=0;s<r.length;s++)for(u=r[s];v=u.getParent();){if(v.equals(i)){l.push(u),!p&&u.getDirection()&&(p=1),u=u.getDirection(t),null!==o&&(o=o&&o!=u?null:u);break}u=v}if(!(1>l.length)){for(r=l[l.length-1].getNext(),s=f.createElement(this.type),n.push(s),t=n=void 0;l.length;)n=l.shift(),t=f.createElement("li"),u=n,u.is("pre")||m.test(u.getName())||"false"==u.getAttribute("contenteditable")?n.appendTo(t):(n.copyAttributes(t),o&&n.getDirection()&&(t.removeStyle("direction"),t.removeAttribute("dir")),n.moveChildren(t),n.remove()),t.appendTo(s);o&&p&&s.setAttribute("dir",o),r?s.insertBefore(r):s.appendTo(i)}}else this.state==CKEDITOR.TRISTATE_ON&&h[o.root.getName()]&&a.call(this,b,o,j);for(s=0;s<q.length;s++)d(q[s]);CKEDITOR.dom.element.clearAllMarkers(j),e.selectBookmarks(c),b.focus()},refresh:function(a,b){var c=b.contains(h,1),d=b.blockLimit||b.root;c&&d.contains(c)?this.setState(c.is(this.type)?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_OFF)}},CKEDITOR.plugins.add("list",{requires:"indentlist",init:function(a){a.blockless||(a.addCommand("numberedlist",new b("numberedlist","ol")),a.addCommand("bulletedlist",new b("bulletedlist","ul")),a.ui.addButton&&(a.ui.addButton("NumberedList",{label:a.lang.list.numberedlist,command:"numberedlist",directional:!0,toolbar:"list,10"}),a.ui.addButton("BulletedList",{label:a.lang.list.bulletedlist,command:"bulletedlist",directional:!0,toolbar:"list,20"})),a.on("key",function(b){var c,d=b.data.domEvent.getKey();if("wysiwyg"==a.mode&&d in{8:1,46:1}){var i=a.getSelection().getRanges()[0],j=i&&i.startPath();if(i&&i.collapsed){var m=8==d,n=a.editable(),o=new CKEDITOR.dom.walker(i.clone());if(o.evaluator=function(a){return k(a)&&!l(a)},o.guard=function(a,b){return!(b&&a.type==CKEDITOR.NODE_ELEMENT&&a.is("table"))},d=i.clone(),m){var p;if((p=j.contains(h))&&i.checkBoundaryOfElement(p,CKEDITOR.START)&&(p=p.getParent())&&p.is("li")&&(p=g(p))?(c=p,p=p.getPrevious(k),d.moveToPosition(p&&l(p)?p:c,CKEDITOR.POSITION_BEFORE_START)):(o.range.setStartAt(n,CKEDITOR.POSITION_AFTER_START),o.range.setEnd(i.startContainer,i.startOffset),(p=o.previous())&&p.type==CKEDITOR.NODE_ELEMENT&&(p.getName()in h||p.is("li"))&&(p.is("li")||(o.range.selectNodeContents(p),o.reset(),o.evaluator=e,p=o.previous()),c=p,d.moveToElementEditEnd(c),d.moveToPosition(d.endPath().block,CKEDITOR.POSITION_BEFORE_END))),c)f(a,d,i),b.cancel();else{var q=j.contains(h);q&&i.checkBoundaryOfElement(q,CKEDITOR.START)&&(c=q.getFirst(k),i.checkBoundaryOfElement(c,CKEDITOR.START)&&(p=q.getPrevious(k),g(c)?p&&(i.moveToElementEditEnd(p),i.select()):a.execCommand("outdent"),b.cancel()))}}else if(c=j.contains("li")){if(o.range.setEndAt(n,CKEDITOR.POSITION_BEFORE_END),m=(n=c.getLast(k))&&e(n)?n:c,j=0,(p=o.next())&&p.type==CKEDITOR.NODE_ELEMENT&&p.getName()in h&&p.equals(n)?(j=1,p=o.next()):i.checkBoundaryOfElement(m,CKEDITOR.END)&&(j=2),j&&p){if(i=i.clone(),i.moveToElementEditStart(p),1==j&&(d.optimize(),!d.startContainer.equals(c))){for(c=d.startContainer;c.is(CKEDITOR.dtd.$inline);)q=c,c=c.getParent();q&&d.moveToPosition(q,CKEDITOR.POSITION_AFTER_END)}2==j&&(d.moveToPosition(d.endPath().block,CKEDITOR.POSITION_BEFORE_END),i.endPath().block&&i.moveToPosition(i.endPath().block,CKEDITOR.POSITION_AFTER_START)),f(a,d,i),b.cancel()}}else o.range.setEndAt(n,CKEDITOR.POSITION_BEFORE_END),(p=o.next())&&p.type==CKEDITOR.NODE_ELEMENT&&p.is(h)&&(p=p.getFirst(k),j.block&&i.checkStartOfBlock()&&i.checkEndOfBlock()?(j.block.remove(),i.moveToElementEditStart(p),i.select()):g(p)?(i.moveToElementEditStart(p),i.select()):(i=i.clone(),i.moveToElementEditStart(p),f(a,d,i)),b.cancel());setTimeout(function(){a.selectionChange(1)})}}}))}})}(),function(){function a(a,b,c){c=a.config.forceEnterMode||c,"wysiwyg"==a.mode&&(b||(b=a.activeEnterMode),a.elementPath().isContextFor("p")||(b=CKEDITOR.ENTER_BR,c=1),a.fire("saveSnapshot"),b==CKEDITOR.ENTER_BR?g(a,b,null,c):h(a,b,null,c),a.fire("saveSnapshot"))}function b(a){a=a.getSelection().getRanges(!0);for(var b=a.length-1;b>0;b--)a[b].deleteContents();return a[0]}function c(a){var b=a.startContainer.getAscendant(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&"true"==a.getAttribute("contenteditable")},!0);return a.root.equals(b)?a:(b=new CKEDITOR.dom.range(b),b.moveToRange(a),b)}CKEDITOR.plugins.add("enterkey",{init:function(b){b.addCommand("enter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){a(b)}}),b.addCommand("shiftEnter",{modes:{wysiwyg:1},editorFocus:!1,exec:function(b){a(b,b.activeShiftEnterMode,1)}}),b.setKeystroke([[13,"enter"],[CKEDITOR.SHIFT+13,"shiftEnter"]])}});var d=CKEDITOR.dom.walker.whitespaces(),e=CKEDITOR.dom.walker.bookmark();CKEDITOR.plugins.enterkey={enterBlock:function(a,f,h,j){if(h=h||b(a)){h=c(h);var k,l=h.document,m=h.checkStartOfBlock(),n=h.checkEndOfBlock(),o=a.elementPath(h.startContainer),p=o.block,q=f==CKEDITOR.ENTER_DIV?"div":"p";if(m&&n){if(p&&(p.is("li")||p.getParent().is("li"))){p.is("li")||(p=p.getParent()),h=p.getParent(),k=h.getParent(),j=!p.hasPrevious();var r=!p.hasNext(),q=a.getSelection(),s=q.createBookmarks(),m=p.getDirection(1),n=p.getAttribute("class"),t=p.getAttribute("style"),u=k.getDirection(1)!=m;if(a=a.enterMode!=CKEDITOR.ENTER_BR||u||t||n,k.is("li"))j||r?(j&&r&&h.remove(),p[r?"insertAfter":"insertBefore"](k)):p.breakParent(k);else{if(a)o.block.is("li")?(k=l.createElement(f==CKEDITOR.ENTER_P?"p":"div"),u&&k.setAttribute("dir",m),t&&k.setAttribute("style",t),n&&k.setAttribute("class",n),p.moveChildren(k)):k=o.block,j||r?k[j?"insertBefore":"insertAfter"](h):(p.breakParent(h),k.insertAfter(h));else if(p.appendBogus(!0),j||r)for(;l=p[j?"getFirst":"getLast"]();)l[j?"insertBefore":"insertAfter"](h);else for(p.breakParent(h);l=p.getLast();)l.insertAfter(h);p.remove()}return void q.selectBookmarks(s)}if(p&&p.getParent().is("blockquote"))return p.breakParent(p.getParent()),p.getPrevious().getFirst(CKEDITOR.dom.walker.invisible(1))||p.getPrevious().remove(),p.getNext().getFirst(CKEDITOR.dom.walker.invisible(1))||p.getNext().remove(),h.moveToElementEditStart(p),void h.select()}else if(p&&p.is("pre")&&!n)return void g(a,f,h,j);if(m=h.splitBlock(q)){if(f=m.previousBlock,p=m.nextBlock,o=m.wasStartOfBlock,a=m.wasEndOfBlock,p?(s=p.getParent(),s.is("li")&&(p.breakParent(s),p.move(p.getNext(),1))):f&&(s=f.getParent())&&s.is("li")&&(f.breakParent(s),s=f.getNext(),h.moveToElementEditStart(s),f.move(f.getPrevious())),o||a){if(f?(f.is("li")||!i.test(f.getName())&&!f.is("pre"))&&(k=f.clone()):p&&(k=p.clone()),k?j&&!k.is("li")&&k.renameNode(q):s&&s.is("li")?k=s:(k=l.createElement(q),f&&(r=f.getDirection())&&k.setAttribute("dir",r)),l=m.elementPath)for(j=0,q=l.elements.length;q>j&&(s=l.elements[j],!s.equals(l.block)&&!s.equals(l.blockLimit));j++)CKEDITOR.dtd.$removeEmpty[s.getName()]&&(s=s.clone(),k.moveChildren(s),k.append(s));k.appendBogus(),k.getParent()||h.insertNode(k),k.is("li")&&k.removeAttribute("value"),!CKEDITOR.env.ie||!o||a&&f.getChildCount()||(h.moveToElementEditStart(a?f:k),h.select()),h.moveToElementEditStart(o&&!a?p:k)}else p.is("li")&&(k=h.clone(),k.selectNodeContents(p),k=new CKEDITOR.dom.walker(k),k.evaluator=function(a){return!(e(a)||d(a)||a.type==CKEDITOR.NODE_ELEMENT&&a.getName()in CKEDITOR.dtd.$inline&&!(a.getName()in CKEDITOR.dtd.$empty))},(s=k.next())&&s.type==CKEDITOR.NODE_ELEMENT&&s.is("ul","ol")&&(CKEDITOR.env.needsBrFiller?l.createElement("br"):l.createText("Â ")).insertBefore(s)),p&&h.moveToElementEditStart(p);h.select(),h.scrollIntoView()}}},enterBr:function(a,c,d,e){if(d=d||b(a)){var f=d.document,g=d.checkEndOfBlock(),j=new CKEDITOR.dom.elementPath(a.getSelection().getStartElement()),k=j.block,l=k&&j.block.getName();e||"li"!=l?(!e&&g&&i.test(l)?(g=k.getDirection())?(f=f.createElement("div"),f.setAttribute("dir",g),f.insertAfter(k),d.setStart(f,0)):(f.createElement("br").insertAfter(k),CKEDITOR.env.gecko&&f.createText("").insertAfter(k),d.setStartAt(k.getNext(),CKEDITOR.env.ie?CKEDITOR.POSITION_BEFORE_START:CKEDITOR.POSITION_AFTER_START)):(a="pre"==l&&CKEDITOR.env.ie&&8>CKEDITOR.env.version?f.createText("\r"):f.createElement("br"),d.deleteContents(),d.insertNode(a), -CKEDITOR.env.needsBrFiller?(f.createText("\ufeff").insertAfter(a),g&&(k||j.blockLimit).appendBogus(),a.getNext().$.nodeValue="",d.setStartAt(a.getNext(),CKEDITOR.POSITION_AFTER_START)):d.setStartAt(a,CKEDITOR.POSITION_AFTER_END)),d.collapse(!0),d.select(),d.scrollIntoView()):h(a,c,d,e)}}};var f=CKEDITOR.plugins.enterkey,g=f.enterBr,h=f.enterBlock,i=/^h[1-6]$/}(),function(){function a(a,b){var c={},d=[],e={nbsp:"Â ",shy:"ÂÂ",gt:">",lt:"<",amp:"&",apos:"'",quot:'"'};if(a=a.replace(/\b(nbsp|shy|gt|lt|amp|apos|quot)(?:,|$)/g,function(a,f){var g=b?"&"+f+";":e[f];return c[g]=b?e[f]:"&"+f+";",d.push(g),""}),!b&&a){a=a.split(",");var f,g=document.createElement("div");for(g.innerHTML="&"+a.join(";&")+";",f=g.innerHTML,g=null,g=0;g<f.length;g++){var h=f.charAt(g);c[h]="&"+a[g]+";",d.push(h)}}return c.regex=d.join(b?"|":""),c}CKEDITOR.plugins.add("entities",{afterInit:function(b){function c(a){return i[a]}function d(a){return"force"!=e.entities_processNumerical&&g[a]?g[a]:"&#"+a.charCodeAt(0)+";"}var e=b.config;if(b=(b=b.dataProcessor)&&b.htmlFilter){var f=[];!1!==e.basicEntities&&f.push("nbsp,gt,lt,amp"),e.entities&&(f.length&&f.push("quot,iexcl,cent,pound,curren,yen,brvbar,sect,uml,copy,ordf,laquo,not,shy,reg,macr,deg,plusmn,sup2,sup3,acute,micro,para,middot,cedil,sup1,ordm,raquo,frac14,frac12,frac34,iquest,times,divide,fnof,bull,hellip,prime,Prime,oline,frasl,weierp,image,real,trade,alefsym,larr,uarr,rarr,darr,harr,crarr,lArr,uArr,rArr,dArr,hArr,forall,part,exist,empty,nabla,isin,notin,ni,prod,sum,minus,lowast,radic,prop,infin,ang,and,or,cap,cup,int,there4,sim,cong,asymp,ne,equiv,le,ge,sub,sup,nsub,sube,supe,oplus,otimes,perp,sdot,lceil,rceil,lfloor,rfloor,lang,rang,loz,spades,clubs,hearts,diams,circ,tilde,ensp,emsp,thinsp,zwnj,zwj,lrm,rlm,ndash,mdash,lsquo,rsquo,sbquo,ldquo,rdquo,bdquo,dagger,Dagger,permil,lsaquo,rsaquo,euro"),e.entities_latin&&f.push("Agrave,Aacute,Acirc,Atilde,Auml,Aring,AElig,Ccedil,Egrave,Eacute,Ecirc,Euml,Igrave,Iacute,Icirc,Iuml,ETH,Ntilde,Ograve,Oacute,Ocirc,Otilde,Ouml,Oslash,Ugrave,Uacute,Ucirc,Uuml,Yacute,THORN,szlig,agrave,aacute,acirc,atilde,auml,aring,aelig,ccedil,egrave,eacute,ecirc,euml,igrave,iacute,icirc,iuml,eth,ntilde,ograve,oacute,ocirc,otilde,ouml,oslash,ugrave,uacute,ucirc,uuml,yacute,thorn,yuml,OElig,oelig,Scaron,scaron,Yuml"),e.entities_greek&&f.push("Alpha,Beta,Gamma,Delta,Epsilon,Zeta,Eta,Theta,Iota,Kappa,Lambda,Mu,Nu,Xi,Omicron,Pi,Rho,Sigma,Tau,Upsilon,Phi,Chi,Psi,Omega,alpha,beta,gamma,delta,epsilon,zeta,eta,theta,iota,kappa,lambda,mu,nu,xi,omicron,pi,rho,sigmaf,sigma,tau,upsilon,phi,chi,psi,omega,thetasym,upsih,piv"),e.entities_additional&&f.push(e.entities_additional));var g=a(f.join(",")),h=g.regex?"["+g.regex+"]":"a^";delete g.regex,e.entities&&e.entities_processNumerical&&(h="[^ -~]|"+h);var h=new RegExp(h,"g"),i=a("nbsp,gt,lt,amp,shy",!0),j=new RegExp(i.regex,"g");b.addRules({text:function(a){return a.replace(j,c).replace(h,d)}},{applyToAll:!0,excludeNestedEditable:!0})}}})}(),CKEDITOR.config.basicEntities=!0,CKEDITOR.config.entities=!0,CKEDITOR.config.entities_latin=!0,CKEDITOR.config.entities_greek=!0,CKEDITOR.config.entities_additional="#39",CKEDITOR.plugins.add("popup"),CKEDITOR.tools.extend(CKEDITOR.editor.prototype,{popup:function(a,b,c,d){b=b||"80%",c=c||"70%","string"==typeof b&&1<b.length&&"%"==b.substr(b.length-1,1)&&(b=parseInt(window.screen.width*parseInt(b,10)/100,10)),"string"==typeof c&&1<c.length&&"%"==c.substr(c.length-1,1)&&(c=parseInt(window.screen.height*parseInt(c,10)/100,10)),640>b&&(b=640),420>c&&(c=420);var e=parseInt((window.screen.height-c)/2,10),f=parseInt((window.screen.width-b)/2,10);d=(d||"location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,scrollbars=yes")+",width="+b+",height="+c+",top="+e+",left="+f;var g=window.open("",null,d,!0);if(!g)return!1;try{-1==navigator.userAgent.toLowerCase().indexOf(" chrome/")&&(g.moveTo(f,e),g.resizeTo(b,c)),g.focus(),g.location.href=a}catch(h){window.open(a,null,d,!0)}return!0}}),function(){function a(a,b){var c=[];if(!b)return a;for(var d in b)c.push(d+"="+encodeURIComponent(b[d]));return a+(-1!=a.indexOf("?")?"&":"?")+c.join("&")}function b(a){return a+="",a.charAt(0).toUpperCase()+a.substr(1)}function c(){var c=this.getDialog(),d=c.getParentEditor();d._.filebrowserSe=this;var e=d.config["filebrowser"+b(c.getName())+"WindowWidth"]||d.config.filebrowserWindowWidth||"80%",c=d.config["filebrowser"+b(c.getName())+"WindowHeight"]||d.config.filebrowserWindowHeight||"70%",f=this.filebrowser.params||{};f.CKEditor=d.name,f.CKEditorFuncNum=d._.filebrowserFn,f.langCode||(f.langCode=d.langCode),f=a(this.filebrowser.url,f),d.popup(f,e,c,d.config.filebrowserWindowFeatures||d.config.fileBrowserWindowFeatures)}function d(){var a=this.getDialog();return a.getParentEditor()._.filebrowserSe=this,!(!a.getContentElement(this["for"][0],this["for"][1]).getInputElement().$.value||!a.getContentElement(this["for"][0],this["for"][1]).getAction())}function e(b,c,d){var e=d.params||{};e.CKEditor=b.name,e.CKEditorFuncNum=b._.filebrowserFn,e.langCode||(e.langCode=b.langCode),c.action=a(d.url,e),c.filebrowser=d}function f(a,g,h,i){if(i&&i.length)for(var j,k=i.length;k--;)if(j=i[k],"hbox"!=j.type&&"vbox"!=j.type&&"fieldset"!=j.type||f(a,g,h,j.children),j.filebrowser)if("string"==typeof j.filebrowser&&(j.filebrowser={action:"fileButton"==j.type?"QuickUpload":"Browse",target:j.filebrowser}),"Browse"==j.filebrowser.action){var l=j.filebrowser.url;void 0===l&&(l=a.config["filebrowser"+b(g)+"BrowseUrl"],void 0===l&&(l=a.config.filebrowserBrowseUrl)),l&&(j.onClick=c,j.filebrowser.url=l,j.hidden=!1)}else if("QuickUpload"==j.filebrowser.action&&j["for"]&&(l=j.filebrowser.url,void 0===l&&(l=a.config["filebrowser"+b(g)+"UploadUrl"],void 0===l&&(l=a.config.filebrowserUploadUrl)),l)){var m=j.onClick;j.onClick=function(a){var b=a.sender;return m&&!1===m.call(b,a)?!1:d.call(b,a)?(a=b.getDialog().getContentElement(this["for"][0],this["for"][1]).getInputElement(),(b=new CKEDITOR.dom.element(a.$.form))&&((a=b.$.elements.ckCsrfToken)?a=new CKEDITOR.dom.element(a):(a=new CKEDITOR.dom.element("input"),a.setAttributes({name:"ckCsrfToken",type:"hidden"}),b.append(a)),a.setAttribute("value",CKEDITOR.tools.getCsrfToken())),!0):!1},j.filebrowser.url=l,j.hidden=!1,e(a,h.getContents(j["for"][0]).get(j["for"][1]),j.filebrowser)}}function g(a,b,c){if(-1!==c.indexOf(";")){c=c.split(";");for(var d=0;d<c.length;d++)if(g(a,b,c[d]))return!0;return!1}return(a=a.getContents(b).get(c).filebrowser)&&a.url}function h(a,b){var c=this._.filebrowserSe.getDialog(),d=this._.filebrowserSe["for"],e=this._.filebrowserSe.filebrowser.onSelect;d&&c.getContentElement(d[0],d[1]).reset(),"function"==typeof b&&!1===b.call(this._.filebrowserSe)||e&&!1===e.call(this._.filebrowserSe,a,b)||("string"==typeof b&&b&&alert(b),a&&(d=this._.filebrowserSe,c=d.getDialog(),d=d.filebrowser.target||null)&&(d=d.split(":"),(e=c.getContentElement(d[0],d[1]))&&(e.setValue(a),c.selectPage(d[0]))))}CKEDITOR.plugins.add("filebrowser",{requires:"popup",init:function(a){a._.filebrowserFn=CKEDITOR.tools.addFunction(h,a),a.on("destroy",function(){CKEDITOR.tools.removeFunction(this._.filebrowserFn)})}}),CKEDITOR.on("dialogDefinition",function(a){if(a.editor.plugins.filebrowser)for(var b,c=a.data.definition,d=0;d<c.contents.length;++d)(b=c.contents[d])&&(f(a.editor,a.data.name,c,b.elements),b.hidden&&b.filebrowser&&(b.hidden=!g(c,b.id,b.filebrowser)))})}(),function(){function a(a){var d=a.config,e=a.fire("uiSpace",{space:"top",html:""}).html,f=function(){function e(a,b,d){h.setStyle(b,c(d)),h.setStyle("position",a)}function g(a){var b=j.getDocumentPosition();switch(a){case"top":e("absolute","top",b.y-n-q);break;case"pin":e("fixed","top",s);break;case"bottom":e("absolute","top",b.y+(l.height||l.bottom-l.top)+q)}i=a}var i,j,k,l,m,n,o,p=d.floatSpaceDockedOffsetX||0,q=d.floatSpaceDockedOffsetY||0,r=d.floatSpacePinnedOffsetX||0,s=d.floatSpacePinnedOffsetY||0;return function(e){if(j=a.editable()){var s=e&&"focus"==e.name;s&&h.show(),a.fire("floatingSpaceLayout",{show:s}),h.removeStyle("left"),h.removeStyle("right"),k=h.getClientRect(),l=j.getClientRect(),m=b.getViewPaneSize(),n=k.height,o="pageXOffset"in b.$?b.$.pageXOffset:CKEDITOR.document.$.documentElement.scrollLeft,i?(g(n+q<=l.top?"top":n+q>m.height-l.bottom?"pin":"bottom"),e=m.width/2,e=d.floatSpacePreferRight?"right":0<l.left&&l.right<m.width&&l.width>k.width?"rtl"==d.contentsLangDirection?"right":"left":e-l.left>l.right-e?"left":"right",k.width>m.width?(e="left",s=0):(s="left"==e?0<l.left?l.left:0:l.right<m.width?m.width-l.right:0,s+k.width>m.width&&(e="left"==e?"right":"left",s=0)),h.setStyle(e,c(("pin"==i?r:p)+s+("pin"==i?0:"left"==e?o:-o)))):(i="pin",g("pin"),f(e))}}}();if(e){var g=new CKEDITOR.template('<div id="cke_{name}" class="cke {id} cke_reset_all cke_chrome cke_editor_{name} cke_float cke_{langDir} '+CKEDITOR.env.cssClass+'" dir="{langDir}" title="'+(CKEDITOR.env.gecko?" ":"")+'" lang="{langCode}" role="application" style="{style}"'+(a.title?' aria-labelledby="cke_{name}_arialbl"':" ")+">"+(a.title?'<span id="cke_{name}_arialbl" class="cke_voice_label">{voiceLabel}</span>':" ")+'<div class="cke_inner"><div id="{topId}" class="cke_top" role="presentation">{content}</div></div></div>'),h=CKEDITOR.document.getBody().append(CKEDITOR.dom.element.createFromHtml(g.output({content:e,id:a.id,langDir:a.lang.dir,langCode:a.langCode,name:a.name,style:"display:none;z-index:"+(d.baseFloatZIndex-1),topId:a.ui.spaceId("top"),voiceLabel:a.title}))),i=CKEDITOR.tools.eventsBuffer(500,f),j=CKEDITOR.tools.eventsBuffer(100,f);h.unselectable(),h.on("mousedown",function(a){a=a.data,a.getTarget().hasAscendant("a",1)||a.preventDefault()}),a.on("focus",function(c){f(c),a.on("change",i.input),b.on("scroll",j.input),b.on("resize",j.input)}),a.on("blur",function(){h.hide(),a.removeListener("change",i.input),b.removeListener("scroll",j.input),b.removeListener("resize",j.input)}),a.on("destroy",function(){b.removeListener("scroll",j.input),b.removeListener("resize",j.input),h.clearCustomData(),h.remove()}),a.focusManager.hasFocus&&h.show(),a.focusManager.add(h,1)}}var b=CKEDITOR.document.getWindow(),c=CKEDITOR.tools.cssLength;CKEDITOR.plugins.add("floatingspace",{init:function(b){b.on("loaded",function(){a(this)},null,null,20)}})}(),CKEDITOR.plugins.add("listblock",{requires:"panel",onLoad:function(){var a=CKEDITOR.addTemplate("panel-list",'<ul role="presentation" class="cke_panel_list">{items}</ul>'),b=CKEDITOR.addTemplate("panel-list-item",'<li id="{id}" class="cke_panel_listItem" role=presentation><a id="{id}_option" _cke_focus=1 hidefocus=true title="{title}" href="javascript:void(\'{val}\')" {onclick}="CKEDITOR.tools.callFunction({clickFn},\'{val}\'); return false;" role="option">{text}</a></li>'),c=CKEDITOR.addTemplate("panel-list-group",'<h1 id="{id}" class="cke_panel_grouptitle" role="presentation" >{label}</h1>'),d=/\'/g;CKEDITOR.ui.panel.prototype.addListBlock=function(a,b){return this.addBlock(a,new CKEDITOR.ui.listBlock(this.getHolderElement(),b))},CKEDITOR.ui.listBlock=CKEDITOR.tools.createClass({base:CKEDITOR.ui.panel.block,$:function(a,b){b=b||{};var c=b.attributes||(b.attributes={});(this.multiSelect=!!b.multiSelect)&&(c["aria-multiselectable"]=!0),!c.role&&(c.role="listbox"),this.base.apply(this,arguments),this.element.setAttribute("role",c.role),c=this.keys,c[40]="next",c[9]="next",c[38]="prev",c[CKEDITOR.SHIFT+9]="prev",c[32]=CKEDITOR.env.ie?"mouseup":"click",CKEDITOR.env.ie&&(c[13]="mouseup"),this._.pendingHtml=[],this._.pendingList=[],this._.items={},this._.groups={}},_:{close:function(){if(this._.started){var b=a.output({items:this._.pendingList.join("")});this._.pendingList=[],this._.pendingHtml.push(b),delete this._.started}},getClick:function(){return this._.click||(this._.click=CKEDITOR.tools.addFunction(function(a){var b=this.toggle(a);this.onClick&&this.onClick(a,b)},this)),this._.click}},proto:{add:function(a,c,e){var f=CKEDITOR.tools.getNextId();this._.started||(this._.started=1,this._.size=this._.size||0),this._.items[a]=f;var g;g=CKEDITOR.tools.htmlEncodeAttr(a).replace(d,"\\'"),a={id:f,val:g,onclick:CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick",clickFn:this._.getClick(),title:CKEDITOR.tools.htmlEncodeAttr(e||a),text:c||a},this._.pendingList.push(b.output(a))},startGroup:function(a){this._.close();var b=CKEDITOR.tools.getNextId();this._.groups[a]=b,this._.pendingHtml.push(c.output({id:b,label:a}))},commit:function(){this._.close(),this.element.appendHtml(this._.pendingHtml.join("")),delete this._.size,this._.pendingHtml=[]},toggle:function(a){var b=this.isMarked(a);return b?this.unmark(a):this.mark(a),!b},hideGroup:function(a){var b=(a=this.element.getDocument().getById(this._.groups[a]))&&a.getNext();a&&(a.setStyle("display","none"),b&&"ul"==b.getName()&&b.setStyle("display","none"))},hideItem:function(a){this.element.getDocument().getById(this._.items[a]).setStyle("display","none")},showAll:function(){var a,b=this._.items,c=this._.groups,d=this.element.getDocument();for(a in b)d.getById(b[a]).setStyle("display","");for(var e in c)b=d.getById(c[e]),a=b.getNext(),b.setStyle("display",""),a&&"ul"==a.getName()&&a.setStyle("display","")},mark:function(a){this.multiSelect||this.unmarkAll(),a=this._.items[a];var b=this.element.getDocument().getById(a);b.addClass("cke_selected"),this.element.getDocument().getById(a+"_option").setAttribute("aria-selected",!0),this.onMark&&this.onMark(b)},unmark:function(a){var b=this.element.getDocument();a=this._.items[a];var c=b.getById(a);c.removeClass("cke_selected"),b.getById(a+"_option").removeAttribute("aria-selected"),this.onUnmark&&this.onUnmark(c)},unmarkAll:function(){var a,b=this._.items,c=this.element.getDocument();for(a in b){var d=b[a];c.getById(d).removeClass("cke_selected"),c.getById(d+"_option").removeAttribute("aria-selected")}this.onUnmark&&this.onUnmark()},isMarked:function(a){return this.element.getDocument().getById(this._.items[a]).hasClass("cke_selected")},focus:function(a){this._.focusIndex=-1;var b,c=this.element.getElementsByTag("a"),d=-1;if(a){for(b=this.element.getDocument().getById(this._.items[a]).getFirst();a=c.getItem(++d);)if(a.equals(b)){this._.focusIndex=d;break}}else this.element.focus();b&&setTimeout(function(){b.focus()},0)}}})}}),function(){var a='<a id="{id}" class="cke_button cke_button__{name} cke_button_{state} {cls}"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' title="{title}" tabindex="-1" hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="{hasArrow}" aria-disabled="{ariaDisabled}"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(a+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(a+=' onblur="this.style.cssText = this.style.cssText;"');var a=a+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span class="cke_button_icon cke_button__{iconName}_icon" style="{style}"'),a=a+'> </span><span id="{id}_label" class="cke_button_label cke_button__{name}_label" aria-hidden="false">{label}</span>{arrowHtml}</a>',b=CKEDITOR.addTemplate("buttonArrow",'<span class="cke_button_arrow">'+(CKEDITOR.env.hc?"▼":"")+"</span>"),c=CKEDITOR.addTemplate("button",a);CKEDITOR.plugins.add("button",{beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_BUTTON,CKEDITOR.ui.button.handler)}}),CKEDITOR.UI_BUTTON="button",CKEDITOR.ui.button=function(a){CKEDITOR.tools.extend(this,a,{title:a.label,click:a.click||function(b){b.execCommand(a.command)}}),this._={}},CKEDITOR.ui.button.handler={create:function(a){return new CKEDITOR.ui.button(a)}},CKEDITOR.ui.button.prototype={render:function(a,d){function e(){var b=a.mode;b&&(b=this.modes[b]?void 0!==o[b]?o[b]:CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,b=a.readOnly&&!this.readOnly?CKEDITOR.TRISTATE_DISABLED:b,this.setState(b),this.refresh&&this.refresh())}var f,g=CKEDITOR.env,h=this._.id=CKEDITOR.tools.getNextId(),i="",j=this.command;this._.editor=a;var k={id:h,button:this,editor:a,focus:function(){CKEDITOR.document.getById(h).focus()},execute:function(){this.button.click(a)},attach:function(a){this.button.attach(a)}},l=CKEDITOR.tools.addFunction(function(a){return k.onkey?(a=new CKEDITOR.dom.event(a),!1!==k.onkey(k,a.getKeystroke())):void 0}),m=CKEDITOR.tools.addFunction(function(a){var b;return k.onfocus&&(b=!1!==k.onfocus(k,new CKEDITOR.dom.event(a))),b}),n=0;if(k.clickFn=f=CKEDITOR.tools.addFunction(function(){n&&(a.unlockSelection(1),n=0),k.execute(),g.iOS&&a.focus()}),this.modes){var o={};a.on("beforeModeUnload",function(){a.mode&&this._.state!=CKEDITOR.TRISTATE_DISABLED&&(o[a.mode]=this._.state)},this),a.on("activeFilterChange",e,this),a.on("mode",e,this),!this.readOnly&&a.on("readOnly",e,this)}else j&&(j=a.getCommand(j))&&(j.on("state",function(){this.setState(j.state)},this),i+=j.state==CKEDITOR.TRISTATE_ON?"on":j.state==CKEDITOR.TRISTATE_DISABLED?"disabled":"off");this.directional&&a.on("contentDirChanged",function(b){var c=CKEDITOR.document.getById(this._.id),d=c.getFirst();b=b.data,b!=a.lang.dir?c.addClass("cke_"+b):c.removeClass("cke_ltr").removeClass("cke_rtl"),d.setAttribute("style",CKEDITOR.skin.getIconStyle(q,"rtl"==b,this.icon,this.iconOffset))},this),j||(i+="off");var p=this.name||this.command,q=p;return this.icon&&!/\./.test(this.icon)&&(q=this.icon,this.icon=null),i={id:h,name:p,iconName:q,label:this.label,cls:this.className||"",state:i,ariaDisabled:"disabled"==i?"true":"false",title:this.title,titleJs:g.gecko&&!g.hc?"":(this.title||"").replace("'",""),hasArrow:this.hasArrow?"true":"false",keydownFn:l,focusFn:m,clickFn:f,style:CKEDITOR.skin.getIconStyle(q,"rtl"==a.lang.dir,this.icon,this.iconOffset),arrowHtml:this.hasArrow?b.output():""},c.output(i,d),this.onRender&&this.onRender(),k},setState:function(a){if(this._.state==a)return!1;this._.state=a;var b=CKEDITOR.document.getById(this._.id);return b?(b.setState(a,"cke_button"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this.hasArrow?(a=a==CKEDITOR.TRISTATE_ON?this._.editor.lang.button.selectedLabel.replace(/%1/g,this.label):this.label,CKEDITOR.document.getById(this._.id+"_label").setText(a)):a==CKEDITOR.TRISTATE_ON?b.setAttribute("aria-pressed",!0):b.removeAttribute("aria-pressed"),!0):!1},getState:function(){return this._.state},toFeature:function(a){if(this._.feature)return this._.feature;var b=this;return this.allowedContent||this.requiredContent||!this.command||(b=a.getCommand(this.command)||b),this._.feature=b}},CKEDITOR.ui.prototype.addButton=function(a,b){this.add(a,CKEDITOR.UI_BUTTON,b)}}(),CKEDITOR.plugins.add("richcombo",{requires:"floatpanel,listblock,button",beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_RICHCOMBO,CKEDITOR.ui.richCombo.handler)}}),function(){var a='<span id="{id}" class="cke_combo cke_combo__{name} {cls}" role="presentation"><span id="{id}_label" class="cke_combo_label">{label}</span><a class="cke_combo_button" title="{title}" tabindex="-1"'+(CKEDITOR.env.gecko&&!CKEDITOR.env.hc?"":" href=\"javascript:void('{titleJs}')\"")+' hidefocus="true" role="button" aria-labelledby="{id}_label" aria-haspopup="true"';CKEDITOR.env.gecko&&CKEDITOR.env.mac&&(a+=' onkeypress="return false;"'),CKEDITOR.env.gecko&&(a+=' onblur="this.style.cssText = this.style.cssText;"');var a=a+(' onkeydown="return CKEDITOR.tools.callFunction({keydownFn},event,this);" onfocus="return CKEDITOR.tools.callFunction({focusFn},event);" '+(CKEDITOR.env.ie?'onclick="return false;" onmouseup':"onclick")+'="CKEDITOR.tools.callFunction({clickFn},this);return false;"><span id="{id}_text" class="cke_combo_text cke_combo_inlinelabel">{label}</span><span class="cke_combo_open"><span class="cke_combo_arrow">'+(CKEDITOR.env.hc?"▼":CKEDITOR.env.air?" ":"")+"</span></span></a></span>"),b=CKEDITOR.addTemplate("combo",a);CKEDITOR.UI_RICHCOMBO="richcombo",CKEDITOR.ui.richCombo=CKEDITOR.tools.createClass({$:function(a){CKEDITOR.tools.extend(this,a,{canGroup:!1,title:a.label,modes:{wysiwyg:1},editorFocus:1}),a=this.panel||{},delete this.panel,this.id=CKEDITOR.tools.getNextNumber(),this.document=a.parent&&a.parent.getDocument()||CKEDITOR.document,a.className="cke_combopanel",a.block={multiSelect:a.multiSelect,attributes:a.attributes},a.toolbarRelated=!0,this._={panelDefinition:a,items:{}}},proto:{renderHtml:function(a){var b=[];return this.render(a,b),b.join("")},render:function(a,c){function d(){if(this.getState()!=CKEDITOR.TRISTATE_ON){var b=this.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED;a.readOnly&&!this.readOnly&&(b=CKEDITOR.TRISTATE_DISABLED),this.setState(b),this.setValue(""),b!=CKEDITOR.TRISTATE_DISABLED&&this.refresh&&this.refresh()}}var e=CKEDITOR.env,f="cke_"+this.id,g=CKEDITOR.tools.addFunction(function(b){l&&(a.unlockSelection(1),l=0),i.execute(b)},this),h=this,i={id:f,combo:this,focus:function(){CKEDITOR.document.getById(f).getChild(1).focus()},execute:function(b){var c=h._;if(c.state!=CKEDITOR.TRISTATE_DISABLED)if(h.createPanel(a),c.on)c.panel.hide();else{h.commit();var d=h.getValue();d?c.list.mark(d):c.list.unmarkAll(),c.panel.showBlock(h.id,new CKEDITOR.dom.element(b),4)}},clickFn:g};a.on("activeFilterChange",d,this),a.on("mode",d,this),a.on("selectionChange",d,this),!this.readOnly&&a.on("readOnly",d,this);var j=CKEDITOR.tools.addFunction(function(b,c){b=new CKEDITOR.dom.event(b);var d=b.getKeystroke();switch(40==d&&a.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)}),d){case 13:case 32:case 40:CKEDITOR.tools.callFunction(g,c);break;default:i.onkey(i,d)}b.preventDefault()}),k=CKEDITOR.tools.addFunction(function(){i.onfocus&&i.onfocus()}),l=0;return i.keyDownFn=j,e={id:f,name:this.name||this.command,label:this.label,title:this.title,cls:this.className||"",titleJs:e.gecko&&!e.hc?"":(this.title||"").replace("'",""),keydownFn:j,focusFn:k,clickFn:g},b.output(e,c),this.onRender&&this.onRender(),i},createPanel:function(a){if(!this._.panel){var b=this._.panelDefinition,c=this._.panelDefinition.block,d=b.parent||CKEDITOR.document.getBody(),e="cke_combopanel__"+this.name,f=new CKEDITOR.ui.floatPanel(a,d,b),g=f.addListBlock(this.id,c),h=this;f.onShow=function(){this.element.addClass(e),h.setState(CKEDITOR.TRISTATE_ON),h._.on=1,h.editorFocus&&!a.focusManager.hasFocus&&a.focus(),h.onOpen&&h.onOpen(),a.once("panelShow",function(){g.focus(!g.multiSelect&&h.getValue())})},f.onHide=function(b){this.element.removeClass(e),h.setState(h.modes&&h.modes[a.mode]?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),h._.on=0,!b&&h.onClose&&h.onClose()},f.onEscape=function(){f.hide(1)},g.onClick=function(a,b){h.onClick&&h.onClick.call(h,a,b),f.hide()},this._.panel=f,this._.list=g,f.getBlock(this.id).onHide=function(){h._.on=0,h.setState(CKEDITOR.TRISTATE_OFF)},this.init&&this.init()}},setValue:function(a,b){this._.value=a;var c=this.document.getById("cke_"+this.id+"_text");c&&(a||b?c.removeClass("cke_combo_inlinelabel"):(b=this.label,c.addClass("cke_combo_inlinelabel")),c.setText("undefined"!=typeof b?b:a))},getValue:function(){return this._.value||""},unmarkAll:function(){this._.list.unmarkAll()},mark:function(a){this._.list.mark(a)},hideItem:function(a){this._.list.hideItem(a)},hideGroup:function(a){this._.list.hideGroup(a)},showAll:function(){this._.list.showAll()},add:function(a,b,c){this._.items[a]=c||a,this._.list.add(a,b,c)},startGroup:function(a){this._.list.startGroup(a)},commit:function(){this._.committed||(this._.list.commit(),this._.committed=1,CKEDITOR.ui.fire("ready",this)),this._.committed=1},setState:function(a){if(this._.state!=a){var b=this.document.getById("cke_"+this.id);b.setState(a,"cke_combo"),a==CKEDITOR.TRISTATE_DISABLED?b.setAttribute("aria-disabled",!0):b.removeAttribute("aria-disabled"),this._.state=a}},getState:function(){return this._.state},enable:function(){this._.state==CKEDITOR.TRISTATE_DISABLED&&this.setState(this._.lastState)},disable:function(){this._.state!=CKEDITOR.TRISTATE_DISABLED&&(this._.lastState=this._.state,this.setState(CKEDITOR.TRISTATE_DISABLED))}},statics:{handler:{create:function(a){return new CKEDITOR.ui.richCombo(a)}}}}),CKEDITOR.ui.prototype.addRichCombo=function(a,b){this.add(a,CKEDITOR.UI_RICHCOMBO,b)}}(),CKEDITOR.plugins.add("format",{requires:"richcombo",init:function(a){if(!a.blockless){for(var b=a.config,c=a.lang.format,d=b.format_tags.split(";"),e={},f=0,g=[],h=0;h<d.length;h++){var i=d[h],j=new CKEDITOR.style(b["format_"+i]);a.filter.customConfig&&!a.filter.check(j)||(f++,e[i]=j,e[i]._.enterMode=a.config.enterMode,g.push(j))}0!==f&&a.ui.addRichCombo("Format",{label:c.label,title:c.panelTitle,toolbar:"styles,20",allowedContent:g,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(b.contentsCss),multiSelect:!1,attributes:{"aria-label":c.panelTitle}},init:function(){this.startGroup(c.panelTitle);for(var a in e){var b=c["tag_"+a];this.add(a,e[a].buildPreview(b),b)}},onClick:function(b){a.focus(),a.fire("saveSnapshot"),b=e[b];var c=a.elementPath();a[b.checkActive(c,a)?"removeStyle":"applyStyle"](b),setTimeout(function(){a.fire("saveSnapshot")},0)},onRender:function(){a.on("selectionChange",function(b){var c=this.getValue();b=b.data.path,this.refresh();for(var d in e)if(e[d].checkActive(b,a))return void(d!=c&&this.setValue(d,a.lang.format["tag_"+d]));this.setValue("")},this)},onOpen:function(){this.showAll();for(var b in e)a.activeFilter.check(e[b])||this.hideItem(b)},refresh:function(){var b=a.elementPath();if(b){if(b.isContextFor("p"))for(var c in e)if(a.activeFilter.check(e[c]))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}}})}}}),CKEDITOR.config.format_tags="p;h1;h2;h3;h4;h5;h6;pre;address;div",CKEDITOR.config.format_p={element:"p"},CKEDITOR.config.format_div={element:"div"},CKEDITOR.config.format_pre={element:"pre"},CKEDITOR.config.format_address={element:"address"},CKEDITOR.config.format_h1={element:"h1"},CKEDITOR.config.format_h2={element:"h2"},CKEDITOR.config.format_h3={element:"h3"},CKEDITOR.config.format_h4={element:"h4"},CKEDITOR.config.format_h5={element:"h5"},CKEDITOR.config.format_h6={element:"h6"},function(){var a={canUndo:!1,exec:function(a){var b=a.document.createElement("hr");a.insertElement(b)},allowedContent:"hr",requiredContent:"hr"};CKEDITOR.plugins.add("horizontalrule",{init:function(b){b.blockless||(b.addCommand("horizontalrule",a),b.ui.addButton&&b.ui.addButton("HorizontalRule",{label:b.lang.horizontalrule.toolbar,command:"horizontalrule",toolbar:"insert,40"}))}})}(),CKEDITOR.plugins.add("htmlwriter",{init:function(a){var b=new CKEDITOR.htmlWriter;b.forceSimpleAmpersand=a.config.forceSimpleAmpersand,b.indentationChars=a.config.dataIndentationChars||" ",a.dataProcessor.writer=b}}),CKEDITOR.htmlWriter=CKEDITOR.tools.createClass({base:CKEDITOR.htmlParser.basicWriter,$:function(){this.base(),this.indentationChars=" ",this.selfClosingEnd=" />",this.lineBreakChars="\n",this.sortAttributes=1,this._.indent=0,this._.indentation="",this._.inPre=0,this._.rules={};var a,b=CKEDITOR.dtd;for(a in CKEDITOR.tools.extend({},b.$nonBodyContent,b.$block,b.$listItem,b.$tableContent))this.setRules(a,{indent:!b[a]["#"],breakBeforeOpen:1,breakBeforeClose:!b[a]["#"],breakAfterClose:1,needsSpace:a in b.$block&&!(a in{li:1,dt:1,dd:1})});this.setRules("br",{breakAfterOpen:1}),this.setRules("title",{indent:0,breakAfterOpen:0}),this.setRules("style",{indent:0,breakBeforeClose:1}),this.setRules("pre",{breakAfterOpen:1,indent:0})},proto:{openTag:function(a){var b=this._.rules[a];this._.afterCloser&&b&&b.needsSpace&&this._.needsSpace&&this._.output.push("\n"),this._.indent?this.indentation():b&&b.breakBeforeOpen&&(this.lineBreak(),this.indentation()),this._.output.push("<",a),this._.afterCloser=0},openTagClose:function(a,b){var c=this._.rules[a];b?(this._.output.push(this.selfClosingEnd),c&&c.breakAfterClose&&(this._.needsSpace=c.needsSpace)):(this._.output.push(">"),c&&c.indent&&(this._.indentation+=this.indentationChars)),c&&c.breakAfterOpen&&this.lineBreak(),"pre"==a&&(this._.inPre=1)},attribute:function(a,b){"string"==typeof b&&(this.forceSimpleAmpersand&&(b=b.replace(/&/g,"&")),b=CKEDITOR.tools.htmlEncodeAttr(b)),this._.output.push(" ",a,'="',b,'"')},closeTag:function(a){var b=this._.rules[a];b&&b.indent&&(this._.indentation=this._.indentation.substr(this.indentationChars.length)),this._.indent?this.indentation():b&&b.breakBeforeClose&&(this.lineBreak(),this.indentation()),this._.output.push("</",a,">"),"pre"==a&&(this._.inPre=0),b&&b.breakAfterClose&&(this.lineBreak(),this._.needsSpace=b.needsSpace),this._.afterCloser=1},text:function(a){this._.indent&&(this.indentation(),!this._.inPre&&(a=CKEDITOR.tools.ltrim(a))),this._.output.push(a)},comment:function(a){this._.indent&&this.indentation(),this._.output.push("<!--",a,"-->")},lineBreak:function(){!this._.inPre&&0<this._.output.length&&this._.output.push(this.lineBreakChars),this._.indent=1},indentation:function(){!this._.inPre&&this._.indentation&&this._.output.push(this._.indentation),this._.indent=0},reset:function(){this._.output=[],this._.indent=0,this._.indentation="",this._.afterCloser=0,this._.inPre=0},setRules:function(a,b){var c=this._.rules[a];c?CKEDITOR.tools.extend(c,b,!0):this._.rules[a]=b}}}),function(){function a(a,b){return b||(b=a.getSelection().getSelectedElement()),b&&b.is("img")&&!b.data("cke-realelement")&&!b.isReadOnly()?b:void 0}function b(a){var b=a.getStyle("float");return"inherit"!=b&&"none"!=b||(b=0),b||(b=a.getAttribute("align")),b}CKEDITOR.plugins.add("image",{requires:"dialog",init:function(b){if(!b.plugins.image2){CKEDITOR.dialog.add("image",this.path+"dialogs/image.js");var c="img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}";CKEDITOR.dialog.isTabEnabled(b,"image","advanced")&&(c="img[alt,dir,id,lang,longdesc,!src,title]{*}(*)"),b.addCommand("image",new CKEDITOR.dialogCommand("image",{allowedContent:c,requiredContent:"img[alt,src]",contentTransformations:[["img{width}: sizeToStyle","img[width]: sizeToAttribute"],["img{float}: alignmentToStyle","img[align]: alignmentToAttribute"]]})),b.ui.addButton&&b.ui.addButton("Image",{label:b.lang.common.image,command:"image",toolbar:"insert,10"}),b.on("doubleclick",function(a){var b=a.data.element;!b.is("img")||b.data("cke-realelement")||b.isReadOnly()||(a.data.dialog="image")}),b.addMenuItems&&b.addMenuItems({image:{label:b.lang.image.menu,command:"image",group:"image"}}),b.contextMenu&&b.contextMenu.addListener(function(c){return a(b,c)?{image:CKEDITOR.TRISTATE_OFF}:void 0})}},afterInit:function(c){function d(d){var e=c.getCommand("justify"+d);e&&("left"!=d&&"right"!=d||e.on("exec",function(e){var f,g=a(c);g&&(f=b(g),f==d?(g.removeStyle("float"),d==b(g)&&g.removeAttribute("align")):g.setStyle("float",d),e.cancel())}),e.on("refresh",function(e){var f=a(c);f&&(f=b(f),this.setState(f==d?CKEDITOR.TRISTATE_ON:"right"==d||"left"==d?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),e.cancel())}))}c.plugins.image2||(d("left"),d("right"),d("center"),d("block"))}})}(),CKEDITOR.config.image_removeLinkByEmptyURL=!0,function(){function a(a,b){var c=d.exec(a),e=d.exec(b);if(c){if(!c[2]&&"px"==e[2])return e[1];if("px"==c[2]&&!e[2])return e[1]+"px"}return b}var b=CKEDITOR.htmlParser.cssStyle,c=CKEDITOR.tools.cssLength,d=/^((?:\d*(?:\.\d+))|(?:\d+))(.*)?$/i,e={elements:{$:function(c){var d=c.attributes;if((d=(d=(d=d&&d["data-cke-realelement"])&&new CKEDITOR.htmlParser.fragment.fromHtml(decodeURIComponent(d)))&&d.children[0])&&c.attributes["data-cke-resizable"]){var e=new b(c).rules;c=d.attributes;var f=e.width,e=e.height;f&&(c.width=a(c.width,f)),e&&(c.height=a(c.height,e))}return d}}};CKEDITOR.plugins.add("fakeobjects",{init:function(a){a.filter.allow("img[!data-cke-realelement,src,alt,title](*){*}","fakeobjects")},afterInit:function(a){(a=(a=a.dataProcessor)&&a.htmlFilter)&&a.addRules(e,{applyToAll:!0})}}),CKEDITOR.editor.prototype.createFakeElement=function(a,d,e,f){ -var g=this.lang.fakeobjects,g=g[e]||g.unknown;return d={"class":d,"data-cke-realelement":encodeURIComponent(a.getOuterHtml()),"data-cke-real-node-type":a.type,alt:g,title:g,align:a.getAttribute("align")||""},CKEDITOR.env.hc||(d.src=CKEDITOR.tools.transparentImageData),e&&(d["data-cke-real-element-type"]=e),f&&(d["data-cke-resizable"]=f,e=new b,f=a.getAttribute("width"),a=a.getAttribute("height"),f&&(e.rules.width=c(f)),a&&(e.rules.height=c(a)),e.populate(d)),this.document.createElement("img",{attributes:d})},CKEDITOR.editor.prototype.createFakeParserElement=function(a,d,e,f){var g,h=this.lang.fakeobjects,h=h[e]||h.unknown;return g=new CKEDITOR.htmlParser.basicWriter,a.writeHtml(g),g=g.getHtml(),d={"class":d,"data-cke-realelement":encodeURIComponent(g),"data-cke-real-node-type":a.type,alt:h,title:h,align:a.attributes.align||""},CKEDITOR.env.hc||(d.src=CKEDITOR.tools.transparentImageData),e&&(d["data-cke-real-element-type"]=e),f&&(d["data-cke-resizable"]=f,f=a.attributes,a=new b,e=f.width,f=f.height,void 0!==e&&(a.rules.width=c(e)),void 0!==f&&(a.rules.height=c(f)),a.populate(d)),new CKEDITOR.htmlParser.element("img",d)},CKEDITOR.editor.prototype.restoreRealElement=function(b){if(b.data("cke-real-node-type")!=CKEDITOR.NODE_ELEMENT)return null;var c=CKEDITOR.dom.element.createFromHtml(decodeURIComponent(b.data("cke-realelement")),this.document);if(b.data("cke-resizable")){var d=b.getStyle("width");b=b.getStyle("height"),d&&c.setAttribute("width",a(c.getAttribute("width"),d)),b&&c.setAttribute("height",a(c.getAttribute("height"),b))}return c}}(),function(){function a(a){return a.replace(/'/g,"\\$&")}function b(a){for(var b,c=a.length,d=[],e=0;c>e;e++)b=a.charCodeAt(e),d.push(b);return"String.fromCharCode("+d.join(",")+")"}function c(b,c){var d,e,f=b.plugins.link,g=f.compiledProtectionFunction.params;e=[f.compiledProtectionFunction.name,"("];for(var h=0;h<g.length;h++)f=g[h].toLowerCase(),d=c[f],h>0&&e.push(","),e.push("'",d?a(encodeURIComponent(c[f])):"","'");return e.push(")"),e.join("")}function d(a){a=a.config.emailProtection||"";var b;return a&&"encode"!=a&&(b={},a.replace(/^([^(]+)\(([^)]+)\)$/,function(a,c,d){b.name=c,b.params=[],d.replace(/[^,\s]+/g,function(a){b.params.push(a)})})),b}CKEDITOR.plugins.add("link",{requires:"dialog,fakeobjects",onLoad:function(){function a(a){return c.replace(/%1/g,"rtl"==a?"right":"left").replace(/%2/g,"cke_contents_"+a)}var b="background:url("+CKEDITOR.getUrl(this.path+"images"+(CKEDITOR.env.hidpi?"/hidpi":"")+"/anchor.png")+") no-repeat %1 center;border:1px dotted #00f;background-size:16px;",c=".%2 a.cke_anchor,.%2 a.cke_anchor_empty,.cke_editable.%2 a[name],.cke_editable.%2 a[data-cke-saved-name]{"+b+"padding-%1:18px;cursor:auto;}.%2 img.cke_anchor{"+b+"width:16px;min-height:15px;height:1.15em;vertical-align:text-bottom;}";CKEDITOR.addCss(a("ltr")+a("rtl"))},init:function(a){var b="a[!href]";CKEDITOR.dialog.isTabEnabled(a,"link","advanced")&&(b=b.replace("]",",accesskey,charset,dir,id,lang,name,rel,tabindex,title,type]{*}(*)")),CKEDITOR.dialog.isTabEnabled(a,"link","target")&&(b=b.replace("]",",target,onclick]")),a.addCommand("link",new CKEDITOR.dialogCommand("link",{allowedContent:b,requiredContent:"a[href]"})),a.addCommand("anchor",new CKEDITOR.dialogCommand("anchor",{allowedContent:"a[!name,id]",requiredContent:"a[name]"})),a.addCommand("unlink",new CKEDITOR.unlinkCommand),a.addCommand("removeAnchor",new CKEDITOR.removeAnchorCommand),a.setKeystroke(CKEDITOR.CTRL+76,"link"),a.ui.addButton&&(a.ui.addButton("Link",{label:a.lang.link.toolbar,command:"link",toolbar:"links,10"}),a.ui.addButton("Unlink",{label:a.lang.link.unlink,command:"unlink",toolbar:"links,20"}),a.ui.addButton("Anchor",{label:a.lang.link.anchor.toolbar,command:"anchor",toolbar:"links,30"})),CKEDITOR.dialog.add("link",this.path+"dialogs/link.js"),CKEDITOR.dialog.add("anchor",this.path+"dialogs/anchor.js"),a.on("doubleclick",function(b){var c=CKEDITOR.plugins.link.getSelectedLink(a)||b.data.element;c.isReadOnly()||(c.is("a")?(b.data.dialog=!c.getAttribute("name")||c.getAttribute("href")&&c.getChildCount()?"link":"anchor",b.data.link=c):CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,c)&&(b.data.dialog="anchor"))},null,null,0),a.on("doubleclick",function(b){b.data.dialog in{link:1,anchor:1}&&b.data.link&&a.getSelection().selectElement(b.data.link)},null,null,20),a.addMenuItems&&a.addMenuItems({anchor:{label:a.lang.link.anchor.menu,command:"anchor",group:"anchor",order:1},removeAnchor:{label:a.lang.link.anchor.remove,command:"removeAnchor",group:"anchor",order:5},link:{label:a.lang.link.menu,command:"link",group:"link",order:1},unlink:{label:a.lang.link.unlink,command:"unlink",group:"link",order:5}}),a.contextMenu&&a.contextMenu.addListener(function(b){if(!b||b.isReadOnly())return null;if(b=CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b),!b&&!(b=CKEDITOR.plugins.link.getSelectedLink(a)))return null;var c={};return b.getAttribute("href")&&b.getChildCount()&&(c={link:CKEDITOR.TRISTATE_OFF,unlink:CKEDITOR.TRISTATE_OFF}),b&&b.hasAttribute("name")&&(c.anchor=c.removeAnchor=CKEDITOR.TRISTATE_OFF),c}),this.compiledProtectionFunction=d(a)},afterInit:function(a){a.dataProcessor.dataFilter.addRules({elements:{a:function(b){return b.attributes.name?b.children.length?null:a.createFakeParserElement(b,"cke_anchor","anchor"):null}}});var b=a._.elementsPath&&a._.elementsPath.filters;b&&b.push(function(b,c){return"a"!=c||!CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b)&&(!b.getAttribute("name")||b.getAttribute("href")&&b.getChildCount())?void 0:"anchor"})}});var e=/^javascript:/,f=/^mailto:([^?]+)(?:\?(.+))?$/,g=/subject=([^;?:@&=$,\/]*)/i,h=/body=([^;?:@&=$,\/]*)/i,i=/^#(.*)$/,j=/^((?:http|https|ftp|news):\/\/)?(.*)$/,k=/^(_(?:self|top|parent|blank))$/,l=/^javascript:void\(location\.href='mailto:'\+String\.fromCharCode\(([^)]+)\)(?:\+'(.*)')?\)$/,m=/^javascript:([^(]+)\(([^)]+)\)$/,n=/\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*/,o=/(?:^|,)([^=]+)=(\d+|yes|no)/gi,p={id:"advId",dir:"advLangDir",accessKey:"advAccessKey",name:"advName",lang:"advLangCode",tabindex:"advTabIndex",title:"advTitle",type:"advContentType","class":"advCSSClasses",charset:"advCharset",style:"advStyles",rel:"advRel"};CKEDITOR.plugins.link={getSelectedLink:function(a){var b=a.getSelection(),c=b.getSelectedElement();return c&&c.is("a")?c:(b=b.getRanges()[0])?(b.shrink(CKEDITOR.SHRINK_TEXT),a.elementPath(b.getCommonAncestor()).contains("a",1)):null},getEditorAnchors:function(a){for(var b,c=a.editable(),d=c.isInline()&&!a.plugins.divarea?a.document:c,c=d.getElementsByTag("a"),d=d.getElementsByTag("img"),e=[],f=0;b=c.getItem(f++);)(b.data("cke-saved-name")||b.hasAttribute("name"))&&e.push({name:b.data("cke-saved-name")||b.getAttribute("name"),id:b.getAttribute("id")});for(f=0;b=d.getItem(f++);)(b=this.tryRestoreFakeAnchor(a,b))&&e.push({name:b.getAttribute("name"),id:b.getAttribute("id")});return e},fakeAnchor:!0,tryRestoreFakeAnchor:function(a,b){if(b&&b.data("cke-real-element-type")&&"anchor"==b.data("cke-real-element-type")){var c=a.restoreRealElement(b);if(c.data("cke-saved-name"))return c}},parseLinkAttributes:function(a,b){var c,d=b&&(b.data("cke-saved-href")||b.getAttribute("href"))||"",q=a.plugins.link.compiledProtectionFunction,r=a.config.emailProtection,s={};if(d.match(e)&&("encode"==r?d=d.replace(l,function(a,b,c){return c=c||"","mailto:"+String.fromCharCode.apply(String,b.split(","))+c.replace(/\\'/g,"'")}):r&&d.replace(m,function(a,b,c){if(b==q.name){s.type="email",a=s.email={},b=/(^')|('$)/g,c=c.match(/[^,\s]+/g);for(var d,e,f=c.length,g=0;f>g;g++)d=decodeURIComponent,e=c[g].replace(b,"").replace(/\\'/g,"'"),e=d(e),d=q.params[g].toLowerCase(),a[d]=e;a.address=[a.name,a.domain].join("@")}})),!s.type)if(r=d.match(i))s.type="anchor",s.anchor={},s.anchor.name=s.anchor.id=r[1];else if(r=d.match(f)){c=d.match(g),d=d.match(h),s.type="email";var t=s.email={};t.address=r[1],c&&(t.subject=decodeURIComponent(c[1])),d&&(t.body=decodeURIComponent(d[1]))}else d&&(c=d.match(j))&&(s.type="url",s.url={},s.url.protocol=c[1],s.url.url=c[2]);if(b){if(d=b.getAttribute("target"))s.target={type:d.match(k)?d:"frame",name:d};else if(d=(d=b.data("cke-pa-onclick")||b.getAttribute("onclick"))&&d.match(n))for(s.target={type:"popup",name:d[1]};r=o.exec(d[2]);)"yes"!=r[2]&&"1"!=r[2]||r[1]in{height:1,width:1,top:1,left:1}?isFinite(r[2])&&(s.target[r[1]]=r[2]):s.target[r[1]]=!0;var u,d={};for(u in p)(r=b.getAttribute(u))&&(d[p[u]]=r);(u=b.data("cke-saved-name")||d.advName)&&(d.advName=u),CKEDITOR.tools.isEmpty(d)||(s.advanced=d)}return s},getLinkAttributes:function(d,e){var f=d.config.emailProtection||"",g={};switch(e.type){case"url":var f=e.url&&void 0!==e.url.protocol?e.url.protocol:"http://",h=e.url&&CKEDITOR.tools.trim(e.url.url)||"";g["data-cke-saved-href"]=0===h.indexOf("/")?h:f+h;break;case"anchor":f=e.anchor&&e.anchor.id,g["data-cke-saved-href"]="#"+(e.anchor&&e.anchor.name||f||"");break;case"email":var i=e.email,h=i.address;switch(f){case"":case"encode":var j=encodeURIComponent(i.subject||""),k=encodeURIComponent(i.body||""),i=[];j&&i.push("subject="+j),k&&i.push("body="+k),i=i.length?"?"+i.join("&"):"","encode"==f?(f=["javascript:void(location.href='mailto:'+",b(h)],i&&f.push("+'",a(i),"'"),f.push(")")):f=["mailto:",h,i];break;default:f=h.split("@",2),i.name=f[0],i.domain=f[1],f=["javascript:",c(d,i)]}g["data-cke-saved-href"]=f.join("")}if(e.target)if("popup"==e.target.type){for(var f=["window.open(this.href, '",e.target.name||"","', '"],l="resizable status location toolbar menubar fullscreen scrollbars dependent".split(" "),h=l.length,j=function(a){e.target[a]&&l.push(a+"="+e.target[a])},i=0;h>i;i++)l[i]+=e.target[l[i]]?"=yes":"=no";j("width"),j("left"),j("height"),j("top"),f.push(l.join(","),"'); return false;"),g["data-cke-pa-onclick"]=f.join("")}else"notSet"!=e.target.type&&e.target.name&&(g.target=e.target.name);if(e.advanced){for(var m in p)(f=e.advanced[p[m]])&&(g[m]=f);g.name&&(g["data-cke-saved-name"]=g.name)}g["data-cke-saved-href"]&&(g.href=g["data-cke-saved-href"]),m={target:1,onclick:1,"data-cke-pa-onclick":1,"data-cke-saved-name":1},e.advanced&&CKEDITOR.tools.extend(m,p);for(var n in g)delete m[n];return{set:g,removed:CKEDITOR.tools.objectKeys(m)}}},CKEDITOR.unlinkCommand=function(){},CKEDITOR.unlinkCommand.prototype={exec:function(a){var b=new CKEDITOR.style({element:"a",type:CKEDITOR.STYLE_INLINE,alwaysRemoveElement:1});a.removeStyle(b)},refresh:function(a,b){var c=b.lastElement&&b.lastElement.getAscendant("a",!0);c&&"a"==c.getName()&&c.getAttribute("href")&&c.getChildCount()?this.setState(CKEDITOR.TRISTATE_OFF):this.setState(CKEDITOR.TRISTATE_DISABLED)},contextSensitive:1,startDisabled:1,requiredContent:"a[href]"},CKEDITOR.removeAnchorCommand=function(){},CKEDITOR.removeAnchorCommand.prototype={exec:function(a){var b,c=a.getSelection(),d=c.createBookmarks();c&&(b=c.getSelectedElement())&&(b.getChildCount()?b.is("a"):CKEDITOR.plugins.link.tryRestoreFakeAnchor(a,b))?b.remove(1):(b=CKEDITOR.plugins.link.getSelectedLink(a))&&(b.hasAttribute("href")?(b.removeAttributes({name:1,"data-cke-saved-name":1}),b.removeClass("cke_anchor")):b.remove(1)),c.selectBookmarks(d)},requiredContent:"a[name]"},CKEDITOR.tools.extend(CKEDITOR.config,{linkShowAdvancedTab:!0,linkShowTargetTab:!0})}(),function(){function a(a,b,c){return l(b)&&l(c)&&c.equals(b.getNext(function(a){return!(W(a)||X(a)||m(a))}))}function b(a){this.upper=a[0],this.lower=a[1],this.set.apply(this,a.slice(2))}function c(a){var b=a.element;if(b&&l(b)&&(b=b.getAscendant(a.triggers,!0))&&a.editable.contains(b)){var c=g(b);if("true"==c.getAttribute("contenteditable"))return b;if(c.is(a.triggers))return c}return null}function d(a,b,c){return u(a,b),u(a,c),a=b.size.bottom,c=c.size.top,a&&c?0|(a+c)/2:a||c}function e(a,b,c){return b=b[c?"getPrevious":"getNext"](function(b){return b&&b.type==CKEDITOR.NODE_TEXT&&!W(b)||l(b)&&!m(b)&&!k(a,b)})}function f(a,b,c){return a>b&&c>a}function g(a,b){if(a.data("cke-editable"))return null;for(b||(a=a.getParent());a&&!a.data("cke-editable");){if(a.hasAttribute("contenteditable"))return a;a=a.getParent()}return null}function h(a){var b=a.doc,c=A('<span contenteditable="false" style="'+S+"position:absolute;border-top:1px dashed "+a.boxColor+'"></span>',b),d=CKEDITOR.getUrl(this.path+"images/"+(B.hidpi?"hidpi/":"")+"icon"+(a.rtl?"-rtl":"")+".png");for(y(c,{attach:function(){return this.wrap.getParent()||this.wrap.appendTo(a.editable,!0),this},lineChildren:[y(A('<span title="'+a.editor.lang.magicline.title+'" contenteditable="false">↵</span>',b),{base:S+"height:17px;width:17px;"+(a.rtl?"left":"right")+":17px;background:url("+d+") center no-repeat "+a.boxColor+";cursor:pointer;"+(B.hc?"font-size: 15px;line-height:14px;border:1px solid #fff;text-align:center;":"")+(B.hidpi?"background-size: 9px 10px;":""),looks:["top:-8px; border-radius: 2px;","top:-17px; border-radius: 2px 2px 0px 0px;","top:-1px; border-radius: 0px 0px 2px 2px;"]}),y(A(U,b),{base:T+"left:0px;border-left-color:"+a.boxColor+";",looks:["border-width:8px 0 8px 8px;top:-8px","border-width:8px 0 0 8px;top:-8px","border-width:0 0 8px 8px;top:0px"]}),y(A(U,b),{base:T+"right:0px;border-right-color:"+a.boxColor+";",looks:["border-width:8px 8px 8px 0;top:-8px","border-width:8px 8px 0 0;top:-8px","border-width:0 8px 8px 0;top:0px"]})],detach:function(){return this.wrap.getParent()&&this.wrap.remove(),this},mouseNear:function(){u(a,this);var b=a.holdDistance,c=this.size;return!!(c&&f(a.mouse.y,c.top-b,c.bottom+b)&&f(a.mouse.x,c.left-b,c.right+b))},place:function(){var b=a.view,c=a.editable,d=a.trigger,e=d.upper,g=d.lower,h=e||g,i=h.getParent(),j={};this.trigger=d,e&&u(a,e,!0),g&&u(a,g,!0),u(a,i,!0),a.inInlineMode&&v(a,!0),i.equals(c)?(j.left=b.scroll.x,j.right=-b.scroll.x,j.width=""):(j.left=h.size.left-h.size.margin.left+b.scroll.x-(a.inInlineMode?b.editable.left+b.editable.border.left:0),j.width=h.size.outerWidth+h.size.margin.left+h.size.margin.right+b.scroll.x,j.right=""),e&&g?j.top=e.size.margin.bottom===g.size.margin.top?0|e.size.bottom+e.size.margin.bottom/2:e.size.margin.bottom<g.size.margin.top?e.size.bottom+e.size.margin.bottom:e.size.bottom+e.size.margin.bottom-g.size.margin.top:e?g||(j.top=e.size.bottom+e.size.margin.bottom):j.top=g.size.top-g.size.margin.top,d.is(J)||f(j.top,b.scroll.y-15,b.scroll.y+5)?(j.top=a.inInlineMode?0:b.scroll.y,this.look(J)):d.is(K)||f(j.top,b.pane.bottom-5,b.pane.bottom+15)?(j.top=a.inInlineMode?b.editable.height+b.editable.padding.top+b.editable.padding.bottom:b.pane.bottom-1,this.look(K)):(a.inInlineMode&&(j.top-=b.editable.top+b.editable.border.top),this.look(L)),a.inInlineMode&&(j.top--,j.top+=b.editable.scroll.top,j.left+=b.editable.scroll.left);for(var k in j)j[k]=CKEDITOR.tools.cssLength(j[k]);this.setStyles(j)},look:function(a){if(this.oldLook!=a){for(var b,c=this.lineChildren.length;c--;)(b=this.lineChildren[c]).setAttribute("style",b.base+b.looks[0|a/2]);this.oldLook=a}},wrap:new z("span",a.doc)}),b=c.lineChildren.length;b--;)c.lineChildren[b].appendTo(c);c.look(L),c.appendTo(c.wrap),c.unselectable(),c.lineChildren[0].on("mouseup",function(b){c.detach(),i(a,function(b){var c=a.line.trigger;b[c.is(F)?"insertBefore":"insertAfter"](c.is(F)?c.lower:c.upper)},!0),a.editor.focus(),B.ie||a.enterMode==CKEDITOR.ENTER_BR||a.hotNode.scrollIntoView(),b.data.preventDefault(!0)}),c.on("mousedown",function(a){a.data.preventDefault(!0)}),a.line=c}function i(a,b,c){var d,e=new CKEDITOR.dom.range(a.doc),f=a.editor;B.ie&&a.enterMode==CKEDITOR.ENTER_BR?d=a.doc.createText(M):(d=(d=g(a.element,!0))&&d.data("cke-enter-mode")||a.enterMode,d=new z(E[d],a.doc),d.is("br")||a.doc.createText(M).appendTo(d)),c&&f.fire("saveSnapshot"),b(d),e.moveToPosition(d,CKEDITOR.POSITION_AFTER_START),f.getSelection().selectRanges([e]),a.hotNode=d,c&&f.fire("saveSnapshot")}function j(a,b){return{canUndo:!0,modes:{wysiwyg:1},exec:function(){function d(c){var d=B.ie&&9>B.version?" ":M,e=a.hotNode&&a.hotNode.getText()==d&&a.element.equals(a.hotNode)&&a.lastCmdDirection===!!b;i(a,function(d){e&&a.hotNode&&a.hotNode.remove(),d[b?"insertAfter":"insertBefore"](c),d.setAttributes({"data-cke-magicline-hot":1,"data-cke-magicline-dir":!!b}),a.lastCmdDirection=!!b}),B.ie||a.enterMode==CKEDITOR.ENTER_BR||a.hotNode.scrollIntoView(),a.line.detach()}return function(f){f=f.getSelection().getStartElement();var h;if(f=f.getAscendant(Q,1),!p(a,f)&&f&&!f.equals(a.editable)&&!f.contains(a.editable)){(h=g(f))&&"false"==h.getAttribute("contenteditable")&&(f=h),a.element=f,h=e(a,f,!b);var i;l(h)&&h.is(a.triggers)&&h.is(P)&&(!e(a,h,!b)||(i=e(a,h,!b))&&l(i)&&i.is(a.triggers))?d(h):(i=c(a,f),l(i)&&(e(a,i,!b)?(f=e(a,i,!b))&&l(f)&&f.is(a.triggers)&&d(i):d(i)))}}}()}}function k(a,b){if(!b||b.type!=CKEDITOR.NODE_ELEMENT||!b.$)return!1;var c=a.line;return c.wrap.equals(b)||c.wrap.contains(b)}function l(a){return a&&a.type==CKEDITOR.NODE_ELEMENT&&a.$}function m(a){if(!l(a))return!1;var b;return(b=n(a))||(l(a)?(b={left:1,right:1,center:1},b=!(!b[a.getComputedStyle("float")]&&!b[a.getAttribute("align")])):b=!1),b}function n(a){return!!{absolute:1,fixed:1}[a.getComputedStyle("position")]}function o(a,b){return l(b)?b.is(a.triggers):null}function p(a,b){if(!b)return!1;for(var c=b.getParents(1),d=c.length;d--;)for(var e=a.tabuList.length;e--;)if(c[d].hasAttribute(a.tabuList[e]))return!0;return!1}function q(a,b,c){return(b=b[c?"getLast":"getFirst"](function(b){return a.isRelevant(b)&&!b.is(O)}))?(u(a,b),c?b.size.top>a.mouse.y:b.size.bottom<a.mouse.y):!1}function r(a){var c=a.editable,d=a.mouse,e=a.view,g=a.triggerOffset;v(a);var h=d.y>(a.inInlineMode?e.editable.top+e.editable.height/2:Math.min(e.editable.height,e.pane.height)/2),c=c[h?"getLast":"getFirst"](function(a){return!(W(a)||X(a))});return c?(k(a,c)&&(c=a.line.wrap[h?"getPrevious":"getNext"](function(a){return!(W(a)||X(a))})),l(c)&&!m(c)&&o(a,c)?(u(a,c),!h&&0<=c.size.top&&f(d.y,0,c.size.top+g)?(a=a.inInlineMode||0===e.scroll.y?J:L,new b([null,c,F,I,a])):h&&c.size.bottom<=e.pane.height&&f(d.y,c.size.bottom-g,e.pane.height)?(a=a.inInlineMode||f(c.size.bottom,e.pane.height-g,e.pane.height)?K:L,new b([c,null,G,I,a])):null):null):null}function s(a){var d=a.mouse,g=a.view,h=a.triggerOffset,i=c(a);if(!i)return null;u(a,i);var j,k,h=Math.min(h,0|i.size.outerHeight/2),n=[];if(f(d.y,i.size.top-1,i.size.top+h))k=!1;else{if(!f(d.y,i.size.bottom-h,i.size.bottom+1))return null;k=!0}if(m(i)||q(a,i,k)||i.getParent().is(N))return null;var p=e(a,i,!k);if(p){if(p&&p.type==CKEDITOR.NODE_TEXT)return null;if(l(p)){if(m(p)||!o(a,p)||p.getParent().is(N))return null;n=[p,i][k?"reverse":"concat"]().concat([H,I])}}else i.equals(a.editable[k?"getLast":"getFirst"](a.isRelevant))?(v(a),k&&f(d.y,i.size.bottom-h,g.pane.height)&&f(i.size.bottom,g.pane.height-h,g.pane.height)?j=K:f(d.y,0,i.size.top+h)&&(j=J)):j=L,n=[null,i][k?"reverse":"concat"]().concat([k?G:F,I,j,i.equals(a.editable[k?"getLast":"getFirst"](a.isRelevant))?k?K:J:L]);return 0 in n?new b(n):null}function t(a,b,c,d){for(var e=b.getDocumentPosition(),f={},g={},h={},i={},j=Z.length;j--;)f[Z[j]]=parseInt(b.getComputedStyle.call(b,"border-"+Z[j]+"-width"),10)||0,h[Z[j]]=parseInt(b.getComputedStyle.call(b,"padding-"+Z[j]),10)||0,g[Z[j]]=parseInt(b.getComputedStyle.call(b,"margin-"+Z[j]),10)||0;return c&&!d||w(a,d),i.top=e.y-(c?0:a.view.scroll.y),i.left=e.x-(c?0:a.view.scroll.x),i.outerWidth=b.$.offsetWidth,i.outerHeight=b.$.offsetHeight,i.height=i.outerHeight-(h.top+h.bottom+f.top+f.bottom),i.width=i.outerWidth-(h.left+h.right+f.left+f.right),i.bottom=i.top+i.outerHeight,i.right=i.left+i.outerWidth,a.inInlineMode&&(i.scroll={top:b.$.scrollTop,left:b.$.scrollLeft}),y({border:f,padding:h,margin:g,ignoreScroll:c},i,!0)}function u(a,b,c){if(!l(b))return b.size=null;if(b.size){if(b.size.ignoreScroll==c&&b.size.date>new Date-R)return null}else b.size={};return y(b.size,t(a,b,c),{date:+new Date},!0)}function v(a,b){a.view.editable=t(a,a.editable,b,!0)}function w(a,b){a.view||(a.view={});var c=a.view;if(!(!b&&c&&c.date>new Date-R)){var d=a.win,c=d.getScrollPosition(),d=d.getViewPaneSize();y(a.view,{scroll:{x:c.x,y:c.y,width:a.doc.$.documentElement.scrollWidth-d.width,height:a.doc.$.documentElement.scrollHeight-d.height},pane:{width:d.width,height:d.height,bottom:d.height+c.y},date:+new Date},!0)}}function x(a,c,d,e){for(var f=e,g=e,h=0,i=!1,j=!1,k=a.view.pane.height,l=a.mouse;l.y+h<k&&0<l.y-h&&(i||(i=c(f,e)),j||(j=c(g,e)),!i&&0<l.y-h&&(f=d(a,{x:l.x,y:l.y-h})),!j&&l.y+h<k&&(g=d(a,{x:l.x,y:l.y+h})),!i||!j);)h+=2;return new b([f,g,null,null])}CKEDITOR.plugins.add("magicline",{init:function(a){var d,f,g,o=a.config,q=o.magicline_triggerOffset||30,u={editor:a,enterMode:o.enterMode,triggerOffset:q,holdDistance:0|q*(o.magicline_holdDistance||.5),boxColor:o.magicline_color||"#ff0000",rtl:"rtl"==o.contentsLangDirection,tabuList:["data-cke-hidden-sel"].concat(o.magicline_tabuList||[]),triggers:o.magicline_everywhere?Q:{table:1,hr:1,div:1,ul:1,ol:1,dl:1,form:1,blockquote:1}};u.isRelevant=function(a){return l(a)&&!k(u,a)&&!m(a)},a.on("contentDom",function(){var l=a.editable(),m=a.document,q=a.window;y(u,{editable:l,inInlineMode:l.isInline(),doc:m,win:q,hotNode:null},!0),u.boundary=u.inInlineMode?u.editable:u.doc.getDocumentElement(),l.is(D.$inline)||(u.inInlineMode&&!n(l)&&l.setStyles({position:"relative",top:null,left:null}),h.call(this,u),w(u),l.attachListener(a,"beforeUndoImage",function(){u.line.detach()}),l.attachListener(a,"beforeGetData",function(){u.line.wrap.getParent()&&(u.line.detach(),a.once("getData",function(){u.line.attach()},null,null,1e3))},null,null,0),l.attachListener(u.inInlineMode?m:m.getWindow().getFrame(),"mouseout",function(b){if("wysiwyg"==a.mode)if(u.inInlineMode){var c=b.data.$.clientX;b=b.data.$.clientY,w(u),v(u,!0);var d=u.view.editable,e=u.view.scroll;c>d.left-e.x&&c<d.right-e.x&&b>d.top-e.y&&b<d.bottom-e.y||(clearTimeout(g),g=null,u.line.detach())}else clearTimeout(g),g=null,u.line.detach()}),l.attachListener(l,"keyup",function(){u.hiddenMode=0}),l.attachListener(l,"keydown",function(b){if("wysiwyg"==a.mode)switch(b.data.getKeystroke()){case 2228240:case 16:u.hiddenMode=1,u.line.detach()}}),l.attachListener(u.inInlineMode?l:m,"mousemove",function(b){if(f=!0,"wysiwyg"==a.mode&&!a.readOnly&&!g){var c={x:b.data.$.clientX,y:b.data.$.clientY};g=setTimeout(function(){u.mouse=c,g=u.trigger=null,w(u),f&&!u.hiddenMode&&a.focusManager.hasFocus&&!u.line.mouseNear()&&(u.element=V(u,!0))&&((u.trigger=r(u)||s(u)||Y(u))&&!p(u,u.trigger.upper||u.trigger.lower)?u.line.attach().place():(u.trigger=null,u.line.detach()),f=!1)},30)}}),l.attachListener(q,"scroll",function(){"wysiwyg"==a.mode&&(u.line.detach(),B.webkit&&(u.hiddenMode=1,clearTimeout(d),d=setTimeout(function(){u.mouseDown||(u.hiddenMode=0)},50)))}),l.attachListener(C?m:q,"mousedown",function(){"wysiwyg"==a.mode&&(u.line.detach(),u.hiddenMode=1,u.mouseDown=1)}),l.attachListener(C?m:q,"mouseup",function(){u.hiddenMode=0,u.mouseDown=0}),a.addCommand("accessPreviousSpace",j(u)),a.addCommand("accessNextSpace",j(u,!0)),a.setKeystroke([[o.magicline_keystrokePrevious,"accessPreviousSpace"],[o.magicline_keystrokeNext,"accessNextSpace"]]),a.on("loadSnapshot",function(){var b,c,d,e;for(e in{p:1,br:1,div:1})for(b=a.document.getElementsByTag(e),d=b.count();d--;)if((c=b.getItem(d)).data("cke-magicline-hot"))return u.hotNode=c,void(u.lastCmdDirection="true"===c.data("cke-magicline-dir"))}),this.backdoor={accessFocusSpace:i,boxTrigger:b,isLine:k,getAscendantTrigger:c,getNonEmptyNeighbour:e,getSize:t,that:u,triggerEdge:s,triggerEditable:r,triggerExpand:Y})},this)}});var y=CKEDITOR.tools.extend,z=CKEDITOR.dom.element,A=z.createFromHtml,B=CKEDITOR.env,C=CKEDITOR.env.ie&&9>CKEDITOR.env.version,D=CKEDITOR.dtd,E={},F=128,G=64,H=32,I=16,J=4,K=2,L=1,M=" ",N=D.$listItem,O=D.$tableContent,P=y({},D.$nonEditable,D.$empty),Q=D.$block,R=100,S="width:0px;height:0px;padding:0px;margin:0px;display:block;z-index:9999;color:#fff;position:absolute;font-size: 0px;line-height:0px;",T=S+"border-color:transparent;display:block;border-style:solid;",U="<span>"+M+"</span>";E[CKEDITOR.ENTER_BR]="br",E[CKEDITOR.ENTER_P]="p",E[CKEDITOR.ENTER_DIV]="div",b.prototype={set:function(a,b,c){return this.properties=a+b+(c||L),this},is:function(a){return(this.properties&a)==a}};var V=function(){function a(a,b){var c=a.$.elementFromPoint(b.x,b.y);return c&&c.nodeType?new CKEDITOR.dom.element(c):null}return function(b,c,d){if(!b.mouse)return null;var e=b.doc,f=b.line.wrap;d=d||b.mouse;var g=a(e,d);return c&&k(b,g)&&(f.hide(),g=a(e,d),f.show()),!g||g.type!=CKEDITOR.NODE_ELEMENT||!g.$||B.ie&&9>B.version&&!b.boundary.equals(g)&&!b.boundary.contains(g)?null:g}}(),W=CKEDITOR.dom.walker.whitespaces(),X=CKEDITOR.dom.walker.nodeType(CKEDITOR.NODE_COMMENT),Y=function(){function b(b){var e,g,h,i=b.element;if(!l(i)||i.contains(b.editable)||i.isReadOnly())return null;if(h=x(b,function(a,b){return!b.equals(a)},function(a,b){return V(a,!0,b)},i),e=h.upper,g=h.lower,a(b,e,g))return h.set(H,8);if(e&&i.contains(e))for(;!e.getParent().equals(i);)e=e.getParent();else e=i.getFirst(function(a){return c(b,a)});if(g&&i.contains(g))for(;!g.getParent().equals(i);)g=g.getParent();else g=i.getLast(function(a){return c(b,a)});if(!e||!g)return null;if(u(b,e),u(b,g),!f(b.mouse.y,e.size.top,g.size.bottom))return null;for(var j,k,m,n,i=Number.MAX_VALUE;g&&!g.equals(e)&&(k=e.getNext(b.isRelevant));)j=Math.abs(d(b,e,k)-b.mouse.y),i>j&&(i=j,m=e,n=k),e=k,u(b,e);return m&&n&&f(b.mouse.y,m.size.top,n.size.bottom)?(h.upper=m,h.lower=n,h.set(H,8)):null}function c(a,b){return!(b&&b.type==CKEDITOR.NODE_TEXT||X(b)||m(b)||k(a,b)||b.type==CKEDITOR.NODE_ELEMENT&&b.$&&b.is("br"))}return function(c){var d,e=b(c);if(d=e){d=e.upper;var f=e.lower;d=!d||!f||m(f)||m(d)||f.equals(d)||d.equals(f)||f.contains(d)||d.contains(f)?!1:!!(o(c,d)&&o(c,f)&&a(c,d,f))}return d?e:null}}(),Z=["top","left","right","bottom"]}(),CKEDITOR.config.magicline_keystrokePrevious=CKEDITOR.CTRL+CKEDITOR.SHIFT+51,CKEDITOR.config.magicline_keystrokeNext=CKEDITOR.CTRL+CKEDITOR.SHIFT+52,function(){function a(a){if(!a||a.type!=CKEDITOR.NODE_ELEMENT||"form"!=a.getName())return[];for(var b=[],c=["style","className"],d=0;d<c.length;d++){var e=a.$.elements.namedItem(c[d]);e&&(e=new CKEDITOR.dom.element(e),b.push([e,e.nextSibling]),e.remove())}return b}function b(a,b){if(a&&a.type==CKEDITOR.NODE_ELEMENT&&"form"==a.getName()&&0<b.length)for(var c=b.length-1;c>=0;c--){var d=b[c][0],e=b[c][1];e?d.insertBefore(e):d.appendTo(a)}}function c(c,d){var e=a(c),f={},g=c.$;return d||(f["class"]=g.className||"",g.className=""),f.inline=g.style.cssText||"",d||(g.style.cssText="position: static; overflow: visible"),b(e),f}function d(c,d){var e=a(c),f=c.$;"class"in d&&(f.className=d["class"]),"inline"in d&&(f.style.cssText=d.inline),b(e)}function e(a){if(!a.editable().isInline()){var b,c=CKEDITOR.instances;for(b in c){var d=c[b];"wysiwyg"!=d.mode||d.readOnly||(d=d.document.getBody(),d.setAttribute("contentEditable",!1),d.setAttribute("contentEditable",!0))}a.editable().hasFocus&&(a.toolbox.focus(),a.focus())}}CKEDITOR.plugins.add("maximize",{init:function(a){function b(){var b=k.getViewPaneSize();a.resize(b.width,b.height,null,!0)}if(a.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var f,g,h,i=a.lang,j=CKEDITOR.document,k=j.getWindow(),l=CKEDITOR.TRISTATE_OFF;a.addCommand("maximize",{modes:{wysiwyg:!CKEDITOR.env.iOS,source:!CKEDITOR.env.iOS},readOnly:1,editorFocus:!1,exec:function(){var m=a.container.getFirst(function(a){return a.type==CKEDITOR.NODE_ELEMENT&&a.hasClass("cke_inner")}),n=a.ui.space("contents");if("wysiwyg"==a.mode){var o=a.getSelection();f=o&&o.getRanges(),g=k.getScrollPosition()}else{var p=a.editable().$;f=!CKEDITOR.env.ie&&[p.selectionStart,p.selectionEnd],g=[p.scrollLeft,p.scrollTop]}if(this.state==CKEDITOR.TRISTATE_OFF){for(k.on("resize",b),h=k.getScrollPosition(),o=a.container;o=o.getParent();)o.setCustomData("maximize_saved_styles",c(o)),o.setStyle("z-index",a.config.baseFloatZIndex-5);n.setCustomData("maximize_saved_styles",c(n,!0)),m.setCustomData("maximize_saved_styles",c(m,!0)),n={overflow:CKEDITOR.env.webkit?"":"hidden",width:0,height:0},j.getDocumentElement().setStyles(n),!CKEDITOR.env.gecko&&j.getDocumentElement().setStyle("position","fixed"),CKEDITOR.env.gecko&&CKEDITOR.env.quirks||j.getBody().setStyles(n),CKEDITOR.env.ie?setTimeout(function(){k.$.scrollTo(0,0)},0):k.$.scrollTo(0,0),m.setStyle("position",CKEDITOR.env.gecko&&CKEDITOR.env.quirks?"fixed":"absolute"),m.$.offsetLeft,m.setStyles({"z-index":a.config.baseFloatZIndex-5,left:"0px",top:"0px"}),m.addClass("cke_maximized"),b(),n=m.getDocumentPosition(),m.setStyles({left:-1*n.x+"px",top:-1*n.y+"px"}),CKEDITOR.env.gecko&&e(a)}else if(this.state==CKEDITOR.TRISTATE_ON){k.removeListener("resize",b);for(var o=[n,m],q=0;q<o.length;q++)d(o[q],o[q].getCustomData("maximize_saved_styles")),o[q].removeCustomData("maximize_saved_styles");for(o=a.container;o=o.getParent();)d(o,o.getCustomData("maximize_saved_styles")),o.removeCustomData("maximize_saved_styles");CKEDITOR.env.ie?setTimeout(function(){k.$.scrollTo(h.x,h.y)},0):k.$.scrollTo(h.x,h.y),m.removeClass("cke_maximized"),CKEDITOR.env.webkit&&(m.setStyle("display","inline"),setTimeout(function(){m.setStyle("display","block")},0)),a.fire("resize",{outerHeight:a.container.$.offsetHeight,contentsHeight:n.$.offsetHeight,outerWidth:a.container.$.offsetWidth})}this.toggleState(),(o=this.uiItems[0])&&(n=this.state==CKEDITOR.TRISTATE_OFF?i.maximize.maximize:i.maximize.minimize,o=CKEDITOR.document.getById(o._.id),o.getChild(1).setHtml(n),o.setAttribute("title",n),o.setAttribute("href",'javascript:void("'+n+'");')),"wysiwyg"==a.mode?f?(CKEDITOR.env.gecko&&e(a),a.getSelection().selectRanges(f),(p=a.getSelection().getStartElement())&&p.scrollIntoView(!0)):k.$.scrollTo(g.x,g.y):(f&&(p.selectionStart=f[0],p.selectionEnd=f[1]),p.scrollLeft=g[0],p.scrollTop=g[1]),f=g=null,l=this.state,a.fire("maximize",this.state)},canUndo:!1}),a.ui.addButton&&a.ui.addButton("Maximize",{label:i.maximize.maximize,command:"maximize",toolbar:"tools,10"}),a.on("mode",function(){var b=a.getCommand("maximize");b.setState(b.state==CKEDITOR.TRISTATE_DISABLED?CKEDITOR.TRISTATE_DISABLED:l)},null,null,100)}}})}(),function(){function a(a,b,c){var d=CKEDITOR.cleanWord;return d?c():(a=CKEDITOR.getUrl(a.config.pasteFromWordCleanupFile||b+"filter/default.js"),CKEDITOR.scriptLoader.load(a,c,null,!0)),!d}function b(a){a.data.type="html"}CKEDITOR.plugins.add("pastefromword",{requires:"clipboard",init:function(c){var d=0,e=this.path;c.addCommand("pastefromword",{canUndo:!1,async:!0,exec:function(a){var c=this;d=1,a.once("beforePaste",b),a.getClipboardData({title:a.lang.pastefromword.title},function(b){b&&a.fire("paste",{type:"html",dataValue:b.dataValue,method:"paste",dataTransfer:CKEDITOR.plugins.clipboard.initPasteDataTransfer()}),a.fire("afterCommandExec",{name:"pastefromword",command:c,returnValue:!!b})})}}),c.ui.addButton&&c.ui.addButton("PasteFromWord",{label:c.lang.pastefromword.toolbar,command:"pastefromword",toolbar:"clipboard,50"}),c.on("pasteState",function(a){c.getCommand("pastefromword").setState(a.data)}),c.on("paste",function(b){var f=b.data,g=f.dataValue;if(g&&(d||/(class=\"?Mso|style=\"[^\"]*\bmso\-|w:WordDocument)/.test(g))){f.dontFilter=!0;var h=a(c,e,function(){h?c.fire("paste",f):(!c.config.pasteFromWordPromptCleanup||d||confirm(c.lang.pastefromword.confirmCleanup))&&(f.dataValue=CKEDITOR.cleanWord(g,c)),d=0});h&&b.cancel()}},null,null,3)}})}(),function(){var a={canUndo:!1,async:!0,exec:function(b){b.getClipboardData({title:b.lang.pastetext.title},function(c){c&&b.fire("paste",{type:"text",dataValue:c.dataValue,method:"paste",dataTransfer:CKEDITOR.plugins.clipboard.initPasteDataTransfer()}),b.fire("afterCommandExec",{name:"pastetext",command:a,returnValue:!!c})})}};CKEDITOR.plugins.add("pastetext",{requires:"clipboard",init:function(b){b.addCommand("pastetext",a),b.ui.addButton&&b.ui.addButton("PasteText",{label:b.lang.pastetext.button,command:"pastetext",toolbar:"clipboard,40"}),b.config.forcePasteAsPlainText&&b.on("beforePaste",function(a){ -"html"!=a.data.type&&(a.data.type="text")}),b.on("pasteState",function(a){b.getCommand("pastetext").setState(a.data)})}})}(),CKEDITOR.plugins.add("removeformat",{init:function(a){a.addCommand("removeFormat",CKEDITOR.plugins.removeformat.commands.removeformat),a.ui.addButton&&a.ui.addButton("RemoveFormat",{label:a.lang.removeformat.toolbar,command:"removeFormat",toolbar:"cleanup,10"})}}),CKEDITOR.plugins.removeformat={commands:{removeformat:{exec:function(a){for(var b,c=a._.removeFormatRegex||(a._.removeFormatRegex=new RegExp("^(?:"+a.config.removeFormatTags.replace(/,/g,"|")+")$","i")),d=a._.removeAttributes||(a._.removeAttributes=a.config.removeFormatAttributes.split(",")),e=CKEDITOR.plugins.removeformat.filter,f=a.getSelection().getRanges(),g=f.createIterator(),h=function(a){return a.type==CKEDITOR.NODE_ELEMENT};b=g.getNextRange();){b.collapsed||b.enlarge(CKEDITOR.ENLARGE_ELEMENT);var i=b.createBookmark(),j=i.startNode,k=i.endNode,l=function(b){for(var d,f=a.elementPath(b),g=f.elements,h=1;(d=g[h])&&!d.equals(f.block)&&!d.equals(f.blockLimit);h++)c.test(d.getName())&&e(a,d)&&b.breakParent(d)};if(l(j),k)for(l(k),j=j.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT);j&&!j.equals(k);)if(j.isReadOnly()){if(j.getPosition(k)&CKEDITOR.POSITION_CONTAINS)break;j=j.getNext(h)}else l=j.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT),"img"==j.getName()&&j.data("cke-realelement")||!e(a,j)||(c.test(j.getName())?j.remove(1):(j.removeAttributes(d),a.fire("removeFormatCleanup",j))),j=l;b.moveToBookmark(i)}a.forceNextSelectionCheck(),a.getSelection().selectRanges(f)}}},filter:function(a,b){for(var c=a._.removeFormatFilters||[],d=0;d<c.length;d++)if(!1===c[d](b))return!1;return!0}},CKEDITOR.editor.prototype.addRemoveFormatFilter=function(a){this._.removeFormatFilters||(this._.removeFormatFilters=[]),this._.removeFormatFilters.push(a)},CKEDITOR.config.removeFormatTags="b,big,cite,code,del,dfn,em,font,i,ins,kbd,q,s,samp,small,span,strike,strong,sub,sup,tt,u,var",CKEDITOR.config.removeFormatAttributes="class,style,lang,width,height,align,hspace,valign",CKEDITOR.plugins.add("resize",{init:function(a){function b(b){var c=h.width,e=h.height,i=c+(b.data.$.screenX-g.x)*("rtl"==f?-1:1);b=e+(b.data.$.screenY-g.y),j&&(c=Math.max(d.resize_minWidth,Math.min(i,d.resize_maxWidth))),k&&(e=Math.max(d.resize_minHeight,Math.min(b,d.resize_maxHeight))),a.resize(j?c:null,e)}function c(){CKEDITOR.document.removeListener("mousemove",b),CKEDITOR.document.removeListener("mouseup",c),a.document&&(a.document.removeListener("mousemove",b),a.document.removeListener("mouseup",c))}var d=a.config,e=a.ui.spaceId("resizer"),f=a.element?a.element.getDirection(1):"ltr";if(!d.resize_dir&&(d.resize_dir="vertical"),void 0===d.resize_maxWidth&&(d.resize_maxWidth=3e3),void 0===d.resize_maxHeight&&(d.resize_maxHeight=3e3),void 0===d.resize_minWidth&&(d.resize_minWidth=750),void 0===d.resize_minHeight&&(d.resize_minHeight=250),!1!==d.resize_enabled){var g,h,i=null,j=("both"==d.resize_dir||"horizontal"==d.resize_dir)&&d.resize_minWidth!=d.resize_maxWidth,k=("both"==d.resize_dir||"vertical"==d.resize_dir)&&d.resize_minHeight!=d.resize_maxHeight,l=CKEDITOR.tools.addFunction(function(e){i||(i=a.getResizable()),h={width:i.$.offsetWidth||0,height:i.$.offsetHeight||0},g={x:e.screenX,y:e.screenY},d.resize_minWidth>h.width&&(d.resize_minWidth=h.width),d.resize_minHeight>h.height&&(d.resize_minHeight=h.height),CKEDITOR.document.on("mousemove",b),CKEDITOR.document.on("mouseup",c),a.document&&(a.document.on("mousemove",b),a.document.on("mouseup",c)),e.preventDefault&&e.preventDefault()});a.on("destroy",function(){CKEDITOR.tools.removeFunction(l)}),a.on("uiSpace",function(b){if("bottom"==b.data.space){var c="";j&&!k&&(c=" cke_resizer_horizontal"),!j&&k&&(c=" cke_resizer_vertical");var d='<span id="'+e+'" class="cke_resizer'+c+" cke_resizer_"+f+'" title="'+CKEDITOR.tools.htmlEncode(a.lang.common.resize)+'" onmousedown="CKEDITOR.tools.callFunction('+l+', event)">'+("ltr"==f?"◢":"◣")+"</span>";"ltr"==f&&"ltr"==c?b.data.html+=d:b.data.html=d+b.data.html}},a,null,100),a.on("maximize",function(b){a.ui.space("resizer")[b.data==CKEDITOR.TRISTATE_ON?"hide":"show"]()})}}}),CKEDITOR.plugins.add("menubutton",{requires:"button,menu",onLoad:function(){var a=function(a){var b=this._,c=b.menu;b.state!==CKEDITOR.TRISTATE_DISABLED&&(b.on&&c?c.hide():(b.previousState=b.state,c||(c=b.menu=new CKEDITOR.menu(a,{panel:{className:"cke_menu_panel",attributes:{"aria-label":a.lang.common.options}}}),c.onHide=CKEDITOR.tools.bind(function(){var c=this.command?a.getCommand(this.command).modes:this.modes;this.setState(!c||c[a.mode]?b.previousState:CKEDITOR.TRISTATE_DISABLED),b.on=0},this),this.onMenu&&c.addListener(this.onMenu)),this.setState(CKEDITOR.TRISTATE_ON),b.on=1,setTimeout(function(){c.show(CKEDITOR.document.getById(b.id),4)},0)))};CKEDITOR.ui.menuButton=CKEDITOR.tools.createClass({base:CKEDITOR.ui.button,$:function(b){delete b.panel,this.base(b),this.hasArrow=!0,this.click=a},statics:{handler:{create:function(a){return new CKEDITOR.ui.menuButton(a)}}}})},beforeInit:function(a){a.ui.addHandler(CKEDITOR.UI_MENUBUTTON,CKEDITOR.ui.menuButton.handler)}}),CKEDITOR.UI_MENUBUTTON="menubutton",CKEDITOR.plugins.add("scayt",{requires:"menubutton,dialog",tabToOpen:null,dialogName:"scaytDialog",init:function(a){var b=this,c=CKEDITOR.plugins.scayt;this.bindEvents(a),this.parseConfig(a),this.addRule(a),CKEDITOR.dialog.add(this.dialogName,CKEDITOR.getUrl(this.path+"dialogs/options.js")),this.addMenuItems(a);var d=a.lang.scayt,e=CKEDITOR.env;a.ui.add("Scayt",CKEDITOR.UI_MENUBUTTON,{label:d.text_title,title:a.plugins.wsc?a.lang.wsc.title:d.text_title,modes:{wysiwyg:!(e.ie&&(8>e.version||e.quirks))},toolbar:"spellchecker,20",refresh:function(){var b=a.ui.instances.Scayt.getState();a.scayt&&(b=c.state.scayt[a.name]?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF),a.fire("scaytButtonState",b)},onRender:function(){var b=this;a.on("scaytButtonState",function(a){void 0!==typeof a.data&&b.setState(a.data)})},onMenu:function(){var b=a.scayt;return a.getMenuItem("scaytToggle").label=a.lang.scayt[b&&c.state.scayt[a.name]?"btn_disable":"btn_enable"],b={scaytToggle:CKEDITOR.TRISTATE_OFF,scaytOptions:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytLangs:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytDict:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,scaytAbout:b?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,WSC:a.plugins.wsc?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED},a.config.scayt_uiTabs[0]||delete b.scaytOptions,a.config.scayt_uiTabs[1]||delete b.scaytLangs,a.config.scayt_uiTabs[2]||delete b.scaytDict,b}}),a.contextMenu&&a.addMenuItems&&(a.contextMenu.addListener(function(c,d){var e,f,g=a.scayt;return g&&(f=g.getSelectionNode())&&(e=b.menuGenerator(a,f),g.showBanner("."+a.contextMenu._.definition.panel.className.split(" ").join(" ."))),e}),a.contextMenu._.onHide=CKEDITOR.tools.override(a.contextMenu._.onHide,function(b){return function(){var c=a.scayt;return c&&c.hideBanner(),b.apply(this)}}))},addMenuItems:function(a){var b=this,c=CKEDITOR.plugins.scayt;a.addMenuGroup("scaytButton");for(var d=a.config.scayt_contextMenuItemsOrder.split("|"),e=0;e<d.length;e++)d[e]="scayt_"+d[e];if((d=["grayt_description","grayt_suggest","grayt_control"].concat(d))&&d.length)for(e=0;e<d.length;e++)a.addMenuGroup(d[e],e-10);a.addCommand("scaytToggle",{exec:function(a){var b=a.scayt;c.state.scayt[a.name]=!c.state.scayt[a.name],!0===c.state.scayt[a.name]?b||c.createScayt(a):b&&c.destroy(a)}}),a.addCommand("scaytAbout",{exec:function(a){a.scayt.tabToOpen="about",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytOptions",{exec:function(a){a.scayt.tabToOpen="options",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytLangs",{exec:function(a){a.scayt.tabToOpen="langs",a.lockSelection(),a.openDialog(b.dialogName)}}),a.addCommand("scaytDict",{exec:function(a){a.scayt.tabToOpen="dictionaries",a.lockSelection(),a.openDialog(b.dialogName)}}),d={scaytToggle:{label:a.lang.scayt.btn_enable,group:"scaytButton",command:"scaytToggle"},scaytAbout:{label:a.lang.scayt.btn_about,group:"scaytButton",command:"scaytAbout"},scaytOptions:{label:a.lang.scayt.btn_options,group:"scaytButton",command:"scaytOptions"},scaytLangs:{label:a.lang.scayt.btn_langs,group:"scaytButton",command:"scaytLangs"},scaytDict:{label:a.lang.scayt.btn_dictionaries,group:"scaytButton",command:"scaytDict"}},a.plugins.wsc&&(d.WSC={label:a.lang.wsc.toolbar,group:"scaytButton",onClick:function(){var b=CKEDITOR.plugins.scayt,c=a.scayt,d=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():a.document.getBody().getText();(d=d.replace(/\s/g,""))?(c&&b.state.scayt[a.name]&&c.setMarkupPaused&&c.setMarkupPaused(!0),a.lockSelection(),a.execCommand("checkspell")):alert("Nothing to check!")}}),a.addMenuItems(d)},bindEvents:function(a){var b=CKEDITOR.plugins.scayt,c=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE,d=function(){b.destroy(a)},e=function(){!b.state.scayt[a.name]||a.readOnly||a.scayt||b.createScayt(a)},f=function(){var b=a.editable();b.attachListener(b,"focus",function(b){CKEDITOR.plugins.scayt&&!a.scayt&&setTimeout(e,0),b=CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[a.name]&&a.scayt;var d,f;if((c||b)&&a._.savedSelection){b=a._.savedSelection.getSelectedElement(),b=!b&&a._.savedSelection.getRanges();for(var g=0;g<b.length;g++)f=b[g],"string"==typeof f.startContainer.$.nodeValue&&(d=f.startContainer.getText().length,(d<f.startOffset||d<f.endOffset)&&a.unlockSelection(!1))}},this,null,-10)},g=function(){c?a.config.scayt_inlineModeImmediateMarkup?e():(a.on("blur",function(){setTimeout(d,0)}),a.on("focus",e),a.focusManager.hasFocus&&e()):e(),f();var b=a.editable();b.attachListener(b,"mousedown",function(b){b=b.data.getTarget();var c=a.widgets&&a.widgets.getByElement(b);c&&(c.wrapper=b.getAscendant(function(a){return a.hasAttribute("data-cke-widget-wrapper")},!0))},this,null,-10)};a.on("contentDom",g),a.on("beforeCommandExec",function(c){var d=a.scayt,e=null,f=!1,g=!0;c.data.name in b.options.disablingCommandExec&&"wysiwyg"==a.mode?d&&(b.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)):"bold"!==c.data.name&&"italic"!==c.data.name&&"underline"!==c.data.name&&"strike"!==c.data.name&&"subscript"!==c.data.name&&"superscript"!==c.data.name&&"enter"!==c.data.name&&"cut"!==c.data.name&&"language"!==c.data.name||!d||("cut"===c.data.name&&(g=!1,f=!0),"language"===c.data.name&&(e=(e=a.plugins.language.getCurrentLangElement(a))&&e.$,f=!0),a.fire("reloadMarkupScayt",{removeOptions:{removeInside:g,forceBookmark:f,selectionNode:e},timeout:0}))}),a.on("beforeSetMode",function(c){"source"==c.data&&((c=a.scayt)&&(b.destroy(a),a.fire("scaytButtonState",CKEDITOR.TRISTATE_DISABLED)),a.document&&a.document.getBody().removeAttribute("_jquid"))}),a.on("afterCommandExec",function(b){"wysiwyg"!=a.mode||"undo"!=b.data.name&&"redo"!=b.data.name||setTimeout(function(){var b=a.scayt,c=b&&b.getScaytLangList();c&&c.ltr&&c.rtl&&b.fire("startSpellCheck, startGrammarCheck")},250)}),a.on("readOnly",function(c){var d;c&&(d=a.scayt,!0===c.editor.readOnly?d&&d.fire("removeMarkupInDocument",{}):d?d.fire("startSpellCheck, startGrammarCheck"):"wysiwyg"==c.editor.mode&&!0===b.state.scayt[c.editor.name]&&(b.createScayt(a),c.editor.fire("scaytButtonState",CKEDITOR.TRISTATE_ON)))}),a.on("beforeDestroy",d),a.on("setData",function(){d(),(a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE||a.plugins.divarea)&&g()},this,null,50),a.on("reloadMarkupScayt",function(b){var c=b.data&&b.data.removeOptions;setTimeout(function(){var b=a.scayt,d=b&&b.getScaytLangList();d&&d.ltr&&d.rtl&&(a.document.fire("keydown",new CKEDITOR.dom.event({keyCode:37})),b.removeMarkupInSelectionNode(c),b.fire("startSpellCheck, startGrammarCheck"))},b.data&&b.data.timeout||0)}),a.on("insertElement",function(){a.fire("reloadMarkupScayt",{removeOptions:{forceBookmark:!0}})},this,null,50),a.on("insertHtml",function(){a.fire("reloadMarkupScayt")},this,null,50),a.on("insertText",function(){a.fire("reloadMarkupScayt")},this,null,50),a.on("scaytDialogShown",function(b){b.data.selectPage(a.scayt.tabToOpen)})},parseConfig:function(a){var b=CKEDITOR.plugins.scayt;if(b.replaceOldOptionsNames(a.config),"boolean"!=typeof a.config.scayt_autoStartup&&(a.config.scayt_autoStartup=!1),b.state.scayt[a.name]=a.config.scayt_autoStartup,"boolean"!=typeof a.config.grayt_autoStartup&&(a.config.grayt_autoStartup=!1),"boolean"!=typeof a.config.scayt_inlineModeImmediateMarkup&&(a.config.scayt_inlineModeImmediateMarkup=!1),b.state.grayt[a.name]=a.config.grayt_autoStartup,a.config.scayt_contextCommands||(a.config.scayt_contextCommands="ignore|ignoreall|add"),a.config.scayt_contextMenuItemsOrder||(a.config.scayt_contextMenuItemsOrder="suggest|moresuggest|control"),a.config.scayt_sLang||(a.config.scayt_sLang="en_US"),(void 0===a.config.scayt_maxSuggestions||"number"!=typeof a.config.scayt_maxSuggestions||0>a.config.scayt_maxSuggestions)&&(a.config.scayt_maxSuggestions=5),(void 0===a.config.scayt_minWordLength||"number"!=typeof a.config.scayt_minWordLength||1>a.config.scayt_minWordLength)&&(a.config.scayt_minWordLength=4),void 0!==a.config.scayt_customDictionaryIds&&"string"==typeof a.config.scayt_customDictionaryIds||(a.config.scayt_customDictionaryIds=""),void 0!==a.config.scayt_userDictionaryName&&"string"==typeof a.config.scayt_userDictionaryName||(a.config.scayt_userDictionaryName=null),"string"==typeof a.config.scayt_uiTabs&&3===a.config.scayt_uiTabs.split(",").length){var c=[],d=[];a.config.scayt_uiTabs=a.config.scayt_uiTabs.split(","),CKEDITOR.tools.search(a.config.scayt_uiTabs,function(a){1===Number(a)||0===Number(a)?(d.push(!0),c.push(Number(a))):d.push(!1)}),null===CKEDITOR.tools.search(d,!1)?a.config.scayt_uiTabs=c:a.config.scayt_uiTabs=[1,1,1]}else a.config.scayt_uiTabs=[1,1,1];if("string"!=typeof a.config.scayt_serviceProtocol&&(a.config.scayt_serviceProtocol=null),"string"!=typeof a.config.scayt_serviceHost&&(a.config.scayt_serviceHost=null),"string"!=typeof a.config.scayt_servicePort&&(a.config.scayt_servicePort=null),"string"!=typeof a.config.scayt_servicePath&&(a.config.scayt_servicePath=null),a.config.scayt_moreSuggestions||(a.config.scayt_moreSuggestions="on"),"string"!=typeof a.config.scayt_customerId&&(a.config.scayt_customerId="1:WvF0D4-UtPqN1-43nkD4-NKvUm2-daQqk3-LmNiI-z7Ysb4-mwry24-T8YrS3-Q2tpq2"),"string"!=typeof a.config.scayt_srcUrl&&(b=document.location.protocol,b=-1!=b.search(/https?:/)?b:"http:",a.config.scayt_srcUrl=b+"//svc.webspellchecker.net/spellcheck31/lf/scayt3/ckscayt/ckscayt.js"),"boolean"!=typeof CKEDITOR.config.scayt_handleCheckDirty&&(CKEDITOR.config.scayt_handleCheckDirty=!0),"boolean"!=typeof CKEDITOR.config.scayt_handleUndoRedo&&(CKEDITOR.config.scayt_handleUndoRedo=!0),CKEDITOR.config.scayt_handleUndoRedo=CKEDITOR.plugins.undo?CKEDITOR.config.scayt_handleUndoRedo:!1,"boolean"!=typeof a.config.scayt_multiLanguageMode&&(a.config.scayt_multiLanguageMode=!1),"object"!=typeof a.config.scayt_multiLanguageStyles&&(a.config.scayt_multiLanguageStyles={}),a.config.scayt_ignoreAllCapsWords&&"boolean"!=typeof a.config.scayt_ignoreAllCapsWords&&(a.config.scayt_ignoreAllCapsWords=!1),a.config.scayt_ignoreDomainNames&&"boolean"!=typeof a.config.scayt_ignoreDomainNames&&(a.config.scayt_ignoreDomainNames=!1),a.config.scayt_ignoreWordsWithMixedCases&&"boolean"!=typeof a.config.scayt_ignoreWordsWithMixedCases&&(a.config.scayt_ignoreWordsWithMixedCases=!1),a.config.scayt_ignoreWordsWithNumbers&&"boolean"!=typeof a.config.scayt_ignoreWordsWithNumbers&&(a.config.scayt_ignoreWordsWithNumbers=!1),a.config.scayt_disableOptionsStorage){var b=CKEDITOR.tools.isArray(a.config.scayt_disableOptionsStorage)?a.config.scayt_disableOptionsStorage:"string"==typeof a.config.scayt_disableOptionsStorage?[a.config.scayt_disableOptionsStorage]:void 0,e="all options lang ignore-all-caps-words ignore-domain-names ignore-words-with-mixed-cases ignore-words-with-numbers".split(" "),f=["lang","ignore-all-caps-words","ignore-domain-names","ignore-words-with-mixed-cases","ignore-words-with-numbers"],g=CKEDITOR.tools.search,h=CKEDITOR.tools.indexOf;a.config.scayt_disableOptionsStorage=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],i=!!g(a,"options");if(!g(e,d)||i&&g(f,function(a){return"lang"===a?!1:void 0}))return;if(g(f,d)&&f.splice(h(f,d),1),"all"===d||i&&g(a,"lang"))return[];"options"===d&&(f=["lang"])}return b=b.concat(f)}(b)}},addRule:function(a){var b=CKEDITOR.plugins.scayt,c=a.dataProcessor,d=c&&c.htmlFilter,e=a._.elementsPath&&a._.elementsPath.filters,c=c&&c.dataFilter,f=a.addRemoveFormatFilter,g=function(c){return a.scayt&&(c.hasAttribute(b.options.data_attribute_name)||c.hasAttribute(b.options.problem_grammar_data_attribute))?!1:void 0},h=function(c){var d=!0;return a.scayt&&(c.hasAttribute(b.options.data_attribute_name)||c.hasAttribute(b.options.problem_grammar_data_attribute))&&(d=!1),d};e&&e.push(g),c&&c.addRules({elements:{span:function(a){var c=a.hasClass(b.options.misspelled_word_class)&&a.attributes[b.options.data_attribute_name],d=a.hasClass(b.options.problem_grammar_class)&&a.attributes[b.options.problem_grammar_data_attribute];return b&&(c||d)&&delete a.name,a}}}),d&&d.addRules({elements:{span:function(a){var c=a.hasClass(b.options.misspelled_word_class)&&a.attributes[b.options.data_attribute_name],d=a.hasClass(b.options.problem_grammar_class)&&a.attributes[b.options.problem_grammar_data_attribute];return b&&(c||d)&&delete a.name,a}}}),f&&f.call(a,h)},scaytMenuDefinition:function(a){var b=this;return a=a.scayt,{scayt:{scayt_ignore:{label:a.getLocal("btn_ignore"),group:"scayt_control",order:1,exec:function(a){a.scayt.ignoreWord()}},scayt_ignoreall:{label:a.getLocal("btn_ignoreAll"),group:"scayt_control",order:2,exec:function(a){a.scayt.ignoreAllWords()}},scayt_add:{label:a.getLocal("btn_addWord"),group:"scayt_control",order:3,exec:function(a){var b=a.scayt;setTimeout(function(){b.addWordToUserDictionary()},10)}},scayt_option:{label:a.getLocal("btn_options"),group:"scayt_control",order:4,exec:function(a){a.scayt.tabToOpen="options",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[0]}},scayt_language:{label:a.getLocal("btn_langs"),group:"scayt_control",order:5,exec:function(a){a.scayt.tabToOpen="langs",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[1]}},scayt_dictionary:{label:a.getLocal("btn_dictionaries"),group:"scayt_control",order:6,exec:function(a){a.scayt.tabToOpen="dictionaries",a.lockSelection(),a.openDialog(b.dialogName)},verification:function(a){return 1==a.config.scayt_uiTabs[2]}},scayt_about:{label:a.getLocal("btn_about"),group:"scayt_control",order:7,exec:function(a){a.scayt.tabToOpen="about",a.lockSelection(),a.openDialog(b.dialogName)}}},grayt:{grayt_problemdescription:{label:"Grammar problem description",group:"grayt_description",order:1,state:CKEDITOR.TRISTATE_DISABLED,exec:function(a){}},grayt_ignore:{label:a.getLocal("btn_ignore"),group:"grayt_control",order:2,exec:function(a){a.scayt.ignorePhrase()}}}}},buildSuggestionMenuItems:function(a,b,c){var d={},e={},f=c?"word":"phrase",g=c?"startGrammarCheck":"startSpellCheck",h=a.scayt;if(0<b.length&&"no_any_suggestions"!==b[0])if(c)for(c=0;c<b.length;c++){var i="scayt_suggest_"+CKEDITOR.plugins.scayt.suggestions[c].replace(" ","_");a.addCommand(i,this.createCommand(CKEDITOR.plugins.scayt.suggestions[c],f,g)),c<a.config.scayt_maxSuggestions?(a.addMenuItem(i,{label:b[c],command:i,group:"scayt_suggest",order:c+1}),d[i]=CKEDITOR.TRISTATE_OFF):(a.addMenuItem(i,{label:b[c],command:i,group:"scayt_moresuggest",order:c+1}),e[i]=CKEDITOR.TRISTATE_OFF,"on"===a.config.scayt_moreSuggestions&&(a.addMenuItem("scayt_moresuggest",{label:h.getLocal("btn_moreSuggestions"),group:"scayt_moresuggest",order:10,getItems:function(){return e}}),d.scayt_moresuggest=CKEDITOR.TRISTATE_OFF))}else for(c=0;c<b.length;c++)i="grayt_suggest_"+CKEDITOR.plugins.scayt.suggestions[c].replace(" ","_"),a.addCommand(i,this.createCommand(CKEDITOR.plugins.scayt.suggestions[c],f,g)),a.addMenuItem(i,{label:b[c],command:i,group:"grayt_suggest",order:c+1}),d[i]=CKEDITOR.TRISTATE_OFF;else d.no_scayt_suggest=CKEDITOR.TRISTATE_DISABLED,a.addCommand("no_scayt_suggest",{exec:function(){}}),a.addMenuItem("no_scayt_suggest",{label:h.getLocal("btn_noSuggestions")||"no_scayt_suggest",command:"no_scayt_suggest",group:"scayt_suggest",order:0});return d},menuGenerator:function(a,b){var c,d,e=a.scayt,f=this.scaytMenuDefinition(a),g={},h=a.config.scayt_contextCommands.split("|"),i=b.getAttribute(e.getLangAttribute())||e.getLang();if(c=e.isScaytNode(b),d=e.isGraytNode(b),c?(f=f.scayt,g=b.getAttribute(e.getScaytNodeAttributeName()),e.fire("getSuggestionsList",{lang:i,word:g}),g=this.buildSuggestionMenuItems(a,CKEDITOR.plugins.scayt.suggestions,c)):d&&(f=f.grayt,g=b.getAttribute(e.getGraytNodeAttributeName()),d=e.getProblemDescriptionText(g,i),f.grayt_problemdescription&&d&&(f.grayt_problemdescription.label=d),e.fire("getGrammarSuggestionsList",{lang:i,phrase:g}),g=this.buildSuggestionMenuItems(a,CKEDITOR.plugins.scayt.suggestions,c)),c&&"off"==a.config.scayt_contextCommands)return g;for(var j in f)c&&-1==CKEDITOR.tools.indexOf(h,j.replace("scayt_",""))&&"all"!=a.config.scayt_contextCommands||(g[j]="undefined"!=typeof f[j].state?f[j].state:CKEDITOR.TRISTATE_OFF,"function"!=typeof f[j].verification||f[j].verification(a)||delete g[j],a.addCommand(j,{exec:f[j].exec}),a.addMenuItem(j,{label:a.lang.scayt[f[j].label]||f[j].label,command:j,group:f[j].group,order:f[j].order}));return g},createCommand:function(a,b,c){return{exec:function(d){d=d.scayt;var e={};e[b]=a,d.replaceSelectionNode(e),"startGrammarCheck"===c&&d.removeMarkupInSelectionNode({grammarOnly:!0}),d.fire(c)}}}}),CKEDITOR.plugins.scayt={state:{scayt:{},grayt:{}},suggestions:[],loadingHelper:{loadOrder:[]},isLoading:!1,options:{disablingCommandExec:{source:!0,newpage:!0,templates:!0},data_attribute_name:"data-scayt-word",misspelled_word_class:"scayt-misspell-word",problem_grammar_data_attribute:"data-grayt-phrase",problem_grammar_class:"gramm-problem"},backCompatibilityMap:{scayt_service_protocol:"scayt_serviceProtocol",scayt_service_host:"scayt_serviceHost",scayt_service_port:"scayt_servicePort",scayt_service_path:"scayt_servicePath",scayt_customerid:"scayt_customerId"},replaceOldOptionsNames:function(a){for(var b in a)b in this.backCompatibilityMap&&(a[this.backCompatibilityMap[b]]=a[b],delete a[b])},createScayt:function(a){var b=this,c=CKEDITOR.plugins.scayt;this.loadScaytLibrary(a,function(a){var d=a.window&&a.window.getFrame()||a.editable();d?(d={lang:a.config.scayt_sLang,container:d.$,customDictionary:a.config.scayt_customDictionaryIds,userDictionaryName:a.config.scayt_userDictionaryName,localization:a.langCode,customer_id:a.config.scayt_customerId,debug:a.config.scayt_debug,data_attribute_name:b.options.data_attribute_name,misspelled_word_class:b.options.misspelled_word_class,problem_grammar_data_attribute:b.options.problem_grammar_data_attribute,problem_grammar_class:b.options.problem_grammar_class,"options-to-restore":a.config.scayt_disableOptionsStorage,focused:a.editable().hasFocus,ignoreElementsRegex:a.config.scayt_elementsToIgnore,minWordLength:a.config.scayt_minWordLength,multiLanguageMode:a.config.scayt_multiLanguageMode,multiLanguageStyles:a.config.scayt_multiLanguageStyles,graytAutoStartup:c.state.grayt[a.name]},a.config.scayt_serviceProtocol&&(d.service_protocol=a.config.scayt_serviceProtocol),a.config.scayt_serviceHost&&(d.service_host=a.config.scayt_serviceHost),a.config.scayt_servicePort&&(d.service_port=a.config.scayt_servicePort),a.config.scayt_servicePath&&(d.service_path=a.config.scayt_servicePath),"boolean"==typeof a.config.scayt_ignoreAllCapsWords&&(d["ignore-all-caps-words"]=a.config.scayt_ignoreAllCapsWords),"boolean"==typeof a.config.scayt_ignoreDomainNames&&(d["ignore-domain-names"]=a.config.scayt_ignoreDomainNames),"boolean"==typeof a.config.scayt_ignoreWordsWithMixedCases&&(d["ignore-words-with-mixed-cases"]=a.config.scayt_ignoreWordsWithMixedCases),"boolean"==typeof a.config.scayt_ignoreWordsWithNumbers&&(d["ignore-words-with-numbers"]=a.config.scayt_ignoreWordsWithNumbers),d=new SCAYT.CKSCAYT(d,function(){},function(){}),d.subscribe("suggestionListSend",function(a){for(var b={},c=[],d=0;d<a.suggestionList.length;d++)b["word_"+a.suggestionList[d]]||(b["word_"+a.suggestionList[d]]=a.suggestionList[d],c.push(a.suggestionList[d]));CKEDITOR.plugins.scayt.suggestions=c}),d.subscribe("selectionIsChanged",function(b){a.getSelection().isLocked&&a.lockSelection()}),d.subscribe("graytStateChanged",function(b){c.state.grayt[a.name]=b.state}),a.scayt=d,a.fire("scaytButtonState",a.readOnly?CKEDITOR.TRISTATE_DISABLED:CKEDITOR.TRISTATE_ON)):c.state.scayt[a.name]=!1})},destroy:function(a){a.scayt&&a.scayt.destroy(),delete a.scayt,a.fire("scaytButtonState",CKEDITOR.TRISTATE_OFF)},loadScaytLibrary:function(a,b){var c,d,e=this;this.loadingHelper[a.name]||("undefined"==typeof window.SCAYT||"function"!=typeof window.SCAYT.CKSCAYT?(this.loadingHelper[a.name]=b,this.loadingHelper.loadOrder.push(a.name),c=new Date,c=c.getTime(),d=a.config.scayt_srcUrl,d+=0<=d.indexOf("?")?"":"?"+c,this.loadingHelper.ckscaytLoading||(CKEDITOR.scriptLoader.load(d,function(a){if(a){CKEDITOR.fireOnce("scaytReady");for(var b=0;b<e.loadingHelper.loadOrder.length;b++)a=e.loadingHelper.loadOrder[b],"function"==typeof e.loadingHelper[a]&&e.loadingHelper[a](CKEDITOR.instances[a]),delete e.loadingHelper[a];e.loadingHelper.loadOrder=[]}}),this.loadingHelper.ckscaytLoading=!0)):window.SCAYT&&"function"==typeof window.SCAYT.CKSCAYT&&(CKEDITOR.fireOnce("scaytReady"),a.scayt||"function"==typeof b&&b(a)))}},CKEDITOR.on("dialogDefinition",function(a){var b=a.data.name;a=a.data.definition.dialog,"scaytDialog"===b&&a.on("cancel",function(a){return!1},this,null,-1),"checkspell"===b&&a.on("cancel",function(a){a=a.sender&&a.sender.getParentEditor();var b=CKEDITOR.plugins.scayt,c=a.scayt;c&&b.state.scayt[a.name]&&c.setMarkupPaused&&c.setMarkupPaused(!1),a.unlockSelection()},this,null,-2),"link"===b&&a.on("ok",function(a){var b=a.sender&&a.sender.getParentEditor();b&&setTimeout(function(){b.fire("reloadMarkupScayt",{removeOptions:{removeInside:!0,forceBookmark:!0},timeout:0})},0)})}),CKEDITOR.on("scaytReady",function(){if(!0===CKEDITOR.config.scayt_handleCheckDirty){var a=CKEDITOR.editor.prototype;a.checkDirty=CKEDITOR.tools.override(a.checkDirty,function(a){return function(){var b=null,c=this.scayt;if(CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[this.name]&&this.scayt){if(b="ready"==this.status)var d=c.removeMarkupFromString(this.getSnapshot()),c=c.removeMarkupFromString(this._.previousValue),b=b&&c!==d}else b=a.call(this);return b}}),a.resetDirty=CKEDITOR.tools.override(a.resetDirty,function(a){return function(){var b=this.scayt;CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[this.name]&&this.scayt?this._.previousValue=b.removeMarkupFromString(this.getSnapshot()):a.call(this)}})}if(!0===CKEDITOR.config.scayt_handleUndoRedo){var a=CKEDITOR.plugins.undo.Image.prototype,b="function"==typeof a.equalsContent?"equalsContent":"equals";a[b]=CKEDITOR.tools.override(a[b],function(a){return function(b){var c=b.editor.scayt,d=this.contents,e=b.contents,f=null;return CKEDITOR.plugins.scayt&&CKEDITOR.plugins.scayt.state.scayt[b.editor.name]&&b.editor.scayt&&(this.contents=c.removeMarkupFromString(d)||"",b.contents=c.removeMarkupFromString(e)||""),f=a.apply(this,arguments),this.contents=d,b.contents=e,f}})}}),function(){var a={preserveState:!0,editorFocus:!1,readOnly:1,exec:function(a){this.toggleState(),this.refresh(a)},refresh:function(a){if(a.document){var b=this.state==CKEDITOR.TRISTATE_ON?"attachClass":"removeClass";a.editable()[b]("cke_show_borders")}}};CKEDITOR.plugins.add("showborders",{modes:{wysiwyg:1},onLoad:function(){var a;a=(CKEDITOR.env.ie6Compat?[".%1 table.%2,",".%1 table.%2 td, .%1 table.%2 th","{","border : #d3d3d3 1px dotted","}"]:".%1 table.%2,;.%1 table.%2 > tr > td, .%1 table.%2 > tr > th,;.%1 table.%2 > tbody > tr > td, .%1 table.%2 > tbody > tr > th,;.%1 table.%2 > thead > tr > td, .%1 table.%2 > thead > tr > th,;.%1 table.%2 > tfoot > tr > td, .%1 table.%2 > tfoot > tr > th;{;border : #d3d3d3 1px dotted;}".split(";")).join("").replace(/%2/g,"cke_show_border").replace(/%1/g,"cke_show_borders "),CKEDITOR.addCss(a)},init:function(b){var c=b.addCommand("showborders",a);c.canUndo=!1,!1!==b.config.startupShowBorders&&c.setState(CKEDITOR.TRISTATE_ON),b.on("mode",function(){c.state!=CKEDITOR.TRISTATE_DISABLED&&c.refresh(b)},null,null,100),b.on("contentDom",function(){c.state!=CKEDITOR.TRISTATE_DISABLED&&c.refresh(b)}),b.on("removeFormatCleanup",function(a){a=a.data,b.getCommand("showborders").state==CKEDITOR.TRISTATE_ON&&a.is("table")&&(!a.hasAttribute("border")||0>=parseInt(a.getAttribute("border"),10))&&a.addClass("cke_show_border")})},afterInit:function(a){var b=a.dataProcessor;a=b&&b.dataFilter,b=b&&b.htmlFilter,a&&a.addRules({elements:{table:function(a){a=a.attributes;var b=a["class"],c=parseInt(a.border,10);c&&!(0>=c)||b&&-1!=b.indexOf("cke_show_border")||(a["class"]=(b||"")+" cke_show_border")}}}),b&&b.addRules({elements:{table:function(a){a=a.attributes;var b=a["class"];b&&(a["class"]=b.replace("cke_show_border","").replace(/\s{2}/," ").replace(/^\s+|\s+$/,""))}}})}}),CKEDITOR.on("dialogDefinition",function(a){var b=a.data.name;"table"!=b&&"tableProperties"!=b||(a=a.data.definition,b=a.getContents("info").get("txtBorder"),b.commit=CKEDITOR.tools.override(b.commit,function(a){return function(b,c){a.apply(this,arguments);var d=parseInt(this.getValue(),10);c[!d||0>=d?"addClass":"removeClass"]("cke_show_border")}}),(a=(a=a.getContents("advanced"))&&a.get("advCSSClasses"))&&(a.setup=CKEDITOR.tools.override(a.setup,function(a){return function(){a.apply(this,arguments),this.setValue(this.getValue().replace(/cke_show_border/,""))}}),a.commit=CKEDITOR.tools.override(a.commit,function(a){return function(b,c){a.apply(this,arguments),parseInt(c.getAttribute("border"),10)||c.addClass("cke_show_border")}})))})}(),function(){CKEDITOR.plugins.add("sourcearea",{init:function(b){function c(){var a=e&&this.equals(CKEDITOR.document.getActive());this.hide(),this.setStyle("height",this.getParent().$.clientHeight+"px"),this.setStyle("width",this.getParent().$.clientWidth+"px"),this.show(),a&&this.focus()}if(b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var d=CKEDITOR.plugins.sourcearea;b.addMode("source",function(d){var e=b.ui.space("contents").getDocument().createElement("textarea");e.setStyles(CKEDITOR.tools.extend({width:CKEDITOR.env.ie7Compat?"99%":"100%",height:"100%",resize:"none",outline:"none","text-align":"left"},CKEDITOR.tools.cssVendorPrefix("tab-size",b.config.sourceAreaTabSize||4))),e.setAttribute("dir","ltr"),e.addClass("cke_source").addClass("cke_reset").addClass("cke_enable_context_menu"),b.ui.space("contents").append(e),e=b.editable(new a(b,e)),e.setData(b.getData(1)),CKEDITOR.env.ie&&(e.attachListener(b,"resize",c,e),e.attachListener(CKEDITOR.document.getWindow(),"resize",c,e),CKEDITOR.tools.setTimeout(c,0,e)),b.fire("ariaWidget",this),d()}),b.addCommand("source",d.commands.source),b.ui.addButton&&b.ui.addButton("Source",{label:b.lang.sourcearea.toolbar,command:"source",toolbar:"mode,10"}),b.on("mode",function(){b.getCommand("source").setState("source"==b.mode?CKEDITOR.TRISTATE_ON:CKEDITOR.TRISTATE_OFF)});var e=CKEDITOR.env.ie&&9==CKEDITOR.env.version}}});var a=CKEDITOR.tools.createClass({base:CKEDITOR.editable,proto:{setData:function(a){this.setValue(a),this.status="ready",this.editor.fire("dataReady")},getData:function(){return this.getValue()},insertHtml:function(){},insertElement:function(){},insertText:function(){},setReadOnly:function(a){this[(a?"set":"remove")+"Attribute"]("readOnly","readonly")},detach:function(){a.baseProto.detach.call(this),this.clearCustomData(),this.remove()}}})}(),CKEDITOR.plugins.sourcearea={ -commands:{source:{modes:{wysiwyg:1,source:1},editorFocus:!1,readOnly:1,exec:function(a){"wysiwyg"==a.mode&&a.fire("saveSnapshot"),a.getCommand("source").setState(CKEDITOR.TRISTATE_DISABLED),a.setMode("source"==a.mode?"wysiwyg":"source")},canUndo:!1}}},CKEDITOR.plugins.add("specialchar",{availableLangs:{af:1,ar:1,bg:1,ca:1,cs:1,cy:1,da:1,de:1,"de-ch":1,el:1,en:1,"en-gb":1,eo:1,es:1,et:1,eu:1,fa:1,fi:1,fr:1,"fr-ca":1,gl:1,he:1,hr:1,hu:1,id:1,it:1,ja:1,km:1,ko:1,ku:1,lt:1,lv:1,nb:1,nl:1,no:1,pl:1,pt:1,"pt-br":1,ru:1,si:1,sk:1,sl:1,sq:1,sv:1,th:1,tr:1,tt:1,ug:1,uk:1,vi:1,zh:1,"zh-cn":1},requires:"dialog",init:function(a){var b=this;CKEDITOR.dialog.add("specialchar",this.path+"dialogs/specialchar.js"),a.addCommand("specialchar",{exec:function(){var c=a.langCode,c=b.availableLangs[c]?c:b.availableLangs[c.replace(/-.*/,"")]?c.replace(/-.*/,""):"en";CKEDITOR.scriptLoader.load(CKEDITOR.getUrl(b.path+"dialogs/lang/"+c+".js"),function(){CKEDITOR.tools.extend(a.lang.specialchar,b.langEntries[c]),a.openDialog("specialchar")})},modes:{wysiwyg:1},canUndo:!1}),a.ui.addButton&&a.ui.addButton("SpecialChar",{label:a.lang.specialchar.toolbar,command:"specialchar",toolbar:"insert,50"})}}),CKEDITOR.config.specialChars="! " # $ % & ' ( ) * + - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ € ‘ ’ “ ” – — ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ ° ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ Œ œ Ŵ Ŷ ŵ ŷ ‚ ‛ „ … ™ ► • → ⇒ ⇔ ♦ ≈".split(" "),function(){CKEDITOR.plugins.add("stylescombo",{requires:"richcombo",init:function(a){var b=a.config,c=a.lang.stylescombo,d={},e=[],f=[];a.on("stylesSet",function(c){if(c=c.data.styles){for(var g,h,i,j=0,k=c.length;k>j;j++)g=c[j],a.blockless&&g.element in CKEDITOR.dtd.$block||(h=g.name,g=new CKEDITOR.style(g),a.filter.customConfig&&!a.filter.check(g))||(g._name=h,g._.enterMode=b.enterMode,g._.type=i=g.assignedTo||g.type,g._.weight=j+1e3*(i==CKEDITOR.STYLE_OBJECT?1:i==CKEDITOR.STYLE_BLOCK?2:3),d[h]=g,e.push(g),f.push(g));e.sort(function(a,b){return a._.weight-b._.weight})}}),a.ui.addRichCombo("Styles",{label:c.label,title:c.panelTitle,toolbar:"styles,10",allowedContent:f,panel:{css:[CKEDITOR.skin.getPath("editor")].concat(b.contentsCss),multiSelect:!0,attributes:{"aria-label":c.panelTitle}},init:function(){var a,b,d,f,g,h;for(g=0,h=e.length;h>g;g++)a=e[g],b=a._name,f=a._.type,f!=d&&(this.startGroup(c["panelTitle"+String(f)]),d=f),this.add(b,a.type==CKEDITOR.STYLE_OBJECT?b:a.buildPreview(),b);this.commit()},onClick:function(b){a.focus(),a.fire("saveSnapshot"),b=d[b];var c=a.elementPath();a[b.checkActive(c,a)?"removeStyle":"applyStyle"](b),a.fire("saveSnapshot")},onRender:function(){a.on("selectionChange",function(b){var c=this.getValue();b=b.data.path.elements;for(var e,f=0,g=b.length;g>f;f++){e=b[f];for(var h in d)if(d[h].checkElementRemovable(e,!0,a))return void(h!=c&&this.setValue(h))}this.setValue("")},this)},onOpen:function(){var b=a.getSelection().getSelectedElement(),b=a.elementPath(b),e=[0,0,0,0];this.showAll(),this.unmarkAll();for(var f in d){var g=d[f],h=g._.type;g.checkApplicable(b,a,a.activeFilter)?e[h]++:this.hideItem(f),g.checkActive(b,a)&&this.mark(f)}e[CKEDITOR.STYLE_BLOCK]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_BLOCK)]),e[CKEDITOR.STYLE_INLINE]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_INLINE)]),e[CKEDITOR.STYLE_OBJECT]||this.hideGroup(c["panelTitle"+String(CKEDITOR.STYLE_OBJECT)])},refresh:function(){var b=a.elementPath();if(b){for(var c in d)if(d[c].checkApplicable(b,a,a.activeFilter))return;this.setState(CKEDITOR.TRISTATE_DISABLED)}},reset:function(){d={},e=[]}})}})}(),function(){function a(a){return{editorFocus:!1,canUndo:!1,modes:{wysiwyg:1},exec:function(b){if(b.editable().hasFocus){var c,d=b.getSelection();if(c=new CKEDITOR.dom.elementPath(d.getCommonAncestor(),d.root).contains({td:1,th:1},1)){var d=b.createRange(),e=CKEDITOR.tools.tryThese(function(){var b=c.getParent().$.cells[c.$.cellIndex+(a?-1:1)];return b.parentNode.parentNode,b},function(){var b=c.getParent(),b=b.getAscendant("table").$.rows[b.$.rowIndex+(a?-1:1)];return b.cells[a?b.cells.length-1:0]});if(e||a){if(!e)return!0;e=new CKEDITOR.dom.element(e),d.moveToElementEditStart(e),d.checkStartOfBlock()&&d.checkEndOfBlock()||d.selectNodeContents(e)}else{for(var f=c.getAscendant("table").$,e=c.getParent().$.cells,f=new CKEDITOR.dom.element(f.insertRow(-1),b.document),g=0,h=e.length;h>g;g++)f.append(new CKEDITOR.dom.element(e[g],b.document).clone(!1,!1)).appendBogus();d.moveToElementEditStart(f)}return d.select(!0),!0}}return!1}}}var b={editorFocus:!1,modes:{wysiwyg:1,source:1}},c={exec:function(a){a.container.focusNext(!0,a.tabIndex)}},d={exec:function(a){a.container.focusPrevious(!0,a.tabIndex)}};CKEDITOR.plugins.add("tab",{init:function(e){for(var f=!1!==e.config.enableTabKeyTools,g=e.config.tabSpaces||0,h="";g--;)h+=" ";h&&e.on("key",function(a){9==a.data.keyCode&&(e.insertText(h),a.cancel())}),f&&e.on("key",function(a){(9==a.data.keyCode&&e.execCommand("selectNextCell")||a.data.keyCode==CKEDITOR.SHIFT+9&&e.execCommand("selectPreviousCell"))&&a.cancel()}),e.addCommand("blur",CKEDITOR.tools.extend(c,b)),e.addCommand("blurBack",CKEDITOR.tools.extend(d,b)),e.addCommand("selectNextCell",a()),e.addCommand("selectPreviousCell",a(!0))}})}(),CKEDITOR.dom.element.prototype.focusNext=function(a,b){var c,d,e,f,g,h,i=void 0===b?this.getTabIndex():b;if(0>=i)for(g=this.getNextSourceNode(a,CKEDITOR.NODE_ELEMENT);g;){if(g.isVisible()&&0===g.getTabIndex()){e=g;break}g=g.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT)}else for(g=this.getDocument().getBody().getFirst();g=g.getNextSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!c)if(!d&&g.equals(this)){if(d=!0,a){if(!(g=g.getNextSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;c=1}}else d&&!this.contains(g)&&(c=1);if(g.isVisible()&&!(0>(h=g.getTabIndex()))){if(c&&h==i){e=g;break}h>i&&(!e||!f||f>h)?(e=g,f=h):e||0!==h||(e=g,f=h)}}e&&e.focus()},CKEDITOR.dom.element.prototype.focusPrevious=function(a,b){for(var c,d,e,f,g=void 0===b?this.getTabIndex():b,h=0,i=this.getDocument().getBody().getLast();i=i.getPreviousSourceNode(!1,CKEDITOR.NODE_ELEMENT);){if(!c)if(!d&&i.equals(this)){if(d=!0,a){if(!(i=i.getPreviousSourceNode(!0,CKEDITOR.NODE_ELEMENT)))break;c=1}}else d&&!this.contains(i)&&(c=1);if(i.isVisible()&&!(0>(f=i.getTabIndex())))if(0>=g){if(c&&0===f){e=i;break}f>h&&(e=i,h=f)}else{if(c&&f==g){e=i;break}g>f&&(!e||f>h)&&(e=i,h=f)}}e&&e.focus()},CKEDITOR.plugins.add("table",{requires:"dialog",init:function(a){function b(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains("table",1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}if(!a.blockless){var c=a.lang.table;a.addCommand("table",new CKEDITOR.dialogCommand("table",{context:"table",allowedContent:"table{width,height}[align,border,cellpadding,cellspacing,summary];caption tbody thead tfoot;th td tr[scope];"+(a.plugins.dialogadvtab?"table"+a.plugins.dialogadvtab.allowedContent():""),requiredContent:"table",contentTransformations:[["table{width}: sizeToStyle","table[width]: sizeToAttribute"]]})),a.addCommand("tableProperties",new CKEDITOR.dialogCommand("tableProperties",b())),a.addCommand("tableDelete",b({exec:function(a){var b=a.elementPath().contains("table",1);if(b){var c=b.getParent(),d=a.editable();1!=c.getChildCount()||c.is("td","th")||c.equals(d)||(b=c),a=a.createRange(),a.moveToPosition(b,CKEDITOR.POSITION_BEFORE_START),b.remove(),a.select()}}})),a.ui.addButton&&a.ui.addButton("Table",{label:c.toolbar,command:"table",toolbar:"insert,30"}),CKEDITOR.dialog.add("table",this.path+"dialogs/table.js"),CKEDITOR.dialog.add("tableProperties",this.path+"dialogs/table.js"),a.addMenuItems&&a.addMenuItems({table:{label:c.menu,command:"tableProperties",group:"table",order:5},tabledelete:{label:c.deleteTable,command:"tableDelete",group:"table",order:1}}),a.on("doubleclick",function(a){a.data.element.is("table")&&(a.data.dialog="tableProperties")}),a.contextMenu&&a.contextMenu.addListener(function(){return{tabledelete:CKEDITOR.TRISTATE_OFF,table:CKEDITOR.TRISTATE_OFF}})}}}),function(){function a(a){function b(a){0<c.length||a.type!=CKEDITOR.NODE_ELEMENT||!m.test(a.getName())||a.getCustomData("selected_cell")||(CKEDITOR.dom.element.setMarker(d,a,"selected_cell",!0),c.push(a))}a=a.getRanges();for(var c=[],d={},e=0;e<a.length;e++){var f=a[e];if(f.collapsed)f=f.getCommonAncestor(),(f=f.getAscendant("td",!0)||f.getAscendant("th",!0))&&c.push(f);else{var g,f=new CKEDITOR.dom.walker(f);for(f.guard=b;g=f.next();)g.type==CKEDITOR.NODE_ELEMENT&&g.is(CKEDITOR.dtd.table)||(g=g.getAscendant("td",!0)||g.getAscendant("th",!0))&&!g.getCustomData("selected_cell")&&(CKEDITOR.dom.element.setMarker(d,g,"selected_cell",!0),c.push(g))}}return CKEDITOR.dom.element.clearAllMarkers(d),c}function b(b,c){for(var d=a(b),e=d[0],f=e.getAscendant("table"),e=e.getDocument(),g=d[0].getParent(),h=g.$.rowIndex,d=d[d.length-1],i=d.getParent().$.rowIndex+d.$.rowSpan-1,d=new CKEDITOR.dom.element(f.$.rows[i]),h=c?h:i,g=c?g:d,d=CKEDITOR.tools.buildTableMap(f),f=d[h],h=c?d[h-1]:d[h+1],d=d[0].length,e=e.createElement("tr"),i=0;f[i]&&d>i;i++){var j;1<f[i].rowSpan&&h&&f[i]==h[i]?(j=f[i],j.rowSpan+=1):(j=new CKEDITOR.dom.element(f[i]).clone(),j.removeAttribute("rowSpan"),j.appendBogus(),e.append(j),j=j.$),i+=j.colSpan-1}c?e.insertBefore(g):e.insertAfter(g)}function c(b){if(b instanceof CKEDITOR.dom.selection){var d=a(b),e=d[0].getAscendant("table"),f=CKEDITOR.tools.buildTableMap(e);b=d[0].getParent().$.rowIndex;for(var d=d[d.length-1],g=d.getParent().$.rowIndex+d.$.rowSpan-1,d=[],h=b;g>=h;h++){for(var i=f[h],j=new CKEDITOR.dom.element(e.$.rows[h]),k=0;k<i.length;k++){var l=new CKEDITOR.dom.element(i[k]),m=l.getParent().$.rowIndex;1==l.$.rowSpan?l.remove():(--l.$.rowSpan,m==h&&(m=f[h+1],m[k-1]?l.insertAfter(new CKEDITOR.dom.element(m[k-1])):new CKEDITOR.dom.element(e.$.rows[h+1]).append(l,1))),k+=l.$.colSpan-1}d.push(j)}for(f=e.$.rows,e=new CKEDITOR.dom.element(f[g+1]||(b>0?f[b-1]:null)||e.$.parentNode),h=d.length;h>=0;h--)c(d[h]);return e}return b instanceof CKEDITOR.dom.element&&(e=b.getAscendant("table"),1==e.$.rows.length?e.remove():b.remove()),null}function d(a,b){for(var c=b?1/0:0,d=0;d<a.length;d++){var e;e=a[d];for(var f=b,g=e.getParent().$.cells,h=0,i=0;i<g.length;i++){var j=g[i],h=h+(f?1:j.colSpan);if(j==e.$)break}e=h-1,(b?c>e:e>c)&&(c=e)}return c}function e(b,c){for(var e=a(b),f=e[0].getAscendant("table"),g=d(e,1),e=d(e),g=c?g:e,h=CKEDITOR.tools.buildTableMap(f),f=[],e=[],i=h.length,j=0;i>j;j++)f.push(h[j][g]),e.push(c?h[j][g-1]:h[j][g+1]);for(j=0;i>j;j++)f[j]&&(1<f[j].colSpan&&e[j]==f[j]?(g=f[j],g.colSpan+=1):(g=new CKEDITOR.dom.element(f[j]).clone(),g.removeAttribute("colSpan"),g.appendBogus(),g[c?"insertBefore":"insertAfter"].call(g,new CKEDITOR.dom.element(f[j])),g=g.$),j+=g.rowSpan-1)}function f(a,b){var c=a.getStartElement();if(c=c.getAscendant("td",1)||c.getAscendant("th",1)){var d=c.clone();d.appendBogus(),b?d.insertBefore(c):d.insertAfter(c)}}function g(b){if(b instanceof CKEDITOR.dom.selection){b=a(b);var c,d=b[0]&&b[0].getAscendant("table");a:{var e=0;c=b.length-1;for(var f,i,j={};f=b[e++];)CKEDITOR.dom.element.setMarker(j,f,"delete_cell",!0);for(e=0;f=b[e++];)if((i=f.getPrevious())&&!i.getCustomData("delete_cell")||(i=f.getNext())&&!i.getCustomData("delete_cell")){CKEDITOR.dom.element.clearAllMarkers(j),c=i;break a}CKEDITOR.dom.element.clearAllMarkers(j),i=b[0].getParent(),(i=i.getPrevious())?c=i.getLast():(i=b[c].getParent(),c=(i=i.getNext())?i.getChild(0):null)}for(i=b.length-1;i>=0;i--)g(b[i]);c?h(c,!0):d&&d.remove()}else b instanceof CKEDITOR.dom.element&&(d=b.getParent(),1==d.getChildCount()?d.remove():b.remove())}function h(a,b){var c=a.getDocument(),d=CKEDITOR.document;CKEDITOR.env.ie&&10==CKEDITOR.env.version&&(d.focus(),c.focus()),c=new CKEDITOR.dom.range(c),c["moveToElementEdit"+(b?"End":"Start")](a)||(c.selectNodeContents(a),c.collapse(!b)),c.select(!0)}function i(a,b,c){if(a=a[b],"undefined"==typeof c)return a;for(b=0;a&&b<a.length;b++){if(c.is&&a[b]==c.$)return b;if(b==c)return new CKEDITOR.dom.element(a[b])}return c.is?-1:null}function j(b,c,d){var e,f=a(b);if((c?1!=f.length:2>f.length)||(e=b.getCommonAncestor())&&e.type==CKEDITOR.NODE_ELEMENT&&e.is("table"))return!1;var g;b=f[0],e=b.getAscendant("table");var h=CKEDITOR.tools.buildTableMap(e),j=h.length,k=h[0].length,l=b.getParent().$.rowIndex,m=i(h,l,b);if(c){var n;try{var o=parseInt(b.getAttribute("rowspan"),10)||1;g=parseInt(b.getAttribute("colspan"),10)||1,n=h["up"==c?l-o:"down"==c?l+o:l]["left"==c?m-g:"right"==c?m+g:m]}catch(p){return!1}if(!n||b.$==n)return!1;f["up"==c||"left"==c?"unshift":"push"](new CKEDITOR.dom.element(n))}c=b.getDocument();var q=l,o=n=0,r=!d&&new CKEDITOR.dom.documentFragment(c),s=0;for(c=0;c<f.length;c++){g=f[c];var t=g.getParent(),u=g.getFirst(),v=g.$.colSpan,w=g.$.rowSpan,t=t.$.rowIndex,x=i(h,t,g),s=s+v*w,o=Math.max(o,x-m+v);n=Math.max(n,t-l+w),d||(v=g,(w=v.getBogus())&&w.remove(),v.trim(),g.getChildren().count()&&(t==q||!u||u.isBlockBoundary&&u.isBlockBoundary({br:1})||(q=r.getLast(CKEDITOR.dom.walker.whitespaces(!0)),!q||q.is&&q.is("br")||r.append("br")),g.moveChildren(r)),c?g.remove():g.setHtml("")),q=t}if(d)return n*o==s;for(r.moveChildren(b),b.appendBogus(),o>=k?b.removeAttribute("rowSpan"):b.$.rowSpan=n,n>=j?b.removeAttribute("colSpan"):b.$.colSpan=o,d=new CKEDITOR.dom.nodeList(e.$.rows),f=d.count(),c=f-1;c>=0;c--)e=d.getItem(c),e.$.cells.length||(e.remove(),f++);return b}function k(b,c){var d=a(b);if(1<d.length)return!1;if(c)return!0;var e,d=d[0],f=d.getParent(),g=f.getAscendant("table"),h=CKEDITOR.tools.buildTableMap(g),j=f.$.rowIndex,k=i(h,j,d),l=d.$.rowSpan;if(l>1){e=Math.ceil(l/2);for(var m,l=Math.floor(l/2),f=j+e,g=new CKEDITOR.dom.element(g.$.rows[f]),h=i(h,f),f=d.clone(),j=0;j<h.length;j++){if(m=h[j],m.parentNode==g.$&&j>k){f.insertBefore(new CKEDITOR.dom.element(m));break}m=null}m||g.append(f)}else for(l=e=1,g=f.clone(),g.insertAfter(f),g.append(f=d.clone()),m=i(h,j),k=0;k<m.length;k++)m[k].rowSpan++;return f.appendBogus(),d.$.rowSpan=e,f.$.rowSpan=l,1==e&&d.removeAttribute("rowSpan"),1==l&&f.removeAttribute("rowSpan"),f}function l(b,c){var d=a(b);if(1<d.length)return!1;if(c)return!0;var d=d[0],e=d.getParent(),f=e.getAscendant("table"),f=CKEDITOR.tools.buildTableMap(f),g=i(f,e.$.rowIndex,d),h=d.$.colSpan;if(h>1)e=Math.ceil(h/2),h=Math.floor(h/2);else{for(var h=e=1,j=[],k=0;k<f.length;k++){var l=f[k];j.push(l[g]),1<l[g].rowSpan&&(k+=l[g].rowSpan-1)}for(f=0;f<j.length;f++)j[f].colSpan++}return f=d.clone(),f.insertAfter(d),f.appendBogus(),d.$.colSpan=e,f.$.colSpan=h,1==e&&d.removeAttribute("colSpan"),1==h&&f.removeAttribute("colSpan"),f}var m=/^(?:td|th)$/;CKEDITOR.plugins.tabletools={requires:"table,dialog,contextmenu",init:function(d){function i(a){return CKEDITOR.tools.extend(a||{},{contextSensitive:1,refresh:function(a,b){this.setState(b.contains({td:1,th:1},1)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)}})}function m(a,b){var c=d.addCommand(a,b);d.addFeature(c)}var n=d.lang.table;m("cellProperties",new CKEDITOR.dialogCommand("cellProperties",i({allowedContent:"td th{width,height,border-color,background-color,white-space,vertical-align,text-align}[colspan,rowspan]",requiredContent:"table"}))),CKEDITOR.dialog.add("cellProperties",this.path+"dialogs/tableCell.js"),m("rowDelete",i({requiredContent:"table",exec:function(a){a=a.getSelection(),h(c(a))}})),m("rowInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),b(a,!0)}})),m("rowInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),b(a)}})),m("columnDelete",i({requiredContent:"table",exec:function(b){b=b.getSelection(),b=a(b);var c=b[0],d=b[b.length-1];b=c.getAscendant("table");for(var e,f,g=CKEDITOR.tools.buildTableMap(b),i=[],j=0,k=g.length;k>j;j++)for(var l=0,m=g[j].length;m>l;l++)g[j][l]==c.$&&(e=l),g[j][l]==d.$&&(f=l);for(j=e;f>=j;j++)for(l=0;l<g.length;l++)d=g[l],c=new CKEDITOR.dom.element(b.$.rows[l]),d=new CKEDITOR.dom.element(d[j]),d.$&&(1==d.$.colSpan?d.remove():--d.$.colSpan,l+=d.$.rowSpan-1,c.$.cells.length||i.push(c));f=b.$.rows[0]&&b.$.rows[0].cells,e=new CKEDITOR.dom.element(f[e]||(e?f[e-1]:b.$.parentNode)),i.length==k&&b.remove(),e&&h(e,!0)}})),m("columnInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),e(a,!0)}})),m("columnInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),e(a)}})),m("cellDelete",i({requiredContent:"table",exec:function(a){a=a.getSelection(),g(a)}})),m("cellMerge",i({allowedContent:"td[colspan,rowspan]",requiredContent:"td[colspan,rowspan]",exec:function(a){h(j(a.getSelection()),!0)}})),m("cellMergeRight",i({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){h(j(a.getSelection(),"right"),!0)}})),m("cellMergeDown",i({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){h(j(a.getSelection(),"down"),!0)}})),m("cellVerticalSplit",i({allowedContent:"td[rowspan]",requiredContent:"td[rowspan]",exec:function(a){h(l(a.getSelection()))}})),m("cellHorizontalSplit",i({allowedContent:"td[colspan]",requiredContent:"td[colspan]",exec:function(a){h(k(a.getSelection()))}})),m("cellInsertBefore",i({requiredContent:"table",exec:function(a){a=a.getSelection(),f(a,!0)}})),m("cellInsertAfter",i({requiredContent:"table",exec:function(a){a=a.getSelection(),f(a)}})),d.addMenuItems&&d.addMenuItems({tablecell:{label:n.cell.menu,group:"tablecell",order:1,getItems:function(){var b=d.getSelection(),c=a(b);return{tablecell_insertBefore:CKEDITOR.TRISTATE_OFF,tablecell_insertAfter:CKEDITOR.TRISTATE_OFF,tablecell_delete:CKEDITOR.TRISTATE_OFF,tablecell_merge:j(b,null,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_right:j(b,"right",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_merge_down:j(b,"down",!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_vertical:l(b,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_split_horizontal:k(b,!0)?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED,tablecell_properties:0<c.length?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED}}},tablecell_insertBefore:{label:n.cell.insertBefore,group:"tablecell",command:"cellInsertBefore",order:5},tablecell_insertAfter:{label:n.cell.insertAfter,group:"tablecell",command:"cellInsertAfter",order:10},tablecell_delete:{label:n.cell.deleteCell,group:"tablecell",command:"cellDelete",order:15},tablecell_merge:{label:n.cell.merge,group:"tablecell",command:"cellMerge",order:16},tablecell_merge_right:{label:n.cell.mergeRight,group:"tablecell",command:"cellMergeRight",order:17},tablecell_merge_down:{label:n.cell.mergeDown,group:"tablecell",command:"cellMergeDown",order:18},tablecell_split_horizontal:{label:n.cell.splitHorizontal,group:"tablecell",command:"cellHorizontalSplit",order:19},tablecell_split_vertical:{label:n.cell.splitVertical,group:"tablecell",command:"cellVerticalSplit",order:20},tablecell_properties:{label:n.cell.title,group:"tablecellproperties",command:"cellProperties",order:21},tablerow:{label:n.row.menu,group:"tablerow",order:1,getItems:function(){return{tablerow_insertBefore:CKEDITOR.TRISTATE_OFF,tablerow_insertAfter:CKEDITOR.TRISTATE_OFF,tablerow_delete:CKEDITOR.TRISTATE_OFF}}},tablerow_insertBefore:{label:n.row.insertBefore,group:"tablerow",command:"rowInsertBefore",order:5},tablerow_insertAfter:{label:n.row.insertAfter,group:"tablerow",command:"rowInsertAfter",order:10},tablerow_delete:{label:n.row.deleteRow,group:"tablerow",command:"rowDelete",order:15},tablecolumn:{label:n.column.menu,group:"tablecolumn",order:1,getItems:function(){return{tablecolumn_insertBefore:CKEDITOR.TRISTATE_OFF,tablecolumn_insertAfter:CKEDITOR.TRISTATE_OFF,tablecolumn_delete:CKEDITOR.TRISTATE_OFF}}},tablecolumn_insertBefore:{label:n.column.insertBefore,group:"tablecolumn",command:"columnInsertBefore",order:5},tablecolumn_insertAfter:{label:n.column.insertAfter,group:"tablecolumn",command:"columnInsertAfter",order:10},tablecolumn_delete:{label:n.column.deleteColumn,group:"tablecolumn",command:"columnDelete",order:15}}),d.contextMenu&&d.contextMenu.addListener(function(a,b,c){return(a=c.contains({td:1,th:1},1))&&!a.isReadOnly()?{tablecell:CKEDITOR.TRISTATE_OFF,tablerow:CKEDITOR.TRISTATE_OFF,tablecolumn:CKEDITOR.TRISTATE_OFF}:null})},getSelectedCells:a},CKEDITOR.plugins.add("tabletools",CKEDITOR.plugins.tabletools)}(),CKEDITOR.tools.buildTableMap=function(a){a=a.$.rows;for(var b=-1,c=[],d=0;d<a.length;d++){b++,!c[b]&&(c[b]=[]);for(var e=-1,f=0;f<a[d].cells.length;f++){var g=a[d].cells[f];for(e++;c[b][e];)e++;for(var h=isNaN(g.colSpan)?1:g.colSpan,g=isNaN(g.rowSpan)?1:g.rowSpan,i=0;g>i;i++){c[b+i]||(c[b+i]=[]);for(var j=0;h>j;j++)c[b+i][e+j]=a[d].cells[f]}e+=h-1}}return c},function(){function a(a){function c(){for(var c=d(),f=CKEDITOR.tools.clone(a.config.toolbarGroups)||b(a),g=0;g<f.length;g++){var h=f[g];if("/"!=h){"string"==typeof h&&(h=f[g]={name:h});var i,j=h.groups;if(j)for(var k=0;k<j.length;k++)i=j[k],(i=c[i])&&e(h,i);(i=c[h.name])&&e(h,i)}}return f}function d(){var b,c,d,e={};for(b in a.ui.items)c=a.ui.items[b],d=c.toolbar||"others",d=d.split(","),c=d[0],d=parseInt(d[1]||-1,10),e[c]||(e[c]=[]),e[c].push({name:b,order:d});for(c in e)e[c]=e[c].sort(function(a,b){return a.order==b.order?0:0>b.order?-1:0>a.order?1:a.order<b.order?-1:1});return e}function e(b,c){if(c.length){b.items?b.items.push(a.ui.create("-")):b.items=[];for(var d;d=c.shift();)d="string"==typeof d?d:d.name,g&&-1!=CKEDITOR.tools.indexOf(g,d)||(d=a.ui.create(d))&&a.addFeature(d)&&b.items.push(d)}}function f(a){var b,c,d,f=[];for(b=0;b<a.length;++b)c=a[b],d={},"/"==c?f.push(c):CKEDITOR.tools.isArray(c)?(e(d,CKEDITOR.tools.clone(c)),f.push(d)):c.items&&(e(d,CKEDITOR.tools.clone(c.items)),d.name=c.name,f.push(d));return f}var g=a.config.removeButtons,g=g&&g.split(","),h=a.config.toolbar;return"string"==typeof h&&(h=a.config["toolbar_"+h]),a.toolbar=h?f(h):c()}function b(a){return a._.toolbarGroups||(a._.toolbarGroups=[{name:"document",groups:["mode","document","doctools"]},{name:"clipboard",groups:["clipboard","undo"]},{name:"editing",groups:["find","selection","spellchecker"]},{name:"forms"},"/",{name:"basicstyles",groups:["basicstyles","cleanup"]},{name:"paragraph",groups:["list","indent","blocks","align","bidi"]},{name:"links"},{name:"insert"},"/",{name:"styles"},{name:"colors"},{name:"tools"},{name:"others"},{name:"about"}])}var c=function(){this.toolbars=[],this.focusCommandExecuted=!1};c.prototype.focus=function(){for(var a,b=0;a=this.toolbars[b++];)for(var c,d=0;c=a.items[d++];)if(c.focus)return void c.focus()};var d={modes:{wysiwyg:1,source:1},readOnly:1,exec:function(a){a.toolbox&&(a.toolbox.focusCommandExecuted=!0,CKEDITOR.env.ie||CKEDITOR.env.air?setTimeout(function(){a.toolbox.focus()},100):a.toolbox.focus())}};CKEDITOR.plugins.add("toolbar",{requires:"button",init:function(b){var e,f=function(a,c){var d,g="rtl"==b.lang.dir,h=b.config.toolbarGroupCycling,i=g?37:39,g=g?39:37,h=void 0===h||h;switch(c){case 9:case CKEDITOR.SHIFT+9:for(;!d||!d.items.length;)if(d=9==c?(d?d.next:a.toolbar.next)||b.toolbox.toolbars[0]:(d?d.previous:a.toolbar.previous)||b.toolbox.toolbars[b.toolbox.toolbars.length-1],d.items.length)for(a=d.items[e?d.items.length-1:0];a&&!a.focus;)(a=e?a.previous:a.next)||(d=0);return a&&a.focus(),!1;case i:d=a;do d=d.next,!d&&h&&(d=a.toolbar.items[0]);while(d&&!d.focus);return d?d.focus():f(a,9),!1;case 40:return a.button&&a.button.hasArrow?(b.once("panelShow",function(a){a.data._.panel._.currentBlock.onKeyDown(40)}),a.execute()):f(a,40==c?i:g),!1;case g:case 38:d=a;do d=d.previous,!d&&h&&(d=a.toolbar.items[a.toolbar.items.length-1]);while(d&&!d.focus);return d?d.focus():(e=1,f(a,CKEDITOR.SHIFT+9),e=0),!1;case 27:return b.focus(),!1;case 13:case 32:return a.execute(),!1}return!0};b.on("uiSpace",function(d){if(d.data.space==b.config.toolbarLocation){d.removeListener(),b.toolbox=new c;var e,g,h=CKEDITOR.tools.getNextId(),i=['<span id="',h,'" class="cke_voice_label">',b.lang.toolbar.toolbars,"</span>",'<span id="'+b.ui.spaceId("toolbox")+'" class="cke_toolbox" role="group" aria-labelledby="',h,'" onmousedown="return false;">'],h=!1!==b.config.toolbarStartupExpanded;b.config.toolbarCanCollapse&&b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE&&i.push('<span class="cke_toolbox_main"'+(h?">":' style="display:none">'));for(var j=b.toolbox.toolbars,k=a(b),l=0;l<k.length;l++){var m,n,o,p=0,q=k[l];if(q)if(e&&(i.push("</span>"),g=e=0),"/"===q)i.push('<span class="cke_toolbar_break"></span>');else{o=q.items||q;for(var r=0;r<o.length;r++){var s,t=o[r];if(t){var u=function(a){a=a.render(b,i),v=p.items.push(a)-1,v>0&&(a.previous=p.items[v-1],a.previous.next=a),a.toolbar=p,a.onkey=f,a.onfocus=function(){b.toolbox.focusCommandExecuted||b.focus()}};if(t.type==CKEDITOR.UI_SEPARATOR)g=e&&t;else{if(s=!1!==t.canGroup,!p){m=CKEDITOR.tools.getNextId(),p={id:m,items:[]},n=q.name&&(b.lang.toolbar.toolbarGroups[q.name]||q.name),i.push('<span id="',m,'" class="cke_toolbar"',n?' aria-labelledby="'+m+'_label"':"",' role="toolbar">'),n&&i.push('<span id="',m,'_label" class="cke_voice_label">',n,"</span>"),i.push('<span class="cke_toolbar_start"></span>');var v=j.push(p)-1;v>0&&(p.previous=j[v-1],p.previous.next=p)}s?e||(i.push('<span class="cke_toolgroup" role="presentation">'),e=1):e&&(i.push("</span>"),e=0),g&&(u(g),g=0),u(t)}}}e&&(i.push("</span>"),g=e=0),p&&i.push('<span class="cke_toolbar_end"></span></span>')}}if(b.config.toolbarCanCollapse&&i.push("</span>"),b.config.toolbarCanCollapse&&b.elementMode!=CKEDITOR.ELEMENT_MODE_INLINE){var w=CKEDITOR.tools.addFunction(function(){b.execCommand("toolbarCollapse")});b.on("destroy",function(){CKEDITOR.tools.removeFunction(w)}),b.addCommand("toolbarCollapse",{readOnly:1,exec:function(a){var b=a.ui.space("toolbar_collapser"),c=b.getPrevious(),d=a.ui.space("contents"),e=c.getParent(),f=parseInt(d.$.style.height,10),g=e.$.offsetHeight,h=b.hasClass("cke_toolbox_collapser_min");h?(c.show(),b.removeClass("cke_toolbox_collapser_min"),b.setAttribute("title",a.lang.toolbar.toolbarCollapse)):(c.hide(),b.addClass("cke_toolbox_collapser_min"),b.setAttribute("title",a.lang.toolbar.toolbarExpand)),b.getFirst().setText(h?"▲":"◀"),d.setStyle("height",f-(e.$.offsetHeight-g)+"px"),a.fire("resize",{outerHeight:a.container.$.offsetHeight,contentsHeight:d.$.offsetHeight,outerWidth:a.container.$.offsetWidth})},modes:{wysiwyg:1,source:1}}),b.setKeystroke(CKEDITOR.ALT+(CKEDITOR.env.ie||CKEDITOR.env.webkit?189:109),"toolbarCollapse"),i.push('<a title="'+(h?b.lang.toolbar.toolbarCollapse:b.lang.toolbar.toolbarExpand)+'" id="'+b.ui.spaceId("toolbar_collapser")+'" tabIndex="-1" class="cke_toolbox_collapser'),h||i.push(" cke_toolbox_collapser_min"),i.push('" onclick="CKEDITOR.tools.callFunction('+w+')">','<span class="cke_arrow">▲</span>',"</a>")}i.push("</span>"),d.data.html+=i.join("")}}),b.on("destroy",function(){if(this.toolbox){var a,b,c,d,e=0;for(a=this.toolbox.toolbars;e<a.length;e++)for(c=a[e].items,b=0;b<c.length;b++)d=c[b],d.clickFn&&CKEDITOR.tools.removeFunction(d.clickFn),d.keyDownFn&&CKEDITOR.tools.removeFunction(d.keyDownFn)}}),b.on("uiReady",function(){var a=b.ui.space("toolbox");a&&b.focusManager.add(a,1)}),b.addCommand("toolbarFocus",d),b.setKeystroke(CKEDITOR.ALT+121,"toolbarFocus"),b.ui.add("-",CKEDITOR.UI_SEPARATOR,{}),b.ui.addHandler(CKEDITOR.UI_SEPARATOR,{create:function(){return{render:function(a,b){return b.push('<span class="cke_toolbar_separator" role="separator"></span>'),{}}}}})}}),CKEDITOR.ui.prototype.addToolbarGroup=function(a,c,d){var e=b(this.editor),f=0===c,g={name:a};if(d){if(d=CKEDITOR.tools.search(e,function(a){return a.name==d}))return!d.groups&&(d.groups=[]),c&&(c=CKEDITOR.tools.indexOf(d.groups,c),c>=0)?void d.groups.splice(c+1,0,a):void(f?d.groups.splice(0,0,a):d.groups.push(a));c=null}c&&(c=CKEDITOR.tools.indexOf(e,function(a){return a.name==c})),f?e.splice(0,0,a):"number"==typeof c?e.splice(c+1,0,g):e.push(a)}}(),CKEDITOR.UI_SEPARATOR="separator",CKEDITOR.config.toolbarLocation="top",function(){var a=[CKEDITOR.CTRL+90,CKEDITOR.CTRL+89,CKEDITOR.CTRL+CKEDITOR.SHIFT+90],b={8:1,46:1};CKEDITOR.plugins.add("undo",{init:function(b){function d(a){g.enabled&&!1!==a.data.command.canUndo&&g.save()}function e(){g.enabled=b.readOnly?!1:"wysiwyg"==b.mode,g.onChange()}var g=b.undoManager=new c(b),h=g.editingHandler=new f(g),i=b.addCommand("undo",{exec:function(){g.undo()&&(b.selectionChange(),this.fire("afterUndo"))},startDisabled:!0,canUndo:!1}),j=b.addCommand("redo",{exec:function(){g.redo()&&(b.selectionChange(),this.fire("afterRedo"))},startDisabled:!0,canUndo:!1});b.setKeystroke([[a[0],"undo"],[a[1],"redo"],[a[2],"redo"]]),g.onChange=function(){i.setState(g.undoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED),j.setState(g.redoable()?CKEDITOR.TRISTATE_OFF:CKEDITOR.TRISTATE_DISABLED)},b.on("beforeCommandExec",d),b.on("afterCommandExec",d),b.on("saveSnapshot",function(a){g.save(a.data&&a.data.contentOnly)}),b.on("contentDom",h.attachListeners,h),b.on("instanceReady",function(){b.fire("saveSnapshot")}),b.on("beforeModeUnload",function(){"wysiwyg"==b.mode&&g.save(!0)}),b.on("mode",e),b.on("readOnly",e),b.ui.addButton&&(b.ui.addButton("Undo",{label:b.lang.undo.undo,command:"undo",toolbar:"undo,10"}),b.ui.addButton("Redo",{label:b.lang.undo.redo,command:"redo",toolbar:"undo,20"})),b.resetUndo=function(){g.reset(),b.fire("saveSnapshot")},b.on("updateSnapshot",function(){g.currentImage&&g.update()}),b.on("lockSnapshot",function(a){a=a.data,g.lock(a&&a.dontUpdate,a&&a.forceUpdate)}),b.on("unlockSnapshot",g.unlock,g)}}),CKEDITOR.plugins.undo={};var c=CKEDITOR.plugins.undo.UndoManager=function(a){this.strokesRecorded=[0,0],this.locked=null,this.previousKeyGroup=-1,this.limit=a.config.undoStackSize||20,this.strokesLimit=25,this.editor=a,this.reset()};c.prototype={type:function(a,b){var d=c.getKeyGroup(a),e=this.strokesRecorded[d]+1;b=b||e>=this.strokesLimit,this.typing||(this.hasUndo=this.typing=!0,this.hasRedo=!1,this.onChange()),b?(e=0,this.editor.fire("saveSnapshot")):this.editor.fire("change"),this.strokesRecorded[d]=e,this.previousKeyGroup=d},keyGroupChanged:function(a){return c.getKeyGroup(a)!=this.previousKeyGroup},reset:function(){this.snapshots=[],this.index=-1,this.currentImage=null,this.hasRedo=this.hasUndo=!1,this.locked=null,this.resetType()},resetType:function(){this.strokesRecorded=[0,0],this.typing=!1,this.previousKeyGroup=-1},refreshState:function(){this.hasUndo=!!this.getNextImage(!0),this.hasRedo=!!this.getNextImage(!1),this.resetType(),this.onChange()},save:function(a,b,c){var e=this.editor;if(this.locked||"ready"!=e.status||"wysiwyg"!=e.mode)return!1;var f=e.editable();if(!f||"ready"!=f.status)return!1;if(f=this.snapshots,b||(b=new d(e)),!1===b.contents)return!1;if(this.currentImage)if(b.equalsContent(this.currentImage)){if(a||b.equalsSelection(this.currentImage))return!1}else!1!==c&&e.fire("change");return f.splice(this.index+1,f.length-this.index-1),f.length==this.limit&&f.shift(),this.index=f.push(b)-1,this.currentImage=b,!1!==c&&this.refreshState(),!0},restoreImage:function(a){var b,c=this.editor;a.bookmarks&&(c.focus(), -b=c.getSelection()),this.locked={level:999},this.editor.loadSnapshot(a.contents),a.bookmarks?b.selectBookmarks(a.bookmarks):CKEDITOR.env.ie&&(b=this.editor.document.getBody().$.createTextRange(),b.collapse(!0),b.select()),this.locked=null,this.index=a.index,this.currentImage=this.snapshots[this.index],this.update(),this.refreshState(),c.fire("change")},getNextImage:function(a){var b,c=this.snapshots,d=this.currentImage;if(d)if(a){for(b=this.index-1;b>=0;b--)if(a=c[b],!d.equalsContent(a))return a.index=b,a}else for(b=this.index+1;b<c.length;b++)if(a=c[b],!d.equalsContent(a))return a.index=b,a;return null},redoable:function(){return this.enabled&&this.hasRedo},undoable:function(){return this.enabled&&this.hasUndo},undo:function(){if(this.undoable()){this.save(!0);var a=this.getNextImage(!0);if(a)return this.restoreImage(a),!0}return!1},redo:function(){if(this.redoable()&&(this.save(!0),this.redoable())){var a=this.getNextImage(!1);if(a)return this.restoreImage(a),!0}return!1},update:function(a){if(!this.locked){a||(a=new d(this.editor));for(var b=this.index,c=this.snapshots;b>0&&this.currentImage.equalsContent(c[b-1]);)--b;c.splice(b,this.index-b+1,a),this.index=b,this.currentImage=a}},updateSelection:function(a){if(!this.snapshots.length)return!1;var b=this.snapshots,c=b[b.length-1];return c.equalsContent(a)&&!c.equalsSelection(a)?(this.currentImage=b[b.length-1]=a,!0):!1},lock:function(a,b){if(this.locked)this.locked.level++;else if(a)this.locked={level:1};else{var c=null;if(b)c=!0;else{var e=new d(this.editor,!0);this.currentImage&&this.currentImage.equalsContent(e)&&(c=e)}this.locked={update:c,level:1}}},unlock:function(){if(this.locked&&!--this.locked.level){var a=this.locked.update;if(this.locked=null,!0===a)this.update();else if(a){var b=new d(this.editor,!0);a.equalsContent(b)||this.update()}}}},c.navigationKeyCodes={37:1,38:1,39:1,40:1,36:1,35:1,33:1,34:1},c.keyGroups={PRINTABLE:0,FUNCTIONAL:1},c.isNavigationKey=function(a){return!!c.navigationKeyCodes[a]},c.getKeyGroup=function(a){var d=c.keyGroups;return b[a]?d.FUNCTIONAL:d.PRINTABLE},c.getOppositeKeyGroup=function(a){var b=c.keyGroups;return a==b.FUNCTIONAL?b.PRINTABLE:b.FUNCTIONAL},c.ieFunctionalKeysBug=function(a){return CKEDITOR.env.ie&&c.getKeyGroup(a)==c.keyGroups.FUNCTIONAL};var d=CKEDITOR.plugins.undo.Image=function(a,b){this.editor=a,a.fire("beforeUndoImage");var c=a.getSnapshot();CKEDITOR.env.ie&&c&&(c=c.replace(/\s+data-cke-expando=".*?"/g,"")),this.contents=c,b||(this.bookmarks=(c=c&&a.getSelection())&&c.createBookmarks2(!0)),a.fire("afterUndoImage")},e=/\b(?:href|src|name)="[^"]*?"/gi;d.prototype={equalsContent:function(a){var b=this.contents;return a=a.contents,CKEDITOR.env.ie&&(CKEDITOR.env.ie7Compat||CKEDITOR.env.quirks)&&(b=b.replace(e,""),a=a.replace(e,"")),b==a},equalsSelection:function(a){var b=this.bookmarks;if(a=a.bookmarks,b||a){if(!b||!a||b.length!=a.length)return!1;for(var c=0;c<b.length;c++){var d=b[c],e=a[c];if(d.startOffset!=e.startOffset||d.endOffset!=e.endOffset||!CKEDITOR.tools.arrayCompare(d.start,e.start)||!CKEDITOR.tools.arrayCompare(d.end,e.end))return!1}}return!0}};var f=CKEDITOR.plugins.undo.NativeEditingHandler=function(a){this.undoManager=a,this.ignoreInputEvent=!1,this.keyEventsStack=new g,this.lastKeydownImage=null};f.prototype={onKeydown:function(b){var e=b.data.getKey();229!==e&&(-1<CKEDITOR.tools.indexOf(a,b.data.getKeystroke())?b.data.preventDefault():(this.keyEventsStack.cleanUp(b),b=this.undoManager,this.keyEventsStack.getLast(e)||this.keyEventsStack.push(e),this.lastKeydownImage=new d(b.editor),(c.isNavigationKey(e)||this.undoManager.keyGroupChanged(e))&&(b.strokesRecorded[0]||b.strokesRecorded[1])&&(b.save(!1,this.lastKeydownImage,!1),b.resetType())))},onInput:function(){if(this.ignoreInputEvent)this.ignoreInputEvent=!1;else{var a=this.keyEventsStack.getLast();a||(a=this.keyEventsStack.push(0)),this.keyEventsStack.increment(a.keyCode),this.keyEventsStack.getTotalInputs()>=this.undoManager.strokesLimit&&(this.undoManager.type(a.keyCode,!0),this.keyEventsStack.resetInputs())}},onKeyup:function(a){var b=this.undoManager;a=a.data.getKey();var e=this.keyEventsStack.getTotalInputs();this.keyEventsStack.remove(a),c.ieFunctionalKeysBug(a)&&this.lastKeydownImage&&this.lastKeydownImage.equalsContent(new d(b.editor,!0))||(e>0?b.type(a):c.isNavigationKey(a)&&this.onNavigationKey(!0))},onNavigationKey:function(a){var b=this.undoManager;!a&&b.save(!0,null,!1)||b.updateSelection(new d(b.editor)),b.resetType()},ignoreInputEventListener:function(){this.ignoreInputEvent=!0},attachListeners:function(){var a=this.undoManager.editor,b=a.editable(),d=this;b.attachListener(b,"keydown",function(a){d.onKeydown(a),c.ieFunctionalKeysBug(a.data.getKey())&&d.onInput()},null,null,999),b.attachListener(b,CKEDITOR.env.ie?"keypress":"input",d.onInput,d,null,999),b.attachListener(b,"keyup",d.onKeyup,d,null,999),b.attachListener(b,"paste",d.ignoreInputEventListener,d,null,999),b.attachListener(b,"drop",d.ignoreInputEventListener,d,null,999),b.attachListener(b.isInline()?b:a.document.getDocumentElement(),"click",function(){d.onNavigationKey()},null,null,999),b.attachListener(this.undoManager.editor,"blur",function(){d.keyEventsStack.remove(9)},null,null,999)}};var g=CKEDITOR.plugins.undo.KeyEventsStack=function(){this.stack=[]};g.prototype={push:function(a){return a=this.stack.push({keyCode:a,inputs:0}),this.stack[a-1]},getLastIndex:function(a){if("number"!=typeof a)return this.stack.length-1;for(var b=this.stack.length;b--;)if(this.stack[b].keyCode==a)return b;return-1},getLast:function(a){return a=this.getLastIndex(a),-1!=a?this.stack[a]:null},increment:function(a){this.getLast(a).inputs++},remove:function(a){a=this.getLastIndex(a),-1!=a&&this.stack.splice(a,1)},resetInputs:function(a){if("number"==typeof a)this.getLast(a).inputs=0;else for(a=this.stack.length;a--;)this.stack[a].inputs=0},getTotalInputs:function(){for(var a=this.stack.length,b=0;a--;)b+=this.stack[a].inputs;return b},cleanUp:function(a){a=a.data.$,a.ctrlKey||a.metaKey||this.remove(17),a.shiftKey||this.remove(16),a.altKey||this.remove(18)}}}(),CKEDITOR.plugins.add("wsc",{requires:"dialog",parseApi:function(a){a.config.wsc_onFinish="function"==typeof a.config.wsc_onFinish?a.config.wsc_onFinish:function(){},a.config.wsc_onClose="function"==typeof a.config.wsc_onClose?a.config.wsc_onClose:function(){}},parseConfig:function(a){a.config.wsc_customerId=a.config.wsc_customerId||CKEDITOR.config.wsc_customerId||"1:ua3xw1-2XyGJ3-GWruD3-6OFNT1-oXcuB1-nR6Bp4-hgQHc-EcYng3-sdRXG3-NOfFk",a.config.wsc_customDictionaryIds=a.config.wsc_customDictionaryIds||CKEDITOR.config.wsc_customDictionaryIds||"",a.config.wsc_userDictionaryName=a.config.wsc_userDictionaryName||CKEDITOR.config.wsc_userDictionaryName||"",a.config.wsc_customLoaderScript=a.config.wsc_customLoaderScript||CKEDITOR.config.wsc_customLoaderScript,CKEDITOR.config.wsc_cmd=a.config.wsc_cmd||CKEDITOR.config.wsc_cmd||"spell",CKEDITOR.config.wsc_version="v4.3.0-master-d769233",CKEDITOR.config.wsc_removeGlobalVariable=!0},init:function(a){var b=CKEDITOR.env;this.parseConfig(a),this.parseApi(a),a.addCommand("checkspell",new CKEDITOR.dialogCommand("checkspell")).modes={wysiwyg:!(CKEDITOR.env.opera||CKEDITOR.env.air||document.domain!=window.location.hostname||b.ie&&(8>b.version||b.quirks))},"undefined"==typeof a.plugins.scayt&&a.ui.addButton&&a.ui.addButton("SpellChecker",{label:a.lang.wsc.toolbar,click:function(a){var b=a.elementMode==CKEDITOR.ELEMENT_MODE_INLINE?a.container.getText():a.document.getBody().getText();(b=b.replace(/\s/g,""))?a.execCommand("checkspell"):alert("Nothing to check!")},toolbar:"spellchecker,10"}),CKEDITOR.dialog.add("checkspell",this.path+(CKEDITOR.env.ie&&7>=CKEDITOR.env.version?"dialogs/wsc_ie.js":window.postMessage?"dialogs/wsc.js":"dialogs/wsc_ie.js"))}}),function(){function a(a){function c(a){var b=!1;h.attachListener(h,"keydown",function(){var c=e.getBody().getElementsByTag(a);if(!b){for(var d=0;d<c.count();d++)c.getItem(d).setCustomData("retain",!0);b=!0}},null,null,1),h.attachListener(h,"keyup",function(){var c=e.getElementsByTag(a);b&&(1!=c.count()||c.getItem(0).getCustomData("retain")||c.getItem(0).remove(1),b=!1)})}var d=this.editor,e=a.document,f=e.body,g=e.getElementById("cke_actscrpt");g&&g.parentNode.removeChild(g),(g=e.getElementById("cke_shimscrpt"))&&g.parentNode.removeChild(g),(g=e.getElementById("cke_basetagscrpt"))&&g.parentNode.removeChild(g),f.contentEditable=!0,CKEDITOR.env.ie&&(f.hideFocus=!0,f.disabled=!0,f.removeAttribute("disabled")),delete this._.isLoadingData,this.$=f,e=new CKEDITOR.dom.document(e),this.setup(),this.fixInitialSelection();var h=this;CKEDITOR.env.ie&&!CKEDITOR.env.edge&&e.getDocumentElement().addClass(e.$.compatMode),CKEDITOR.env.ie&&!CKEDITOR.env.edge&&d.enterMode!=CKEDITOR.ENTER_P?c("p"):CKEDITOR.env.edge&&d.enterMode!=CKEDITOR.ENTER_DIV&&c("div"),(CKEDITOR.env.webkit||CKEDITOR.env.ie&&10<CKEDITOR.env.version)&&e.getDocumentElement().on("mousedown",function(a){a.data.getTarget().is("html")&&setTimeout(function(){d.editable().focus()})}),b(d);try{d.document.$.execCommand("2D-position",!1,!0)}catch(i){}(CKEDITOR.env.gecko||CKEDITOR.env.ie&&"CSS1Compat"==d.document.$.compatMode)&&this.attachListener(this,"keydown",function(a){var b=a.data.getKeystroke();if(33==b||34==b)if(CKEDITOR.env.ie)setTimeout(function(){d.getSelection().scrollIntoView()},0);else if(d.window.$.innerHeight>this.$.offsetHeight){var c=d.createRange();c[33==b?"moveToElementEditStart":"moveToElementEditEnd"](this),c.select(),a.data.preventDefault()}}),CKEDITOR.env.ie&&this.attachListener(e,"blur",function(){try{e.$.selection.empty()}catch(a){}}),CKEDITOR.env.iOS&&this.attachListener(e,"touchend",function(){a.focus()}),f=d.document.getElementsByTag("title").getItem(0),f.data("cke-title",f.getText()),CKEDITOR.env.ie&&(d.document.$.title=this._.docTitle),CKEDITOR.tools.setTimeout(function(){"unloaded"==this.status&&(this.status="ready"),d.fire("contentDom"),this._.isPendingFocus&&(d.focus(),this._.isPendingFocus=!1),setTimeout(function(){d.fire("dataReady")},0)},0,this)}function b(a){function b(){var b;a.editable().attachListener(a,"selectionChange",function(){var d=a.getSelection().getSelectedElement();d&&(b&&(b.detachEvent("onresizestart",c),b=null),d.$.attachEvent("onresizestart",c),b=d.$)})}function c(a){a.returnValue=!1}if(CKEDITOR.env.gecko)try{var d=a.document.$;d.execCommand("enableObjectResizing",!1,!a.config.disableObjectResizing),d.execCommand("enableInlineTableEditing",!1,!a.config.disableNativeTableHandles)}catch(e){}else CKEDITOR.env.ie&&11>CKEDITOR.env.version&&a.config.disableObjectResizing&&b(a)}function c(){var a=[];if(8<=CKEDITOR.document.$.documentMode){a.push("html.CSS1Compat [contenteditable=false]{min-height:0 !important}");var b,c=[];for(b in CKEDITOR.dtd.$removeEmpty)c.push("html.CSS1Compat "+b+"[contenteditable=false]");a.push(c.join(",")+"{display:inline-block}")}else CKEDITOR.env.gecko&&(a.push("html{height:100% !important}"),a.push("img:-moz-broken{-moz-force-broken-image-icon:1;min-width:24px;min-height:24px}"));return a.push("html{cursor:text;*cursor:auto}"),a.push("img,input,textarea{cursor:default}"),a.join("\n")}CKEDITOR.plugins.add("wysiwygarea",{init:function(a){a.config.fullPage&&a.addFeature({allowedContent:"html head title; style [media,type]; body (*)[id]; meta link [*]",requiredContent:"body"}),a.addMode("wysiwyg",function(b){function c(c){c&&c.removeListener(),a.editable(new d(a,f.$.contentWindow.document.body)),a.setData(a.getData(1),b)}var e="document.open();"+(CKEDITOR.env.ie?"("+CKEDITOR.tools.fixDomain+")();":"")+"document.close();",e=CKEDITOR.env.air?"javascript:void(0)":CKEDITOR.env.ie&&!CKEDITOR.env.edge?"javascript:void(function(){"+encodeURIComponent(e)+"}())":"",f=CKEDITOR.dom.element.createFromHtml('<iframe src="'+e+'" frameBorder="0"></iframe>');f.setStyles({width:"100%",height:"100%"}),f.addClass("cke_wysiwyg_frame").addClass("cke_reset"),e=a.ui.space("contents"),e.append(f);var g=CKEDITOR.env.ie&&!CKEDITOR.env.edge||CKEDITOR.env.gecko;g&&f.on("load",c);var h=a.title,i=a.fire("ariaEditorHelpLabel",{}).label;if(h&&(CKEDITOR.env.ie&&i&&(h+=", "+i),f.setAttribute("title",h)),i){var h=CKEDITOR.tools.getNextId(),j=CKEDITOR.dom.element.createFromHtml('<span id="'+h+'" class="cke_voice_label">'+i+"</span>");e.append(j,1),f.setAttribute("aria-describedby",h)}a.on("beforeModeUnload",function(a){a.removeListener(),j&&j.remove()}),f.setAttributes({tabIndex:a.tabIndex,allowTransparency:"true"}),!g&&c(),a.fire("ariaWidget",f)})}}),CKEDITOR.editor.prototype.addContentsCss=function(a){var b=this.config,c=b.contentsCss;CKEDITOR.tools.isArray(c)||(b.contentsCss=c?[c]:[]),b.contentsCss.push(a)};var d=CKEDITOR.tools.createClass({$:function(){this.base.apply(this,arguments),this._.frameLoadedHandler=CKEDITOR.tools.addFunction(function(b){CKEDITOR.tools.setTimeout(a,0,this,b)},this),this._.docTitle=this.getWindow().getFrame().getAttribute("title")},base:CKEDITOR.editable,proto:{setData:function(a,b){var d=this.editor;if(b)this.setHtml(a),this.fixInitialSelection(),d.fire("dataReady");else{this._.isLoadingData=!0,d._.dataStore={id:1};var e=d.config,f=e.fullPage,g=e.docType,h=CKEDITOR.tools.buildStyleHtml(c()).replace(/<style>/,'<style data-cke-temp="1">');f||(h+=CKEDITOR.tools.buildStyleHtml(d.config.contentsCss));var i=e.baseHref?'<base href="'+e.baseHref+'" data-cke-temp="1" />':"";f&&(a=a.replace(/<!DOCTYPE[^>]*>/i,function(a){return d.docType=g=a,""}).replace(/<\?xml\s[^\?]*\?>/i,function(a){return d.xmlDeclaration=a,""})),a=d.dataProcessor.toHtml(a),f?(/<body[\s|>]/.test(a)||(a="<body>"+a),/<html[\s|>]/.test(a)||(a="<html>"+a+"</html>"),/<head[\s|>]/.test(a)?/<title[\s|>]/.test(a)||(a=a.replace(/<head[^>]*>/,"$&<title></title>")):a=a.replace(/<html[^>]*>/,"$&<head><title></title></head>"),i&&(a=a.replace(/<head[^>]*?>/,"$&"+i)),a=a.replace(/<\/head\s*>/,h+"$&"),a=g+a):a=e.docType+'<html dir="'+e.contentsLangDirection+'" lang="'+(e.contentsLanguage||d.langCode)+'"><head><title>'+this._.docTitle+"</title>"+i+h+"</head><body"+(e.bodyId?' id="'+e.bodyId+'"':"")+(e.bodyClass?' class="'+e.bodyClass+'"':"")+">"+a+"</body></html>",CKEDITOR.env.gecko&&(a=a.replace(/<body/,'<body contenteditable="true" '),2e4>CKEDITOR.env.version&&(a=a.replace(/<body[^>]*>/,"$&<!-- cke-content-start -->"))),e='<script id="cke_actscrpt" type="text/javascript"'+(CKEDITOR.env.ie?' defer="defer" ':"")+">var wasLoaded=0;function onload(){if(!wasLoaded)window.parent.CKEDITOR.tools.callFunction("+this._.frameLoadedHandler+",window);wasLoaded=1;}"+(CKEDITOR.env.ie?"onload();":'document.addEventListener("DOMContentLoaded", onload, false );')+"</script>",CKEDITOR.env.ie&&9>CKEDITOR.env.version&&(e+='<script id="cke_shimscrpt">window.parent.CKEDITOR.tools.enableHtml5Elements(document)</script>'),i&&CKEDITOR.env.ie&&10>CKEDITOR.env.version&&(e+='<script id="cke_basetagscrpt">var baseTag = document.querySelector( "base" );baseTag.href = baseTag.href;</script>'),a=a.replace(/(?=\s*<\/(:?head)>)/,e),this.clearCustomData(),this.clearListeners(),d.fire("contentDomUnload");var j=this.getDocument();try{j.write(a)}catch(k){setTimeout(function(){j.write(a)},0)}}},getData:function(a){if(a)return this.getHtml();a=this.editor;var b=a.config,c=b.fullPage,d=c&&a.docType,e=c&&a.xmlDeclaration,f=this.getDocument(),c=c?f.getDocumentElement().getOuterHtml():f.getBody().getHtml();return CKEDITOR.env.gecko&&b.enterMode!=CKEDITOR.ENTER_BR&&(c=c.replace(/<br>(?=\s*(:?$|<\/body>))/,"")),c=a.dataProcessor.toDataFormat(c),e&&(c=e+"\n"+c),d&&(c=d+"\n"+c),c},focus:function(){this._.isLoadingData?this._.isPendingFocus=!0:d.baseProto.focus.call(this)},detach:function(){var a,b=this.editor,c=b.document;try{a=b.window.getFrame()}catch(e){}d.baseProto.detach.call(this),this.clearCustomData(),c.getDocumentElement().clearCustomData(),CKEDITOR.tools.removeFunction(this._.frameLoadedHandler),a&&a.getParent()?(a.clearCustomData(),(b=a.removeCustomData("onResize"))&&b.removeListener(),a.remove()):CKEDITOR.warn("editor-destroy-iframe")}}})}(),CKEDITOR.config.disableObjectResizing=!1,CKEDITOR.config.disableNativeTableHandles=!0,CKEDITOR.config.disableNativeSpellChecker=!0,CKEDITOR.config.plugins="dialogui,dialog,a11yhelp,about,basicstyles,blockquote,clipboard,panel,floatpanel,menu,contextmenu,elementspath,indent,indentlist,list,enterkey,entities,popup,filebrowser,floatingspace,listblock,button,richcombo,format,horizontalrule,htmlwriter,image,fakeobjects,link,magicline,maximize,pastefromword,pastetext,removeformat,resize,menubutton,scayt,showborders,sourcearea,specialchar,stylescombo,tab,table,tabletools,toolbar,undo,wsc,wysiwygarea",CKEDITOR.config.skin="moono",function(){var a=function(a,b){var c=CKEDITOR.getUrl("plugins/"+b);a=a.split(",");for(var d=0;d<a.length;d++)CKEDITOR.skin.icons[a[d]]={path:c,offset:-a[++d],bgsize:a[++d]}};CKEDITOR.env.hidpi?a("about,0,,bold,24,,italic,48,,strike,72,,subscript,96,,superscript,120,,underline,144,,bidiltr,168,,bidirtl,192,,blockquote,216,,copy-rtl,240,,copy,264,,cut-rtl,288,,cut,312,,paste-rtl,336,,paste,360,,codesnippet,384,,bgcolor,408,,textcolor,432,,creatediv,456,,docprops-rtl,480,,docprops,504,,embed,528,,embedsemantic,552,,find-rtl,576,,find,600,,replace,624,,flash,648,,button,672,,checkbox,696,,form,720,,hiddenfield,744,,imagebutton,768,,radio,792,,select-rtl,816,,select,840,,textarea-rtl,864,,textarea,888,,textfield-rtl,912,,textfield,936,,horizontalrule,960,,iframe,984,,image,1008,,indent-rtl,1032,,indent,1056,,outdent-rtl,1080,,outdent,1104,,justifyblock,1128,,justifycenter,1152,,justifyleft,1176,,justifyright,1200,,language,1224,,anchor-rtl,1248,,anchor,1272,,link,1296,,unlink,1320,,bulletedlist-rtl,1344,,bulletedlist,1368,,numberedlist-rtl,1392,,numberedlist,1416,,mathjax,1440,,maximize,1464,,newpage-rtl,1488,,newpage,1512,,pagebreak-rtl,1536,,pagebreak,1560,,pastefromword-rtl,1584,,pastefromword,1608,,pastetext-rtl,1632,,pastetext,1656,,placeholder,1680,,preview-rtl,1704,,preview,1728,,print,1752,,removeformat,1776,,save,1800,,scayt,1824,,selectall,1848,,showblocks-rtl,1872,,showblocks,1896,,smiley,1920,,source-rtl,1944,,source,1968,,sourcedialog-rtl,1992,,sourcedialog,2016,,specialchar,2040,,table,2064,,templates-rtl,2088,,templates,2112,,uicolor,2136,,redo-rtl,2160,,redo,2184,,undo-rtl,2208,,undo,2232,,simplebox,4512,auto,spellchecker,2280,","icons_hidpi.png"):a("about,0,auto,bold,24,auto,italic,48,auto,strike,72,auto,subscript,96,auto,superscript,120,auto,underline,144,auto,bidiltr,168,auto,bidirtl,192,auto,blockquote,216,auto,copy-rtl,240,auto,copy,264,auto,cut-rtl,288,auto,cut,312,auto,paste-rtl,336,auto,paste,360,auto,codesnippet,384,auto,bgcolor,408,auto,textcolor,432,auto,creatediv,456,auto,docprops-rtl,480,auto,docprops,504,auto,embed,528,auto,embedsemantic,552,auto,find-rtl,576,auto,find,600,auto,replace,624,auto,flash,648,auto,button,672,auto,checkbox,696,auto,form,720,auto,hiddenfield,744,auto,imagebutton,768,auto,radio,792,auto,select-rtl,816,auto,select,840,auto,textarea-rtl,864,auto,textarea,888,auto,textfield-rtl,912,auto,textfield,936,auto,horizontalrule,960,auto,iframe,984,auto,image,1008,auto,indent-rtl,1032,auto,indent,1056,auto,outdent-rtl,1080,auto,outdent,1104,auto,justifyblock,1128,auto,justifycenter,1152,auto,justifyleft,1176,auto,justifyright,1200,auto,language,1224,auto,anchor-rtl,1248,auto,anchor,1272,auto,link,1296,auto,unlink,1320,auto,bulletedlist-rtl,1344,auto,bulletedlist,1368,auto,numberedlist-rtl,1392,auto,numberedlist,1416,auto,mathjax,1440,auto,maximize,1464,auto,newpage-rtl,1488,auto,newpage,1512,auto,pagebreak-rtl,1536,auto,pagebreak,1560,auto,pastefromword-rtl,1584,auto,pastefromword,1608,auto,pastetext-rtl,1632,auto,pastetext,1656,auto,placeholder,1680,auto,preview-rtl,1704,auto,preview,1728,auto,print,1752,auto,removeformat,1776,auto,save,1800,auto,scayt,1824,auto,selectall,1848,auto,showblocks-rtl,1872,auto,showblocks,1896,auto,smiley,1920,auto,source-rtl,1944,auto,source,1968,auto,sourcedialog-rtl,1992,auto,sourcedialog,2016,auto,specialchar,2040,auto,table,2064,auto,templates-rtl,2088,auto,templates,2112,auto,uicolor,2136,auto,redo-rtl,2160,auto,redo,2184,auto,undo-rtl,2208,auto,undo,2232,auto,simplebox,2256,auto,spellchecker,2280,auto","icons.png")}())}();var Metronic=function(){var a,b=!1,c=!1,d=!1,e=!1,f=[],g="assets/",h="img/",i="plugins/",j="css/",k={blue:"#89C4F4",red:"#F3565D",green:"#1bbc9b",purple:"#9b59b6",grey:"#95a5a6",yellow:"#F8CB00"},l=function(){"rtl"===$("body").css("direction")&&(b=!0),c=!!navigator.userAgent.match(/MSIE 8.0/),d=!!navigator.userAgent.match(/MSIE 9.0/),e=!!navigator.userAgent.match(/MSIE 10.0/),e&&$("html").addClass("ie10"),(e||d||c)&&$("html").addClass("ie")},m=function(){for(var a=0;a<f.length;a++){var b=f[a];b.call()}},n=function(){var a;if(c){var b;$(window).resize(function(){b!=document.documentElement.clientHeight&&(a&&clearTimeout(a),a=setTimeout(function(){m()},50),b=document.documentElement.clientHeight)})}else $(window).resize(function(){a&&clearTimeout(a),a=setTimeout(function(){m()},50)})},o=function(){$("body").on("click",".portlet > .portlet-title > .tools > a.remove",function(a){a.preventDefault();var b=$(this).closest(".portlet");$("body").hasClass("page-portlet-fullscreen")&&$("body").removeClass("page-portlet-fullscreen"),b.find(".portlet-title .fullscreen").tooltip("destroy"),b.find(".portlet-title > .tools > .reload").tooltip("destroy"),b.find(".portlet-title > .tools > .remove").tooltip("destroy"),b.find(".portlet-title > .tools > .config").tooltip("destroy"),b.find(".portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip("destroy"),b.remove()}),$("body").on("click",".portlet > .portlet-title .fullscreen",function(a){a.preventDefault();var b=$(this).closest(".portlet");if(b.hasClass("portlet-fullscreen"))$(this).removeClass("on"),b.removeClass("portlet-fullscreen"),$("body").removeClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height","auto");else{var c=Metronic.getViewPort().height-b.children(".portlet-title").outerHeight()-parseInt(b.children(".portlet-body").css("padding-top"))-parseInt(b.children(".portlet-body").css("padding-bottom"));$(this).addClass("on"),b.addClass("portlet-fullscreen"),$("body").addClass("page-portlet-fullscreen"),b.children(".portlet-body").css("height",c)}}),$("body").on("click",".portlet > .portlet-title > .tools > a.reload",function(a){a.preventDefault();var b=$(this).closest(".portlet").children(".portlet-body"),c=$(this).attr("data-url"),d=$(this).attr("data-error-display");c?(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),$.ajax({type:"GET",cache:!1,url:c,dataType:"html",success:function(a){Metronic.unblockUI(b),b.html(a)},error:function(a,c,e){Metronic.unblockUI(b);var f="Error on reloading the content. Please check your connection and try again.";"toastr"==d&&toastr?toastr.error(f):"notific8"==d&&$.notific8?($.notific8("zindex",11500),$.notific8(f,{theme:"ruby",life:3e3})):alert(f)}})):(Metronic.blockUI({target:b,animate:!0,overlayColor:"none"}),window.setTimeout(function(){Metronic.unblockUI(b)},1e3))}),$('.portlet .portlet-title a.reload[data-load="true"]').click(),$("body").on("click",".portlet > .portlet-title > .tools > .collapse, .portlet .portlet-title > .tools > .expand",function(a){a.preventDefault()})},p=function(){if($().uniform){var a=$("input[type=checkbox]:not(.toggle, .make-switch, .icheck), input[type=radio]:not(.toggle, .star, .make-switch, .icheck)");a.size()>0&&a.each(function(){0===$(this).parents(".checker").size()&&$(this).show()})}},q=function(){$().iCheck&&$(".icheck").each(function(){var a=$(this).attr("data-checkbox")?$(this).attr("data-checkbox"):"icheckbox_minimal-grey",b=$(this).attr("data-radio")?$(this).attr("data-radio"):"iradio_minimal-grey";a.indexOf("_line")>-1||b.indexOf("_line")>-1?$(this).iCheck({checkboxClass:a,radioClass:b,insert:'<div class="icheck_line-icon"></div>'+$(this).attr("data-label")}):$(this).iCheck({checkboxClass:a,radioClass:b})})},r=function(){$().bootstrapSwitch&&$(".make-switch").bootstrapSwitch()},s=function(){$().confirmation&&$("[data-toggle=confirmation]").confirmation({container:"body",btnOkClass:"btn-xs btn-success",btnCancelClass:"btn-xs btn-danger"})},t=function(){$("body").on("shown.bs.collapse",".accordion.scrollable",function(a){Metronic.scrollTo($(a.target))})},u=function(){if(location.hash){var a=location.hash.substr(1);$('a[href="#'+a+'"]').parents(".tab-pane:hidden").each(function(){var a=$(this).attr("id");$('a[href="#'+a+'"]').click()}),$('a[href="#'+a+'"]').click()}},v=function(){$("body").on("hide.bs.modal",function(){$(".modal:visible").size()>1&&$("html").hasClass("modal-open")===!1?$("html").addClass("modal-open"):$(".modal:visible").size()<=1&&$("html").removeClass("modal-open")}),$("body").on("show.bs.modal",".modal",function(){$(this).hasClass("modal-scroll")&&$("body").addClass("modal-open-noscroll")}),$("body").on("hide.bs.modal",".modal",function(){$("body").removeClass("modal-open-noscroll")}),$("body").on("hidden.bs.modal",".modal:not(.modal-cached)",function(){$(this).removeData("bs.modal")})},w=function(){$(".tooltips").tooltip(),$(".portlet > .portlet-title .fullscreen").tooltip({container:"body",title:"Fullscreen"}),$(".portlet > .portlet-title > .tools > .reload").tooltip({container:"body",title:"Reload"}),$(".portlet > .portlet-title > .tools > .remove").tooltip({container:"body",title:"Remove"}),$(".portlet > .portlet-title > .tools > .config").tooltip({container:"body",title:"Settings"}),$(".portlet > .portlet-title > .tools > .collapse, .portlet > .portlet-title > .tools > .expand").tooltip({container:"body",title:"Collapse/Expand"})},x=function(){$("body").on("click",".dropdown-menu.hold-on-click",function(a){a.stopPropagation()})},y=function(){$("body").on("click",'[data-close="alert"]',function(a){$(this).parent(".alert").hide(),$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-close="note"]',function(a){$(this).closest(".note").hide(),a.preventDefault()}),$("body").on("click",'[data-remove="note"]',function(a){$(this).closest(".note").remove(),a.preventDefault()})},z=function(){$('[data-hover="dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")})},A=function(){$(".popovers").popover(),$(document).on("click.bs.popover.data-api",function(b){a&&a.popover("hide")})},B=function(){Metronic.initSlimScroll(".scroller")},C=function(){jQuery.fancybox&&$(".fancybox-button").size()>0&&$(".fancybox-button").fancybox({groupAttr:"data-rel",prevEffect:"none",nextEffect:"none",closeBtn:!0,helpers:{title:{type:"inside"}}})},D=function(){(c||d)&&$("input[placeholder]:not(.placeholder-no-fix), textarea[placeholder]:not(.placeholder-no-fix)").each(function(){var a=$(this);""===a.val()&&""!==a.attr("placeholder")&&a.addClass("placeholder").val(a.attr("placeholder")),a.focus(function(){a.val()==a.attr("placeholder")&&a.val("")}),a.blur(function(){""!==a.val()&&a.val()!=a.attr("placeholder")||a.val(a.attr("placeholder"))})})},E=function(){$().select2&&$(".select2me").select2({placeholder:"Select"})};return{init:function(){l(),n(),p(),q(),r(),B(),C(),E(),o(),y(),x(),u(),w(),A(),t(),v(),s(),D()},initAjax:function(){p(),q(),r(),z(),B(),E(),C(),x(),w(),A(),t(),s()},initComponents:function(){this.initAjax()},setLastPopedPopover:function(b){a=b},addResizeHandler:function(a){f.push(a)},runResizeHandlers:function(){m()},scrollTo:function(a,b){var c=a&&a.size()>0?a.offset().top:0;a&&($("body").hasClass("page-header-fixed")&&(c-=$(".page-header").height()),c+=b?b:-1*a.height()),$("html,body").animate({scrollTop:c},"slow")},initSlimScroll:function(a){$(a).each(function(){if(!$(this).attr("data-initialized")){var a;a=$(this).attr("data-height")?$(this).attr("data-height"):$(this).css("height"),$(this).slimScroll({allowPageScroll:!0,size:"7px",color:$(this).attr("data-handle-color")?$(this).attr("data-handle-color"):"#bbb",wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",railColor:$(this).attr("data-rail-color")?$(this).attr("data-rail-color"):"#eaeaea",position:b?"left":"right",height:a,alwaysVisible:"1"==$(this).attr("data-always-visible"),railVisible:"1"==$(this).attr("data-rail-visible"),disableFadeOut:!0}),$(this).attr("data-initialized","1")}})},destroySlimScroll:function(a){$(a).each(function(){if("1"===$(this).attr("data-initialized")){$(this).removeAttr("data-initialized"),$(this).removeAttr("style");var a={};$(this).attr("data-handle-color")&&(a["data-handle-color"]=$(this).attr("data-handle-color")),$(this).attr("data-wrapper-class")&&(a["data-wrapper-class"]=$(this).attr("data-wrapper-class")),$(this).attr("data-rail-color")&&(a["data-rail-color"]=$(this).attr("data-rail-color")),$(this).attr("data-always-visible")&&(a["data-always-visible"]=$(this).attr("data-always-visible")),$(this).attr("data-rail-visible")&&(a["data-rail-visible"]=$(this).attr("data-rail-visible")),$(this).slimScroll({wrapperClass:$(this).attr("data-wrapper-class")?$(this).attr("data-wrapper-class"):"slimScrollDiv",destroy:!0});var b=$(this);$.each(a,function(a,c){b.attr(a,c)})}})},scrollTop:function(){Metronic.scrollTo()},blockUI:function(a){a=$.extend(!0,{},a);var b="";if(b=a.animate?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><div class="block-spinner-bar"><div class="bounce1"></div><div class="bounce2"></div><div class="bounce3"></div></div></div>':a.iconOnly?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif" align=""></div>':a.textOnly?'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><span> '+(a.message?a.message:"LOADING...")+"</span></div>":'<div class="loading-message '+(a.boxed?"loading-message-boxed":"")+'"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif" align=""><span> '+(a.message?a.message:"LOADING...")+"</span></div>",a.target){var c=$(a.target);c.height()<=$(window).height()&&(a.cenrerY=!0),c.block({message:b,baseZ:a.zIndex?a.zIndex:1e3,centerY:void 0!==a.cenrerY?a.cenrerY:!1,css:{top:"10%",border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})}else $.blockUI({message:b,baseZ:a.zIndex?a.zIndex:1e3,css:{border:"0",padding:"0",backgroundColor:"none"},overlayCSS:{backgroundColor:a.overlayColor?a.overlayColor:"#555",opacity:a.boxed?.05:.1,cursor:"wait"}})},unblockUI:function(a){a?$(a).unblock({onUnblock:function(){$(a).css("position",""),$(a).css("zoom","")}}):$.unblockUI()},startPageLoading:function(a){a&&a.animate?($(".page-spinner-bar").remove(),$("body").append('<div class="page-spinner-bar"><div class="bounce1"></div><div class="bounce2"></div><div class="bounce3"></div></div>')):($(".page-loading").remove(),$("body").append('<div class="page-loading"><img src="'+this.getGlobalImgPath()+'loading-spinner-blue.gif"/> <span>'+(a&&a.message?a.message:"Loading...")+"</span></div>"))},stopPageLoading:function(){$(".page-loading, .page-spinner-bar").remove()},alert:function(a){a=$.extend(!0,{container:"",place:"append",type:"success",message:"",close:!0,reset:!0,focus:!0,closeInSeconds:0,icon:""},a);var b=Metronic.getUniqueID("Metronic_alert"),c='<div id="'+b+'" class="Metronic-alerts alert alert-'+a.type+' fade in">'+(a.close?'<button type="button" class="close" data-dismiss="alert" aria-hidden="true"></button>':"")+(""!==a.icon?'<i class="fa-lg fa fa-'+a.icon+'"></i> ':"")+a.message+"</div>";return a.reset&&$(".Metronic-alerts").remove(),a.container?"append"==a.place?$(a.container).append(c):$(a.container).prepend(c):$("body").hasClass("page-container-bg-solid")?$(".page-title").after(c):$(".page-bar").size()>0?$(".page-bar").after(c):$(".page-breadcrumb").after(c),a.focus&&Metronic.scrollTo($("#"+b)),a.closeInSeconds>0&&setTimeout(function(){$("#"+b).remove()},1e3*a.closeInSeconds),b},initUniform:function(a){ -a?$(a).each(function(){0===$(this).parents(".checker").size()&&($(this).show(),$(this).uniform())}):p()},updateUniform:function(a){$.uniform.update(a)},initFancybox:function(){C()},getActualVal:function(a){return a=$(a),a.val()===a.attr("placeholder")?"":a.val()},getURLParameter:function(a){var b,c,d=window.location.search.substring(1),e=d.split("&");for(b=0;b<e.length;b++)if(c=e[b].split("="),c[0]==a)return unescape(c[1]);return null},isTouchDevice:function(){try{return document.createEvent("TouchEvent"),!0}catch(a){return!1}},getViewPort:function(){var a=window,b="inner";return"innerWidth"in window||(b="client",a=document.documentElement||document.body),{width:a[b+"Width"],height:a[b+"Height"]}},getUniqueID:function(a){return"prefix_"+Math.floor(Math.random()*(new Date).getTime())},isIE8:function(){return c},isIE9:function(){return d},isRTL:function(){return b},isAngularJsApp:function(){return"undefined"!=typeof angular},getAssetsPath:function(){return g},setAssetsPath:function(a){g=a},setGlobalImgPath:function(a){h=a},getGlobalImgPath:function(){return g+h},setGlobalPluginsPath:function(a){i=a},getGlobalPluginsPath:function(){return g+i},getGlobalCssPath:function(){return g+j},getBrandColor:function(a){return k[a]?k[a]:""},getResponsiveBreakpoint:function(a){var b={xs:480,sm:768,md:900,lg:1200};return b[a]?b[a]:0}}}(),Layout=function(){var a="img/",b="css/",c=Metronic.getResponsiveBreakpoint("md"),d=function(){var a,b=$(".page-content"),d=$(".page-sidebar"),e=$("body");if(e.hasClass("page-footer-fixed")===!0&&e.hasClass("page-sidebar-fixed")===!1){var f=Metronic.getViewPort().height-$(".page-footer").outerHeight()-$(".page-header").outerHeight();b.height()<f&&b.attr("style","min-height:"+f+"px")}else{if(e.hasClass("page-sidebar-fixed"))a=g(),e.hasClass("page-footer-fixed")===!1&&(a-=$(".page-footer").outerHeight());else{var h=$(".page-header").outerHeight(),i=$(".page-footer").outerHeight();a=Metronic.getViewPort().width<c?Metronic.getViewPort().height-h-i:d.height()+20,a+h+i<=Metronic.getViewPort().height&&(a=Metronic.getViewPort().height-h-i)}b.attr("style","min-height:"+a+"px")}},e=function(a,b){var d=location.hash.toLowerCase(),e=$(".page-sidebar-menu");if("click"===a||"set"===a?b=$(b):"match"===a&&e.find("li > a").each(function(){var a=$(this).attr("href").toLowerCase();return a.length>1&&d.substr(1,a.length-1)==a.substr(1)?void(b=$(this)):void 0}),b&&0!=b.size()&&"javascript:;"!==b.attr("href").toLowerCase()&&"#"!==b.attr("href").toLowerCase()){parseInt(e.data("slide-speed")),e.data("keep-expanded");e.find("li.active").removeClass("active"),e.find("li > a > .selected").remove(),e.hasClass("page-sidebar-menu-hover-submenu")===!1?e.find("li.open").each(function(){0===$(this).children(".sub-menu").size()&&($(this).removeClass("open"),$(this).find("> a > .arrow.open").removeClass("open"))}):e.find("li.open").removeClass("open"),b.parents("li").each(function(){$(this).addClass("active"),$(this).find("> a > span.arrow").addClass("open"),1===$(this).parent("ul.page-sidebar-menu").size()&&$(this).find("> a").append('<span class="selected"></span>'),1===$(this).children("ul.sub-menu").size()&&$(this).addClass("open")}),"click"===a&&Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click()}},f=function(){jQuery(".page-sidebar").on("click","li > a",function(a){var b=$(this).next().hasClass("sub-menu");if(!(Metronic.getViewPort().width>=c&&1===$(this).parents(".page-sidebar-menu-hover-submenu").size())){if(b===!1)return void(Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click());if(!$(this).next().hasClass("sub-menu always-open")){var e=$(this).parent().parent(),f=$(this),g=$(".page-sidebar-menu"),h=jQuery(this).next(),i=g.data("auto-scroll"),j=parseInt(g.data("slide-speed")),k=g.data("keep-expanded");k!==!0&&(e.children("li.open").children("a").children(".arrow").removeClass("open"),e.children("li.open").children(".sub-menu:not(.always-open)").slideUp(j),e.children("li.open").removeClass("open"));var l=-200;h.is(":visible")?(jQuery(".arrow",jQuery(this)).removeClass("open"),jQuery(this).parent().removeClass("open"),h.slideUp(j,function(){i===!0&&$("body").hasClass("page-sidebar-closed")===!1&&($("body").hasClass("page-sidebar-fixed")?g.slimScroll({scrollTo:f.position().top}):Metronic.scrollTo(f,l)),d()})):b&&(jQuery(".arrow",jQuery(this)).addClass("open"),jQuery(this).parent().addClass("open"),h.slideDown(j,function(){i===!0&&$("body").hasClass("page-sidebar-closed")===!1&&($("body").hasClass("page-sidebar-fixed")?g.slimScroll({scrollTo:f.position().top}):Metronic.scrollTo(f,l)),d()})),a.preventDefault()}}}),jQuery(".page-sidebar").on("click"," li > a.ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=jQuery(".page-sidebar ul"),e=($(".page-content"),$(".page-content .page-content-body"));d.children("li.active").removeClass("active"),d.children("arrow.open").removeClass("open"),$(this).parents("li").each(function(){$(this).addClass("active"),$(this).children("a > span.arrow").addClass("open")}),$(this).parents("li").addClass("active"),Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click(),Metronic.startPageLoading();var f=$(this);$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(a){0===f.parents("li.open").size()&&$(".page-sidebar-menu > li.open > a").click(),Metronic.stopPageLoading(),e.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){Metronic.stopPageLoading(),e.html("<h4>Could not load the requested content.</h4>")}})}),jQuery(".page-content").on("click",".ajaxify",function(a){a.preventDefault(),Metronic.scrollTop();var b=$(this).attr("href"),d=($(".page-content"),$(".page-content .page-content-body"));Metronic.startPageLoading(),Metronic.getViewPort().width<c&&$(".page-sidebar").hasClass("in")&&$(".page-header .responsive-toggler").click(),$.ajax({type:"GET",cache:!1,url:b,dataType:"html",success:function(a){Metronic.stopPageLoading(),d.html(a),Layout.fixContentHeight(),Metronic.initAjax()},error:function(a,b,c){d.html("<h4>Could not load the requested content.</h4>"),Metronic.stopPageLoading()}})}),i(),$(".page-sidebar").on("click",".sidebar-search .remove",function(a){a.preventDefault(),$(".sidebar-search").removeClass("open")}),$(".page-sidebar .sidebar-search").on("keypress","input.form-control",function(a){return 13==a.which?($(".sidebar-search").submit(),!1):void 0}),0!==$(".sidebar-search").size()&&($(".sidebar-search .input-group").on("click",function(a){a.stopPropagation()}),$("body").on("click",function(){$(".sidebar-search").hasClass("open")&&$(".sidebar-search").removeClass("open")}))},g=function(){var a=Metronic.getViewPort().height-$(".page-header").outerHeight();return $("body").hasClass("page-footer-fixed")&&(a-=$(".page-footer").outerHeight()),a},h=function(){var a=$(".page-sidebar-menu");return Metronic.destroySlimScroll(a),0===$(".page-sidebar-fixed").size()?void d():void(Metronic.getViewPort().width>=c&&(a.attr("data-height",g()),Metronic.initSlimScroll(a),d()))},i=function(){var a=$("body");a.hasClass("page-sidebar-fixed")&&$(".page-sidebar").on("mouseenter",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").removeClass("page-sidebar-menu-closed")}).on("mouseleave",function(){a.hasClass("page-sidebar-closed")&&$(this).find(".page-sidebar-menu").addClass("page-sidebar-menu-closed")})},j=function(){$("body");$.cookie&&"1"===$.cookie("sidebar_closed")&&Metronic.getViewPort().width>=c?($("body").addClass("page-sidebar-closed"),$(".page-sidebar-menu").addClass("page-sidebar-menu-closed")):$.cookie&&$.cookie("sidebar_closed","0")},k=function(){$(".page-header").on("click",'.hor-menu a[data-toggle="tab"]',function(a){a.preventDefault();var b=$(".hor-menu .nav"),c=b.find("li.current");$("li.active",c).removeClass("active"),$(".selected",c).remove();var d=$(this).parents("li").last();d.addClass("current"),d.find("a:first").append('<span class="selected"></span>')}),$(".page-header").on("click",".search-form",function(a){$(this).addClass("open"),$(this).find(".form-control").focus(),$(".page-header .search-form .form-control").on("blur",function(a){$(this).closest(".search-form").removeClass("open"),$(this).unbind("blur")})}),$(".page-header").on("keypress",".hor-menu .search-form .form-control",function(a){return 13==a.which?($(this).closest(".search-form").submit(),!1):void 0}),$(".page-header").on("mousedown",".search-form.open .submit",function(a){a.preventDefault(),a.stopPropagation(),$(this).closest(".search-form").submit()}),$('[data-hover="megamenu-dropdown"]').not(".hover-initialized").each(function(){$(this).dropdownHover(),$(this).addClass("hover-initialized")}),$(document).on("click",".mega-menu-dropdown .dropdown-menu",function(a){a.stopPropagation()})},l=function(){$("body").on("shown.bs.tab",'a[data-toggle="tab"]',function(){d()})},m=function(){var a=300,b=500;navigator.userAgent.match(/iPhone|iPad|iPod/i)?$(window).bind("touchend touchcancel touchleave",function(c){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}):$(window).scroll(function(){$(this).scrollTop()>a?$(".scroll-to-top").fadeIn(b):$(".scroll-to-top").fadeOut(b)}),$(".scroll-to-top").click(function(a){return a.preventDefault(),$("html, body").animate({scrollTop:0},b),!1})},n=function(){var a,b=$(".full-height-content");if(a=Metronic.getViewPort().height-$(".page-header").outerHeight(!0)-$(".page-footer").outerHeight(!0)-$(".page-title").outerHeight(!0)-$(".page-bar").outerHeight(!0),b.hasClass("portlet")){var d=b.find(".portlet-body");if(Metronic.getViewPort().width<c)return void Metronic.destroySlimScroll(d.find(".full-height-content-body"));a=a-b.find(".portlet-title").outerHeight(!0)-parseInt(b.find(".portlet-body").css("padding-top"))-parseInt(b.find(".portlet-body").css("padding-bottom"))-2,b.hasClass("full-height-content-scrollable")?(a-=35,d.find(".full-height-content-body").css("height",a),Metronic.initSlimScroll(d.find(".full-height-content-body"))):d.css("min-height",a)}else{if(Metronic.getViewPort().width<c)return void Metronic.destroySlimScroll(b.find(".full-height-content-body"));b.hasClass("full-height-content-scrollable")?(a-=35,b.find(".full-height-content-body").css("height",a),Metronic.initSlimScroll(b.find(".full-height-content-body"))):b.css("min-height",a)}};return{initHeader:function(){k()},setSidebarMenuActiveLink:function(a,b){e(a,b)},initSidebar:function(){h(),f(),j(),Metronic.isAngularJsApp()&&e("match"),Metronic.addResizeHandler(h)},initContent:function(){n(),l(),Metronic.addResizeHandler(d),Metronic.addResizeHandler(n)},initFooter:function(){m()},init:function(){this.initHeader(),this.initSidebar(),this.initContent(),this.initFooter()},fixContentHeight:function(){d()},initFixedSidebarHoverEffect:function(){i()},initFixedSidebar:function(){h()},getLayoutImgPath:function(){return Metronic.getAssetsPath()+a},getLayoutCssPath:function(){return Metronic.getAssetsPath()+b}}}();angular.module("xCallyShuttleApp").run(["$templateCache",function(a){a.put("app/analytic/extracted/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-file-pdf-o"></i>\n <a href="/analytics/extracted/list">{{ \'APPLICATION_EXTRACTED_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-file-pdf-o font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_EXTRACTED_REPORTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_METRIC\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.metric" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="item.metric" required/></textarea>\n <span data-ng-show="(forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.metric.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/metric/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calculator"></i>\n <a href="/analytics/metrics/list">{{ \'APPLICATION_METRICS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-calculator font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DEFAULT_METRICS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptionsDefault" data-ng-if="gridOptionsDefault" name="gridOptionsDefault" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionsDefault.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n <div class="portlet-title margin-top20">\n <div class="caption font-green-sharp">\n <i class="icon-calculator font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_METRICS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_METRIC\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" data-ng-if="gridOptions" name="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/list/view.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_METRIC\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.metric" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required readonly/>\n <span data-ng-show="(forms.metric.name.$touched || forms.metric.$submitted) && forms.metric.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}</label>\n <ui-select data-ng-model="item.table" name="table" theme="bootstrap" required data-ng-disabled="true">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.metric.table.$touched || forms.metric.$submitted) && forms.metric.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}</label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="item.metric" required readonly/></textarea>\n <span data-ng-show="(forms.metric.metric.$touched || forms.metric.$submitted) && forms.metric.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description" readonly></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/analytic/metric/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getMetric()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/analytics/metrics/list">{{ \'APPLICATION_METRICS\' | translate }}</a>\n <i data-ng-show="metric" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="metric">\n <a href="#">{{metric.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/metric.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{metric.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.analytics.metrics.view.settings\')}">\n <a data-ng-href="/analytics/metrics/view/{{metric.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/metric/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_METRIC\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateMetric()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="metric.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.table.$touched || forms.general.$submitted) && forms.general.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="metric.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.table.$touched || forms.general.$submitted) && forms.general.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE-->\n\n <!-- START METRIC -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.metric.$touched || forms.general.$submitted) && forms.general.metric.$invalid}">\n <label class="control-label">{{\'APPLICATION_METRIC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="metric" placeholder="{{\'APPLICATION_METRIC\' | translate}}" class="form-control" data-ng-model="metric.metric" required/></textarea>\n <span data-ng-show="(forms.general.metric.$touched || forms.general.$submitted) && forms.general.metric.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END METRIC -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="metric.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/analytic/report/list/copy.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_COPY_REPORT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp" style="padding-left:10px;">\n <i class="icon-folder font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_COPY_TO\' | translate }} </span>\n </div>\n </div>\n <div class="portlet-body">\n <div js-tree="customTreeConfig" ng-model="customTreeData" should-apply="ac()" tree="customTreeInstance" tree-events="ready:initCustomScopeTree;"></div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-disabled="!customTree.get_selected(true).pop().id" ng-click="ok()" ng-disabled="forms.report.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_REPORT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.report" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_PATH\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_PATH\' | translate}}" class="form-control" data-ng-model="path" disabled/>\n <span data-ng-show="(forms.report.name.$touched || forms.report.$submitted) && forms.report.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.report.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), -a.put("app/analytic/report/list/extract.modal.html",'<div class="modal-header">\n <button type="button" ng-click="cancel()" class="close">×</button>\n <h4 class="modal-title">{{ \'APPLICATION_EXTRACT_REPORT\' | translate }}</h4>\n</div>\n<div class="modal-body" style="text-align:center;">\n <form name="forms.report" class="form-inline mbottom20" novalidate>\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DATE_RANGE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="daterange" onkeydown="return false" name="dates" ranges="ranges" placeholder="{{\'APPLICATION_DATE_RANGE\' | translate}}" class="form-control" data-ng-model="dates" max-date="{{yesterday}}" data-ng-required="!daily" data-ng-disabled="daily" data-ng-class="{\'disabled-invisible\':daily}" style="cursor:pointer;" readonly/>\n <input\n bs-switch\n class="form-control"\n ng-model="daily"\n type="checkbox"\n name="auth"\n switch-active="{{ dailySwitch.isActive }}"\n switch-on-text="{{ dailySwitch.onText }}"\n switch-off-text="{{ dailySwitch.offText }}"\n switch-on-color="{{ dailySwitch.onColor }}"\n switch-off-color="{{ dailySwitch.offColor }}"\n switch-animate="{{ dailySwitch.animate }}"\n switch-size="{{ dailySwitch.size }}"\n switch-label="{{ dailySwitch.label }}"\n switch-icon="{{ dailySwitch.icon }}"\n switch-radio-off="{{ dailySwitch.radioOff }}"\n switch-label-width="{{ dailySwitch.labelWidth }}"\n switch-handle-width="{{ dailySwitch.handleWidth }}">\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn default green-jungle" type="button" data-ng-click="extract(\'csv\')"><i class="fa fa-file-excel-o"></i> {{ \'APPLICATION_SAVE_AS_CSV\' | translate }}</button>\n <button class="btn default red-intense" type="button" data-ng-click="extract(\'pdf\')"><i class="fa fa-file-pdf-o"></i> {{ \'APPLICATION_SAVE_AS_PDF\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getTrees()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="/analytics/reports/list">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <div class="col-fixed">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp" style="padding-left:10px;">\n <i class="icon-folder font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FOLDERS\' | translate }} </span>\n </div>\n <div class="inputs">\n <div class="portlet-input input-inline input-small">\n <div class="input-icon right">\n <i class="icon-magnifier"></i>\n <input type="text" data-ng-model="searchField" data-ng-change="searchTrees()" class="form-control input-circle" placeholder="search...">\n </div>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div js-tree="defaultTreeConfig" ng-model="defaultTreeData" should-apply="ac()" tree="defaultTreeInstance" tree-events="ready:initDefaultScopeTree;select_node:selectDefaultNode;"></div>\n <div js-tree="customTreeConfig" ng-model="customTreeData" should-apply="ac()" tree="customTreeInstance" tree-events="ready:initCustomScopeTree;select_node:selectCustomNode;rename_node:updateCustomTree;delete_node:updateCustomTree;move_node:updateCustomTree;create_node:updateCustomTree;"></div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n <div class="row tree-row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_REPORTS\' | translate }}<span data-ng-if="selectedNode"> - {{selectedNode}}</span></span>\n </div>\n <div data-ng-if="!defaultTreeActive" class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <span class="btn default btn-file">\n <span class="fileinput-new">\n <i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_JSON\' | translate}}</span>\n <input type="file" on-read-file="import($fileContent)"/>\n </span>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_REPORT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div ng-slide-down="gridOptions" lazy-render duration="1">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/report/list/preview.modal.html",'<div class="modal-header">\n <button type="button" ng-click="cancel()" class="close">×</button>\n <h4 class="modal-title">{{ \'APPLICATION_REPORT_PREVIEW\' | translate }}</h4>\n</div>\n<div class="modal-body" style="text-align:center;">\n <form name="forms.report" class="form-inline mbottom20" novalidate>\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DATE_RANGE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="daterange" name="dates" ranges="ranges" placeholder="{{\'APPLICATION_DATE_RANGE\' | translate}}" class="form-control" data-ng-model="dates" data-ng-change="getPage()" max-date="{{yesterday}}" data-ng-required="!daily" data-ng-disabled="daily" data-ng-class="{\'disabled-invisible\':daily}" style="cursor:pointer;" readonly/>\n <!-- START STATUS -->\n <input\n bs-switch\n class="form-control"\n ng-model="daily"\n type="checkbox"\n name="auth"\n data-ng-change="getPage()"\n switch-active="{{ dailySwitch.isActive }}"\n switch-on-text="{{ dailySwitch.onText }}"\n switch-off-text="{{ dailySwitch.offText }}"\n switch-on-color="{{ dailySwitch.onColor }}"\n switch-off-color="{{ dailySwitch.offColor }}"\n switch-animate="{{ dailySwitch.animate }}"\n switch-size="{{ dailySwitch.size }}"\n switch-label="{{ dailySwitch.label }}"\n switch-icon="{{ dailySwitch.icon }}"\n switch-radio-off="{{ dailySwitch.radioOff }}"\n switch-label-width="{{ dailySwitch.labelWidth }}"\n switch-handle-width="{{ dailySwitch.handleWidth }}">\n </div>\n </form>\n <div ng-slide-down="showResult" lazy-render duration="1">\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="grid extract-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n<button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/analytic/report/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getReport()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="/analytics/reports/list">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n <i data-ng-show="report" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="report">\n <a href="#">{{report.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/report.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{report.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.analytics.reports.view.settings\')}">\n <a data-ng-href="/analytics/reports/view/{{report.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/analytic/report/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_REPORT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li>\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li class="active">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_BUILD\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab" data-ng-click="showResult = true">{{ \'APPLICATION_TEST_PREVIEW\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.report.$valid && forms.general.$valid && updateReport()" novalidate>\n\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="report.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="report.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TABLE INPUT -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_2">\n <form name="forms.report" data-ng-submit="forms.report.$valid && forms.general.$valid && updateReport()" novalidate>\n <div class="form-group" data-ng-class="{\'has-error\': (forms.report.table.$touched || forms.report.$submitted) && forms.report.table.$invalid}">\n <label class="control-label">{{\'APPLICATION_TABLE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="report.table" name="table" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{\'APPLICATION_\'+$select.selected.value.toUpperCase() | translate}}</ui-select-match>\n <ui-select-choices repeat="table.value as table in tables | filter: $select.search">\n <div ng-bind-html="\'APPLICATION_\'+table.value.toUpperCase() | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n </span>\n <span data-ng-show="(forms.report.table.$touched || forms.report.$submitted) && forms.report.table.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TABLE INPUT-->\n <div data-ng-if="report.table" class="mbottom20 pbottom20">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_FIELDS\' | translate}} </span>\n </div>\n </div>\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{ \'APPLICATION_FIELD\' | translate }} / {{ \'APPLICATION_METRIC\' | translate }}</th>\n <th style="min-width:167px;">{{ \'APPLICATION_ALIAS\' | translate }}</th>\n <th>{{ \'APPLICATION_FUNCTION\' | translate }}</th>\n <th>{{ \'APPLICATION_FORMAT\' | translate }}</th>\n <th>{{ \'APPLICATION_GROUP_BY\' | translate }}</th>\n <th>{{ \'APPLICATION_ORDER_BY\' | translate }}</th>\n <th></th>\n <th style="min-width:66px;"></th>\n </tr>\n </thead>\n <tbody ui-sortable="sortableOptions" data-ng-model="report.Fields">\n <tr data-ng-repeat="field in report.Fields">\n <td>\n <!-- START FIELD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.report.$submitted && !field.field}">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.field" dynamic-name="randomName()" theme="bootstrap" on-select="setMetricId($item,$index)" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}"><span ng-bind-html="$select.selected.name"></span></ui-select-match>\n <ui-select-choices repeat="tableField.value as tableField in tableFields | filter: $select.search">\n <div ng-bind-html="tableField.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.report.$submitted && !field.field" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIELD-->\n </td>\n <td>\n <!-- START ALIAS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.report.$submitted && !field.alias}">\n <!-- <label class="control-label">{{\'APPLICATION_ALIAS\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <input type="text" dynamic-name="randomName()" placeholder="{{\'APPLICATION_ALIAS\' | translate}}" class="form-control" data-ng-model="field.alias" required/>\n <span data-ng-show="forms.report.$submitted && !field.alias" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ALIAS -->\n </td>\n <td>\n <!-- START FUNCTION -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.function" name="function" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_FUNCTION\' | translate}}" allow-clear>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="function.value as function in functions | filter: $select.search">\n <div ng-bind-html="function.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END FUNCTION-->\n </td>\n <td>\n <!-- START FORMAT -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.format" name="format" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_FORMAT\' | translate}}" allow-clear>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="format.value as format in formatFunctions | filter: $select.search">\n <div ng-bind-html="format.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END FORMAT-->\n </td>\n <td>\n <!-- START GROUP_BY -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.groupBy" name="groupBy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_GROUP_BY\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="groupBy.value as groupBy in groupByField | filter: $select.search">\n {{$translate.instant(groupBy.name)}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END GROUP_BY-->\n </td>\n <td>\n <!-- START ORDER_BY -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_FIELD\' | translate}}<span class="required" aria-required="true">*</span></label> -->\n <ui-select data-ng-model="field.orderBy" name="orderBy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_ORDER_BY\' | translate}}" allow-clear>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="orderBy in [\'ASC\',\'DESC\'] | filter: $select.search">\n <div ng-bind-html="orderBy | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TABLE INPUT-->\n </td>\n <td class="report-field-remove">\n <button class="btn red" type="button" data-ng-click="removeField($index)"><i class="fa fa-times"></i></button>\n </td>\n <td class="report-field-handle">\n <!-- <img data-ng-src="assets/images/move.png" class="img-responsive"> -->\n </td>\n </tr>\n <tr data-ng-hide="report.Fields.length" class="unsortable">\n <td colspan="7" style="text-align:center;">\n <i>{{ \'MESSAGE_ADD_A_FIELD\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_FIELD\' | translate}}\n </button>\n <!-- END TABLE -->\n </div>\n <div data-ng-if="report.Fields.length" class="mbottom20 pbottom20">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CONDITIONS\' | translate}} </span>\n </div>\n </div>\n <div class="alert alert-info">\n <strong>Output</strong><br>\n <span ng-bind-html="output"></span>\n </div>\n\n <report-builder group="report.conditions.group" fields="tableFields" forms="forms" firstCall=\'true\'></report-builder>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <div ng-slide-down="showResult" lazy-render duration="0.5">\n <div ui-grid="gridOptions" data-ng-if="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-move-columns class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/offline/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/offline/list">{{ \'APPLICATION_OFFLINE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/offline/view/view.detail.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body row" data-ng-init="initView()">\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_MESSAGE\' | translate}}</a>\n <hr>\n </h3>\n <div class="news-block-tags">\n <em am-time-ago="chatVisitor.ChatEnquiry.createdAt"></em>\n </div>\n <p>\n {{chatVisitor.ChatEnquiry.text}}\n </p>\n </div>\n </div>\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_VISITOR\' | translate}}</a>\n <hr>\n </h3>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatVisitor.fullname}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-envelope"></i>\n <a href="#" class="inactive-link">{{chatVisitor.email}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatVisitor.referer}} - {{chatVisitor.ChatWebsite.name}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/offline/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/offline/list">Offline</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/enquiry.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- START USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatVisitor.ChatEnquiry.email}}\n </div>\n <div class="profile-usertitle-job">\n {{chatVisitor.ChatEnquiry.username}}\n </div>\n </div>\n <!-- END USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.offline.view.detail\')}">\n <a data-ng-href="/channels/chat/offline/view/{{chatVisitor.id}}/detail">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_DETAIL\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/online/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/online/list">{{ \'APPLICATION_ONLINE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/online/view/view.detail.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body row" data-ng-init="initView()">\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_MESSAGES\' | translate}}</a>\n <!-- <a href="#" data-ng-click="export()" data-ng-show="chatRoom.ChatMessages.length" class="btn btn-sm blue pull-right"><i class="icon-cloud-download"></i> {{\'APPLICATION_EXPORT\' | translate}} CSV </a> -->\n <a href="api/chat/rooms/{{chatRoom.id}}/export" target="_blank" data-ng-show="chatRoom.ChatMessages.length" class="btn btn-sm blue pull-right"><i class="icon-cloud-download"></i> {{\'APPLICATION_EXPORT\' | translate}} CSV </a>\n <hr>\n </h3>\n <div class="news-block-tags">\n <em am-time-ago="chatRoom.ChatVisitor.ChatEnquiry.createdAt"></em>\n </div>\n <p>\n <div ng-scrollbars ng-scrollbars-config="config">\n <ul class="chats">\n <li data-ng-class="{\'out\': message.User, \'in\':message.ChatVisitor}" data-ng-repeat="message in chatRoom.ChatMessages | orderBy:\'createdAt\'">\n <img class="avatar" data-ng-src="api/users/avatar/{{message.User.userpic || \'unknown_avatar\'}}">\n <div class="message">\n <span class="arrow">\n </span>\n <a href="#" class="name">\n {{message.User ? message.User.fullname : message.ChatVisitor.fullname}}\n </a>\n <span class="datetime">\n at {{message.createdAt | date: \'medium\'}}\n </span>\n <span class="body">\n {{message.body}}\n </span>\n </div>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="news-blocks">\n <h3>\n <a href="#" class="inactive-link">{{\'APPLICATION_VISITOR\' | translate}}</a>\n <hr>\n </h3>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.fullname}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-envelope"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.email}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.referer}} - {{chatRoom.ChatVisitor.ChatWebsite.name}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatRoom.ChatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'), -a.put("app/channels/chat/online/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-login"></i>\n <a href="/channels/chat/online/list">Online</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/enquiry.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- START USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatRoom.ChatVisitor.email}}\n </div>\n <div class="profile-usertitle-job">\n {{chatRoom.ChatVisitor.fullname}}\n </div>\n </div>\n <!-- END USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.online.view.detail\')}">\n <a data-ng-href="/channels/chat/online/view/{{chatRoom.id}}/detail">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_DETAIL\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/preview/preview.html",'<style>\n.xc_header_logo\n{\n display:block;\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/motion_logo.png);\n width:40px;\n height:40px;\n float:left;;\n margin-left: 10px !important;\n margin-top: 6px !important;\n}\n.xc_rating {\n text-align: center;\n}\n.xc_rating_label > input{ /* HIDE RADIO */\n display:none;\n}\n.xc_rating_label > input + img{ /* IMAGE STYLES */\n cursor:pointer;\n border:2px solid transparent;\n}\n.xc_rating_label > input:checked + img{ /* (CHECKED) IMAGE STYLES */\n /*border:2px solid #f00;*/\n background-color: #efefef;\n}\n\n.xc_label {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n.xc_online_message,\n.xc_offline_message,\n.xc_rating_message\n{\n text-align: center;\n}\n\n.xc_div_group {\n margin: 10px 0 10px 0;\n}\n.xc_footer\n{\n text-align: center;\n padding-bottom: 5px;\n}\n\n.xc_powered\n{\n color: grey;\n font: 10px/16px "Lucida Grande","Lucida Sans Unicode",Arial,Verdana,sans-serif;\n padding-bottom: 5px;\n}\n\n.xc_chat_container\n{\n //width:379px;\n //position:fixed;\n //bottom:0;\n //right:50px;\n z-index:9999;\n background-color:transparent;\n}\n\n.xc_chat_container *\n{\n font-family:Arial,Helvetica,sans-serif;\n font-size:13px;\n margin:0;\n padding:0;\n}\n\n.xc_chat_container p\n{\n margin:5px 0;\n}\n\n.xc_signup_wrapper\n{\n max-height:375px;\n}\n\n.xc_conversation_container\n{\n max-height:375px;\n list-style:none;\n overflow:auto;\n margin:0;\n padding:20px 10px;\n}\n\n.xc_conversation_container a\n{\n color:#036;\n}\n\n.xc_conversation_container a.xc_btn_style\n{\n color:#fff;\n}\n\ndiv.xc_chat_head\n{\n color:#fff;\n background:{{chatWebsite.color}};\n //border-radius: 20px 20px 0px 0px !important;\n height:52px;\n line-height:55px;\n cursor:pointer;\n}\n\ndiv.xc_chat_head.rounded\n{\n border-radius: 20px 20px 0px 0px !important;\n}\n\ndiv.xc_chat_head.squared\n{\n //border-radius: 20px 20px 0px 0px !important;\n}\n\n.xc_chat_head-title\n{\n margin:5px 0 0 15px;\n color: #fff;\n}\n\n.xc_header_icon\n{\n display:block;\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/icon_visitorchat.png);\n width:21px;\n height:16px;\n float:right;\n margin:20px 20px 0 0;\n}\n\n.xc_header_icon span.xc_notification_badge span\n{\n display:block;\n height:16px;\n width:15px;\n text-align:center;\n font-size:9px;\n color:#555;\n position:relative;\n top:-20px;\n left:4px;\n margin:0;\n padding:0;\n}\n\n.xc_sub-head-spacer\n{\n padding:1px;\n}\n\n.xc_conversation\n{\n display:none;\n margin:0 12px 0 11px;\n}\n\n.xc_chat_toggle_container\n{\n /*background:mediumslateblue center 52px;*/\n background: white;\n border-style: solid;\n border-width: 1px;\n border-color: {{chatWebsite.color}};\n //display:none;\n}\n\n.xc_signup_wrapper,.xc_notifications_wrapper,.xc_enquiry_wrapper,.xc_rating_wrapper\n{\n //display:none;\n display:block;\n overflow:auto;\n line-height:1;\n padding:25px;\n}\n\n.xc_exit_chat_container\n{\n text-align:right;\n width:95%;\n margin:0 auto;\n padding:5px 1px 0 0;\n}\n\n.xc_exit_chat_container span,.xc_exit_chat_container a\n{\n font-size:80%;\n color:#666;\n text-decoration:none;\n}\n\n.xc_exit_chat_container a:hover\n{\n color:#333;\n}\n\na.xc_btn_exit_chat_confirm:hover\n{\n color:red;\n}\n\na.xc_btn_exit_chat_cancel:hover\n{\n color:#0c0;\n}\n\nform.xc_form_reply\n{\n position:relative;\n}\n\n.xc_form_reply\n{\n /*background-color:#e3e3e3;*/\n text-align:center;\n /*border-top:1px solid #d3d3d3;*/\n}\n\n.xc_input_message\n{\n height:100px;\n margin:10px auto 5px;\n}\n\n.xc_input_enquiry_message,\n.xc_input_rating_message\n{\n height:100px;\n}\n\n.xc_form_signup,.xc_form_enquiry,.xc_form_rating\n{\n /*text-align:center;*/\n}\n\n.xc_chat_container textarea,.xc_chat_container input[type=text]\n{\n width:95%;\n min-width:95%;\n max-width:95%;\n -webkit-box-sizing:border-box;\n -moz-box-sizing:border-box;\n box-sizing:border-box;\n background-color:#fff;\n border:1px solid #ccc;\n -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n -moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);\n -webkit-transition:border linear .2s, box-shadow linear .2s;\n -moz-transition:border linear .2s, box-shadow linear .2s;\n -o-transition:border linear .2s, box-shadow linear .2s;\n transition:border linear .2s, box-shadow linear .2s;\n display:inline-block;\n font-size:14px;\n line-height:20px;\n color:#555;\n -webkit-border-radius:4px;\n -moz-border-radius:4px;\n border-radius:4px;\n vertical-align:middle;\n margin:3px 0;\n padding:4px 6px;\n resize: none;\n}\n\n.xc_chat_container textarea:focus,.xc_chat_container input[type=text]:focus\n{\n outline: {{chatWebsite.color_focus}} auto 5px;\n}\n\n.xc_chat_container input[type=text]\n{\n height: 30px;\n}\n\n.xc_message_sending textarea, .xc_enquiry_sending textarea\n{\n background: #fff url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/loading.gif) 98% 5px no-repeat;\n}\n\n.xc_chatrow\n{\n display:block;\n border-top:1px dashed #e3e3e3;\n margin:5px 0;\n clear: both;\n}\n\n.xc_chatrow p\n{\n color:#444;\n word-wrap:break-word;\n}\n\n.xc_time\n{\n float:right;\n font-size:80%;\n color:#ccc;\n padding-left:12px;\n margin:3px;\n}\n\n.xc_submission_pending\n{\n background:transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_clock.png) left center norepeat;\n}\n\n.xc_submission_confirmed\n{\n background:transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_tick.png) left center norepeat;\n}\n\n.xc_fullname\n{\n font-weight:700;\n}\n\n.xc_fullname:after\n{\n content:":";\n}\n\n.xc_avatar\n{\n float: left;\n margin: 0 5px 5px 0;\n display: inline-block;\n width: 40px;\n height: 40px;\n border-radius: 5px;\n -moz-border-radius: 5px;\n -webkit-border-radius: 5px;\n}\n\n.xc_smilie\n{\n background-repeat:no-repeat;\n display:inline-block;\n width:18px;\n height:18px;\n text-indent:-9999px;\n white-space:nowrap;\n}\n\n.xc_btn_load_more\n{\n width:100%!important;\n}\n\n.xc_notifications_wrapper\n{\n text-shadow:0 1px 0 rgba(255,255,255,0.5);\n}\n\n.xc_notification_success\n{\n color:#468847;\n}\n\n.xc_notification_error\n{\n color:#b94a48;\n}\n\n.xc_errorlist\n{\n margin:0 0 0 25px;\n padding:0;\n}\n\ni.xc_btn_notifications_close\n{\n float:right;\n font-weight:700;\n font-size:20px;\n color:#ccc;\n cursor:pointer;\n margin:-15px 0 0;\n padding:0;\n}\n\n.xc_btn_style\n{\n width:95%;\n text-align:center;\n line-height:1.2;\n font-size:90%;\n -moz-box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n -webkit-box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n box-shadow:inset 0 1px 0 0 {{chatWebsite.color_button}};\n background:0;\n background-color:{{chatWebsite.color_button}};\n -moz-border-radius:4px;\n -webkit-border-radius:4px;\n border-radius:4px;\n border:1px solid {{chatWebsite.color_button}};\n display:inline-block;\n color:#fff;\n font-weight:700;\n text-decoration:none;\n text-shadow:1px 1px 0 #000c17;\n margin:0 auto 5px;\n padding:2px 0;\n}\n\n.xc_btn_style:hover\n{\n background:0;\n background-color:{{chatWebsite.color_button}};\n color: #fff;\n text-decoration: none;\n}\n\n.xc_btn_style:active\n{\n position:relative;\n top:1px;\n}\n\n.xc_composing_container\n{\n display: none;\n width: 95%;\n margin: 0 auto;\n background: transparent url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/bullet_pencil.png) 6px center no-repeat;\n padding-left: 19px;\n font-style: italic;\n}\n\n@media only screen and (max-height: 620px) {\n .xc_conversation_container\n {\n max-height:300px!important;\n }\n}\n\n@media only screen and (max-height: 545px) {\n .xc_conversation_container\n {\n max-height:200px!important;\n }\n}\n\n@media only screen and (max-height: 445px) {\n .xc_conversation_container\n {\n max-height:150px!important;\n }\n}\n\n@media only screen and (max-width: 480px) {\n .xc_chat_container\n {\n width:95%!important;\n right:auto!important;\n -webkit-border-top-left-radius:15px;\n -webkit-border-top-right-radius:15px;\n -moz-border-radius-topleft:15px;\n -moz-border-radius-topright:15px;\n border-top-left-radius:15px;\n border-top-right-radius:15px;\n box-shadow:0 0 5px rgba(0,0,0,.5);\n -webkit-box-shadow:0 0 5px rgba(0,0,0,.5);\n -moz-box-shadow:0 0 5px rgba(0,0,0,.5);\n }\n\n div.xc_chat_head\n {\n background-color:#036;\n background-image:none;\n line-height:25px;\n height:auto;\n -webkit-border-top-left-radius:15px;\n -webkit-border-top-right-radius:15px;\n -moz-border-radius-topleft:15px;\n -moz-border-radius-topright:15px;\n border-top-left-radius:15px;\n border-top-right-radius:15px;\n padding:10px;\n }\n\n .xc_chat_toggle_container\n {\n background-color:#fff;\n background-image:none;\n border-color:#036;\n border-style:solid;\n border-width:0 1px;\n }\n\n .xc_header_icon\n {\n background-image:url({{chatWebsite.remote}}/api/xchatty/assets?resource=images/icon_visitorchat.png);\n margin:0;\n }\n\n .xc_header_icon span.xc_notification_badge span\n {\n top:-5px;\n left:5px;\n }\n\n .xc_notification_success\n {\n background-color:#dff0d8;\n border:1px solid #d6e9c6;\n }\n\n .xc_conversation_container\n {\n max-height:375px;\n border-color:#036;\n }\n\n .xc_notification_error\n {\n background-color:#f2dede;\n border:1px solid #eed3d7;\n }\n\n .xc_sub-head-spacer\n {\n display:none;\n padding:0;\n }\n\n .xc_chat_head-title,.xc_conversation\n {\n margin:0;\n }\n}\n</style>\n<div class="xc_chat_container">\n <div class="xc_chat_head {{chatWebsite.header_shape}}">\n <i class="xc_header_icon">\n <span class="xc_notification_badge">\n <span class="xc_notification_badge_number"></span>\n </span>\n </i>\n <i class="xc_header_logo"></i>\n <span class="xc_chat_head-title">{{statePreview.state == \'online\' ? chatWebsite.header_online : chatWebsite.header_offline}}</span>\n </div>\n <div class="xc_chat_toggle_container">\n <div class="xc_sub-head-spacer"></div>\n <!-- <div class="xc_notifications_wrapper">\n <ul class="xc_errorlist"></ul>\n </div> -->\n <div class="xc_enquiry_wrapper" data-ng-show=\'statePreview.state == "offline"\'>\n <form class="xc_form_enquiry" accept-charset="UTF-8">\n <p class="xc_offline_message" ng-bind-html=\'chatWebsite.offline_message\'></p>\n <br>\n <div ng-if="chatWebsite.enquiry_enable">\n <div class="xc_div_group">\n <label for="enquiryFullname" class="xc_label">{{chatWebsite.name_title}} *</label>\n <input id="enquiryFullname" maxlength="45" data-label="Name" type="text" name="data[Enquiry][fullname]" placeholder="{{chatWebsite.username_placeholder}}" class="xc_input_enquiry_fullname" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="enquiryEmail" class="xc_label">{{chatWebsite.email_title}} *</label>\n <input id="enquiryEmail" maxlength="85" type="text" data-label="Email Address" name="data[Enquiry][email]" placeholder="{{chatWebsite.email_placeholder}}" class="xc_input_enquiry_email" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="enquiryMessage" class="xc_label">{{chatWebsite.message_title}} *</label>\n <textarea id="enquiryMessage" data-label="Message" maxlength="1500" placeholder="{{chatWebsite.enquiry_message_placeholder}}" name="data[Enquiry][message]" class="xc_input_enquiry_message" required></textarea>\n </div>\n <br>\n <button type="submit" class="xc_btn_enquiry xc_btn_style">{{chatWebsite.enquiry_button}}</button>\n </div>\n </form>\n </div>\n <div class="xc_signup_wrapper" data-ng-show=\'statePreview.state == "online"\'>\n <form class="xc_form_signup" accept-charset="UTF-8">\n <p class="xc_online_message" ng-bind-html=\'chatWebsite.online_message\'></p>\n <br>\n <div class="xc_div_group">\n <label for="dataFullname" class="xc_label">{{chatWebsite.name_title}} *</label>\n <input maxlength="45" id="dataFullname" data-label="Fullname" type="text" name="data[Discussion][fullname]" placeholder="{{chatWebsite.username_placeholder}}" class="xc_input_fullname" required/>\n </div>\n <br>\n <div class="xc_div_group">\n <label for="dataEmail" class="xc_label">{{chatWebsite.email_title}} *</label>\n <input maxlength="85" id="dataEmail" data-label="Email Address" type="text" name="data[Discussion][email]" placeholder="{{chatWebsite.email_placeholder}}" class="xc_input_email" required/>\n </div>\n <br>\n <input type="hidden" class="xc_input_visitor_time" name="data[Discussion][visitor_time]" />\n <button type="submit" class="xc_btn_signup xc_btn_style">{{chatWebsite.start_chat_button}}</button>\n </form>\n </div>\n <div class="xc_rating_wrapper" data-ng-show=\'statePreview.state == "rating"\'>\n <form class="xc_form_rating" accept-charset="UTF-8">\n <p class="xc_rating_message">{{chatWebsite.rating_message}}</p>\n <br>\n <div class="xc_rating">\n <label class="xc_rating_label" style="padding:30px;">\n <input type="radio" name="data[Rating][rating]" value="good" />\n <img src="{{chatWebsite.remote}}/api/xchatty/assets?resource=images/like.png" alt="Good" height="50"/>\n </label>\n <label class="xc_rating_label" style="padding:30px;">\n <input type="radio" name="data[Rating][rating]" value="bad"/>\n <img src="{{chatWebsite.remote}}/api/xchatty/assets?resource=images/dislike.png" alt="Good" height="50"/>\n </label>\n </div>\n <div class="xc_div_group">\n <label for="ratingMessage" class="xc_label">Message</label>\n <textarea id="ratingMessage" data-label="Message" maxlength="1500" name="data[Rating][message]" class="xc_input_rating_message"></textarea>\n </div>\n <button type="submit" class="xc_button_rating xc_btn_style">{{chatWebsite.rating_send}}</button>\n <button type="button" class="xc_button_skip_rating xc_btn_style">{{chatWebsite.rating_skip}}</button>\n </form>\n </div>\n <div class="xc_footer">\n <div class="xc_powered"><a>Powered by xCALLY</a></div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/chat/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/chat/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.queues.view.settings\')}">\n <a data-ng-href="/channels/chat/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.chat.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/chat/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateChatQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}} {{\'APPLICATION_TIMEOUT\' | translate}}</label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), -a.put("app/channels/chat/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.chat.realtime.view.agents\')}">\n <a href="/channels/chat/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.chat.realtime.view.applications\')}">\n <a href="/channels/chat/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/external/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n </div>\n</div>\n<div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n</div>\n<div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-selection ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/group/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n </div>\n</div>\n<div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n</div>\n<div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/internal/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initView()">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination class="ui-grid">\n <div class="watermark" data-ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/room.add.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 class="modal-title">{{\'APPLICATION_NEW_GROUP\' | translate}}</h4>\n</div>\n\n<div class="modal-body">\n <div class="portlet box blue">\n <div class="portlet-title">\n <div class="caption">\n <i class="icon-people"></i>{{\'APPLICATION_AGENTS\' | translate}}\n </div>\n </div>\n <div class="portlet-body">\n <ul>\n <li data-ng-repeat="item in items">\n {{item.fullname}}\n </li>\n <li data-ng-repeat="item in selected.items">\n {{item.fullname}}\n </li>\n </ul>\n </div>\n </div>\n\n <ui-select multiple name="items" ng-model="selected.items" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SELECTED_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="{id: agent.id, fullname: agent.fullname} as agent in agents.rows | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n</div>\n\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="selected.items.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/room/room.close.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'),a.put("app/channels/chat/room/room.directive.html",'<div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button type="button" data-ng-click="togglePanelLeft()" style="background: white;">\n <i class="icon-menu"></i>\n </button>\n <span data-ng-if="chatRoom.status === \'CLOSED\'"> | </span>\n <span data-ng-if="chatRoom.status === \'CLOSED\'" class="label label-sm label-default">{{chatRoom.status}}</span>\n <span data-ng-if="chatRoom.ChatWebsite"> | </span>\n <span data-ng-if="chatRoom.ChatWebsite" class="caption-subject font-green-sharp bold uppercase">{{chatRoom.ChatWebsite.name | truncate: 25: \'...\': true}}</span>\n </div>\n <div class="actions">\n <button class="btn btn-icon-only btn-primary" data-ng-click="addAgent(chatRoom.id)" data-ng-disabled="chatRoom.status === \'CLOSED\'">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="btn btn-icon-only" data-ng-class="{\'btn-success\':chatRoom.status !== \'CLOSED\',\'grey-cascade\':chatRoom.status === \'CLOSED\'}" data-ng-click="closeRoom(chatRoom.id)" data-ng-if="chatRoom.ChatVisitors.length" data-ng-disabled="chatRoom.status === \'CLOSED\' && chatRoom.disposition">\n <i data-ng-class="{\'fa fa-upload\':chatRoom.status !== \'CLOSED\',\'icon-target\':chatRoom.status === \'CLOSED\'}"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n<div class="row">\n <div data-ng-class="panelLeft" data-ng-show="panelLeft">\n <div class="portlet">\n <div class="portlet-body">\n <div class="portlet-title line">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged(chatRoom.id)" on-remove="onChanged(chatRoom.id)">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n </div>\n <v-accordion class="vAccordion--default">\n <v-pane data-ng-if="chatRoom.ChatVisitors.length" data-ng-repeat="chatVisitor in chatRoom.ChatVisitors" expanded="true">\n <v-pane-header>\n <ng-letter-avatar\n height="40"\n width="40"\n data="{{chatRoom.ChatVisitor.fullname}}"\n fontsize="25"\n avatarcustombgcolor="#B0B0B0"\n charCount="2"\n avatarcustomborder="border:2px solid #EA4C61"\n shape="round"></ng-letter-avatar>\n </v-pane-header>\n <v-pane-content>\n {{\'APPLICATION_ROOM_ID\' | translate}}: <p>{{chatRoom.id}}</p>\n {{\'APPLICATION_NAME\' | translate}}: <p>{{chatRoom.ChatVisitor.fullname}}</p>\n {{\'APPLICATION_EMAIL\' | translate}}: <p><a data-ng-click="openContact(chatRoom.ChatVisitor.email)" href="">{{chatRoom.ChatVisitor.email}}</a></p>\n {{\'APPLICATION_REMOTE_ADDRESS\' | translate}}: <p>{{chatRoom.ChatVisitor.remote_address}}</p>\n {{\'APPLICATION_BROWSER\' | translate}}: <p>{{chatRoom.ChatVisitor.browser}}</p>\n {{\'APPLICATION_OS\' | translate}}: <p>{{chatRoom.ChatVisitor.os}}</p>\n </v-pane-content>\n </v-pane>\n\n <v-pane data-ng-repeat="user in chatRoom.Users | filter:{ id: \'!\' + user.id}">\n <v-pane-header>\n <ng-letter-avatar\n height="40"\n width="40"\n data="{{user.fullname}}"\n fontsize="25"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n </v-pane-header>\n <v-pane-content>\n {{\'APPLICATION_NAME\' | translate}}: <p>{{user.fullname}}</p>\n {{\'APPLICATION_ROLE\' | translate}}: <p>{{user.role}}</p>\n {{\'APPLICATION_INTERNAL\' | translate}}: <p>{{user.internal}}</p>\n {{\'APPLICATION_EMAIL\' | translate}}: <p><a data-ng-href="mailto:{{user.email}}">{{user.email}}</a></p>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="portlet light bordered">\n <div class="portlet-body">\n <div id="chat-box" schroll-bottom="chatRoom.ChatMessages">\n <ul class="chats">\n <li data-ng-repeat="message in chatRoom.ChatMessages" data-ng-class="message.UserId == user.id ? \'out\' : \'in\'">\n <div class="avatar" data-ng-class="message.ChatVisitor ? \'pretty-avatar-v\' : \'pretty-avatar\'">\n <ng-letter-avatar\n data-ng-if="!message.ChatVisitor"\n height="40"\n width="40"\n fontsize="25"\n data="{{message.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="message.ChatVisitor"\n height="40"\n width="40"\n fontsize="25"\n data="{{message.ChatVisitor.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="2"\n shape="round"></ng-letter-avatar>\n </div>\n <div class="message">\n <span class="arrow"></span>\n <a href="#" class="name">{{message.User.fullname || message.ChatVisitor.fullname}} </a>\n <span am-time-ago="message.createdAt"></span>\n <ng-emoticons emoticons-data="message.body"></ng-emoticons>\n </div>\n </li>\n <li data-ng-if="chatRoom.status === \'CLOSED\'">\n <div class="media-body" style="text-align: center;">\n <h5 class="media-heading"><i>{{\'MESSAGE_CHAT_CLOSED\' | translate | lowercase}}</i></h5>\n </div>\n </li>\n </ul>\n </div>\n <div class="chat-form" data-ng-if="chatRoom && isMyRoom(chatRoom.Users)">\n <div class="input-cont">\n <input class="form-control" type="text" placeholder="Type a message here..." ng-enter="sendMessage()" data-ng-model="message.body" data-ng-disabled="chatRoom.status === \'CLOSED\'"/>\n </div>\n <div class="btn-cont">\n <span class="arrow"></span>\n <a href="#" class="btn blue icn-only" data-ng-disabled="chatRoom.status === \'CLOSED\'" data-ng-click="sendMessage()">\n <i class="fa fa-check icon-white"></i>\n </a>\n </div>\n </div>\n <div class="form-group chat-canned-answer-div" data-ng-if="chatRoom.status !== \'CLOSED\'" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelect($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <span data-ng-show="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n</div>\n</div>\n</div>\n"),a.put("app/channels/chat/room/room.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_ROOMS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div class="row inbox">\n <div class="col-md-2">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.internal\')}">\n <a href="/channels/chat/room/internal/list" class="btn">\n {{\'APPLICATION_INTERNAL\' | translate}}\n </a>\n <b></b>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.external\')}">\n <a href="/channels/chat/room/external/list" class="btn">\n {{\'APPLICATION_EXTERNAL\' | translate}}\n </a>\n <b></b>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.room.group\')}">\n <a href="/channels/chat/room/group/list" class="btn">\n {{\'APPLICATION_GROUPS\' | translate}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-10">\n <div class="room-content">\n <div ui-view></div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/room/template.html",'<div ng-bind-html="neText" ne-hljs></div>\n<div class="ne-video" ng-if="video.host" class="fade">\n <div class="ne-video-preview" ng-hide="nePlayVideo || !options.video.details">\n <div class="ne-video-thumb" ng-click="nePlayVideo=!nePlayVideo">\n <img ng-src="{{video.thumbnail}}" alt=""/>\n <i class="fa fa-play-circle-o"></i>\n </div>\n <div class="ne-video-detail">\n <div class="ne-video-title">\n <a ng-href="{{video.url}}">{{video.title}}</a>\n </div>\n <div class="ne-video-desc">\n {{video.description}}\n </div>\n <div class="ne-video-stats">\n <span><i class="fa fa-eye"></i> {{video.views}}</span>\n <span><i class="fa fa-heart"></i> {{video.likes}}</span>\n </div>\n </div>\n </div>\n <div class="ne-video-player" ng-if="nePlayVideo || !(options.video.details)">\n <iframe ng-src="{{video.embedSrc}}" frameBorder="0" width="{{video.width}}" height="{{video.height}}" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\n </div>\n</div>\n<div class="ne-video" ng-if="video.basic">\n <div class="ne-video-player">\n <div class="player">\n <video ng-src="{{video.basic}}" controls></video>\n </div>\n </div>\n</div>\n<div ng-init="neImageLong=false" ng-class="{false:\'ne-image\', true:\'ne-image ne-image-long\'}[neImageLong]"\nng-if="image.url">\n<div class="ne-image-wrapper">\n <img ng-src="{{image.url}}" ng-click="neImageLong=!neImageLong" alt=""/>\n</div>\n</div>\n<!-- <div class="ne-pdf" ng-if="pdf.url">\n <div class="ne-pdf-preview" ng-hide="neShowPdf">\n <div class="ne-pdf-icon">\n <i class="fa fa-file-pdf-o"></i>\n </div>\n <div class="ne-pdf-detail" >\n <div class="ne-pdf-title">\n <a href="">{{pdf.url}}</a>\n </div>\n <div class="ne-pdf-view">\n\n <button><i class="fa fa-download"></i> <a ng-href="{{pdf.url}}" target="_blank">Download</a></button>\n <button ng-click="neShowPdf=!neShowPdf"><i class="fa fa-eye"></i> View PDF</button>\n\n </div>\n </div>\n </div>\n <div class="ne-pdf-viewer" ng-if="neShowPdf" ng-show="neShowPdf">\n <iframe ng-src="{{pdf.url}}" frameBorder="0"></iframe>\n </div>\n\n</div>\n<div class="ne-audio" ng-if="audio.url">\n <audio ng-src="{{audio.url}}" controls></audio>\n</div> -->\n'),a.put("app/channels/chat/room/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/chat/visitor/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-question"></i>\n <a href="/channels/chat/visitors/list">{{ \'APPLICATION_VISITORS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-question font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VISITORS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/visitor/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-question"></i>\n <a href="/channels/chat/visitors/list">{{ \'APPLICATION_VISITORS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="chatVisitor">\n <a href="#">{{chatVisitor.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/visitor.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatVisitor.fullname}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.chat.visitors.view.profile\')}">\n <a data-ng-href="/channels/chat/visitors/view/{{chatVisitor.id}}/profile">\n <i class="icon-tag"></i>\n {{ \'APPLICATION_PROFILE\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/visitor/view/view.profile.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_PROFILE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div>\n <h4 class="profile-desc-title">{{chatVisitor.email}}</h4>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-magnifier"></i>\n <a href="#" class="inactive-link">{{chatVisitor.origin}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-globe"></i>\n <a href="#" class="inactive-link">{{chatVisitor.remote_address}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-user"></i>\n <a href="#" class="inactive-link">{{chatVisitor.user_agent | truncate: 50: \'...\'}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-flag"></i>\n <a href="#" class="inactive-link">{{chatVisitor.visitor_language}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-home"></i>\n <a href="#" class="inactive-link">{{chatVisitor.referer}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-cursor"></i>\n <a href="#" class="inactive-link">{{chatVisitor.browser}}</a>\n </div>\n <div class="margin-top-20 profile-desc-link">\n <i class="icon-screen-desktop"></i>\n <a href="#" class="inactive-link">{{chatVisitor.os}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="#">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_WEB_SITES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/chat/websites/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_WEB_SITE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/chat/website/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/chat/websites/view/{{chatWebsite.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.ChatQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.ChatQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/website/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/embedding/view/view.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_EMBEDDING\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard();">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-12">\n <h3>{{\'APPLICATION_EMBED_SNIPPET\' | translate}}</h3>\n <p>\n {{\'MESSAGE_EMBED_SNIPPET\' | translate}}\n </p>\n <div class="form-body">\n <div class="form-group">\n <div class="col-md-12">\n <code-mirror lang="html" model="snippetCode"></code-mirror>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/chat/website/view/form/view/view.html",'<div class="row" data-ng-init="getChatWebsiteFields(\'online\');getChatWebsiteFields(\'offline\');">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_ONLINE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_OFFLINE\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-12">\n <div class="tab-content">\n <div class="tab-pane active" id="tab_1_1">\n <div class="row">\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_SELECTED\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="saveForm(\'online\');">\n <i class="fa fa-check"></i> {{ \'APPLICATION_SAVE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-builder="online"></div>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_AVAILABLE\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-components></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="tab-pane" id="tab_1_2">\n <div class="row">\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_SELECTED\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="saveForm(\'offline\');">\n <i class="fa fa-check"></i> {{ \'APPLICATION_SAVE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-builder="offline"></div>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-book-open font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FIELDS_AVAILABLE\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div fb-components></div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/chat/website/view/proactive/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.type.$touched || form.$submitted) && form.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <ui-select name="type" ng-model="item.type" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in possibleType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TYPE -->\n\n <!-- START SELECTOR -->\n <div class="form-group" data-ng-if="item.type === \'mouseOver\'" data-ng-class="{\'has-error\': (form.selector.$touched || form.$submitted) && form.selector.$invalid}">\n <label class="control-label">{{\'APPLICATION_SELECTOR\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="selector" placeholder="{{\'APPLICATION_SELECTOR\' | translate}}" class="form-control" data-ng-model="item.selector" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SELECTOR -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="item.type === \'timeout\'" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.timeout" min="0" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/chat/website/view/proactive/list/list.html",'<div class="row" data-ng-init="initProactiveActions()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_PROACTIVE_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROACTIVE_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemChatWebsite()" novalidate>\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="chatWebsite.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="chatWebsite.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/chat/website/view/snippet/view/view.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SNIPPET\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_APPEARANCE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_FORMS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_LABELS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_4" data-toggle="tab">{{\'APPLICATION_SETTINGS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_5" data-toggle="tab">{{\'APPLICATION_OFFLINE\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div class="col-md-8">\n <div class="tab-content">\n\n <!-- APPEARANCE TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formAppearance" data-ng-submit="forms.formAppearance.$valid && updateItem()" novalidate>\n\n <!-- START MAIN COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIN_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="mainColor" placeholder="{{\'APPLICATION_MAIN_COLOR\' | translate}}" style="color:{{chatWebsite.color}}" class="form-control" data-ng-model="chatWebsite.color" required/>\n <span data-ng-show="(forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.mainColor.$invalid && forms.formAppearance.mainColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIN COLOR -->\n\n <!-- START FOCUS COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_FOCUS_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="focusColor" placeholder="{{\'APPLICATION_FOCUS_COLOR\' | translate}}" style="color:{{chatWebsite.color_focus}}" class="form-control" data-ng-model="chatWebsite.color_focus" required/>\n <span data-ng-show="(forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid && forms.formAppearance.focusColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FOCUS COLOR -->\n\n <!-- START BUTTON COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_BUTTON_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="buttonColor" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" style="color:{{chatWebsite.color_button}}" class="form-control" data-ng-model="chatWebsite.color_button" required/>\n <span data-ng-show="(forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid && forms.formAppearance.buttonColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUTTON COLOR -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.headerShape.$touched || forms.formAppearance.$submitted) && forms.formAppearance.headerShape.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="chatWebsite.header_shape" name="headerShape" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant(\'APPLICATION_\' + $select.selected.toUpperCase())}}</ui-select-match>\n <ui-select-choices repeat="headerShape in [\'rounded\',\'squared\'] | filter: $select.search">\n <div ng-bind-html="$translate.instant(\'APPLICATION_\' + headerShape.toUpperCase()) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n\n <!-- START ANIMATION TOGGLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.animationToggle.$touched || forms.formAppearance.$submitted) && forms.formAppearance.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="chatWebsite.animation" name="animationToggle" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="animationToggle in [true, false] | filter: $select.search">\n <div ng-bind-html="animationToggle ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END ANIMATION TOGGLE -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END APPEARANCE TAB -->\n\n <!-- FORMS TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.formFunctionality" data-ng-submit="forms.formFunctionality.$valid && updateItem()" novalidate>\n\n <!-- START DOWNLOAD TRANSCRIPT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formFunctionality.animationToggle.$touched || forms.formFunctionality.$submitted) && forms.formFunctionality.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_DOWNLOAD_TRANSCRIPT\' | translate}}</label>\n <ui-select data-ng-model="chatWebsite.download_transcript" name="downloadTranscript" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="downloadTranscript in [true, false] | filter: $select.search">\n <div ng-bind-html="downloadTranscript ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DOWNLOAD TRANSCRIPT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END FORMS TAB -->\n\n <!-- STRINGS TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.formLabel" data-ng-submit="forms.formLabel.$valid && updateItem()" novalidate>\n\n <h4 class="block" data-ng-show="statePreview.state == \'online\'">{{\'APPLICATION_ONLINE_STATE\' | translate}}</h4>\n\n <!-- START HEADER ONLINE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.headerOnline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_ONLINE\' | translate}}</label>\n <input type="text" name="headerOnline" placeholder="{{\'APPLICATION_HEADER_ONLINE\' | translate}}" class="form-control" data-ng-model="chatWebsite.header_online"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START ONLINE MESSAGE-->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.onlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="onlineMessage" placeholder="{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.online_message"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START USERNAME TITLE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.nameTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.nameTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_TITLE\' | translate}}</label>\n <input type="text" name="nameTitle" placeholder="{{\'APPLICATION_USERNAME_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.name_title"/>\n </div>\n <!-- END USERNAME TITLE -->\n\n <!-- START USERNAME PLACEHOLDER -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.usernamePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.usernamePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="usernamePlaceholder" placeholder="{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.username_placeholder"/>\n </div>\n <!-- END USERNAME PLACEHOLDER -->\n\n <!-- START EMAIL TITLE -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.emailTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.emailTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_TITLE\' | translate}}</label>\n <input type="text" name="emailTitle" placeholder="{{\'APPLICATION_EMAIL_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.email_title"/>\n </div>\n <!-- END EMAIL TITLE -->\n\n <!-- START EMAIL PLACEHOLDER -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\' || statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.emailPlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.emailPlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailPlaceholder" placeholder="{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.email_placeholder"/>\n </div>\n <!-- END EMAIL PLACEHOLDER -->\n\n <!-- START START CHAT BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.startChatButton.$touched || forms.formLabel.$submitted) && forms.formLabel.startChatButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}</label>\n <input type="text" name="startChatButton" placeholder="{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.start_chat_button"/>\n </div>\n <!-- END START CHAT BUTTON -->\n\n <h4 class="block" data-ng-show="statePreview.state == \'rating\'">{{\'APPLICATION_RATING_STATE\' | translate}}</h4>\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_MESSAGE\' | translate}}</label>\n <input type="text" name="ratingMessage" placeholder="{{\'APPLICATION_RATING_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_message"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START RATING SEND BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingSend.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSend.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSend" placeholder="{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_send"/>\n </div>\n <!-- END RATING SEND BUTTON -->\n\n <!-- START RATING SKIP BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'rating\'" data-ng-class="{\'has-error\': (forms.formLabel.ratingSkip.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSkip.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSkip" placeholder="{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.rating_skip"/>\n </div>\n <!-- END RATING SKIP BUTTON -->\n\n <h4 class="block" data-ng-show="statePreview.state == \'offline\'">{{\'APPLICATION_OFFLINE_STATE\' | translate}}</h4>\n\n <!-- START HEADER OFFLINE -->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.headerOffline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_OFFLINE\' | translate}}</label>\n <input type="text" name="headerOffline" placeholder="{{\'APPLICATION_HEADER_OFFLINE\' | translate}}" class="form-control" data-ng-model="chatWebsite.header_offline"/>\n </div>\n <!-- END HEADER OFFLINE -->\n\n <!-- START OFFLINE MESSAGE-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.offlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.offlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="offlineMessage" placeholder="{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="chatWebsite.offline_message"/>\n </div>\n <!-- END OFFLINE MESSAGE -->\n\n <!-- START ENQUIRY MESSAGE TITLE-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessageTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessageTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}</label>\n <input type="text" name="enquiryMessageTitle" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}" class="form-control" data-ng-model="chatWebsite.message_title"/>\n </div>\n <!-- END ENQUIRY MESSAGE TITLE -->\n\n <!-- START ENQUIRY MESSAGE PLACEHOLDER-->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessagePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessagePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="enquiryMessagePlaceholder" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_message_placeholder"/>\n </div>\n <!-- END ENQUIRY MESSAGE PLACEHOLDER -->\n\n <!-- START ENQUIRY BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'offline\'" data-ng-class="{\'has-error\': (forms.formLabel.enquiryButton.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}</label>\n <input type="text" name="enquiryButton" placeholder="{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_button"/>\n </div>\n <!-- END ENQUIRY BUTTON -->\n\n <!-- START AGENTS BUSY BUTTON -->\n <div class="form-group" data-ng-show="statePreview.state == \'online\'" data-ng-class="{\'has-error\': (forms.formLabel.agentsBusy.$touched || forms.formLabel.$submitted) && forms.formLabel.agentsBusy.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS_BUSY\' | translate}}</label>\n <input type="text" name="agentsBusy" placeholder="{{\'APPLICATION_AGENTS_BUSY\' | translate}}" class="form-control" data-ng-model="chatWebsite.agents_busy"/>\n </div>\n <!-- END AGENTS BUSY BUTTON -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END STRINGS TAB -->\n\n <!-- SETTINGS TAB -->\n <div class="tab-pane" id="tab_1_4">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="chatWebsite.name" required/>\n <span data-ng-show="(forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSettings.name.$invalid && forms.formSetting.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEB_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="address" placeholder="{{\'APPLICATION_WEB_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.address" required/>\n <span data-ng-show="(forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid && forms.formSetting.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.remote" required/>\n <span data-ng-show="(forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid && forms.formSetting.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="chatWebsite.fidelity"\n type="checkbox"\n switch-active="{{ fidelitySwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ fidelitySwitch.onColor }}"\n switch-off-color="{{ fidelitySwitch.offColor }}"\n switch-animate="{{ fidelitySwitch.animate }}"\n switch-size="{{ fidelitySwitch.size }}"\n switch-label="{{ fidelitySwitch.label }}"\n switch-icon="{{ fidelitySwitch.icon }}"\n switch-radio-off="{{ fidelitySwitch.radioOff }}"\n switch-label-width="{{ fidelitySwitch.labelWidth }}"\n switch-handle-width="{{ fidelitySwitch.handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="chatWebsite.fidelity" data-ng-class="{\'has-error\': (forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="chatWebsite.timeout" required/>\n <span data-ng-show="(forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid && forms.formSetting.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.timeout.$touched || forms.formSetting.$submitted) && forms.formSetting.timeout.$invalid && forms.formSetting.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.description.$touched || forms.formSetting.$submitted) && forms.formSetting.description.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="chatWebsite.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END SETTINGS TAB -->\n\n <!-- OFFLINE TAB -->\n <div class="tab-pane" id="tab_1_5">\n <form name="forms.formOffline" data-ng-submit="forms.formOffline.$valid && updateItem()" novalidate>\n\n <!-- START ENQUIRY ENABLE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_ENABLED\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chatWebsite.enquiry_enable"\n type="checkbox"\n switch-active="{{ enquirySwitch.isActive }}"\n switch-on-text="{{ enquirySwitch.onText }}"\n switch-off-text="{{ enquirySwitch.offText }}"\n switch-on-color="{{ enquirySwitch.onColor }}"\n switch-off-color="{{ enquirySwitch.offColor }}"\n switch-animate="{{ enquirySwitch.animate }}"\n switch-size="{{ enquirySwitch.size }}"\n switch-label="{{ enquirySwitch.label }}"\n switch-icon="{{ enquirySwitch.icon }}"\n switch-radio-off="{{ enquirySwitch.radioOff }}"\n switch-label-width="{{ enquirySwitch.labelWidth }}"\n switch-handle-width="{{ enquirySwitch.handleWidth }}">\n </div>\n <!-- END ENQUIRY ENABLE -->\n\n <!-- START ENQUIRY FORWARDING -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_FORWARDING\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chatWebsite.enquiry_forwarding"\n type="checkbox"\n switch-active="{{ enquirySwitch.isActive }}"\n switch-on-text="{{ enquirySwitch.onText }}"\n switch-off-text="{{ enquirySwitch.offText }}"\n switch-on-color="{{ enquirySwitch.onColor }}"\n switch-off-color="{{ enquirySwitch.offColor }}"\n switch-animate="{{ enquirySwitch.animate }}"\n switch-size="{{ enquirySwitch.size }}"\n switch-label="{{ enquirySwitch.label }}"\n switch-icon="{{ enquirySwitch.icon }}"\n switch-radio-off="{{ enquirySwitch.radioOff }}"\n switch-label-width="{{ enquirySwitch.labelWidth }}"\n switch-handle-width="{{ enquirySwitch.handleWidth }}">\n <span class="help-block col-md-12">{{\'MESSAGE_REMEMBER_SMTP_SERVICE_ACCOUNT\' | translate}}.</span>\n </div>\n <!-- END ENQUIRY FORWARDING -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable && chatWebsite.enquiry_forwarding" data-ng-class="{\'has-error\': (forms.formOffline.forwardingAddress.$touched || forms.formOffline.$submitted) && forms.formSetting.forwardingAddress.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_FORWARDING_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="forwardingAddress" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="chatWebsite.enquiry_forwarding_address" required/>\n <span data-ng-show="(forms.formOffline.forwardingAddress.$touched || forms.formOffline.$submitted) && forms.formOffline.forwardingAddress.$invalid && forms.formOffline.forwardingAddress.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-if="chatWebsite.enquiry_enable && chatWebsite.enquiry_forwarding" data-ng-class="{\'has-error\': (forms.formOffline.OfflineTemplateId.$touched || forms.formOffline.$submitted) && forms.formOffline.OfflineTemplateId.$invalid}">\n <label class="control-label">{{\'APPLICATION_TEMPLATE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="chatWebsite.OfflineTemplateId" name="OfflineTemplateId" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.formOffline.OfflineTemplateId.$touched || forms.formOffline.$submitted) && forms.formOffline.OfflineTemplateId.$invalid && forms.formOffline.OfflineTemplateId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HEADER SHAPE -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END OFFLINE TAB -->\n </div>\n </div>\n <div class="col-md-4">\n <!-- START STATE -->\n <div class="form-group">\n <!-- <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label> -->\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="statePreview.state" name="statePreview" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="statePreview in [\'online\',\'rating\',\'offline\'] | filter: $select.search">\n <div ng-bind-html="statePreview | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END STATE -->\n <preview></preview>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/chat/website/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{chatWebsite.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/website.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chatWebsite.name}}\n </div>\n <div class="profile-usertitle-job">\n {{chatWebsite.address}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.embedding\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/embedding/view">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_EMBEDDING\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.snippet\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/snippet/view">\n <i class="icon-note"></i>\n {{ \'APPLICATION_SNIPPET\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.form\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/forms/view">\n <i class="icon-list"></i>\n {{ \'APPLICATION_FORMS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.proactive\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/proactive/list">\n <i class="icon-target"></i>\n {{ \'APPLICATION_PROACTIVE_ACTIONS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.actions\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/actions/list">\n <i class="icon-directions"></i>\n {{ \'APPLICATION_ACTIONS\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.chat.websites.view.dispositions\')}">\n <a ng-href="/channels/chat/websites/view/{{chatWebsite.id}}/dispositions">\n <i class="icon-target"></i>\n {{ \'APPLICATION_DISPOSITIONS\' | translate }} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.chat.websites.view.settings\')}">\n <a href="/channels/chat/websites/view/{{chatWebsite.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/chat/website/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bubble"></i>\n <a href="#">{{ \'APPLICATION_CHAT\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-globe"></i>\n <a href="/channels/chat/websites/list">{{ \'APPLICATION_WEB_SITES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_WEB_SITE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_WEB_SITE_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.name.$touched || forms.formSetting.$submitted) && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$touched && !forms.formSettings.name.$valid && forms.formSetting.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEB_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="address" placeholder="{{\'APPLICATION_WEB_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required/>\n <span data-ng-show="(forms.formSetting.address.$touched || forms.formSetting.$submitted) && forms.formSetting.address.$invalid && forms.formSetting.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START REMOTE IP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remote" required/>\n <span data-ng-show="(forms.formSetting.remote.$touched || forms.formSetting.$submitted) && forms.formSetting.remote.$invalid && forms.formSetting.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.form.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_WEB_SITE_APPEARANCE\' | translate}}" canexit="exitValidation(forms.formAppearance.$valid)">\n <form name="forms.formAppearance" novalidate>\n\n <!-- START MAIN COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIN_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="mainColor" placeholder="{{\'APPLICATION_MAIN_COLOR\' | translate}}" style="color:{{item.color}}" class="form-control" data-ng-model="item.color" required/>\n <span data-ng-show="(forms.formAppearance.mainColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.mainColor.$invalid && forms.formAppearance.mainColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIN COLOR -->\n\n <!-- START FOCUS COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_FOCUS_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="focusColor" placeholder="{{\'APPLICATION_FOCUS_COLOR\' | translate}}" style="color:{{item.color_focus}}" class="form-control" data-ng-model="item.color_focus" required/>\n <span data-ng-show="(forms.formAppearance.focusColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.focusColor.$invalid && forms.formAppearance.focusColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FOCUS COLOR -->\n\n <!-- START BUTTON COLOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid}">\n <label class="control-label">{{\'APPLICATION_BUTTON_COLOR\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input colorpicker type="text" name="buttonColor" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" style="color:{{item.color_button}}" class="form-control" data-ng-model="item.color_button" required/>\n <span data-ng-show="(forms.formAppearance.buttonColor.$touched || forms.formAppearance.$submitted) && forms.formAppearance.buttonColor.$invalid && forms.formAppearance.buttonColor.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUTTON COLOR -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.headerShape.$touched || forms.formAppearance.$submitted) && forms.formAppearance.headerShape.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_SHAPE\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="item.animation" required/> -->\n <ui-select data-ng-model="item.header_shape" name="headerShape" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant(\'APPLICATION_\' + $select.selected.toUpperCase())}}</ui-select-match>\n <ui-select-choices repeat="headerShape in [\'rounded\',\'squared\'] | filter: $select.search">\n <div ng-bind-html="$translate.instant(\'APPLICATION_\' + headerShape.toUpperCase()) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n\n <!-- START ANIMATION TOGGLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAppearance.animationToggle.$touched || forms.formAppearance.$submitted) && forms.formAppearance.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANIMATION\' | translate}}</label>\n <ui-select data-ng-model="item.animation" name="animationToggle" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="filter in [true,false] | filter: $select.search">\n <div ng-bind-html="filter ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END ANIMATION TOGGLE -->\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_LABELS\' | translate}}" canexit="exitValidation(forms.formLabel.$valid)">\n <form name="forms.formLabel" novalidate>\n\n <!-- START HEADER ONLINE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.headerOnline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_ONLINE\' | translate}}</label>\n <input type="text" name="headerOnline" placeholder="{{\'APPLICATION_HEADER_ONLINE\' | translate}}" class="form-control" data-ng-model="item.header_online"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START ONLINE MESSAGE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.onlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="onlineMessage" placeholder="{{\'APPLICATION_ONLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.online_message"/>\n </div>\n <!-- END HEADER ONLINE -->\n\n <!-- START USERNAME TITLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.usernameTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.usernameTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_TITLE\' | translate}}</label>\n <input type="text" name="usernameTitle" placeholder="{{\'APPLICATION_USERNAME_TITLE\' | translate}}" class="form-control" data-ng-model="item.username_title"/>\n </div>\n <!-- END USERNAME TITLE -->\n\n <!-- START USERNAME PLACEHOLDER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.usernamePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.usernamePlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="usernamePlaceholder" placeholder="{{\'APPLICATION_USERNAME_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.username_placeholder"/>\n </div>\n <!-- END USERNAME PLACEHOLDER -->\n\n <!-- START EMAIL TITLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.emailTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.emailTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailTitle" placeholder="{{\'APPLICATION_EMAIL_TITLE\' | translate}}" class="form-control" data-ng-model="item.email_title"/>\n </div>\n <!-- END EMAIL TITLE -->\n\n <!-- START EMAIL PLACEHOLDER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.emailPlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.emailPlaceholder.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="emailPlaceholder" placeholder="{{\'APPLICATION_EMAIL_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.email_placeholder"/>\n </div>\n <!-- END EMAIL PLACEHOLDER -->\n\n <!-- START START CHAT BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.startChatButton.$touched || forms.formLabel.$submitted) && forms.formLabel.startChatButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}</label>\n <input type="text" name="startChatButton" placeholder="{{\'APPLICATION_START_CHAT_BUTTON\' | translate}}" class="form-control" data-ng-model="item.start_chat_button"/>\n </div>\n <!-- END START CHAT BUTTON -->\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_MESSAGE\' | translate}}</label>\n <input type="text" name="ratingMessage" placeholder="{{\'APPLICATION_RATING_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.rating_message"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START RATING START TEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingSend.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSend.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSend" placeholder="{{\'APPLICATION_RATING_SEND_BUTTON\' | translate}}" class="form-control" data-ng-model="item.rating_send"/>\n </div>\n <!-- END RATING START TEXT -->\n\n <!-- START RATING MESSAGE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.ratingSkip.$touched || forms.formLabel.$submitted) && forms.formLabel.ratingSkip.$invalid}">\n <label class="control-label">{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}</label>\n <input type="text" name="ratingSkip" placeholder="{{\'APPLICATION_RATING_SKIP_BUTTON\' | translate}}" class="form-control" data-ng-model="item.rating_skip"/>\n </div>\n <!-- END RATING MESSAGE -->\n\n <!-- START HEADER OFFLINE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.headerOffline.$touched || forms.formLabel.$submitted) && forms.formLabel.headerOnline.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADER_OFFLINE\' | translate}}</label>\n <input type="text" name="headerOffline" placeholder="{{\'APPLICATION_HEADER_OFFLINE\' | translate}}" class="form-control" data-ng-model="item.header_offline"/>\n </div>\n <!-- END HEADER OFFLINE -->\n\n <!-- START OFFLINE MESSAGE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.offlineMessage.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}</label>\n <input type="text" name="offlineMessage" placeholder="{{\'APPLICATION_OFFLINE_MESSAGE\' | translate}}" class="form-control" data-ng-model="item.offline_message"/>\n </div>\n <!-- END OFFLINE MESSAGE -->\n\n <!-- START ENQUIRY MESSAGE TITLE-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessageTitle.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryMessageTitle.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}</label>\n <input type="text" name="enquiryMessageTitle" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_TITLE\' | translate}}" class="form-control" data-ng-model="item.message_title"/>\n </div>\n <!-- END ENQUIRY MESSAGE TITLE -->\n\n <!-- START ENQUIRY MESSAGE PLACEHOLDER-->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryMessagePlaceholder.$touched || forms.formLabel.$submitted) && forms.formLabel.onlineMessage.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}</label>\n <input type="text" name="enquiryMessagePlaceholder" placeholder="{{\'APPLICATION_ENQUIRY_MESSAGE_PLACEHOLDER\' | translate}}" class="form-control" data-ng-model="item.enquiry_message_placeholder"/>\n </div>\n <!-- END ENQUIRY MESSAGE PLACEHOLDER -->\n\n <!-- START ENQUIRY BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.enquiryButton.$touched || forms.formLabel.$submitted) && forms.formLabel.enquiryButton.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}</label>\n <input type="text" name="enquiryButton" placeholder="{{\'APPLICATION_ENQUIRY_BUTTON\' | translate}}" class="form-control" data-ng-model="item.enquiry_button"/>\n </div>\n <!-- END ENQUIRY BUTTON -->\n\n <!-- START AGENTS BUSY BUTTON -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formLabel.agentsBusy.$touched || forms.formLabel.$submitted) && forms.formLabel.agentsBusy.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS_BUSY\' | translate}}</label>\n <input type="text" name="agentsBusy" placeholder="{{\'APPLICATION_AGENTS_BUSY\' | translate}}" class="form-control" data-ng-model="item.agents_busy"/>\n </div>\n <!-- END AGENTS BUSY BUTTON -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_FORMS\' | translate}}" canexit="exitValidation(forms.formAppearance.$valid)">\n <form name="forms.formFunctionality" novalidate>\n\n <!-- START DOWNLOAD TRANSCRIPT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formFunctionality.animationToggle.$touched || forms.formFunctionality.$submitted) && forms.formFunctionality.animationToggle.$invalid}">\n <label class="control-label">{{\'APPLICATION_DOWNLOAD_TRANSCRIPT\' | translate}}</label>\n <ui-select data-ng-model="item.download_transcript" name="downloadTranscript" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected ? \'On\' : \'Off\'}}</ui-select-match>\n <ui-select-choices repeat="downloadTranscript in [true, false] | filter: $select.search">\n <div ng-bind-html="downloadTranscript ? \'On\' : \'Off\' | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DOWNLOAD TRANSCRIPT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_FAX_ACCOUNT\' | translate }}</h3>\n</div>\n<div class="modal-body" data-ng-init="initWizard();">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.name.$touched) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="form.name.$error.required && (form.$submitted || form.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.trunk.$touched) && form.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="form.trunk.$error.required && (form.$submitted || form.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.$submitted || form.localstationid.$touched) && form.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="item.localstationid" required/>\n <span data-ng-show="form.localstationid.$error.required && (form.$submitted || form.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button type="button" class="btn green-jungle" data-toggle="dropdown" data-hover="dropdown" data-delay="1000" data-close-others="true" aria-expanded="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }} <i class="fa fa-angle-down"></i>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <a href="/channels/fax/accounts/wizard">\n {{ \'APPLICATION_STANDARD\' | translate }}\n </a>\n </li>\n <li>\n <a href="#" data-ng-click="createItem()">\n {{ \'APPLICATION_QUICK\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\r\n <div class="col-md-12">\r\n <div class="portlet light">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="/channels/fax/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'), -a.put("app/channels/fax/account/view/action/view/view.html",'\r\n<div class="row" data-ng-init="initAction()">\r\n <div class="col-md-12">\r\n <!-- BEGIN PORTLET-->\r\n <div class="portlet light bordered">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-directions font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\r\n <!-- START APP -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\r\n <div ng-bind-html="app.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END APP -->\r\n\r\n <!-- START HOST -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\r\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\r\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END HOST -->\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\r\n <!-- START QUEUE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.FaxQueueId" name="queue" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\r\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="queues.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END QUEUE -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\r\n <!-- START AGENT -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\r\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\r\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="agents.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END AGENT -->\r\n </div>\r\n\r\n <!-- START INTERVAL_TYPE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\r\n {{ intType.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVAL_TYPE -->\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\r\n <!-- START TIME -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\r\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\r\n </fieldset>\r\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\r\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\r\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\r\n </div>\r\n </div>\r\n <!-- END TIME -->\r\n\r\n <!-- START ALWAYS -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <label class="control-label pointer-cursor">\r\n <input\r\n bs-switch\r\n data-ng-model="application.alwaysTime"\r\n type="checkbox"\r\n switch-active="{{ isActive }}"\r\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\r\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\r\n switch-on-color="{{ onColor }}"\r\n switch-off-color="{{ offColor }}"\r\n switch-animate="{{ animate }}"\r\n switch-size="{{ size }}"\r\n switch-label="{{ label }}"\r\n switch-icon="{{ icon }}"\r\n switch-radio-off="{{ radioOff }}"\r\n switch-label-width="{{ labelWidth }}"\r\n switch-handle-width="{{ handleWidth }}">\r\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\r\n </label>\r\n </div>\r\n </div>\r\n <!-- END ALWAYS -->\r\n\r\n <!-- START WEEKDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END WEEKDAY -->\r\n\r\n <!-- START MONTHDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTHDAY -->\r\n\r\n <!-- START MONTH -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTH -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\r\n\r\n <!-- START INTERVALS -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\r\n {{ interval.name}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="intervals.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_INTERVALS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/intervals/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVALS -->\r\n\r\n </div>\r\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\r\n </form>\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/channels/fax/account/view/action/wizard/wizard.html",'\r\n<div class="row" data-ng-init="initWizard()">\r\n <div class="col-md-12">\r\n <!-- BEGIN PORTLET-->\r\n <div class="portlet light bordered">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-directions font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <wizard on-finish="createItem()">\r\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\r\n <form name="forms.action" novalidate>\r\n <!-- START APP -->\r\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\r\n <div ng-bind-html="app.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END APP -->\r\n\r\n <!-- START HOST -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\r\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\r\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END HOST -->\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\r\n <!-- START QUEUE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.FaxQueueId" name="queue" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\r\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="queues.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END QUEUE -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\r\n <!-- START AGENT -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\r\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\r\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="agents.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END AGENT -->\r\n </div>\r\n\r\n <!-- START INTERVAL_TYPE -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\r\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\r\n {{ intType.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVAL_TYPE -->\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\r\n <!-- START TIME -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\r\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\r\n </fieldset>\r\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\r\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\r\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\r\n </div>\r\n </div>\r\n <!-- END TIME -->\r\n\r\n <!-- START ALWAYS -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <label class="control-label pointer-cursor">\r\n <input\r\n bs-switch\r\n data-ng-model="application.alwaysTime"\r\n type="checkbox"\r\n switch-active="{{ isActive }}"\r\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\r\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\r\n switch-on-color="{{ onColor }}"\r\n switch-off-color="{{ offColor }}"\r\n switch-animate="{{ animate }}"\r\n switch-size="{{ size }}"\r\n switch-label="{{ label }}"\r\n switch-icon="{{ icon }}"\r\n switch-radio-off="{{ radioOff }}"\r\n switch-label-width="{{ labelWidth }}"\r\n switch-handle-width="{{ handleWidth }}">\r\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\r\n </label>\r\n </div>\r\n </div>\r\n <!-- END ALWAYS -->\r\n\r\n <!-- START WEEKDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\r\n {{ weekDay.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END WEEKDAY -->\r\n\r\n <!-- START MONTHDAY -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\r\n <ui-select-match>{{$select.selected}}</ui-select-match>\r\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\r\n {{monthDay}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTHDAY -->\r\n\r\n <!-- START MONTH -->\r\n <div class="form-group">\r\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\r\n <div class="input-group input-large">\r\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n <span class="input-group-addon">to</span>\r\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\r\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\r\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\r\n {{ month.name | translate }}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <!-- END MONTH -->\r\n </div>\r\n\r\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\r\n\r\n <!-- START INTERVALS -->\r\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\r\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\r\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\r\n {{ interval.name}}\r\n </ui-select-choices>\r\n </ui-select>\r\n <div class="note note-warning" data-ng-hide="intervals.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_INTERVALS_AVAILABLE\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/intervals/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\r\n </p>\r\n </div>\r\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\r\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\r\n </span>\r\n </div>\r\n <!-- END INTERVALS -->\r\n\r\n </div>\r\n\r\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\r\n </form>\r\n </wz-step>\r\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\r\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\r\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\r\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\r\n </wz-step>\r\n </wizard>\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/channels/fax/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <!-- <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" data-ng-pattern="/^[a-zA-Z0-9]*$/" required/> -->\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <!-- <span data-ng-show="form.form.$touched && form.form.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PATTERN\' | translate}}.\n </span> -->\n </div>\n <!-- <div class="help-block">\n {{\'MESSAGE_ALLOWED_NUMBERS_AND_LETTERS\' | translate}}\n </div> -->\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), -a.put("app/channels/fax/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/account/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateItemFaxAccount()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.name.$touched) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.general.name.$error.required && (forms.general.$submitted || forms.general.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HEADERINFO -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.headerinfo.$touched) && forms.general.headerinfo.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADERINFO\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="headerinfo" placeholder="{{\'APPLICATION_HEADERINFO\' | translate}}" class="form-control" data-ng-model="account.headerinfo" required/>\n <span data-ng-show="forms.general.headerinfo.$error.required && (forms.general.$submitted || forms.general.headerinfo.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_HEADERINFO\' | translate}}.\n </span>\n </div>\n <!-- END HEADERINFO -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.trunk.$touched) && forms.general.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.trunk.$error.required && (forms.general.$submitted || forms.general.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.localstationid.$touched) && forms.general.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="account.localstationid" required/>\n <span data-ng-show="forms.general.localstationid.$error.required && (forms.general.$submitted || forms.general.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="account.fidelity"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.general.$submitted || forms.general.timeout.$touched) && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid && forms.general.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid && forms.general.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateItemFaxAccount()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START ECM -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ECM\' | translate}}<span class="required" aria-required="true">*</span></label><br>\n <input\n bs-switch\n ng-model="account.ecm"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}"\n ng-true-value="\'yes\'"\n ng-false-value="\'no\'">\n <span class="help-block">\n {{\'DESCRIPTION_ECM\' | translate}}.\n </span>\n </div>\n <!-- END ECM -->\n\n <!-- START MINRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.minrate.$touched) && forms.advanced.minrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MINRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.minrate" name="minrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MINRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="minrate in rate | filter: $select.search">\n <div data-ng-bind="minrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MINRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.minrate.$error.required && (forms.advanced.$submitted || forms.advanced.minrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MINRATE -->\n\n <!-- START MAXRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.maxrate.$touched) && forms.advanced.maxrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.maxrate" name="maxrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MAXRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="maxrate in rate | filter: $select.search">\n <div data-ng-bind="maxrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MAXRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.maxrate.$error.required && (forms.advanced.$submitted || forms.advanced.maxrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MAXRATE -->\n\n <!-- START MODEM -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.modem.$touched) && forms.advanced.modem.$invalid}">\n <label class="control-label">{{\'APPLICATION_MODEM\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="modem" placeholder="{{\'APPLICATION_MODEM\' | translate}}" class="form-control" data-ng-model="account.modem" required/>\n <span class="help-block">\n {{\'DESCRIPTION_MODEM\' | translate}}.\n </span>\n <span data-ng-show="forms.advanced.modem.$error.required && (forms.advanced.$submitted || forms.advanced.modem.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MODEM -->\n </div>\n <div class="col-md-6">\n <!-- START GATEWAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.gateway.$touched) && forms.advanced.gateway.$invalid}">\n <label class="control-label">{{\'APPLICATION_GATEWAY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="gateway" placeholder="{{\'APPLICATION_GATEWAY\' | translate}}" class="form-control" data-ng-model="account.gateway" required data-ng-pattern="settings.patternGateway"/>\n <span class="help-block">\n {{\'DESCRIPTION_GATEWAY\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.gateway.$touched || forms.advanced.$submitted) && forms.advanced.gateway.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.gateway.$touched || forms.advanced.$submitted) && forms.advanced.gateway.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_GATEWAY\' | translate}}.\n </span>\n </div>\n <!-- END GATEWAY -->\n\n <!-- START FAXDETECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.faxdetect.$touched) && forms.advanced.faxdetect.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAXDETECT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="faxdetect" placeholder="{{\'APPLICATION_FAXDETECT\' | translate}}" class="form-control" data-ng-model="account.faxdetect" required data-ng-pattern="settings.patternFaxdetect"/>\n <span class="help-block">\n {{\'DESCRIPTION_FAXDETECT\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.faxdetect.$touched || forms.advanced.$submitted) && forms.advanced.faxdetect.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.faxdetect.$touched || forms.advanced.$submitted) && forms.advanced.faxdetect.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_FAXDETECT\' | translate}}.\n </span>\n </div>\n <!-- END FAXDETECT -->\n\n <!-- START T38TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.t38timeout.$touched) && forms.advanced.t38timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_T38TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="t38timeout" placeholder="{{\'APPLICATION_T38TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.t38timeout" required min="1000"/>\n <span class="help-block">\n {{\'DESCRIPTION_T38TIMEOUT\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.t38timeout.$touched || forms.advanced.$submitted) && forms.advanced.t38timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.advanced.t38timeout.$touched || forms.advanced.$submitted) && forms.advanced.t38timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_T38TIMEOUT\' | translate}}.\n </span>\n </div>\n <!-- END T38TIMEOUT -->\n\n <!-- START TECH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.$submitted || forms.advanced.tech.$touched) && forms.advanced.tech.$invalid}">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.tech" name="tech" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TECHNOLOGY\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="tech in techs | filter: $select.search">\n <div data-ng-bind="tech | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.advanced.tech.$touched || forms.advanced.$submitted) && forms.advanced.tech.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TECH -->\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.name || account.description }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.name || account.description }}\n </div>\n <div class="profile-usertitle-job">\n {{ account.phone }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.fax.accounts.view.settings\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.fax.accounts.view.dispositions\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.fax.accounts.view.actions\')}">\n <a href="/channels/fax/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/account/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/fax/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.formGeneral.$valid)">\n <form name="forms.formGeneral" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.name.$touched) && forms.formGeneral.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formGeneral.name.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.name.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HEADERINFO -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.headerinfo.$touched) && forms.formGeneral.headerinfo.$invalid}">\n <label class="control-label">{{\'APPLICATION_HEADERINFO\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="headerinfo" placeholder="{{\'APPLICATION_HEADERINFO\' | translate}}" class="form-control" data-ng-model="item.headerinfo" required/>\n <span data-ng-show="forms.formGeneral.headerinfo.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.headerinfo.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_HEADERINFO\' | translate}}.\n </span>\n </div>\n <!-- END HEADERINFO -->\n\n <!-- START TRUNKS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.trunk.$touched) && forms.formGeneral.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.TrunkName" name="trunk" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TRUNK\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in trunks | filter: $select.search">\n <div data-ng-bind="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="trunks.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_INTERVALS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.formGeneral.trunk.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.trunk.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TRUNKS -->\n\n <!-- START LOCALSTATIONID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formGeneral.$submitted || forms.formGeneral.localstationid.$touched) && forms.formGeneral.localstationid.$invalid}">\n <label class="control-label">{{\'APPLICATION_LOCALSTATIONID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="localstationid" placeholder="{{\'APPLICATION_LOCALSTATIONID\' | translate}}" class="form-control" data-ng-model="item.localstationid" required/>\n <span data-ng-show="forms.formGeneral.localstationid.$error.required && (forms.formGeneral.$submitted || forms.formGeneral.localstationid.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n {{\'DESCRIPTION_LOCALSTATIONID\' | translate}}.\n </span>\n </div>\n <!-- END LOCALSTATIONID -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_ADVANCED\' | translate}}" canexit="exitValidation(forms.formAdvanced.$valid)">\n <form name="forms.formAdvanced" novalidate>\n\n <!-- START ECM -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ECM\' | translate}}<span class="required" aria-required="true">*</span></label><br>\n <input\n bs-switch\n ng-model="item.ecm"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}"\n ng-true-value="\'yes\'"\n ng-false-value="\'no\'">\n <span class="help-block">\n {{\'DESCRIPTION_ECM\' | translate}}.\n </span>\n </div>\n <!-- END ECM -->\n\n <!-- START MINRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.minrate.$touched) && forms.formAdvanced.minrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MINRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.minrate" name="minrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MINRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="minrate in rate | filter: $select.search">\n <div data-ng-bind="minrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MINRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.minrate.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.minrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MINRATE -->\n\n <!-- START MAXRATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.maxrate.$touched) && forms.formAdvanced.maxrate.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXRATE\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.maxrate" name="maxrate" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_MAXRATE\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="maxrate in rate | filter: $select.search">\n <div data-ng-bind="maxrate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'DESCRIPTION_MAXRATE\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.maxrate.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.maxrate.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START MAXRATE -->\n\n <!-- START MODEM -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.modem.$touched) && forms.formAdvanced.modem.$invalid}">\n <label class="control-label">{{\'APPLICATION_MODEM\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="modem" placeholder="{{\'APPLICATION_MODEM\' | translate}}" class="form-control" data-ng-model="item.modem" required/>\n <span class="help-block">\n {{\'DESCRIPTION_MODEM\' | translate}}.\n </span>\n <span data-ng-show="forms.formAdvanced.modem.$error.required && (forms.formAdvanced.$submitted || forms.formAdvanced.modem.$touched)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MODEM -->\n\n <!-- START GATEWAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.gateway.$touched) && forms.formAdvanced.gateway.$invalid}">\n <label class="control-label">{{\'APPLICATION_GATEWAY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="gateway" placeholder="{{\'APPLICATION_GATEWAY\' | translate}}" class="form-control" data-ng-model="item.gateway" required data-ng-pattern="settings.patternGateway"/>\n <span class="help-block">\n {{\'DESCRIPTION_GATEWAY\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.gateway.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.gateway.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.gateway.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.gateway.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_GATEWAY\' | translate}}.\n </span>\n </div>\n <!-- END GATEWAY -->\n\n <!-- START FAXDETECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.faxdetect.$touched) && forms.formAdvanced.faxdetect.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAXDETECT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="faxdetect" placeholder="{{\'APPLICATION_FAXDETECT\' | translate}}" class="form-control" data-ng-model="item.faxdetect" required data-ng-pattern="settings.patternFaxdetect"/>\n <span class="help-block">\n {{\'DESCRIPTION_FAXDETECT\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.faxdetect.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.faxdetect.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.faxdetect.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.faxdetect.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_FAXDETECT\' | translate}}.\n </span>\n </div>\n <!-- END FAXDETECT -->\n\n <!-- START T38TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.t38timeout.$touched) && forms.formAdvanced.t38timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_T38TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="t38timeout" placeholder="{{\'APPLICATION_T38TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.t38timeout" required min="1000"/>\n <span class="help-block">\n {{\'DESCRIPTION_T38TIMEOUT\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.t38timeout.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.t38timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formAdvanced.t38timeout.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.t38timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_T38TIMEOUT\' | translate}}.\n </span>\n </div>\n <!-- END T38TIMEOUT -->\n\n <!-- START TECH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formAdvanced.$submitted || forms.formAdvanced.tech.$touched) && forms.formAdvanced.tech.$invalid}">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.tech" name="tech" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TECHNOLOGY\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="tech in techs | filter: $select.search">\n <div data-ng-bind="tech | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.formAdvanced.tech.$touched || forms.formAdvanced.$submitted) && forms.formAdvanced.tech.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START TECH -->\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/fax/inbox/message/message.directive.html",'<div class="message">\n <div class="row">\n <div class="col-md-6">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(message.from)">{{message.from}}</a>]\n <br>\n <span class="bold">To: </span>\n [<a href="" data-ng-click="openContact(message.to)">{{message.to}}</a>]\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-if="message.status!==\'RECEIVED\'" data-ng-switch="message.status" uib-tooltip="{{\'APPLICATION_PAGE_TRANSFERRED\' | translate}}: {{message.pagestransferred}} - {{\'APPLICATION_RETRY\' | translate}}: {{message.retry}}">\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe"> {{message.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe" data-ng-click="retry(message.id)"> {{message.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <span class="pull-right" data-ng-if="message.status===\'RECEIVED\'" uib-tooltip="{{\'APPLICATION_PAGE_TRANSFERRED\' | translate}}: {{message.pagestransferred}}">\n <a href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </span>\n <hr data-ng-if="message.FaxAttachments.length">\n <div data-ng-repeat="faxAttachment in message.FaxAttachments">\n <strong>{{faxAttachment.name}}</strong>\n <a target="_self" download="{{faxAttachment.name}}" href="api/fax/attachments/{{faxAttachment.id}}">\n <i class="icon-cloud-download"></i>\n </a>\n </div>\n</div>\n'),a.put("app/channels/fax/inbox/note/note.directive.html",'<div class="note">\n <div class="row">\n <div class="col-md-6">\n <a type="button" name="button" data-ng-if="::(Auth.getCurrentUser().id == message.UserId)" data-ng-click="deleteNote()">\n <i class="fa fa-trash-o" style="color: red;"></i>\n </a>\n\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_ADD_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <hr>\n <span class="body text-left" data-ng-bind-html="message.text" style="white-space: pre-wrap;"></span>\n</div>\n'),a.put("app/channels/fax/inbox/note/note.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_NOTES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <div class="form-group">\n <textarea data-ng-model="item.text" name="text" rows="10" style="resize: none; width: 100%;"></textarea>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button class="btn btn-sm btn-default green-meadow" data-ng-disabled="faxRoom.status == \'CLOSED\' || !uploader.queue.length" data-ng-click="sendFax()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-if="faxRoom" class="label label-default"> #{{faxRoom.id}} {{faxRoom.status}}</span>\n <span data-ng-if="faxRoom"> | </span>\n <span data-ng-if="faxRoom" class="caption-subject font-green-sharp bold">{{faxRoom.from}}</span>\n </div>\n <div class="actions" data-ng-switch="faxRoom.status">\n <button class="btn btn-icon-only yellow" data-ng-if="faxRoom" data-ng-click="loadNote()" data-ng-disabled="faxRoom.status == \'CLOSED\'" title="{{\'APPLICATION_NOTES\' | translate}}">\n <i class="fa fa-sticky-note"></i>\n </button>\n <button href="#" class="btn btn-icon-only btn-primary" data-ng-if="faxRoom" data-ng-click="loadAgents();" data-ng-disabled="faxRoom.status == \'CLOSED\'" title="{{\'APPLICATION_AGENTS\' | translate}}">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="file-upload" data-ng-disabled="faxRoom.status == \'CLOSED\'">\n <i class="fa fa-paperclip"></i> <input type="file" data-ng-if="uploader" data-ng-disabled="faxRoom.status == \'CLOSED\'" nv-file-select uploader="uploader" multiple class="file-input" title="{{\'APPLICATION_ATTACHMENTS\' | translate}}">\n </button>\n <!-- UPDATE SECTION START -->\n <button data-ng-class="faxRoom.status == \'CLOSED\' ? \'grey-cascade\' : \'btn-success\'" class="btn btn-icon-only" data-ng-disabled="faxRoom.status == \'CLOSED\' && faxRoom.disposition" data-ng-if="faxRoom" data-ng-click="closeRoom()" title="{{\'APPLICATION_STATUS\' | translate}}">\n <i data-ng-class="faxRoom.status == \'CLOSED\' ? \'icon-target\' : \'fa fa-upload\'"></i>\n </button>\n <!-- UPDATE SECTION END -->\n <button class="btn default btn-icon-only" data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-show="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)" data-ng-disabled="faxRoom.status == \'CLOSED\'">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n\n <hr data-ng-if="faxRoom && faxRoom.status !== \'CLOSED\'">\n\n <!-- END TAGS -->\n\n <div id="mail-box">\n <ul class="chats">\n <li\n data-ng-switch="faxMessage.status"\n data-ng-class="{\'in\': faxMessage.status == \'RECEIVED\', \'out\': faxMessage.status == \'SENT\' || faxMessage.status == \'SENDING\' || faxMessage.status == \'FAILED\' || faxMessage.status == \'NOTE\'}"\n data-ng-repeat="faxMessage in faxRoom.FaxMessages | orderBy:\'-createdAt\'">\n <div class="avatar" data-ng-class="faxMessage.UserId ? \'pretty-avatar\' : \'pretty-avatar-v\'">\n <ng-letter-avatar\n data-ng-if="faxMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{faxMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!faxMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{faxMessage.from}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <fax-note message="faxMessage" ng-switch-when="NOTE"></fax-note>\n <fax-message message="faxMessage" list-id="faxRoom.FaxAccount.ListId" ng-switch-default></fax-message>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="faxRoom && faxRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_FAX_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_FAX_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="sendFax()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-model="form.from" theme="bootstrap" name="from" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="faxAccount.localstationid as faxAccount in faxAccounts | filter: $select.search">\n <div data-ng-bind-html="faxAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="faxAccount.localstationid | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.compose.from.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n\n <!-- START TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="to" class="form-control" placeholder="To..." data-ng-model="form.to" required>\n <span data-ng-show="forms.compose.to.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n\n <!-- START ATTACH -->\n <div class="form-group" data-ng-if="uploader && (faxRoom.status !== \'CLOSED\')">\n <div class="col-md-12">\n <hr ng-if="uploader.queue.length">\n <table class="table">\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td style="border-top:none"><strong>{{ item.file.name | truncate: 5: \'...\': true}}</strong></td>\n <td style="border-top:none" ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td style="border-top:none" ng-show="uploader.isHTML5">\n <div class="progress" style="margin-bottom: 0;">\n <div class="progress-bar" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td style="border-top-style:none" class="text-center">\n <span ng-show="item.isSuccess"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError"><i class="glyphicon glyphicon-remove"></i></span>\n </td>\n <td style="border-top-style:none" nowrap>\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n <div>\n </div>\n </div>\n </div>\n <!-- END ATTACH -->\n\n <!-- <div class="form-group">\n <div class="col-md-12">\n <div class="form-actions right todo-form-actions" style="border-top: none;">\n <input type="submit" value="{{ \'APPLICATION_SEND\' | translate }}" class="btn btn-sm green-meadow" data-ng-disabled="form.disabled || !uploader.queue.length" data-ng-if="faxRoom.status !== \'CLOSED\'">\n <input type="button" value="{{ \'APPLICATION_CANCEL\' | translate }}"class="btn btn-sm btn-default" data-ng-click="cancel()" data-ng-if="faxRoom.status !== \'CLOSED\'">\n </div>\n </div>\n </div> -->\n\n </div>\n </form>\n </div>\n </div>\n</div>\n</div>\n</div>\n<!-- END TODO CONTENT -->\n'),a.put("app/channels/fax/inbox/status/status.modal.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 data-ng-if="modal.title" data-ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="disposition" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-if="dispositions.length < 1">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\r\n<div class="portlet light" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption">\r\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\r\n </div>\r\n <div class="btn-group btn-group-solid">\r\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\r\n </div>\r\n </div>\r\n <div class="actions">\r\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\r\n <i class="fa fa-refresh"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\r\n <i class="fa fa-trash"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\r\n <i class="fa fa-tags"></i>\r\n </a>\r\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\r\n <i class="fa fa-plus"></i>\r\n </a>\r\n </div>\r\n </div>\r\n <div class="portlet-title" data-ng-show="tags.length">\r\n <!-- START TAGS -->\r\n <div class="form-group">\r\n <div class="row">\r\n <div class="col-md-1">\r\n <a href="#" class="btn btn-icon-only">\r\n <i class="fa fa-tags" style="color: gray;"></i>\r\n </a>\r\n </div>\r\n <div class="col-md-11">\r\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\r\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\r\n <ui-select-choices repeat="tag in tags | filter:$select.search">\r\n {{tag}}\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END TAGS -->\r\n </div>\r\n <div class="portlet-body">\r\n <!-- BEGIN UI-GRID SPINNER -->\r\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\r\n <!-- END UI-GRID SPINNER -->\r\n\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid-inbox">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n</div>\r\n<!-- END Portlet PORTLET-->\r\n'),a.put("app/channels/fax/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="agents">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AGENTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/staff/agents/list">{{\'APPLICATION_AGENTS\' | translate}}</a>\n </p>\n </div>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/inbox/view/view.html",'<div class="row">\r\n <div class="col-md-12">\r\n <div class="page-bar">\r\n <ul class="page-breadcrumb">\r\n <li>\r\n <i class="icon-rocket"></i>\r\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-directions"></i>\r\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-paper-plane"></i>\r\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-note"></i>\r\n <a href="#">{{ \'APPLICATION_INBOX\' | translate }}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<!-- BEGIN PAGE CONTENT-->\r\n<div class="row inbox">\r\n <div class="col-md-3">\r\n <ul class="inbox-nav margin-bottom-10">\r\n <li data-ng-class="{active: $stateParams.id == faxAccount.id}" data-ng-repeat="faxAccount in faxAccounts">\r\n <a href="/channels/fax/inbox/view/account/{{faxAccount.id}}/list" class="btn">\r\n <i class="icon-notebook"></i> {{faxAccount.name}}\r\n </a>\r\n <b></b>\r\n </li>\r\n </ul>\r\n <div class="note note-warning" data-ng-hide="faxAccounts.length">\r\n <h4 class="block">Warning!</h4>\r\n <p>\r\n {{ \'MESSAGE_NO_AVAILABLE_ACCOUNTS\' | translate }}\r\n </p>\r\n <p>\r\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/fax/accounts/list">{{\'APPLICATION_ACCOUNTS\' | translate}}</a>\r\n </p>\r\n </div>\r\n </div>\r\n\r\n <div class="col-md-9" data-ng-init="initView()">\r\n <!-- BEGIN PROFILE CONTENT -->\r\n <div class="room-content">\r\n <div ui-view>\r\n <div class="note note-info">\r\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- END PROFILE CONTENT -->\r\n </div>\r\n</div>\r\n'),a.put("app/channels/fax/inbox/view/view.status.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ modal.title | translate }}</h3>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text" data-ng-bind="modal.text"></p>\n <div data-ng-if="modal.html" data-ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button data-ng-repeat="button in modal.buttons"\n data-ng-class="button.classes"\n data-ng-click="button.click($event)"\n data-ng-bind="button.text | translate" class="btn"></button>\n</div>\n'),a.put("app/channels/fax/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/fax/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HEADER SHAPE -->\n\n\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/fax/queues/lis">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/fax/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.fax.queues.view.settings\')}">\n <a data-ng-href="/channels/fax/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.fax.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/fax/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/fax/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateFaxQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}</label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <!-- <input colorpicker type="text" name="animationToggle" placeholder="{{\'APPLICATION_BUTTON_COLOR\' | translate}}" class="form-control" data-ng-model="chatWebsite.animation" required/> -->\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/fax/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/fax/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/fax/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-paper-plane"></i>\n <a href="#">{{ \'APPLICATION_FAX\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.fax.realtime.view.agents\')}">\n <a href="/channels/fax/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.fax.realtime.view.applications\')}">\n <a href="/channels/fax/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="#">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/mail/accounts/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/view/action/list/list.html",'<div class="row" data-ng-init="initActons()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/mail/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.MailQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/account/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.MailQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/mail/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <!-- <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" data-ng-pattern="/^[a-zA-Z0-9]*$/" required/> -->\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <!-- <span data-ng-show="form.form.$touched && form.form.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PATTERN\' | translate}}.\n </span> -->\n </div>\n <!-- <div class="help-block">\n {{\'MESSAGE_ALLOWED_NUMBERS_AND_LETTERS\' | translate}}\n </div> -->\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_MAIL_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/setting/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">IMAP</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">SMTP</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemMailAccount()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.address" required/>\n <span data-ng-show="(forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid && forms.info.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n <!-- START TEMPLATE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TEMPLATE\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.TemplateId" name="template" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TEMPLATE\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.TemplateId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END TEMPLATE -->\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="account.fidelity"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n <!-- IMAP TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="note note-danger" data-ng-show="account.MailServerIn.state === \'DISCONNECTED\' || account.MailServerIn.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="account.MailServerIn.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="account.MailServerIn.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="account.MailServerIn.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n\n <form name="forms.formIn" data-ng-submit="forms.formIn.$valid && updateItemMailServerIn()" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.host.$touched || forms.formIn.$submitted) && forms.formIn.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.host" required/>\n <span data-ng-show="(forms.formIn.host.$touched || forms.formIn.$submitted) && forms.formIn.host.$invalid && forms.formIn.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.username.$touched || forms.formIn.$submitted) && forms.formIn.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.username" required/>\n <span data-ng-show="(forms.formIn.username.$touched || forms.formIn.$submitted) && forms.formIn.username.$invalid && forms.formIn.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.password.$touched || forms.formIn.$submitted) && forms.formIn.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.password" required/>\n <span data-ng-show="(forms.formIn.password.$touched || forms.formIn.$submitted) && forms.formIn.password.$invalid && forms.formIn.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.port" required/>\n <span data-ng-show="(forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid && forms.formIn.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formIn.port.$touched || forms.formIn.$submitted) && forms.formIn.port.$invalid && forms.formIn.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START MAILBOX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}</label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.mailbox"/>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START SEARCH FILTER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEARCH_FILTER\' | translate}}</label>\n <ui-select data-ng-model="account.MailServerIn.filter" name="filter" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="filter in [\'UNSEEN\'] | filter: $select.search">\n <div ng-bind-html="filter | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- START SEARCH FILTER -->\n\n <!-- START connTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="connTimeout" placeholder="{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.connTimeout" required/>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END connTimeout -->\n\n <!-- START authTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="authTimeout" placeholder="{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}" class="form-control" data-ng-model="account.MailServerIn.authTimeout" required/>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END authTimeout -->\n\n <!-- START DELETE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DELETE_MAIL_FROM_SERVER\' | translate}}</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.delete"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END DELETE -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <!-- START Keepalive -->\n <div class="form-group">\n <label class="control-label">Keepalive</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerIn.keepalive"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END Keepalive -->\n\n <input data-ng-disabled="imapDisabled" class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END IMAP TAB -->\n\n <!-- SMTP TAB -->\n <div class="tab-pane" id="tab_1_3">\n\n <div class="note note-danger" data-ng-show="account.MailServerOut.state === \'DISCONNECTED\' || account.MailServerOut.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="account.MailServerOut.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="account.MailServerOut.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="account.MailServerOut.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n\n <form name="forms.formOut" data-ng-submit="forms.formOut.$valid && updateItemMailServerOut()" novalidate>\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.host.$touched || forms.formOut.$submitted) && forms.formOut.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.host" required/>\n <span data-ng-show="(forms.formOut.host.$touched || forms.formOut.$submitted) && forms.formOut.host.$invalid && forms.formOut.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.username.$touched || forms.formOut.$submitted) && forms.formOut.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.username" required/>\n <span data-ng-show="(forms.formOut.username.$touched || forms.formOut.$submitted) && forms.formOut.username.$invalid && forms.formOut.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.password.$touched || forms.formOut.$submitted) && forms.formOut.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.password" required/>\n <span data-ng-show="(forms.formOut.password.$touched || forms.formOut.$submitted) && forms.formOut.password.$invalid && forms.formOut.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.formOut.port.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.MailServerOut.port" required/>\n <span data-ng-show="(forms.formOut.form.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid && forms.formOut.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formOut.form.$touched || forms.formOut.$submitted) && forms.formOut.port.$invalid && forms.formOut.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="account.MailServerOut.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <input data-ng-disabled="smtpDisabled" class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n <input data-ng-disabled="smtpDisabled" class="btn blue-madison" type="button" value="Test" data-ng-click="test()"/>\n </form>\n </div>\n <!-- END SMTP TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/mail/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.description || account.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar" data-ng-init="initView()">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.description || account.name }}\n </div>\n <div class="profile-usertitle-job">\n {{account.email}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-class="{active: $state.is(\'main.channels.mail.accounts.view.settings\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.mail.accounts.view.dispositions\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.mail.accounts.view.actions\')}">\n <a href="/channels/mail/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n<!-- END PAGE CONTENT-->\n</div>\n'),a.put("app/channels/mail/account/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/mail/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required/>\n <span data-ng-show="(forms.info.address.$touched || forms.info.$submitted) && forms.info.address.$invalid && forms.info.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="IMAP" canexit="formValidation(forms.in.$valid)">\n <form name="forms.in" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.host.$touched || forms.in.$submitted) && forms.in.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_INCOMING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.host" required/>\n <span data-ng-show="(forms.in.host.$touched || forms.in.$submitted) && forms.in.host.$invalid && forms.in.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.username.$touched || forms.in.$submitted) && forms.in.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.username" name="username" required/>\n <span data-ng-show="(forms.in.username.$touched || forms.in.$submitted) && forms.in.username.$invalid && forms.in.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.password.$touched || forms.in.$submitted) && forms.in.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.password" required/>\n <span data-ng-show="(forms.in.password.$touched || forms.in.$submitted) && forms.in.password.$invalid && forms.in.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.port" required/>\n <span data-ng-show="(forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid && forms.in.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.port.$touched || forms.in.$submitted) && forms.in.port.$invalid && forms.in.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START MAILBOX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}</label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.mailbox"/>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START SEARCH FILTER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEARCH_FILTER\' | translate}}</label>\n <ui-select data-ng-model="item.MailServerIn.filter" name="filter" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="filter in [\'UNSEEN\'] | filter: $select.search">\n <div data-ng-bind="filter | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- START SEARCH FILTER -->\n\n <!-- START connTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="connTimeout" placeholder="{{\'APPLICATION_CONNECTION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.connTimeout" required/>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.connTimeout.$touched || forms.in.$submitted) && forms.in.connTimeout.$invalid && forms.in.connTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END connTimeout -->\n\n <!-- START authTimeout -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="authTimeout" placeholder="{{\'APPLICATION_AUTH_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.MailServerIn.authTimeout" required/>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.in.authTimeout.$touched || forms.in.$submitted) && forms.in.authTimeout.$invalid && forms.in.authTimeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END authTimeout -->\n\n <!-- START DELETE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DELETE_MAIL_FROM_SERVER\' | translate}}</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.delete"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END DELETE -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <!-- START Keepalive -->\n <div class="form-group">\n <label class="control-label">Keepalive</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerIn.keepalive"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END Keepalive -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="SMTP" canexit="formValidation(forms.out.$valid)">\n <form name="forms.out" novalidate>\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.host.$touched || forms.out.$submitted) && forms.out.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTGOING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.host" required/>\n <span data-ng-show="(forms.out.host.$touched || forms.out.$submitted) && forms.out.host.$invalid && forms.out.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.username.$touched || forms.out.$submitted) && forms.out.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.username" required/>\n <span data-ng-show="(forms.out.username.$touched || forms.out.$submitted) && forms.out.username.$invalid && forms.out.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.password.$touched || forms.out.$submitted) && forms.out.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.password" required/>\n <span data-ng-show="(forms.out.password.$touched || forms.out.$submitted) && forms.out.password.$invalid && forms.out.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.out.port.$touched || forms.out.$submitted) && forms.out.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.MailServerOut.port" required/>\n <span data-ng-show="(out.$touched || forms.out.$submitted) && forms.out.port.$invalid && forms.out.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(out.$touched || forms.out.$submitted) && forms.out.port.$invalid && forms.out.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group">\n <label class="control-label">SSL</label><br>\n <input\n bs-switch\n data-ng-model="item.MailServerOut.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </div>\n <!-- END SSL -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="goNext()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/mail/inbox/message/message.directive.html",'<div class="message">\n <div class="row">\n <div class="col-md-8">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(message.from[0])">{{message.from[0]}}</a>]\n <br>\n <span class="bold">To: </span>\n <p style="word-wrap:break-word;">[<span data-ng-repeat="to in message.to">"<a href="" data-ng-click="openContact(to)">{{to}}</a>"<span data-ng-hide="$last">,</span></span>]</p>\n <br>\n <span data-ng-if="message.cc.length" class="bold">Cc: </span>\n <p style="word-wrap:break-word;" data-ng-if="message.cc.length">[<span data-ng-repeat="cc in message.cc">"<a href="" data-ng-click="openContact(cc)">{{cc}}</a>"<span data-ng-hide="$last">,</span></span>]</p>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-if="message.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-switch="message.status" data-ng-if="message.status!==\'RECEIVED\'" uib-tooltip="{{\'APPLICATION_RETRY\' | translate}}: {{message.retry}}">\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe"> {{message.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe" data-ng-click="retry(message.id)"> {{message.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n </span>\n <span class="pull-right" data-ng-if="message.status===\'RECEIVED\'">\n <a href="#" class="btn default btn-xs inactive-link green-stripe"> {{message.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n </span>\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </span>\n <hr>\n <div class="body text-left message-body" data-ng-bind="message.text"></div>\n <h5 data-ng-hide="message.text" class="media-heading"><i>{{\'MESSAGE_NO_AVAILABLE_TEXT\' | translate | lowercase}}</i></h5>\n <hr data-ng-if="message.MailAttachments.length">\n <div data-ng-repeat="mailAttachment in message.MailAttachments">\n <strong>{{mailAttachment.name}}</strong>\n <span>\n ({{mailAttachment.size | prettyBytes}})\n </span>\n <a target="_self" download="{{mailAttachment.name}}" href="api/mail/attachments/{{mailAttachment.id}}">\n <i class="icon-cloud-download"></i>\n </a>\n <a ng-if="::(mailAttachment.type.indexOf(\'image\') > -1)" ng-click="openPreview(mailAttachment.id)">\n <i class="icon-picture"></i>\n </a>\n </div>\n</div>\n'),a.put("app/channels/mail/inbox/note/note.directive.html",'<div class="note">\n <div class="row">\n <div class="col-md-6">\n <a type="button" name="button" data-ng-if="::(Auth.getCurrentUser().id == message.UserId)" data-ng-click="deleteNote()">\n <i class="fa fa-trash-o" style="color: red;"></i>\n </a>\n\n <i class="icon-calendar"></i> <span am-time-ago="message.updatedAt"></span>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="message.User">{{\'APPLICATION_ADD_BY\' | translate}}: <strong>{{message.User.fullname}}</strong></span>\n </div>\n </div>\n <hr>\n <span class="body text-left" data-ng-bind-html="message.text" style="white-space: pre-wrap;"></span>\n</div>\n'),a.put("app/channels/mail/inbox/note/note.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_NOTES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <div class="form-group">\n <textarea data-ng-model="item.text" name="text" rows="10" style="resize: none; width: 100%;"></textarea>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <button class="btn btn-sm btn-default green-meadow" data-ng-if="form.html && mailRoom.status !== \'CLOSED\'" data-ng-click="sendMail()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-if="mailRoom && form.html && mailRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-if="mailRoom" class="label label-default"> #{{mailRoom.id}} {{mailRoom.status}}</span>\n <span data-ng-if="mailRoom"> | </span>\n <span data-ng-if="mailRoom && mailRoom.ParentId" class="label label-warning"> Ref: <a data-ng-click="openRoom(mailRoom.ParentId)">#{{mailRoom.ParentId}}</a></span>\n <span data-ng-if="mailRoom && mailRoom.ParentId"> | </span>\n <span data-ng-if="mailRoom" class="caption-subject font-green-sharp bold uppercase">{{mailRoom.subject || \'No subject\' | truncate: 25: \'...\': true}}</span>\n </div>\n <div class="actions">\n <button class="btn btn-icon-only yellow" data-ng-if="mailRoom" data-ng-click="loadNote()" data-ng-disabled="mailRoom.status == \'CLOSED\'" title="{{\'APPLICATION_NOTES\' | translate}}">\n <i class="fa fa-sticky-note"></i>\n </button>\n <button class="btn btn-icon-only btn-primary" data-ng-if="mailRoom" data-ng-click="loadAgents();" data-ng-disabled="mailRoom.status == \'CLOSED\'" title="{{\'APPLICATION_AGENTS\' | translate}}">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="file-upload" data-ng-disabled="mailRoom.status == \'CLOSED\'">\n <i class="fa fa-paperclip"></i> <input type="file" data-ng-if="uploader" data-ng-disabled="mailRoom.status == \'CLOSED\'" nv-file-select uploader="uploader" multiple class="file-input" title="{{\'APPLICATION_ATTACHMENTS\' | translate}}">\n </button>\n <!-- UPDATE SECTION START -->\n <button data-ng-class="mailRoom.status == \'CLOSED\' ? \'grey-cascade\' : \'btn-success\'" class="btn btn-icon-only" data-ng-disabled="mailRoom.status == \'CLOSED\' && mailRoom.disposition" data-ng-if="mailRoom" data-ng-click="closeRoom()" title="{{\'APPLICATION_STATUS\' | translate}}">\n <i data-ng-class="mailRoom.status == \'CLOSED\' ? \'icon-target\' : \'fa fa-upload\'"></i>\n </button>\n <!-- UPDATE SECTION END -->\n <button class="btn default btn-icon-only" data-ng-if="mailRoom && mailRoom.status !== \'CLOSED\'" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-if="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <div class="form-group" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)" data-ng-disabled="mailRoom.status == \'CLOSED\'">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n\n <hr data-ng-if="mailRoom && mailRoom.status !== \'CLOSED\'">\n\n <!-- END TAGS -->\n <div id="mail-box">\n <ul class="chats">\n <li\n data-ng-switch="mailMessage.status"\n data-ng-class="{\'in\': mailMessage.status == \'RECEIVED\', \'out\': mailMessage.status == \'SENT\' || mailMessage.status == \'SENDING\' || mailMessage.status == \'FAILED\' || mailMessage.status == \'NOTE\'}"\n data-ng-repeat="mailMessage in mailRoom.MailMessages | orderBy:\'-createdAt\'">\n <div class="avatar" data-ng-class="message.UserId ? \'pretty-avatar\' : \'pretty-avatar-v\'">\n <ng-letter-avatar\n data-ng-if="mailMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{mailMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!mailMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{mailMessage.from[0]}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <mail-note message="mailMessage" ng-switch-when="NOTE"></mail-note>\n <mail-message message="mailMessage" list-id="mailRoom.MailAccount.ListId" ng-switch-default></mail-message>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="mailRoom && mailRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_MAIL_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_MAIL_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="sendMail()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-model="form.from[0]" theme="bootstrap" name="from" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="mailAccount.address as mailAccount in mailAccounts | filter: $select.search">\n <div data-ng-bind-html="mailAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="mailAccount.address | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-if="forms.compose.from.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n\n <!-- MAIL TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <ui-select tagging tagging-label multiple data-ng-model="form.sto" theme="bootstrap" name="to">\n <ui-select-match placeholder="To...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="to in form.to | filter:$select.search">\n {{to}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-if="forms.compose.to.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n\n <!-- START CC -->\n <div class="form-group" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">Cc:</label>\n </div>\n <div class="col-md-11">\n <ui-select tagging tagging-label multiple data-ng-model="form.scc" theme="bootstrap" name="cc">\n <ui-select-match placeholder="Cc...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="cc in form.cc | filter:$select.search">\n {{cc}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n </div>\n <!-- END CC -->\n\n <!-- START SUBJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">Subj:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="Subject..." rows="8" data-ng-model="form.subject">\n <span data-ng-if="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START ATTACH -->\n <div class="form-group" data-ng-if="uploader && (mailRoom.status !== \'CLOSED\')">\n <div class="col-md-12">\n <hr ng-if="uploader.queue.length">\n <table class="table">\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td style="border-top:none" rowspan="{{uploader.queue.length}}" ng-if="(!$index)">\n {{\'APPLICATION_ATTACHMENTS\' | translate}}:\n </td>\n <td style="border-top:none"><strong>{{ item.file.name }}</strong></td>\n <td style="border-top:none" ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td style="border-top:none" ng-show="uploader.isHTML5">\n <div class="progress" style="margin-bottom: 0;">\n <div class="progress-bar" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td style="border-top-style:none" class="text-center">\n <span ng-show="item.isSuccess"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError"><i class="glyphicon glyphicon-remove"></i></span>\n </td>\n <td style="border-top-style:none" nowrap>\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n <div>\n </div>\n </div>\n </div>\n <!-- END ATTACH -->\n\n <!-- START HTML -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.text.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="col-md-12"\n <div ckeditor="options" ng-model="form.html"></div>\n <!-- <ng-ckeditor bind="form.html" skin="kama" remove-buttons="Image" remove-plugins="iframe,flash,smiley"></ng-ckeditor> -->\n <span data-ng-if="forms.compose.text.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n <!-- START CANNED -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="mailRoom.status !== \'CLOSED\'">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelectAnswer($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <span data-ng-if="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <!-- END CANNED -->\n\n </div>\n </form>\n </div>\n </div>\n</div>\n</div>\n</div>\n<!-- END TODO CONTENT -->\n"),a.put("app/channels/mail/inbox/status/status.modal.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 data-ng-if="modal.title" data-ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="disposition" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-if="dispositions.length < 1">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\n<div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\n <i class="fa fa-trash"></i>\n </a>\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END Portlet PORTLET-->\n'),a.put("app/channels/mail/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/inbox/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-note"></i>\n <a href="#">{{ \'APPLICATION_INBOX\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row inbox">\n <div class="col-md-3">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $stateParams.id == mailAccount.id}" data-ng-repeat="mailAccount in mailAccounts">\n <a href="/channels/mail/inbox/view/account/{{mailAccount.id}}/list" class="btn">\n <i class="icon-notebook"></i> {{mailAccount.name}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-9" data-ng-init="initView()">\n <!-- BEGIN PROFILE CONTENT -->\n <div class="room-content">\n <div ui-view>\n <div class="note note-info">\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\n </div>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n\n</div>\n'),a.put("app/channels/mail/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/mail/inbox/view/view.templates.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TEMPLATES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="note note-info" data-ng-show="!templates.length">\n <h4 class="block">Info!</h4>\n <p>\n {{\'MESSAGE_NO_TEMPLATES_AVAILABLE\' | translate}}\n </p>\n </div>\n <form name="form" data-ng-show="templates.length" novalidate>\n <div class="form-group">\n <ui-select data-ng-model="item.template" theme="bootstrap">\n <ui-select-match placeholder="Select a template in the list or search his name...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template in templates | propsFilter: {name: $select.search}">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n <small data-ng-show="template.description">\n {{\'APPLICATION_DESCRIPTION\' | translate}}: {{template.description}}\n </small>\n </ui-select-choices>\n </ui-select>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="templates.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/mail/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/mail/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.mail.queues.view.settings\')}">\n <a data-ng-href="/channels/mail/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.mail.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/mail/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateMailQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">Agent Timeout</label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/mail/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/mail/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">{{ \'APPLICATION_MAIL\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.mail.realtime.view.agents\')}">\n <a href="/channels/mail/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.mail.realtime.view.applications\')}">\n <a href="/channels/mail/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/mail/realtime/view/view.queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div id="grid1" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-tree-view class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/channels/realtime/view/agents">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.realtime.view.agents\')}">\n <a href="/channels/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/sms/accounts/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/view/action/list/list.html",'<div class="row" data-ng-init="initActions()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/channels/sms/accounts/view/{{account.id}}/actions/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACTION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/account/view/action/view/view.html",'\n<div class="row" data-ng-init="initAction()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.settings" ng-submit="updateItem()" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.SmsQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.agent.$touched || forms.settings.$submitted) && forms.settings.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.intType.$touched || forms.settings.$submitted) && forms.settings.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.IntervalId.$touched || forms.settings.$submitted) && forms.settings.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="submit">{{\'APPLICATION_UPDATE\' | translate}}</button>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/sms/account/view/action/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-directions font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.action.$valid)">\n <form name="forms.action" novalidate>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.action.$submitted && forms.action.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="app.value as app in apps | filter: $select.search">\n <div ng-bind-html="app.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.action.$submitted && forms.action.app.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="number" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="application.timeout" min="1" required/>\n <span data-ng-show="(forms.action.timeout.$touched || forms.action.$submitted) && forms.action.timeout.$invalid && forms.action.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <div class="app-settings" ng-slide-down="application.app === \'queue\'" lazy-render duration="1" data-ng-init="getQueues()">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.SmsQueueId" name="queue" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.queue.$touched || forms.action.$submitted) && forms.action.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.app === \'agent\'" lazy-render duration="1" data-ng-init="getAgents()">\n <!-- START AGENT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.UserId" name="agent" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n <div ng-bind-html="agent.fullname | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.agent.$touched || forms.action.$submitted) && forms.action.agent.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENT -->\n </div>\n\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_INTERVAL_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{ intType.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.intType.$touched || forms.action.$submitted) && forms.action.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n\n <div class="app-settings" ng-slide-down="application.intType === \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="application.alwaysTime">\n <uib-timepicker name="t_from" data-ng-model="application.t_from" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker>\n </fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="application.alwaysTime"><uib-timepicker name="t_to" data-ng-model="application.t_to" show-meridian="false" show-spinners="false" mousewheel="false"></uib-timepicker></fieldset>\n <!-- <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="application.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label> -->\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START ALWAYS -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALWAYS\' | translate }}</label>\n <div class="input-group input-large">\n <label class="control-label pointer-cursor">\n <input\n bs-switch\n data-ng-model="application.alwaysTime"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n <!-- <input type="checkbox" data-ng-model="application.alwaysTime"> -->\n </label>\n </div>\n </div>\n <!-- END ALWAYS -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{ weekDay.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="application.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="application.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{ $select.selected.name | translate }}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{ month.name | translate }}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div class="app-settings" ng-slide-down="application.intType === \'list\'" lazy-render duration="1" data-ng-init="getIntervals()">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{ $select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in intervals | filter: $select.search">\n {{ interval.name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.action.IntervalId.$touched || forms.action.$submitted) && forms.action.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONTINUE\' | translate}}"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <!-- <button class="btn green-haze" type="button" wz-previous><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button> -->\n <input class="btn green-haze" type="submit" data-ng-click="next()" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/account/view/disposition/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/account/view/disposition/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </div>\n <div class="actions actions-md">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_SMS_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/account/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="account"></i>\n </li>\n <li data-ng-show="account">\n <a href="#">{{ account.description || account.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ account.description || account.name }}\n </div>\n <div class="profile-usertitle-job">\n {{account.email}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-class="{active: $state.is(\'main.channels.sms.accounts.view.settings\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/settings">\n <i class="icon-settings"></i>\n {{\'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.is(\'main.channels.sms.accounts.view.dispositions\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/dispositions">\n <i class="icon-target"></i>\n {{\'APPLICATION_DISPOSITIONS\' | translate}} </a>\n </li>\n <li ng-class="{active: $state.includes(\'main.channels.sms.accounts.view.actions\')}">\n <a href="/channels/sms/accounts/view/{{account.id}}/actions/list">\n <i class="icon-directions"></i>\n {{\'APPLICATION_ACTIONS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n<!-- END PAGE CONTENT-->\n</div>\n'),a.put("app/channels/sms/account/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="forms.info.$valid && updateItemSmsAccount()" novalidate>\n <!-- START ID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_ID\' | translate}}<span class="required" aria-required="true">*</span>\n </label>\n <input type="text" name="id" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.id" ng-disabled="true" required/>\n </div>\n <!-- END ID-->\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-if="license.cm">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <div class="input-group">\n\n <ui-select data-ng-model="account.ListId" name="list" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_LIST\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <span class="input-group-btn">\n <button type="button" data-ng-click="account.ListId = null" class="btn btn-default">\n <span class="glyphicon glyphicon-trash"></span>\n </button>\n </span>\n\n </div>\n </div>\n <!-- END LIST -->\n\n\n <!-- START FIDELITY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FIDELITY\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="account.fidelity"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END FIDELITY -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-if="account.fidelity" data-ng-class="{\'has-error\': (forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="account.timeout" required/>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.timeout.$touched || forms.info.$submitted) && forms.info.timeout.$invalid && forms.info.timeout.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START PHONE FOR TWILLIO ACCOUNT -->\n\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="account.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.in.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE FOR TWILLIO ACCOUNT -->\n\n <!-- START SID -->\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="sid" placeholder="{{\'APPLICATION_SID\' | translate}}" class="form-control" data-ng-model="account.sid" name="sid" required/>\n <span data-ng-show="(forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid && forms.info.sid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n <!-- START TOKEN -->\n <div ng-if= "account.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid}">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="account.token" name="token" required/>\n <span data-ng-show="(forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid && forms.info.token.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n\n <!-- START SMS TYPE -->\n\n <div ng-if= " account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="account.smstype" name="smstype" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'SMS_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="smstype in [\'basic\',\'classic\',\'classic+\'] | filter: $select.search">\n <div data-ng-bind="smstype | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid && forms.info.smstype.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR SKEBBY ACCOUNT -->\n <div ng-if= "account.type == \'skebby\' " class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="account.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.in.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n <!-- START USERNAME -->\n <div ng-if= "account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" name="username" required/>\n <span data-ng-show="(forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid && forms.info.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div ng-if= "account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n <!-- START REMOTE IP -->\n <div ng-if= "account.type == \'twilio\' || account.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remote" required/>\n <span data-ng-show="(forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid && forms.info.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n <!-- START CALLBACK URL -->\n <div ng-if= "account.type == \'twilio\' || account.type == \'skebby\'" ng-show="!forms.info.remote.$invalid" class="form-group" >\n\n <label class="control-label">URL </label><br>\n Copy the following url and insert it into your {{account.type}} account settings to receive sms.\n <a href="https://wiki.xcallymotion.com/display/XMD/SMS" target="_blank">Detail.</a>\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard(receiveurl);">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n <br><br>\n <code-mirror model="receiveurl"></code-mirror>\n\n </div>\n <!-- END CALLACK URL -->\n <!-- START DELIVERY CALLBACK URL -->\n <div ng-if= "account.smstype == \'classic+\'" class="form-group" ng-show="!forms.info.remote.$invalid">\n\n <label class="control-label">Delivery URL </label><br>\n Copy the following url and insert it into your {{account.type}} account settings to receive delivery status.\n <a href="https://wiki.xcallymotion.com/display/XMD/SMS" target="_blank">Detail</a>\n <a class="btn green-jungle" href="#" data-ng-click="copyToClipboard(deliveryurl);">\n <i class="fa fa-clipboard"></i> {{\'APPLICATION_COPY_TO_CLIPBOARD\' | translate}}\n </a>\n <br><br>\n\n <code-mirror model="deliveryurl"></code-mirror>\n\n </div>\n <!-- END DELIVERY CALLACK URL -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/sms/account/wizard/wizard.html",'\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-notebook"></i>\n <a href="/channels/sms/accounts/list">{{ \'APPLICATION_ACCOUNTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n <!-- START APPLICATION TYPE -->\n\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.type.$touched || forms.info.$submitted) && forms.info.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="type in [\'twilio\',\'skebby\'] | filter: $select.search">\n <div data-ng-bind="type | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.type.$touched || forms.info.$submitted) && forms.info.type.$invalid && forms.info.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR TWILLIO ACCOUNT -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" name="phone" required/>\n <span></span>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.info.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE FOR TWILLIO ACCOUNT -->\n <!-- START SID -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': ( forms.info.sid.$touched ||forms.info.$submitted) && forms.info.sid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" placeholder="{{\'APPLICATION_SID\' | translate}}" class="form-control" data-ng-model="item.sid" name="sid" required/>\n <span data-ng-show="(forms.info.sid.$touched || forms.info.$submitted) && forms.info.sid.$invalid && forms.info.sid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n <!-- START TOKEN -->\n <div ng-if= "item.type == \'twilio\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid}">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="item.token" name="token" required/>\n <span data-ng-show="(forms.info.token.$touched || forms.info.$submitted) && forms.info.token.$invalid && forms.info.token.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SID -->\n\n <!-- START SMS TYPE -->\n\n <div ng-if= " item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.smstype" name="smstype" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'SMS_TYPE\' | translate}}">{{$select.selected | uppercase}}</ui-select-match>\n <ui-select-choices repeat="smstype in [\'basic\',\'classic\',\'classic+\'] | filter: $select.search">\n <div data-ng-bind="smstype | highlight: $select.search | uppercase" ></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.smstype.$touched || forms.info.$submitted) && forms.info.smstype.$invalid && forms.info.smstype.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n <!-- START PHONE FOR SKEBBY ACCOUNT -->\n <div ng-if= "item.type == \'skebby\' " class="form-group" data-ng-class="{\'has-error\': ( forms.info.phone.$touched ||forms.info.$submitted) && forms.info.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true"></span></label>\n <input type="text" ng-pattern="/^[0-9]+$/" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" name="phone" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="(forms.info.phone.$touched || forms.info.$submitted) && forms.info.phone.$invalid && forms.info.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n\n\n\n </div>\n <!-- END PHONE -->\n <!-- START USERNAME -->\n <div ng-if= "item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" name="username" required/>\n <span data-ng-show="(forms.info.username.$touched || forms.info.$submitted) && forms.info.username.$invalid && forms.info.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n <!-- START PASSWORD -->\n <div ng-if= "item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n <!-- START REMOTE IP -->\n <div ng-if= "item.type == \'twilio\' || item.type == \'skebby\'" class="form-group" data-ng-class="{\'has-error\': (forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remote" placeholder="{{\'APPLICATION_MOTION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remote" required/>\n <span data-ng-show="(forms.info.remote.$touched || forms.info.$submitted) && forms.info.remote.$invalid && forms.info.remote.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE IP -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/inbox/room/room.directive.html",'<!-- BEGIN TODO CONTENT -->\n\n<div class="todo-content">\n <div class="portlet light">\n <div class="portlet-title">\n <div class="caption">\n <!-- <button type="button" data-ng-click="togglePanelLeft()" style="background: white;">\n <i class="icon-menu"></i>\n </button> -->\n <!-- <input type="submit" value="{{ \'APPLICATION_SEND\' | translate }}" class="btn btn-sm green-meadow" data-ng-disabled="SmsRoom.status === \'CLOSED\'" > -->\n <!-- <button class="btn btn-sm btn-default green-meadow" data-ng-disabled="!(form.body) || SmsRoom.status == \'CLOSED\'" data-ng-click="sendSMS()"> -->\n <button class="btn btn-sm btn-default green-meadow" data-ng-if="SmsRoom.status !== \'CLOSED\'" data-ng-disabled="!form.body || forms.compose.from.$invalid || forms.compose.to.$invalid" data-ng-click="sendSMS()">\n <i class="icon-paper-plane" style="color: white;"></i> {{\'APPLICATION_SEND\' | translate}}\n </button>\n <span data-ng-show="SmsRoom && SmsRoom.status !== \'CLOSED\'"> | </span>\n <span data-ng-show="SmsRoom" class="label label-default">#{{SmsRoom.id}} {{SmsRoom.status}}</span>\n <!-- <span data-ng-show="SmsRoom"> | </span> -->\n </div>\n <div class="actions" data-ng-switch="SmsRoom.status">\n <button class="btn btn-icon-only btn-primary" data-ng-show="SmsRoom" data-ng-click="loadAgents();" data-ng-disabled="SmsRoom.status === \'CLOSED\'">\n <i class="fa fa-user-plus"></i>\n </button>\n <button class="btn btn-icon-only" data-ng-show="SmsRoom" data-ng-class="{\'btn-success\':SmsRoom.status !== \'CLOSED\',\'grey-cascade\':SmsRoom.status === \'CLOSED\'}" data-ng-click="closeRoom(SmsRoom.id)" data-ng-disabled="SmsRoom.status === \'CLOSED\' && SmsRoom.disposition">\n <i data-ng-class="{\'fa fa-upload\':SmsRoom.status !== \'CLOSED\',\'icon-target\':SmsRoom.status === \'CLOSED\'}"></i>\n </button>\n <button class="btn default btn-icon-only" data-ng-if="SmsRoom && SmsRoom.status !== \'CLOSED\'" type="button" data-ng-click="togglePanelLeft()" title="{{\'APPLICATION_RESIZE\' | translate}}">\n <i ng-class="panelRight == \'col-md-12\' ? \'icon-size-actual\' : \'icon-size-fullscreen\'"></i>\n </button>\n </div>\n </div>\n <div class="portlet-body">\n <div class="row">\n <div data-ng-show="panelLeft" data-ng-class="panelLeft">\n <div class="form">\n <!-- START TAGS -->\n <!-- <div class="form-group" > -->\n <div class="form-group" data-ng-if="SmsRoom.status !== \'CLOSED\' || (SmsRoom.status == \'CLOSED\' && form.tags.length)">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-disabled="SmsRoom.status == \'CLOSED\'" multiple data-ng-model="form.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Tags...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search" class="">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <hr data-ng-if="SmsRoom && SmsRoom.status !== \'CLOSED\'">\n\n <div ng-scrollbars ng-scrollbars-config="{\n autoHideScrollbar: false,\n theme: \'light\',\n advanced: {\n updateOnContentResize: true\n },\n setHeight: 781,\n scrollInertia: 0\n }">\n <ul class="chats">\n <li data-ng-switch="SmsRoom.status" data-ng-class="{\'in\': smsMessage.status == \'RECEIVED\', \'out\': smsMessage.status == \'SENT\' || smsMessage.status == \'SENDING\' || smsMessage.status == \'FAILED\' || smsMessage.status == \'NOTE\' || smsMessage.status == \'DELIVERED\' || smsMessage.status == \'QUEUED\' || smsMessage.status != \'RECEIVED\' }" data-ng-repeat="smsMessage in SmsRoom.SmsMessages | orderBy:\'-createdAt\'">\n <!-- <img class="avatar" alt="" data-ng-src="api/users/avatar/{{getCurrentUser().userpic && smsMessage.status === \'SENT\' ? getCurrentUser().userpic : \'unknown_avatar\'}}"> -->\n <!-- <note message="smsMessage" ng-switch-when="NOTE"></note> -->\n <div class="avatar" data-ng-class="message.ChatVisitor ? \'pretty-avatar-v\' : \'pretty-avatar\'">\n <ng-letter-avatar\n data-ng-if="smsMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{smsMessage.User.fullname}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #3399CC"\n charCount="2"\n shape="round"></ng-letter-avatar>\n <ng-letter-avatar\n data-ng-if="!smsMessage.UserId"\n height="40"\n width="40"\n fontsize="25"\n data="{{smsMessage.from[0]}}"\n avatarcustombgcolor="#B0B0B0"\n avatarcustomborder="border:2px solid #EA4C61"\n charCount="1"\n shape="round"></ng-letter-avatar>\n </div>\n <sms message="smsMessage" list-id="SmsRoom.SmsAccount.ListId" accounttype=\'SmsRoom.SmsAccount.type\' ng-switch-default></sms>\n </li>\n </ul>\n </div>\n </div>\n <div data-ng-class="panelRight">\n <div class="note note-info" data-ng-if="SmsRoom && SmsRoom.status == \'CLOSED\'">\n <h4 class="block">Info! {{\'MESSAGE_SMS_ROOM_CLOSED\' | translate}}</h4>\n <p>\n {{\'MESSAGE_SMS_ROOM_CLOSED_DETAILS\' | translate}}.\n </p>\n </div>\n <form name="forms.compose" data-ng-submit="forms.compose.$valid && sendSMS()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n\n <!-- START FROM -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.from.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">From:</label>\n </div>\n <div class="col-md-11">\n <ui-select data-ng-disabled="SmsRoom" theme="bootstrap" name="from" data-ng-model="form.from[0]" required>\n <ui-select-match placeholder="From...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="smsAccount.phone as smsAccount in smsAccounts | filter: $select.search">\n <div data-ng-bind-html="smsAccount.name | highlight: $select.search"></div>\n <small data-ng-bind-html="smsAccount.phone | highlight: $select.search"></small>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.compose.from.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END FROM -->\n <!-- START TO -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.to.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">To:</label>\n </div>\n <div class="col-md-11">\n <input type="text" ng-pattern="/^[0-9]+$/" name="to" class="form-control todo-taskbody-taskdesc" placeholder="To..." rows="8" data-ng-disabled="SmsRoom" data-ng-model="form.to" required>\n <span class="help-block">\n {{ \'DESCRIPTION_PHONE_NUMBER\' | translate }}\n </span>\n <span data-ng-show="forms.compose.to.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END TO -->\n <!-- START CANNED -->\n <div class="form-group" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <!-- <div class="form-group" data-ng-class="{\'has-error\': forms.compose.subject.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'"> -->\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-magic" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <input type="text"\n data-ng-model="modelOptions.selectedAnswer"\n uib-typeahead="key for key in getAnswers($viewValue)"\n placeholder="Canned answers.."\n typeahead-loading="loadingLocations"\n typeahead-no-results="noResults"\n typeahead-on-select="onSelect($item)"\n class="form-control">\n <i ng-show="loadingLocations" class="glyphicon glyphicon-refresh"></i>\n <div ng-show="noResults">\n <i class="glyphicon glyphicon-remove"></i> No Results Found\n </div>\n <!-- <span data-ng-show="forms.compose.subject.$invalid && forms.compose.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span> -->\n </div>\n </div>\n\n </div>\n <!-- END CANNED -->\n <!-- START message -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.compose.body.$invalid && forms.compose.$submitted}" data-ng-if="SmsRoom.status !== \'CLOSED\'">\n <div class="col-md-12">\n <textarea id="text" class="form-control maxlength-handler" rows="8" maxlength="160" name="body" data-ng-model="form.body" ></textarea>\n <button id="btnPost" type="button" class="btn btn-success pull-right" ng-class="{\'btn-warning\': form.body.length >= 120, \'btn-danger\': form.body.length >= 141 }">{{ 160 - form.body.length }}</button>\n <span class="help-block"> Max 160 chars</span>\n <span data-ng-show="forms.compose.body.$invalid && forms.compose.$submitted " class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n </div>\n </div>\n\n <!-- END message -->\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- END TODO CONTENT -->\n"),a.put("app/channels/sms/inbox/sms/sms.html",'<div class="message">\n <div class="row">\n <div class="col-md-6">\n <span class="bold">From: </span>\n [<a href="" data-ng-click="openContact(smsMessage.from)">{{smsMessage.from}}</a>]\n <br>\n <span class="bold">To: </span>\n [<a href="" data-ng-click="openContact(smsMessage.to)">{{smsMessage.to}}</a>]\n <br>\n </div>\n <div class="col-md-6">\n <span class="pull-right" data-ng-show="smsMessage.User">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{smsMessage.User.fullname}}</strong></span>\n <span class="pull-right" data-ng-show="smsMessage.source">{{\'APPLICATION_SENT_BY\' | translate}}: <strong>{{smsMessage.source}}</strong></span>\n\n </div>\n </div>\n\n <br>\n <span class="todo-tasklist-date">\n <span class="pull-right" data-ng-switch="smsMessage.status">\n <a ng-switch-when="RECEIVED" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="SENT" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="DELIVERED" href="#" class="btn default btn-xs inactive-link green-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-check"></i>\n </a>\n <a ng-switch-when="SENDING" href="#" class="btn default btn-xs inactive-link blue-stripe" > {{smsMessage.status | uppercase}}\n <i class="fa fa-warning"></i>\n </a>\n <a ng-switch-when="FAILED" href="#" class="btn default btn-xs red-stripe"> {{smsMessage.status | uppercase}}\n <i class="fa fa-times"></i>\n </a>\n <a ng-switch-default href="#" class="btn default btn-xs"> {{smsMessage.status | uppercase}}\n </a>\n <br>\n <a ng-href="https://www.twilio.com/docs/errors/{{smsMessage.errorcode}}" target="_blank" ng-if="(smsMessage.errorcode) && (accounttype==\'twilio\')">Error Code:{{smsMessage.errorcode}}</a>\n <a ng-href="{{smsMessage.errorcode.length > 2 ? \'http://www.skebby.com/sms-api/sms-gateway/developers-docs/#receiveNotifySection\' : \'http://www.skebby.com/sms-api/sms-gateway/developers-docs/#errorCodesSection\'}}" target="_blank" ng-if="(smsMessage.errorcode != 1) && (smsMessage.errorcode) && (accounttype==\'skebby\')">Error Code:{{smsMessage.errorcode}}</a>\n </span>\n\n <i class="icon-calendar"></i> <span am-time-ago="smsMessage.updatedAt"></span>\n </span>\n <hr>\n <span class="body text-left" data-ng-bind-html="smsMessage.body" style="white-space: pre-wrap;"></span>\n\n </div>\n'),a.put("app/channels/sms/inbox/view/account/list/list.html",'<!-- BEGIN Portlet PORTLET-->\n<div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption">\n <div class="btn-group btn-group-solid" data-ng-show="!isAgent">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'NEW\'" uib-uncheckable>NEW</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'OPEN\'" uib-uncheckable>OPEN</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'CLOSED\'" uib-uncheckable>CLOSED</button>\n </div>\n <div class="btn-group btn-group-solid">\n <button type="button" class="btn btn-sm default" data-ng-model="query.status" uib-btn-radio="\'UNMANAGED\'" uib-uncheckable>UNMANAGED</button>\n </div>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only default" data-ng-click="getPage();">\n <i class="fa fa-refresh"></i>\n </a>\n <a href="#" class="btn btn-icon-only red" data-ng-click="deleteItems();" data-ng-show="id.length && isAdmin">\n <i class="fa fa-trash"></i>\n </a>\n <a href="#" class="btn btn-icon-only blue" data-ng-click="tagItems();" data-ng-show="id.length">\n <i class="fa fa-tags"></i>\n </a>\n <a href="#" class="btn btn-icon-only green" data-ng-click="openRoom(null, \'New Message\')">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-title" data-ng-show="tags.length">\n <!-- START TAGS -->\n <div class="form-group">\n <div class="row">\n <div class="col-md-1">\n <a href="#" class="btn btn-icon-only">\n <i class="fa fa-tags" style="color: gray;"></i>\n </a>\n </div>\n <div class="col-md-11">\n <ui-select multiple data-ng-model="query.tags" theme="bootstrap" on-select="onChanged($item, $model)" on-remove="onChanged($item, $model)">\n <ui-select-match placeholder="Search by tag...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter:$select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n </div>\n <!-- END TAGS -->\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="false"></span>\n <!-- END UI-GRID SPINNER -->\n\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid-inbox">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END Portlet PORTLET-->\n'),a.put("app/channels/sms/inbox/view/view.agents.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_AGENTS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TRANSPORT -->\n <div class="form-group">\n <ui-select multiple name="agents" data-ng-model="item.agents" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_AGENTS\' | translate}}">{{$item.fullname}}</ui-select-match>\n <ui-select-choices repeat="agent.id as agent in agents | filter: $select.search">\n {{agent.fullname}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TRANSPORT -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/inbox/view/view.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-note"></i>\n <a href="/channels/sms/inbox/list">{{ \'APPLICATION_INBOX\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row inbox" data-ng-init="initView()">\n <div class="col-md-3">\n <ul class="inbox-nav margin-bottom-10">\n <li data-ng-class="{active: $stateParams.id == smsAccount.id}" data-ng-repeat="smsAccount in smsAccounts">\n <a href="/channels/sms/inbox/view/account/{{smsAccount.id}}/list" class="btn">\n <i class="icon-notebook"></i> {{smsAccount.name}}\n </a>\n <b></b>\n </li>\n </ul>\n </div>\n\n <div class="col-md-9" >\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view>\n <div class="note note-info">\n <h4 class="block">Info! {{\'APPLICATION_NO_ACCOUNT_SELECTED\' | translate}}</h4>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/inbox/view/view.status.modal.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text && !closed" ng-bind="modal.text | translate"></p>\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SMS_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'), -a.put("app/channels/sms/inbox/view/view.tags.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TAGS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <!-- START TRANSPORT -->\n <div class="form-group">\n <form name="form" novalidate>\n <!-- START TAGS -->\n <div class="form-group">\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_TAGS\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAGS -->\n </form>\n </div>\n <!-- END TRANSPORT -->\n</div>\n<div class="modal-footer">\n <button type="button" class="btn" data-ng-class="button.class" data-ng-click="button.click()"data-ng-repeat="button in modal.buttons">{{button.text | translate}}</button>\n <!-- <button class="btn btn-success" type="button" data-ng-click="ok()">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button> -->\n</div>\n'),a.put("app/channels/sms/inbox/view/view.templates.modal.html",'<div class="modal-header" data-ng-init="initModal()">\n <h3 class="modal-title">{{ \'APPLICATION_TEMPLATES\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="note note-info" data-ng-show="!templates.length">\n <h4 class="block">Info!</h4>\n <p>\n {{\'MESSAGE_NO_TEMPLATES_AVAILABLE\' | translate}}\n </p>\n </div>\n <form name="form" data-ng-show="templates.length" novalidate>\n <div class="form-group">\n <ui-select data-ng-model="item.template" theme="bootstrap">\n <ui-select-match placeholder="Select a template in the list or search his name...">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template in templates | propsFilter: {name: $select.search}">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n <small data-ng-show="template.description">\n {{\'APPLICATION_DESCRIPTION\' | translate}}: {{template.description}}\n </small>\n </ui-select-choices>\n </ui-select>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="templates.length">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$invalid && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENT_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="Timeout" class="form-control" data-ng-model="item.timeout" required min="1"/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$invalid && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.strategy.$touched || form.$submitted) && form.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.strategy.$touched || form.$submitted) && form.strategy.$invalid && form.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/queue/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/sms/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.sms.queues.view.settings\')}">\n <a data-ng-href="/channels/sms/queues/view/{{queue.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.sms.queues.view.agents\')}">\n <a data-ng-href="/channels/sms/queues/view/{{queue.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateSmsQueue()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="queue.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START TIMEOUT -->\n <div class="form-group">\n <label class="control-label">Timeout</label>\n <input type="number" name="timeout" placeholder="Timeout" class="form-control" min="1" data-ng-model="queue.timeout"/>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START HEADER SHAPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}</label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'rrmemory\',\'beepall\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END HEADER SHAPE -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/sms/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.id as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/sms/realtime/view/application/application.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initApplications()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="glyphicon glyphicon-comment"></i>\n <a href="#">{{ \'APPLICATION_SMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="#">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.sms.realtime.view.agents\')}">\n <a href="/channels/sms/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.sms.realtime.view.applications\')}">\n <a href="/channels/sms/realtime/view/applications">\n {{\'APPLICATION_APPLICATIONS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/sms/realtime/view/view.queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div id="grid1" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-tree-view class="grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CHANSPY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.prefix.$touched || form.$submitted) && form.prefix.$invalid}">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="prefix" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="item.prefix" required/>\n <span data-ng-show="(form.prefix.$touched || form.$submitted) && form.prefix.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.options.$touched || form.$submitted) && form.options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="item.options" name="options" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.value}}: {{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="option.value as option in options | filter: $select.search">\n <div ng-bind-html="option.value + \': \' + (option.name | translate) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.options.$touched || form.$submitted) && form.options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START AUTH -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTH\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.auth"\n type="checkbox"\n name="auth"\n data-ng-init="item.auth = 0"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END AUTH -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.password.$touched || form.$submitted) && form.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span data-ng-show="item.auth" class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" data-ng-disabled="!item.auth" data-ng-required="item.auth"/>\n <span data-ng-show="(form.password.$touched || form.$submitted) && form.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/chanspy/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magnifier"></i>\n <a href="/channels/voice/chanspys/list">{{ \'APPLICATION_CHANSPY\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANSPY\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CHANSPY\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getChanSpy()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/channels/voice/chanspys/list">{{ \'APPLICATION_CHANSPY\' | translate }}</a>\n <i data-ng-show="chanspy" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="chanspy">\n <a href="#">{{chanspy.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/chanspy.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{chanspy.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.chanspy.view.settings\')}">\n <a data-ng-href="/tools/chanspy/view/{{chanspy.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/chanspy/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CHANSPY\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateChanSpy()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="chanspy.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.prefix.$touched || form.general.$submitted) && form.general.prefix.$invalid}">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="prefix" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="chanspy.prefix" required/>\n <span data-ng-show="(form.general.prefix.$touched || form.general.$submitted) && form.general.prefix.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.options.$touched || form.general.$submitted) && form.general.options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="chanspy.options" name="options" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.value}}: {{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="option.value as option in options | filter: $select.search">\n <div ng-bind-html="option.value + \': \' + (option.name | translate) | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.general.options.$touched || form.general.$submitted) && form.general.options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START AUTH -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTH\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="chanspy.auth"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END AUTH -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.general.password.$touched || form.general.$submitted) && form.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" data-ng-show="chanspy.auth" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="chanspy.password" data-ng-disabled="!chanspy.auth" data-ng-required="chanspy.auth"/>\n <span data-ng-show="(form.general.password.$touched || form.general.$submitted) && form.general.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="chanspy.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/voice/context/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTEXT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/context/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_CONTEXTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONTEXTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTEXT\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/context/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getContext()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/voice/contexts/list">{{ \'APPLICATION_CONTEXTS\' | translate }}</a>\n <i data-ng-show="context" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="context">\n <a href="#">{{context.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/context.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{context.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.contexts.view.settings\')}">\n <a data-ng-href="/channels/voice/contexts/view/{{context.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/context/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CONTEXT\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceContext()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="context.name" required readonly/>\n <span class="help-block">\n {{ \'DESCRIPTION_CANT_EDIT_NAME\' | translate }}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="context.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/disposition/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-target"></i>\n <a href="/channels/voice/dispositions/list">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <a href="#" class="btn btn-icon-only green" data-ng-click="addDisposition();">\n <i class="fa fa-plus"></i>\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <div class="row" data-ng-hide="dispositions.length">\n <div class="col-md-12">\n <div class="note note-info">\n <h4 class="block">Info! {{\'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate}}</h4>\n </div>\n </div>\n </div>\n\n <!-- GENERAL TAB -->\n <div class="row" data-ng-repeat="disposition in dispositions">\n <div class="col-md-12 form-group">\n <div class="input-group">\n <div>\n <input class="form-control" type="text" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" data-ng-model="disposition.name">\n </div>\n <span class="input-group-btn">\n <button class="btn btn-success" type="button" data-ng-click="updateDisposition(disposition.id, disposition.name);"><i class="fa fa-cloud-upload fa-fw"></i> {{\'APPLICATION_UPDATE\' | translate}}</button>\n <button class="btn btn-danger" type="button" data-ng-click="deleteDisposition(disposition.id);"><i class="fa fa-times fa-fw"></i> {{\'APPLICATION_DELETE\' | translate}}</button>\n </span>\n </div>\n </div>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/disposition/list/modal/add.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_DISPOSITIONS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.form.$touched || form.$submitted) && form.form.$invalid}">\n <div class="">\n <input type="text" name="form" placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}" class="form-control" data-ng-model="name" required/>\n <span data-ng-show="form.form.$touched && form.form.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END NAME -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" data-ng-click="ok()" data-ng-show="form.$valid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" data-ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/moh/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_MOH_CLASS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/moh/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone"></i>\n <a href="#">{{ \'APPLICATION_MOHS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-music-tone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_MOHS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_MOH_CLASS\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.addFiles.html",'\n<div class="row" data-ng-init="getSounds()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_MOH\' | translate }} {{ \'APPLICATION_ADD_FILES\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="note note-warning" data-ng-hide="soundList.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <form name="forms.general" data-ng-submit="(item.sounds.length > 0) && addMohs()" data-ng-show="soundList.length" novalidate>\n\n <!-- START SOUNDS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.sounds.$touched || forms.general.$submitted) && item.sounds.length == 0}">\n <label class="control-label">{{\'APPLICATION_SOUNDS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="item.sounds" theme="bootstrap" name="sounds" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.display_name}}</ui-select-match>\n <ui-select-choices repeat="sound.id as sound in soundList | filter: $select.search">\n {{sound.display_name}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.sounds.$touched || forms.general.$submitted) && item.sounds.length == 0" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <input type="submit" class="btn green-haze" value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </form>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.audios.html",'<div ui-view class="profile-content">\n<div class="row" data-ng-init="getAudioFiles()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AUDIOS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="audioFiles">\n <a class="btn green-jungle " href="/channels/voice/mohs/view/{{moh.id}}/add" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_ADD_FILES\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div class="note note-warning" data-ng-hide="audioFiles">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_FOLDER_DOES_NOT_EXIST\' | translate }}\n </p>\n </div>\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover" data-ng-show="audioFiles">\n <thead>\n <tr>\n <th>{{ \'APPLICATION_NAME\' | translate }}</th>\n <th width="30%">{{ \'APPLICATION_PREVIEW\' | translate }}</th>\n <th width="10%">{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody data-ng-model="audioFiles">\n <tr data-ng-repeat="audiofile in audioFiles">\n <td>{{audiofile}}</td>\n <td>\n <audio controls ng-src="{{getSecureSrc(audioSources[audiofile])}}" preload="none">\n Your browser does not support the audio tag.\n </audio></td>\n <td>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(audiofile,audiofile)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="audioFiles.length">\n <td colspan="3" style="text-align:center;">\n <i>{{ \'MESSAGE_NO_AUDIOFILES_AVAILABLE\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/moh/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getMoh()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone"></i>\n <a href="/channels/voice/mohs/list">{{ \'APPLICATION_MOH_CLASS\' | translate }}</a>\n <i data-ng-show="moh" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="moh">\n <a href="#">{{moh.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/moh.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{moh.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.mohs.view.settings\')}">\n <a data-ng-href="/channels/voice/mohs/view/{{moh.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.mohs.view.audios\') || $state.is(\'main.channels.voice.mohs.view.add\')}">\n <a data-ng-href="/channels/voice/mohs/view/{{moh.id}}/audios">\n <i class="icon-list"></i>\n {{ \'APPLICATION_AUDIOS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/moh/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_MOH_CLASS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceMoh()" novalidate>\n\n <!-- START PATH -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_PATH\' | translate}}</label>\n <input type="text" name="path" class="form-control" data-ng-model="moh.directory" disabled/>\n </div>\n <!-- END PATH -->\n\n <!-- START SORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.sort.$touched || forms.general.$submitted) && forms.general.sort.$invalid}">\n <label class="control-label">{{\'APPLICATION_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="moh.sort" theme="bootstrap" name="sort" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$translate.instant($select.selected.name)}}</ui-select-match>\n <ui-select-choices repeat="sort.value as sort in sortOptions | filter: $select.search">\n {{$translate.instant(sort.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.sort.$touched || forms.general.$submitted) && forms.general.sort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SORT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.description.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" class="form-control" data-ng-model="moh.description"/></textarea>\n <span data-ng-show="forms.general.$submitted && forms.general.description.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/queue/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.queue.name.$touched || form.queue.$submitted) && form.queue.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.strategy.$touched || form.queue.$submitted) && form.queue.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'ringall\', \'leastrecent\', \'fewestcalls\', \'random\', \'rrmemory\', \'linear\', \'wrandom\', \'rrordered\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n </span>\n <span data-ng-show="(form.queue.strategy.$touched || form.queue.$submitted) && form.queue.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/queue/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUEUES\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_QUEUE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/queue/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4><p>{{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}</p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <label for="penalty">{{\'APPLICATION_PENALTY\' | translate}}</label>\n <div class="input-group input-small mbottom20">\n <input type="number" class="spinner-input form-control" maxlength="3" data-ng-model="queue.penalty" readonly>\n <div class="spinner-buttons input-group-btn btn-group-vertical">\n <button type="button" class="btn spinner-up btn-xs blue" data-ng-click="queue.penalty=queue.penalty+1">\n <i class="fa fa-angle-up"></i>\n </button>\n <button type="button" class="btn spinner-down btn-xs blue" data-ng-disabled="!queue.penalty" data-ng-click="queue.penalty=queue.penalty-1">\n <i class="fa fa-angle-down"></i>\n </button>\n </div>\n </div>\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/voice/queue/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getQueue()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/channels/voice/queues/list">{{ \'APPLICATION_QUEUES\' | translate }}</a>\n <i data-ng-show="queue" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="queue">\n <a href="#">{{queue.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/queue.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{queue.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.queues.view.settings\')}">\n <a data-ng-href="/channels/voice/queues/view/{{queue.name}}/settings"> <i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.queues.view.agents\')}" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <a data-ng-href="/channels/voice/queues/view/{{queue.name}}/agents"><i class="icon-people"></i>{{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/queue/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_QUEUE_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_PERIODIC_ANNOUNCE\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();getMohs();getSounds();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceQueue()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START STRATEGY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$invalid}">\n <label class="control-label">{{\'APPLICATION_STRATEGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.strategy" name="strategy" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.toUpperCase()}}</ui-select-match>\n <ui-select-choices repeat="strategy in [\'ringall\', \'leastrecent\', \'fewestcalls\', \'random\', \'rrmemory\', \'linear\', \'wrandom\', \'rrordered\'] | filter: $select.search">\n <div ng-bind-html="strategy.toUpperCase() | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_STRATEGY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.strategy.$touched || forms.general.$submitted) && forms.general.strategy.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STRATEGY -->\n\n <!-- START MOH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.musiconhold.$touched || forms.general.$submitted) && forms.general.musiconhold.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOH\' | translate}}</label>\n <ui-select data-ng-model="queue.musiconhold" name="musiconhold" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="musiconhold.name as musiconhold in voiceMohs | filter: $select.search">\n <div ng-bind-html="musiconhold.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_VOICE_MOH\' | translate }}\n </span>\n <span data-ng-show="(forms.general.musiconhold.$touched || forms.general.$submitted) && forms.general.musiconhold.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOH -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="queue.timeout" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_TIMEOUT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.timeout.$touched || forms.general.$submitted) && forms.general.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START MAXLEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.maxlen.$touched || forms.general.$submitted) && forms.general.maxlen.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAXLEN\' | translate}}</label>\n <input type="number" min="0" name="maxlen" placeholder="{{\'APPLICATION_MAXLEN\' | translate}}" class="form-control" data-ng-model="queue.maxlen" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MAXLEN\' | translate }}\n </span>\n <span data-ng-show="(forms.general.maxlen.$touched || forms.general.$submitted) && forms.general.maxlen.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAXLEN -->\n\n <!-- START RETRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.retry.$touched || forms.general.$submitted) && forms.general.retry.$invalid}">\n <label class="control-label">{{\'APPLICATION_RETRY\' | translate}}</label>\n <input type="number" min="0" name="retry" placeholder="{{\'APPLICATION_RETRY\' | translate}}" class="form-control" data-ng-model="queue.retry" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RETRY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.retry.$touched || forms.general.$submitted) && forms.general.retry.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RETRY -->\n\n </div>\n <div class="col-md-6">\n <!-- START WRAPUPTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.wrapuptime.$touched || forms.general.$submitted) && forms.general.wrapuptime.$invalid}">\n <label class="control-label">{{\'APPLICATION_WRAPUPTIME\' | translate}}</label>\n <input type="number" min="0" name="wrapuptime" placeholder="{{\'APPLICATION_WRAPUPTIME\' | translate}}" class="form-control" data-ng-model="queue.wrapuptime" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_WRAPUPTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.general.wrapuptime.$touched || forms.general.$submitted) && forms.general.wrapuptime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WRAPUPTIME -->\n\n <!-- START WEIGHT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.weight.$touched || forms.general.$submitted) && forms.general.weight.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEIGHT\' | translate}}</label>\n <input type="number" min="0" name="weight" placeholder="{{\'APPLICATION_WEIGHT\' | translate}}" class="form-control" data-ng-model="queue.weight" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_WEIGHT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.weight.$touched || forms.general.$submitted) && forms.general.weight.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEIGHT -->\n\n <!-- START JOINEMPTY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.joinempty.$touched || forms.general.$submitted) && forms.general.joinempty.$invalid}">\n <label class="control-label">{{\'APPLICATION_JOINEMPTY\' | translate}}</label>\n <ui-select multiple data-ng-model="queue.joinempty" name="joinempty" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'strict\',\'loose\',\'paused\',\'penalty\',\'inuse\',\'ringing\',\'unavailable\',\'invalid\',\'unknown\',\'wrapup\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_JOINEMPTY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.joinempty.$touched || forms.general.$submitted) && forms.general.joinempty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END JOINEMPTY -->\n\n <!-- START LEAVEWHENEMPTY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.leavewhenempty.$touched || forms.general.$submitted) && forms.general.leavewhenempty.$invalid}">\n <label class="control-label">{{\'APPLICATION_LEAVEWHENEMPTY\' | translate}}</label>\n <ui-select multiple data-ng-model="queue.leavewhenempty" name="leavewhenempty" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'strict\',\'loose\',\'paused\',\'penalty\',\'inuse\',\'ringing\',\'unavailable\',\'invalid\',\'unknown\',\'wrapup\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_LEAVEWHENEMPTY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.leavewhenempty.$touched || forms.general.$submitted) && forms.general.leavewhenempty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LEAVEWHENEMPTY -->\n\n <!-- START ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.announce.$touched || forms.general.$submitted) && forms.general.announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.announce" name="announce" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in sounds | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.announce.$touched || forms.general.$submitted) && forms.general.announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE -->\n </div>\n </div>\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="queue.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.announce" data-ng-submit="forms.announce.$valid && updateVoiceQueue()" novalidate>\n <div class="row">\n <div class="col-md-12">\n <!-- START PERIODIC_ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.periodic_announce.$touched || forms.announce.$submitted) && forms.announce.periodic_announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_PERIODIC_ANNOUNCE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="queue.periodic_announce" name="periodic_announce" theme="bootstrap" data-ng-disabled="!periodicAnnounces.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in periodicAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="periodicAnnounces.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.periodic_announce.$touched || forms.announce.$submitted) && forms.announce.periodic_announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PERIODIC_ANNOUNCE -->\n </div>\n </div>\n <div class="row">\n <div class="col-md-6">\n <p><h3>{{\'APPLICATION_SETTINGS\' | translate}}</h3></p>\n <!-- START ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_frequency.$touched || forms.announce.$submitted) && forms.announce.announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="announce_frequency" placeholder="{{\'APPLICATION_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.announce_frequency" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_frequency.$touched || forms.announce.$submitted) && forms.announce.announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_FREQUENCY -->\n\n <!-- START MIN_ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.min_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.min_announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_MIN_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="min_announce_frequency" placeholder="{{\'APPLICATION_MIN_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.min_announce_frequency" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MIN_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.min_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.min_announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MIN_ANNOUNCE_FREQUENCY -->\n\n <!-- START PERIODIC_ANNOUNCE_FREQUENCY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.periodic_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.periodic_announce_frequency.$invalid}">\n <label class="control-label">{{\'APPLICATION_PERIODIC_ANNOUNCE_FREQUENCY\' | translate}}</label>\n <input type="number" min="0" name="periodic_announce_frequency" placeholder="{{\'APPLICATION_PERIODIC_ANNOUNCE_FREQUENCY\' | translate}}" class="form-control" data-ng-model="queue.periodic_announce_frequency"/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_PERIODIC_ANNOUNCE_FREQUENCY\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.periodic_announce_frequency.$touched || forms.announce.$submitted) && forms.announce.periodic_announce_frequency.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PERIODIC_ANNOUNCE_FREQUENCY -->\n\n <!-- START RANDOM_PERIODIC_ANNOUNCE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.random_periodic_announce.$touched || forms.announce.$submitted) && forms.announce.random_periodic_announce.$invalid}">\n <label class="control-label">{{\'APPLICATION_RANDOM_PERIODIC_ANNOUNCE\' | translate}}</label>\n <ui-select data-ng-model="queue.random_periodic_announce" name="random_periodic_announce" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RANDOM_PERIODIC_ANNOUNCE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.random_periodic_announce.$touched || forms.announce.$submitted) && forms.announce.random_periodic_announce.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANDOM_PERIODIC_ANNOUNCE -->\n\n <!-- START ANNOUNCE_HOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_holdtime.$touched || forms.announce.$submitted) && forms.announce.announce_holdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_HOLDTIME\' | translate}}</label>\n <ui-select data-ng-model="queue.announce_holdtime" name="announce_holdtime" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'once\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_HOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_holdtime.$touched || forms.announce.$submitted) && forms.announce.announce_holdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_HOLDTIME -->\n\n <!-- START ANNOUNCE_POSITION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_position.$touched || forms.announce.$submitted) && forms.announce.announce_position.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_POSITION\' | translate}}</label>\n <ui-select data-ng-model="queue.announce_position" name="announce_position" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'limit\',\'more\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_position.$touched || forms.announce.$submitted) && forms.announce.announce_position.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_POSITION -->\n\n <!-- START ANNOUNCE_POSITION_LIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.announce_position_limit.$touched || forms.announce.$submitted) && forms.announce.announce_position_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_ANNOUNCE_POSITION_LIMIT\' | translate}}</label>\n <input type="number" min="0" name="announce_position_limit" placeholder="{{\'APPLICATION_ANNOUNCE_POSITION_LIMIT\' | translate}}" class="form-control" data-ng-model="queue.announce_position_limit"/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_ANNOUNCE_POSITION_LIMIT\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.announce_position_limit.$touched || forms.announce.$submitted) && forms.announce.announce_position_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ANNOUNCE_POSITION_LIMIT -->\n\n <!-- START REPORTHOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.reportholdtime.$touched || forms.announce.$submitted) && forms.announce.reportholdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_REPORTHOLDTIME\' | translate}}</label>\n <ui-select data-ng-model="queue.reportholdtime" name="reportholdtime" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_REPORTHOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.reportholdtime.$touched || forms.announce.$submitted) && forms.announce.reportholdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORTHOLDTIME -->\n\n </div>\n <div class="col-md-6">\n <p><h3>{{\'APPLICATION_SOUNDS\' | translate}}</h3></p>\n <!-- START QUEUE_REPORTHOLD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_reporthold.$touched || forms.announce.$submitted) && forms.announce.queue_reporthold.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_REPORTHOLD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_reporthold" name="queue_reporthold" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_REPORTHOLD\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_reporthold.$touched || forms.announce.$submitted) && forms.announce.queue_reporthold.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_REPORTHOLD -->\n\n <!-- START QUEUE_YOUARENEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_youarenext.$touched || forms.announce.$submitted) && forms.announce.queue_youarenext.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_YOUARENEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_youarenext" name="queue_youarenext" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_YOUARENEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_youarenext.$touched || forms.announce.$submitted) && forms.announce.queue_youarenext.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_YOUARENEXT -->\n\n <!-- START QUEUE_THEREARE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_thereare.$touched || forms.announce.$submitted) && forms.announce.queue_thereare.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_THEREARE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_thereare" name="queue_thereare" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_THEREARE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_thereare.$touched || forms.announce.$submitted) && forms.announce.queue_thereare.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_THEREARE -->\n\n <!-- START QUEUE_CALLSWAITING -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_callswaiting.$touched || forms.announce.$submitted) && forms.announce.queue_callswaiting.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_CALLSWAITING\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_callswaiting" name="queue_callswaiting" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_CALLSWAITING\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_callswaiting.$touched || forms.announce.$submitted) && forms.announce.queue_callswaiting.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_CALLSWAITING -->\n\n <!-- START QUEUE_HOLDTIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_holdtime.$touched || forms.announce.$submitted) && forms.announce.queue_holdtime.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_HOLDTIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_holdtime" name="queue_holdtime" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_HOLDTIME\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_holdtime.$touched || forms.announce.$submitted) && forms.announce.queue_holdtime.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_HOLDTIME -->\n\n <!-- START QUEUE_MINUTES -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_minutes.$touched || forms.announce.$submitted) && forms.announce.queue_minutes.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_MINUTES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_minutes" name="queue_minutes" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MINUTES\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_minutes.$touched || forms.announce.$submitted) && forms.announce.queue_minutes.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_MINUTES -->\n\n <!-- START QUEUE_MINUTE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_minute.$touched || forms.announce.$submitted) && forms.announce.queue_minute.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_MINUTE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_minute" name="queue_minute" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MINUTE\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_minute.$touched || forms.announce.$submitted) && forms.announce.queue_minute.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_MINUTE -->\n\n <!-- START QUEUE_SECONDS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_seconds.$touched || forms.announce.$submitted) && forms.announce.queue_seconds.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_SECONDS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_seconds" name="queue_seconds" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_SECONDS\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_seconds.$touched || forms.announce.$submitted) && forms.announce.queue_seconds.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_SECONDS -->\n\n <!-- START QUEUE_THANKYOU -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.announce.queue_thankyou.$touched || forms.announce.$submitted) && forms.announce.queue_thankyou.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE_THANKYOU\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.queue_thankyou" name="QUEUE_THANKYOU" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="returnAnnouncePath(announce) as announce in queueAnnounces | filter: $select.search">\n <div ng-bind-html="announce.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_THANKYOU\' | translate }}\n </span>\n <span data-ng-show="(forms.announce.queue_thankyou.$touched || forms.announce.$submitted) && forms.announce.queue_thankyou.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE_THANKYOU -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateVoiceQueue()" novalidate>\n\n <div class="row">\n <div class="col-md-6">\n\n <!-- START AUTOPAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.autopause.$touched || forms.advanced.$submitted) && forms.advanced.autopause.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTOPAUSE\' | translate}}</label>\n <ui-select data-ng-model="queue.autopause" name="autopause" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\',\'all\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_AUTOPAUSE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.autopause.$touched || forms.advanced.$submitted) && forms.advanced.autopause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUTOPAUSE -->\n\n <!-- START RINGINUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.ringinuse.$touched || forms.advanced.$submitted) && forms.advanced.ringinuse.$invalid}">\n <label class="control-label">{{\'APPLICATION_RINGINUSE\' | translate}}</label>\n <ui-select data-ng-model="queue.ringinuse" name="ringinuse" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_RINGINUSE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.ringinuse.$touched || forms.advanced.$submitted) && forms.advanced.ringinuse.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RINGINUSE -->\n\n <!-- START MEMBER_DELAY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.memberdelay.$touched || forms.advanced.$submitted) && forms.advanced.memberdelay.$invalid}">\n <label class="control-label">{{\'APPLICATION_MEMBER_DELAY\' | translate}}</label>\n <input type="number" min="0" name="memberdelay" placeholder="{{\'APPLICATION_MEMBER_DELAY\' | translate}}" class="form-control" data-ng-model="queue.memberdelay" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MEMBER_DELAY\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.memberdelay.$touched || forms.advanced.$submitted) && forms.advanced.memberdelay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MEMBER_DELAY -->\n\n <!-- START ACW -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.acw.$touched || forms.advanced.$submitted) && forms.advanced.acw.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACW\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="queue.acw"\n type="checkbox"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n <span class="help-block">\n {{ \'DESCRIPTION_ACW\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.acw.$touched || forms.advanced.$submitted) && forms.advanced.acw.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_ACW\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACW -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START TIMEOUTRESTART -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.timeoutrestart.$touched || forms.advanced.$submitted) && forms.advanced.timeoutrestart.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUTRESTART\' | translate}}</label>\n <ui-select data-ng-model="queue.timeoutrestart" name="timeoutrestart" theme="bootstrap">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_TIMEOUTRESTART\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.timeoutrestart.$touched || forms.advanced.$submitted) && forms.advanced.timeoutrestart.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUTRESTART -->\n\n <!-- START MONITOR_FORMAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.monitor_format.$touched || forms.advanced.$submitted) && forms.advanced.monitor_format.$invalid}">\n <label class="control-label">{{\'APPLICATION_MONITOR_FORMAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="queue.monitor_format" name="monitor_format" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="monFormat.value as monFormat in monitorFormats | filter: $select.search">\n <div ng-bind-html="monFormat.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_MONITOR_FORMAT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.monitor_format.$touched || forms.advanced.$submitted) && forms.advanced.monitor_format.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONITOR_FORMAT -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.context.$touched || forms.advanced.$submitted) && forms.advanced.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}</label>\n <ui-select data-ng-model="queue.context" name="context" theme="bootstrap">\n <ui-select-match allow-clear placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_QUEUE_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.context.$touched || forms.advanced.$submitted) && forms.advanced.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START ACW_TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.acwTimeout.$touched || forms.advanced.$submitted) && forms.advanced.acwTimeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACW_TIMEOUT\' | translate}}</label>\n <input type="number" min="0" name="acwTimeout" placeholder="{{\'APPLICATION_ACW_TIMEOUT\' | translate}}" class="form-control" data-ng-model="queue.acwTimeout" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_ACW_TIMEOUT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.acwTimeout.$touched || forms.advanced.$submitted) && forms.advanced.acwTimeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACW_TIMEOUT -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/channels/voice/realtime/view/agent/agent.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/agent/agent.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="agent.ipaddr" class="well">\n <div>{{agent.ipaddr}}:{{agent.port}}</div>\n <div>{{agent.fullcontact}}</div>\n <div>{{agent.useragent}}</div>\n <div>{{agent.lastms}}</div>\n</div>\n<div data-ng-if="!agent.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/agent/queue.modal.add.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_JOIN_QUEUE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <div class="form-group row">\n <label class="col-md-2 control-label" style="margin-top: 7px;">{{\'APPLICATION_QUEUE\' | translate}}:</label>\n <div class="col-md-10">\n <ui-select multiple ng-model="item.queues" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_QUEUE\' | translate}}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in queues | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n</div>\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/parameter/parameter.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initParameters()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-tree-view ui-grid-expandable-row ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/queue/queue.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initQueues()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/telephone/telephone.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initTelephones()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/realtime/view/telephone/telephone.modal.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_INTERFACE_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n<div data-ng-if="telephone.ipaddr" class="well">\n <div>{{telephone.ipaddr}}:{{telephone.port}}</div>\n <div>{{telephone.fullcontact}}</div>\n <div>{{telephone.useragent}}</div>\n <div>{{telephone.lastms}}</div>\n</div>\n<div data-ng-if="!telephone.ipaddr" class="alert alert-danger" role="alert">\n {{\'MESSAGE_NO_AVAILABLE_INFO\' | translate}}\n</div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/channels/voice/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-directions"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/channels/voice/realtime/view/agents">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.agents\')}">\n <a href="/channels/voice/realtime/view/agents">\n {{\'APPLICATION_AGENTS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.telephones\')}" data-ng-show="Auth.isAdmin()">\n <a href="/channels/voice/realtime/view/telephones">\n {{\'APPLICATION_TELEPHONES\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.queues\')}">\n <a href="/channels/voice/realtime/view/queues">\n {{\'APPLICATION_QUEUES\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.channels.voice.realtime.view.parameters\')}">\n <a href="/channels/voice/realtime/view/parameters">\n {{\'APPLICATION_QUEUE_PARAMETERS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/recording/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-play"></i>\n <a href="#">{{ \'APPLICATION_RECORDINGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-play font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_RECORDINGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/inbound/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'),a.put("app/channels/voice/route/inbound/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-earphones-alt"></i>\n <a href="#">{{ \'APPLICATION_VOICE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-in"></i>\n <a href="/channels/voice/routes/inbound/list">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/inbound/view/view.applications.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/inbound/view/{{route.id}}/application" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_APPLICATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows ui-grid-auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/inbound/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/channels/voice/routes/inbound/list">{{ \'APPLICATION_INBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/inboundroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.inbound.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/inbound/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.inbound.view.applications') || $state.is('main.channels.voice.routes.inbound.view.application') || $state.is('main.channels.voice.routes.inbound.view.applications.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/inbound/view/'+route.id+'/applications')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/inbound/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INBOUND\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/internal/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'),a.put("app/channels/voice/route/internal/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/voice/routes/internal/list">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/internal/view/view.applications.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/internal/view/{{route.id}}/application" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_APPLICATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/internal/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-reload"></i>\n <a href="/channels/voice/routes/internal/list">{{ \'APPLICATION_INTERNAL\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/internalroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.internal.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/internal/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.internal.view.applications') || $state.is('main.channels.voice.routes.internal.view.application') || $state.is('main.channels.voice.routes.internal.view.applications.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/internal/view/'+route.id+'/applications')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- <pre>\n {{route | json}}\n </pre> -->\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/internal/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INTERNAL\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts()">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_PHONE_NUMBER\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/outbound/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_ROUTE\' | translate }}</h3>\n</div>\n<div class="modal-body" data-ng-init="getTags()">\n <form name="forms.extension" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$invalid || existRoute}">\n <label class="control-label">{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}" class="form-control" data-ng-model="item.exten" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="(forms.extension.exten.$touched || forms.extension.$submitted) && forms.extension.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START TAG -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.extension.tag.$touched || forms.extension.$submitted) && forms.extension.tag.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TAG\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.tag" name="tag" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TAG\' | translate }}" data-ng-init="item.tag = \'--\'">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="tag.name as tag in tags | filter: $select.search">\n <div ng-bind-html="tag.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.extension.tag.$touched || forms.extension.$submitted) && forms.extension.tag.$invalid && forms.extension.tag.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAG -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.extension.$invalid || existRoute">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n<!-- <pre>\n {{item | json}}\n</pre> -->\n'), -a.put("app/channels/voice/route/outbound/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-out"></i>\n <a href="/channels/voice/routes/outbound/list">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="#" data-ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/outbound/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getRoute()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-call-out"></i>\n <a href="/channels/voice/routes/outbound/list">{{ \'APPLICATION_OUTBOUND\' | translate }} {{ \'APPLICATION_ROUTES\' | translate }}</a>\n <i data-ng-show="route" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="route">\n <a href="#">{{route.exten}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/outboundroute.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{route.exten}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.routes.outbound.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/channels/voice/routes/outbound/view/\'+route.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.channels.voice.routes.outbound.view.routes') || $state.is('main.channels.voice.routes.outbound.view.route') || $state.is('main.channels.voice.routes.outbound.view.routes.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/channels/voice/routes/outbound/view/'+route.id+'/routes')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_ACTIONS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- <pre>\n {{route | json}}\n </pre> -->\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/channels/voice/route/outbound/view/view.route.html",'<div class="row" data-ng-init="initApplication(true);getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_ROUTE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wizard on-finish="addApplication()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.app.$touched || forms.info.$submitted) && forms.info.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="main.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="app in applications | filter: $select.search">\n <div ng-bind-html="app.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.info.app.$touched || forms.info.$submitted) && forms.info.app.$invalid && forms.info.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'outboundDial\'" lazy-render duration="1">\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CALLERID\' | translate }}</label>\n <input type="text" name="callerID" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder=\'"name" <number>\' class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }}\n </span>\n <span data-ng-show="(forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PREFIX\' | translate }}</label>\n <input type="text" name="prefix" placeholder="{{ \'APPLICATION_PREFIX\' | translate }}" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_PREFIX\' | translate }}\n </span>\n <span data-ng-show="(forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[5]" data-ng-init="application.appdata[5] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="application.app" data-ng-init="application.appdata[0] = null" required>\n <span data-ng-show="(forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid && forms.info.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid && forms.info.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{$translate.instant(intType.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/route/outbound/view/view.routeSettings.html",'<div class="row" data-ng-init="initApplication();getApplication();getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_APPLICATION_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateRoute(\'routes\')">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'outboundDial\'" lazy-render duration="1">\n\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CALLERID\' | translate }}</label>\n <input type="text" name="callerID" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder=\'"name" <number>\' class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }} "name" <number>\n </span>\n <span data-ng-show="(forms.info.callerID.$touched || forms.info.$submitted) && forms.info.callerID.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START PREFIX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PREFIX\' | translate }}</label>\n <input type="text" name="prefix" placeholder="{{ \'APPLICATION_PREFIX\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_PREFIX\' | translate }}\n </span>\n <span data-ng-show="(forms.info.prefix.$touched || forms.info.$submitted) && forms.info.prefix.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PREFIX -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[5]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].app" required>\n <span data-ng-show="(forms.info.customApp.$touched || forms.info.$submitted) && forms.info.customApp.$invalid && forms.info.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]">\n <span data-ng-show="(forms.info.appdata.$touched || forms.info.$submitted) && forms.info.appdata.$invalid && forms.info.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{intType.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/channels/voice/route/outbound/view/view.routes.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACTIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/channels/voice/routes/outbound/view/{{route.id}}/route" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ROUTE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="showGrid" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/channels/voice/route/outbound/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_OUTBOUND\' | translate}} {{ \'APPLICATION_ROUTE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();getTags();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateRoute()" novalidate>\n\n <!-- START EXTEN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$invalid}">\n <label class="control-label">{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="exten" placeholder="{{\'APPLICATION_DESTINATION_PATTERN\' | translate}}" class="form-control" data-ng-model="route.exten" required/>\n <span data-ng-show="(forms.general.exten.$touched || forms.general.$submitted) && forms.general.exten.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTEN -->\n\n <!-- START CUTDIGITS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CUTDIGITS\' | translate}}</label>\n <input type="text" pattern="[0-9]+" class="form-control" name="cutdigits" data-ng-model="route.cutdigits">\n <span class="help-block">\n </span>\n </div>\n <!-- END CUTDIGITS -->\n\n <!-- START TAG -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.tag.$touched || forms.general.$submitted) && forms.general.tag.$invalid}">\n <label class="control-label">{{\'APPLICATION_TAG\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.tag" name="tag" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="tag.name as tag in tags | filter: $select.search">\n <div ng-bind-html="tag.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.tag.$touched || forms.general.$submitted) && forms.general.tag.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAG -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START RECORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.record.$touched || forms.general.$submitted) && forms.general.record.$invalid}">\n <label class="control-label">{{\'APPLICATION_RECORDING\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="route.record"\n type="checkbox"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n <span data-ng-show="(forms.general.record.$touched || forms.general.$submitted) && forms.general.record.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RECORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="route.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/route/view.application.html",'\n<div class="row" data-ng-init="initApplication(true); getIntervals();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_APPLICATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="addApplication()">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START APP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid}">\n <label class="control-label">{{ \'APPLICATION_APPLICATION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="main.app" name="app" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="app in $application.applications| filter: $select.search">\n <div ng-bind-html="app.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.app.$touched || forms.settings.$submitted) && forms.settings.app.$invalid && forms.settings.app.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APP -->\n\n <div id="Queue" class="app-settings" ng-slide-down="main.app.value == \'Queue\'" lazy-render duration="1">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="queue" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in items | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}</label>\n <ui-select data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null" name="audiofile" theme="bootstrap" data-ng-disabled="!items2.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items2 | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items2.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </div>\n <div id="Playback" class="app-settings" ng-slide-down="main.app.value == \'Playback\'" lazy-render duration="1">\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="audiofile" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && !main.app.type" lazy-render duration="1">\n <!-- START INTERFACE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}/{{ \'APPLICATION_IDENTIFIER\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="interface" placeholder="SIP/0000" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" required>\n <span data-ng-show="(forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid && forms.settings.interface.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERFACE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="internalDial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'internalDial\'" lazy-render duration="1">\n <!-- START INTERNAL DIAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$invalid}">\n <label class="control-label">{{\'APPLICATION_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="user" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="user.internal as user in items | filter: $select.search">\n <div ng-bind-html="user.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL DIAL -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'externalDial\'" lazy-render duration="1">\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PHONE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" required>\n <span data-ng-show="(forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid && forms.settings.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="application.appdata[3]" data-ng-init="application.appdata[3] = null">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[4]" data-ng-init="application.appdata[4] = null">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="AGI" class="app-settings" ng-slide-down="main.app.value == \'AGI\'" lazy-render duration="1">\n <!-- START PROJECT -->\n <input type="hidden" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = \'agi://127.0.0.1/square\'">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" name="project" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.name as project in items | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_PROJECTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/square/projects/list">{{\'APPLICATION_PROJECTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n\n </div>\n <div id="Goto" class="app-settings" ng-slide-down="main.app.value == \'Goto\'" lazy-render duration="1">\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in items | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXTENSION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="" class="form-control" data-ng-model="application.appdata[1]" data-ng-init="application.appdata[1] = null" required>\n <span data-ng-show="(forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid && forms.settings.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PRIORITY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="priority" placeholder="" class="form-control" data-ng-model="application.appdata[2]" data-ng-init="application.appdata[2] = null" required>\n <span data-ng-show="(forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n </div>\n <div id="Hangup" class="app-settings" ng-slide-down="main.app.value == \'Hangup\'" lazy-render duration="1">\n <!-- START HANGUPCAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$invalid}">\n <label class="control-label">{{\'APPLICATION_HANGUP_CAUSE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" theme="bootstrap" name="hangupCause" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="hangupCause.value as hangupCause in $application.hangupCauses | filter: $select.search">\n <div ng-bind-html="hangupCause.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HANGUPCAUSE -->\n </div>\n <div id="Set" class="app-settings" ng-slide-down="main.app.value == \'Set\'" lazy-render duration="1">\n <!-- START VARIABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VARIABLE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="variable" placeholder="" class="form-control" data-ng-model="application.variable" data-ng-init="application.appdata[0] = null" data-ng-change="updateSetAppdata()" required>\n <span data-ng-show="(forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid && forms.settings.variable.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARIABLE -->\n\n <!-- START VARVALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VALUE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="varvalue" placeholder="" class="form-control" data-ng-model="application.value" data-ng-change="updateSetAppdata()" required>\n <span data-ng-show="(forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid && forms.settings.varvalue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARVALUE -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="application.app" required>\n <span data-ng-show="(forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid && forms.settings.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null">\n <span data-ng-show="(forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid && forms.settings.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <div id="Voicemail" class="app-settings" ng-slide-down="main.app.value == \'Voicemail\'" lazy-render duration="1">\n <!-- START VOICEMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MAILBOX\' | translate }}@{{ \'APPLICATION_CONTEXT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="application.appdata[0]" data-ng-init="application.appdata[0] = null" theme="bootstrap" name="voicemail" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.mailbox}}</ui-select-match>\n <ui-select-choices repeat="mailbox.mailbox+\'@\'+mailbox.context as mailbox in items | filter: $select.search">\n <div ng-bind-html="mailbox.mailbox | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_VOICEMAILS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/voicemails/list">{{\'APPLICATION_VOICEMAILS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid && forms.settings.voicemail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VOICEMAIL -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n <div ng-bind-html="intType.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<!-- <pre>\n {{application | json}}\n</pre> -->\n<!-- <pre>\n {{interval | json}}\n</pre> -->\n'), -a.put("app/channels/voice/route/view.applicationSettings.html",'\n<div class="row" data-ng-init="initApplication();getIntervals();getApplication();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_APPLICATION_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateRoute(\'applications\')">\n <div class="profile-usertitle-name">\n {{(main.app.name | translate) || \'Application\'}}\n </div>\n <wz-step title="{{\'APPLICATION_APPLICATION\' | translate}}" canexit="formValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <div id="Queue" class="app-settings" ng-slide-down="main.app.value == \'Queue\'" lazy-render duration="1">\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="queue" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="queue.name as queue in items | filter: $select.search">\n <div ng-bind-html="queue.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_QUEUES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/queues/list">{{\'APPLICATION_QUEUES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.queue.$touched || forms.settings.$submitted) && forms.settings.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}</label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[3]" name="audiofile" theme="bootstrap" data-ng-disabled="!items2.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items2 | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items2.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n </div>\n <div id="Playback" class="app-settings" ng-slide-down="main.app.value == \'Playback\'" lazy-render duration="1">\n <!-- START AUDIOFILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUDIO_FILE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="audiofile" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.display_name}}</ui-select-match>\n <ui-select-choices repeat="soundPath+\'/\'+audio.save_name as audio in items | filter: $select.search">\n <div ng-bind-html="audio.display_name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_SOUNDS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/sounds/list">{{\'APPLICATION_SOUNDS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.audiofile.$touched || forms.settings.$submitted) && forms.settings.audiofile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AUDIOFILE -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{\'APPLICATION_OPTIONS\' | translate}}</label>\n <input type="text" name="app_options" placeholder="{{ \'APPLICATION_OPTIONS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && !main.app.type" lazy-render duration="1">\n <!-- START INTERFACE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}/{{ \'APPLICATION_IDENTIFIER\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="interface" placeholder="SIP/0000" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]" required>\n <span data-ng-show="(forms.settings.interface.$touched || forms.settings.$submitted) && forms.settings.interface.$invalid && forms.settings.interface.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERFACE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n </div>\n <div id="internalDial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'internalDial\'" lazy-render duration="1">\n <!-- START INTERNAL DIAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$invalid}">\n <label class="control-label">{{\'APPLICATION_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="user" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="user.internal as user in items | filter: $select.search">\n <div ng-bind-html="user.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.user.$touched || forms.settings.$submitted) && forms.settings.user.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL DIAL -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="Dial" class="app-settings" ng-slide-down="main.app.value == \'Dial\' && main.app.type == \'externalDial\'" lazy-render duration="1">\n\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="trunk" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="trunk.name as trunk in items | filter: $select.search">\n <div ng-bind-html="trunk.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_TRUNKS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/tools/trunks/list">{{\'APPLICATION_TRUNKS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.info.trunk.$touched || forms.info.$submitted) && forms.info.trunk.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PHONE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]">\n <span data-ng-show="(forms.settings.phone.$touched || forms.settings.$submitted) && forms.settings.phone.$invalid && forms.settings.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TIMEOUT\' | translate }}</label>\n <input type="text" pattern="[0-9]+" name="timeout" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]">\n <span data-ng-show="(forms.settings.timeout.$touched || forms.settings.$submitted) && forms.settings.timeout.$invalid && forms.settings.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START OPTIONS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OPTIONS\' | translate }}</label>\n <input type="text" name="app_options" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[3]">\n <span data-ng-show="(forms.settings.app_options.$touched || forms.settings.$submitted) && forms.settings.app_options.$invalid && forms.settings.app_options.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OPTIONS -->\n\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <input type="text" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[4]">\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n </div>\n <div id="AGI" class="app-settings" ng-slide-down="main.app.value == \'AGI\'" lazy-render duration="1">\n <!-- START PROJECT -->\n <input type="hidden" name="url" placeholder="{{ \'APPLICATION_URL\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]" data-ng-init="route.Applications[selectedApp].appdata[0] = \'agi://127.0.0.1/square\'">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[1]" name="project" theme="bootstrap" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.name as project in items | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_PROJECTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/square/projects/list">{{\'APPLICATION_PROJECTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.project.$touched || forms.settings.$submitted) && forms.settings.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n\n <!-- START URL -->\n <!-- <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid}">\n <label class="control-label">{{ \'APPLICATION_URL\' | translate }}</label>\n <div class="input-group">\n <input type="text" name="url" placeholder="agi://127.0.0.1/square" class="form-control" data-ng-model="application.url" data-ng-disabled="!application.urlEnabled" data-ng-required="application.urlEnabled" rpattern="/^agi:\\/\\/(?:[0-9]{1,3}\\.){3}[0-9]{1,3}\\/square$/">\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="application.urlEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.settings.url.$touched || forms.settings.$submitted) && forms.settings.url.$invalid && forms.settings.url.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div> -->\n <!-- END URL -->\n\n </div>\n <div id="Goto" class="app-settings" ng-slide-down="main.app.value == \'Goto\'" lazy-render duration="1">\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in items | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.context.$touched || forms.settings.$submitted) && forms.settings.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXTENSION\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[1]" required>\n <span data-ng-show="(forms.settings.extension.$touched || forms.settings.$submitted) && forms.settings.extension.$invalid && forms.settings.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid}">\n <label class="control-label">{{ \'APPLICATION_PRIORITY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" pattern="[0-9]+" name="priority" placeholder="" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[2]" required>\n <span data-ng-show="(forms.settings.priority.$touched || forms.settings.$submitted) && forms.settings.priority.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n </div>\n <div id="Hangup" class="app-settings" ng-slide-down="main.app.value == \'Hangup\'" lazy-render duration="1">\n <!-- START HANGUPCAUSE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$invalid}">\n <label class="control-label">{{\'APPLICATION_HANGUP_CAUSE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" theme="bootstrap" name="hangupCause" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="hangupCause.value as hangupCause in $application.hangupCauses | filter: $select.search">\n {{hangupCause.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.hangupCause.$touched || forms.settings.$submitted) && forms.settings.hangupCause.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HANGUPCAUSE -->\n </div>\n <div id="Set" class="app-settings" ng-slide-down="main.app.value == \'Set\'" lazy-render duration="1">\n <!-- START VARIABLE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VARIABLE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="variable" placeholder="" class="form-control" data-ng-model="application.variable" data-ng-change="updateSetAppdataSettings()" required>\n <span data-ng-show="(forms.settings.variable.$touched || forms.settings.$submitted) && forms.settings.variable.$invalid && forms.settings.variable.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARIABLE -->\n\n <!-- START VARVALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid}">\n <label class="control-label">{{ \'APPLICATION_VALUE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="varvalue" placeholder="" class="form-control" data-ng-model="application.value" data-ng-change="updateSetAppdataSettings()" required>\n <span data-ng-show="(forms.settings.varvalue.$touched || forms.settings.$submitted) && forms.settings.varvalue.$invalid && forms.settings.varvalue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VARVALUE -->\n </div>\n <div id="Custom" class="app-settings" ng-slide-down="main.app.type == \'custom\'" lazy-render duration="1">\n\n <!-- START CUSTOMAPP -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CUSTOM_APP\' | translate }}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="customApp" placeholder="{{ \'APPLICATION_CUSTOM_APP\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].app" required>\n <span data-ng-show="(forms.settings.customApp.$touched || forms.settings.$submitted) && forms.settings.customApp.$invalid && forms.settings.customApp.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CUSTOMAPP -->\n\n <!-- START APPDATA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ARGUMENTS\' | translate }}</label>\n <input type="text" name="appdata" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}" class="form-control" data-ng-model="route.Applications[selectedApp].appdata[0]">\n <span data-ng-show="(forms.settings.appdata.$touched || forms.settings.$submitted) && forms.settings.appdata.$invalid && forms.settings.appdata.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END APPDATA -->\n </div>\n <div id="Voicemail" class="app-settings" ng-slide-down="main.app.value == \'Voicemail\'" lazy-render duration="1">\n <!-- START VOICEMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MAILBOX\' | translate }}@{{ \'APPLICATION_CONTEXT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="route.Applications[selectedApp].appdata[0]" theme="bootstrap" name="voicemail" required data-ng-disabled="!items.length">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.mailbox}}</ui-select-match>\n <ui-select-choices repeat="mailbox.mailbox+\'@\'+mailbox.context as mailbox in items | filter: $select.search">\n <div ng-bind-html="mailbox.mailbox | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="items.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_VOICEMAILS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/channels/voice/voicemails/list">{{\'APPLICATION_VOICEMAILS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="(forms.settings.voicemail.$touched || forms.settings.$submitted) && forms.settings.voicemail.$invalid && forms.settings.voicemail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VOICEMAIL -->\n </div>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_INTERVAL\' | translate}}" canexit="formValidation(forms.interval.IntervalId.$valid || forms.interval.hasOwnProperty(\'t_from\') || forms.interval.intType.$modelValue === \'always\')">\n <form name="forms.interval" novalidate>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n <!-- START INTERVAL_TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVAL_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.intType" theme="bootstrap" name="intType" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="intType.value as intType in $application.intTypes | filter: $select.search">\n {{intType.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.intType.$touched || forms.interval.$submitted) && forms.interval.intType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVAL_TYPE -->\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'custom\'" lazy-render duration="1">\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="interval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="interval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="interval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="interval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="interval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="interval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="interval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </div>\n\n <div id="customInterval" class="app-settings" ng-slide-down="interval.intType == \'list\'" lazy-render duration="1">\n\n <!-- START INTERVALS -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERVALS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="interval.IntervalId" theme="bootstrap" name="IntervalId" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="interval.id as interval in Intervals | filter: $select.search">\n {{interval.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.interval.IntervalId.$touched || forms.interval.$submitted) && forms.interval.IntervalId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERVALS -->\n\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="goNext()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<!-- <pre>\n {{application | json}}\n</pre> -->\n'), -a.put("app/channels/voice/voicemail/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="#">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-envelope-letter font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/channels/voice/voicemails/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_VOICEMAIL\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/voicemail/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getVoicemail()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="/channels/voice/voicemails/list">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n <i data-ng-show="voicemail" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="voicemail">\n <a href="#">{{voicemail.mailbox}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET main.channels -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/voicemail.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{voicemail.mailbox}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.channels.voice.voicemails.view.settings\')}">\n <a data-ng-href="/channels/voice/voicemails/view/{{voicemail.uniqueid}}/settings"><i class="icon-settings"></i>{{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.channels.voice.voicemails.view.messages\')}">\n <a data-ng-href="/channels/voice/voicemails/view/{{voicemail.uniqueid}}/messages"><i class="icon-speech"></i>{{ \'APPLICATION_MESSAGES\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET main.channels -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/channels/voice/voicemail/view/view.messages.html",'<div class="row" data-ng-init="getMessages()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_MESSAGES\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns data-ng-if="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/voicemail/view/view.settings.html",'<div class="row" data-ng-init="getContexts()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_VOICEMAIL\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <!-- <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li> -->\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVoiceVoicemail()" novalidate>\n\n <!-- START FULLNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_FULLNAME\' | translate}}" class="form-control" data-ng-model="voicemail.fullname" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.fullname.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FULLNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="voicemail.email" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}</label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="voicemail.password" />\n <span data-ng-show="forms.general.$submitted && forms.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONFIRM PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}</label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="voicemail.rpassword" nx-equal="voicemail.password"/>\n <span data-ng-show="forms.general.$submitted && (forms.general.rpassword.$invalid || forms.general.rpassword.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END CONFIRM PASSWORD -->\n\n <!-- START MAILBOX -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.mailbox.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="voicemail.mailbox" required readonly/>\n <span data-ng-show="forms.general.$submitted && forms.general.mailbox.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAILBOX -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="voicemail.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <!-- <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="updateVoiceVoicemail()" novalidate>\n\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div> -->\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/channels/voice/voicemail/wizard/wizard.html",'<div class="col-md-12" data-ng-init="initWizard()">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_CHANNELS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope-letter"></i>\n <a href="/channels/voice/voicemails/list">{{ \'APPLICATION_VOICEMAILS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeMailbox()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-envelope-letter font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VOICEMAIL\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(form.general.$valid)">\n <form name="form.general" novalidate>\n\n <!-- START FULLNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_FULLNAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="form.general.$submitted && form.general.fullname.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FULLNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required/>\n <span data-ng-show="form.general.$submitted && form.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="form.general.$submitted && form.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONFIRM PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="form.general.$submitted && (form.general.rpassword.$invalid || form.general.rpassword.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END CONFIRM PASSWORD -->\n\n <!-- START MAILBOX -->\n <div class="form-group" data-ng-class="{\'has-error\': form.general.$submitted && form.general.mailbox.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAILBOX\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mailbox" placeholder="{{\'APPLICATION_MAILBOX\' | translate}}" class="form-control" data-ng-model="item.mailbox" required readonly/>\n <span data-ng-show="form.general.$submitted && form.general.mailbox.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAILBOX -->\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/contactmanager/company/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_COMPANY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.company" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.name.$touched || forms.company.$submitted) && forms.company.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.cmopany.name.$touched || forms.company.$submitted) && forms.company.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.vat.$touched || forms.company.$submitted) && forms.company.vat.$invalid}">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="item.vat"/>\n <span data-ng-show="(forms.cmopany.vat.$touched || forms.company.$submitted) && forms.company.vat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.companyId.$touched || forms.company.$submitted) && forms.company.companyId.$invalid}">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="item.companyId"/>\n <span data-ng-show="(forms.cmopany.companyId.$touched || forms.company.$submitted) && forms.company.companyId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.website.$touched || forms.company.$submitted) && forms.company.website.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="item.website"/>\n <span data-ng-show="(forms.cmopany.website.$touched || forms.company.$submitted) && forms.company.website.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.email.$touched || forms.company.$submitted) && forms.company.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email"/>\n <span data-ng-show="(forms.cmopany.email.$touched || forms.company.$submitted) && forms.company.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.phone.$touched || forms.company.$submitted) && forms.company.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone"/>\n <span data-ng-show="(forms.cmopany.phone.$touched || forms.company.$submitted) && forms.company.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.fax.$touched || forms.company.$submitted) && forms.company.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="item.fax"/>\n <span data-ng-show="(forms.cmopany.fax.$touched || forms.company.$submitted) && forms.company.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.type.$touched || forms.company.$submitted) && forms.company.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="item.type"/>\n <span data-ng-show="(forms.cmopany.type.$touched || forms.company.$submitted) && forms.company.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.company.emailDomain.$touched || forms.company.$submitted) && forms.company.emailDomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}</label>\n <input type="text" name="domain" placeholder="{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}" class="form-control" data-ng-model="item.emailDomain"/>\n <span data-ng-show="(forms.cmopany.emailDomain.$touched || forms.company.$submitted) && forms.company.emailDomain.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DOMAIN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n</div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.company.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/company/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-briefcase"></i>\n <a href="/contactmanager/companies/list">{{ \'APPLICATION_COMPANIES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-briefcase font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_COMPANIES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_COMPANY\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/company/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getCompany()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-briefcase"></i>\n <a href="/contactmanager/companies/list">{{ \'APPLICATION_COMPANIES\' | translate }}</a>\n <i data-ng-show="company" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="company">\n <a href="#">{{company.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/company.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{company.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.contactmanager.companies.view.settings\')}">\n <a data-ng-href="/contactmanager/companies/view/{{company.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/company/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_COMPANY\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADDRESS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_SHIPMENT_ADDRESS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCompany()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="company.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.vat.$touched || forms.general.$submitted) && forms.general.vat.$invalid}">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="company.vat"/>\n <span data-ng-show="(forms.cmopany.vat.$touched || forms.general.$submitted) && forms.general.vat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.companyId.$touched || forms.general.$submitted) && forms.general.companyId.$invalid}">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="company.companyId"/>\n <span data-ng-show="(forms.cmopany.companyId.$touched || forms.general.$submitted) && forms.general.companyId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.website.$touched || forms.general.$submitted) && forms.general.website.$invalid}">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="company.website"/>\n <span data-ng-show="(forms.cmopany.website.$touched || forms.general.$submitted) && forms.general.website.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="company.email"/>\n <span data-ng-show="(forms.cmopany.email.$touched || forms.general.$submitted) && forms.general.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="company.phone"/>\n <span data-ng-show="(forms.cmopany.phone.$touched || forms.general.$submitted) && forms.general.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="company.fax"/>\n <span data-ng-show="(forms.cmopany.fax.$touched || forms.general.$submitted) && forms.general.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="company.type"/>\n <span data-ng-show="(forms.cmopany.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.emailDomain.$touched || forms.general.$submitted) && forms.general.emailDomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}</label>\n <input type="text" name="domain" placeholder="{{\'APPLICATION_EMAIL_DOMAIN\' | translate}}" class="form-control" data-ng-model="company.emailDomain"/>\n <span data-ng-show="(forms.cmopany.emailDomain.$touched || forms.general.$submitted) && forms.general.emailDomain.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DOMAIN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="company.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.address" data-ng-submit="forms.address.$valid && updateCompany()" novalidate>\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.street.$touched || forms.address.$submitted) && forms.address.street.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.street"/>\n <span data-ng-show="(forms.address.street.$touched || forms.address.$submitted) && forms.address.street.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.postalCode.$touched || forms.address.$submitted) && forms.address.postalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.postalCode"/>\n <span data-ng-show="(forms.address.postalCode.$touched || forms.address.$submitted) && forms.address.postalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.city.$touched || forms.address.$submitted) && forms.address.city.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.city"/>\n <span data-ng-show="(forms.address.city.$touched || forms.address.$submitted) && forms.address.city.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.address.country.$touched || forms.address.$submitted) && forms.address.country.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.country"/>\n <span data-ng-show="(forms.address.country.$touched || forms.address.$submitted) && forms.address.country.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.shipmentAddress" data-ng-submit="forms.shipmentAddress.$valid && updateCompany()" novalidate>\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sStreet.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sStreet.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="sStreet" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.sStreet"/>\n <span data-ng-show="(forms.shipmentAddress.sStreet.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sStreet.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sPostalCode.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sPostalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="sPostalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.sPostalCode"/>\n <span data-ng-show="(forms.shipmentAddress.sPostalCode.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sPostalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sCity.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCity.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="sCity" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.sCity"/>\n <span data-ng-show="(forms.shipmentAddress.sCity.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCity.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.shipmentAddress.sCountry.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCountry.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="sCountry" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.sCountry"/>\n <span data-ng-show="(forms.shipmentAddress.sCountry.$touched || forms.shipmentAddress.$submitted) && forms.shipmentAddress.sCountry.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/contactmanager/contact/list/import.modal.html",'<div class="modal-header" data-ng-init="getLists()">\n <h3 class="modal-title">{{ \'APPLICATION_IMPORT_FROM_CSV\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.csv" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.ListId.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <ui-select data-ng-model="item.ListId" theme="bootstrap" name="ListId" data-ng-disabled="disabled" data-ng-change="getCustomFields()">\n <ui-select-match placeholder="{{ \'APPLICATION_LIST\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.ListId.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n\n <!-- START FIRSTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.firstName.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_FIRSTNAME\' | translate}}</label>\n <ui-select data-ng-model="item.firstName" theme="bootstrap" name="firstName" data-ng-disabled="disabled" required>\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_FIRSTNAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.firstName.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIRSTNAME -->\n\n <!-- START LASTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.lastName.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_LASTNAME\' | translate}}</label>\n <ui-select data-ng-model="item.lastName" theme="bootstrap" name="lastName" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_LASTNAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.lastName.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LASTNAME -->\n\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.street.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <ui-select data-ng-model="item.street" theme="bootstrap" name="street" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_STREET\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.street.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.postalCode.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <ui-select data-ng-model="item.postalCode" theme="bootstrap" name="postalCode" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_POSTALCODE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.postalCode.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.city.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <ui-select data-ng-model="item.city" theme="bootstrap" name="city" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_CITY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.city.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.phone.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <ui-select data-ng-model="item.phone" theme="bootstrap" name="phone" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_PHONE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.phone.$invalid && forms.phone.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START MOBILE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.mobile.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_MOBILE\' | translate}}</label>\n <ui-select data-ng-model="item.mobile" theme="bootstrap" name="mobile" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_MOBILE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.mobile.$invalid && forms.mobile.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOBILE -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.country.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <ui-select data-ng-model="item.country" theme="bootstrap" name="country" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_COUNTRY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.country.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n\n <!-- START DATEOFBIRTH -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.dateOfBirth.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_DATEOFBIRTH\' | translate}}</label>\n <ui-select data-ng-model="item.dateOfBirth" theme="bootstrap" name="dateOfBirth" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DATEOFBIRTH\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.dateOfBirth.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DATEOFBIRTH -->\n\n <!-- START TAGS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.tags.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_TAGS\' | translate}}</label>\n <ui-select multiple data-ng-model="item.tags" theme="bootstrap" name="tags" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.tags.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAGS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.description.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <ui-select data-ng-model="item.description" theme="bootstrap" name="description" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DESCRIPTION\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.description.$invalid && forms.csv.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.fax.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <ui-select data-ng-model="item.fax" theme="bootstrap" name="fax" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_FAX\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.fax.$invalid && forms.fax.$touched" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.email.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <ui-select data-ng-model="item.email" theme="bootstrap" name="email" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_EMAIL\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv.email.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START COMPANY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv.CompanyId.$invalid && forms.csv.$submitted}">\n <label class="control-label">{{\'APPLICATION_COMPANY\' | translate}}</label>\n <ui-select data-ng-model="item.CompanyId" theme="bootstrap" name="CompanyId" data-ng-disabled="!companies.length">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_COMPANY\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="company.id as company in companies | filter: $select.search">\n <div ng-bind-html="company.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="companies.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_COMPANIES_AVAILABLE\' | translate }}\n </p>\n </div>\n <span data-ng-show="forms.csv.CompanyId.$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANY -->\n\n </div>\n </div>\n\n <!-- START CUSTOMFIELDS -->\n <div data-ng-repeat="customField in customFields">\n <div class="form-group" data-ng-class="{\'has-error\': forms.csv[customField.name].$invalid && forms.csv.$submitted}">\n <label class="control-label">{{customField.alias}}</label>\n <ui-select data-ng-model="item[customField.name]" theme="bootstrap" name="{{customField.name}}" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{customField.alias}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.csv[customField.name].$invalid && forms.csv.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END CUSTOMFIELDS -->\n\n <div>\n <p>{{\'APPLICATION_IMPORT_SUCCEEDED\' | translate}}: {{import.succeeded}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': import.success + \'%\' }"></div>\n </div>\n </div>\n <div>\n <p>{{\'APPLICATION_IMPORT_FAILED\' | translate}}: {{import.failed}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-danger" role="progressbar" ng-style="{ \'width\': import.fail + \'%\' }"></div>\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="start()" ng-disabled="forms.csv.$invalid || !forms.csv.firstName || submitted">{{ \'APPLICATION_SUBMIT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="close()" data-ng-if="!importing">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="stop()" data-ng-if="importing">{{ \'APPLICATION_STOP\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/contact/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="/contactmanager/contacts/list">{{ \'APPLICATION_CONTACTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-users font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONTACTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length && !Auth.isAgent()">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle" data-ng-click="newContact();">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n <span class="btn default btn-file" data-ng-if="!Auth.isAgent()">\n <span class="fileinput-new">\n <i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_CSV\' | translate}}</span>\n <input type="file" accept=".csv" nv-file-select="" uploader="uploader"/>\n </span>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="gridOptions" ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_LIST\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.list" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.list.name.$touched || forms.list.$submitted) && forms.list.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.list.name.$touched || forms.list.$submitted) && forms.list.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.list.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/list/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-tty"></i>\n <a href="/contactmanager/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-tty font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LISTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LIST\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/view/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CUSTOM_FIELD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.customField" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.customField.name.$touched || forms.customField.$submitted) && forms.customField.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.alias" required/>\n <span data-ng-show="(forms.customField.name.$touched || forms.customField.$submitted) && forms.customField.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.customField.type.$touched || forms.customField.$submitted) && forms.customField.type.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$translate.instant($select.selected.name)}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in types| filter: $select.search">\n {{$translate.instant(type.name)}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.customField.type.$touched || forms.customField.$submitted) && forms.customField.type.$invalid && forms.customField.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <div ng-slide-down="item.type == \'select\'" lazy-render duration="1">\n <div>\n <label class="control-label">{{\'APPLICATION_CHOICES\' | translate}}</label>\n </div>\n <div class="padding-bottom" ng-repeat="choice in choices">\n <div class="form-group">\n <div class="input-group">\n <input type="text" class="form-control" ng-model="choice.value" required>\n <span class="input-group-btn">\n <button class="btn red" type="button"data-ng-click="removeField($index)" data-ng-disabled="choices.length<=1"><i class="fa fa-times"></i></button>\n </span>\n </div>\n </div>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CHOICE\' | translate}}\n </button>\n\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.customField.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/contactmanager/list/view/view.agents.html",'<div class="row" data-ng-init="getTeams()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="note note-warning" data-ng-hide="teams.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_AVAILABLE_TEAMS\' | translate }}\n </p>\n </div>\n <div class="portlet-body">\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/contactmanager/list/view/view.customFieldSettings.html",'<div class="row" data-ng-init="getCustomField()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CUSTOM_FIELD\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- GENERAL TAB -->\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCustomField()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="customField.alias" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <div ng-slide-down="customField.type == \'select\'" lazy-render duration="1" class="mbottom20">\n <div>\n <label class="control-label">{{\'APPLICATION_CHOICES\' | translate}}</label>\n </div>\n <div class="padding-bottom" ng-repeat="choice in choices">\n <div class="form-group">\n <div class="input-group">\n <input type="text" class="form-control" ng-model="choice.value" required>\n <span class="input-group-btn">\n <button class="btn red" type="button"data-ng-click="removeField($index)" data-ng-disabled="choices.length<=1"><i class="fa fa-times"></i></button>\n </span>\n </div>\n </div>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" ng-click="addField()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CHOICE\' | translate}}\n </button>\n\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="customField.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/contactmanager/list/view/view.customFields.html",'<div ui-view class="profile-content">\n<div class="row" data-ng-init="initCustomFields()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CUSTOM_FIELDS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CUSTOM_FIELD\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'), -a.put("app/contactmanager/list/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getList()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-users"></i>\n <a href="#">{{ \'APPLICATION_CONTACT_MANAGER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-tty"></i>\n <a href="/contactmanager/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n <i data-ng-show="list" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="list">\n <a href="#">{{list.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/list.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{list.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.contactmanager.lists.view.settings\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-if="!list.defaultEntry" data-ng-class="{active: $state.is(\'main.contactmanager.lists.view.agents\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.lists.view.customfields\')}">\n <a data-ng-href="/contactmanager/lists/view/{{list.id}}/customfields">\n <i class="icon-pencil"></i>\n {{ \'APPLICATION_CUSTOM_FIELDS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/contactmanager/list/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateList()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="list.name" data-ng-disabled="list.defaultEntry" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="list.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/dashboard/chat/chat.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="row">\n <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-ng-init="initAbandoned()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandoned || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDONED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/dashboard.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="navbar-header">\n <button type="button" class="navbar-toggle" data-ng-init="navCollapsed = true" data-ng-click="navCollapsed = !navCollapsed">\n <span class="sr-only">Toggle navigation</span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n <span class="icon-bar"></span>\n </button>\n </div>\n\n <!-- Collect the nav links, forms, and other content for toggling -->\n <div class="collapse navbar-collapse" ng-class="!navCollapsed && \'in\'">\n <ul class="nav navbar-nav">\n <li data-ng-class="{active: $state.is(\'main.dashboard.voice\')}">\n <a href="/dashboard/voice">\n <b class=\'icon-earphones-alt\'></b>\n {{ \'APPLICATION_VOICE\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.chat\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(8)) && license.chat)">\n <a href="/dashboard/chat">\n <b class=\'icon-bubble\'></b>\n {{ \'APPLICATION_CHAT\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.mail\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(9)) && license.mail)">\n <a href="/dashboard/mail">\n <b class=\'icon-envelope\'></b>\n {{ \'APPLICATION_MAIL\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.fax\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(10)) && license.fax)">\n <a href="/dashboard/fax">\n <b class=\'icon-paper-plane\'></b>\n {{ \'APPLICATION_FAX\' | translate }}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.dashboard.sms\')}" data-ng-if="::((Auth.isAdmin() || Auth.isAgent() || isAvailableModule(11)) && license.messaging)">\n <a href="/dashboard/sms">\n <b class=\'glyphicon glyphicon-comment\'></b>\n {{ \'APPLICATION_SMS\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n <!-- /.navbar-collapse -->\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/dashboard/fax/fax.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/mail/mail.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/sms/sms.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject"> </span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initOpen()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{open || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_OPEN\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initClosed()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{closed || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_CLOSED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initNew()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{new || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_DASHBOARD_NEW\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n </div>\n</div>\n'),a.put("app/dashboard/voice/voice.html",'<div data-ng-switch="Auth.getRole()">\n <div ng-switch-when="agent" data-ng-init="initAgent()">\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table1" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table1.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n\n <div class="row" style="padding-bottom:10px;">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="table2" ui-grid-resize-columns ui-grid-auto-resize class="ui-grid">\n <div class="watermark" data-ng-show="!table2.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n <div ng-switch-default>\n <fieldset>\n <legend>\n <span class="caption-subject">{{ \'APPLICATION_INBOUND\' | translate }}</span><small class="font-grey-cascade pull-right">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initWaiting()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-bell"></i>\n </div>\n <div class="details">\n <div class="number">\n {{waiting || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_WAITING\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initActive()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="fa fa-play"></i>\n </div>\n <div class="details">\n <div class="number">\n {{active || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ACTIVE\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAnswered()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{answered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAbandoned()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-dislike"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandoned || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDONED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAvgAnswerTime()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{avganswertime || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_ANSWER_TIME\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAvgTalkTime()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{avgtalktime || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_TALK_TIME\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAnswerRate()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{answerrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWER_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initAbandonRate()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{abandonrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ABANDON_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12" data-ng-init="initTotalOffered()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-info"></i>\n </div>\n <div class="details">\n <div class="number">\n {{totaloffered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_TOTAL_OFFERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-6 col-md-6 col-sm-6 col-xs-12" data-ng-init="initUnmanaged()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-info"></i>\n </div>\n <div class="details">\n <div class="number">\n {{unmanaged || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_UNMANAGED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n </div>\n </fieldset>\n\n <fieldset>\n <legend>\n <span class="caption-subject">{{ \'APPLICATION_OUTBOUND\' | translate }}</span><small class="pull-right font-grey-cascade">{{ \'APPLICATION_TODAY_STATS\' | translate }}</small>\n </legend>\n\n <div class="row">\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutbound()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-call-out"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutbound || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_MANUAL_OUTBOUND\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundGlobalDuration()">\n <div class="dashboard-stat purple-plum">\n <div class="visual">\n <i class="icon-clock"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundglobalduration || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_GLOBAL_DURATION\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundAnswered()">\n <div class="dashboard-stat green-haze">\n <div class="visual">\n <i class="icon-like"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundanswered || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWERED\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-3 col-md-3 col-sm-6 col-xs-12" data-ng-init="initManualOutboundAvgDuration()">\n <div class="dashboard-stat red-intense">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundavgduration || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_AVG_DURATION\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12" data-ng-init="initManualOutboundAnswerRate()">\n <div class="dashboard-stat blue-madison">\n <div class="visual">\n <i class="icon-pie-chart"></i>\n </div>\n <div class="details">\n <div class="number">\n {{manualoutboundanswerrate || 0}}\n </div>\n <div class="desc">\n {{\'APPLICATION_ANSWER_RATE\' | translate}} (%)\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </fieldset>\n </div>\n</div>\n'),a.put("app/desk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DESK_COM\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="accounts.checked.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/desk/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="getAccounts([\'name\',\'username\',\'remoteUri\',\'authType\',\'consumerKey\',\'consumerSecret\',\'token\',\'tokenSecret\',\'password\'])" csv-header="[\'Name\', \'Username\', \'Remote Address\', \'Authentication Type\', \'Consumer Key\', \'Consumer Secret\', \'Token\', \'Token Secret\', \'Password\']" field-separator=";" filename="desk_accounts.csv">\n <i class="icon-cloud-download"></i></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedDeskAccounts" st-pipe="initList" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="7">\n <div class="row">\n <div class="col-md-6">\n <ui-select class="input-xsmall" ng-model="conf.accountsByPage" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="accountByPage in accountsByPage | filter: $select.search">\n <div ng-bind-html="accountByPage.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th class="small-cells" style="text-align: center; vertical-align: middle"><input type="checkbox" ng-change="check(account, checked)" checklist-model checklist-value="id"></th>\n <th st-sort="name">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="username">{{ \'APPLICATION_EMAIL\' | translate }}</th>\n <th st-sort="remoteUri">{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}</th>\n <th>{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="account in displayedDeskAccounts" class="animate-repeat">\n <td style="text-align: center; vertical-align: middle"><input type="checkbox" checklist-model="accounts.checked" checklist-value="account.id"></td>\n <td>{{account.name}}</td>\n <td>{{account.username}}</td>\n <td>{{account.remoteUri}}</td>\n <td>{{account.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/desk/view/{{account.id}}/account">\n {{ \'APPLICATION_EDIT\' | translate }}\n </a>\n <a class="btn default btn-xs green-stripe" data-ng-click="checkAccount(account.id)">\n {{ \'APPLICATION_CHECK\' | translate }}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(account.name,account.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="displayedDeskAccounts.length">\n <td colspan="7" style="text-align:center;">\n <i>No account available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td/>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="email" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_EMAIL\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="remoteUri" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_REMOTE_ADDRESS\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td/>\n <td/>\n </tr>\n <tr>\n <td colspan="7" class="text-center">\n <div class="pagination" st-pagination st-items-by-page="conf.accountsByPage.value" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/desk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="account.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'basic\', \'oauth\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="account.authType == \'basic\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONSUMER KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerKey.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerKey" placeholder="{{\'APPLICATION_CONSUMER_KEY\' | translate}}" class="form-control" data-ng-model="account.consumerKey" required/>\n <span data-ng-show="forms.formSetting.consumerKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER KEY -->\n\n <!-- START CONSUMER SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerSecret.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerSecret" placeholder="{{\'APPLICATION_CONSUMER_SECRET\' | translate}}" class="form-control" data-ng-model="account.consumerSecret" required/>\n <span data-ng-show="forms.formSetting.consumerSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER SECRET -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="account.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <!-- START TOKEN SECRET-->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.tokenSecret.$invalid}" ng-slide-down="account.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="tokenSecret" placeholder="{{\'APPLICATION_TOKEN_SECRET\' | translate}}" class="form-control" data-ng-model="account.tokenSecret" required/>\n <span data-ng-show="forms.formSetting.tokenSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN SECRET-->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/desk/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.id as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/desk/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/desk/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/desk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/desk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.desk.view.account\')}">\n <a ng-href="/desk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.desk.view.configurations\') || $state.is(\'main.desk.view.configuration\')}">\n <a ng-href="/desk/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/desk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/desk/list">{{ \'APPLICATION_DESK_COM\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/desk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/desk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'basic\', \'oauth\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="item.authType == \'basic\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CONSUMER KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerKey.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerKey" placeholder="{{\'APPLICATION_CONSUMER_KEY\' | translate}}" class="form-control" data-ng-model="item.consumerKey" required/>\n <span data-ng-show="forms.formSetting.consumerKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER KEY -->\n\n <!-- START CONSUMER SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.consumerSecret.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_CONSUMER_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="consumerSecret" placeholder="{{\'APPLICATION_CONSUMER_SECRET\' | translate}}" class="form-control" data-ng-model="item.consumerSecret" required/>\n <span data-ng-show="forms.formSetting.consumerSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONSUMER SECRET -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_TOKEN\' | translate}}" class="form-control" data-ng-model="item.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <!-- START TOKEN SECRET-->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.tokenSecret.$invalid}" ng-slide-down="item.authType == \'oauth\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="tokenSecret" placeholder="{{\'APPLICATION_TOKEN_SECRET\' | translate}}" class="form-control" data-ng-model="item.tokenSecret" required/>\n <span data-ng-show="forms.formSetting.tokenSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN SECRET-->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/freshdesk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_FRESHDESK\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="accounts.checked.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/freshdesk/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="getAccounts([\'name\',\'username\',\'remoteUri\',\'apiKey\'])" csv-header="[\'Name\', \'Username\', \'Remote Address\', \'Api Key\']" field-separator=";" filename="freshdesk_accounts.csv">\n <i class="icon-cloud-download"></i></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedFreshdeskAccounts" st-pipe="initList" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="7">\n <div class="row">\n <div class="col-md-6">\n <ui-select class="input-xsmall" ng-model="conf.accountsByPage" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="accountByPage in accountsByPage | filter: $select.search">\n <div ng-bind-html="accountByPage.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th class="small-cells" style="text-align: center; vertical-align: middle"><input type="checkbox" ng-change="check(account, checked)" checklist-model checklist-value="id"></th>\n <th st-sort="name">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="username">{{ \'APPLICATION_EMAIL\' | translate }}</th>\n <th st-sort="remoteUri">{{ \'APPLICATION_REMOTE_ADDRESS\' | translate }}</th>\n <th>{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="account in displayedFreshdeskAccounts" class="animate-repeat">\n <td style="text-align: center; vertical-align: middle"><input type="checkbox" checklist-model="accounts.checked" checklist-value="account.id"></td>\n <td>{{account.name}}</td>\n <td>{{account.username}}</td>\n <td>{{account.remoteUri}}</td>\n <td>{{account.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/freshdesk/view/{{account.id}}/account">\n {{ \'APPLICATION_EDIT\' | translate }}\n </a>\n <a class="btn default btn-xs green-stripe" data-ng-click="checkAccount(account.id)">\n {{ \'APPLICATION_CHECK\' | translate }}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(account.name,account.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="displayedFreshdeskAccounts.length">\n <td colspan="7" style="text-align:center;">\n <i>No account available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td/>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="email" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_EMAIL\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="remoteUri" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_REMOTE_ADDRESS\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td/>\n <td/>\n </tr>\n <tr>\n <td colspan="7" class="text-center">\n <div class="pagination" st-pagination st-items-by-page="conf.accountsByPage.value" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START API KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.apiKey.$invalid}">\n <label class="control-label">{{\'APPLICATION_API_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="apiKey" placeholder="{{\'APPLICATION_API_KEY\' | translate}}" class="form-control" data-ng-model="account.apiKey" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected[0]}}</ui-select-match>\n <ui-select-choices repeat="item[0] as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item[0] | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/freshdesk/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/freshdesk/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/freshdesk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/freshdesk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.freshdesk.view.account\')}">\n <a ng-href="/freshdesk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.freshdesk.view.configurations\') || $state.is(\'main.freshdesk.view.configuration\')}">\n <a ng-href="/freshdesk/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/freshdesk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/freshdesk/list">{{ \'APPLICATION_FRESHDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/freshdesk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/freshdesk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START API KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.apiKey.$invalid}">\n <label class="control-label">{{\'APPLICATION_API_KEY\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="apiKey" placeholder="{{\'APPLICATION_API_KEY\' | translate}}" class="form-control" data-ng-model="item.apiKey" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/integration/list/list.html",'\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-game-controller"></i>\n <a href="/integrations/list">{{ \'APPLICATION_INTEGRATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initList()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-eye font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTEGRATIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <span class="btn green-jungle btn-file">\n <span> <i class="icon-plus"></i> New App </span>\n <input type="file" accept=".zip" nv-file-select="" uploader="uploader"/>\n </span>\n <a class="btn btn-icon-only btn-default" href="#" ng-csv="displayedIntegrations" filename="integrations.csv">\n <i class="icon-cloud-download"></i></a>\n <a class="btn btn-icon-only btn-default fullscreen" href="#"></a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table st-table="displayedIntegrations" st-safe-src="integrations" class="table table-striped table-bordered table-hover">\n <div class="table-responsive">\n <thead>\n <tr>\n <th colspan="6">\n <div class="row">\n <div class="col-md-6">\n <select class="form-control input-small select2me" data-ng-model="integrationsByPage">\n <option value="10">10</option>\n <option value="25">25</option>\n <option value="50">50</option>\n <option value="{{integrations.length}}">{{ \'APPLICATION_ALL\' | translate }}</option>\n </select>\n </div>\n <div class="col-md-6">\n <div class="input-group input-medium pull-right">\n <input st-search placeholder="{{ \'APPLICATION_SEARCH\' | translate }}" class="form-control" type="search" />\n <span class="input-group-addon">\n <i class="fa fa-search"></i>\n </span>\n </div>\n </div>\n </div>\n </th>\n </tr>\n <tr>\n <th st-sort="id" width="5%" st-sort-default="reverse">{{ \'APPLICATION_ID\' | translate }}</th>\n <th st-sort="fullname">{{ \'APPLICATION_NAME\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_FILENAME\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_VERSION\' | translate }}</th>\n <th st-sort="name">{{ \'APPLICATION_DESCRIPTION\' | translate }}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="integration in displayedIntegrations">\n <td>{{integration.id}}</td>\n <td>{{integration.name}}</td>\n <td>{{integration.filename}}</td>\n <td>{{integration.version}}</td>\n <td>{{integration.description}}</td>\n <td>\n <span class="btn default btn-xs blue-stripe btn-file">\n <span> {{ \'APPLICATION_UPDATE\' | translate }} </span>\n <input type="file" accept=".zip" nv-file-select="" uploader="uploader"/>\n </span>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteItem(integration.name, integration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="integrations.length">\n <td colspan="6" style="text-align:center;">\n <i>No integrations available</i>\n </td>\n </tr>\n </tbody>\n <tfoot>\n <tr>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="id" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="name" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_NAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n <div class="input-icon right">\n <i class="fa fa-search"></i>\n <input st-search="filename" placeholder="{{ \'APPLICATION_SEARCH\' | translate }} {{ \'APPLICATION_BY\' | translate | lowercase }} {{ \'APPLICATION_FILENAME\' | translate | lowercase}}" class="form-control" type="search"/>\n </div>\n </td>\n <td>\n </td>\n <td>\n </td>\n <td>\n </td>\n </tr>\n <tr>\n <td colspan="6" class="text-center">\n <div st-pagination class="pagination" st-items-by-page="integrationsByPage" st-displayed-pages="7"></div>\n </td>\n </tr>\n </tfoot>\n </div>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/jscripty/project/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/jscripty/project/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROJECTS\' | translate }}</a> </span>\n </div>\n <div class="actions" ng-show="isAdmin">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();">\n <i class="icon-reload"></i>\n </a>\n </div>\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROJECT\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n\n <!-- <div class="table-responsive"> -->\n\n\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/jscripty/project/report/report.detail.html",'<div class="portlet light bordered" data-ng-init="getProjectDetail();initView()">\n<div class="portlet-title">\n<div class="caption font-green-sharp">\n<i class="fa fa-list font-green-sharp"></i>\n<span class="caption-subject">{{ \'APPLICATION_SUMMARY\' | translate }}</a> </span>\n</div>\n<div class="actions">\n <div class="btn-group">\n <button class="btn btn-icon-only btn-primary" data-ng-click="pdf(\'header\',projectDetail)">\n <i class="fa fa-download"></i>\n </button>\n <!-- <button class="btn btn-icon-only btn-default" data-ng-click="accordion.expandAll()">\n <i class="fa fa-folder-open-o"></i>\n </button>\n <button class="btn btn-icon-only btn-default" data-ng-click="accordion.collapseAll()">\n <i class="fa fa-folder"></i>\n </button> -->\n </div>\n</div>\n</div>\n<div id=\'detail\' class="portlet-body">\n <div class="alert alert-success text-center" ng-show="!projectDetail.length">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div>\n <div class="row" ng-show="projectDetail.length">\n <div class="col-md-10 col-md-offset-1">\n <div id="header" class="panel panel-info">\n <div class="panel-heading">\n <strong>Project Name: </strong>{{project.name}}<br>\n <strong>Project Id: </strong>{{project.id}}<br>\n <strong>Completed: </strong>{{projectStats.completed}}<br>\n <strong>Incomplete: </strong>{{projectStats.incomplete}}<br>\n <strong>% Completed: </strong>{{projectStats.completed * 100 /(projectStats.completed + projectStats.incomplete) | number:2}}<br>\n </div>\n </div><br>\n <v-accordion class="vAccordion--default" multiple control="accordion">\n <v-pane id="{{question.question_id }}" ng-repeat="question in projectDetail" expanded="true">\n <v-pane-header>\n Question Id: {{question.question_id}}\n </v-pane-header>\n <v-pane-content>\n <div ng-class=" {{question.graphData.length > 0}} ? \'col-md-8\' : \'col-md-12\'">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4><strong>{{question.question_label}}</strong> : {{question.question_text}}</h4>\n <br><br>\n <table ng-if="question.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th>Response</th>\n <th> #Response </th>\n <th> % </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-if="!choice.other_option" ng-repeat="choice in question.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <td>{{choice.percentage | number:2}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <div class="row" ng-if="question.question_other_label">\n <!-- <div class="row" ng-if="choice.other_option" ng-repeat="choice in question.choices "> -->\n <!-- <div class="col-md-10 col-md-offset-1 ">\n <strong>{{choice.value}}</strong> <span class="badge">{{choice.count}}</span><br>\n </div> -->\n <!-- accordions can be nested :) -->\n <v-accordion >\n <v-pane >\n <!-- ng-repeat="subpane in pane.subpanes" ng-disabled="subpane.isDisabled" -->\n <v-pane-header>\n <strong>{{question.question_other_label}}</strong><br>\n </v-pane-header>\n <v-pane-content>\n <table ng-if="question.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th>Response</th>\n <th> #Response </th>\n <!-- <th> % </th> -->\n </tr>\n </thead>\n <tbody>\n\n <tr ng-if="choice.other_option" ng-repeat="choice in question.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <!-- <td>{{choice.percentage | number:2}}</td> -->\n </tr>\n </tbody>\n </table>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4> <strong>Total Respondents: {{question.total}}</strong></h4><br>\n </div>\n </div>\n </div>\n <div class=" col-md-4 pull-right " ng-if="question.graphType == \'bar\' && question.graphData">\n <canvas class="chart chart-bar" chart-data="question.graphData" chart-labels="question.graphLabels" chart-legend="true">\n </canvas>\n </div>\n <div class="col-md-4 pull-right " ng-if="question.graphType == \'pie\' && question.graphData">\n <canvas class="chart chart-pie" chart-data="question.graphData" chart-labels="question.graphLabels" chart-legend="true">\n </canvas>\n </div>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-edit"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_JSCRIPTY\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-book-open"></i>\n <a href="">{{ \'APPLICATION_REPORTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/report.png" class="img-responsive" >\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{project.name}}[{{project.id}}]\n </div>\n <div class="profile-usertitle-job">\n\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.sessions\')|| $state.is(\'main.jscripty.projects.report.sessionDetail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/sessions\'>\n <i class="icon-settings"></i>\n Sessions</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.summary\') || $state.is( \'main.jscripty.projects.report.questionDetail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/summary\'>\n <i class="fa fa-bar-chart"></i>\n Questions</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.detail\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/detail\'>\n <i class="fa fa-list"></i>\n Summary</a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.jscripty.projects.report.inputs\')}">\n <a data-ng-href=\'/jscripty/projects/report/{{projectId}}/inputs\'>\n <i class="fa fa-edit"></i>\n Inputs</a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n\n </div>\n\n </div>\n\n <div class="profile-content margin-top-20">\n <div class="row">\n <div class="col-md-12">\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-green-sharp">{{projectStats.started}}</h3>\n <small>Started</small>\n </div>\n <div class="icon">\n <i class="icon-pie-chart"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success green-sharp">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-red-haze">{{projectStats.incomplete}}</h3>\n <small>Incomplete</small>\n </div>\n <div class="icon">\n <i class="icon-chart"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success red-haze">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n <div class="col-lg-4 col-md-4 col-sm-6 col-xs-12">\n <div class="dashboard-stat2">\n <div class="display">\n <div class="number">\n <h3 class="font-blue-sharp">{{projectStats.completed}}</h3>\n <small>Completed</small>\n </div>\n <div class="icon">\n <i class="icon-like"></i>\n </div>\n </div>\n <div class="progress-info">\n <div class="progress">\n <span style="width: 100%;" class="progress-bar progress-bar-success blue-sharp">\n </span>\n </div>\n <div class="status">\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n <div class="row">\n <div ui-view class="col-md-12">\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/jscripty/project/report/report.inputs.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getQuestionInputs()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-edit font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INPUTS\' | translate }}</a> </span>\n </div>\n <div class="tools">\n <!-- <a href="" class="fullscreen" data-original-title="" title="">\n </a> -->\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.question.detail.html",'<div class="row" data-ng-init="getDetail()">\n <div class="col-md-12">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-list font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DETAIL\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body" >\n <div class="alert alert-success text-center" ng-show="!questionDetail">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div>\n <div class="row margin-top-20" ng-show="questionDetail">\n <div class="col-md-10 col-md-offset-1">\n <div class="panel panel-info" >\n <div class="panel-heading">\n <h3 class="panel-title">\n\n <i class="fa-chart "></i>Question Id: {{questionDetail.question_id}}\n </div>\n <div class="panel-body">\n <div class="row">\n <div class="col-md-12">\n <h4><strong>{{questionDetail.question_label}}</strong></h4>\n </div>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <strong><h4>{{questionDetail.question_text}}</h4></strong><br>\n </div>\n </div>\n <div class="row">\n <div class="col-md-6">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <!-- <div class="alert alert-success text-center" ng-show="!questionDetail.choices.length">\n <h4>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</h4>\n </div> -->\n <table ng-if="questionDetail.choices.length" class="table table-hover" style="table-layout: fixed; width: 100%">\n <thead>\n <tr>\n <th style="width=5%"> Value </th>\n <th style="width=5%"> Count </th>\n <th ng-if="question.graphType != \'PolarArea\'" style="width=5%"> % </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-if="!choice.other_option" ng-repeat="choice in questionDetail.choices ">\n <td style="word-wrap: break-word">{{choice.value}}</td>\n <td>{{choice.count}}</td>\n <td ng-if="question.graphType != \'PolarArea\'">{{choice.percentage | number:2}}</td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <div class="row" ng-if="choice.other_option" ng-repeat="choice in questionDetail.choices ">\n <div class="col-md-6 col-md-offset-3 ">\n <strong><a href="">{{choice.value}}</a> </strong> <span class="badge">{{choice.count}}</span><br>\n\n </div>\n </div>\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <h4> <strong>Total: {{questionDetail.total}}</strong></h4><br>\n </div>\n </div>\n </div>\n <div class="col-md-6 pull-right ">\n <canvas id="base" class="chart-base" chart-type="questionDetail.graphType"\n chart-data="questionDetail.graphData" chart-labels="questionDetail.graphLabels" chart-legend="true">\n </canvas>\n <!-- <button class="btn btn-success btn-sm pull-right" ng-click="toggle(questionDetail)">{{questionDetail.graphType}}</button> -->\n </div>\n </div>\n\n </div>\n\n </div>\n\n </div>\n </div>\n\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.session.detail.html",'\n\n<div class="row" data-ng-init="getSessionDetails()">\n <div class="col-md-12">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-list font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_DETAIL\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn btn-icon-only btn-primary" data-ng-click="pdf(\'header\',sessionQuestions)">\n <i class="fa fa-download"></i>\n </button>\n <!-- <button class="btn btn-icon-only btn-default" data-ng-click="accordion.expandAll()">\n <i class="fa fa-plus-square-o"></i>\n </button>\n <button class="btn btn-icon-only btn-default" data-ng-click="accordion.collapseAll()">\n <i class="icon-collapse-alt"></i>\n </button> -->\n </div>\n </div>\n </div>\n <div class="portlet-body" style="height: auto;">\n <div class="row margin-top-20">\n <div class="col-md-10 col-md-offset-1">\n <div id = "header" class="panel panel-info">\n <div class="panel-heading">\n <strong>Project Name: </strong>{{project.name}}<br>\n <strong>Project Id: </strong>{{project.id}}<br>\n <strong>Session Id: </strong>{{session.session_id}}<br>\n <strong>Status: </strong>{{session.status}}<br>\n <strong>Started At: </strong>{{session.createdAt}}<br>\n <strong>Closed At: </strong>{{session.completedAt}}<br>\n </div>\n </div>\n <v-accordion class="vAccordion--default" multiple control="accordion">\n <v-pane id="{{question.question_id }}" ng-repeat=" question in sessionQuestions | orderBy:\'index\'"" expanded="true">\n <v-pane-header>\n Question Id: {{question.question_id}}\n </v-pane-header>\n <v-pane-content>\n <h4><strong>{{question.question_label}}</strong> : {{question.question_text}}</h4>\n <div ng-if="question.question_type == \'question\'">\n <h4><strong>Answer: </strong>{{question.question_answer}}</h4>\n </div>\n <div ng-if="question.question_other_label">\n <h4>\n <strong>{{question.question_other_label}}: </strong>\n {{question.question_other_answer || \'No Value\'}}\n </h4>\n </div>\n <table class="table table-hover" ng-if="question.ReportJscriptyInputs.length">\n <thead>\n <tr>\n <th > Label </th>\n <th >Answer </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="input in question.ReportJscriptyInputs |orderBy:\'id\'">\n <td>{{input.input_label}}</td>\n <td>{{input.input_value || \'No Value\'}}</td>\n </tr>\n </tbody>\n </table>\n </v-pane-content>\n </v-pane>\n </v-accordion>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/report/report.sessions.html",'\n <div class="row" >\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getProjectSessions()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SESSIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();initView()">\n <i class="icon-reload"></i>\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/jscripty/project/report/report.summary.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light bordered" data-ng-init="getQuestionSummary()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-bar-chart font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_QUESTIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <!-- <a class="btn btn-default" href="#" data-ng-click="gridOptions.getPage();initView()">\n <i class="icon-reload"></i>\n </a> -->\n </div>\n </div>\n </div>\n <div class="portlet-body" >\n <div ui-grid="gridOptions" ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/jscripty/project/view/view.html",'<div class="row" data-ng-init="getProject()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-edit"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_JSCRIPTY\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/jscripty/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a ng-href="/jscripty/projects/view/{{jscriptyProject.id}}">{{jscriptyProject.name}}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div id="geEditor" class="geEditor"></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<script>\n\n\n</script>\n'),a.put("app/landing/landing.html",'<!-- BEGIN LOGO -->\n<div class="logo">\n <a href="index.html">\n <img src="assets/images/logo-big.png" alt=""/>\n </a>\n</div>\n<!-- END LOGO -->\n\n<!-- BEGIN LANDING -->\n<div data-ng-init="initLanding()">\n <div data-ng-show="message" class="col-md-12 page-500" style="padding-bottom: 50px;">\n <div class="number">\n Oops!\n </div>\n <div class=" details" style="color: white;">\n <h3>{{message | translate}}.</h3>\n <p>\n Please contact your administrator.<br><br>\n </p>\n </div>\n </div>\n</div>\n<!-- END LANDING -->\n\n<div class="copyright">\n xCALLY Motion | 2016 © Powered by Xenialab\n</div>\n'), -a.put("app/login/login.html",'<!-- BEGIN LOGO -->\n<div class="logo">\n <a href="index.html">\n <img src="assets/images/logo-big.png" alt=""/>\n </a>\n</div>\n<!-- END LOGO -->\n<!-- BEGIN LOGIN -->\n<div class="content">\n <!-- BEGIN LOGIN FORM -->\n <form class="login-form" name="loginForm" data-ng-show="!flagLogin1" data-ng-submit="login(loginForm)" novalidate>\n <h3 class="form-title">Sign In</h3>\n <div class="alert alert-danger" data-ng-class="{\'display-hide\': !loginSubmitted || !errorLogin}">\n <button class="close" data-close="alert"></button>\n <span>{{ errorLog ? errorLog : \'Enter any username and password.\'}}</span>\n </div>\n <div class="form-group" data-ng-class="{\'has-error\': loginSubmitted && loginForm.name.$invalid}">\n <label class="control-label">Username</label>\n <div class="input-icon">\n <i class="fa fa-user"></i>\n <input ng-enter="login(loginForm)" class="form-control form-control-solid placeholder-no-fix" type="text" autocomplete="off" placeholder="Username" name="name" ng-model="userLogin.name" required/>\n </div>\n <span data-ng-show="loginSubmitted && loginForm.name.$invalid" class="help-block">Username is required.</span>\n </div>\n <div class="form-group" data-ng-class="{\'has-error\': loginSubmitted && loginForm.password.$invalid}">\n <label class="control-label">Password</label>\n <div class="input-icon">\n <i class="fa fa-lock"></i>\n <input ng-enter="login(loginForm)" class="form-control form-control-solid placeholder-no-fix" type="password" autocomplete="off" placeholder="Password" name="password" ng-model="userLogin.password" required/>\n </div>\n <span data-ng-show="loginSubmitted && loginForm.password.$invalid" class="help-block">Password is required.</span>\n </div>\n <div class="form-actions">\n <button type="submit" class="btn btn-success uppercase">Login</button>\n <label class="rememberme check">\n <input type="checkbox"> Remember me\n </label>\n <!-- <label class="rememberme check">\n <input type="checkbox" name="remember" value="1"/>Remember </label> -->\n <!-- <a href="javascript:;" id="forget-password" class="forget-password">Forgot Password?</a> -->\n </div>\n <div class="login-options">\n <h4>Follow Us on</h4>\n <ul class="social-icons">\n <li>\n <a class="social-icon-color facebook" data-original-title="facebook" href="https://www.facebook.com/xenialab"></a>\n </li>\n <li>\n <a class="social-icon-color twitter" data-original-title="Twitter" href="https://twitter.com/xenialab"></a>\n </li>\n <li>\n <a class="social-icon-color googleplus" data-original-title="Goole Plus" href="#"></a>\n </li>\n <li>\n <a class="social-icon-color linkedin" data-original-title="Linkedin" href="#"></a>\n </li>\n </ul>\n </div>\n </form>\n</div>\n<div class="copyright">\n xCALLY Motion | {{year}} - {{year + 1}} © Powered by Xenialab\n</div>\n<!-- END LOGIN -->\n'),a.put("app/main/chooseContact.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_CHOOSE_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <table st-table="rowCollection" class="table table-striped">\n <tbody>\n <tr ng-repeat="contact in contacts">\n <td>{{contact.firstName}} {{contact.lastName || \'\'}}</td>\n <td>{{contact.List.name}}</td>\n <td>\n <button class="btn default btn-xs green-stripe" data-ng-click="open(contact)">\n {{ \'APPLICATION_OPEN\' | translate}}\n </button>\n </td>\n </tr>\n <tr data-ng-hide="contacts.length">\n <td colspan="3" style="text-align:center;">\n <i>{{ \'MESSAGE_NO_CONTACTS_AVAILABLE\' | translate }}</i>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="open()"><i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/closeEditedTab.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>{{\'MESSAGE_CLOSE_EDITED_TAB\' | translate}}</p>\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/closeEditedTab.modal.jscripty.html",' <div class="modal-header" data-ng-init="init()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n <!-- <h3 ng-if="projectStatus == \'incomplete\'" class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3> -->\n\n</div>\n<div class="modal-body">\n<!-- <div ng-if="projectStatus == \'incomplete\'" class="modal-body"> -->\n <p>{{\'MESSAGE_CLOSE_INCOMPLETE\' | translate}}</p>\n</div>\n\n\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/cm.disposition.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title | translate" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <form name="form" novalidate data-ng-init="initDisposition()">\n <div class="form-group">\n <ui-select data-ng-model="item.disposition" name="list" theme="bootstrap" data-ng-disabled="!dispositions.length" required>\n <ui-select-match placeholder="{{\'APPLICATION_DISPOSITION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="disposition.name as disposition in dispositions | filter: $select.search">\n <div ng-bind-html="disposition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="note note-warning" data-ng-hide="dispositions.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_DISPOSITIONS_AVAILABLE\' | translate }}\n </p>\n </div>\n</form>\n <!-- <div ng-if="modal.html" ng-bind-html="modal.html"></div> -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="ok()" data-ng-disabled="!item.disposition">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n <!-- <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button> -->\n</div>\n'),a.put("app/main/company.info.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_COMPANY_INFO\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADDRESS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_SHIPMENT_ADDRESS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateCompany()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START NAME -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <input readonly type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="company.name" required/>\n </div>\n <!-- END NAME -->\n\n <!-- START VAT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VAT\' | translate}}</label>\n <input readonly type="text" name="vat" placeholder="{{\'APPLICATION_VAT\' | translate}}" class="form-control" data-ng-model="company.vat"/>\n </div>\n <!-- END VAT -->\n\n <!-- START COMPANYID -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_COMPANY_ID\' | translate}}</label>\n <input readonly type="text" name="companyId" placeholder="{{\'APPLICATION_COMPANY_ID\' | translate}}" class="form-control" data-ng-model="company.companyId"/>\n </div>\n <!-- END COMPANYID -->\n\n <!-- START WEBSITE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_WEBSITE\' | translate}}</label>\n <input readonly type="text" name="website" placeholder="{{\'APPLICATION_WEBSITE\' | translate}}" class="form-control" data-ng-model="company.website"/>\n </div>\n <!-- END WEBSITE -->\n\n <!-- START EMAIL -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input readonly type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="company.email"/>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-6">\n <!-- START PHONE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input readonly type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="company.phone"/>\n </div>\n <!-- END PHONE -->\n\n <!-- START FAX -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input readonly type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="company.fax"/>\n </div>\n <!-- END FAX -->\n\n <!-- START TYPE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}</label>\n <input readonly type="text" name="type" placeholder="{{\'APPLICATION_TYPE\' | translate}}" class="form-control" data-ng-model="company.type"/>\n </div>\n <!-- END TYPE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea readonly type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="company.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n </div>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.address" novalidate>\n <!-- START STREET -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input readonly type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.street"/>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input readonly type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.postalCode"/>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input readonly type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.city"/>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input readonly type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.country"/>\n </div>\n <!-- END COUNTRY -->\n </form>\n </div>\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.shipmentAddress" novalidate>\n <!-- START STREET -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input readonly type="text" name="sStreet" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="company.sStreet"/>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input readonly type="text" name="sPostalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="company.sPostalCode"/>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" >\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input readonly type="text" name="sCity" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="company.sCity"/>\n </div>\n <!-- END CITY -->\n <!-- START COUNTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input readonly type="text" name="sCountry" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="company.sCountry"/>\n </div>\n <!-- END COUNTRY -->\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="close()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/main/customDateFilter.modal.html",'<div class="modal-body">\n <uib-datepicker ng-model="filterDate"\n class="well well-sm">\n </uib-datepicker>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="setFilterDate(filterDate)">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancelDateFilter()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/main/customDateFilterHeader.html",'<input class="ui-grid-filter-input date-time-filter-buttons pointer-cursor" style="width:90%;padding:inherit;" data-ng-click="openDatePicker(colFilter)" placeholder="{{ colFilter.name }}" readonly value="{{colFilter.term | date:\'dd-MM-yyyy\'}}">\n<span role="button" class="ui-grid-filter-button-select cancel-custom-date-range-filter-button ng-scope" data-ng-click="removeFilter(colFilter, $index)" data-ng-if="!colFilter.disableCancelFilterButton" data-ng-disabled="colFilter.term === undefined || colFilter.term === null || colFilter.term === \'\'" data-ng-show="colFilter.term !== undefined && colFilter.term != null" tabindex="0" aria-hidden="false" aria-disabled="false" style="right:22px;">\n <i class="ui-grid-icon-cancel cancel-custom-date-range-filter" ui-grid-one-bind-aria-label="aria.removeFilter" aria-label="Remove Filter"> </i>\n</span>\n'),a.put("app/main/main.html",'<!-- BEGIN HEADER -->\n<div data-ng-include="\'components/header/header.html\'" data-ng-controller="HeaderController" class="page-header navbar navbar-fixed-top">\n</div>\n<!-- END HEADER -->\n\n<div class="clearfix">\n</div>\n<!-- BEGIN CONTAINER -->\n<div class="page-container" data-ng-init="initMain()">\n\n <!-- BEGIN SIDEBAR -->\n <div data-ng-include="\'components/sidebar/sidebar.html\'" data-ng-controller="SidebarController" class="page-sidebar-wrapper">\n </div>\n <!-- END SIDEBAR -->\n\n <!-- BEGIN CONTENT -->\n <div class="page-content-wrapper">\n <div class="page-content" data-ng-class="{\'demo\': !license.expiration}">\n\n <!-- BEGIN PAGE CONTENT -->\n <uib-tabset>\n <uib-tab select="addWorkspace()" active="mainTab.active">\n <uib-tab-heading>\n Motion <i class="icon-rocket"></i>\n </uib-tab-heading>\n <div ui-view class=""></div>\n </uib-tab>\n <uib-tab class="motion-{{workspace.type}}-uib-tab" data-ng-repeat="workspace in workspaces" active="workspace.active" data-ng-switch="workspace.type" select="select(workspace)" deselect="deselect(workspace)">\n <uib-tab-heading>\n <i data-ng-if="workspace.class" class="prova" data-ng-class="workspace.class"></i> {{workspace.name | truncate: 25: \'...\': true}} <span class="badge badge-danger" data-ng-if="workspace.unread">{{workspace.unread}}</span> <i class="icon-close pointer-cursor" data-ng-click="closeTab($index)"></i>\n </uib-tab-heading>\n <div class="" data-ng-switch="workspace.type">\n <new-contact data-ng-switch-when="newContact" workspace="workspace" index="$index" on-submit="createContact(index,item)"></new-contact>\n <contact data-ng-switch-when="contact" workspace="workspace" index="$index" on-submit="updateContact(index,item)"></contact>\n <jscripty data-ng-switch-when="jscripty" workspace="workspace" index="$index" on-submit="closeJscriptyTab(index)"></jscripty>\n <!-- <jscripty data-ng-switch-when="jscripty" workspace="workspace" index="$index" on-submit="closeTab(index,item)"></jscripty> -->\n <chat-room data-ng-switch-when="chatRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></chat-room>\n <fax-room data-ng-switch-when="faxRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></fax-room>\n <mail-room data-ng-switch-when="mailRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></mail-room>\n <sms-room data-ng-switch-when="smsRoom" workspace="workspace" index="$index" on-submit="closeTab(index)"></sms-room>\n </div>\n </uib-tab>\n </uib-tabset>\n <!-- END PAGE CONTENT -->\n\n </div>\n </div>\n <!-- END CONTENT -->\n\n</div>\n<!-- END CONTAINER -->\n\n<!-- BEGIN FOOTER -->\n<div data-ng-include="\'components/footer/footer.html\'" data-ng-controller="FooterController" class="page-footer">\n</div>\n<!-- END FOOTER -->\n\n<!-- BEGIN JAVASCRIPTS(Load javascripts at bottom, this will reduce page load time) -->\n<!-- BEGIN CORE PLUGINS -->\n<!--[if lt IE 9]>\n<script src="../../assets/global/plugins/respond.min.js"></script>\n<script src="../../assets/global/plugins/excanvas.min.js"></script>\n<![endif]-->\n\n<!-- END JAVASCRIPTS -->\n'),a.put("app/main/template/actionBuilder/template.actionBuilderIntegration.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" data-ng-change="changeIntegration()" required>\n <ui-select-match placeholder="{{ \'APPLICATION_INTEGRATION\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="integration.state as integration in integrations | filter: $select.search">\n <div ng-bind-html="integration.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_INTEGRATION\' | translate}}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data1 && accounts && randomName" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data2" name="data2{{randomName}}" theme="bootstrap" data-ng-change="changeAccount();" required>\n <ui-select-match placeholder="{{\'APPLICATION_ACCOUNT\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in accounts | filter: $select.search">\n <div ng-bind-html="account.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_ACCOUNT\' | translate}}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data2 && configurations && randomName" data-ng-class="{\'has-error\': (form[\'data3\'+randomName].$touched || form.$submitted) && form[\'data3\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data3" name="data3{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CONFIGURATION\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="config.id as config in configurations | filter: $select.search">\n <div ng-bind-html="config.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_CONFIGURATION\' | translate}}\n </span>\n <span data-ng-show="(form[\'data3\'+randomName].$touched || form.$submitted) && form[\'data3\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderJscripty.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="project.id as project in projects | filter: $select.search">\n <div ng-bind-html="project.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderMotionBar.html",'<!-- data1: 0 POPUP, 1 URL, 2 WINAPP -->\n<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required data-ng-change="changeMode();">\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="motionAction.value as motionAction in motionActions | filter: $select.search">\n <div ng-bind-html="motionAction.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_TYPE\' | translate }}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:0 data2:Template -->\n<div data-ng-if="randomName && element.data1==0" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data2" name="data2{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TEMPLATE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_TEMPLATE\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:1 data2:URL -->\n<div data-ng-if="randomName && element.data1==1" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required placeholder="{{ \'APPLICATION_URL\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_URL\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n\n<!-- data1:2 data2:Application data3:Arguments -->\n<div data-ng-if="randomName && element.data1==2" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required placeholder="{{ \'APPLICATION_APPLICATION\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_APPLICATION\' | translate }}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName && element.data1==2" class="form-group col-md-2">\n <input type="text" ng-model="element.data3" name="data3{{randomName}}" class="form-control" placeholder="{{ \'APPLICATION_ARGUMENTS\' | translate }}"/>\n <span class="help-block">\n {{ \'APPLICATION_ARGUMENTS\' | translate }}\n </span>\n</div>\n'),a.put("app/main/template/actionBuilder/template.actionBuilderStatus.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="status.value as status in states | filter: $select.search">\n <div ng-bind-html="status.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/actionBuilder/template.actionBuilderTemplate.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="template.id as template in templates | filter: $select.search">\n <div ng-bind-html="template.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="text" ng-model="element.data2" name="data2{{randomName}}" class="form-control" required/>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="col-md-2">\n <input type="text" ng-model="element.data3" class="form-control"/>\n</div>\n'),a.put("app/main/template/actionBuilder/template.actionBuilderUrlForward.html",'<div data-ng-if="randomName" class="form-group col-md-2" data-ng-class="{\'has-error\': (form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$invalid}">\n <ui-select data-ng-model="element.data1" name="data1{{randomName}}" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in types | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{\'APPLICATION_TYPE\' | translate}}\n </span>\n <span data-ng-show="(form[\'data1\'+randomName].$touched || form.$submitted) && form[\'data1\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-2" data-ng-if="element.data1 && randomName" data-ng-class="{\'has-error\': (form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$invalid}">\n <input type="url" ng-model="element.data2" placeholder="{{ \'APPLICATION_URL\' | translate }}" name="data2{{randomName}}" class="form-control" required/>\n <span class="help-block">\n {{\'APPLICATION_URL\' | translate}}\n </span>\n <span data-ng-show="(form[\'data2\'+randomName].$touched || form.$submitted) && form[\'data2\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"), -a.put("app/main/template/template.conditionBuilder.html",'<div data-ng-if="randomName" class="form-group col-md-3" data-ng-class="{\'has-error\': (form[\'field\'+randomName].$touched || form.$submitted) && form[\'field\'+randomName].$invalid}">\n <ui-select data-ng-model="element.field" name="field{{randomName}}" theme="bootstrap" data-ng-change="checkCondition(element.field)" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="condition.value as condition in service.services[serviceindex].conditions | filter: $select.search">\n <div ng-bind-html="condition.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'field\'+randomName].$touched || form.$submitted) && form[\'field\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div data-ng-if="randomName && element.field" class="form-group col-md-3" data-ng-class="{\'has-error\': (form[\'operator\'+randomName].$touched || form.$submitted) && form[\'operator\'+randomName].$invalid}">\n <ui-select data-ng-model="element.operator" name="operator{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="operator.value as operator in _.find(service.services[serviceindex].conditions,{value:element.field}).operators | filter: $select.search">\n <div ng-bind-html="operator.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'operator\'+randomName].$touched || form.$submitted) && form[\'operator\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="col-md-3" data-ng-if="elementType === \'input\' && randomName && element.field" data-ng-class="{\'has-error\': (form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$invalid}">\n <input type="text" ng-model="element.value" class="form-control" name="value{{randomName}}" required/>\n <span data-ng-show="(form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n</div>\n<div class="form-group col-md-3" data-ng-if="elementType === \'select\' && randomName && element.field" data-ng-class="{\'has-error\': (form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$invalid}">\n <ui-select data-ng-model="element.value" name="value{{randomName}}" theme="bootstrap" required>\n <ui-select-match>{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="value.value as value in values| filter: $select.search">\n <div ng-bind-html="value.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form[\'value\'+randomName].$touched || form.$submitted) && form[\'value\'+randomName].$error.required" class="help-block help-block-error">\n'+" <strong>{{'APPLICATION_WARNING' | translate}}!</strong> {{'MESSAGE_REQUIRED_FIELD' | translate}}.\n </span>\n</div>\n"),a.put("app/main/template/template.contactTab.html",'<div class="row margin-top-20 contact-tab-container">\n <div class="col-md-12 contact-tab">\n <form name="forms.general" data-ng-submit="submit({index:index,item:contact})" novalidate>\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#tab_1_1{{contact.id || \'\'}}" data-toggle="tab">{{\'APPLICATION_DETAIL\' | translate}}</a>\n </li>\n <li data-ng-if="contact.id">\n <a href="#tab_1_2{{contact.id || \'\'}}" data-toggle="tab">{{\'APPLICATION_LOG\' | translate}}</a>\n </li>\n</ul>\n<div class="tab-content">\n <div class="tab-pane fade active in" id="tab_1_1{{contact.id || \'\'}}">\n <!--end add-portfolio-->\n <div class="row portfolio-block" data-ng-if="workspace.data">\n <div class="col-md-3">\n <div class="portfolio-text">\n <img src="assets/images/media/CmCall.png" alt=""/>\n <div class="portfolio-text-info">\n <h4>{{\'MESSAGE_INBOUND_CALL_FROM\' | translate}} - {{workspace.data.calleridnum}}</h4>\n <p>\n {{\'MESSAGE_CALL_UNIQUEID\' | translate}} : {{workspace.data.uniqueid}}\n </p>\n </div>\n </div>\n </div>\n <div class="col-md-2 portfolio-stat">\n <div>{{\'APPLICATION_QUEUE\' | translate}} </div>\n <p> {{workspace.data.queue}} </p>\n </div>\n <div class="col-md-3 portfolio-stat">\n <div>{{\'APPLICATION_AGENT\' | translate}} </div>\n <p> {{workspace.data.membername}} </p>\n </div>\n <div class="col-md-2 portfolio-stat">\n <div>{{\'APPLICATION_DATE\' | translate}} </div>\n <p> {{workspace.data.agentcalledAt | date:\'dd/MM/yyyy HH:mm:ss\'}} </p>\n </div>\n <div class="col-md-2 portfolio-stat">\n <button class="btn grey-cascade" type="button" data-ng-click="dispose()" data-ng-disabled="contact.disposed">\n <i class="icon-target"></i> {{\'APPLICATION_DISPOSITION\' | translate}}\n </button>\n </div>\n </div>\n <!--end row-->\n <!-- BEGIN PORTLET -->\n <div class="portlet light ">\n <div class="portlet-title">\n <div class="caption caption-md">\n <i class="icon-bar-chart theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_DETAIL\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm active" data-ng-click="detail.tab=\'main\'">\n <input type="radio" class="toggle">{{\'APPLICATION_MAIN\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-click="detail.tab=\'other\'">\n <input type="radio" class="toggle">{{\'APPLICATION_OTHER\' | translate}}</label>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <div data-ng-class="{\'hidden\':detail.tab != \'main\'}" class="portlet-body contact-portlet row">\n <div class="col-md-4">\n <!-- START FIRSTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.firstName.$touched || forms.general.$submitted) && forms.general.firstName.$invalid}">\n <label class="control-label">{{\'APPLICATION_FIRSTNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="firstName" placeholder="{{\'APPLICATION_FIRSTNAME\' | translate}}" class="form-control" data-ng-model="contact.firstName" required/>\n <span data-ng-show="(forms.general.firstName.$touched || forms.general.$submitted) && forms.general.firstName.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FIRSTNAME -->\n\n <!-- START LASTNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.lastName.$touched || forms.general.$submitted) && forms.general.lastName.$invalid}">\n <label class="control-label">{{\'APPLICATION_LASTNAME\' | translate}}</label>\n <input type="text" name="lastName" placeholder="{{\'APPLICATION_LASTNAME\' | translate}}" class="form-control" data-ng-model="contact.lastName"/>\n <span data-ng-show="(forms.general.lastName.$touched || forms.general.$submitted) && forms.general.lastName.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LASTNAME -->\n\n <!-- START COMPANY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.CompanyId.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_COMPANY\' | translate}}</label>\n <div class="input-group">\n <ui-select data-ng-model="contact.CompanyId" theme="bootstrap" name="CompanyId" ng-disabled="!companies.length" required>\n <ui-select-match placeholder="{{ \'APPLICATION_COMPANY\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="company.id as company in companies | filter: $select.search" null-option="scope.noCompany">\n <div ng-bind-html="company.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="input-group-btn">\n <button type="button" data-ng-click="companyInfo(contact.CompanyId)" class="btn btn-default" data-ng-disabled="!contact.CompanyId">\n <span class="icon-info" data-ng-class="{\'font-blue\':contact.CompanyId}"></span>\n </button>\n </span>\n </div>\n <div class="note note-warning" data-ng-hide="companies.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_COMPANIES_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/contactmanager/companies/list">{{\'APPLICATION_COMPANIES\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.CompanyId.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COMPANY -->\n </div>\n <div class="col-md-4">\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}</label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="contact.phone"/>\n <span data-ng-show="(forms.general.phone.$touched || forms.general.$submitted) && forms.general.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n <!-- START MOBILE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.mobile.$touched || forms.general.$submitted) && forms.general.mobile.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOBILE\' | translate}}</label>\n <input type="text" name="mobile" placeholder="{{\'APPLICATION_MOBILE\' | translate}}" class="form-control" data-ng-model="contact.mobile"/>\n <span data-ng-show="(forms.general.mobile.$touched || forms.general.$submitted) && forms.general.mobile.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MOBILE -->\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}</label>\n <input type="text" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="contact.email"/>\n <span data-ng-show="(forms.general.email.$touched || forms.general.$submitted) && forms.general.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n <div class="col-md-4">\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <input type="text" name="fax" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" data-ng-model="contact.fax"/>\n <span data-ng-show="(forms.general.fax.$touched || forms.general.$submitted) && forms.general.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n <!-- START TAGS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.tags.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_TAGS\' | translate}}</label>\n <ui-select multiple=\'true\' data-ng-model="contact.tags" theme="bootstrap" name="tags" ng-disabled="disabled">\n <ui-select-match placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="tag in tags | filter: $select.search">\n {{tag}}\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.general.tags.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TAGS -->\n <!-- START LIST -->\n <div class="form-group" data-ng-if="contact.id">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <input type="text" name="list" placeholder="{{\'APPLICATION_LIST\' | translate}}" class="form-control" data-ng data-ng-model="contact.List.name" disabled/>\n </div>\n <!-- END LIST -->\n <!-- START LIST -->\n <div data-ng-if="!contact.id" class="form-group" data-ng-class="{\'has-error\': forms.general.ListId.$invalid && forms.general.$submitted}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}</label>\n <ui-select data-ng-model="contact.ListId" theme="bootstrap" name="ListId" data-ng-change="getCustomFields()" required>\n <ui-select-match placeholder="{{ \'APPLICATION_LIST\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="list.id as list in lists | filter: $select.search">\n <div ng-bind-html="list.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="note note-warning" data-ng-hide="lists.length">\n <h4 class="block">Warning!</h4>\n <p>\n {{ \'MESSAGE_NO_LISTS_AVAILABLE\' | translate }}\n </p>\n <p>\n {{\'APPLICATION_GO_TO\' | translate}} <a href="/contactmanager/lists/list">{{\'APPLICATION_LISTS\' | translate}}</a>\n </p>\n </div>\n <span data-ng-show="forms.general.ListId.$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n </div>\n </div>\n <div data-ng-class="{\'hidden\':detail.tab != \'other\'}" class="portlet-body contact-portlet row">\n <div class="col-md-4">\n <!-- START STREET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.street.$touched || forms.general.$submitted) && forms.general.street.$invalid}">\n <label class="control-label">{{\'APPLICATION_STREET\' | translate}}</label>\n <input type="text" name="street" placeholder="{{\'APPLICATION_STREET\' | translate}}" class="form-control" data-ng-model="contact.street"/>\n <span data-ng-show="(forms.general.street.$touched || forms.general.$submitted) && forms.general.street.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END STREET -->\n\n <!-- START POSTALCODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.postalCode.$touched || forms.general.$submitted) && forms.general.postalCode.$invalid}">\n <label class="control-label">{{\'APPLICATION_POSTALCODE\' | translate}}</label>\n <input type="text" name="postalCode" placeholder="{{\'APPLICATION_POSTALCODE\' | translate}}" class="form-control" data-ng-model="contact.postalCode"/>\n <span data-ng-show="(forms.general.postalCode.$touched || forms.general.$submitted) && forms.general.postalCode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END POSTALCODE -->\n\n <!-- START CITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.city.$touched || forms.general.$submitted) && forms.general.city.$invalid}">\n <label class="control-label">{{\'APPLICATION_CITY\' | translate}}</label>\n <input type="text" name="city" placeholder="{{\'APPLICATION_CITY\' | translate}}" class="form-control" data-ng-model="contact.city"/>\n <span data-ng-show="(forms.general.city.$touched || forms.general.$submitted) && forms.general.city.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CITY -->\n </div>\n <div class="col-md-4">\n <!-- START COUNTRY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.country.$touched || forms.general.$submitted) && forms.general.country.$invalid}">\n <label class="control-label">{{\'APPLICATION_COUNTRY\' | translate}}</label>\n <input type="text" name="country" placeholder="{{\'APPLICATION_COUNTRY\' | translate}}" class="form-control" data-ng-model="contact.country"/>\n <span data-ng-show="(forms.general.country.$touched || forms.general.$submitted) && forms.general.country.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END COUNTRY -->\n\n <!-- START DATEOFBIRTH -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.dateOfBirth.$touched || forms.general.$submitted) && forms.general.dateOfBirth.$invalid}">\n <label class="control-label">{{\'APPLICATION_DATEOFBIRTH\' | translate}}</label>\n <input name="dateOfBirth" type="date" placeholder="{{\'APPLICATION_DATEOFBIRTH\' | translate}}" class="form-control date-picker" data-ng-model="contact.dateOfBirth"/>\n <span data-ng-show="(forms.general.dateOfBirth.$touched || forms.general.$submitted) && forms.general.dateOfBirth.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DATEOFBIRTH -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea style="resize: vertical;" type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="contact.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n </div>\n <div class="col-md-4">\n <!-- START URL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.url.$touched || forms.general.$submitted) && forms.general.url.$invalid}">\n <label class="control-label">{{\'APPLICATION_URL\' | translate}}</label>\n <input type="text" name="url" placeholder="{{\'APPLICATION_URL\' | translate}}" class="form-control" data-ng-model="contact.url"/>\n <span data-ng-show="(forms.general.url.$touched || forms.general.$submitted) && forms.general.url.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END URL -->\n\n <!-- START CREATED_BY -->\n <div class="form-group" data-ng-if="contact.id">\n <label class="control-label">{{\'APPLICATION_CREATED_BY\' | translate}}</label>\n <input type="text" name="createdBy" placeholder="{{\'APPLICATION_CREATED_BY\' | translate}}" class="form-control" data-ng-model="contact.User.name" disabled/>\n </div>\n <!-- END CREATED_BY -->\n </div>\n </div>\n </div>\n <button type="submit" class="btn btn-circle green-haze btn-sm" data-ng-disabled="!contact.firstName || !contact.ListId">{{submitButtonLabel}}</button>\n </div>\n <!-- END PORTLET -->\n <!-- BEGIN PORTLET -->\n <div class="portlet light" data-ng-if="customFields.length">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CUSTOM_FIELDS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div data-ng-repeat="customField in customFields">\n <div data-ng-if="customField.type==\'text\'" class="form-group" data-ng-class="{\'has-error\': (forms.general[customField.name].$touched || forms.general.$submitted) && forms.general[customField.name].$invalid}">\n <label class="control-label">{{customField.alias}}</label>\n <input type="text" name="{{customField.name}}" placeholder="{{customField.alias}}" class="form-control" data-ng-model="contact[customField.name]"/>\n <span data-ng-show="(forms.general[customField.name].$touched || forms.general.$submitted) && forms.general[customField.name].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div data-ng-if="customField.type==\'select\'" class="form-group" data-ng-class="{\'has-error\': forms.general[customField.name].$invalid && forms.general.$submitted}">\n <label class="control-label">{{customField.alias}}</label>\n <ui-select data-ng-model="contact[customField.name]" theme="bootstrap" name="{{customField.name}}" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{customField.alias}}">{{$select.selected.value}}</ui-select-match>\n <ui-select-choices repeat="choice.value as choice in customField.values | filter: $select.search">\n <div ng-bind-html="choice.value | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.general[customField.name].$invalid && forms.general.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <button type="submit" class="btn btn-circle green-haze btn-sm" data-ng-disabled="!contact.firstName || !contact.ListId">{{submitButtonLabel}}</button>\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n <div class="tab-pane fade" id="tab_1_2{{contact.id || \'\'}}">\n <!-- BEGIN PORTLET -->\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_LOG\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_2_1" data-toggle="tab">{{ \'APPLICATION_DAILY\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_2_2" data-toggle="tab">{{ \'APPLICATION_HISTORY\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!--BEGIN TABS-->\n <div class="tab-content">\n <div class="tab-pane active" id="tab_2_1">\n <div class="contact-portlet">\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.show === \'phone\'}" data-ng-click="updateLog(\'daily\',\'phone\')">\n <input type="radio" class="toggle">{{\'APPLICATION_PHONES\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.show === \'email\'}" data-ng-click="updateLog(\'daily\',\'email\',\'general\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_EMAILS\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.type === \'inbound\'}" data-ng-click="updateLog(\'daily\',false,false,\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_INBOUND\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-if="log.daily.show==\'phone\'" data-ng-class="{\'active\':log.daily.type === \'outbound\'}" data-ng-click="updateLog(\'daily\',false,\'general\',\'outbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_OUTBOUND\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons" data-ng-if="log.daily.show==\'phone\'">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.detail === \'general\'}" data-ng-click="updateLog(\'daily\',false,\'general\',false)">\n <input type="radio" class="toggle">{{\'APPLICATION_GENERAL\' | translate}}</label>\n <label data-ng-if="log.daily.type===\'inbound\'" class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.daily.detail === \'queue\'}" data-ng-click="updateLog(\'daily\',false,\'queue\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_QUEUES\' | translate}}</label>\n </div>\n </div>\n <div data-ng-if="gridOptionsdaily" ui-grid="gridOptionsdaily" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionsdaily.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n <div class="tab-pane" id="tab_2_2">\n <div class="contact-portlet">\n <div class="actions">\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.show === \'phone\'}" data-ng-click="updateLog(\'history\',\'phone\')">\n <input type="radio" class="toggle">{{\'APPLICATION_PHONES\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.show === \'email\'}" data-ng-click="updateLog(\'history\',\'email\',\'general\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_EMAILS\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.type === \'inbound\'}" data-ng-click="updateLog(\'history\',false,false,\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_INBOUND\' | translate}}</label>\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-if="log.history.show==\'phone\'" data-ng-class="{\'active\':log.history.type === \'outbound\'}" data-ng-click="updateLog(\'history\',false,\'general\',\'outbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_OUTBOUND\' | translate}}</label>\n </div> |\n <div class="btn-group btn-group-devided" data-toggle="buttons" data-ng-if="log.history.show==\'phone\'">\n <label class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.detail === \'general\'}" data-ng-click="updateLog(\'history\',false,\'general\',false)">\n <input type="radio" class="toggle">{{\'APPLICATION_GENERAL\' | translate}}</label>\n <label data-ng-if="log.history.type===\'inbound\'" class="btn btn-transparent grey-salsa btn-circle btn-sm" data-ng-class="{\'active\':log.history.detail === \'queue\'}" data-ng-click="updateLog(\'history\',false,\'queue\',\'inbound\')">\n <input type="radio" class="toggle">{{\'APPLICATION_QUEUES\' | translate}}</label>\n </div>\n </div>\n <div data-ng-if="gridOptionshistory" ui-grid="gridOptionshistory" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptionshistory.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n <!--END TABS-->\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n <!-- END PROFILE CONTENT -->\n </form>\n</div>\n </div>\n</div>\n'), -a.put("app/main/template/template.jscriptyTab.html",'<div class="portlet light bordered">\n <!-- BEGIN PORTLET BODY -->\n <div class="portlet-body">\n <div class="row">\n <!-- BEGIN SIDEBAR -->\n <div class="profile-sidebar" style="width: 250px;">\n <!-- PORTLET MAIN -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li ng-repeat= \'question in questions track by $index\' ng-class="{active: $index == count}">\n <a ng-click="setCurrentQuestion($index)" >\n <i class="fa fa-check"></i> <label ng-if="attribute.nodeName == \'label\'" ng-repeat=\'attribute in question.value.attributes track by $index\'>{{attribute.value}}</label>\n </a>\n </li>\n </ul>\n </div>\n <!-- END SIDEBAR MENU -->\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END SIDEBAR -->\n <div class="profile-content">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-edit font-green-sharp"></i>\n <span ng-if="attribute.nodeName ==\'label\'" ng-repeat=\'attribute in currentQuestion.value.attributes\' class="caption-subject">{{attribute.value}} </span>\n </div>\n\n </div>\n <div class="portlet-body form ">\n <div class="row">\n <div class="col-md-10 col-md-offset-1 ">\n <form >\n <div class="form-body" style="height: 400px; overflow-y: auto;overflow-x:hidden">\n\n <!-- Question -->\n <div class="form-group" style="word-wrap: break-word;" >\n <h3 ng-if="attribute.nodeName ==\'question\' || attribute.nodeName ==\'text\'" ng-repeat=\'attribute in currentQuestion.value.attributes\'>{{attribute.value}}</h3>\n </div>\n <!-- Buttons -->\n\n <div ng-if ="(edge.source.id == currentQuestion.id) && edge.value" ng-repeat=\'edge in currentQuestion.edges track by $index\' class="row">\n <div class="col-md-8 col-md-offset-2">\n <input checked="checked" type="radio" ng-model="currentQuestion.button" ng-value="edge" >\n <label ng-show="(edge.source.id == currentQuestion.id) && edge.value">{{edge.value}}</label><br><br>\n </div>\n </div>\n <!-- Question Other Option -->\n\n <div class="form-group" ng-if= "attribute.nodeName ==\'other\' && attribute.value " ng-repeat=\'attribute in currentQuestion.value.attributes track by $index\'>\n <br>\n <div class="col-md-2">\n <label class="control-label">{{attribute.value}}</label>\n </div>\n <div class="col-md-8">\n <textarea style="overflow:auto" ng-model="currentQuestion.otheranswer" placeholder="Enter text" rows="8" cols="40" ></textarea>\n </div>\n </div>\n <!-- Inputs -->\n <div class="row margin-top-10" ng-repeat=\'question in currentQuestion.children track by $index\'>\n <div class="col-md-10 col-md-offset-1">\n <div ng-repeat=\'attribute in question.value.attributes track by $index\'>\n <div ng-switch="attribute.nodeName">\n <div ng-class="col-md-2" ng-switch-when="label">\n <label class="control-label" style=" display:block;word-break:break-all;" >{{attribute.value}}</label>\n </div>\n <div ng-class="attribute.value != \'checkbox\' ? \'col-md-10 pull-right\': \'col-md-2\'" ng-switch-when="type" ng-switch="attribute.value">\n <input class="form-control" ng-switch-when="text" type="text" ng-model="question.answer" />\n <input class="form-control" ng-switch-when="number" type="number" ng-model="question.answer" />\n <input class=" pull-right" ng-switch-when="checkbox" type="checkbox" ng-model="question.answer" />\n <!-- ng-true-value="\'Selected\'" ng-false-value="\'Not Selected\'" -->\n <textarea class="form-control" ng-switch-when="textarea" ng-model="question.answer" rows="8" cols="40"></textarea>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- actions -->\n <div class="form-actions">\n <div ng-switch="attribute.nodeName" class="btn-set pull-left">\n <button class="btn red-haze " ng-click="end()">\n <span class="fa fa-times" > Close</span>\n </button>\n <!-- <button class="btn red-haze " ng-click="end()">\n <span ng-if="attribute.nodeName ==\'end\'" ng-repeat=\'attribute in currentQuestion.value.attributes\' class="fa fa-times" > Finish</span>\n </button> -->\n <button class="btn blue-haze" ng-show="count" ng-click="back()"><span class="glyphicon glyphicon-chevron-left"></span>Back</button>\n </div>\n <div class="btn-set pull-right">\n <button ng-show=" currentQuestion.button" class="btn blue-hoki" ng-click="next(currentQuestion.button.target, currentQuestion.button.value)">Next<span class="glyphicon glyphicon-chevron-right" ></span></button>\n <button ng-repeat=\'edge in currentQuestion.edges track by $index\' ng-show="(edge.source.id == currentQuestion.id) && !edge.value" class="btn blue-hoki" ng-click="next(edge.target)">Next<span class="glyphicon glyphicon-chevron-right" ></span></button>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- END PORTLET BODY -->\n</div>\n'),a.put("app/main/template/template.notification.html",'<div class="ui-notification custom-template">\n <h3 ng-show="title" ng-bind-html="title"></h3>\n <div class="message" ng-bind-html="message"></div>\n <div class="message">\n <a class="btn btn-success btn-primary close-notification" ng-click="nAccept()"><i class="glyphicon glyphicon-ok"></i> {{acceptBtn}}</a>\n <a class="btn btn-error btn-primary close-notification" ng-click="nReject()"><i class="glyphicon glyphicon-remove"></i> {{rejectBtn}}</a>\n </div>\n</div>\n'),a.put("app/main/template/template.reportBuilderView.html",'<div class="alert alert-warning alert-group">\n <div class="form-inline" data-ng-class="{\'has-error\': forms.report.$submitted && !group.rules.length}">\n <select ng-options="o.name as o.name for o in operators" ng-model="group.operator" class="form-control input-sm"></select>\n <button style="margin-left: 5px" type="button" ng-click="addCondition()" class="btn btn-sm btn-success"><span class="glyphicon glyphicon-plus-sign"></span> {{\'APPLICATION_ADD_CONDITION\' | translate}}</button>\n <button style="margin-left: 5px" type="button" ng-click="addGroup()" class="btn btn-sm btn-success"><span class="glyphicon glyphicon-plus-sign"></span> {{\'APPLICATION_ADD_GROUP\' | translate}}</button>\n <button style="margin-left: 5px" type="button" ng-click="removeGroup()" class="btn btn-sm btn-danger"><span class="glyphicon glyphicon-minus-sign"></span> {{\'APPLICATION_REMOVE_GROUP\' | translate}}</button>\n </div>\n <div class="group-conditions">\n <div ng-repeat="rule in group.rules | orderBy:\'index\'" class="condition">\n <div ng-switch="rule.hasOwnProperty(\'group\')">\n <div ng-switch-when="true">\n <report-builder group="rule.group" fields="fields" forms="forms"></report-builder>\n </div>\n <div ng-switch-default="ng-switch-default">\n <div class="row">\n <div class="col-md-2" data-ng-class="{\'has-error\': forms.report.$submitted && !rule.field}">\n <ui-select data-ng-model="rule.field" theme="bootstrap" dynamic-name="randomName()" required>\n <ui-select-match placeholder="" ><span ng-bind-html="$select.selected.name"></span></ui-select-match>\n <ui-select-choices repeat="field.value as field in fields | filter: $select.search">\n <div ng-bind-html="field.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.report.$submitted && !rule.field" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <ui-select data-ng-model="rule.condition" theme="bootstrap" class="col-md-1" dynamic-name="randomName()">\n <ui-select-match placeholder="">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="condition.name as condition in conditions | filter: $select.search">\n <div ng-bind-html="condition.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <div class="col-md-2 left-margin" data-ng-class="{\'has-error\': forms.report.$submitted && !rule.value}">\n <input type="text" ng-model="rule.value" class="form-control" dynamic-name="randomName()" required/>\n <span data-ng-show="forms.report.$submitted && !rule.value" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <button style="margin-left: 5px" ng-click="removeCondition($index)" class="btn btn-sm btn-danger" type="button"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n'),a.put("app/market/market.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/market">Market Place</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <!-- Our Integration -->\n <div class="headline">\n <h3>Our Integrations</h3>\n </div>\n <div class="row thumbnails" data-ng-repeat="group in groupedIntegration">\n <div class="col-md-3" data-ng-repeat="integration in group">\n <div class="our-integrations">\n <h3> {{integration.name}} <small> {{integration.author}}</small></h3>\n <img data-ng-src="{{integration.logo}}" alt="{{integration.name}}" class="img-responsive"/>\n <div class="integration-info" data-ng-if="!integration.downloading">\n <p>\n {{integration.description}}\n </p>\n <div class="pull-right">\n <a data-ng-disabled="isProgressing" data-ng-if="!integration.active" data-ng-click="installIntegration(integration)" href="#" class="btn btn-xs green-meadow">Install <i class="fa fa-download"></i></a>\n <a data-ng-disabled="isProgressing" data-ng-if="integration.active" data-ng-click="uninstallIntegration(integration)" href="#" class="btn btn-xs red-sunglo">Uninstall <i class="fa fa-trash"></i></a>\n <a href="https://wiki.xcallymotion.com/" class="btn btn-xs grey-cascade" target="_blank">More <i class="fa fa-link"></i></a>\n </div>\n </div>\n <div class="integration-info" data-ng-if="integration.downloading">\n <div>\n <uib-progressbar class="progress-striped active" value="percentage" type="success"><i style="color:black;">{{status}}</i></uib-progressbar>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!--/thumbnails-->\n <!-- //End Meer Our Team -->\n </div>\n</div>\n'),a.put("app/motiondialer/blacklist/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START PHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phone.$touched || form.$submitted) && form.phone.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phone" placeholder="{{\'APPLICATION_PHONE\' | translate}}" class="form-control" data-ng-model="item.phone" required/>\n <span data-ng-show="(form.phone.$touched || form.$submitted) && form.phone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/blacklist/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-doc"></i>\n <a href="#">{{ \'APPLICATION_BLACKLIST\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-doc font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_BLACKLIST\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/info/view/view.about.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ABOUT\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form class="form-horizontal form-row-seperated">\n <div class="form-body">\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Specification</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.SpecificationTitle}} ({{properties.SpecificationVersion}}) - {{properties.SpecificationVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Implementation</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.ImplementationTitle}} ({{properties.ImplementationVersion}}) - {{properties.ImplementationVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Start Time</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.StartTime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Uptime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.Uptime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Operating System</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.OsName}} {{properties.OsVersion}} {{properties.OsArch}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Processors</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.Processors" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">System Start Time</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.SystemStartTime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">System Uptime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.SystemUptime" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">File System</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="Usable: {{properties.FileSystem.Usable | number:2}} Free: {{properties.FileSystem.Free | number:2}} Total: {{properties.FileSystem.Total | number:2}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/info/view/view.details.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_DETAILS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form class="form-horizontal form-row-seperated">\n <div class="form-body">\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Specification Name</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.JavaSpecificationName" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Home</label>\n <div class="col-md-9">\n <input type="text" class="form-control" data-ng-model="properties.JavaHome" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">JavaVm</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaVmName}} ({{properties.JavaVmVersion}} {{properties.JavaVmInfo}}) - {{properties.JavaVmVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="Java ({{properties.JavaVersion}} {{properties.JavaClassVersion}}) - {{properties.JavaVendor}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Runtime</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaRuntimeName}} ({{JavaRuntimeVersion}})" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Java Rmi Server Hostname</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.JavaRmiServerHostname}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">User</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.UserName}} {{properties.UserLanguage}}-{{properties.UserCountry}} {{properties.UserTimezone}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">User Home</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.UserHome}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n <!-- START -->\n <div class="form-group">\n <label class="control-label col-md-3">Hostname</label>\n <div class="col-md-9">\n <input type="text" class="form-control" value="{{properties.Hostname}}" disabled/>\n <span class="help-block">\n </span>\n </div>\n </div>\n <!-- END -->\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/info/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getProperties()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-info"></i>\n <a href="/motiondialer/info/view/properties">{{ \'APPLICATION_INFO\' | translate }}</a>\n <i data-ng-show="variable" class="fa fa-angle-right"></i>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ \'APPLICATION_INFO\' | translate }}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.info.view.about\')}">\n <a data-ng-href="/motiondialer/info/view/about">\n <i class="icon-globe"></i>\n {{ \'APPLICATION_ABOUT\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.info.view.details\')}">\n <a data-ng-href="/motiondialer/info/view/details">\n <i class="icon-support"></i>\n {{ \'APPLICATION_DETAILS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/list/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_LIST\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_LISTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LISTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LIST\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/motiondialer/list/view/view.contact.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START PHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phones.$touched || form.$submitted) && form.phones.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="phones" placeholder="{{\'APPLICATION_PHONES\' | translate}}" class="form-control" data-ng-model="item.phones" required/>\n <span data-ng-show="(form.phones.$touched || form.$submitted) && form.phones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span class="help-block">\n <p>Insert one or multiple phones separated by commas, for example:</p>\n <p>0123455678, 3456785673, 2345667899</p>\n </span>\n </div>\n <!-- END PHONES -->\n\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">Timezone</label><br>\n <select ng-model="item.timezone">\n <option value="">--</option>\n <optgroup ng-repeat="timezone in timezones" label="{{timezone.group}}">\n <option ng-repeat="zone in timezone.zones" value="{{zone.value}}">{{zone.name}}</option>\n </optgroup>\n </select>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/view/view.contact.import.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONTACT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}</label>\n <ui-select data-ng-model="item.name" theme="bootstrap" name="name" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_NAME\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END NAME -->\n\n <!-- START PHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.phones.$touched || form.$submitted) && form.phones.$invalid}">\n <label class="control-label">{{\'APPLICATION_PHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.phones" theme="bootstrap" name="phones" data-ng-disabled="disabled" required>\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_PHONE\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.phones.$touched || form.$submitted) && form.phones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PHONES -->\n\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">Timezone</label><br>\n <select ng-model="item.timezone">\n <option value="">--</option>\n <optgroup ng-repeat="timezone in timezones" label="{{timezone.group}}">\n <option ng-repeat="zone in timezone.zones" value="{{zone.value}}">{{zone.name}}</option>\n </optgroup>\n </select>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <ui-select data-ng-model="item.description" theme="bootstrap" name="description" data-ng-disabled="disabled">\n <ui-select-match allow-clear placeholder="{{ \'APPLICATION_DESCRIPTION\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="index in indexes | filter: $select.search">\n <div ng-bind-html="index | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n <!-- START PROGRESS -->\n <div>\n <p>{{\'APPLICATION_IMPORT_SUCCEEDED\' | translate}}: {{import.succeeded}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': import.success + \'%\' }"></div>\n </div>\n </div>\n <div>\n <p>{{\'APPLICATION_IMPORT_FAILED\' | translate}}: {{import.failed}}/{{csvLength}}</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-danger" role="progressbar" ng-style="{ \'width\': import.fail + \'%\' }"></div>\n </div>\n </div>\n <!-- END PROGRESS -->\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="start()" ng-disabled="form.$invalid || !form.phones || submitted">{{ \'APPLICATION_SUBMIT\' | translate }}</button>\n <button class="btn default" type="button" ng-click="close()" data-ng-if="!importing">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="stop()" data-ng-if="importing">{{ \'APPLICATION_STOP\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/list/view/view.contacts.html",'<div class="row" data-ng-init="getContacts()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_CONTACTS\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <div class="btn-group">\n <button class="btn green-jungle margin-bottom-10" ng-click="createContact()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n <span class="btn default btn-file">\n <span class="fileinput-new"><i class="icon-cloud-upload"></i> {{\'APPLICATION_IMPORT_FROM_CSV\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader"/>\n </span>\n </div>\n\n <!-- <div class="btn-group">\n <button class="btn green-jungle" data-ng-click="newContact();">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONTACT\' | translate }}\n </button>\n\n </div> -->\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/list/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getList()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-doc"></i>\n <a href="/motiondialer/lists/list">{{ \'APPLICATION_LISTS\' | translate }}</a>\n <i data-ng-show="list.name" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="list.name">\n <a href="#">{{list.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{list.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.lists.view.settings\')}">\n <a data-ng-href="/motiondialer/lists/view/{{list.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.lists.view.contacts\')}">\n <a data-ng-href="/motiondialer/lists/view/{{list.id}}/contacts">\n <i class="icon-people"></i>\n {{ \'APPLICATION_CONTACTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/list/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_LIST\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_general" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START GENERAL TAB -->\n <div class="tab-pane active" id="tab_general">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateList()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="list.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="list.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/process/list/list.create.queue.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROCESS\' | translate }} {{\'APPLICATION_QUEUE\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" ng-init="initModal()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.list.$touched || form.$submitted) && form.list.$invalid}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="list" class="form-control" data-ng-model="item.list" ng-options="list.name for list in lists" required>\n </select>\n <span data-ng-show="(form.list.$touched || form.$submitted) && form.list.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n <!-- START QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.queue.$touched || form.$submitted) && form.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="queue" class="form-control" data-ng-model="item.queue" ng-options="queue.name for queue in queues" required>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n <!-- START TIMEOUT QUEUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.timeout.$touched || form.$submitted) && form.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="timeout" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}}" class="form-control" data-ng-model="item.timeout" required/>\n <span data-ng-show="(form.timeout.$touched || form.$submitted) && form.timeout.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.timeout.$error.max || form.timeout.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MAX RETRIES -->\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="device" class="form-control" data-ng-model="item.device" ng-options="trunk.name for trunk in trunks" required>\n <option value="fake">{{\'APPLICATION_SELECT\' | translate}} {{\'APPLICATION_TRUNK\' | translate}}</option>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n <!-- START FETCH SORT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FETCH_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="fetch_sort" class="form-control" data-ng-model="item.fetch_sort" ng-options="fetch_sort for fetch_sort in [\'ASC\', \'DESC\']" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_FETCH_SORT\' | translate}}</span>\n </div>\n <!-- END FETCH SORT-->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/list/list.create.square.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROCESS\' | translate }} {{\'APPLICATION_CALLYSQUARE\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form name="form" ng-init="initModal()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START LIST -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.list.$touched || form.$submitted) && form.list.$invalid}">\n <label class="control-label">{{\'APPLICATION_LIST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="list" class="form-control" data-ng-model="item.list" ng-options="list.name for list in lists" required>\n </select>\n <span data-ng-show="(form.list.$touched || form.$submitted) && form.list.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END LIST -->\n <!-- START PROJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.project.$touched || form.$submitted) && form.project.$invalid}">\n <label class="control-label">{{\'APPLICATION_PROJECT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="project" class="form-control" data-ng-model="item.project" ng-options="project.name for project in projects" required>\n </select>\n <span data-ng-show="(form.project.$touched || form.$submitted) && form.project.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PROJECT -->\n <!-- START TRUNK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="device" class="form-control" data-ng-model="item.device" ng-options="trunk.name for trunk in trunks" required>\n <option value="fake">{{\'APPLICATION_SELECT\' | translate}} {{\'APPLICATION_TRUNK\' | translate}}</option>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUNK -->\n <!-- START FETCH SORT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_FETCH_SORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="fetch_sort" class="form-control" data-ng-model="item.fetch_sort" ng-options="fetch_sort for fetch_sort in [\'ASC\', \'DESC\']" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_FETCH_SORT\' | translate}}</span>\n </div>\n <!-- END FETCH SORT-->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_PROCESSES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROCESSES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <button class="btn green-jungle dropdown-toggle" data-toggle="dropdown" data-close-others="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROCESS\' | translate }}\n </button>\n <ul class="dropdown-menu pull-right">\n <li>\n <a href="#" ng-click="createProcessQueue()">{{ \'APPLICATION_QUEUE\' | translate }}</a>\n </li>\n <li>\n <a href="#" ng-click="createProcessSquare()">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/motiondialer/process/view/view.create.interval.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_INTERVAL\' | translate }} </h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.monthsNumber | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.monthsNumber | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getProcess()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-control-forward"></i>\n <a href="#">Motion Dialer</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/motiondialer/processes/list">{{ \'APPLICATION_PROCESSES\' | translate }}</a>\n <i data-ng-show="process.name" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="process.name">\n <a href="#">{{process.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/account.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{process.name}} ({{ (process.status === \'RUN\') ? \'RUNNING...\' : \'STOPPED\' }})\n </div>\n <div class="profile-usertitle-job">\n <a href="/motiondialer/lists/view/{{process.id_list}}/settings">{{ \'APPLICATION_LIST\' | translate}} #{{process.id_list}} ({{process.fetch_sort}})</a>\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <div class="profile-userbuttons">\n <button data-ng-show="process.status" type="button" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': process.status == \'STOP\', \'red-sunglo\': process.status == \'RUN\'}" data-ng-click="runOrStop()">{{ (process.status === \'RUN\') ? \'STOP\' : \'RUN\' }}</button>\n </div>\n <div class="profile-userbuttons">\n <button style="cursor:default" data-ng-show="process.runtime" type="button" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': process.runtime.completed, \'yellow-crusta\': !process.runtime.completed}">{{process.runtime.completed ? \'Complete\' : \'Incomplete\'}}</button>\n <button style="cursor:default" class="btn btn-circle btn-sm" data-ng-class="{\'green-meadow\': !process.runtime.outOfTime, \'red-sunglo\': process.runtime.outOfTime}"><i data-ng-class="{\'icon-clock\': !process.runtime.outOfTime, \'icon-close\': process.runtime.outOfTime}"></i> {{process.runtime.outOfTime ? \'Out of time\' : \'On time\'}}</button>\n </div>\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.overview\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/overview">\n <i class="icon-home"></i>\n {{ \'APPLICATION_OVERVIEW\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.settings\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.intervals\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/intervals">\n <i class="icon-clock"></i>\n {{ \'APPLICATION_INTERVALS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.motiondialer.processes.view.spooler\')}">\n <a data-ng-href="/motiondialer/processes/view/{{process.id}}/spooler">\n <i class="icon-options-vertical"></i>\n {{ \'APPLICATION_SPOOLER\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/motiondialer/process/view/view.intervals.html",'<div class="row" data-ng-init="initIntervals()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-clock theme-font"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROCESS\' | translate}} {{ \'APPLICATION_INTERVALS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_allow" data-toggle="tab">{{ \'APPLICATION_ALLOW\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_disallow" data-toggle="tab">{{ \'APPLICATION_DISALLOW\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- ALLOW TAB -->\n <div class="tab-pane active" id="tab_allow">\n <button class="btn green-jungle margin-bottom-10" ng-click="createInterval(true)">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }} ({{ \'APPLICATION_ALLOW\' | translate }})\n </button>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_ACTIONS\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="interval in process.intervals track by $index">\n <td>\n {{interval}}\n </td>\n <td>\n <button href="javascript:;" data-ng-click="editInterval(true, interval)" class="btn blue-hoki btn-sm"> {{ \'APPLICATION_EDIT\' | translate}} </button>\n <button data-ng-click="deleteInterval(interval, $index, true)" class="btn red-sunglo btn-sm"> {{ \'APPLICATION_DELETE\' | translate}} </button>\n </td>\n </tr>\n <tr ng-show="!process.intervals.length"><td colspan=2>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</td></tr>\n </tbody>\n </table>\n </div>\n <!-- END ALLOW TAB -->\n <!-- DISALLOW TAB -->\n <div class="tab-pane" id="tab_disallow">\n <button class="btn green-jungle margin-bottom-10" ng-click="createInterval(false)">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }} ({{ \'APPLICATION_DISALLOW\' | translate }})\n </button>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_ACTIONS\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="interval in process.not_intervals track by $index">\n <td>\n {{interval}}\n </td>\n <td>\n <button href="javascript:;" data-ng-click="editInterval(false, interval)" class="btn blue-hoki btn-sm"> {{ \'APPLICATION_EDIT\' | translate}} </button>\n <button href="javascript:;" data-ng-click="deleteInterval($index, interval, false)" class="btn red-sunglo btn-sm"> {{ \'APPLICATION_DELETE\' | translate}} </button>\n </td>\n </tr>\n <tr ng-show="!process.not_intervals.length"><td colspan=2>{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</td></tr>\n </tbody>\n </table>\n\n </div>\n <!-- END DISALLOW TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/motiondialer/process/view/view.overview.html",'<div class="row" data-ng-init="getSummary()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET -->\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-bar-chart theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_OVERVIEW\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_summary" data-toggle="tab">{{ \'APPLICATION_SUMMARY\' | translate}}</a>\n </li>\n <li ng-show="process.runtime">\n <a href="#" data-target="#tab_advanced" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START SUMMARY TAB -->\n <div class="tab-pane active" id="tab_summary">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <div class="row number-stats margin-bottom-30">\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-left">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_TOTAL\' | translate}}\n </div>\n <div class="number">\n {{total}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-right">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_FRESH\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.fresh || 0}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th>\n {{\'APPLICATION_STATUS\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_RATE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tr ng-repeat="sum in summary">\n <td>\n <a href="#" class="primary-link">{{\'APPLICATION_TD_\' + sum[0] | translate}}</a>\n </td>\n <td>\n {{sum[1]}}\n </td>\n <td>\n <span class="bold theme-font">{{ total ? ((sum[1]/total)*100).toFixed(2) : 0 }}%</span>\n </td>\n <td>\n {{\'DESCRIPTION_TD_\' + sum[0] | translate}}\n </td>\n </tr>\n </table>\n </div>\n </div>\n <!-- END SUMMARY TAB -->\n <!-- START SUMMARY TAB -->\n <div class="tab-pane" id="tab_advanced" ng-show="process.runtime">\n <div class="row number-stats margin-bottom-30">\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-left">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_SUCCESS\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.success || 0}}\n </div>\n </div>\n </div>\n </div>\n <div class="col-md-6 col-sm-6 col-xs-6">\n <div class="stat-right">\n <div class="stat-number">\n <div class="title">\n {{\'APPLICATION_FAILED\' | translate}}\n </div>\n <div class="number">\n {{process.runtime.failed || 0}}\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th>\n {{\'APPLICATION_STATUS\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{\'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tr ng-repeat="(key, value) in process.runtime">\n <td>\n <a href="#" class="primary-link">{{\'APPLICATION_\' + key.toUpperCase() | translate}}</a>\n </td>\n <td ng-switch on="key">\n <span ng-switch-when="avgDial">{{value | number:2}}</span>\n <span ng-switch-when="avgDuration">{{value | number:2}}</span>\n <span ng-switch-when="avgProgress">{{value | number:2}}</span>\n <span ng-switch-when="completed">{{((value)? \'APPLICATION_YES\' : \'APPLICATION_NO\') | translate}}</span>\n <span ng-switch-when="outOfTime">{{((value)? \'APPLICATION_YES\' : \'APPLICATION_NO\') | translate}}</span>\n <span ng-switch-default>{{value}}</span>\n </td>\n <td>\n {{\'DESCRIPTION_TD_\' + key.toUpperCase() | translate}}\n </td>\n </tr>\n </table>\n </div>\n </div>\n <!-- END SUMMARY TAB -->\n </div>\n </div>\n </div>\n <!-- END PORTLET -->\n </div>\n</div>\n'),a.put("app/motiondialer/process/view/view.run.process.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_STATUS\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>\n Do you want to {{ status }} the process?\n </p>\n</div>\n<div class="modal-footer">\n <button class="btn default green-meadow" type="button" ng-click="yes()">{{ \'APPLICATION_YES\' | translate }}</button>\n <button class="btn default" type="button" ng-click="no()">{{ \'APPLICATION_NO\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.settings.html",'<div class="row" data-ng-init="initSettings()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROCESS\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_general" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_channel" data-toggle="tab">{{ \'APPLICATION_CHANNEL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_advanced" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_status" data-toggle="tab">{{ \'APPLICATION_STATUS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_general">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="process.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START QUEUE -->\n <div data-ng-show="process.queue != \'none\'" class="form-group" data-ng-class="{\'has-error\': (form.queue.$touched || form.$submitted) && form.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUEUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="queue" class="form-control" data-ng-model="queue" ng-options="queue.name for queue in queues track by queue.name" required>\n </select>\n <span data-ng-show="(form.queue.$touched || form.$submitted) && form.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUEUE -->\n <!-- START MAX RETRIES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.max_retries.$touched || form.$submitted) && form.max_retries.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAX_RETRIES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" max="10" name="max_retries" placeholder="{{\'APPLICATION_MAX_RETRIES\' | translate}}" class="form-control" data-ng-model="process.max_retries" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_MAX_RETRIES\' | translate}}</span>\n <span data-ng-show="(form.max_retries.$touched || form.$submitted) && form.max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.max_retries.$error.max || form.max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MAX RETRIES -->\n <!-- START RETRY TIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.retry_time.$touched || form.$submitted) && form.retry_time.$invalid}">\n <label class="control-label">{{\'APPLICATION_RETRY_TIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="retry_time" placeholder="{{\'APPLICATION_RETRY_TIME\' | translate}}" class="form-control" data-ng-model="process.retry_time" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_RETRY_TIME\' | translate}}</span>\n <span data-ng-show="(form.retry_time.$touched || form.$submitted) && form.retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.retry_time.$error.max || form.retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END RETRY TIME -->\n <!-- START RETRY TIME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.wait_time.$touched || form.$submitted) && form.wait_time.$invalid}">\n <label class="control-label">{{\'APPLICATION_WAIT_TIME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1000" name="wait_time" placeholder="{{\'APPLICATION_WAIT_TIME\' | translate}}" class="form-control" data-ng-model="process.wait_time" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_WAIT_TIME\' | translate}}</span>\n <span data-ng-show="(form.wait_time.$touched || form.$submitted) && form.wait_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.wait_time.$error.max || form.wait_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END WAIT TIME -->\n <!-- START AUTO CLOSED -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_CLOSED\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.auto_closed"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_AUTO_CLOSED\' | translate}}</span>\n </div>\n <!-- END AUTO CLOSED -->\n <!-- START WEIGHT -->\n <!-- END WEIGHT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTODIAL_LEVEL\' | translate}}</label></br>\n <slider ng-model="process.weight" min="0" step="1" max="50"></slider>\n <label>{{\'APPLICATION_VALUE\' | translate}}: {{process.weight}}</label>\n <span class="help-block">{{\'DESCRIPTION_TD_WEIGHT\' | translate}}</span>\n </div>\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="process.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- CHANNEL TAB -->\n <div class="tab-pane" id="tab_channel">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.context.$touched || form.$submitted) && form.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="context" placeholder="{{\'APPLICATION_CONTEXT\' | translate}}" class="form-control" data-ng-model="process.context" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CONTEXT\' | translate}}</span>\n <span data-ng-show="(form.context.$touched || form.$submitted) && form.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n <!-- START EXTENSION -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.extension.$touched || form.$submitted) && form.extension.$invalid}">\n <label class="control-label">{{\'APPLICATION_EXTENSION\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="extension" placeholder="{{\'APPLICATION_EXTENSION\' | translate}}" class="form-control" data-ng-model="process.extension" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENSION\' | translate}}</span><a href="/channels/voice/routes/internal/list">Link {{\'APPLICATION_INTERNAL\' | translate}}</a>\n <span data-ng-show="(form.extension.$touched || form.$submitted) && form.extension.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EXTENSION -->\n <!-- START PRIORITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.priority.$touched || form.$submitted) && form.priority.$invalid}">\n <label class="control-label">{{\'APPLICATION_PRIORITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="priority" placeholder="{{\'APPLICATION_PRIORITY\' | translate}}" class="form-control" data-ng-model="process.priority" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_PRIORITY\' | translate}}</span>\n <span data-ng-show="(form.priority.$touched || form.$submitted) && form.priority.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.priority.$error.max || form.priority.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY -->\n <!-- START PREFIX -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_PREFIX\' | translate}}</label>\n <input type="text" name="prefix_code" placeholder="{{\'APPLICATION_PREFIX\' | translate}}" class="form-control" data-ng-model="process.prefix_code"/>\n <span class="help-block">{{\'DESCRIPTION_TD_PREFIX\' | translate}}</span>\n </div>\n <!-- END PREFIX -->\n <!-- START TECHNOLOGY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TECHNOLOGY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="tech" class="form-control" data-ng-model="process.tech" ng-options="tech for tech in techs" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_TECHNOLOGY\' | translate}}</span>\n </div>\n <!-- END TECHNOLOGY -->\n <!-- START DEVICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.device.$touched || form.$submitted) && form.device.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUNK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="device" placeholder="{{\'APPLICATION_TRUNK\' | translate}}" class="form-control" data-ng-model="process.device" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_TRUNK\' | translate}}</span>\n <span data-ng-show="(form.device.$touched || form.$submitted) && form.device.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DEVICE -->\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.callerid.$touched || form.$submitted) && form.callerid.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLERID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="callerid" placeholder="{{\'APPLICATION_CALLERID\' | translate}}" class="form-control" data-ng-model="process.callerid" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CALLERID\' | translate}}</span>\n <span data-ng-show="(form.callerid.$touched || form.$submitted) && form.callerid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple data-ng-model="process.codecs" name="codecs" theme="bootstrap" data-ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="codec in codecs">\n {{codec}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END CODEC -->\n <!-- START DIAL FORMAT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DIAL_FORMAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="dial_format" class="form-control" data-ng-model="process.dial_format" ng-options="dial_format for dial_format in dialFormats" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_DIAL_FORMAT\' | translate}}</span>\n </div>\n <!-- END DIAL FORMAT -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANNEL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_advanced">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <!-- START CHECK DUPLICATE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_DUPLICATE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <select name="check_duplicate" class="form-control" data-ng-model="process.check_duplicate" ng-options="check_duplicate for check_duplicate in checkDuplicates" required>\n </select>\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_DUPLICATE\' | translate}}</span>\n </div>\n <!-- END CHECK DUPLICATE -->\n <!-- START CHECK BLACKLIST -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_BLACKLIST\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.check_blacklist"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_BLACKLIST\' | translate}}</span>\n </div>\n <!-- END CHECK BLACKLIST -->\n <!-- START CHECK PHONE LENGHT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.check_phone_length.$touched || form.$submitted) && form.check_phone_length.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHECK_PHONE_LENGHT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="check_phone_length" placeholder="{{\'APPLICATION_CHECK_PHONE_LENGHT\' | translate}}" class="form-control" data-ng-model="process.check_phone_length" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_PHONE_LENGHT\' | translate}}</span>\n <span data-ng-show="(form.check_phone_length.$touched || form.$submitted) && form.check_phone_length.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.check_phone_length.$error.max || form.check_phone_length.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END CHECK PHONE LENGHT -->\n <!-- START TIME SLICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.time_slice.$touched || form.$submitted) && form.time_slice.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIME_SLICE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="time_slice" placeholder="{{\'APPLICATION_TIME_SLICE\' | translate}}" class="form-control" data-ng-model="process.time_slice" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_TIME_SLICE\' | translate}}</span>\n <span data-ng-show="(form.time_slice.$touched || form.$submitted) && form.time_slice.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.time_slice.$error.max || form.time_slice.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END TIME SLICE -->\n <!-- START MISSED -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHECK_MISSED\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.missed"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_CHECK_MISSED\' | translate}}</span>\n </div>\n <!-- END MISSED -->\n <!-- START CHANNEL LIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel_limit.$touched || form.$submitted) && form.channel_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHANNEL_LIMIT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="channel_limit" placeholder="{{\'APPLICATION_CHANNEL_LIMIT\' | translate}}" class="form-control" data-ng-model="process.channel_limit" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_CHANNEL_LIMIT\' | translate}}</span>\n <span data-ng-show="(form.channel_limit.$touched || form.$submitted) && form.channel_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.channel_limit.$error.max || form.channel_limit.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END CHANNEL LIMIT -->\n <!-- START CONTEXT FOR OTHER CALLS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CONTEXT_FOR_OTHER_CALLS\' | translate}}</label>\n <input type="text" name="context_for_other_calls" placeholder="{{\'APPLICATION_CONTEXT_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.context_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_CONTEXT_FOR_OTHER_CALLS\' | translate}}</span>\n </div>\n <!-- END CONTEXT FOR OTHER CALLS -->\n <!-- START EXTENSION FOR OTHER CALLS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXTENSION_FOR_OTHER_CALLS\' | translate}}</label>\n <input type="text" name="extension_for_other_calls" placeholder="{{\'APPLICATION_EXTENSION_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.extension_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENSION_FOR_OTHER_CALLS\' | translate}}</span>\n </div>\n <!-- END EXTENSION FOR OTHER CALLS-->\n <!-- START PRIORITY FOR OTHER CALLS-->\n <div class="form-group" data-ng-class="{\'has-error\': (form.priority_for_other_calls.$touched || form.$submitted) && form.priority_for_other_calls.$invalid}">\n <label class="control-label">{{\'APPLICATION_PRIORITY_FOR_OTHER_CALLS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="priority_for_other_calls" placeholder="{{\'APPLICATION_PRIORITY_FOR_OTHER_CALLS\' | translate}}" class="form-control" data-ng-model="process.priority_for_other_calls"/>\n <span class="help-block">{{\'DESCRIPTION_TD_PRIORITY_FOR_OTHER_CALLS\' | translate}}</span>\n <span data-ng-show="form.priority_for_other_calls.$error.max || form.priority_for_other_calls.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END PRIORITY FOR OTHER CALLS -->\n <!-- START TIMEZONE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXTENDED_TIME_INTERVAL\' | translate}}</label>\n <input type="text" name="timezone" placeholder="08:30-20:30" class="form-control" data-ng-model="process.timezone"/>\n <span class="help-block">{{\'DESCRIPTION_TD_EXTENDED_TIME_INTERVAL\' | translate}}</span>\n </div>\n <!-- END TIMEZONE -->\n\n <!-- START AUTO TIMEZONE MANAGEMENT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_TIMEZONE_MANAGEMENT\' | translate}}</label></br>\n <input\n bs-switch\n data-ng-model="process.auto_timezone_management"\n type="checkbox"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-animate="false">\n <span class="help-block">{{\'DESCRIPTION_TD_AUTO_TIMEZONE_MANAGEMENT\' | translate}}</span>\n </div>\n <!-- END AUTO TIMEZONE MANAGEMENT -->\n <!-- START IGNORE STRINGS-->\n <!-- COMMENTED: BECAUSE IGNORE_STRINGS IS AN ARRAY NOT A STRING-->\n <!-- <div class="form-group">\n <label class="control-label">{{\'APPLICATION_IGNORE_STRINGS\' | translate}}</label>\n <input type="text" name="ignore_strings" placeholder="{{\'APPLICATION_IGNORE_STRINGS\' | translate}}" class="form-control" data-ng-model="process.ignore_strings"/>\n <span class="help-block">{{\'DESCRIPTION_TD_IGNORE_STRINGS\' | translate}}</span>\n </div> -->\n <!-- END IGNORE STRINGS-->\n <!-- START MIN OPERATOR -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.min_operator.$touched || form.$submitted) && form.min_operator.$invalid}">\n <label class="control-label">{{\'APPLICATION_MIN_OPERATOR\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="min_operator" placeholder="{{\'APPLICATION_MIN_OPERATOR\' | translate}}" class="form-control" data-ng-model="process.min_operator" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_MIN_OPERATOR\' | translate}}</span>\n <span data-ng-show="(form.min_operator.$touched || form.$submitted) && form.min_operator.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.min_operator.$error.max || form.min_operator.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END MIN OPERATOR -->\n <!-- START ALERT MAX CALLS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.alert_max_calls.$touched || form.$submitted) && form.alert_max_calls.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALERT_MAX_CALLS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="alert_max_calls" placeholder="{{\'APPLICATION_ALERT_MAX_CALLS\' | translate}}" class="form-control" data-ng-model="process.alert_max_calls" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_ALERT_MAX_CALLS\' | translate}}</span>\n <span data-ng-show="(form.alert_max_calls.$touched || form.$submitted) && form.alert_max_calls.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.alert_max_calls.$error.max || form.alert_max_calls.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END ALERT MAX CALLS -->\n <!-- START ALERT TIME SLICE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.alert_time_slice.$touched || form.$submitted) && form.alert_time_slice.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALERT_TIME_SLICE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="alert_time_slice" placeholder="{{\'APPLICATION_ALERT_TIME_SLICE\' | translate}}" class="form-control" data-ng-model="process.alert_time_slice" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_ALERT_TIME_SLICE\' | translate}}</span>\n <span data-ng-show="(form.alert_time_slice.$touched || form.$submitted) && form.alert_time_slice.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.alert_time_slice.$error.max || form.alert_time_slice.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END ALERT TIME SLICE -->\n <!-- START DROP MAX COUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.drop_max_count.$touched || form.$submitted) && form.drop_max_count.$invalid}">\n <label class="control-label">{{\'APPLICATION_DROP_MAX_COUNT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="drop_max_count" placeholder="{{\'APPLICATION_DROP_MAX_COUNT\' | translate}}" class="form-control" data-ng-model="process.drop_max_count" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_DROP_MAX_COUNT\' | translate}}</span>\n <span data-ng-show="(form.drop_max_count.$touched || form.$submitted) && form.drop_max_count.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_max_count.$error.max || form.drop_max_count.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END DROP MAX COUNT -->\n <!-- START SUCCESS CALL SIZE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.success_call_size.$touched || form.$submitted) && form.success_call_size.$invalid}">\n <label class="control-label">{{\'APPLICATION_SUCCESS_CALL_SIZE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="success_call_size" placeholder="{{\'APPLICATION_SUCCESS_CALL_SIZE\' | translate}}" class="form-control" data-ng-model="process.success_call_size" required/>\n <span class="help-block">{{\'DESCRIPTION_TD_SUCCESS_CALL_SIZE\' | translate}}</span>\n <span data-ng-show="(form.success_call_size.$touched || form.$submitted) && form.success_call_size.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.success_call_size.$error.max || form.success_call_size.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END SUCCESS CALL SIZE -->\n <!-- START IGNORE STRINGS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_TIME_EXPIRED\' | translate}}</label>\n <input type="text" name="expiredtime" placeholder="yyyy-MM-dd HH:mm:ss" class="form-control" data-ng-model="process.expiredtime"/>\n <span class="help-block">{{\'DESCRIPTION_TD_TIME_EXPIRED\' | translate}}</span>\n </div>\n <!-- END IGNORE STRINGS-->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ANDVANCED TAB -->\n <!-- START STATUS TAB -->\n <div class="tab-pane" id="tab_status">\n <form name="form" data-ng-submit="form.$valid && updateProcess()" novalidate>\n <table class="table table-bordered table-hover">\n <thead>\n <tr role="row" class="heading">\n <th>\n {{ \'APPLICATION_VALUE\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_MAX_RETRIES\' | translate}}\n </th>\n <th>\n {{ \'APPLICATION_RETRY_TIME\' | translate}} [min]\n </th>\n <th>\n {{ \'APPLICATION_DESCRIPTION\' | translate}}\n </th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <td>\n {{ \'APPLICATION_AMD\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="amd_max_retries"class="form-control" data-ng-model="process.amd_max_retries" required/>\n <span data-ng-show="(form.amd_max_retries.$touched || form.$submitted) && form.amd_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.amd_max_retries.$error.max || form.amd_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="amd_retry_time" class="form-control" data-ng-model="process.amd_retry_time" required/>\n <span data-ng-show="(form.amd_retry_time.$touched || form.$submitted) && form.amd_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.amd_retry_time.$error.max || form.amd_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_AMD\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_BUSY\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="busy_max_retries"class="form-control" data-ng-model="process.busy_max_retries" required/>\n <span data-ng-show="(form.busy_max_retries.$touched || form.$submitted) && form.busy_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.busy_max_retries.$error.max || form.busy_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="busy_retry_time"class="form-control" data-ng-model="process.busy_retry_time" required/>\n <span data-ng-show="(form.busy_retry_time.$touched || form.$submitted) && form.busy_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.busy_retry_time.$error.max || form.busy_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_BUSY\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_CONGESTION\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="congestion_max_retries"class="form-control" data-ng-model="process.congestion_max_retries" required/>\n <span data-ng-show="(form.congestion_max_retries.$touched || form.$submitted) && form.congestion_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.congestion_max_retries.$error.max || form.congestion_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="congestion_retry_time"class="form-control" data-ng-model="process.congestion_retry_time" required/>\n <span data-ng-show="(form.congestion_retry_time.$touched || form.$submitted) && form.congestion_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.congestion_retry_time.$error.max || form.congestion_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_CONGESTION\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_DROP\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="drop_max_retries"class="form-control" data-ng-model="process.drop_max_retries" required/>\n <span data-ng-show="(form.drop_max_retries.$touched || form.$submitted) && form.drop_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_max_retries.$error.max || form.drop_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="drop_retry_time"class="form-control" data-ng-model="process.drop_retry_time" required/>\n <span data-ng-show="(form.drop_retry_time.$touched || form.$submitted) && form.drop_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.drop_retry_time.$error.max || form.drop_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_DROP\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_FAILED\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="failed_max_retries"class="form-control" data-ng-model="process.failed_max_retries" required/>\n <span data-ng-show="(form.failed_max_retries.$touched || form.$submitted) && form.failed_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.failed_max_retries.$error.max || form.failed_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="failed_retry_time"class="form-control" data-ng-model="process.failed_retry_time" required/>\n <span data-ng-show="(form.failed_retry_time.$touched || form.$submitted) && form.failed_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.failed_retry_time.$error.max || form.failed_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_FAILED\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_NOANSWER\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="noanswer_max_retries"class="form-control" data-ng-model="process.noanswer_max_retries" required/>\n <span data-ng-show="(form.noanswer_max_retries.$touched || form.$submitted) && form.noanswer_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.noanswer_max_retries.$error.max || form.noanswer_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="noanswer_retry_time"class="form-control" data-ng-model="process.noanswer_retry_time" required/>\n <span data-ng-show="(form.noanswer_retry_time.$touched || form.$submitted) && form.noanswer_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.noanswer_retry_time.$error.max || form.noanswer_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_NOANSWER\' | translate}}\n </td>\n </tr>\n <tr>\n <td>\n {{ \'APPLICATION_NOSUCHEXTENSION\' | translate}}\n </td>\n <td>\n <input type="number" min="0" name="nosuchextension_max_retries"class="form-control" data-ng-model="process.nosuchextension_max_retries" required/>\n <span data-ng-show="(form.nosuchextension_max_retries.$touched || form.$submitted) && form.nosuchextension_max_retries.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.nosuchextension_max_retries.$error.max || form.nosuchextension_max_retries.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n <input type="number" min="0" name="nosuchextension_retry_time"class="form-control" data-ng-model="process.nosuchextension_retry_time" required/>\n <span data-ng-show="(form.nosuchextension_retry_time.$touched || form.$submitted) && form.nosuchextension_retry_time.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.nosuchextension_retry_time.$error.max || form.nosuchextension_retry_time.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </td>\n <td>\n {{ \'DESCRIPTION_TD_STATUS_NOSUCHEXTENSION\' | translate}}\n </td>\n </tr>\n </tbody>\n </table>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END STATUS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/motiondialer/process/view/view.spooler.history.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_HISTORY\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <json-formatter json="historySpooler" open="2"></json-formatter>\n</div>\n<div class="modal-footer">\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CLOSE\' | translate }}</button>\n</div>\n'),a.put("app/motiondialer/process/view/view.spooler.html",'<div class="row" data-ng-init="getSpooler()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_SPOOLER\' | translate}} </span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- BEGIN UI-GRID SPINNER -->\n <span us-spinner spinner-key="spinner-grid" spinner-start-active="true"></span>\n <!-- END UI-GRID SPINNER -->\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/salesforce/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-cloud font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SALESFORCE\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/salesforce/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/salesforce/view/configuration/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.name.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.name.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START CHANNEL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel.$touched || form.channel.$submitted) && form.channel.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CHANNEL\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="channel.value as channel in channels | filter: $select.search">\n <div data-ng-bind="channel.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.channel.$touched || form.channel.$submitted) && form.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START CHANNEL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/salesforce/view/configuration/list/list.html",'<div ui-view class="profile-content">\r\n <div class="row">\r\n <div class="col-md-12">\r\n <div class="portlet light" data-ng-init="initView()">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'),a.put("app/salesforce/view/configuration/view/view.html",'<div class="row" data-ng-init="initView();getConfiguration();getCustomVariables();getFields();">\r\n <div class="col-md-12">\r\n <div class="portlet light">\r\n <div class="portlet-title tabbable-line">\r\n <div class="caption caption-md">\r\n <i class="icon-globe theme-font hide"></i>\r\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\r\n </div>\r\n <ul class="nav nav-tabs">\r\n <li class="active">\r\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\r\n </li>\r\n <li>\r\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\r\n </li>\r\n <li>\r\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class="portlet-body">\r\n <div class="tab-content">\r\n <!-- SUBJECT TAB -->\r\n <div class="tab-pane ui-padding active" id="tab_1_1">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">All following fields will be join by blank space:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'subject\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="subject-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\r\n <div class="col-md-3">\r\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.variableName" data-ng-change="updateField(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-8" data-ng-if="subjectItem.type==\'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END SUBJECT TAB -->\r\n <!-- DESCRIPTION TAB -->\r\n <div class="tab-pane ui-padding" id="tab_1_2">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">All following fields will be join by new line:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'description\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="description-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\r\n <div class="col-md-2">\r\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in descFieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\r\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\r\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'string\'">\r\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.variableName" data-ng-change="updateField(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END DESCRIPTION TAB -->\r\n <!-- FIELDS TAB -->\r\n <div class="tab-pane ui-padding" id="tab_1_3">\r\n <div class="row">\r\n <div class="col-md-11">\r\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\r\n </div>\r\n <div class="col-md-1 pull-rigth">\r\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'field\')"><i class="fa fa-plus"></i></button>\r\n </div>\r\n </div>\r\n <hr>\r\n <!-- <div id="field-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\r\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\r\n <div class="col-md-3">\r\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\r\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\r\n <div ng-bind-html="item.label | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\r\n <div class="form-group">\r\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\r\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\r\n <div ng-bind-html="item.label | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\r\n <div class="form-group">\r\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\r\n <div ng-bind-html="item.title | highlight: $select.search | ucfirst"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\r\n <div class="form-group">\r\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.variableName" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\r\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\r\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'customVariable\'">\r\n <div class="form-group">\r\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\r\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\r\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\r\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\r\n </ui-select-choices>\r\n </ui-select>\r\n </div>\r\n </div>\r\n <div class="col-md-1">\r\n <div class="form-group">\r\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- </div> -->\r\n </div>\r\n <!-- END FIELDS TAB -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'),a.put("app/salesforce/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CLIENT ID -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientId.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_ID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientId" placeholder="{{\'APPLICATION_CLIENT_ID\' | translate}}" class="form-control" data-ng-model="account.clientId" required/>\n <span data-ng-show="forms.formSetting.clientId.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT ID -->\n\n <!-- START CLIENT SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientSecret.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientSecret" placeholder="{{\'APPLICATION_CLIENT_SECRET\' | translate}}" class="form-control" data-ng-model="account.clientSecret" required/>\n <span data-ng-show="forms.formSetting.clientSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT SECRET -->\n\n <!-- START SECURITY TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.securityToken.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECURITY_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="securityToken" placeholder="{{\'APPLICATION_SECURITY_TOKEN\' | translate}}" class="form-control" data-ng-model="account.securityToken" required/>\n <span data-ng-show="forms.formSetting.securityToken.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECURITY TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/salesforce/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/salesforce.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.salesforce.view.account\')}">\n <a ng-href="/salesforce/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.salesforce.view.configurations\') || $state.is(\'main.salesforce.view.configuration\')}">\n <a ng-href="/salesforce/view/{{account.id}}/configurations/list">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/salesforce/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-cloud"></i>\n <a href="/salesforce/list">{{ \'APPLICATION_SALESFORCE\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/salesforce/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START CLIENT ID -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientId.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_ID\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientId" placeholder="{{\'APPLICATION_CLIENT_ID\' | translate}}" class="form-control" data-ng-model="item.clientId" required/>\n <span data-ng-show="forms.formSetting.clientId.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT ID -->\n\n <!-- START CLIENT SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.clientSecret.$invalid}">\n <label class="control-label">{{\'APPLICATION_CLIENT_SECRET\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="clientSecret" placeholder="{{\'APPLICATION_CLIENT_SECRET\' | translate}}" class="form-control" data-ng-model="item.clientSecret" required/>\n <span data-ng-show="forms.formSetting.clientSecret.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CLIENT SECRET -->\n\n <!-- START SECURITY TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.securityToken.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECURITY_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="securityToken" placeholder="{{\'APPLICATION_SECURITY_TOKEN\' | translate}}" class="form-control" data-ng-model="item.securityToken" required/>\n <span data-ng-show="forms.formSetting.securityToken.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECURITY TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/setting/license/view/update.modal.html",'<div class="modal-header" data-ng-init="getLicense()">\n <h3 class="modal-title">{{ \'APPLICATION_UPDATE_LICENSE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START LICENSE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_LICENSE\' | translate}}</label>\n <textarea type="text" style="min-height:95px;" name="description" placeholder="{{\'APPLICATION_LICENSE\' | translate}}" class="form-control" data-ng-model="item.license"></textarea>\n </div>\n <!-- END LICENSE -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="update()" ng-disabled="form.$invalid">{{ \'APPLICATION_UPDATE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/license/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div\n class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-info"></i>\n <a href="#">{{ \'APPLICATION_LICENSE\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <div class="row">\n <div class="col-md-6">\n <div class="pricing hover-effect">\n <div class="pricing-head" data-ng-switch="license.months">\n <h3 ng-switch-when="1">{{\'APPLICATION_MONTH_TO_MONTH\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-when="12">{{\'APPLICATION_YEARLY\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-when="36">{{\'APPLICATION_PERPETUAL\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h3 ng-switch-default>{{\'APPLICATION_UNKNOWN\' | translate}}<span>{{license.token || \'unknown\'}} </span></h3>\n <h4><i>{{license.expiration ? (license.expiration | date:\'medium\') : \'DEMO\'}}</i>\n <span data-ng-show="license.expiration">Expiration Date </span>\n </h4>\n </div>\n <ul class="pricing-content list-unstyled">\n <li class="row">\n <div class="col-md-9">\n <i class="icon-eye"></i> {{\'APPLICATION_USERS\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n {{(license.users || license.users >= 0) ? license.users : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-people"></i> {{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}}):\n </div>\n <div class="col-md-3 text-center">\n {{(license.agents || license.agents >= 0) ? license.agents : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-phone"></i> {{\'APPLICATION_TELEPHONES\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n {{(license.telephones || license.telephones >= 0) ? license.telephones : \'unknown\'}}\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-bubble"></i> {{\'APPLICATION_CHAT\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.chat ? \'label-success\' : \'label-danger\'">{{license.chat ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-envelope"></i> {{\'APPLICATION_MAIL\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.mail ? \'label-success\' : \'label-danger\'">{{license.mail ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-paper-plane"></i> {{\'APPLICATION_FAX\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.fax ? \'label-success\' : \'label-danger\'">{{license.fax ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="glyphicon glyphicon-comment"></i> {{\'APPLICATION_SMS\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.messaging ? \'label-success\' : \'label-danger\'">{{license.messaging ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-notebook"></i> {{\'APPLICATION_CONTACT_MANAGER\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.cm ? \'label-success\' : \'label-danger\'">{{license.cm ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-control-forward"></i> {{\'APPLICATION_MOTION_DIALER\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.dialer ? \'label-success\' : \'label-danger\'">{{license.dialer ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="fa fa-edit"></i> {{\'APPLICATION_JSCRIPTY\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.jscripty ? \'label-success\' : \'label-danger\'">{{license.jscripty ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n <li class="row">\n <div class="col-md-9">\n <i class="icon-cloud-download"></i> {{\'APPLICATION_UPDATE\' | translate}}:\n </div>\n <div class="col-md-3 text-center">\n <span class="label label-sm" data-ng-class="license.update ? \'label-success\' : \'label-danger\'">{{license.update ? \'APPLICATION_ENABLED\' : \'APPLICATION_DISABLED\' | translate}}</span>\n </div>\n </li>\n </ul>\n <div class="pricing-footer">\n <p>\n {{license.description}}\n </p>\n <a href="#" class="btn yellow-crusta">\n {{\'APPLICATION_PRICES\' | translate}} <i class="m-icon-swapright m-icon-white"></i>\n </a>\n <a href="#" class="btn purple-plum" data-ng-click="updateLicense()">\n {{\'APPLICATION_UPDATE\' | translate}} <i class="icon-refresh m-icon-white"></i>\n </a>\n </div>\n </div>\n </div>\n <div class="col-md-6">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-info font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_LICENSE_REQUEST\' | translate }}</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="form" novalidate data-ng-submit="submitRequest()">\n\n <!-- START USERS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.users.$touched || form.$submitted) && form.users.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERS\' | translate}}</label>\n <div class="input-icon">\n <i class="icon-eye"></i>\n <input type="number" name="users" placeholder="{{\'APPLICATION_USERS\' | translate}}" class="form-control" data-ng-model="item.users" min="0" required>\n </div>\n <span data-ng-show="(form.users.$touched || forms.$submitted) && form.users.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERS -->\n\n <!-- START AGENTS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.agents.$touched || form.$submitted) && form.agents.$invalid}">\n <label class="control-label">{{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}})</label>\n <div class="input-icon">\n <i class="icon-people"></i>\n <input type="number" name="agents" placeholder="{{\'APPLICATION_AGENTS\' | translate}} ({{\'APPLICATION_CONCURRENTS\' | translate}})" class="form-control" data-ng-model="item.agents" min="0" required>\n </div>\n <span data-ng-show="(form.users.$touched || forms.$submitted) && form.users.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END AGENTS -->\n\n <!-- START TELEPHONES -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.telephones.$touched || form.$submitted) && form.telephones.$invalid}">\n <label class="control-label">{{\'APPLICATION_TELEPHONES\' | translate}}</label>\n <div class="input-icon">\n <i class="icon-phone"></i>\n <input type="number" name="telephones" placeholder="{{\'APPLICATION_TELEPHONES\' | translate}}" class="form-control" data-ng-model="item.telephones" min="0" required>\n </div>\n <span data-ng-show="(form.telephones.$touched || forms.$submitted) && form.telephones.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TELEPHONES -->\n\n <!-- START CHAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.chat.$touched || form.$submitted) && form.chat.$invalid}">\n <label class="control-label">{{\'APPLICATION_CHAT\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-bubble"></i>\n <input type="text" placeholder="{{\'APPLICATION_CHAT\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="chat" data-ng-model="item.chat">\n </span>\n </div>\n <span data-ng-show="(form.chat.$touched || forms.$submitted) && form.chat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CHAT -->\n\n <!-- START MAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.mail.$touched || form.$submitted) && form.mail.$invalid}">\n <label class="control-label">{{\'APPLICATION_MAIL\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-envelope"></i>\n <input type="text" placeholder="{{\'APPLICATION_MAIL\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="mail" data-ng-model="item.mail">\n </span>\n </div>\n <span data-ng-show="(form.mail.$touched || forms.$submitted) && form.mail.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MAIL -->\n\n <!-- START FAX -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.fax.$touched || form.$submitted) && form.fax.$invalid}">\n <label class="control-label">{{\'APPLICATION_FAX\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-paper-plane"></i>\n <input type="text" placeholder="{{\'APPLICATION_FAX\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="fax" data-ng-model="item.fax">\n </span>\n </div>\n <span data-ng-show="(form.fax.$touched || forms.$submitted) && form.fax.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FAX -->\n\n <!-- START SMS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.messaging.$touched || form.$submitted) && form.messaging.$invalid}">\n <label class="control-label">{{\'APPLICATION_SMS\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="glyphicon glyphicon-comment"></i>\n <input type="text" placeholder="{{\'APPLICATION_SMS\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="messaging" data-ng-model="item.messaging">\n </span>\n </div>\n <span data-ng-show="(form.messaging.$touched || forms.$submitted) && form.messaging.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SMS -->\n\n <!-- START CM -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.cm.$touched || form.$submitted) && form.cm.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTACT_MANAGER\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-notebook"></i>\n <input type="text" placeholder="{{\'APPLICATION_CONTACT_MANAGER\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="cm" data-ng-model="item.cm">\n </span>\n </div>\n <span data-ng-show="(form.cm.$touched || forms.$submitted) && form.cm.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CM -->\n\n <!-- START DIALER -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.dialer.$touched || form.$submitted) && form.dialer.$invalid}">\n <label class="control-label">{{\'APPLICATION_MOTION_DIALER\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-control-forward"></i>\n <input type="text" placeholder="{{\'APPLICATION_MOTION_DIALER\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="dialer" data-ng-model="item.dialer">\n </span>\n </div>\n <span data-ng-show="(form.dialer.$touched || forms.$submitted) && form.dialer.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DIALER -->\n\n <!-- START JSCRITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.jscripty.$touched || form.$submitted) && form.jscripty.$invalid}">\n <label class="control-label">{{\'APPLICATION_JSCRIPTY\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="fa fa-edit"></i>\n <input type="text" placeholder="{{\'APPLICATION_JSCRIPTY\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="jscripy" data-ng-model="item.jscripty">\n </span>\n </div>\n <span data-ng-show="(form.jscripty.$touched || forms.$submitted) && form.jscripty.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END JSCRIPTY -->\n\n <!-- START UPDATE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.update.$touched || form.$submitted) && form.update.$invalid}">\n <label class="control-label">{{\'APPLICATION_UPDATE\' | translate}}</label>\n <div class="input-group input-icon">\n <i class="icon-cloud-download"></i>\n <input type="text" placeholder="{{\'APPLICATION_UPDATE\' | translate}}" class="form-control" readonly>\n <span class="input-group-addon">\n <input type="checkbox" name="update" data-ng-model="item.update">\n </span>\n </div>\n <span data-ng-show="(form.update.$touched || forms.$submitted) && form.update.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END UPDATE -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_SUBMIT\' | translate}} {{\'APPLICATION_REQUEST\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n </div>\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/network/view/externip/externip.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body" data-ng-init="initModal()">\n <form name="form" novalidate>\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.address.$touched || form.$submitted) && form.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.value" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/network/view/externip/externip.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row">\r\n <div class="col-md-12">\r\n <!-- BEGIN Portlet PORTLET-->\r\n <div class="portlet light bordered" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-globe font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_EXTERNIP\' | translate }}</a> </span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_EXTERNIP\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/network/view/localnet/localnet.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{title}}</h3>\n</div>\n<div class="modal-body" data-ng-init="initModal()">\n <form name="form" novalidate>\n\n <!-- START ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.address.$touched || form.$submitted) && form.address.$invalid}">\n <label class="control-label">{{\'APPLICATION_ADDRESS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="address" placeholder="{{\'APPLICATION_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.address" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.address.$touched || form.$submitted) && form.address.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END ADDRESS -->\n\n <!-- START MASK -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.mask.$touched || form.$submitted) && form.mask.$invalid}">\n <label class="control-label">{{\'APPLICATION_MASK\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="mask" placeholder="{{\'APPLICATION_MASK\' | translate}}" class="form-control" data-ng-model="item.mask" required data-ng-pattern="/^(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(.(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})){3}$/"/>\n <span data-ng-show="(form.mask.$touched || form.$submitted) && form.mask.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.mask.$touched || form.$submitted) && form.mask.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END MASK -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/setting/network/view/localnet/localnet.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row">\r\n <div class="col-md-12">\r\n <!-- BEGIN Portlet PORTLET-->\r\n <div class="portlet light bordered" data-ng-init="initView()">\r\n <div class="portlet-title">\r\n <div class="caption font-green-sharp">\r\n <i class="icon-desktop font-green-sharp"></i>\r\n <span class="caption-subject">{{ \'APPLICATION_LOCALNET\' | translate }}</a> </span>\r\n </div>\r\n <div class="actions">\r\n <div class="btn-group" data-ng-show="id.length">\r\n <a class="btn red" href="#" data-ng-click="deleteItems()">\r\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\r\n </a>\r\n </div>\r\n <div class="btn-group">\r\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\r\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_LOCALNET\' | translate }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n <div class="portlet-body">\r\n <!-- START TABLE -->\r\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\r\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\r\n </div>\r\n <!-- END TABLE -->\r\n </div>\r\n </div>\r\n <!-- END Portlet PORTLET-->\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/network/view/view.html",'<!-- BEGIN PAGE CONTENT-->\r\n<div class="row" data-ng-init="initView()">\r\n <div class="col-md-12">\r\n <div class="page-bar">\r\n <ul class="page-breadcrumb">\r\n <li>\r\n <i class="icon-rocket"></i>\r\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-settings"></i>\r\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\r\n <i class="fa fa-angle-right"></i>\r\n </li>\r\n <li>\r\n <i class="icon-globe"></i>\r\n <a href="#">{{ \'APPLICATION_NETWORK\' | translate }}</a>\r\n </li>\r\n </ul>\r\n </div>\r\n\r\n <!-- BEGIN PROFILE SIDEBAR -->\r\n <div class="profile-sidebar">\r\n <!-- PORTLET MAIN -->\r\n <div class="portlet light profile-sidebar-portlet">\r\n <!-- SIDEBAR USERPIC -->\r\n <div class="profile-image">\r\n <img src="assets/images/media/business.png" class="img-responsive">\r\n </div>\r\n <!-- END SIDEBAR USERPIC -->\r\n <!-- SIDEBAR USER TITLE -->\r\n <div class="profile-usertitle">\r\n <div class="profile-usertitle-name">\r\n {{ \'APPLICATION_NETWORK\' | translate }}\r\n </div>\r\n </div>\r\n <!-- END SIDEBAR USER TITLE -->\r\n <!-- SIDEBAR MENU -->\r\n <div class="profile-usermenu">\r\n <ul class="nav">\r\n <li data-ng-class="{active: $state.is(\'main.setting.network.view.localnet\')}">\r\n <a ng-href="/setting/network/view/localnet">\r\n <i class="icon-desktop"></i>\r\n {{ \'APPLICATION_LOCALNET\' | translate }} </a>\r\n </li>\r\n <li data-ng-class="{active: $state.is(\'main.setting.network.view.externip\')}">\r\n <a ng-href="/setting/network/view/externip">\r\n <i class="icon-globe"></i>\r\n {{ \'APPLICATION_EXTERNIP\' | translate }} </a>\r\n </li>\r\n </ul>\r\n </div>\r\n <!-- END MENU -->\r\n </div>\r\n <!-- END PORTLET MAIN -->\r\n </div>\r\n <!-- END BEGIN PROFILE SIDEBAR -->\r\n <!-- BEGIN PROFILE CONTENT -->\r\n <div ui-view class="profile-content">\r\n </div>\r\n <!-- END PROFILE CONTENT -->\r\n\r\n </div>\r\n</div>\r\n<!-- END PAGE CONTENT-->\r\n'),a.put("app/setting/smtp/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-envelope"></i>\n <a href="#">SMTP</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE CONTENT -->\n <div class="profile-content">\n <ui-select data-ng-model="item.type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'custom\', \'account\'] | filter: $select.search">\n <div ng-bind-html="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n\n <!-- START CUSTOM TAB -->\n <form name="custom" data-ng-submit="custom.$valid && updateItem()" ng-slide-down="item.type === \'custom\'" lazy-render duration="1" novalidate>\n\n <hr>\n\n <div data-ng-show="item.account.id">\n <div class="note note-danger" data-ng-show="item.account.state === \'DISCONNECTED\' || item.account.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="item.account.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="item.account.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="item.account.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n </div>\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.host.$touched || custom.$submitted) && custom.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTGOING_MAIL_SERVER\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.account.host" required/>\n <span data-ng-show="(custom.host.$touched || custom.$submitted) && custom.host.$invalid && custom.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.username.$touched || custom.$submitted) && custom.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.account.username" required/>\n <span data-ng-show="(custom.username.$touched || custom.$submitted) && custom.username.$invalid && custom.username.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.password.$touched || custom.$submitted) && custom.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.account.password" required/>\n <span data-ng-show="(custom.password.$touched || custom.$submitted) && custom.password.$invalid && custom.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (custom.port.$touched || custom.$submitted) && custom.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="item.account.port" required/>\n <span data-ng-show="(custom.custom.$touched || custom.$submitted) && custom.port.$invalid && custom.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(custom.port.$touched || custom.$submitted) && custom.port.$invalid && custom.port.$error.number" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_NUMERIC_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START SSL -->\n <div class="form-group row">\n <label class="col-md-2">\n SSL\n </label>\n <label class="col-md-10">\n <input\n bs-switch\n data-ng-model="item.account.ssl"\n type="checkbox"\n switch-active="{{ isActive }}"\n switch-on-text="{{ \'APPLICATION_ENABLED\' | translate }}"\n switch-off-text="{{ \'APPLICATION_DISABLED\' | translate }}"\n switch-on-color="{{ onColor }}"\n switch-off-color="{{ offColor }}"\n switch-animate="{{ animate }}"\n switch-size="{{ size }}"\n switch-label="{{ label }}"\n switch-icon="{{ icon }}"\n switch-radio-off="{{ radioOff }}"\n switch-label-width="{{ labelWidth }}"\n switch-handle-width="{{ handleWidth }}">\n </label>\n </div>\n <!-- END SSL -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" data-ng-show="custom.$valid" data-ng-disabled="smtpDisabled"/>\n <input class="btn blue-madison" type="button" value="Test" data-ng-click="test()" data-ng-show="custom.$valid" data-ng-disabled="smtpDisabled"/>\n </form>\n <!-- END CUSTOM TAB -->\n\n <!-- START CUSTOM TAB -->\n <form name="account" data-ng-init="initMailAccounts()" data-ng-submit="account.$valid && updateItem()" ng-slide-down="item.type === \'account\'" lazy-render duration="1" novalidate>\n\n <hr>\n\n <div data-ng-show="item.account.id">\n <div class="note note-danger" data-ng-show="item.account.state === \'DISCONNECTED\' || item.account.state === \'ERROR\'">\n <p> ERROR </p>\n <json-formatter open="1" json="item.account.source"></json-formatter>\n </div>\n\n <div class="note note-success" data-ng-show="item.account.state === \'CONNECTED\'">\n <p> CONNECTED </p>\n </div>\n\n <div class="note note-info" data-ng-show="item.account.state === \'CONNECTING\'">\n <p> TRYING... </p>\n </div>\n </div>\n\n <!-- START ACCOUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (account.account.$touched || account.$submitted) && account.queue.$invalid}">\n <label class="control-label">{{\'APPLICATION_ACCOUNTS\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.account" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.username}}</ui-select-match>\n <ui-select-choices repeat="server in servers | filter: $select.search">\n <div ng-bind-html="server.username | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(account.queue.$touched || account.$submitted) && account.queue.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" data-ng-disabled="smtpDisabled"/>\n <input class="btn blue-madison" type="button" value="Test" data-ng-click="test()" data-ng-disabled="smtpDisabled"/>\n </form>\n <!-- END SMTP TAB -->\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/setting/update/list/landing.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-cloud-download"></i>\n <a href="#">{{ \'APPLICATION_UPDATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- BEGIN PAGE CONTENT-->\n <div class="row" data-ng-init="initCounter()">\n <div class="col-md-12 page-500">\n <div class="number">\n <timer interval="1000" countdown="120">{{countdown}}</timer>\n </div>\n <div class="details">\n <h3>Wait! We need to restart xCALLY Motion server.</h3>\n <p>\n We are updating it!<br/>\n xCALLY Motion Team<br/><br/>\n </p>\n </div>\n </div>\n </div>\n <!-- END PAGE CONTENT-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/update/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="#">{{ \'APPLICATION_SETTINGS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-cloud-download"></i>\n <a href="#">{{ \'APPLICATION_UPDATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-cloud-download font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_UPDATES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <a class="btn btn-default" href="#" data-ng-click="pull()">\n <i class="icon-cloud-download"></i> {{ \'APPLICATION_UPDATE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body" data-ng-init="initView()">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/setting/update/list/list.pull.html",'<div class="modal-header">\n <button data-ng-if="modal.dismissable" type="button" data-ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p data-ng-if="modal.text" data-ng-bind="modal.text"></p>\n <div data-ng-if="modal.html" data-ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button data-ng-repeat="button in modal.buttons" data-ng-class="button.classes" data-ng-click="button.click($event)" data-ng-bind="button.text" class="btn"></button>\n</div>\n'),a.put("app/square/odbc/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DSN -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.dsn.$touched || form.$submitted) && form.dsn.$invalid}">\n <label class="control-label">{{\'APPLICATION_ODBC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="dsn" placeholder="DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion" class="form-control" data-ng-model="item.dsn" required/>\n <p class="help-block">Es. DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion</p>\n <span data-ng-show="(form.dsn.$touched || form.$submitted) && form.dsn.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DSN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/square/odbc/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_ODBCS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ODBCS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ODBC\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/odbc/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getOdbc()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/square/odbc/list">{{ \'APPLICATION_ODBCS\' | translate }}</a>\n <i data-ng-show="odbc" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="odbc">\n <a href="#">{{odbc.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/odbc.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{odbc.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.square.odbc.view.settings\')}">\n <a data-ng-href="/square/odbc/view/{{odbc.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/odbc/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ODBC\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateOdbc()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="odbc.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DSN -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.odbc.dsn.$touched || forms.odbc.$submitted) && forms.odbc.dsn.$invalid}">\n <label class="control-label">{{\'APPLICATION_ODBC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="dsn" placeholder="{{\'APPLICATION_DSN\' | translate}}" class="form-control" data-ng-model="odbc.dsn" required/>\n <p class="help-block">Es. DRIVER=MySQL;SERVER=127.0.0.1;UID=xcall;PWD=password;DATABASE=motion</p>\n <span data-ng-show="(forms.odbc.dsn.$touched || forms.odbc.$submitted) && forms.odbc.dsn.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DSN -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="odbc.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/square/project/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PROJECT\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/square/project/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="#">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PROJECTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PROJECT\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/project/view/view.html",'<div class="row" data-ng-init="getProject()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a>{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-slack"></i>\n <a href="/square/projects/list">{{ \'APPLICATION_PROJECTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a ng-href="/square/projects/view/{{squareProject.id}}">{{squareProject.name}}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div id="geEditor" class="geEditor"></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n<script>\n\n\n</script>\n'),a.put("app/square/realtime/view/general/general.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="init()">\n <div class="col-md-12">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns class="ui-grid" ui-grid-pagination auto-resize>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/realtime/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a href="#">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-energy"></i>\n <a href="/square/realtime/view/general">{{ \'APPLICATION_REALTIME\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.square.realtime.view.general\')}">\n <a href="/square/realtime/view/general">\n {{\'APPLICATION_GENERAL\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/square/recording/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-superscript"></i>\n <a href="#">{{ \'APPLICATION_CALLYSQUARE\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-microphone"></i>\n <a href="#">{{ \'APPLICATION_RECORDINGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-play font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_RECORDINGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_STAFF\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="#">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-people font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENTS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group" data-ng-show="Auth.getCurrentUser().role === \'admin\'">\n <button type="button" class="btn green-jungle" data-toggle="dropdown" data-hover="dropdown" data-delay="1000" data-close-others="true" aria-expanded="true">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_AGENT\' | translate }} <i class="fa fa-angle-down"></i>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <a href="/staff/agents/wizard">\n Standard\n </a>\n </li>\n <li>\n <a href="/staff/agents/bulk">\n {{ \'APPLICATION_BULK\' | translate }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/view/view.account.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_PERSONAL_INFO\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_AVATAR\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin() || agent.id === Auth.getCurrentUser().id" data-ng-class="{\'active\': !Auth.isAdmin() && agent.id === Auth.getCurrentUser().id}">\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane" data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="agent.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="agent.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="agent.email" required/>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="agent.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START INTERNAL -->\n <!-- <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.internal" required disabled/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div> -->\n <!-- END INTERNAL -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n <!-- CHANGE AVATAR TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_2">\n <form action="#" role="form">\n <div class="form-group">\n <div class="fileinput fileinput-new" data-provides="fileinput">\n <div class="fileinput-new thumbnail" style="width: 200px; height: 150px;">\n <img ng-src="assets/images/media/noProfileImage.png" alt=""/>\n </div>\n <div class="fileinput-preview fileinput-exists thumbnail" style="max-width: 200px; max-height: 150px;">\n </div>\n <div>\n <span class="btn default btn-file" data-ng-show="!uploader.queue[0]">\n <span> {{ \'APPLICATION_SELECT_IMAGE\' | translate }} </span>\n <input type="file" nv-file-select="" uploader="uploader" /><br/>\n </span>\n <button type="button" class="btn default" data-ng-show="uploader.queue[0]" data-dismiss="fileinput" ng-click="uploader.queue[0].remove()">\n {{ \'APPLICATION_REMOVE\' | translate }}\n </button>\n <button type="button" class="btn green-haze" data-ng-show="uploader.queue[0]" data-ng-click="uploader.queue[0].upload()" ng-disabled="uploader.queue[0].isReady || uploader.queue[0].isUploading || uploader.queue[0].isSuccess">\n {{ \'APPLICATION_CONFIRM\' | translate }}\n </button>\n </div>\n <p>\n </br> {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>jpg, png, jpeg</b>.\n </p>\n </div>\n </div>\n </form>\n <div class="row">\n <div class="col-md-2">\n <table class="table" border="0">\n <tbody>\n <tr data-ng-repeat="item in uploader.queue">\n <td style="border-top-style:none">\n <strong>\n {{ item.file.name }}\n </strong>\n </td>\n <td data-ng-show="uploader.isHTML5" nowrap style="border-top-style:none">\n {{ item.file.size/1024/1024|number:2 }} MB\n </td>\n <td nowrap style="border-top-style:none">\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> Remove\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n <!-- END CHANGE AVATAR TAB -->\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin() || agent.id === Auth.getCurrentUser().id" data-ng-class="{\'active\': !Auth.isAdmin() && agent.id === Auth.getCurrentUser().id}" id="tab_1_3">\n <form name="forms.changePwd" data-ng-submit="forms.changePwd.$valid && updatePassword()" novalidate>\n <!-- START CURRENT PWD -->\n <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="agent.reNewPwd" nx-equal="agent.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/staff/agent/view/view.chat.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_CHAT\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="chatCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.chatCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.fax.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_FAX\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="faxCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.faxCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-puzzle"></i>\n <a href="#">{{ \'APPLICATION_STAFF\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/staff/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{agent.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-userpic">\n <img ng-src="api/users/avatar/{{agent.userpic ? agent.userpic : \'unknown_avatar\'}}" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- START SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{agent.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{agent.role}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.account\')}">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.chat\')}" data-ng-show="Auth.isAdmin() && license.chat">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/chat">\n <i class="icon-bubble"></i>\n {{ \'APPLICATION_CHAT\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.mail\')}" data-ng-show="Auth.isAdmin() && license.mail">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/mail">\n <i class="icon-envelope"></i>\n {{ \'APPLICATION_MAIL\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.fax\')}" data-ng-show="Auth.isAdmin() && license.fax">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/fax">\n <i class="icon-paper-plane"></i>\n {{ \'APPLICATION_FAX\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.sms\')}" data-ng-show="Auth.isAdmin() && license.messaging">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/sms">\n <i class=" glyphicon glyphicon-comment "></i>\n {{ \'APPLICATION_SMS\' | translate}} </a>\n </li>\n\n <li data-ng-class="{active: $state.is(\'main.staff.agents.view.motionbar\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/agents/view/{{agent.id}}/motionbar">\n <i class="icon-screen-desktop"></i>\n {{ \'APPLICATION_MOTION_BAR\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/agent/view/view.mail.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_MAIL\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="mailCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.mailCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.motionbar.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_MOTION_BAR\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CALL_FORWARDING\' | translate}}</a>\n </li>\n <li data-ng-show="Auth.isAdmin()">\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- START GENERAL TAB -->\n <div class="tab-pane" data-ng-class="{\'active\': Auth.isAdmin()}" data-ng-show="Auth.isAdmin()" id="tab_1_1">\n <form name="forms.general" data-ng-submit="updateItem()" novalidate>\n\n <!-- START ENABLE_SETTINGS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ENABLE_SETTINGS\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarEnableSettings"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END ENABLE_SETTINGS -->\n\n <!-- START AUTO_ANSWER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_AUTO_ANSWER\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarAutoAnswer"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END AUTO_ANSWER -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- START CALL FORWARDING TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_2">\n <form name="forms.callForwarding" data-ng-submit="updateItem()" novalidate>\n\n <!-- START UNCONDITIONAL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_UNCONDITIONAL\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarUnconditional"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END UNCONDITIONAL -->\n\n\n <!-- START UNCONDITIONAL NUMBER -->\n <div class="form-group" data-ng-if="agent.phoneBarUnconditional" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarUnconditionalNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarUnconditionalNumber.$invalid}">\n <input type="text" name="phoneBarUnconditionalNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarUnconditionalNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarUnconditionalNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarUnconditionalNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END UNCONDITIONAL NUMBER -->\n\n <!-- START NO REPLY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_NO_REPLY\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarNoReply"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END NO REPLY -->\n\n <!-- START NO REPLY -->\n <div class="form-group" data-ng-if="agent.phoneBarNoReply" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarNoReplyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarNoReplyNumber.$invalid}">\n <input type="text" name="phoneBarNoReplyNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarNoReplyNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarNoReplyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarNoReplyNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPLY -->\n\n <!-- START BUSY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_BUSY\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarBusy"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END BUSY -->\n\n <!-- START BUSY NUMBER -->\n <div class="form-group" data-ng-if="agent.phoneBarBusy" data-ng-class="{\'has-error\': (forms.callForwarding.phoneBarBusyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarBusyNumber.$invalid}">\n <input type="text" name="phoneBarBusyNumber" placeholder="{{\'APPLICATION_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.phoneBarBusyNumber" required/>\n <span class="help-block">\n <!-- {{ \'DESCRIPTION_VOICE_HOST\' | translate }} -->\n </span>\n <span data-ng-show="(forms.callForwarding.phoneBarBusyNumber.$touched || forms.callForwarding.$submitted) && forms.callForwarding.phoneBarBusyNumber.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END BUSY NUMBER -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CALL FORWARDING TAB -->\n <!-- START ADVANCED TAB -->\n <div class="tab-pane" data-ng-show="Auth.isAdmin()" id="tab_1_3">\n <form name="forms.advanced" data-ng-submit="updateItem()" novalidate>\n\n <!-- START ENABLE REMOTE CONTROL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REMOTE_CONTROL\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="agent.phoneBarRemoteControl"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END ENABLE REMOTE CONTROL -->\n\n\n <!-- START REMOTE CONTROL PORT -->\n <div class="form-group" data-ng-if="agent.phoneBarRemoteControl" data-ng-class="{\'has-error\': (forms.advanced.phoneBarRemoteControlPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarRemoteControlPort.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_CONTROL\' | translate}} {{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="phoneBarRemoteControlPort" placeholder="{{\'APPLICATION_REMOTE_CONTROL\' | translate}} {{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="agent.phoneBarRemoteControlPort" required/>\n <span class="help-block">Default: 9888</span>\n <span data-ng-show="(forms.advanced.phoneBarRemoteControlPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarRemoteControlPort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarRemoteControlPort.$error.max || form.advanced.phoneBarRemoteControlPort.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}}.\n </span>\n </div>\n <!-- END REMOTE CONTROL PORT -->\n\n <!-- START SIP EXPIRES -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.phoneBarExpires.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarExpires.$invalid}">\n <label class="control-label">SIP {{\'APPLICATION_EXPIRES\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="phoneBarExpires" placeholder="SIP {{\'APPLICATION_EXPIRES\' | translate}}" class="form-control" data-ng-model="agent.phoneBarExpires" required/>\n <span class="help-block">Default: 3600</span>\n <span data-ng-show="(forms.advanced.phoneBarExpires.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarExpires.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarExpires.$error.max || form.advanced.phoneBarExpires.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}} (min 1).\n </span>\n </div>\n <!-- END SIP EXPIRES -->\n\n <!-- START SIP PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.phoneBarListenPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarListenPort.$invalid}">\n <label class="control-label">SIP {{\'APPLICATION_PORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" max="65535" name="phoneBarListenPort" placeholder="SIP {{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="agent.phoneBarListenPort" required/>\n <span class="help-block">Default: 5060</span>\n <span data-ng-show="(forms.advanced.phoneBarListenPort.$touched || forms.advanced.$submitted) && forms.advanced.phoneBarListenPort.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="form.advanced.phoneBarListenPort.$error.max || form.advanced.phoneBarListenPort.$error.min" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_NUMBER\' | translate}} (0-65535).\n </span>\n </div>\n <!-- END SIP PORT -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/agent/view/view.sms.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_SMS\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- START CHAT TAB -->\n <form name="form" data-ng-submit="patchItem()" novalidate>\n <!-- START CAPACITY -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.capacity.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_CAPACITY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="smsCapacity" placeholder="{{\'APPLICATION_CAPACITY\' | translate}}" class="form-control" data-ng-model="agent.smsCapacity" min="0" required/>\n <span class="help-block">\n {{\'MESSAGE_ZERO_MEANS_UNLIMITED\' | translate}}\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CAPACITY -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n <!-- END CHAT TAB -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/staff/agent/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.voice" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.internal.$touched || forms.voice.$submitted) && forms.voice.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="agent.internal" required disabled/>\n <span data-ng-show="(forms.voice.internal.$touched || forms.voice.$submitted) && forms.voice.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="agent.transport" theme="bootstrap">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.host.$touched || forms.voice.$submitted) && forms.voice.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="agent.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_HOST\' | translate }}\n </span>\n <span data-ng-show="(forms.voice.host.$touched || forms.voice.$submitted) && forms.voice.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START NAT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_NAT\' | translate}}</label>\n <ui-select multiple data-ng-model="agent.nat" name="nat" theme="bootstrap">\n <ui-select-match placeholder="{{ \'APPLICATION_SEARCH_FILTER\' | translate }}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="nat in [\'yes\', \'no\', \'never\', \'route\', \'force_rport\', \'comedia\'] | filter: $select.search">\n {{nat}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_NAT\' | translate }}\n </span>\n </div>\n <!-- END NAT -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.voice.type.$touched || forms.voice.$submitted) && forms.voice.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="agent.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_SEARCH_FILTER\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="type in [\'friend\', \'user\', \'peer\'] | filter: $select.search">\n <div ng-bind-html="type | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TYPE\' | translate }}\n </span>\n <span data-ng-show="(forms.voice.type.$touched || forms.voice.$submitted) && forms.voice.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="agent.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_CHANSPY\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="agent.chanspy"\n type="checkbox"\n name="auth"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/staff/agent/wizard/wizard-bulk.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/agents/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal(); item.amount = 2;">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItems()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START AMOUNT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$invalid}">\n <label class="control-label">{{\'APPLICATION_AMOUNT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" name="amount" min="2" placeholder="{{\'APPLICATION_AMOUNT\' | translate}}" class="form-control" data-ng-model="item.amount" required>\n <span data-ng-show="(forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.amount.$touched || forms.info.$submitted) && forms.info.amount.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END AMOUNT -->\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/agent/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-people"></i>\n <a href="/staff/agents/list">{{ \'APPLICATION_AGENTS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/agents/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AGENT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/team/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_TEAM\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/staff/team/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-shield"></i>\n <a href="/staff/teams/list">{{ \'APPLICATION_TEAMS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-shield font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEAMS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TEAM\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/team/view/view.agents.html",'<div class="row" data-ng-init="initAgents()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_AGENTS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <!-- GENERAL TAB -->\n <!-- BEGIN PORTLET-->\n <!-- BEGIN FORM-->\n <form action="index.html" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-team">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n <!-- END PORTLET-->\n <!-- END GENERAL TAB -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/team/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-shield"></i>\n <a href="/staff/teams/list">{{ \'APPLICATION_TEAMS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{team.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img ng-src="assets/images/media/team.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{team.name}}\n </div>\n\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.teams.view.settings\')}">\n <a data-ng-href="/staff/teams/view/{{team.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.teams.view.agents\')}">\n <a data-ng-href="/staff/teams/view/{{team.id}}/agents">\n <i class="icon-people"></i>\n {{ \'APPLICATION_AGENTS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content"></div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/team/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n </div>\n\n <div class="portlet-body">\n <!-- PERSONAL INFO TAB -->\n <div>\n\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="team.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="team.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/telephone/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-phone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TELEPHONES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/staff/telephones/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TELEPHONE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/telephone/view/view.account.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_ACCOUNT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-ng-show="Auth.isAdmin() || item.id === getCurrentTelephone().id" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem() && forms.info.$valid" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" required ng-remote-validate="/api/agents/validate/name"/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}" ng-click="next()"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" id="tab_1_2" data-ng-show="Auth.isAdmin() || item.id === getCurrentTelephone().id">\n <form name="forms.changePwd" data-ng-submit="updateItem() && forms.changePwd.$valid" novalidate>\n <!-- START CURRENT PWD -->\n <!-- <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div> -->\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.reNewPwd" nx-equal="item.password" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/staff/telephone/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{item.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR TELEPHONEPIC -->\n <div class="profile-userpic">\n <img data-ng-src="assets/images/media/telephone.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR TELEPHONEPIC -->\n <!-- SIDEBAR TELEPHONE TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{item.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{item.role}}\n </div>\n </div>\n <!-- END SIDEBAR TELEPHONE TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.telephones.view.account\')}">\n <a data-ng-href="/staff/telephones/view/{{item.id}}/account">\n <i class="icon-phone"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}} </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.telephones.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/telephones/view/{{item.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/telephone/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" required readonly/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n'+" <ui-select-choices repeat=\"allow in ['g729', 'ilbc', 'gsm', 'ulaw', 'alaw'] | filter: $select.search\">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class=\"help-block\">\n {{ 'DESCRIPTION_VOICE_CODEC' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class=\"btn green-haze\" type=\"submit\" value=\"{{'APPLICATION_UPDATE' | translate}}\"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n"),a.put("app/staff/telephone/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-phone"></i>\n <a href="/staff/telephones/list">{{ \'APPLICATION_TELEPHONES\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/staff/telephones/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-phone font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TELEPHONE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" ata-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_VOICE\' | translate}}" canexit="exitValidation(forms.voice.$valid)">\n <form name="forms.voice" novalidate>\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="item.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="item.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="allow in [\'g729\', \'ilbc\', \'gsm\', \'ulaw\', \'alaw\'] | filter: $select.search">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_CODEC\' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/staff/user/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="#">{{ \'APPLICATION_USERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-eye font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_USERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/staff/users/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_USER\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PROFILE\' | translate}} {{ \'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_PERSONAL_INFO\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_CHANGE_AVATAR\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-ng-show="Auth.isAdmin() || user.id === getCurrentUser().id" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_CHANGE_PASSWORD\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- PERSONAL INFO TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="user.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="user.name" required/>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="user.email" required/>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="user.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END PERSONAL INFO TAB -->\n\n <!-- CHANGE AVATAR TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form action="#" role="form">\n <div class="form-group">\n <div class="fileinput fileinput-new" data-provides="fileinput">\n <div class="fileinput-new thumbnail" style="width: 200px; height: 150px;">\n <img ng-src="assets/images/media/noProfileImage.png" alt=""/>\n </div>\n <div class="fileinput-preview fileinput-exists thumbnail" style="max-width: 200px; max-height: 150px;">\n </div>\n <div>\n <span class="btn default btn-file" data-ng-show="!uploader.queue[0]">\n <span> {{ \'APPLICATION_SELECT_IMAGE\' | translate }} </span>\n <input type="file" nv-file-select="" uploader="uploader" /><br/>\n </span>\n <button type="button" class="btn default" data-ng-show="uploader.queue[0]" data-dismiss="fileinput" ng-click="uploader.queue[0].remove()">\n <span> {{ \'APPLICATION_REMOVE\' | translate }} </span>\n </button>\n <button type="button" class="btn green-haze" data-ng-show="uploader.queue[0]" data-ng-click="uploader.queue[0].upload()" ng-disabled="uploader.queue[0].isReady || uploader.queue[0].isUploading || uploader.queue[0].isSuccess">\n <span> {{ \'APPLICATION_CONFIRM\' | translate }} </span>\n </button>\n </div>\n <p>\n </br> {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>jpg, png, jpeg</b>.\n </p>\n </div>\n </div>\n </form>\n <div class="row">\n <div class="col-md-2">\n <table class="table" border="0">\n <tbody>\n <tr data-ng-repeat="item in uploader.queue">\n <td style="border-top-style:none">\n <strong>\n {{ item.file.name }}\n </strong>\n </td>\n <td data-ng-show="uploader.isHTML5" nowrap style="border-top-style:none">\n {{ item.file.size/1024/1024|number:2 }} MB\n </td>\n <td nowrap style="border-top-style:none">\n <button type="button" class="btn btn-danger btn-xs" data-ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> Remove\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n <!-- END CHANGE AVATAR TAB -->\n <!-- CHANGE PASSWORD TAB -->\n <div class="tab-pane" id="tab_1_3" data-ng-show="Auth.isAdmin() || user.id === getCurrentUser().id">\n <form name="forms.changePwd" data-ng-submit="forms.changePwd.$valid && updatePassword()" novalidate>\n <!-- START CURRENT PWD -->\n <div class="form-group" data-ng-if="!Auth.isAdmin()" data-ng-class="{\'has-error\': (forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="current_pwd" placeholder="{{\'APPLICATION_CURRENT_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.currentPwd" required/>\n <span data-ng-show="(forms.changePwd.current_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.current_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CURRENT PWD -->\n <!-- START NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="new_pwd" placeholder="{{\'APPLICATION_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NEW PWD -->\n <!-- START RE-NEW PWD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.changePwd.re_new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.re_new_pwd.$invalid}">\n <label class="control-label">{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="re_new_pwd" placeholder="{{\'APPLICATION_RE_TYPE_NEW_PASSWORD\' | translate}}" class="form-control" data-ng-model="user.reNewPwd" nx-equal="user.newPwd" required/>\n <span data-ng-show="(forms.changePwd.new_pwd.$touched || forms.changePwd.$submitted) && forms.changePwd.new_pwd.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RE-NEW PWD -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CHANGE PASSWORD TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/staff/user/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/staff/users/list">{{ \'APPLICATION_USERS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{user.fullname}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-userpic">\n <img ng-src="api/users/avatar/{{user.userpic ? user.userpic : \'unknown_avatar\'}}" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{user.fullname}}\n </div>\n <div class="profile-usertitle-job">\n {{user.role}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.staff.users.view.account\')}">\n <a data-ng-href="/staff/users/view/{{user.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate}}\n </a>\n </li>\n <li data-ng-class="{active: $state.is(\'main.staff.users.view.voice\')}" data-ng-show="Auth.isAdmin()">\n <a data-ng-href="/staff/users/view/{{user.id}}/voice">\n <i class="icon-earphones-alt"></i>\n {{ \'APPLICATION_VOICE\' | translate}}\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.staff.users.view.permit\')}" data-ng-show="Auth.isAdmin() && user.role === \'user\'">\n <a data-ng-href="/staff/users/view/{{user.id}}/permit/voice">\n <i class="icon-key"></i>\n {{ \'APPLICATION_PERMITS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.chat.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initChatQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.fax.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initFaxQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div>\n <nav class="navbar navbar-default" role="navigation">\n <div class="collapse navbar-collapse">\n <ul class="nav navbar-nav">\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.voice\')}">\n <a href="/staff/users/view/{{user.id}}/permit/voice">\n <i class="icon-earphones-alt"></i> {{\'APPLICATION_VOICE\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.chat\')}">\n <a href="/staff/users/view/{{user.id}}/permit/chat">\n <i class="icon-bubble"></i> {{\'APPLICATION_CHAT\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.mail\')}">\n <a href="/staff/users/view/{{user.id}}/permit/mail">\n <i class="icon-envelope"></i>{{\'APPLICATION_MAIL\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.fax\')}">\n <a href="/staff/users/view/{{user.id}}/permit/fax">\n <i class="icon-paper-plane"></i> {{\'APPLICATION_FAX\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.sms\')}">\n <a href="/staff/users/view/{{user.id}}/permit/sms">\n <i class="glyphicon glyphicon-comment"></i> {{\'APPLICATION_SMS\' | translate}}\n </a>\n </li>\n <li data-ng-class="{\'active\': $state.is(\'main.staff.users.view.permit.modules\')}" data-ng-if="user.role !== \'admin\'">\n <a href="/staff/users/view/{{user.id}}/permit/modules">\n <i class="icon-menu"></i> {{\'APPLICATION_MODULES\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n </nav>\n </div>\n <div ui-view></div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.mail.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initMailQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/staff/user/view/view.permit.modules.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row left-margin" data-ng-init="getModules()">\n <div data-ng-repeat="module in modules" data-ng-if="(module.id === 8 && license.chat) || (module.id === 9 && license.mail) || (module.id === 10 && license.fax) || (module.id === 11 && license.messaging) || !_.includes([8,9,10,11],module.id)">\n <div class="form-group" data-ng-class="{\'left-margin-40\':module.ModuleId}">\n <span data-ng-if="module.ModuleId">└──</span> <input\n bs-switch\n class="form-control"\n ng-model="module.status"\n type="checkbox"\n data-ng-change="updatePermissions(module)"\n switch-active="{{ moduleSwitch.isActive }}"\n switch-on-text="{{ moduleSwitch.onText }}"\n switch-off-text="{{ moduleSwitch.offText }}"\n switch-on-color="{{ moduleSwitch.onColor }}"\n switch-off-color="{{ moduleSwitch.offColor }}"\n switch-animate="{{ moduleSwitch.animate }}"\n switch-size="{{ moduleSwitch.size }}"\n switch-label="{{ moduleSwitch.label }}"\n switch-icon="{{ moduleSwitch.icon }}"\n switch-radio-off="{{ moduleSwitch.radioOff }}"\n switch-label-width="{{ moduleSwitch.labelWidth }}"\n switch-handle-width="{{ moduleSwitch.handleWidth }}">\n <label class="control-label">{{module.name | capitalize}}</label>\n </div>\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.sms.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initSmsQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.permit.voice.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12" data-ng-init="initVoiceQueues()">\n <!-- BEGIN FORM-->\n <form action="#" class="form-horizontal form-row-seperated">\n <div class="form-body">\n <div class="form-group last">\n <div class="col-md-12" id="multi-select-permit">\n </div>\n </div>\n </div>\n </form>\n <!-- END FORM-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/staff/user/view/view.voice.html",'<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_ACCOUNT\' | translate}} {{ \'APPLICATION_VOICE\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="forms.info" data-ng-submit="updateItem()" novalidate>\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="user.internal" required readonly/>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_INTERNAL\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START TRANSPORT -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TRANSPORT\' | translate}}</label>\n <ui-select multiple name="transport" ng-model="user.transport" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select transport...">{{$item}}</ui-select-match>\n <ui-select-choices repeat="transport in [\'udp\', \'tcp\', \'ws\', \'wss\'] | filter: $select.search">\n {{transport}}\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_VOICE_TRANSPORT\' | translate }}\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n <!-- START CODEC -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_ALLOWED_CODECS\' | translate}}</label>\n <ui-select multiple ng-model="user.allow" name="allow" theme="bootstrap" ng-disabled="disabled">\n <ui-select-match placeholder="Select codec...">{{$item}}</ui-select-match>\n'+" <ui-select-choices repeat=\"allow in ['g729', 'ilbc', 'gsm', 'ulaw', 'alaw'] | filter: $select.search\">\n {{allow}}\n </ui-select-choices>\n </ui-select>\n <span class=\"help-block\">\n {{ 'DESCRIPTION_VOICE_CODEC' | translate }}\n </span>\n </div>\n <!-- END CODEC -->\n\n <input class=\"btn green-haze\" type=\"submit\" value=\"{{'APPLICATION_UPDATE' | translate}}\"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n"),a.put("app/staff/user/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/staff/users/list">{{ \'APPLICATION_USERS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="/staff/users/wizard">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="getFirstFreeInternal();">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-user font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_USER\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT\' | translate}}" canexit="exitValidation(forms.info.$valid)">\n <form name="forms.info" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$invalid}">\n <label class="control-label">{{\'APPLICATION_FULLNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="fullname" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.fullname" required/>\n <span data-ng-show="(forms.info.fullname.$touched || forms.info.$submitted) && forms.info.fullname.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required />\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.name.$touched || forms.info.$submitted) && forms.info.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START EMAIL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$invalid}">\n <label class="control-label">{{\'APPLICATION_EMAIL\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL\' | translate}}" class="form-control" data-ng-model="item.email" required />\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.email.$touched || forms.info.$submitted) && forms.info.email.$error.email" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_FORMAT\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="(forms.info.password.$touched || forms.info.$submitted) && forms.info.password.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START RE PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="password" name="rpassword" placeholder="{{\'APPLICATION_CONFIRM_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.rpassword" nx-equal="item.password" required/>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.info.rpassword.$touched || forms.info.$submitted) && forms.info.rpassword.$error.nxEqual" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END RE PASSWORD -->\n\n <!-- START INTERNAL -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$invalid}">\n <label class="control-label">{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <div class="input-group">\n <input type="number" min="1" name="internal" placeholder="{{\'APPLICATION_INTERNAL_NUMBER\' | translate}}" class="form-control" data-ng-model="item.internal" data-ng-disabled="!item.internalEnabled" data-ng-required="item.internalEnabled"/>\n <span class="input-group-addon">\n <input type="checkbox" data-ng-model="item.internalEnabled">\n </span>\n </div>\n <span data-ng-show="(forms.info.internal.$touched || forms.info.$submitted) && forms.info.internal.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INTERNAL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n <input class="btn default" type="button" value="{{\'APPLICATION_BACK\' | translate}}" wz-previous/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/sugarcrm/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-handbag font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SUGARCRM\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/sugarcrm/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END API KEY -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/sugarcrm/view/view.configuration.html",'<div class="row" data-ng-init="initConfiguration()">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CONFIGURATION\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createConfiguration()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="formValidation(formsConfiguration.info.$valid)">\n <form name="formsConfiguration.info" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': formsConfiguration.info.$submitted && formsConfiguration.info.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="configuration.name" required/>\n <span data-ng-show="formsConfiguration.info.name.$invalid && formsConfiguration.info.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="configuration.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/view/view.configurationSettings.html",'<div class="row" data-ng-init="getConfiguration();getVariables();getFields();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemSubject()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemDescription()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <!-- <pre>\n {{descriptionItem|json}}\n </pre> -->\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in descFieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'key_value\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItemField()"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.label}}</ui-select-match>\n <ui-select-choices repeat="item.name as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.label | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected | ucfirst}}</ui-select-match>\n <ui-select-choices repeat="item in fieldType | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/sugarcrm/view/view.configurations.html",'<div ui-view class="profile-content">\n <div class="row" data-ng-init="getConfigurations()">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/sugarcrm/view/{{account.id}}/configuration" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <table class="table table-striped table-bordered table-hover">\n <thead>\n <tr>\n <th>{{\'APPLICATION_NAME\' | translate}}</th>\n <th>{{\'APPLICATION_DESCRIPTION\' | translate}}</th>\n <th>{{ \'APPLICATION_ACTIONS\' | translate }}</th>\n </tr>\n </thead>\n <tbody>\n <tr data-ng-repeat="configuration in configurations">\n <td>{{configuration.name}}</td>\n <td>{{configuration.description}}</td>\n <td>\n <a class="btn default btn-xs blue-stripe" data-ng-href="/sugarcrm/view/{{account.id}}/configurations/settings/{{configuration.id}}">\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n <a class="btn default btn-xs red-stripe" data-ng-click="deleteConfiguration(configuration.name,configuration.id)">\n {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </td>\n </tr>\n <tr data-ng-hide="configurations.length">\n <td colspan="5" style="text-align:center;">\n <i>No configuration available</i>\n </td>\n </tr>\n </tbody>\n </table>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/sugarcrm/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/sugarcrm.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.sugarcrm.view.account\')}">\n <a ng-href="/sugarcrm/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.sugarcrm.view.configurations\') || $state.is(\'main.sugarcrm.view.configuration\')}">\n <a ng-href="/sugarcrm/view/{{account.id}}/configurations">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/sugarcrm/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-handbag"></i>\n <a href="/sugarcrm/list">{{ \'APPLICATION_SUGARCRM\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_USERNAME\' | translate}}" class="form-control" data-ng-model="item.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_REMOTE_ADDRESS\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_REMOTE_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/sugarcrm/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.apiKey.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CANNED_ANSWER\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.key.$touched || form.$submitted) && form.key.$invalid}">\n <label class="control-label">{{\'APPLICATION_KEY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="key" placeholder="{{\'APPLICATION_KEY\' | translate}}" class="form-control" data-ng-model="item.key" required/>\n <span data-ng-show="(form.key.$touched || form.$submitted) && form.key.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.value.$touched || form.$submitted) && form.value.$invalid}">\n <label class="control-label">{{\'APPLICATION_VALUE\' | translate}}<span class="required" aria-required="true">*</span></label></label>\n <textarea type="text" name="value" placeholder="{{\'APPLICATION_VALUE\' | translate}}" class="form-control" data-ng-model="item.value" required></textarea>\n <span data-ng-show="(form.value.$touched || form.$submitted) && form.value.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VALUE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/answer/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magic-wand"></i>\n <a href="#">{{ \'APPLICATION_CANNED_ANSWERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-magic-wand font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_CANNED_ANSWERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CANNED_ANSWER\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getAnswer()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-magic-wand"></i>\n <a href="/tools/answers/list">{{ \'APPLICATION_CANNED_ANSWER\' | translate }}</a>\n <i data-ng-show="answer" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="answer">\n <a href="#">{{answer.key}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/answer.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{answer.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.answers.view.settings\')}">\n <a data-ng-href="/tools/answers/view/{{answer.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/answer/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_CANNED_ANSWER\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateAnswer()" novalidate>\n\n <!-- START KEY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.key.$touched || forms.general.$submitted) && forms.general.key.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="key" placeholder="{{\'APPLICATION_KEY\' | translate}}" class="form-control" data-ng-model="answer.key" required/>\n <span data-ng-show="(forms.general.key.$touched || forms.general.$submitted) && forms.general.key.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END KEY -->\n\n <!-- START VALUE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.value.$touched || forms.general.$submitted) && forms.general.value.$invalid}">\n <label class="control-label">{{\'APPLICATION_VALUE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <textarea type="text" name="value" placeholder="{{\'APPLICATION_VALUE\' | translate}}" class="form-control" data-ng-model="answer.value" required></textarea>\n <span data-ng-show="(forms.general.value.$touched || forms.general.$submitted) && forms.general.value.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END VALUE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="answer.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/automation/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="#">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/automations/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_AUTOMATION\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/automation/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/tools/automations/list">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="automation"></i>\n </li>\n <li data-ng-show="automation">\n <a href="#">{{ automation.description || automation.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/automation.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ automation.name }}\n </div>\n <div class="profile-usertitle-job">\n {{ automation.description }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.automations.view.settings\')}">\n <a href="/tools/automations/view/{{automation.id}}/settings">\n <i class="icon-bulb"></i>\n {{ \'APPLICATION_SETTINGS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/automation/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_CONDITIONS\' | translate}} & {{\'APPLICATION_ACTIONS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!-- <pre>\n {{conditionsData.query | json}}\n </pre>\n <pre>\n {{actionsData.query | json}}\n </pre> -->\n <form name="forms.general" data-ng-submit="exitValidation(forms.general.$valid) && updateAutomation()" novalidate>\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="automation.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIMEOUT -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.timeout.$touched && forms.general.timeout.$invalid}">\n <label class="control-label">{{\'APPLICATION_TIMEOUT\' | translate}} ({{\'APPLICATION_MINUTES\' | translate}})</label>\n <input type="number" name="timeout" min="10" placeholder="{{\'APPLICATION_TIMEOUT\' | translate}} (min 10 {{\'APPLICATION_MINUTES\' | translate}})" class="form-control" data-ng-model="automation.timeout" data-ng-init="item.timeout = 10" required/>\n <span data-ng-show="forms.general.timeout.$touched && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TIMEOUT -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="automation.status"\n type="checkbox"\n name="status"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="automation.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in automation.All">\n <condition-builder element="all" serviceindex="automation.channel" service="$automations" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in automation.Any">\n <condition-builder element="any" serviceindex="automation.channel" service="$automations" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in automation.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $automations.services[automation.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.general"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.general"></action-builder-integration>\n <action-builder-status ng-switch-when="status" element="action" form="forms.general"></action-builder-status>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !automation.All.length && !automation.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !automation.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/tools/automation/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-settings"></i>\n <a href="/tools/automations/list">{{ \'APPLICATION_AUTOMATIONS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_AUTOMATIONS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" data-ng-submit="submit()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.name.$touched && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.general.name.$touched && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.status"\n type="checkbox"\n name="status"\n data-ng-init="item.status = 0"\n switch-active="{{ statusSwitch.isActive }}"\n switch-on-text="{{ statusSwitch.onText }}"\n switch-off-text="{{ statusSwitch.offText }}"\n switch-on-color="{{ statusSwitch.onColor }}"\n switch-off-color="{{ statusSwitch.offColor }}"\n switch-animate="{{ statusSwitch.animate }}"\n switch-size="{{ statusSwitch.size }}"\n switch-label="{{ statusSwitch.label }}"\n switch-icon="{{ statusSwitch.icon }}"\n switch-radio-off="{{ statusSwitch.radioOff }}"\n switch-label-width="{{ statusSwitch.labelWidth }}"\n switch-handle-width="{{ statusSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitSettingsValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANNEL\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CHANNEL\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_CHANNEL\' | translate }}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="channel in $automations.channels | filter: $select.search">\n <div ng-bind-html="channel | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in item.All">\n <condition-builder element="all" serviceindex="item.channel" service="$automations" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in item.Any">\n <condition-builder element="any" serviceindex="item.channel" service="$automations" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in item.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $automations.services[item.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.settings"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.settings"></action-builder-integration>\n <action-builder-status ng-switch-when="status" element="action" form="forms.settings"></action-builder-status>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.All.length && !item.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_INTERVAL\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/interval/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-clock"></i>\n <a href="#">{{ \'APPLICATION_INTERVALS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_INTERVALS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_INTERVAL\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getInterval()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-clock"></i>\n <a href="/tools/intervals/list">{{ \'APPLICATION_INTERVALS\' | translate }}</a>\n <i data-ng-show="interval" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="interval">\n <a href="#">{{interval.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/interval.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{interval.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.intervals.view.settings\')}">\n <a data-ng-click="deselectAndRedirect(\'/tools/intervals/view/\'+interval.id+\'/settings\')">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n'+" <li data-ng-class=\"{active: $state.is('main.tools.intervals.view.subintervals') || $state.is('main.tools.intervals.view.subinterval') || $state.is('main.tools.intervals.view.subintervals.settings')}\">\n <a data-ng-click=\"deselectAndRedirect('/tools/intervals/view/'+interval.id+'/subintervals')\">\n <i class=\"icon-list\"></i>\n {{ 'APPLICATION_SUBINTERVALS' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class=\"profile-content\">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n"),a.put("app/tools/interval/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_INTERVAL\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateInterval()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="interval.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="interval.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/interval/view/view.subinterval.html",'\n<div class="row" data-ng-init="initSubInterval(true)">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_NEW_SUBINTERVAL\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="addSubInterval()">\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitValidation(forms.subinterval.name.$valid)">\n <form name="forms.subinterval" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="subinterval.name" required/>\n <span data-ng-show="(forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n\n\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/interval/view/view.subintervalSettings.html",'\n<div class="row" data-ng-init="initSubInterval();getSubInterval();">\n <div class="col-md-12">\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SUBINTERVAL_SETTINGS\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="updateInterval(\'subintervals\')">\n <div class="profile-usertitle-name">\n {{subinterval.name}}\n </div>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitValidation(forms.subinterval.name.$valid)">\n <form name="forms.subinterval" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="interval.SubIntervals[selectedSubInterval].name" required/>\n <span data-ng-show="(forms.subinterval.name.$touched || forms.subinterval.$submitted) && forms.subinterval.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START TIME -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_TIME\' | translate }}</label>\n <div class="input-group input-large">\n <fieldset class="pull-left" ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_from" data-ng-model="splittedInterval.t_from" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <div class="input-group-addon col-md-1 interval-to pull-left">to</div>\n <fieldset ng-disabled="splittedInterval.alwaysTime"><uib-timepicker name="t_to" data-ng-model="splittedInterval.t_to" show-meridian="false" show-spinners="false"></uib-timepicker></fieldset>\n <label class="control-label pointer-cursor"><input type="checkbox" data-ng-model="splittedInterval.alwaysTime">{{\'APPLICATION_ALWAYS\' | translate}}</label>\n </div>\n </div>\n <!-- END TIME -->\n\n <!-- START WEEKDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_WEEKDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.wd_from" theme="bootstrap" name="wd_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.wd_to" theme="bootstrap" name="wd_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="weekDay.value as weekDay in $interval.daysOfWeek | filter: $select.search">\n {{weekDay.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.md_from" theme="bootstrap" name="md_from">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.md_to" theme="bootstrap" name="md_to">\n <ui-select-match>{{$select.selected === \'always\' ? \'APPLICATION_ALWAYS\' : $select.selected | translate}}</ui-select-match>\n <ui-select-choices repeat="monthDay in $interval.daysOfMonth | filter: $select.search">\n {{monthDay === \'always\' ? \'APPLICATION_ALWAYS\' : monthDay | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START MONTH -->\n <div class="form-group">\n <label class="control-label">{{ \'APPLICATION_MONTH\' | translate }}</label>\n <div class="input-group input-large">\n <ui-select data-ng-model="splittedInterval.m_from" theme="bootstrap" name="m_from">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n <span class="input-group-addon">to</span>\n <ui-select data-ng-model="splittedInterval.m_to" theme="bootstrap" name="m_to">\n <ui-select-match placeholder="">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="month.value as month in $interval.months | filter: $select.search">\n {{month.name | translate}}\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <!-- END MONTH -->\n\n\n\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/tools/interval/view/view.subintervals.html",'<div ui-view class="profile-content">\n<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SUBINTERVALS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/intervals/view/{{interval.id}}/subinterval" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_SUBINTERVAL\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div data-ng-if="selectedSubInterval === undefined" ui-grid="gridOptions" ui-grid-resize-columns class="grid" ui-grid-draggable-rows>\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n </div>\n</div>\n</div>\n'),a.put("app/tools/pause/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_PAUSE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/pause/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="fa fa-pause"></i>\n <a href="#">{{ \'APPLICATION_PAUSES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="fa fa-pause font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_PAUSES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="#" data-toggle="dropdown" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_PAUSE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/pause/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getPause()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-pause"></i>\n <a href="/tools/pauses/list">{{ \'APPLICATION_PAUSES\' | translate }}</a>\n <i data-ng-show="pause" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="pause">\n <a href="#">{{pause.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/pause.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{pause.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.pauses.view.settings\')}">\n <a data-ng-href="/tools/pauses/view/{{pause.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/pause/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_PAUSE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updatePause()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="pause.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="pause.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/scheduler/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="#">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SCHEDULES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/tools/scheduler/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_SCHEDULE\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/scheduler/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="/tools/scheduler/list">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n <i data-ng-show="schedule" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="schedule">\n <a href="#">{{schedule.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/scheduler.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{schedule.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.scheduler.view.settings\')}">\n <a data-ng-href="/tools/scheduler/view/{{schedule.id}}/settings"><i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/scheduler/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_SCHEDULE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab" data-ng-click="refreshSlider()">{{ \'APPLICATION_CONFIGURATION\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && forms.config.$valid && updateSchedule()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="schedule.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="schedule.active"\n type="checkbox"\n name="status"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="schedule.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- CONFIG TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.config" data-ng-submit="forms.config.$valid && forms.general.$valid && updateSchedule()" data-ng-if="schedule.type===\'report\'" data-ng-init="initReports()" novalidate>\n\n <div class="row">\n\n <!-- START REPORT -->\n <div class="form-group col-md-10" data-ng-class="{\'has-error\': (forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportId" name="reportId" theme="bootstrap" on-select="setReportTree($item,$model)" required>\n <ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices group-by="\'parent\'" repeat="report.id as report in reports | filter: $select.search">\n <div ng-bind-html="report.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n <!-- START REPORT -->\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OUTPUT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportOutput" name="reportOutput" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_OUTPUT\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="output in [\'CSV\',\'PDF\'] | filter: $select.search">\n <div ng-bind-html="output | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n </div>\n\n <!-- START TODAY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_RUN_ON\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="switchValues.today"\n type="checkbox"\n name="status"\n data-ng-change="checkToday()"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_TODAY\' | translate }}"\n switch-off-text="{{ \'APPLICATION_RANGE\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END TODAY -->\n\n <!-- START VALIDITY -->\n <div class="form-group" data-ng-if="switchValues.today">\n <label class="control-label">{{\'APPLICATION_VALIDITY\' | translate}}</label>\n <rzslider rz-slider-model="schedule.validityStart" rz-slider-high="schedule.validityEnd" rz-slider-options="validitySlider"></rzslider>\n </div>\n <!-- END VALIDITY -->\n\n <!-- START RANGE -->\n <div class="form-group" data-ng-if="!switchValues.today" data-ng-class="{\'has-error\': (forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT_RANGE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.reportRange" name="range" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_RANGE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="range.value as range in reportRanges | filter: $select.search">\n <div ng-bind-html="range.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANGE -->\n\n <!-- START TODAY CRON -->\n <div class="form-group" data-ng-if="switchValues.today" data-ng-class="{\'has-error\': (forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.cron" name="cron" theme="bootstrap" data-ng-required="switchValues.today">\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="cron.value as cron in todayCron | filter: $select.search">\n <div ng-bind-html="cron.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TODAY -->\n <div class="row" data-ng-if="!switchValues.today">\n <!-- START CRONTYPE EXEC -->\n <div class="form-group col-md-4" data-ng-class="{\'has-error\': (forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.type" name="cronType" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in cronTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CRONTYPE -->\n\n <!-- START WEEKDAY -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType === \'weekly\'" data-ng-class="{\'has-error\': (forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_WEEKDAYS\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="rangeExec.weekDays" name="weekDay" theme="bootstrap" data-ng-required="schedule.cronType === \'weekly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_WEEKDAYS\' | translate }}">{{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="day.value as day in weekDays | filter: $select.search">\n <div ng-bind-html="day.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType === \'monthly\'" data-ng-class="{\'has-error\': (forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.monthDay" name="monthDay" theme="bootstrap" data-ng-required="schedule.cronType === \'monthly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_MONTHDAY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="day in monthDays | filter: $select.search">\n <div ng-bind-html="day | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START HOUR -->\n <div class="form-group col-md-4" data-ng-if="schedule.cronType" data-ng-class="{\'has-error\': (forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$invalid}">\n <label class="control-label">{{ \'APPLICATION_HOUR\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.hour" name="hour" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_HOUR\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="hour in hours | filter: $select.search">\n <div ng-bind-html="hour | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOUR -->\n </div>\n\n <!-- START SEND MAIL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEND_MAIL\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="schedule.sendMail"\n type="checkbox"\n name="status"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END SEND MAIL -->\n <div class="row">\n <!-- START ACCOUNT -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ACCOUNT\' | translate }}<span class="required" data-ng-if="schedule.sendMail" aria-required="true">*</span></label>\n <ui-select data-ng-model="schedule.MailAccountId" name="MailAccountId" theme="bootstrap" data-ng-disabled="!schedule.sendMail" data-ng-required="schedule.sendMail">\n <ui-select-match placeholder="{{ \'APPLICATION_ACCOUNT\' | translate }}">{{$select.selected.address | translate}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in mailAccounts | filter: $select.search">\n <div ng-bind-html="account.address | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <!-- START EMAIL -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.$submitted && forms.config.email.$invalid) || forms.config.email.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span data-ng-if="schedule.sendMail" class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}" class="form-control" data-ng-model="schedule.email" data-ng-disabled="!schedule.sendMail" data-ng-required="schedule.sendMail"/>\n <span data-ng-show="forms.config.$submitted && forms.config.email.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END CONFIG TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n<!-- <pre>\n {{rangeExec | json}}\n</pre>\n<pre>\n {{schedule | json}}\n</pre> -->\n'),a.put("app/tools/scheduler/wizard/wizard.html",'<div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-calendar"></i>\n <a href="/tools/scheduler/list">{{ \'APPLICATION_SCHEDULER\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_SCHEDULE\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.active"\n type="checkbox"\n name="status"\n data-ng-init="item.active = 0"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{ \'APPLICATION_TYPE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_TYPE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in scheduleTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <button class="btn green-haze" type="submit" ng-click="next(true)">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIGURATION\' | translate}}" canexit="exitValidation(forms.config.$valid)">\n <form name="forms.config" data-ng-if="item.type===\'report\'" data-ng-init="initReports()" novalidate>\n <div class="row">\n\n <!-- START REPORT -->\n <div class="form-group col-md-10" data-ng-class="{\'has-error\': (forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportId" name="reportId" theme="bootstrap" on-select="setReportTree($item,$model)" required>\n <ui-select-match placeholder="{{ \'APPLICATION_REPORT\' | translate }}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices group-by="\'parent\'" repeat="report.id as report in reports | filter: $select.search">\n <div ng-bind-html="report.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportId.$touched || forms.config.$submitted) && forms.config.reportId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n <!-- START REPORT -->\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$invalid}">\n <label class="control-label">{{ \'APPLICATION_OUTPUT\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportOutput" name="reportOutput" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_OUTPUT\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="output in [\'CSV\',\'PDF\'] | filter: $select.search">\n <div ng-bind-html="output | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.reportOutput.$touched || forms.config.$submitted) && forms.config.reportOutput.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END REPORT -->\n\n </div>\n\n <!-- START TODAY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_RUN_ON\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="switchValues.today"\n type="checkbox"\n name="status"\n data-ng-change="checkToday()"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_TODAY\' | translate }}"\n switch-off-text="{{ \'APPLICATION_RANGE\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END TODAY -->\n\n <!-- START VALIDITY -->\n <div class="form-group" data-ng-if="switchValues.today">\n <label class="control-label">{{\'APPLICATION_VALIDITY\' | translate}}</label>\n <rzslider rz-slider-model="item.validityStart" rz-slider-high="item.validityEnd" rz-slider-options="validitySlider" data-ng-init="item.validityStart = 8;item.validityEnd = 16;"></rzslider>\n </div>\n <!-- END VALIDITY -->\n\n <!-- START RANGE -->\n <div class="form-group" data-ng-if="!switchValues.today" data-ng-class="{\'has-error\': (forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$invalid}">\n <label class="control-label">{{ \'APPLICATION_REPORT_RANGE\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.reportRange" name="range" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_RANGE\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="range.value as range in reportRanges | filter: $select.search">\n <div ng-bind-html="range.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.range.$touched || forms.config.$submitted) && forms.config.range.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END RANGE -->\n\n <!-- START TODAY CRON EXEC -->\n <div class="form-group" data-ng-if="switchValues.today" data-ng-class="{\'has-error\': (forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.cron" name="cron" theme="bootstrap" data-ng-required="switchValues.today">\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="cron.value as cron in todayCron | filter: $select.search">\n <div ng-bind-html="cron.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cron.$touched || forms.config.$submitted) && forms.config.cron.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TODAY CRON -->\n <div class="row" data-ng-if="!switchValues.today">\n <!-- START CRONTYPE EXEC -->\n <div class="form-group col-md-4" data-ng-class="{\'has-error\': (forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$invalid}">\n <label class="control-label">{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.type" name="cronType" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_EXECUTE_EVERY\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="type.value as type in cronTypes | filter: $select.search">\n <div ng-bind-html="type.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.cronType.$touched || forms.config.$submitted) && forms.config.cronType.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CRONTYPE -->\n\n <!-- START WEEKDAY -->\n <div class="form-group col-md-4" data-ng-if="item.cronType === \'weekly\'" data-ng-class="{\'has-error\': (forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_WEEKDAYS\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="rangeExec.weekDays" name="weekDay" theme="bootstrap" data-ng-required="item.cronType === \'weekly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_WEEKDAYS\' | translate }}">{{$item.name | translate}}</ui-select-match>\n <ui-select-choices repeat="day.value as day in weekDays | filter: $select.search">\n <div ng-bind-html="day.name | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.weekDay.$touched || forms.config.$submitted) && forms.config.weekDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END WEEKDAY -->\n\n <!-- START MONTHDAY -->\n <div class="form-group col-md-4" data-ng-if="item.cronType === \'monthly\'" data-ng-class="{\'has-error\': (forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$invalid}">\n <label class="control-label">{{ \'APPLICATION_MONTHDAY\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.monthDay" name="monthDay" theme="bootstrap" data-ng-required="item.cronType === \'monthly\'">\n <ui-select-match placeholder="{{ \'APPLICATION_MONTHDAY\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="day in monthDays | filter: $select.search">\n <div ng-bind-html="day | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.monthDay.$touched || forms.config.$submitted) && forms.config.monthDay.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END MONTHDAY -->\n\n <!-- START HOUR -->\n <div class="form-group col-md-4" data-ng-if="item.cronType" data-ng-class="{\'has-error\': (forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$invalid}">\n <label class="control-label">{{ \'APPLICATION_HOUR\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="rangeExec.hour" name="hour" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_HOUR\' | translate }}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="hour in hours | filter: $select.search">\n <div ng-bind-html="hour | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.hour.$touched || forms.config.$submitted) && forms.config.hour.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOUR -->\n </div>\n\n <!-- START SEND MAIL -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_SEND_MAIL\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n data-ng-model="item.sendMail"\n type="checkbox"\n name="status"\n data-ng-init="item.sendMail = 0"\n switch-active="{{ switches.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ switches.onColor }}"\n switch-off-color="{{ switches.offColor }}"\n switch-animate="{{ switches.animate }}"\n switch-size="{{ switches.size }}"\n switch-label="{{ switches.label }}"\n switch-icon="{{ switches.icon }}"\n switch-radio-off="{{ switches.radioOff }}"\n switch-label-width="{{ switches.labelWidth }}"\n switch-handle-width="{{ switches.handleWidth }}">\n </div>\n <!-- END SEND MAIL -->\n <div class="row">\n <!-- START ACCOUNT -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$invalid}">\n <label class="control-label">{{ \'APPLICATION_ACCOUNT\' | translate }}<span class="required" data-ng-if="item.sendMail" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.MailAccountId" name="MailAccountId" theme="bootstrap" data-ng-disabled="!item.sendMail" data-ng-required="item.sendMail">\n <ui-select-match placeholder="{{ \'APPLICATION_ACCOUNT\' | translate }}">{{$select.selected.address | translate}}</ui-select-match>\n <ui-select-choices repeat="account.id as account in mailAccounts | filter: $select.search">\n <div ng-bind-html="account.address | highlight: $select.search | translate"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.config.MailAccountId.$touched || forms.config.$submitted) && forms.config.MailAccountId.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ACCOUNT -->\n\n <!-- START EMAIL -->\n <div class="form-group col-md-6" data-ng-class="{\'has-error\': (forms.config.$submitted && forms.config.email.$invalid) || forms.config.email.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}<span data-ng-if="item.sendMail" class="required" aria-required="true">*</span></label>\n <input type="email" name="email" placeholder="{{\'APPLICATION_EMAIL_ADDRESS\' | translate}}" class="form-control" data-ng-model="item.email" required data-ng-disabled="!item.sendMail" data-ng-required="item.sendMail"/>\n <span data-ng-show="forms.config.$submitted && forms.config.email.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END EMAIL -->\n </div>\n\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n<!-- <pre>\n {{rangeExec | json}}\n</pre>\n<pre>\n {{item | json}}\n</pre> -->\n'), -a.put("app/tools/sound/list/list.html",'<div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-music-tone-alt"></i>\n <a href="#">{{ \'APPLICATION_SOUNDS\' | translate }}</a>\n </li>\n </ul>\n <div class="page-toolbar">\n </div>\n</div>\n<!-- END PAGE HEADER-->\n<!-- BEGIN PAGE CONTENT-->\n<!-- Audio Portlets -->\n<div class="headline">\n <h3><i class="icon-music-tone-alt sounds-title-icon"></i> {{ \'APPLICATION_SOUNDS\' | translate }}</h3>\n</div>\n<div class="portlet light bg-inverse">\n <div class="portlet-title collapsible" ng-click="isCollapsed = !isCollapsed">\n <div class="caption">\n <i class="icon-puzzle font-red-flamingo"></i>\n <span class="caption-subject bold font-red-flamingo uppercase">\n {{\'APPLICATION_FILE_UPLOAD\' | translate}} </span>\n </div>\n <div class="tools">\n <a href="" ng-class="{\'collapse\': !isCollapsed, \'expand\' : isCollapsed}">\n </a>\n </div>\n </div>\n <div class="portlet-body" ng-slide-down="!isCollapsed">\n <div class="row" nv-file-drop="" uploader="uploader" filters="queueLimit, customFilter">\n <div class="col-md-4">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject bold uppercase">{{\'APPLICATION_SELECT_FILES\' | translate}}</span>\n <span class="caption-helper hide"></span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <div ng-show="uploader.isHTML5">\n <div class="file-drop-zone margin-bottom-20" nv-file-over="" uploader="uploader" over-class="file-drop-zone-over">\n Base drop zone\n </div>\n </div>\n <span class="btn default btn-file">\n <span class="fileinput-new">\n {{\'APPLICATION_FILE_UPLOAD\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader" />\n </span>\n <span class="btn default btn-file">\n <span class="fileinput-new">\n {{\'APPLICATION_MULTI_FILE_UPLOAD\' | translate}}</span>\n <input type="file" nv-file-select="" uploader="uploader" multiple /><br/>\n </span>\n <p>\n </br>\n {{ \'MESSAGE_SUPPORTED_FORMATS\' | translate }} <b>wav, mp3, gsm, ogg</b>.\n </p>\n <p>\n {{ \'MESSAGE_MAXIMUM_SOUND_UPLOAD_SIZE\' | translate }} <b>15 Mb</b>.\n </p>\n </div>\n </div>\n </div>\n <div class="col-md-8">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-settings font-green-sharp"></i>\n <span class="caption-subject bold uppercase">{{\'APPLICATION_UPLOAD_QUEUE\' | translate}}</span>\n <span class="caption-helper">{{\'APPLICATION_QUEUE_LENGTH\' | translate}}: {{ uploader.queue.length }}</span>\n </div>\n <div class="actions">\n </div>\n </div>\n <div class="portlet-body">\n <div class="table-scrollable table-scrollable-borderless">\n <table class="table table-hover table-light">\n <thead>\n <tr class="uppercase">\n <th width="50%">{{\'APPLICATION_NAME\' | translate}}</th>\n <th ng-show="uploader.isHTML5">{{\'APPLICATION_SIZE\' | translate}}</th>\n <th ng-show="uploader.isHTML5">{{\'APPLICATION_PROGRESS\' | translate}}</th>\n <th>{{\'APPLICATION_STATUS\' | translate}}</th>\n <th>{{\'APPLICATION_MESSAGE\' | translate}}</th>\n <th>{{\'APPLICATION_ACTIONS\' | translate}}</th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="item in uploader.queue">\n <td><strong>{{ item.file.name }}</strong></td>\n <td ng-show="uploader.isHTML5" nowrap>{{ item.file.size/1024/1024|number:2 }} MB</td>\n <td ng-show="uploader.isHTML5">\n <div class="progress progress-sm" style="margin-bottom: 0;">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': item.progress + \'%\' }"></div>\n </div>\n </td>\n <td class="text-center">\n <span ng-show="item.isSuccess" class="text-success"><i class="glyphicon glyphicon-ok"></i></span>\n <span ng-show="item.isCancel" class="text-info"><i class="glyphicon glyphicon-ban-circle"></i></span>\n <span ng-show="item.isError" class="text-danger"><i class="glyphicon glyphicon-remove"></i></span>\n <span ng-show="item.isUploading" class="text-info"><i class="glyphicon glyphicon-upload"></i></span>\n </td>\n <td class="text-center">\n <span ng-show="item.responseMessage" class="text-danger">{{item.responseMessage}}</span>\n </td>\n <td nowrap>\n <button type="button" class="btn btn-success btn-xs" ng-click="item.upload()" ng-disabled="item.isReady || item.isUploading || item.isSuccess">\n <span class="glyphicon glyphicon-upload"></span> {{\'APPLICATION_UPLOAD\' | translate}}\n </button>\n <button type="button" class="btn btn-warning btn-xs" ng-click="item.cancel()" ng-disabled="!item.isUploading">\n <span class="glyphicon glyphicon-ban-circle"></span> {{\'APPLICATION_CANCEL\' | translate}}\n </button>\n <button type="button" class="btn btn-danger btn-xs" ng-click="item.remove()">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE\' | translate}}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div>\n <p>{{\'APPLICATION_UPLOAD_QUEUE_PROGRESS\' | translate}}:</p>\n <div class="progress progress-sm" style="">\n <div class="progress-bar progress-bar-info" role="progressbar" ng-style="{ \'width\': uploader.progress + \'%\' }"></div>\n </div>\n </div>\n <button type="button" class="btn btn-success btn-s" ng-click="uploader.uploadAll()" ng-disabled="!uploader.getNotUploadedItems().length">\n <span class="glyphicon glyphicon-upload"></span> {{\'APPLICATION_UPLOAD_ALL\' | translate}}\n </button>\n <button type="button" class="btn btn-warning btn-s" ng-click="uploader.cancelAll()" ng-disabled="!uploader.isUploading">\n <span class="glyphicon glyphicon-ban-circle"></span> {{\'APPLICATION_CANCEL_ALL\' | translate}}\n </button>\n <button type="button" class="btn btn-danger btn-s" ng-click="uploader.clearQueue()" ng-disabled="!uploader.queue.length">\n <span class="glyphicon glyphicon-trash"></span> {{\'APPLICATION_REMOVE_ALL\' | translate}}\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n<div class="row thumbnails" data-ng-init="initList()">\n <div class="row" ng-show="sounds.length == 0">\n <div class="col-md-12 page-404">\n <div class="details">\n <h3>{{ \'MESSAGE_NO_SOUNDS\' | translate }}</h3>\n <p>\n <a href="/">\n {{ \'MESSAGE_RETURN_HOME\' | translate }} </a>\n {{ \'MESSAGE_OR_UPLOAD_SOUND_FILE\' | translate }}\n </p>\n </div>\n </div>\n </div>\n <div class="audio-portlet-wrapper animate-repeat" ng-repeat="sound in sounds">\n <div class="audio-portlet">\n <div class="audio-portlet-title"><a href="#" editable-text="sound.display_name" onbeforesave="updateAudio(sound.id,{display_name : $data})">{{ sound.display_name || "Empty" }}</a></div>\n <img src="../assets/images/note_placeholder.png" alt="" class="img-responsive"/>\n <div class="file-info">\n <div class="audio-tag-wrapper">\n <audio-file-download params="{id:sound.id,controller:\'stream\'}" resource="Sound"></audio-file-download>\n </div>\n <p id="description_div">\n <a href="#" editable-text="sound.description" onbeforesave="updateAudio(sound.id,{description : $data})">{{ sound.description || "Empty" }}</a>\n </p>\n <p class="float-right">\n <button class="btn btn-xs green-meadow" uib-tooltip-template="\'audioInfoTemplate.html\'"><i class="icon-list"></i></button>\n <motion-file-download params="{id:sound.id,controller:\'download\'}" resource="Sound" mimetype="\'audio/\'+sound.original_format" tooltiptext="Download" filename="sound.name+\'.\'+sound.original_format" btnclass="{{downloadButtonClass}}" btncontent=\'{{downloadButtonContent}}\'></motion-file-download>\n <button uib-tooltip="Delete" class="btn btn-xs red-sunglo" ng-click="delete(sound.display_name, sound.id)" tooltip="Delete"><i class="icon-close" ></i></button>\n </p>\n </div>\n </div>\n </div>\n <script type="text/ng-template" id="audioInfoTemplate.html">\n <div>\n <ul class="list-unstyled">\n <li><b>Format : </b>{{sound.original_format}}</li>\n <li><b>Duration : </b>{{sound.original_duration | date: \'mm:ss\'}}</li>\n <li><b>Channels : </b>{{sound.original_channelCount}}</li>\n <li><b>Bitrate : </b>{{sound.original_bitRate/1024}} kbs</li>\n <li><b>Sample Rate : </b>{{sound.original_sampleRate/1000}} KHz</li>\n </ul>\n </div>\n </script>\n</div>\n<!-- End Audio Portlets -->\n'),a.put("app/tools/tag/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_TAG\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required data-ng-pattern="settings.patternName"/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/tag/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-tag"></i>\n <a href="#">{{ \'APPLICATION_TAGS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TAGS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TAG\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/tag/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getTag()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-tag"></i>\n <a href="/tools/tags/list">{{ \'APPLICATION_TAGS\' | translate }}</a>\n <i data-ng-show="tag" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="tag">\n <a href="#">{{tag.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/tag.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{tag.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.tags.view.settings\')}">\n <a data-ng-href="/tools/tags/view/{{tag.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/tag/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_TAG\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateTag()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="tag.name" required data-ng-pattern="settings.patternName"/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="tag.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/template/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="#">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-wrench font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEMPLATES\' | translate }}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/tools/templates/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TEMPLATE\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/template/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initItem()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/tools/templates/list">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n <i data-ng-show="item" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="item">\n <a href="#">{{item.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/template.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{item.name}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.templates.view.settings\')}">\n <a data-ng-href="/tools/templates/view/{{item.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}}\n </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/template/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n </div>\n <div class="portlet-body">\n\n <form name="form" data-ng-submit="form.$valid && updateItem()" class="form-horizontal" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.name.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}:<span class="required" aria-required="true">*</span></label>\n </div>\n <div class="col-md-10">\n <input type="text" name="name" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_NAME\' | translate}}..." data-ng-model="item.name" required>\n <span data-ng-show="form.name.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': form.description.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}:</label>\n </div>\n <div class="col-md-10">\n <input type="text" name="description" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}..." rows="8" data-ng-model="item.description">\n <span data-ng-show="form.description.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <hr>\n\n <!-- START SUBJECT -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.subject.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-2">\n <label class="control-label">{{\'APPLICATION_SUBJECT\' | translate}}:</label>\n </div>\n <div class="col-md-10">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_SUBJECT\' | translate}}..." rows="8" data-ng-model="item.subject">\n <span data-ng-show="form.subject.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START HTML -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.text.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div ckeditor="options" ng-model="item.html"></div>\n <span data-ng-show="form.text.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/template/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-docs"></i>\n <a href="/tools/templates/list">{{ \'APPLICATION_TEMPLATES\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered" data-ng-init="initWizard()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TEMPLATES\' | translate }} FORM</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <form name="form" data-ng-submit="form.$valid && createItem()" class="form-horizontal" novalidate>\n <!-- START HEAD -->\n <div class="form">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': form.name.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}:<span class="required" aria-required="true">*</span></label>\n </div>\n <div class="col-md-11">\n <input type="text" name="name" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_NAME\' | translate}}..." data-ng-model="item.name" required>\n <span data-ng-show="form.name.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': form.description.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="description" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}..." rows="8" data-ng-model="item.description">\n <span data-ng-show="form.description.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END NAME -->\n\n <!-- START SUBJECT -->\n <div class="form-group" data-ng-class="{\'has-error\': form.subject.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div class="row">\n <div class="col-md-1">\n <label class="control-label">{{\'APPLICATION_SUBJECT\' | translate}}:</label>\n </div>\n <div class="col-md-11">\n <input type="text" name="subject" class="form-control todo-taskbody-taskdesc" placeholder="{{\'APPLICATION_SUBJECT\' | translate}}..." rows="8" data-ng-model="item.subject">\n <span data-ng-show="form.subject.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n </div>\n <!-- END SUJBECT -->\n\n <!-- START HTML -->\n <div class="form-group row" data-ng-class="{\'has-error\': form.text.$invalid && form.$submitted}">\n <div class="col-md-12">\n <div ckeditor="options" ng-model="item.html"></div>\n <span data-ng-show="form.text.$invalid && form.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n <!-- END HTML -->\n\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="goNext()"/>\n </form>\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n'),a.put("app/tools/trigger/list/list.html",'<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="#">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRIGGERS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle " href="/tools/triggers/wizard">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TRIGGER\' | translate }}\n </a>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("app/tools/trigger/view/view.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row" data-ng-init="initView();">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="/tools/triggers/list">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n <i class="fa fa-angle-right" data-ng-show="trigger"></i>\n </li>\n <li data-ng-show="trigger">\n <a href="#">{{ trigger.description || trigger.name }}</a>\n </li>\n </ul>\n </div>\n\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/trigger.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{ trigger.name }}\n </div>\n <div class="profile-usertitle-job">\n {{ trigger.description }}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.triggers.view.settings\')}">\n <a href="/tools/triggers/view/{{trigger.id}}/settings">\n <i class="icon-bulb"></i>\n {{ \'APPLICATION_SETTINGS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trigger/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_SETTINGS\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_CONDITIONS\' | translate}} & {{\'APPLICATION_ACTIONS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <!-- <pre>\n {{conditionsData.query | json}}\n </pre>\n <pre>\n {{actionsData.query | json}}\n </pre> -->\n <form name="forms.general" data-ng-submit="exitValidation(forms.general.$valid) && updateTrigger()" novalidate>\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="trigger.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="trigger.status"\n type="checkbox"\n name="status"\n switch-active="{{ recordSwitch.isActive }}"\n switch-on-text="{{ recordSwitch.onText }}"\n switch-off-text="{{ recordSwitch.offText }}"\n switch-on-color="{{ recordSwitch.onColor }}"\n switch-off-color="{{ recordSwitch.offColor }}"\n switch-animate="{{ recordSwitch.animate }}"\n switch-size="{{ recordSwitch.size }}"\n switch-label="{{ recordSwitch.label }}"\n switch-icon="{{ recordSwitch.icon }}"\n switch-radio-off="{{ recordSwitch.radioOff }}"\n switch-label-width="{{ recordSwitch.labelWidth }}"\n switch-handle-width="{{ recordSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="trigger.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n <!-- END GENERAL TAB -->\n <div class="tab-pane" id="tab_1_2">\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in trigger.All">\n <condition-builder element="all" serviceindex="trigger.channel" service="$triggers" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in trigger.Any">\n <condition-builder element="any" serviceindex="trigger.channel" service="$triggers" form="forms.general"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in trigger.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $triggers.services[trigger.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_ACTION\' | translate }}\n </span>\n <span data-ng-show="(forms.general[\'action\'+$index].$touched || forms.general.$submitted) && forms.general[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.general"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.general"></action-builder-integration>\n <action-builder-motion-bar ng-switch-when="motionbar" element="action" form="forms.general"></action-builder-motion-bar>\n <action-builder-jscripty ng-switch-when="jscripty" element="action" form="forms.general"></action-builder-jscripty>\n <action-builder-url-forward ng-switch-when="urlForward" element="action" form="forms.general"></action-builder-url-forward>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !trigger.All.length && !trigger.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.general.$submitted && !trigger.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </div>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/trigger/wizard/wizard.html",'<div class="row">\n <div class="col-md-12">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-bulb"></i>\n <a href="/tools/triggers/list">{{ \'APPLICATION_TRIGGERS\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-bulb font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRIGGERS\' | translate }} WIZARD</span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START STATUS -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_STATUS\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="item.status"\n type="checkbox"\n name="status"\n data-ng-init="item.status = 0"\n switch-active="{{ statusSwitch.isActive }}"\n switch-on-text="{{ statusSwitch.onText }}"\n switch-off-text="{{ statusSwitch.offText }}"\n switch-on-color="{{ statusSwitch.onColor }}"\n switch-off-color="{{ statusSwitch.offColor }}"\n switch-animate="{{ statusSwitch.animate }}"\n switch-size="{{ statusSwitch.size }}"\n switch-label="{{ statusSwitch.label }}"\n switch-icon="{{ statusSwitch.icon }}"\n switch-radio-off="{{ statusSwitch.radioOff }}"\n switch-label-width="{{ statusSwitch.labelWidth }}"\n switch-handle-width="{{ statusSwitch.handleWidth }}">\n </div>\n <!-- END STATUS -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_SETTINGS\' | translate}}" canexit="exitSettingsValidation(forms.settings.$valid)">\n <form name="forms.settings" novalidate>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_CHANNEL\' | translate }}</span>\n </div>\n </div>\n <div class="portlet-body">\n <div class="form-group" data-ng-class="{\'has-error\': (forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$invalid}">\n <label class="control-label">{{ \'APPLICATION_CHANNEL\' | translate }}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{ \'APPLICATION_CHANNEL\' | translate }}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="channel in $triggers.channels | filter: $select.search">\n <div ng-bind-html="channel | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(forms.settings.channel.$touched || forms.settings.$submitted) && forms.settings.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ALL_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="all in item.All">\n <condition-builder element="all" serviceindex="item.channel" service="$triggers" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'All\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'All\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject" ng-bind-html="\'APPLICATION_MEET_ANY_CONDITIONS\' | translate"></span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="any in item.Any">\n <condition-builder element="any" serviceindex="item.channel" service="$triggers" form="forms.settings"></condition-builder>\n <button type="button" ng-click="removeCondition(\'Any\',$index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addCondition(\'Any\')">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_CONDITION\' | translate}}\n </button>\n </div>\n </div>\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-blue-hoki">\n <i class="icon-tag font-blue-hoki"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACTIONS\' | translate }}</span>:\n </div>\n </div>\n <div class="portlet-body">\n <div class="padding-bottom row" ng-repeat="action in item.Actions">\n <div class="form-group col-md-2" data-ng-class="{\'has-error\': (forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$invalid}">\n <ui-select data-ng-model="action.action" theme="bootstrap" data-ng-change="resetActionData(action)" name="action{{$index}}" required>\n <ui-select-match placeholder="{{ \'APPLICATION_ACTION\' | translate }}">{{$select.selected.name | translate}}</ui-select-match>\n <ui-select-choices repeat="tAction.value as tAction in $triggers.services[item.channel].actions | filter: $select.search">\n <div ng-bind-html="tAction.name | translate | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'APPLICATION_ACTION\' | translate }}\n </span>\n <span data-ng-show="(forms.settings[\'action\'+$index].$touched || forms.settings.$submitted) && forms.settings[\'action\'+$index].$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <div ng-switch="action.action">\n <action-builder-template ng-switch-when="template" element="action" form="forms.settings"></action-builder-template>\n <action-builder-integration ng-switch-when="integration" element="action" form="forms.settings"></action-builder-integration>\n <action-builder-motion-bar ng-switch-when="motionbar" element="action" form="forms.settings"></action-builder-motion-bar>\n <action-builder-jscripty ng-switch-when="jscripty" element="action" form="forms.settings"></action-builder-jscripty>\n <action-builder-url-forward ng-switch-when="urlForward" element="action" form="forms.settings"></action-builder-url-forward>\n </div>\n <button type="button" ng-click="removeAction($index)" class="btn btn-danger remove-condition col-md-1 left-margin"><span class="glyphicon glyphicon-minus-sign"></span></button>\n </div>\n <button type="button" class="btn btn-sm green padding-bottom" data-ng-click="addAction()">\n <i class="fa fa-plus"></i> {{\'APPLICATION_ADD_ACTION\' | translate}}\n </button>\n </div>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.All.length && !item.Any.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_CONDITION\' | translate}}.\n </span>\n </div>\n <div class="has-error" data-ng-show="forms.settings.$submitted && !item.Actions.length">\n <span class="help-block help-block-error form-control">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INSERT_AT_LEAST_ONE_ACTION\' | translate}}.\n </span>\n </div>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" ng-click="next()"/>\n </form>\n </wz-step>\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="#">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRUNKS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <a class="btn green-jungle" href="/tools/trunks/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_TRUNK\' | translate }}\n </a>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="/tools/trunks/list">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n <i data-ng-show="trunk" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="trunk">\n <a href="#">{{trunk.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/trunk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{trunk.name}}\n </div>\n <p data-ng-if="trunk.active && trunk.registry && trunk.status">({{trunk.status}})</p>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.trunks.view.settings\')}">\n <a data-ng-href="/tools/trunks/view/{{trunk.name}}/settings"><i class="icon-settings"></i> {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/trunk/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_TRUNK\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{ \'APPLICATION_ADVANCED\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{ \'APPLICATION_OTHER_FIELDS\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body" data-ng-init="getContexts();">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateTrunk()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="trunk.name" data-ng-pattern="settings.patternName" required readonly/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START ACTIVE -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_ACTIVE\' | translate}}</label></br>\n <input\n bs-switch\n class="form-control"\n ng-model="trunk.active"\n type="checkbox"\n name="auth"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-off-color="{{ activeSwitch.offColor }}"\n switch-on-color="{{ activeSwitch.onColor }}"\n switch-animate="{{ activeSwitch.animate }}"\n switch-size="{{ activeSwitch.size }}"\n switch-label="{{ activeSwitch.label }}"\n switch-icon="{{ activeSwitch.icon }}"\n switch-radio-off="{{ activeSwitch.radioOff }}"\n switch-label-width="{{ activeSwitch.labelWidth }}"\n switch-handle-width="{{ activeSwitch.handleWidth }}">\n </div>\n <!-- END ACTIVE -->\n <div class="row">\n\n <div class="col-md-6">\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.host.$touched || forms.general.$submitted) && forms.general.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="trunk.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n </span>\n <span data-ng-show="(forms.general.host.$touched || forms.general.$submitted) && forms.general.host.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START SECRET -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.secret.$touched || forms.general.$submitted) && forms.general.secret.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECRET\' | translate}}</label>\n <input type="password" name="secret" placeholder="{{\'APPLICATION_SECRET\' | translate}}" class="form-control" data-ng-model="trunk.secret">\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n </span>\n <span data-ng-show="(forms.general.secret.$touched || forms.general.$submitted) && forms.general.secret.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SECRET -->\n\n <!-- START CONTEXT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$invalid}">\n <label class="control-label">{{\'APPLICATION_CONTEXT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.context" name="context" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="context.name as context in voiceContexts | filter: $select.search">\n <div ng-bind-html="context.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_VOICE_CONTEXT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.context.$touched || forms.general.$submitted) && forms.general.context.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CONTEXT -->\n\n <!-- START CALLERID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.callerid.$touched || forms.general.$submitted) && forms.general.callerid.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLERID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="callerid" pattern=\'^"[a-zA-Z0-9_.-]*" <[a-zA-Z0-9_.-]*>\' placeholder="{{\'APPLICATION_CALLERID\' | translate}}" class="form-control" data-ng-model="trunk.callerid"/>\n <span class="help-block">\n {{ \'DESCRIPTION_OUTBOUND_CALLERID\' | translate }} "name" <number>\n </span>\n <span data-ng-show="(forms.general.callerid.$touched || forms.general.$submitted) && forms.general.callerid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLERID -->\n\n <!-- START TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$invalid}">\n <label class="control-label">{{\'APPLICATION_TYPE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.type" name="type" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'user\',\'peer\',\'friend\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TYPE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.type.$touched || forms.general.$submitted) && forms.general.type.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TYPE -->\n\n <!-- START DTMFMODE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.dtmfmode.$touched || forms.general.$submitted) && forms.general.dtmfmode.$invalid}">\n <label class="control-label">{{\'APPLICATION_DTMFMODE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.dtmfmode" name="dtmfmode" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected}}</ui-select-match>\n <ui-select-choices repeat="item in [\'rfc2833\', \'info\', \'shortinfo\', \'inband\',\'auto\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DTMFMODE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.dtmfmode.$touched || forms.general.$submitted) && forms.general.dtmfmode.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DTMFMODE -->\n\n </div>\n\n <div class="col-md-6">\n\n <!-- START DEFAULT USER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.defaultuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_DEFAULT_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="defaultuser" placeholder="{{\'APPLICATION_DEFAULT_USER\' | translate}}" class="form-control" data-ng-model="trunk.defaultuser" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && (forms.general.defaultuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DEFAULT USER -->\n\n <!-- START NAT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.nat.$touched || forms.general.$submitted) && forms.general.nat.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.nat" name="nat" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\', \'no\', \'never\', \'route\', \'force_rport\', \'comedia\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_NAT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.nat.$touched || forms.general.$submitted) && forms.general.nat.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAT -->\n\n <!-- START QUALIFY -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.qualify.$touched || forms.general.$submitted) && forms.general.qualify.$invalid}">\n <label class="control-label">{{\'APPLICATION_QUALIFY\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.qualify" name="qualify" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_QUALIFY\' | translate }}\n </span>\n <span data-ng-show="(forms.general.qualify.$touched || forms.general.$submitted) && forms.general.qualify.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END QUALIFY -->\n\n <!-- START ALLOW -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.allow.$touched || forms.general.$submitted) && forms.general.allow.$invalid}">\n <label class="control-label">{{\'APPLICATION_ALLOW_CODEC\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.allow" name="allow" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'g723\',\'gsm\',\'ulaw\',\'alaw\',\'g726\',\'g722\',\'g729\',\'ilbc\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_ALLOW_CODEC\' | translate }}\n </span>\n <span data-ng-show="(forms.general.allow.$touched || forms.general.$submitted) && forms.general.allow.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ALLOW -->\n\n <!-- START INSECURE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.insecure.$touched || forms.general.$submitted) && forms.general.insecure.$invalid}">\n <label class="control-label">{{\'APPLICATION_INSECURE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.insecure" name="insecure" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'port\',\'invite\',\'very\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_INSECURE\' | translate }}\n </span>\n <span data-ng-show="(forms.general.insecure.$touched || forms.general.$submitted) && forms.general.insecure.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END INSECURE -->\n\n <!-- START CALLLIMIT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.call_limit.$touched || forms.general.$submitted) && forms.general.call_limit.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLLIMIT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="number" min="0" name="call-limit" placeholder="{{\'APPLICATION_CALLLIMIT\' | translate}}" class="form-control" data-ng-model="trunk.call_limit"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_CALLLIMIT\' | translate }}\n </span>\n <span data-ng-show="(forms.general.call_limit.$touched || forms.general.$submitted) && forms.general.call_limit.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLLIMIT -->\n\n </div>\n </div>\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="trunk.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n <!-- ADVANCED TAB -->\n <div class="tab-pane" id="tab_1_2">\n <form name="forms.advanced" data-ng-submit="forms.advanced.$valid && updateTrunk()" novalidate>\n <div class="row">\n <div class="col-md-6">\n\n <!-- START REGISTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REGISTRY\' | translate}}</label>\n <input type="text" name="registry" placeholder="{{\'APPLICATION_REGISTRY\' | translate}}" class="form-control" data-ng-model="trunk.registry"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n </span>\n </div>\n <!-- END REGISTRY -->\n\n <!-- START DIRECTMEDIA -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.directmedia.$touched || forms.advanced.$submitted) && forms.advanced.directmedia.$invalid}">\n <label class="control-label">{{\'APPLICATION_DIRECTMEDIA\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.directmedia" name="directmedia" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\', \'no\', \'nonat\', \'update\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DIRECTMEDIA\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.directmedia.$touched || forms.advanced.$submitted) && forms.advanced.directmedia.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END DIRECTMEDIA -->\n\n <!-- START CALLCOUNTER -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.callcounter.$touched || forms.advanced.$submitted) && forms.advanced.callcounter.$invalid}">\n <label class="control-label">{{\'APPLICATION_CALLCOUNTER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.callcounter" name="callcounter" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_CALLCOUNTER\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.callcounter.$touched || forms.advanced.$submitted) && forms.advanced.callcounter.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END CALLCOUNTER -->\n\n <!-- START FROMDOMAIN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.fromdomain.$invalid}">\n <label class="control-label">{{\'APPLICATION_FROMDOMAIN\' | translate}}</label>\n <input type="text" name="fromdomain" placeholder="{{\'APPLICATION_FROMDOMAIN\' | translate}}" class="form-control" data-ng-model="trunk.fromdomain" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_FROMDOMAIN\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.fromdomain.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FROMDOMAIN -->\n\n <!-- START FROMUSER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.fromuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_FROMUSER\' | translate}}</label>\n <input type="text" name="fromuser" placeholder="{{\'APPLICATION_FROMUSER\' | translate}}" class="form-control" data-ng-model="trunk.fromuser" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_FROMUSER\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.fromuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END FROMUSER -->\n\n </div>\n <div class="col-md-6">\n\n <!-- START OUTBOUNDPROXY -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.advanced.$submitted && forms.advanced.outboundproxy.$invalid}">\n <label class="control-label">{{\'APPLICATION_OUTBOUNDPROXY\' | translate}}</label>\n <input type="text" name="outboundproxy" placeholder="{{\'APPLICATION_OUTBOUNDPROXY\' | translate}}" class="form-control" data-ng-model="trunk.outboundproxy" />\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_OUTBOUNDPROXY\' | translate }}\n </span>\n <span data-ng-show="forms.advanced.$submitted && (forms.advanced.outboundproxy.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END OUTBOUNDPROXY -->\n\n <!-- START USEREQPHONE -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.usereqphone.$touched || forms.advanced.$submitted) && forms.advanced.usereqphone.$invalid}">\n <label class="control-label">{{\'APPLICATION_USEREQPHONE\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.usereqphone" name="usereqphone" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_USEREQPHONE\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.usereqphone.$touched || forms.advanced.$submitted) && forms.advanced.usereqphone.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USEREQPHONE -->\n\n <!-- START TRUSTRPID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.trustrpid.$touched || forms.advanced.$submitted) && forms.advanced.trustrpid.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRUSTRPID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.trustrpid" name="trustrpid" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TRUSTRPID\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.trustrpid.$touched || forms.advanced.$submitted) && forms.advanced.trustrpid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRUSTRPID -->\n\n <!-- START SENDRPID -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.sendrpid.$touched || forms.advanced.$submitted) && forms.advanced.sendrpid.$invalid}">\n <label class="control-label">{{\'APPLICATION_SENDRPID\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.sendrpid" name="sendrpid" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SENDRPID\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.sendrpid.$touched || forms.advanced.$submitted) && forms.advanced.sendrpid.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END SENDRPID -->\n\n <!-- START ENCRYPTION -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.encryption.$touched || forms.advanced.$submitted) && forms.advanced.encryption.$invalid}">\n <label class="control-label">{{\'APPLICATION_ENCRYPTION\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select data-ng-model="trunk.encryption" name="encryption" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="item in [\'yes\',\'no\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search | capitalize"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_ENCRYPTION\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.encryption.$touched || forms.advanced.$submitted) && forms.advanced.encryption.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END ENCRYPTION -->\n\n <!-- START PORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.port.$touched || forms.advanced.$submitted) && forms.advanced.port.$invalid}">\n <label class="control-label">{{\'APPLICATION_PORT\' | translate}}</label>\n <input type="number" min="0" name="port" placeholder="{{\'APPLICATION_PORT\' | translate}}" class="form-control" data-ng-model="trunk.port"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_PORT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.port.$touched || forms.advanced.$submitted) && forms.advanced.port.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PORT -->\n\n <!-- START TRANSPORT -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.advanced.transport.$touched || forms.advanced.$submitted) && forms.advanced.transport.$invalid}">\n <label class="control-label">{{\'APPLICATION_TRANSPORT\' | translate}}<span class="required" aria-required="true">*</span></label>\n <ui-select multiple data-ng-model="trunk.transport" name="transport" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH_FILTER\' | translate}}">{{$item}}</ui-select-match>\n <ui-select-choices repeat="item in [\'udp\',\'wss\',\'ws\',\'tcp\',\'tls\'] | filter: $select.search">\n <div ng-bind-html="item | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_TRANSPORT\' | translate }}\n </span>\n <span data-ng-show="(forms.advanced.transport.$touched || forms.advanced.$submitted) && forms.advanced.transport.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TRANSPORT -->\n\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n <!-- START OTHER FIELDS TAB -->\n <div class="tab-pane" id="tab_1_3">\n <form name="forms.otherFields" data-ng-submit="forms.otherFields.$valid && updateTrunk()" novalidate>\n <div class="row">\n <div class="col-md-6">\n <!-- START OTHER FIELDS-->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_OTHER_FIELDS\' | translate}}</label>\n <textarea name="otherFields" placeholder="{{\'APPLICATION_OTHER_FIELDS\' | translate}}" class="form-control otherfields-col" data-ng-model="trunk.otherFields"></textarea>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_OTHER_FIELDS\' | translate }}\n </span>\n </div>\n <!-- END OTHER FIELDS -->\n </div>\n <div class="col-md-6">\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_EXAMPLE\' | translate}}</label>\n <div class="well">\n <div>host=dynamicp</div>\n <div>secret=********</div>\n <div>regcontext=tammari-internal</div>\n <div>regexten=1005</div>\n <div>dtmfmode=rfc2833</div>\n <div>insecure=invite,port</div>\n <div>canreinvite=yes</div>\n <div>nat=yes</div>\n <div>qualify=yes</div>\n <div>context=merus-sipphone</div>\n <div>pickupgroup=1</div>\n <div>callgroup=1</div>\n <div>mailbox=1000@default</div>\n </div>\n </div>\n </div>\n </div>\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n\n </div>\n <!-- END OTHER FIELDS TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'), -a.put("app/tools/trunk/wizard/wizard.html",'<div class="col-md-12" data-ng-init="initWizard()">\n <!-- BEGIN PAGE HEADER-->\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-link"></i>\n <a href="/tools/trunks/list">{{ \'APPLICATION_TRUNKS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-options"></i>\n <a href="#">{{ \'APPLICATION_WIZARD\' | translate }}</a>\n </li>\n </ul>\n </div>\n <!-- END PAGE HEADER-->\n\n <!-- BEGIN PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-link font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_TRUNK\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_GENERAL\' | translate}}" canexit="exitValidation(forms.general.$valid)">\n <form name="forms.general" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.$submitted && forms.general.name.$invalid) || forms.general.name.$error.pattern}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" data-ng-pattern="settings.patternName" required/>\n <span data-ng-show="forms.general.$submitted && forms.general.name.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.pattern" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_INVALID_PATTERN_NAME\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START HOST -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.host.$invalid}">\n <label class="control-label">{{\'APPLICATION_HOST\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="host" placeholder="{{\'APPLICATION_HOST\' | translate}}" class="form-control" data-ng-model="item.host" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_HOST\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && forms.general.host.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END HOST -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.password.$invalid}">\n <label class="control-label">{{\'APPLICATION_SECRET\' | translate}}</label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_PASSWORD\' | translate}}" class="form-control" data-ng-model="item.secret"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_SECRET\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && forms.general.password.$invalid" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START DEFAULT USER -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.general.$submitted && forms.general.defaultuser.$invalid}">\n <label class="control-label">{{\'APPLICATION_DEFAULT_USER\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="defaultuser" placeholder="{{\'APPLICATION_DEFAULT\' | translate}} {{\'APPLICATION_USER\' | translate}}" class="form-control" data-ng-model="item.defaultuser" required/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_DEFAULT_USER\' | translate }}\n </span>\n <span data-ng-show="forms.general.$submitted && (forms.general.defaultuser.$invalid)" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_WRONG_PASSWORD\' | translate}}.\n </span>\n </div>\n <!-- END DEFAULT USER -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n <button class="btn green-haze" type="submit" ng-click="next(true)">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_ADVANCED\' | translate}}" canexit="exitValidation(forms.advanced.$valid)">\n <form name="forms.advanced" novalidate>\n\n <!-- START REGISTRY -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_REGISTRY\' | translate}}</label>\n <input type="text" name="registry" placeholder="{{\'APPLICATION_REGISTRY\' | translate}}" class="form-control" data-ng-model="item.registry"/>\n <span class="help-block">\n {{ \'DESCRIPTION_TRUNK_REGISTRY\' | translate }}\n </span>\n </div>\n <!-- END REGISTRY -->\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <button class="btn green-haze" type="submit" ng-click="next()">{{\'APPLICATION_CONTINUE\' | translate}} <i class="fa fa-angle-right"></i></button>\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <button class="btn green-haze" type="button" ng-click="previous()"><i class="fa fa-angle-left"></i> {{\'APPLICATION_BACK\' | translate}}</button>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n </wizard>\n </div>\n </div>\n <!-- END PORTLET-->\n</div>\n'),a.put("app/tools/variable/list/list.create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_VARIABLE\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/variable/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="#">{{ \'APPLICATION_VARIABLES\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_VARIABLES\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_VARIABLE\' | translate }}\n </button>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{ \'MESSAGE_NO_RESULTS_AVAILABLE\' | translate }}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/variable/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getVariable()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-wrench"></i>\n <a href="#">{{ \'APPLICATION_TOOLS\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-eye"></i>\n <a href="/tools/variables/list">{{ \'APPLICATION_VARIABLES\' | translate }}</a>\n <i data-ng-show="variable" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="variable">\n <a href="#">{{variable.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/variable.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{variable.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.variables.view.settings\')}">\n <a data-ng-href="/tools/variables/view/{{variable.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/variable/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_VARIABLE\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateVariable()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="variable.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="variable.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/tools/yourdashboard/list/clone.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_CLONE_DASHBOARD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.dashboard" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.dashboard.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_DASHBOARD\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="forms.dashboard" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(forms.dashboard.name.$touched || forms.dashboard.$submitted) && forms.dashboard.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="ok()" ng-disabled="forms.dashboard.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-screen-desktop"></i>\n <a href="/tools/yourdashboards/list">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-docs font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <button class="btn green-jungle " ng-click="create()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_DASHBOARD\' | translate }}\n </button>\n </div>\n <!-- <a class="btn btn-icon-only btn-default fullscreen" href="#"></a> -->\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/yourdashboard/show/leaveEditedDashboard.modal.html",'<div class="modal-header" data-ng-init="getContacts()">\n <h3 class="modal-title">{{ \'APPLICATION_WARNING\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <p>{{\'MESSAGE_LEAVE_EDITED_PAGE\' | translate}}</p>\n</div>\n<div class="modal-footer">\n <button class="btn btn-danger" type="button" ng-click="close()">{{ \'APPLICATION_CONTINUE\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'),a.put("app/tools/yourdashboard/show/show.html",'<div class="row" style="min-height: 466px;">\n <div class="col-md-12" ng-init="getDashboard()">\n <adf-dashboard\n data-ng-if="dashboard"\n name="{{dashboard.name}}"\n collapsible="{{dashboard.collapsible}}"\n maximizable="{{dashboard.maximizable}}"\n enableconfirmdelete="{{dashboard.enableconfirmdelete}}"\n structure="{{dashboard.structure}}"\n editable="{{dashboard.editable}}"\n adf-model="dashboard.model"/>\n </div>\n</div>\n'),a.put("app/tools/yourdashboard/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="getDashboard()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-screen-desktop"></i>\n <a href="/tools/yourdashboards/list">{{ \'APPLICATION_YOUR_DASHBOARDS\' | translate }}</a>\n <i data-ng-show="dashboard" class="fa fa-angle-right"></i>\n </li>\n <li data-ng-show="dashboard">\n <a href="#">{{dashboard.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img data-ng-src="assets/images/media/dashboard.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{dashboard.name}}\n </div>\n <!-- <div class="profile-usertitle-job">\n {{user.role}}\n </div> -->\n </div>\n <!-- END SIDEBAR USER TITLE -->\n\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.tools.yourdashboards.view.settings\')}">\n <a data-ng-href="/tools/yourdashboards/view/{{dashboard.id}}/settings">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_SETTINGS\' | translate}} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/tools/yourdashboard/view/view.settings.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{ \'APPLICATION_DASHBOARD\' | translate}} {{ \'APPLICATION_SETTINGS\' | translate}} </span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{ \'APPLICATION_GENERAL\' | translate}}</a>\n </li>\n </ul>\n </div>\n\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.general" data-ng-submit="forms.general.$valid && updateDashboard()" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="dashboard.name" required/>\n <span data-ng-show="(forms.general.name.$touched || forms.general.$submitted) && forms.general.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START VISIBLE TO ADMIN -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_ADMIN\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.admin"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO ADMIN -->\n\n <!-- START VISIBLE TO USER -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_USER\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.user"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO USER -->\n\n <!-- START VISIBLE TO AGENT -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_VISIBLE_TO_AGENT\' | translate}}</label><br>\n <input\n bs-switch\n ng-model="dashboard.agent"\n type="checkbox"\n switch-active="{{ radioSwitch.isActive }}"\n switch-on-text="{{ \'APPLICATION_YES\' | translate }}"\n switch-off-text="{{ \'APPLICATION_NO\' | translate }}"\n switch-on-color="{{ radioSwitch.onColor }}"\n switch-off-color="{{ radioSwitch.offColor }}"\n switch-animate="{{ radioSwitch.animate }}"\n switch-size="{{ radioSwitch.size }}"\n switch-label="{{ radioSwitch.label }}"\n switch-icon="{{ radioSwitch.icon }}"\n switch-radio-off="{{ radioSwitch.radioOff }}"\n switch-label-width="{{ radioSwitch.labelWidth }}"\n switch-handle-width="{{ radioSwitch.handleWidth }}">\n </div>\n <!-- END VISIBLE TO AGENT -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="dashboard.description"></textarea>\n </div>\n <!-- END DESCRIPTION -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END ADVANCED TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/list/list.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered" data-ng-init="initView()">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-heart font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ZENDESK\' | translate }}</a> </span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="/zendesk/wizard" data-toggle="dropdown">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_ACCOUNT\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n <!-- END TABLE -->\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/zendesk/view/configuration/list/create.modal.html",'<div class="modal-header">\n <h3 class="modal-title">{{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}</h3>\n</div>\n<div class="modal-body">\n <form name="form" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.name.$touched || form.name.$submitted) && form.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}}<span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="(form.name.$touched || form.name.$submitted) && form.name.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START CHANNEL -->\n <div class="form-group" data-ng-class="{\'has-error\': (form.channel.$touched || form.channel.$submitted) && form.channel.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.channel" name="channel" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_CHANNEL\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="channel.value as channel in channels | filter: $select.search">\n <div data-ng-bind="channel.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="(form.channel.$touched || form.channel.$submitted) && form.channel.$error.required" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START CHANNEL -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <textarea type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/></textarea>\n </div>\n <!-- END DESCRIPTION -->\n\n </form>\n</div>\n<div class="modal-footer">\n <button class="btn btn-success" type="button" ng-click="save()" ng-disabled="form.$invalid">{{ \'APPLICATION_CONFIRM\' | translate }}</button>\n <button class="btn default" type="button" ng-click="cancel()">{{ \'APPLICATION_CANCEL\' | translate }}</button>\n</div>\n'), -a.put("app/zendesk/view/configuration/list/list.html",'<div ui-view class="profile-content">\n <div class="row">\n <div class="col-md-12">\n <div class="portlet light" data-ng-init="initView()">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATIONS\' | translate}}</span>\n </div>\n <div class="actions">\n <div class="btn-group" data-ng-show="id.length">\n <a class="btn red" href="#" data-ng-click="deleteItems()">\n <i class="icon-trash"></i> {{ \'APPLICATION_DELETE\' | translate }}\n </a>\n </div>\n <div class="btn-group">\n <a class="btn green-jungle" href="#" data-ng-click="createItem()">\n <i class="icon-plus"></i> {{ \'APPLICATION_NEW_CONFIGURATION\' | translate }}\n </a>\n </div>\n </div>\n </div>\n <div class="portlet-body">\n <!-- START TABLE -->\n <div ui-grid="gridOptions" ui-grid-resize-columns ui-grid-auto-resize ui-grid-pagination ui-grid-selection ui-grid-exporter ui-grid-draggable-rows class="ui-grid">\n <div class="watermark" ng-show="!gridOptions.data.length">{{\'MESSAGE_NO_RESULTS_AVAILABLE\' | translate}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/configuration/view/view.html",'<div class="row" data-ng-init="initView();getConfiguration();getCustomVariables();getFields();getTags();">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_CONFIGURATION\' | translate}}: {{configurationName}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_SUBJECT\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_2" data-toggle="tab">{{\'APPLICATION_DESCRIPTION\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_3" data-toggle="tab">{{\'APPLICATION_FIELDS\' | translate}}</a>\n </li>\n <li>\n <a href="#" data-target="#tab_1_4" data-toggle="tab">{{\'APPLICATION_TAGS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- SUBJECT TAB -->\n <div class="tab-pane ui-padding active" id="tab_1_1">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by blank space:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'subject\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="subject-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="subjectItem in subjectConfig">\n <div class="col-md-3">\n <ui-select ng-model="subjectItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="subjectItem.content" data-ng-change="updateField(subjectItem)">\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.variableName" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-8" data-ng-if="subjectItem.type==\'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="subjectItem.VariableId" data-ng-change="updateField(subjectItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(subjectItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END SUBJECT TAB -->\n <!-- DESCRIPTION TAB -->\n <div class="tab-pane ui-padding" id="tab_1_2">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">All following fields will be join by new line:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'description\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="description-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="descriptionItem in descriptionConfig">\n <div class="col-md-2">\n <ui-select ng-model="descriptionItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in descFieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-9" data-ng-if="descriptionItem.type==\'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="descriptionItem.content" data-ng-change="updateField(descriptionItem)">\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\n <input type="text" class="form-control" placeholder="Key" data-ng-model="descriptionItem.key" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\'">\n <ui-select ng-model="descriptionItem.keyType" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeDescType(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'string\'">\n <input type="text" class="form-control" placeholder="Value" data-ng-model="descriptionItem.keyContent" data-ng-change="updateField(descriptionItem)">\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.variableName" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-3" data-ng-if="descriptionItem.type==\'keyValue\' && descriptionItem.keyType==\'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="descriptionItem.VariableId" data-ng-change="updateField(descriptionItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(descriptionItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END DESCRIPTION TAB -->\n <!-- FIELDS TAB -->\n <div class="tab-pane ui-padding" id="tab_1_3">\n <div class="row">\n <div class="col-md-11">\n <span class="caption-subject">Add how to fill the fields present in your account:</span>\n </div>\n <div class="col-md-1 pull-rigth">\n <button class="btn btn-icon-only green" data-ng-click="addItem(\'field\')"><i class="fa fa-plus"></i></button>\n </div>\n </div>\n <hr>\n <!-- <div id="field-item-list" ng-scrollbars ng-scrollbars-config="config"> -->\n <div class="row" data-ng-repeat="fieldItem in fieldConfig">\n <div class="col-md-3">\n <ui-select ng-model="fieldItem.idField" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeFieldType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.id as item in accountFields | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n <div class="col-md-8" data-ng-if="getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.content" theme="bootstrap" ng-disabled="disabled" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="item.value as item in getSystemFieldOptions(fieldItem.idField) | filter: $select.search">\n <div ng-bind-html="item.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField)">\n <div class="form-group">\n <ui-select ng-model="fieldItem.type" theme="bootstrap" ng-disabled="disabled" data-ng-change="changeType(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices repeat="item.type as item in fieldType | filter: $select.search">\n <div ng-bind-html="item.title | highlight: $select.search | ucfirst"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'string\'">\n <div class="form-group">\n <input type="text" class="form-control" data-ng-model="fieldItem.content" data-ng-change="updateField(fieldItem)">\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'variable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.variableName" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.title}}</ui-select-match>\n <ui-select-choices group-by="groupVariableByGroup" repeat="variable.name as variable in variables | filter: $select.search">\n <div ng-bind-html="variable.title | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-4" data-ng-if="!getSystemFieldOptions(fieldItem.idField) && fieldItem.type === \'customVariable\'">\n <div class="form-group">\n <ui-select theme="bootstrap" ng-disabled="disabled" data-ng-model="fieldItem.VariableId" data-ng-change="updateField(fieldItem)">\n <ui-select-match placeholder="{{\'APPLICATION_SEARCH\' | translate}}">{{$select.selected.name}}</ui-select-match>\n <ui-select-choices repeat="variable.id as variable in customVariables | filter: $select.search">\n <div ng-bind-html="variable.name | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n </div>\n </div>\n <div class="col-md-1">\n <div class="form-group">\n <button class="btn btn-icon-only red" data-ng-click="removeItem(fieldItem)"><i class="fa fa-times"></i></button>\n </div>\n </div>\n </div>\n <!-- </div> -->\n </div>\n <!-- END FIELDS TAB -->\n <!-- TAG TAB -->\n <div class="tab-pane ui-padding" id="tab_1_4">\n <div class="row">\n <div class="col-md-12">\n <span class="caption-subject">Select tags that you want add in the ticket:</span>\n </div>\n </div>\n <hr>\n <form name="forms.tags" data-ng-submit="updateTags()" novalidate>\n <!-- TAG -->\n <div class="form-group">\n <ui-select multiple data-ng-model="selectedTags.tags" theme="bootstrap" name="tags" ng-disabled="disabled">\n <ui-select-match placeholder="{{ \'APPLICATION_TAGS\' | translate }}">{{$item.name}}</ui-select-match>\n <ui-select-choices repeat="tag.id as tag in tags | filter: $select.search">\n {{tag.name}}\n </ui-select-choices>\n </ui-select>\n </div>\n <!-- END TAG -->\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END TAG TAB -->\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/view.account.html",'<div class="row">\n <div class="col-md-12">\n <div class="portlet light">\n <div class="portlet-title tabbable-line">\n <div class="caption caption-md">\n <i class="icon-globe theme-font hide"></i>\n <span class="caption-subject font-blue-madison bold uppercase">{{\'APPLICATION_ACCOUNT\' | translate}}</span>\n </div>\n <ul class="nav nav-tabs">\n <li class="active">\n <a href="#" data-target="#tab_1_1" data-toggle="tab">{{\'APPLICATION_GENERALS\' | translate}}</a>\n </li>\n </ul>\n </div>\n <div class="portlet-body">\n <div class="tab-content">\n <!-- GENERAL TAB -->\n <div class="tab-pane active" id="tab_1_1">\n <form name="forms.formSetting" data-ng-submit="forms.formSetting.$valid && updateItem()" novalidate>\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="account.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.username" required/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="account.remoteUri" required />\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="account.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'password\', \'token\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="account.authType == \'password\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="account.authType == \'token\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="account.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_UPDATE\' | translate}}"/>\n </form>\n </div>\n <!-- END GENERAL TAB -->\n\n </div>\n </div>\n </div>\n </div>\n</div>\n'),a.put("app/zendesk/view/view.html",'<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initView()">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <a href="#">{{account.name}}</a>\n </li>\n </ul>\n </div>\n\n <!-- BEGIN PROFILE SIDEBAR -->\n <div class="profile-sidebar">\n <!-- PORTLET MAIN -->\n <div class="portlet light profile-sidebar-portlet">\n <!-- SIDEBAR USERPIC -->\n <div class="profile-image">\n <img src="assets/images/media/zendesk.png" class="img-responsive">\n </div>\n <!-- END SIDEBAR USERPIC -->\n <!-- SIDEBAR USER TITLE -->\n <div class="profile-usertitle">\n <div class="profile-usertitle-name">\n {{account.name}}\n </div>\n <div class="profile-usertitle-job">\n {{account.remoteUri}}\n </div>\n </div>\n <!-- END SIDEBAR USER TITLE -->\n <!-- SIDEBAR MENU -->\n <div class="profile-usermenu">\n <ul class="nav">\n <li data-ng-class="{active: $state.is(\'main.zendesk.view.account\')}">\n <a ng-href="/zendesk/view/{{account.id}}/account">\n <i class="icon-user"></i>\n {{ \'APPLICATION_ACCOUNT\' | translate }} </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.zendesk.view.configurations\') || $state.is(\'main.zendesk.view.configuration\')}">\n <a ng-href="/zendesk/view/{{account.id}}/configurations/list">\n <i class="icon-settings"></i>\n {{ \'APPLICATION_CONFIGURATIONS\' | translate }} </a>\n </li>\n </ul>\n </div>\n <!-- END MENU -->\n </div>\n <!-- END PORTLET MAIN -->\n </div>\n <!-- END BEGIN PROFILE SIDEBAR -->\n <!-- BEGIN PROFILE CONTENT -->\n <div ui-view class="profile-content">\n </div>\n <!-- END PROFILE CONTENT -->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'),a.put("app/zendesk/wizard/wizard.html",'<!-- BEGIN PAGE HEADER-->\n<div class="row">\n <div class="col-md-12">\n <div class="page-bar">\n <ul class="page-breadcrumb">\n <li>\n <i class="icon-rocket"></i>\n <a href="/">{{ \'APPLICATION_DASHBOARD\' | translate }}</a>\n <i class="fa fa-angle-right"></i>\n </li>\n <li>\n <i class="icon-heart"></i>\n <a href="/zendesk/list">{{ \'APPLICATION_ZENDESK\' | translate }}</a>\n </li>\n </ul>\n </div>\n </div>\n</div>\n<!-- END PAGE HEADER-->\n\n<!-- BEGIN PAGE CONTENT-->\n<div class="row" data-ng-init="initWizard()">\n <div class="col-md-12">\n <!-- BEGIN Portlet PORTLET-->\n <div class="portlet light bordered">\n <div class="portlet-title">\n <div class="caption font-green-sharp">\n <i class="icon-notebook font-green-sharp"></i>\n <span class="caption-subject">{{ \'APPLICATION_ACCOUNT\' | translate }} WIZARD</a> </span>\n </div>\n </div>\n <div class="portlet-body">\n <wizard on-finish="createItem()">\n <wz-step title="{{\'APPLICATION_ACCOUNT_INFO\' | translate}}" canexit="exitValidation(forms.formSetting.$valid)">\n <form name="forms.formSetting" novalidate>\n\n <!-- START NAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.name.$invalid}">\n <label class="control-label">{{\'APPLICATION_NAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="name" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.name" required/>\n <span data-ng-show="forms.formSetting.name.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END NAME -->\n\n <!-- START DESCRIPTION -->\n <div class="form-group">\n <label class="control-label">{{\'APPLICATION_DESCRIPTION\' | translate}}</label>\n <input type="text" name="description" placeholder="{{\'APPLICATION_DESCRIPTION\' | translate}}" class="form-control" data-ng-model="item.description"/>\n </div>\n <!-- END DESCRIPTION -->\n\n <!-- START USERNAME -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.username.$invalid}">\n <label class="control-label">{{\'APPLICATION_USERNAME\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="username" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.username" required ng-remote-validate="/api/zendesk/accounts/validate/username"/>\n <span data-ng-show="forms.formSetting.username.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.username.$touched || forms.formSetting.$submitted) && forms.formSetting.username.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_USERNAME\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START REMOTE ADDRESS -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.remoteUri.$invalid}">\n <label class="control-label">{{\'APPLICATION_URI\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="url" name="remoteUri" placeholder="{{\'APPLICATION_URI\' | translate}}" class="form-control" data-ng-model="item.remoteUri" required ng-remote-validate="/api/zendesk/accounts/validate/remoteUri"/>\n <span data-ng-show="forms.formSetting.remoteUri.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n <span data-ng-show="(forms.formSetting.remoteUri.$touched || forms.formSetting.$submitted) && forms.formSetting.remoteUri.$error.ngRemoteValidate" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_EXIST_DOMAIN\' | translate}}.\n </span>\n </div>\n <!-- END USERNAME -->\n\n <!-- START AUTH TYPE -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.authType.$invalid}">\n <label class="control-label">{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}</label>\n <ui-select data-ng-model="item.authType" name="authType" theme="bootstrap" required>\n <ui-select-match placeholder="{{\'APPLICATION_AUTHENTICATION_TYPE\' | translate}}">{{$select.selected | capitalize}}</ui-select-match>\n <ui-select-choices repeat="type in [\'password\', \'token\'] | filter: $select.search">\n <div data-ng-bind="type | capitalize | highlight: $select.search"></div>\n </ui-select-choices>\n </ui-select>\n <span data-ng-show="forms.formSetting.authType.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- START AUTH TYPE -->\n\n <!-- START PASSWORD -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.password.$invalid}" ng-slide-down="item.authType == \'password\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_PASSWORD\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="password" name="password" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.password" required/>\n <span data-ng-show="forms.formSetting.password.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END PASSWORD -->\n\n <!-- START TOKEN -->\n <div class="form-group" data-ng-class="{\'has-error\': forms.formSetting.$submitted && forms.formSetting.token.$invalid}" ng-slide-down="item.authType == \'token\'" lazy-render duration="1">\n <label class="control-label">{{\'APPLICATION_TOKEN\' | translate}} <span class="required" aria-required="true">*</span></label>\n <input type="text" name="token" placeholder="{{\'APPLICATION_NAME\' | translate}}" class="form-control" data-ng-model="item.token" required/>\n <span data-ng-show="forms.formSetting.token.$invalid && forms.formSetting.$submitted" class="help-block help-block-error">\n <strong>{{\'APPLICATION_WARNING\' | translate}}!</strong> {{\'MESSAGE_REQUIRED_FIELD\' | translate}}.\n </span>\n </div>\n <!-- END TOKEN -->\n\n <input class="btn green-haze" type="submit" value="{{\'APPLICATION_CONTINUE\' | translate}}" data-ng-click="next()"/>\n\n </form>\n </wz-step>\n\n <wz-step title="{{\'APPLICATION_CONFIRM\' | translate}}">\n <p>{{\'MESSAGE_CONFIGURATION_COMPLETED\' | translate}}</p>\n <input type="submit" class="btn green-haze" wz-next value="{{\'APPLICATION_CONFIRM\' | translate}}"/>\n </wz-step>\n\n </wizard>\n\n </div>\n </div>\n <!-- END Portlet PORTLET-->\n </div>\n</div>\n<!-- END PAGE CONTENT-->\n'), -a.put("components/footer/footer.html",'<!-- BEGIN FOOTER -->\n<div class="page-footer" data-ng-init="initFooter()">\n <div class="page-footer-inner">\n xCALLY Motion v. {{info.version}} | {{year}} - {{year + 1}} © Powered by Xenialab\n </div>\n <div class="scroll-to-top">\n <i class="icon-arrow-up"></i>\n </div>\n</div>\n<!-- END FOOTER -->\n'),a.put("components/header/header.html",'<!-- BEGIN HEADER INNER -->\n<div class="page-header-inner" data-ng-init="initHeader()">\n <!-- BEGIN LOGO -->\n <div class="page-logo">\n <a href="/">\n <img src="assets/images/logo.png" alt="logo" class="logo-default"/>\n </a>\n <div class="menu-toggler sidebar-toggler" data-ng-click="toogleSidebar()">\n <!-- DOC: Remove the above "hide" to enable the sidebar toggler button on header -->\n </div>\n </div>\n <!-- END LOGO -->\n <!-- BEGIN HEADER SEARCH BOX -->\n <!-- DOC: Apply "search-form-expanded" right after the "search-form" class to have half expanded search box -->\n <form class="search-form hide" action="extra_search.html" method="GET">\n <div class="input-group">\n <input type="text" class="form-control" placeholder="Search..." name="query">\n <span class="input-group-btn">\n <a href="javascript:;" class="btn submit"><i class="icon-magnifier"></i></a>\n </span>\n </div>\n </form>\n <!-- END HEADER SEARCH BOX -->\n <!-- BEGIN RESPONSIVE MENU TOGGLER -->\n <a href="javascript:;" class="menu-toggler responsive-toggler" data-toggle="collapse" data-target=".navbar-collapse">\n </a>\n <!-- END RESPONSIVE MENU TOGGLER -->\n <!-- BEGIN TOP NAVIGATION MENU -->\n <div class="top-menu">\n <ul class="nav navbar-nav pull-right">\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n\n <!-- BEGIN USER LOGIN DROPDOWN -->\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n <li class="dropdown dropdown-user">\n <a href="#" class="dropdown-toggle" dropdown-menu-hover data-toggle="dropdown" data-close-others="true">\n <img class="img-circle" data-ng-src="api/users/avatar/{{getCurrentUser().userpic || \'unknown_avatar\'}}" alt="...">\n <span class="username username-hide-on-mobile">\n {{ getCurrentUser().fullname }}\n </span>\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default">\n <li>\n <a ng-href=" {{isAdmin() ? \'/staff/users/view/\'+getCurrentUser().id+\'/account\' : \'/staff/agents/view/\'+getCurrentUser().id+\'/account\'}}">\n <i class="icon-key"></i>{{\'APPLICATION_CHANGE_PASSWORD\' | translate}}\n </a>\n </li>\n <li data-ng-click="logout()">\n <a href="#">\n <i class="icon-logout"></i> Log Out\n </a>\n </li>\n </ul>\n </li>\n <!-- END USER LOGIN DROPDOWN -->\n <!-- BEGIN QUICK SIDEBAR TOGGLER -->\n <!-- DOC: Apply "dropdown-dark" class after below "dropdown-extended" to change the dropdown styte -->\n <!-- <li class="dropdown dropdown-quick-sidebar-toggler" data-ng-click="toggleQuickSidebar()">\n <a href="#" class="dropdown-toggle">\n <i class="icon-logout"></i>\n </a>\n </li> -->\n <!-- END QUICK SIDEBAR TOGGLER -->\n </ul>\n <ul data-ng-if="getCurrentUser().role === \'agent\'" class="nav navbar-nav pull-right header-ul-with-separator padding-side-7" data-ng-class="{\'paused-header\':headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause}">\n <li class="dropdown dropdown-user" >\n <a href="#" class="dropdown-toggle custom-header-a" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" style="cursor:default;">\n <div>{{(headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause) ? headerAgent.pauseType : \'READY\'}}</div>\n <div data-ng-if="headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause"><timer start-time="moment(headerAgent.lastPauseAt).unix()*1000"> {{hhours}}:{{mminutes}}:{{sseconds}}</timer></div>\n </a>\n </li>\n <li class="dropdown dropdown-user" data-ng-if="headerAgent.voicePause || headerAgent.mailPause || headerAgent.chatPause || headerAgent.faxPause || headerAgent.smsPause">\n <a href="#" class="dropdown-toggle padding-side-7 header-bar-button header-bar-button-controls" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" data-ng-click="headerPause(\'unpause\')">\n <i class="fa fa-play font-green"></i></a>\n </li>\n <li class="dropdown dropdown-user">\n <a href="#" class="dropdown-toggle padding-side-7 header-bar-button header-bar-button-controls" dropdown-menu-hover data-toggle="dropdown" data-close-others="true" data-ng-click="headerPause(\'pause\',\'DEFAULT PAUSE\')">\n <i class="fa fa-pause font-yellow"></i></a>\n </li>\n <li class="dropdown dropdown-user" data-ng-if="headerPauses.length">\n <a href="#" class="dropdown-toggle header-bar-button" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default scrollable-menu">\n <li data-ng-repeat="pause in headerPauses">\n <a href="#" data-ng-click="headerPause(\'pause\',pause.name)">\n {{pause.name}}\n </a>\n </li>\n </ul>\n </li>\n </ul>\n <ul class="nav navbar-nav pull-right">\n <!-- BEGIN LANGUAGE BAR -->\n <li class="dropdown dropdown-language">\n <a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown" data-close-others="true">\n <img ng-src="assets/images/flags/{{ language }}.png">\n <i class="fa fa-angle-down"></i>\n </a>\n <ul class="dropdown-menu dropdown-menu-default scrollable-menu">\n <li>\n <a href="#" ng-click="changeLanguage(\'ar\')">\n <img alt="" src="assets/images/flags/ar.png"> {{\'APPLICATION_ARABIC\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'de\')">\n <img alt="" src="assets/images/flags/de.png"> {{\'APPLICATION_GERMAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'en_EN\')">\n <img alt="" src="assets/images/flags/en_EN.png"> {{\'APPLICATION_ENGLISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'es\')">\n <img alt="" src="assets/images/flags/es.png"> {{\'APPLICATION_SPANISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'fr\')">\n <img alt="" src="assets/images/flags/fr.png"> {{\'APPLICATION_FRENCH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'hi\')">\n <img alt="" src="assets/images/flags/hi.png"> {{\'APPLICATION_HINDI\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'it\')">\n <img alt="" src="assets/images/flags/it.png"> {{\'APPLICATION_ITALIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ja\')">\n <img alt="" src="assets/images/flags/ja.png"> {{\'APPLICATION_JAPANASE\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ko\')">\n <img alt="" src="assets/images/flags/ko.png"> {{\'APPLICATION_KOREAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'nl\')">\n <img alt="" src="assets/images/flags/nl.png"> {{\'APPLICATION_DUTCH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'no\')">\n <img alt="" src="assets/images/flags/no.png"> {{\'APPLICATION_NORWEGIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'pt-BR\')">\n <img alt="" src="assets/images/flags/pt-BR.png"> {{\'APPLICATION_PORTUGUESE_BRAZIL\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'pt-PT\')">\n <img alt="" src="assets/images/flags/pt-PT.png"> {{\'APPLICATION_PORTUGUESE_PORTUGAL\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'ru\')">\n <img alt="" src="assets/images/flags/ru.png"> {{\'APPLICATION_RUSSIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'sv\')">\n <img alt="" src="assets/images/flags/sv.png"> {{\'APPLICATION_SWEDISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'tr\')">\n <img alt="" src="assets/images/flags/tr.png"> {{\'APPLICATION_TURKISH\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'fa\')">\n <img alt="" src="assets/images/flags/fa.png"> {{\'APPLICATION_PERSIAN\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'zh-CN\')">\n <img alt="" src="assets/images/flags/zh-CN.png"> {{\'APPLICATION_CHINESE_SIMPLIFIED\' | translate}}\n </a>\n </li>\n <li>\n <a href="#" ng-click="changeLanguage(\'zh-TW\')">\n <img alt="" src="assets/images/flags/zh-TW.png"> {{\'APPLICATION_CHINESE_TRADITIONAL\' | translate}}\n </a>\n </li>\n </ul>\n </li>\n <!-- END LANGUAGE BAR -->\n </ul>\n </div>\n <!-- END TOP NAVIGATION MENU -->\n</div>\n<!-- END HEADER INNER -->\n'),a.put("components/modal/delete.html",'<div class="modal-header">\n <button ng-if="modal.dismissable" type="button" ng-click="$dismiss()" class="close">×</button>\n <h4 ng-if="modal.title" ng-bind="modal.title" class="modal-title"></h4>\n</div>\n<div class="modal-body">\n <p ng-if="modal.text" ng-bind="modal.text"></p>\n <div ng-if="modal.html" ng-bind-html="modal.html"></div>\n</div>\n<div class="modal-footer">\n <button ng-repeat="button in modal.buttons" ng-class="button.classes" ng-click="button.click($event)" ng-bind="button.text" class="btn"></button>\n</div>\n'),a.put("components/sidebar/sidebar.html",'<div id="page-sidebar" class="page-sidebar navbar-collapse collapse" data-ng-init="initSidebar()">\n <!-- BEGIN SIDEBAR MENU -->\n <!-- DOC: Apply "page-sidebar-menu-light" class right after "page-sidebar-menu" to enable light sidebar menu style(without borders) -->\n <!-- DOC: Apply "page-sidebar-menu-hover-submenu" class right after "page-sidebar-menu" to enable hoverable(hover vs accordion) sub menu mode -->\n <!-- DOC: Apply "page-sidebar-menu-closed" class right after "page-sidebar-menu" to collapse("page-sidebar-closed" class must be applied to the body element) the sidebar sub menu mode -->\n <!-- DOC: Set data-auto-scroll="false" to disable the sidebar from auto scrolling/focusing -->\n <!-- DOC: Set data-keep-expand="true" to keep the submenues expanded -->\n <!-- DOC: Set data-auto-speed="200" to adjust the sub menu slide up/down speed -->\n <ul data-ng-click="mainTab.active=true" class="page-sidebar-menu" data-keep-expanded="false" data-auto-scroll="true" data-slide-speed="200" data-ng-class="{\'page-sidebar-menu-closed\': settings.layout.pageSidebarClosed}" data-ng-init="getSidebarIntegrations()">\n <!-- DOC: To remove the search box from the sidebar you just need to completely remove the below "sidebar-search-wrapper" LI element -->\n <li class="sidebar-search-wrapper">\n <!-- BEGIN RESPONSIVE QUICK SEARCH FORM -->\n <!-- DOC: Apply "sidebar-search-bordered" class the below search form to have bordered search box -->\n <!-- DOC: Apply "sidebar-search-bordered sidebar-search-solid" class the below search form to have bordered & solid search box -->\n <form class="sidebar-search sidebar-search-bordered" action="extra_search.html" method="POST">\n <a href="javascript:;" class="remove">\n <i class="icon-close"></i>\n </a>\n </form>\n <!-- END RESPONSIVE QUICK SEARCH FORM -->\n </li>\n\n <!-- START DASHBOARD CASE -->\n <li class="start" data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[1])" data-ng-class="{active: $state.includes(\'main.dashboard\')}">\n <a href="/dashboard/voice">\n <i class="icon-rocket"></i>\n <span class="title">{{\'APPLICATION_DASHBOARD\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.dashboard\')" class="selected"></span>\n </a>\n </li>\n <!-- END DASHBOARD CASE -->\n\n <!-- START YOURDASHBOARD LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[2])" data-ng-class="{active: $state.is(\'main.tools.yourdashboards.show\')}">\n <a href="javascript:;">\n <i class="icon-screen-desktop"></i>\n <span class="title" >{{\'APPLICATION_YOUR_DASHBOARDS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.tools.yourdashboards.show\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-init="getSidebarDashboards()">\n <li data-ng-class="{active: $stateParams.id == dashboard.id && $state.includes(\'main.tools.yourdashboards.show\')}" data-ng-repeat="dashboard in dashboards" data-ng-if="::(dashboard[Auth.getRole()] && dashboard.visible)">\n <a href="/tools/yourdashboards/show/{{dashboard.id}}" >\n <i class="icon-screen-tablet"></i>\n <span class="title" >{{dashboard.name}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END YOURDASHBOARD LIST CASE -->\n\n <!-- START STAFF LIST CASE -->\n <li data-ng-class="{active: $state.includes(\'main.staff\')}">\n <a href="javascript:;" data-ng-if="::(Auth.isAdmin() || userModules[3])">\n <i class="icon-puzzle"></i>\n <span class="title" >{{\'APPLICATION_STAFF\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.staff\')}"></span>\n </a>\n <ul class="sub-menu">\n <!-- START USERS CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.users\')}">\n <a href="/staff/users/list">\n <i class="icon-eye"></i>\n <span class="title" >{{\'APPLICATION_USERS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.users\')" class="selected"></span>\n </a>\n </li>\n <!-- END USERS CASE -->\n\n <!-- START AGENTS CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[4])" data-ng-class="{active: $state.includes(\'main.staff.agents\')}">\n <a href="/staff/agents/list">\n <i class="icon-people"></i>\n <span class="title" >{{\'APPLICATION_AGENTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.agents\')" class="selected"></span>\n </a>\n </li>\n <!-- END AGENTS CASE -->\n\n <!-- START TELEPHONES CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.telephones\')}">\n <a href="/staff/telephones/list">\n <i class="icon-phone"></i>\n <span class="title" >{{\'APPLICATION_TELEPHONES\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.telephones\')" class="selected"></span>\n </a>\n </li>\n <!-- END TELEPHONES CASE -->\n\n <!-- START TEAMS CASE -->\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.includes(\'main.staff.teams\')}">\n <a href="/staff/teams/list">\n <i class="icon-shield"></i>\n <span class="title" >{{\'APPLICATION_TEAMS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.staff.teams\')" class="selected"></span>\n </a>\n </li>\n <!-- END TEAMS CASE -->\n </ul>\n </li>\n <!-- END STAFF LIST CASE -->\n\n <!-- START CONTACT MANAGER LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[5])" data-ng-class="{active: $state.includes(\'main.contactmanager\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.cm}">\n <i class="icon-notebook"></i>\n <span class="title disable-target" >{{\'APPLICATION_CONTACT_MANAGER\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.contactmanager.contacts\')\n || $state.includes(\'main.contactmanager.companies\')\n || $state.includes(\'main.contactmanager.listss\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.cm">\n <!-- START CONTACTS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.contacts\')}">\n <a href="/contactmanager/contacts/list">\n <i class=" fa fa-users"></i>\n <span class="title" >{{\'APPLICATION_CONTACTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.contacts\')" class="selected"></span>\n </a>\n </li>\n <!-- END CONTACTS CASE -->\n <!-- START COMPANIES CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.companies\')}" data-ng-if="::(Auth.isAdmin() || Auth.isUser())">\n <a href="/contactmanager/companies/list">\n <i class="icon-briefcase"></i>\n <span class="title" >{{\'APPLICATION_COMPANIES\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.companies\')" class="selected"></span>\n </a>\n </li>\n <!-- END COMPANIES CASE -->\n <!-- START LISTS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.contactmanager.lists\')}" data-ng-if="::(Auth.isAdmin() || Auth.isUser())">\n <a href="/contactmanager/lists/list">\n <i class="fa fa-tty"></i>\n <span class="title" >{{\'APPLICATION_LISTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.contactmanager.lists\')" class="selected"></span>\n </a>\n </li>\n <!-- END LISTS CASE -->\n </ul>\n </li>\n <!-- END CONTACT MANAGER LIST CASE -->\n\n <!-- START CHANNEL LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[6])" data-ng-class="{active: $state.includes(\'main.channels\')}">\n <a href="javascript:;">\n <i class="icon-directions"></i>\n <span class="title" >{{\'APPLICATION_CHANNELS\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.channels\')}"></span>\n </a>\n <ul class="sub-menu">\n <!-- START VOICE CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[7])" data-ng-class="{ active: $state.includes(\'main.channels.voice\') }">\n <a href="javascript:;">\n <i class="icon-earphones-alt"></i>\n <span class="title">{{ \'APPLICATION_VOICE\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.voice\') }"></span>\n </a>\n\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.queues\')}">\n <a href="/channels/voice/queues/list">\n <i class="icon-docs"></i>\n <span class="title">{{\'APPLICATION_QUEUES\' | translate}}</span>\n </a>\n </li>\n <li>\n <a href="javascript:;">\n <i class="icon-directions"></i>\n <span class="title"> {{ \'APPLICATION_ROUTES\' | translate}} </span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.voice.routes\') }"></span>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.inbound\')}">\n <a href="/channels/voice/routes/inbound/list">\n <i class="icon-call-in"></i>\n <span class="title"> {{\'APPLICATION_INBOUND\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.outbound\')}">\n <a href="/channels/voice/routes/outbound/list">\n <i class="icon-call-out"></i>\n <span class="title"> {{\'APPLICATION_OUTBOUND\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.routes.internal\')}">\n <a href="/channels/voice/routes/internal/list">\n <i class="icon-reload"></i>\n <span class="title"> {{\'APPLICATION_INTERNALS\' | translate}} </span>\n </a>\n </li>\n </ul>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.contexts\')}">\n <a href="/channels/voice/contexts/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_CONTEXTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.voicemails\')}">\n <a href="/channels/voice/voicemails/list">\n <i class="icon-envelope-letter"></i>\n <span class="title"> {{\'APPLICATION_VOICEMAILS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.mohs\')}">\n <a href="/channels/voice/mohs/list">\n <i class="icon-music-tone"></i>\n <span class="title"> {{\'APPLICATION_MOH\' | translate}} </span>\n </a>\n </li>\n <!-- START RECORDING CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.recordings\')}">\n <a href="/channels/voice/recordings/list">\n <i class="icon-control-play"></i>\n <span class="title">{{\'APPLICATION_RECORDINGS\' | translate}}</span>\n </a>\n </li>\n <!-- END RECORDING CASE -->\n <!-- START REALTIME CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.realtime\')}">\n <a href="/channels/voice/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n <!-- START CHANSPY CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.chanspy\')}">\n <a href="/channels/voice/chanspy/list">\n <i class="icon-magnifier"></i>\n <span class="title" >{{\'APPLICATION_CHANSPY\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.chanspy\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END CHANSPY CASE -->\n <!-- START CHANSPY CASE -->\n <li data-ng-class="{active: $state.includes(\'main.channels.voice.dispositions\')}">\n <a href="/channels/voice/dispositions/list">\n <i class="icon-target"></i>\n <span class="title" >{{\'APPLICATION_DISPOSITIONS\' | translate}}</span>\n </a>\n </li>\n <!-- END CHANSPY CASE -->\n </ul>\n </li>\n <!-- END VOICE CASE -->\n\n <!-- START CHAT CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.chat}">\n <i class="icon-bubble"></i>\n <span class="title disable-target">{{\'APPLICATION_CHAT\' | translate}}</span>\n <span class="arrow" data-ng-class="{open: $state.includes(\'main.channels.chat\')}"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.chat">\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.websites\')}">\n <a href="/channels/chat/websites/list">\n <i class="icon-globe"></i>\n <span class="title"> {{\'APPLICATION_WEB_SITES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.queues\')}">\n <a href="/channels/chat/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.room\')}">\n <a href="/channels/chat/room/internal/list">\n <i class="fa fa-users"></i>\n <span class="title"> {{\'APPLICATION_ROOMS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.online\')}">\n <a href="/channels/chat/online/list">\n <i class="icon-login"></i>\n <span class="title"> {{\'APPLICATION_ONLINE_MESSAGES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.offline\')}">\n <a href="/channels/chat/offline/list">\n <i class="icon-logout"></i>\n <span class="title"> {{\'APPLICATION_OFFLINE_MESSAGES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[8])" data-ng-class="{active: $state.includes(\'main.channels.chat.realtime\')}">\n <a href="/channels/chat/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END CHAT CASE -->\n\n <!-- START MAIL CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail\')}" >\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.mail}">\n <i class="icon-envelope"></i>\n <span class="title disable-target">{{\'APPLICATION_MAIL\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.mail\') }"></span>\n </a>\n\n <ul class="sub-menu" data-ng-if="license.mail">\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.accounts\') || $state.includes(\'main.channels.mail.account\')}">\n <a href="/channels/mail/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{\'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.queues\') || $state.includes(\'main.channels.mail.queue\')}">\n <a href="/channels/mail/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.inbox\')}">\n <a href="/channels/mail/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{\'APPLICATION_INBOX\' | translate}} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[9])" data-ng-class="{active: $state.includes(\'main.channels.mail.realtime\')}">\n <a href="/channels/mail/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END MAIL CASE -->\n\n <!-- START FAX CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.fax}">\n <i class="icon-paper-plane"></i>\n <span class="title disable-target"> {{ \'APPLICATION_FAX\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.fax\') }"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.fax">\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.accounts\')}">\n <a href="/channels/fax/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{ \'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.queues\')}">\n <a href="/channels/fax/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{ \'APPLICATION_QUEUES\' | translate }} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.inbox\')}">\n <a href="/channels/fax/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{ \'APPLICATION_INBOX\' | translate }} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[10])" data-ng-class="{active: $state.includes(\'main.channels.fax.realtime\')}">\n <a href="/channels/fax/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END FAX CASE -->\n\n <!-- START SMS CASE -->\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.messaging}">\n <i class="glyphicon glyphicon-comment"></i>\n <span class="title disable-target">{{\'APPLICATION_SMS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.channels.sms\') }"></span>\n </a>\n\n <ul class="sub-menu" data-ng-if="license.messaging">\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.accounts\') || $state.includes(\'main.channels.sms.account\')}">\n <a href="/channels/sms/accounts/list">\n <i class="icon-notebook"></i>\n <span class="title"> {{\'APPLICATION_ACCOUNTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.queues\') || $state.includes(\'main.channels.sms.queue\')}">\n <a href="/channels/sms/queues/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_QUEUES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-if="::(Auth.isAdmin() || Auth.isAgent() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.inbox\')}">\n <a href="/channels/sms/inbox/view">\n <i class="icon-note"></i>\n <span class="title"> {{\'APPLICATION_INBOX\' | translate}} </span>\n </a>\n </li>\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[11])" data-ng-class="{active: $state.includes(\'main.channels.sms.realtime\')}">\n <a href="/channels/sms/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n\n <!-- END SMS CASE -->\n\n <!-- START REALTIME CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[12])" data-ng-class="{active: $state.includes(\'main.channels.realtime\')}">\n <a href="/channels/realtime/view/agents">\n <i class="icon-energy"></i>\n <span class="title">{{\'APPLICATION_REALTIME\' | translate}}</span>\n </a>\n </li>\n <!-- END REALTIME CASE -->\n </ul>\n </li>\n <!-- END CHANNEL LIST CASE -->\n\n <!-- START TOOLS LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[13])" data-ng-class="{active: $state.includes(\'main.tools\') && !$state.is(\'main.tools.yourdashboards.show\')}">\n <a href="javascript:;">\n <i class="icon-wrench"></i>\n <span class="title" >{{\'APPLICATION_TOOLS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.tools\') && !$state.is(\'main.tools.yourdashboards.show\')}"></span>\n </a>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.tools.triggers\')}">\n <a href="/tools/triggers/list">\n <i class="icon-bulb"></i>\n <span class="title"> {{\'APPLICATION_TRIGGERS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.automations\')}">\n <a href="/tools/automations/list">\n <i class="icon-settings"></i>\n <span class="title"> {{\'APPLICATION_AUTOMATIONS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.trunks\')}">\n <a href="/tools/trunks/list">\n <i class="icon-link"></i>\n <span class="title"> {{\'APPLICATION_TRUNKS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.intervals\')}">\n <a href="/tools/intervals/list">\n <i class="icon-clock"></i>\n <span class="title"> {{\'APPLICATION_INTERVALS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.variables\')}">\n <a href="/tools/variables/list">\n <i class="fa fa-eye"></i>\n <span class="title" >{{\'APPLICATION_VARIABLES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.tools.tags\')}">\n <a href="/tools/tags/list">\n <i class="icon-tag"></i>\n <span class="title" >{{\'APPLICATION_TAGS\' | translate}} </span>\n </a>\n </li>\n <!-- START TEMPLATE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.templates\')}">\n <a href="/tools/templates/list">\n <i class="icon-docs"></i>\n <span class="title"> {{\'APPLICATION_TEMPLATES\' | translate}} </span>\n </a>\n </li>\n <!-- END TEMPLATE CASE -->\n\n <!-- START PAUSE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.pauses\')}">\n <a href="/tools/pauses/list">\n <i class="icon-control-pause"></i>\n <span class="title"> {{\'APPLICATION_PAUSES\' | translate}} </span>\n </a>\n </li>\n <!-- END PAUSE CASE -->\n\n <!-- START ANSWER CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.answers\')}">\n <a href="/tools/answers/list">\n <i class="icon-magic-wand"></i>\n <span class="title"> {{\'APPLICATION_CANNED_ANSWERS\' | translate}} </span>\n </a>\n </li>\n <!-- END ANSWER CASE -->\n\n <!-- START DASHBOARD MANAGER CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.yourdashboards\') && !$state.is(\'main.tools.yourdashboards.show\')}">\n <a href="/tools/yourdashboards/list">\n <i class="icon-grid"></i>\n <span class="title"> {{\'APPLICATION_DASHBOARDS_MANAGER\' | translate}} </span>\n </a>\n </li>\n <!-- END DASHBOARD MANAGER CASE -->\n\n <!-- START SOUND CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.sounds\')}">\n <a href="/tools/sounds/list">\n <i class="icon-music-tone-alt"></i>\n <span class="title" >{{\'APPLICATION_SOUNDS\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.sounds\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SOUND CASE -->\n\n <!-- START SCHEDULE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.tools.scheduler\')}">\n <a href="/tools/scheduler/list">\n <i class="icon-calendar"></i>\n <span class="title" >{{\'APPLICATION_SCHEDULER\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.sounds\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SCHEDULE CASE -->\n </ul>\n </li>\n <!-- END TOOLS LIST CASE -->\n\n <!-- START CALLYSQUARE CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[14])" data-ng-class="{active: $state.includes(\'main.square\')}">\n <a href="javascript:;">\n <i class="fa fa-superscript"></i>\n <span class="title" >Cally ²</span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu">\n <li data-ng-class="{active: $state.includes(\'main.square.projects\')}">\n <a href="/square/projects/list">\n <i class="fa fa-slack"></i>\n <span class="title" >{{\'APPLICATION_PROJECTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.odbc\')}">\n <a href="/square/odbc/list">\n <i class="fa fa-database"></i>\n <span class="title" >{{\'APPLICATION_ODBC\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.recordings\')}">\n <a href="/square/recordings/list">\n <i class="icon-microphone"></i>\n <span class="title" >{{\'APPLICATION_RECORDINGS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.square.realtime.view.general\')}">\n <a href="/square/realtime/view/general">\n <i class="icon-energy"></i>\n <span class="title" >{{\'APPLICATION_REALTIME\' | translate}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END CALLYSQUARE CASE -->\n <!-- START JSCRIPTY LIST -->\n <li data-ng-show="::(Auth.isAdmin() || Auth.isAgent() || userModules[15])" data-ng-class="{active: $state.includes(\'main.jscripty\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.jscripty}" >\n <i class="icon-note"></i>\n <span class="title" >{{\'APPLICATION_JSCRIPTY\' | translate}} </span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.jscripty">\n <!-- -->\n <!-- START PROJECTS CASE -->\n <li data-ng-show="Auth.isAdmin() || Auth.isAgent()|| isAvailableModule(15)" data-ng-class="{active: $state.includes(\'main.jscripty.projects\')}">\n <a href="/jscripty/projects/list">\n <i class="fa fa-slack"></i>\n <span class="title" >{{\'APPLICATION_PROJECTS\' | translate}} </span>\n </a>\n </li>\n <!-- END PROJECTS CASE -->\n </ul>\n </li>\n <!-- END JSCRIPTY LIST -->\n\n <!-- START MOTION DIALER LIST CASE-->\n <li data-ng-if="::(Auth.isAdmin() || userModules[16])" data-ng-class="{active: $state.includes(\'main.motiondialer\')}">\n <a href="javascript:;" data-ng-class="{\'disabled-link\':!license.dialer}">\n <i class="icon-control-forward"></i>\n <span class="title disable-target" >{{\'APPLICATION_MOTION_DIALER\' | translate}} </span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu" data-ng-if="license.dialer">\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.lists\')}">\n <a href="/motiondialer/lists/list">\n <i class="icon-docs"></i>\n <span class="title" >{{\'APPLICATION_LISTS\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.blacklist\')}">\n <a href="/motiondialer/blacklist/list">\n <i class="icon-doc"></i>\n <span class="title" >{{\'APPLICATION_BLACKLIST\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.processes\')}">\n <a href="/motiondialer/processes/list">\n <i class="icon-settings"></i>\n <span class="title" >{{\'APPLICATION_PROCESSES\' | translate}} </span>\n </a>\n </li>\n <li data-ng-class="{active: $state.includes(\'main.motiondialer.info\')}">\n <a href="/motiondialer/info/view/about">\n <i class="icon-info"></i>\n <span class="title" >{{\'APPLICATION_INFO\' | translate}} </span>\n </a>\n </li>\n </ul>\n </li>\n <!-- END MOTION DIALER LIST CASE-->\n\n <!-- START ANALYTIC LIST CASE -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[17])" data-ng-class="{active: $state.includes(\'main.analytics.reports\')\n || $state.includes(\'main.analytics.extracted\')\n || $state.includes(\'main.analytics.metrics\')}" data-ng-if="::(Auth.isAdmin())">\n <a href="javascript:;">\n <i class="icon-calculator"></i>\n <span class="title" >{{\'APPLICATION_ANALYTICS\' | translate}}</span>\n <span class="arrow" data-ng-class="{ open: $state.includes(\'main.analytics.reports\')\n || $state.includes(\'main.analytics.extracted\')\n || $state.includes(\'main.analytics.metrics\') }"></span>\n </a>\n <ul class="sub-menu">\n <!-- START REPORT CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.reports\')}">\n <a href="/analytics/reports/list">\n <i class="icon-book-open"></i>\n <span class="title" >{{\'APPLICATION_REPORTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.analytics.reports\')" class="selected"></span>\n </a>\n </li>\n <!-- END REPORT CASE -->\n <!-- START EXTRA REPORT CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.extracted\')}">\n <a href="/analytics/extracted/list">\n <i class="fa fa-file-pdf-o"></i>\n <span class="title" >{{\'APPLICATION_EXTRACTED_REPORTS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.analytics.extracted\')" class="selected"></span>\n </a>\n </li>\n <!-- END EXTRA REPORT CASE -->\n <!-- START METRICS CASE -->\n <li data-ng-class="{active: $state.includes(\'main.analytics.metrics\')}">\n <a href="/analytics/metrics/list">\n <i class="icon-calculator"></i>\n <span class="title" >{{\'APPLICATION_METRICS\' | translate}}</span>\n <span data-ng-if="$state.includes(\'main.metrics.reports\')" class="selected"></span>\n </a>\n </li>\n <!-- END METRICS CASE -->\n </ul>\n </li>\n <!-- END ANALYTIC LIST CASE -->\n\n <!-- START SETTINGS LIST -->\n <li data-ng-if="::(Auth.isAdmin() || userModules[18])" data-ng-class="{active: $state.includes(\'main.setting\')}">\n <a href="javascript:;">\n <i class="icon-settings"></i>\n <span class="title" >{{\'APPLICATION_SETTINGS\' | translate}}</span>\n <span class="arrow"></span>\n </a>\n <ul class="sub-menu">\n <!-- START UPDATES CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.updates\')}">\n <a href="{{license.update ? \'/setting/updates/list\' : \'javascript:;\'}}" data-ng-class="{\'disabled-link\':!license.update}">\n <i class="icon-cloud-download"></i>\n <span class="title disable-target" >{{\'APPLICATION_UPDATES\' | translate}}</span>\n <!-- <span data-ng-if="$state.includes(\'main.updates\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END UPDATES CASE -->\n\n <!-- START SMTP CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.smtp\')}">\n <a href="/setting/smtp/view">\n <i class="icon-envelope"></i>\n <span class="title">SMTP</span>\n <!-- <span data-ng-if="$state.includes(\'main.smtp\')" class="selected"></span> -->\n </a>\n </li>\n <!-- END SMTP CASE -->\n\n <!-- START LICENSE CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.license\')}">\n <a href="/setting/license/view">\n <i class="icon-info"></i>\n <span class="title"> {{\'APPLICATION_LICENSE\' | translate}} </span>\n </a>\n </li>\n <!-- END LICENSE CASE -->\n\n <!-- START NETWORK CASE -->\n <li data-ng-class="{active: $state.includes(\'main.setting.network\')}">\n <a href="/setting/network/view/localnet">\n <i class="icon-globe"></i>\n <span class="title"> {{\'APPLICATION_NETWORK\' | translate}} </span>\n </a>\n </li>\n <!-- END NETWORK CASE -->\n </ul>\n </li>\n <!-- END SETTINGS LIST -->\n\n <!-- START INTEGRATION CASE -->\n <li data-ng-if="(Auth.isAdmin() || userModules[19]) && integration.active" data-ng-repeat="integration in integrations" data-ng-class="{active: $state.includes(\'main.{{integration.state}}\')}">\n <a href="/{{integration.state}}/list" ng-switch on="integration.state">\n <i ng-switch-when="zendesk" class="icon-heart"></i>\n <i ng-switch-when="salesforce" class="fa fa-cloud"></i>\n <i ng-switch-default class="icon-handbag"></i>\n <span class="title" >{{integration.name}}</span>\n <span data-ng-if="$state.includes(\'main.{{integration.state}}\')" class="selected"></span>\n </a>\n </li>\n\n <li data-ng-if="::(Auth.isAdmin())" data-ng-class="{active: $state.is(\'main.market\')}">\n <a href="/market">\n <i class="icon-handbag"></i>\n <span class="title" translate>Market Place</span>\n <span data-ng-if="$state.includes(\'main.market\')" class="selected"></span>\n </a>\n </li>\n <!-- END INTEGRATIONS CASE -->\n\n</ul>\n<!-- END SIDEBAR MENU -->\n</div>\n'); -}]); \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Actions.js b/public/assets/plugins/jscripty/js/Actions.js index 3525c89..79eed12 100644 --- a/public/assets/plugins/jscripty/js/Actions.js +++ b/public/assets/plugins/jscripty/js/Actions.js @@ -1 +1 @@ -var _0x995f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x61\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x65\x64\x69\x74\x6F\x72","\x67\x72\x61\x70\x68","\x6E\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53","\x73\x61\x76\x65\x41\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2D\x53","\x70\x75\x62\x6C\x69\x73\x68","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x50","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x43\x74\x72\x6C\x2B\x45","\x65\x64\x69\x74\x46\x69\x6C\x65","\x65\x64\x69\x74","\x67\x65\x74","\x62\x69\x6E\x64","\x70\x75\x74","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x70\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E","\x73\x70\x72\x69\x74\x65\x2D\x70\x72\x69\x6E\x74","\x43\x74\x72\x6C\x2B\x50","\x70\x72\x65\x76\x69\x65\x77","\x73\x68\x6F\x77","\x75\x6E\x64\x6F","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x70\x72\x69\x74\x65\x2D\x75\x6E\x64\x6F","\x43\x74\x72\x6C\x2B\x5A","\x72\x65\x64\x6F","\x73\x70\x72\x69\x74\x65\x2D\x72\x65\x64\x6F","\x43\x74\x72\x6C\x2B\x59","\x63\x75\x74","\x73\x70\x72\x69\x74\x65\x2D\x63\x75\x74","\x43\x74\x72\x6C\x2B\x58","\x63\x6F\x70\x79","\x73\x70\x72\x69\x74\x65\x2D\x63\x6F\x70\x79","\x43\x74\x72\x6C\x2B\x43","\x70\x61\x73\x74\x65","\x73\x70\x72\x69\x74\x65\x2D\x70\x61\x73\x74\x65","\x43\x74\x72\x6C\x2B\x56","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x44\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x44","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x56","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x45","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x43\x74\x72\x6C\x2B\x41","\x68\x6F\x6D\x65","\x48\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x55\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x44\x6F\x77\x6E","\x65\x78\x70\x61\x6E\x64","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x45\x6E\x74\x65\x72","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x42\x61\x63\x6B\x73\x70\x61\x63\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x46","\x74\x6F\x42\x61\x63\x6B","\x43\x74\x72\x6C\x2B\x42","\x67\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x43\x74\x72\x6C\x2B\x47","\x75\x6E\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x55","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x70\x72\x6F\x6D\x70\x74","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x77\x72\x61\x70","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x73\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x30","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x20\x28","\x20\x30\x2D\x33\x36\x30\x29","\x74\x69\x6C\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x63\x6C\x6F\x6E\x65","\x78","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x79","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x76\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x65\x61\x73\x74","\x73\x6F\x75\x74\x68","\x77\x65\x73\x74","\x6E\x6F\x72\x74\x68","\x43\x74\x72\x6C\x2B\x52","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x41\x64\x64","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x53\x75\x62\x74\x72\x61\x63\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x66\x69\x74\x50\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x66\x75\x6E\x63\x74","\x70\x61\x67\x65\x56\x69\x65\x77","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x6D\x61\x78","\x72\x6F\x75\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x63\x75\x73\x74\x6F\x6D","\x20\x28\x25\x29","\x67\x65\x74\x53\x63\x61\x6C\x65","\x67\x72\x69\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x47","\x73\x65\x74\x54\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x67\x75\x69\x64\x65\x73","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x73\x63\x61\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x43\x74\x72\x6C\x2B\x51","\x63\x6F\x70\x79\x43\x6F\x6E\x6E\x65\x63\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x68\x65\x6C\x70","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x5F","\x2F\x68\x65\x6C\x70","\x2E\x68\x74\x6D\x6C","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x46\x31","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x73\x68\x61\x64\x6F\x77","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x29","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x73\x74\x61\x74\x65","\x74\x72\x69\x67\x67\x65\x72\x58","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x74\x72\x69\x67\x67\x65\x72\x59","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x6D\x61\x67\x65","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x75\x72\x6C","\x6F\x6E\x6C\x6F\x61\x64","\x6F\x6E\x65\x72\x72\x6F\x72","\x66\x69\x6C\x65\x4E\x6F\x74\x46\x6F\x75\x6E\x64","\x61\x6C\x65\x72\x74","\x73\x72\x63","\x63\x61\x6C\x6C","\x6C\x61\x62\x65\x6C","\x65\x6E\x61\x62\x6C\x65\x64","\x69\x63\x6F\x6E\x43\x6C\x73","\x73\x68\x6F\x72\x74\x63\x75\x74","\x65\x78\x74\x65\x6E\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64"];_0x995f[0];function Actions(_0xee0cx2){this[_0x995f[1]]=_0xee0cx2;this[_0x995f[2]]= new Object();this[_0x995f[3]]()}Actions[_0x995f[4]][_0x995f[3]]=function(){var _0xee0cx3=this[_0x995f[1]];var _0xee0cx4=_0xee0cx3[_0x995f[5]];var _0xee0cx5=_0xee0cx4[_0x995f[6]];this[_0x995f[10]](_0x995f[7],function(){_0xee0cx3[_0x995f[9]]( new NewDialog(_0xee0cx3)[_0x995f[8]],300,180,true,true)});this[_0x995f[10]](_0x995f[11],function(){_0xee0cx3[_0x995f[9]]( new OpenDialog(_0xee0cx3)[_0x995f[8]],300,180,true,true)});this[_0x995f[10]](_0x995f[12],function(){_0xee0cx3[_0x995f[13]](false)},null,null,_0x995f[14]);this[_0x995f[10]](_0x995f[15],function(){_0xee0cx3[_0x995f[13]](true)},null,null,_0x995f[16]);this[_0x995f[10]](_0x995f[17],function(){_0xee0cx3[_0x995f[18]](false)},null,null,_0x995f[19]);this[_0x995f[10]](_0x995f[20],function(){_0xee0cx3[_0x995f[9]]( new VariableDialog(_0xee0cx3)[_0x995f[8]],300,180,true,true)});this[_0x995f[10]](_0x995f[21],function(){_0xee0cx3[_0x995f[9]]( new ImportDialog(_0xee0cx3)[_0x995f[8]],300,200,true,true)});this[_0x995f[10]](_0x995f[22],function(){_0xee0cx3[_0x995f[9]]( new ExportDialog(_0xee0cx3)[_0x995f[8]],300,200,true,true)},null,null,_0x995f[23]);this[_0x995f[28]](_0x995f[24], new Action(mxResources[_0x995f[26]](_0x995f[25]),mxUtils[_0x995f[27]](this,function(){this[_0x995f[1]][_0x995f[9]]( new EditFileDialog(_0xee0cx3)[_0x995f[8]],620,420,true,true)})));this[_0x995f[10]](_0x995f[29],function(){_0xee0cx3[_0x995f[9]]( new RenameDialog(_0xee0cx3)[_0x995f[8]],300,180,true,true)});this[_0x995f[10]](_0x995f[30],function(){mxUtils[_0x995f[31]](_0xee0cx5)},null,_0x995f[32],_0x995f[33]);this[_0x995f[10]](_0x995f[34],function(){mxUtils[_0x995f[35]](_0xee0cx5,null,10,10)});this[_0x995f[10]](_0x995f[36],function(){_0xee0cx4[_0x995f[37]][_0x995f[36]]()},null,_0x995f[38],_0x995f[39]);this[_0x995f[10]](_0x995f[40],function(){_0xee0cx4[_0x995f[37]][_0x995f[40]]()},null,_0x995f[41],_0x995f[42]);this[_0x995f[10]](_0x995f[43],function(){mxClipboard[_0x995f[43]](_0xee0cx5)},null,_0x995f[44],_0x995f[45]);this[_0x995f[10]](_0x995f[46],function(){mxClipboard[_0x995f[46]](_0xee0cx5)},null,_0x995f[47],_0x995f[48]);this[_0x995f[10]](_0x995f[49],function(){mxClipboard[_0x995f[49]](_0xee0cx5)},false,_0x995f[50],_0x995f[51]);this[_0x995f[10]](_0x995f[52],function(){_0xee0cx5[_0x995f[53]]()},null,null,_0x995f[54]);this[_0x995f[10]](_0x995f[55],function(){var _0xee0cx6=_0xee0cx5[_0x995f[56]];_0xee0cx5[_0x995f[59]](_0xee0cx5[_0x995f[58]](_0xee0cx5[_0x995f[57]](),_0xee0cx6,_0xee0cx6,true))},null,null,_0x995f[60]);this[_0x995f[10]](_0x995f[61],function(){_0xee0cx5[_0x995f[61]]()},null,null,_0x995f[62]);this[_0x995f[10]](_0x995f[63],function(){_0xee0cx5[_0x995f[63]]()},null,null,_0x995f[64]);this[_0x995f[10]](_0x995f[65],function(){_0xee0cx5[_0x995f[65]]()},null,null,_0x995f[66]);this[_0x995f[10]](_0x995f[67],function(){_0xee0cx5[_0x995f[67]]()},null,null,_0x995f[68]);this[_0x995f[10]](_0x995f[69],function(){_0xee0cx5[_0x995f[69]]()},null,null,_0x995f[70]);this[_0x995f[10]](_0x995f[71],function(){_0xee0cx5[_0x995f[71]]()},null,null,_0x995f[72]);this[_0x995f[10]](_0x995f[73],function(){_0xee0cx5[_0x995f[74]](false)},null,null,_0x995f[75]);this[_0x995f[10]](_0x995f[76],function(){_0xee0cx5[_0x995f[74]](true)},null,null,_0x995f[77]);this[_0x995f[10]](_0x995f[78],function(){_0xee0cx5[_0x995f[79]](false)},null,null,_0x995f[80]);this[_0x995f[10]](_0x995f[81],function(){_0xee0cx5[_0x995f[79]](true)},null,null,_0x995f[82]);this[_0x995f[10]](_0x995f[83],function(){_0xee0cx5[_0x995f[85]](_0xee0cx5[_0x995f[84]](null,0))},null,null,_0x995f[86]);this[_0x995f[10]](_0x995f[87],function(){_0xee0cx5[_0x995f[59]](_0xee0cx5[_0x995f[88]]())},null,null,_0x995f[89]);this[_0x995f[10]](_0x995f[90],function(){_0xee0cx5[_0x995f[91]]()});this[_0x995f[10]](_0x995f[92],function(){var _0xee0cx7=_0xee0cx5[_0x995f[93]]();var _0xee0cx8=_0xee0cx5[_0x995f[94]](_0xee0cx7);if(_0xee0cx8==null){_0xee0cx8=_0x995f[95]};_0xee0cx8=mxUtils[_0x995f[97]](mxResources[_0x995f[26]](_0x995f[96]),_0xee0cx8);if(_0xee0cx8!=null){_0xee0cx5[_0x995f[98]](_0xee0cx7,_0xee0cx8)}});this[_0x995f[10]](_0x995f[99],function(){var _0xee0cx7=_0xee0cx5[_0x995f[93]]();var _0xee0cx8=_0xee0cx5[_0x995f[94]](_0xee0cx7);if(_0xee0cx8!=null){window[_0x995f[11]](_0xee0cx8)}});this[_0x995f[10]](_0x995f[100],function(){var _0xee0cx9=_0xee0cx5[_0x995f[57]]();if(_0xee0cx9!=null){_0xee0cx5[_0x995f[102]]()[_0x995f[101]]();try{for(var _0xee0cxa=0;_0xee0cxa<_0xee0cx9[_0x995f[103]];_0xee0cxa++){var _0xee0cx7=_0xee0cx9[_0xee0cxa];if(_0xee0cx5[_0x995f[102]]()[_0x995f[104]](_0xee0cx7)){_0xee0cx5[_0x995f[105]]([_0xee0cx7],20)}else {_0xee0cx5[_0x995f[106]](_0xee0cx7)}}}finally{_0xee0cx5[_0x995f[102]]()[_0x995f[107]]()}}});this[_0x995f[10]](_0x995f[108],function(){var _0xee0cxb=_0xee0cx5[_0x995f[110]]()[_0x995f[109]](_0xee0cx5[_0x995f[93]]());var _0xee0cxc=_0x995f[111];if(_0xee0cxb!=null&&_0xee0cxb[_0x995f[113]][mxConstants[_0x995f[112]]]==_0x995f[111]){_0xee0cxc=null};_0xee0cx5[_0x995f[114]](mxConstants.STYLE_WHITE_SPACE,_0xee0cxc)});this[_0x995f[10]](_0x995f[115],function(){var _0xee0cxc=_0x995f[116];var _0xee0cxb=_0xee0cx5[_0x995f[110]]()[_0x995f[109]](_0xee0cx5[_0x995f[93]]());if(_0xee0cxb!=null){_0xee0cxc=_0xee0cxb[_0x995f[113]][mxConstants[_0x995f[117]]]||_0xee0cxc};_0xee0cxc=mxUtils[_0x995f[97]](mxResources[_0x995f[26]](_0x995f[96])+_0x995f[118]+mxResources[_0x995f[26]](_0x995f[115])+_0x995f[119],_0xee0cxc);if(_0xee0cxc!=null){_0xee0cx5[_0x995f[114]](mxConstants.STYLE_ROTATION,_0xee0cxc)}});this[_0x995f[10]](_0x995f[120],function(){var _0xee0cx9=_0xee0cx5[_0x995f[57]]();if(_0xee0cx9!=null){_0xee0cx5[_0x995f[102]]()[_0x995f[101]]();try{for(var _0xee0cxa=0;_0xee0cxa<_0xee0cx9[_0x995f[103]];_0xee0cxa++){var _0xee0cx7=_0xee0cx9[_0xee0cxa];if(_0xee0cx5[_0x995f[102]]()[_0x995f[121]](_0xee0cx7)&&_0xee0cx5[_0x995f[102]]()[_0x995f[104]](_0xee0cx7)==0){var _0xee0cxd=_0xee0cx5[_0x995f[122]](_0xee0cx7);if(_0xee0cxd!=null){_0xee0cxd=_0xee0cxd[_0x995f[123]]();_0xee0cxd[_0x995f[124]]+=_0xee0cxd[_0x995f[125]]/2-_0xee0cxd[_0x995f[126]]/2;_0xee0cxd[_0x995f[127]]+=_0xee0cxd[_0x995f[126]]/2-_0xee0cxd[_0x995f[125]]/2;var _0xee0cxe=_0xee0cxd[_0x995f[125]];_0xee0cxd[_0x995f[125]]=_0xee0cxd[_0x995f[126]];_0xee0cxd[_0x995f[126]]=_0xee0cxe;_0xee0cx5[_0x995f[102]]()[_0x995f[128]](_0xee0cx7,_0xee0cxd);var _0xee0cxb=_0xee0cx5[_0x995f[129]][_0x995f[109]](_0xee0cx7);if(_0xee0cxb!=null){var _0xee0cxf=_0xee0cxb[_0x995f[113]][mxConstants[_0x995f[130]]]||_0x995f[131];if(_0xee0cxf==_0x995f[131]){_0xee0cxf=_0x995f[132]}else {if(_0xee0cxf==_0x995f[132]){_0xee0cxf=_0x995f[133]}else {if(_0xee0cxf==_0x995f[133]){_0xee0cxf=_0x995f[134]}else {if(_0xee0cxf==_0x995f[134]){_0xee0cxf=_0x995f[131]}}}};_0xee0cx5[_0x995f[114]](mxConstants.STYLE_DIRECTION,_0xee0cxf,[_0xee0cx7])}}}}}finally{_0xee0cx5[_0x995f[102]]()[_0x995f[107]]()}}},null,null,_0x995f[135]);this[_0x995f[10]](_0x995f[136],function(){_0xee0cx5[_0x995f[137]](1)});this[_0x995f[10]](_0x995f[138],function(){_0xee0cx5[_0x995f[138]]()},null,null,_0x995f[139]);this[_0x995f[10]](_0x995f[140],function(){_0xee0cx5[_0x995f[140]]()},null,null,_0x995f[141]);this[_0x995f[10]](_0x995f[142],function(){_0xee0cx5[_0x995f[143]]()});this[_0x995f[10]](_0x995f[144],mxUtils[_0x995f[27]](this,function(){if(!_0xee0cx5[_0x995f[145]]){this[_0x995f[26]](_0x995f[147])[_0x995f[146]]()};var _0xee0cx10=_0xee0cx5[_0x995f[148]];var _0xee0cx11=_0xee0cx5[_0x995f[149]];var _0xee0cx12=_0xee0cx5[_0x995f[8]][_0x995f[150]]-20;var _0xee0cx13=_0xee0cx5[_0x995f[8]][_0x995f[151]]-20;var _0xee0cx14=Math[_0x995f[153]](100*Math[_0x995f[152]](_0xee0cx12/_0xee0cx10[_0x995f[125]]/_0xee0cx11,_0xee0cx13/_0xee0cx10[_0x995f[126]]/_0xee0cx11))/100;_0xee0cx5[_0x995f[137]](_0xee0cx14);_0xee0cx5[_0x995f[8]][_0x995f[154]]=Math[_0x995f[157]](_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[124]]*_0xee0cx14-Math[_0x995f[156]](10,(_0xee0cx5[_0x995f[8]][_0x995f[150]]-_0xee0cx10[_0x995f[125]]*_0xee0cx11*_0xee0cx14)/2));_0xee0cx5[_0x995f[8]][_0x995f[158]]=Math[_0x995f[157]](_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[127]]*_0xee0cx14-Math[_0x995f[156]](10,(_0xee0cx5[_0x995f[8]][_0x995f[151]]-_0xee0cx10[_0x995f[126]]*_0xee0cx11*_0xee0cx14)/2))}));this[_0x995f[10]](_0x995f[159],mxUtils[_0x995f[27]](this,function(){if(!_0xee0cx5[_0x995f[145]]){this[_0x995f[26]](_0x995f[147])[_0x995f[146]]()};var _0xee0cx10=_0xee0cx5[_0x995f[148]];var _0xee0cx11=_0xee0cx5[_0x995f[149]];var _0xee0cx12=_0xee0cx5[_0x995f[8]][_0x995f[150]]-20;var _0xee0cx14=Math[_0x995f[153]](100*_0xee0cx12/_0xee0cx10[_0x995f[125]]/_0xee0cx11)/100;_0xee0cx5[_0x995f[137]](_0xee0cx14);_0xee0cx5[_0x995f[8]][_0x995f[154]]=Math[_0x995f[157]](_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[124]]*_0xee0cx14-Math[_0x995f[156]](10,(_0xee0cx5[_0x995f[8]][_0x995f[150]]-_0xee0cx10[_0x995f[125]]*_0xee0cx11*_0xee0cx14)/2));_0xee0cx5[_0x995f[8]][_0x995f[158]]=Math[_0x995f[157]](_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[127]]*_0xee0cx14-Math[_0x995f[156]](10,(_0xee0cx5[_0x995f[8]][_0x995f[151]]-_0xee0cx10[_0x995f[126]]*_0xee0cx11*_0xee0cx14)/2))}));this[_0x995f[28]](_0x995f[160], new Action(mxResources[_0x995f[26]](_0x995f[161]),function(){var _0xee0cxc=mxUtils[_0x995f[97]](mxResources[_0x995f[26]](_0x995f[96])+_0x995f[162],parseInt(_0xee0cx5[_0x995f[110]]()[_0x995f[163]]()*100));if(_0xee0cxc!=null&&_0xee0cxc[_0x995f[103]]>0&&!isNaN(parseInt(_0xee0cxc))){_0xee0cx5[_0x995f[137]](parseInt(_0xee0cxc)/100)}}));var _0xee0cx15=null;_0xee0cx15=this[_0x995f[10]](_0x995f[164],function(){_0xee0cx5[_0x995f[166]](!_0xee0cx5[_0x995f[165]]());_0xee0cx4[_0x995f[167]]()},null,null,_0x995f[168]);_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[165]]()});_0xee0cx15=this[_0x995f[10]](_0x995f[171],function(){_0xee0cx5[_0x995f[173]][_0x995f[172]]=!_0xee0cx5[_0x995f[173]][_0x995f[172]]});_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[173]][_0x995f[172]]});_0xee0cx15=this[_0x995f[10]](_0x995f[174],function(){_0xee0cx5[_0x995f[176]][_0x995f[177]](!_0xee0cx5[_0x995f[176]][_0x995f[175]]())});_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[176]][_0x995f[175]]()});_0xee0cx15=this[_0x995f[10]](_0x995f[178],function(){_0xee0cx5[_0x995f[179]]=!_0xee0cx5[_0x995f[179]];_0xee0cx5[_0x995f[129]][_0x995f[180]]()});_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[179]]});_0xee0cx15=this[_0x995f[10]](_0x995f[181],function(){_0xee0cx5[_0x995f[181]]=!_0xee0cx5[_0x995f[181]];_0xee0cx4[_0x995f[167]]();if(!_0xee0cx5[_0x995f[181]]){var _0xee0cx16=_0xee0cx5[_0x995f[129]][_0x995f[155]];_0xee0cx5[_0x995f[129]][_0x995f[183]](_0xee0cx16[_0x995f[124]]-_0xee0cx5[_0x995f[8]][_0x995f[154]]/_0xee0cx5[_0x995f[129]][_0x995f[182]],_0xee0cx16[_0x995f[127]]-_0xee0cx5[_0x995f[8]][_0x995f[158]]/_0xee0cx5[_0x995f[129]][_0x995f[182]]);_0xee0cx5[_0x995f[8]][_0x995f[154]]=0;_0xee0cx5[_0x995f[8]][_0x995f[158]]=0;_0xee0cx5[_0x995f[184]]()}else {var _0xee0cx17=_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[124]];var _0xee0cx18=_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[127]];_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[124]]=0;_0xee0cx5[_0x995f[129]][_0x995f[155]][_0x995f[127]]=0;_0xee0cx5[_0x995f[184]]();_0xee0cx5[_0x995f[8]][_0x995f[154]]-=Math[_0x995f[157]](_0xee0cx17*_0xee0cx5[_0x995f[129]][_0x995f[182]]);_0xee0cx5[_0x995f[8]][_0x995f[158]]-=Math[_0x995f[157]](_0xee0cx18*_0xee0cx5[_0x995f[129]][_0x995f[182]])}},!mxClient.IS_TOUCH);_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[8]][_0x995f[113]][_0x995f[185]]==_0x995f[186]});_0xee0cx15=this[_0x995f[10]](_0x995f[147],mxUtils[_0x995f[27]](this,function(){_0xee0cx5[_0x995f[145]]=!_0xee0cx5[_0x995f[145]];_0xee0cx5[_0x995f[187]]=_0xee0cx5[_0x995f[145]];_0xee0cx5[_0x995f[188]]=_0xee0cx5[_0x995f[187]];_0xee0cx5[_0x995f[129]][_0x995f[189]]();_0xee0cx5[_0x995f[184]]();_0xee0cx4[_0x995f[167]]();_0xee0cx4[_0x995f[191]][_0x995f[190]]();if(mxUtils[_0x995f[192]](_0xee0cx5[_0x995f[8]])){if(_0xee0cx5[_0x995f[145]]){_0xee0cx5[_0x995f[8]][_0x995f[154]]-=20;_0xee0cx5[_0x995f[8]][_0x995f[158]]-=20}else {_0xee0cx5[_0x995f[8]][_0x995f[154]]+=20;_0xee0cx5[_0x995f[8]][_0x995f[158]]+=20}}}));_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[145]]});_0xee0cx15=this[_0x995f[10]](_0x995f[193],function(){_0xee0cx5[_0x995f[195]](!_0xee0cx5[_0x995f[194]][_0x995f[175]]())},null,null,_0x995f[196]);_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[194]][_0x995f[175]]()});_0xee0cx15=this[_0x995f[10]](_0x995f[197],function(){_0xee0cx5[_0x995f[194]][_0x995f[199]](!_0xee0cx5[_0x995f[194]][_0x995f[198]]())});_0xee0cx15[_0x995f[169]](true);_0xee0cx15[_0x995f[170]](function(){return _0xee0cx5[_0x995f[194]][_0x995f[198]]()});this[_0x995f[10]](_0x995f[200],function(){var _0xee0cx19=_0x995f[95];if(mxResources[_0x995f[202]](mxClient[_0x995f[201]])){_0xee0cx19=_0x995f[203]+mxClient[_0x995f[201]]};window[_0x995f[11]](RESOURCES_PATH+_0x995f[204]+_0xee0cx19+_0x995f[205])});this[_0x995f[28]](_0x995f[206], new Action(mxResources[_0x995f[26]](_0x995f[206])+_0x995f[207],function(){_0xee0cx3[_0x995f[9]]( new AboutDialog(_0xee0cx3)[_0x995f[8]],320,280,true,true)},null,null,_0x995f[208]));var _0xee0cx1a=mxUtils[_0x995f[27]](this,function(_0xee0cx1b,_0xee0cx1c){this[_0x995f[10]](_0xee0cx1b,function(){_0xee0cx5[_0x995f[209]](mxConstants.STYLE_FONTSTYLE,_0xee0cx1c)})});_0xee0cx1a(_0x995f[210],mxConstants.FONT_BOLD);_0xee0cx1a(_0x995f[211],mxConstants.FONT_ITALIC);_0xee0cx1a(_0x995f[212],mxConstants.FONT_UNDERLINE);this[_0x995f[10]](_0x995f[213],function(){_0xee0cx5[_0x995f[214]](mxConstants.STYLE_SHADOW)});this[_0x995f[10]](_0x995f[215],function(){_0xee0cx5[_0x995f[214]](mxConstants.STYLE_DASHED)});this[_0x995f[10]](_0x995f[216],function(){_0xee0cx5[_0x995f[214]](mxConstants.STYLE_ROUNDED)});this[_0x995f[10]](_0x995f[217],function(){_0xee0cx5[_0x995f[214]](mxConstants.STYLE_CURVED)});this[_0x995f[10]](_0x995f[113],function(){var _0xee0cx9=_0xee0cx5[_0x995f[57]]();if(_0xee0cx9!=null&&_0xee0cx9[_0x995f[103]]>0){var _0xee0cx1d=_0xee0cx5[_0x995f[102]]();var _0xee0cx1c=mxUtils[_0x995f[97]](mxResources[_0x995f[26]](_0x995f[96])+_0x995f[118]+mxResources[_0x995f[26]](_0x995f[113])+_0x995f[218],_0xee0cx1d[_0x995f[219]](_0xee0cx9[0])||_0x995f[95]);if(_0xee0cx1c!=null){_0xee0cx5[_0x995f[220]](_0xee0cx1c,_0xee0cx9)}}});this[_0x995f[10]](_0x995f[221],function(){_0xee0cx5[_0x995f[222]](_0xee0cx5[_0x995f[93]]())});this[_0x995f[10]](_0x995f[223],function(){var _0xee0cx7=_0xee0cx5[_0x995f[93]]();if(_0xee0cx7!=null&&_0xee0cx5[_0x995f[102]]()[_0x995f[224]](_0xee0cx7)){var _0xee0cx1e=_0xee0cx4[_0x995f[6]][_0x995f[226]][_0x995f[225]](_0xee0cx7);if(_0xee0cx1e instanceof mxEdgeHandler){var _0xee0cx16=_0xee0cx5[_0x995f[129]][_0x995f[155]];var _0xee0cx6=_0xee0cx5[_0x995f[129]][_0x995f[182]];var _0xee0cx17=_0xee0cx16[_0x995f[124]];var _0xee0cx18=_0xee0cx16[_0x995f[127]];var _0xee0cx1f=_0xee0cx5[_0x995f[102]]()[_0x995f[227]](_0xee0cx7);var _0xee0cx20=_0xee0cx5[_0x995f[122]](_0xee0cx1f);if(_0xee0cx5[_0x995f[102]]()[_0x995f[121]](_0xee0cx1f)&&_0xee0cx20!=null){_0xee0cx17+=_0xee0cx20[_0x995f[124]];_0xee0cx18+=_0xee0cx20[_0x995f[127]]};_0xee0cx1e[_0x995f[232]](_0xee0cx1e[_0x995f[228]],_0xee0cx5[_0x995f[230]][_0x995f[229]]/_0xee0cx6-_0xee0cx17,_0xee0cx5[_0x995f[230]][_0x995f[231]]/_0xee0cx6-_0xee0cx18)}}});this[_0x995f[10]](_0x995f[233],function(){var _0xee0cx21=_0xee0cx3[_0x995f[2]][_0x995f[26]](_0x995f[233]);if(_0xee0cx21[_0x995f[234]]!=null){_0xee0cx21[_0x995f[234]][_0x995f[236]](_0xee0cx21[_0x995f[234]][_0x995f[228]],_0xee0cx21[_0x995f[235]])}});this[_0x995f[10]](_0x995f[237],function(){function _0xee0cx22(_0xee0cxc,_0xee0cx23,_0xee0cx24){var _0xee0cx25=null;var _0xee0cx9=_0xee0cx5[_0x995f[57]]();_0xee0cx5[_0x995f[102]]()[_0x995f[101]]();try{if(_0xee0cx9[_0x995f[103]]==0){var _0xee0cx26=_0xee0cx5[_0x995f[238]]();_0xee0cx9=[_0xee0cx5[_0x995f[240]](_0xee0cx5[_0x995f[239]](),null,_0x995f[95],_0xee0cx26,_0xee0cx26,_0xee0cx23,_0xee0cx24)];_0xee0cx25=_0xee0cx9};_0xee0cx5[_0x995f[114]](mxConstants.STYLE_IMAGE,_0xee0cxc,_0xee0cx9);_0xee0cx5[_0x995f[114]](mxConstants.STYLE_SHAPE,_0x995f[237],_0xee0cx9);if(_0xee0cx5[_0x995f[241]]()==1){if(_0xee0cx23!=null&&_0xee0cx24!=null){var _0xee0cx7=_0xee0cx9[0];var _0xee0cxd=_0xee0cx5[_0x995f[102]]()[_0x995f[242]](_0xee0cx7);if(_0xee0cxd!=null){_0xee0cxd=_0xee0cxd[_0x995f[123]]();_0xee0cxd[_0x995f[125]]=_0xee0cx23;_0xee0cxd[_0x995f[126]]=_0xee0cx24;_0xee0cx5[_0x995f[102]]()[_0x995f[128]](_0xee0cx7,_0xee0cxd)}}}}finally{_0xee0cx5[_0x995f[102]]()[_0x995f[107]]()};if(_0xee0cx25!=null){_0xee0cx5[_0x995f[59]](_0xee0cx25);_0xee0cx5[_0x995f[243]](_0xee0cx25[0])}}var _0xee0cxc=_0x995f[95];var _0xee0cxb=_0xee0cx5[_0x995f[110]]()[_0x995f[109]](_0xee0cx5[_0x995f[93]]());if(_0xee0cxb!=null){_0xee0cxc=_0xee0cxb[_0x995f[113]][mxConstants[_0x995f[244]]]||_0xee0cxc};_0xee0cxc=mxUtils[_0x995f[97]](mxResources[_0x995f[26]](_0x995f[96])+_0x995f[118]+mxResources[_0x995f[26]](_0x995f[245])+_0x995f[218],_0xee0cxc);if(_0xee0cxc!=null){if(_0xee0cxc[_0x995f[103]]>0){var _0xee0cx27= new Image();_0xee0cx27[_0x995f[246]]=function(){_0xee0cx22(_0xee0cxc,_0xee0cx27[_0x995f[125]],_0xee0cx27[_0x995f[126]])};_0xee0cx27[_0x995f[247]]=function(){mxUtils[_0x995f[249]](mxResources[_0x995f[26]](_0x995f[248]))};_0xee0cx27[_0x995f[250]]=_0xee0cxc}}})};Actions[_0x995f[4]][_0x995f[10]]=function(_0xee0cx1b,_0xee0cx28,_0xee0cx29,_0xee0cx2a,_0xee0cx2b){return this[_0x995f[28]](_0xee0cx1b, new Action(mxResources[_0x995f[26]](_0xee0cx1b),_0xee0cx28,_0xee0cx29,_0xee0cx2a,_0xee0cx2b))};Actions[_0x995f[4]][_0x995f[28]]=function(_0xee0cx2c,_0xee0cx15){this[_0x995f[2]][_0xee0cx2c]=_0xee0cx15;return _0xee0cx15};Actions[_0x995f[4]][_0x995f[26]]=function(_0xee0cx2c){return this[_0x995f[2]][_0xee0cx2c]};function Action(_0xee0cx2e,_0xee0cx28,_0xee0cx29,_0xee0cx2a,_0xee0cx2b){mxEventSource[_0x995f[251]](this);this[_0x995f[252]]=_0xee0cx2e;this[_0x995f[146]]=_0xee0cx28;this[_0x995f[253]]=(_0xee0cx29!=null)?_0xee0cx29:true;this[_0x995f[254]]=_0xee0cx2a;this[_0x995f[255]]=_0xee0cx2b}mxUtils[_0x995f[256]](Action,mxEventSource);Action[_0x995f[4]][_0x995f[177]]=function(_0xee0cxc){if(this[_0x995f[253]]!=_0xee0cxc){this[_0x995f[253]]=_0xee0cxc;this[_0x995f[258]]( new mxEventObject(_0x995f[257]))}};Action[_0x995f[4]][_0x995f[169]]=function(_0xee0cxc){this[_0x995f[259]]=_0xee0cxc};Action[_0x995f[4]][_0x995f[170]]=function(_0xee0cx28){this[_0x995f[260]]=_0xee0cx28};Action[_0x995f[4]][_0x995f[261]]=function(){return this[_0x995f[260]]()} \ No newline at end of file +var _0xaa2f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x61\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x65\x64\x69\x74\x6F\x72","\x67\x72\x61\x70\x68","\x6E\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53","\x73\x61\x76\x65\x41\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2D\x53","\x70\x75\x62\x6C\x69\x73\x68","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x50","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x43\x74\x72\x6C\x2B\x45","\x65\x64\x69\x74\x46\x69\x6C\x65","\x65\x64\x69\x74","\x67\x65\x74","\x62\x69\x6E\x64","\x70\x75\x74","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x70\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E","\x73\x70\x72\x69\x74\x65\x2D\x70\x72\x69\x6E\x74","\x43\x74\x72\x6C\x2B\x50","\x70\x72\x65\x76\x69\x65\x77","\x73\x68\x6F\x77","\x75\x6E\x64\x6F","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x70\x72\x69\x74\x65\x2D\x75\x6E\x64\x6F","\x43\x74\x72\x6C\x2B\x5A","\x72\x65\x64\x6F","\x73\x70\x72\x69\x74\x65\x2D\x72\x65\x64\x6F","\x43\x74\x72\x6C\x2B\x59","\x63\x75\x74","\x73\x70\x72\x69\x74\x65\x2D\x63\x75\x74","\x43\x74\x72\x6C\x2B\x58","\x63\x6F\x70\x79","\x73\x70\x72\x69\x74\x65\x2D\x63\x6F\x70\x79","\x43\x74\x72\x6C\x2B\x43","\x70\x61\x73\x74\x65","\x73\x70\x72\x69\x74\x65\x2D\x70\x61\x73\x74\x65","\x43\x74\x72\x6C\x2B\x56","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x44\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x44","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x56","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x45","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x43\x74\x72\x6C\x2B\x41","\x68\x6F\x6D\x65","\x48\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x55\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x44\x6F\x77\x6E","\x65\x78\x70\x61\x6E\x64","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x45\x6E\x74\x65\x72","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x42\x61\x63\x6B\x73\x70\x61\x63\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x46","\x74\x6F\x42\x61\x63\x6B","\x43\x74\x72\x6C\x2B\x42","\x67\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x43\x74\x72\x6C\x2B\x47","\x75\x6E\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x55","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x70\x72\x6F\x6D\x70\x74","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x77\x72\x61\x70","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x73\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x30","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x20\x28","\x20\x30\x2D\x33\x36\x30\x29","\x74\x69\x6C\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x63\x6C\x6F\x6E\x65","\x78","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x79","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x76\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x65\x61\x73\x74","\x73\x6F\x75\x74\x68","\x77\x65\x73\x74","\x6E\x6F\x72\x74\x68","\x43\x74\x72\x6C\x2B\x52","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x41\x64\x64","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x53\x75\x62\x74\x72\x61\x63\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x66\x69\x74\x50\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x66\x75\x6E\x63\x74","\x70\x61\x67\x65\x56\x69\x65\x77","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x6D\x61\x78","\x72\x6F\x75\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x63\x75\x73\x74\x6F\x6D","\x20\x28\x25\x29","\x67\x65\x74\x53\x63\x61\x6C\x65","\x67\x72\x69\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x47","\x73\x65\x74\x54\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x67\x75\x69\x64\x65\x73","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x73\x63\x61\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x43\x74\x72\x6C\x2B\x51","\x63\x6F\x70\x79\x43\x6F\x6E\x6E\x65\x63\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x68\x65\x6C\x70","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x5F","\x2F\x68\x65\x6C\x70","\x2E\x68\x74\x6D\x6C","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x46\x31","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x73\x68\x61\x64\x6F\x77","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x29","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x73\x74\x61\x74\x65","\x74\x72\x69\x67\x67\x65\x72\x58","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x74\x72\x69\x67\x67\x65\x72\x59","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x6D\x61\x67\x65","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x75\x72\x6C","\x6F\x6E\x6C\x6F\x61\x64","\x6F\x6E\x65\x72\x72\x6F\x72","\x66\x69\x6C\x65\x4E\x6F\x74\x46\x6F\x75\x6E\x64","\x61\x6C\x65\x72\x74","\x73\x72\x63","\x63\x61\x6C\x6C","\x6C\x61\x62\x65\x6C","\x65\x6E\x61\x62\x6C\x65\x64","\x69\x63\x6F\x6E\x43\x6C\x73","\x73\x68\x6F\x72\x74\x63\x75\x74","\x65\x78\x74\x65\x6E\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64"];_0xaa2f[0];function Actions(_0xf843x2){this[_0xaa2f[1]]=_0xf843x2;this[_0xaa2f[2]]= new Object();this[_0xaa2f[3]]()}Actions[_0xaa2f[4]][_0xaa2f[3]]=function(){var _0xf843x3=this[_0xaa2f[1]];var _0xf843x4=_0xf843x3[_0xaa2f[5]];var _0xf843x5=_0xf843x4[_0xaa2f[6]];this[_0xaa2f[10]](_0xaa2f[7],function(){_0xf843x3[_0xaa2f[9]]( new NewDialog(_0xf843x3)[_0xaa2f[8]],300,180,true,true)});this[_0xaa2f[10]](_0xaa2f[11],function(){_0xf843x3[_0xaa2f[9]]( new OpenDialog(_0xf843x3)[_0xaa2f[8]],300,180,true,true)});this[_0xaa2f[10]](_0xaa2f[12],function(){_0xf843x3[_0xaa2f[13]](false)},null,null,_0xaa2f[14]);this[_0xaa2f[10]](_0xaa2f[15],function(){_0xf843x3[_0xaa2f[13]](true)},null,null,_0xaa2f[16]);this[_0xaa2f[10]](_0xaa2f[17],function(){_0xf843x3[_0xaa2f[18]](false)},null,null,_0xaa2f[19]);this[_0xaa2f[10]](_0xaa2f[20],function(){_0xf843x3[_0xaa2f[9]]( new VariableDialog(_0xf843x3)[_0xaa2f[8]],300,180,true,true)});this[_0xaa2f[10]](_0xaa2f[21],function(){_0xf843x3[_0xaa2f[9]]( new ImportDialog(_0xf843x3)[_0xaa2f[8]],300,200,true,true)});this[_0xaa2f[10]](_0xaa2f[22],function(){_0xf843x3[_0xaa2f[9]]( new ExportDialog(_0xf843x3)[_0xaa2f[8]],300,200,true,true)},null,null,_0xaa2f[23]);this[_0xaa2f[28]](_0xaa2f[24], new Action(mxResources[_0xaa2f[26]](_0xaa2f[25]),mxUtils[_0xaa2f[27]](this,function(){this[_0xaa2f[1]][_0xaa2f[9]]( new EditFileDialog(_0xf843x3)[_0xaa2f[8]],620,420,true,true)})));this[_0xaa2f[10]](_0xaa2f[29],function(){_0xf843x3[_0xaa2f[9]]( new RenameDialog(_0xf843x3)[_0xaa2f[8]],300,180,true,true)});this[_0xaa2f[10]](_0xaa2f[30],function(){mxUtils[_0xaa2f[31]](_0xf843x5)},null,_0xaa2f[32],_0xaa2f[33]);this[_0xaa2f[10]](_0xaa2f[34],function(){mxUtils[_0xaa2f[35]](_0xf843x5,null,10,10)});this[_0xaa2f[10]](_0xaa2f[36],function(){_0xf843x4[_0xaa2f[37]][_0xaa2f[36]]()},null,_0xaa2f[38],_0xaa2f[39]);this[_0xaa2f[10]](_0xaa2f[40],function(){_0xf843x4[_0xaa2f[37]][_0xaa2f[40]]()},null,_0xaa2f[41],_0xaa2f[42]);this[_0xaa2f[10]](_0xaa2f[43],function(){mxClipboard[_0xaa2f[43]](_0xf843x5)},null,_0xaa2f[44],_0xaa2f[45]);this[_0xaa2f[10]](_0xaa2f[46],function(){mxClipboard[_0xaa2f[46]](_0xf843x5)},null,_0xaa2f[47],_0xaa2f[48]);this[_0xaa2f[10]](_0xaa2f[49],function(){mxClipboard[_0xaa2f[49]](_0xf843x5)},false,_0xaa2f[50],_0xaa2f[51]);this[_0xaa2f[10]](_0xaa2f[52],function(){_0xf843x5[_0xaa2f[53]]()},null,null,_0xaa2f[54]);this[_0xaa2f[10]](_0xaa2f[55],function(){var _0xf843x6=_0xf843x5[_0xaa2f[56]];_0xf843x5[_0xaa2f[59]](_0xf843x5[_0xaa2f[58]](_0xf843x5[_0xaa2f[57]](),_0xf843x6,_0xf843x6,true))},null,null,_0xaa2f[60]);this[_0xaa2f[10]](_0xaa2f[61],function(){_0xf843x5[_0xaa2f[61]]()},null,null,_0xaa2f[62]);this[_0xaa2f[10]](_0xaa2f[63],function(){_0xf843x5[_0xaa2f[63]]()},null,null,_0xaa2f[64]);this[_0xaa2f[10]](_0xaa2f[65],function(){_0xf843x5[_0xaa2f[65]]()},null,null,_0xaa2f[66]);this[_0xaa2f[10]](_0xaa2f[67],function(){_0xf843x5[_0xaa2f[67]]()},null,null,_0xaa2f[68]);this[_0xaa2f[10]](_0xaa2f[69],function(){_0xf843x5[_0xaa2f[69]]()},null,null,_0xaa2f[70]);this[_0xaa2f[10]](_0xaa2f[71],function(){_0xf843x5[_0xaa2f[71]]()},null,null,_0xaa2f[72]);this[_0xaa2f[10]](_0xaa2f[73],function(){_0xf843x5[_0xaa2f[74]](false)},null,null,_0xaa2f[75]);this[_0xaa2f[10]](_0xaa2f[76],function(){_0xf843x5[_0xaa2f[74]](true)},null,null,_0xaa2f[77]);this[_0xaa2f[10]](_0xaa2f[78],function(){_0xf843x5[_0xaa2f[79]](false)},null,null,_0xaa2f[80]);this[_0xaa2f[10]](_0xaa2f[81],function(){_0xf843x5[_0xaa2f[79]](true)},null,null,_0xaa2f[82]);this[_0xaa2f[10]](_0xaa2f[83],function(){_0xf843x5[_0xaa2f[85]](_0xf843x5[_0xaa2f[84]](null,0))},null,null,_0xaa2f[86]);this[_0xaa2f[10]](_0xaa2f[87],function(){_0xf843x5[_0xaa2f[59]](_0xf843x5[_0xaa2f[88]]())},null,null,_0xaa2f[89]);this[_0xaa2f[10]](_0xaa2f[90],function(){_0xf843x5[_0xaa2f[91]]()});this[_0xaa2f[10]](_0xaa2f[92],function(){var _0xf843x7=_0xf843x5[_0xaa2f[93]]();var _0xf843x8=_0xf843x5[_0xaa2f[94]](_0xf843x7);if(_0xf843x8==null){_0xf843x8=_0xaa2f[95]};_0xf843x8=mxUtils[_0xaa2f[97]](mxResources[_0xaa2f[26]](_0xaa2f[96]),_0xf843x8);if(_0xf843x8!=null){_0xf843x5[_0xaa2f[98]](_0xf843x7,_0xf843x8)}});this[_0xaa2f[10]](_0xaa2f[99],function(){var _0xf843x7=_0xf843x5[_0xaa2f[93]]();var _0xf843x8=_0xf843x5[_0xaa2f[94]](_0xf843x7);if(_0xf843x8!=null){window[_0xaa2f[11]](_0xf843x8)}});this[_0xaa2f[10]](_0xaa2f[100],function(){var _0xf843x9=_0xf843x5[_0xaa2f[57]]();if(_0xf843x9!=null){_0xf843x5[_0xaa2f[102]]()[_0xaa2f[101]]();try{for(var _0xf843xa=0;_0xf843xa<_0xf843x9[_0xaa2f[103]];_0xf843xa++){var _0xf843x7=_0xf843x9[_0xf843xa];if(_0xf843x5[_0xaa2f[102]]()[_0xaa2f[104]](_0xf843x7)){_0xf843x5[_0xaa2f[105]]([_0xf843x7],20)}else {_0xf843x5[_0xaa2f[106]](_0xf843x7)}}}finally{_0xf843x5[_0xaa2f[102]]()[_0xaa2f[107]]()}}});this[_0xaa2f[10]](_0xaa2f[108],function(){var _0xf843xb=_0xf843x5[_0xaa2f[110]]()[_0xaa2f[109]](_0xf843x5[_0xaa2f[93]]());var _0xf843xc=_0xaa2f[111];if(_0xf843xb!=null&&_0xf843xb[_0xaa2f[113]][mxConstants[_0xaa2f[112]]]==_0xaa2f[111]){_0xf843xc=null};_0xf843x5[_0xaa2f[114]](mxConstants.STYLE_WHITE_SPACE,_0xf843xc)});this[_0xaa2f[10]](_0xaa2f[115],function(){var _0xf843xc=_0xaa2f[116];var _0xf843xb=_0xf843x5[_0xaa2f[110]]()[_0xaa2f[109]](_0xf843x5[_0xaa2f[93]]());if(_0xf843xb!=null){_0xf843xc=_0xf843xb[_0xaa2f[113]][mxConstants[_0xaa2f[117]]]||_0xf843xc};_0xf843xc=mxUtils[_0xaa2f[97]](mxResources[_0xaa2f[26]](_0xaa2f[96])+_0xaa2f[118]+mxResources[_0xaa2f[26]](_0xaa2f[115])+_0xaa2f[119],_0xf843xc);if(_0xf843xc!=null){_0xf843x5[_0xaa2f[114]](mxConstants.STYLE_ROTATION,_0xf843xc)}});this[_0xaa2f[10]](_0xaa2f[120],function(){var _0xf843x9=_0xf843x5[_0xaa2f[57]]();if(_0xf843x9!=null){_0xf843x5[_0xaa2f[102]]()[_0xaa2f[101]]();try{for(var _0xf843xa=0;_0xf843xa<_0xf843x9[_0xaa2f[103]];_0xf843xa++){var _0xf843x7=_0xf843x9[_0xf843xa];if(_0xf843x5[_0xaa2f[102]]()[_0xaa2f[121]](_0xf843x7)&&_0xf843x5[_0xaa2f[102]]()[_0xaa2f[104]](_0xf843x7)==0){var _0xf843xd=_0xf843x5[_0xaa2f[122]](_0xf843x7);if(_0xf843xd!=null){_0xf843xd=_0xf843xd[_0xaa2f[123]]();_0xf843xd[_0xaa2f[124]]+=_0xf843xd[_0xaa2f[125]]/2-_0xf843xd[_0xaa2f[126]]/2;_0xf843xd[_0xaa2f[127]]+=_0xf843xd[_0xaa2f[126]]/2-_0xf843xd[_0xaa2f[125]]/2;var _0xf843xe=_0xf843xd[_0xaa2f[125]];_0xf843xd[_0xaa2f[125]]=_0xf843xd[_0xaa2f[126]];_0xf843xd[_0xaa2f[126]]=_0xf843xe;_0xf843x5[_0xaa2f[102]]()[_0xaa2f[128]](_0xf843x7,_0xf843xd);var _0xf843xb=_0xf843x5[_0xaa2f[129]][_0xaa2f[109]](_0xf843x7);if(_0xf843xb!=null){var _0xf843xf=_0xf843xb[_0xaa2f[113]][mxConstants[_0xaa2f[130]]]||_0xaa2f[131];if(_0xf843xf==_0xaa2f[131]){_0xf843xf=_0xaa2f[132]}else {if(_0xf843xf==_0xaa2f[132]){_0xf843xf=_0xaa2f[133]}else {if(_0xf843xf==_0xaa2f[133]){_0xf843xf=_0xaa2f[134]}else {if(_0xf843xf==_0xaa2f[134]){_0xf843xf=_0xaa2f[131]}}}};_0xf843x5[_0xaa2f[114]](mxConstants.STYLE_DIRECTION,_0xf843xf,[_0xf843x7])}}}}}finally{_0xf843x5[_0xaa2f[102]]()[_0xaa2f[107]]()}}},null,null,_0xaa2f[135]);this[_0xaa2f[10]](_0xaa2f[136],function(){_0xf843x5[_0xaa2f[137]](1)});this[_0xaa2f[10]](_0xaa2f[138],function(){_0xf843x5[_0xaa2f[138]]()},null,null,_0xaa2f[139]);this[_0xaa2f[10]](_0xaa2f[140],function(){_0xf843x5[_0xaa2f[140]]()},null,null,_0xaa2f[141]);this[_0xaa2f[10]](_0xaa2f[142],function(){_0xf843x5[_0xaa2f[143]]()});this[_0xaa2f[10]](_0xaa2f[144],mxUtils[_0xaa2f[27]](this,function(){if(!_0xf843x5[_0xaa2f[145]]){this[_0xaa2f[26]](_0xaa2f[147])[_0xaa2f[146]]()};var _0xf843x10=_0xf843x5[_0xaa2f[148]];var _0xf843x11=_0xf843x5[_0xaa2f[149]];var _0xf843x12=_0xf843x5[_0xaa2f[8]][_0xaa2f[150]]-20;var _0xf843x13=_0xf843x5[_0xaa2f[8]][_0xaa2f[151]]-20;var _0xf843x14=Math[_0xaa2f[153]](100*Math[_0xaa2f[152]](_0xf843x12/_0xf843x10[_0xaa2f[125]]/_0xf843x11,_0xf843x13/_0xf843x10[_0xaa2f[126]]/_0xf843x11))/100;_0xf843x5[_0xaa2f[137]](_0xf843x14);_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]=Math[_0xaa2f[157]](_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[124]]*_0xf843x14-Math[_0xaa2f[156]](10,(_0xf843x5[_0xaa2f[8]][_0xaa2f[150]]-_0xf843x10[_0xaa2f[125]]*_0xf843x11*_0xf843x14)/2));_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]=Math[_0xaa2f[157]](_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[127]]*_0xf843x14-Math[_0xaa2f[156]](10,(_0xf843x5[_0xaa2f[8]][_0xaa2f[151]]-_0xf843x10[_0xaa2f[126]]*_0xf843x11*_0xf843x14)/2))}));this[_0xaa2f[10]](_0xaa2f[159],mxUtils[_0xaa2f[27]](this,function(){if(!_0xf843x5[_0xaa2f[145]]){this[_0xaa2f[26]](_0xaa2f[147])[_0xaa2f[146]]()};var _0xf843x10=_0xf843x5[_0xaa2f[148]];var _0xf843x11=_0xf843x5[_0xaa2f[149]];var _0xf843x12=_0xf843x5[_0xaa2f[8]][_0xaa2f[150]]-20;var _0xf843x14=Math[_0xaa2f[153]](100*_0xf843x12/_0xf843x10[_0xaa2f[125]]/_0xf843x11)/100;_0xf843x5[_0xaa2f[137]](_0xf843x14);_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]=Math[_0xaa2f[157]](_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[124]]*_0xf843x14-Math[_0xaa2f[156]](10,(_0xf843x5[_0xaa2f[8]][_0xaa2f[150]]-_0xf843x10[_0xaa2f[125]]*_0xf843x11*_0xf843x14)/2));_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]=Math[_0xaa2f[157]](_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[127]]*_0xf843x14-Math[_0xaa2f[156]](10,(_0xf843x5[_0xaa2f[8]][_0xaa2f[151]]-_0xf843x10[_0xaa2f[126]]*_0xf843x11*_0xf843x14)/2))}));this[_0xaa2f[28]](_0xaa2f[160], new Action(mxResources[_0xaa2f[26]](_0xaa2f[161]),function(){var _0xf843xc=mxUtils[_0xaa2f[97]](mxResources[_0xaa2f[26]](_0xaa2f[96])+_0xaa2f[162],parseInt(_0xf843x5[_0xaa2f[110]]()[_0xaa2f[163]]()*100));if(_0xf843xc!=null&&_0xf843xc[_0xaa2f[103]]>0&&!isNaN(parseInt(_0xf843xc))){_0xf843x5[_0xaa2f[137]](parseInt(_0xf843xc)/100)}}));var _0xf843x15=null;_0xf843x15=this[_0xaa2f[10]](_0xaa2f[164],function(){_0xf843x5[_0xaa2f[166]](!_0xf843x5[_0xaa2f[165]]());_0xf843x4[_0xaa2f[167]]()},null,null,_0xaa2f[168]);_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[165]]()});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[171],function(){_0xf843x5[_0xaa2f[173]][_0xaa2f[172]]=!_0xf843x5[_0xaa2f[173]][_0xaa2f[172]]});_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[173]][_0xaa2f[172]]});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[174],function(){_0xf843x5[_0xaa2f[176]][_0xaa2f[177]](!_0xf843x5[_0xaa2f[176]][_0xaa2f[175]]())});_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[176]][_0xaa2f[175]]()});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[178],function(){_0xf843x5[_0xaa2f[179]]=!_0xf843x5[_0xaa2f[179]];_0xf843x5[_0xaa2f[129]][_0xaa2f[180]]()});_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[179]]});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[181],function(){_0xf843x5[_0xaa2f[181]]=!_0xf843x5[_0xaa2f[181]];_0xf843x4[_0xaa2f[167]]();if(!_0xf843x5[_0xaa2f[181]]){var _0xf843x16=_0xf843x5[_0xaa2f[129]][_0xaa2f[155]];_0xf843x5[_0xaa2f[129]][_0xaa2f[183]](_0xf843x16[_0xaa2f[124]]-_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]/_0xf843x5[_0xaa2f[129]][_0xaa2f[182]],_0xf843x16[_0xaa2f[127]]-_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]/_0xf843x5[_0xaa2f[129]][_0xaa2f[182]]);_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]=0;_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]=0;_0xf843x5[_0xaa2f[184]]()}else {var _0xf843x17=_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[124]];var _0xf843x18=_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[127]];_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[124]]=0;_0xf843x5[_0xaa2f[129]][_0xaa2f[155]][_0xaa2f[127]]=0;_0xf843x5[_0xaa2f[184]]();_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]-=Math[_0xaa2f[157]](_0xf843x17*_0xf843x5[_0xaa2f[129]][_0xaa2f[182]]);_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]-=Math[_0xaa2f[157]](_0xf843x18*_0xf843x5[_0xaa2f[129]][_0xaa2f[182]])}},!mxClient.IS_TOUCH);_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[8]][_0xaa2f[113]][_0xaa2f[185]]==_0xaa2f[186]});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[147],mxUtils[_0xaa2f[27]](this,function(){_0xf843x5[_0xaa2f[145]]=!_0xf843x5[_0xaa2f[145]];_0xf843x5[_0xaa2f[187]]=_0xf843x5[_0xaa2f[145]];_0xf843x5[_0xaa2f[188]]=_0xf843x5[_0xaa2f[187]];_0xf843x5[_0xaa2f[129]][_0xaa2f[189]]();_0xf843x5[_0xaa2f[184]]();_0xf843x4[_0xaa2f[167]]();_0xf843x4[_0xaa2f[191]][_0xaa2f[190]]();if(mxUtils[_0xaa2f[192]](_0xf843x5[_0xaa2f[8]])){if(_0xf843x5[_0xaa2f[145]]){_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]-=20;_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]-=20}else {_0xf843x5[_0xaa2f[8]][_0xaa2f[154]]+=20;_0xf843x5[_0xaa2f[8]][_0xaa2f[158]]+=20}}}));_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[145]]});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[193],function(){_0xf843x5[_0xaa2f[195]](!_0xf843x5[_0xaa2f[194]][_0xaa2f[175]]())},null,null,_0xaa2f[196]);_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[194]][_0xaa2f[175]]()});_0xf843x15=this[_0xaa2f[10]](_0xaa2f[197],function(){_0xf843x5[_0xaa2f[194]][_0xaa2f[199]](!_0xf843x5[_0xaa2f[194]][_0xaa2f[198]]())});_0xf843x15[_0xaa2f[169]](true);_0xf843x15[_0xaa2f[170]](function(){return _0xf843x5[_0xaa2f[194]][_0xaa2f[198]]()});this[_0xaa2f[10]](_0xaa2f[200],function(){var _0xf843x19=_0xaa2f[95];if(mxResources[_0xaa2f[202]](mxClient[_0xaa2f[201]])){_0xf843x19=_0xaa2f[203]+mxClient[_0xaa2f[201]]};window[_0xaa2f[11]](RESOURCES_PATH+_0xaa2f[204]+_0xf843x19+_0xaa2f[205])});this[_0xaa2f[28]](_0xaa2f[206], new Action(mxResources[_0xaa2f[26]](_0xaa2f[206])+_0xaa2f[207],function(){_0xf843x3[_0xaa2f[9]]( new AboutDialog(_0xf843x3)[_0xaa2f[8]],320,280,true,true)},null,null,_0xaa2f[208]));var _0xf843x1a=mxUtils[_0xaa2f[27]](this,function(_0xf843x1b,_0xf843x1c){this[_0xaa2f[10]](_0xf843x1b,function(){_0xf843x5[_0xaa2f[209]](mxConstants.STYLE_FONTSTYLE,_0xf843x1c)})});_0xf843x1a(_0xaa2f[210],mxConstants.FONT_BOLD);_0xf843x1a(_0xaa2f[211],mxConstants.FONT_ITALIC);_0xf843x1a(_0xaa2f[212],mxConstants.FONT_UNDERLINE);this[_0xaa2f[10]](_0xaa2f[213],function(){_0xf843x5[_0xaa2f[214]](mxConstants.STYLE_SHADOW)});this[_0xaa2f[10]](_0xaa2f[215],function(){_0xf843x5[_0xaa2f[214]](mxConstants.STYLE_DASHED)});this[_0xaa2f[10]](_0xaa2f[216],function(){_0xf843x5[_0xaa2f[214]](mxConstants.STYLE_ROUNDED)});this[_0xaa2f[10]](_0xaa2f[217],function(){_0xf843x5[_0xaa2f[214]](mxConstants.STYLE_CURVED)});this[_0xaa2f[10]](_0xaa2f[113],function(){var _0xf843x9=_0xf843x5[_0xaa2f[57]]();if(_0xf843x9!=null&&_0xf843x9[_0xaa2f[103]]>0){var _0xf843x1d=_0xf843x5[_0xaa2f[102]]();var _0xf843x1c=mxUtils[_0xaa2f[97]](mxResources[_0xaa2f[26]](_0xaa2f[96])+_0xaa2f[118]+mxResources[_0xaa2f[26]](_0xaa2f[113])+_0xaa2f[218],_0xf843x1d[_0xaa2f[219]](_0xf843x9[0])||_0xaa2f[95]);if(_0xf843x1c!=null){_0xf843x5[_0xaa2f[220]](_0xf843x1c,_0xf843x9)}}});this[_0xaa2f[10]](_0xaa2f[221],function(){_0xf843x5[_0xaa2f[222]](_0xf843x5[_0xaa2f[93]]())});this[_0xaa2f[10]](_0xaa2f[223],function(){var _0xf843x7=_0xf843x5[_0xaa2f[93]]();if(_0xf843x7!=null&&_0xf843x5[_0xaa2f[102]]()[_0xaa2f[224]](_0xf843x7)){var _0xf843x1e=_0xf843x4[_0xaa2f[6]][_0xaa2f[226]][_0xaa2f[225]](_0xf843x7);if(_0xf843x1e instanceof mxEdgeHandler){var _0xf843x16=_0xf843x5[_0xaa2f[129]][_0xaa2f[155]];var _0xf843x6=_0xf843x5[_0xaa2f[129]][_0xaa2f[182]];var _0xf843x17=_0xf843x16[_0xaa2f[124]];var _0xf843x18=_0xf843x16[_0xaa2f[127]];var _0xf843x1f=_0xf843x5[_0xaa2f[102]]()[_0xaa2f[227]](_0xf843x7);var _0xf843x20=_0xf843x5[_0xaa2f[122]](_0xf843x1f);if(_0xf843x5[_0xaa2f[102]]()[_0xaa2f[121]](_0xf843x1f)&&_0xf843x20!=null){_0xf843x17+=_0xf843x20[_0xaa2f[124]];_0xf843x18+=_0xf843x20[_0xaa2f[127]]};_0xf843x1e[_0xaa2f[232]](_0xf843x1e[_0xaa2f[228]],_0xf843x5[_0xaa2f[230]][_0xaa2f[229]]/_0xf843x6-_0xf843x17,_0xf843x5[_0xaa2f[230]][_0xaa2f[231]]/_0xf843x6-_0xf843x18)}}});this[_0xaa2f[10]](_0xaa2f[233],function(){var _0xf843x21=_0xf843x3[_0xaa2f[2]][_0xaa2f[26]](_0xaa2f[233]);if(_0xf843x21[_0xaa2f[234]]!=null){_0xf843x21[_0xaa2f[234]][_0xaa2f[236]](_0xf843x21[_0xaa2f[234]][_0xaa2f[228]],_0xf843x21[_0xaa2f[235]])}});this[_0xaa2f[10]](_0xaa2f[237],function(){function _0xf843x22(_0xf843xc,_0xf843x23,_0xf843x24){var _0xf843x25=null;var _0xf843x9=_0xf843x5[_0xaa2f[57]]();_0xf843x5[_0xaa2f[102]]()[_0xaa2f[101]]();try{if(_0xf843x9[_0xaa2f[103]]==0){var _0xf843x26=_0xf843x5[_0xaa2f[238]]();_0xf843x9=[_0xf843x5[_0xaa2f[240]](_0xf843x5[_0xaa2f[239]](),null,_0xaa2f[95],_0xf843x26,_0xf843x26,_0xf843x23,_0xf843x24)];_0xf843x25=_0xf843x9};_0xf843x5[_0xaa2f[114]](mxConstants.STYLE_IMAGE,_0xf843xc,_0xf843x9);_0xf843x5[_0xaa2f[114]](mxConstants.STYLE_SHAPE,_0xaa2f[237],_0xf843x9);if(_0xf843x5[_0xaa2f[241]]()==1){if(_0xf843x23!=null&&_0xf843x24!=null){var _0xf843x7=_0xf843x9[0];var _0xf843xd=_0xf843x5[_0xaa2f[102]]()[_0xaa2f[242]](_0xf843x7);if(_0xf843xd!=null){_0xf843xd=_0xf843xd[_0xaa2f[123]]();_0xf843xd[_0xaa2f[125]]=_0xf843x23;_0xf843xd[_0xaa2f[126]]=_0xf843x24;_0xf843x5[_0xaa2f[102]]()[_0xaa2f[128]](_0xf843x7,_0xf843xd)}}}}finally{_0xf843x5[_0xaa2f[102]]()[_0xaa2f[107]]()};if(_0xf843x25!=null){_0xf843x5[_0xaa2f[59]](_0xf843x25);_0xf843x5[_0xaa2f[243]](_0xf843x25[0])}}var _0xf843xc=_0xaa2f[95];var _0xf843xb=_0xf843x5[_0xaa2f[110]]()[_0xaa2f[109]](_0xf843x5[_0xaa2f[93]]());if(_0xf843xb!=null){_0xf843xc=_0xf843xb[_0xaa2f[113]][mxConstants[_0xaa2f[244]]]||_0xf843xc};_0xf843xc=mxUtils[_0xaa2f[97]](mxResources[_0xaa2f[26]](_0xaa2f[96])+_0xaa2f[118]+mxResources[_0xaa2f[26]](_0xaa2f[245])+_0xaa2f[218],_0xf843xc);if(_0xf843xc!=null){if(_0xf843xc[_0xaa2f[103]]>0){var _0xf843x27= new Image();_0xf843x27[_0xaa2f[246]]=function(){_0xf843x22(_0xf843xc,_0xf843x27[_0xaa2f[125]],_0xf843x27[_0xaa2f[126]])};_0xf843x27[_0xaa2f[247]]=function(){mxUtils[_0xaa2f[249]](mxResources[_0xaa2f[26]](_0xaa2f[248]))};_0xf843x27[_0xaa2f[250]]=_0xf843xc}}})};Actions[_0xaa2f[4]][_0xaa2f[10]]=function(_0xf843x1b,_0xf843x28,_0xf843x29,_0xf843x2a,_0xf843x2b){return this[_0xaa2f[28]](_0xf843x1b, new Action(mxResources[_0xaa2f[26]](_0xf843x1b),_0xf843x28,_0xf843x29,_0xf843x2a,_0xf843x2b))};Actions[_0xaa2f[4]][_0xaa2f[28]]=function(_0xf843x2c,_0xf843x15){this[_0xaa2f[2]][_0xf843x2c]=_0xf843x15;return _0xf843x15};Actions[_0xaa2f[4]][_0xaa2f[26]]=function(_0xf843x2c){return this[_0xaa2f[2]][_0xf843x2c]};function Action(_0xf843x2e,_0xf843x28,_0xf843x29,_0xf843x2a,_0xf843x2b){mxEventSource[_0xaa2f[251]](this);this[_0xaa2f[252]]=_0xf843x2e;this[_0xaa2f[146]]=_0xf843x28;this[_0xaa2f[253]]=(_0xf843x29!=null)?_0xf843x29:true;this[_0xaa2f[254]]=_0xf843x2a;this[_0xaa2f[255]]=_0xf843x2b}mxUtils[_0xaa2f[256]](Action,mxEventSource);Action[_0xaa2f[4]][_0xaa2f[177]]=function(_0xf843xc){if(this[_0xaa2f[253]]!=_0xf843xc){this[_0xaa2f[253]]=_0xf843xc;this[_0xaa2f[258]]( new mxEventObject(_0xaa2f[257]))}};Action[_0xaa2f[4]][_0xaa2f[169]]=function(_0xf843xc){this[_0xaa2f[259]]=_0xf843xc};Action[_0xaa2f[4]][_0xaa2f[170]]=function(_0xf843x28){this[_0xaa2f[260]]=_0xf843x28};Action[_0xaa2f[4]][_0xaa2f[261]]=function(){return this[_0xaa2f[260]]()} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Dialogs.js b/public/assets/plugins/jscripty/js/Dialogs.js index 6e1ab12..6278437 100644 --- a/public/assets/plugins/jscripty/js/Dialogs.js +++ b/public/assets/plugins/jscripty/js/Dialogs.js @@ -1 +1 @@ -var _0xebbd=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x6E\x70\x75\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x79\x70\x65","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x65\x63\x6B\x65\x64","\x47\x45\x54","\x6F\x70\x65\x6E","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x61","\x65\x64\x69\x74\x6F\x72","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x73\x65\x6C\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x2D\x2D\x20\x4E\x6F\x6E\x65\x20\x2D\x2D","\x76\x61\x6C\x75\x65","\x2D\x31","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x45\x61\x63\x68","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x6F\x77\x73","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x73\x65\x6C\x65\x63\x74\x32","\x30","\x66\x69\x6C\x74\x65\x72","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x66\x61\x74\x68\x65\x72","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x73\x6F\x6E","\x2D","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x62\x6F\x64\x79","\x72\x6F\x75\x6E\x64","\x6D\x61\x78","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x44\x69\x61\x6C\x6F\x67","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x6D\x6F\x64\x61\x6C\x20\x66\x61\x64\x65\x20\x69\x6E\x20\x63\x65\x6E\x74\x65\x72","\x64\x69\x73\x70\x6C\x61\x79","\x73\x74\x79\x6C\x65","\x62\x6C\x6F\x63\x6B","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x31\x32\x70\x78","\x67\x65\x4D\x6F\x64\x61\x6C\x44\x69\x61\x6C\x6F\x67","\x6D\x6F\x64\x61\x6C\x2D\x64\x69\x61\x6C\x6F\x67","\x62\x67","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x6D\x6F\x64\x61\x6C\x2D\x62\x61\x63\x6B\x64\x72\x6F\x70\x20\x66\x61\x64\x65\x20\x69\x6E","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x6E\x44\x69\x61\x6C\x6F\x67\x43\x6C\x6F\x73\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x6C\x6F\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x64\x61\x6C\x2D\x63\x6F\x6E\x74\x65\x6E\x74","\x6D\x6F\x64\x61\x6C\x2D\x68\x65\x61\x64\x65\x72","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79","\x6D\x6F\x64\x61\x6C\x2D\x66\x6F\x6F\x74\x65\x72","\x68\x34","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x69\x6D\x70\x6F\x72\x74","\x67\x65\x74","\x20\x58\x4D\x4C","\x77\x72\x69\x74\x65","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x62\x75\x74\x74\x6F\x6E","\x72\x6F\x77","\x63\x6F\x6C\x2D\x6D\x64\x2D\x31\x32","\x74\x65\x78\x74\x61\x72\x65\x61","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x33\x37\x34\x70\x78","\x66\x69\x6C\x65","\x61\x63\x63\x65\x70\x74","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x63\x68\x61\x6E\x67\x65","\x66\x69\x6C\x65\x73","\x74\x61\x72\x67\x65\x74","\x6C\x6F\x67","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x73\x75\x6C\x74","\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x6F\x72\x6D\x61\x74\x20\x66\x69\x6C\x65","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x62\x69\x6E\x64","\x62\x74\x6E\x20\x62\x6C\x75\x65","\x63\x61\x6E\x63\x65\x6C","\x62\x74\x6E\x20\x64\x65\x66\x61\x75\x6C\x74","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30\x70\x78","\x31\x37\x36","\x31\x35\x31","\x73\x72\x63","\x2F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x62\x72","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x58\x65\x6E\x69\x61\x6C\x61\x62\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x61","\x68\x72\x65\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D\x2F","\x5F\x62\x6C\x61\x6E\x6B","\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D","\x73\x61\x76\x65\x41\x73","\x6E\x61\x6D\x65","\x5F","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x63\x6F\x6C\x2D\x6D\x64\x2D\x34","\x63\x6F\x6C\x2D\x6D\x64\x2D\x38","\x6C\x61\x62\x65\x6C","\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C\x20\x70\x75\x6C\x6C\x2D\x72\x69\x67\x68\x74","\x5F\x63\x6F\x70\x79","\x69\x64","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C","\x73\x61\x76\x65","\x6E\x65\x77","\x5F\x6E\x65\x77","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x72\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x50\x55\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6E\x61\x6D\x65\x3D","\x50\x72\x6F\x6A\x65\x63\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x72\x65\x6E\x61\x6D\x65\x64","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x6C\x65\x72\x74","\x65\x64\x69\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x64\x61\x74\x61\x54\x72\x61\x6E\x73\x66\x65\x72","\x64\x72\x61\x67\x6F\x76\x65\x72","\x64\x72\x6F\x70","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D","\x65\x78\x70\x6F\x72\x74","\x66\x6F\x72\x6D\x2D\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x20\x66\x6F\x72\x6D\x2D\x72\x6F\x77\x2D\x73\x65\x70\x65\x72\x61\x74\x65\x64","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70\x20\x6C\x61\x73\x74","\x63\x6F\x6C\x2D\x73\x6D\x2D\x34\x20\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C","\x63\x6F\x6C\x2D\x73\x6D\x2D\x38","\x67\x65\x74\x58\x6D\x6C","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x67\x72\x61\x70\x68","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x20\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x2D\x73\x63\x72\x6F\x6C\x6C","\x20","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x69\x6E\x70\x75\x74\x47\x72\x6F\x75\x70","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70","\x64\x69\x73\x61\x62\x6C\x65\x64","\x6F\x6E\x63\x6C\x69\x63\x6B","\x4F\x4E","\x4F\x46\x46","\x62\x74\x6E\x20\x62\x74\x6E\x2D\x64\x61\x6E\x67\x65\x72\x20\x62\x74\x6E\x2D\x6D\x64","\x62\x74\x6E\x20\x62\x74\x6E\x2D\x73\x75\x63\x63\x65\x73\x73\x20\x62\x74\x6E\x2D\x6D\x64","\x73\x74\x61\x74\x65","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x42\x6F\x64\x79","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x70\x6C\x61\x63\x65\x68\x6F\x6C\x64\x65\x72","\x49\x6E\x73\x65\x72\x74\x20\x6C\x61\x62\x65\x6C\x20\x66\x6F\x72\x20\x22\x4F\x74\x68\x65\x72\x22\x20\x61\x6E\x73\x77\x65\x72\x20\x6F\x70\x74\x69\x6F\x6E","\x6F\x74\x68\x65\x72","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x6D\x61\x78\x6C\x65\x6E\x67\x74\x68","\x31\x36\x30","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x2B","\x62\x74\x6E\x20\x67\x72\x65\x65\x6E","\x61\x64\x64","\x68\x65\x6C\x70\x5F","\x70","\x68\x65\x6C\x70\x2D\x62\x6C\x6F\x63\x6B","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x6D\x6F\x64\x65\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x73\x42\x79\x54\x61\x67\x4E\x61\x6D\x65","\x72\x65\x66\x72\x65\x73\x68","\x63\x6F\x6C\x2D\x6D\x64\x2D\x35","\x63\x6F\x6C\x2D\x6D\x64\x2D\x32","\x49\x6E\x73\x65\x72\x74\x20\x6C\x61\x62\x65\x6C","\x6E\x75\x6D\x62\x65\x72","\x78","\x70\x61\x72\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x62\x74\x6E\x20\x72\x65\x64"];_0xebbd[0];function createCheckbox(_0xbc69x2){var _0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[3],_0xebbd[4]);if(_0xbc69x2){_0xbc69x3[_0xebbd[5]](_0xebbd[6],true)};return _0xbc69x3}function createDropdownFromApi(_0xbc69x5,_0xbc69x2,_0xbc69x6,_0xbc69x7,_0xbc69x8,_0xbc69x9,_0xbc69xa){var _0xbc69xb= new XMLHttpRequest();_0xbc69xb[_0xebbd[8]](_0xebbd[7],_0xbc69x5,false);_0xbc69xb[_0xebbd[14]](_0xebbd[9],_0xebbd[10]+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[11]]);_0xbc69xb[_0xebbd[15]](null);var _0xbc69xc=[];if(_0xbc69xb[_0xebbd[16]]===200){_0xbc69xc=JSON[_0xebbd[18]](_0xbc69xb[_0xebbd[17]])};var _0xbc69x3=document[_0xebbd[2]](_0xebbd[19]);var _0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xebbd[22];_0xbc69xd[_0xebbd[23]]=_0xebbd[24];_0xbc69x3[_0xebbd[25]](_0xbc69xd);_0xbc69xc[_0xebbd[30]][_0xebbd[28]](function(_0xbc69xe){_0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xbc69xe[_0xbc69x6];if(_0xbc69x9&&_0xbc69xa){_0xbc69x9[_0xebbd[28]](function(_0xbc69xf){_0xbc69xa=_0xbc69xa[_0xebbd[27]](_0xebbd[26]+_0xbc69xf+_0xebbd[26],_0xbc69xe[_0xbc69xf])});_0xbc69xd[_0xebbd[23]]=_0xbc69xa;_0xbc69xd[_0xebbd[29]]=(_0xbc69xa==_0xbc69x2)}else {_0xbc69xd[_0xebbd[23]]=_0xbc69xe[_0xbc69x7];_0xbc69xd[_0xebbd[29]]=(_0xbc69xe[_0xbc69x7]==_0xbc69x2)};_0xbc69x3[_0xebbd[25]](_0xbc69xd)});_0xbc69x3[_0xebbd[31]]=_0xebbd[32];return _0xbc69x3}function createGroupedDropdownFromApi(_0xbc69x5,_0xbc69x2,_0xbc69x6,_0xbc69x7,_0xbc69x8,_0xbc69x11,_0xbc69x12){var _0xbc69xb= new XMLHttpRequest();_0xbc69xb[_0xebbd[8]](_0xebbd[7],_0xbc69x5,false);_0xbc69xb[_0xebbd[14]](_0xebbd[9],_0xebbd[10]+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[11]]);_0xbc69xb[_0xebbd[15]](null);var _0xbc69xc=[];if(_0xbc69xb[_0xebbd[16]]===200){_0xbc69xc=JSON[_0xebbd[18]](_0xbc69xb[_0xebbd[17]])};var _0xbc69x3=document[_0xebbd[2]](_0xebbd[19]);var _0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xebbd[22];_0xbc69xd[_0xebbd[23]]=_0xebbd[33];_0xbc69x3[_0xebbd[25]](_0xbc69xd);var _0xbc69x13=_0xbc69x11?_0xbc69xc[_0xebbd[30]]:_0xbc69xc;var _0xbc69x14={};var _0xbc69x15={};_0xbc69x14[_0xbc69x12]=null;var _0xbc69x16=_[_0xebbd[34]](_0xbc69x13,_0xbc69x14);var _0xbc69x17={};_0xbc69x16[_0xebbd[28]](function(_0xbc69xe){_0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[31]]=_0xebbd[35];_0xbc69xd[_0xebbd[21]]=_0xbc69xe[_0xbc69x6][_0xebbd[36]]();_0xbc69xd[_0xebbd[23]]=_0xbc69xe[_0xbc69x7];_0xbc69xd[_0xebbd[29]]=(_0xbc69xe[_0xbc69x7]==_0xbc69x2);_0xbc69x3[_0xebbd[25]](_0xbc69xd);_0xbc69x15[_0xbc69x12]=_0xbc69xe[_0xbc69x7];_0xbc69x17=_[_0xebbd[34]](_0xbc69x13,_0xbc69x15);_0xbc69x17[_0xebbd[28]](function(_0xbc69xe){_0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[31]]=_0xebbd[37];_0xbc69xd[_0xebbd[21]]=_0xebbd[38]+_[_0xebbd[39]](_0xbc69xe[_0xbc69x6]);_0xbc69xd[_0xebbd[23]]=_0xbc69xe[_0xbc69x7];_0xbc69xd[_0xebbd[29]]=(_0xbc69xe[_0xbc69x7]==_0xbc69x2);_0xbc69x3[_0xebbd[25]](_0xbc69xd)})});_0xbc69x3[_0xebbd[31]]=_0xebbd[32];return _0xbc69x3}function createDropdownFromArray(_0xbc69x19,_0xbc69x2){var _0xbc69x3=document[_0xebbd[2]](_0xebbd[19]);for(var _0xbc69x1a in _0xbc69x19){var _0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xbc69x19[_0xbc69x1a];_0xbc69xd[_0xebbd[23]]=_0xbc69x1a;if(_0xbc69x2>0||_0xbc69x2!=_0xebbd[40]){_0xbc69xd[_0xebbd[29]]=(_0xbc69x2===_0xbc69x1a)?true:false};_0xbc69x3[_0xebbd[25]](_0xbc69xd)};_0xbc69x3[_0xebbd[31]]=_0xebbd[32];return _0xbc69x3}function Dialog(_0xbc69x8,_0xbc69x1c,_0xbc69x1d,_0xbc69x1e,_0xbc69x1f,_0xbc69x20,_0xbc69x21){var _0xbc69x22=0;if(mxClient[_0xebbd[41]]&&document[_0xebbd[42]]!=9){_0xbc69x22=60};_0xbc69x1d+=_0xbc69x22;_0xbc69x1e+=_0xbc69x22;var _0xbc69x23=Math[_0xebbd[46]](0,Math[_0xebbd[45]]((document[_0xebbd[44]][_0xebbd[43]]-_0xbc69x1d)/2));var _0xbc69x24=Math[_0xebbd[46]](0,Math[_0xebbd[45]]((Math[_0xebbd[46]](document[_0xebbd[44]][_0xebbd[47]],document[_0xebbd[48]][_0xebbd[47]])-_0xbc69x1e)/3));var _0xbc69x25=_0xbc69x8[_0xebbd[50]](_0xebbd[49]);_0xbc69x25[_0xebbd[31]]=_0xebbd[51];_0xbc69x25[_0xebbd[53]][_0xebbd[52]]=_0xebbd[54];_0xbc69x25[_0xebbd[53]][_0xebbd[55]]=_0xebbd[56];var _0xbc69x26=_0xbc69x8[_0xebbd[50]](_0xebbd[57]);_0xbc69x26[_0xebbd[31]]=_0xebbd[58];_0xbc69x26[_0xebbd[25]](_0xbc69x1c);_0xbc69x25[_0xebbd[25]](_0xbc69x26);if(this[_0xebbd[59]]==null){this[_0xebbd[59]]=_0xbc69x8[_0xebbd[50]](_0xebbd[60]);this[_0xebbd[59]][_0xebbd[31]]=_0xebbd[61];if(mxClient[_0xebbd[62]]){ new mxDivResizer(this[_0xebbd[59]])}};if(_0xbc69x1f){document[_0xebbd[44]][_0xebbd[25]](this[_0xebbd[59]])};document[_0xebbd[44]][_0xebbd[25]](_0xbc69x25);this[_0xebbd[63]]=_0xbc69x21;this[_0xebbd[64]]=_0xbc69x25}Dialog[_0xebbd[66]][_0xebbd[65]]=function(){if(this[_0xebbd[63]]!=null){this[_0xebbd[63]]();this[_0xebbd[63]]=null};this[_0xebbd[64]][_0xebbd[68]][_0xebbd[67]](this[_0xebbd[64]]);this[_0xebbd[59]][_0xebbd[68]][_0xebbd[67]](this[_0xebbd[59]])};function ImportDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[75])+_0xebbd[77]);var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[82]);var _0xbc69x30=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x30[_0xebbd[53]][_0xebbd[84]]=_0xebbd[85];_0xbc69x30[_0xebbd[53]][_0xebbd[86]]=_0xebbd[87];var _0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[3]]=_0xebbd[88];_0xbc69x3[_0xebbd[5]](_0xebbd[89],_0xebbd[90]);_0xbc69x3[_0xebbd[100]](_0xebbd[91],function _0xbc69x31(_0xbc69x32){var _0xbc69x33=_0xbc69x32[_0xebbd[93]][_0xebbd[92]][0];console[_0xebbd[94]](_0xbc69x33);if(_0xbc69x33){if(_0xbc69x33[_0xebbd[3]]===_0xebbd[90]){var _0xbc69x34= new FileReader();_0xbc69x34[_0xebbd[95]]=function(_0xbc69x35){var _0xbc69x36=_0xbc69x35[_0xebbd[93]][_0xebbd[96]];mxUtils[_0xebbd[78]](_0xbc69x30,_0xbc69x36)};_0xbc69x34[_0xebbd[97]](_0xbc69x33)}else {alert(_0xebbd[98])}}else {alert(_0xebbd[99])}},false);_0xbc69x2f[_0xebbd[25]](_0xbc69x3);_0xbc69x2f[_0xebbd[25]](_0xbc69x30);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[75]),mxUtils[_0xebbd[103]](this,function(_0xbc69x38){var _0xbc69x39=mxUtils[_0xebbd[101]](_0xbc69x30[_0xebbd[23]]);_0xbc69x8[_0xebbd[13]][_0xebbd[102]](_0xbc69x39[_0xebbd[48]]);_0xbc69x8[_0xebbd[79]]()}));_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function AboutDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[107])+_0xebbd[108]);var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x3c=document[_0xebbd[2]](_0xebbd[109]);_0xbc69x3c[_0xebbd[53]][_0xebbd[110]]=_0xebbd[111];_0xbc69x3c[_0xebbd[5]](_0xebbd[84],_0xebbd[112]);_0xbc69x3c[_0xebbd[5]](_0xebbd[84],_0xebbd[113]);_0xbc69x3c[_0xebbd[5]](_0xebbd[114],IMAGE_PATH+_0xebbd[115]);_0xbc69x2a[_0xebbd[25]](_0xbc69x3c);mxUtils[_0xebbd[116]](_0xbc69x2a);mxUtils[_0xebbd[78]](_0xbc69x2a,_0xebbd[117]+mxClient[_0xebbd[118]]);mxUtils[_0xebbd[116]](_0xbc69x2a);var _0xbc69x3d=document[_0xebbd[2]](_0xebbd[119]);_0xbc69x3d[_0xebbd[5]](_0xebbd[120],_0xebbd[121]);_0xbc69x3d[_0xebbd[5]](_0xebbd[93],_0xebbd[122]);mxUtils[_0xebbd[78]](_0xbc69x3d,_0xebbd[123]);_0xbc69x2a[_0xebbd[25]](_0xbc69x3d);mxUtils[_0xebbd[116]](_0xbc69x2a);mxUtils[_0xebbd[116]](_0xbc69x2a);var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[65]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function SaveDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[124]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x3f=_0xebbd[125];var _0xbc69x40=_0xebbd[126]+_0xbc69x3f;var _0xbc69x2=_0xbc69x8[_0xebbd[13]][_0xebbd[127]]();var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[128]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[129]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[131];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xbc69x3f));_0xbc69x2f[_0xebbd[25]](_0xbc69x42);var _0xbc69x43=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x43[_0xebbd[5]](_0xebbd[23],_0xbc69x2+_0xebbd[132]);_0xbc69x43[_0xebbd[5]](_0xebbd[133],_0xbc69x40);_0xbc69x43[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x43);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2e[_0xebbd[25]](_0xbc69x41);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[135]),function(){_0xbc69x8[_0xebbd[124]](_0xbc69x43[_0xebbd[23]]);_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function NewDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[136]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x3f=_0xebbd[125];var _0xbc69x40=_0xebbd[126]+_0xbc69x3f;var _0xbc69x2=_0xbc69x8[_0xebbd[13]][_0xebbd[127]]();var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[128]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[129]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[131];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xbc69x3f));_0xbc69x2f[_0xebbd[25]](_0xbc69x42);var _0xbc69x43=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x43[_0xebbd[5]](_0xebbd[23],_0xbc69x2+_0xebbd[137]);_0xbc69x43[_0xebbd[5]](_0xebbd[133],_0xbc69x40);_0xbc69x43[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x43);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2e[_0xebbd[25]](_0xbc69x41);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[136]),function(){_0xbc69x8[_0xebbd[136]](_0xbc69x43[_0xebbd[23]]);_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function VariableDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[138]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x3f=_0xebbd[125];var _0xbc69x40=_0xebbd[126]+_0xbc69x3f;var _0xbc69x2=_0xbc69x8[_0xebbd[13]][_0xebbd[127]]();var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[128]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[129]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[131];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xbc69x3f));_0xbc69x2f[_0xebbd[25]](_0xbc69x42);var _0xbc69x43=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x43[_0xebbd[5]](_0xebbd[23],_0xebbd[139]);_0xbc69x43[_0xebbd[5]](_0xebbd[133],_0xbc69x40);_0xbc69x43[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x43);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2e[_0xebbd[25]](_0xbc69x41);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[136]),function(){_0xbc69x8[_0xebbd[138]](_0xbc69x43[_0xebbd[23]]);_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function OpenDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[8]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[128]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[129]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[131];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xebbd[125]));_0xbc69x2f[_0xebbd[25]](_0xbc69x42);var _0xbc69xb= new XMLHttpRequest();_0xbc69xb[_0xebbd[8]](_0xebbd[7],_0xebbd[140],false);_0xbc69xb[_0xebbd[14]](_0xebbd[9],_0xebbd[10]+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[11]]);_0xbc69xb[_0xebbd[15]](null);var _0xbc69xc=[];if(_0xbc69xb[_0xebbd[16]]===200){_0xbc69xc=JSON[_0xebbd[18]](_0xbc69xb[_0xebbd[17]])[_0xebbd[30]]};var _0xbc69x43=document[_0xebbd[2]](_0xebbd[19]);for(var _0xbc69x47=0;_0xbc69x47<_0xbc69xc[_0xebbd[141]];_0xbc69x47++){var _0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xbc69xc[_0xbc69x47][_0xebbd[125]];_0xbc69xd[_0xebbd[23]]=_0xbc69xc[_0xbc69x47][_0xebbd[133]];_0xbc69x43[_0xebbd[25]](_0xbc69xd)};_0xbc69x43[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x43);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2e[_0xebbd[25]](_0xbc69x41);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[8]),function(){console[_0xebbd[94]](_0xbc69x43);console[_0xebbd[94]](_0xbc69x43[_0xebbd[23]]);window[_0xebbd[8]](_0xebbd[142]+_0xbc69x43[_0xebbd[23]],_0xebbd[122]);_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function RenameDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[143]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[128]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[129]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[131];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xebbd[125]));_0xbc69x2f[_0xebbd[25]](_0xbc69x42);var _0xbc69x3f=_0xbc69x8[_0xebbd[13]][_0xebbd[144]];var _0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x3f);_0xbc69x3[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x3);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2e[_0xebbd[25]](_0xbc69x41);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[135]),function(){var _0xbc69xb= new XMLHttpRequest();_0xbc69xb[_0xebbd[8]](_0xebbd[145],SAVE_URL+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[133]],true);_0xbc69xb[_0xebbd[14]](_0xebbd[146],_0xebbd[147]);_0xbc69xb[_0xebbd[14]](_0xebbd[9],_0xebbd[10]+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[11]]);_0xbc69xb[_0xebbd[15]](_0xebbd[148]+_0xbc69x3[_0xebbd[23]]);_0xbc69xb[_0xebbd[95]]=function(_0xbc69x35){if(_0xbc69xb[_0xebbd[16]]===200){_0xbc69x8[_0xebbd[13]][_0xebbd[150]](_0xebbd[149]);_0xbc69x8[_0xebbd[13]][_0xebbd[144]]=_0xbc69x3[_0xebbd[23]]}else {_0xbc69x8[_0xebbd[13]][_0xebbd[150]](JSON[_0xebbd[18]](_0xbc69xb[_0xebbd[17]])[_0xebbd[152]][0][_0xebbd[151]])}};_0xbc69xb[_0xebbd[153]]=function(_0xbc69x35){mxUtils[_0xebbd[155]](_0xbc69xb[_0xebbd[154]])};_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function EditFileDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[71]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[156]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x2e=_0xbc69x8[_0xebbd[50]](_0xebbd[81]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[82]);var _0xbc69x30=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x30[_0xebbd[53]][_0xebbd[84]]=_0xebbd[85];_0xbc69x30[_0xebbd[53]][_0xebbd[86]]=_0xebbd[87];_0xbc69x30[_0xebbd[23]]=mxUtils[_0xebbd[158]](_0xbc69x8[_0xebbd[13]][_0xebbd[157]]());if(fileSupport){function _0xbc69x4a(_0xbc69x32){_0xbc69x32[_0xebbd[159]]();_0xbc69x32[_0xebbd[160]]();if(_0xbc69x32[_0xebbd[161]][_0xebbd[92]][_0xebbd[141]]>0){var _0xbc69x4b=_0xbc69x32[_0xebbd[161]][_0xebbd[92]][0];var _0xbc69x4c= new FileReader();_0xbc69x4c[_0xebbd[95]]=function(_0xbc69x35){_0xbc69x30[_0xebbd[23]]=_0xbc69x35[_0xebbd[93]][_0xebbd[96]]};_0xbc69x4c[_0xebbd[97]](_0xbc69x4b)}}function _0xbc69x4d(_0xbc69x32){_0xbc69x32[_0xebbd[159]]();_0xbc69x32[_0xebbd[160]]()}_0xbc69x30[_0xebbd[100]](_0xebbd[162],_0xbc69x4d,false);_0xbc69x30[_0xebbd[100]](_0xebbd[163],_0xbc69x4a,false)};_0xbc69x2f[_0xebbd[25]](_0xbc69x30);_0xbc69x2e[_0xebbd[25]](_0xbc69x2f);_0xbc69x2a[_0xebbd[25]](_0xbc69x2e);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[135]),function(){var _0xbc69x39=mxUtils[_0xebbd[101]](_0xbc69x30[_0xebbd[23]]);_0xbc69x8[_0xebbd[13]][_0xebbd[102]](_0xbc69x39[_0xebbd[48]]);_0xbc69x8[_0xebbd[79]]()});_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function ExportDialog(_0xbc69x8){var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[164]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[165])+_0xebbd[77]);var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x4f=_0xbc69x8[_0xebbd[50]](_0xebbd[166]);var _0xbc69x50=_0xbc69x8[_0xebbd[50]](_0xebbd[167]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[168];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xebbd[144]));var _0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x8[_0xebbd[13]][_0xebbd[127]]());_0xbc69x3[_0xebbd[31]]=_0xebbd[134];var _0xbc69x25=_0xbc69x8[_0xebbd[50]](_0xebbd[169]);_0xbc69x25[_0xebbd[25]](_0xbc69x3);_0xbc69x50[_0xebbd[25]](_0xbc69x42);_0xbc69x50[_0xebbd[25]](_0xbc69x25);_0xbc69x4f[_0xebbd[25]](_0xbc69x50);_0xbc69x2a[_0xebbd[25]](_0xbc69x4f);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[165]),mxUtils[_0xebbd[103]](this,function(_0xbc69x38){_0xbc69x8[_0xebbd[135]](false);var _0xbc69x51=encodeURIComponent(mxUtils[_0xebbd[170]](_0xbc69x8[_0xebbd[13]][_0xebbd[157]]())); new mxXmlRequest(SAVE_URL+_0xbc69x8[_0xebbd[13]][_0xebbd[12]][_0xebbd[133]]+_0xebbd[172],_0xebbd[173]+_0xbc69x3[_0xebbd[23]],_0xebbd[7])[_0xebbd[171]](document,_0xebbd[122]);_0xbc69x8[_0xebbd[79]]()}));_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function GeneralDialog(_0xbc69x8,_0xbc69x53){var _0xbc69x54=_0xbc69x8[_0xebbd[13]][_0xebbd[174]];var _0xbc69x28=_0xbc69x8[_0xebbd[50]](_0xebbd[69]);var _0xbc69x29=_0xbc69x8[_0xebbd[50]](_0xebbd[70]);var _0xbc69x2a=_0xbc69x8[_0xebbd[50]](_0xebbd[175]);var _0xbc69x2b=_0xbc69x8[_0xebbd[50]](_0xebbd[72]);var _0xbc69x2c=_0xbc69x8[_0xebbd[74]](_0xebbd[73]);mxUtils[_0xebbd[78]](_0xbc69x2c,mxResources[_0xebbd[76]](_0xebbd[156])+_0xebbd[176]+mxResources[_0xebbd[76]](_0xbc69x53[_0xebbd[23]][_0xebbd[177]]));var _0xbc69x2d=mxUtils[_0xebbd[80]](_0xebbd[40],function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x2d[_0xebbd[31]]=_0xebbd[65];_0xbc69x29[_0xebbd[25]](_0xbc69x2d);_0xbc69x29[_0xebbd[25]](_0xbc69x2c);var _0xbc69x55=_0xbc69x8[_0xebbd[50]](_0xebbd[166]);_0xbc69x55[_0xebbd[5]](_0xebbd[133],_0xebbd[178]);var _0xbc69x56=_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xebbd[141]];var _0xbc69x4f=_0xbc69x8[_0xebbd[50]](_0xebbd[166]);for(var _0xbc69x57=0;_0xbc69x57<_0xbc69x56;_0xbc69x57++){var _0xbc69x3f=_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xbc69x57][_0xebbd[125]];var _0xbc69x40=_0xebbd[126]+_0xbc69x3f;var _0xbc69x2=_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xbc69x57][_0xebbd[23]];console[_0xebbd[94]](_0xbc69x3f);var _0xbc69x50=_0xbc69x8[_0xebbd[50]]((_0xbc69x57==_0xbc69x56-1)?_0xebbd[167]:_0xebbd[180]);var _0xbc69x42=document[_0xebbd[2]](_0xebbd[130]);_0xbc69x42[_0xebbd[31]]=_0xebbd[168];mxUtils[_0xebbd[78]](_0xbc69x42,mxResources[_0xebbd[76]](_0xbc69x3f));_0xbc69x50[_0xebbd[25]](_0xbc69x42);var _0xbc69x3;switch(_0xbc69x3f){case _0xebbd[133]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x2=_0xbc69x53[_0xebbd[133]];_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x2);_0xbc69x3[_0xebbd[5]](_0xebbd[181],true);_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break;case _0xebbd[187]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[3],_0xebbd[80]);_0xbc69x3[_0xebbd[182]]=function(){if(this[_0xebbd[23]]==_0xebbd[183]){this[_0xebbd[5]](_0xebbd[23],_0xebbd[184]);this[_0xebbd[31]]=_0xebbd[185]}else {this[_0xebbd[31]]=_0xebbd[186];this[_0xebbd[5]](_0xebbd[23],_0xebbd[183])}};_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x2);_0xbc69x3[_0xebbd[31]]=(_0xbc69x2==_0xebbd[183]?_0xebbd[186]:_0xebbd[185]);break;case _0xebbd[21]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x3[_0xebbd[188]]=_0xbc69x2;_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break;case _0xebbd[189]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x3[_0xebbd[188]]=_0xbc69x2;_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break;case _0xebbd[190]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x3[_0xebbd[188]]=_0xbc69x2;_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break;case _0xebbd[193]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x2);_0xbc69x3[_0xebbd[5]](_0xebbd[191],_0xebbd[192]);_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break;case _0xebbd[195]:_0xbc69x3=createDropdownFromApi(_0xebbd[194],_0xbc69x2,_0xebbd[125],_0xebbd[133],_0xbc69x8);break;case _0xebbd[198]:_0xbc69x3=document[_0xebbd[2]](_0xebbd[83]);_0xbc69x3[_0xebbd[188]]=_0xbc69x2;_0xbc69x3[_0xebbd[31]]=_0xebbd[134];_0xbc69x3[_0xebbd[5]](_0xebbd[196],_0xebbd[197]);break;case _0xebbd[201]:var _0xbc69x3=mxUtils[_0xebbd[80]](_0xebbd[199],function(){var _0xbc69x58=createDynamicInput(null,null,_0xbc69x8);_0xbc69x55[_0xebbd[25]](_0xbc69x58);_0xbc69x2a[_0xebbd[25]](_0xbc69x55)});_0xbc69x3[_0xebbd[31]]=_0xebbd[200];break;default:_0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[23],_0xbc69x2);_0xbc69x3[_0xebbd[31]]=_0xebbd[134];break};_0xbc69x3[_0xebbd[5]](_0xebbd[133],_0xbc69x40);var _0xbc69x25=_0xbc69x8[_0xebbd[50]](_0xebbd[169]);_0xbc69x25[_0xebbd[25]](_0xbc69x3);if(mxResources[_0xebbd[76]](_0xebbd[202]+_0xbc69x3f)){var _0xbc69x59=_0xbc69x8[_0xebbd[50]](_0xebbd[203]);_0xbc69x59[_0xebbd[31]]=_0xebbd[204];mxUtils[_0xebbd[78]](_0xbc69x59,mxResources[_0xebbd[76]](_0xebbd[202]+_0xbc69x3f));_0xbc69x25[_0xebbd[25]](_0xbc69x59)};_0xbc69x50[_0xebbd[25]](_0xbc69x25);_0xbc69x4f[_0xebbd[25]](_0xbc69x50)};_0xbc69x2a[_0xebbd[25]](_0xbc69x4f);if(_0xbc69x53[_0xebbd[23]][_0xebbd[177]]==_0xebbd[1]){if(_0xbc69x53[_0xebbd[205]]){for(var _0xbc69x47=0;_0xbc69x47<_0xbc69x53[_0xebbd[205]][_0xebbd[141]];_0xbc69x47++){var _0xbc69x5a=_0xebbd[40];var _0xbc69x5b=_0xebbd[40];_[_0xebbd[28]](_0xbc69x53[_0xebbd[205]][_0xbc69x47][_0xebbd[23]][_0xebbd[179]],function(_0xbc69x5c){if(_0xbc69x5c[_0xebbd[125]]==_0xebbd[3]){_0xbc69x5a=_0xbc69x5c[_0xebbd[23]]}else {if(_0xbc69x5c[_0xebbd[125]]==_0xebbd[130]){_0xbc69x5b=_0xbc69x5c[_0xebbd[23]]}}});var _0xbc69x58=createDynamicInput(_0xbc69x5a,_0xbc69x5b,_0xbc69x8);_0xbc69x55[_0xebbd[25]](_0xbc69x58)}}};_0xbc69x2a[_0xebbd[25]](_0xbc69x55);var _0xbc69x37=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[135]),mxUtils[_0xebbd[103]](this,function(_0xbc69x38){for(var _0xbc69x57=0;_0xbc69x57<_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xebbd[141]];_0xbc69x57++){var _0xbc69x40=_0xebbd[126]+_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xbc69x57][_0xebbd[125]];var _0xbc69x3f=_0xbc69x53[_0xebbd[23]][_0xebbd[179]][_0xbc69x57][_0xebbd[125]];console[_0xebbd[94]](_0xbc69x3f);_0xbc69x53[_0xebbd[5]](_0xbc69x3f,document[_0xebbd[206]](_0xbc69x40)[_0xebbd[23]]);console[_0xebbd[94]](document[_0xebbd[206]](_0xbc69x40)[_0xebbd[23]])};if(_0xbc69x53[_0xebbd[23]][_0xebbd[177]]==_0xebbd[1]){if(_0xbc69x54[_0xebbd[208]][_0xebbd[207]](_0xbc69x53)){_0xbc69x53[_0xebbd[205]]=[]};if(document[_0xebbd[206]](_0xebbd[178])){var _0xbc69x55=document[_0xebbd[206]](_0xebbd[178])[_0xebbd[205]];for(var _0xbc69x47=0;_0xbc69x47<_0xbc69x55[_0xebbd[141]];_0xbc69x47++){var _0xbc69x5d=_0xbc69x55[_0xbc69x47][_0xebbd[205]][1];var _0xbc69x5e=_0xbc69x55[_0xbc69x47][_0xebbd[205]][0];var _0xbc69x39=mxUtils[_0xebbd[209]]();var _0xbc69x5f=_0xbc69x39[_0xebbd[2]](_0xebbd[178]);_0xbc69x5f[_0xebbd[5]](_0xebbd[3],_0xbc69x55[_0xbc69x47][_0xebbd[210]](_0xebbd[19])[0][_0xebbd[23]]);_0xbc69x5f[_0xebbd[5]](_0xebbd[130],_0xbc69x55[_0xbc69x47][_0xebbd[210]](_0xebbd[1])[0][_0xebbd[23]]);var _0xbc69x60= new mxCell(_0xbc69x5f);_0xbc69x54[_0xebbd[208]][_0xebbd[201]](_0xbc69x53,_0xbc69x60)}}};_0xbc69x54[_0xebbd[211]](_0xbc69x53);_0xbc69x8[_0xebbd[79]]()}));_0xbc69x37[_0xebbd[31]]=_0xebbd[104];var _0xbc69x3a=mxUtils[_0xebbd[80]](mxResources[_0xebbd[76]](_0xebbd[105]),function(){_0xbc69x8[_0xebbd[79]]()});_0xbc69x3a[_0xebbd[31]]=_0xebbd[106];_0xbc69x2b[_0xebbd[25]](_0xbc69x37);_0xbc69x2b[_0xebbd[25]](_0xbc69x3a);_0xbc69x28[_0xebbd[25]](_0xbc69x29);_0xbc69x28[_0xebbd[25]](_0xbc69x2a);_0xbc69x28[_0xebbd[25]](_0xbc69x2b);this[_0xebbd[64]]=_0xbc69x28}function createDynamicInput(_0xbc69x5a,_0xbc69x5b,_0xbc69x8){var _0xbc69x58=_0xbc69x8[_0xebbd[50]](_0xebbd[180]);var _0xbc69x2f=_0xbc69x8[_0xebbd[50]](_0xebbd[212]);var _0xbc69x41=_0xbc69x8[_0xebbd[50]](_0xebbd[212]);var _0xbc69x62=_0xbc69x8[_0xebbd[50]](_0xebbd[213]);var _0xbc69x3=document[_0xebbd[2]](_0xebbd[1]);_0xbc69x3[_0xebbd[5]](_0xebbd[191],_0xebbd[214]);_0xbc69x3[_0xebbd[23]]=_0xbc69x5b;_0xbc69x3[_0xebbd[31]]=_0xebbd[134];_0xbc69x2f[_0xebbd[25]](_0xbc69x3);var _0xbc69x43=document[_0xebbd[2]](_0xebbd[19]);var _0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xebbd[22];_0xbc69xd[_0xebbd[23]]=_0xebbd[40];_0xbc69x43[_0xebbd[25]](_0xbc69xd);var _0xbc69x13=[_0xebbd[21],_0xebbd[215],_0xebbd[83],_0xebbd[4]];_0xbc69x13[_0xebbd[28]](function(_0xbc69xe){_0xbc69xd=document[_0xebbd[2]](_0xebbd[20]);_0xbc69xd[_0xebbd[21]]=_0xbc69xe;_0xbc69xd[_0xebbd[23]]=_0xbc69xe;_0xbc69xd[_0xebbd[29]]=(_0xbc69xe==_0xbc69x5a);_0xbc69x43[_0xebbd[25]](_0xbc69xd)});_0xbc69x43[_0xebbd[31]]=_0xebbd[134];_0xbc69x41[_0xebbd[25]](_0xbc69x43);var _0xbc69x63=mxUtils[_0xebbd[80]](_0xebbd[216],function(){var _0xbc69x64=_0xbc69x63[_0xebbd[217]];var _0xbc69x65=_0xbc69x64[_0xebbd[217]];document[_0xebbd[206]](_0xebbd[178])[_0xebbd[67]](_0xbc69x65)});_0xbc69x63[_0xebbd[31]]=_0xebbd[218];_0xbc69x62[_0xebbd[25]](_0xbc69x63);_0xbc69x58[_0xebbd[25]](_0xbc69x2f);_0xbc69x58[_0xebbd[25]](_0xbc69x41);_0xbc69x58[_0xebbd[25]](_0xbc69x62);return _0xbc69x58} \ No newline at end of file +var _0x8a29=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x6E\x70\x75\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x79\x70\x65","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x65\x63\x6B\x65\x64","\x47\x45\x54","\x6F\x70\x65\x6E","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x61","\x65\x64\x69\x74\x6F\x72","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x73\x65\x6C\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x2D\x2D\x20\x4E\x6F\x6E\x65\x20\x2D\x2D","\x76\x61\x6C\x75\x65","\x2D\x31","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x45\x61\x63\x68","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x6F\x77\x73","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x73\x65\x6C\x65\x63\x74\x32","\x30","\x66\x69\x6C\x74\x65\x72","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x66\x61\x74\x68\x65\x72","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x73\x6F\x6E","\x2D","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x62\x6F\x64\x79","\x72\x6F\x75\x6E\x64","\x6D\x61\x78","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x44\x69\x61\x6C\x6F\x67","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x6D\x6F\x64\x61\x6C\x20\x66\x61\x64\x65\x20\x69\x6E\x20\x63\x65\x6E\x74\x65\x72","\x64\x69\x73\x70\x6C\x61\x79","\x73\x74\x79\x6C\x65","\x62\x6C\x6F\x63\x6B","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x31\x32\x70\x78","\x67\x65\x4D\x6F\x64\x61\x6C\x44\x69\x61\x6C\x6F\x67","\x6D\x6F\x64\x61\x6C\x2D\x64\x69\x61\x6C\x6F\x67","\x62\x67","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x6D\x6F\x64\x61\x6C\x2D\x62\x61\x63\x6B\x64\x72\x6F\x70\x20\x66\x61\x64\x65\x20\x69\x6E","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x6E\x44\x69\x61\x6C\x6F\x67\x43\x6C\x6F\x73\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x6C\x6F\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x64\x61\x6C\x2D\x63\x6F\x6E\x74\x65\x6E\x74","\x6D\x6F\x64\x61\x6C\x2D\x68\x65\x61\x64\x65\x72","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79","\x6D\x6F\x64\x61\x6C\x2D\x66\x6F\x6F\x74\x65\x72","\x68\x34","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x69\x6D\x70\x6F\x72\x74","\x67\x65\x74","\x20\x58\x4D\x4C","\x77\x72\x69\x74\x65","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x62\x75\x74\x74\x6F\x6E","\x72\x6F\x77","\x63\x6F\x6C\x2D\x6D\x64\x2D\x31\x32","\x74\x65\x78\x74\x61\x72\x65\x61","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x33\x37\x34\x70\x78","\x66\x69\x6C\x65","\x61\x63\x63\x65\x70\x74","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x63\x68\x61\x6E\x67\x65","\x66\x69\x6C\x65\x73","\x74\x61\x72\x67\x65\x74","\x6C\x6F\x67","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x73\x75\x6C\x74","\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x6F\x72\x6D\x61\x74\x20\x66\x69\x6C\x65","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x62\x69\x6E\x64","\x62\x74\x6E\x20\x62\x6C\x75\x65","\x63\x61\x6E\x63\x65\x6C","\x62\x74\x6E\x20\x64\x65\x66\x61\x75\x6C\x74","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30\x70\x78","\x31\x37\x36","\x31\x35\x31","\x73\x72\x63","\x2F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x62\x72","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x58\x65\x6E\x69\x61\x6C\x61\x62\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x61","\x68\x72\x65\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D\x2F","\x5F\x62\x6C\x61\x6E\x6B","\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D","\x73\x61\x76\x65\x41\x73","\x6E\x61\x6D\x65","\x5F","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x63\x6F\x6C\x2D\x6D\x64\x2D\x34","\x63\x6F\x6C\x2D\x6D\x64\x2D\x38","\x6C\x61\x62\x65\x6C","\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C\x20\x70\x75\x6C\x6C\x2D\x72\x69\x67\x68\x74","\x5F\x63\x6F\x70\x79","\x69\x64","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C","\x73\x61\x76\x65","\x6E\x65\x77","\x5F\x6E\x65\x77","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x72\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x50\x55\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6E\x61\x6D\x65\x3D","\x50\x72\x6F\x6A\x65\x63\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x72\x65\x6E\x61\x6D\x65\x64","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x6C\x65\x72\x74","\x65\x64\x69\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x64\x61\x74\x61\x54\x72\x61\x6E\x73\x66\x65\x72","\x64\x72\x61\x67\x6F\x76\x65\x72","\x64\x72\x6F\x70","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D","\x65\x78\x70\x6F\x72\x74","\x66\x6F\x72\x6D\x2D\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x20\x66\x6F\x72\x6D\x2D\x72\x6F\x77\x2D\x73\x65\x70\x65\x72\x61\x74\x65\x64","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70\x20\x6C\x61\x73\x74","\x63\x6F\x6C\x2D\x73\x6D\x2D\x34\x20\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C","\x63\x6F\x6C\x2D\x73\x6D\x2D\x38","\x67\x65\x74\x58\x6D\x6C","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x67\x72\x61\x70\x68","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x20\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x2D\x73\x63\x72\x6F\x6C\x6C","\x20","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x69\x6E\x70\x75\x74\x47\x72\x6F\x75\x70","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70","\x64\x69\x73\x61\x62\x6C\x65\x64","\x6F\x6E\x63\x6C\x69\x63\x6B","\x4F\x4E","\x4F\x46\x46","\x62\x74\x6E\x20\x62\x74\x6E\x2D\x64\x61\x6E\x67\x65\x72\x20\x62\x74\x6E\x2D\x6D\x64","\x62\x74\x6E\x20\x62\x74\x6E\x2D\x73\x75\x63\x63\x65\x73\x73\x20\x62\x74\x6E\x2D\x6D\x64","\x73\x74\x61\x74\x65","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x42\x6F\x64\x79","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x70\x6C\x61\x63\x65\x68\x6F\x6C\x64\x65\x72","\x49\x6E\x73\x65\x72\x74\x20\x6C\x61\x62\x65\x6C\x20\x66\x6F\x72\x20\x22\x4F\x74\x68\x65\x72\x22\x20\x61\x6E\x73\x77\x65\x72\x20\x6F\x70\x74\x69\x6F\x6E","\x6F\x74\x68\x65\x72","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x6D\x61\x78\x6C\x65\x6E\x67\x74\x68","\x31\x36\x30","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x2B","\x62\x74\x6E\x20\x67\x72\x65\x65\x6E","\x61\x64\x64","\x68\x65\x6C\x70\x5F","\x70","\x68\x65\x6C\x70\x2D\x62\x6C\x6F\x63\x6B","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x6D\x6F\x64\x65\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x73\x42\x79\x54\x61\x67\x4E\x61\x6D\x65","\x72\x65\x66\x72\x65\x73\x68","\x63\x6F\x6C\x2D\x6D\x64\x2D\x35","\x63\x6F\x6C\x2D\x6D\x64\x2D\x32","\x49\x6E\x73\x65\x72\x74\x20\x6C\x61\x62\x65\x6C","\x6E\x75\x6D\x62\x65\x72","\x78","\x70\x61\x72\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x62\x74\x6E\x20\x72\x65\x64"];_0x8a29[0];function createCheckbox(_0xd938x2){var _0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[3],_0x8a29[4]);if(_0xd938x2){_0xd938x3[_0x8a29[5]](_0x8a29[6],true)};return _0xd938x3}function createDropdownFromApi(_0xd938x5,_0xd938x2,_0xd938x6,_0xd938x7,_0xd938x8,_0xd938x9,_0xd938xa){var _0xd938xb= new XMLHttpRequest();_0xd938xb[_0x8a29[8]](_0x8a29[7],_0xd938x5,false);_0xd938xb[_0x8a29[14]](_0x8a29[9],_0x8a29[10]+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[11]]);_0xd938xb[_0x8a29[15]](null);var _0xd938xc=[];if(_0xd938xb[_0x8a29[16]]===200){_0xd938xc=JSON[_0x8a29[18]](_0xd938xb[_0x8a29[17]])};var _0xd938x3=document[_0x8a29[2]](_0x8a29[19]);var _0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0x8a29[22];_0xd938xd[_0x8a29[23]]=_0x8a29[24];_0xd938x3[_0x8a29[25]](_0xd938xd);_0xd938xc[_0x8a29[30]][_0x8a29[28]](function(_0xd938xe){_0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0xd938xe[_0xd938x6];if(_0xd938x9&&_0xd938xa){_0xd938x9[_0x8a29[28]](function(_0xd938xf){_0xd938xa=_0xd938xa[_0x8a29[27]](_0x8a29[26]+_0xd938xf+_0x8a29[26],_0xd938xe[_0xd938xf])});_0xd938xd[_0x8a29[23]]=_0xd938xa;_0xd938xd[_0x8a29[29]]=(_0xd938xa==_0xd938x2)}else {_0xd938xd[_0x8a29[23]]=_0xd938xe[_0xd938x7];_0xd938xd[_0x8a29[29]]=(_0xd938xe[_0xd938x7]==_0xd938x2)};_0xd938x3[_0x8a29[25]](_0xd938xd)});_0xd938x3[_0x8a29[31]]=_0x8a29[32];return _0xd938x3}function createGroupedDropdownFromApi(_0xd938x5,_0xd938x2,_0xd938x6,_0xd938x7,_0xd938x8,_0xd938x11,_0xd938x12){var _0xd938xb= new XMLHttpRequest();_0xd938xb[_0x8a29[8]](_0x8a29[7],_0xd938x5,false);_0xd938xb[_0x8a29[14]](_0x8a29[9],_0x8a29[10]+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[11]]);_0xd938xb[_0x8a29[15]](null);var _0xd938xc=[];if(_0xd938xb[_0x8a29[16]]===200){_0xd938xc=JSON[_0x8a29[18]](_0xd938xb[_0x8a29[17]])};var _0xd938x3=document[_0x8a29[2]](_0x8a29[19]);var _0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0x8a29[22];_0xd938xd[_0x8a29[23]]=_0x8a29[33];_0xd938x3[_0x8a29[25]](_0xd938xd);var _0xd938x13=_0xd938x11?_0xd938xc[_0x8a29[30]]:_0xd938xc;var _0xd938x14={};var _0xd938x15={};_0xd938x14[_0xd938x12]=null;var _0xd938x16=_[_0x8a29[34]](_0xd938x13,_0xd938x14);var _0xd938x17={};_0xd938x16[_0x8a29[28]](function(_0xd938xe){_0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[31]]=_0x8a29[35];_0xd938xd[_0x8a29[21]]=_0xd938xe[_0xd938x6][_0x8a29[36]]();_0xd938xd[_0x8a29[23]]=_0xd938xe[_0xd938x7];_0xd938xd[_0x8a29[29]]=(_0xd938xe[_0xd938x7]==_0xd938x2);_0xd938x3[_0x8a29[25]](_0xd938xd);_0xd938x15[_0xd938x12]=_0xd938xe[_0xd938x7];_0xd938x17=_[_0x8a29[34]](_0xd938x13,_0xd938x15);_0xd938x17[_0x8a29[28]](function(_0xd938xe){_0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[31]]=_0x8a29[37];_0xd938xd[_0x8a29[21]]=_0x8a29[38]+_[_0x8a29[39]](_0xd938xe[_0xd938x6]);_0xd938xd[_0x8a29[23]]=_0xd938xe[_0xd938x7];_0xd938xd[_0x8a29[29]]=(_0xd938xe[_0xd938x7]==_0xd938x2);_0xd938x3[_0x8a29[25]](_0xd938xd)})});_0xd938x3[_0x8a29[31]]=_0x8a29[32];return _0xd938x3}function createDropdownFromArray(_0xd938x19,_0xd938x2){var _0xd938x3=document[_0x8a29[2]](_0x8a29[19]);for(var _0xd938x1a in _0xd938x19){var _0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0xd938x19[_0xd938x1a];_0xd938xd[_0x8a29[23]]=_0xd938x1a;if(_0xd938x2>0||_0xd938x2!=_0x8a29[40]){_0xd938xd[_0x8a29[29]]=(_0xd938x2===_0xd938x1a)?true:false};_0xd938x3[_0x8a29[25]](_0xd938xd)};_0xd938x3[_0x8a29[31]]=_0x8a29[32];return _0xd938x3}function Dialog(_0xd938x8,_0xd938x1c,_0xd938x1d,_0xd938x1e,_0xd938x1f,_0xd938x20,_0xd938x21){var _0xd938x22=0;if(mxClient[_0x8a29[41]]&&document[_0x8a29[42]]!=9){_0xd938x22=60};_0xd938x1d+=_0xd938x22;_0xd938x1e+=_0xd938x22;var _0xd938x23=Math[_0x8a29[46]](0,Math[_0x8a29[45]]((document[_0x8a29[44]][_0x8a29[43]]-_0xd938x1d)/2));var _0xd938x24=Math[_0x8a29[46]](0,Math[_0x8a29[45]]((Math[_0x8a29[46]](document[_0x8a29[44]][_0x8a29[47]],document[_0x8a29[48]][_0x8a29[47]])-_0xd938x1e)/3));var _0xd938x25=_0xd938x8[_0x8a29[50]](_0x8a29[49]);_0xd938x25[_0x8a29[31]]=_0x8a29[51];_0xd938x25[_0x8a29[53]][_0x8a29[52]]=_0x8a29[54];_0xd938x25[_0x8a29[53]][_0x8a29[55]]=_0x8a29[56];var _0xd938x26=_0xd938x8[_0x8a29[50]](_0x8a29[57]);_0xd938x26[_0x8a29[31]]=_0x8a29[58];_0xd938x26[_0x8a29[25]](_0xd938x1c);_0xd938x25[_0x8a29[25]](_0xd938x26);if(this[_0x8a29[59]]==null){this[_0x8a29[59]]=_0xd938x8[_0x8a29[50]](_0x8a29[60]);this[_0x8a29[59]][_0x8a29[31]]=_0x8a29[61];if(mxClient[_0x8a29[62]]){ new mxDivResizer(this[_0x8a29[59]])}};if(_0xd938x1f){document[_0x8a29[44]][_0x8a29[25]](this[_0x8a29[59]])};document[_0x8a29[44]][_0x8a29[25]](_0xd938x25);this[_0x8a29[63]]=_0xd938x21;this[_0x8a29[64]]=_0xd938x25}Dialog[_0x8a29[66]][_0x8a29[65]]=function(){if(this[_0x8a29[63]]!=null){this[_0x8a29[63]]();this[_0x8a29[63]]=null};this[_0x8a29[64]][_0x8a29[68]][_0x8a29[67]](this[_0x8a29[64]]);this[_0x8a29[59]][_0x8a29[68]][_0x8a29[67]](this[_0x8a29[59]])};function ImportDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[75])+_0x8a29[77]);var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[82]);var _0xd938x30=document[_0x8a29[2]](_0x8a29[83]);_0xd938x30[_0x8a29[53]][_0x8a29[84]]=_0x8a29[85];_0xd938x30[_0x8a29[53]][_0x8a29[86]]=_0x8a29[87];var _0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[3]]=_0x8a29[88];_0xd938x3[_0x8a29[5]](_0x8a29[89],_0x8a29[90]);_0xd938x3[_0x8a29[100]](_0x8a29[91],function _0xd938x31(_0xd938x32){var _0xd938x33=_0xd938x32[_0x8a29[93]][_0x8a29[92]][0];console[_0x8a29[94]](_0xd938x33);if(_0xd938x33){if(_0xd938x33[_0x8a29[3]]===_0x8a29[90]){var _0xd938x34= new FileReader();_0xd938x34[_0x8a29[95]]=function(_0xd938x35){var _0xd938x36=_0xd938x35[_0x8a29[93]][_0x8a29[96]];mxUtils[_0x8a29[78]](_0xd938x30,_0xd938x36)};_0xd938x34[_0x8a29[97]](_0xd938x33)}else {alert(_0x8a29[98])}}else {alert(_0x8a29[99])}},false);_0xd938x2f[_0x8a29[25]](_0xd938x3);_0xd938x2f[_0x8a29[25]](_0xd938x30);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[75]),mxUtils[_0x8a29[103]](this,function(_0xd938x38){var _0xd938x39=mxUtils[_0x8a29[101]](_0xd938x30[_0x8a29[23]]);_0xd938x8[_0x8a29[13]][_0x8a29[102]](_0xd938x39[_0x8a29[48]]);_0xd938x8[_0x8a29[79]]()}));_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function AboutDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[107])+_0x8a29[108]);var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x3c=document[_0x8a29[2]](_0x8a29[109]);_0xd938x3c[_0x8a29[53]][_0x8a29[110]]=_0x8a29[111];_0xd938x3c[_0x8a29[5]](_0x8a29[84],_0x8a29[112]);_0xd938x3c[_0x8a29[5]](_0x8a29[84],_0x8a29[113]);_0xd938x3c[_0x8a29[5]](_0x8a29[114],IMAGE_PATH+_0x8a29[115]);_0xd938x2a[_0x8a29[25]](_0xd938x3c);mxUtils[_0x8a29[116]](_0xd938x2a);mxUtils[_0x8a29[78]](_0xd938x2a,_0x8a29[117]+mxClient[_0x8a29[118]]);mxUtils[_0x8a29[116]](_0xd938x2a);var _0xd938x3d=document[_0x8a29[2]](_0x8a29[119]);_0xd938x3d[_0x8a29[5]](_0x8a29[120],_0x8a29[121]);_0xd938x3d[_0x8a29[5]](_0x8a29[93],_0x8a29[122]);mxUtils[_0x8a29[78]](_0xd938x3d,_0x8a29[123]);_0xd938x2a[_0x8a29[25]](_0xd938x3d);mxUtils[_0x8a29[116]](_0xd938x2a);mxUtils[_0x8a29[116]](_0xd938x2a);var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[65]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function SaveDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[124]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x3f=_0x8a29[125];var _0xd938x40=_0x8a29[126]+_0xd938x3f;var _0xd938x2=_0xd938x8[_0x8a29[13]][_0x8a29[127]]();var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[128]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[129]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[131];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0xd938x3f));_0xd938x2f[_0x8a29[25]](_0xd938x42);var _0xd938x43=document[_0x8a29[2]](_0x8a29[1]);_0xd938x43[_0x8a29[5]](_0x8a29[23],_0xd938x2+_0x8a29[132]);_0xd938x43[_0x8a29[5]](_0x8a29[133],_0xd938x40);_0xd938x43[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x43);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2e[_0x8a29[25]](_0xd938x41);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[135]),function(){_0xd938x8[_0x8a29[124]](_0xd938x43[_0x8a29[23]]);_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function NewDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[136]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x3f=_0x8a29[125];var _0xd938x40=_0x8a29[126]+_0xd938x3f;var _0xd938x2=_0xd938x8[_0x8a29[13]][_0x8a29[127]]();var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[128]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[129]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[131];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0xd938x3f));_0xd938x2f[_0x8a29[25]](_0xd938x42);var _0xd938x43=document[_0x8a29[2]](_0x8a29[1]);_0xd938x43[_0x8a29[5]](_0x8a29[23],_0xd938x2+_0x8a29[137]);_0xd938x43[_0x8a29[5]](_0x8a29[133],_0xd938x40);_0xd938x43[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x43);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2e[_0x8a29[25]](_0xd938x41);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[136]),function(){_0xd938x8[_0x8a29[136]](_0xd938x43[_0x8a29[23]]);_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function VariableDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[138]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x3f=_0x8a29[125];var _0xd938x40=_0x8a29[126]+_0xd938x3f;var _0xd938x2=_0xd938x8[_0x8a29[13]][_0x8a29[127]]();var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[128]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[129]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[131];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0xd938x3f));_0xd938x2f[_0x8a29[25]](_0xd938x42);var _0xd938x43=document[_0x8a29[2]](_0x8a29[1]);_0xd938x43[_0x8a29[5]](_0x8a29[23],_0x8a29[139]);_0xd938x43[_0x8a29[5]](_0x8a29[133],_0xd938x40);_0xd938x43[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x43);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2e[_0x8a29[25]](_0xd938x41);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[136]),function(){_0xd938x8[_0x8a29[138]](_0xd938x43[_0x8a29[23]]);_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function OpenDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[8]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[128]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[129]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[131];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0x8a29[125]));_0xd938x2f[_0x8a29[25]](_0xd938x42);var _0xd938xb= new XMLHttpRequest();_0xd938xb[_0x8a29[8]](_0x8a29[7],_0x8a29[140],false);_0xd938xb[_0x8a29[14]](_0x8a29[9],_0x8a29[10]+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[11]]);_0xd938xb[_0x8a29[15]](null);var _0xd938xc=[];if(_0xd938xb[_0x8a29[16]]===200){_0xd938xc=JSON[_0x8a29[18]](_0xd938xb[_0x8a29[17]])[_0x8a29[30]]};var _0xd938x43=document[_0x8a29[2]](_0x8a29[19]);for(var _0xd938x47=0;_0xd938x47<_0xd938xc[_0x8a29[141]];_0xd938x47++){var _0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0xd938xc[_0xd938x47][_0x8a29[125]];_0xd938xd[_0x8a29[23]]=_0xd938xc[_0xd938x47][_0x8a29[133]];_0xd938x43[_0x8a29[25]](_0xd938xd)};_0xd938x43[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x43);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2e[_0x8a29[25]](_0xd938x41);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[8]),function(){console[_0x8a29[94]](_0xd938x43);console[_0x8a29[94]](_0xd938x43[_0x8a29[23]]);window[_0x8a29[8]](_0x8a29[142]+_0xd938x43[_0x8a29[23]],_0x8a29[122]);_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function RenameDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[143]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[128]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[129]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[131];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0x8a29[125]));_0xd938x2f[_0x8a29[25]](_0xd938x42);var _0xd938x3f=_0xd938x8[_0x8a29[13]][_0x8a29[144]];var _0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x3f);_0xd938x3[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x3);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2e[_0x8a29[25]](_0xd938x41);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[135]),function(){var _0xd938xb= new XMLHttpRequest();_0xd938xb[_0x8a29[8]](_0x8a29[145],SAVE_URL+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[133]],true);_0xd938xb[_0x8a29[14]](_0x8a29[146],_0x8a29[147]);_0xd938xb[_0x8a29[14]](_0x8a29[9],_0x8a29[10]+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[11]]);_0xd938xb[_0x8a29[15]](_0x8a29[148]+_0xd938x3[_0x8a29[23]]);_0xd938xb[_0x8a29[95]]=function(_0xd938x35){if(_0xd938xb[_0x8a29[16]]===200){_0xd938x8[_0x8a29[13]][_0x8a29[150]](_0x8a29[149]);_0xd938x8[_0x8a29[13]][_0x8a29[144]]=_0xd938x3[_0x8a29[23]]}else {_0xd938x8[_0x8a29[13]][_0x8a29[150]](JSON[_0x8a29[18]](_0xd938xb[_0x8a29[17]])[_0x8a29[152]][0][_0x8a29[151]])}};_0xd938xb[_0x8a29[153]]=function(_0xd938x35){mxUtils[_0x8a29[155]](_0xd938xb[_0x8a29[154]])};_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function EditFileDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[71]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[156]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x2e=_0xd938x8[_0x8a29[50]](_0x8a29[81]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[82]);var _0xd938x30=document[_0x8a29[2]](_0x8a29[83]);_0xd938x30[_0x8a29[53]][_0x8a29[84]]=_0x8a29[85];_0xd938x30[_0x8a29[53]][_0x8a29[86]]=_0x8a29[87];_0xd938x30[_0x8a29[23]]=mxUtils[_0x8a29[158]](_0xd938x8[_0x8a29[13]][_0x8a29[157]]());if(fileSupport){function _0xd938x4a(_0xd938x32){_0xd938x32[_0x8a29[159]]();_0xd938x32[_0x8a29[160]]();if(_0xd938x32[_0x8a29[161]][_0x8a29[92]][_0x8a29[141]]>0){var _0xd938x4b=_0xd938x32[_0x8a29[161]][_0x8a29[92]][0];var _0xd938x4c= new FileReader();_0xd938x4c[_0x8a29[95]]=function(_0xd938x35){_0xd938x30[_0x8a29[23]]=_0xd938x35[_0x8a29[93]][_0x8a29[96]]};_0xd938x4c[_0x8a29[97]](_0xd938x4b)}}function _0xd938x4d(_0xd938x32){_0xd938x32[_0x8a29[159]]();_0xd938x32[_0x8a29[160]]()}_0xd938x30[_0x8a29[100]](_0x8a29[162],_0xd938x4d,false);_0xd938x30[_0x8a29[100]](_0x8a29[163],_0xd938x4a,false)};_0xd938x2f[_0x8a29[25]](_0xd938x30);_0xd938x2e[_0x8a29[25]](_0xd938x2f);_0xd938x2a[_0x8a29[25]](_0xd938x2e);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[135]),function(){var _0xd938x39=mxUtils[_0x8a29[101]](_0xd938x30[_0x8a29[23]]);_0xd938x8[_0x8a29[13]][_0x8a29[102]](_0xd938x39[_0x8a29[48]]);_0xd938x8[_0x8a29[79]]()});_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function ExportDialog(_0xd938x8){var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[164]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[165])+_0x8a29[77]);var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x4f=_0xd938x8[_0x8a29[50]](_0x8a29[166]);var _0xd938x50=_0xd938x8[_0x8a29[50]](_0x8a29[167]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[168];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0x8a29[144]));var _0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x8[_0x8a29[13]][_0x8a29[127]]());_0xd938x3[_0x8a29[31]]=_0x8a29[134];var _0xd938x25=_0xd938x8[_0x8a29[50]](_0x8a29[169]);_0xd938x25[_0x8a29[25]](_0xd938x3);_0xd938x50[_0x8a29[25]](_0xd938x42);_0xd938x50[_0x8a29[25]](_0xd938x25);_0xd938x4f[_0x8a29[25]](_0xd938x50);_0xd938x2a[_0x8a29[25]](_0xd938x4f);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[165]),mxUtils[_0x8a29[103]](this,function(_0xd938x38){_0xd938x8[_0x8a29[135]](false);var _0xd938x51=encodeURIComponent(mxUtils[_0x8a29[170]](_0xd938x8[_0x8a29[13]][_0x8a29[157]]())); new mxXmlRequest(SAVE_URL+_0xd938x8[_0x8a29[13]][_0x8a29[12]][_0x8a29[133]]+_0x8a29[172],_0x8a29[173]+_0xd938x3[_0x8a29[23]],_0x8a29[7])[_0x8a29[171]](document,_0x8a29[122]);_0xd938x8[_0x8a29[79]]()}));_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function GeneralDialog(_0xd938x8,_0xd938x53){var _0xd938x54=_0xd938x8[_0x8a29[13]][_0x8a29[174]];var _0xd938x28=_0xd938x8[_0x8a29[50]](_0x8a29[69]);var _0xd938x29=_0xd938x8[_0x8a29[50]](_0x8a29[70]);var _0xd938x2a=_0xd938x8[_0x8a29[50]](_0x8a29[175]);var _0xd938x2b=_0xd938x8[_0x8a29[50]](_0x8a29[72]);var _0xd938x2c=_0xd938x8[_0x8a29[74]](_0x8a29[73]);mxUtils[_0x8a29[78]](_0xd938x2c,mxResources[_0x8a29[76]](_0x8a29[156])+_0x8a29[176]+mxResources[_0x8a29[76]](_0xd938x53[_0x8a29[23]][_0x8a29[177]]));var _0xd938x2d=mxUtils[_0x8a29[80]](_0x8a29[40],function(){_0xd938x8[_0x8a29[79]]()});_0xd938x2d[_0x8a29[31]]=_0x8a29[65];_0xd938x29[_0x8a29[25]](_0xd938x2d);_0xd938x29[_0x8a29[25]](_0xd938x2c);var _0xd938x55=_0xd938x8[_0x8a29[50]](_0x8a29[166]);_0xd938x55[_0x8a29[5]](_0x8a29[133],_0x8a29[178]);var _0xd938x56=_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0x8a29[141]];var _0xd938x4f=_0xd938x8[_0x8a29[50]](_0x8a29[166]);for(var _0xd938x57=0;_0xd938x57<_0xd938x56;_0xd938x57++){var _0xd938x3f=_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0xd938x57][_0x8a29[125]];var _0xd938x40=_0x8a29[126]+_0xd938x3f;var _0xd938x2=_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0xd938x57][_0x8a29[23]];console[_0x8a29[94]](_0xd938x3f);var _0xd938x50=_0xd938x8[_0x8a29[50]]((_0xd938x57==_0xd938x56-1)?_0x8a29[167]:_0x8a29[180]);var _0xd938x42=document[_0x8a29[2]](_0x8a29[130]);_0xd938x42[_0x8a29[31]]=_0x8a29[168];mxUtils[_0x8a29[78]](_0xd938x42,mxResources[_0x8a29[76]](_0xd938x3f));_0xd938x50[_0x8a29[25]](_0xd938x42);var _0xd938x3;switch(_0xd938x3f){case _0x8a29[133]:_0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x2=_0xd938x53[_0x8a29[133]];_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x2);_0xd938x3[_0x8a29[5]](_0x8a29[181],true);_0xd938x3[_0x8a29[31]]=_0x8a29[134];break;case _0x8a29[187]:_0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[3],_0x8a29[80]);_0xd938x3[_0x8a29[182]]=function(){if(this[_0x8a29[23]]==_0x8a29[183]){this[_0x8a29[5]](_0x8a29[23],_0x8a29[184]);this[_0x8a29[31]]=_0x8a29[185]}else {this[_0x8a29[31]]=_0x8a29[186];this[_0x8a29[5]](_0x8a29[23],_0x8a29[183])}};_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x2);_0xd938x3[_0x8a29[31]]=(_0xd938x2==_0x8a29[183]?_0x8a29[186]:_0x8a29[185]);break;case _0x8a29[21]:_0xd938x3=document[_0x8a29[2]](_0x8a29[83]);_0xd938x3[_0x8a29[188]]=_0xd938x2;_0xd938x3[_0x8a29[31]]=_0x8a29[134];break;case _0x8a29[189]:_0xd938x3=document[_0x8a29[2]](_0x8a29[83]);_0xd938x3[_0x8a29[188]]=_0xd938x2;_0xd938x3[_0x8a29[31]]=_0x8a29[134];break;case _0x8a29[190]:_0xd938x3=document[_0x8a29[2]](_0x8a29[83]);_0xd938x3[_0x8a29[188]]=_0xd938x2;_0xd938x3[_0x8a29[31]]=_0x8a29[134];break;case _0x8a29[193]:_0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x2);_0xd938x3[_0x8a29[5]](_0x8a29[191],_0x8a29[192]);_0xd938x3[_0x8a29[31]]=_0x8a29[134];break;case _0x8a29[195]:_0xd938x3=createDropdownFromApi(_0x8a29[194],_0xd938x2,_0x8a29[125],_0x8a29[133],_0xd938x8);break;case _0x8a29[198]:_0xd938x3=document[_0x8a29[2]](_0x8a29[83]);_0xd938x3[_0x8a29[188]]=_0xd938x2;_0xd938x3[_0x8a29[31]]=_0x8a29[134];_0xd938x3[_0x8a29[5]](_0x8a29[196],_0x8a29[197]);break;case _0x8a29[201]:var _0xd938x3=mxUtils[_0x8a29[80]](_0x8a29[199],function(){var _0xd938x58=createDynamicInput(null,null,_0xd938x8);_0xd938x55[_0x8a29[25]](_0xd938x58);_0xd938x2a[_0x8a29[25]](_0xd938x55)});_0xd938x3[_0x8a29[31]]=_0x8a29[200];break;default:_0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[23],_0xd938x2);_0xd938x3[_0x8a29[31]]=_0x8a29[134];break};_0xd938x3[_0x8a29[5]](_0x8a29[133],_0xd938x40);var _0xd938x25=_0xd938x8[_0x8a29[50]](_0x8a29[169]);_0xd938x25[_0x8a29[25]](_0xd938x3);if(mxResources[_0x8a29[76]](_0x8a29[202]+_0xd938x3f)){var _0xd938x59=_0xd938x8[_0x8a29[50]](_0x8a29[203]);_0xd938x59[_0x8a29[31]]=_0x8a29[204];mxUtils[_0x8a29[78]](_0xd938x59,mxResources[_0x8a29[76]](_0x8a29[202]+_0xd938x3f));_0xd938x25[_0x8a29[25]](_0xd938x59)};_0xd938x50[_0x8a29[25]](_0xd938x25);_0xd938x4f[_0x8a29[25]](_0xd938x50)};_0xd938x2a[_0x8a29[25]](_0xd938x4f);if(_0xd938x53[_0x8a29[23]][_0x8a29[177]]==_0x8a29[1]){if(_0xd938x53[_0x8a29[205]]){for(var _0xd938x47=0;_0xd938x47<_0xd938x53[_0x8a29[205]][_0x8a29[141]];_0xd938x47++){var _0xd938x5a=_0x8a29[40];var _0xd938x5b=_0x8a29[40];_[_0x8a29[28]](_0xd938x53[_0x8a29[205]][_0xd938x47][_0x8a29[23]][_0x8a29[179]],function(_0xd938x5c){if(_0xd938x5c[_0x8a29[125]]==_0x8a29[3]){_0xd938x5a=_0xd938x5c[_0x8a29[23]]}else {if(_0xd938x5c[_0x8a29[125]]==_0x8a29[130]){_0xd938x5b=_0xd938x5c[_0x8a29[23]]}}});var _0xd938x58=createDynamicInput(_0xd938x5a,_0xd938x5b,_0xd938x8);_0xd938x55[_0x8a29[25]](_0xd938x58)}}};_0xd938x2a[_0x8a29[25]](_0xd938x55);var _0xd938x37=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[135]),mxUtils[_0x8a29[103]](this,function(_0xd938x38){for(var _0xd938x57=0;_0xd938x57<_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0x8a29[141]];_0xd938x57++){var _0xd938x40=_0x8a29[126]+_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0xd938x57][_0x8a29[125]];var _0xd938x3f=_0xd938x53[_0x8a29[23]][_0x8a29[179]][_0xd938x57][_0x8a29[125]];console[_0x8a29[94]](_0xd938x3f);_0xd938x53[_0x8a29[5]](_0xd938x3f,document[_0x8a29[206]](_0xd938x40)[_0x8a29[23]]);console[_0x8a29[94]](document[_0x8a29[206]](_0xd938x40)[_0x8a29[23]])};if(_0xd938x53[_0x8a29[23]][_0x8a29[177]]==_0x8a29[1]){if(_0xd938x54[_0x8a29[208]][_0x8a29[207]](_0xd938x53)){_0xd938x53[_0x8a29[205]]=[]};if(document[_0x8a29[206]](_0x8a29[178])){var _0xd938x55=document[_0x8a29[206]](_0x8a29[178])[_0x8a29[205]];for(var _0xd938x47=0;_0xd938x47<_0xd938x55[_0x8a29[141]];_0xd938x47++){var _0xd938x5d=_0xd938x55[_0xd938x47][_0x8a29[205]][1];var _0xd938x5e=_0xd938x55[_0xd938x47][_0x8a29[205]][0];var _0xd938x39=mxUtils[_0x8a29[209]]();var _0xd938x5f=_0xd938x39[_0x8a29[2]](_0x8a29[178]);_0xd938x5f[_0x8a29[5]](_0x8a29[3],_0xd938x55[_0xd938x47][_0x8a29[210]](_0x8a29[19])[0][_0x8a29[23]]);_0xd938x5f[_0x8a29[5]](_0x8a29[130],_0xd938x55[_0xd938x47][_0x8a29[210]](_0x8a29[1])[0][_0x8a29[23]]);var _0xd938x60= new mxCell(_0xd938x5f);_0xd938x54[_0x8a29[208]][_0x8a29[201]](_0xd938x53,_0xd938x60)}}};_0xd938x54[_0x8a29[211]](_0xd938x53);_0xd938x8[_0x8a29[79]]()}));_0xd938x37[_0x8a29[31]]=_0x8a29[104];var _0xd938x3a=mxUtils[_0x8a29[80]](mxResources[_0x8a29[76]](_0x8a29[105]),function(){_0xd938x8[_0x8a29[79]]()});_0xd938x3a[_0x8a29[31]]=_0x8a29[106];_0xd938x2b[_0x8a29[25]](_0xd938x37);_0xd938x2b[_0x8a29[25]](_0xd938x3a);_0xd938x28[_0x8a29[25]](_0xd938x29);_0xd938x28[_0x8a29[25]](_0xd938x2a);_0xd938x28[_0x8a29[25]](_0xd938x2b);this[_0x8a29[64]]=_0xd938x28}function createDynamicInput(_0xd938x5a,_0xd938x5b,_0xd938x8){var _0xd938x58=_0xd938x8[_0x8a29[50]](_0x8a29[180]);var _0xd938x2f=_0xd938x8[_0x8a29[50]](_0x8a29[212]);var _0xd938x41=_0xd938x8[_0x8a29[50]](_0x8a29[212]);var _0xd938x62=_0xd938x8[_0x8a29[50]](_0x8a29[213]);var _0xd938x3=document[_0x8a29[2]](_0x8a29[1]);_0xd938x3[_0x8a29[5]](_0x8a29[191],_0x8a29[214]);_0xd938x3[_0x8a29[23]]=_0xd938x5b;_0xd938x3[_0x8a29[31]]=_0x8a29[134];_0xd938x2f[_0x8a29[25]](_0xd938x3);var _0xd938x43=document[_0x8a29[2]](_0x8a29[19]);var _0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0x8a29[22];_0xd938xd[_0x8a29[23]]=_0x8a29[40];_0xd938x43[_0x8a29[25]](_0xd938xd);var _0xd938x13=[_0x8a29[21],_0x8a29[215],_0x8a29[83],_0x8a29[4]];_0xd938x13[_0x8a29[28]](function(_0xd938xe){_0xd938xd=document[_0x8a29[2]](_0x8a29[20]);_0xd938xd[_0x8a29[21]]=_0xd938xe;_0xd938xd[_0x8a29[23]]=_0xd938xe;_0xd938xd[_0x8a29[29]]=(_0xd938xe==_0xd938x5a);_0xd938x43[_0x8a29[25]](_0xd938xd)});_0xd938x43[_0x8a29[31]]=_0x8a29[134];_0xd938x41[_0x8a29[25]](_0xd938x43);var _0xd938x63=mxUtils[_0x8a29[80]](_0x8a29[216],function(){var _0xd938x64=_0xd938x63[_0x8a29[217]];var _0xd938x65=_0xd938x64[_0x8a29[217]];document[_0x8a29[206]](_0x8a29[178])[_0x8a29[67]](_0xd938x65)});_0xd938x63[_0x8a29[31]]=_0x8a29[218];_0xd938x62[_0x8a29[25]](_0xd938x63);_0xd938x58[_0x8a29[25]](_0xd938x2f);_0xd938x58[_0x8a29[25]](_0xd938x41);_0xd938x58[_0x8a29[25]](_0xd938x62);return _0xd938x58} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Editor.js b/public/assets/plugins/jscripty/js/Editor.js index c389bb9..5828c43 100644 --- a/public/assets/plugins/jscripty/js/Editor.js +++ b/public/assets/plugins/jscripty/js/Editor.js @@ -1 +1 @@ -var _0x6382=["\x49\x53\x5F\x54\x4F\x55\x43\x48","\x73\x74\x6F\x72\x61\x67\x65","\x6C\x6F\x63\x61\x6C","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x46\x69\x6C\x65","\x46\x69\x6C\x65\x52\x65\x61\x64\x65\x72","\x46\x69\x6C\x65\x4C\x69\x73\x74","\x74\x6F\x75\x63\x68","\x31","\x6F\x70\x65\x6E\x65\x72","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x61\x6C\x6C","\x69\x6E\x69\x74","\x69\x6E\x69\x74\x53\x74\x65\x6E\x63\x69\x6C\x52\x65\x67\x69\x73\x74\x72\x79","\x67\x72\x61\x70\x68","\x6F\x75\x74\x6C\x69\x6E\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x74\x61\x74\x75\x73","","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x64\x72\x61\x77\x69\x6E\x67","\x67\x65\x74","\x2E\x78\x6D\x6C","\x67\x65\x74\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x67\x72\x61\x70\x68\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x70\x70\x6C\x79","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x73\x4C\x6F\x73\x74","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E\x64","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x2F\x67\x72\x69\x64\x2E\x67\x69\x66","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x73\x63\x61\x6C\x65","\x76\x69\x65\x77","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x30","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x67\x75\x69\x64\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x66\x6F\x6C\x64","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x78","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x64\x78","\x79","\x64\x79","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x64\x65\x63\x6F\x64\x65","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x65\x6E\x63\x6F\x64\x65","\x72\x6F\x75\x6E\x64","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x6E\x6F\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x74\x79\x6C\x65","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x66\x69\x6C\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x23\x65\x62\x65\x62\x65\x62","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x73\x6F\x6C\x69\x64","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x23\x65\x35\x65\x35\x65\x35","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x31\x70\x78","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x30\x70\x78","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72","\x76\x61\x6C\x69\x64\x61\x74\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x61\x75\x74\x6F","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x6E\x6F\x64\x65","\x49\x53\x5F\x49\x45\x36","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x67\x72\x61\x70\x68\x65\x64\x69\x74\x6F\x72\x2D\x69\x65\x36\x2E\x63\x73\x73","\x6C\x69\x6E\x6B","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x61\x64\x64","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x23\x64\x30\x64\x30\x64\x30","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x39\x39\x63\x63\x66\x66","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x38\x38\x63\x66","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x61\x38\x66\x66","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x63\x65\x65\x37\x66\x66","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x47\x55\x49\x44\x45\x5F\x43\x4F\x4C\x4F\x52","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x23\x63\x30\x63\x30\x63\x30","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x77\x68\x69\x74\x65","\x23\x63\x61\x63\x61\x63\x61","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x6D\x61\x78","\x63\x65\x69\x6C","\x70\x61\x6E\x47\x72\x61\x70\x68","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65","\x73\x72\x63","\x64\x65\x73\x74\x72\x6F\x79","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x72\x65\x64\x72\x61\x77","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x68\x69\x64\x65","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x62\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x69\x6E\x74\x73","\x69\x73\x44\x61\x73\x68\x65\x64","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x61\x64\x64\x50\x69\x70\x65","\x73\x70\x6C\x69\x63\x65","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x72\x65\x6C\x61\x74\x69\x76\x65","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6F\x6E\x73\x75\x6D\x65","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C","\x67\x65\x74\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x65\x64\x69\x74","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x67\x65\x74\x56\x69\x65\x77","\x63\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x74\x61\x74\x65","\x70\x75\x73\x68","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x6C\x69\x62\x72\x61\x72\x69\x65\x73","\x70\x61\x63\x6B\x61\x67\x65\x73","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x67\x65\x74\x42\x61\x73\x65\x6E\x61\x6D\x65\x46\x6F\x72\x53\x74\x65\x6E\x63\x69\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x2E\x6A\x73","\x6C\x6F\x61\x64","\x67\x65\x74\x54\x65\x78\x74","\x2F","\x2E","\x73\x70\x6C\x69\x74","\x6D\x78\x67\x72\x61\x70\x68","\x67\x65\x74\x58\x6D\x6C","\x70\x61\x72\x73\x65\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6E\x61\x6D\x65","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x5F","\x72\x65\x70\x6C\x61\x63\x65","\x61\x64\x64\x53\x74\x65\x6E\x63\x69\x6C","\x77","\x68","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x70\x72\x6F\x64\x75\x63\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x72","\x64\x6F\x6E\x65","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x65\x78\x65\x63\x75\x74\x65","\x73\x65\x74\x44\x61\x74\x61","\x64\x61\x74\x61","\x65\x72\x72\x6F\x72","\x63\x61\x6E\x63\x65\x6C","\x61\x6C\x65\x72\x74"];var useLocalStorage=(mxClient[_0x6382[0]]||urlParams[_0x6382[1]]==_0x6382[2])&& typeof (localStorage)!=_0x6382[3];var fileSupport=window[_0x6382[4]]!=null&&window[_0x6382[5]]!=null&&window[_0x6382[6]]!=null;var touchStyle=mxClient[_0x6382[0]]||urlParams[_0x6382[7]]==_0x6382[8];var counter=0;try{var op=window;while(op[_0x6382[9]]!=null&&!isNaN(op[_0x6382[9]][_0x6382[10]])){op=op[_0x6382[9]]};if(op!=null){op[_0x6382[10]]++;counter=op[_0x6382[10]]}}catch(e){};Editor=function(){mxEventSource[_0x6382[11]](this);this[_0x6382[12]]();this[_0x6382[13]]();this[_0x6382[14]]= new Graph();this[_0x6382[15]]= new mxOutline(this[_0x6382[14]]);this[_0x6382[15]][_0x6382[16]]=true;this[_0x6382[17]]=this[_0x6382[18]]();this[_0x6382[19]]=_0x6382[20];this[_0x6382[21]]=null;this[_0x6382[22]]=function(){return this[_0x6382[21]]||mxResources[_0x6382[24]](_0x6382[23],[counter])+_0x6382[25]};this[_0x6382[26]]=function(){return this[_0x6382[21]]};this[_0x6382[27]]=function(_0x8787x6){this[_0x6382[19]]=_0x8787x6;this[_0x6382[29]]( new mxEventObject(_0x6382[28]))};this[_0x6382[30]]=function(){return this[_0x6382[19]]};this[_0x6382[31]]=false;this[_0x6382[32]]=function(){this[_0x6382[31]]=true};this[_0x6382[14]][_0x6382[36]]()[_0x6382[35]](mxEvent.CHANGE,mxUtils[_0x6382[34]](this,function(){this[_0x6382[32]][_0x6382[33]](this,arguments)}));window[_0x6382[37]]=mxUtils[_0x6382[34]](this,function(){if(this[_0x6382[31]]){return mxResources[_0x6382[24]](_0x6382[38])}});this[_0x6382[14]][_0x6382[39]]=false;this[_0x6382[14]][_0x6382[40]]=true;this[_0x6382[14]][_0x6382[41]]=null};mxUtils[_0x6382[42]](Editor,mxEventSource);Editor[_0x6382[44]][_0x6382[43]]=IMAGE_PATH+_0x6382[45];Editor[_0x6382[44]][_0x6382[46]]=IMAGE_PATH+_0x6382[47];Editor[_0x6382[44]][_0x6382[48]]=function(_0x8787x7){var _0x8787x8= new mxCodec(_0x8787x7[_0x6382[49]]);if(_0x8787x7[_0x6382[50]]==_0x6382[51]){this[_0x6382[14]][_0x6382[53]][_0x6382[52]]=1;this[_0x6382[14]][_0x6382[54]]=_0x8787x7[_0x6382[56]](_0x6382[55])!=_0x6382[57];this[_0x6382[14]][_0x6382[59]][_0x6382[58]]=_0x8787x7[_0x6382[56]](_0x6382[60])!=_0x6382[57];this[_0x6382[14]][_0x6382[62]](_0x8787x7[_0x6382[56]](_0x6382[61])!=_0x6382[57]);this[_0x6382[14]][_0x6382[64]](_0x8787x7[_0x6382[56]](_0x6382[63])!=_0x6382[57]);this[_0x6382[14]][_0x6382[65]]=_0x8787x7[_0x6382[56]](_0x6382[66])!=_0x6382[57];this[_0x6382[14]][_0x6382[40]]=_0x8787x7[_0x6382[56]](_0x6382[40])!=_0x6382[57];if(!this[_0x6382[14]][_0x6382[40]]){this[_0x6382[14]][_0x6382[68]][_0x6382[67]]=0;this[_0x6382[14]][_0x6382[68]][_0x6382[69]]=0;this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[70]]=Number(_0x8787x7[_0x6382[56]](_0x6382[72])||0);this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[73]]=Number(_0x8787x7[_0x6382[56]](_0x6382[74])||0)};this[_0x6382[14]][_0x6382[75]]=_0x8787x7[_0x6382[56]](_0x6382[76])==_0x6382[8];this[_0x6382[14]][_0x6382[77]]=this[_0x6382[14]][_0x6382[75]];this[_0x6382[14]][_0x6382[78]]=this[_0x6382[14]][_0x6382[77]];var _0x8787x9=_0x8787x7[_0x6382[56]](_0x6382[79]);if(_0x8787x9!=null){this[_0x6382[14]][_0x6382[79]]=_0x8787x9}else {this[_0x6382[14]][_0x6382[79]]=1.5};var _0x8787xa=_0x8787x7[_0x6382[56]](_0x6382[80]);var _0x8787xb=_0x8787x7[_0x6382[56]](_0x6382[81]);if(_0x8787xa!=null&&_0x8787xb!=null){this[_0x6382[14]][_0x6382[82]]= new mxRectangle(0,0,parseFloat(_0x8787xa),parseFloat(_0x8787xb));this[_0x6382[15]][_0x6382[15]][_0x6382[82]]=this[_0x6382[14]][_0x6382[82]]};var _0x8787xc=_0x8787x7[_0x6382[56]](_0x6382[41]);if(_0x8787xc!=null&&_0x8787xc[_0x6382[83]]>0){this[_0x6382[14]][_0x6382[41]]=_0x8787xc};_0x8787x8[_0x6382[84]](_0x8787x7,this[_0x6382[14]][_0x6382[36]]());this[_0x6382[85]]()}};Editor[_0x6382[44]][_0x6382[86]]=function(){var _0x8787xd= new mxCodec(mxUtils[_0x6382[87]]());var _0x8787x7=_0x8787xd[_0x6382[88]](this[_0x6382[14]][_0x6382[36]]());if(this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[70]]!=0||this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[73]]!=0){_0x8787x7[_0x6382[90]](_0x6382[72],Math[_0x6382[89]](this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[70]]*100)/100);_0x8787x7[_0x6382[90]](_0x6382[74],Math[_0x6382[89]](this[_0x6382[14]][_0x6382[53]][_0x6382[71]][_0x6382[73]]*100)/100)};_0x8787x7[_0x6382[90]](_0x6382[55],(this[_0x6382[14]][_0x6382[91]]())?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[60],(this[_0x6382[14]][_0x6382[59]][_0x6382[58]])?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[60],(this[_0x6382[14]][_0x6382[59]][_0x6382[58]])?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[61],(this[_0x6382[14]][_0x6382[93]][_0x6382[92]]())?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[63],(this[_0x6382[14]][_0x6382[94]][_0x6382[92]]())?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[66],(this[_0x6382[14]][_0x6382[65]])?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[76],(this[_0x6382[14]][_0x6382[75]])?_0x6382[8]:_0x6382[57]);_0x8787x7[_0x6382[90]](_0x6382[79],this[_0x6382[14]][_0x6382[79]]);_0x8787x7[_0x6382[90]](_0x6382[80],this[_0x6382[14]][_0x6382[82]][_0x6382[95]]);_0x8787x7[_0x6382[90]](_0x6382[81],this[_0x6382[14]][_0x6382[82]][_0x6382[96]]);if(!this[_0x6382[14]][_0x6382[40]]){_0x8787x7[_0x6382[90]](_0x6382[40],_0x6382[57])};if(this[_0x6382[14]][_0x6382[41]]!=null){_0x8787x7[_0x6382[90]](_0x6382[41],this[_0x6382[14]][_0x6382[41]])};return _0x8787x7};Editor[_0x6382[44]][_0x6382[85]]=function(){var _0x8787xe=this[_0x6382[14]];var _0x8787xf=this[_0x6382[15]];if(_0x8787xe[_0x6382[68]]!=null&&_0x8787xf[_0x6382[15]][_0x6382[68]]!=null){if(_0x8787xe[_0x6382[41]]!=null){if(_0x8787xe[_0x6382[41]]==_0x6382[97]){_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[98]]=_0x6382[100]}else {if(_0x8787xe[_0x6382[53]][_0x6382[101]]!=null){_0x8787xe[_0x6382[53]][_0x6382[101]][_0x6382[102]]=_0x8787xe[_0x6382[41]];_0x8787xe[_0x6382[53]][_0x6382[101]][_0x6382[103]]()};_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[98]]=_0x8787xe[_0x6382[41]]}}else {_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[98]]=_0x6382[20]};if(_0x8787xe[_0x6382[75]]){_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[98]]=_0x6382[104];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[105]]=_0x6382[106];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[107]]=_0x6382[108];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[109]]=_0x6382[110];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[111]]=_0x6382[110];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[112]]=_0x6382[113];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[114]]=_0x6382[113]}else {_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[115]]=_0x6382[20]};_0x8787xf[_0x6382[15]][_0x6382[68]][_0x6382[99]][_0x6382[98]]=_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[98]];if(_0x8787xf[_0x6382[15]][_0x6382[75]]!=_0x8787xe[_0x6382[75]]||_0x8787xf[_0x6382[15]][_0x6382[79]]!=_0x8787xe[_0x6382[79]]){_0x8787xf[_0x6382[15]][_0x6382[79]]=_0x8787xe[_0x6382[79]];_0x8787xf[_0x6382[15]][_0x6382[75]]=_0x8787xe[_0x6382[75]];_0x8787xf[_0x6382[15]][_0x6382[53]][_0x6382[116]]()};if(_0x8787xe[_0x6382[40]]&&_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[117]]==_0x6382[118]&& !touchStyle){_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[117]]=_0x6382[119]}else {if(!_0x8787xe[_0x6382[40]]||touchStyle){_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[117]]=_0x6382[118]}};var _0x8787x10=(mxClient[_0x6382[120]]&&document[_0x6382[121]]>=9)?_0x6382[122]+this[_0x6382[46]]+_0x6382[123]:_0x6382[97];_0x8787xe[_0x6382[68]][_0x6382[99]][_0x6382[124]]=(!_0x8787xe[_0x6382[75]]&&_0x8787xe[_0x6382[91]]())?_0x6382[122]+this[_0x6382[43]]+_0x6382[123]:_0x8787x10;if(_0x8787xe[_0x6382[53]][_0x6382[101]]!=null){_0x8787xe[_0x6382[53]][_0x6382[101]][_0x6382[125]][_0x6382[99]][_0x6382[124]]=(this[_0x6382[14]][_0x6382[91]]())?_0x6382[122]+this[_0x6382[43]]+_0x6382[123]:_0x6382[97]}}};Editor[_0x6382[44]][_0x6382[12]]=function(){if(mxClient[_0x6382[126]]){mxClient[_0x6382[129]](_0x6382[127],CSS_PATH+_0x6382[128])};mxResources[_0x6382[130]]=false;mxResources[_0x6382[131]](RESOURCE_BASE);mxConstants[_0x6382[132]]=0.3;var _0x8787x11=mxConnectionHandler[_0x6382[44]][_0x6382[133]];mxConnectionHandler[_0x6382[44]][_0x6382[133]]=function(){var _0x8787x12=_0x8787x11[_0x6382[33]](this,arguments);_0x8787x12[_0x6382[134]]=mxUtils[_0x6382[34]](this,function(_0x8787x13,_0x8787x14){if(this[_0x6382[135]]()){return true};return mxCellMarker[_0x6382[44]][_0x6382[134]][_0x6382[33]](_0x8787x12,arguments)});return _0x8787x12};mxConstants[_0x6382[136]]=_0x6382[137];mxConstants[_0x6382[138]]=_0x6382[139];mxConstants[_0x6382[140]]=_0x6382[141];mxConstants[_0x6382[142]]=_0x6382[143];mxConstants[_0x6382[144]]=_0x6382[143];mxConstants[_0x6382[145]]=_0x6382[139];mxConstants[_0x6382[146]]=_0x6382[143];mxConstants[_0x6382[147]]=_0x6382[148];mxConstants[_0x6382[149]]=_0x6382[143];mxConstants[_0x6382[150]]=_0x6382[143];mxConstants[_0x6382[151]]=_0x6382[148];mxConstants[_0x6382[152]]=_0x6382[141];mxGraph[_0x6382[44]][_0x6382[153]]=_0x6382[154];mxGraph[_0x6382[44]][_0x6382[79]]=1;mxRubberband[_0x6382[44]][_0x6382[155]]=30;mxGraphView[_0x6382[44]][_0x6382[156]]=function(_0x8787x15){return new mxRectangleShape(_0x8787x15,this[_0x6382[14]][_0x6382[41]]||_0x6382[157],_0x6382[158])};mxGraphView[_0x6382[44]][_0x6382[159]]=function(){var _0x8787x16=this[_0x6382[160]]();var _0x8787x17=(_0x8787x16[_0x6382[95]]>0)?_0x8787x16[_0x6382[70]]/this[_0x6382[52]]-this[_0x6382[71]][_0x6382[70]]:0;var _0x8787x18=(_0x8787x16[_0x6382[96]]>0)?_0x8787x16[_0x6382[73]]/this[_0x6382[52]]-this[_0x6382[71]][_0x6382[73]]:0;var _0x8787x19=_0x8787x16[_0x6382[95]]/this[_0x6382[52]];var _0x8787x1a=_0x8787x16[_0x6382[96]]/this[_0x6382[52]];var _0x8787x1b=this[_0x6382[14]][_0x6382[82]];var _0x8787x9=this[_0x6382[14]][_0x6382[79]];var _0x8787xa=_0x8787x1b[_0x6382[95]]*_0x8787x9;var _0x8787xb=_0x8787x1b[_0x6382[96]]*_0x8787x9;var _0x8787x1c=Math[_0x6382[162]](Math[_0x6382[161]](0,_0x8787x17)/_0x8787xa);var _0x8787x1d=Math[_0x6382[162]](Math[_0x6382[161]](0,_0x8787x18)/_0x8787xb);var _0x8787x1e=Math[_0x6382[164]](Math[_0x6382[163]](1,_0x8787x17+_0x8787x19)/_0x8787xa);var _0x8787x1f=Math[_0x6382[164]](Math[_0x6382[163]](1,_0x8787x18+_0x8787x1a)/_0x8787xb);var _0x8787x20=_0x8787x1e-_0x8787x1c;var _0x8787x21=_0x8787x1f-_0x8787x1d;var _0x8787x15= new mxRectangle(this[_0x6382[52]]*(this[_0x6382[71]][_0x6382[70]]+_0x8787x1c*_0x8787xa),this[_0x6382[52]]*(this[_0x6382[71]][_0x6382[73]]+_0x8787x1d*_0x8787xb),this[_0x6382[52]]*_0x8787x20*_0x8787xa,this[_0x6382[52]]*_0x8787x21*_0x8787xb);return _0x8787x15};var _0x8787x22=mxGraph[_0x6382[44]][_0x6382[165]];mxGraph[_0x6382[44]][_0x6382[165]]=function(_0x8787x23,_0x8787x24){_0x8787x22[_0x6382[33]](this,arguments);if((this[_0x6382[166]]!=mxConstants[_0x6382[167]]&&this[_0x6382[53]][_0x6382[101]]!=null)&&(!this[_0x6382[168]]||!mxUtils[_0x6382[169]](this[_0x6382[68]]))){this[_0x6382[53]][_0x6382[101]][_0x6382[125]][_0x6382[99]][_0x6382[170]]=_0x8787x23+_0x6382[171];this[_0x6382[53]][_0x6382[101]][_0x6382[125]][_0x6382[99]][_0x6382[172]]=_0x8787x24+_0x6382[171]}};var _0x8787x25=this;mxGraphView[_0x6382[44]][_0x6382[173]]=function(){var _0x8787xc=this[_0x6382[14]][_0x6382[174]]();if(_0x8787xc!=null){if(this[_0x6382[124]]==null||this[_0x6382[124]][_0x6382[175]]!=_0x8787xc[_0x6382[176]]){if(this[_0x6382[124]]!=null){this[_0x6382[124]][_0x6382[177]]()};var _0x8787x15= new mxRectangle(0,0,1,1);this[_0x6382[124]]= new mxImageShape(_0x8787x15,_0x8787xc[_0x6382[176]]);this[_0x6382[124]][_0x6382[166]]=this[_0x6382[14]][_0x6382[166]];this[_0x6382[124]][_0x6382[12]](this[_0x6382[178]]);this[_0x6382[124]][_0x6382[179]]()};this[_0x6382[180]](this[_0x6382[124]],_0x8787xc)}else {if(this[_0x6382[124]]!=null){this[_0x6382[124]][_0x6382[177]]();this[_0x6382[124]]=null}};if(this[_0x6382[14]][_0x6382[75]]){var _0x8787x15=this[_0x6382[159]]();if(this[_0x6382[101]]==null){this[_0x6382[101]]=this[_0x6382[156]](_0x8787x15);this[_0x6382[101]][_0x6382[52]]=1;this[_0x6382[101]][_0x6382[181]]=true;this[_0x6382[101]][_0x6382[166]]=mxConstants[_0x6382[182]];this[_0x6382[101]][_0x6382[12]](this[_0x6382[14]][_0x6382[68]]);this[_0x6382[14]][_0x6382[68]][_0x6382[184]][_0x6382[99]][_0x6382[183]]=_0x6382[185];this[_0x6382[14]][_0x6382[68]][_0x6382[186]](this[_0x6382[101]][_0x6382[125]],this[_0x6382[14]][_0x6382[68]][_0x6382[184]]);this[_0x6382[101]][_0x6382[179]]();this[_0x6382[101]][_0x6382[125]][_0x6382[187]]=_0x6382[188];this[_0x6382[101]][_0x6382[125]][_0x6382[99]][_0x6382[189]]=_0x6382[190];mxEvent[_0x6382[35]](this[_0x6382[101]][_0x6382[125]],_0x6382[191],mxUtils[_0x6382[34]](this,function(_0x8787x14){this[_0x6382[14]][_0x6382[192]](_0x8787x14)}));mxEvent[_0x6382[198]](this[_0x6382[101]][_0x6382[125]],mxUtils[_0x6382[34]](this,function(_0x8787x14){this[_0x6382[14]][_0x6382[193]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x8787x14))}),mxUtils[_0x6382[34]](this,function(_0x8787x14){if(this[_0x6382[14]][_0x6382[93]]!=null&&this[_0x6382[14]][_0x6382[93]][_0x6382[194]]()){this[_0x6382[14]][_0x6382[93]][_0x6382[195]]()};if(this[_0x6382[14]][_0x6382[196]]&&!mxEvent[_0x6382[197]](_0x8787x14)){this[_0x6382[14]][_0x6382[193]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x8787x14))}}),mxUtils[_0x6382[34]](this,function(_0x8787x14){this[_0x6382[14]][_0x6382[193]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x8787x14))}))}else {this[_0x6382[101]][_0x6382[52]]=1;this[_0x6382[101]][_0x6382[199]]=_0x8787x15;this[_0x6382[101]][_0x6382[179]]()};this[_0x6382[101]][_0x6382[125]][_0x6382[99]][_0x6382[124]]=(this[_0x6382[14]][_0x6382[91]]())?_0x6382[122]+_0x8787x25[_0x6382[43]]+_0x6382[123]:_0x6382[97]}else {if(this[_0x6382[101]]!=null){this[_0x6382[101]][_0x6382[177]]();this[_0x6382[101]]=null}}};mxGraph[_0x6382[44]][_0x6382[200]]=function(_0x8787x26,_0x8787x27,_0x8787x28){var _0x8787x29=this[_0x6382[53]][_0x6382[52]];var _0x8787x2a=this[_0x6382[53]][_0x6382[71]];var _0x8787x1b=this[_0x6382[82]];var _0x8787x9=_0x8787x29*this[_0x6382[79]];var _0x8787x2b=this[_0x6382[53]][_0x6382[159]]();_0x8787x27=_0x8787x2b[_0x6382[95]];_0x8787x28=_0x8787x2b[_0x6382[96]];var _0x8787x15= new mxRectangle(_0x8787x29*_0x8787x2a[_0x6382[70]],_0x8787x29*_0x8787x2a[_0x6382[73]],_0x8787x1b[_0x6382[95]]*_0x8787x9,_0x8787x1b[_0x6382[96]]*_0x8787x9);_0x8787x26=_0x8787x26&&Math[_0x6382[161]](_0x8787x15[_0x6382[95]],_0x8787x15[_0x6382[96]])>this[_0x6382[201]];var _0x8787x2c=(_0x8787x26)?Math[_0x6382[164]](_0x8787x27/_0x8787x15[_0x6382[95]])-1:0;var _0x8787x2d=(_0x8787x26)?Math[_0x6382[164]](_0x8787x28/_0x8787x15[_0x6382[96]])-1:0;var _0x8787x2e=_0x8787x2b[_0x6382[70]]+_0x8787x27;var _0x8787x2f=_0x8787x2b[_0x6382[73]]+_0x8787x28;if(this[_0x6382[202]]==null&&_0x8787x2c>0){this[_0x6382[202]]=[]};if(this[_0x6382[202]]!=null){for(var _0x8787x30=0;_0x8787x30<=_0x8787x2c;_0x8787x30++){var _0x8787x31=[ new mxPoint(_0x8787x2b[_0x6382[70]]+(_0x8787x30+1)*_0x8787x15[_0x6382[95]],_0x8787x2b[_0x6382[73]]), new mxPoint(_0x8787x2b[_0x6382[70]]+(_0x8787x30+1)*_0x8787x15[_0x6382[95]],_0x8787x2f)];if(this[_0x6382[202]][_0x8787x30]!=null){this[_0x6382[202]][_0x8787x30][_0x6382[52]]=1;this[_0x6382[202]][_0x8787x30][_0x6382[203]]=_0x8787x31;this[_0x6382[202]][_0x8787x30][_0x6382[179]]()}else {var _0x8787x32= new mxPolyline(_0x8787x31,this[_0x6382[153]],this[_0x6382[52]]);_0x8787x32[_0x6382[166]]=this[_0x6382[166]];_0x8787x32[_0x6382[204]]=this[_0x6382[205]];_0x8787x32[_0x6382[206]]=false;_0x8787x32[_0x6382[52]]=_0x8787x29;_0x8787x32[_0x6382[12]](this[_0x6382[53]][_0x6382[178]]);_0x8787x32[_0x6382[179]]();this[_0x6382[202]][_0x8787x30]=_0x8787x32}};for(var _0x8787x30=_0x8787x2c;_0x8787x30<this[_0x6382[202]][_0x6382[83]];_0x8787x30++){this[_0x6382[202]][_0x8787x30][_0x6382[177]]()};this[_0x6382[202]][_0x6382[207]](_0x8787x2c,this[_0x6382[202]][_0x6382[83]]-_0x8787x2c)};if(this[_0x6382[208]]==null&&_0x8787x2d>0){this[_0x6382[208]]=[]};if(this[_0x6382[208]]!=null){for(var _0x8787x30=0;_0x8787x30<=_0x8787x2d;_0x8787x30++){var _0x8787x31=[ new mxPoint(_0x8787x2b[_0x6382[70]],_0x8787x2b[_0x6382[73]]+(_0x8787x30+1)*_0x8787x15[_0x6382[96]]), new mxPoint(_0x8787x2e,_0x8787x2b[_0x6382[73]]+(_0x8787x30+1)*_0x8787x15[_0x6382[96]])];if(this[_0x6382[208]][_0x8787x30]!=null){this[_0x6382[208]][_0x8787x30][_0x6382[52]]=1;this[_0x6382[208]][_0x8787x30][_0x6382[203]]=_0x8787x31;this[_0x6382[208]][_0x8787x30][_0x6382[179]]()}else {var _0x8787x32= new mxPolyline(_0x8787x31,this[_0x6382[153]],_0x8787x29);_0x8787x32[_0x6382[166]]=this[_0x6382[166]];_0x8787x32[_0x6382[204]]=this[_0x6382[205]];_0x8787x32[_0x6382[206]]=false;_0x8787x32[_0x6382[52]]=_0x8787x29;_0x8787x32[_0x6382[12]](this[_0x6382[53]][_0x6382[178]]);_0x8787x32[_0x6382[179]]();this[_0x6382[208]][_0x8787x30]=_0x8787x32}};for(var _0x8787x30=_0x8787x2d;_0x8787x30<this[_0x6382[208]][_0x6382[83]];_0x8787x30++){this[_0x6382[208]][_0x8787x30][_0x6382[177]]()};this[_0x6382[208]][_0x6382[207]](_0x8787x2d,this[_0x6382[208]][_0x6382[83]]-_0x8787x2d)}};mxEdgeHandler[_0x6382[44]][_0x6382[209]]=true;mxGraphHandler[_0x6382[44]][_0x6382[58]]=true;var _0x8787x33=mxGraphHandler[_0x6382[44]][_0x6382[210]];mxGraphHandler[_0x6382[44]][_0x6382[210]]=function(_0x8787x34,_0x8787x35,_0x8787x14){for(var _0x8787x30=0;_0x8787x30<_0x8787x35[_0x6382[83]];_0x8787x30++){if(this[_0x6382[14]][_0x6382[36]]()[_0x6382[211]](_0x8787x35[_0x8787x30])){var _0x8787x36=this[_0x6382[14]][_0x6382[212]](_0x8787x35[_0x8787x30]);if(_0x8787x36!=null&&_0x8787x36[_0x6382[213]]){return false}}};return _0x8787x33[_0x6382[33]](this,arguments)};mxGuide[_0x6382[44]][_0x6382[214]]=function(_0x8787x14){return !mxEvent[_0x6382[215]](_0x8787x14)};mxPopupMenuAddItem=mxPopupMenu[_0x6382[44]][_0x6382[216]];mxPopupMenu[_0x6382[44]][_0x6382[216]]=function(_0x8787x37,_0x8787x38,_0x8787x39,_0x8787x34,_0x8787x3a,_0x8787x3b){var _0x8787x3c=mxPopupMenuAddItem[_0x6382[33]](this,arguments);if(_0x8787x3b!=null&& !_0x8787x3b){mxEvent[_0x6382[35]](_0x8787x3c,_0x6382[217],function(_0x8787x14){mxEvent[_0x6382[218]](_0x8787x14)})};return _0x8787x3c};var _0x8787x3d=mxGraphHandler[_0x6382[44]][_0x6382[219]];mxGraphHandler[_0x6382[44]][_0x6382[219]]=function(_0x8787x3e){var _0x8787x3f=this[_0x6382[14]][_0x6382[36]]();var _0x8787x40=_0x8787x3f[_0x6382[221]](this[_0x6382[14]][_0x6382[220]]());var _0x8787x41=_0x8787x3d[_0x6382[33]](this,arguments);var _0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x41);if(_0x8787x40==null||(_0x8787x40!=_0x8787x41&&_0x8787x40!=_0x8787x34)){while(!this[_0x6382[14]][_0x6382[222]](_0x8787x41)&&!this[_0x6382[14]][_0x6382[222]](_0x8787x34)&&_0x8787x3f[_0x6382[211]](_0x8787x34)&&!this[_0x6382[14]][_0x6382[223]](_0x8787x34)){_0x8787x41=_0x8787x34;_0x8787x34=this[_0x6382[14]][_0x6382[36]]()[_0x6382[221]](_0x8787x41)}};return _0x8787x41};var _0x8787x42=mxGraphHandler[_0x6382[44]][_0x6382[224]];mxGraphHandler[_0x6382[44]][_0x6382[224]]=function(_0x8787x41){var _0x8787x3c=_0x8787x42[_0x6382[33]](this,arguments);var _0x8787x3f=this[_0x6382[14]][_0x6382[36]]();var _0x8787x40=_0x8787x3f[_0x6382[221]](this[_0x6382[14]][_0x6382[220]]());var _0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x41);if(_0x8787x40==null||(_0x8787x40!=_0x8787x41&&_0x8787x40!=_0x8787x34)){if(!this[_0x6382[14]][_0x6382[222]](_0x8787x41)&&_0x8787x3f[_0x6382[211]](_0x8787x34)&&!this[_0x6382[14]][_0x6382[223]](_0x8787x34)){_0x8787x3c=true}};return _0x8787x3c};mxGraphHandler[_0x6382[44]][_0x6382[225]]=function(_0x8787x3e){var _0x8787x41=_0x8787x3e[_0x6382[226]]();if(_0x8787x41==null){_0x8787x41=this[_0x6382[227]]};var _0x8787x3f=this[_0x6382[14]][_0x6382[36]]();var _0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x41);while(this[_0x6382[14]][_0x6382[222]](_0x8787x41)&&_0x8787x3f[_0x6382[211]](_0x8787x34)&&!this[_0x6382[14]][_0x6382[223]](_0x8787x34)){_0x8787x41=_0x8787x34;_0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x41)};this[_0x6382[14]][_0x6382[229]](_0x8787x41,_0x8787x3e[_0x6382[228]]())};mxPanningHandler[_0x6382[44]][_0x6382[230]]=function(_0x8787x3e){var _0x8787x41=_0x8787x3e[_0x6382[226]]();var _0x8787x3f=this[_0x6382[14]][_0x6382[36]]();var _0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x41);while(_0x8787x3f[_0x6382[211]](_0x8787x34)&&!this[_0x6382[14]][_0x6382[223]](_0x8787x34)){if(this[_0x6382[14]][_0x6382[222]](_0x8787x34)){_0x8787x41=_0x8787x34};_0x8787x34=_0x8787x3f[_0x6382[221]](_0x8787x34)};return _0x8787x41}};Editor[_0x6382[44]][_0x6382[18]]=function(){var _0x8787xe=this[_0x6382[14]];var _0x8787x43= new mxUndoManager();var _0x8787x44=function(_0x8787x45,_0x8787x14){_0x8787x43[_0x6382[233]](_0x8787x14[_0x6382[232]](_0x6382[231]))};_0x8787xe[_0x6382[36]]()[_0x6382[35]](mxEvent.UNDO,_0x8787x44);_0x8787xe[_0x6382[234]]()[_0x6382[35]](mxEvent.UNDO,_0x8787x44);var _0x8787x46=function(_0x8787x45,_0x8787x14){var _0x8787x47=_0x8787xe[_0x6382[236]](_0x8787x14[_0x6382[232]](_0x6382[231])[_0x6382[235]]);var _0x8787x35=[];for(var _0x8787x30=1;_0x8787x30<_0x8787x47[_0x6382[83]];_0x8787x30++){if(_0x8787xe[_0x6382[53]][_0x6382[237]](_0x8787x47[_0x8787x30])!=null){_0x8787x35[_0x6382[238]](_0x8787x47[_0x8787x30])}};_0x8787xe[_0x6382[239]](_0x8787x35)};_0x8787x43[_0x6382[35]](mxEvent.UNDO,_0x8787x46);_0x8787x43[_0x6382[35]](mxEvent.REDO,_0x8787x46);return _0x8787x43};Editor[_0x6382[44]][_0x6382[13]]=function(){mxStencilRegistry[_0x6382[241]](STENCIL_PATH+_0x6382[240])};(function(){mxStencilRegistry[_0x6382[242]]={};mxStencilRegistry[_0x6382[243]]=[];mxStencilRegistry[_0x6382[244]]=function(_0x8787x48){var _0x8787x3c=mxStencilRegistry[_0x6382[245]][_0x8787x48];if(_0x8787x3c==null){var _0x8787x49=mxStencilRegistry[_0x6382[246]](_0x8787x48);if(_0x8787x49!=null){var _0x8787x4a=mxStencilRegistry[_0x6382[242]][_0x8787x49];if(_0x8787x4a!=null){if(mxStencilRegistry[_0x6382[243]][_0x8787x49]==null){mxStencilRegistry[_0x6382[243]][_0x8787x49]=1;for(var _0x8787x30=0;_0x8787x30<_0x8787x4a[_0x6382[83]];_0x8787x30++){var _0x8787x4b=_0x8787x4a[_0x8787x30];if(_0x8787x4b[_0x6382[248]]()[_0x6382[247]](_0x8787x4b[_0x6382[83]]-4,_0x8787x4b[_0x6382[83]])==_0x6382[25]){mxStencilRegistry[_0x6382[241]](_0x8787x4b,null)}else {if(_0x8787x4b[_0x6382[248]]()[_0x6382[247]](_0x8787x4b[_0x6382[83]]-3,_0x8787x4b[_0x6382[83]])==_0x6382[249]){var _0x8787x4c=mxUtils[_0x6382[250]](_0x8787x4b);if(_0x8787x4c!=null){eval[_0x6382[11]](window,_0x8787x4c[_0x6382[251]]())}}else {}}}}}else {mxStencilRegistry[_0x6382[241]](STENCIL_PATH+_0x6382[252]+_0x8787x49+_0x6382[25],null)};_0x8787x3c=mxStencilRegistry[_0x6382[245]][_0x8787x48]}};return _0x8787x3c};mxStencilRegistry[_0x6382[246]]=function(_0x8787x48){var _0x8787x4d=_0x8787x48[_0x6382[254]](_0x6382[253]);var _0x8787x4e=null;if(_0x8787x4d[_0x6382[83]]>0&&_0x8787x4d[0]==_0x6382[255]){_0x8787x4e=_0x8787x4d[1];for(var _0x8787x30=2;_0x8787x30<_0x8787x4d[_0x6382[83]]-1;_0x8787x30++){_0x8787x4e+=_0x6382[252]+_0x8787x4d[_0x8787x30]}};return _0x8787x4e};mxStencilRegistry[_0x6382[241]]=function(_0x8787x4f,_0x8787x50,_0x8787x51){_0x8787x51=(_0x8787x51!=null)?_0x8787x51:false;var _0x8787x52=mxStencilRegistry[_0x6382[243]][_0x8787x4f];if(_0x8787x51||_0x8787x52==null){var _0x8787x53=false;if(_0x8787x52==null){var _0x8787x4c=mxUtils[_0x6382[250]](_0x8787x4f);_0x8787x52=_0x8787x4c[_0x6382[256]]();mxStencilRegistry[_0x6382[243]][_0x8787x4f]=_0x8787x52;_0x8787x53=true};mxStencilRegistry[_0x6382[257]](_0x8787x52,_0x8787x50,_0x8787x53)}};mxStencilRegistry[_0x6382[257]]=function(_0x8787x54,_0x8787x50,_0x8787x53){_0x8787x53=(_0x8787x53!=null)?_0x8787x53:true;var _0x8787x55=_0x8787x54[_0x6382[258]];var _0x8787x56=_0x8787x55[_0x6382[184]];var _0x8787x57=_0x6382[20];var _0x8787x48=_0x8787x55[_0x6382[56]](_0x6382[259]);if(_0x8787x48!=null){_0x8787x57=_0x8787x48+_0x6382[253]};while(_0x8787x56!=null){if(_0x8787x56[_0x6382[260]]==mxConstants[_0x6382[261]]){_0x8787x48=_0x8787x56[_0x6382[56]](_0x6382[259]);if(_0x8787x48!=null){_0x8787x57=_0x8787x57[_0x6382[248]]();var _0x8787x58=_0x8787x48[_0x6382[263]](/ /g,_0x6382[262]);if(_0x8787x53){mxStencilRegistry[_0x6382[264]](_0x8787x57+_0x8787x58[_0x6382[248]](), new mxStencil(_0x8787x56))};if(_0x8787x50!=null){var _0x8787x19=_0x8787x56[_0x6382[56]](_0x6382[265]);var _0x8787x1a=_0x8787x56[_0x6382[56]](_0x6382[266]);_0x8787x19=(_0x8787x19==null)?80:parseInt(_0x8787x19,10);_0x8787x1a=(_0x8787x1a==null)?80:parseInt(_0x8787x1a,10);_0x8787x50(_0x8787x57,_0x8787x58,_0x8787x48,_0x8787x19,_0x8787x1a)}}};_0x8787x56=_0x8787x56[_0x6382[267]]}}})();OpenFile=function(_0x8787x59){this[_0x6382[268]]=null;this[_0x6382[269]]=null;this[_0x6382[270]]=_0x8787x59};OpenFile[_0x6382[44]][_0x6382[271]]=function(_0x8787x6){this[_0x6382[269]]=_0x8787x6;this[_0x6382[272]]()};OpenFile[_0x6382[44]][_0x6382[273]]=function(_0x8787x6,_0x8787x5a){this[_0x6382[274]]=_0x8787x6;this[_0x6382[21]]=_0x8787x5a;this[_0x6382[272]]()};OpenFile[_0x6382[44]][_0x6382[275]]=function(_0x8787x5b){this[_0x6382[276]]();mxUtils[_0x6382[277]](_0x8787x5b)};OpenFile[_0x6382[44]][_0x6382[272]]=function(){if(this[_0x6382[269]]!=null&&this[_0x6382[274]]!=null){this[_0x6382[269]](this[_0x6382[274]],this[_0x6382[21]]);this[_0x6382[276]]()}};OpenFile[_0x6382[44]][_0x6382[276]]=function(){if(this[_0x6382[270]]!=null){this[_0x6382[270]]()}} \ No newline at end of file +var _0x433b=["\x49\x53\x5F\x54\x4F\x55\x43\x48","\x73\x74\x6F\x72\x61\x67\x65","\x6C\x6F\x63\x61\x6C","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x46\x69\x6C\x65","\x46\x69\x6C\x65\x52\x65\x61\x64\x65\x72","\x46\x69\x6C\x65\x4C\x69\x73\x74","\x74\x6F\x75\x63\x68","\x31","\x6F\x70\x65\x6E\x65\x72","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x61\x6C\x6C","\x69\x6E\x69\x74","\x69\x6E\x69\x74\x53\x74\x65\x6E\x63\x69\x6C\x52\x65\x67\x69\x73\x74\x72\x79","\x67\x72\x61\x70\x68","\x6F\x75\x74\x6C\x69\x6E\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x74\x61\x74\x75\x73","","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x64\x72\x61\x77\x69\x6E\x67","\x67\x65\x74","\x2E\x78\x6D\x6C","\x67\x65\x74\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x67\x72\x61\x70\x68\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x70\x70\x6C\x79","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x73\x4C\x6F\x73\x74","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E\x64","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x2F\x67\x72\x69\x64\x2E\x67\x69\x66","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x73\x63\x61\x6C\x65","\x76\x69\x65\x77","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x30","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x67\x75\x69\x64\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x66\x6F\x6C\x64","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x78","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x64\x78","\x79","\x64\x79","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x64\x65\x63\x6F\x64\x65","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x65\x6E\x63\x6F\x64\x65","\x72\x6F\x75\x6E\x64","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x6E\x6F\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x74\x79\x6C\x65","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x66\x69\x6C\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x23\x65\x62\x65\x62\x65\x62","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x73\x6F\x6C\x69\x64","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x23\x65\x35\x65\x35\x65\x35","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x31\x70\x78","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x30\x70\x78","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72","\x76\x61\x6C\x69\x64\x61\x74\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x61\x75\x74\x6F","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x6E\x6F\x64\x65","\x49\x53\x5F\x49\x45\x36","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x67\x72\x61\x70\x68\x65\x64\x69\x74\x6F\x72\x2D\x69\x65\x36\x2E\x63\x73\x73","\x6C\x69\x6E\x6B","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x61\x64\x64","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x23\x64\x30\x64\x30\x64\x30","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x39\x39\x63\x63\x66\x66","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x38\x38\x63\x66","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x61\x38\x66\x66","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x63\x65\x65\x37\x66\x66","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x47\x55\x49\x44\x45\x5F\x43\x4F\x4C\x4F\x52","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x23\x63\x30\x63\x30\x63\x30","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x77\x68\x69\x74\x65","\x23\x63\x61\x63\x61\x63\x61","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x6D\x61\x78","\x63\x65\x69\x6C","\x70\x61\x6E\x47\x72\x61\x70\x68","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65","\x73\x72\x63","\x64\x65\x73\x74\x72\x6F\x79","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x72\x65\x64\x72\x61\x77","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x68\x69\x64\x65","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x62\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x69\x6E\x74\x73","\x69\x73\x44\x61\x73\x68\x65\x64","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x61\x64\x64\x50\x69\x70\x65","\x73\x70\x6C\x69\x63\x65","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x72\x65\x6C\x61\x74\x69\x76\x65","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6F\x6E\x73\x75\x6D\x65","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C","\x67\x65\x74\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x65\x64\x69\x74","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x67\x65\x74\x56\x69\x65\x77","\x63\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x74\x61\x74\x65","\x70\x75\x73\x68","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x6C\x69\x62\x72\x61\x72\x69\x65\x73","\x70\x61\x63\x6B\x61\x67\x65\x73","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x67\x65\x74\x42\x61\x73\x65\x6E\x61\x6D\x65\x46\x6F\x72\x53\x74\x65\x6E\x63\x69\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x2E\x6A\x73","\x6C\x6F\x61\x64","\x67\x65\x74\x54\x65\x78\x74","\x2F","\x2E","\x73\x70\x6C\x69\x74","\x6D\x78\x67\x72\x61\x70\x68","\x67\x65\x74\x58\x6D\x6C","\x70\x61\x72\x73\x65\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6E\x61\x6D\x65","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x5F","\x72\x65\x70\x6C\x61\x63\x65","\x61\x64\x64\x53\x74\x65\x6E\x63\x69\x6C","\x77","\x68","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x70\x72\x6F\x64\x75\x63\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x72","\x64\x6F\x6E\x65","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x65\x78\x65\x63\x75\x74\x65","\x73\x65\x74\x44\x61\x74\x61","\x64\x61\x74\x61","\x65\x72\x72\x6F\x72","\x63\x61\x6E\x63\x65\x6C","\x61\x6C\x65\x72\x74"];var useLocalStorage=(mxClient[_0x433b[0]]||urlParams[_0x433b[1]]==_0x433b[2])&& typeof (localStorage)!=_0x433b[3];var fileSupport=window[_0x433b[4]]!=null&&window[_0x433b[5]]!=null&&window[_0x433b[6]]!=null;var touchStyle=mxClient[_0x433b[0]]||urlParams[_0x433b[7]]==_0x433b[8];var counter=0;try{var op=window;while(op[_0x433b[9]]!=null&&!isNaN(op[_0x433b[9]][_0x433b[10]])){op=op[_0x433b[9]]};if(op!=null){op[_0x433b[10]]++;counter=op[_0x433b[10]]}}catch(e){};Editor=function(){mxEventSource[_0x433b[11]](this);this[_0x433b[12]]();this[_0x433b[13]]();this[_0x433b[14]]= new Graph();this[_0x433b[15]]= new mxOutline(this[_0x433b[14]]);this[_0x433b[15]][_0x433b[16]]=true;this[_0x433b[17]]=this[_0x433b[18]]();this[_0x433b[19]]=_0x433b[20];this[_0x433b[21]]=null;this[_0x433b[22]]=function(){return this[_0x433b[21]]||mxResources[_0x433b[24]](_0x433b[23],[counter])+_0x433b[25]};this[_0x433b[26]]=function(){return this[_0x433b[21]]};this[_0x433b[27]]=function(_0x889bx6){this[_0x433b[19]]=_0x889bx6;this[_0x433b[29]]( new mxEventObject(_0x433b[28]))};this[_0x433b[30]]=function(){return this[_0x433b[19]]};this[_0x433b[31]]=false;this[_0x433b[32]]=function(){this[_0x433b[31]]=true};this[_0x433b[14]][_0x433b[36]]()[_0x433b[35]](mxEvent.CHANGE,mxUtils[_0x433b[34]](this,function(){this[_0x433b[32]][_0x433b[33]](this,arguments)}));window[_0x433b[37]]=mxUtils[_0x433b[34]](this,function(){if(this[_0x433b[31]]){return mxResources[_0x433b[24]](_0x433b[38])}});this[_0x433b[14]][_0x433b[39]]=false;this[_0x433b[14]][_0x433b[40]]=true;this[_0x433b[14]][_0x433b[41]]=null};mxUtils[_0x433b[42]](Editor,mxEventSource);Editor[_0x433b[44]][_0x433b[43]]=IMAGE_PATH+_0x433b[45];Editor[_0x433b[44]][_0x433b[46]]=IMAGE_PATH+_0x433b[47];Editor[_0x433b[44]][_0x433b[48]]=function(_0x889bx7){var _0x889bx8= new mxCodec(_0x889bx7[_0x433b[49]]);if(_0x889bx7[_0x433b[50]]==_0x433b[51]){this[_0x433b[14]][_0x433b[53]][_0x433b[52]]=1;this[_0x433b[14]][_0x433b[54]]=_0x889bx7[_0x433b[56]](_0x433b[55])!=_0x433b[57];this[_0x433b[14]][_0x433b[59]][_0x433b[58]]=_0x889bx7[_0x433b[56]](_0x433b[60])!=_0x433b[57];this[_0x433b[14]][_0x433b[62]](_0x889bx7[_0x433b[56]](_0x433b[61])!=_0x433b[57]);this[_0x433b[14]][_0x433b[64]](_0x889bx7[_0x433b[56]](_0x433b[63])!=_0x433b[57]);this[_0x433b[14]][_0x433b[65]]=_0x889bx7[_0x433b[56]](_0x433b[66])!=_0x433b[57];this[_0x433b[14]][_0x433b[40]]=_0x889bx7[_0x433b[56]](_0x433b[40])!=_0x433b[57];if(!this[_0x433b[14]][_0x433b[40]]){this[_0x433b[14]][_0x433b[68]][_0x433b[67]]=0;this[_0x433b[14]][_0x433b[68]][_0x433b[69]]=0;this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[70]]=Number(_0x889bx7[_0x433b[56]](_0x433b[72])||0);this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[73]]=Number(_0x889bx7[_0x433b[56]](_0x433b[74])||0)};this[_0x433b[14]][_0x433b[75]]=_0x889bx7[_0x433b[56]](_0x433b[76])==_0x433b[8];this[_0x433b[14]][_0x433b[77]]=this[_0x433b[14]][_0x433b[75]];this[_0x433b[14]][_0x433b[78]]=this[_0x433b[14]][_0x433b[77]];var _0x889bx9=_0x889bx7[_0x433b[56]](_0x433b[79]);if(_0x889bx9!=null){this[_0x433b[14]][_0x433b[79]]=_0x889bx9}else {this[_0x433b[14]][_0x433b[79]]=1.5};var _0x889bxa=_0x889bx7[_0x433b[56]](_0x433b[80]);var _0x889bxb=_0x889bx7[_0x433b[56]](_0x433b[81]);if(_0x889bxa!=null&&_0x889bxb!=null){this[_0x433b[14]][_0x433b[82]]= new mxRectangle(0,0,parseFloat(_0x889bxa),parseFloat(_0x889bxb));this[_0x433b[15]][_0x433b[15]][_0x433b[82]]=this[_0x433b[14]][_0x433b[82]]};var _0x889bxc=_0x889bx7[_0x433b[56]](_0x433b[41]);if(_0x889bxc!=null&&_0x889bxc[_0x433b[83]]>0){this[_0x433b[14]][_0x433b[41]]=_0x889bxc};_0x889bx8[_0x433b[84]](_0x889bx7,this[_0x433b[14]][_0x433b[36]]());this[_0x433b[85]]()}};Editor[_0x433b[44]][_0x433b[86]]=function(){var _0x889bxd= new mxCodec(mxUtils[_0x433b[87]]());var _0x889bx7=_0x889bxd[_0x433b[88]](this[_0x433b[14]][_0x433b[36]]());if(this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[70]]!=0||this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[73]]!=0){_0x889bx7[_0x433b[90]](_0x433b[72],Math[_0x433b[89]](this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[70]]*100)/100);_0x889bx7[_0x433b[90]](_0x433b[74],Math[_0x433b[89]](this[_0x433b[14]][_0x433b[53]][_0x433b[71]][_0x433b[73]]*100)/100)};_0x889bx7[_0x433b[90]](_0x433b[55],(this[_0x433b[14]][_0x433b[91]]())?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[60],(this[_0x433b[14]][_0x433b[59]][_0x433b[58]])?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[60],(this[_0x433b[14]][_0x433b[59]][_0x433b[58]])?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[61],(this[_0x433b[14]][_0x433b[93]][_0x433b[92]]())?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[63],(this[_0x433b[14]][_0x433b[94]][_0x433b[92]]())?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[66],(this[_0x433b[14]][_0x433b[65]])?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[76],(this[_0x433b[14]][_0x433b[75]])?_0x433b[8]:_0x433b[57]);_0x889bx7[_0x433b[90]](_0x433b[79],this[_0x433b[14]][_0x433b[79]]);_0x889bx7[_0x433b[90]](_0x433b[80],this[_0x433b[14]][_0x433b[82]][_0x433b[95]]);_0x889bx7[_0x433b[90]](_0x433b[81],this[_0x433b[14]][_0x433b[82]][_0x433b[96]]);if(!this[_0x433b[14]][_0x433b[40]]){_0x889bx7[_0x433b[90]](_0x433b[40],_0x433b[57])};if(this[_0x433b[14]][_0x433b[41]]!=null){_0x889bx7[_0x433b[90]](_0x433b[41],this[_0x433b[14]][_0x433b[41]])};return _0x889bx7};Editor[_0x433b[44]][_0x433b[85]]=function(){var _0x889bxe=this[_0x433b[14]];var _0x889bxf=this[_0x433b[15]];if(_0x889bxe[_0x433b[68]]!=null&&_0x889bxf[_0x433b[15]][_0x433b[68]]!=null){if(_0x889bxe[_0x433b[41]]!=null){if(_0x889bxe[_0x433b[41]]==_0x433b[97]){_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[98]]=_0x433b[100]}else {if(_0x889bxe[_0x433b[53]][_0x433b[101]]!=null){_0x889bxe[_0x433b[53]][_0x433b[101]][_0x433b[102]]=_0x889bxe[_0x433b[41]];_0x889bxe[_0x433b[53]][_0x433b[101]][_0x433b[103]]()};_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[98]]=_0x889bxe[_0x433b[41]]}}else {_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[98]]=_0x433b[20]};if(_0x889bxe[_0x433b[75]]){_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[98]]=_0x433b[104];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[105]]=_0x433b[106];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[107]]=_0x433b[108];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[109]]=_0x433b[110];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[111]]=_0x433b[110];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[112]]=_0x433b[113];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[114]]=_0x433b[113]}else {_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[115]]=_0x433b[20]};_0x889bxf[_0x433b[15]][_0x433b[68]][_0x433b[99]][_0x433b[98]]=_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[98]];if(_0x889bxf[_0x433b[15]][_0x433b[75]]!=_0x889bxe[_0x433b[75]]||_0x889bxf[_0x433b[15]][_0x433b[79]]!=_0x889bxe[_0x433b[79]]){_0x889bxf[_0x433b[15]][_0x433b[79]]=_0x889bxe[_0x433b[79]];_0x889bxf[_0x433b[15]][_0x433b[75]]=_0x889bxe[_0x433b[75]];_0x889bxf[_0x433b[15]][_0x433b[53]][_0x433b[116]]()};if(_0x889bxe[_0x433b[40]]&&_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[117]]==_0x433b[118]&& !touchStyle){_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[117]]=_0x433b[119]}else {if(!_0x889bxe[_0x433b[40]]||touchStyle){_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[117]]=_0x433b[118]}};var _0x889bx10=(mxClient[_0x433b[120]]&&document[_0x433b[121]]>=9)?_0x433b[122]+this[_0x433b[46]]+_0x433b[123]:_0x433b[97];_0x889bxe[_0x433b[68]][_0x433b[99]][_0x433b[124]]=(!_0x889bxe[_0x433b[75]]&&_0x889bxe[_0x433b[91]]())?_0x433b[122]+this[_0x433b[43]]+_0x433b[123]:_0x889bx10;if(_0x889bxe[_0x433b[53]][_0x433b[101]]!=null){_0x889bxe[_0x433b[53]][_0x433b[101]][_0x433b[125]][_0x433b[99]][_0x433b[124]]=(this[_0x433b[14]][_0x433b[91]]())?_0x433b[122]+this[_0x433b[43]]+_0x433b[123]:_0x433b[97]}}};Editor[_0x433b[44]][_0x433b[12]]=function(){if(mxClient[_0x433b[126]]){mxClient[_0x433b[129]](_0x433b[127],CSS_PATH+_0x433b[128])};mxResources[_0x433b[130]]=false;mxResources[_0x433b[131]](RESOURCE_BASE);mxConstants[_0x433b[132]]=0.3;var _0x889bx11=mxConnectionHandler[_0x433b[44]][_0x433b[133]];mxConnectionHandler[_0x433b[44]][_0x433b[133]]=function(){var _0x889bx12=_0x889bx11[_0x433b[33]](this,arguments);_0x889bx12[_0x433b[134]]=mxUtils[_0x433b[34]](this,function(_0x889bx13,_0x889bx14){if(this[_0x433b[135]]()){return true};return mxCellMarker[_0x433b[44]][_0x433b[134]][_0x433b[33]](_0x889bx12,arguments)});return _0x889bx12};mxConstants[_0x433b[136]]=_0x433b[137];mxConstants[_0x433b[138]]=_0x433b[139];mxConstants[_0x433b[140]]=_0x433b[141];mxConstants[_0x433b[142]]=_0x433b[143];mxConstants[_0x433b[144]]=_0x433b[143];mxConstants[_0x433b[145]]=_0x433b[139];mxConstants[_0x433b[146]]=_0x433b[143];mxConstants[_0x433b[147]]=_0x433b[148];mxConstants[_0x433b[149]]=_0x433b[143];mxConstants[_0x433b[150]]=_0x433b[143];mxConstants[_0x433b[151]]=_0x433b[148];mxConstants[_0x433b[152]]=_0x433b[141];mxGraph[_0x433b[44]][_0x433b[153]]=_0x433b[154];mxGraph[_0x433b[44]][_0x433b[79]]=1;mxRubberband[_0x433b[44]][_0x433b[155]]=30;mxGraphView[_0x433b[44]][_0x433b[156]]=function(_0x889bx15){return new mxRectangleShape(_0x889bx15,this[_0x433b[14]][_0x433b[41]]||_0x433b[157],_0x433b[158])};mxGraphView[_0x433b[44]][_0x433b[159]]=function(){var _0x889bx16=this[_0x433b[160]]();var _0x889bx17=(_0x889bx16[_0x433b[95]]>0)?_0x889bx16[_0x433b[70]]/this[_0x433b[52]]-this[_0x433b[71]][_0x433b[70]]:0;var _0x889bx18=(_0x889bx16[_0x433b[96]]>0)?_0x889bx16[_0x433b[73]]/this[_0x433b[52]]-this[_0x433b[71]][_0x433b[73]]:0;var _0x889bx19=_0x889bx16[_0x433b[95]]/this[_0x433b[52]];var _0x889bx1a=_0x889bx16[_0x433b[96]]/this[_0x433b[52]];var _0x889bx1b=this[_0x433b[14]][_0x433b[82]];var _0x889bx9=this[_0x433b[14]][_0x433b[79]];var _0x889bxa=_0x889bx1b[_0x433b[95]]*_0x889bx9;var _0x889bxb=_0x889bx1b[_0x433b[96]]*_0x889bx9;var _0x889bx1c=Math[_0x433b[162]](Math[_0x433b[161]](0,_0x889bx17)/_0x889bxa);var _0x889bx1d=Math[_0x433b[162]](Math[_0x433b[161]](0,_0x889bx18)/_0x889bxb);var _0x889bx1e=Math[_0x433b[164]](Math[_0x433b[163]](1,_0x889bx17+_0x889bx19)/_0x889bxa);var _0x889bx1f=Math[_0x433b[164]](Math[_0x433b[163]](1,_0x889bx18+_0x889bx1a)/_0x889bxb);var _0x889bx20=_0x889bx1e-_0x889bx1c;var _0x889bx21=_0x889bx1f-_0x889bx1d;var _0x889bx15= new mxRectangle(this[_0x433b[52]]*(this[_0x433b[71]][_0x433b[70]]+_0x889bx1c*_0x889bxa),this[_0x433b[52]]*(this[_0x433b[71]][_0x433b[73]]+_0x889bx1d*_0x889bxb),this[_0x433b[52]]*_0x889bx20*_0x889bxa,this[_0x433b[52]]*_0x889bx21*_0x889bxb);return _0x889bx15};var _0x889bx22=mxGraph[_0x433b[44]][_0x433b[165]];mxGraph[_0x433b[44]][_0x433b[165]]=function(_0x889bx23,_0x889bx24){_0x889bx22[_0x433b[33]](this,arguments);if((this[_0x433b[166]]!=mxConstants[_0x433b[167]]&&this[_0x433b[53]][_0x433b[101]]!=null)&&(!this[_0x433b[168]]||!mxUtils[_0x433b[169]](this[_0x433b[68]]))){this[_0x433b[53]][_0x433b[101]][_0x433b[125]][_0x433b[99]][_0x433b[170]]=_0x889bx23+_0x433b[171];this[_0x433b[53]][_0x433b[101]][_0x433b[125]][_0x433b[99]][_0x433b[172]]=_0x889bx24+_0x433b[171]}};var _0x889bx25=this;mxGraphView[_0x433b[44]][_0x433b[173]]=function(){var _0x889bxc=this[_0x433b[14]][_0x433b[174]]();if(_0x889bxc!=null){if(this[_0x433b[124]]==null||this[_0x433b[124]][_0x433b[175]]!=_0x889bxc[_0x433b[176]]){if(this[_0x433b[124]]!=null){this[_0x433b[124]][_0x433b[177]]()};var _0x889bx15= new mxRectangle(0,0,1,1);this[_0x433b[124]]= new mxImageShape(_0x889bx15,_0x889bxc[_0x433b[176]]);this[_0x433b[124]][_0x433b[166]]=this[_0x433b[14]][_0x433b[166]];this[_0x433b[124]][_0x433b[12]](this[_0x433b[178]]);this[_0x433b[124]][_0x433b[179]]()};this[_0x433b[180]](this[_0x433b[124]],_0x889bxc)}else {if(this[_0x433b[124]]!=null){this[_0x433b[124]][_0x433b[177]]();this[_0x433b[124]]=null}};if(this[_0x433b[14]][_0x433b[75]]){var _0x889bx15=this[_0x433b[159]]();if(this[_0x433b[101]]==null){this[_0x433b[101]]=this[_0x433b[156]](_0x889bx15);this[_0x433b[101]][_0x433b[52]]=1;this[_0x433b[101]][_0x433b[181]]=true;this[_0x433b[101]][_0x433b[166]]=mxConstants[_0x433b[182]];this[_0x433b[101]][_0x433b[12]](this[_0x433b[14]][_0x433b[68]]);this[_0x433b[14]][_0x433b[68]][_0x433b[184]][_0x433b[99]][_0x433b[183]]=_0x433b[185];this[_0x433b[14]][_0x433b[68]][_0x433b[186]](this[_0x433b[101]][_0x433b[125]],this[_0x433b[14]][_0x433b[68]][_0x433b[184]]);this[_0x433b[101]][_0x433b[179]]();this[_0x433b[101]][_0x433b[125]][_0x433b[187]]=_0x433b[188];this[_0x433b[101]][_0x433b[125]][_0x433b[99]][_0x433b[189]]=_0x433b[190];mxEvent[_0x433b[35]](this[_0x433b[101]][_0x433b[125]],_0x433b[191],mxUtils[_0x433b[34]](this,function(_0x889bx14){this[_0x433b[14]][_0x433b[192]](_0x889bx14)}));mxEvent[_0x433b[198]](this[_0x433b[101]][_0x433b[125]],mxUtils[_0x433b[34]](this,function(_0x889bx14){this[_0x433b[14]][_0x433b[193]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x889bx14))}),mxUtils[_0x433b[34]](this,function(_0x889bx14){if(this[_0x433b[14]][_0x433b[93]]!=null&&this[_0x433b[14]][_0x433b[93]][_0x433b[194]]()){this[_0x433b[14]][_0x433b[93]][_0x433b[195]]()};if(this[_0x433b[14]][_0x433b[196]]&&!mxEvent[_0x433b[197]](_0x889bx14)){this[_0x433b[14]][_0x433b[193]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x889bx14))}}),mxUtils[_0x433b[34]](this,function(_0x889bx14){this[_0x433b[14]][_0x433b[193]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x889bx14))}))}else {this[_0x433b[101]][_0x433b[52]]=1;this[_0x433b[101]][_0x433b[199]]=_0x889bx15;this[_0x433b[101]][_0x433b[179]]()};this[_0x433b[101]][_0x433b[125]][_0x433b[99]][_0x433b[124]]=(this[_0x433b[14]][_0x433b[91]]())?_0x433b[122]+_0x889bx25[_0x433b[43]]+_0x433b[123]:_0x433b[97]}else {if(this[_0x433b[101]]!=null){this[_0x433b[101]][_0x433b[177]]();this[_0x433b[101]]=null}}};mxGraph[_0x433b[44]][_0x433b[200]]=function(_0x889bx26,_0x889bx27,_0x889bx28){var _0x889bx29=this[_0x433b[53]][_0x433b[52]];var _0x889bx2a=this[_0x433b[53]][_0x433b[71]];var _0x889bx1b=this[_0x433b[82]];var _0x889bx9=_0x889bx29*this[_0x433b[79]];var _0x889bx2b=this[_0x433b[53]][_0x433b[159]]();_0x889bx27=_0x889bx2b[_0x433b[95]];_0x889bx28=_0x889bx2b[_0x433b[96]];var _0x889bx15= new mxRectangle(_0x889bx29*_0x889bx2a[_0x433b[70]],_0x889bx29*_0x889bx2a[_0x433b[73]],_0x889bx1b[_0x433b[95]]*_0x889bx9,_0x889bx1b[_0x433b[96]]*_0x889bx9);_0x889bx26=_0x889bx26&&Math[_0x433b[161]](_0x889bx15[_0x433b[95]],_0x889bx15[_0x433b[96]])>this[_0x433b[201]];var _0x889bx2c=(_0x889bx26)?Math[_0x433b[164]](_0x889bx27/_0x889bx15[_0x433b[95]])-1:0;var _0x889bx2d=(_0x889bx26)?Math[_0x433b[164]](_0x889bx28/_0x889bx15[_0x433b[96]])-1:0;var _0x889bx2e=_0x889bx2b[_0x433b[70]]+_0x889bx27;var _0x889bx2f=_0x889bx2b[_0x433b[73]]+_0x889bx28;if(this[_0x433b[202]]==null&&_0x889bx2c>0){this[_0x433b[202]]=[]};if(this[_0x433b[202]]!=null){for(var _0x889bx30=0;_0x889bx30<=_0x889bx2c;_0x889bx30++){var _0x889bx31=[ new mxPoint(_0x889bx2b[_0x433b[70]]+(_0x889bx30+1)*_0x889bx15[_0x433b[95]],_0x889bx2b[_0x433b[73]]), new mxPoint(_0x889bx2b[_0x433b[70]]+(_0x889bx30+1)*_0x889bx15[_0x433b[95]],_0x889bx2f)];if(this[_0x433b[202]][_0x889bx30]!=null){this[_0x433b[202]][_0x889bx30][_0x433b[52]]=1;this[_0x433b[202]][_0x889bx30][_0x433b[203]]=_0x889bx31;this[_0x433b[202]][_0x889bx30][_0x433b[179]]()}else {var _0x889bx32= new mxPolyline(_0x889bx31,this[_0x433b[153]],this[_0x433b[52]]);_0x889bx32[_0x433b[166]]=this[_0x433b[166]];_0x889bx32[_0x433b[204]]=this[_0x433b[205]];_0x889bx32[_0x433b[206]]=false;_0x889bx32[_0x433b[52]]=_0x889bx29;_0x889bx32[_0x433b[12]](this[_0x433b[53]][_0x433b[178]]);_0x889bx32[_0x433b[179]]();this[_0x433b[202]][_0x889bx30]=_0x889bx32}};for(var _0x889bx30=_0x889bx2c;_0x889bx30<this[_0x433b[202]][_0x433b[83]];_0x889bx30++){this[_0x433b[202]][_0x889bx30][_0x433b[177]]()};this[_0x433b[202]][_0x433b[207]](_0x889bx2c,this[_0x433b[202]][_0x433b[83]]-_0x889bx2c)};if(this[_0x433b[208]]==null&&_0x889bx2d>0){this[_0x433b[208]]=[]};if(this[_0x433b[208]]!=null){for(var _0x889bx30=0;_0x889bx30<=_0x889bx2d;_0x889bx30++){var _0x889bx31=[ new mxPoint(_0x889bx2b[_0x433b[70]],_0x889bx2b[_0x433b[73]]+(_0x889bx30+1)*_0x889bx15[_0x433b[96]]), new mxPoint(_0x889bx2e,_0x889bx2b[_0x433b[73]]+(_0x889bx30+1)*_0x889bx15[_0x433b[96]])];if(this[_0x433b[208]][_0x889bx30]!=null){this[_0x433b[208]][_0x889bx30][_0x433b[52]]=1;this[_0x433b[208]][_0x889bx30][_0x433b[203]]=_0x889bx31;this[_0x433b[208]][_0x889bx30][_0x433b[179]]()}else {var _0x889bx32= new mxPolyline(_0x889bx31,this[_0x433b[153]],_0x889bx29);_0x889bx32[_0x433b[166]]=this[_0x433b[166]];_0x889bx32[_0x433b[204]]=this[_0x433b[205]];_0x889bx32[_0x433b[206]]=false;_0x889bx32[_0x433b[52]]=_0x889bx29;_0x889bx32[_0x433b[12]](this[_0x433b[53]][_0x433b[178]]);_0x889bx32[_0x433b[179]]();this[_0x433b[208]][_0x889bx30]=_0x889bx32}};for(var _0x889bx30=_0x889bx2d;_0x889bx30<this[_0x433b[208]][_0x433b[83]];_0x889bx30++){this[_0x433b[208]][_0x889bx30][_0x433b[177]]()};this[_0x433b[208]][_0x433b[207]](_0x889bx2d,this[_0x433b[208]][_0x433b[83]]-_0x889bx2d)}};mxEdgeHandler[_0x433b[44]][_0x433b[209]]=true;mxGraphHandler[_0x433b[44]][_0x433b[58]]=true;var _0x889bx33=mxGraphHandler[_0x433b[44]][_0x433b[210]];mxGraphHandler[_0x433b[44]][_0x433b[210]]=function(_0x889bx34,_0x889bx35,_0x889bx14){for(var _0x889bx30=0;_0x889bx30<_0x889bx35[_0x433b[83]];_0x889bx30++){if(this[_0x433b[14]][_0x433b[36]]()[_0x433b[211]](_0x889bx35[_0x889bx30])){var _0x889bx36=this[_0x433b[14]][_0x433b[212]](_0x889bx35[_0x889bx30]);if(_0x889bx36!=null&&_0x889bx36[_0x433b[213]]){return false}}};return _0x889bx33[_0x433b[33]](this,arguments)};mxGuide[_0x433b[44]][_0x433b[214]]=function(_0x889bx14){return !mxEvent[_0x433b[215]](_0x889bx14)};mxPopupMenuAddItem=mxPopupMenu[_0x433b[44]][_0x433b[216]];mxPopupMenu[_0x433b[44]][_0x433b[216]]=function(_0x889bx37,_0x889bx38,_0x889bx39,_0x889bx34,_0x889bx3a,_0x889bx3b){var _0x889bx3c=mxPopupMenuAddItem[_0x433b[33]](this,arguments);if(_0x889bx3b!=null&& !_0x889bx3b){mxEvent[_0x433b[35]](_0x889bx3c,_0x433b[217],function(_0x889bx14){mxEvent[_0x433b[218]](_0x889bx14)})};return _0x889bx3c};var _0x889bx3d=mxGraphHandler[_0x433b[44]][_0x433b[219]];mxGraphHandler[_0x433b[44]][_0x433b[219]]=function(_0x889bx3e){var _0x889bx3f=this[_0x433b[14]][_0x433b[36]]();var _0x889bx40=_0x889bx3f[_0x433b[221]](this[_0x433b[14]][_0x433b[220]]());var _0x889bx41=_0x889bx3d[_0x433b[33]](this,arguments);var _0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx41);if(_0x889bx40==null||(_0x889bx40!=_0x889bx41&&_0x889bx40!=_0x889bx34)){while(!this[_0x433b[14]][_0x433b[222]](_0x889bx41)&&!this[_0x433b[14]][_0x433b[222]](_0x889bx34)&&_0x889bx3f[_0x433b[211]](_0x889bx34)&&!this[_0x433b[14]][_0x433b[223]](_0x889bx34)){_0x889bx41=_0x889bx34;_0x889bx34=this[_0x433b[14]][_0x433b[36]]()[_0x433b[221]](_0x889bx41)}};return _0x889bx41};var _0x889bx42=mxGraphHandler[_0x433b[44]][_0x433b[224]];mxGraphHandler[_0x433b[44]][_0x433b[224]]=function(_0x889bx41){var _0x889bx3c=_0x889bx42[_0x433b[33]](this,arguments);var _0x889bx3f=this[_0x433b[14]][_0x433b[36]]();var _0x889bx40=_0x889bx3f[_0x433b[221]](this[_0x433b[14]][_0x433b[220]]());var _0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx41);if(_0x889bx40==null||(_0x889bx40!=_0x889bx41&&_0x889bx40!=_0x889bx34)){if(!this[_0x433b[14]][_0x433b[222]](_0x889bx41)&&_0x889bx3f[_0x433b[211]](_0x889bx34)&&!this[_0x433b[14]][_0x433b[223]](_0x889bx34)){_0x889bx3c=true}};return _0x889bx3c};mxGraphHandler[_0x433b[44]][_0x433b[225]]=function(_0x889bx3e){var _0x889bx41=_0x889bx3e[_0x433b[226]]();if(_0x889bx41==null){_0x889bx41=this[_0x433b[227]]};var _0x889bx3f=this[_0x433b[14]][_0x433b[36]]();var _0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx41);while(this[_0x433b[14]][_0x433b[222]](_0x889bx41)&&_0x889bx3f[_0x433b[211]](_0x889bx34)&&!this[_0x433b[14]][_0x433b[223]](_0x889bx34)){_0x889bx41=_0x889bx34;_0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx41)};this[_0x433b[14]][_0x433b[229]](_0x889bx41,_0x889bx3e[_0x433b[228]]())};mxPanningHandler[_0x433b[44]][_0x433b[230]]=function(_0x889bx3e){var _0x889bx41=_0x889bx3e[_0x433b[226]]();var _0x889bx3f=this[_0x433b[14]][_0x433b[36]]();var _0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx41);while(_0x889bx3f[_0x433b[211]](_0x889bx34)&&!this[_0x433b[14]][_0x433b[223]](_0x889bx34)){if(this[_0x433b[14]][_0x433b[222]](_0x889bx34)){_0x889bx41=_0x889bx34};_0x889bx34=_0x889bx3f[_0x433b[221]](_0x889bx34)};return _0x889bx41}};Editor[_0x433b[44]][_0x433b[18]]=function(){var _0x889bxe=this[_0x433b[14]];var _0x889bx43= new mxUndoManager();var _0x889bx44=function(_0x889bx45,_0x889bx14){_0x889bx43[_0x433b[233]](_0x889bx14[_0x433b[232]](_0x433b[231]))};_0x889bxe[_0x433b[36]]()[_0x433b[35]](mxEvent.UNDO,_0x889bx44);_0x889bxe[_0x433b[234]]()[_0x433b[35]](mxEvent.UNDO,_0x889bx44);var _0x889bx46=function(_0x889bx45,_0x889bx14){var _0x889bx47=_0x889bxe[_0x433b[236]](_0x889bx14[_0x433b[232]](_0x433b[231])[_0x433b[235]]);var _0x889bx35=[];for(var _0x889bx30=1;_0x889bx30<_0x889bx47[_0x433b[83]];_0x889bx30++){if(_0x889bxe[_0x433b[53]][_0x433b[237]](_0x889bx47[_0x889bx30])!=null){_0x889bx35[_0x433b[238]](_0x889bx47[_0x889bx30])}};_0x889bxe[_0x433b[239]](_0x889bx35)};_0x889bx43[_0x433b[35]](mxEvent.UNDO,_0x889bx46);_0x889bx43[_0x433b[35]](mxEvent.REDO,_0x889bx46);return _0x889bx43};Editor[_0x433b[44]][_0x433b[13]]=function(){mxStencilRegistry[_0x433b[241]](STENCIL_PATH+_0x433b[240])};(function(){mxStencilRegistry[_0x433b[242]]={};mxStencilRegistry[_0x433b[243]]=[];mxStencilRegistry[_0x433b[244]]=function(_0x889bx48){var _0x889bx3c=mxStencilRegistry[_0x433b[245]][_0x889bx48];if(_0x889bx3c==null){var _0x889bx49=mxStencilRegistry[_0x433b[246]](_0x889bx48);if(_0x889bx49!=null){var _0x889bx4a=mxStencilRegistry[_0x433b[242]][_0x889bx49];if(_0x889bx4a!=null){if(mxStencilRegistry[_0x433b[243]][_0x889bx49]==null){mxStencilRegistry[_0x433b[243]][_0x889bx49]=1;for(var _0x889bx30=0;_0x889bx30<_0x889bx4a[_0x433b[83]];_0x889bx30++){var _0x889bx4b=_0x889bx4a[_0x889bx30];if(_0x889bx4b[_0x433b[248]]()[_0x433b[247]](_0x889bx4b[_0x433b[83]]-4,_0x889bx4b[_0x433b[83]])==_0x433b[25]){mxStencilRegistry[_0x433b[241]](_0x889bx4b,null)}else {if(_0x889bx4b[_0x433b[248]]()[_0x433b[247]](_0x889bx4b[_0x433b[83]]-3,_0x889bx4b[_0x433b[83]])==_0x433b[249]){var _0x889bx4c=mxUtils[_0x433b[250]](_0x889bx4b);if(_0x889bx4c!=null){eval[_0x433b[11]](window,_0x889bx4c[_0x433b[251]]())}}else {}}}}}else {mxStencilRegistry[_0x433b[241]](STENCIL_PATH+_0x433b[252]+_0x889bx49+_0x433b[25],null)};_0x889bx3c=mxStencilRegistry[_0x433b[245]][_0x889bx48]}};return _0x889bx3c};mxStencilRegistry[_0x433b[246]]=function(_0x889bx48){var _0x889bx4d=_0x889bx48[_0x433b[254]](_0x433b[253]);var _0x889bx4e=null;if(_0x889bx4d[_0x433b[83]]>0&&_0x889bx4d[0]==_0x433b[255]){_0x889bx4e=_0x889bx4d[1];for(var _0x889bx30=2;_0x889bx30<_0x889bx4d[_0x433b[83]]-1;_0x889bx30++){_0x889bx4e+=_0x433b[252]+_0x889bx4d[_0x889bx30]}};return _0x889bx4e};mxStencilRegistry[_0x433b[241]]=function(_0x889bx4f,_0x889bx50,_0x889bx51){_0x889bx51=(_0x889bx51!=null)?_0x889bx51:false;var _0x889bx52=mxStencilRegistry[_0x433b[243]][_0x889bx4f];if(_0x889bx51||_0x889bx52==null){var _0x889bx53=false;if(_0x889bx52==null){var _0x889bx4c=mxUtils[_0x433b[250]](_0x889bx4f);_0x889bx52=_0x889bx4c[_0x433b[256]]();mxStencilRegistry[_0x433b[243]][_0x889bx4f]=_0x889bx52;_0x889bx53=true};mxStencilRegistry[_0x433b[257]](_0x889bx52,_0x889bx50,_0x889bx53)}};mxStencilRegistry[_0x433b[257]]=function(_0x889bx54,_0x889bx50,_0x889bx53){_0x889bx53=(_0x889bx53!=null)?_0x889bx53:true;var _0x889bx55=_0x889bx54[_0x433b[258]];var _0x889bx56=_0x889bx55[_0x433b[184]];var _0x889bx57=_0x433b[20];var _0x889bx48=_0x889bx55[_0x433b[56]](_0x433b[259]);if(_0x889bx48!=null){_0x889bx57=_0x889bx48+_0x433b[253]};while(_0x889bx56!=null){if(_0x889bx56[_0x433b[260]]==mxConstants[_0x433b[261]]){_0x889bx48=_0x889bx56[_0x433b[56]](_0x433b[259]);if(_0x889bx48!=null){_0x889bx57=_0x889bx57[_0x433b[248]]();var _0x889bx58=_0x889bx48[_0x433b[263]](/ /g,_0x433b[262]);if(_0x889bx53){mxStencilRegistry[_0x433b[264]](_0x889bx57+_0x889bx58[_0x433b[248]](), new mxStencil(_0x889bx56))};if(_0x889bx50!=null){var _0x889bx19=_0x889bx56[_0x433b[56]](_0x433b[265]);var _0x889bx1a=_0x889bx56[_0x433b[56]](_0x433b[266]);_0x889bx19=(_0x889bx19==null)?80:parseInt(_0x889bx19,10);_0x889bx1a=(_0x889bx1a==null)?80:parseInt(_0x889bx1a,10);_0x889bx50(_0x889bx57,_0x889bx58,_0x889bx48,_0x889bx19,_0x889bx1a)}}};_0x889bx56=_0x889bx56[_0x433b[267]]}}})();OpenFile=function(_0x889bx59){this[_0x433b[268]]=null;this[_0x433b[269]]=null;this[_0x433b[270]]=_0x889bx59};OpenFile[_0x433b[44]][_0x433b[271]]=function(_0x889bx6){this[_0x433b[269]]=_0x889bx6;this[_0x433b[272]]()};OpenFile[_0x433b[44]][_0x433b[273]]=function(_0x889bx6,_0x889bx5a){this[_0x433b[274]]=_0x889bx6;this[_0x433b[21]]=_0x889bx5a;this[_0x433b[272]]()};OpenFile[_0x433b[44]][_0x433b[275]]=function(_0x889bx5b){this[_0x433b[276]]();mxUtils[_0x433b[277]](_0x889bx5b)};OpenFile[_0x433b[44]][_0x433b[272]]=function(){if(this[_0x433b[269]]!=null&&this[_0x433b[274]]!=null){this[_0x433b[269]](this[_0x433b[274]],this[_0x433b[21]]);this[_0x433b[276]]()}};OpenFile[_0x433b[44]][_0x433b[276]]=function(){if(this[_0x433b[270]]!=null){this[_0x433b[270]]()}} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/EditorUi.js b/public/assets/plugins/jscripty/js/EditorUi.js index 4562ea5..5df2869 100644 --- a/public/assets/plugins/jscripty/js/EditorUi.js +++ b/public/assets/plugins/jscripty/js/EditorUi.js @@ -1 +1 @@ -var _0xe7e9=["\x65\x64\x69\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x45\x64\x69\x74\x6F\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x72\x61\x70\x68","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x73\x72\x63","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x6D\x65\x6E\x75\x73","\x63\x72\x65\x61\x74\x65\x44\x69\x76\x73","\x72\x65\x66\x72\x65\x73\x68","\x63\x72\x65\x61\x74\x65\x55\x69","\x65\x76\x65\x6E\x74","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x41\x6C\x6C\x6F\x77\x65\x64","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x62\x69\x6E\x64","\x62\x6F\x64\x79","\x6F\x6E\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x6D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x64\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x69\x6E\x69\x74","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x75\x72\x73\x6F\x72","\x64\x65\x66\x61\x75\x6C\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x66\x6F\x63\x75\x73","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x61\x70\x70\x6C\x79","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x73\x74\x61\x72\x74","\x65\x6E\x64","\x69\x6E\x70\x75\x74","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x65\x6D\x61\x69\x6C","\x6E","\x63\x72\x65\x61\x74\x65\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x65\x6C\x6C","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x74\x61\x67\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x73\x6F\x75\x72\x63\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x69\x73\x56\x65\x72\x74\x65\x78","\x6C\x6F\x67","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x63\x6F\x6E\x73\x75\x6D\x65","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x6F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x67\x65\x73\x74\x75\x72\x65\x63\x68\x61\x6E\x67\x65","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x63\x61\x6C\x65\x28","\x73\x63\x61\x6C\x65","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x76\x69\x65\x77","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x7A\x6F\x6F\x6D\x54\x6F\x43\x65\x6E\x74\x65\x72","\x7A\x6F\x6F\x6D","\x76\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x73\x69\x7A\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x75\x70\x64\x61\x74\x65","\x6F\x70\x65\x6E","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6D\x65\x6E\x75\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x74\x6F\x6F\x6C\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x66\x6F\x6F\x74\x65\x72\x48\x65\x69\x67\x68\x74","\x68\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x55\x6E\x64\x6F\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x73\x74\x65","\x67\x65\x74","\x69\x73\x45\x6D\x70\x74\x79","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x74","\x63\x6F\x70\x79","\x6F\x70\x65\x6E\x65\x72","\x6F\x70\x65\x6E\x46\x69\x6C\x65","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x63\x6C\x65\x61\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x4D\x69\x73\x73\x69\x6E\x67\x46\x69\x6C\x65","\x3A\x20","\x6D\x65\x73\x73\x61\x67\x65","\x61\x6C\x65\x72\x74","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x6F\x70\x65\x6E\x53\x74\x72\x69\x6E\x67","\x64\x61\x74\x61","\x6E\x65\x77","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x67\x65\x74\x49\x74\x65\x6D","\x72\x65\x70\x6C\x61\x63\x65","\x63\x6F\x6E\x66\x69\x72\x6D","\x73\x65\x74\x49\x74\x65\x6D","\x73\x61\x76\x65\x64","\x20","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6C\x65\x6E\x67\x74\x68","\x50\x4F\x53\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x73\x74\x61\x74\x75\x73","\x50\x72\x6F\x6A\x65\x63\x74\x20","\x6E\x61\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x20\x69\x73\x20\x6F\x70\x65\x6E\x69\x6E\x67\x20\x69\x6E\x20\x6E\x65\x77\x20\x77\x69\x6E\x64\x6F\x77\x21","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x69\x64","\x5F\x62\x6C\x61\x6E\x6B","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x65\x77\x26\x6E\x61\x6D\x65\x3D","\x73\x65\x6E\x64","\x64\x72\x61\x77\x69\x6E\x67\x54\x6F\x6F\x4C\x61\x72\x67\x65","\x70\x6F\x70\x75\x70","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74","\x73\x61\x76\x65","\x50\x55\x54","\x55\x70\x64\x61\x74\x65\x64\x20\x61\x74\x20","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x20\x28","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x72\x61\x66\x74\x3D","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x66\x69\x6C\x65","\x73\x61\x76\x65\x41\x73","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x45\x72\x72\x6F\x72\x20\x63\x6C\x6F\x6E\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x63\x6C\x6F\x6E\x65\x64\x26\x6E\x61\x6D\x65\x3D","\x26\x64\x72\x61\x66\x74\x3D","\x26\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x76\x61\x6C\x69\x64\x61\x74\x65","\x67\x65\x74\x52\x6F\x6F\x74","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x3C\x62\x72\x3E","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x51\x75\x65\x73\x74\x69\x6F\x6E\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x0A","\x6C\x61\x62\x65\x6C","\x4C\x61\x62\x65\x6C\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6C\x6F\x63\x6B","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x53\x74\x61\x72\x74\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x67\x65\x74\x49\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6E\x75\x6C\x6C","\x56\x61\x6C\x75\x65\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x2C","\x73\x70\x6C\x69\x74","\x74\x72\x69\x6D","\x56\x61\x6C\x75\x65","\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x66\x6F\x72\x45\x61\x63\x68","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x70\x75\x62\x6C\x69\x73\x68","\x50\x75\x62\x6C\x69\x73\x68\x65\x64\x20\x61\x74\x20","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x66\x69\x6C\x65","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x76\x61\x72\x69\x61\x62\x6C\x65","\x56\x61\x72\x69\x61\x62\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64\x20\x61\x74\x20","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x6E\x61\x6D\x65\x3D","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x55\x72\x6C","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x26","\x3D","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x68\x61\x64\x6F\x77","\x74\x69\x6C\x74","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x63\x75\x72\x76\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x72\x6F\x75\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x72\x61\x6E\x67\x65","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x73\x70\x61\x63\x69\x6E\x67","\x6C\x69\x6E\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x6C\x69\x67\x6E","\x67\x65\x74\x53\x74\x61\x74\x65","\x69\x73\x4C\x6F\x6F\x70","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x6D\x61\x78","\x68\x65\x69\x67\x68\x74","\x70\x78","\x74\x6F\x70","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x77\x69\x64\x74\x68","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x64\x69\x73\x70\x6C\x61\x79","\x6E\x6F\x6E\x65","\x68\x73\x70\x6C\x69\x74","\x76\x73\x70\x6C\x69\x74","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x4F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x44\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x46\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x48\x73\x70\x6C\x69\x74","\x67\x65\x56\x73\x70\x6C\x69\x74","\x30\x70\x78","\x72\x69\x67\x68\x74","\x6D\x65\x6E\x75\x62\x61\x72","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x74\x6F\x6F\x6C\x62\x61\x72","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x73\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x6F\x74\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x64\x64\x53\x70\x6C\x69\x74\x48\x61\x6E\x64\x6C\x65\x72","\x61","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D\x20\x67\x65\x53\x74\x61\x74\x75\x73","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x67\x65\x46\x6F\x6F\x74\x65\x72","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x72\x6D","\x66\x6F\x72\x6D","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x78","\x79","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x64\x69\x61\x6C\x6F\x67","\x49\x53\x5F\x56\x4D\x4C","\x63\x6C\x6F\x73\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x61\x6E\x69\x6D\x61\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x65\x78\x65\x63\x75\x74\x65","\x43\x61\x6D\x69\x6E\x6F","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x49\x53\x5F\x4D\x41\x43","\x6D\x65\x74\x61\x4B\x65\x79","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x65\x6E\x61\x62\x6C\x65\x64","\x66\x75\x6E\x63\x74","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x4B\x65\x79","\x65\x73\x63\x61\x70\x65","\x65\x6E\x74\x65\x72","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x65\x78\x70\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x67\x72\x69\x64","\x61\x62\x6F\x75\x74","\x20\x6D\x75\x73\x74\x20\x68\x61\x76\x65\x20","\x20\x6F\x75\x74\x67\x6F\x69\x6E\x67\x20\x65\x64\x67\x65\x2E","\x70\x75\x73\x68","\x20\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x20\x65\x64\x67\x65\x2E"];EditorUi=function(_0xe114x1,_0xe114x2){this[_0xe7e9[0]]=_0xe114x1|| new Editor();this[_0xe7e9[1]]=_0xe114x2||document[_0xe7e9[3]](_0xe7e9[2]);var _0xe114x3=_0xe114x1[_0xe7e9[4]];var _0xe114x4=this;this[_0xe7e9[1]][_0xe7e9[6]][_0xe7e9[5]]=_0xe7e9[7]; new Image()[_0xe7e9[8]]=mxPopupMenu[_0xe7e9[10]][_0xe7e9[9]];if(mxConnectionHandler[_0xe7e9[10]][_0xe7e9[11]]!=null){ new Image()[_0xe7e9[8]]=mxConnectionHandler[_0xe7e9[10]][_0xe7e9[11]][_0xe7e9[8]]};this[_0xe7e9[12]]= new Actions(this);this[_0xe7e9[13]]= new Menus(this);this[_0xe7e9[14]]();this[_0xe7e9[15]]();this[_0xe7e9[16]]();var _0xe114x5=mxUtils[_0xe7e9[20]](this,function(_0xe114x6){if(_0xe114x6==null){_0xe114x6=window[_0xe7e9[17]]};if(this[_0xe7e9[18]](_0xe114x6)){return true};return _0xe114x3[_0xe7e9[19]]()});if(this[_0xe7e9[1]]==document[_0xe7e9[21]]){this[_0xe7e9[23]][_0xe7e9[22]]=_0xe114x5;this[_0xe7e9[23]][_0xe7e9[24]]=_0xe114x5;this[_0xe7e9[25]][_0xe7e9[22]]=_0xe114x5;this[_0xe7e9[25]][_0xe7e9[24]]=_0xe114x5;this[_0xe7e9[26]][_0xe7e9[22]]=_0xe114x5;this[_0xe7e9[26]][_0xe7e9[24]]=_0xe114x5;this[_0xe7e9[27]][_0xe7e9[22]]=_0xe114x5;this[_0xe7e9[27]][_0xe7e9[24]]=_0xe114x5;this[_0xe7e9[28]][_0xe7e9[22]]=_0xe114x5;this[_0xe7e9[28]][_0xe7e9[24]]=_0xe114x5};if(mxClient[_0xe7e9[29]]&&( typeof (document[_0xe7e9[30]])===_0xe7e9[31]||document[_0xe7e9[30]]<9)){mxEvent[_0xe7e9[33]](this[_0xe7e9[26]],_0xe7e9[32],_0xe114x5);mxEvent[_0xe7e9[33]](this[_0xe7e9[27]],_0xe7e9[32],_0xe114x5)}else {this[_0xe7e9[26]][_0xe7e9[34]]=_0xe114x5;this[_0xe7e9[27]][_0xe7e9[34]]=_0xe114x5};_0xe114x3[_0xe7e9[35]](this[_0xe7e9[26]]);_0xe114x3[_0xe7e9[15]]();_0xe114x3[_0xe7e9[1]][_0xe7e9[38]](_0xe7e9[36],_0xe7e9[37]);_0xe114x3[_0xe7e9[1]][_0xe7e9[6]][_0xe7e9[39]]=_0xe7e9[40];_0xe114x3[_0xe7e9[1]][_0xe7e9[6]][_0xe7e9[41]]=_0xe7e9[42]+_0xe114x1[_0xe7e9[43]]+_0xe7e9[44];_0xe114x3[_0xe7e9[1]][_0xe7e9[6]][_0xe7e9[45]]=_0xe7e9[46];_0xe114x3[_0xe7e9[1]][_0xe7e9[47]]();var _0xe114x7=_0xe114x3[_0xe7e9[48]];_0xe114x3[_0xe7e9[48]]=function(_0xe114x8,_0xe114x9,_0xe114xa){if(_0xe114x8==mxEvent[_0xe7e9[49]]){this[_0xe7e9[1]][_0xe7e9[47]]()};_0xe114x7[_0xe7e9[50]](this,arguments)};this[_0xe7e9[58]](_0xe114x3[_0xe7e9[51]],[_0xe7e9[52],_0xe7e9[53],_0xe7e9[54],_0xe7e9[55],_0xe7e9[56]],[[1,1],[0,0],[1,1],[1,_0xe7e9[57]],[1,_0xe7e9[57]]],[[0,0],[1,_0xe7e9[57]],[1,_0xe7e9[57]],[1,_0xe7e9[57]],[1,_0xe7e9[57]]]);_0xe114x3[_0xe7e9[59]]=function(_0xe114x6,_0xe114xb){var _0xe114xc=[_0xe7e9[55]];var _0xe114xd= new mxEventObject(mxEvent.DOUBLE_CLICK,_0xe7e9[17],_0xe114x6,_0xe7e9[60],_0xe114xb);this[_0xe7e9[61]](_0xe114xd);if(this[_0xe7e9[62]]()&&!mxEvent[_0xe7e9[63]](_0xe114x6)&&!_0xe114xd[_0xe7e9[63]]()){if(this[_0xe7e9[65]]()[_0xe7e9[64]](_0xe114xb)){if(_0xe114xc[_0xe7e9[69]](_0xe114xb[_0xe7e9[68]][_0xe7e9[67]][_0xe7e9[66]])>=0){this[_0xe7e9[70]](_0xe114xb)}}else {if(this[_0xe7e9[65]]()[_0xe7e9[71]](_0xe114xb)){console[_0xe7e9[72]](_0xe114x4);console[_0xe7e9[72]](_0xe114xb);_0xe114x4[_0xe7e9[73]]( new GeneralDialog(_0xe114x4,_0xe114xb)[_0xe7e9[1]],320,280,true,true)}};_0xe114xd[_0xe7e9[74]]()}};_0xe114x3[_0xe7e9[76]][_0xe7e9[75]]=true;_0xe114x3[_0xe7e9[76]][_0xe7e9[77]]=mxUtils[_0xe7e9[20]](this,function(_0xe114xe,_0xe114xb,_0xe114x6){this[_0xe7e9[13]][_0xe7e9[78]](_0xe114xe,_0xe114xb,_0xe114x6)});_0xe114x1[_0xe7e9[80]][_0xe7e9[35]](this[_0xe7e9[79]]);mxEvent[_0xe7e9[82]](document,mxUtils[_0xe7e9[20]](this,function(_0xe114x6){_0xe114x3[_0xe7e9[76]][_0xe7e9[81]]()}));if(mxClient[_0xe7e9[83]]){mxEvent[_0xe7e9[33]](_0xe114x3[_0xe7e9[1]],_0xe7e9[84],mxUtils[_0xe7e9[20]](this,function(_0xe114x6){_0xe114x3[_0xe7e9[89]][_0xe7e9[88]]()[_0xe7e9[38]](_0xe7e9[85],_0xe7e9[86]+_0xe114x6[_0xe7e9[87]]+_0xe7e9[44]);_0xe114x3[_0xe7e9[89]][_0xe7e9[91]]()[_0xe7e9[6]][_0xe7e9[90]]=_0xe7e9[7]}));mxEvent[_0xe7e9[33]](_0xe114x3[_0xe7e9[1]],_0xe7e9[92],mxUtils[_0xe7e9[20]](this,function(_0xe114x6){_0xe114x3[_0xe7e9[89]][_0xe7e9[88]]()[_0xe7e9[93]](_0xe7e9[85]);_0xe114x3[_0xe7e9[94]]=true;_0xe114x3[_0xe7e9[95]](_0xe114x6[_0xe7e9[87]]);_0xe114x3[_0xe7e9[89]][_0xe7e9[91]]()[_0xe7e9[6]][_0xe7e9[90]]=_0xe7e9[96]}))};var _0xe114xf=this[_0xe7e9[97]](_0xe114x1);this[_0xe7e9[98]]=function(){return _0xe114xf};mxEvent[_0xe7e9[33]](window,_0xe7e9[99],mxUtils[_0xe7e9[20]](this,function(){this[_0xe7e9[15]]();_0xe114x3[_0xe7e9[100]]();this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[101]](false);this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[80]][_0xe7e9[100]]()}));this[_0xe7e9[35]]();this[_0xe7e9[102]]()};EditorUi[_0xe7e9[10]][_0xe7e9[103]]=(mxClient[_0xe7e9[83]])?16:8;EditorUi[_0xe7e9[10]][_0xe7e9[104]]=33;EditorUi[_0xe7e9[10]][_0xe7e9[105]]=36;EditorUi[_0xe7e9[10]][_0xe7e9[106]]=28;EditorUi[_0xe7e9[10]][_0xe7e9[107]]=204;EditorUi[_0xe7e9[10]][_0xe7e9[108]]=190;EditorUi[_0xe7e9[10]][_0xe7e9[35]]=function(){this[_0xe7e9[109]]();this[_0xe7e9[110]]();var _0xe114x10=this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[111]);var _0xe114x11=function(){_0xe114x10[_0xe7e9[114]](!mxClipboard[_0xe7e9[113]]())};var _0xe114x12=mxClipboard[_0xe7e9[115]];mxClipboard[_0xe7e9[115]]=function(){_0xe114x12[_0xe7e9[50]](this,arguments);_0xe114x11()};var _0xe114x13=mxClipboard[_0xe7e9[116]];mxClipboard[_0xe7e9[116]]=function(){_0xe114x13[_0xe7e9[50]](this,arguments);_0xe114x11()}};EditorUi[_0xe7e9[10]][_0xe7e9[18]]=function(_0xe114x6){return false};EditorUi[_0xe7e9[10]][_0xe7e9[102]]=function(){try{if(window[_0xe7e9[117]]!=null&&window[_0xe7e9[117]][_0xe7e9[118]]!=null){window[_0xe7e9[117]][_0xe7e9[118]][_0xe7e9[130]](mxUtils[_0xe7e9[20]](this,function(_0xe114x14,_0xe114x15){try{var _0xe114x16=mxUtils[_0xe7e9[119]](_0xe114x14);this[_0xe7e9[0]][_0xe7e9[121]](_0xe114x16[_0xe7e9[120]]);this[_0xe7e9[0]][_0xe7e9[122]]=false;this[_0xe7e9[0]][_0xe7e9[124]][_0xe7e9[123]]();if(_0xe114x15!=null){this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x15}}catch(e){mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[126])+_0xe7e9[127]+e[_0xe7e9[128]])}}))}}catch(e){}};EditorUi[_0xe7e9[10]][_0xe7e9[131]]=function(_0xe114x14,_0xe114x15,_0xe114x17){try{var _0xe114x16=mxUtils[_0xe7e9[119]](_0xe114x14);this[_0xe7e9[0]][_0xe7e9[121]](_0xe114x16[_0xe7e9[120]]);this[_0xe7e9[0]][_0xe7e9[122]]=false;this[_0xe7e9[0]][_0xe7e9[124]][_0xe7e9[123]]();if(_0xe114x15!=null){this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x15};if(_0xe114x17!=null){this[_0xe7e9[0]][_0xe7e9[132]]=_0xe114x17}}catch(e){mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[126])+_0xe7e9[127]+e[_0xe7e9[128]])}};EditorUi[_0xe7e9[10]][_0xe7e9[133]]=function(_0xe114x18){var _0xe114x1=this[_0xe7e9[0]];if(_0xe114x18!=null){var _0xe114x14=mxUtils[_0xe7e9[135]](this[_0xe7e9[0]][_0xe7e9[134]]());try{if(useLocalStorage){if(localStorage[_0xe7e9[136]](_0xe114x18)!=null&&!mxUtils[_0xe7e9[138]](mxResources[_0xe7e9[112]](_0xe7e9[137],[_0xe114x18]))){return};localStorage[_0xe7e9[139]](_0xe114x18,_0xe114x14);this[_0xe7e9[0]][_0xe7e9[142]](mxResources[_0xe7e9[112]](_0xe7e9[140])+_0xe7e9[141]+ new Date())}else {console[_0xe7e9[72]](_0xe114x14[_0xe7e9[143]]);console[_0xe7e9[72]](MAX_REQUEST_SIZE);if(_0xe114x14[_0xe7e9[143]]<MAX_REQUEST_SIZE){_0xe114x14=encodeURIComponent(_0xe114x14);_0xe114x18=encodeURIComponent(_0xe114x18);var _0xe114x19= new XMLHttpRequest();_0xe114x19[_0xe7e9[102]](_0xe7e9[144],SAVE_URL,true);_0xe114x19[_0xe7e9[147]](_0xe7e9[145],_0xe7e9[146]);_0xe114x19[_0xe7e9[147]](_0xe7e9[148],_0xe7e9[149]+_0xe114x1[_0xe7e9[132]][_0xe7e9[150]]);_0xe114x19[_0xe7e9[151]]=function(_0xe114x1a){if(_0xe114x19[_0xe7e9[152]]===4){if(_0xe114x19[_0xe7e9[153]]===201){_0xe114x1[_0xe7e9[142]](_0xe7e9[154]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[155]]+_0xe7e9[158]);setTimeout(function(){window[_0xe7e9[102]](_0xe7e9[159]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[160]],_0xe7e9[161])},1500)}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[162]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[163]][0][_0xe7e9[128]])}}};_0xe114x19[_0xe7e9[164]]=function(_0xe114x1a){mxUtils[_0xe7e9[129]](_0xe114x19[_0xe7e9[165]])};_0xe114x19[_0xe7e9[167]](_0xe7e9[166]+_0xe114x18)}else {mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[168]));mxUtils[_0xe7e9[169]](_0xe114x14);return}};this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x18;this[_0xe7e9[0]][_0xe7e9[122]]=false}catch(e){this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[170])}}else {this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[170])}};EditorUi[_0xe7e9[10]][_0xe7e9[171]]=function(_0xe114x18){var _0xe114x1=this[_0xe7e9[0]];if(_0xe114x18!=null){var _0xe114x14=mxUtils[_0xe7e9[135]](this[_0xe7e9[0]][_0xe7e9[134]]());try{if(useLocalStorage){if(localStorage[_0xe7e9[136]](_0xe114x18)!=null&&!mxUtils[_0xe7e9[138]](mxResources[_0xe7e9[112]](_0xe7e9[137],[_0xe114x18]))){return};localStorage[_0xe7e9[139]](_0xe114x18,_0xe114x14);this[_0xe7e9[0]][_0xe7e9[142]](mxResources[_0xe7e9[112]](_0xe7e9[140])+_0xe7e9[141]+ new Date())}else {console[_0xe7e9[72]](_0xe114x14[_0xe7e9[143]]);console[_0xe7e9[72]](MAX_REQUEST_SIZE);if(_0xe114x14[_0xe7e9[143]]<MAX_REQUEST_SIZE){_0xe114x14=encodeURIComponent(_0xe114x14);var _0xe114x19= new XMLHttpRequest();_0xe114x19[_0xe7e9[102]](_0xe7e9[172],SAVE_URL+this[_0xe7e9[0]][_0xe7e9[132]][_0xe7e9[160]],true);_0xe114x19[_0xe7e9[147]](_0xe7e9[145],_0xe7e9[146]);_0xe114x19[_0xe7e9[147]](_0xe7e9[148],_0xe7e9[149]+_0xe114x1[_0xe7e9[132]][_0xe7e9[150]]);_0xe114x19[_0xe7e9[151]]=function(_0xe114x1a){if(_0xe114x19[_0xe7e9[152]]===4){if(_0xe114x19[_0xe7e9[153]]===200){_0xe114x1[_0xe7e9[142]](_0xe7e9[173]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[174]]+_0xe7e9[175]+_0xe114x19[_0xe7e9[153]]+_0xe7e9[141]+_0xe114x19[_0xe7e9[165]]+_0xe7e9[44])}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[176]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[163]][0][_0xe7e9[128]])}}};_0xe114x19[_0xe7e9[164]]=function(_0xe114x1a){mxUtils[_0xe7e9[129]](_0xe114x19[_0xe7e9[165]])};_0xe114x19[_0xe7e9[167]](_0xe7e9[177]+_0xe114x14)}else {mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[168]));mxUtils[_0xe7e9[169]](_0xe114x14);return}};this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x18;this[_0xe7e9[0]][_0xe7e9[122]]=false}catch(e){this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[178])}}else {this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[178])}};EditorUi[_0xe7e9[10]][_0xe7e9[179]]=function(_0xe114x18){var _0xe114x1=this[_0xe7e9[0]];console[_0xe7e9[72]](_0xe114x18);if(_0xe114x18!=null){var _0xe114x14=mxUtils[_0xe7e9[135]](this[_0xe7e9[0]][_0xe7e9[134]]());try{if(useLocalStorage){if(localStorage[_0xe7e9[136]](_0xe114x18)!=null&&!mxUtils[_0xe7e9[138]](mxResources[_0xe7e9[112]](_0xe7e9[137],[_0xe114x18]))){return};localStorage[_0xe7e9[139]](_0xe114x18,_0xe114x14);this[_0xe7e9[0]][_0xe7e9[142]](mxResources[_0xe7e9[112]](_0xe7e9[140])+_0xe7e9[141]+ new Date())}else {console[_0xe7e9[72]](_0xe114x14[_0xe7e9[143]]);console[_0xe7e9[72]](MAX_REQUEST_SIZE);if(_0xe114x14[_0xe7e9[143]]<MAX_REQUEST_SIZE){_0xe114x14=encodeURIComponent(_0xe114x14);_0xe114x18=encodeURIComponent(_0xe114x18);var _0xe114x19= new XMLHttpRequest();_0xe114x19[_0xe7e9[102]](_0xe7e9[144],SAVE_URL,true);_0xe114x19[_0xe7e9[147]](_0xe7e9[145],_0xe7e9[146]);_0xe114x19[_0xe7e9[147]](_0xe7e9[148],_0xe7e9[149]+_0xe114x1[_0xe7e9[132]][_0xe7e9[150]]);_0xe114x19[_0xe7e9[151]]=function(_0xe114x1a){if(_0xe114x19[_0xe7e9[152]]===4){if(_0xe114x19[_0xe7e9[153]]===201){_0xe114x1[_0xe7e9[142]](_0xe7e9[154]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[155]]+_0xe7e9[158]);setTimeout(function(){window[_0xe7e9[102]](_0xe7e9[180]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[160]],_0xe7e9[161])},1500)}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[181]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[163]][0][_0xe7e9[128]])}}};_0xe114x19[_0xe7e9[164]]=function(_0xe114x1a){mxUtils[_0xe7e9[129]](_0xe114x19[_0xe7e9[165]])};_0xe114x19[_0xe7e9[167]](_0xe7e9[182]+_0xe114x18+_0xe7e9[183]+_0xe114x14+_0xe7e9[184]+_0xe114x14)}else {mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[168]));mxUtils[_0xe7e9[169]](_0xe114x14);return}};this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x18;this[_0xe7e9[0]][_0xe7e9[122]]=false}catch(e){this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[178])}}else {this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[178])}};EditorUi[_0xe7e9[10]][_0xe7e9[185]]=function(_0xe114x1b,_0xe114x1c){var _0xe114x3=this[_0xe7e9[0]][_0xe7e9[4]];_0xe114x1b=null!=_0xe114x1b?_0xe114x1b:_0xe114x3[_0xe7e9[187]][_0xe7e9[186]]();_0xe114x1c=null!=_0xe114x1c?_0xe114x1c:{};for(var _0xe114x1d=!0,_0xe114x1e=_0xe114x3[_0xe7e9[187]][_0xe7e9[188]](_0xe114x1b),_0xe114x1a=0;_0xe114x1a<_0xe114x1e;_0xe114x1a++){var _0xe114x1f=_0xe114x3[_0xe7e9[187]][_0xe7e9[189]](_0xe114x1b,_0xe114x1a),_0xe114x20=_0xe114x1c;_0xe114x3[_0xe7e9[190]](_0xe114x1f)&&(_0xe114x20={});_0xe114x20=this[_0xe7e9[185]](_0xe114x1f,_0xe114x20);null!=_0xe114x20?_0xe114x3[_0xe7e9[192]](_0xe114x1f,_0xe114x20[_0xe7e9[137]](/\n/g,_0xe7e9[191])):_0xe114x3[_0xe7e9[192]](_0xe114x1f,null);_0xe114x1d=_0xe114x1d&&null==_0xe114x20};_0xe114x1e=_0xe7e9[193];if(_0xe114x3[_0xe7e9[187]][_0xe7e9[71]](_0xe114x1b)){switch(_0xe114x1b[_0xe7e9[67]][_0xe7e9[201]]){case _0xe7e9[55]:_0xe114x1e=(_0xe114x1b[_0xe7e9[67]][_0xe7e9[194]](_0xe7e9[55])!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[195]+_0xe7e9[196];_0xe114x1e+=(_0xe114x1b[_0xe7e9[67]][_0xe7e9[194]](_0xe7e9[197])!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[198]+_0xe7e9[196];break;case _0xe7e9[54]:_0xe114x1e=(_0xe114x1b[_0xe7e9[67]][_0xe7e9[194]](_0xe7e9[55])!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[195]+_0xe7e9[196];_0xe114x1e+=(_0xe114x1b[_0xe7e9[67]][_0xe7e9[194]](_0xe7e9[197])!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[198]+_0xe7e9[196];break;case _0xe7e9[52]:_0xe114x1e=this[_0xe7e9[199]](_0xe7e9[52])?_0xe7e9[193]:_0xe7e9[200]+_0xe7e9[196];_0xe114x1e+=(_0xe114x1b[_0xe7e9[67]][_0xe7e9[194]](_0xe7e9[197])!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[198]+_0xe7e9[196];break}};if(_0xe114x3[_0xe7e9[187]][_0xe7e9[64]](_0xe114x1b)){var _0xe114x21=_0xe114x3[_0xe7e9[187]][_0xe7e9[203]](_0xe114x1b[_0xe7e9[68]][_0xe7e9[202]]());switch(_0xe114x21[_0xe7e9[67]][_0xe7e9[201]]){case _0xe7e9[55]:var _0xe114x22=String(_0xe114x1b[_0xe7e9[204]]());console[_0xe7e9[72]](_0xe114x22);if(_0xe114x22===_0xe7e9[205]||_0xe114x22===_0xe7e9[31]){_0xe114x1e=_0xe7e9[206]+_0xe7e9[196]}else {var _0xe114x23=_0xe114x22[_0xe7e9[208]](_0xe7e9[207]);_0xe114x23[_0xe7e9[212]](function(_0xe114x24,_0xe114x25){_0xe114x1e=_0xe114x1e+((_0xe114x24[_0xe7e9[209]]()!==_0xe7e9[193])?_0xe7e9[193]:_0xe7e9[210]+(_0xe114x25+1)+_0xe7e9[211]+_0xe7e9[196])})};break}};_0xe114x3[_0xe7e9[213]](_0xe114x1b)&&!_0xe114x1d&&(_0xe114x1e+=(mxResources[_0xe7e9[112]](_0xe114x3[_0xe7e9[214]])||_0xe114x3[_0xe7e9[214]])+_0xe7e9[196]);_0xe114x1e=_0xe114x3[_0xe7e9[187]][_0xe7e9[64]](_0xe114x1b)?_0xe114x1e+(_0xe114x3[_0xe7e9[216]](_0xe114x1b,_0xe114x3[_0xe7e9[187]][_0xe7e9[215]](_0xe114x1b,!0),_0xe114x3[_0xe7e9[187]][_0xe7e9[215]](_0xe114x1b,!1))||_0xe7e9[193]):_0xe114x1e+(_0xe114x3[_0xe7e9[217]](_0xe114x1b)||_0xe7e9[193]);_0xe114x1a=_0xe114x3[_0xe7e9[218]](_0xe114x1b,_0xe114x1c);null!=_0xe114x1a&&(_0xe114x1e+=_0xe114x1a);null==_0xe114x3[_0xe7e9[187]][_0xe7e9[219]](_0xe114x1b)&&_0xe114x3[_0xe7e9[89]][_0xe7e9[185]]();return 0<_0xe114x1e[_0xe7e9[143]]||!_0xe114x1d?_0xe114x1e:null};EditorUi[_0xe7e9[10]][_0xe7e9[199]]=function(_0xe114x26){var _0xe114x3=this[_0xe7e9[0]][_0xe7e9[4]];var _0xe114x27=_0xe114x3[_0xe7e9[220]]();var _0xe114x28=0;_0xe114x27[_0xe7e9[221]][_0xe7e9[212]](function(_0xe114x29){if(_0xe114x3[_0xe7e9[187]][_0xe7e9[71]](_0xe114x29)&&_0xe114x29[_0xe7e9[67]][_0xe7e9[201]]==_0xe114x26){_0xe114x28++}});return _0xe114x28>1?false:true};EditorUi[_0xe7e9[10]][_0xe7e9[222]]=function(_0xe114x18){var _0xe114x1=this[_0xe7e9[0]];if(_0xe114x18!=null){var _0xe114x2a=this[_0xe7e9[185]]();if(_0xe114x2a===null){var _0xe114x14=mxUtils[_0xe7e9[135]](this[_0xe7e9[0]][_0xe7e9[134]]());try{if(useLocalStorage){if(localStorage[_0xe7e9[136]](_0xe114x18)!=null&&!mxUtils[_0xe7e9[138]](mxResources[_0xe7e9[112]](_0xe7e9[137],[_0xe114x18]))){return};localStorage[_0xe7e9[139]](_0xe114x18,_0xe114x14);this[_0xe7e9[0]][_0xe7e9[142]](mxResources[_0xe7e9[112]](_0xe7e9[140])+_0xe7e9[141]+ new Date())}else {console[_0xe7e9[72]](_0xe114x14[_0xe7e9[143]]);console[_0xe7e9[72]](MAX_REQUEST_SIZE);if(_0xe114x14[_0xe7e9[143]]<MAX_REQUEST_SIZE){_0xe114x14=encodeURIComponent(_0xe114x14);var _0xe114x19= new XMLHttpRequest();_0xe114x19[_0xe7e9[102]](_0xe7e9[172],SAVE_URL+this[_0xe7e9[0]][_0xe7e9[132]][_0xe7e9[160]],true);_0xe114x19[_0xe7e9[147]](_0xe7e9[145],_0xe7e9[146]);_0xe114x19[_0xe7e9[147]](_0xe7e9[148],_0xe7e9[149]+_0xe114x1[_0xe7e9[132]][_0xe7e9[150]]);_0xe114x19[_0xe7e9[151]]=function(_0xe114x1a){if(_0xe114x19[_0xe7e9[152]]===4){if(_0xe114x19[_0xe7e9[153]]===200){_0xe114x1[_0xe7e9[142]](_0xe7e9[223]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[174]]+_0xe7e9[175]+_0xe114x19[_0xe7e9[153]]+_0xe7e9[141]+_0xe114x19[_0xe7e9[165]]+_0xe7e9[44])}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[176]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[163]][0][_0xe7e9[128]])}}};_0xe114x19[_0xe7e9[164]]=function(_0xe114x1a){mxUtils[_0xe7e9[129]](_0xe114x19[_0xe7e9[165]])};_0xe114x19[_0xe7e9[167]](_0xe7e9[177]+_0xe114x14+_0xe7e9[184]+_0xe114x14)}else {mxUtils[_0xe7e9[129]](mxResources[_0xe7e9[112]](_0xe7e9[168]));mxUtils[_0xe7e9[169]](_0xe114x14);return}};this[_0xe7e9[0]][_0xe7e9[125]]=_0xe114x18;this[_0xe7e9[0]][_0xe7e9[122]]=false}catch(e){this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[224])}}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[225])}}else {this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[224])}};EditorUi[_0xe7e9[10]][_0xe7e9[226]]=function(_0xe114x18){var _0xe114x1=this[_0xe7e9[0]];if(_0xe114x18!=null){try{var _0xe114x19= new XMLHttpRequest();_0xe114x19[_0xe7e9[102]](_0xe7e9[144],VARIABLE_URL,true);_0xe114x19[_0xe7e9[147]](_0xe7e9[145],_0xe7e9[146]);_0xe114x19[_0xe7e9[147]](_0xe7e9[148],_0xe7e9[149]+_0xe114x1[_0xe7e9[132]][_0xe7e9[150]]);_0xe114x19[_0xe7e9[151]]=function(_0xe114x1a){if(_0xe114x19[_0xe7e9[152]]===4){if(_0xe114x19[_0xe7e9[153]]===201){_0xe114x1[_0xe7e9[142]](_0xe7e9[227]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[228]]+_0xe7e9[175]+_0xe114x19[_0xe7e9[153]]+_0xe7e9[141]+_0xe114x19[_0xe7e9[165]]+_0xe7e9[44])}else {_0xe114x1[_0xe7e9[142]](_0xe7e9[181]+JSON[_0xe7e9[157]](_0xe114x19[_0xe7e9[156]])[_0xe7e9[163]][0][_0xe7e9[128]])}}};_0xe114x19[_0xe7e9[164]]=function(_0xe114x1a){mxUtils[_0xe7e9[129]](_0xe114x19[_0xe7e9[165]])};_0xe114x19[_0xe7e9[167]](_0xe7e9[229]+_0xe114x18)}catch(e){this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[230])}}else {this[_0xe7e9[0]][_0xe7e9[142]](_0xe7e9[230])}};EditorUi[_0xe7e9[10]][_0xe7e9[231]]=function(_0xe114x2b){var _0xe114x2c=(_0xe114x2b!=null)?_0xe114x2b:window[_0xe7e9[233]][_0xe7e9[232]];var _0xe114x2d=(_0xe114x2c[_0xe7e9[69]](_0xe7e9[234])>0)?1:0;for(var _0xe114x25 in urlParams){if(_0xe114x2d==0){_0xe114x2c+=_0xe7e9[234]}else {_0xe114x2c+=_0xe7e9[235]};_0xe114x2c+=_0xe114x25+_0xe7e9[236]+urlParams[_0xe114x25];_0xe114x2d++};return _0xe114x2c};EditorUi[_0xe7e9[10]][_0xe7e9[109]]=function(){var _0xe114x2e=this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[237]);var _0xe114x2f=this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[238]);var _0xe114x30=this[_0xe7e9[0]][_0xe7e9[124]];var _0xe114x31=function(){_0xe114x2e[_0xe7e9[114]](_0xe114x30[_0xe7e9[239]]());_0xe114x2f[_0xe7e9[114]](_0xe114x30[_0xe7e9[240]]())};_0xe114x30[_0xe7e9[33]](mxEvent.ADD,_0xe114x31);_0xe114x30[_0xe7e9[33]](mxEvent.UNDO,_0xe114x31);_0xe114x30[_0xe7e9[33]](mxEvent.REDO,_0xe114x31);_0xe114x30[_0xe7e9[33]](mxEvent.CLEAR,_0xe114x31);_0xe114x31()};EditorUi[_0xe7e9[10]][_0xe7e9[110]]=function(){var _0xe114x32=mxUtils[_0xe7e9[20]](this,function(){var _0xe114x3=this[_0xe7e9[0]][_0xe7e9[4]];var _0xe114x33=!_0xe114x3[_0xe7e9[241]]();var _0xe114x34=false;var _0xe114x35=false;var _0xe114x36=_0xe114x3[_0xe7e9[242]]();if(_0xe114x36!=null){for(var _0xe114x37=0;_0xe114x37<_0xe114x36[_0xe7e9[143]];_0xe114x37++){var _0xe114xb=_0xe114x36[_0xe114x37];if(_0xe114x3[_0xe7e9[65]]()[_0xe7e9[64]](_0xe114xb)){_0xe114x35=true};if(_0xe114x3[_0xe7e9[65]]()[_0xe7e9[71]](_0xe114xb)){_0xe114x34=true};if(_0xe114x35&&_0xe114x34){break}}};var _0xe114x38=[_0xe7e9[115],_0xe7e9[116],_0xe7e9[243],_0xe7e9[244],_0xe7e9[245],_0xe7e9[246],_0xe7e9[6],_0xe7e9[247],_0xe7e9[248],_0xe7e9[249],_0xe7e9[250],_0xe7e9[251],_0xe7e9[252],_0xe7e9[253],_0xe7e9[254]];for(var _0xe114x37=0;_0xe114x37<_0xe114x38[_0xe7e9[143]];_0xe114x37++){this[_0xe7e9[12]][_0xe7e9[112]](_0xe114x38[_0xe114x37])[_0xe7e9[114]](_0xe114x33)};this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[255])[_0xe7e9[114]](_0xe114x35);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[256])[_0xe7e9[114]](_0xe114x34);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[257])[_0xe7e9[114]](_0xe114x34);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[259])[_0xe7e9[114]](_0xe114x3[_0xe7e9[258]]()>1);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[261])[_0xe7e9[114]](_0xe114x3[_0xe7e9[258]]()==1&&_0xe114x3[_0xe7e9[65]]()[_0xe7e9[188]](_0xe114x3[_0xe7e9[260]]())>0);var _0xe114x39=_0xe114x34&&_0xe114x3[_0xe7e9[258]]()==1;this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[262])[_0xe7e9[114]](_0xe114x39&&_0xe114x3[_0xe7e9[65]]()[_0xe7e9[71]](_0xe114x3[_0xe7e9[65]]()[_0xe7e9[219]](_0xe114x3[_0xe7e9[260]]())));var _0xe114x3a=[_0xe7e9[263],_0xe7e9[264],_0xe7e9[265],_0xe7e9[266],_0xe7e9[267],_0xe7e9[268],_0xe7e9[269],_0xe7e9[270],_0xe7e9[271]];for(var _0xe114x37=0;_0xe114x37<_0xe114x3a[_0xe7e9[143]];_0xe114x37++){this[_0xe7e9[13]][_0xe7e9[112]](_0xe114x3a[_0xe114x37])[_0xe7e9[114]](_0xe114x33)};_0xe114x3a=[_0xe7e9[272],_0xe7e9[273],_0xe7e9[274]];for(var _0xe114x37=0;_0xe114x37<_0xe114x3a[_0xe7e9[143]];_0xe114x37++){this[_0xe7e9[13]][_0xe7e9[112]](_0xe114x3a[_0xe114x37])[_0xe7e9[114]](_0xe114x35)};this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[275])[_0xe7e9[114]](_0xe114x35);this[_0xe7e9[13]][_0xe7e9[112]](_0xe7e9[276])[_0xe7e9[114]](_0xe114x3[_0xe7e9[258]]()>1);this[_0xe7e9[13]][_0xe7e9[112]](_0xe7e9[279])[_0xe7e9[114]](_0xe114x34||(_0xe114x35&&_0xe114x3[_0xe7e9[278]](_0xe114x3[_0xe7e9[89]][_0xe7e9[277]](_0xe114x3[_0xe7e9[260]]()))));this[_0xe7e9[13]][_0xe7e9[112]](_0xe7e9[282])[_0xe7e9[114]](_0xe114x3[_0xe7e9[280]]&&((_0xe114x3[_0xe7e9[89]][_0xe7e9[281]]!=null)||(_0xe114x3[_0xe7e9[258]]()==1&&_0xe114x3[_0xe7e9[190]](_0xe114x3[_0xe7e9[260]]()))));this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[283])[_0xe7e9[114]](_0xe114x3[_0xe7e9[89]][_0xe7e9[281]]!=null);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[284])[_0xe7e9[114]](_0xe114x3[_0xe7e9[89]][_0xe7e9[281]]!=null);var _0xe114x3b=_0xe114x3[_0xe7e9[258]]()==1&&_0xe114x3[_0xe7e9[190]](_0xe114x3[_0xe7e9[260]]());this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[285])[_0xe7e9[114]](_0xe114x3b);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[286])[_0xe7e9[114]](_0xe114x3b);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[287])[_0xe7e9[114]](_0xe114x3b);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[288])[_0xe7e9[114]](_0xe114x3[_0xe7e9[258]]()==1);this[_0xe7e9[12]][_0xe7e9[112]](_0xe7e9[290])[_0xe7e9[114]](_0xe114x3[_0xe7e9[258]]()==1&&_0xe114x3[_0xe7e9[289]](_0xe114x3[_0xe7e9[260]]())!=null)});this[_0xe7e9[0]][_0xe7e9[4]][_0xe7e9[291]]()[_0xe7e9[33]](mxEvent.CHANGE,_0xe114x32);_0xe114x32()};EditorUi[_0xe7e9[10]][_0xe7e9[15]]=function(){var _0xe114x3c=mxClient[_0xe7e9[29]]&&(document[_0xe7e9[30]]==null||document[_0xe7e9[30]]==5);var _0xe114x3d=this[_0xe7e9[1]][_0xe7e9[292]];var _0xe114x3e=this[_0xe7e9[1]][_0xe7e9[293]];if(this[_0xe7e9[1]]==document[_0xe7e9[21]]){_0xe114x3d=document[_0xe7e9[21]][_0xe7e9[292]]||document[_0xe7e9[120]][_0xe7e9[292]];_0xe114x3e=(_0xe114x3c)?document[_0xe7e9[21]][_0xe7e9[293]]||document[_0xe7e9[120]][_0xe7e9[293]]:document[_0xe7e9[120]][_0xe7e9[293]]};var _0xe114x3f=Math[_0xe7e9[295]](0,Math[_0xe7e9[294]](this[_0xe7e9[107]],_0xe114x3d-this[_0xe7e9[103]]-20));var _0xe114x40=Math[_0xe7e9[295]](0,Math[_0xe7e9[294]](this[_0xe7e9[108]],_0xe114x3e-this[_0xe7e9[104]]-this[_0xe7e9[105]]-this[_0xe7e9[106]]-this[_0xe7e9[103]]-1));this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[296]]=this[_0xe7e9[104]]+_0xe7e9[297];this[_0xe7e9[25]][_0xe7e9[6]][_0xe7e9[298]]=this[_0xe7e9[104]]+_0xe7e9[297];this[_0xe7e9[25]][_0xe7e9[6]][_0xe7e9[296]]=this[_0xe7e9[105]]+_0xe7e9[297];var _0xe114x41=this[_0xe7e9[104]]+this[_0xe7e9[105]];if(!mxClient[_0xe7e9[299]]){_0xe114x41+=1};this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[298]]=_0xe114x41+_0xe7e9[297];this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[300]]=_0xe114x3f+_0xe7e9[297];this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[300]]=_0xe114x3f+_0xe7e9[297];this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[296]]=_0xe114x40+_0xe7e9[297];this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[301]]=this[_0xe7e9[106]]+_0xe7e9[297];this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[302]]=(_0xe114x3f+this[_0xe7e9[103]])+_0xe7e9[297];this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[298]]=this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[298]];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[296]]=this[_0xe7e9[106]]+_0xe7e9[297];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[303]]=_0xe7e9[304];this[_0xe7e9[305]][_0xe7e9[6]][_0xe7e9[298]]=this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[298]];this[_0xe7e9[305]][_0xe7e9[6]][_0xe7e9[301]]=this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[301]];this[_0xe7e9[305]][_0xe7e9[6]][_0xe7e9[302]]=_0xe114x3f+_0xe7e9[297];this[_0xe7e9[306]][_0xe7e9[6]][_0xe7e9[300]]=this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[300]];this[_0xe7e9[306]][_0xe7e9[6]][_0xe7e9[301]]=(_0xe114x40+this[_0xe7e9[106]])+_0xe7e9[297];if(_0xe114x3c){this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[300]]=_0xe114x3d+_0xe7e9[297];this[_0xe7e9[25]][_0xe7e9[6]][_0xe7e9[300]]=this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[300]];var _0xe114x42=(_0xe114x3e-_0xe114x40-this[_0xe7e9[103]]-this[_0xe7e9[106]]-this[_0xe7e9[104]]-this[_0xe7e9[105]]);this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[296]]=_0xe114x42+_0xe7e9[297];this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[300]]=(_0xe114x3d-_0xe114x3f-this[_0xe7e9[103]])+_0xe7e9[297];var _0xe114x43=(_0xe114x3e-this[_0xe7e9[106]]-this[_0xe7e9[104]]-this[_0xe7e9[105]]);this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[296]]=_0xe114x43+_0xe7e9[297];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[300]]=this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[300]];this[_0xe7e9[305]][_0xe7e9[6]][_0xe7e9[296]]=_0xe114x43+_0xe7e9[297]}else {this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[301]]=(_0xe114x40+this[_0xe7e9[103]]+this[_0xe7e9[106]])+_0xe7e9[297];this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[301]]=this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[301]]}};EditorUi[_0xe7e9[10]][_0xe7e9[14]]=function(){this[_0xe7e9[23]]=this[_0xe7e9[308]](_0xe7e9[307]);this[_0xe7e9[25]]=this[_0xe7e9[308]](_0xe7e9[309]);this[_0xe7e9[27]]=this[_0xe7e9[308]](_0xe7e9[310]);this[_0xe7e9[79]]=this[_0xe7e9[308]](_0xe7e9[311]);this[_0xe7e9[26]]=this[_0xe7e9[308]](_0xe7e9[312]);this[_0xe7e9[28]]=this[_0xe7e9[308]](_0xe7e9[313]);this[_0xe7e9[305]]=this[_0xe7e9[308]](_0xe7e9[314]);this[_0xe7e9[306]]=this[_0xe7e9[308]](_0xe7e9[315]);this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[298]]=_0xe7e9[316];this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[23]][_0xe7e9[6]][_0xe7e9[317]]=_0xe7e9[316];this[_0xe7e9[25]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[25]][_0xe7e9[6]][_0xe7e9[317]]=_0xe7e9[316];this[_0xe7e9[27]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[79]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[26]][_0xe7e9[6]][_0xe7e9[317]]=_0xe7e9[316];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[317]]=_0xe7e9[316];this[_0xe7e9[28]][_0xe7e9[6]][_0xe7e9[301]]=_0xe7e9[316];this[_0xe7e9[306]][_0xe7e9[6]][_0xe7e9[302]]=_0xe7e9[316];this[_0xe7e9[306]][_0xe7e9[6]][_0xe7e9[296]]=this[_0xe7e9[103]]+_0xe7e9[297];this[_0xe7e9[305]][_0xe7e9[6]][_0xe7e9[300]]=this[_0xe7e9[103]]+_0xe7e9[297]};EditorUi[_0xe7e9[10]][_0xe7e9[16]]=function(){this[_0xe7e9[318]]=this[_0xe7e9[13]][_0xe7e9[320]](this[_0xe7e9[308]](_0xe7e9[319]));this[_0xe7e9[23]][_0xe7e9[321]](this[_0xe7e9[318]][_0xe7e9[1]]);this[_0xe7e9[322]]=this[_0xe7e9[324]](this[_0xe7e9[308]](_0xe7e9[323]));this[_0xe7e9[25]][_0xe7e9[321]](this[_0xe7e9[322]][_0xe7e9[1]]);this[_0xe7e9[325]]=this[_0xe7e9[326]](this[_0xe7e9[27]]);this[_0xe7e9[28]][_0xe7e9[321]](this[_0xe7e9[327]]());this[_0xe7e9[328]]=this[_0xe7e9[329]]();this[_0xe7e9[0]][_0xe7e9[33]](_0xe7e9[330],mxUtils[_0xe7e9[20]](this,function(){this[_0xe7e9[332]](this[_0xe7e9[0]][_0xe7e9[331]]())}));this[_0xe7e9[332]](this[_0xe7e9[0]][_0xe7e9[331]]());this[_0xe7e9[318]][_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[328]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[23]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[25]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[27]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[79]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[26]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[28]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[305]]);this[_0xe7e9[1]][_0xe7e9[321]](this[_0xe7e9[306]]);this[_0xe7e9[333]](this[_0xe7e9[305]],true,0,mxUtils[_0xe7e9[20]](this,function(_0xe114x44){this[_0xe7e9[107]]=_0xe114x44;this[_0xe7e9[15]]();this[_0xe7e9[0]][_0xe7e9[4]][_0xe7e9[100]]();this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[101]](false);this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[80]][_0xe7e9[100]]()}));this[_0xe7e9[333]](this[_0xe7e9[306]],false,this[_0xe7e9[106]],mxUtils[_0xe7e9[20]](this,function(_0xe114x44){this[_0xe7e9[108]]=_0xe114x44;this[_0xe7e9[15]]();this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[101]](false);this[_0xe7e9[0]][_0xe7e9[80]][_0xe7e9[80]][_0xe7e9[100]]()}))};EditorUi[_0xe7e9[10]][_0xe7e9[329]]=function(){var _0xe114x2=document[_0xe7e9[335]](_0xe7e9[334]);_0xe114x2[_0xe7e9[336]]=_0xe7e9[337];return _0xe114x2};EditorUi[_0xe7e9[10]][_0xe7e9[329]]=function(){var _0xe114x2=document[_0xe7e9[335]](_0xe7e9[334]);_0xe114x2[_0xe7e9[336]]=_0xe7e9[337];return _0xe114x2};EditorUi[_0xe7e9[10]][_0xe7e9[332]]=function(_0xe114x44){this[_0xe7e9[328]][_0xe7e9[338]]=_0xe114x44};EditorUi[_0xe7e9[10]][_0xe7e9[324]]=function(_0xe114x2){return new Toolbar(this,_0xe114x2)};EditorUi[_0xe7e9[10]][_0xe7e9[326]]=function(_0xe114x2){return new Sidebar(this,_0xe114x2)};EditorUi[_0xe7e9[10]][_0xe7e9[327]]=function(){return this[_0xe7e9[308]](_0xe7e9[339])};EditorUi[_0xe7e9[10]][_0xe7e9[308]]=function(_0xe114x45){var _0xe114x46=document[_0xe7e9[335]](_0xe7e9[340]);_0xe114x46[_0xe7e9[336]]=_0xe114x45;return _0xe114x46};EditorUi[_0xe7e9[10]][_0xe7e9[341]]=function(_0xe114x45){var _0xe114x46=document[_0xe7e9[335]](_0xe114x45);return _0xe114x46};EditorUi[_0xe7e9[10]][_0xe7e9[342]]=function(_0xe114x45){var _0xe114x46=document[_0xe7e9[335]](_0xe7e9[343]);_0xe114x46[_0xe7e9[336]]=_0xe114x45;return _0xe114x46};EditorUi[_0xe7e9[10]][_0xe7e9[333]]=function(_0xe114x46,_0xe114x47,_0xe114x48,_0xe114x49){var _0xe114x4a=null;var _0xe114x4b=null;function _0xe114x4c(){return parseInt(((_0xe114x47)?_0xe114x46[_0xe7e9[6]][_0xe7e9[302]]:_0xe114x46[_0xe7e9[6]][_0xe7e9[301]]))}function _0xe114x4d(_0xe114x6){if(_0xe114x4a!=null){var _0xe114x4e= new mxPoint(mxEvent[_0xe7e9[344]](_0xe114x6),mxEvent[_0xe7e9[345]](_0xe114x6));_0xe114x49(Math[_0xe7e9[295]](0,_0xe114x4b+((_0xe114x47)?(_0xe114x4e[_0xe7e9[346]]-_0xe114x4a[_0xe7e9[346]]):(_0xe114x4a[_0xe7e9[347]]-_0xe114x4e[_0xe7e9[347]]))-_0xe114x48));mxEvent[_0xe7e9[74]](_0xe114x6)}}function _0xe114x4f(_0xe114x6){_0xe114x4d(_0xe114x6);_0xe114x4a=null;_0xe114x4b=null}mxEvent[_0xe7e9[82]](_0xe114x46,function(_0xe114x6){_0xe114x4a= new mxPoint(mxEvent[_0xe7e9[344]](_0xe114x6),mxEvent[_0xe7e9[345]](_0xe114x6));_0xe114x4b=_0xe114x4c();mxEvent[_0xe7e9[74]](_0xe114x6)});mxEvent[_0xe7e9[33]](document,_0xe7e9[348],_0xe114x4d);mxEvent[_0xe7e9[33]](document,_0xe7e9[349],_0xe114x4d);mxEvent[_0xe7e9[33]](document,_0xe7e9[350],_0xe114x4f);mxEvent[_0xe7e9[33]](document,_0xe7e9[351],_0xe114x4f)};EditorUi[_0xe7e9[10]][_0xe7e9[73]]=function(_0xe114x46,_0xe114x3d,_0xe114x3e,_0xe114x50,_0xe114x51,_0xe114x52){this[_0xe7e9[352]]();this[_0xe7e9[353]]= new Dialog(this,_0xe114x46,_0xe114x3d,(mxClient[_0xe7e9[354]])?_0xe114x3e-12:_0xe114x3e,_0xe114x50,_0xe114x51,_0xe114x52)};EditorUi[_0xe7e9[10]][_0xe7e9[352]]=function(){if(this[_0xe7e9[353]]!=null){this[_0xe7e9[353]][_0xe7e9[355]]();this[_0xe7e9[353]]=null;this[_0xe7e9[0]][_0xe7e9[4]][_0xe7e9[1]][_0xe7e9[47]]()}};EditorUi[_0xe7e9[10]][_0xe7e9[356]]=function(_0xe114x53){if(!_0xe114x53&&this[_0xe7e9[0]][_0xe7e9[125]]!=null){this[_0xe7e9[171]](this[_0xe7e9[0]][_0xe7e9[357]]())}else {this[_0xe7e9[73]]( new SaveDialog(this)[_0xe7e9[1]],300,100,true,true)}};EditorUi[_0xe7e9[10]][_0xe7e9[358]]=function(_0xe114x53){if(!_0xe114x53&&this[_0xe7e9[0]][_0xe7e9[125]]!=null){this[_0xe7e9[222]](this[_0xe7e9[0]][_0xe7e9[357]]())}else {}};EditorUi[_0xe7e9[10]][_0xe7e9[359]]=function(_0xe114x54,_0xe114x55,_0xe114x56){var _0xe114x3=this[_0xe7e9[0]][_0xe7e9[4]];var _0xe114xb=_0xe114x3[_0xe7e9[260]]();_0xe114x55=this[_0xe7e9[360]]!=null?this[_0xe7e9[360]]:_0xe114x55;_0xe114x3[_0xe7e9[65]]()[_0xe7e9[361]]();try{_0xe114x54[_0xe7e9[362]](_0xe114x3[_0xe7e9[220]](),_0xe114xb)}catch(e){throw e}finally{if(_0xe114x55&&navigator[_0xe7e9[364]][_0xe7e9[69]](_0xe7e9[363])<0){var _0xe114x57= new mxMorphing(_0xe114x3);_0xe114x57[_0xe7e9[33]](mxEvent.DONE,mxUtils[_0xe7e9[20]](this,function(){_0xe114x3[_0xe7e9[65]]()[_0xe7e9[365]]()}));_0xe114x57[_0xe7e9[366]]()}else {_0xe114x3[_0xe7e9[65]]()[_0xe7e9[365]]()}}};EditorUi[_0xe7e9[10]][_0xe7e9[97]]=function(_0xe114x1){var _0xe114x3=this[_0xe7e9[0]][_0xe7e9[4]];var _0xe114xf= new mxKeyHandler(_0xe114x3);_0xe114xf[_0xe7e9[367]]=function(_0xe114x6){return mxEvent[_0xe7e9[367]](_0xe114x6)||(mxClient[_0xe7e9[368]]&&_0xe114x6[_0xe7e9[369]])};function _0xe114x58(_0xe114x59){if(!_0xe114x3[_0xe7e9[241]]()){var _0xe114x48=0;var _0xe114x5a=0;if(_0xe114x59==37){_0xe114x48= -1}else {if(_0xe114x59==38){_0xe114x5a= -1}else {if(_0xe114x59==39){_0xe114x48=1}else {if(_0xe114x59==40){_0xe114x5a=1}}}};_0xe114x3[_0xe7e9[370]](_0xe114x3[_0xe7e9[242]](),_0xe114x48,_0xe114x5a);_0xe114x3[_0xe7e9[371]](_0xe114x3[_0xe7e9[260]]())}}var _0xe114x5b=mxUtils[_0xe7e9[20]](this,function(_0xe114x5c,_0xe114x5d,_0xe114x25,_0xe114x5e){var _0xe114x5f=this[_0xe7e9[12]][_0xe7e9[112]](_0xe114x25);if(_0xe114x5f!=null){var _0xe114x1f=function(){if(_0xe114x5f[_0xe7e9[372]]){_0xe114x5f[_0xe7e9[373]]()}};if(_0xe114x5d){if(_0xe114x5e){_0xe114xf[_0xe7e9[374]](_0xe114x5c,_0xe114x1f)}else {_0xe114xf[_0xe7e9[375]](_0xe114x5c,_0xe114x1f)}}else {if(_0xe114x5e){_0xe114xf[_0xe7e9[376]](_0xe114x5c,_0xe114x1f)}else {_0xe114xf[_0xe7e9[377]](_0xe114x5c,_0xe114x1f)}}}});var _0xe114x60=this;var _0xe114x61=_0xe114xf[_0xe7e9[378]];_0xe114xf[_0xe7e9[378]]=function(_0xe114x6){_0xe114x60[_0xe7e9[352]]();_0xe114x61[_0xe7e9[50]](this,arguments)};_0xe114xf[_0xe7e9[379]]=function(){};_0xe114xf[_0xe7e9[377]](8,function(){_0xe114x3[_0xe7e9[380]](true)});_0xe114xf[_0xe7e9[377]](13,function(){_0xe114x3[_0xe7e9[380]](false)});_0xe114xf[_0xe7e9[377]](33,function(){_0xe114x3[_0xe7e9[284]]()});_0xe114xf[_0xe7e9[377]](34,function(){_0xe114x3[_0xe7e9[285]]()});_0xe114xf[_0xe7e9[377]](36,function(){_0xe114x3[_0xe7e9[283]]()});_0xe114xf[_0xe7e9[377]](35,function(){_0xe114x3[_0xe7e9[15]]()});_0xe114xf[_0xe7e9[377]](37,function(){_0xe114x58(37)});_0xe114xf[_0xe7e9[377]](38,function(){_0xe114x58(38)});_0xe114xf[_0xe7e9[377]](39,function(){_0xe114x58(39)});_0xe114xf[_0xe7e9[377]](40,function(){_0xe114x58(40)});_0xe114xf[_0xe7e9[377]](113,function(){_0xe114x3[_0xe7e9[70]]()});_0xe114x5b(46,false,_0xe7e9[243]);_0xe114x5b(82,true,_0xe7e9[253]);_0xe114x5b(83,true,_0xe7e9[171]);_0xe114x5b(83,true,_0xe7e9[179],true);_0xe114x5b(107,false,_0xe7e9[381]);_0xe114x5b(109,false,_0xe7e9[382]);_0xe114x5b(65,true,_0xe7e9[383]);_0xe114x5b(86,true,_0xe7e9[384],true);_0xe114x5b(69,true,_0xe7e9[385],true);_0xe114x5b(69,true,_0xe7e9[386]);_0xe114x5b(66,true,_0xe7e9[249]);_0xe114x5b(70,true,_0xe7e9[248]);_0xe114x5b(68,true,_0xe7e9[244]);_0xe114x5b(90,true,_0xe7e9[237]);_0xe114x5b(89,true,_0xe7e9[238]);_0xe114x5b(88,true,_0xe7e9[115]);_0xe114x5b(67,true,_0xe7e9[116]);_0xe114x5b(81,true,_0xe7e9[387]);_0xe114x5b(86,true,_0xe7e9[111]);_0xe114x5b(71,true,_0xe7e9[259]);_0xe114x5b(71,true,_0xe7e9[388],true);_0xe114x5b(85,true,_0xe7e9[261]);_0xe114x5b(112,false,_0xe7e9[389]);_0xe114x5b(80,true,_0xe7e9[222],true);return _0xe114xf};EditorUi[_0xe7e9[10]][_0xe7e9[58]]=function(_0xe114x3,_0xe114x36,_0xe114x62,_0xe114x63){for(var _0xe114x37=0;_0xe114x37<_0xe114x36[_0xe7e9[143]];_0xe114x37++){_0xe114x3[_0xe7e9[392]]( new mxMultiplicity(true,_0xe114x36[_0xe114x37],null,null,_0xe114x62[_0xe114x37][0],_0xe114x62[_0xe114x37][1],null,mxResources[_0xe7e9[112]](_0xe114x36[_0xe114x37])+_0xe7e9[390]+_0xe114x62[_0xe114x37][0]+_0xe7e9[391],null));_0xe114x3[_0xe7e9[392]]( new mxMultiplicity(false,_0xe114x36[_0xe114x37],null,null,_0xe114x63[_0xe114x37][0],_0xe114x63[_0xe114x37][1],null,mxResources[_0xe7e9[112]](_0xe114x36[_0xe114x37])+_0xe7e9[390]+_0xe114x63[_0xe114x37][0]+_0xe7e9[393],null))}} \ No newline at end of file +var _0xa3c1=["\x65\x64\x69\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x45\x64\x69\x74\x6F\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x72\x61\x70\x68","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x73\x72\x63","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x6D\x65\x6E\x75\x73","\x63\x72\x65\x61\x74\x65\x44\x69\x76\x73","\x72\x65\x66\x72\x65\x73\x68","\x63\x72\x65\x61\x74\x65\x55\x69","\x65\x76\x65\x6E\x74","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x41\x6C\x6C\x6F\x77\x65\x64","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x62\x69\x6E\x64","\x62\x6F\x64\x79","\x6F\x6E\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x6D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x64\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x69\x6E\x69\x74","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x75\x72\x73\x6F\x72","\x64\x65\x66\x61\x75\x6C\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x66\x6F\x63\x75\x73","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x61\x70\x70\x6C\x79","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x73\x74\x61\x72\x74","\x65\x6E\x64","\x69\x6E\x70\x75\x74","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x65\x6D\x61\x69\x6C","\x6E","\x63\x72\x65\x61\x74\x65\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x65\x6C\x6C","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x74\x61\x67\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x73\x6F\x75\x72\x63\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x69\x73\x56\x65\x72\x74\x65\x78","\x6C\x6F\x67","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x63\x6F\x6E\x73\x75\x6D\x65","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x6F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x67\x65\x73\x74\x75\x72\x65\x63\x68\x61\x6E\x67\x65","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x63\x61\x6C\x65\x28","\x73\x63\x61\x6C\x65","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x76\x69\x65\x77","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x7A\x6F\x6F\x6D\x54\x6F\x43\x65\x6E\x74\x65\x72","\x7A\x6F\x6F\x6D","\x76\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x73\x69\x7A\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x75\x70\x64\x61\x74\x65","\x6F\x70\x65\x6E","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6D\x65\x6E\x75\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x74\x6F\x6F\x6C\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x66\x6F\x6F\x74\x65\x72\x48\x65\x69\x67\x68\x74","\x68\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x55\x6E\x64\x6F\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x73\x74\x65","\x67\x65\x74","\x69\x73\x45\x6D\x70\x74\x79","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x74","\x63\x6F\x70\x79","\x6F\x70\x65\x6E\x65\x72","\x6F\x70\x65\x6E\x46\x69\x6C\x65","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x63\x6C\x65\x61\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x4D\x69\x73\x73\x69\x6E\x67\x46\x69\x6C\x65","\x3A\x20","\x6D\x65\x73\x73\x61\x67\x65","\x61\x6C\x65\x72\x74","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x6F\x70\x65\x6E\x53\x74\x72\x69\x6E\x67","\x64\x61\x74\x61","\x6E\x65\x77","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x67\x65\x74\x49\x74\x65\x6D","\x72\x65\x70\x6C\x61\x63\x65","\x63\x6F\x6E\x66\x69\x72\x6D","\x73\x65\x74\x49\x74\x65\x6D","\x73\x61\x76\x65\x64","\x20","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6C\x65\x6E\x67\x74\x68","\x50\x4F\x53\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x73\x74\x61\x74\x75\x73","\x50\x72\x6F\x6A\x65\x63\x74\x20","\x6E\x61\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x20\x69\x73\x20\x6F\x70\x65\x6E\x69\x6E\x67\x20\x69\x6E\x20\x6E\x65\x77\x20\x77\x69\x6E\x64\x6F\x77\x21","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x69\x64","\x5F\x62\x6C\x61\x6E\x6B","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x65\x77\x26\x6E\x61\x6D\x65\x3D","\x73\x65\x6E\x64","\x64\x72\x61\x77\x69\x6E\x67\x54\x6F\x6F\x4C\x61\x72\x67\x65","\x70\x6F\x70\x75\x70","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74","\x73\x61\x76\x65","\x50\x55\x54","\x55\x70\x64\x61\x74\x65\x64\x20\x61\x74\x20","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x20\x28","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x72\x61\x66\x74\x3D","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x66\x69\x6C\x65","\x73\x61\x76\x65\x41\x73","\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x45\x72\x72\x6F\x72\x20\x63\x6C\x6F\x6E\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x63\x6C\x6F\x6E\x65\x64\x26\x6E\x61\x6D\x65\x3D","\x26\x64\x72\x61\x66\x74\x3D","\x26\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x76\x61\x6C\x69\x64\x61\x74\x65","\x67\x65\x74\x52\x6F\x6F\x74","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x3C\x62\x72\x3E","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x51\x75\x65\x73\x74\x69\x6F\x6E\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x0A","\x6C\x61\x62\x65\x6C","\x4C\x61\x62\x65\x6C\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6C\x6F\x63\x6B","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x53\x74\x61\x72\x74\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x67\x65\x74\x49\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6E\x75\x6C\x6C","\x56\x61\x6C\x75\x65\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x2C","\x73\x70\x6C\x69\x74","\x74\x72\x69\x6D","\x56\x61\x6C\x75\x65","\x20\x63\x61\x6E\x20\x6E\x6F\x74\x20\x62\x65\x20\x65\x6D\x70\x74\x79","\x66\x6F\x72\x45\x61\x63\x68","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x70\x75\x62\x6C\x69\x73\x68","\x50\x75\x62\x6C\x69\x73\x68\x65\x64\x20\x61\x74\x20","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x66\x69\x6C\x65","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x76\x61\x72\x69\x61\x62\x6C\x65","\x56\x61\x72\x69\x61\x62\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64\x20\x61\x74\x20","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x6E\x61\x6D\x65\x3D","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x55\x72\x6C","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x26","\x3D","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x68\x61\x64\x6F\x77","\x74\x69\x6C\x74","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x63\x75\x72\x76\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x72\x6F\x75\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x72\x61\x6E\x67\x65","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x73\x70\x61\x63\x69\x6E\x67","\x6C\x69\x6E\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x6C\x69\x67\x6E","\x67\x65\x74\x53\x74\x61\x74\x65","\x69\x73\x4C\x6F\x6F\x70","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x6D\x61\x78","\x68\x65\x69\x67\x68\x74","\x70\x78","\x74\x6F\x70","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x77\x69\x64\x74\x68","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x64\x69\x73\x70\x6C\x61\x79","\x6E\x6F\x6E\x65","\x68\x73\x70\x6C\x69\x74","\x76\x73\x70\x6C\x69\x74","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x4F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x44\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x46\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x48\x73\x70\x6C\x69\x74","\x67\x65\x56\x73\x70\x6C\x69\x74","\x30\x70\x78","\x72\x69\x67\x68\x74","\x6D\x65\x6E\x75\x62\x61\x72","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x74\x6F\x6F\x6C\x62\x61\x72","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x73\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x6F\x74\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x64\x64\x53\x70\x6C\x69\x74\x48\x61\x6E\x64\x6C\x65\x72","\x61","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D\x20\x67\x65\x53\x74\x61\x74\x75\x73","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x67\x65\x46\x6F\x6F\x74\x65\x72","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x72\x6D","\x66\x6F\x72\x6D","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x78","\x79","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x64\x69\x61\x6C\x6F\x67","\x49\x53\x5F\x56\x4D\x4C","\x63\x6C\x6F\x73\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x61\x6E\x69\x6D\x61\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x65\x78\x65\x63\x75\x74\x65","\x43\x61\x6D\x69\x6E\x6F","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x49\x53\x5F\x4D\x41\x43","\x6D\x65\x74\x61\x4B\x65\x79","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x65\x6E\x61\x62\x6C\x65\x64","\x66\x75\x6E\x63\x74","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x4B\x65\x79","\x65\x73\x63\x61\x70\x65","\x65\x6E\x74\x65\x72","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x65\x78\x70\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x67\x72\x69\x64","\x61\x62\x6F\x75\x74","\x20\x6D\x75\x73\x74\x20\x68\x61\x76\x65\x20","\x20\x6F\x75\x74\x67\x6F\x69\x6E\x67\x20\x65\x64\x67\x65\x2E","\x70\x75\x73\x68","\x20\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x20\x65\x64\x67\x65\x2E"];EditorUi=function(_0x7ad4x1,_0x7ad4x2){this[_0xa3c1[0]]=_0x7ad4x1|| new Editor();this[_0xa3c1[1]]=_0x7ad4x2||document[_0xa3c1[3]](_0xa3c1[2]);var _0x7ad4x3=_0x7ad4x1[_0xa3c1[4]];var _0x7ad4x4=this;this[_0xa3c1[1]][_0xa3c1[6]][_0xa3c1[5]]=_0xa3c1[7]; new Image()[_0xa3c1[8]]=mxPopupMenu[_0xa3c1[10]][_0xa3c1[9]];if(mxConnectionHandler[_0xa3c1[10]][_0xa3c1[11]]!=null){ new Image()[_0xa3c1[8]]=mxConnectionHandler[_0xa3c1[10]][_0xa3c1[11]][_0xa3c1[8]]};this[_0xa3c1[12]]= new Actions(this);this[_0xa3c1[13]]= new Menus(this);this[_0xa3c1[14]]();this[_0xa3c1[15]]();this[_0xa3c1[16]]();var _0x7ad4x5=mxUtils[_0xa3c1[20]](this,function(_0x7ad4x6){if(_0x7ad4x6==null){_0x7ad4x6=window[_0xa3c1[17]]};if(this[_0xa3c1[18]](_0x7ad4x6)){return true};return _0x7ad4x3[_0xa3c1[19]]()});if(this[_0xa3c1[1]]==document[_0xa3c1[21]]){this[_0xa3c1[23]][_0xa3c1[22]]=_0x7ad4x5;this[_0xa3c1[23]][_0xa3c1[24]]=_0x7ad4x5;this[_0xa3c1[25]][_0xa3c1[22]]=_0x7ad4x5;this[_0xa3c1[25]][_0xa3c1[24]]=_0x7ad4x5;this[_0xa3c1[26]][_0xa3c1[22]]=_0x7ad4x5;this[_0xa3c1[26]][_0xa3c1[24]]=_0x7ad4x5;this[_0xa3c1[27]][_0xa3c1[22]]=_0x7ad4x5;this[_0xa3c1[27]][_0xa3c1[24]]=_0x7ad4x5;this[_0xa3c1[28]][_0xa3c1[22]]=_0x7ad4x5;this[_0xa3c1[28]][_0xa3c1[24]]=_0x7ad4x5};if(mxClient[_0xa3c1[29]]&&( typeof (document[_0xa3c1[30]])===_0xa3c1[31]||document[_0xa3c1[30]]<9)){mxEvent[_0xa3c1[33]](this[_0xa3c1[26]],_0xa3c1[32],_0x7ad4x5);mxEvent[_0xa3c1[33]](this[_0xa3c1[27]],_0xa3c1[32],_0x7ad4x5)}else {this[_0xa3c1[26]][_0xa3c1[34]]=_0x7ad4x5;this[_0xa3c1[27]][_0xa3c1[34]]=_0x7ad4x5};_0x7ad4x3[_0xa3c1[35]](this[_0xa3c1[26]]);_0x7ad4x3[_0xa3c1[15]]();_0x7ad4x3[_0xa3c1[1]][_0xa3c1[38]](_0xa3c1[36],_0xa3c1[37]);_0x7ad4x3[_0xa3c1[1]][_0xa3c1[6]][_0xa3c1[39]]=_0xa3c1[40];_0x7ad4x3[_0xa3c1[1]][_0xa3c1[6]][_0xa3c1[41]]=_0xa3c1[42]+_0x7ad4x1[_0xa3c1[43]]+_0xa3c1[44];_0x7ad4x3[_0xa3c1[1]][_0xa3c1[6]][_0xa3c1[45]]=_0xa3c1[46];_0x7ad4x3[_0xa3c1[1]][_0xa3c1[47]]();var _0x7ad4x7=_0x7ad4x3[_0xa3c1[48]];_0x7ad4x3[_0xa3c1[48]]=function(_0x7ad4x8,_0x7ad4x9,_0x7ad4xa){if(_0x7ad4x8==mxEvent[_0xa3c1[49]]){this[_0xa3c1[1]][_0xa3c1[47]]()};_0x7ad4x7[_0xa3c1[50]](this,arguments)};this[_0xa3c1[58]](_0x7ad4x3[_0xa3c1[51]],[_0xa3c1[52],_0xa3c1[53],_0xa3c1[54],_0xa3c1[55],_0xa3c1[56]],[[1,1],[0,0],[1,1],[1,_0xa3c1[57]],[1,_0xa3c1[57]]],[[0,0],[1,_0xa3c1[57]],[1,_0xa3c1[57]],[1,_0xa3c1[57]],[1,_0xa3c1[57]]]);_0x7ad4x3[_0xa3c1[59]]=function(_0x7ad4x6,_0x7ad4xb){var _0x7ad4xc=[_0xa3c1[55]];var _0x7ad4xd= new mxEventObject(mxEvent.DOUBLE_CLICK,_0xa3c1[17],_0x7ad4x6,_0xa3c1[60],_0x7ad4xb);this[_0xa3c1[61]](_0x7ad4xd);if(this[_0xa3c1[62]]()&&!mxEvent[_0xa3c1[63]](_0x7ad4x6)&&!_0x7ad4xd[_0xa3c1[63]]()){if(this[_0xa3c1[65]]()[_0xa3c1[64]](_0x7ad4xb)){if(_0x7ad4xc[_0xa3c1[69]](_0x7ad4xb[_0xa3c1[68]][_0xa3c1[67]][_0xa3c1[66]])>=0){this[_0xa3c1[70]](_0x7ad4xb)}}else {if(this[_0xa3c1[65]]()[_0xa3c1[71]](_0x7ad4xb)){console[_0xa3c1[72]](_0x7ad4x4);console[_0xa3c1[72]](_0x7ad4xb);_0x7ad4x4[_0xa3c1[73]]( new GeneralDialog(_0x7ad4x4,_0x7ad4xb)[_0xa3c1[1]],320,280,true,true)}};_0x7ad4xd[_0xa3c1[74]]()}};_0x7ad4x3[_0xa3c1[76]][_0xa3c1[75]]=true;_0x7ad4x3[_0xa3c1[76]][_0xa3c1[77]]=mxUtils[_0xa3c1[20]](this,function(_0x7ad4xe,_0x7ad4xb,_0x7ad4x6){this[_0xa3c1[13]][_0xa3c1[78]](_0x7ad4xe,_0x7ad4xb,_0x7ad4x6)});_0x7ad4x1[_0xa3c1[80]][_0xa3c1[35]](this[_0xa3c1[79]]);mxEvent[_0xa3c1[82]](document,mxUtils[_0xa3c1[20]](this,function(_0x7ad4x6){_0x7ad4x3[_0xa3c1[76]][_0xa3c1[81]]()}));if(mxClient[_0xa3c1[83]]){mxEvent[_0xa3c1[33]](_0x7ad4x3[_0xa3c1[1]],_0xa3c1[84],mxUtils[_0xa3c1[20]](this,function(_0x7ad4x6){_0x7ad4x3[_0xa3c1[89]][_0xa3c1[88]]()[_0xa3c1[38]](_0xa3c1[85],_0xa3c1[86]+_0x7ad4x6[_0xa3c1[87]]+_0xa3c1[44]);_0x7ad4x3[_0xa3c1[89]][_0xa3c1[91]]()[_0xa3c1[6]][_0xa3c1[90]]=_0xa3c1[7]}));mxEvent[_0xa3c1[33]](_0x7ad4x3[_0xa3c1[1]],_0xa3c1[92],mxUtils[_0xa3c1[20]](this,function(_0x7ad4x6){_0x7ad4x3[_0xa3c1[89]][_0xa3c1[88]]()[_0xa3c1[93]](_0xa3c1[85]);_0x7ad4x3[_0xa3c1[94]]=true;_0x7ad4x3[_0xa3c1[95]](_0x7ad4x6[_0xa3c1[87]]);_0x7ad4x3[_0xa3c1[89]][_0xa3c1[91]]()[_0xa3c1[6]][_0xa3c1[90]]=_0xa3c1[96]}))};var _0x7ad4xf=this[_0xa3c1[97]](_0x7ad4x1);this[_0xa3c1[98]]=function(){return _0x7ad4xf};mxEvent[_0xa3c1[33]](window,_0xa3c1[99],mxUtils[_0xa3c1[20]](this,function(){this[_0xa3c1[15]]();_0x7ad4x3[_0xa3c1[100]]();this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[101]](false);this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[80]][_0xa3c1[100]]()}));this[_0xa3c1[35]]();this[_0xa3c1[102]]()};EditorUi[_0xa3c1[10]][_0xa3c1[103]]=(mxClient[_0xa3c1[83]])?16:8;EditorUi[_0xa3c1[10]][_0xa3c1[104]]=33;EditorUi[_0xa3c1[10]][_0xa3c1[105]]=36;EditorUi[_0xa3c1[10]][_0xa3c1[106]]=28;EditorUi[_0xa3c1[10]][_0xa3c1[107]]=204;EditorUi[_0xa3c1[10]][_0xa3c1[108]]=190;EditorUi[_0xa3c1[10]][_0xa3c1[35]]=function(){this[_0xa3c1[109]]();this[_0xa3c1[110]]();var _0x7ad4x10=this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[111]);var _0x7ad4x11=function(){_0x7ad4x10[_0xa3c1[114]](!mxClipboard[_0xa3c1[113]]())};var _0x7ad4x12=mxClipboard[_0xa3c1[115]];mxClipboard[_0xa3c1[115]]=function(){_0x7ad4x12[_0xa3c1[50]](this,arguments);_0x7ad4x11()};var _0x7ad4x13=mxClipboard[_0xa3c1[116]];mxClipboard[_0xa3c1[116]]=function(){_0x7ad4x13[_0xa3c1[50]](this,arguments);_0x7ad4x11()}};EditorUi[_0xa3c1[10]][_0xa3c1[18]]=function(_0x7ad4x6){return false};EditorUi[_0xa3c1[10]][_0xa3c1[102]]=function(){try{if(window[_0xa3c1[117]]!=null&&window[_0xa3c1[117]][_0xa3c1[118]]!=null){window[_0xa3c1[117]][_0xa3c1[118]][_0xa3c1[130]](mxUtils[_0xa3c1[20]](this,function(_0x7ad4x14,_0x7ad4x15){try{var _0x7ad4x16=mxUtils[_0xa3c1[119]](_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[121]](_0x7ad4x16[_0xa3c1[120]]);this[_0xa3c1[0]][_0xa3c1[122]]=false;this[_0xa3c1[0]][_0xa3c1[124]][_0xa3c1[123]]();if(_0x7ad4x15!=null){this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x15}}catch(e){mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[126])+_0xa3c1[127]+e[_0xa3c1[128]])}}))}}catch(e){}};EditorUi[_0xa3c1[10]][_0xa3c1[131]]=function(_0x7ad4x14,_0x7ad4x15,_0x7ad4x17){try{var _0x7ad4x16=mxUtils[_0xa3c1[119]](_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[121]](_0x7ad4x16[_0xa3c1[120]]);this[_0xa3c1[0]][_0xa3c1[122]]=false;this[_0xa3c1[0]][_0xa3c1[124]][_0xa3c1[123]]();if(_0x7ad4x15!=null){this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x15};if(_0x7ad4x17!=null){this[_0xa3c1[0]][_0xa3c1[132]]=_0x7ad4x17}}catch(e){mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[126])+_0xa3c1[127]+e[_0xa3c1[128]])}};EditorUi[_0xa3c1[10]][_0xa3c1[133]]=function(_0x7ad4x18){var _0x7ad4x1=this[_0xa3c1[0]];if(_0x7ad4x18!=null){var _0x7ad4x14=mxUtils[_0xa3c1[135]](this[_0xa3c1[0]][_0xa3c1[134]]());try{if(useLocalStorage){if(localStorage[_0xa3c1[136]](_0x7ad4x18)!=null&&!mxUtils[_0xa3c1[138]](mxResources[_0xa3c1[112]](_0xa3c1[137],[_0x7ad4x18]))){return};localStorage[_0xa3c1[139]](_0x7ad4x18,_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[142]](mxResources[_0xa3c1[112]](_0xa3c1[140])+_0xa3c1[141]+ new Date())}else {console[_0xa3c1[72]](_0x7ad4x14[_0xa3c1[143]]);console[_0xa3c1[72]](MAX_REQUEST_SIZE);if(_0x7ad4x14[_0xa3c1[143]]<MAX_REQUEST_SIZE){_0x7ad4x14=encodeURIComponent(_0x7ad4x14);_0x7ad4x18=encodeURIComponent(_0x7ad4x18);var _0x7ad4x19= new XMLHttpRequest();_0x7ad4x19[_0xa3c1[102]](_0xa3c1[144],SAVE_URL,true);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[145],_0xa3c1[146]);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[148],_0xa3c1[149]+_0x7ad4x1[_0xa3c1[132]][_0xa3c1[150]]);_0x7ad4x19[_0xa3c1[151]]=function(_0x7ad4x1a){if(_0x7ad4x19[_0xa3c1[152]]===4){if(_0x7ad4x19[_0xa3c1[153]]===201){_0x7ad4x1[_0xa3c1[142]](_0xa3c1[154]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[155]]+_0xa3c1[158]);setTimeout(function(){window[_0xa3c1[102]](_0xa3c1[159]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[160]],_0xa3c1[161])},1500)}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[162]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[163]][0][_0xa3c1[128]])}}};_0x7ad4x19[_0xa3c1[164]]=function(_0x7ad4x1a){mxUtils[_0xa3c1[129]](_0x7ad4x19[_0xa3c1[165]])};_0x7ad4x19[_0xa3c1[167]](_0xa3c1[166]+_0x7ad4x18)}else {mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[168]));mxUtils[_0xa3c1[169]](_0x7ad4x14);return}};this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x18;this[_0xa3c1[0]][_0xa3c1[122]]=false}catch(e){this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[170])}}else {this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[170])}};EditorUi[_0xa3c1[10]][_0xa3c1[171]]=function(_0x7ad4x18){var _0x7ad4x1=this[_0xa3c1[0]];if(_0x7ad4x18!=null){var _0x7ad4x14=mxUtils[_0xa3c1[135]](this[_0xa3c1[0]][_0xa3c1[134]]());try{if(useLocalStorage){if(localStorage[_0xa3c1[136]](_0x7ad4x18)!=null&&!mxUtils[_0xa3c1[138]](mxResources[_0xa3c1[112]](_0xa3c1[137],[_0x7ad4x18]))){return};localStorage[_0xa3c1[139]](_0x7ad4x18,_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[142]](mxResources[_0xa3c1[112]](_0xa3c1[140])+_0xa3c1[141]+ new Date())}else {console[_0xa3c1[72]](_0x7ad4x14[_0xa3c1[143]]);console[_0xa3c1[72]](MAX_REQUEST_SIZE);if(_0x7ad4x14[_0xa3c1[143]]<MAX_REQUEST_SIZE){_0x7ad4x14=encodeURIComponent(_0x7ad4x14);var _0x7ad4x19= new XMLHttpRequest();_0x7ad4x19[_0xa3c1[102]](_0xa3c1[172],SAVE_URL+this[_0xa3c1[0]][_0xa3c1[132]][_0xa3c1[160]],true);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[145],_0xa3c1[146]);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[148],_0xa3c1[149]+_0x7ad4x1[_0xa3c1[132]][_0xa3c1[150]]);_0x7ad4x19[_0xa3c1[151]]=function(_0x7ad4x1a){if(_0x7ad4x19[_0xa3c1[152]]===4){if(_0x7ad4x19[_0xa3c1[153]]===200){_0x7ad4x1[_0xa3c1[142]](_0xa3c1[173]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[174]]+_0xa3c1[175]+_0x7ad4x19[_0xa3c1[153]]+_0xa3c1[141]+_0x7ad4x19[_0xa3c1[165]]+_0xa3c1[44])}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[176]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[163]][0][_0xa3c1[128]])}}};_0x7ad4x19[_0xa3c1[164]]=function(_0x7ad4x1a){mxUtils[_0xa3c1[129]](_0x7ad4x19[_0xa3c1[165]])};_0x7ad4x19[_0xa3c1[167]](_0xa3c1[177]+_0x7ad4x14)}else {mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[168]));mxUtils[_0xa3c1[169]](_0x7ad4x14);return}};this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x18;this[_0xa3c1[0]][_0xa3c1[122]]=false}catch(e){this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[178])}}else {this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[178])}};EditorUi[_0xa3c1[10]][_0xa3c1[179]]=function(_0x7ad4x18){var _0x7ad4x1=this[_0xa3c1[0]];console[_0xa3c1[72]](_0x7ad4x18);if(_0x7ad4x18!=null){var _0x7ad4x14=mxUtils[_0xa3c1[135]](this[_0xa3c1[0]][_0xa3c1[134]]());try{if(useLocalStorage){if(localStorage[_0xa3c1[136]](_0x7ad4x18)!=null&&!mxUtils[_0xa3c1[138]](mxResources[_0xa3c1[112]](_0xa3c1[137],[_0x7ad4x18]))){return};localStorage[_0xa3c1[139]](_0x7ad4x18,_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[142]](mxResources[_0xa3c1[112]](_0xa3c1[140])+_0xa3c1[141]+ new Date())}else {console[_0xa3c1[72]](_0x7ad4x14[_0xa3c1[143]]);console[_0xa3c1[72]](MAX_REQUEST_SIZE);if(_0x7ad4x14[_0xa3c1[143]]<MAX_REQUEST_SIZE){_0x7ad4x14=encodeURIComponent(_0x7ad4x14);_0x7ad4x18=encodeURIComponent(_0x7ad4x18);var _0x7ad4x19= new XMLHttpRequest();_0x7ad4x19[_0xa3c1[102]](_0xa3c1[144],SAVE_URL,true);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[145],_0xa3c1[146]);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[148],_0xa3c1[149]+_0x7ad4x1[_0xa3c1[132]][_0xa3c1[150]]);_0x7ad4x19[_0xa3c1[151]]=function(_0x7ad4x1a){if(_0x7ad4x19[_0xa3c1[152]]===4){if(_0x7ad4x19[_0xa3c1[153]]===201){_0x7ad4x1[_0xa3c1[142]](_0xa3c1[154]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[155]]+_0xa3c1[158]);setTimeout(function(){window[_0xa3c1[102]](_0xa3c1[180]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[160]],_0xa3c1[161])},1500)}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[181]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[163]][0][_0xa3c1[128]])}}};_0x7ad4x19[_0xa3c1[164]]=function(_0x7ad4x1a){mxUtils[_0xa3c1[129]](_0x7ad4x19[_0xa3c1[165]])};_0x7ad4x19[_0xa3c1[167]](_0xa3c1[182]+_0x7ad4x18+_0xa3c1[183]+_0x7ad4x14+_0xa3c1[184]+_0x7ad4x14)}else {mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[168]));mxUtils[_0xa3c1[169]](_0x7ad4x14);return}};this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x18;this[_0xa3c1[0]][_0xa3c1[122]]=false}catch(e){this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[178])}}else {this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[178])}};EditorUi[_0xa3c1[10]][_0xa3c1[185]]=function(_0x7ad4x1b,_0x7ad4x1c){var _0x7ad4x3=this[_0xa3c1[0]][_0xa3c1[4]];_0x7ad4x1b=null!=_0x7ad4x1b?_0x7ad4x1b:_0x7ad4x3[_0xa3c1[187]][_0xa3c1[186]]();_0x7ad4x1c=null!=_0x7ad4x1c?_0x7ad4x1c:{};for(var _0x7ad4x1d=!0,_0x7ad4x1e=_0x7ad4x3[_0xa3c1[187]][_0xa3c1[188]](_0x7ad4x1b),_0x7ad4x1a=0;_0x7ad4x1a<_0x7ad4x1e;_0x7ad4x1a++){var _0x7ad4x1f=_0x7ad4x3[_0xa3c1[187]][_0xa3c1[189]](_0x7ad4x1b,_0x7ad4x1a),_0x7ad4x20=_0x7ad4x1c;_0x7ad4x3[_0xa3c1[190]](_0x7ad4x1f)&&(_0x7ad4x20={});_0x7ad4x20=this[_0xa3c1[185]](_0x7ad4x1f,_0x7ad4x20);null!=_0x7ad4x20?_0x7ad4x3[_0xa3c1[192]](_0x7ad4x1f,_0x7ad4x20[_0xa3c1[137]](/\n/g,_0xa3c1[191])):_0x7ad4x3[_0xa3c1[192]](_0x7ad4x1f,null);_0x7ad4x1d=_0x7ad4x1d&&null==_0x7ad4x20};_0x7ad4x1e=_0xa3c1[193];if(_0x7ad4x3[_0xa3c1[187]][_0xa3c1[71]](_0x7ad4x1b)){switch(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[201]]){case _0xa3c1[55]:_0x7ad4x1e=(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[194]](_0xa3c1[55])!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[195]+_0xa3c1[196];_0x7ad4x1e+=(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[194]](_0xa3c1[197])!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[198]+_0xa3c1[196];break;case _0xa3c1[54]:_0x7ad4x1e=(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[194]](_0xa3c1[55])!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[195]+_0xa3c1[196];_0x7ad4x1e+=(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[194]](_0xa3c1[197])!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[198]+_0xa3c1[196];break;case _0xa3c1[52]:_0x7ad4x1e=this[_0xa3c1[199]](_0xa3c1[52])?_0xa3c1[193]:_0xa3c1[200]+_0xa3c1[196];_0x7ad4x1e+=(_0x7ad4x1b[_0xa3c1[67]][_0xa3c1[194]](_0xa3c1[197])!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[198]+_0xa3c1[196];break}};if(_0x7ad4x3[_0xa3c1[187]][_0xa3c1[64]](_0x7ad4x1b)){var _0x7ad4x21=_0x7ad4x3[_0xa3c1[187]][_0xa3c1[203]](_0x7ad4x1b[_0xa3c1[68]][_0xa3c1[202]]());switch(_0x7ad4x21[_0xa3c1[67]][_0xa3c1[201]]){case _0xa3c1[55]:var _0x7ad4x22=String(_0x7ad4x1b[_0xa3c1[204]]());console[_0xa3c1[72]](_0x7ad4x22);if(_0x7ad4x22===_0xa3c1[205]||_0x7ad4x22===_0xa3c1[31]){_0x7ad4x1e=_0xa3c1[206]+_0xa3c1[196]}else {var _0x7ad4x23=_0x7ad4x22[_0xa3c1[208]](_0xa3c1[207]);_0x7ad4x23[_0xa3c1[212]](function(_0x7ad4x24,_0x7ad4x25){_0x7ad4x1e=_0x7ad4x1e+((_0x7ad4x24[_0xa3c1[209]]()!==_0xa3c1[193])?_0xa3c1[193]:_0xa3c1[210]+(_0x7ad4x25+1)+_0xa3c1[211]+_0xa3c1[196])})};break}};_0x7ad4x3[_0xa3c1[213]](_0x7ad4x1b)&&!_0x7ad4x1d&&(_0x7ad4x1e+=(mxResources[_0xa3c1[112]](_0x7ad4x3[_0xa3c1[214]])||_0x7ad4x3[_0xa3c1[214]])+_0xa3c1[196]);_0x7ad4x1e=_0x7ad4x3[_0xa3c1[187]][_0xa3c1[64]](_0x7ad4x1b)?_0x7ad4x1e+(_0x7ad4x3[_0xa3c1[216]](_0x7ad4x1b,_0x7ad4x3[_0xa3c1[187]][_0xa3c1[215]](_0x7ad4x1b,!0),_0x7ad4x3[_0xa3c1[187]][_0xa3c1[215]](_0x7ad4x1b,!1))||_0xa3c1[193]):_0x7ad4x1e+(_0x7ad4x3[_0xa3c1[217]](_0x7ad4x1b)||_0xa3c1[193]);_0x7ad4x1a=_0x7ad4x3[_0xa3c1[218]](_0x7ad4x1b,_0x7ad4x1c);null!=_0x7ad4x1a&&(_0x7ad4x1e+=_0x7ad4x1a);null==_0x7ad4x3[_0xa3c1[187]][_0xa3c1[219]](_0x7ad4x1b)&&_0x7ad4x3[_0xa3c1[89]][_0xa3c1[185]]();return 0<_0x7ad4x1e[_0xa3c1[143]]||!_0x7ad4x1d?_0x7ad4x1e:null};EditorUi[_0xa3c1[10]][_0xa3c1[199]]=function(_0x7ad4x26){var _0x7ad4x3=this[_0xa3c1[0]][_0xa3c1[4]];var _0x7ad4x27=_0x7ad4x3[_0xa3c1[220]]();var _0x7ad4x28=0;_0x7ad4x27[_0xa3c1[221]][_0xa3c1[212]](function(_0x7ad4x29){if(_0x7ad4x3[_0xa3c1[187]][_0xa3c1[71]](_0x7ad4x29)&&_0x7ad4x29[_0xa3c1[67]][_0xa3c1[201]]==_0x7ad4x26){_0x7ad4x28++}});return _0x7ad4x28>1?false:true};EditorUi[_0xa3c1[10]][_0xa3c1[222]]=function(_0x7ad4x18){var _0x7ad4x1=this[_0xa3c1[0]];if(_0x7ad4x18!=null){var _0x7ad4x2a=this[_0xa3c1[185]]();if(_0x7ad4x2a===null){var _0x7ad4x14=mxUtils[_0xa3c1[135]](this[_0xa3c1[0]][_0xa3c1[134]]());try{if(useLocalStorage){if(localStorage[_0xa3c1[136]](_0x7ad4x18)!=null&&!mxUtils[_0xa3c1[138]](mxResources[_0xa3c1[112]](_0xa3c1[137],[_0x7ad4x18]))){return};localStorage[_0xa3c1[139]](_0x7ad4x18,_0x7ad4x14);this[_0xa3c1[0]][_0xa3c1[142]](mxResources[_0xa3c1[112]](_0xa3c1[140])+_0xa3c1[141]+ new Date())}else {console[_0xa3c1[72]](_0x7ad4x14[_0xa3c1[143]]);console[_0xa3c1[72]](MAX_REQUEST_SIZE);if(_0x7ad4x14[_0xa3c1[143]]<MAX_REQUEST_SIZE){_0x7ad4x14=encodeURIComponent(_0x7ad4x14);var _0x7ad4x19= new XMLHttpRequest();_0x7ad4x19[_0xa3c1[102]](_0xa3c1[172],SAVE_URL+this[_0xa3c1[0]][_0xa3c1[132]][_0xa3c1[160]],true);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[145],_0xa3c1[146]);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[148],_0xa3c1[149]+_0x7ad4x1[_0xa3c1[132]][_0xa3c1[150]]);_0x7ad4x19[_0xa3c1[151]]=function(_0x7ad4x1a){if(_0x7ad4x19[_0xa3c1[152]]===4){if(_0x7ad4x19[_0xa3c1[153]]===200){_0x7ad4x1[_0xa3c1[142]](_0xa3c1[223]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[174]]+_0xa3c1[175]+_0x7ad4x19[_0xa3c1[153]]+_0xa3c1[141]+_0x7ad4x19[_0xa3c1[165]]+_0xa3c1[44])}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[176]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[163]][0][_0xa3c1[128]])}}};_0x7ad4x19[_0xa3c1[164]]=function(_0x7ad4x1a){mxUtils[_0xa3c1[129]](_0x7ad4x19[_0xa3c1[165]])};_0x7ad4x19[_0xa3c1[167]](_0xa3c1[177]+_0x7ad4x14+_0xa3c1[184]+_0x7ad4x14)}else {mxUtils[_0xa3c1[129]](mxResources[_0xa3c1[112]](_0xa3c1[168]));mxUtils[_0xa3c1[169]](_0x7ad4x14);return}};this[_0xa3c1[0]][_0xa3c1[125]]=_0x7ad4x18;this[_0xa3c1[0]][_0xa3c1[122]]=false}catch(e){this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[224])}}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[225])}}else {this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[224])}};EditorUi[_0xa3c1[10]][_0xa3c1[226]]=function(_0x7ad4x18){var _0x7ad4x1=this[_0xa3c1[0]];if(_0x7ad4x18!=null){try{var _0x7ad4x19= new XMLHttpRequest();_0x7ad4x19[_0xa3c1[102]](_0xa3c1[144],VARIABLE_URL,true);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[145],_0xa3c1[146]);_0x7ad4x19[_0xa3c1[147]](_0xa3c1[148],_0xa3c1[149]+_0x7ad4x1[_0xa3c1[132]][_0xa3c1[150]]);_0x7ad4x19[_0xa3c1[151]]=function(_0x7ad4x1a){if(_0x7ad4x19[_0xa3c1[152]]===4){if(_0x7ad4x19[_0xa3c1[153]]===201){_0x7ad4x1[_0xa3c1[142]](_0xa3c1[227]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[228]]+_0xa3c1[175]+_0x7ad4x19[_0xa3c1[153]]+_0xa3c1[141]+_0x7ad4x19[_0xa3c1[165]]+_0xa3c1[44])}else {_0x7ad4x1[_0xa3c1[142]](_0xa3c1[181]+JSON[_0xa3c1[157]](_0x7ad4x19[_0xa3c1[156]])[_0xa3c1[163]][0][_0xa3c1[128]])}}};_0x7ad4x19[_0xa3c1[164]]=function(_0x7ad4x1a){mxUtils[_0xa3c1[129]](_0x7ad4x19[_0xa3c1[165]])};_0x7ad4x19[_0xa3c1[167]](_0xa3c1[229]+_0x7ad4x18)}catch(e){this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[230])}}else {this[_0xa3c1[0]][_0xa3c1[142]](_0xa3c1[230])}};EditorUi[_0xa3c1[10]][_0xa3c1[231]]=function(_0x7ad4x2b){var _0x7ad4x2c=(_0x7ad4x2b!=null)?_0x7ad4x2b:window[_0xa3c1[233]][_0xa3c1[232]];var _0x7ad4x2d=(_0x7ad4x2c[_0xa3c1[69]](_0xa3c1[234])>0)?1:0;for(var _0x7ad4x25 in urlParams){if(_0x7ad4x2d==0){_0x7ad4x2c+=_0xa3c1[234]}else {_0x7ad4x2c+=_0xa3c1[235]};_0x7ad4x2c+=_0x7ad4x25+_0xa3c1[236]+urlParams[_0x7ad4x25];_0x7ad4x2d++};return _0x7ad4x2c};EditorUi[_0xa3c1[10]][_0xa3c1[109]]=function(){var _0x7ad4x2e=this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[237]);var _0x7ad4x2f=this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[238]);var _0x7ad4x30=this[_0xa3c1[0]][_0xa3c1[124]];var _0x7ad4x31=function(){_0x7ad4x2e[_0xa3c1[114]](_0x7ad4x30[_0xa3c1[239]]());_0x7ad4x2f[_0xa3c1[114]](_0x7ad4x30[_0xa3c1[240]]())};_0x7ad4x30[_0xa3c1[33]](mxEvent.ADD,_0x7ad4x31);_0x7ad4x30[_0xa3c1[33]](mxEvent.UNDO,_0x7ad4x31);_0x7ad4x30[_0xa3c1[33]](mxEvent.REDO,_0x7ad4x31);_0x7ad4x30[_0xa3c1[33]](mxEvent.CLEAR,_0x7ad4x31);_0x7ad4x31()};EditorUi[_0xa3c1[10]][_0xa3c1[110]]=function(){var _0x7ad4x32=mxUtils[_0xa3c1[20]](this,function(){var _0x7ad4x3=this[_0xa3c1[0]][_0xa3c1[4]];var _0x7ad4x33=!_0x7ad4x3[_0xa3c1[241]]();var _0x7ad4x34=false;var _0x7ad4x35=false;var _0x7ad4x36=_0x7ad4x3[_0xa3c1[242]]();if(_0x7ad4x36!=null){for(var _0x7ad4x37=0;_0x7ad4x37<_0x7ad4x36[_0xa3c1[143]];_0x7ad4x37++){var _0x7ad4xb=_0x7ad4x36[_0x7ad4x37];if(_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[64]](_0x7ad4xb)){_0x7ad4x35=true};if(_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[71]](_0x7ad4xb)){_0x7ad4x34=true};if(_0x7ad4x35&&_0x7ad4x34){break}}};var _0x7ad4x38=[_0xa3c1[115],_0xa3c1[116],_0xa3c1[243],_0xa3c1[244],_0xa3c1[245],_0xa3c1[246],_0xa3c1[6],_0xa3c1[247],_0xa3c1[248],_0xa3c1[249],_0xa3c1[250],_0xa3c1[251],_0xa3c1[252],_0xa3c1[253],_0xa3c1[254]];for(var _0x7ad4x37=0;_0x7ad4x37<_0x7ad4x38[_0xa3c1[143]];_0x7ad4x37++){this[_0xa3c1[12]][_0xa3c1[112]](_0x7ad4x38[_0x7ad4x37])[_0xa3c1[114]](_0x7ad4x33)};this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[255])[_0xa3c1[114]](_0x7ad4x35);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[256])[_0xa3c1[114]](_0x7ad4x34);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[257])[_0xa3c1[114]](_0x7ad4x34);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[259])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[258]]()>1);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[261])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[258]]()==1&&_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[188]](_0x7ad4x3[_0xa3c1[260]]())>0);var _0x7ad4x39=_0x7ad4x34&&_0x7ad4x3[_0xa3c1[258]]()==1;this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[262])[_0xa3c1[114]](_0x7ad4x39&&_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[71]](_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[219]](_0x7ad4x3[_0xa3c1[260]]())));var _0x7ad4x3a=[_0xa3c1[263],_0xa3c1[264],_0xa3c1[265],_0xa3c1[266],_0xa3c1[267],_0xa3c1[268],_0xa3c1[269],_0xa3c1[270],_0xa3c1[271]];for(var _0x7ad4x37=0;_0x7ad4x37<_0x7ad4x3a[_0xa3c1[143]];_0x7ad4x37++){this[_0xa3c1[13]][_0xa3c1[112]](_0x7ad4x3a[_0x7ad4x37])[_0xa3c1[114]](_0x7ad4x33)};_0x7ad4x3a=[_0xa3c1[272],_0xa3c1[273],_0xa3c1[274]];for(var _0x7ad4x37=0;_0x7ad4x37<_0x7ad4x3a[_0xa3c1[143]];_0x7ad4x37++){this[_0xa3c1[13]][_0xa3c1[112]](_0x7ad4x3a[_0x7ad4x37])[_0xa3c1[114]](_0x7ad4x35)};this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[275])[_0xa3c1[114]](_0x7ad4x35);this[_0xa3c1[13]][_0xa3c1[112]](_0xa3c1[276])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[258]]()>1);this[_0xa3c1[13]][_0xa3c1[112]](_0xa3c1[279])[_0xa3c1[114]](_0x7ad4x34||(_0x7ad4x35&&_0x7ad4x3[_0xa3c1[278]](_0x7ad4x3[_0xa3c1[89]][_0xa3c1[277]](_0x7ad4x3[_0xa3c1[260]]()))));this[_0xa3c1[13]][_0xa3c1[112]](_0xa3c1[282])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[280]]&&((_0x7ad4x3[_0xa3c1[89]][_0xa3c1[281]]!=null)||(_0x7ad4x3[_0xa3c1[258]]()==1&&_0x7ad4x3[_0xa3c1[190]](_0x7ad4x3[_0xa3c1[260]]()))));this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[283])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[89]][_0xa3c1[281]]!=null);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[284])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[89]][_0xa3c1[281]]!=null);var _0x7ad4x3b=_0x7ad4x3[_0xa3c1[258]]()==1&&_0x7ad4x3[_0xa3c1[190]](_0x7ad4x3[_0xa3c1[260]]());this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[285])[_0xa3c1[114]](_0x7ad4x3b);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[286])[_0xa3c1[114]](_0x7ad4x3b);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[287])[_0xa3c1[114]](_0x7ad4x3b);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[288])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[258]]()==1);this[_0xa3c1[12]][_0xa3c1[112]](_0xa3c1[290])[_0xa3c1[114]](_0x7ad4x3[_0xa3c1[258]]()==1&&_0x7ad4x3[_0xa3c1[289]](_0x7ad4x3[_0xa3c1[260]]())!=null)});this[_0xa3c1[0]][_0xa3c1[4]][_0xa3c1[291]]()[_0xa3c1[33]](mxEvent.CHANGE,_0x7ad4x32);_0x7ad4x32()};EditorUi[_0xa3c1[10]][_0xa3c1[15]]=function(){var _0x7ad4x3c=mxClient[_0xa3c1[29]]&&(document[_0xa3c1[30]]==null||document[_0xa3c1[30]]==5);var _0x7ad4x3d=this[_0xa3c1[1]][_0xa3c1[292]];var _0x7ad4x3e=this[_0xa3c1[1]][_0xa3c1[293]];if(this[_0xa3c1[1]]==document[_0xa3c1[21]]){_0x7ad4x3d=document[_0xa3c1[21]][_0xa3c1[292]]||document[_0xa3c1[120]][_0xa3c1[292]];_0x7ad4x3e=(_0x7ad4x3c)?document[_0xa3c1[21]][_0xa3c1[293]]||document[_0xa3c1[120]][_0xa3c1[293]]:document[_0xa3c1[120]][_0xa3c1[293]]};var _0x7ad4x3f=Math[_0xa3c1[295]](0,Math[_0xa3c1[294]](this[_0xa3c1[107]],_0x7ad4x3d-this[_0xa3c1[103]]-20));var _0x7ad4x40=Math[_0xa3c1[295]](0,Math[_0xa3c1[294]](this[_0xa3c1[108]],_0x7ad4x3e-this[_0xa3c1[104]]-this[_0xa3c1[105]]-this[_0xa3c1[106]]-this[_0xa3c1[103]]-1));this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[296]]=this[_0xa3c1[104]]+_0xa3c1[297];this[_0xa3c1[25]][_0xa3c1[6]][_0xa3c1[298]]=this[_0xa3c1[104]]+_0xa3c1[297];this[_0xa3c1[25]][_0xa3c1[6]][_0xa3c1[296]]=this[_0xa3c1[105]]+_0xa3c1[297];var _0x7ad4x41=this[_0xa3c1[104]]+this[_0xa3c1[105]];if(!mxClient[_0xa3c1[299]]){_0x7ad4x41+=1};this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[298]]=_0x7ad4x41+_0xa3c1[297];this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[300]]=_0x7ad4x3f+_0xa3c1[297];this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[300]]=_0x7ad4x3f+_0xa3c1[297];this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[296]]=_0x7ad4x40+_0xa3c1[297];this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[301]]=this[_0xa3c1[106]]+_0xa3c1[297];this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[302]]=(_0x7ad4x3f+this[_0xa3c1[103]])+_0xa3c1[297];this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[298]]=this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[298]];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[296]]=this[_0xa3c1[106]]+_0xa3c1[297];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[303]]=_0xa3c1[304];this[_0xa3c1[305]][_0xa3c1[6]][_0xa3c1[298]]=this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[298]];this[_0xa3c1[305]][_0xa3c1[6]][_0xa3c1[301]]=this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[301]];this[_0xa3c1[305]][_0xa3c1[6]][_0xa3c1[302]]=_0x7ad4x3f+_0xa3c1[297];this[_0xa3c1[306]][_0xa3c1[6]][_0xa3c1[300]]=this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[300]];this[_0xa3c1[306]][_0xa3c1[6]][_0xa3c1[301]]=(_0x7ad4x40+this[_0xa3c1[106]])+_0xa3c1[297];if(_0x7ad4x3c){this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[300]]=_0x7ad4x3d+_0xa3c1[297];this[_0xa3c1[25]][_0xa3c1[6]][_0xa3c1[300]]=this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[300]];var _0x7ad4x42=(_0x7ad4x3e-_0x7ad4x40-this[_0xa3c1[103]]-this[_0xa3c1[106]]-this[_0xa3c1[104]]-this[_0xa3c1[105]]);this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[296]]=_0x7ad4x42+_0xa3c1[297];this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[300]]=(_0x7ad4x3d-_0x7ad4x3f-this[_0xa3c1[103]])+_0xa3c1[297];var _0x7ad4x43=(_0x7ad4x3e-this[_0xa3c1[106]]-this[_0xa3c1[104]]-this[_0xa3c1[105]]);this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[296]]=_0x7ad4x43+_0xa3c1[297];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[300]]=this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[300]];this[_0xa3c1[305]][_0xa3c1[6]][_0xa3c1[296]]=_0x7ad4x43+_0xa3c1[297]}else {this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[301]]=(_0x7ad4x40+this[_0xa3c1[103]]+this[_0xa3c1[106]])+_0xa3c1[297];this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[301]]=this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[301]]}};EditorUi[_0xa3c1[10]][_0xa3c1[14]]=function(){this[_0xa3c1[23]]=this[_0xa3c1[308]](_0xa3c1[307]);this[_0xa3c1[25]]=this[_0xa3c1[308]](_0xa3c1[309]);this[_0xa3c1[27]]=this[_0xa3c1[308]](_0xa3c1[310]);this[_0xa3c1[79]]=this[_0xa3c1[308]](_0xa3c1[311]);this[_0xa3c1[26]]=this[_0xa3c1[308]](_0xa3c1[312]);this[_0xa3c1[28]]=this[_0xa3c1[308]](_0xa3c1[313]);this[_0xa3c1[305]]=this[_0xa3c1[308]](_0xa3c1[314]);this[_0xa3c1[306]]=this[_0xa3c1[308]](_0xa3c1[315]);this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[298]]=_0xa3c1[316];this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[23]][_0xa3c1[6]][_0xa3c1[317]]=_0xa3c1[316];this[_0xa3c1[25]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[25]][_0xa3c1[6]][_0xa3c1[317]]=_0xa3c1[316];this[_0xa3c1[27]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[79]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[26]][_0xa3c1[6]][_0xa3c1[317]]=_0xa3c1[316];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[317]]=_0xa3c1[316];this[_0xa3c1[28]][_0xa3c1[6]][_0xa3c1[301]]=_0xa3c1[316];this[_0xa3c1[306]][_0xa3c1[6]][_0xa3c1[302]]=_0xa3c1[316];this[_0xa3c1[306]][_0xa3c1[6]][_0xa3c1[296]]=this[_0xa3c1[103]]+_0xa3c1[297];this[_0xa3c1[305]][_0xa3c1[6]][_0xa3c1[300]]=this[_0xa3c1[103]]+_0xa3c1[297]};EditorUi[_0xa3c1[10]][_0xa3c1[16]]=function(){this[_0xa3c1[318]]=this[_0xa3c1[13]][_0xa3c1[320]](this[_0xa3c1[308]](_0xa3c1[319]));this[_0xa3c1[23]][_0xa3c1[321]](this[_0xa3c1[318]][_0xa3c1[1]]);this[_0xa3c1[322]]=this[_0xa3c1[324]](this[_0xa3c1[308]](_0xa3c1[323]));this[_0xa3c1[25]][_0xa3c1[321]](this[_0xa3c1[322]][_0xa3c1[1]]);this[_0xa3c1[325]]=this[_0xa3c1[326]](this[_0xa3c1[27]]);this[_0xa3c1[28]][_0xa3c1[321]](this[_0xa3c1[327]]());this[_0xa3c1[328]]=this[_0xa3c1[329]]();this[_0xa3c1[0]][_0xa3c1[33]](_0xa3c1[330],mxUtils[_0xa3c1[20]](this,function(){this[_0xa3c1[332]](this[_0xa3c1[0]][_0xa3c1[331]]())}));this[_0xa3c1[332]](this[_0xa3c1[0]][_0xa3c1[331]]());this[_0xa3c1[318]][_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[328]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[23]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[25]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[27]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[79]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[26]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[28]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[305]]);this[_0xa3c1[1]][_0xa3c1[321]](this[_0xa3c1[306]]);this[_0xa3c1[333]](this[_0xa3c1[305]],true,0,mxUtils[_0xa3c1[20]](this,function(_0x7ad4x44){this[_0xa3c1[107]]=_0x7ad4x44;this[_0xa3c1[15]]();this[_0xa3c1[0]][_0xa3c1[4]][_0xa3c1[100]]();this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[101]](false);this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[80]][_0xa3c1[100]]()}));this[_0xa3c1[333]](this[_0xa3c1[306]],false,this[_0xa3c1[106]],mxUtils[_0xa3c1[20]](this,function(_0x7ad4x44){this[_0xa3c1[108]]=_0x7ad4x44;this[_0xa3c1[15]]();this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[101]](false);this[_0xa3c1[0]][_0xa3c1[80]][_0xa3c1[80]][_0xa3c1[100]]()}))};EditorUi[_0xa3c1[10]][_0xa3c1[329]]=function(){var _0x7ad4x2=document[_0xa3c1[335]](_0xa3c1[334]);_0x7ad4x2[_0xa3c1[336]]=_0xa3c1[337];return _0x7ad4x2};EditorUi[_0xa3c1[10]][_0xa3c1[329]]=function(){var _0x7ad4x2=document[_0xa3c1[335]](_0xa3c1[334]);_0x7ad4x2[_0xa3c1[336]]=_0xa3c1[337];return _0x7ad4x2};EditorUi[_0xa3c1[10]][_0xa3c1[332]]=function(_0x7ad4x44){this[_0xa3c1[328]][_0xa3c1[338]]=_0x7ad4x44};EditorUi[_0xa3c1[10]][_0xa3c1[324]]=function(_0x7ad4x2){return new Toolbar(this,_0x7ad4x2)};EditorUi[_0xa3c1[10]][_0xa3c1[326]]=function(_0x7ad4x2){return new Sidebar(this,_0x7ad4x2)};EditorUi[_0xa3c1[10]][_0xa3c1[327]]=function(){return this[_0xa3c1[308]](_0xa3c1[339])};EditorUi[_0xa3c1[10]][_0xa3c1[308]]=function(_0x7ad4x45){var _0x7ad4x46=document[_0xa3c1[335]](_0xa3c1[340]);_0x7ad4x46[_0xa3c1[336]]=_0x7ad4x45;return _0x7ad4x46};EditorUi[_0xa3c1[10]][_0xa3c1[341]]=function(_0x7ad4x45){var _0x7ad4x46=document[_0xa3c1[335]](_0x7ad4x45);return _0x7ad4x46};EditorUi[_0xa3c1[10]][_0xa3c1[342]]=function(_0x7ad4x45){var _0x7ad4x46=document[_0xa3c1[335]](_0xa3c1[343]);_0x7ad4x46[_0xa3c1[336]]=_0x7ad4x45;return _0x7ad4x46};EditorUi[_0xa3c1[10]][_0xa3c1[333]]=function(_0x7ad4x46,_0x7ad4x47,_0x7ad4x48,_0x7ad4x49){var _0x7ad4x4a=null;var _0x7ad4x4b=null;function _0x7ad4x4c(){return parseInt(((_0x7ad4x47)?_0x7ad4x46[_0xa3c1[6]][_0xa3c1[302]]:_0x7ad4x46[_0xa3c1[6]][_0xa3c1[301]]))}function _0x7ad4x4d(_0x7ad4x6){if(_0x7ad4x4a!=null){var _0x7ad4x4e= new mxPoint(mxEvent[_0xa3c1[344]](_0x7ad4x6),mxEvent[_0xa3c1[345]](_0x7ad4x6));_0x7ad4x49(Math[_0xa3c1[295]](0,_0x7ad4x4b+((_0x7ad4x47)?(_0x7ad4x4e[_0xa3c1[346]]-_0x7ad4x4a[_0xa3c1[346]]):(_0x7ad4x4a[_0xa3c1[347]]-_0x7ad4x4e[_0xa3c1[347]]))-_0x7ad4x48));mxEvent[_0xa3c1[74]](_0x7ad4x6)}}function _0x7ad4x4f(_0x7ad4x6){_0x7ad4x4d(_0x7ad4x6);_0x7ad4x4a=null;_0x7ad4x4b=null}mxEvent[_0xa3c1[82]](_0x7ad4x46,function(_0x7ad4x6){_0x7ad4x4a= new mxPoint(mxEvent[_0xa3c1[344]](_0x7ad4x6),mxEvent[_0xa3c1[345]](_0x7ad4x6));_0x7ad4x4b=_0x7ad4x4c();mxEvent[_0xa3c1[74]](_0x7ad4x6)});mxEvent[_0xa3c1[33]](document,_0xa3c1[348],_0x7ad4x4d);mxEvent[_0xa3c1[33]](document,_0xa3c1[349],_0x7ad4x4d);mxEvent[_0xa3c1[33]](document,_0xa3c1[350],_0x7ad4x4f);mxEvent[_0xa3c1[33]](document,_0xa3c1[351],_0x7ad4x4f)};EditorUi[_0xa3c1[10]][_0xa3c1[73]]=function(_0x7ad4x46,_0x7ad4x3d,_0x7ad4x3e,_0x7ad4x50,_0x7ad4x51,_0x7ad4x52){this[_0xa3c1[352]]();this[_0xa3c1[353]]= new Dialog(this,_0x7ad4x46,_0x7ad4x3d,(mxClient[_0xa3c1[354]])?_0x7ad4x3e-12:_0x7ad4x3e,_0x7ad4x50,_0x7ad4x51,_0x7ad4x52)};EditorUi[_0xa3c1[10]][_0xa3c1[352]]=function(){if(this[_0xa3c1[353]]!=null){this[_0xa3c1[353]][_0xa3c1[355]]();this[_0xa3c1[353]]=null;this[_0xa3c1[0]][_0xa3c1[4]][_0xa3c1[1]][_0xa3c1[47]]()}};EditorUi[_0xa3c1[10]][_0xa3c1[356]]=function(_0x7ad4x53){if(!_0x7ad4x53&&this[_0xa3c1[0]][_0xa3c1[125]]!=null){this[_0xa3c1[171]](this[_0xa3c1[0]][_0xa3c1[357]]())}else {this[_0xa3c1[73]]( new SaveDialog(this)[_0xa3c1[1]],300,100,true,true)}};EditorUi[_0xa3c1[10]][_0xa3c1[358]]=function(_0x7ad4x53){if(!_0x7ad4x53&&this[_0xa3c1[0]][_0xa3c1[125]]!=null){this[_0xa3c1[222]](this[_0xa3c1[0]][_0xa3c1[357]]())}else {}};EditorUi[_0xa3c1[10]][_0xa3c1[359]]=function(_0x7ad4x54,_0x7ad4x55,_0x7ad4x56){var _0x7ad4x3=this[_0xa3c1[0]][_0xa3c1[4]];var _0x7ad4xb=_0x7ad4x3[_0xa3c1[260]]();_0x7ad4x55=this[_0xa3c1[360]]!=null?this[_0xa3c1[360]]:_0x7ad4x55;_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[361]]();try{_0x7ad4x54[_0xa3c1[362]](_0x7ad4x3[_0xa3c1[220]](),_0x7ad4xb)}catch(e){throw e}finally{if(_0x7ad4x55&&navigator[_0xa3c1[364]][_0xa3c1[69]](_0xa3c1[363])<0){var _0x7ad4x57= new mxMorphing(_0x7ad4x3);_0x7ad4x57[_0xa3c1[33]](mxEvent.DONE,mxUtils[_0xa3c1[20]](this,function(){_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[365]]()}));_0x7ad4x57[_0xa3c1[366]]()}else {_0x7ad4x3[_0xa3c1[65]]()[_0xa3c1[365]]()}}};EditorUi[_0xa3c1[10]][_0xa3c1[97]]=function(_0x7ad4x1){var _0x7ad4x3=this[_0xa3c1[0]][_0xa3c1[4]];var _0x7ad4xf= new mxKeyHandler(_0x7ad4x3);_0x7ad4xf[_0xa3c1[367]]=function(_0x7ad4x6){return mxEvent[_0xa3c1[367]](_0x7ad4x6)||(mxClient[_0xa3c1[368]]&&_0x7ad4x6[_0xa3c1[369]])};function _0x7ad4x58(_0x7ad4x59){if(!_0x7ad4x3[_0xa3c1[241]]()){var _0x7ad4x48=0;var _0x7ad4x5a=0;if(_0x7ad4x59==37){_0x7ad4x48= -1}else {if(_0x7ad4x59==38){_0x7ad4x5a= -1}else {if(_0x7ad4x59==39){_0x7ad4x48=1}else {if(_0x7ad4x59==40){_0x7ad4x5a=1}}}};_0x7ad4x3[_0xa3c1[370]](_0x7ad4x3[_0xa3c1[242]](),_0x7ad4x48,_0x7ad4x5a);_0x7ad4x3[_0xa3c1[371]](_0x7ad4x3[_0xa3c1[260]]())}}var _0x7ad4x5b=mxUtils[_0xa3c1[20]](this,function(_0x7ad4x5c,_0x7ad4x5d,_0x7ad4x25,_0x7ad4x5e){var _0x7ad4x5f=this[_0xa3c1[12]][_0xa3c1[112]](_0x7ad4x25);if(_0x7ad4x5f!=null){var _0x7ad4x1f=function(){if(_0x7ad4x5f[_0xa3c1[372]]){_0x7ad4x5f[_0xa3c1[373]]()}};if(_0x7ad4x5d){if(_0x7ad4x5e){_0x7ad4xf[_0xa3c1[374]](_0x7ad4x5c,_0x7ad4x1f)}else {_0x7ad4xf[_0xa3c1[375]](_0x7ad4x5c,_0x7ad4x1f)}}else {if(_0x7ad4x5e){_0x7ad4xf[_0xa3c1[376]](_0x7ad4x5c,_0x7ad4x1f)}else {_0x7ad4xf[_0xa3c1[377]](_0x7ad4x5c,_0x7ad4x1f)}}}});var _0x7ad4x60=this;var _0x7ad4x61=_0x7ad4xf[_0xa3c1[378]];_0x7ad4xf[_0xa3c1[378]]=function(_0x7ad4x6){_0x7ad4x60[_0xa3c1[352]]();_0x7ad4x61[_0xa3c1[50]](this,arguments)};_0x7ad4xf[_0xa3c1[379]]=function(){};_0x7ad4xf[_0xa3c1[377]](8,function(){_0x7ad4x3[_0xa3c1[380]](true)});_0x7ad4xf[_0xa3c1[377]](13,function(){_0x7ad4x3[_0xa3c1[380]](false)});_0x7ad4xf[_0xa3c1[377]](33,function(){_0x7ad4x3[_0xa3c1[284]]()});_0x7ad4xf[_0xa3c1[377]](34,function(){_0x7ad4x3[_0xa3c1[285]]()});_0x7ad4xf[_0xa3c1[377]](36,function(){_0x7ad4x3[_0xa3c1[283]]()});_0x7ad4xf[_0xa3c1[377]](35,function(){_0x7ad4x3[_0xa3c1[15]]()});_0x7ad4xf[_0xa3c1[377]](37,function(){_0x7ad4x58(37)});_0x7ad4xf[_0xa3c1[377]](38,function(){_0x7ad4x58(38)});_0x7ad4xf[_0xa3c1[377]](39,function(){_0x7ad4x58(39)});_0x7ad4xf[_0xa3c1[377]](40,function(){_0x7ad4x58(40)});_0x7ad4xf[_0xa3c1[377]](113,function(){_0x7ad4x3[_0xa3c1[70]]()});_0x7ad4x5b(46,false,_0xa3c1[243]);_0x7ad4x5b(82,true,_0xa3c1[253]);_0x7ad4x5b(83,true,_0xa3c1[171]);_0x7ad4x5b(83,true,_0xa3c1[179],true);_0x7ad4x5b(107,false,_0xa3c1[381]);_0x7ad4x5b(109,false,_0xa3c1[382]);_0x7ad4x5b(65,true,_0xa3c1[383]);_0x7ad4x5b(86,true,_0xa3c1[384],true);_0x7ad4x5b(69,true,_0xa3c1[385],true);_0x7ad4x5b(69,true,_0xa3c1[386]);_0x7ad4x5b(66,true,_0xa3c1[249]);_0x7ad4x5b(70,true,_0xa3c1[248]);_0x7ad4x5b(68,true,_0xa3c1[244]);_0x7ad4x5b(90,true,_0xa3c1[237]);_0x7ad4x5b(89,true,_0xa3c1[238]);_0x7ad4x5b(88,true,_0xa3c1[115]);_0x7ad4x5b(67,true,_0xa3c1[116]);_0x7ad4x5b(81,true,_0xa3c1[387]);_0x7ad4x5b(86,true,_0xa3c1[111]);_0x7ad4x5b(71,true,_0xa3c1[259]);_0x7ad4x5b(71,true,_0xa3c1[388],true);_0x7ad4x5b(85,true,_0xa3c1[261]);_0x7ad4x5b(112,false,_0xa3c1[389]);_0x7ad4x5b(80,true,_0xa3c1[222],true);return _0x7ad4xf};EditorUi[_0xa3c1[10]][_0xa3c1[58]]=function(_0x7ad4x3,_0x7ad4x36,_0x7ad4x62,_0x7ad4x63){for(var _0x7ad4x37=0;_0x7ad4x37<_0x7ad4x36[_0xa3c1[143]];_0x7ad4x37++){_0x7ad4x3[_0xa3c1[392]]( new mxMultiplicity(true,_0x7ad4x36[_0x7ad4x37],null,null,_0x7ad4x62[_0x7ad4x37][0],_0x7ad4x62[_0x7ad4x37][1],null,mxResources[_0xa3c1[112]](_0x7ad4x36[_0x7ad4x37])+_0xa3c1[390]+_0x7ad4x62[_0x7ad4x37][0]+_0xa3c1[391],null));_0x7ad4x3[_0xa3c1[392]]( new mxMultiplicity(false,_0x7ad4x36[_0x7ad4x37],null,null,_0x7ad4x63[_0x7ad4x37][0],_0x7ad4x63[_0x7ad4x37][1],null,mxResources[_0xa3c1[112]](_0x7ad4x36[_0x7ad4x37])+_0xa3c1[390]+_0x7ad4x63[_0x7ad4x37][0]+_0xa3c1[393],null))}} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Graph.js b/public/assets/plugins/jscripty/js/Graph.js index 754ab3f..8ae7977 100644 --- a/public/assets/plugins/jscripty/js/Graph.js +++ b/public/assets/plugins/jscripty/js/Graph.js @@ -1 +1 @@ -var _0xc7ae=["\x63\x61\x6C\x6C","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x61\x70\x70\x6C\x79","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x32","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6C\x6F\x61\x64\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x63\x75\x72\x73\x6F\x72","\x73\x74\x79\x6C\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x76\x69\x65\x77","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x68\x74\x6D\x6C","\x31","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x77\x72\x61\x70","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x61\x63\x74\x69\x76\x65","\x67\x72\x61\x70\x68","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x73\x74\x61\x72\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x6E\x69\x74\x54\x6F\x75\x63\x68","\x65\x78\x74\x65\x6E\x64","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x2F\x64\x65\x66\x61\x75\x6C\x74\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x64\x65\x63\x6F\x64\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x45\x4C\x42\x4F\x57\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x72\x6F\x75\x70","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","","\x69\x73\x56\x65\x72\x74\x65\x78","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x5F","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x67\x65\x74","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x6F\x62\x6A\x65\x63\x74","\x6C\x61\x62\x65\x6C","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x55\x73\x65\x72\x4F\x62\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x6C\x65\x6E\x67\x74\x68","\x6C\x69\x6E\x6B","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x61\x72\x6B\x65\x72","\x66\x69\x72\x73\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x73\x74\x61\x74\x65","\x73\x68\x61\x70\x65","\x6E\x6F\x64\x65","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x78","\x79","\x2F\x74\x6F\x75\x63\x68\x2D\x68\x61\x6E\x64\x6C\x65\x2E\x70\x6E\x67","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x72\x63","\x2F\x74\x6F\x75\x63\x68\x2D\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x69\x6E\x69\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x49\x6D\x67","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x32\x39\x70\x78","\x68\x65\x69\x67\x68\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x74\x69\x74\x6C\x65","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x70\x61\x64\x64\x69\x6E\x67","\x32\x70\x78","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x72\x65\x64\x72\x61\x77\x54\x6F\x6F\x6C\x73","\x72\x65\x64\x72\x61\x77","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x78","\x74\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x2F\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x49\x53\x5F\x49\x45","\x49\x53\x5F\x53\x56\x47","\x64\x69\x76","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x65\x6E\x74\x65\x72","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E"];Graph=function(_0x1134x1,_0x1134x2,_0x1134x3,_0x1134x4){mxGraph[_0xc7ae[0]](this,_0x1134x1,_0x1134x2,_0x1134x3,_0x1134x4);this[_0xc7ae[1]](true);this[_0xc7ae[2]](false);this[_0xc7ae[3]](true);this[_0xc7ae[4]](!mxClient.IS_TOUCH);this[_0xc7ae[5]](false);this[_0xc7ae[6]](false);this[_0xc7ae[7]]=true;this[_0xc7ae[8]]=false;this[_0xc7ae[9]]=false;this[_0xc7ae[11]][_0xc7ae[10]]=true;this[_0xc7ae[12]](false);this[_0xc7ae[11]][_0xc7ae[13]](false);this[_0xc7ae[11]][_0xc7ae[14]]=function(){return mxConnectionHandler[_0xc7ae[16]][_0xc7ae[14]][_0xc7ae[15]](this,arguments)&&urlParams[_0xc7ae[17]]!=_0xc7ae[18]};this[_0xc7ae[19]]=_0xc7ae[20];if(_0x1134x4==null){this[_0xc7ae[21]]()};var _0x1134x5= new mxRubberband(this);this[_0xc7ae[22]]=function(){return _0x1134x5};this[_0xc7ae[29]][_0xc7ae[28]](mxEvent.PAN_START,mxUtils[_0xc7ae[27]](this,function(){this[_0xc7ae[25]][_0xc7ae[24]][_0xc7ae[23]]=_0xc7ae[26]}));this[_0xc7ae[29]][_0xc7ae[28]](mxEvent.PAN_END,mxUtils[_0xc7ae[27]](this,function(){this[_0xc7ae[25]][_0xc7ae[24]][_0xc7ae[23]]=_0xc7ae[30]}));this[_0xc7ae[31]]=function(_0x1134x6){var _0x1134x7=this[_0xc7ae[33]][_0xc7ae[32]](_0x1134x6);var _0x1134x8=(_0x1134x7!=null)?_0x1134x7[_0xc7ae[24]]:this[_0xc7ae[34]](_0x1134x6);return _0x1134x8[_0xc7ae[35]]==_0xc7ae[36]||_0x1134x8[_0xc7ae[37]]==_0xc7ae[38]};this[_0xc7ae[40]][_0xc7ae[39]]=function(_0x1134x7){var _0x1134x9=mxCellRenderer[_0xc7ae[16]][_0xc7ae[39]][_0xc7ae[15]](this,arguments);if(_0x1134x7[_0xc7ae[24]][_0xc7ae[37]]==_0xc7ae[38]&&_0x1134x7[_0xc7ae[24]][_0xc7ae[35]]!=1){_0x1134x9=mxUtils[_0xc7ae[41]](_0x1134x9,false)};return _0x1134x9};this[_0xc7ae[42]]=function(_0x1134x6){return false};this[_0xc7ae[11]][_0xc7ae[43]]=16;var _0x1134xa=this[_0xc7ae[11]][_0xc7ae[44]];this[_0xc7ae[11]][_0xc7ae[44]]=function(_0x1134xb,_0x1134x7){if(_0x1134x7==null){if(!this[_0xc7ae[46]][_0xc7ae[29]][_0xc7ae[45]]){_0x1134x5[_0xc7ae[49]](_0x1134xb[_0xc7ae[47]](),_0x1134xb[_0xc7ae[48]]());this[_0xc7ae[46]][_0xc7ae[29]][_0xc7ae[50]]=false}}else {if(tapAndHoldStartsConnection){_0x1134xa[_0xc7ae[15]](this,arguments)}else {if(this[_0xc7ae[46]][_0xc7ae[52]](_0x1134x7[_0xc7ae[51]])&&this[_0xc7ae[46]][_0xc7ae[53]]()>1){this[_0xc7ae[46]][_0xc7ae[54]](_0x1134x7[_0xc7ae[51]])}}}};if(touchStyle){this[_0xc7ae[55]]()}};mxUtils[_0xc7ae[56]](Graph,mxGraph);Graph[_0xc7ae[16]][_0xc7ae[57]]=null;Graph[_0xc7ae[16]][_0xc7ae[58]]=null;Graph[_0xc7ae[16]][_0xc7ae[21]]=function(){var _0x1134xc=mxUtils[_0xc7ae[61]](STYLE_PATH+_0xc7ae[60])[_0xc7ae[59]]();var _0x1134xd= new mxCodec(_0x1134xc[_0xc7ae[62]]);_0x1134xd[_0xc7ae[64]](_0x1134xc,this[_0xc7ae[63]]())};Graph[_0xc7ae[16]][_0xc7ae[65]]=function(_0x1134xe){if(_0x1134xe!=null){var _0x1134x7=this[_0xc7ae[33]][_0xc7ae[32]](_0x1134xe);var _0x1134x8=(_0x1134x7!=null)?_0x1134x7[_0xc7ae[24]]:this[_0xc7ae[34]](_0x1134xe);if(_0x1134x8!=null){var _0x1134xf=mxUtils[_0xc7ae[66]](_0x1134x8,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL);var _0x1134x10=(_0x1134xf==mxConstants[_0xc7ae[67]])?mxConstants[_0xc7ae[68]]:mxConstants[_0xc7ae[67]];this[_0xc7ae[69]](mxConstants.STYLE_ELBOW,_0x1134x10,[_0x1134xe])}}};Graph[_0xc7ae[16]][_0xc7ae[70]]=function(_0x1134x6){if(_0x1134x6!=null&&this[_0xc7ae[72]]()[_0xc7ae[71]](_0x1134x6)){var _0x1134x11=this[_0xc7ae[72]]()[_0xc7ae[73]]([_0x1134x6])[0];if(_0x1134x11[_0xc7ae[74]]!=null){_0x1134x11[_0xc7ae[74]][_0xc7ae[75]]=null};var _0x1134x8=_0x1134x11[_0xc7ae[76]]();_0x1134x8=mxUtils[_0xc7ae[77]](_0x1134x8,mxConstants.STYLE_ENTRY_X,null);_0x1134x8=mxUtils[_0xc7ae[77]](_0x1134x8,mxConstants.STYLE_ENTRY_Y,null);_0x1134x8=mxUtils[_0xc7ae[77]](_0x1134x8,mxConstants.STYLE_EXIT_X,null);_0x1134x8=mxUtils[_0xc7ae[77]](_0x1134x8,mxConstants.STYLE_EXIT_Y,null);_0x1134x11[_0xc7ae[77]](_0x1134x8);this[_0xc7ae[11]][_0xc7ae[78]]=function(_0x1134xb){return this[_0xc7ae[46]][_0xc7ae[33]][_0xc7ae[79]](_0x1134x11)};this[_0xc7ae[11]][_0xc7ae[80]]=function(){return this[_0xc7ae[46]][_0xc7ae[73]]([_0x1134x11])[0]}}};Graph[_0xc7ae[16]][_0xc7ae[81]]=function(_0x1134x6){return this[_0xc7ae[82]]&&this[_0xc7ae[83]](_0x1134x6)};Graph[_0xc7ae[16]][_0xc7ae[84]]=function(_0x1134x6){return this[_0xc7ae[83]](_0x1134x6)};Graph[_0xc7ae[16]][_0xc7ae[85]]=function(){var _0x1134x12=mxGraph[_0xc7ae[16]][_0xc7ae[85]][_0xc7ae[15]](this,arguments);_0x1134x12[_0xc7ae[77]](_0xc7ae[86]);return _0x1134x12};Graph[_0xc7ae[16]][_0xc7ae[87]]=function(_0x1134x6){var _0x1134x13=_0xc7ae[88];if(this[_0xc7ae[72]]()[_0xc7ae[89]](_0x1134x6)){_0x1134x13+=mxResources[_0xc7ae[93]](_0xc7ae[90]+_0x1134x6[_0xc7ae[92]][_0xc7ae[91]])||_0xc7ae[88]}else {if(this[_0xc7ae[72]]()[_0xc7ae[71]](_0x1134x6)){_0x1134x13=mxGraph[_0xc7ae[16]][_0xc7ae[87]][_0xc7ae[15]](this,arguments)}};return _0x1134x13};Graph[_0xc7ae[16]][_0xc7ae[94]]=function(_0x1134x6){if(_0x1134x6[_0xc7ae[92]]!=null&& typeof (_0x1134x6[_0xc7ae[92]])==_0xc7ae[95]){return _0x1134x6[_0xc7ae[92]][_0xc7ae[97]](_0xc7ae[96])};return mxGraph[_0xc7ae[16]][_0xc7ae[94]][_0xc7ae[15]](this,arguments)};Graph[_0xc7ae[16]][_0xc7ae[98]]=function(_0x1134x6,_0x1134x10,_0x1134x14){if(_0x1134x6[_0xc7ae[92]]!=null&& typeof (_0x1134x6[_0xc7ae[92]])==_0xc7ae[95]){var _0x1134x15=_0x1134x6[_0xc7ae[92]][_0xc7ae[99]](true);_0x1134x15[_0xc7ae[100]](_0xc7ae[96],_0x1134x10);_0x1134x10=_0x1134x15};mxGraph[_0xc7ae[16]][_0xc7ae[98]][_0xc7ae[15]](this,arguments)};Graph[_0xc7ae[16]][_0xc7ae[101]]=function(_0x1134x6,_0x1134x16){var _0x1134x10=null;if(_0x1134x6[_0xc7ae[92]]!=null&& typeof (_0x1134x6[_0xc7ae[92]])==_0xc7ae[95]){_0x1134x10=_0x1134x6[_0xc7ae[92]][_0xc7ae[99]](true)}else {var _0x1134x17=mxUtils[_0xc7ae[102]]();_0x1134x10=_0x1134x17[_0xc7ae[104]](_0xc7ae[103]);_0x1134x10[_0xc7ae[100]](_0xc7ae[96],_0x1134x6[_0xc7ae[92]])};if(_0x1134x16!=null&&_0x1134x16[_0xc7ae[105]]>0){_0x1134x10[_0xc7ae[100]](_0xc7ae[106],_0x1134x16)}else {_0x1134x10[_0xc7ae[107]](_0xc7ae[106])};this[_0xc7ae[109]][_0xc7ae[108]](_0x1134x6,_0x1134x10)};Graph[_0xc7ae[16]][_0xc7ae[110]]=function(_0x1134x6){if(_0x1134x6[_0xc7ae[92]]!=null&& typeof (_0x1134x6[_0xc7ae[92]])==_0xc7ae[95]){return _0x1134x6[_0xc7ae[92]][_0xc7ae[97]](_0xc7ae[106])};return null};Graph[_0xc7ae[16]][_0xc7ae[55]]=function(){this[_0xc7ae[11]][_0xc7ae[112]][_0xc7ae[111]]=function(){return this[_0xc7ae[46]][_0xc7ae[11]][_0xc7ae[113]]!=null};this[_0xc7ae[28]](mxEvent.START_EDITING,function(_0x1134x18,_0x1134x19){this[_0xc7ae[29]][_0xc7ae[114]]()});var _0x1134x1a=false;var _0x1134x1b=null;this[_0xc7ae[115]]=function(_0x1134xb){mxGraph[_0xc7ae[16]][_0xc7ae[115]][_0xc7ae[15]](this,arguments);if(_0x1134xb[_0xc7ae[32]]()==null){var _0x1134x6=this[_0xc7ae[118]](_0x1134xb[_0xc7ae[116]],_0x1134xb[_0xc7ae[117]]);if(this[_0xc7ae[72]]()[_0xc7ae[71]](_0x1134x6)){_0x1134xb[_0xc7ae[119]]=this[_0xc7ae[33]][_0xc7ae[32]](_0x1134x6);if(_0x1134xb[_0xc7ae[119]]!=null&&_0x1134xb[_0xc7ae[119]][_0xc7ae[120]]!=null){this[_0xc7ae[25]][_0xc7ae[24]][_0xc7ae[23]]=_0x1134xb[_0xc7ae[119]][_0xc7ae[120]][_0xc7ae[121]][_0xc7ae[24]][_0xc7ae[23]]}}};if(_0x1134xb[_0xc7ae[32]]()==null){this[_0xc7ae[25]][_0xc7ae[24]][_0xc7ae[23]]=_0xc7ae[30]}};this[_0xc7ae[122]]=function(_0x1134x1c,_0x1134xb,_0x1134x18){if(_0x1134x1c==mxEvent[_0xc7ae[123]]){if(!this[_0xc7ae[29]][_0xc7ae[124]]()){_0x1134x1b=_0x1134xb[_0xc7ae[125]]();_0x1134x1a=(_0x1134x1b!=null)?this[_0xc7ae[52]](_0x1134x1b):this[_0xc7ae[126]]()}else {_0x1134x1a=false;_0x1134x1b=null}}else {if(_0x1134x1c==mxEvent[_0xc7ae[127]]){if(_0x1134x1a&&!this[_0xc7ae[128]]()){if(!this[_0xc7ae[29]][_0xc7ae[124]]()){var _0x1134x1d=mxEvent[_0xc7ae[130]](_0x1134xb[_0xc7ae[129]]());var _0x1134x1e=mxEvent[_0xc7ae[131]](_0x1134xb[_0xc7ae[129]]());this[_0xc7ae[29]][_0xc7ae[132]](_0x1134x1d+16,_0x1134x1e,_0x1134x1b,_0x1134xb[_0xc7ae[129]]())};_0x1134x1a=false;_0x1134x1b=null;_0x1134xb[_0xc7ae[133]]();return};_0x1134x1a=false;_0x1134x1b=null}};mxGraph[_0xc7ae[16]][_0xc7ae[122]][_0xc7ae[15]](this,arguments);if(_0x1134x1c==mxEvent[_0xc7ae[134]]&&_0x1134xb[_0xc7ae[135]]()){_0x1134x1a=false;_0x1134x1b=null}}};(function(){mxVertexHandler[_0xc7ae[16]][_0xc7ae[136]]=true;mxText[_0xc7ae[16]][_0xc7ae[137]]=5;mxText[_0xc7ae[16]][_0xc7ae[138]]=1;if(touchStyle){mxConstants[_0xc7ae[139]]=16;mxConstants[_0xc7ae[140]]=7;if(mxClient[_0xc7ae[141]]){mxVertexHandler[_0xc7ae[16]][_0xc7ae[142]]=4;mxEdgeHandler[_0xc7ae[16]][_0xc7ae[142]]=6;Graph[_0xc7ae[16]][_0xc7ae[142]]=14;Graph[_0xc7ae[16]][_0xc7ae[143]]=20;mxPanningHandler[_0xc7ae[16]][_0xc7ae[144]]=false;mxPanningHandler[_0xc7ae[16]][_0xc7ae[145]]=true;mxPanningHandler[_0xc7ae[16]][_0xc7ae[146]]=function(_0x1134xb){var _0x1134x19=_0x1134xb[_0xc7ae[129]]();return (this[_0xc7ae[145]]&&(this[_0xc7ae[147]]||_0x1134xb[_0xc7ae[32]]()==null))||(mxEvent[_0xc7ae[148]](_0x1134x19)&&mxEvent[_0xc7ae[149]](_0x1134x19))||(this[_0xc7ae[150]]&&mxEvent[_0xc7ae[151]](_0x1134x19))}};var _0x1134x1f=mxGraphHandler[_0xc7ae[16]][_0xc7ae[152]];mxGraphHandler[_0xc7ae[16]][_0xc7ae[152]]=function(_0x1134x18,_0x1134xb){_0x1134x1f[_0xc7ae[15]](this,arguments);if(this[_0xc7ae[46]][_0xc7ae[52]](_0x1134xb[_0xc7ae[125]]())&&this[_0xc7ae[46]][_0xc7ae[53]]()>1){this[_0xc7ae[153]]=false}};Graph[_0xc7ae[16]][_0xc7ae[154]]=function(_0x1134x1){this[_0xc7ae[155]]= new mxTooltipHandler(this);this[_0xc7ae[155]][_0xc7ae[156]](false);this[_0xc7ae[157]]= new mxSelectionCellsHandler(this);this[_0xc7ae[29]]= new mxPanningHandler(this);this[_0xc7ae[29]][_0xc7ae[158]]=false;this[_0xc7ae[11]]= new mxConnectionHandler(this);this[_0xc7ae[11]][_0xc7ae[156]](false);this[_0xc7ae[159]]= new mxGraphHandler(this)};mxConnectionHandler[_0xc7ae[16]][_0xc7ae[160]]=function(_0x1134xe,_0x1134x20){if(touchStyle&&_0x1134x20!=null){this[_0xc7ae[46]][_0xc7ae[161]](_0x1134x20)}else {this[_0xc7ae[46]][_0xc7ae[161]](_0x1134xe)}};var _0x1134x21=mxGraph[_0xc7ae[16]][_0xc7ae[162]];Graph[_0xc7ae[16]][_0xc7ae[162]]=function(_0x1134x19,_0x1134x6){if(_0x1134x6==null){var _0x1134x22=mxUtils[_0xc7ae[163]](this[_0xc7ae[25]],mxEvent[_0xc7ae[130]](_0x1134x19),mxEvent[_0xc7ae[131]](_0x1134x19));_0x1134x6=this[_0xc7ae[118]](_0x1134x22[_0xc7ae[164]],_0x1134x22[_0xc7ae[165]])};_0x1134x21[_0xc7ae[0]](this,_0x1134x19,_0x1134x6)};var _0x1134x23= new mxImage(IMAGE_PATH+_0xc7ae[166],16,16);mxVertexHandler[_0xc7ae[16]][_0xc7ae[167]]=_0x1134x23;mxEdgeHandler[_0xc7ae[16]][_0xc7ae[167]]=_0x1134x23;mxOutline[_0xc7ae[16]][_0xc7ae[168]]=_0x1134x23; new Image()[_0xc7ae[169]]=_0x1134x23[_0xc7ae[169]];var _0x1134x24=IMAGE_PATH+_0xc7ae[170];var _0x1134x25=mxVertexHandler[_0xc7ae[16]][_0xc7ae[171]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[171]]=function(){_0x1134x25[_0xc7ae[15]](this,arguments);if(showConnectorImg&&this[_0xc7ae[46]][_0xc7ae[11]][_0xc7ae[111]]()&&this[_0xc7ae[46]][_0xc7ae[172]](this[_0xc7ae[119]][_0xc7ae[51]])&&!this[_0xc7ae[46]][_0xc7ae[84]](this[_0xc7ae[119]][_0xc7ae[51]])&&this[_0xc7ae[46]][_0xc7ae[53]]()==1){this[_0xc7ae[173]]=mxUtils[_0xc7ae[174]](_0x1134x24);this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[23]]=_0xc7ae[26];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[175]]=_0xc7ae[176];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[177]]=_0xc7ae[176];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[178]]=_0xc7ae[179];if(!mxClient[_0xc7ae[141]]){this[_0xc7ae[173]][_0xc7ae[100]](_0xc7ae[180],mxResources[_0xc7ae[93]](_0xc7ae[17]));mxEvent[_0xc7ae[181]](this[_0xc7ae[173]],this[_0xc7ae[46]],this[_0xc7ae[119]])};this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[182]]=_0xc7ae[183];mxEvent[_0xc7ae[185]](this[_0xc7ae[173]],mxUtils[_0xc7ae[27]](this,function(_0x1134x19){this[_0xc7ae[46]][_0xc7ae[29]][_0xc7ae[114]]();var _0x1134x22=mxUtils[_0xc7ae[163]](this[_0xc7ae[46]][_0xc7ae[25]],mxEvent[_0xc7ae[130]](_0x1134x19),mxEvent[_0xc7ae[131]](_0x1134x19));this[_0xc7ae[46]][_0xc7ae[11]][_0xc7ae[49]](this[_0xc7ae[119]],_0x1134x22[_0xc7ae[164]],_0x1134x22[_0xc7ae[165]]);this[_0xc7ae[46]][_0xc7ae[184]]=true;mxEvent[_0xc7ae[133]](_0x1134x19)}));this[_0xc7ae[46]][_0xc7ae[25]][_0xc7ae[186]](this[_0xc7ae[173]])};this[_0xc7ae[187]]()};var _0x1134x26=mxVertexHandler[_0xc7ae[16]][_0xc7ae[188]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[188]]=function(){_0x1134x26[_0xc7ae[15]](this);this[_0xc7ae[187]]()};mxVertexHandler[_0xc7ae[16]][_0xc7ae[187]]=function(){if(this[_0xc7ae[119]]!=null&&this[_0xc7ae[173]]!=null){if(mxVertexHandler[_0xc7ae[16]][_0xc7ae[189]]){this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[190]]=(this[_0xc7ae[119]][_0xc7ae[164]]+this[_0xc7ae[119]][_0xc7ae[175]]-this[_0xc7ae[173]][_0xc7ae[191]]/2)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[193]]=(this[_0xc7ae[119]][_0xc7ae[165]]-this[_0xc7ae[173]][_0xc7ae[194]]/2)+_0xc7ae[192]}else {this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[190]]=(this[_0xc7ae[119]][_0xc7ae[164]]+this[_0xc7ae[119]][_0xc7ae[175]]+mxConstants[_0xc7ae[139]]/2+4)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[193]]=(this[_0xc7ae[119]][_0xc7ae[165]]+(this[_0xc7ae[119]][_0xc7ae[177]]-this[_0xc7ae[173]][_0xc7ae[194]])/2)+_0xc7ae[192]}}};var _0x1134x27=mxVertexHandler[_0xc7ae[16]][_0xc7ae[195]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[195]]=function(_0x1134x18,_0x1134xb){_0x1134x27[_0xc7ae[15]](this,arguments);if(this[_0xc7ae[173]]!=null){this[_0xc7ae[173]][_0xc7ae[197]][_0xc7ae[196]](this[_0xc7ae[173]]);this[_0xc7ae[173]]=null}}; new Image()[_0xc7ae[169]]=_0x1134x24}else {var _0x1134x28= new mxImage(IMAGE_PATH+_0xc7ae[198],15,15);mxConnectionHandler[_0xc7ae[16]][_0xc7ae[199]]=_0x1134x28; new Image()[_0xc7ae[169]]=_0x1134x28[_0xc7ae[169]];if(urlParams[_0xc7ae[17]]==_0xc7ae[18]){var _0x1134x28= new mxImage(IMAGE_PATH+_0xc7ae[198],15,15);var _0x1134x25=mxVertexHandler[_0xc7ae[16]][_0xc7ae[171]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[171]]=function(){_0x1134x25[_0xc7ae[15]](this,arguments);if(showConnectorImg&&this[_0xc7ae[46]][_0xc7ae[11]][_0xc7ae[111]]()&&this[_0xc7ae[46]][_0xc7ae[172]](this[_0xc7ae[119]][_0xc7ae[51]])&&!this[_0xc7ae[46]][_0xc7ae[84]](this[_0xc7ae[119]][_0xc7ae[51]])&&this[_0xc7ae[46]][_0xc7ae[53]]()==1){if(mxClient[_0xc7ae[200]]&&!mxClient[_0xc7ae[201]]){this[_0xc7ae[173]]=document[_0xc7ae[104]](_0xc7ae[202]);this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[203]]=_0xc7ae[204]+_0x1134x28[_0xc7ae[169]]+_0xc7ae[205];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[206]]=_0xc7ae[207];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[208]]=_0xc7ae[209];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[175]]=(_0x1134x28[_0xc7ae[175]]+4)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[177]]=(_0x1134x28[_0xc7ae[177]]+4)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[210]]=(mxClient[_0xc7ae[211]])?_0xc7ae[212]:_0xc7ae[213]}else {this[_0xc7ae[173]]=mxUtils[_0xc7ae[174]](_0x1134x28[_0xc7ae[169]]);this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[175]]=_0x1134x28[_0xc7ae[175]]+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[177]]=_0x1134x28[_0xc7ae[177]]+_0xc7ae[192]};this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[23]]=_0xc7ae[26];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[178]]=_0xc7ae[179];this[_0xc7ae[173]][_0xc7ae[100]](_0xc7ae[180],mxResources[_0xc7ae[93]](_0xc7ae[17]));mxEvent[_0xc7ae[181]](this[_0xc7ae[173]],this[_0xc7ae[46]],this[_0xc7ae[119]]);this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[182]]=_0xc7ae[183];mxEvent[_0xc7ae[28]](this[_0xc7ae[173]],_0xc7ae[214],mxUtils[_0xc7ae[27]](this,function(_0x1134x19){this[_0xc7ae[46]][_0xc7ae[29]][_0xc7ae[114]]();var _0x1134x22=mxUtils[_0xc7ae[163]](this[_0xc7ae[46]][_0xc7ae[25]],mxEvent[_0xc7ae[130]](_0x1134x19),mxEvent[_0xc7ae[131]](_0x1134x19));this[_0xc7ae[46]][_0xc7ae[11]][_0xc7ae[49]](this[_0xc7ae[119]],_0x1134x22[_0xc7ae[164]],_0x1134x22[_0xc7ae[165]]);this[_0xc7ae[46]][_0xc7ae[184]]=true;mxEvent[_0xc7ae[133]](_0x1134x19)}));this[_0xc7ae[46]][_0xc7ae[25]][_0xc7ae[186]](this[_0xc7ae[173]])};this[_0xc7ae[187]]()};var _0x1134x26=mxVertexHandler[_0xc7ae[16]][_0xc7ae[188]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[188]]=function(){_0x1134x26[_0xc7ae[15]](this);this[_0xc7ae[187]]()};mxVertexHandler[_0xc7ae[16]][_0xc7ae[187]]=function(){if(this[_0xc7ae[119]]!=null&&this[_0xc7ae[173]]!=null){if(mxVertexHandler[_0xc7ae[16]][_0xc7ae[189]]){this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[190]]=(this[_0xc7ae[119]][_0xc7ae[164]]+this[_0xc7ae[119]][_0xc7ae[175]]-this[_0xc7ae[173]][_0xc7ae[191]]/2)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[193]]=(this[_0xc7ae[119]][_0xc7ae[165]]-this[_0xc7ae[173]][_0xc7ae[194]]/2)+_0xc7ae[192]}else {this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[190]]=(this[_0xc7ae[119]][_0xc7ae[164]]+this[_0xc7ae[119]][_0xc7ae[175]]+mxConstants[_0xc7ae[139]]/2+2)+_0xc7ae[192];this[_0xc7ae[173]][_0xc7ae[24]][_0xc7ae[193]]=(this[_0xc7ae[119]][_0xc7ae[165]]+(this[_0xc7ae[119]][_0xc7ae[177]]-this[_0xc7ae[173]][_0xc7ae[194]])/2)+_0xc7ae[192]}}};var _0x1134x27=mxVertexHandler[_0xc7ae[16]][_0xc7ae[195]];mxVertexHandler[_0xc7ae[16]][_0xc7ae[195]]=function(_0x1134x18,_0x1134xb){_0x1134x27[_0xc7ae[15]](this,arguments);if(this[_0xc7ae[173]]!=null){this[_0xc7ae[173]][_0xc7ae[197]][_0xc7ae[196]](this[_0xc7ae[173]]);this[_0xc7ae[173]]=null}}}}})() \ No newline at end of file +var _0xa336=["\x63\x61\x6C\x6C","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x61\x70\x70\x6C\x79","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x32","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6C\x6F\x61\x64\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x63\x75\x72\x73\x6F\x72","\x73\x74\x79\x6C\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x76\x69\x65\x77","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x68\x74\x6D\x6C","\x31","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x77\x72\x61\x70","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x61\x63\x74\x69\x76\x65","\x67\x72\x61\x70\x68","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x73\x74\x61\x72\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x6E\x69\x74\x54\x6F\x75\x63\x68","\x65\x78\x74\x65\x6E\x64","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x2F\x64\x65\x66\x61\x75\x6C\x74\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x64\x65\x63\x6F\x64\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x45\x4C\x42\x4F\x57\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x72\x6F\x75\x70","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","","\x69\x73\x56\x65\x72\x74\x65\x78","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x5F","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x67\x65\x74","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x6F\x62\x6A\x65\x63\x74","\x6C\x61\x62\x65\x6C","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x55\x73\x65\x72\x4F\x62\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x6C\x65\x6E\x67\x74\x68","\x6C\x69\x6E\x6B","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x61\x72\x6B\x65\x72","\x66\x69\x72\x73\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x73\x74\x61\x74\x65","\x73\x68\x61\x70\x65","\x6E\x6F\x64\x65","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x78","\x79","\x2F\x74\x6F\x75\x63\x68\x2D\x68\x61\x6E\x64\x6C\x65\x2E\x70\x6E\x67","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x72\x63","\x2F\x74\x6F\x75\x63\x68\x2D\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x69\x6E\x69\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x49\x6D\x67","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x32\x39\x70\x78","\x68\x65\x69\x67\x68\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x74\x69\x74\x6C\x65","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x70\x61\x64\x64\x69\x6E\x67","\x32\x70\x78","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x72\x65\x64\x72\x61\x77\x54\x6F\x6F\x6C\x73","\x72\x65\x64\x72\x61\x77","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x78","\x74\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x2F\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x49\x53\x5F\x49\x45","\x49\x53\x5F\x53\x56\x47","\x64\x69\x76","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x65\x6E\x74\x65\x72","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E"];Graph=function(_0x7630x1,_0x7630x2,_0x7630x3,_0x7630x4){mxGraph[_0xa336[0]](this,_0x7630x1,_0x7630x2,_0x7630x3,_0x7630x4);this[_0xa336[1]](true);this[_0xa336[2]](false);this[_0xa336[3]](true);this[_0xa336[4]](!mxClient.IS_TOUCH);this[_0xa336[5]](false);this[_0xa336[6]](false);this[_0xa336[7]]=true;this[_0xa336[8]]=false;this[_0xa336[9]]=false;this[_0xa336[11]][_0xa336[10]]=true;this[_0xa336[12]](false);this[_0xa336[11]][_0xa336[13]](false);this[_0xa336[11]][_0xa336[14]]=function(){return mxConnectionHandler[_0xa336[16]][_0xa336[14]][_0xa336[15]](this,arguments)&&urlParams[_0xa336[17]]!=_0xa336[18]};this[_0xa336[19]]=_0xa336[20];if(_0x7630x4==null){this[_0xa336[21]]()};var _0x7630x5= new mxRubberband(this);this[_0xa336[22]]=function(){return _0x7630x5};this[_0xa336[29]][_0xa336[28]](mxEvent.PAN_START,mxUtils[_0xa336[27]](this,function(){this[_0xa336[25]][_0xa336[24]][_0xa336[23]]=_0xa336[26]}));this[_0xa336[29]][_0xa336[28]](mxEvent.PAN_END,mxUtils[_0xa336[27]](this,function(){this[_0xa336[25]][_0xa336[24]][_0xa336[23]]=_0xa336[30]}));this[_0xa336[31]]=function(_0x7630x6){var _0x7630x7=this[_0xa336[33]][_0xa336[32]](_0x7630x6);var _0x7630x8=(_0x7630x7!=null)?_0x7630x7[_0xa336[24]]:this[_0xa336[34]](_0x7630x6);return _0x7630x8[_0xa336[35]]==_0xa336[36]||_0x7630x8[_0xa336[37]]==_0xa336[38]};this[_0xa336[40]][_0xa336[39]]=function(_0x7630x7){var _0x7630x9=mxCellRenderer[_0xa336[16]][_0xa336[39]][_0xa336[15]](this,arguments);if(_0x7630x7[_0xa336[24]][_0xa336[37]]==_0xa336[38]&&_0x7630x7[_0xa336[24]][_0xa336[35]]!=1){_0x7630x9=mxUtils[_0xa336[41]](_0x7630x9,false)};return _0x7630x9};this[_0xa336[42]]=function(_0x7630x6){return false};this[_0xa336[11]][_0xa336[43]]=16;var _0x7630xa=this[_0xa336[11]][_0xa336[44]];this[_0xa336[11]][_0xa336[44]]=function(_0x7630xb,_0x7630x7){if(_0x7630x7==null){if(!this[_0xa336[46]][_0xa336[29]][_0xa336[45]]){_0x7630x5[_0xa336[49]](_0x7630xb[_0xa336[47]](),_0x7630xb[_0xa336[48]]());this[_0xa336[46]][_0xa336[29]][_0xa336[50]]=false}}else {if(tapAndHoldStartsConnection){_0x7630xa[_0xa336[15]](this,arguments)}else {if(this[_0xa336[46]][_0xa336[52]](_0x7630x7[_0xa336[51]])&&this[_0xa336[46]][_0xa336[53]]()>1){this[_0xa336[46]][_0xa336[54]](_0x7630x7[_0xa336[51]])}}}};if(touchStyle){this[_0xa336[55]]()}};mxUtils[_0xa336[56]](Graph,mxGraph);Graph[_0xa336[16]][_0xa336[57]]=null;Graph[_0xa336[16]][_0xa336[58]]=null;Graph[_0xa336[16]][_0xa336[21]]=function(){var _0x7630xc=mxUtils[_0xa336[61]](STYLE_PATH+_0xa336[60])[_0xa336[59]]();var _0x7630xd= new mxCodec(_0x7630xc[_0xa336[62]]);_0x7630xd[_0xa336[64]](_0x7630xc,this[_0xa336[63]]())};Graph[_0xa336[16]][_0xa336[65]]=function(_0x7630xe){if(_0x7630xe!=null){var _0x7630x7=this[_0xa336[33]][_0xa336[32]](_0x7630xe);var _0x7630x8=(_0x7630x7!=null)?_0x7630x7[_0xa336[24]]:this[_0xa336[34]](_0x7630xe);if(_0x7630x8!=null){var _0x7630xf=mxUtils[_0xa336[66]](_0x7630x8,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL);var _0x7630x10=(_0x7630xf==mxConstants[_0xa336[67]])?mxConstants[_0xa336[68]]:mxConstants[_0xa336[67]];this[_0xa336[69]](mxConstants.STYLE_ELBOW,_0x7630x10,[_0x7630xe])}}};Graph[_0xa336[16]][_0xa336[70]]=function(_0x7630x6){if(_0x7630x6!=null&&this[_0xa336[72]]()[_0xa336[71]](_0x7630x6)){var _0x7630x11=this[_0xa336[72]]()[_0xa336[73]]([_0x7630x6])[0];if(_0x7630x11[_0xa336[74]]!=null){_0x7630x11[_0xa336[74]][_0xa336[75]]=null};var _0x7630x8=_0x7630x11[_0xa336[76]]();_0x7630x8=mxUtils[_0xa336[77]](_0x7630x8,mxConstants.STYLE_ENTRY_X,null);_0x7630x8=mxUtils[_0xa336[77]](_0x7630x8,mxConstants.STYLE_ENTRY_Y,null);_0x7630x8=mxUtils[_0xa336[77]](_0x7630x8,mxConstants.STYLE_EXIT_X,null);_0x7630x8=mxUtils[_0xa336[77]](_0x7630x8,mxConstants.STYLE_EXIT_Y,null);_0x7630x11[_0xa336[77]](_0x7630x8);this[_0xa336[11]][_0xa336[78]]=function(_0x7630xb){return this[_0xa336[46]][_0xa336[33]][_0xa336[79]](_0x7630x11)};this[_0xa336[11]][_0xa336[80]]=function(){return this[_0xa336[46]][_0xa336[73]]([_0x7630x11])[0]}}};Graph[_0xa336[16]][_0xa336[81]]=function(_0x7630x6){return this[_0xa336[82]]&&this[_0xa336[83]](_0x7630x6)};Graph[_0xa336[16]][_0xa336[84]]=function(_0x7630x6){return this[_0xa336[83]](_0x7630x6)};Graph[_0xa336[16]][_0xa336[85]]=function(){var _0x7630x12=mxGraph[_0xa336[16]][_0xa336[85]][_0xa336[15]](this,arguments);_0x7630x12[_0xa336[77]](_0xa336[86]);return _0x7630x12};Graph[_0xa336[16]][_0xa336[87]]=function(_0x7630x6){var _0x7630x13=_0xa336[88];if(this[_0xa336[72]]()[_0xa336[89]](_0x7630x6)){_0x7630x13+=mxResources[_0xa336[93]](_0xa336[90]+_0x7630x6[_0xa336[92]][_0xa336[91]])||_0xa336[88]}else {if(this[_0xa336[72]]()[_0xa336[71]](_0x7630x6)){_0x7630x13=mxGraph[_0xa336[16]][_0xa336[87]][_0xa336[15]](this,arguments)}};return _0x7630x13};Graph[_0xa336[16]][_0xa336[94]]=function(_0x7630x6){if(_0x7630x6[_0xa336[92]]!=null&& typeof (_0x7630x6[_0xa336[92]])==_0xa336[95]){return _0x7630x6[_0xa336[92]][_0xa336[97]](_0xa336[96])};return mxGraph[_0xa336[16]][_0xa336[94]][_0xa336[15]](this,arguments)};Graph[_0xa336[16]][_0xa336[98]]=function(_0x7630x6,_0x7630x10,_0x7630x14){if(_0x7630x6[_0xa336[92]]!=null&& typeof (_0x7630x6[_0xa336[92]])==_0xa336[95]){var _0x7630x15=_0x7630x6[_0xa336[92]][_0xa336[99]](true);_0x7630x15[_0xa336[100]](_0xa336[96],_0x7630x10);_0x7630x10=_0x7630x15};mxGraph[_0xa336[16]][_0xa336[98]][_0xa336[15]](this,arguments)};Graph[_0xa336[16]][_0xa336[101]]=function(_0x7630x6,_0x7630x16){var _0x7630x10=null;if(_0x7630x6[_0xa336[92]]!=null&& typeof (_0x7630x6[_0xa336[92]])==_0xa336[95]){_0x7630x10=_0x7630x6[_0xa336[92]][_0xa336[99]](true)}else {var _0x7630x17=mxUtils[_0xa336[102]]();_0x7630x10=_0x7630x17[_0xa336[104]](_0xa336[103]);_0x7630x10[_0xa336[100]](_0xa336[96],_0x7630x6[_0xa336[92]])};if(_0x7630x16!=null&&_0x7630x16[_0xa336[105]]>0){_0x7630x10[_0xa336[100]](_0xa336[106],_0x7630x16)}else {_0x7630x10[_0xa336[107]](_0xa336[106])};this[_0xa336[109]][_0xa336[108]](_0x7630x6,_0x7630x10)};Graph[_0xa336[16]][_0xa336[110]]=function(_0x7630x6){if(_0x7630x6[_0xa336[92]]!=null&& typeof (_0x7630x6[_0xa336[92]])==_0xa336[95]){return _0x7630x6[_0xa336[92]][_0xa336[97]](_0xa336[106])};return null};Graph[_0xa336[16]][_0xa336[55]]=function(){this[_0xa336[11]][_0xa336[112]][_0xa336[111]]=function(){return this[_0xa336[46]][_0xa336[11]][_0xa336[113]]!=null};this[_0xa336[28]](mxEvent.START_EDITING,function(_0x7630x18,_0x7630x19){this[_0xa336[29]][_0xa336[114]]()});var _0x7630x1a=false;var _0x7630x1b=null;this[_0xa336[115]]=function(_0x7630xb){mxGraph[_0xa336[16]][_0xa336[115]][_0xa336[15]](this,arguments);if(_0x7630xb[_0xa336[32]]()==null){var _0x7630x6=this[_0xa336[118]](_0x7630xb[_0xa336[116]],_0x7630xb[_0xa336[117]]);if(this[_0xa336[72]]()[_0xa336[71]](_0x7630x6)){_0x7630xb[_0xa336[119]]=this[_0xa336[33]][_0xa336[32]](_0x7630x6);if(_0x7630xb[_0xa336[119]]!=null&&_0x7630xb[_0xa336[119]][_0xa336[120]]!=null){this[_0xa336[25]][_0xa336[24]][_0xa336[23]]=_0x7630xb[_0xa336[119]][_0xa336[120]][_0xa336[121]][_0xa336[24]][_0xa336[23]]}}};if(_0x7630xb[_0xa336[32]]()==null){this[_0xa336[25]][_0xa336[24]][_0xa336[23]]=_0xa336[30]}};this[_0xa336[122]]=function(_0x7630x1c,_0x7630xb,_0x7630x18){if(_0x7630x1c==mxEvent[_0xa336[123]]){if(!this[_0xa336[29]][_0xa336[124]]()){_0x7630x1b=_0x7630xb[_0xa336[125]]();_0x7630x1a=(_0x7630x1b!=null)?this[_0xa336[52]](_0x7630x1b):this[_0xa336[126]]()}else {_0x7630x1a=false;_0x7630x1b=null}}else {if(_0x7630x1c==mxEvent[_0xa336[127]]){if(_0x7630x1a&&!this[_0xa336[128]]()){if(!this[_0xa336[29]][_0xa336[124]]()){var _0x7630x1d=mxEvent[_0xa336[130]](_0x7630xb[_0xa336[129]]());var _0x7630x1e=mxEvent[_0xa336[131]](_0x7630xb[_0xa336[129]]());this[_0xa336[29]][_0xa336[132]](_0x7630x1d+16,_0x7630x1e,_0x7630x1b,_0x7630xb[_0xa336[129]]())};_0x7630x1a=false;_0x7630x1b=null;_0x7630xb[_0xa336[133]]();return};_0x7630x1a=false;_0x7630x1b=null}};mxGraph[_0xa336[16]][_0xa336[122]][_0xa336[15]](this,arguments);if(_0x7630x1c==mxEvent[_0xa336[134]]&&_0x7630xb[_0xa336[135]]()){_0x7630x1a=false;_0x7630x1b=null}}};(function(){mxVertexHandler[_0xa336[16]][_0xa336[136]]=true;mxText[_0xa336[16]][_0xa336[137]]=5;mxText[_0xa336[16]][_0xa336[138]]=1;if(touchStyle){mxConstants[_0xa336[139]]=16;mxConstants[_0xa336[140]]=7;if(mxClient[_0xa336[141]]){mxVertexHandler[_0xa336[16]][_0xa336[142]]=4;mxEdgeHandler[_0xa336[16]][_0xa336[142]]=6;Graph[_0xa336[16]][_0xa336[142]]=14;Graph[_0xa336[16]][_0xa336[143]]=20;mxPanningHandler[_0xa336[16]][_0xa336[144]]=false;mxPanningHandler[_0xa336[16]][_0xa336[145]]=true;mxPanningHandler[_0xa336[16]][_0xa336[146]]=function(_0x7630xb){var _0x7630x19=_0x7630xb[_0xa336[129]]();return (this[_0xa336[145]]&&(this[_0xa336[147]]||_0x7630xb[_0xa336[32]]()==null))||(mxEvent[_0xa336[148]](_0x7630x19)&&mxEvent[_0xa336[149]](_0x7630x19))||(this[_0xa336[150]]&&mxEvent[_0xa336[151]](_0x7630x19))}};var _0x7630x1f=mxGraphHandler[_0xa336[16]][_0xa336[152]];mxGraphHandler[_0xa336[16]][_0xa336[152]]=function(_0x7630x18,_0x7630xb){_0x7630x1f[_0xa336[15]](this,arguments);if(this[_0xa336[46]][_0xa336[52]](_0x7630xb[_0xa336[125]]())&&this[_0xa336[46]][_0xa336[53]]()>1){this[_0xa336[153]]=false}};Graph[_0xa336[16]][_0xa336[154]]=function(_0x7630x1){this[_0xa336[155]]= new mxTooltipHandler(this);this[_0xa336[155]][_0xa336[156]](false);this[_0xa336[157]]= new mxSelectionCellsHandler(this);this[_0xa336[29]]= new mxPanningHandler(this);this[_0xa336[29]][_0xa336[158]]=false;this[_0xa336[11]]= new mxConnectionHandler(this);this[_0xa336[11]][_0xa336[156]](false);this[_0xa336[159]]= new mxGraphHandler(this)};mxConnectionHandler[_0xa336[16]][_0xa336[160]]=function(_0x7630xe,_0x7630x20){if(touchStyle&&_0x7630x20!=null){this[_0xa336[46]][_0xa336[161]](_0x7630x20)}else {this[_0xa336[46]][_0xa336[161]](_0x7630xe)}};var _0x7630x21=mxGraph[_0xa336[16]][_0xa336[162]];Graph[_0xa336[16]][_0xa336[162]]=function(_0x7630x19,_0x7630x6){if(_0x7630x6==null){var _0x7630x22=mxUtils[_0xa336[163]](this[_0xa336[25]],mxEvent[_0xa336[130]](_0x7630x19),mxEvent[_0xa336[131]](_0x7630x19));_0x7630x6=this[_0xa336[118]](_0x7630x22[_0xa336[164]],_0x7630x22[_0xa336[165]])};_0x7630x21[_0xa336[0]](this,_0x7630x19,_0x7630x6)};var _0x7630x23= new mxImage(IMAGE_PATH+_0xa336[166],16,16);mxVertexHandler[_0xa336[16]][_0xa336[167]]=_0x7630x23;mxEdgeHandler[_0xa336[16]][_0xa336[167]]=_0x7630x23;mxOutline[_0xa336[16]][_0xa336[168]]=_0x7630x23; new Image()[_0xa336[169]]=_0x7630x23[_0xa336[169]];var _0x7630x24=IMAGE_PATH+_0xa336[170];var _0x7630x25=mxVertexHandler[_0xa336[16]][_0xa336[171]];mxVertexHandler[_0xa336[16]][_0xa336[171]]=function(){_0x7630x25[_0xa336[15]](this,arguments);if(showConnectorImg&&this[_0xa336[46]][_0xa336[11]][_0xa336[111]]()&&this[_0xa336[46]][_0xa336[172]](this[_0xa336[119]][_0xa336[51]])&&!this[_0xa336[46]][_0xa336[84]](this[_0xa336[119]][_0xa336[51]])&&this[_0xa336[46]][_0xa336[53]]()==1){this[_0xa336[173]]=mxUtils[_0xa336[174]](_0x7630x24);this[_0xa336[173]][_0xa336[24]][_0xa336[23]]=_0xa336[26];this[_0xa336[173]][_0xa336[24]][_0xa336[175]]=_0xa336[176];this[_0xa336[173]][_0xa336[24]][_0xa336[177]]=_0xa336[176];this[_0xa336[173]][_0xa336[24]][_0xa336[178]]=_0xa336[179];if(!mxClient[_0xa336[141]]){this[_0xa336[173]][_0xa336[100]](_0xa336[180],mxResources[_0xa336[93]](_0xa336[17]));mxEvent[_0xa336[181]](this[_0xa336[173]],this[_0xa336[46]],this[_0xa336[119]])};this[_0xa336[173]][_0xa336[24]][_0xa336[182]]=_0xa336[183];mxEvent[_0xa336[185]](this[_0xa336[173]],mxUtils[_0xa336[27]](this,function(_0x7630x19){this[_0xa336[46]][_0xa336[29]][_0xa336[114]]();var _0x7630x22=mxUtils[_0xa336[163]](this[_0xa336[46]][_0xa336[25]],mxEvent[_0xa336[130]](_0x7630x19),mxEvent[_0xa336[131]](_0x7630x19));this[_0xa336[46]][_0xa336[11]][_0xa336[49]](this[_0xa336[119]],_0x7630x22[_0xa336[164]],_0x7630x22[_0xa336[165]]);this[_0xa336[46]][_0xa336[184]]=true;mxEvent[_0xa336[133]](_0x7630x19)}));this[_0xa336[46]][_0xa336[25]][_0xa336[186]](this[_0xa336[173]])};this[_0xa336[187]]()};var _0x7630x26=mxVertexHandler[_0xa336[16]][_0xa336[188]];mxVertexHandler[_0xa336[16]][_0xa336[188]]=function(){_0x7630x26[_0xa336[15]](this);this[_0xa336[187]]()};mxVertexHandler[_0xa336[16]][_0xa336[187]]=function(){if(this[_0xa336[119]]!=null&&this[_0xa336[173]]!=null){if(mxVertexHandler[_0xa336[16]][_0xa336[189]]){this[_0xa336[173]][_0xa336[24]][_0xa336[190]]=(this[_0xa336[119]][_0xa336[164]]+this[_0xa336[119]][_0xa336[175]]-this[_0xa336[173]][_0xa336[191]]/2)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[193]]=(this[_0xa336[119]][_0xa336[165]]-this[_0xa336[173]][_0xa336[194]]/2)+_0xa336[192]}else {this[_0xa336[173]][_0xa336[24]][_0xa336[190]]=(this[_0xa336[119]][_0xa336[164]]+this[_0xa336[119]][_0xa336[175]]+mxConstants[_0xa336[139]]/2+4)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[193]]=(this[_0xa336[119]][_0xa336[165]]+(this[_0xa336[119]][_0xa336[177]]-this[_0xa336[173]][_0xa336[194]])/2)+_0xa336[192]}}};var _0x7630x27=mxVertexHandler[_0xa336[16]][_0xa336[195]];mxVertexHandler[_0xa336[16]][_0xa336[195]]=function(_0x7630x18,_0x7630xb){_0x7630x27[_0xa336[15]](this,arguments);if(this[_0xa336[173]]!=null){this[_0xa336[173]][_0xa336[197]][_0xa336[196]](this[_0xa336[173]]);this[_0xa336[173]]=null}}; new Image()[_0xa336[169]]=_0x7630x24}else {var _0x7630x28= new mxImage(IMAGE_PATH+_0xa336[198],15,15);mxConnectionHandler[_0xa336[16]][_0xa336[199]]=_0x7630x28; new Image()[_0xa336[169]]=_0x7630x28[_0xa336[169]];if(urlParams[_0xa336[17]]==_0xa336[18]){var _0x7630x28= new mxImage(IMAGE_PATH+_0xa336[198],15,15);var _0x7630x25=mxVertexHandler[_0xa336[16]][_0xa336[171]];mxVertexHandler[_0xa336[16]][_0xa336[171]]=function(){_0x7630x25[_0xa336[15]](this,arguments);if(showConnectorImg&&this[_0xa336[46]][_0xa336[11]][_0xa336[111]]()&&this[_0xa336[46]][_0xa336[172]](this[_0xa336[119]][_0xa336[51]])&&!this[_0xa336[46]][_0xa336[84]](this[_0xa336[119]][_0xa336[51]])&&this[_0xa336[46]][_0xa336[53]]()==1){if(mxClient[_0xa336[200]]&&!mxClient[_0xa336[201]]){this[_0xa336[173]]=document[_0xa336[104]](_0xa336[202]);this[_0xa336[173]][_0xa336[24]][_0xa336[203]]=_0xa336[204]+_0x7630x28[_0xa336[169]]+_0xa336[205];this[_0xa336[173]][_0xa336[24]][_0xa336[206]]=_0xa336[207];this[_0xa336[173]][_0xa336[24]][_0xa336[208]]=_0xa336[209];this[_0xa336[173]][_0xa336[24]][_0xa336[175]]=(_0x7630x28[_0xa336[175]]+4)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[177]]=(_0x7630x28[_0xa336[177]]+4)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[210]]=(mxClient[_0xa336[211]])?_0xa336[212]:_0xa336[213]}else {this[_0xa336[173]]=mxUtils[_0xa336[174]](_0x7630x28[_0xa336[169]]);this[_0xa336[173]][_0xa336[24]][_0xa336[175]]=_0x7630x28[_0xa336[175]]+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[177]]=_0x7630x28[_0xa336[177]]+_0xa336[192]};this[_0xa336[173]][_0xa336[24]][_0xa336[23]]=_0xa336[26];this[_0xa336[173]][_0xa336[24]][_0xa336[178]]=_0xa336[179];this[_0xa336[173]][_0xa336[100]](_0xa336[180],mxResources[_0xa336[93]](_0xa336[17]));mxEvent[_0xa336[181]](this[_0xa336[173]],this[_0xa336[46]],this[_0xa336[119]]);this[_0xa336[173]][_0xa336[24]][_0xa336[182]]=_0xa336[183];mxEvent[_0xa336[28]](this[_0xa336[173]],_0xa336[214],mxUtils[_0xa336[27]](this,function(_0x7630x19){this[_0xa336[46]][_0xa336[29]][_0xa336[114]]();var _0x7630x22=mxUtils[_0xa336[163]](this[_0xa336[46]][_0xa336[25]],mxEvent[_0xa336[130]](_0x7630x19),mxEvent[_0xa336[131]](_0x7630x19));this[_0xa336[46]][_0xa336[11]][_0xa336[49]](this[_0xa336[119]],_0x7630x22[_0xa336[164]],_0x7630x22[_0xa336[165]]);this[_0xa336[46]][_0xa336[184]]=true;mxEvent[_0xa336[133]](_0x7630x19)}));this[_0xa336[46]][_0xa336[25]][_0xa336[186]](this[_0xa336[173]])};this[_0xa336[187]]()};var _0x7630x26=mxVertexHandler[_0xa336[16]][_0xa336[188]];mxVertexHandler[_0xa336[16]][_0xa336[188]]=function(){_0x7630x26[_0xa336[15]](this);this[_0xa336[187]]()};mxVertexHandler[_0xa336[16]][_0xa336[187]]=function(){if(this[_0xa336[119]]!=null&&this[_0xa336[173]]!=null){if(mxVertexHandler[_0xa336[16]][_0xa336[189]]){this[_0xa336[173]][_0xa336[24]][_0xa336[190]]=(this[_0xa336[119]][_0xa336[164]]+this[_0xa336[119]][_0xa336[175]]-this[_0xa336[173]][_0xa336[191]]/2)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[193]]=(this[_0xa336[119]][_0xa336[165]]-this[_0xa336[173]][_0xa336[194]]/2)+_0xa336[192]}else {this[_0xa336[173]][_0xa336[24]][_0xa336[190]]=(this[_0xa336[119]][_0xa336[164]]+this[_0xa336[119]][_0xa336[175]]+mxConstants[_0xa336[139]]/2+2)+_0xa336[192];this[_0xa336[173]][_0xa336[24]][_0xa336[193]]=(this[_0xa336[119]][_0xa336[165]]+(this[_0xa336[119]][_0xa336[177]]-this[_0xa336[173]][_0xa336[194]])/2)+_0xa336[192]}}};var _0x7630x27=mxVertexHandler[_0xa336[16]][_0xa336[195]];mxVertexHandler[_0xa336[16]][_0xa336[195]]=function(_0x7630x18,_0x7630xb){_0x7630x27[_0xa336[15]](this,arguments);if(this[_0xa336[173]]!=null){this[_0xa336[173]][_0xa336[197]][_0xa336[196]](this[_0xa336[173]]);this[_0xa336[173]]=null}}}}})() \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Menus.js b/public/assets/plugins/jscripty/js/Menus.js index 716abe8..912c0f1 100644 --- a/public/assets/plugins/jscripty/js/Menus.js +++ b/public/assets/plugins/jscripty/js/Menus.js @@ -1 +1 @@ -var _0xe670=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x6D\x65\x6E\x75\x73","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x56\x65\x72\x64\x61\x6E\x61","\x54\x69\x6D\x65\x73\x20\x4E\x65\x77\x20\x52\x6F\x6D\x61\x6E","\x47\x61\x72\x61\x6D\x6F\x6E\x64","\x43\x6F\x6D\x69\x63\x20\x53\x61\x6E\x73\x20\x4D\x53","\x43\x6F\x75\x72\x69\x65\x72\x20\x4E\x65\x77","\x47\x65\x6F\x72\x67\x69\x61","\x4C\x75\x63\x69\x64\x61\x20\x43\x6F\x6E\x73\x6F\x6C\x65","\x54\x61\x68\x6F\x6D\x61","\x6C\x65\x6E\x67\x74\x68","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x73\x74\x79\x6C\x65\x43\x68\x61\x6E\x67\x65","\x73\x74\x79\x6C\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x75\x73\x74\x6F\x6D","\x67\x65\x74","","\x70\x72\x6F\x6D\x70\x74\x43\x68\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x70\x75\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x28\x70\x74\x29","\x31\x32","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x70\x78","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x28\x70\x78\x29","\x31","\x6C\x69\x6E\x65","\x73\x74\x72\x61\x69\x67\x68\x74","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6D\x61\x6E\x75\x61\x6C","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x6D\x61\x74\x69\x63","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x63\x6C\x61\x73\x73\x69\x63","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x6F\x70\x65\x6E\x41\x72\x72\x6F\x77","\x41\x52\x52\x4F\x57\x5F\x4F\x50\x45\x4E","\x62\x6C\x6F\x63\x6B","\x41\x52\x52\x4F\x57\x5F\x42\x4C\x4F\x43\x4B","\x6F\x76\x61\x6C","\x41\x52\x52\x4F\x57\x5F\x4F\x56\x41\x4C","\x64\x69\x61\x6D\x6F\x6E\x64","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44\x5F\x54\x48\x49\x4E","\x6E\x6F\x6E\x65","\x4E\x4F\x4E\x45","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x65\x6E\x64\x46\x69\x6C\x6C","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x61\x64\x64\x49\x74\x65\x6D","\x73\x69\x7A\x65","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x73\x70\x61\x63\x69\x6E\x67","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x68\x61\x64\x6F\x77","\x61\x63\x74\x69\x6F\x6E\x73","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x74\x6F\x70","\x30","\x72\x69\x67\x68\x74","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x67\x6C\x6F\x62\x61\x6C","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x74\x65\x78\x74","\x61\x64\x64\x53\x75\x62\x6D\x65\x6E\x75","\x2D","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D\x73","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x77\x6F\x72\x64\x57\x72\x61\x70","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x28\x25\x29","\x31\x30\x30","\x68\x69\x64\x65","\x6C\x65\x66\x74\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x63\x65\x6E\x74\x65\x72","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x72\x69\x67\x68\x74\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x74\x6F\x70\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x6D\x69\x64\x64\x6C\x65","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x62\x6F\x74\x74\x6F\x6D\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x74\x69\x6C\x74","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x6C\x69\x67\x6E","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x46\x6C\x6F\x77","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x61\x72\x72\x61\x6E\x67\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x76\x69\x65\x77","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x25","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x66\x69\x74\x50\x61\x67\x65","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x66\x69\x6C\x65","\x6E\x65\x77","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x41\x73","\x70\x75\x62\x6C\x69\x73\x68","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x65\x64\x69\x74\x46\x69\x6C\x65","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x65\x64\x69\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x75\x74","\x63\x6F\x70\x79","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x68\x65\x6C\x70","\x61\x62\x6F\x75\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x65\x78\x65\x63\x75\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x20","\x70\x72\x6F\x6D\x70\x74","\x6C\x61\x62\x65\x6C","\x66\x75\x6E\x63\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x6D\x61\x72\x6B","\x61\x64\x64\x53\x68\x6F\x72\x74\x63\x75\x74","\x73\x68\x6F\x72\x74\x63\x75\x74","\x73\x70\x61\x6E","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x79","\x77\x72\x69\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x32\x70\x78\x20\x35\x30\x25","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x69\x73\x45\x64\x67\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x62\x65\x6E\x64\x73","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x69\x76","\x20\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x4D\x65\x6E\x75","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x61\x70\x70\x6C\x79","\x64\x65\x73\x74\x72\x6F\x79","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6C\x69\x63\x6B","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74"];Menus=function(_0x22f5x1){this[_0xe670[0]]=_0x22f5x1;this[_0xe670[1]]= new Object();this[_0xe670[2]](); new Image()[_0xe670[3]]=IMAGE_PATH+_0xe670[4]};Menus[_0xe670[5]][_0xe670[2]]=function(){var _0x22f5x2=this[_0xe670[0]][_0xe670[7]][_0xe670[6]];this[_0xe670[30]](_0xe670[8], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){var _0x22f5x5=[_0xe670[9],_0xe670[10],_0xe670[11],_0xe670[12],_0xe670[13],_0xe670[14],_0xe670[15],_0xe670[16],_0xe670[17]];for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x5[_0xe670[18]];_0x22f5x6++){var _0x22f5x7=this[_0xe670[20]](_0x22f5x3,_0x22f5x5[_0x22f5x6],[mxConstants[_0xe670[19]]],[_0x22f5x5[_0x22f5x6]],null,_0x22f5x4);_0x22f5x7[_0xe670[23]][_0xe670[22]][_0xe670[21]][_0xe670[8]]=_0x22f5x5[_0x22f5x6]};_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[25]),_0xe670[27],mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,_0x22f5x4)})));this[_0xe670[30]](_0xe670[31], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){var _0x22f5x8=[6,8,9,10,11,12,14,18,24,36,48,72];for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x8[_0xe670[18]];_0x22f5x6++){this[_0xe670[20]](_0x22f5x3,_0x22f5x8[_0x22f5x6],[mxConstants[_0xe670[32]]],[_0x22f5x8[_0x22f5x6]],null,_0x22f5x4)};_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[25]),_0xe670[33],_0xe670[34],mxConstants.STYLE_FONTSIZE,_0x22f5x4)})));this[_0xe670[30]](_0xe670[35], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){var _0x22f5x8=[1,2,3,4,8,12,16,24];for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x8[_0xe670[18]];_0x22f5x6++){this[_0xe670[20]](_0x22f5x3,_0x22f5x8[_0x22f5x6]+_0xe670[36],[mxConstants[_0xe670[37]]],[_0x22f5x8[_0x22f5x6]],null,_0x22f5x4)};_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[25]),_0xe670[38],_0xe670[39],mxConstants.STYLE_STROKEWIDTH,_0x22f5x4)})));this[_0xe670[30]](_0xe670[40], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[41]),[mxConstants[_0xe670[42]]],[null],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[43]),[mxConstants[_0xe670[42]]],[_0xe670[44]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[45]),[mxConstants[_0xe670[42]],mxConstants[_0xe670[46]]],[_0xe670[47],_0xe670[45]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[48]),[mxConstants[_0xe670[42]],mxConstants[_0xe670[46]]],[_0xe670[47],_0xe670[48]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[49]),[mxConstants[_0xe670[42]]],[_0xe670[50]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[51]),[mxConstants[_0xe670[42]]],[_0xe670[52]],null,_0x22f5x4)})));this[_0xe670[30]](_0xe670[53], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[54]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[56]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[57]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[58]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[59]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[60]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[61]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[62]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[63]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[64]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[65]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[66]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[67]),[mxConstants[_0xe670[55]]],[mxConstants[_0xe670[68]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[69]),null,function(){_0x22f5x2[_0xe670[71]](_0xe670[70],true)},_0x22f5x4,null,true);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[73]),_0xe670[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,_0x22f5x4)})));this[_0xe670[30]](_0xe670[74], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[54]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[56]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[57]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[58]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[59]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[60]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[61]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[62]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[63]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[64]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[65]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[66]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[67]),[mxConstants[_0xe670[75]]],[mxConstants[_0xe670[68]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[69]),null,function(){_0x22f5x2[_0xe670[71]](_0xe670[76],true)},_0x22f5x4,null,true);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[73]),_0xe670[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,_0x22f5x4)})));this[_0xe670[30]](_0xe670[77], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){var _0x22f5x9=this[_0xe670[0]][_0xe670[80]][_0xe670[26]](_0xe670[79])[_0xe670[78]];var _0x22f5xa=this[_0xe670[26]](_0xe670[40])[_0xe670[78]];if(_0x22f5x9||_0x22f5x3[_0xe670[81]]){this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[82]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SPACING_TOP,_0x22f5x4,_0x22f5x9);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[84]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SPACING_RIGHT,_0x22f5x4,_0x22f5x9);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[85]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SPACING_BOTTOM,_0x22f5x4,_0x22f5x9);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[86]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SPACING_LEFT,_0x22f5x4,_0x22f5x9);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[87]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SPACING,_0x22f5x4,_0x22f5x9);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[88]),_0xe670[38],_0xe670[83],mxConstants.STYLE_PERIMETER_SPACING,_0x22f5x4,_0x22f5x9)};if(_0x22f5xa||_0x22f5x3[_0xe670[81]]){_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[89]),_0xe670[38],_0xe670[83],mxConstants.STYLE_SOURCE_PERIMETER_SPACING,_0x22f5x4,_0x22f5xa);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[90]),_0xe670[38],_0xe670[83],mxConstants.STYLE_TARGET_PERIMETER_SPACING,_0x22f5x4,_0x22f5xa)}})));this[_0xe670[30]](_0xe670[91], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[92]](_0x22f5x3,_0xe670[21],_0x22f5x4)})));this[_0xe670[30]](_0xe670[93], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){var _0x22f5xb=this[_0xe670[26]](_0xe670[93])[_0xe670[78]];_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[94]](_0xe670[8],_0x22f5x3,_0x22f5x4);this[_0xe670[94]](_0xe670[31],_0x22f5x3,_0x22f5x4);this[_0xe670[99]](_0x22f5x3,[_0xe670[95],_0xe670[96],_0xe670[97],_0xe670[98],_0xe670[95]],_0x22f5x4);this[_0xe670[94]](_0xe670[100],_0x22f5x3,_0x22f5x4);this[_0xe670[92]](_0x22f5x3,_0xe670[101],_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[28]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[102]),_0xe670[103],_0xe670[104],mxConstants.STYLE_TEXT_OPACITY,_0x22f5x4,_0x22f5xb);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[105]),null,function(){_0x22f5x2[_0xe670[71]](mxConstants.STYLE_NOLABEL,false)},_0x22f5x4,null,_0x22f5xb)})));this[_0xe670[30]](_0xe670[100], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[106]),[mxConstants[_0xe670[107]]],[mxConstants[_0xe670[108]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[109]),[mxConstants[_0xe670[107]]],[mxConstants[_0xe670[110]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[111]),[mxConstants[_0xe670[107]]],[mxConstants[_0xe670[112]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[113]),[mxConstants[_0xe670[114]]],[mxConstants[_0xe670[115]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[116]),[mxConstants[_0xe670[114]]],[mxConstants[_0xe670[117]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[118]),[mxConstants[_0xe670[114]]],[mxConstants[_0xe670[119]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[94]](_0xe670[120],_0x22f5x3,_0x22f5x4);this[_0xe670[94]](_0xe670[77],_0x22f5x3,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);var _0x22f5xb=this[_0xe670[26]](_0xe670[93])[_0xe670[78]];_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[48]),null,function(){_0x22f5x2[_0xe670[71]](mxConstants.STYLE_HORIZONTAL,true)},_0x22f5x4,null,_0x22f5xb)})));this[_0xe670[30]](_0xe670[120], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[86]),[mxConstants[_0xe670[121]],mxConstants[_0xe670[107]]],[mxConstants[_0xe670[108]],mxConstants[_0xe670[112]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[109]),[mxConstants[_0xe670[121]],mxConstants[_0xe670[107]]],[mxConstants[_0xe670[110]],mxConstants[_0xe670[110]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[84]),[mxConstants[_0xe670[121]],mxConstants[_0xe670[107]]],[mxConstants[_0xe670[112]],mxConstants[_0xe670[108]]],null,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[82]),[mxConstants[_0xe670[122]],mxConstants[_0xe670[114]]],[mxConstants[_0xe670[115]],mxConstants[_0xe670[119]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[116]),[mxConstants[_0xe670[122]],mxConstants[_0xe670[114]]],[mxConstants[_0xe670[117]],mxConstants[_0xe670[117]]],null,_0x22f5x4);this[_0xe670[20]](_0x22f5x3,mxResources[_0xe670[26]](_0xe670[85]),[mxConstants[_0xe670[122]],mxConstants[_0xe670[114]]],[mxConstants[_0xe670[119]],mxConstants[_0xe670[115]]],null,_0x22f5x4)})));this[_0xe670[30]](_0xe670[123], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[124]),null,function(){_0x22f5x2[_0xe670[71]](mxConstants.STYLE_FLIPH,false)},_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[125]),null,function(){_0x22f5x2[_0xe670[71]](mxConstants.STYLE_FLIPV,false)},_0x22f5x4);this[_0xe670[99]](_0x22f5x3,[_0xe670[95],_0xe670[126],_0xe670[127]],_0x22f5x4)})));this[_0xe670[30]](_0xe670[128], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[106]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_LEFT)},_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[109]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_CENTER)},_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[111]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_RIGHT)},_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[113]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_TOP)},_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[116]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_MIDDLE)},_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[118]),null,function(){_0x22f5x2[_0xe670[129]](mxConstants.ALIGN_BOTTOM)},_0x22f5x4)})));this[_0xe670[30]](_0xe670[130], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[131]),null,mxUtils[_0xe670[29]](this,function(){var _0x22f5xc= new mxHierarchicalLayout(_0x22f5x2,mxConstants.DIRECTION_WEST);this[_0xe670[0]][_0xe670[132]](_0x22f5xc,true,true)}),_0x22f5x4);_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0xe670[133]),null,mxUtils[_0xe670[29]](this,function(){var _0x22f5xc= new mxHierarchicalLayout(_0x22f5x2,mxConstants.DIRECTION_NORTH);this[_0xe670[0]][_0xe670[132]](_0x22f5xc,true,true)}),_0x22f5x4)})));this[_0xe670[30]](_0xe670[134], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[135],_0xe670[95],_0xe670[136],_0xe670[137],_0xe670[95],_0xe670[138],_0xe670[139]],_0x22f5x4)})));this[_0xe670[30]](_0xe670[140], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[141],_0xe670[142],_0xe670[95]],_0x22f5x4);this[_0xe670[94]](_0xe670[130],_0x22f5x3,_0x22f5x4);_0x22f5x3[_0xe670[24]](_0x22f5x4);this[_0xe670[99]](_0x22f5x3,[_0xe670[95],_0xe670[143],_0xe670[144],_0xe670[145]],_0x22f5x4)})));this[_0xe670[30]](_0xe670[146], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[147]],_0x22f5x4);_0x22f5x3[_0xe670[24]]();var _0x22f5xd=[0.25,0.5,0.75,1,2,4];for(var _0x22f5x6=0;_0x22f5x6<_0x22f5xd[_0xe670[18]];_0x22f5x6++){(function(_0x22f5xe){_0x22f5x3[_0xe670[72]]((_0x22f5xe*100)+_0xe670[148],null,function(){_0x22f5x2[_0xe670[149]](_0x22f5xe)},_0x22f5x4)})(_0x22f5xd[_0x22f5x6])};this[_0xe670[99]](_0x22f5x3,[_0xe670[95],_0xe670[150],_0xe670[151],_0xe670[95],_0xe670[152],_0xe670[153],_0xe670[95],_0xe670[154],_0xe670[155]],_0x22f5x4)})));this[_0xe670[30]](_0xe670[156], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[157],_0xe670[158],_0xe670[95],_0xe670[159],_0xe670[160],_0xe670[161],_0xe670[95],_0xe670[162],_0xe670[95],_0xe670[163],_0xe670[164],_0xe670[95],_0xe670[165],_0xe670[166],_0xe670[95],_0xe670[167]],_0x22f5x4)})));this[_0xe670[30]](_0xe670[168], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[169],_0xe670[170],_0xe670[95],_0xe670[171],_0xe670[172],_0xe670[173],_0xe670[174],_0xe670[95],_0xe670[175],_0xe670[95],_0xe670[176],_0xe670[177],_0xe670[178]])})));this[_0xe670[30]](_0xe670[179], new Menu(mxUtils[_0xe670[29]](this,function(_0x22f5x3,_0x22f5x4){this[_0xe670[99]](_0x22f5x3,[_0xe670[179],_0xe670[95],_0xe670[180]])})))};Menus[_0xe670[5]][_0xe670[30]]=function(_0x22f5xf,_0x22f5x3){this[_0xe670[1]][_0x22f5xf]=_0x22f5x3};Menus[_0xe670[5]][_0xe670[26]]=function(_0x22f5xf){return this[_0xe670[1]][_0x22f5xf]};Menus[_0xe670[5]][_0xe670[94]]=function(_0x22f5xf,_0x22f5x3,_0x22f5x4){var _0x22f5xb=this[_0xe670[26]](_0x22f5xf)[_0xe670[78]];if(_0x22f5x3[_0xe670[81]]||_0x22f5xb){var _0x22f5x10=_0x22f5x3[_0xe670[72]](mxResources[_0xe670[26]](_0x22f5xf),null,null,_0x22f5x4,null,_0x22f5xb);this[_0xe670[181]](_0x22f5xf,_0x22f5x3,_0x22f5x10)}};Menus[_0xe670[5]][_0xe670[181]]=function(_0x22f5xf,_0x22f5x11,_0x22f5x4){var _0x22f5x3=this[_0xe670[26]](_0x22f5xf);if(_0x22f5x3!=null&&(_0x22f5x11[_0xe670[81]]||_0x22f5x3[_0xe670[78]])){this[_0xe670[26]](_0x22f5xf)[_0xe670[182]](_0x22f5x11,_0x22f5x4)}};Menus[_0xe670[5]][_0xe670[20]]=function(_0x22f5x3,_0x22f5x12,_0x22f5x13,_0x22f5x14,_0x22f5x15,_0x22f5x4){return _0x22f5x3[_0xe670[72]](_0x22f5x12,null,mxUtils[_0xe670[29]](this,function(){var _0x22f5x2=this[_0xe670[0]][_0xe670[7]][_0xe670[6]];_0x22f5x2[_0xe670[184]]()[_0xe670[183]]();try{for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x13[_0xe670[18]];_0x22f5x6++){_0x22f5x2[_0xe670[185]](_0x22f5x13[_0x22f5x6],_0x22f5x14[_0x22f5x6])}}finally{_0x22f5x2[_0xe670[184]]()[_0xe670[186]]()}}),_0x22f5x4,_0x22f5x15)};Menus[_0xe670[5]][_0xe670[28]]=function(_0x22f5x3,_0x22f5x12,_0x22f5x16,_0x22f5x17,_0x22f5x18,_0x22f5x4,_0x22f5xb){return _0x22f5x3[_0xe670[72]](_0x22f5x12,null,mxUtils[_0xe670[29]](this,function(){var _0x22f5x2=this[_0xe670[0]][_0xe670[7]][_0xe670[6]];var _0x22f5x19=_0x22f5x17;var _0x22f5x1a=_0x22f5x2[_0xe670[189]]()[_0xe670[188]](_0x22f5x2[_0xe670[187]]());if(_0x22f5x1a!=null){_0x22f5x19=_0x22f5x1a[_0xe670[21]][_0x22f5x18]||_0x22f5x19};_0x22f5x19=mxUtils[_0xe670[192]](mxResources[_0xe670[26]](_0xe670[190])+((_0x22f5x16[_0xe670[18]]>0)?(_0xe670[191]+_0x22f5x16):_0xe670[27]),_0x22f5x19);if(_0x22f5x19!=null&&_0x22f5x19[_0xe670[18]]>0){_0x22f5x2[_0xe670[185]](_0x22f5x18,_0x22f5x19)}}),_0x22f5x4,null,_0x22f5xb)};Menus[_0xe670[5]][_0xe670[92]]=function(_0x22f5x3,_0x22f5x18,_0x22f5x4){var _0x22f5x1b=this[_0xe670[0]][_0xe670[80]][_0xe670[26]](_0x22f5x18);if(_0x22f5x1b!=null&&(_0x22f5x3[_0xe670[81]]||_0x22f5x1b[_0xe670[78]])){var _0x22f5x1c=_0x22f5x3[_0xe670[72]](_0x22f5x1b[_0xe670[193]],null,_0x22f5x1b[_0xe670[194]],_0x22f5x4,null,_0x22f5x1b[_0xe670[78]]);if(_0x22f5x1b[_0xe670[195]]&&_0x22f5x1b[_0xe670[196]]()){this[_0xe670[197]](_0x22f5x1c)};this[_0xe670[198]](_0x22f5x1c,_0x22f5x1b);return _0x22f5x1c};return null};Menus[_0xe670[5]][_0xe670[198]]=function(_0x22f5x1c,_0x22f5x1b){if(_0x22f5x1b[_0xe670[199]]!=null){var _0x22f5x1d=_0x22f5x1c[_0xe670[23]][_0xe670[22]][_0xe670[22]];var _0x22f5x1e=document[_0xe670[201]](_0xe670[200]);_0x22f5x1e[_0xe670[21]][_0xe670[202]]=_0xe670[203];mxUtils[_0xe670[204]](_0x22f5x1e,_0x22f5x1b[_0xe670[199]]);_0x22f5x1d[_0xe670[205]](_0x22f5x1e)}};Menus[_0xe670[5]][_0xe670[197]]=function(_0x22f5x1c){var _0x22f5x1d=_0x22f5x1c[_0xe670[23]][_0xe670[22]];_0x22f5x1d[_0xe670[21]][_0xe670[206]]=_0xe670[207]+IMAGE_PATH+_0xe670[208];_0x22f5x1d[_0xe670[21]][_0xe670[209]]=_0xe670[210];_0x22f5x1d[_0xe670[21]][_0xe670[211]]=_0xe670[212]};Menus[_0xe670[5]][_0xe670[99]]=function(_0x22f5x3,_0x22f5x13,_0x22f5x4){for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x13[_0xe670[18]];_0x22f5x6++){if(_0x22f5x13[_0x22f5x6]==_0xe670[95]){_0x22f5x3[_0xe670[24]](_0x22f5x4)}else {this[_0xe670[92]](_0x22f5x3,_0x22f5x13[_0x22f5x6],_0x22f5x4)}}};Menus[_0xe670[5]][_0xe670[213]]=function(_0x22f5x3,_0x22f5x1f,_0x22f5x20){var _0x22f5x2=this[_0xe670[0]][_0xe670[7]][_0xe670[6]];_0x22f5x3[_0xe670[214]]=true;if(_0x22f5x2[_0xe670[215]]()){this[_0xe670[99]](_0x22f5x3,[_0xe670[169],_0xe670[170],_0xe670[95],_0xe670[173],_0xe670[95]])}else {this[_0xe670[99]](_0x22f5x3,[_0xe670[174],_0xe670[95],_0xe670[171],_0xe670[172],_0xe670[95],_0xe670[175]]);if(_0x22f5x2[_0xe670[216]]()==1&&_0x22f5x2[_0xe670[184]]()[_0xe670[217]](_0x22f5x2[_0xe670[187]]())){this[_0xe670[99]](_0x22f5x3,[_0xe670[218]])};_0x22f5x3[_0xe670[24]]()};if(_0x22f5x2[_0xe670[216]]()>0){this[_0xe670[99]](_0x22f5x3,[_0xe670[141],_0xe670[142],_0xe670[95]]);if(_0x22f5x2[_0xe670[184]]()[_0xe670[217]](_0x22f5x2[_0xe670[187]]())){var _0x22f5x21=false;var _0x22f5x1f=_0x22f5x2[_0xe670[187]]();if(_0x22f5x1f!=null&&_0x22f5x2[_0xe670[184]]()[_0xe670[217]](_0x22f5x1f)){var _0x22f5x22=_0x22f5x2[_0xe670[220]][_0xe670[219]](_0x22f5x1f);if(_0x22f5x22 instanceof mxEdgeHandler&&_0x22f5x22[_0xe670[221]]!=null&&_0x22f5x22[_0xe670[221]][_0xe670[18]]>2){var _0x22f5x23=_0x22f5x22[_0xe670[222]]( new mxMouseEvent(_0x22f5x20));var _0x22f5x24=this[_0xe670[0]][_0xe670[80]][_0xe670[26]](_0xe670[223]);_0x22f5x24[_0xe670[224]]=_0x22f5x22;_0x22f5x24[_0xe670[225]]=_0x22f5x23;_0x22f5x21=_0x22f5x23>0&&_0x22f5x23<_0x22f5x22[_0xe670[221]][_0xe670[18]]}};this[_0xe670[99]](_0x22f5x3,[_0xe670[95],(_0x22f5x21)?_0xe670[223]:_0xe670[226]])}else {if(_0x22f5x2[_0xe670[216]]()>1){_0x22f5x3[_0xe670[24]]();this[_0xe670[99]](_0x22f5x3,[_0xe670[143]])}};_0x22f5x3[_0xe670[24]]();if(_0x22f5x2[_0xe670[216]]()==1){var _0x22f5x25=_0x22f5x2[_0xe670[227]](_0x22f5x2[_0xe670[187]]());if(_0x22f5x25!=null){this[_0xe670[99]](_0x22f5x3,[_0xe670[228]])}}}else {this[_0xe670[99]](_0x22f5x3,[_0xe670[95],_0xe670[176],_0xe670[177],_0xe670[95],_0xe670[178]])}};Menus[_0xe670[5]][_0xe670[229]]=function(_0x22f5x26){var _0x22f5x27= new Menubar(this[_0xe670[0]],_0x22f5x26);var _0x22f5x28=[_0xe670[156],_0xe670[168],_0xe670[146],_0xe670[91],_0xe670[93],_0xe670[140]];for(var _0x22f5x6=0;_0x22f5x6<_0x22f5x28[_0xe670[18]];_0x22f5x6++){_0x22f5x27[_0xe670[181]](mxResources[_0xe670[26]](_0x22f5x28[_0x22f5x6]),this[_0xe670[26]](_0x22f5x28[_0x22f5x6])[_0xe670[194]])};return _0x22f5x27};function Menubar(_0x22f5x1,_0x22f5x26){this[_0xe670[0]]=_0x22f5x1;this[_0xe670[230]]=_0x22f5x26;mxEvent[_0xe670[232]](document,mxUtils[_0xe670[29]](this,function(_0x22f5x20){this[_0xe670[231]]()}))}Menubar[_0xe670[5]][_0xe670[231]]=function(){if(this[_0xe670[233]]!=null){this[_0xe670[233]][_0xe670[231]]()}};Menubar[_0xe670[5]][_0xe670[181]]=function(_0x22f5x12,_0x22f5x2a){var _0x22f5x2b=document[_0xe670[201]](_0xe670[234]);_0x22f5x2b[_0xe670[237]](_0xe670[235],_0xe670[236]);_0x22f5x2b[_0xe670[238]]=_0xe670[239];mxUtils[_0xe670[204]](_0x22f5x2b,_0x22f5x12);this[_0xe670[240]](_0x22f5x2b,_0x22f5x2a);this[_0xe670[230]][_0xe670[205]](_0x22f5x2b);return _0x22f5x2b};Menubar[_0xe670[5]][_0xe670[240]]=function(_0x22f5x2b,_0x22f5x2a){if(_0x22f5x2a!=null){var _0x22f5x2c=true;var _0x22f5x2d=mxUtils[_0xe670[29]](this,function(_0x22f5x20){if(_0x22f5x2c&&_0x22f5x2b[_0xe670[78]]==null||_0x22f5x2b[_0xe670[78]]){this[_0xe670[0]][_0xe670[7]][_0xe670[6]][_0xe670[241]][_0xe670[231]]();var _0x22f5x3= new mxPopupMenu(_0x22f5x2a);_0x22f5x3[_0xe670[242]][_0xe670[238]]+=_0xe670[243];_0x22f5x3[_0xe670[214]]=true;_0x22f5x3[_0xe670[81]]=true;_0x22f5x3[_0xe670[244]]=true;_0x22f5x3[_0xe670[231]]=mxUtils[_0xe670[29]](this,function(){mxPopupMenu[_0xe670[5]][_0xe670[231]][_0xe670[245]](_0x22f5x3,arguments);_0x22f5x3[_0xe670[246]]();this[_0xe670[233]]=null;this[_0xe670[247]]=null});var _0x22f5x2e=_0x22f5x2b[_0xe670[248]]+document[_0xe670[251]](_0xe670[250])[_0xe670[249]]+22;var _0x22f5x2f=_0x22f5x2b[_0xe670[252]]+_0x22f5x2b[_0xe670[253]]+140;_0x22f5x3[_0xe670[254]](_0x22f5x2e,_0x22f5x2f,null,_0x22f5x20);this[_0xe670[233]]=_0x22f5x3;this[_0xe670[247]]=_0x22f5x2b};_0x22f5x2c=true;mxEvent[_0xe670[255]](_0x22f5x20)});mxEvent[_0xe670[257]](_0x22f5x2b,_0xe670[256],mxUtils[_0xe670[29]](this,function(_0x22f5x20){if(this[_0xe670[233]]!=null&&this[_0xe670[247]]!=_0x22f5x2b){this[_0xe670[231]]();_0x22f5x2d(_0x22f5x20)}}));mxEvent[_0xe670[257]](_0x22f5x2b,_0xe670[258],mxUtils[_0xe670[29]](this,function(){_0x22f5x2c=this[_0xe670[247]]!=_0x22f5x2b}));mxEvent[_0xe670[257]](_0x22f5x2b,_0xe670[259],_0x22f5x2d)}};function Menu(_0x22f5x2a,_0x22f5xb){mxEventSource[_0xe670[260]](this);this[_0xe670[194]]=_0x22f5x2a;this[_0xe670[78]]=(_0x22f5xb!=null)?_0x22f5xb:true}mxUtils[_0xe670[261]](Menu,mxEventSource);Menu[_0xe670[5]][_0xe670[262]]=function(_0x22f5x19){if(this[_0xe670[78]]!=_0x22f5x19){this[_0xe670[78]]=_0x22f5x19;this[_0xe670[264]]( new mxEventObject(_0xe670[263]))}};Menu[_0xe670[5]][_0xe670[182]]=function(_0x22f5x3,_0x22f5x4){this[_0xe670[194]](_0x22f5x3,_0x22f5x4)} \ No newline at end of file +var _0xce9b=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x6D\x65\x6E\x75\x73","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x56\x65\x72\x64\x61\x6E\x61","\x54\x69\x6D\x65\x73\x20\x4E\x65\x77\x20\x52\x6F\x6D\x61\x6E","\x47\x61\x72\x61\x6D\x6F\x6E\x64","\x43\x6F\x6D\x69\x63\x20\x53\x61\x6E\x73\x20\x4D\x53","\x43\x6F\x75\x72\x69\x65\x72\x20\x4E\x65\x77","\x47\x65\x6F\x72\x67\x69\x61","\x4C\x75\x63\x69\x64\x61\x20\x43\x6F\x6E\x73\x6F\x6C\x65","\x54\x61\x68\x6F\x6D\x61","\x6C\x65\x6E\x67\x74\x68","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x73\x74\x79\x6C\x65\x43\x68\x61\x6E\x67\x65","\x73\x74\x79\x6C\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x75\x73\x74\x6F\x6D","\x67\x65\x74","","\x70\x72\x6F\x6D\x70\x74\x43\x68\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x70\x75\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x28\x70\x74\x29","\x31\x32","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x70\x78","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x28\x70\x78\x29","\x31","\x6C\x69\x6E\x65","\x73\x74\x72\x61\x69\x67\x68\x74","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6D\x61\x6E\x75\x61\x6C","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x6D\x61\x74\x69\x63","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x63\x6C\x61\x73\x73\x69\x63","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x6F\x70\x65\x6E\x41\x72\x72\x6F\x77","\x41\x52\x52\x4F\x57\x5F\x4F\x50\x45\x4E","\x62\x6C\x6F\x63\x6B","\x41\x52\x52\x4F\x57\x5F\x42\x4C\x4F\x43\x4B","\x6F\x76\x61\x6C","\x41\x52\x52\x4F\x57\x5F\x4F\x56\x41\x4C","\x64\x69\x61\x6D\x6F\x6E\x64","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44\x5F\x54\x48\x49\x4E","\x6E\x6F\x6E\x65","\x4E\x4F\x4E\x45","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x65\x6E\x64\x46\x69\x6C\x6C","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x61\x64\x64\x49\x74\x65\x6D","\x73\x69\x7A\x65","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x73\x70\x61\x63\x69\x6E\x67","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x68\x61\x64\x6F\x77","\x61\x63\x74\x69\x6F\x6E\x73","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x74\x6F\x70","\x30","\x72\x69\x67\x68\x74","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x67\x6C\x6F\x62\x61\x6C","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x74\x65\x78\x74","\x61\x64\x64\x53\x75\x62\x6D\x65\x6E\x75","\x2D","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D\x73","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x77\x6F\x72\x64\x57\x72\x61\x70","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x28\x25\x29","\x31\x30\x30","\x68\x69\x64\x65","\x6C\x65\x66\x74\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x63\x65\x6E\x74\x65\x72","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x72\x69\x67\x68\x74\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x74\x6F\x70\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x6D\x69\x64\x64\x6C\x65","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x62\x6F\x74\x74\x6F\x6D\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x74\x69\x6C\x74","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x6C\x69\x67\x6E","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x46\x6C\x6F\x77","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x61\x72\x72\x61\x6E\x67\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x76\x69\x65\x77","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x25","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x66\x69\x74\x50\x61\x67\x65","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x66\x69\x6C\x65","\x6E\x65\x77","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x41\x73","\x70\x75\x62\x6C\x69\x73\x68","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x65\x64\x69\x74\x46\x69\x6C\x65","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x65\x64\x69\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x75\x74","\x63\x6F\x70\x79","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x68\x65\x6C\x70","\x61\x62\x6F\x75\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x65\x78\x65\x63\x75\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x20","\x70\x72\x6F\x6D\x70\x74","\x6C\x61\x62\x65\x6C","\x66\x75\x6E\x63\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x6D\x61\x72\x6B","\x61\x64\x64\x53\x68\x6F\x72\x74\x63\x75\x74","\x73\x68\x6F\x72\x74\x63\x75\x74","\x73\x70\x61\x6E","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x79","\x77\x72\x69\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x32\x70\x78\x20\x35\x30\x25","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x69\x73\x45\x64\x67\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x62\x65\x6E\x64\x73","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x69\x76","\x20\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x4D\x65\x6E\x75","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x61\x70\x70\x6C\x79","\x64\x65\x73\x74\x72\x6F\x79","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6C\x69\x63\x6B","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74"];Menus=function(_0x85edx1){this[_0xce9b[0]]=_0x85edx1;this[_0xce9b[1]]= new Object();this[_0xce9b[2]](); new Image()[_0xce9b[3]]=IMAGE_PATH+_0xce9b[4]};Menus[_0xce9b[5]][_0xce9b[2]]=function(){var _0x85edx2=this[_0xce9b[0]][_0xce9b[7]][_0xce9b[6]];this[_0xce9b[30]](_0xce9b[8], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){var _0x85edx5=[_0xce9b[9],_0xce9b[10],_0xce9b[11],_0xce9b[12],_0xce9b[13],_0xce9b[14],_0xce9b[15],_0xce9b[16],_0xce9b[17]];for(var _0x85edx6=0;_0x85edx6<_0x85edx5[_0xce9b[18]];_0x85edx6++){var _0x85edx7=this[_0xce9b[20]](_0x85edx3,_0x85edx5[_0x85edx6],[mxConstants[_0xce9b[19]]],[_0x85edx5[_0x85edx6]],null,_0x85edx4);_0x85edx7[_0xce9b[23]][_0xce9b[22]][_0xce9b[21]][_0xce9b[8]]=_0x85edx5[_0x85edx6]};_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[25]),_0xce9b[27],mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[31], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){var _0x85edx8=[6,8,9,10,11,12,14,18,24,36,48,72];for(var _0x85edx6=0;_0x85edx6<_0x85edx8[_0xce9b[18]];_0x85edx6++){this[_0xce9b[20]](_0x85edx3,_0x85edx8[_0x85edx6],[mxConstants[_0xce9b[32]]],[_0x85edx8[_0x85edx6]],null,_0x85edx4)};_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[25]),_0xce9b[33],_0xce9b[34],mxConstants.STYLE_FONTSIZE,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[35], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){var _0x85edx8=[1,2,3,4,8,12,16,24];for(var _0x85edx6=0;_0x85edx6<_0x85edx8[_0xce9b[18]];_0x85edx6++){this[_0xce9b[20]](_0x85edx3,_0x85edx8[_0x85edx6]+_0xce9b[36],[mxConstants[_0xce9b[37]]],[_0x85edx8[_0x85edx6]],null,_0x85edx4)};_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[25]),_0xce9b[38],_0xce9b[39],mxConstants.STYLE_STROKEWIDTH,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[40], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[41]),[mxConstants[_0xce9b[42]]],[null],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[43]),[mxConstants[_0xce9b[42]]],[_0xce9b[44]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[45]),[mxConstants[_0xce9b[42]],mxConstants[_0xce9b[46]]],[_0xce9b[47],_0xce9b[45]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[48]),[mxConstants[_0xce9b[42]],mxConstants[_0xce9b[46]]],[_0xce9b[47],_0xce9b[48]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[49]),[mxConstants[_0xce9b[42]]],[_0xce9b[50]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[51]),[mxConstants[_0xce9b[42]]],[_0xce9b[52]],null,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[53], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[54]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[56]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[57]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[58]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[59]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[60]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[61]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[62]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[63]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[64]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[65]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[66]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[67]),[mxConstants[_0xce9b[55]]],[mxConstants[_0xce9b[68]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[69]),null,function(){_0x85edx2[_0xce9b[71]](_0xce9b[70],true)},_0x85edx4,null,true);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[73]),_0xce9b[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[74], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[54]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[56]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[57]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[58]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[59]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[60]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[61]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[62]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[63]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[64]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[65]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[66]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[67]),[mxConstants[_0xce9b[75]]],[mxConstants[_0xce9b[68]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[69]),null,function(){_0x85edx2[_0xce9b[71]](_0xce9b[76],true)},_0x85edx4,null,true);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[73]),_0xce9b[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[77], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){var _0x85edx9=this[_0xce9b[0]][_0xce9b[80]][_0xce9b[26]](_0xce9b[79])[_0xce9b[78]];var _0x85edxa=this[_0xce9b[26]](_0xce9b[40])[_0xce9b[78]];if(_0x85edx9||_0x85edx3[_0xce9b[81]]){this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[82]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SPACING_TOP,_0x85edx4,_0x85edx9);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[84]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SPACING_RIGHT,_0x85edx4,_0x85edx9);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[85]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SPACING_BOTTOM,_0x85edx4,_0x85edx9);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[86]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SPACING_LEFT,_0x85edx4,_0x85edx9);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[87]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SPACING,_0x85edx4,_0x85edx9);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[88]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_PERIMETER_SPACING,_0x85edx4,_0x85edx9)};if(_0x85edxa||_0x85edx3[_0xce9b[81]]){_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[89]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_SOURCE_PERIMETER_SPACING,_0x85edx4,_0x85edxa);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[90]),_0xce9b[38],_0xce9b[83],mxConstants.STYLE_TARGET_PERIMETER_SPACING,_0x85edx4,_0x85edxa)}})));this[_0xce9b[30]](_0xce9b[91], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[92]](_0x85edx3,_0xce9b[21],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[93], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){var _0x85edxb=this[_0xce9b[26]](_0xce9b[93])[_0xce9b[78]];_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[94]](_0xce9b[8],_0x85edx3,_0x85edx4);this[_0xce9b[94]](_0xce9b[31],_0x85edx3,_0x85edx4);this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],_0xce9b[96],_0xce9b[97],_0xce9b[98],_0xce9b[95]],_0x85edx4);this[_0xce9b[94]](_0xce9b[100],_0x85edx3,_0x85edx4);this[_0xce9b[92]](_0x85edx3,_0xce9b[101],_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[28]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[102]),_0xce9b[103],_0xce9b[104],mxConstants.STYLE_TEXT_OPACITY,_0x85edx4,_0x85edxb);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[105]),null,function(){_0x85edx2[_0xce9b[71]](mxConstants.STYLE_NOLABEL,false)},_0x85edx4,null,_0x85edxb)})));this[_0xce9b[30]](_0xce9b[100], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[106]),[mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[108]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[109]),[mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[110]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[111]),[mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[112]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[113]),[mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[115]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[116]),[mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[117]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[118]),[mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[119]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[94]](_0xce9b[120],_0x85edx3,_0x85edx4);this[_0xce9b[94]](_0xce9b[77],_0x85edx3,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);var _0x85edxb=this[_0xce9b[26]](_0xce9b[93])[_0xce9b[78]];_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[48]),null,function(){_0x85edx2[_0xce9b[71]](mxConstants.STYLE_HORIZONTAL,true)},_0x85edx4,null,_0x85edxb)})));this[_0xce9b[30]](_0xce9b[120], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[86]),[mxConstants[_0xce9b[121]],mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[108]],mxConstants[_0xce9b[112]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[109]),[mxConstants[_0xce9b[121]],mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[110]],mxConstants[_0xce9b[110]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[84]),[mxConstants[_0xce9b[121]],mxConstants[_0xce9b[107]]],[mxConstants[_0xce9b[112]],mxConstants[_0xce9b[108]]],null,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[82]),[mxConstants[_0xce9b[122]],mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[115]],mxConstants[_0xce9b[119]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[116]),[mxConstants[_0xce9b[122]],mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[117]],mxConstants[_0xce9b[117]]],null,_0x85edx4);this[_0xce9b[20]](_0x85edx3,mxResources[_0xce9b[26]](_0xce9b[85]),[mxConstants[_0xce9b[122]],mxConstants[_0xce9b[114]]],[mxConstants[_0xce9b[119]],mxConstants[_0xce9b[115]]],null,_0x85edx4)})));this[_0xce9b[30]](_0xce9b[123], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[124]),null,function(){_0x85edx2[_0xce9b[71]](mxConstants.STYLE_FLIPH,false)},_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[125]),null,function(){_0x85edx2[_0xce9b[71]](mxConstants.STYLE_FLIPV,false)},_0x85edx4);this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],_0xce9b[126],_0xce9b[127]],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[128], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[106]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_LEFT)},_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[109]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_CENTER)},_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[111]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_RIGHT)},_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[113]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_TOP)},_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[116]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_MIDDLE)},_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[118]),null,function(){_0x85edx2[_0xce9b[129]](mxConstants.ALIGN_BOTTOM)},_0x85edx4)})));this[_0xce9b[30]](_0xce9b[130], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[131]),null,mxUtils[_0xce9b[29]](this,function(){var _0x85edxc= new mxHierarchicalLayout(_0x85edx2,mxConstants.DIRECTION_WEST);this[_0xce9b[0]][_0xce9b[132]](_0x85edxc,true,true)}),_0x85edx4);_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0xce9b[133]),null,mxUtils[_0xce9b[29]](this,function(){var _0x85edxc= new mxHierarchicalLayout(_0x85edx2,mxConstants.DIRECTION_NORTH);this[_0xce9b[0]][_0xce9b[132]](_0x85edxc,true,true)}),_0x85edx4)})));this[_0xce9b[30]](_0xce9b[134], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[135],_0xce9b[95],_0xce9b[136],_0xce9b[137],_0xce9b[95],_0xce9b[138],_0xce9b[139]],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[140], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[141],_0xce9b[142],_0xce9b[95]],_0x85edx4);this[_0xce9b[94]](_0xce9b[130],_0x85edx3,_0x85edx4);_0x85edx3[_0xce9b[24]](_0x85edx4);this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],_0xce9b[143],_0xce9b[144],_0xce9b[145]],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[146], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[147]],_0x85edx4);_0x85edx3[_0xce9b[24]]();var _0x85edxd=[0.25,0.5,0.75,1,2,4];for(var _0x85edx6=0;_0x85edx6<_0x85edxd[_0xce9b[18]];_0x85edx6++){(function(_0x85edxe){_0x85edx3[_0xce9b[72]]((_0x85edxe*100)+_0xce9b[148],null,function(){_0x85edx2[_0xce9b[149]](_0x85edxe)},_0x85edx4)})(_0x85edxd[_0x85edx6])};this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],_0xce9b[150],_0xce9b[151],_0xce9b[95],_0xce9b[152],_0xce9b[153],_0xce9b[95],_0xce9b[154],_0xce9b[155]],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[156], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[157],_0xce9b[158],_0xce9b[95],_0xce9b[159],_0xce9b[160],_0xce9b[161],_0xce9b[95],_0xce9b[162],_0xce9b[95],_0xce9b[163],_0xce9b[164],_0xce9b[95],_0xce9b[165],_0xce9b[166],_0xce9b[95],_0xce9b[167]],_0x85edx4)})));this[_0xce9b[30]](_0xce9b[168], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[169],_0xce9b[170],_0xce9b[95],_0xce9b[171],_0xce9b[172],_0xce9b[173],_0xce9b[174],_0xce9b[95],_0xce9b[175],_0xce9b[95],_0xce9b[176],_0xce9b[177],_0xce9b[178]])})));this[_0xce9b[30]](_0xce9b[179], new Menu(mxUtils[_0xce9b[29]](this,function(_0x85edx3,_0x85edx4){this[_0xce9b[99]](_0x85edx3,[_0xce9b[179],_0xce9b[95],_0xce9b[180]])})))};Menus[_0xce9b[5]][_0xce9b[30]]=function(_0x85edxf,_0x85edx3){this[_0xce9b[1]][_0x85edxf]=_0x85edx3};Menus[_0xce9b[5]][_0xce9b[26]]=function(_0x85edxf){return this[_0xce9b[1]][_0x85edxf]};Menus[_0xce9b[5]][_0xce9b[94]]=function(_0x85edxf,_0x85edx3,_0x85edx4){var _0x85edxb=this[_0xce9b[26]](_0x85edxf)[_0xce9b[78]];if(_0x85edx3[_0xce9b[81]]||_0x85edxb){var _0x85edx10=_0x85edx3[_0xce9b[72]](mxResources[_0xce9b[26]](_0x85edxf),null,null,_0x85edx4,null,_0x85edxb);this[_0xce9b[181]](_0x85edxf,_0x85edx3,_0x85edx10)}};Menus[_0xce9b[5]][_0xce9b[181]]=function(_0x85edxf,_0x85edx11,_0x85edx4){var _0x85edx3=this[_0xce9b[26]](_0x85edxf);if(_0x85edx3!=null&&(_0x85edx11[_0xce9b[81]]||_0x85edx3[_0xce9b[78]])){this[_0xce9b[26]](_0x85edxf)[_0xce9b[182]](_0x85edx11,_0x85edx4)}};Menus[_0xce9b[5]][_0xce9b[20]]=function(_0x85edx3,_0x85edx12,_0x85edx13,_0x85edx14,_0x85edx15,_0x85edx4){return _0x85edx3[_0xce9b[72]](_0x85edx12,null,mxUtils[_0xce9b[29]](this,function(){var _0x85edx2=this[_0xce9b[0]][_0xce9b[7]][_0xce9b[6]];_0x85edx2[_0xce9b[184]]()[_0xce9b[183]]();try{for(var _0x85edx6=0;_0x85edx6<_0x85edx13[_0xce9b[18]];_0x85edx6++){_0x85edx2[_0xce9b[185]](_0x85edx13[_0x85edx6],_0x85edx14[_0x85edx6])}}finally{_0x85edx2[_0xce9b[184]]()[_0xce9b[186]]()}}),_0x85edx4,_0x85edx15)};Menus[_0xce9b[5]][_0xce9b[28]]=function(_0x85edx3,_0x85edx12,_0x85edx16,_0x85edx17,_0x85edx18,_0x85edx4,_0x85edxb){return _0x85edx3[_0xce9b[72]](_0x85edx12,null,mxUtils[_0xce9b[29]](this,function(){var _0x85edx2=this[_0xce9b[0]][_0xce9b[7]][_0xce9b[6]];var _0x85edx19=_0x85edx17;var _0x85edx1a=_0x85edx2[_0xce9b[189]]()[_0xce9b[188]](_0x85edx2[_0xce9b[187]]());if(_0x85edx1a!=null){_0x85edx19=_0x85edx1a[_0xce9b[21]][_0x85edx18]||_0x85edx19};_0x85edx19=mxUtils[_0xce9b[192]](mxResources[_0xce9b[26]](_0xce9b[190])+((_0x85edx16[_0xce9b[18]]>0)?(_0xce9b[191]+_0x85edx16):_0xce9b[27]),_0x85edx19);if(_0x85edx19!=null&&_0x85edx19[_0xce9b[18]]>0){_0x85edx2[_0xce9b[185]](_0x85edx18,_0x85edx19)}}),_0x85edx4,null,_0x85edxb)};Menus[_0xce9b[5]][_0xce9b[92]]=function(_0x85edx3,_0x85edx18,_0x85edx4){var _0x85edx1b=this[_0xce9b[0]][_0xce9b[80]][_0xce9b[26]](_0x85edx18);if(_0x85edx1b!=null&&(_0x85edx3[_0xce9b[81]]||_0x85edx1b[_0xce9b[78]])){var _0x85edx1c=_0x85edx3[_0xce9b[72]](_0x85edx1b[_0xce9b[193]],null,_0x85edx1b[_0xce9b[194]],_0x85edx4,null,_0x85edx1b[_0xce9b[78]]);if(_0x85edx1b[_0xce9b[195]]&&_0x85edx1b[_0xce9b[196]]()){this[_0xce9b[197]](_0x85edx1c)};this[_0xce9b[198]](_0x85edx1c,_0x85edx1b);return _0x85edx1c};return null};Menus[_0xce9b[5]][_0xce9b[198]]=function(_0x85edx1c,_0x85edx1b){if(_0x85edx1b[_0xce9b[199]]!=null){var _0x85edx1d=_0x85edx1c[_0xce9b[23]][_0xce9b[22]][_0xce9b[22]];var _0x85edx1e=document[_0xce9b[201]](_0xce9b[200]);_0x85edx1e[_0xce9b[21]][_0xce9b[202]]=_0xce9b[203];mxUtils[_0xce9b[204]](_0x85edx1e,_0x85edx1b[_0xce9b[199]]);_0x85edx1d[_0xce9b[205]](_0x85edx1e)}};Menus[_0xce9b[5]][_0xce9b[197]]=function(_0x85edx1c){var _0x85edx1d=_0x85edx1c[_0xce9b[23]][_0xce9b[22]];_0x85edx1d[_0xce9b[21]][_0xce9b[206]]=_0xce9b[207]+IMAGE_PATH+_0xce9b[208];_0x85edx1d[_0xce9b[21]][_0xce9b[209]]=_0xce9b[210];_0x85edx1d[_0xce9b[21]][_0xce9b[211]]=_0xce9b[212]};Menus[_0xce9b[5]][_0xce9b[99]]=function(_0x85edx3,_0x85edx13,_0x85edx4){for(var _0x85edx6=0;_0x85edx6<_0x85edx13[_0xce9b[18]];_0x85edx6++){if(_0x85edx13[_0x85edx6]==_0xce9b[95]){_0x85edx3[_0xce9b[24]](_0x85edx4)}else {this[_0xce9b[92]](_0x85edx3,_0x85edx13[_0x85edx6],_0x85edx4)}}};Menus[_0xce9b[5]][_0xce9b[213]]=function(_0x85edx3,_0x85edx1f,_0x85edx20){var _0x85edx2=this[_0xce9b[0]][_0xce9b[7]][_0xce9b[6]];_0x85edx3[_0xce9b[214]]=true;if(_0x85edx2[_0xce9b[215]]()){this[_0xce9b[99]](_0x85edx3,[_0xce9b[169],_0xce9b[170],_0xce9b[95],_0xce9b[173],_0xce9b[95]])}else {this[_0xce9b[99]](_0x85edx3,[_0xce9b[174],_0xce9b[95],_0xce9b[171],_0xce9b[172],_0xce9b[95],_0xce9b[175]]);if(_0x85edx2[_0xce9b[216]]()==1&&_0x85edx2[_0xce9b[184]]()[_0xce9b[217]](_0x85edx2[_0xce9b[187]]())){this[_0xce9b[99]](_0x85edx3,[_0xce9b[218]])};_0x85edx3[_0xce9b[24]]()};if(_0x85edx2[_0xce9b[216]]()>0){this[_0xce9b[99]](_0x85edx3,[_0xce9b[141],_0xce9b[142],_0xce9b[95]]);if(_0x85edx2[_0xce9b[184]]()[_0xce9b[217]](_0x85edx2[_0xce9b[187]]())){var _0x85edx21=false;var _0x85edx1f=_0x85edx2[_0xce9b[187]]();if(_0x85edx1f!=null&&_0x85edx2[_0xce9b[184]]()[_0xce9b[217]](_0x85edx1f)){var _0x85edx22=_0x85edx2[_0xce9b[220]][_0xce9b[219]](_0x85edx1f);if(_0x85edx22 instanceof mxEdgeHandler&&_0x85edx22[_0xce9b[221]]!=null&&_0x85edx22[_0xce9b[221]][_0xce9b[18]]>2){var _0x85edx23=_0x85edx22[_0xce9b[222]]( new mxMouseEvent(_0x85edx20));var _0x85edx24=this[_0xce9b[0]][_0xce9b[80]][_0xce9b[26]](_0xce9b[223]);_0x85edx24[_0xce9b[224]]=_0x85edx22;_0x85edx24[_0xce9b[225]]=_0x85edx23;_0x85edx21=_0x85edx23>0&&_0x85edx23<_0x85edx22[_0xce9b[221]][_0xce9b[18]]}};this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],(_0x85edx21)?_0xce9b[223]:_0xce9b[226]])}else {if(_0x85edx2[_0xce9b[216]]()>1){_0x85edx3[_0xce9b[24]]();this[_0xce9b[99]](_0x85edx3,[_0xce9b[143]])}};_0x85edx3[_0xce9b[24]]();if(_0x85edx2[_0xce9b[216]]()==1){var _0x85edx25=_0x85edx2[_0xce9b[227]](_0x85edx2[_0xce9b[187]]());if(_0x85edx25!=null){this[_0xce9b[99]](_0x85edx3,[_0xce9b[228]])}}}else {this[_0xce9b[99]](_0x85edx3,[_0xce9b[95],_0xce9b[176],_0xce9b[177],_0xce9b[95],_0xce9b[178]])}};Menus[_0xce9b[5]][_0xce9b[229]]=function(_0x85edx26){var _0x85edx27= new Menubar(this[_0xce9b[0]],_0x85edx26);var _0x85edx28=[_0xce9b[156],_0xce9b[168],_0xce9b[146],_0xce9b[91],_0xce9b[93],_0xce9b[140]];for(var _0x85edx6=0;_0x85edx6<_0x85edx28[_0xce9b[18]];_0x85edx6++){_0x85edx27[_0xce9b[181]](mxResources[_0xce9b[26]](_0x85edx28[_0x85edx6]),this[_0xce9b[26]](_0x85edx28[_0x85edx6])[_0xce9b[194]])};return _0x85edx27};function Menubar(_0x85edx1,_0x85edx26){this[_0xce9b[0]]=_0x85edx1;this[_0xce9b[230]]=_0x85edx26;mxEvent[_0xce9b[232]](document,mxUtils[_0xce9b[29]](this,function(_0x85edx20){this[_0xce9b[231]]()}))}Menubar[_0xce9b[5]][_0xce9b[231]]=function(){if(this[_0xce9b[233]]!=null){this[_0xce9b[233]][_0xce9b[231]]()}};Menubar[_0xce9b[5]][_0xce9b[181]]=function(_0x85edx12,_0x85edx2a){var _0x85edx2b=document[_0xce9b[201]](_0xce9b[234]);_0x85edx2b[_0xce9b[237]](_0xce9b[235],_0xce9b[236]);_0x85edx2b[_0xce9b[238]]=_0xce9b[239];mxUtils[_0xce9b[204]](_0x85edx2b,_0x85edx12);this[_0xce9b[240]](_0x85edx2b,_0x85edx2a);this[_0xce9b[230]][_0xce9b[205]](_0x85edx2b);return _0x85edx2b};Menubar[_0xce9b[5]][_0xce9b[240]]=function(_0x85edx2b,_0x85edx2a){if(_0x85edx2a!=null){var _0x85edx2c=true;var _0x85edx2d=mxUtils[_0xce9b[29]](this,function(_0x85edx20){if(_0x85edx2c&&_0x85edx2b[_0xce9b[78]]==null||_0x85edx2b[_0xce9b[78]]){this[_0xce9b[0]][_0xce9b[7]][_0xce9b[6]][_0xce9b[241]][_0xce9b[231]]();var _0x85edx3= new mxPopupMenu(_0x85edx2a);_0x85edx3[_0xce9b[242]][_0xce9b[238]]+=_0xce9b[243];_0x85edx3[_0xce9b[214]]=true;_0x85edx3[_0xce9b[81]]=true;_0x85edx3[_0xce9b[244]]=true;_0x85edx3[_0xce9b[231]]=mxUtils[_0xce9b[29]](this,function(){mxPopupMenu[_0xce9b[5]][_0xce9b[231]][_0xce9b[245]](_0x85edx3,arguments);_0x85edx3[_0xce9b[246]]();this[_0xce9b[233]]=null;this[_0xce9b[247]]=null});var _0x85edx2e=_0x85edx2b[_0xce9b[248]]+document[_0xce9b[251]](_0xce9b[250])[_0xce9b[249]]+22;var _0x85edx2f=_0x85edx2b[_0xce9b[252]]+_0x85edx2b[_0xce9b[253]]+140;_0x85edx3[_0xce9b[254]](_0x85edx2e,_0x85edx2f,null,_0x85edx20);this[_0xce9b[233]]=_0x85edx3;this[_0xce9b[247]]=_0x85edx2b};_0x85edx2c=true;mxEvent[_0xce9b[255]](_0x85edx20)});mxEvent[_0xce9b[257]](_0x85edx2b,_0xce9b[256],mxUtils[_0xce9b[29]](this,function(_0x85edx20){if(this[_0xce9b[233]]!=null&&this[_0xce9b[247]]!=_0x85edx2b){this[_0xce9b[231]]();_0x85edx2d(_0x85edx20)}}));mxEvent[_0xce9b[257]](_0x85edx2b,_0xce9b[258],mxUtils[_0xce9b[29]](this,function(){_0x85edx2c=this[_0xce9b[247]]!=_0x85edx2b}));mxEvent[_0xce9b[257]](_0x85edx2b,_0xce9b[259],_0x85edx2d)}};function Menu(_0x85edx2a,_0x85edxb){mxEventSource[_0xce9b[260]](this);this[_0xce9b[194]]=_0x85edx2a;this[_0xce9b[78]]=(_0x85edxb!=null)?_0x85edxb:true}mxUtils[_0xce9b[261]](Menu,mxEventSource);Menu[_0xce9b[5]][_0xce9b[262]]=function(_0x85edx19){if(this[_0xce9b[78]]!=_0x85edx19){this[_0xce9b[78]]=_0x85edx19;this[_0xce9b[264]]( new mxEventObject(_0xce9b[263]))}};Menu[_0xce9b[5]][_0xce9b[182]]=function(_0x85edx3,_0x85edx4){this[_0xce9b[194]](_0x85edx3,_0x85edx4)} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Shapes.js b/public/assets/plugins/jscripty/js/Shapes.js index 2ab4acb..658139c 100644 --- a/public/assets/plugins/jscripty/js/Shapes.js +++ b/public/assets/plugins/jscripty/js/Shapes.js @@ -1 +1 @@ -var _0x6924=["\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x73\x69\x7A\x65","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6D\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x65\x6E\x64","\x63\x6C\x6F\x73\x65","\x63\x75\x62\x65","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x6E\x6F\x74\x65","\x74\x61\x62\x57\x69\x64\x74\x68","\x74\x61\x62\x48\x65\x69\x67\x68\x74","\x74\x61\x62\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x69\x67\x68\x74","\x6C\x65\x66\x74","\x66\x6F\x6C\x64\x65\x72","\x63\x61\x72\x64","\x71\x75\x61\x64\x54\x6F","\x74\x61\x70\x65","\x73\x74\x65\x70","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x65\x67\x69\x6E","\x73\x74\x72\x6F\x6B\x65","\x61\x70\x70\x6C\x79","\x70\x6C\x75\x73","\x64\x6F\x75\x62\x6C\x65","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x6D\x61\x78","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x79\x6D\x62\x6F\x6C","\x41\x6C\x69\x67\x6E","\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x57\x69\x64\x74\x68","\x48\x65\x69\x67\x68\x74","\x53\x70\x61\x63\x69\x6E\x67","\x41\x72\x63\x53\x70\x61\x63\x69\x6E\x67","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x73\x61\x76\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x72\x65\x73\x74\x6F\x72\x65","\x65\x78\x74","\x6D\x65\x73\x73\x61\x67\x65","\x61\x64\x64\x50\x69\x70\x65","\x63\x75\x72\x76\x65\x54\x6F","\x75\x6D\x6C\x41\x63\x74\x6F\x72","\x6C\x6F\x6C\x6C\x69\x70\x6F\x70","\x6A\x65\x74\x74\x79\x57\x69\x64\x74\x68","\x6A\x65\x74\x74\x79\x48\x65\x69\x67\x68\x74","\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74","\x6F\x75\x74\x65\x72\x53\x74\x72\x6F\x6B\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x65\x6E\x64\x53\x74\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x74\x61\x74\x65","\x69\x6E\x69\x74\x53\x68\x61\x70\x65\x73","\x78","\x79","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x73\x68\x61\x70\x65\x73","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x72\x74","\x6C\x69\x6E\x6B","\x64\x61\x73\x68","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x73\x65\x47\x72\x69\x64\x46\x6F\x72\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x69\x6E\x69\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68","\x76\x69\x65\x77","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x73\x72\x63","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x74\x56\x69\x65\x77","\x63\x75\x72\x73\x6F\x72","\x6E\x6F\x64\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x43\x75\x72\x73\x6F\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74","\x72\x65\x64\x72\x61\x77","\x62\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73","\x64\x65\x73\x74\x72\x6F\x79","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x6F\x75\x72\x63\x65","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x76\x65\x6E\x74","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x73\x63\x61\x6C\x65","\x73\x6E\x61\x70","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x70\x70\x6C\x79\x53\x74\x79\x6C\x65","\x72\x65\x73\x65\x74","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x73\x68\x61\x70\x65","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x63\x6F\x73","\x73\x69\x6E","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x50\x6F\x69\x6E\x74","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65\x55\x6E\x72\x6F\x74\x61\x74\x65\x64","\x72\x6F\x75\x6E\x64","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x63\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x61\x6C\x75\x65","\x73\x63\x61\x6C\x65\x46\x61\x63\x74\x6F\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x73\x74\x65\x6E\x63\x69\x6C","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73"];(function(){function _0x16a0x1(){}_0x16a0x1[_0x6924[0]]= new mxCylinder();_0x16a0x1[_0x6924[0]][_0x6924[1]]=_0x16a0x1;_0x16a0x1[_0x6924[0]][_0x6924[2]]=20;_0x16a0x1[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x8=Math[_0x6924[6]](_0x16a0x5,Math[_0x6924[6]](_0x16a0x6,mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]])));if(_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x8,_0x16a0x6);_0x16a0x2[_0x6924[8]](_0x16a0x8,_0x16a0x8);_0x16a0x2[_0x6924[8]](0,0);_0x16a0x2[_0x6924[7]](_0x16a0x8,_0x16a0x8);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x8);_0x16a0x2[_0x6924[9]]()}else {_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0x8,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x8);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](_0x16a0x8,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6-_0x16a0x8);_0x16a0x2[_0x6924[8]](0,0);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[11]]=_0x16a0x1;function _0x16a0x9(){}_0x16a0x9[_0x6924[0]]= new mxCylinder();_0x16a0x9[_0x6924[0]][_0x6924[1]]=_0x16a0x9;_0x16a0x9[_0x6924[0]][_0x6924[2]]=30;_0x16a0x9[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x8=Math[_0x6924[6]](_0x16a0x5,Math[_0x6924[6]](_0x16a0x6,mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]])));if(_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x5-_0x16a0x8,0);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0x8,_0x16a0x8);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x8);_0x16a0x2[_0x6924[9]]()}else {_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0x8,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x8);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,0);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[13]]=_0x16a0x9;function _0x16a0xa(){}_0x16a0xa[_0x6924[0]]= new mxCylinder();_0x16a0xa[_0x6924[0]][_0x6924[1]]=_0x16a0xa;_0x16a0xa[_0x6924[0]][_0x6924[14]]=60;_0x16a0xa[_0x6924[0]][_0x6924[15]]=20;_0x16a0xa[_0x6924[0]][_0x6924[16]]=_0x6924[17];_0x16a0xa[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0xb=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[14],this[_0x6924[14]]);var _0x16a0xc=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[15],this[_0x6924[15]]);var _0x16a0xd=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[16],this[_0x6924[16]]);var _0x16a0xe=Math[_0x6924[6]](_0x16a0x5,_0x16a0xb);var _0x16a0xf=Math[_0x6924[6]](_0x16a0x6,_0x16a0xc);if(_0x16a0x7){if(_0x16a0xd==_0x6924[18]){_0x16a0x2[_0x6924[7]](0,_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0xe,_0x16a0xf)}else {_0x16a0x2[_0x6924[7]](_0x16a0x5-_0x16a0xe,_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0xf)};_0x16a0x2[_0x6924[9]]()}else {if(_0x16a0xd==_0x6924[18]){_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0xe,0);_0x16a0x2[_0x6924[8]](_0x16a0xe,_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0xf)}else {_0x16a0x2[_0x6924[7]](0,_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0xe,_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0xe,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,0)};_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0xf);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[19]]=_0x16a0xa;function _0x16a0x10(){}_0x16a0x10[_0x6924[0]]= new mxCylinder();_0x16a0x10[_0x6924[0]][_0x6924[1]]=_0x16a0x10;_0x16a0x10[_0x6924[0]][_0x6924[2]]=30;_0x16a0x10[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x8=Math[_0x6924[6]](_0x16a0x5,Math[_0x6924[6]](_0x16a0x6,mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]])));if(!_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x8,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x8);_0x16a0x2[_0x6924[8]](_0x16a0x8,0);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[20]]=_0x16a0x10;function _0x16a0x11(){}_0x16a0x11[_0x6924[0]]= new mxCylinder();_0x16a0x11[_0x6924[0]][_0x6924[1]]=_0x16a0x11;_0x16a0x11[_0x6924[0]][_0x6924[2]]=0.4;_0x16a0x11[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x8=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]]);var _0x16a0xf=_0x16a0x6*_0x16a0x8;var _0x16a0x12=1.4;if(!_0x16a0x7){_0x16a0x2[_0x6924[7]](0,_0x16a0xf/2);_0x16a0x2[_0x6924[21]](_0x16a0x5/4,_0x16a0xf*_0x16a0x12,_0x16a0x5/2,_0x16a0xf/2);_0x16a0x2[_0x6924[21]](_0x16a0x5*3/4,_0x16a0xf*(1-_0x16a0x12),_0x16a0x5,_0x16a0xf/2);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6-_0x16a0xf/2);_0x16a0x2[_0x6924[21]](_0x16a0x5*3/4,_0x16a0x6-_0x16a0xf*_0x16a0x12,_0x16a0x5/2,_0x16a0x6-_0x16a0xf/2);_0x16a0x2[_0x6924[21]](_0x16a0x5/4,_0x16a0x6-_0x16a0xf*(1-_0x16a0x12),0,_0x16a0x6-_0x16a0xf/2);_0x16a0x2[_0x6924[8]](0,_0x16a0xf/2);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[22]]=_0x16a0x11;function _0x16a0x13(){}_0x16a0x13[_0x6924[0]]= new mxCylinder();_0x16a0x13[_0x6924[0]][_0x6924[1]]=_0x16a0x13;_0x16a0x13[_0x6924[0]][_0x6924[2]]=0.2;_0x16a0x13[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x8=_0x16a0x5*mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]]);if(!_0x16a0x7){_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0x8,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6/2);_0x16a0x2[_0x6924[8]](_0x16a0x5-_0x16a0x8,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[8]](_0x16a0x8,_0x16a0x6/2);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[23]]=_0x16a0x13;function _0x16a0x14(){mxRectangleShape[_0x6924[24]](this)}mxUtils[_0x6924[25]](_0x16a0x14,mxRectangleShape);_0x16a0x14[_0x6924[0]][_0x6924[26]]=function(){return false};_0x16a0x14[_0x6924[0]][_0x6924[27]]=function(_0x16a0x15,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6){var _0x16a0x16=Math[_0x6924[6]](_0x16a0x5/5,_0x16a0x6/5)+1;_0x16a0x15[_0x6924[28]]();_0x16a0x15[_0x6924[7]](_0x16a0x3+_0x16a0x5/2,_0x16a0x4+_0x16a0x16);_0x16a0x15[_0x6924[8]](_0x16a0x3+_0x16a0x5/2,_0x16a0x4+_0x16a0x6-_0x16a0x16);_0x16a0x15[_0x6924[7]](_0x16a0x3+_0x16a0x16,_0x16a0x4+_0x16a0x6/2);_0x16a0x15[_0x6924[8]](_0x16a0x3+_0x16a0x5-_0x16a0x16,_0x16a0x4+_0x16a0x6/2);_0x16a0x15[_0x6924[9]]();_0x16a0x15[_0x6924[29]]();mxRectangleShape[_0x6924[0]][_0x6924[27]][_0x6924[30]](this,arguments)};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[31]]=_0x16a0x14;function _0x16a0x17(){mxRectangleShape[_0x6924[24]](this)}mxUtils[_0x6924[25]](_0x16a0x17,mxRectangleShape);_0x16a0x17[_0x6924[0]][_0x6924[26]]=function(){return false};_0x16a0x17[_0x6924[0]][_0x6924[27]]=function(_0x16a0x15,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6){if(this[_0x6924[4]]!=null){if(this[_0x6924[4]][_0x6924[32]]==1){var _0x16a0x18=Math[_0x6924[34]](2,this[_0x6924[33]]+1);mxRectangleShape[_0x6924[0]][_0x6924[35]][_0x6924[24]](this,_0x16a0x15,_0x16a0x3+_0x16a0x18,_0x16a0x4+_0x16a0x18,_0x16a0x5-2*_0x16a0x18,_0x16a0x6-2*_0x16a0x18);mxRectangleShape[_0x6924[0]][_0x6924[27]][_0x6924[30]](this,arguments);_0x16a0x3+=_0x16a0x18;_0x16a0x4+=_0x16a0x18;_0x16a0x5-=2*_0x16a0x18;_0x16a0x6-=2*_0x16a0x18};_0x16a0x15[_0x6924[36]](false);var _0x16a0x19=0;var _0x16a0x1a=null;do{_0x16a0x1a=mxCellRenderer[_0x6924[0]][_0x6924[12]][this[_0x6924[4]][_0x6924[37]+_0x16a0x19]];if(_0x16a0x1a!=null){var _0x16a0x1b=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[38]];var _0x16a0x1c=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[39]];var _0x16a0x1d=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[40]];var _0x16a0x1e=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[41]];var _0x16a0x1f=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[42]]||0;var _0x16a0x20=this[_0x6924[4]][_0x6924[37]+_0x16a0x19+_0x6924[43]];if(_0x16a0x20!=null){_0x16a0x1f+=this[_0x6924[44]](_0x16a0x5+this[_0x6924[33]],_0x16a0x6+this[_0x6924[33]])*_0x16a0x20};var _0x16a0x21=_0x16a0x3;var _0x16a0x22=_0x16a0x4;if(_0x16a0x1b==mxConstants[_0x6924[45]]){_0x16a0x21+=(_0x16a0x5-_0x16a0x1d)/2}else {if(_0x16a0x1b==mxConstants[_0x6924[46]]){_0x16a0x21+=_0x16a0x5-_0x16a0x1d-_0x16a0x1f}else {_0x16a0x21+=_0x16a0x1f}};if(_0x16a0x1c==mxConstants[_0x6924[47]]){_0x16a0x22+=(_0x16a0x6-_0x16a0x1e)/2}else {if(_0x16a0x1c==mxConstants[_0x6924[48]]){_0x16a0x22+=_0x16a0x6-_0x16a0x1e-_0x16a0x1f}else {_0x16a0x22+=_0x16a0x1f}};_0x16a0x15[_0x6924[49]]();var _0x16a0x23= new _0x16a0x1a();_0x16a0x23[_0x6924[4]]=this[_0x6924[4]];_0x16a0x1a[_0x6924[0]][_0x6924[50]][_0x6924[24]](_0x16a0x23,_0x16a0x15,_0x16a0x21,_0x16a0x22,_0x16a0x1d,_0x16a0x1e);_0x16a0x15[_0x6924[51]]()};_0x16a0x19++}while(_0x16a0x1a!=null);}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[52]]=_0x16a0x17;function _0x16a0x24(){}_0x16a0x24[_0x6924[0]]= new mxCylinder();_0x16a0x24[_0x6924[0]][_0x6924[1]]=_0x16a0x24;_0x16a0x24[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){if(_0x16a0x7){_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0x5/2,_0x16a0x6/2);_0x16a0x2[_0x6924[8]](_0x16a0x5,0);_0x16a0x2[_0x6924[9]]()}else {_0x16a0x2[_0x6924[7]](0,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[10]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[53]]=_0x16a0x24;function _0x16a0x25(){}_0x16a0x25[_0x6924[0]]= new mxCylinder();_0x16a0x25[_0x6924[0]][_0x6924[1]]=_0x16a0x25;_0x16a0x25[_0x6924[0]][_0x6924[54]]=true;_0x16a0x25[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x1d=_0x16a0x5/3;var _0x16a0x1e=_0x16a0x6/4;if(!_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[55]](_0x16a0x5/2-_0x16a0x1d,_0x16a0x1e,_0x16a0x5/2-_0x16a0x1d,0,_0x16a0x5/2,0);_0x16a0x2[_0x6924[55]](_0x16a0x5/2+_0x16a0x1d,0,_0x16a0x5/2+_0x16a0x1d,_0x16a0x1e,_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[8]](_0x16a0x5/2,2*_0x16a0x6/3);_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x6/3);_0x16a0x2[_0x6924[8]](0,_0x16a0x6/3);_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x6/3);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6/3);_0x16a0x2[_0x6924[7]](_0x16a0x5/2,2*_0x16a0x6/3);_0x16a0x2[_0x6924[8]](0,_0x16a0x6);_0x16a0x2[_0x6924[7]](_0x16a0x5/2,2*_0x16a0x6/3);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[56]]=_0x16a0x25;function _0x16a0x26(){}_0x16a0x26[_0x6924[0]]= new mxCylinder();_0x16a0x26[_0x6924[0]][_0x6924[1]]=_0x16a0x26;_0x16a0x26[_0x6924[0]][_0x6924[2]]=10;_0x16a0x26[_0x6924[0]][_0x6924[54]]=true;_0x16a0x26[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0x27=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[2],this[_0x6924[2]]);var _0x16a0x1d=_0x16a0x27*2/3;var _0x16a0x1e=_0x16a0x27;if(!_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[55]](_0x16a0x5/2-_0x16a0x1d,_0x16a0x1e,_0x16a0x5/2-_0x16a0x1d,0,_0x16a0x5/2,0);_0x16a0x2[_0x6924[55]](_0x16a0x5/2+_0x16a0x1d,0,_0x16a0x5/2+_0x16a0x1d,_0x16a0x1e,_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[7]](_0x16a0x5/2,_0x16a0x1e);_0x16a0x2[_0x6924[8]](_0x16a0x5/2,_0x16a0x6);_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[57]]=_0x16a0x26;function _0x16a0x28(){}_0x16a0x28[_0x6924[0]]= new mxCylinder();_0x16a0x28[_0x6924[0]][_0x6924[1]]=_0x16a0x28;_0x16a0x28[_0x6924[0]][_0x6924[58]]=32;_0x16a0x28[_0x6924[0]][_0x6924[59]]=12;_0x16a0x28[_0x6924[0]][_0x6924[3]]=function(_0x16a0x2,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6,_0x16a0x7){var _0x16a0xe=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[58],this[_0x6924[58]]);var _0x16a0xf=mxUtils[_0x6924[5]](this[_0x6924[4]],_0x6924[59],this[_0x6924[59]]);var _0x16a0x29=_0x16a0xe/2;var _0x16a0x2a=_0x16a0x29+_0x16a0xe/2;var _0x16a0x2b=0.3*_0x16a0x6-_0x16a0xf/2;var _0x16a0x2c=0.7*_0x16a0x6-_0x16a0xf/2;if(_0x16a0x7){_0x16a0x2[_0x6924[7]](_0x16a0x29,_0x16a0x2b);_0x16a0x2[_0x6924[8]](_0x16a0x2a,_0x16a0x2b);_0x16a0x2[_0x6924[8]](_0x16a0x2a,_0x16a0x2b+_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2b+_0x16a0xf);_0x16a0x2[_0x6924[7]](_0x16a0x29,_0x16a0x2c);_0x16a0x2[_0x6924[8]](_0x16a0x2a,_0x16a0x2c);_0x16a0x2[_0x6924[8]](_0x16a0x2a,_0x16a0x2c+_0x16a0xf);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2c+_0x16a0xf);_0x16a0x2[_0x6924[9]]()}else {_0x16a0x2[_0x6924[7]](_0x16a0x29,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,0);_0x16a0x2[_0x6924[8]](_0x16a0x5,_0x16a0x6);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x6);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2c+_0x16a0xf);_0x16a0x2[_0x6924[8]](0,_0x16a0x2c+_0x16a0xf);_0x16a0x2[_0x6924[8]](0,_0x16a0x2c);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2c);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2b+_0x16a0xf);_0x16a0x2[_0x6924[8]](0,_0x16a0x2b+_0x16a0xf);_0x16a0x2[_0x6924[8]](0,_0x16a0x2b);_0x16a0x2[_0x6924[8]](_0x16a0x29,_0x16a0x2b);_0x16a0x2[_0x6924[10]]();_0x16a0x2[_0x6924[9]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[60]]=_0x16a0x28;function _0x16a0x2d(){}_0x16a0x2d[_0x6924[0]]= new mxDoubleEllipse();_0x16a0x2d[_0x6924[0]][_0x6924[1]]=_0x16a0x2d;_0x16a0x2d[_0x6924[0]][_0x6924[61]]=true;_0x16a0x2d[_0x6924[0]][_0x6924[50]]=function(_0x16a0x15,_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6){var _0x16a0x18=Math[_0x6924[6]](4,Math[_0x6924[6]](_0x16a0x5/5,_0x16a0x6/5));if(_0x16a0x5>0&&_0x16a0x6>0){_0x16a0x15[_0x6924[62]](_0x16a0x3+_0x16a0x18,_0x16a0x4+_0x16a0x18,_0x16a0x5-2*_0x16a0x18,_0x16a0x6-2*_0x16a0x18);_0x16a0x15[_0x6924[63]]()};_0x16a0x15[_0x6924[64]](false);if(this[_0x6924[61]]){_0x16a0x15[_0x6924[62]](_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6);_0x16a0x15[_0x6924[29]]()}};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[65]]=_0x16a0x2d;function _0x16a0x2e(){}_0x16a0x2e[_0x6924[0]]= new _0x16a0x2d();_0x16a0x2e[_0x6924[0]][_0x6924[1]]=_0x16a0x2e;_0x16a0x2e[_0x6924[0]][_0x6924[61]]=false;mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[66]]=_0x16a0x2e;var _0x16a0x2f=mxImageExport[_0x6924[0]][_0x6924[67]];mxImageExport[_0x6924[0]][_0x6924[67]]=function(){_0x16a0x2f[_0x6924[30]](this,arguments);function _0x16a0x30(_0x16a0x31){return {drawShape:function(_0x16a0x32,_0x16a0x33,_0x16a0x34,_0x16a0x35){var _0x16a0x3=_0x16a0x34[_0x6924[68]];var _0x16a0x4=_0x16a0x34[_0x6924[69]];var _0x16a0x5=_0x16a0x34[_0x6924[70]];var _0x16a0x6=_0x16a0x34[_0x6924[71]];if(_0x16a0x35){var _0x16a0x18=Math[_0x6924[6]](4,Math[_0x6924[6]](_0x16a0x5/5,_0x16a0x6/5));_0x16a0x3+=_0x16a0x18;_0x16a0x4+=_0x16a0x18;_0x16a0x5-=2*_0x16a0x18;_0x16a0x6-=2*_0x16a0x18;if(_0x16a0x5>0&&_0x16a0x6>0){_0x16a0x32[_0x6924[62]](_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6)};return true}else {_0x16a0x32[_0x6924[63]]();if(_0x16a0x31){_0x16a0x32[_0x6924[62]](_0x16a0x3,_0x16a0x4,_0x16a0x5,_0x16a0x6);_0x16a0x32[_0x6924[29]]()}}}}}this[_0x6924[72]][_0x6924[65]]=_0x16a0x30(true);this[_0x6924[72]][_0x6924[66]]=_0x16a0x30(false)};function _0x16a0x36(){mxArrow[_0x6924[24]](this)}mxUtils[_0x6924[25]](_0x16a0x36,mxArrow);_0x16a0x36[_0x6924[0]][_0x6924[73]]=function(_0x16a0x15,_0x16a0x37){var _0x16a0x1d=10;var _0x16a0x38=_0x16a0x37[0];var _0x16a0x39=_0x16a0x37[_0x16a0x37[_0x6924[74]]-1];var _0x16a0xe=_0x16a0x39[_0x6924[68]]-_0x16a0x38[_0x6924[68]];var _0x16a0xf=_0x16a0x39[_0x6924[69]]-_0x16a0x38[_0x6924[69]];var _0x16a0x3a=Math[_0x6924[75]](_0x16a0xe*_0x16a0xe+_0x16a0xf*_0x16a0xf);var _0x16a0x3b=_0x16a0x3a;var _0x16a0x3c=_0x16a0xe/_0x16a0x3a;var _0x16a0x3d=_0x16a0xf/_0x16a0x3a;var _0x16a0x3e=_0x16a0x3b*_0x16a0x3c;var _0x16a0x3f=_0x16a0x3b*_0x16a0x3d;var _0x16a0x40=_0x16a0x1d*_0x16a0x3d/3;var _0x16a0x41=-_0x16a0x1d*_0x16a0x3c/3;var _0x16a0x42=_0x16a0x38[_0x6924[68]]-_0x16a0x40/2;var _0x16a0x43=_0x16a0x38[_0x6924[69]]-_0x16a0x41/2;var _0x16a0x44=_0x16a0x42+_0x16a0x40;var _0x16a0x45=_0x16a0x43+_0x16a0x41;var _0x16a0x46=_0x16a0x44+_0x16a0x3e;var _0x16a0x47=_0x16a0x45+_0x16a0x3f;var _0x16a0x48=_0x16a0x46+_0x16a0x40;var _0x16a0x49=_0x16a0x47+_0x16a0x41;var _0x16a0x4a=_0x16a0x48-3*_0x16a0x40;var _0x16a0x4b=_0x16a0x49-3*_0x16a0x41;_0x16a0x15[_0x6924[28]]();_0x16a0x15[_0x6924[7]](_0x16a0x44,_0x16a0x45);_0x16a0x15[_0x6924[8]](_0x16a0x46,_0x16a0x47);_0x16a0x15[_0x6924[7]](_0x16a0x4a+_0x16a0x40,_0x16a0x4b+_0x16a0x41);_0x16a0x15[_0x6924[8]](_0x16a0x42,_0x16a0x43);_0x16a0x15[_0x6924[29]]()};mxCellRenderer[_0x6924[0]][_0x6924[12]][_0x6924[76]]=_0x16a0x36;mxMarker[_0x6924[78]](_0x6924[77],function(_0x16a0x32,_0x16a0x1a,_0x16a0x4c,_0x16a0x39,_0x16a0x4d,_0x16a0x4e,_0x16a0x4f,_0x16a0x50,_0x16a0x51,_0x16a0x52){var _0x16a0x3c=_0x16a0x4d*(_0x16a0x4f+_0x16a0x51+1);var _0x16a0x3d=_0x16a0x4e*(_0x16a0x4f+_0x16a0x51+1);return function(){_0x16a0x32[_0x6924[28]]();_0x16a0x32[_0x6924[7]](_0x16a0x39[_0x6924[68]]-_0x16a0x3c/2-_0x16a0x3d/2,_0x16a0x39[_0x6924[69]]-_0x16a0x3d/2+_0x16a0x3c/2);_0x16a0x32[_0x6924[8]](_0x16a0x39[_0x6924[68]]+_0x16a0x3d/2-3*_0x16a0x3c/2,_0x16a0x39[_0x6924[69]]-3*_0x16a0x3d/2-_0x16a0x3c/2);_0x16a0x32[_0x6924[29]]()}});var _0x16a0x53=-99;if( typeof (mxVertexHandler)!=_0x6924[79]){function _0x16a0x54(_0x16a0x33){mxVertexHandler[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x54,mxVertexHandler);_0x16a0x54[_0x6924[0]][_0x6924[80]]=false;_0x16a0x54[_0x6924[0]][_0x6924[81]]=function(){this[_0x6924[82]]=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],mxConstants.STYLE_HORIZONTAL,true);var _0x16a0x55=this[_0x6924[83]][_0x6924[85]][_0x6924[84]];if(this[_0x6924[86]]!=null){var _0x16a0x34= new mxRectangle(0,0,this[_0x6924[86]][_0x6924[70]],this[_0x6924[86]][_0x6924[71]]);this[_0x6924[87]]= new mxImageShape(_0x16a0x34,this[_0x6924[86]][_0x6924[88]])}else {var _0x16a0x4f=10;var _0x16a0x34= new mxRectangle(0,0,_0x16a0x4f,_0x16a0x4f);this[_0x6924[87]]= new mxRhombus(_0x16a0x34,mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};this[_0x6924[87]][_0x6924[89]]=(_0x16a0x55[_0x6924[89]]!=mxConstants[_0x6924[90]])?mxConstants[_0x6924[91]]:mxConstants[_0x6924[90]];this[_0x6924[87]][_0x6924[81]](_0x16a0x55[_0x6924[93]]()[_0x6924[92]]());this[_0x6924[87]][_0x6924[95]][_0x6924[4]][_0x6924[94]]=this[_0x6924[96]]();mxEvent[_0x6924[97]](this[_0x6924[87]][_0x6924[95]],_0x16a0x55,this[_0x6924[83]]);mxVertexHandler[_0x6924[0]][_0x6924[81]][_0x6924[30]](this,arguments)};_0x16a0x54[_0x6924[0]][_0x6924[96]]=function(){return _0x6924[98]};_0x16a0x54[_0x6924[0]][_0x6924[99]]=function(){mxVertexHandler[_0x6924[0]][_0x6924[99]][_0x6924[30]](this,arguments);var _0x16a0x4f=this[_0x6924[87]][_0x6924[100]][_0x6924[70]];this[_0x6924[87]][_0x6924[100]]=this[_0x6924[101]](_0x16a0x4f);this[_0x6924[87]][_0x6924[99]]()};_0x16a0x54[_0x6924[0]][_0x6924[102]]=function(){mxVertexHandler[_0x6924[0]][_0x6924[102]][_0x6924[30]](this,arguments);if(this[_0x6924[87]]!=null){this[_0x6924[87]][_0x6924[102]]();this[_0x6924[87]]=null}};_0x16a0x54[_0x6924[0]][_0x6924[103]]=function(_0x16a0x56){if(_0x16a0x56[_0x6924[104]](this[_0x6924[87]])){return _0x16a0x53};return mxVertexHandler[_0x6924[0]][_0x6924[103]][_0x6924[30]](this,arguments)};_0x16a0x54[_0x6924[0]][_0x6924[105]]=function(_0x16a0x57,_0x16a0x56){if(!_0x16a0x56[_0x6924[106]]()&&this[_0x6924[107]]==_0x16a0x53){var _0x16a0x58= new mxPoint(_0x16a0x56[_0x6924[108]](),_0x16a0x56[_0x6924[109]]());this[_0x6924[110]](_0x16a0x58);var _0x16a0x59=this[_0x6924[84]][_0x6924[112]](_0x16a0x56[_0x6924[111]]());var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];if(_0x16a0x59&&this[_0x6924[80]]){_0x16a0x58[_0x6924[68]]=this[_0x6924[84]][_0x6924[114]](_0x16a0x58[_0x6924[68]]/_0x16a0x5a)*_0x16a0x5a;_0x16a0x58[_0x6924[69]]=this[_0x6924[84]][_0x6924[114]](_0x16a0x58[_0x6924[69]]/_0x16a0x5a)*_0x16a0x5a};this[_0x6924[115]](_0x16a0x58);this[_0x6924[116]](this[_0x6924[87]],_0x16a0x58[_0x6924[68]],_0x16a0x58[_0x6924[69]]);this[_0x6924[83]][_0x6924[85]][_0x6924[84]][_0x6924[117]][_0x6924[99]](this[_0x6924[83]],true);_0x16a0x56[_0x6924[118]]()}else {mxVertexHandler[_0x6924[0]][_0x6924[105]][_0x6924[30]](this,arguments)}};_0x16a0x54[_0x6924[0]][_0x6924[119]]=function(_0x16a0x57,_0x16a0x56){if(!_0x16a0x56[_0x6924[106]]()&&this[_0x6924[107]]==_0x16a0x53){this[_0x6924[120]]();this[_0x6924[121]]();_0x16a0x56[_0x6924[118]]()}else {mxVertexHandler[_0x6924[0]][_0x6924[119]][_0x6924[30]](this,arguments)}};_0x16a0x54[_0x6924[0]][_0x6924[101]]=function(_0x16a0x4f){var _0x16a0x5b=this[_0x6924[83]][_0x6924[123]][_0x6924[122]]();var _0x16a0x5c=mxUtils[_0x6924[124]](_0x16a0x5b);var _0x16a0x5d=Math[_0x6924[125]](_0x16a0x5c);var _0x16a0x5e=Math[_0x6924[126]](_0x16a0x5c);var _0x16a0x34= new mxRectangle(this[_0x6924[83]][_0x6924[68]],this[_0x6924[83]][_0x6924[69]],this[_0x6924[83]][_0x6924[70]],this[_0x6924[83]][_0x6924[71]]);if(this[_0x6924[83]][_0x6924[123]][_0x6924[127]]()){var _0x16a0x5f=(_0x16a0x34[_0x6924[70]]-_0x16a0x34[_0x6924[71]])/2;_0x16a0x34[_0x6924[68]]+=_0x16a0x5f;_0x16a0x34[_0x6924[69]]-=_0x16a0x5f;var _0x16a0x23=_0x16a0x34[_0x6924[70]];_0x16a0x34[_0x6924[70]]=_0x16a0x34[_0x6924[71]];_0x16a0x34[_0x6924[71]]=_0x16a0x23};var _0x16a0x60=this[_0x6924[128]](_0x16a0x34);if(this[_0x6924[83]][_0x6924[123]][_0x6924[129]]){_0x16a0x60[_0x6924[68]]=2*_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x60[_0x6924[68]]};if(this[_0x6924[83]][_0x6924[123]][_0x6924[130]]){_0x16a0x60[_0x6924[69]]=2*_0x16a0x34[_0x6924[69]]+_0x16a0x34[_0x6924[71]]-_0x16a0x60[_0x6924[69]]};_0x16a0x60=mxUtils[_0x6924[133]](_0x16a0x60,_0x16a0x5d,_0x16a0x5e, new mxPoint(this[_0x6924[83]][_0x6924[131]](),this[_0x6924[83]][_0x6924[132]]()));return new mxRectangle(_0x16a0x60[_0x6924[68]]-_0x16a0x4f/2,_0x16a0x60[_0x6924[69]]-_0x16a0x4f/2,_0x16a0x4f,_0x16a0x4f)};_0x16a0x54[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){return null};_0x16a0x54[_0x6924[0]][_0x6924[115]]=function(_0x16a0x58){};_0x16a0x54[_0x6924[0]][_0x6924[110]]=function(_0x16a0x58){_0x16a0x58[_0x6924[68]]=Math[_0x6924[34]](this[_0x6924[83]][_0x6924[68]],Math[_0x6924[6]](this[_0x6924[83]][_0x6924[68]]+this[_0x6924[83]][_0x6924[70]],_0x16a0x58[_0x6924[68]]));_0x16a0x58[_0x6924[69]]=Math[_0x6924[34]](this[_0x6924[83]][_0x6924[69]],Math[_0x6924[6]](this[_0x6924[83]][_0x6924[69]]+this[_0x6924[83]][_0x6924[71]],_0x16a0x58[_0x6924[69]]))};_0x16a0x54[_0x6924[0]][_0x6924[120]]=function(){};function _0x16a0x61(_0x16a0x33){_0x16a0x54[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x61,_0x16a0x54);_0x16a0x61[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];var _0x16a0xb=Math[_0x6924[6]](_0x16a0x34[_0x6924[70]],mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[14],60)*_0x16a0x5a);var _0x16a0xc=Math[_0x6924[6]](_0x16a0x34[_0x6924[71]],mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[15],20)*_0x16a0x5a);var _0x16a0xd=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[16],_0x6924[17]);var _0x16a0x3=(_0x16a0xd==_0x6924[18])?_0x16a0x34[_0x6924[68]]+_0x16a0xb:_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0xb;return new mxPoint(_0x16a0x3,_0x16a0x34[_0x6924[69]]+_0x16a0xc)};_0x16a0x61[_0x6924[0]][_0x6924[115]]=function(_0x16a0x58){var _0x16a0x5b=this[_0x6924[83]][_0x6924[123]][_0x6924[122]]();var _0x16a0x5c=mxUtils[_0x6924[124]](_0x16a0x5b);var _0x16a0x5d=Math[_0x6924[125]](-_0x16a0x5c);var _0x16a0x5e=Math[_0x6924[126]](-_0x16a0x5c);var _0x16a0x34= new mxRectangle(this[_0x6924[83]][_0x6924[68]],this[_0x6924[83]][_0x6924[69]],this[_0x6924[83]][_0x6924[70]],this[_0x6924[83]][_0x6924[71]]);if(this[_0x6924[83]][_0x6924[123]][_0x6924[127]]()){var _0x16a0x5f=(_0x16a0x34[_0x6924[70]]-_0x16a0x34[_0x6924[71]])/2;_0x16a0x34[_0x6924[68]]+=_0x16a0x5f;_0x16a0x34[_0x6924[69]]-=_0x16a0x5f;var _0x16a0x23=_0x16a0x34[_0x6924[70]];_0x16a0x34[_0x6924[70]]=_0x16a0x34[_0x6924[71]];_0x16a0x34[_0x6924[71]]=_0x16a0x23};var _0x16a0x60= new mxPoint(_0x16a0x58[_0x6924[68]],_0x16a0x58[_0x6924[69]]);_0x16a0x60=mxUtils[_0x6924[133]](_0x16a0x60,_0x16a0x5d,_0x16a0x5e, new mxPoint(this[_0x6924[83]][_0x6924[131]](),this[_0x6924[83]][_0x6924[132]]()));if(this[_0x6924[83]][_0x6924[123]][_0x6924[129]]){_0x16a0x60[_0x6924[68]]=2*_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x60[_0x6924[68]]};if(this[_0x6924[83]][_0x6924[123]][_0x6924[130]]){_0x16a0x60[_0x6924[69]]=2*_0x16a0x34[_0x6924[69]]+_0x16a0x34[_0x6924[71]]-_0x16a0x60[_0x6924[69]]};var _0x16a0x62=this[_0x6924[134]](_0x16a0x60,_0x16a0x34);if(_0x16a0x62!=null){if(this[_0x6924[83]][_0x6924[123]][_0x6924[129]]){_0x16a0x62[_0x6924[68]]=2*_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x62[_0x6924[68]]};if(this[_0x6924[83]][_0x6924[123]][_0x6924[130]]){_0x16a0x62[_0x6924[69]]=2*_0x16a0x34[_0x6924[69]]+_0x16a0x34[_0x6924[71]]-_0x16a0x62[_0x6924[69]]};_0x16a0x5d=Math[_0x6924[125]](_0x16a0x5c);_0x16a0x5e=Math[_0x6924[126]](_0x16a0x5c);_0x16a0x62=mxUtils[_0x6924[133]](_0x16a0x62,_0x16a0x5d,_0x16a0x5e, new mxPoint(this[_0x6924[83]][_0x6924[131]](),this[_0x6924[83]][_0x6924[132]]()));_0x16a0x58[_0x6924[68]]=_0x16a0x62[_0x6924[68]];_0x16a0x58[_0x6924[69]]=_0x16a0x62[_0x6924[69]]}};_0x16a0x61[_0x6924[0]][_0x6924[134]]=function(_0x16a0x60,_0x16a0x34){var _0x16a0xd=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[16],_0x6924[17]);var _0x16a0xb=(_0x16a0xd==_0x6924[18])?_0x16a0x60[_0x6924[68]]-_0x16a0x34[_0x6924[68]]:_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x60[_0x6924[68]];var _0x16a0xc=_0x16a0x60[_0x6924[69]]-_0x16a0x34[_0x6924[69]];var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];this[_0x6924[83]][_0x6924[4]][_0x6924[14]]=Math[_0x6924[135]](Math[_0x6924[34]](1,_0x16a0xb)/_0x16a0x5a);this[_0x6924[83]][_0x6924[4]][_0x6924[15]]=Math[_0x6924[135]](Math[_0x6924[34]](1,_0x16a0xc)/_0x16a0x5a)};_0x16a0x61[_0x6924[0]][_0x6924[120]]=function(){var _0x16a0x63=this[_0x6924[84]][_0x6924[136]]();_0x16a0x63[_0x6924[137]]();try{this[_0x6924[83]][_0x6924[85]][_0x6924[84]][_0x6924[139]](_0x6924[14],this[_0x6924[83]][_0x6924[4]][_0x6924[14]],[this[_0x6924[83]][_0x6924[138]]]);this[_0x6924[83]][_0x6924[85]][_0x6924[84]][_0x6924[139]](_0x6924[15],this[_0x6924[83]][_0x6924[4]][_0x6924[15]],[this[_0x6924[83]][_0x6924[138]]])}finally{_0x16a0x63[_0x6924[140]]()}};function _0x16a0x64(_0x16a0x33){_0x16a0x61[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x64,_0x16a0x61);_0x16a0x64[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];var _0x16a0x65=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]/2,_0x16a0x34[_0x6924[69]]+Math[_0x6924[6]](_0x16a0x34[_0x6924[71]],_0x16a0x65*_0x16a0x5a))};_0x16a0x64[_0x6924[0]][_0x6924[134]]=function(_0x16a0x58,_0x16a0x34){_0x16a0x58[_0x6924[68]]=_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]/2;startSize=_0x16a0x58[_0x6924[69]]-_0x16a0x34[_0x6924[69]];var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];this[_0x6924[83]][_0x6924[4]][_0x6924[141]]=Math[_0x6924[135]](Math[_0x6924[34]](1,startSize)/_0x16a0x5a);return _0x16a0x58};_0x16a0x64[_0x6924[0]][_0x6924[120]]=function(){this[_0x6924[83]][_0x6924[85]][_0x6924[84]][_0x6924[139]](_0x6924[141],this[_0x6924[83]][_0x6924[4]][_0x6924[141]],[this[_0x6924[83]][_0x6924[138]]])};function _0x16a0x66(_0x16a0x33){_0x16a0x61[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x66,_0x16a0x61);_0x16a0x66[_0x6924[0]][_0x6924[142]]=20;_0x16a0x66[_0x6924[0]][_0x6924[143]]=1;_0x16a0x66[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];var _0x16a0x67=Math[_0x6924[6]](_0x16a0x34[_0x6924[70]],Math[_0x6924[6]](_0x16a0x34[_0x6924[71]],mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[2],this[_0x6924[142]])*_0x16a0x5a/this[_0x6924[143]]));return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x67,_0x16a0x34[_0x6924[69]]+_0x16a0x67)};_0x16a0x66[_0x6924[0]][_0x6924[134]]=function(_0x16a0x60,_0x16a0x34){var _0x16a0x4f=Math[_0x6924[34]](0,Math[_0x6924[6]](Math[_0x6924[6]](_0x16a0x34[_0x6924[70]]/this[_0x6924[143]],_0x16a0x60[_0x6924[68]]-_0x16a0x34[_0x6924[68]]),Math[_0x6924[6]](_0x16a0x34[_0x6924[71]]/this[_0x6924[143]],_0x16a0x60[_0x6924[69]]-_0x16a0x34[_0x6924[69]])));var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];this[_0x6924[83]][_0x6924[4]][_0x6924[2]]=Math[_0x6924[135]](Math[_0x6924[34]](1,_0x16a0x4f)/_0x16a0x5a)*this[_0x6924[143]];return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x4f,_0x16a0x34[_0x6924[69]]+_0x16a0x4f)};_0x16a0x66[_0x6924[0]][_0x6924[120]]=function(){this[_0x6924[83]][_0x6924[85]][_0x6924[84]][_0x6924[139]](_0x6924[2],this[_0x6924[83]][_0x6924[4]][_0x6924[2]],[this[_0x6924[83]][_0x6924[138]]])};function _0x16a0x68(_0x16a0x33){_0x16a0x66[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x68,_0x16a0x66);_0x16a0x68[_0x6924[0]][_0x6924[142]]=30;_0x16a0x68[_0x6924[0]][_0x6924[143]]=2;function _0x16a0x69(_0x16a0x33){_0x16a0x66[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x69,_0x16a0x66);_0x16a0x69[_0x6924[0]][_0x6924[142]]=30;_0x16a0x69[_0x6924[0]][_0x6924[143]]=1;_0x16a0x69[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];var _0x16a0x67=Math[_0x6924[6]](_0x16a0x34[_0x6924[70]],Math[_0x6924[6]](_0x16a0x34[_0x6924[71]],mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[2],this[_0x6924[142]])*_0x16a0x5a/this[_0x6924[143]]));return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x67,_0x16a0x34[_0x6924[69]]+_0x16a0x67)};_0x16a0x69[_0x6924[0]][_0x6924[134]]=function(_0x16a0x60,_0x16a0x34){var _0x16a0x4f=Math[_0x6924[34]](0,Math[_0x6924[6]](Math[_0x6924[6]](_0x16a0x34[_0x6924[70]]/this[_0x6924[143]],_0x16a0x60[_0x6924[68]]-_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]),Math[_0x6924[6]](_0x16a0x34[_0x6924[71]]/this[_0x6924[143]],_0x16a0x60[_0x6924[69]]-_0x16a0x34[_0x6924[69]])));var _0x16a0x5a=this[_0x6924[84]][_0x6924[93]]()[_0x6924[113]];this[_0x6924[83]][_0x6924[4]][_0x6924[2]]=Math[_0x6924[135]](Math[_0x6924[34]](1,_0x16a0x4f)/_0x16a0x5a)*this[_0x6924[143]];return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]-_0x16a0x4f,_0x16a0x34[_0x6924[69]]+_0x16a0x4f)};function _0x16a0x6a(_0x16a0x33){_0x16a0x66[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x6a,_0x16a0x66);_0x16a0x6a[_0x6924[0]][_0x6924[142]]=0.2;_0x16a0x6a[_0x6924[0]][_0x6924[143]]=1;_0x16a0x6a[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x67=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[2],this[_0x6924[142]]);return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]*_0x16a0x67,_0x16a0x34[_0x6924[69]]+_0x16a0x34[_0x6924[71]]/2)};_0x16a0x6a[_0x6924[0]][_0x6924[134]]=function(_0x16a0x60,_0x16a0x34){var _0x16a0x4f=Math[_0x6924[6]](1,(_0x16a0x60[_0x6924[68]]-_0x16a0x34[_0x6924[68]])/_0x16a0x34[_0x6924[70]]);this[_0x6924[83]][_0x6924[4]][_0x6924[2]]=_0x16a0x4f;return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x4f*_0x16a0x34[_0x6924[70]],_0x16a0x34[_0x6924[69]]+_0x16a0x34[_0x6924[71]]/2)};function _0x16a0x6b(_0x16a0x33){_0x16a0x66[_0x6924[24]](this,_0x16a0x33)}mxUtils[_0x6924[25]](_0x16a0x6b,_0x16a0x66);_0x16a0x6b[_0x6924[0]][_0x6924[142]]=0.4;_0x16a0x6b[_0x6924[0]][_0x6924[143]]=1;_0x16a0x6b[_0x6924[0]][_0x6924[128]]=function(_0x16a0x34){var _0x16a0x67=mxUtils[_0x6924[5]](this[_0x6924[83]][_0x6924[4]],_0x6924[2],this[_0x6924[142]]);return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]/2,_0x16a0x34[_0x6924[69]]+_0x16a0x67*_0x16a0x34[_0x6924[71]]/2)};_0x16a0x6b[_0x6924[0]][_0x6924[134]]=function(_0x16a0x60,_0x16a0x34){var _0x16a0x4f=Math[_0x6924[34]](0,Math[_0x6924[6]](1,((_0x16a0x60[_0x6924[69]]-_0x16a0x34[_0x6924[69]])/_0x16a0x34[_0x6924[71]])*2));this[_0x6924[83]][_0x6924[4]][_0x6924[2]]=_0x16a0x4f;return new mxPoint(_0x16a0x34[_0x6924[68]]+_0x16a0x34[_0x6924[70]]/2,_0x16a0x34[_0x6924[69]]+_0x16a0x4f*_0x16a0x34[_0x6924[71]]/2)};var _0x16a0x6c={"\x73\x77\x69\x6D\x6C\x61\x6E\x65":_0x16a0x64,"\x66\x6F\x6C\x64\x65\x72":_0x16a0x61,"\x63\x75\x62\x65":_0x16a0x66,"\x63\x61\x72\x64":_0x16a0x68,"\x6E\x6F\x74\x65":_0x16a0x69,"\x73\x74\x65\x70":_0x16a0x6a,"\x74\x61\x70\x65":_0x16a0x6b};var _0x16a0x6d=mxGraph[_0x6924[0]][_0x6924[144]];mxGraph[_0x6924[0]][_0x6924[144]]=function(_0x16a0x33){if(_0x16a0x33!=null){var _0x16a0x6e=_0x16a0x6c[_0x16a0x33[_0x6924[4]][_0x6924[123]]];if(_0x16a0x6e!=null){return new _0x16a0x6e(_0x16a0x33)}};return _0x16a0x6d[_0x6924[30]](this,arguments)}};mxGraph[_0x6924[0]][_0x6924[145]]=function(_0x16a0x6f,_0x16a0x50){if(_0x16a0x6f!=null&&_0x16a0x6f[_0x6924[123]]!=null){if(_0x16a0x6f[_0x6924[123]][_0x6924[146]]!=null){if(_0x16a0x6f[_0x6924[123]][_0x6924[146]]!=null){return _0x16a0x6f[_0x6924[123]][_0x6924[146]][_0x6924[147]]}}else {if(_0x16a0x6f[_0x6924[123]][_0x6924[147]]!=null){return _0x16a0x6f[_0x6924[123]][_0x6924[147]]}}};return null};mxRectangleShape[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxLabel[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];mxImageShape[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];mxSwimlane[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];_0x16a0x14[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];_0x16a0x9[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];_0x16a0x10[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];_0x16a0x1[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];_0x16a0xa[_0x6924[0]][_0x6924[147]]=mxRectangleShape[_0x6924[0]][_0x6924[147]];mxCylinder[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.15,0.05),false), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.85,0.05),false), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.3),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.7),true), new mxConnectionConstraint( new mxPoint(0.15,0.95),false), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.85,0.95),false)];_0x16a0x25[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.1),false), new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.75,0.1),false), new mxConnectionConstraint( new mxPoint(0,1/3),false), new mxConnectionConstraint( new mxPoint(0,1),false), new mxConnectionConstraint( new mxPoint(1,1/3),false), new mxConnectionConstraint( new mxPoint(1,1),false), new mxConnectionConstraint( new mxPoint(0.5,0.5),false)];_0x16a0x28[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxActor[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.25,0.2),false), new mxConnectionConstraint( new mxPoint(0.1,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.75,0.25),false), new mxConnectionConstraint( new mxPoint(0.9,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];_0x16a0x11[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.35),false), new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.65),false), new mxConnectionConstraint( new mxPoint(1,0.35),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.65),false), new mxConnectionConstraint( new mxPoint(0.25,1),false), new mxConnectionConstraint( new mxPoint(0.75,0),false)];_0x16a0x13[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true), new mxConnectionConstraint( new mxPoint(0.1,0.25),false), new mxConnectionConstraint( new mxPoint(0.2,0.5),false), new mxConnectionConstraint( new mxPoint(0.1,0.75),false), new mxConnectionConstraint( new mxPoint(0.9,0.25),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(0.9,0.75),false)];mxLine[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0.25,0.5),false), new mxConnectionConstraint( new mxPoint(0.75,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.5),false)];_0x16a0x26[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.5,1),false)];mxEllipse[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0,0),true), new mxConnectionConstraint( new mxPoint(1,0),true), new mxConnectionConstraint( new mxPoint(0,1),true), new mxConnectionConstraint( new mxPoint(1,1),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5))];mxDoubleEllipse[_0x6924[0]][_0x6924[147]]=mxEllipse[_0x6924[0]][_0x6924[147]];mxRhombus[_0x6924[0]][_0x6924[147]]=mxEllipse[_0x6924[0]][_0x6924[147]];mxTriangle[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(1,0.5),true)];mxHexagon[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.375,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.625,0),true), new mxConnectionConstraint( new mxPoint(0.125,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0.125,0.75),false), new mxConnectionConstraint( new mxPoint(0.875,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(0.875,0.75),false), new mxConnectionConstraint( new mxPoint(0.375,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.625,1),true)];mxCloud[_0x6924[0]][_0x6924[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.25),false), new mxConnectionConstraint( new mxPoint(0.4,0.1),false), new mxConnectionConstraint( new mxPoint(0.16,0.55),false), new mxConnectionConstraint( new mxPoint(0.07,0.4),false), new mxConnectionConstraint( new mxPoint(0.31,0.8),false), new mxConnectionConstraint( new mxPoint(0.13,0.77),false), new mxConnectionConstraint( new mxPoint(0.8,0.8),false), new mxConnectionConstraint( new mxPoint(0.55,0.95),false), new mxConnectionConstraint( new mxPoint(0.875,0.5),false), new mxConnectionConstraint( new mxPoint(0.96,0.7),false), new mxConnectionConstraint( new mxPoint(0.625,0.2),false), new mxConnectionConstraint( new mxPoint(0.88,0.25),false)];mxArrow[_0x6924[0]][_0x6924[147]]=null})() \ No newline at end of file +var _0x382f=["\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x73\x69\x7A\x65","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6D\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x65\x6E\x64","\x63\x6C\x6F\x73\x65","\x63\x75\x62\x65","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x6E\x6F\x74\x65","\x74\x61\x62\x57\x69\x64\x74\x68","\x74\x61\x62\x48\x65\x69\x67\x68\x74","\x74\x61\x62\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x69\x67\x68\x74","\x6C\x65\x66\x74","\x66\x6F\x6C\x64\x65\x72","\x63\x61\x72\x64","\x71\x75\x61\x64\x54\x6F","\x74\x61\x70\x65","\x73\x74\x65\x70","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x65\x67\x69\x6E","\x73\x74\x72\x6F\x6B\x65","\x61\x70\x70\x6C\x79","\x70\x6C\x75\x73","\x64\x6F\x75\x62\x6C\x65","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x6D\x61\x78","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x79\x6D\x62\x6F\x6C","\x41\x6C\x69\x67\x6E","\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x57\x69\x64\x74\x68","\x48\x65\x69\x67\x68\x74","\x53\x70\x61\x63\x69\x6E\x67","\x41\x72\x63\x53\x70\x61\x63\x69\x6E\x67","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x73\x61\x76\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x72\x65\x73\x74\x6F\x72\x65","\x65\x78\x74","\x6D\x65\x73\x73\x61\x67\x65","\x61\x64\x64\x50\x69\x70\x65","\x63\x75\x72\x76\x65\x54\x6F","\x75\x6D\x6C\x41\x63\x74\x6F\x72","\x6C\x6F\x6C\x6C\x69\x70\x6F\x70","\x6A\x65\x74\x74\x79\x57\x69\x64\x74\x68","\x6A\x65\x74\x74\x79\x48\x65\x69\x67\x68\x74","\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74","\x6F\x75\x74\x65\x72\x53\x74\x72\x6F\x6B\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x65\x6E\x64\x53\x74\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x74\x61\x74\x65","\x69\x6E\x69\x74\x53\x68\x61\x70\x65\x73","\x78","\x79","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x73\x68\x61\x70\x65\x73","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x72\x74","\x6C\x69\x6E\x6B","\x64\x61\x73\x68","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x73\x65\x47\x72\x69\x64\x46\x6F\x72\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x69\x6E\x69\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68","\x76\x69\x65\x77","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x73\x72\x63","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x74\x56\x69\x65\x77","\x63\x75\x72\x73\x6F\x72","\x6E\x6F\x64\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x43\x75\x72\x73\x6F\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74","\x72\x65\x64\x72\x61\x77","\x62\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73","\x64\x65\x73\x74\x72\x6F\x79","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x6F\x75\x72\x63\x65","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x76\x65\x6E\x74","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x73\x63\x61\x6C\x65","\x73\x6E\x61\x70","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x70\x70\x6C\x79\x53\x74\x79\x6C\x65","\x72\x65\x73\x65\x74","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x73\x68\x61\x70\x65","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x63\x6F\x73","\x73\x69\x6E","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x50\x6F\x69\x6E\x74","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65\x55\x6E\x72\x6F\x74\x61\x74\x65\x64","\x72\x6F\x75\x6E\x64","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x63\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x61\x6C\x75\x65","\x73\x63\x61\x6C\x65\x46\x61\x63\x74\x6F\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x73\x74\x65\x6E\x63\x69\x6C","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73"];(function(){function _0xcf16x1(){}_0xcf16x1[_0x382f[0]]= new mxCylinder();_0xcf16x1[_0x382f[0]][_0x382f[1]]=_0xcf16x1;_0xcf16x1[_0x382f[0]][_0x382f[2]]=20;_0xcf16x1[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x8=Math[_0x382f[6]](_0xcf16x5,Math[_0x382f[6]](_0xcf16x6,mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]])));if(_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x8,_0xcf16x6);_0xcf16x2[_0x382f[8]](_0xcf16x8,_0xcf16x8);_0xcf16x2[_0x382f[8]](0,0);_0xcf16x2[_0x382f[7]](_0xcf16x8,_0xcf16x8);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x8);_0xcf16x2[_0x382f[9]]()}else {_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16x8,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x8);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](_0xcf16x8,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6-_0xcf16x8);_0xcf16x2[_0x382f[8]](0,0);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[11]]=_0xcf16x1;function _0xcf16x9(){}_0xcf16x9[_0x382f[0]]= new mxCylinder();_0xcf16x9[_0x382f[0]][_0x382f[1]]=_0xcf16x9;_0xcf16x9[_0x382f[0]][_0x382f[2]]=30;_0xcf16x9[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x8=Math[_0x382f[6]](_0xcf16x5,Math[_0x382f[6]](_0xcf16x6,mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]])));if(_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x5-_0xcf16x8,0);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16x8,_0xcf16x8);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x8);_0xcf16x2[_0x382f[9]]()}else {_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16x8,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x8);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,0);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[13]]=_0xcf16x9;function _0xcf16xa(){}_0xcf16xa[_0x382f[0]]= new mxCylinder();_0xcf16xa[_0x382f[0]][_0x382f[1]]=_0xcf16xa;_0xcf16xa[_0x382f[0]][_0x382f[14]]=60;_0xcf16xa[_0x382f[0]][_0x382f[15]]=20;_0xcf16xa[_0x382f[0]][_0x382f[16]]=_0x382f[17];_0xcf16xa[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16xb=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[14],this[_0x382f[14]]);var _0xcf16xc=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[15],this[_0x382f[15]]);var _0xcf16xd=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[16],this[_0x382f[16]]);var _0xcf16xe=Math[_0x382f[6]](_0xcf16x5,_0xcf16xb);var _0xcf16xf=Math[_0x382f[6]](_0xcf16x6,_0xcf16xc);if(_0xcf16x7){if(_0xcf16xd==_0x382f[18]){_0xcf16x2[_0x382f[7]](0,_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16xe,_0xcf16xf)}else {_0xcf16x2[_0x382f[7]](_0xcf16x5-_0xcf16xe,_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16xf)};_0xcf16x2[_0x382f[9]]()}else {if(_0xcf16xd==_0x382f[18]){_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16xe,0);_0xcf16x2[_0x382f[8]](_0xcf16xe,_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16xf)}else {_0xcf16x2[_0x382f[7]](0,_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16xe,_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16xe,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,0)};_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16xf);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[19]]=_0xcf16xa;function _0xcf16x10(){}_0xcf16x10[_0x382f[0]]= new mxCylinder();_0xcf16x10[_0x382f[0]][_0x382f[1]]=_0xcf16x10;_0xcf16x10[_0x382f[0]][_0x382f[2]]=30;_0xcf16x10[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x8=Math[_0x382f[6]](_0xcf16x5,Math[_0x382f[6]](_0xcf16x6,mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]])));if(!_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x8,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x8);_0xcf16x2[_0x382f[8]](_0xcf16x8,0);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[20]]=_0xcf16x10;function _0xcf16x11(){}_0xcf16x11[_0x382f[0]]= new mxCylinder();_0xcf16x11[_0x382f[0]][_0x382f[1]]=_0xcf16x11;_0xcf16x11[_0x382f[0]][_0x382f[2]]=0.4;_0xcf16x11[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x8=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]]);var _0xcf16xf=_0xcf16x6*_0xcf16x8;var _0xcf16x12=1.4;if(!_0xcf16x7){_0xcf16x2[_0x382f[7]](0,_0xcf16xf/2);_0xcf16x2[_0x382f[21]](_0xcf16x5/4,_0xcf16xf*_0xcf16x12,_0xcf16x5/2,_0xcf16xf/2);_0xcf16x2[_0x382f[21]](_0xcf16x5*3/4,_0xcf16xf*(1-_0xcf16x12),_0xcf16x5,_0xcf16xf/2);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6-_0xcf16xf/2);_0xcf16x2[_0x382f[21]](_0xcf16x5*3/4,_0xcf16x6-_0xcf16xf*_0xcf16x12,_0xcf16x5/2,_0xcf16x6-_0xcf16xf/2);_0xcf16x2[_0x382f[21]](_0xcf16x5/4,_0xcf16x6-_0xcf16xf*(1-_0xcf16x12),0,_0xcf16x6-_0xcf16xf/2);_0xcf16x2[_0x382f[8]](0,_0xcf16xf/2);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[22]]=_0xcf16x11;function _0xcf16x13(){}_0xcf16x13[_0x382f[0]]= new mxCylinder();_0xcf16x13[_0x382f[0]][_0x382f[1]]=_0xcf16x13;_0xcf16x13[_0x382f[0]][_0x382f[2]]=0.2;_0xcf16x13[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x8=_0xcf16x5*mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]]);if(!_0xcf16x7){_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16x8,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6/2);_0xcf16x2[_0x382f[8]](_0xcf16x5-_0xcf16x8,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[8]](_0xcf16x8,_0xcf16x6/2);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[23]]=_0xcf16x13;function _0xcf16x14(){mxRectangleShape[_0x382f[24]](this)}mxUtils[_0x382f[25]](_0xcf16x14,mxRectangleShape);_0xcf16x14[_0x382f[0]][_0x382f[26]]=function(){return false};_0xcf16x14[_0x382f[0]][_0x382f[27]]=function(_0xcf16x15,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6){var _0xcf16x16=Math[_0x382f[6]](_0xcf16x5/5,_0xcf16x6/5)+1;_0xcf16x15[_0x382f[28]]();_0xcf16x15[_0x382f[7]](_0xcf16x3+_0xcf16x5/2,_0xcf16x4+_0xcf16x16);_0xcf16x15[_0x382f[8]](_0xcf16x3+_0xcf16x5/2,_0xcf16x4+_0xcf16x6-_0xcf16x16);_0xcf16x15[_0x382f[7]](_0xcf16x3+_0xcf16x16,_0xcf16x4+_0xcf16x6/2);_0xcf16x15[_0x382f[8]](_0xcf16x3+_0xcf16x5-_0xcf16x16,_0xcf16x4+_0xcf16x6/2);_0xcf16x15[_0x382f[9]]();_0xcf16x15[_0x382f[29]]();mxRectangleShape[_0x382f[0]][_0x382f[27]][_0x382f[30]](this,arguments)};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[31]]=_0xcf16x14;function _0xcf16x17(){mxRectangleShape[_0x382f[24]](this)}mxUtils[_0x382f[25]](_0xcf16x17,mxRectangleShape);_0xcf16x17[_0x382f[0]][_0x382f[26]]=function(){return false};_0xcf16x17[_0x382f[0]][_0x382f[27]]=function(_0xcf16x15,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6){if(this[_0x382f[4]]!=null){if(this[_0x382f[4]][_0x382f[32]]==1){var _0xcf16x18=Math[_0x382f[34]](2,this[_0x382f[33]]+1);mxRectangleShape[_0x382f[0]][_0x382f[35]][_0x382f[24]](this,_0xcf16x15,_0xcf16x3+_0xcf16x18,_0xcf16x4+_0xcf16x18,_0xcf16x5-2*_0xcf16x18,_0xcf16x6-2*_0xcf16x18);mxRectangleShape[_0x382f[0]][_0x382f[27]][_0x382f[30]](this,arguments);_0xcf16x3+=_0xcf16x18;_0xcf16x4+=_0xcf16x18;_0xcf16x5-=2*_0xcf16x18;_0xcf16x6-=2*_0xcf16x18};_0xcf16x15[_0x382f[36]](false);var _0xcf16x19=0;var _0xcf16x1a=null;do{_0xcf16x1a=mxCellRenderer[_0x382f[0]][_0x382f[12]][this[_0x382f[4]][_0x382f[37]+_0xcf16x19]];if(_0xcf16x1a!=null){var _0xcf16x1b=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[38]];var _0xcf16x1c=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[39]];var _0xcf16x1d=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[40]];var _0xcf16x1e=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[41]];var _0xcf16x1f=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[42]]||0;var _0xcf16x20=this[_0x382f[4]][_0x382f[37]+_0xcf16x19+_0x382f[43]];if(_0xcf16x20!=null){_0xcf16x1f+=this[_0x382f[44]](_0xcf16x5+this[_0x382f[33]],_0xcf16x6+this[_0x382f[33]])*_0xcf16x20};var _0xcf16x21=_0xcf16x3;var _0xcf16x22=_0xcf16x4;if(_0xcf16x1b==mxConstants[_0x382f[45]]){_0xcf16x21+=(_0xcf16x5-_0xcf16x1d)/2}else {if(_0xcf16x1b==mxConstants[_0x382f[46]]){_0xcf16x21+=_0xcf16x5-_0xcf16x1d-_0xcf16x1f}else {_0xcf16x21+=_0xcf16x1f}};if(_0xcf16x1c==mxConstants[_0x382f[47]]){_0xcf16x22+=(_0xcf16x6-_0xcf16x1e)/2}else {if(_0xcf16x1c==mxConstants[_0x382f[48]]){_0xcf16x22+=_0xcf16x6-_0xcf16x1e-_0xcf16x1f}else {_0xcf16x22+=_0xcf16x1f}};_0xcf16x15[_0x382f[49]]();var _0xcf16x23= new _0xcf16x1a();_0xcf16x23[_0x382f[4]]=this[_0x382f[4]];_0xcf16x1a[_0x382f[0]][_0x382f[50]][_0x382f[24]](_0xcf16x23,_0xcf16x15,_0xcf16x21,_0xcf16x22,_0xcf16x1d,_0xcf16x1e);_0xcf16x15[_0x382f[51]]()};_0xcf16x19++}while(_0xcf16x1a!=null);}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[52]]=_0xcf16x17;function _0xcf16x24(){}_0xcf16x24[_0x382f[0]]= new mxCylinder();_0xcf16x24[_0x382f[0]][_0x382f[1]]=_0xcf16x24;_0xcf16x24[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){if(_0xcf16x7){_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16x5/2,_0xcf16x6/2);_0xcf16x2[_0x382f[8]](_0xcf16x5,0);_0xcf16x2[_0x382f[9]]()}else {_0xcf16x2[_0x382f[7]](0,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[10]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[53]]=_0xcf16x24;function _0xcf16x25(){}_0xcf16x25[_0x382f[0]]= new mxCylinder();_0xcf16x25[_0x382f[0]][_0x382f[1]]=_0xcf16x25;_0xcf16x25[_0x382f[0]][_0x382f[54]]=true;_0xcf16x25[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x1d=_0xcf16x5/3;var _0xcf16x1e=_0xcf16x6/4;if(!_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[55]](_0xcf16x5/2-_0xcf16x1d,_0xcf16x1e,_0xcf16x5/2-_0xcf16x1d,0,_0xcf16x5/2,0);_0xcf16x2[_0x382f[55]](_0xcf16x5/2+_0xcf16x1d,0,_0xcf16x5/2+_0xcf16x1d,_0xcf16x1e,_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[8]](_0xcf16x5/2,2*_0xcf16x6/3);_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x6/3);_0xcf16x2[_0x382f[8]](0,_0xcf16x6/3);_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x6/3);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6/3);_0xcf16x2[_0x382f[7]](_0xcf16x5/2,2*_0xcf16x6/3);_0xcf16x2[_0x382f[8]](0,_0xcf16x6);_0xcf16x2[_0x382f[7]](_0xcf16x5/2,2*_0xcf16x6/3);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[56]]=_0xcf16x25;function _0xcf16x26(){}_0xcf16x26[_0x382f[0]]= new mxCylinder();_0xcf16x26[_0x382f[0]][_0x382f[1]]=_0xcf16x26;_0xcf16x26[_0x382f[0]][_0x382f[2]]=10;_0xcf16x26[_0x382f[0]][_0x382f[54]]=true;_0xcf16x26[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16x27=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[2],this[_0x382f[2]]);var _0xcf16x1d=_0xcf16x27*2/3;var _0xcf16x1e=_0xcf16x27;if(!_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[55]](_0xcf16x5/2-_0xcf16x1d,_0xcf16x1e,_0xcf16x5/2-_0xcf16x1d,0,_0xcf16x5/2,0);_0xcf16x2[_0x382f[55]](_0xcf16x5/2+_0xcf16x1d,0,_0xcf16x5/2+_0xcf16x1d,_0xcf16x1e,_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[7]](_0xcf16x5/2,_0xcf16x1e);_0xcf16x2[_0x382f[8]](_0xcf16x5/2,_0xcf16x6);_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[57]]=_0xcf16x26;function _0xcf16x28(){}_0xcf16x28[_0x382f[0]]= new mxCylinder();_0xcf16x28[_0x382f[0]][_0x382f[1]]=_0xcf16x28;_0xcf16x28[_0x382f[0]][_0x382f[58]]=32;_0xcf16x28[_0x382f[0]][_0x382f[59]]=12;_0xcf16x28[_0x382f[0]][_0x382f[3]]=function(_0xcf16x2,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6,_0xcf16x7){var _0xcf16xe=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[58],this[_0x382f[58]]);var _0xcf16xf=mxUtils[_0x382f[5]](this[_0x382f[4]],_0x382f[59],this[_0x382f[59]]);var _0xcf16x29=_0xcf16xe/2;var _0xcf16x2a=_0xcf16x29+_0xcf16xe/2;var _0xcf16x2b=0.3*_0xcf16x6-_0xcf16xf/2;var _0xcf16x2c=0.7*_0xcf16x6-_0xcf16xf/2;if(_0xcf16x7){_0xcf16x2[_0x382f[7]](_0xcf16x29,_0xcf16x2b);_0xcf16x2[_0x382f[8]](_0xcf16x2a,_0xcf16x2b);_0xcf16x2[_0x382f[8]](_0xcf16x2a,_0xcf16x2b+_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2b+_0xcf16xf);_0xcf16x2[_0x382f[7]](_0xcf16x29,_0xcf16x2c);_0xcf16x2[_0x382f[8]](_0xcf16x2a,_0xcf16x2c);_0xcf16x2[_0x382f[8]](_0xcf16x2a,_0xcf16x2c+_0xcf16xf);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2c+_0xcf16xf);_0xcf16x2[_0x382f[9]]()}else {_0xcf16x2[_0x382f[7]](_0xcf16x29,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,0);_0xcf16x2[_0x382f[8]](_0xcf16x5,_0xcf16x6);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x6);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2c+_0xcf16xf);_0xcf16x2[_0x382f[8]](0,_0xcf16x2c+_0xcf16xf);_0xcf16x2[_0x382f[8]](0,_0xcf16x2c);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2c);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2b+_0xcf16xf);_0xcf16x2[_0x382f[8]](0,_0xcf16x2b+_0xcf16xf);_0xcf16x2[_0x382f[8]](0,_0xcf16x2b);_0xcf16x2[_0x382f[8]](_0xcf16x29,_0xcf16x2b);_0xcf16x2[_0x382f[10]]();_0xcf16x2[_0x382f[9]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[60]]=_0xcf16x28;function _0xcf16x2d(){}_0xcf16x2d[_0x382f[0]]= new mxDoubleEllipse();_0xcf16x2d[_0x382f[0]][_0x382f[1]]=_0xcf16x2d;_0xcf16x2d[_0x382f[0]][_0x382f[61]]=true;_0xcf16x2d[_0x382f[0]][_0x382f[50]]=function(_0xcf16x15,_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6){var _0xcf16x18=Math[_0x382f[6]](4,Math[_0x382f[6]](_0xcf16x5/5,_0xcf16x6/5));if(_0xcf16x5>0&&_0xcf16x6>0){_0xcf16x15[_0x382f[62]](_0xcf16x3+_0xcf16x18,_0xcf16x4+_0xcf16x18,_0xcf16x5-2*_0xcf16x18,_0xcf16x6-2*_0xcf16x18);_0xcf16x15[_0x382f[63]]()};_0xcf16x15[_0x382f[64]](false);if(this[_0x382f[61]]){_0xcf16x15[_0x382f[62]](_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6);_0xcf16x15[_0x382f[29]]()}};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[65]]=_0xcf16x2d;function _0xcf16x2e(){}_0xcf16x2e[_0x382f[0]]= new _0xcf16x2d();_0xcf16x2e[_0x382f[0]][_0x382f[1]]=_0xcf16x2e;_0xcf16x2e[_0x382f[0]][_0x382f[61]]=false;mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[66]]=_0xcf16x2e;var _0xcf16x2f=mxImageExport[_0x382f[0]][_0x382f[67]];mxImageExport[_0x382f[0]][_0x382f[67]]=function(){_0xcf16x2f[_0x382f[30]](this,arguments);function _0xcf16x30(_0xcf16x31){return {drawShape:function(_0xcf16x32,_0xcf16x33,_0xcf16x34,_0xcf16x35){var _0xcf16x3=_0xcf16x34[_0x382f[68]];var _0xcf16x4=_0xcf16x34[_0x382f[69]];var _0xcf16x5=_0xcf16x34[_0x382f[70]];var _0xcf16x6=_0xcf16x34[_0x382f[71]];if(_0xcf16x35){var _0xcf16x18=Math[_0x382f[6]](4,Math[_0x382f[6]](_0xcf16x5/5,_0xcf16x6/5));_0xcf16x3+=_0xcf16x18;_0xcf16x4+=_0xcf16x18;_0xcf16x5-=2*_0xcf16x18;_0xcf16x6-=2*_0xcf16x18;if(_0xcf16x5>0&&_0xcf16x6>0){_0xcf16x32[_0x382f[62]](_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6)};return true}else {_0xcf16x32[_0x382f[63]]();if(_0xcf16x31){_0xcf16x32[_0x382f[62]](_0xcf16x3,_0xcf16x4,_0xcf16x5,_0xcf16x6);_0xcf16x32[_0x382f[29]]()}}}}}this[_0x382f[72]][_0x382f[65]]=_0xcf16x30(true);this[_0x382f[72]][_0x382f[66]]=_0xcf16x30(false)};function _0xcf16x36(){mxArrow[_0x382f[24]](this)}mxUtils[_0x382f[25]](_0xcf16x36,mxArrow);_0xcf16x36[_0x382f[0]][_0x382f[73]]=function(_0xcf16x15,_0xcf16x37){var _0xcf16x1d=10;var _0xcf16x38=_0xcf16x37[0];var _0xcf16x39=_0xcf16x37[_0xcf16x37[_0x382f[74]]-1];var _0xcf16xe=_0xcf16x39[_0x382f[68]]-_0xcf16x38[_0x382f[68]];var _0xcf16xf=_0xcf16x39[_0x382f[69]]-_0xcf16x38[_0x382f[69]];var _0xcf16x3a=Math[_0x382f[75]](_0xcf16xe*_0xcf16xe+_0xcf16xf*_0xcf16xf);var _0xcf16x3b=_0xcf16x3a;var _0xcf16x3c=_0xcf16xe/_0xcf16x3a;var _0xcf16x3d=_0xcf16xf/_0xcf16x3a;var _0xcf16x3e=_0xcf16x3b*_0xcf16x3c;var _0xcf16x3f=_0xcf16x3b*_0xcf16x3d;var _0xcf16x40=_0xcf16x1d*_0xcf16x3d/3;var _0xcf16x41=-_0xcf16x1d*_0xcf16x3c/3;var _0xcf16x42=_0xcf16x38[_0x382f[68]]-_0xcf16x40/2;var _0xcf16x43=_0xcf16x38[_0x382f[69]]-_0xcf16x41/2;var _0xcf16x44=_0xcf16x42+_0xcf16x40;var _0xcf16x45=_0xcf16x43+_0xcf16x41;var _0xcf16x46=_0xcf16x44+_0xcf16x3e;var _0xcf16x47=_0xcf16x45+_0xcf16x3f;var _0xcf16x48=_0xcf16x46+_0xcf16x40;var _0xcf16x49=_0xcf16x47+_0xcf16x41;var _0xcf16x4a=_0xcf16x48-3*_0xcf16x40;var _0xcf16x4b=_0xcf16x49-3*_0xcf16x41;_0xcf16x15[_0x382f[28]]();_0xcf16x15[_0x382f[7]](_0xcf16x44,_0xcf16x45);_0xcf16x15[_0x382f[8]](_0xcf16x46,_0xcf16x47);_0xcf16x15[_0x382f[7]](_0xcf16x4a+_0xcf16x40,_0xcf16x4b+_0xcf16x41);_0xcf16x15[_0x382f[8]](_0xcf16x42,_0xcf16x43);_0xcf16x15[_0x382f[29]]()};mxCellRenderer[_0x382f[0]][_0x382f[12]][_0x382f[76]]=_0xcf16x36;mxMarker[_0x382f[78]](_0x382f[77],function(_0xcf16x32,_0xcf16x1a,_0xcf16x4c,_0xcf16x39,_0xcf16x4d,_0xcf16x4e,_0xcf16x4f,_0xcf16x50,_0xcf16x51,_0xcf16x52){var _0xcf16x3c=_0xcf16x4d*(_0xcf16x4f+_0xcf16x51+1);var _0xcf16x3d=_0xcf16x4e*(_0xcf16x4f+_0xcf16x51+1);return function(){_0xcf16x32[_0x382f[28]]();_0xcf16x32[_0x382f[7]](_0xcf16x39[_0x382f[68]]-_0xcf16x3c/2-_0xcf16x3d/2,_0xcf16x39[_0x382f[69]]-_0xcf16x3d/2+_0xcf16x3c/2);_0xcf16x32[_0x382f[8]](_0xcf16x39[_0x382f[68]]+_0xcf16x3d/2-3*_0xcf16x3c/2,_0xcf16x39[_0x382f[69]]-3*_0xcf16x3d/2-_0xcf16x3c/2);_0xcf16x32[_0x382f[29]]()}});var _0xcf16x53=-99;if( typeof (mxVertexHandler)!=_0x382f[79]){function _0xcf16x54(_0xcf16x33){mxVertexHandler[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x54,mxVertexHandler);_0xcf16x54[_0x382f[0]][_0x382f[80]]=false;_0xcf16x54[_0x382f[0]][_0x382f[81]]=function(){this[_0x382f[82]]=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],mxConstants.STYLE_HORIZONTAL,true);var _0xcf16x55=this[_0x382f[83]][_0x382f[85]][_0x382f[84]];if(this[_0x382f[86]]!=null){var _0xcf16x34= new mxRectangle(0,0,this[_0x382f[86]][_0x382f[70]],this[_0x382f[86]][_0x382f[71]]);this[_0x382f[87]]= new mxImageShape(_0xcf16x34,this[_0x382f[86]][_0x382f[88]])}else {var _0xcf16x4f=10;var _0xcf16x34= new mxRectangle(0,0,_0xcf16x4f,_0xcf16x4f);this[_0x382f[87]]= new mxRhombus(_0xcf16x34,mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};this[_0x382f[87]][_0x382f[89]]=(_0xcf16x55[_0x382f[89]]!=mxConstants[_0x382f[90]])?mxConstants[_0x382f[91]]:mxConstants[_0x382f[90]];this[_0x382f[87]][_0x382f[81]](_0xcf16x55[_0x382f[93]]()[_0x382f[92]]());this[_0x382f[87]][_0x382f[95]][_0x382f[4]][_0x382f[94]]=this[_0x382f[96]]();mxEvent[_0x382f[97]](this[_0x382f[87]][_0x382f[95]],_0xcf16x55,this[_0x382f[83]]);mxVertexHandler[_0x382f[0]][_0x382f[81]][_0x382f[30]](this,arguments)};_0xcf16x54[_0x382f[0]][_0x382f[96]]=function(){return _0x382f[98]};_0xcf16x54[_0x382f[0]][_0x382f[99]]=function(){mxVertexHandler[_0x382f[0]][_0x382f[99]][_0x382f[30]](this,arguments);var _0xcf16x4f=this[_0x382f[87]][_0x382f[100]][_0x382f[70]];this[_0x382f[87]][_0x382f[100]]=this[_0x382f[101]](_0xcf16x4f);this[_0x382f[87]][_0x382f[99]]()};_0xcf16x54[_0x382f[0]][_0x382f[102]]=function(){mxVertexHandler[_0x382f[0]][_0x382f[102]][_0x382f[30]](this,arguments);if(this[_0x382f[87]]!=null){this[_0x382f[87]][_0x382f[102]]();this[_0x382f[87]]=null}};_0xcf16x54[_0x382f[0]][_0x382f[103]]=function(_0xcf16x56){if(_0xcf16x56[_0x382f[104]](this[_0x382f[87]])){return _0xcf16x53};return mxVertexHandler[_0x382f[0]][_0x382f[103]][_0x382f[30]](this,arguments)};_0xcf16x54[_0x382f[0]][_0x382f[105]]=function(_0xcf16x57,_0xcf16x56){if(!_0xcf16x56[_0x382f[106]]()&&this[_0x382f[107]]==_0xcf16x53){var _0xcf16x58= new mxPoint(_0xcf16x56[_0x382f[108]](),_0xcf16x56[_0x382f[109]]());this[_0x382f[110]](_0xcf16x58);var _0xcf16x59=this[_0x382f[84]][_0x382f[112]](_0xcf16x56[_0x382f[111]]());var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];if(_0xcf16x59&&this[_0x382f[80]]){_0xcf16x58[_0x382f[68]]=this[_0x382f[84]][_0x382f[114]](_0xcf16x58[_0x382f[68]]/_0xcf16x5a)*_0xcf16x5a;_0xcf16x58[_0x382f[69]]=this[_0x382f[84]][_0x382f[114]](_0xcf16x58[_0x382f[69]]/_0xcf16x5a)*_0xcf16x5a};this[_0x382f[115]](_0xcf16x58);this[_0x382f[116]](this[_0x382f[87]],_0xcf16x58[_0x382f[68]],_0xcf16x58[_0x382f[69]]);this[_0x382f[83]][_0x382f[85]][_0x382f[84]][_0x382f[117]][_0x382f[99]](this[_0x382f[83]],true);_0xcf16x56[_0x382f[118]]()}else {mxVertexHandler[_0x382f[0]][_0x382f[105]][_0x382f[30]](this,arguments)}};_0xcf16x54[_0x382f[0]][_0x382f[119]]=function(_0xcf16x57,_0xcf16x56){if(!_0xcf16x56[_0x382f[106]]()&&this[_0x382f[107]]==_0xcf16x53){this[_0x382f[120]]();this[_0x382f[121]]();_0xcf16x56[_0x382f[118]]()}else {mxVertexHandler[_0x382f[0]][_0x382f[119]][_0x382f[30]](this,arguments)}};_0xcf16x54[_0x382f[0]][_0x382f[101]]=function(_0xcf16x4f){var _0xcf16x5b=this[_0x382f[83]][_0x382f[123]][_0x382f[122]]();var _0xcf16x5c=mxUtils[_0x382f[124]](_0xcf16x5b);var _0xcf16x5d=Math[_0x382f[125]](_0xcf16x5c);var _0xcf16x5e=Math[_0x382f[126]](_0xcf16x5c);var _0xcf16x34= new mxRectangle(this[_0x382f[83]][_0x382f[68]],this[_0x382f[83]][_0x382f[69]],this[_0x382f[83]][_0x382f[70]],this[_0x382f[83]][_0x382f[71]]);if(this[_0x382f[83]][_0x382f[123]][_0x382f[127]]()){var _0xcf16x5f=(_0xcf16x34[_0x382f[70]]-_0xcf16x34[_0x382f[71]])/2;_0xcf16x34[_0x382f[68]]+=_0xcf16x5f;_0xcf16x34[_0x382f[69]]-=_0xcf16x5f;var _0xcf16x23=_0xcf16x34[_0x382f[70]];_0xcf16x34[_0x382f[70]]=_0xcf16x34[_0x382f[71]];_0xcf16x34[_0x382f[71]]=_0xcf16x23};var _0xcf16x60=this[_0x382f[128]](_0xcf16x34);if(this[_0x382f[83]][_0x382f[123]][_0x382f[129]]){_0xcf16x60[_0x382f[68]]=2*_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x60[_0x382f[68]]};if(this[_0x382f[83]][_0x382f[123]][_0x382f[130]]){_0xcf16x60[_0x382f[69]]=2*_0xcf16x34[_0x382f[69]]+_0xcf16x34[_0x382f[71]]-_0xcf16x60[_0x382f[69]]};_0xcf16x60=mxUtils[_0x382f[133]](_0xcf16x60,_0xcf16x5d,_0xcf16x5e, new mxPoint(this[_0x382f[83]][_0x382f[131]](),this[_0x382f[83]][_0x382f[132]]()));return new mxRectangle(_0xcf16x60[_0x382f[68]]-_0xcf16x4f/2,_0xcf16x60[_0x382f[69]]-_0xcf16x4f/2,_0xcf16x4f,_0xcf16x4f)};_0xcf16x54[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){return null};_0xcf16x54[_0x382f[0]][_0x382f[115]]=function(_0xcf16x58){};_0xcf16x54[_0x382f[0]][_0x382f[110]]=function(_0xcf16x58){_0xcf16x58[_0x382f[68]]=Math[_0x382f[34]](this[_0x382f[83]][_0x382f[68]],Math[_0x382f[6]](this[_0x382f[83]][_0x382f[68]]+this[_0x382f[83]][_0x382f[70]],_0xcf16x58[_0x382f[68]]));_0xcf16x58[_0x382f[69]]=Math[_0x382f[34]](this[_0x382f[83]][_0x382f[69]],Math[_0x382f[6]](this[_0x382f[83]][_0x382f[69]]+this[_0x382f[83]][_0x382f[71]],_0xcf16x58[_0x382f[69]]))};_0xcf16x54[_0x382f[0]][_0x382f[120]]=function(){};function _0xcf16x61(_0xcf16x33){_0xcf16x54[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x61,_0xcf16x54);_0xcf16x61[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];var _0xcf16xb=Math[_0x382f[6]](_0xcf16x34[_0x382f[70]],mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[14],60)*_0xcf16x5a);var _0xcf16xc=Math[_0x382f[6]](_0xcf16x34[_0x382f[71]],mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[15],20)*_0xcf16x5a);var _0xcf16xd=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[16],_0x382f[17]);var _0xcf16x3=(_0xcf16xd==_0x382f[18])?_0xcf16x34[_0x382f[68]]+_0xcf16xb:_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16xb;return new mxPoint(_0xcf16x3,_0xcf16x34[_0x382f[69]]+_0xcf16xc)};_0xcf16x61[_0x382f[0]][_0x382f[115]]=function(_0xcf16x58){var _0xcf16x5b=this[_0x382f[83]][_0x382f[123]][_0x382f[122]]();var _0xcf16x5c=mxUtils[_0x382f[124]](_0xcf16x5b);var _0xcf16x5d=Math[_0x382f[125]](-_0xcf16x5c);var _0xcf16x5e=Math[_0x382f[126]](-_0xcf16x5c);var _0xcf16x34= new mxRectangle(this[_0x382f[83]][_0x382f[68]],this[_0x382f[83]][_0x382f[69]],this[_0x382f[83]][_0x382f[70]],this[_0x382f[83]][_0x382f[71]]);if(this[_0x382f[83]][_0x382f[123]][_0x382f[127]]()){var _0xcf16x5f=(_0xcf16x34[_0x382f[70]]-_0xcf16x34[_0x382f[71]])/2;_0xcf16x34[_0x382f[68]]+=_0xcf16x5f;_0xcf16x34[_0x382f[69]]-=_0xcf16x5f;var _0xcf16x23=_0xcf16x34[_0x382f[70]];_0xcf16x34[_0x382f[70]]=_0xcf16x34[_0x382f[71]];_0xcf16x34[_0x382f[71]]=_0xcf16x23};var _0xcf16x60= new mxPoint(_0xcf16x58[_0x382f[68]],_0xcf16x58[_0x382f[69]]);_0xcf16x60=mxUtils[_0x382f[133]](_0xcf16x60,_0xcf16x5d,_0xcf16x5e, new mxPoint(this[_0x382f[83]][_0x382f[131]](),this[_0x382f[83]][_0x382f[132]]()));if(this[_0x382f[83]][_0x382f[123]][_0x382f[129]]){_0xcf16x60[_0x382f[68]]=2*_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x60[_0x382f[68]]};if(this[_0x382f[83]][_0x382f[123]][_0x382f[130]]){_0xcf16x60[_0x382f[69]]=2*_0xcf16x34[_0x382f[69]]+_0xcf16x34[_0x382f[71]]-_0xcf16x60[_0x382f[69]]};var _0xcf16x62=this[_0x382f[134]](_0xcf16x60,_0xcf16x34);if(_0xcf16x62!=null){if(this[_0x382f[83]][_0x382f[123]][_0x382f[129]]){_0xcf16x62[_0x382f[68]]=2*_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x62[_0x382f[68]]};if(this[_0x382f[83]][_0x382f[123]][_0x382f[130]]){_0xcf16x62[_0x382f[69]]=2*_0xcf16x34[_0x382f[69]]+_0xcf16x34[_0x382f[71]]-_0xcf16x62[_0x382f[69]]};_0xcf16x5d=Math[_0x382f[125]](_0xcf16x5c);_0xcf16x5e=Math[_0x382f[126]](_0xcf16x5c);_0xcf16x62=mxUtils[_0x382f[133]](_0xcf16x62,_0xcf16x5d,_0xcf16x5e, new mxPoint(this[_0x382f[83]][_0x382f[131]](),this[_0x382f[83]][_0x382f[132]]()));_0xcf16x58[_0x382f[68]]=_0xcf16x62[_0x382f[68]];_0xcf16x58[_0x382f[69]]=_0xcf16x62[_0x382f[69]]}};_0xcf16x61[_0x382f[0]][_0x382f[134]]=function(_0xcf16x60,_0xcf16x34){var _0xcf16xd=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[16],_0x382f[17]);var _0xcf16xb=(_0xcf16xd==_0x382f[18])?_0xcf16x60[_0x382f[68]]-_0xcf16x34[_0x382f[68]]:_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x60[_0x382f[68]];var _0xcf16xc=_0xcf16x60[_0x382f[69]]-_0xcf16x34[_0x382f[69]];var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];this[_0x382f[83]][_0x382f[4]][_0x382f[14]]=Math[_0x382f[135]](Math[_0x382f[34]](1,_0xcf16xb)/_0xcf16x5a);this[_0x382f[83]][_0x382f[4]][_0x382f[15]]=Math[_0x382f[135]](Math[_0x382f[34]](1,_0xcf16xc)/_0xcf16x5a)};_0xcf16x61[_0x382f[0]][_0x382f[120]]=function(){var _0xcf16x63=this[_0x382f[84]][_0x382f[136]]();_0xcf16x63[_0x382f[137]]();try{this[_0x382f[83]][_0x382f[85]][_0x382f[84]][_0x382f[139]](_0x382f[14],this[_0x382f[83]][_0x382f[4]][_0x382f[14]],[this[_0x382f[83]][_0x382f[138]]]);this[_0x382f[83]][_0x382f[85]][_0x382f[84]][_0x382f[139]](_0x382f[15],this[_0x382f[83]][_0x382f[4]][_0x382f[15]],[this[_0x382f[83]][_0x382f[138]]])}finally{_0xcf16x63[_0x382f[140]]()}};function _0xcf16x64(_0xcf16x33){_0xcf16x61[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x64,_0xcf16x61);_0xcf16x64[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];var _0xcf16x65=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]/2,_0xcf16x34[_0x382f[69]]+Math[_0x382f[6]](_0xcf16x34[_0x382f[71]],_0xcf16x65*_0xcf16x5a))};_0xcf16x64[_0x382f[0]][_0x382f[134]]=function(_0xcf16x58,_0xcf16x34){_0xcf16x58[_0x382f[68]]=_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]/2;startSize=_0xcf16x58[_0x382f[69]]-_0xcf16x34[_0x382f[69]];var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];this[_0x382f[83]][_0x382f[4]][_0x382f[141]]=Math[_0x382f[135]](Math[_0x382f[34]](1,startSize)/_0xcf16x5a);return _0xcf16x58};_0xcf16x64[_0x382f[0]][_0x382f[120]]=function(){this[_0x382f[83]][_0x382f[85]][_0x382f[84]][_0x382f[139]](_0x382f[141],this[_0x382f[83]][_0x382f[4]][_0x382f[141]],[this[_0x382f[83]][_0x382f[138]]])};function _0xcf16x66(_0xcf16x33){_0xcf16x61[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x66,_0xcf16x61);_0xcf16x66[_0x382f[0]][_0x382f[142]]=20;_0xcf16x66[_0x382f[0]][_0x382f[143]]=1;_0xcf16x66[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];var _0xcf16x67=Math[_0x382f[6]](_0xcf16x34[_0x382f[70]],Math[_0x382f[6]](_0xcf16x34[_0x382f[71]],mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[2],this[_0x382f[142]])*_0xcf16x5a/this[_0x382f[143]]));return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x67,_0xcf16x34[_0x382f[69]]+_0xcf16x67)};_0xcf16x66[_0x382f[0]][_0x382f[134]]=function(_0xcf16x60,_0xcf16x34){var _0xcf16x4f=Math[_0x382f[34]](0,Math[_0x382f[6]](Math[_0x382f[6]](_0xcf16x34[_0x382f[70]]/this[_0x382f[143]],_0xcf16x60[_0x382f[68]]-_0xcf16x34[_0x382f[68]]),Math[_0x382f[6]](_0xcf16x34[_0x382f[71]]/this[_0x382f[143]],_0xcf16x60[_0x382f[69]]-_0xcf16x34[_0x382f[69]])));var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];this[_0x382f[83]][_0x382f[4]][_0x382f[2]]=Math[_0x382f[135]](Math[_0x382f[34]](1,_0xcf16x4f)/_0xcf16x5a)*this[_0x382f[143]];return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x4f,_0xcf16x34[_0x382f[69]]+_0xcf16x4f)};_0xcf16x66[_0x382f[0]][_0x382f[120]]=function(){this[_0x382f[83]][_0x382f[85]][_0x382f[84]][_0x382f[139]](_0x382f[2],this[_0x382f[83]][_0x382f[4]][_0x382f[2]],[this[_0x382f[83]][_0x382f[138]]])};function _0xcf16x68(_0xcf16x33){_0xcf16x66[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x68,_0xcf16x66);_0xcf16x68[_0x382f[0]][_0x382f[142]]=30;_0xcf16x68[_0x382f[0]][_0x382f[143]]=2;function _0xcf16x69(_0xcf16x33){_0xcf16x66[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x69,_0xcf16x66);_0xcf16x69[_0x382f[0]][_0x382f[142]]=30;_0xcf16x69[_0x382f[0]][_0x382f[143]]=1;_0xcf16x69[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];var _0xcf16x67=Math[_0x382f[6]](_0xcf16x34[_0x382f[70]],Math[_0x382f[6]](_0xcf16x34[_0x382f[71]],mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[2],this[_0x382f[142]])*_0xcf16x5a/this[_0x382f[143]]));return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x67,_0xcf16x34[_0x382f[69]]+_0xcf16x67)};_0xcf16x69[_0x382f[0]][_0x382f[134]]=function(_0xcf16x60,_0xcf16x34){var _0xcf16x4f=Math[_0x382f[34]](0,Math[_0x382f[6]](Math[_0x382f[6]](_0xcf16x34[_0x382f[70]]/this[_0x382f[143]],_0xcf16x60[_0x382f[68]]-_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]),Math[_0x382f[6]](_0xcf16x34[_0x382f[71]]/this[_0x382f[143]],_0xcf16x60[_0x382f[69]]-_0xcf16x34[_0x382f[69]])));var _0xcf16x5a=this[_0x382f[84]][_0x382f[93]]()[_0x382f[113]];this[_0x382f[83]][_0x382f[4]][_0x382f[2]]=Math[_0x382f[135]](Math[_0x382f[34]](1,_0xcf16x4f)/_0xcf16x5a)*this[_0x382f[143]];return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]-_0xcf16x4f,_0xcf16x34[_0x382f[69]]+_0xcf16x4f)};function _0xcf16x6a(_0xcf16x33){_0xcf16x66[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x6a,_0xcf16x66);_0xcf16x6a[_0x382f[0]][_0x382f[142]]=0.2;_0xcf16x6a[_0x382f[0]][_0x382f[143]]=1;_0xcf16x6a[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x67=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[2],this[_0x382f[142]]);return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]*_0xcf16x67,_0xcf16x34[_0x382f[69]]+_0xcf16x34[_0x382f[71]]/2)};_0xcf16x6a[_0x382f[0]][_0x382f[134]]=function(_0xcf16x60,_0xcf16x34){var _0xcf16x4f=Math[_0x382f[6]](1,(_0xcf16x60[_0x382f[68]]-_0xcf16x34[_0x382f[68]])/_0xcf16x34[_0x382f[70]]);this[_0x382f[83]][_0x382f[4]][_0x382f[2]]=_0xcf16x4f;return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x4f*_0xcf16x34[_0x382f[70]],_0xcf16x34[_0x382f[69]]+_0xcf16x34[_0x382f[71]]/2)};function _0xcf16x6b(_0xcf16x33){_0xcf16x66[_0x382f[24]](this,_0xcf16x33)}mxUtils[_0x382f[25]](_0xcf16x6b,_0xcf16x66);_0xcf16x6b[_0x382f[0]][_0x382f[142]]=0.4;_0xcf16x6b[_0x382f[0]][_0x382f[143]]=1;_0xcf16x6b[_0x382f[0]][_0x382f[128]]=function(_0xcf16x34){var _0xcf16x67=mxUtils[_0x382f[5]](this[_0x382f[83]][_0x382f[4]],_0x382f[2],this[_0x382f[142]]);return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]/2,_0xcf16x34[_0x382f[69]]+_0xcf16x67*_0xcf16x34[_0x382f[71]]/2)};_0xcf16x6b[_0x382f[0]][_0x382f[134]]=function(_0xcf16x60,_0xcf16x34){var _0xcf16x4f=Math[_0x382f[34]](0,Math[_0x382f[6]](1,((_0xcf16x60[_0x382f[69]]-_0xcf16x34[_0x382f[69]])/_0xcf16x34[_0x382f[71]])*2));this[_0x382f[83]][_0x382f[4]][_0x382f[2]]=_0xcf16x4f;return new mxPoint(_0xcf16x34[_0x382f[68]]+_0xcf16x34[_0x382f[70]]/2,_0xcf16x34[_0x382f[69]]+_0xcf16x4f*_0xcf16x34[_0x382f[71]]/2)};var _0xcf16x6c={"\x73\x77\x69\x6D\x6C\x61\x6E\x65":_0xcf16x64,"\x66\x6F\x6C\x64\x65\x72":_0xcf16x61,"\x63\x75\x62\x65":_0xcf16x66,"\x63\x61\x72\x64":_0xcf16x68,"\x6E\x6F\x74\x65":_0xcf16x69,"\x73\x74\x65\x70":_0xcf16x6a,"\x74\x61\x70\x65":_0xcf16x6b};var _0xcf16x6d=mxGraph[_0x382f[0]][_0x382f[144]];mxGraph[_0x382f[0]][_0x382f[144]]=function(_0xcf16x33){if(_0xcf16x33!=null){var _0xcf16x6e=_0xcf16x6c[_0xcf16x33[_0x382f[4]][_0x382f[123]]];if(_0xcf16x6e!=null){return new _0xcf16x6e(_0xcf16x33)}};return _0xcf16x6d[_0x382f[30]](this,arguments)}};mxGraph[_0x382f[0]][_0x382f[145]]=function(_0xcf16x6f,_0xcf16x50){if(_0xcf16x6f!=null&&_0xcf16x6f[_0x382f[123]]!=null){if(_0xcf16x6f[_0x382f[123]][_0x382f[146]]!=null){if(_0xcf16x6f[_0x382f[123]][_0x382f[146]]!=null){return _0xcf16x6f[_0x382f[123]][_0x382f[146]][_0x382f[147]]}}else {if(_0xcf16x6f[_0x382f[123]][_0x382f[147]]!=null){return _0xcf16x6f[_0x382f[123]][_0x382f[147]]}}};return null};mxRectangleShape[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxLabel[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];mxImageShape[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];mxSwimlane[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];_0xcf16x14[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];_0xcf16x9[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];_0xcf16x10[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];_0xcf16x1[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];_0xcf16xa[_0x382f[0]][_0x382f[147]]=mxRectangleShape[_0x382f[0]][_0x382f[147]];mxCylinder[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.15,0.05),false), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.85,0.05),false), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.3),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.7),true), new mxConnectionConstraint( new mxPoint(0.15,0.95),false), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.85,0.95),false)];_0xcf16x25[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.1),false), new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.75,0.1),false), new mxConnectionConstraint( new mxPoint(0,1/3),false), new mxConnectionConstraint( new mxPoint(0,1),false), new mxConnectionConstraint( new mxPoint(1,1/3),false), new mxConnectionConstraint( new mxPoint(1,1),false), new mxConnectionConstraint( new mxPoint(0.5,0.5),false)];_0xcf16x28[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxActor[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.25,0.2),false), new mxConnectionConstraint( new mxPoint(0.1,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.75,0.25),false), new mxConnectionConstraint( new mxPoint(0.9,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];_0xcf16x11[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.35),false), new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.65),false), new mxConnectionConstraint( new mxPoint(1,0.35),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.65),false), new mxConnectionConstraint( new mxPoint(0.25,1),false), new mxConnectionConstraint( new mxPoint(0.75,0),false)];_0xcf16x13[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true), new mxConnectionConstraint( new mxPoint(0.1,0.25),false), new mxConnectionConstraint( new mxPoint(0.2,0.5),false), new mxConnectionConstraint( new mxPoint(0.1,0.75),false), new mxConnectionConstraint( new mxPoint(0.9,0.25),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(0.9,0.75),false)];mxLine[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0.25,0.5),false), new mxConnectionConstraint( new mxPoint(0.75,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.5),false)];_0xcf16x26[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.5,1),false)];mxEllipse[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0,0),true), new mxConnectionConstraint( new mxPoint(1,0),true), new mxConnectionConstraint( new mxPoint(0,1),true), new mxConnectionConstraint( new mxPoint(1,1),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5))];mxDoubleEllipse[_0x382f[0]][_0x382f[147]]=mxEllipse[_0x382f[0]][_0x382f[147]];mxRhombus[_0x382f[0]][_0x382f[147]]=mxEllipse[_0x382f[0]][_0x382f[147]];mxTriangle[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(1,0.5),true)];mxHexagon[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.375,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.625,0),true), new mxConnectionConstraint( new mxPoint(0.125,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0.125,0.75),false), new mxConnectionConstraint( new mxPoint(0.875,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(0.875,0.75),false), new mxConnectionConstraint( new mxPoint(0.375,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.625,1),true)];mxCloud[_0x382f[0]][_0x382f[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.25),false), new mxConnectionConstraint( new mxPoint(0.4,0.1),false), new mxConnectionConstraint( new mxPoint(0.16,0.55),false), new mxConnectionConstraint( new mxPoint(0.07,0.4),false), new mxConnectionConstraint( new mxPoint(0.31,0.8),false), new mxConnectionConstraint( new mxPoint(0.13,0.77),false), new mxConnectionConstraint( new mxPoint(0.8,0.8),false), new mxConnectionConstraint( new mxPoint(0.55,0.95),false), new mxConnectionConstraint( new mxPoint(0.875,0.5),false), new mxConnectionConstraint( new mxPoint(0.96,0.7),false), new mxConnectionConstraint( new mxPoint(0.625,0.2),false), new mxConnectionConstraint( new mxPoint(0.88,0.25),false)];mxArrow[_0x382f[0]][_0x382f[147]]=null})() \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Sidebar.js b/public/assets/plugins/jscripty/js/Sidebar.js index dd208ae..0c867db 100644 --- a/public/assets/plugins/jscripty/js/Sidebar.js +++ b/public/assets/plugins/jscripty/js/Sidebar.js @@ -1 +1 @@ -var _0x3c7b=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x61\x6C\x65\x74\x74\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x67\x72\x61\x70\x68","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x65\x64\x69\x74\x6F\x72","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x6D\x6F\x75\x73\x65\x75\x70","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x74\x6F\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C\x61\x74\x65\x64\x54\x61\x72\x67\x65\x74","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x74\x6F\x6F\x6C\x74\x69\x70\x2E\x70\x6E\x67","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x65\x6E\x74\x72\x79","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74","\x2F","\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x73\x74\x61\x72\x74","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x69\x6E\x70\x75\x74","\x65\x6E\x64","\x61\x64\x64\x49\x6D\x61\x67\x65\x50\x61\x6C\x65\x74\x74\x65","\x65\x6E\x61\x62\x6C\x65\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x42\x6F\x72\x64\x65\x72","\x74\x68\x75\x6D\x62\x42\x6F\x72\x64\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x44\x65\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x61\x72\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x69\x70\x61\x72\x74\x2F\x47\x65\x61\x72\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x74\x68\x75\x6D\x62\x57\x69\x64\x74\x68","\x74\x68\x75\x6D\x62\x48\x65\x69\x67\x68\x74","\x74\x68\x75\x6D\x62\x50\x61\x64\x64\x69\x6E\x67","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x53\x69\x7A\x65","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70","\x74\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x6F\x6F\x6C\x74\x69\x70","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x72\x61\x70\x68\x32","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x76\x69\x65\x77","\x49\x53\x5F\x53\x56\x47","\x63\x61\x6E\x76\x61\x73","\x72\x65\x6C\x61\x74\x69\x76\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x31\x34\x70\x78","\x68\x65\x69\x67\x68\x74","\x32\x37\x70\x78","\x64\x69\x73\x70\x6C\x61\x79","\x62\x6C\x6F\x63\x6B","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x63\x6C\x65\x61\x72","\x6D\x6F\x64\x65\x6C","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x76\x69\x73\x69\x62\x6C\x65","\x70\x78","\x6C\x65\x6E\x67\x74\x68","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x67\x72\x61\x79","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x65\x6E\x74\x65\x72","\x31\x30\x30\x25","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x32\x70\x78","\x36\x70\x78","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","","\x77\x72\x69\x74\x65","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x74\x6F\x70","\x6E\x6F\x6E\x65","\x78","\x6D\x69\x6E","\x79","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x6D\x61\x78","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x29","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x65\x66\x74","\x64\x72\x61\x77\x50\x61\x6E\x65","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x54\x69\x74\x6C\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x68\x75\x6D\x62","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x66\x6C\x6F\x6F\x72","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x4E\x4F\x5F\x46\x4F","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x49\x53\x5F\x49\x45\x36","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x63\x75\x72\x73\x6F\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x49\x53\x5F\x49\x45","\x34\x70\x78","\x63\x72\x65\x61\x74\x65\x49\x74\x65\x6D","\x67\x65\x49\x74\x65\x6D","\x70\x61\x64\x64\x69\x6E\x67","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x63\x72\x65\x61\x74\x65\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x50\x72\x65\x76\x69\x65\x77","\x62\x6F\x72\x64\x65\x72","\x31\x70\x78\x20\x64\x61\x73\x68\x65\x64\x20\x62\x6C\x61\x63\x6B","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x53\x6F\x75\x72\x63\x65","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x61\x70\x70\x6C\x79","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x6D\x6F\x75\x73\x65\x55\x70","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x61\x62\x73","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x64\x72\x6F\x70","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6C\x61\x62\x65\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x64","\x74\x65\x78\x74","\x73\x74\x61\x74\x65","\x30","\x4F\x46\x46","\x6F\x74\x68\x65\x72","\x61\x64\x64","\x76\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x65\x64\x67\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x23\x66\x66\x66\x66\x66\x66","\x61\x64\x64\x50\x61\x6C\x65\x74\x74\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72","\x61\x64\x64\x46\x6F\x6C\x64\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66\x29","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x31\x30\x30\x25\x20\x35\x30\x25","\x77\x61\x69\x74","\x72\x65\x6D\x6F\x76\x65\x50\x61\x6C\x65\x74\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x69\x6D\x61\x67\x65\x3B\x69\x6D\x61\x67\x65\x3D"];_0x3c7b[0];function Sidebar(_0xb826x2,_0xb826x3){this[_0x3c7b[1]]=_0xb826x2;this[_0x3c7b[2]]=_0xb826x3;this[_0x3c7b[3]]= new Object();this[_0x3c7b[4]]=true;this[_0x3c7b[5]]= new Graph(document[_0x3c7b[7]](_0x3c7b[6]),null,null,this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]][_0x3c7b[8]]());this[_0x3c7b[5]][_0x3c7b[10]]=false;this[_0x3c7b[5]][_0x3c7b[11]]=false;this[_0x3c7b[5]][_0x3c7b[12]](false);this[_0x3c7b[5]][_0x3c7b[13]]=false;this[_0x3c7b[5]][_0x3c7b[14]](false);this[_0x3c7b[5]][_0x3c7b[15]](false);this[_0x3c7b[5]][_0x3c7b[2]][_0x3c7b[17]][_0x3c7b[16]]=_0x3c7b[18];this[_0x3c7b[5]][_0x3c7b[2]][_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[20];document[_0x3c7b[22]][_0x3c7b[21]](this[_0x3c7b[5]][_0x3c7b[2]]);if(!mxClient[_0x3c7b[23]]){mxEvent[_0x3c7b[26]](document,_0x3c7b[24],mxUtils[_0x3c7b[25]](this,function(){this[_0x3c7b[4]]=true}));mxEvent[_0x3c7b[26]](_0xb826x3,_0x3c7b[27],mxUtils[_0x3c7b[25]](this,function(){this[_0x3c7b[4]]=true}));mxEvent[_0x3c7b[26]](document,_0x3c7b[28],mxUtils[_0x3c7b[25]](this,function(){this[_0x3c7b[4]]=false;this[_0x3c7b[29]]()}));mxEvent[_0x3c7b[26]](document,_0x3c7b[30],mxUtils[_0x3c7b[25]](this,function(_0xb826x4){var _0xb826x5=mxEvent[_0x3c7b[31]](_0xb826x4);while(_0xb826x5!=null){if(_0xb826x5==this[_0x3c7b[32]]){return};_0xb826x5=_0xb826x5[_0x3c7b[33]]};this[_0x3c7b[29]]()}));mxEvent[_0x3c7b[26]](document,_0x3c7b[34],mxUtils[_0x3c7b[25]](this,function(_0xb826x4){if(_0xb826x4[_0x3c7b[35]]==null&&_0xb826x4[_0x3c7b[36]]==null){this[_0x3c7b[29]]()}}))};this[_0x3c7b[37]](); new Image()[_0x3c7b[38]]=IMAGE_PATH+_0x3c7b[39]}Sidebar[_0x3c7b[40]][_0x3c7b[37]]=function(){var _0xb826x6=STENCIL_PATH;console[_0x3c7b[41]](_0xb826x6);this[_0x3c7b[51]](_0x3c7b[42],mxResources[_0x3c7b[44]](_0x3c7b[43]),_0xb826x6+_0x3c7b[45],_0x3c7b[46],[_0x3c7b[47],_0x3c7b[48],_0x3c7b[49],_0x3c7b[50]],[mxResources[_0x3c7b[44]](_0x3c7b[47]),mxResources[_0x3c7b[44]](_0x3c7b[48]),mxResources[_0x3c7b[44]](_0x3c7b[49]),mxResources[_0x3c7b[44]](_0x3c7b[50])])};Sidebar[_0x3c7b[40]][_0x3c7b[52]]=!mxClient[_0x3c7b[23]];Sidebar[_0x3c7b[40]][_0x3c7b[53]]=16;Sidebar[_0x3c7b[40]][_0x3c7b[54]]=3;Sidebar[_0x3c7b[40]][_0x3c7b[55]]=300;Sidebar[_0x3c7b[40]][_0x3c7b[56]]=true;Sidebar[_0x3c7b[40]][_0x3c7b[57]]=STENCIL_PATH+_0x3c7b[58];Sidebar[_0x3c7b[40]][_0x3c7b[59]]=34;Sidebar[_0x3c7b[40]][_0x3c7b[60]]=34;Sidebar[_0x3c7b[40]][_0x3c7b[61]]=2;Sidebar[_0x3c7b[40]][_0x3c7b[62]]=9;Sidebar[_0x3c7b[40]][_0x3c7b[63]]=false;Sidebar[_0x3c7b[40]][_0x3c7b[64]]=false;Sidebar[_0x3c7b[40]][_0x3c7b[65]]=function(_0xb826x7,_0xb826x8,_0xb826x9,_0xb826xa){if(this[_0x3c7b[52]]&&this[_0x3c7b[4]]){if(this[_0x3c7b[32]]!=_0xb826x7){if(this[_0x3c7b[66]]!=null){window[_0x3c7b[67]](this[_0x3c7b[66]]);this[_0x3c7b[66]]=null};var _0xb826xb=mxUtils[_0x3c7b[25]](this,function(){if(this[_0x3c7b[68]]==null){this[_0x3c7b[68]]=document[_0x3c7b[7]](_0x3c7b[6]);this[_0x3c7b[68]][_0x3c7b[69]]=_0x3c7b[70];document[_0x3c7b[22]][_0x3c7b[21]](this[_0x3c7b[68]]);this[_0x3c7b[71]]= new Graph(this[_0x3c7b[68]],null,null,this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]][_0x3c7b[8]]());this[_0x3c7b[71]][_0x3c7b[73]][_0x3c7b[72]](this[_0x3c7b[53]],this[_0x3c7b[53]]);this[_0x3c7b[71]][_0x3c7b[10]]=false;this[_0x3c7b[71]][_0x3c7b[11]]=false;this[_0x3c7b[71]][_0x3c7b[13]]=false;this[_0x3c7b[71]][_0x3c7b[14]](false);this[_0x3c7b[71]][_0x3c7b[12]](false);this[_0x3c7b[71]][_0x3c7b[15]](false);if(!mxClient[_0x3c7b[74]]){this[_0x3c7b[71]][_0x3c7b[73]][_0x3c7b[75]][_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[76]};this[_0x3c7b[77]]=mxUtils[_0x3c7b[78]](IMAGE_PATH+_0x3c7b[39]);this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[20];this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[79]]=_0x3c7b[80];this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[81]]=_0x3c7b[82];document[_0x3c7b[22]][_0x3c7b[21]](this[_0x3c7b[77]])};this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[84];this[_0x3c7b[71]][_0x3c7b[85]]=(_0xb826xa==null||_0xb826xa);this[_0x3c7b[71]][_0x3c7b[87]][_0x3c7b[86]]();this[_0x3c7b[71]][_0x3c7b[88]](_0xb826x8);var _0xb826xc=this[_0x3c7b[71]][_0x3c7b[89]]();var _0xb826xd=_0xb826xc[_0x3c7b[79]]+2*this[_0x3c7b[53]];var _0xb826xe=_0xb826xc[_0x3c7b[81]]+2*this[_0x3c7b[53]];if(mxClient[_0x3c7b[90]]){_0xb826xd+=4;_0xb826xe+=4;this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[91]]=_0x3c7b[18]}else {this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[91]]=_0x3c7b[92]};this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[16]]=_0x3c7b[92];this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[79]]=_0xb826xd+_0x3c7b[93];if(this[_0x3c7b[64]]&&_0xb826x9!=null&&_0xb826x9[_0x3c7b[94]]>0){if(this[_0x3c7b[95]]==null){this[_0x3c7b[95]]=document[_0x3c7b[7]](_0x3c7b[6]);this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[96]]=_0x3c7b[97];this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[98]]=_0x3c7b[99];this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[79]]=_0x3c7b[100];this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[91]]=_0x3c7b[18];if(mxClient[_0x3c7b[74]]){this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[101]]=_0x3c7b[102]}else {this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[20];this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[101]]=_0x3c7b[103]};this[_0x3c7b[68]][_0x3c7b[21]](this[_0x3c7b[95]])}else {this[_0x3c7b[95]][_0x3c7b[104]]=_0x3c7b[105]};this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[105];mxUtils[_0x3c7b[106]](this[_0x3c7b[95]],_0xb826x9);var _0xb826xf=this[_0x3c7b[95]][_0x3c7b[107]]+10;_0xb826xe+=_0xb826xf;if(mxClient[_0x3c7b[74]]){this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[108]]=(-_0xb826xf)+_0x3c7b[93]}else {_0xb826xe-=6;this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[109]]=(_0xb826xe-_0xb826xf)+_0x3c7b[93]}}else {if(this[_0x3c7b[95]]!=null&&this[_0x3c7b[95]][_0x3c7b[33]]!=null){this[_0x3c7b[95]][_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[110]}};this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[81]]=_0xb826xe+_0x3c7b[93];var _0xb826x10=-Math[_0x3c7b[112]](0,_0xb826xc[_0x3c7b[111]]-this[_0x3c7b[53]]);var _0xb826x11=-Math[_0x3c7b[112]](0,_0xb826xc[_0x3c7b[113]]-this[_0x3c7b[53]]);var _0xb826x12=this[_0x3c7b[2]][_0x3c7b[114]]+this[_0x3c7b[1]][_0x3c7b[115]]+3;var _0xb826x13=Math[_0x3c7b[118]](0,(this[_0x3c7b[2]][_0x3c7b[116]]+_0xb826x7[_0x3c7b[116]]-this[_0x3c7b[2]][_0x3c7b[117]]-_0xb826xe/2+16));if(mxClient[_0x3c7b[74]]){this[_0x3c7b[71]][_0x3c7b[73]][_0x3c7b[75]][_0x3c7b[123]](_0x3c7b[119],_0x3c7b[120]+_0xb826x10+_0x3c7b[121]+_0xb826x11+_0x3c7b[122])}else {this[_0x3c7b[71]][_0x3c7b[73]][_0x3c7b[125]][_0x3c7b[17]][_0x3c7b[124]]=_0xb826x10+_0x3c7b[93];this[_0x3c7b[71]][_0x3c7b[73]][_0x3c7b[125]][_0x3c7b[17]][_0x3c7b[109]]=_0xb826x11+_0x3c7b[93]};_0xb826x13+=90;this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[20];this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[124]]=_0xb826x12+_0x3c7b[93];this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[109]]=_0xb826x13+_0x3c7b[93];this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[124]]=(_0xb826x12-13)+_0x3c7b[93];this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[109]]=(_0xb826x13+_0xb826xe/2-13)+_0x3c7b[93]});if(this[_0x3c7b[68]]!=null&&this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[83]]!=_0x3c7b[110]){_0xb826xb()}else {this[_0x3c7b[66]]=window[_0x3c7b[126]](_0xb826xb,this[_0x3c7b[55]])};this[_0x3c7b[32]]=_0xb826x7}}};Sidebar[_0x3c7b[40]][_0x3c7b[29]]=function(){if(this[_0x3c7b[66]]!=null){window[_0x3c7b[67]](this[_0x3c7b[66]]);this[_0x3c7b[66]]=null};if(this[_0x3c7b[68]]!=null){this[_0x3c7b[68]][_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[110];this[_0x3c7b[77]][_0x3c7b[17]][_0x3c7b[16]]=_0x3c7b[18];this[_0x3c7b[32]]=null}};Sidebar[_0x3c7b[40]][_0x3c7b[127]]=function(_0xb826x14){var _0xb826x7=document[_0x3c7b[7]](_0x3c7b[128]);_0xb826x7[_0x3c7b[123]](_0x3c7b[129],_0x3c7b[130]);_0xb826x7[_0x3c7b[69]]=_0x3c7b[131];mxUtils[_0x3c7b[106]](_0xb826x7,_0xb826x14);return _0xb826x7};Sidebar[_0x3c7b[40]][_0x3c7b[132]]=function(_0xb826x8,_0xb826xd,_0xb826xe,_0xb826x15,_0xb826x9,_0xb826xa){this[_0x3c7b[5]][_0x3c7b[85]]=(_0xb826xa==null||_0xb826xa);this[_0x3c7b[5]][_0x3c7b[73]][_0x3c7b[133]](1,0,0);this[_0x3c7b[5]][_0x3c7b[88]](_0xb826x8);var _0xb826xc=this[_0x3c7b[5]][_0x3c7b[89]]();var _0xb826x16=this[_0x3c7b[54]];var _0xb826x17=Math[_0x3c7b[112]]((_0xb826xd-2)/(_0xb826xc[_0x3c7b[79]]-_0xb826xc[_0x3c7b[111]]+_0xb826x16),(_0xb826xe-2)/(_0xb826xc[_0x3c7b[81]]-_0xb826xc[_0x3c7b[113]]+_0xb826x16));var _0xb826x10=-Math[_0x3c7b[112]](_0xb826xc[_0x3c7b[111]],0);var _0xb826x11=-Math[_0x3c7b[112]](_0xb826xc[_0x3c7b[113]],0);this[_0x3c7b[5]][_0x3c7b[73]][_0x3c7b[133]](_0xb826x17,_0xb826x10,_0xb826x11);_0xb826xc=this[_0x3c7b[5]][_0x3c7b[89]]();var _0xb826x18=Math[_0x3c7b[118]](0,Math[_0x3c7b[134]]((_0xb826xd-_0xb826xc[_0x3c7b[79]]-_0xb826xc[_0x3c7b[111]])/2));var _0xb826xf=Math[_0x3c7b[118]](0,Math[_0x3c7b[134]]((_0xb826xe-_0xb826xc[_0x3c7b[81]]-_0xb826xc[_0x3c7b[113]])/2));var _0xb826x19=null;if(this[_0x3c7b[5]][_0x3c7b[135]]==mxConstants[_0x3c7b[136]]&&!mxClient[_0x3c7b[137]]){_0xb826x19=this[_0x3c7b[5]][_0x3c7b[73]][_0x3c7b[140]]()[_0x3c7b[139]][_0x3c7b[138]](true)}else {_0xb826x19=this[_0x3c7b[5]][_0x3c7b[2]][_0x3c7b[138]](false);_0xb826x19[_0x3c7b[104]]=this[_0x3c7b[5]][_0x3c7b[2]][_0x3c7b[104]]};this[_0x3c7b[5]][_0x3c7b[141]]()[_0x3c7b[86]]();if(mxClient[_0x3c7b[142]]){_0xb826x15[_0x3c7b[17]][_0x3c7b[143]]=_0x3c7b[144]+this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[145]]+_0x3c7b[122]};var _0xb826x1a=3;_0xb826x19[_0x3c7b[17]][_0x3c7b[19]]=_0x3c7b[76];_0xb826x19[_0x3c7b[17]][_0x3c7b[91]]=_0x3c7b[18];_0xb826x19[_0x3c7b[17]][_0x3c7b[146]]=_0x3c7b[147];_0xb826x19[_0x3c7b[17]][_0x3c7b[124]]=(_0xb826x18+_0xb826x1a)+_0x3c7b[93];_0xb826x19[_0x3c7b[17]][_0x3c7b[109]]=(_0xb826xf+_0xb826x1a)+_0x3c7b[93];_0xb826x19[_0x3c7b[17]][_0x3c7b[79]]=_0xb826xd+_0x3c7b[93];_0xb826x19[_0x3c7b[17]][_0x3c7b[81]]=_0xb826xe+_0x3c7b[93];_0xb826x19[_0x3c7b[17]][_0x3c7b[16]]=_0x3c7b[105];_0xb826x19[_0x3c7b[17]][_0x3c7b[148]]=_0x3c7b[105];_0xb826x19[_0x3c7b[17]][_0x3c7b[149]]=_0x3c7b[105];_0xb826x15[_0x3c7b[21]](_0xb826x19);if(this[_0x3c7b[63]]&&_0xb826x9!=null){var _0xb826x1b=(mxClient[_0x3c7b[90]])?2*this[_0x3c7b[61]]+2:0;_0xb826x15[_0x3c7b[17]][_0x3c7b[81]]=(this[_0x3c7b[60]]+_0xb826x1b+this[_0x3c7b[62]]+8)+_0x3c7b[93];var _0xb826x1c=document[_0x3c7b[7]](_0x3c7b[6]);_0xb826x1c[_0x3c7b[17]][_0x3c7b[150]]=this[_0x3c7b[62]]+_0x3c7b[93];_0xb826x1c[_0x3c7b[17]][_0x3c7b[98]]=_0x3c7b[99];_0xb826x1c[_0x3c7b[17]][_0x3c7b[151]]=_0x3c7b[152];if(mxClient[_0x3c7b[153]]){_0xb826x1c[_0x3c7b[17]][_0x3c7b[81]]=(this[_0x3c7b[62]]+12)+_0x3c7b[93]};_0xb826x1c[_0x3c7b[17]][_0x3c7b[101]]=_0x3c7b[154];mxUtils[_0x3c7b[106]](_0xb826x1c,_0xb826x9);_0xb826x15[_0x3c7b[21]](_0xb826x1c)}};Sidebar[_0x3c7b[40]][_0x3c7b[155]]=function(_0xb826x8,_0xb826x9,_0xb826xa){var _0xb826x7=document[_0x3c7b[7]](_0x3c7b[128]);_0xb826x7[_0x3c7b[123]](_0x3c7b[129],_0x3c7b[130]);_0xb826x7[_0x3c7b[69]]=_0x3c7b[156];_0xb826x7[_0x3c7b[17]][_0x3c7b[91]]=_0x3c7b[18];var _0xb826x1b=(mxClient[_0x3c7b[90]])?8+2*this[_0x3c7b[61]]:6;_0xb826x7[_0x3c7b[17]][_0x3c7b[79]]=(this[_0x3c7b[59]]+_0xb826x1b)+_0x3c7b[93];_0xb826x7[_0x3c7b[17]][_0x3c7b[81]]=(this[_0x3c7b[60]]+_0xb826x1b)+_0x3c7b[93];_0xb826x7[_0x3c7b[17]][_0x3c7b[157]]=this[_0x3c7b[61]]+_0x3c7b[93];mxEvent[_0x3c7b[26]](_0xb826x7,_0x3c7b[158],function(_0xb826x4){mxEvent[_0x3c7b[159]](_0xb826x4)});this[_0x3c7b[132]](_0xb826x8,this[_0x3c7b[59]],this[_0x3c7b[60]],_0xb826x7,_0xb826x9,_0xb826xa);return _0xb826x7};Sidebar[_0x3c7b[40]][_0x3c7b[160]]=function(_0xb826x8,_0xb826x1d){return function(_0xb826x1e,_0xb826x4,_0xb826x1f,_0xb826x20,_0xb826x21){if(_0xb826x1e[_0x3c7b[161]]()){_0xb826x8=_0xb826x1e[_0x3c7b[162]](_0xb826x8);if(_0xb826x8[_0x3c7b[94]]>0){var _0xb826x22=(_0xb826x1f!=null)?_0xb826x1e[_0x3c7b[163]](_0xb826x1f,_0xb826x8,_0xb826x4):false;var _0xb826x23=null;if(_0xb826x1f!=null&& !_0xb826x22){_0xb826x1f=null};if(_0xb826x1d&&_0xb826x1e[_0x3c7b[164]]()&&_0xb826x1e[_0x3c7b[165]](_0xb826x1f,_0xb826x8,_0xb826x4)){_0xb826x1e[_0x3c7b[166]](_0xb826x1f,_0xb826x8,null,_0xb826x20,_0xb826x21);_0xb826x23=_0xb826x8}else {if(_0xb826x8[_0x3c7b[94]]>0){_0xb826x23=_0xb826x1e[_0x3c7b[167]](_0xb826x8,_0xb826x20,_0xb826x21,_0xb826x1f)}};if(_0xb826x23!=null&&_0xb826x23[_0x3c7b[94]]>0){_0xb826x1e[_0x3c7b[168]](_0xb826x23[0]);_0xb826x1e[_0x3c7b[169]](_0xb826x23)}}}}};Sidebar[_0x3c7b[40]][_0x3c7b[170]]=function(_0xb826xd,_0xb826xe){var _0xb826x7=document[_0x3c7b[7]](_0x3c7b[6]);_0xb826x7[_0x3c7b[17]][_0x3c7b[171]]=_0x3c7b[172];_0xb826x7[_0x3c7b[17]][_0x3c7b[79]]=_0xb826xd+_0x3c7b[93];_0xb826x7[_0x3c7b[17]][_0x3c7b[81]]=_0xb826xe+_0x3c7b[93];return _0xb826x7};Sidebar[_0x3c7b[40]][_0x3c7b[173]]=function(_0xb826x7,_0xb826x24,_0xb826x25){var _0xb826x26=mxUtils[_0x3c7b[175]](_0xb826x7,this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]],_0xb826x24,_0xb826x25,0,0,this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]][_0x3c7b[174]],true,true);_0xb826x26[_0x3c7b[176]]=function(_0xb826x1e,_0xb826x20,_0xb826x21){var _0xb826x1f=mxDragSource[_0x3c7b[40]][_0x3c7b[176]][_0x3c7b[177]](this,arguments);if(!_0xb826x1e[_0x3c7b[178]](_0xb826x1f)){_0xb826x1f=null};return _0xb826x1f};return _0xb826x26};Sidebar[_0x3c7b[40]][_0x3c7b[179]]=function(_0xb826x7,_0xb826x27){var _0xb826x1e=this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]];var _0xb826x28=null;mxEvent[_0x3c7b[182]](_0xb826x7,function(_0xb826x4){_0xb826x28= new mxPoint(mxEvent[_0x3c7b[180]](_0xb826x4),mxEvent[_0x3c7b[181]](_0xb826x4))});var _0xb826x29=_0xb826x27[_0x3c7b[183]];_0xb826x27[_0x3c7b[183]]=function(_0xb826x4){if(!mxEvent[_0x3c7b[184]](_0xb826x4)&&this[_0x3c7b[185]]==null&&_0xb826x28!=null){var _0xb826x2a=_0xb826x1e[_0x3c7b[186]];if(Math[_0x3c7b[187]](_0xb826x28[_0x3c7b[111]]-mxEvent[_0x3c7b[180]](_0xb826x4))<=_0xb826x2a&&Math[_0x3c7b[187]](_0xb826x28[_0x3c7b[113]]-mxEvent[_0x3c7b[181]](_0xb826x4))<=_0xb826x2a){var _0xb826x2b=_0xb826x1e[_0x3c7b[188]]();_0xb826x27[_0x3c7b[189]](_0xb826x1e,_0xb826x4,null,_0xb826x2b,_0xb826x2b)}};_0xb826x29[_0x3c7b[177]](this,arguments);_0xb826x28=null}};Sidebar[_0x3c7b[40]][_0x3c7b[190]]=function(_0xb826x2c,_0xb826x14,_0xb826x2d,_0xb826x2e){var _0xb826x2f=mxUtils[_0x3c7b[190]]();var _0xb826x19=_0xb826x2f[_0x3c7b[7]](_0xb826x2c);_0xb826x19[_0x3c7b[123]](_0x3c7b[191],_0xb826x14);_0xb826x2d[_0x3c7b[192]](function(_0xb826x30,_0xb826x31){_0xb826x19[_0x3c7b[123]](_0xb826x30,_0xb826x2e[_0xb826x31]?_0xb826x2e[_0xb826x31]:_0x3c7b[105])});return _0xb826x19};Sidebar[_0x3c7b[40]][_0x3c7b[193]]=function(_0xb826x32,_0xb826xd,_0xb826xe,_0xb826x33,_0xb826x9,_0xb826xa){var _0xb826x2d=[];var _0xb826x2e=[];switch(_0xb826x33){case _0x3c7b[47]:_0xb826x2d=[_0x3c7b[194],_0x3c7b[195],_0x3c7b[196]];_0xb826x2e=[_0x3c7b[197],_0x3c7b[105],_0x3c7b[198]];break;case _0x3c7b[50]:_0xb826x2d=[_0x3c7b[194],_0x3c7b[195]];_0xb826x2e=[_0x3c7b[197],_0x3c7b[105]];break;case _0x3c7b[48]:_0xb826x2d=[_0x3c7b[194],_0x3c7b[48],_0x3c7b[199]];_0xb826x2e=[_0x3c7b[197],_0x3c7b[105]];break;case _0x3c7b[49]:_0xb826x2d=[_0x3c7b[194],_0x3c7b[48],_0x3c7b[200]];_0xb826x2e=[_0x3c7b[197],_0x3c7b[105]];break;default:_0xb826x2d=[];_0xb826x2e=[];break};var _0xb826x19=this[_0x3c7b[190]](_0xb826x33,_0xb826x9,_0xb826x2d,_0xb826x2e);var _0xb826x8=[ new mxCell(_0xb826x19, new mxGeometry(0,0,_0xb826xd,_0xb826xe),_0xb826x32)];_0xb826x8[0][_0x3c7b[201]]=true;return this[_0x3c7b[202]](_0xb826x8,_0xb826xd,_0xb826xe,_0xb826x9,_0xb826xa)};Sidebar[_0x3c7b[40]][_0x3c7b[202]]=function(_0xb826x8,_0xb826xd,_0xb826xe,_0xb826x9,_0xb826xa){var _0xb826x7=this[_0x3c7b[155]](_0xb826x8,_0xb826x9,_0xb826xa);var _0xb826x27=this[_0x3c7b[173]](_0xb826x7,this[_0x3c7b[160]](_0xb826x8,true),this[_0x3c7b[170]](_0xb826xd,_0xb826xe));this[_0x3c7b[179]](_0xb826x7,_0xb826x27);_0xb826x27[_0x3c7b[203]]=mxUtils[_0x3c7b[25]](this,function(){return this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]][_0x3c7b[205]][_0x3c7b[204]]});if(!touchStyle){mxEvent[_0x3c7b[26]](_0xb826x7,_0x3c7b[30],mxUtils[_0x3c7b[25]](this,function(_0xb826x4){this[_0x3c7b[65]](_0xb826x7,_0xb826x8,_0xb826x9,_0xb826xa)}))};return _0xb826x7};Sidebar[_0x3c7b[40]][_0x3c7b[206]]=function(_0xb826x32,_0xb826xd,_0xb826xe,_0xb826x33,_0xb826x9,_0xb826xa){var _0xb826x8=[ new mxCell((_0xb826x33!=null)?_0xb826x33:_0x3c7b[105], new mxGeometry(0,0,_0xb826xd,_0xb826xe),_0xb826x32)];_0xb826x8[0][_0x3c7b[208]][_0x3c7b[207]]( new mxPoint(0,_0xb826xe),true);_0xb826x8[0][_0x3c7b[208]][_0x3c7b[207]]( new mxPoint(_0xb826xd,0),false);_0xb826x8[0][_0x3c7b[208]][_0x3c7b[76]]=true;_0xb826x8[0][_0x3c7b[209]]=true;return this[_0x3c7b[210]](_0xb826x8,_0xb826xd,_0xb826xe,_0xb826x9,_0xb826xa)};Sidebar[_0x3c7b[40]][_0x3c7b[210]]=function(_0xb826x8,_0xb826xd,_0xb826xe,_0xb826x9,_0xb826xa){var _0xb826x7=this[_0x3c7b[155]](_0xb826x8,_0xb826x9,_0xb826xa);this[_0x3c7b[173]](_0xb826x7,this[_0x3c7b[160]](_0xb826x8,false),this[_0x3c7b[170]](_0xb826xd,_0xb826xe));var _0xb826x1e=this[_0x3c7b[1]][_0x3c7b[9]][_0x3c7b[5]];mxEvent[_0x3c7b[26]](_0xb826x7,_0x3c7b[158],mxUtils[_0x3c7b[25]](this,function(_0xb826x4){if(this[_0x3c7b[56]]){_0xb826x1e[_0x3c7b[211]](_0xb826x8[0])};_0xb826x7[_0x3c7b[17]][_0x3c7b[212]]=_0x3c7b[213];window[_0x3c7b[126]](function(){_0xb826x7[_0x3c7b[17]][_0x3c7b[212]]=_0x3c7b[105]},300);mxEvent[_0x3c7b[159]](_0xb826x4)}));touchStyle=false;if(!touchStyle){mxEvent[_0x3c7b[26]](_0xb826x7,_0x3c7b[30],mxUtils[_0x3c7b[25]](this,function(_0xb826x4){this[_0x3c7b[65]](_0xb826x7,_0xb826x8,_0xb826x9,_0xb826xa)}))};return _0xb826x7};Sidebar[_0x3c7b[40]][_0x3c7b[214]]=function(_0xb826x34,_0xb826x9,_0xb826x35,_0xb826x36){var _0xb826x7=this[_0x3c7b[127]](_0xb826x9);this[_0x3c7b[2]][_0x3c7b[21]](_0xb826x7);var _0xb826x1c=document[_0x3c7b[7]](_0x3c7b[6]);_0xb826x1c[_0x3c7b[69]]=_0x3c7b[215];if(_0xb826x35){_0xb826x36(_0xb826x1c);_0xb826x36=null}else {_0xb826x1c[_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[110]};this[_0x3c7b[216]](_0xb826x7,_0xb826x1c,_0xb826x36);var _0xb826x37=document[_0x3c7b[7]](_0x3c7b[6]);_0xb826x37[_0x3c7b[21]](_0xb826x1c);this[_0x3c7b[2]][_0x3c7b[21]](_0xb826x37);if(_0xb826x34!=null){this[_0x3c7b[3]][_0xb826x34]=[_0xb826x7,_0xb826x37]}};Sidebar[_0x3c7b[40]][_0x3c7b[216]]=function(_0xb826x9,_0xb826x38,_0xb826x39){var _0xb826x3a=false;_0xb826x9[_0x3c7b[17]][_0x3c7b[143]]=(_0xb826x38[_0x3c7b[17]][_0x3c7b[83]]==_0x3c7b[110])?_0x3c7b[144]+IMAGE_PATH+_0x3c7b[217]:_0x3c7b[144]+IMAGE_PATH+_0x3c7b[218];_0xb826x9[_0x3c7b[17]][_0x3c7b[219]]=_0x3c7b[220];_0xb826x9[_0x3c7b[17]][_0x3c7b[221]]=_0x3c7b[222];mxEvent[_0x3c7b[26]](_0xb826x9,_0x3c7b[158],function(_0xb826x4){if(_0xb826x38[_0x3c7b[17]][_0x3c7b[83]]==_0x3c7b[110]){if(!_0xb826x3a){_0xb826x3a=true;if(_0xb826x39!=null){_0xb826x9[_0x3c7b[17]][_0x3c7b[146]]=_0x3c7b[223];window[_0x3c7b[126]](function(){_0xb826x39(_0xb826x38);_0xb826x9[_0x3c7b[17]][_0x3c7b[146]]=_0x3c7b[105]},0)}};_0xb826x9[_0x3c7b[17]][_0x3c7b[143]]=_0x3c7b[144]+IMAGE_PATH+_0x3c7b[218];_0xb826x38[_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[84]}else {_0xb826x9[_0x3c7b[17]][_0x3c7b[143]]=_0x3c7b[144]+IMAGE_PATH+_0x3c7b[217];_0xb826x38[_0x3c7b[17]][_0x3c7b[83]]=_0x3c7b[110]};mxEvent[_0x3c7b[159]](_0xb826x4)})};Sidebar[_0x3c7b[40]][_0x3c7b[224]]=function(_0xb826x34){var _0xb826x3b=this[_0x3c7b[3]][_0xb826x34];if(_0xb826x3b!=null){this[_0x3c7b[3]][_0xb826x34]=null;for(var _0xb826x3c=0;_0xb826x3c<_0xb826x3b[_0x3c7b[94]];_0xb826x3c++){this[_0x3c7b[2]][_0x3c7b[225]](_0xb826x3b[_0xb826x3c])};return true};return false};Sidebar[_0x3c7b[40]][_0x3c7b[51]]=function(_0xb826x34,_0xb826x9,_0xb826x3d,_0xb826x3e,_0xb826x3f,_0xb826x40){this[_0x3c7b[214]](_0xb826x34,_0xb826x9,(_0xb826x34===_0x3c7b[42]),mxUtils[_0x3c7b[25]](this,function(_0xb826x38){var _0xb826x41=_0xb826x40!=null;for(var _0xb826x3c=0;_0xb826x3c<_0xb826x3f[_0x3c7b[94]];_0xb826x3c++){var _0xb826x42=_0xb826x3d+_0xb826x3f[_0xb826x3c]+_0xb826x3e;_0xb826x38[_0x3c7b[21]](this[_0x3c7b[193]](_0x3c7b[226]+_0xb826x42,80,80,_0xb826x3f[_0xb826x3c],(_0xb826x41)?_0xb826x40[_0xb826x3c]:null,_0xb826x41))}}))} \ No newline at end of file +var _0x5550=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x61\x6C\x65\x74\x74\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x67\x72\x61\x70\x68","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x65\x64\x69\x74\x6F\x72","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x6D\x6F\x75\x73\x65\x75\x70","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x74\x6F\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C\x61\x74\x65\x64\x54\x61\x72\x67\x65\x74","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x74\x6F\x6F\x6C\x74\x69\x70\x2E\x70\x6E\x67","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x65\x6E\x74\x72\x79","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74","\x2F","\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x73\x74\x61\x72\x74","\x71\x75\x65\x73\x74\x69\x6F\x6E","\x69\x6E\x70\x75\x74","\x65\x6E\x64","\x61\x64\x64\x49\x6D\x61\x67\x65\x50\x61\x6C\x65\x74\x74\x65","\x65\x6E\x61\x62\x6C\x65\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x42\x6F\x72\x64\x65\x72","\x74\x68\x75\x6D\x62\x42\x6F\x72\x64\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x44\x65\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x61\x72\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x69\x70\x61\x72\x74\x2F\x47\x65\x61\x72\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x74\x68\x75\x6D\x62\x57\x69\x64\x74\x68","\x74\x68\x75\x6D\x62\x48\x65\x69\x67\x68\x74","\x74\x68\x75\x6D\x62\x50\x61\x64\x64\x69\x6E\x67","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x53\x69\x7A\x65","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70","\x74\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x6F\x6F\x6C\x74\x69\x70","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x72\x61\x70\x68\x32","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x76\x69\x65\x77","\x49\x53\x5F\x53\x56\x47","\x63\x61\x6E\x76\x61\x73","\x72\x65\x6C\x61\x74\x69\x76\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x31\x34\x70\x78","\x68\x65\x69\x67\x68\x74","\x32\x37\x70\x78","\x64\x69\x73\x70\x6C\x61\x79","\x62\x6C\x6F\x63\x6B","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x63\x6C\x65\x61\x72","\x6D\x6F\x64\x65\x6C","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x76\x69\x73\x69\x62\x6C\x65","\x70\x78","\x6C\x65\x6E\x67\x74\x68","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x67\x72\x61\x79","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x65\x6E\x74\x65\x72","\x31\x30\x30\x25","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x32\x70\x78","\x36\x70\x78","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","","\x77\x72\x69\x74\x65","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x74\x6F\x70","\x6E\x6F\x6E\x65","\x78","\x6D\x69\x6E","\x79","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x6D\x61\x78","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x29","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x65\x66\x74","\x64\x72\x61\x77\x50\x61\x6E\x65","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x54\x69\x74\x6C\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x68\x75\x6D\x62","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x66\x6C\x6F\x6F\x72","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x4E\x4F\x5F\x46\x4F","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x49\x53\x5F\x49\x45\x36","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x63\x75\x72\x73\x6F\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x49\x53\x5F\x49\x45","\x34\x70\x78","\x63\x72\x65\x61\x74\x65\x49\x74\x65\x6D","\x67\x65\x49\x74\x65\x6D","\x70\x61\x64\x64\x69\x6E\x67","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x63\x72\x65\x61\x74\x65\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x50\x72\x65\x76\x69\x65\x77","\x62\x6F\x72\x64\x65\x72","\x31\x70\x78\x20\x64\x61\x73\x68\x65\x64\x20\x62\x6C\x61\x63\x6B","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x53\x6F\x75\x72\x63\x65","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x61\x70\x70\x6C\x79","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x6D\x6F\x75\x73\x65\x55\x70","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x61\x62\x73","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x64\x72\x6F\x70","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6C\x61\x62\x65\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x64","\x74\x65\x78\x74","\x73\x74\x61\x74\x65","\x30","\x4F\x46\x46","\x6F\x74\x68\x65\x72","\x61\x64\x64","\x76\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x65\x64\x67\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x23\x66\x66\x66\x66\x66\x66","\x61\x64\x64\x50\x61\x6C\x65\x74\x74\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72","\x61\x64\x64\x46\x6F\x6C\x64\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66\x29","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x31\x30\x30\x25\x20\x35\x30\x25","\x77\x61\x69\x74","\x72\x65\x6D\x6F\x76\x65\x50\x61\x6C\x65\x74\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x69\x6D\x61\x67\x65\x3B\x69\x6D\x61\x67\x65\x3D"];_0x5550[0];function Sidebar(_0x3665x2,_0x3665x3){this[_0x5550[1]]=_0x3665x2;this[_0x5550[2]]=_0x3665x3;this[_0x5550[3]]= new Object();this[_0x5550[4]]=true;this[_0x5550[5]]= new Graph(document[_0x5550[7]](_0x5550[6]),null,null,this[_0x5550[1]][_0x5550[9]][_0x5550[5]][_0x5550[8]]());this[_0x5550[5]][_0x5550[10]]=false;this[_0x5550[5]][_0x5550[11]]=false;this[_0x5550[5]][_0x5550[12]](false);this[_0x5550[5]][_0x5550[13]]=false;this[_0x5550[5]][_0x5550[14]](false);this[_0x5550[5]][_0x5550[15]](false);this[_0x5550[5]][_0x5550[2]][_0x5550[17]][_0x5550[16]]=_0x5550[18];this[_0x5550[5]][_0x5550[2]][_0x5550[17]][_0x5550[19]]=_0x5550[20];document[_0x5550[22]][_0x5550[21]](this[_0x5550[5]][_0x5550[2]]);if(!mxClient[_0x5550[23]]){mxEvent[_0x5550[26]](document,_0x5550[24],mxUtils[_0x5550[25]](this,function(){this[_0x5550[4]]=true}));mxEvent[_0x5550[26]](_0x3665x3,_0x5550[27],mxUtils[_0x5550[25]](this,function(){this[_0x5550[4]]=true}));mxEvent[_0x5550[26]](document,_0x5550[28],mxUtils[_0x5550[25]](this,function(){this[_0x5550[4]]=false;this[_0x5550[29]]()}));mxEvent[_0x5550[26]](document,_0x5550[30],mxUtils[_0x5550[25]](this,function(_0x3665x4){var _0x3665x5=mxEvent[_0x5550[31]](_0x3665x4);while(_0x3665x5!=null){if(_0x3665x5==this[_0x5550[32]]){return};_0x3665x5=_0x3665x5[_0x5550[33]]};this[_0x5550[29]]()}));mxEvent[_0x5550[26]](document,_0x5550[34],mxUtils[_0x5550[25]](this,function(_0x3665x4){if(_0x3665x4[_0x5550[35]]==null&&_0x3665x4[_0x5550[36]]==null){this[_0x5550[29]]()}}))};this[_0x5550[37]](); new Image()[_0x5550[38]]=IMAGE_PATH+_0x5550[39]}Sidebar[_0x5550[40]][_0x5550[37]]=function(){var _0x3665x6=STENCIL_PATH;console[_0x5550[41]](_0x3665x6);this[_0x5550[51]](_0x5550[42],mxResources[_0x5550[44]](_0x5550[43]),_0x3665x6+_0x5550[45],_0x5550[46],[_0x5550[47],_0x5550[48],_0x5550[49],_0x5550[50]],[mxResources[_0x5550[44]](_0x5550[47]),mxResources[_0x5550[44]](_0x5550[48]),mxResources[_0x5550[44]](_0x5550[49]),mxResources[_0x5550[44]](_0x5550[50])])};Sidebar[_0x5550[40]][_0x5550[52]]=!mxClient[_0x5550[23]];Sidebar[_0x5550[40]][_0x5550[53]]=16;Sidebar[_0x5550[40]][_0x5550[54]]=3;Sidebar[_0x5550[40]][_0x5550[55]]=300;Sidebar[_0x5550[40]][_0x5550[56]]=true;Sidebar[_0x5550[40]][_0x5550[57]]=STENCIL_PATH+_0x5550[58];Sidebar[_0x5550[40]][_0x5550[59]]=34;Sidebar[_0x5550[40]][_0x5550[60]]=34;Sidebar[_0x5550[40]][_0x5550[61]]=2;Sidebar[_0x5550[40]][_0x5550[62]]=9;Sidebar[_0x5550[40]][_0x5550[63]]=false;Sidebar[_0x5550[40]][_0x5550[64]]=false;Sidebar[_0x5550[40]][_0x5550[65]]=function(_0x3665x7,_0x3665x8,_0x3665x9,_0x3665xa){if(this[_0x5550[52]]&&this[_0x5550[4]]){if(this[_0x5550[32]]!=_0x3665x7){if(this[_0x5550[66]]!=null){window[_0x5550[67]](this[_0x5550[66]]);this[_0x5550[66]]=null};var _0x3665xb=mxUtils[_0x5550[25]](this,function(){if(this[_0x5550[68]]==null){this[_0x5550[68]]=document[_0x5550[7]](_0x5550[6]);this[_0x5550[68]][_0x5550[69]]=_0x5550[70];document[_0x5550[22]][_0x5550[21]](this[_0x5550[68]]);this[_0x5550[71]]= new Graph(this[_0x5550[68]],null,null,this[_0x5550[1]][_0x5550[9]][_0x5550[5]][_0x5550[8]]());this[_0x5550[71]][_0x5550[73]][_0x5550[72]](this[_0x5550[53]],this[_0x5550[53]]);this[_0x5550[71]][_0x5550[10]]=false;this[_0x5550[71]][_0x5550[11]]=false;this[_0x5550[71]][_0x5550[13]]=false;this[_0x5550[71]][_0x5550[14]](false);this[_0x5550[71]][_0x5550[12]](false);this[_0x5550[71]][_0x5550[15]](false);if(!mxClient[_0x5550[74]]){this[_0x5550[71]][_0x5550[73]][_0x5550[75]][_0x5550[17]][_0x5550[19]]=_0x5550[76]};this[_0x5550[77]]=mxUtils[_0x5550[78]](IMAGE_PATH+_0x5550[39]);this[_0x5550[77]][_0x5550[17]][_0x5550[19]]=_0x5550[20];this[_0x5550[77]][_0x5550[17]][_0x5550[79]]=_0x5550[80];this[_0x5550[77]][_0x5550[17]][_0x5550[81]]=_0x5550[82];document[_0x5550[22]][_0x5550[21]](this[_0x5550[77]])};this[_0x5550[68]][_0x5550[17]][_0x5550[83]]=_0x5550[84];this[_0x5550[71]][_0x5550[85]]=(_0x3665xa==null||_0x3665xa);this[_0x5550[71]][_0x5550[87]][_0x5550[86]]();this[_0x5550[71]][_0x5550[88]](_0x3665x8);var _0x3665xc=this[_0x5550[71]][_0x5550[89]]();var _0x3665xd=_0x3665xc[_0x5550[79]]+2*this[_0x5550[53]];var _0x3665xe=_0x3665xc[_0x5550[81]]+2*this[_0x5550[53]];if(mxClient[_0x5550[90]]){_0x3665xd+=4;_0x3665xe+=4;this[_0x5550[68]][_0x5550[17]][_0x5550[91]]=_0x5550[18]}else {this[_0x5550[68]][_0x5550[17]][_0x5550[91]]=_0x5550[92]};this[_0x5550[77]][_0x5550[17]][_0x5550[16]]=_0x5550[92];this[_0x5550[68]][_0x5550[17]][_0x5550[79]]=_0x3665xd+_0x5550[93];if(this[_0x5550[64]]&&_0x3665x9!=null&&_0x3665x9[_0x5550[94]]>0){if(this[_0x5550[95]]==null){this[_0x5550[95]]=document[_0x5550[7]](_0x5550[6]);this[_0x5550[95]][_0x5550[17]][_0x5550[96]]=_0x5550[97];this[_0x5550[95]][_0x5550[17]][_0x5550[98]]=_0x5550[99];this[_0x5550[95]][_0x5550[17]][_0x5550[79]]=_0x5550[100];this[_0x5550[95]][_0x5550[17]][_0x5550[91]]=_0x5550[18];if(mxClient[_0x5550[74]]){this[_0x5550[95]][_0x5550[17]][_0x5550[101]]=_0x5550[102]}else {this[_0x5550[95]][_0x5550[17]][_0x5550[19]]=_0x5550[20];this[_0x5550[95]][_0x5550[17]][_0x5550[101]]=_0x5550[103]};this[_0x5550[68]][_0x5550[21]](this[_0x5550[95]])}else {this[_0x5550[95]][_0x5550[104]]=_0x5550[105]};this[_0x5550[95]][_0x5550[17]][_0x5550[83]]=_0x5550[105];mxUtils[_0x5550[106]](this[_0x5550[95]],_0x3665x9);var _0x3665xf=this[_0x5550[95]][_0x5550[107]]+10;_0x3665xe+=_0x3665xf;if(mxClient[_0x5550[74]]){this[_0x5550[95]][_0x5550[17]][_0x5550[108]]=(-_0x3665xf)+_0x5550[93]}else {_0x3665xe-=6;this[_0x5550[95]][_0x5550[17]][_0x5550[109]]=(_0x3665xe-_0x3665xf)+_0x5550[93]}}else {if(this[_0x5550[95]]!=null&&this[_0x5550[95]][_0x5550[33]]!=null){this[_0x5550[95]][_0x5550[17]][_0x5550[83]]=_0x5550[110]}};this[_0x5550[68]][_0x5550[17]][_0x5550[81]]=_0x3665xe+_0x5550[93];var _0x3665x10=-Math[_0x5550[112]](0,_0x3665xc[_0x5550[111]]-this[_0x5550[53]]);var _0x3665x11=-Math[_0x5550[112]](0,_0x3665xc[_0x5550[113]]-this[_0x5550[53]]);var _0x3665x12=this[_0x5550[2]][_0x5550[114]]+this[_0x5550[1]][_0x5550[115]]+3;var _0x3665x13=Math[_0x5550[118]](0,(this[_0x5550[2]][_0x5550[116]]+_0x3665x7[_0x5550[116]]-this[_0x5550[2]][_0x5550[117]]-_0x3665xe/2+16));if(mxClient[_0x5550[74]]){this[_0x5550[71]][_0x5550[73]][_0x5550[75]][_0x5550[123]](_0x5550[119],_0x5550[120]+_0x3665x10+_0x5550[121]+_0x3665x11+_0x5550[122])}else {this[_0x5550[71]][_0x5550[73]][_0x5550[125]][_0x5550[17]][_0x5550[124]]=_0x3665x10+_0x5550[93];this[_0x5550[71]][_0x5550[73]][_0x5550[125]][_0x5550[17]][_0x5550[109]]=_0x3665x11+_0x5550[93]};_0x3665x13+=90;this[_0x5550[68]][_0x5550[17]][_0x5550[19]]=_0x5550[20];this[_0x5550[68]][_0x5550[17]][_0x5550[124]]=_0x3665x12+_0x5550[93];this[_0x5550[68]][_0x5550[17]][_0x5550[109]]=_0x3665x13+_0x5550[93];this[_0x5550[77]][_0x5550[17]][_0x5550[124]]=(_0x3665x12-13)+_0x5550[93];this[_0x5550[77]][_0x5550[17]][_0x5550[109]]=(_0x3665x13+_0x3665xe/2-13)+_0x5550[93]});if(this[_0x5550[68]]!=null&&this[_0x5550[68]][_0x5550[17]][_0x5550[83]]!=_0x5550[110]){_0x3665xb()}else {this[_0x5550[66]]=window[_0x5550[126]](_0x3665xb,this[_0x5550[55]])};this[_0x5550[32]]=_0x3665x7}}};Sidebar[_0x5550[40]][_0x5550[29]]=function(){if(this[_0x5550[66]]!=null){window[_0x5550[67]](this[_0x5550[66]]);this[_0x5550[66]]=null};if(this[_0x5550[68]]!=null){this[_0x5550[68]][_0x5550[17]][_0x5550[83]]=_0x5550[110];this[_0x5550[77]][_0x5550[17]][_0x5550[16]]=_0x5550[18];this[_0x5550[32]]=null}};Sidebar[_0x5550[40]][_0x5550[127]]=function(_0x3665x14){var _0x3665x7=document[_0x5550[7]](_0x5550[128]);_0x3665x7[_0x5550[123]](_0x5550[129],_0x5550[130]);_0x3665x7[_0x5550[69]]=_0x5550[131];mxUtils[_0x5550[106]](_0x3665x7,_0x3665x14);return _0x3665x7};Sidebar[_0x5550[40]][_0x5550[132]]=function(_0x3665x8,_0x3665xd,_0x3665xe,_0x3665x15,_0x3665x9,_0x3665xa){this[_0x5550[5]][_0x5550[85]]=(_0x3665xa==null||_0x3665xa);this[_0x5550[5]][_0x5550[73]][_0x5550[133]](1,0,0);this[_0x5550[5]][_0x5550[88]](_0x3665x8);var _0x3665xc=this[_0x5550[5]][_0x5550[89]]();var _0x3665x16=this[_0x5550[54]];var _0x3665x17=Math[_0x5550[112]]((_0x3665xd-2)/(_0x3665xc[_0x5550[79]]-_0x3665xc[_0x5550[111]]+_0x3665x16),(_0x3665xe-2)/(_0x3665xc[_0x5550[81]]-_0x3665xc[_0x5550[113]]+_0x3665x16));var _0x3665x10=-Math[_0x5550[112]](_0x3665xc[_0x5550[111]],0);var _0x3665x11=-Math[_0x5550[112]](_0x3665xc[_0x5550[113]],0);this[_0x5550[5]][_0x5550[73]][_0x5550[133]](_0x3665x17,_0x3665x10,_0x3665x11);_0x3665xc=this[_0x5550[5]][_0x5550[89]]();var _0x3665x18=Math[_0x5550[118]](0,Math[_0x5550[134]]((_0x3665xd-_0x3665xc[_0x5550[79]]-_0x3665xc[_0x5550[111]])/2));var _0x3665xf=Math[_0x5550[118]](0,Math[_0x5550[134]]((_0x3665xe-_0x3665xc[_0x5550[81]]-_0x3665xc[_0x5550[113]])/2));var _0x3665x19=null;if(this[_0x5550[5]][_0x5550[135]]==mxConstants[_0x5550[136]]&&!mxClient[_0x5550[137]]){_0x3665x19=this[_0x5550[5]][_0x5550[73]][_0x5550[140]]()[_0x5550[139]][_0x5550[138]](true)}else {_0x3665x19=this[_0x5550[5]][_0x5550[2]][_0x5550[138]](false);_0x3665x19[_0x5550[104]]=this[_0x5550[5]][_0x5550[2]][_0x5550[104]]};this[_0x5550[5]][_0x5550[141]]()[_0x5550[86]]();if(mxClient[_0x5550[142]]){_0x3665x15[_0x5550[17]][_0x5550[143]]=_0x5550[144]+this[_0x5550[1]][_0x5550[9]][_0x5550[145]]+_0x5550[122]};var _0x3665x1a=3;_0x3665x19[_0x5550[17]][_0x5550[19]]=_0x5550[76];_0x3665x19[_0x5550[17]][_0x5550[91]]=_0x5550[18];_0x3665x19[_0x5550[17]][_0x5550[146]]=_0x5550[147];_0x3665x19[_0x5550[17]][_0x5550[124]]=(_0x3665x18+_0x3665x1a)+_0x5550[93];_0x3665x19[_0x5550[17]][_0x5550[109]]=(_0x3665xf+_0x3665x1a)+_0x5550[93];_0x3665x19[_0x5550[17]][_0x5550[79]]=_0x3665xd+_0x5550[93];_0x3665x19[_0x5550[17]][_0x5550[81]]=_0x3665xe+_0x5550[93];_0x3665x19[_0x5550[17]][_0x5550[16]]=_0x5550[105];_0x3665x19[_0x5550[17]][_0x5550[148]]=_0x5550[105];_0x3665x19[_0x5550[17]][_0x5550[149]]=_0x5550[105];_0x3665x15[_0x5550[21]](_0x3665x19);if(this[_0x5550[63]]&&_0x3665x9!=null){var _0x3665x1b=(mxClient[_0x5550[90]])?2*this[_0x5550[61]]+2:0;_0x3665x15[_0x5550[17]][_0x5550[81]]=(this[_0x5550[60]]+_0x3665x1b+this[_0x5550[62]]+8)+_0x5550[93];var _0x3665x1c=document[_0x5550[7]](_0x5550[6]);_0x3665x1c[_0x5550[17]][_0x5550[150]]=this[_0x5550[62]]+_0x5550[93];_0x3665x1c[_0x5550[17]][_0x5550[98]]=_0x5550[99];_0x3665x1c[_0x5550[17]][_0x5550[151]]=_0x5550[152];if(mxClient[_0x5550[153]]){_0x3665x1c[_0x5550[17]][_0x5550[81]]=(this[_0x5550[62]]+12)+_0x5550[93]};_0x3665x1c[_0x5550[17]][_0x5550[101]]=_0x5550[154];mxUtils[_0x5550[106]](_0x3665x1c,_0x3665x9);_0x3665x15[_0x5550[21]](_0x3665x1c)}};Sidebar[_0x5550[40]][_0x5550[155]]=function(_0x3665x8,_0x3665x9,_0x3665xa){var _0x3665x7=document[_0x5550[7]](_0x5550[128]);_0x3665x7[_0x5550[123]](_0x5550[129],_0x5550[130]);_0x3665x7[_0x5550[69]]=_0x5550[156];_0x3665x7[_0x5550[17]][_0x5550[91]]=_0x5550[18];var _0x3665x1b=(mxClient[_0x5550[90]])?8+2*this[_0x5550[61]]:6;_0x3665x7[_0x5550[17]][_0x5550[79]]=(this[_0x5550[59]]+_0x3665x1b)+_0x5550[93];_0x3665x7[_0x5550[17]][_0x5550[81]]=(this[_0x5550[60]]+_0x3665x1b)+_0x5550[93];_0x3665x7[_0x5550[17]][_0x5550[157]]=this[_0x5550[61]]+_0x5550[93];mxEvent[_0x5550[26]](_0x3665x7,_0x5550[158],function(_0x3665x4){mxEvent[_0x5550[159]](_0x3665x4)});this[_0x5550[132]](_0x3665x8,this[_0x5550[59]],this[_0x5550[60]],_0x3665x7,_0x3665x9,_0x3665xa);return _0x3665x7};Sidebar[_0x5550[40]][_0x5550[160]]=function(_0x3665x8,_0x3665x1d){return function(_0x3665x1e,_0x3665x4,_0x3665x1f,_0x3665x20,_0x3665x21){if(_0x3665x1e[_0x5550[161]]()){_0x3665x8=_0x3665x1e[_0x5550[162]](_0x3665x8);if(_0x3665x8[_0x5550[94]]>0){var _0x3665x22=(_0x3665x1f!=null)?_0x3665x1e[_0x5550[163]](_0x3665x1f,_0x3665x8,_0x3665x4):false;var _0x3665x23=null;if(_0x3665x1f!=null&& !_0x3665x22){_0x3665x1f=null};if(_0x3665x1d&&_0x3665x1e[_0x5550[164]]()&&_0x3665x1e[_0x5550[165]](_0x3665x1f,_0x3665x8,_0x3665x4)){_0x3665x1e[_0x5550[166]](_0x3665x1f,_0x3665x8,null,_0x3665x20,_0x3665x21);_0x3665x23=_0x3665x8}else {if(_0x3665x8[_0x5550[94]]>0){_0x3665x23=_0x3665x1e[_0x5550[167]](_0x3665x8,_0x3665x20,_0x3665x21,_0x3665x1f)}};if(_0x3665x23!=null&&_0x3665x23[_0x5550[94]]>0){_0x3665x1e[_0x5550[168]](_0x3665x23[0]);_0x3665x1e[_0x5550[169]](_0x3665x23)}}}}};Sidebar[_0x5550[40]][_0x5550[170]]=function(_0x3665xd,_0x3665xe){var _0x3665x7=document[_0x5550[7]](_0x5550[6]);_0x3665x7[_0x5550[17]][_0x5550[171]]=_0x5550[172];_0x3665x7[_0x5550[17]][_0x5550[79]]=_0x3665xd+_0x5550[93];_0x3665x7[_0x5550[17]][_0x5550[81]]=_0x3665xe+_0x5550[93];return _0x3665x7};Sidebar[_0x5550[40]][_0x5550[173]]=function(_0x3665x7,_0x3665x24,_0x3665x25){var _0x3665x26=mxUtils[_0x5550[175]](_0x3665x7,this[_0x5550[1]][_0x5550[9]][_0x5550[5]],_0x3665x24,_0x3665x25,0,0,this[_0x5550[1]][_0x5550[9]][_0x5550[5]][_0x5550[174]],true,true);_0x3665x26[_0x5550[176]]=function(_0x3665x1e,_0x3665x20,_0x3665x21){var _0x3665x1f=mxDragSource[_0x5550[40]][_0x5550[176]][_0x5550[177]](this,arguments);if(!_0x3665x1e[_0x5550[178]](_0x3665x1f)){_0x3665x1f=null};return _0x3665x1f};return _0x3665x26};Sidebar[_0x5550[40]][_0x5550[179]]=function(_0x3665x7,_0x3665x27){var _0x3665x1e=this[_0x5550[1]][_0x5550[9]][_0x5550[5]];var _0x3665x28=null;mxEvent[_0x5550[182]](_0x3665x7,function(_0x3665x4){_0x3665x28= new mxPoint(mxEvent[_0x5550[180]](_0x3665x4),mxEvent[_0x5550[181]](_0x3665x4))});var _0x3665x29=_0x3665x27[_0x5550[183]];_0x3665x27[_0x5550[183]]=function(_0x3665x4){if(!mxEvent[_0x5550[184]](_0x3665x4)&&this[_0x5550[185]]==null&&_0x3665x28!=null){var _0x3665x2a=_0x3665x1e[_0x5550[186]];if(Math[_0x5550[187]](_0x3665x28[_0x5550[111]]-mxEvent[_0x5550[180]](_0x3665x4))<=_0x3665x2a&&Math[_0x5550[187]](_0x3665x28[_0x5550[113]]-mxEvent[_0x5550[181]](_0x3665x4))<=_0x3665x2a){var _0x3665x2b=_0x3665x1e[_0x5550[188]]();_0x3665x27[_0x5550[189]](_0x3665x1e,_0x3665x4,null,_0x3665x2b,_0x3665x2b)}};_0x3665x29[_0x5550[177]](this,arguments);_0x3665x28=null}};Sidebar[_0x5550[40]][_0x5550[190]]=function(_0x3665x2c,_0x3665x14,_0x3665x2d,_0x3665x2e){var _0x3665x2f=mxUtils[_0x5550[190]]();var _0x3665x19=_0x3665x2f[_0x5550[7]](_0x3665x2c);_0x3665x19[_0x5550[123]](_0x5550[191],_0x3665x14);_0x3665x2d[_0x5550[192]](function(_0x3665x30,_0x3665x31){_0x3665x19[_0x5550[123]](_0x3665x30,_0x3665x2e[_0x3665x31]?_0x3665x2e[_0x3665x31]:_0x5550[105])});return _0x3665x19};Sidebar[_0x5550[40]][_0x5550[193]]=function(_0x3665x32,_0x3665xd,_0x3665xe,_0x3665x33,_0x3665x9,_0x3665xa){var _0x3665x2d=[];var _0x3665x2e=[];switch(_0x3665x33){case _0x5550[47]:_0x3665x2d=[_0x5550[194],_0x5550[195],_0x5550[196]];_0x3665x2e=[_0x5550[197],_0x5550[105],_0x5550[198]];break;case _0x5550[50]:_0x3665x2d=[_0x5550[194],_0x5550[195]];_0x3665x2e=[_0x5550[197],_0x5550[105]];break;case _0x5550[48]:_0x3665x2d=[_0x5550[194],_0x5550[48],_0x5550[199]];_0x3665x2e=[_0x5550[197],_0x5550[105]];break;case _0x5550[49]:_0x3665x2d=[_0x5550[194],_0x5550[48],_0x5550[200]];_0x3665x2e=[_0x5550[197],_0x5550[105]];break;default:_0x3665x2d=[];_0x3665x2e=[];break};var _0x3665x19=this[_0x5550[190]](_0x3665x33,_0x3665x9,_0x3665x2d,_0x3665x2e);var _0x3665x8=[ new mxCell(_0x3665x19, new mxGeometry(0,0,_0x3665xd,_0x3665xe),_0x3665x32)];_0x3665x8[0][_0x5550[201]]=true;return this[_0x5550[202]](_0x3665x8,_0x3665xd,_0x3665xe,_0x3665x9,_0x3665xa)};Sidebar[_0x5550[40]][_0x5550[202]]=function(_0x3665x8,_0x3665xd,_0x3665xe,_0x3665x9,_0x3665xa){var _0x3665x7=this[_0x5550[155]](_0x3665x8,_0x3665x9,_0x3665xa);var _0x3665x27=this[_0x5550[173]](_0x3665x7,this[_0x5550[160]](_0x3665x8,true),this[_0x5550[170]](_0x3665xd,_0x3665xe));this[_0x5550[179]](_0x3665x7,_0x3665x27);_0x3665x27[_0x5550[203]]=mxUtils[_0x5550[25]](this,function(){return this[_0x5550[1]][_0x5550[9]][_0x5550[5]][_0x5550[205]][_0x5550[204]]});if(!touchStyle){mxEvent[_0x5550[26]](_0x3665x7,_0x5550[30],mxUtils[_0x5550[25]](this,function(_0x3665x4){this[_0x5550[65]](_0x3665x7,_0x3665x8,_0x3665x9,_0x3665xa)}))};return _0x3665x7};Sidebar[_0x5550[40]][_0x5550[206]]=function(_0x3665x32,_0x3665xd,_0x3665xe,_0x3665x33,_0x3665x9,_0x3665xa){var _0x3665x8=[ new mxCell((_0x3665x33!=null)?_0x3665x33:_0x5550[105], new mxGeometry(0,0,_0x3665xd,_0x3665xe),_0x3665x32)];_0x3665x8[0][_0x5550[208]][_0x5550[207]]( new mxPoint(0,_0x3665xe),true);_0x3665x8[0][_0x5550[208]][_0x5550[207]]( new mxPoint(_0x3665xd,0),false);_0x3665x8[0][_0x5550[208]][_0x5550[76]]=true;_0x3665x8[0][_0x5550[209]]=true;return this[_0x5550[210]](_0x3665x8,_0x3665xd,_0x3665xe,_0x3665x9,_0x3665xa)};Sidebar[_0x5550[40]][_0x5550[210]]=function(_0x3665x8,_0x3665xd,_0x3665xe,_0x3665x9,_0x3665xa){var _0x3665x7=this[_0x5550[155]](_0x3665x8,_0x3665x9,_0x3665xa);this[_0x5550[173]](_0x3665x7,this[_0x5550[160]](_0x3665x8,false),this[_0x5550[170]](_0x3665xd,_0x3665xe));var _0x3665x1e=this[_0x5550[1]][_0x5550[9]][_0x5550[5]];mxEvent[_0x5550[26]](_0x3665x7,_0x5550[158],mxUtils[_0x5550[25]](this,function(_0x3665x4){if(this[_0x5550[56]]){_0x3665x1e[_0x5550[211]](_0x3665x8[0])};_0x3665x7[_0x5550[17]][_0x5550[212]]=_0x5550[213];window[_0x5550[126]](function(){_0x3665x7[_0x5550[17]][_0x5550[212]]=_0x5550[105]},300);mxEvent[_0x5550[159]](_0x3665x4)}));touchStyle=false;if(!touchStyle){mxEvent[_0x5550[26]](_0x3665x7,_0x5550[30],mxUtils[_0x5550[25]](this,function(_0x3665x4){this[_0x5550[65]](_0x3665x7,_0x3665x8,_0x3665x9,_0x3665xa)}))};return _0x3665x7};Sidebar[_0x5550[40]][_0x5550[214]]=function(_0x3665x34,_0x3665x9,_0x3665x35,_0x3665x36){var _0x3665x7=this[_0x5550[127]](_0x3665x9);this[_0x5550[2]][_0x5550[21]](_0x3665x7);var _0x3665x1c=document[_0x5550[7]](_0x5550[6]);_0x3665x1c[_0x5550[69]]=_0x5550[215];if(_0x3665x35){_0x3665x36(_0x3665x1c);_0x3665x36=null}else {_0x3665x1c[_0x5550[17]][_0x5550[83]]=_0x5550[110]};this[_0x5550[216]](_0x3665x7,_0x3665x1c,_0x3665x36);var _0x3665x37=document[_0x5550[7]](_0x5550[6]);_0x3665x37[_0x5550[21]](_0x3665x1c);this[_0x5550[2]][_0x5550[21]](_0x3665x37);if(_0x3665x34!=null){this[_0x5550[3]][_0x3665x34]=[_0x3665x7,_0x3665x37]}};Sidebar[_0x5550[40]][_0x5550[216]]=function(_0x3665x9,_0x3665x38,_0x3665x39){var _0x3665x3a=false;_0x3665x9[_0x5550[17]][_0x5550[143]]=(_0x3665x38[_0x5550[17]][_0x5550[83]]==_0x5550[110])?_0x5550[144]+IMAGE_PATH+_0x5550[217]:_0x5550[144]+IMAGE_PATH+_0x5550[218];_0x3665x9[_0x5550[17]][_0x5550[219]]=_0x5550[220];_0x3665x9[_0x5550[17]][_0x5550[221]]=_0x5550[222];mxEvent[_0x5550[26]](_0x3665x9,_0x5550[158],function(_0x3665x4){if(_0x3665x38[_0x5550[17]][_0x5550[83]]==_0x5550[110]){if(!_0x3665x3a){_0x3665x3a=true;if(_0x3665x39!=null){_0x3665x9[_0x5550[17]][_0x5550[146]]=_0x5550[223];window[_0x5550[126]](function(){_0x3665x39(_0x3665x38);_0x3665x9[_0x5550[17]][_0x5550[146]]=_0x5550[105]},0)}};_0x3665x9[_0x5550[17]][_0x5550[143]]=_0x5550[144]+IMAGE_PATH+_0x5550[218];_0x3665x38[_0x5550[17]][_0x5550[83]]=_0x5550[84]}else {_0x3665x9[_0x5550[17]][_0x5550[143]]=_0x5550[144]+IMAGE_PATH+_0x5550[217];_0x3665x38[_0x5550[17]][_0x5550[83]]=_0x5550[110]};mxEvent[_0x5550[159]](_0x3665x4)})};Sidebar[_0x5550[40]][_0x5550[224]]=function(_0x3665x34){var _0x3665x3b=this[_0x5550[3]][_0x3665x34];if(_0x3665x3b!=null){this[_0x5550[3]][_0x3665x34]=null;for(var _0x3665x3c=0;_0x3665x3c<_0x3665x3b[_0x5550[94]];_0x3665x3c++){this[_0x5550[2]][_0x5550[225]](_0x3665x3b[_0x3665x3c])};return true};return false};Sidebar[_0x5550[40]][_0x5550[51]]=function(_0x3665x34,_0x3665x9,_0x3665x3d,_0x3665x3e,_0x3665x3f,_0x3665x40){this[_0x5550[214]](_0x3665x34,_0x3665x9,(_0x3665x34===_0x5550[42]),mxUtils[_0x5550[25]](this,function(_0x3665x38){var _0x3665x41=_0x3665x40!=null;for(var _0x3665x3c=0;_0x3665x3c<_0x3665x3f[_0x5550[94]];_0x3665x3c++){var _0x3665x42=_0x3665x3d+_0x3665x3f[_0x3665x3c]+_0x3665x3e;_0x3665x38[_0x5550[21]](this[_0x5550[193]](_0x5550[226]+_0x3665x42,80,80,_0x3665x3f[_0x3665x3c],(_0x3665x41)?_0x3665x40[_0x3665x3c]:null,_0x3665x41))}}))} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/Toolbar.js b/public/assets/plugins/jscripty/js/Toolbar.js index 6891212..f0592c0 100644 --- a/public/assets/plugins/jscripty/js/Toolbar.js +++ b/public/assets/plugins/jscripty/js/Toolbar.js @@ -1 +1 @@ -var _0xb619=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x6E\x69\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x62\x69\x6E\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x61\x76\x65","\x70\x75\x62\x6C\x69\x73\x68","\x2D","\x70\x72\x69\x6E\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x6F\x70\x79","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x61\x64\x64\x49\x74\x65\x6D\x73","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x67\x65\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x73\x74\x79\x6C\x65","\x6E\x6F\x77\x72\x61\x70","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x77\x69\x64\x74\x68","\x37\x30\x70\x78","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x31\x32","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x33\x30\x70\x78","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x6C\x65\x6E\x67\x74\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2E\x2E\x2E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x64\x65\x73\x74\x72\x6F\x79","\x6D\x65\x6E\x75\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x4D\x65\x6E\x75\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x42\x75\x74\x74\x6F\x6E","\x69\x6E\x69\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x67\x65\x53\x70\x72\x69\x74\x65\x2D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x64\x49\x74\x65\x6D","\x61\x63\x74\x69\x6F\x6E\x73","\x6C\x61\x62\x65\x6C","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x61\x64\x64\x45\x64\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x69\x73\x45\x64\x67\x65","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x74\x69\x74\x6C\x65","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64\x53\x74\x61\x74\x65","\x20\x67\x65\x44\x69\x73\x61\x62\x6C\x65\x64","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x42\x75\x74\x74\x6F\x6E","\x67\x65\x53\x70\x72\x69\x74\x65\x20","\x67\x65\x4C\x61\x62\x65\x6C","\x77\x72\x69\x74\x65","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x20\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x65\x6E\x75","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x6C\x61\x62\x65\x6C\x73","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70"];function Toolbar(_0x8b8fx2,_0x8b8fx3){this[_0xb619[0]]=_0x8b8fx2;this[_0xb619[1]]=_0x8b8fx3;this[_0xb619[2]]();mxEvent[_0xb619[5]](document,mxUtils[_0xb619[4]](this,function(_0x8b8fx4){this[_0xb619[3]]()}))}Toolbar[_0xb619[6]][_0xb619[2]]=function(){this[_0xb619[21]]([_0xb619[7],_0xb619[8],_0xb619[9],_0xb619[10],_0xb619[11],_0xb619[12],_0xb619[9],_0xb619[13],_0xb619[14],_0xb619[15],_0xb619[16],_0xb619[9],_0xb619[17],_0xb619[9],_0xb619[18],_0xb619[19],_0xb619[20],_0xb619[9]]);var _0x8b8fx5=this[_0xb619[25]](_0xb619[22],mxResources[_0xb619[24]](_0xb619[23]),true,_0xb619[23]);_0x8b8fx5[_0xb619[27]][_0xb619[26]]=_0xb619[28];_0x8b8fx5[_0xb619[27]][_0xb619[29]]=_0xb619[30];_0x8b8fx5[_0xb619[27]][_0xb619[31]]=_0xb619[32];this[_0xb619[33]]();var _0x8b8fx6=this[_0xb619[25]](_0xb619[34],mxResources[_0xb619[24]](_0xb619[35]),true,_0xb619[35]);_0x8b8fx6[_0xb619[27]][_0xb619[26]]=_0xb619[28];_0x8b8fx6[_0xb619[27]][_0xb619[29]]=_0xb619[30];_0x8b8fx6[_0xb619[27]][_0xb619[31]]=_0xb619[36];this[_0xb619[21]]([_0xb619[9],_0xb619[37],_0xb619[38],_0xb619[39]]);var _0x8b8fx7=this[_0xb619[0]][_0xb619[41]][_0xb619[40]];var _0x8b8fx8=mxUtils[_0xb619[4]](this,function(){var _0x8b8fx9=_0xb619[22];var _0x8b8fxa=_0xb619[34];var _0x8b8fxb=_0x8b8fx7[_0xb619[44]]()[_0xb619[43]](_0x8b8fx7[_0xb619[42]]());if(_0x8b8fxb!=null){_0x8b8fx9=_0x8b8fxb[_0xb619[27]][mxConstants[_0xb619[45]]]||_0x8b8fx9;_0x8b8fxa=_0x8b8fxb[_0xb619[27]][mxConstants[_0xb619[46]]]||_0x8b8fxa;if(_0x8b8fx9[_0xb619[47]]>10){_0x8b8fx9=_0x8b8fx9[_0xb619[48]](0,8)+_0xb619[49]};_0x8b8fx5[_0xb619[50]]=_0x8b8fx9;_0x8b8fx6[_0xb619[50]]=_0x8b8fxa}});_0x8b8fx7[_0xb619[52]]()[_0xb619[51]](mxEvent.CHANGE,_0x8b8fx8);_0x8b8fx7[_0xb619[53]]()[_0xb619[51]](mxEvent.CHANGE,_0x8b8fx8)};Toolbar[_0xb619[6]][_0xb619[3]]=function(){if(this[_0xb619[54]]!=null){this[_0xb619[54]][_0xb619[3]]();this[_0xb619[54]][_0xb619[55]]();this[_0xb619[54]]=null}};Toolbar[_0xb619[6]][_0xb619[25]]=function(_0x8b8fxc,_0x8b8fxd,_0x8b8fxe,_0x8b8fxf){var _0x8b8fx10=this[_0xb619[0]][_0xb619[56]][_0xb619[24]](_0x8b8fxf);var _0x8b8fx11=this[_0xb619[58]](_0x8b8fxc,_0x8b8fxd,_0x8b8fxe,_0x8b8fx10[_0xb619[57]]);_0x8b8fx10[_0xb619[51]](_0xb619[59],function(){_0x8b8fx11[_0xb619[61]](_0x8b8fx10[_0xb619[60]])});return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[58]]=function(_0x8b8fxc,_0x8b8fxd,_0x8b8fxe,_0x8b8fx12){var _0x8b8fx11=(_0x8b8fxe)?this[_0xb619[62]](_0x8b8fxc):this[_0xb619[63]](_0x8b8fxc);this[_0xb619[64]](_0x8b8fx11,_0x8b8fxd);this[_0xb619[65]](_0x8b8fx11,_0x8b8fxe,_0x8b8fx12);this[_0xb619[1]][_0xb619[66]](_0x8b8fx11);return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[33]]=function(){var _0x8b8fx11=document[_0xb619[68]](_0xb619[67]);_0x8b8fx11[_0xb619[69]]=_0xb619[70];this[_0xb619[1]][_0xb619[66]](_0x8b8fx11);return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[21]]=function(_0x8b8fx13){for(var _0x8b8fx14=0;_0x8b8fx14<_0x8b8fx13[_0xb619[47]];_0x8b8fx14++){var _0x8b8fx15=_0x8b8fx13[_0x8b8fx14];if(_0x8b8fx15==_0xb619[9]){this[_0xb619[33]]()}else {this[_0xb619[73]](_0xb619[71]+_0x8b8fx15[_0xb619[72]](),_0x8b8fx15)}}};Toolbar[_0xb619[6]][_0xb619[73]]=function(_0x8b8fx16,_0x8b8fx15){var _0x8b8fx17=this[_0xb619[0]][_0xb619[74]][_0xb619[24]](_0x8b8fx15);var _0x8b8fx11=null;if(_0x8b8fx17!=null){_0x8b8fx11=this[_0xb619[76]](_0x8b8fx16,_0x8b8fx17[_0xb619[75]],_0x8b8fx17[_0xb619[57]]);_0x8b8fx11[_0xb619[61]](_0x8b8fx17[_0xb619[60]]);_0x8b8fx17[_0xb619[51]](_0xb619[59],function(){_0x8b8fx11[_0xb619[61]](_0x8b8fx17[_0xb619[60]])})};return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[76]]=function(_0x8b8fx18,_0x8b8fxd,_0x8b8fx12){var _0x8b8fx11=this[_0xb619[63]](_0x8b8fx18);this[_0xb619[64]](_0x8b8fx11,_0x8b8fxd);this[_0xb619[77]](_0x8b8fx11,_0x8b8fx12);this[_0xb619[1]][_0xb619[66]](_0x8b8fx11);return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[78]]=function(_0x8b8fx19){var _0x8b8fx7=this[_0xb619[0]][_0xb619[41]][_0xb619[40]];var _0x8b8fx1a=function(){var _0x8b8fx1b=!_0x8b8fx7[_0xb619[79]]();for(var _0x8b8fx14=0;_0x8b8fx14<_0x8b8fx19[_0xb619[47]];_0x8b8fx14++){_0x8b8fx19[_0x8b8fx14][_0xb619[61]](_0x8b8fx1b)}};_0x8b8fx7[_0xb619[52]]()[_0xb619[51]](mxEvent.CHANGE,_0x8b8fx1a);_0x8b8fx1a()};Toolbar[_0xb619[6]][_0xb619[80]]=function(_0x8b8fx19){var _0x8b8fx7=this[_0xb619[0]][_0xb619[41]][_0xb619[40]];var _0x8b8fx1a=function(){var _0x8b8fx1c=false;if(!_0x8b8fx7[_0xb619[79]]()){var _0x8b8fx1d=_0x8b8fx7[_0xb619[81]]();for(var _0x8b8fx14=0;_0x8b8fx14<_0x8b8fx1d[_0xb619[47]];_0x8b8fx14++){if(_0x8b8fx7[_0xb619[53]]()[_0xb619[82]](_0x8b8fx1d[_0x8b8fx14])){_0x8b8fx1c=true;break}}};for(var _0x8b8fx14=0;_0x8b8fx14<_0x8b8fx19[_0xb619[47]];_0x8b8fx14++){_0x8b8fx19[_0x8b8fx14][_0xb619[61]](_0x8b8fx1c)}};_0x8b8fx7[_0xb619[52]]()[_0xb619[51]](mxEvent.CHANGE,_0x8b8fx1a);_0x8b8fx1a()};Toolbar[_0xb619[6]][_0xb619[64]]=function(_0x8b8fx11,_0x8b8fxd){_0x8b8fx11[_0xb619[85]](_0xb619[83],_0xb619[84]);if(_0x8b8fxd!=null){_0x8b8fx11[_0xb619[85]](_0xb619[86],_0x8b8fxd)};this[_0xb619[87]](_0x8b8fx11)};Toolbar[_0xb619[6]][_0xb619[87]]=function(_0x8b8fx11){var _0x8b8fx18=_0x8b8fx11[_0xb619[69]];_0x8b8fx11[_0xb619[61]]=function(_0x8b8fx1e){_0x8b8fx11[_0xb619[60]]=_0x8b8fx1e;if(_0x8b8fx1e){_0x8b8fx11[_0xb619[69]]=_0x8b8fx18}else {_0x8b8fx11[_0xb619[69]]=_0x8b8fx18+_0xb619[88]}};_0x8b8fx11[_0xb619[61]](true)};Toolbar[_0xb619[6]][_0xb619[77]]=function(_0x8b8fx11,_0x8b8fx12){if(_0x8b8fx12!=null){mxEvent[_0xb619[51]](_0x8b8fx11,_0xb619[89],function(_0x8b8fx4){if(_0x8b8fx11[_0xb619[60]]){_0x8b8fx12(_0x8b8fx4)};mxEvent[_0xb619[90]](_0x8b8fx4)})}};Toolbar[_0xb619[6]][_0xb619[63]]=function(_0x8b8fx18){var _0x8b8fx11=document[_0xb619[68]](_0xb619[91]);_0x8b8fx11[_0xb619[85]](_0xb619[92],_0xb619[93]);_0x8b8fx11[_0xb619[69]]=_0xb619[94];var _0x8b8fx1f=document[_0xb619[68]](_0xb619[67]);_0x8b8fx1f[_0xb619[69]]=_0xb619[95]+_0x8b8fx18;_0x8b8fx11[_0xb619[66]](_0x8b8fx1f);return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[62]]=function(_0x8b8fxc,_0x8b8fxd){var _0x8b8fx11=document[_0xb619[68]](_0xb619[91]);_0x8b8fx11[_0xb619[85]](_0xb619[92],_0xb619[93]);_0x8b8fx11[_0xb619[69]]=_0xb619[96];mxUtils[_0xb619[97]](_0x8b8fx11,_0x8b8fxc);return _0x8b8fx11};Toolbar[_0xb619[6]][_0xb619[65]]=function(_0x8b8fx11,_0x8b8fxe,_0x8b8fx12,_0x8b8fx20){if(_0x8b8fx12!=null){var _0x8b8fx7=this[_0xb619[0]][_0xb619[41]][_0xb619[40]];var _0x8b8fx10=null;mxEvent[_0xb619[51]](_0x8b8fx11,_0xb619[89],mxUtils[_0xb619[4]](this,function(_0x8b8fx4){if(_0x8b8fx11[_0xb619[60]]==null||_0x8b8fx11[_0xb619[60]]){_0x8b8fx7[_0xb619[98]][_0xb619[3]]();_0x8b8fx10= new mxPopupMenu(_0x8b8fx12);_0x8b8fx10[_0xb619[67]][_0xb619[69]]+=_0xb619[99];_0x8b8fx10[_0xb619[100]]=_0x8b8fx20;_0x8b8fx10[_0xb619[101]]=_0x8b8fxe;_0x8b8fx10[_0xb619[102]]=true;_0x8b8fx10[_0xb619[106]](_0x8b8fx11[_0xb619[103]],_0x8b8fx11[_0xb619[104]]+_0x8b8fx11[_0xb619[105]]+34,null,_0x8b8fx4);this[_0xb619[54]]=_0x8b8fx10};mxEvent[_0xb619[90]](_0x8b8fx4)}))}} \ No newline at end of file +var _0x3ef8=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x6E\x69\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x62\x69\x6E\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x61\x76\x65","\x70\x75\x62\x6C\x69\x73\x68","\x2D","\x70\x72\x69\x6E\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x6F\x70\x79","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x61\x64\x64\x49\x74\x65\x6D\x73","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x67\x65\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x73\x74\x79\x6C\x65","\x6E\x6F\x77\x72\x61\x70","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x77\x69\x64\x74\x68","\x37\x30\x70\x78","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x31\x32","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x33\x30\x70\x78","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x6C\x65\x6E\x67\x74\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2E\x2E\x2E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x64\x65\x73\x74\x72\x6F\x79","\x6D\x65\x6E\x75\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x4D\x65\x6E\x75\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x42\x75\x74\x74\x6F\x6E","\x69\x6E\x69\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x67\x65\x53\x70\x72\x69\x74\x65\x2D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x64\x49\x74\x65\x6D","\x61\x63\x74\x69\x6F\x6E\x73","\x6C\x61\x62\x65\x6C","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x61\x64\x64\x45\x64\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x69\x73\x45\x64\x67\x65","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x74\x69\x74\x6C\x65","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64\x53\x74\x61\x74\x65","\x20\x67\x65\x44\x69\x73\x61\x62\x6C\x65\x64","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x42\x75\x74\x74\x6F\x6E","\x67\x65\x53\x70\x72\x69\x74\x65\x20","\x67\x65\x4C\x61\x62\x65\x6C","\x77\x72\x69\x74\x65","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x20\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x65\x6E\x75","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x6C\x61\x62\x65\x6C\x73","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70"];function Toolbar(_0x401ex2,_0x401ex3){this[_0x3ef8[0]]=_0x401ex2;this[_0x3ef8[1]]=_0x401ex3;this[_0x3ef8[2]]();mxEvent[_0x3ef8[5]](document,mxUtils[_0x3ef8[4]](this,function(_0x401ex4){this[_0x3ef8[3]]()}))}Toolbar[_0x3ef8[6]][_0x3ef8[2]]=function(){this[_0x3ef8[21]]([_0x3ef8[7],_0x3ef8[8],_0x3ef8[9],_0x3ef8[10],_0x3ef8[11],_0x3ef8[12],_0x3ef8[9],_0x3ef8[13],_0x3ef8[14],_0x3ef8[15],_0x3ef8[16],_0x3ef8[9],_0x3ef8[17],_0x3ef8[9],_0x3ef8[18],_0x3ef8[19],_0x3ef8[20],_0x3ef8[9]]);var _0x401ex5=this[_0x3ef8[25]](_0x3ef8[22],mxResources[_0x3ef8[24]](_0x3ef8[23]),true,_0x3ef8[23]);_0x401ex5[_0x3ef8[27]][_0x3ef8[26]]=_0x3ef8[28];_0x401ex5[_0x3ef8[27]][_0x3ef8[29]]=_0x3ef8[30];_0x401ex5[_0x3ef8[27]][_0x3ef8[31]]=_0x3ef8[32];this[_0x3ef8[33]]();var _0x401ex6=this[_0x3ef8[25]](_0x3ef8[34],mxResources[_0x3ef8[24]](_0x3ef8[35]),true,_0x3ef8[35]);_0x401ex6[_0x3ef8[27]][_0x3ef8[26]]=_0x3ef8[28];_0x401ex6[_0x3ef8[27]][_0x3ef8[29]]=_0x3ef8[30];_0x401ex6[_0x3ef8[27]][_0x3ef8[31]]=_0x3ef8[36];this[_0x3ef8[21]]([_0x3ef8[9],_0x3ef8[37],_0x3ef8[38],_0x3ef8[39]]);var _0x401ex7=this[_0x3ef8[0]][_0x3ef8[41]][_0x3ef8[40]];var _0x401ex8=mxUtils[_0x3ef8[4]](this,function(){var _0x401ex9=_0x3ef8[22];var _0x401exa=_0x3ef8[34];var _0x401exb=_0x401ex7[_0x3ef8[44]]()[_0x3ef8[43]](_0x401ex7[_0x3ef8[42]]());if(_0x401exb!=null){_0x401ex9=_0x401exb[_0x3ef8[27]][mxConstants[_0x3ef8[45]]]||_0x401ex9;_0x401exa=_0x401exb[_0x3ef8[27]][mxConstants[_0x3ef8[46]]]||_0x401exa;if(_0x401ex9[_0x3ef8[47]]>10){_0x401ex9=_0x401ex9[_0x3ef8[48]](0,8)+_0x3ef8[49]};_0x401ex5[_0x3ef8[50]]=_0x401ex9;_0x401ex6[_0x3ef8[50]]=_0x401exa}});_0x401ex7[_0x3ef8[52]]()[_0x3ef8[51]](mxEvent.CHANGE,_0x401ex8);_0x401ex7[_0x3ef8[53]]()[_0x3ef8[51]](mxEvent.CHANGE,_0x401ex8)};Toolbar[_0x3ef8[6]][_0x3ef8[3]]=function(){if(this[_0x3ef8[54]]!=null){this[_0x3ef8[54]][_0x3ef8[3]]();this[_0x3ef8[54]][_0x3ef8[55]]();this[_0x3ef8[54]]=null}};Toolbar[_0x3ef8[6]][_0x3ef8[25]]=function(_0x401exc,_0x401exd,_0x401exe,_0x401exf){var _0x401ex10=this[_0x3ef8[0]][_0x3ef8[56]][_0x3ef8[24]](_0x401exf);var _0x401ex11=this[_0x3ef8[58]](_0x401exc,_0x401exd,_0x401exe,_0x401ex10[_0x3ef8[57]]);_0x401ex10[_0x3ef8[51]](_0x3ef8[59],function(){_0x401ex11[_0x3ef8[61]](_0x401ex10[_0x3ef8[60]])});return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[58]]=function(_0x401exc,_0x401exd,_0x401exe,_0x401ex12){var _0x401ex11=(_0x401exe)?this[_0x3ef8[62]](_0x401exc):this[_0x3ef8[63]](_0x401exc);this[_0x3ef8[64]](_0x401ex11,_0x401exd);this[_0x3ef8[65]](_0x401ex11,_0x401exe,_0x401ex12);this[_0x3ef8[1]][_0x3ef8[66]](_0x401ex11);return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[33]]=function(){var _0x401ex11=document[_0x3ef8[68]](_0x3ef8[67]);_0x401ex11[_0x3ef8[69]]=_0x3ef8[70];this[_0x3ef8[1]][_0x3ef8[66]](_0x401ex11);return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[21]]=function(_0x401ex13){for(var _0x401ex14=0;_0x401ex14<_0x401ex13[_0x3ef8[47]];_0x401ex14++){var _0x401ex15=_0x401ex13[_0x401ex14];if(_0x401ex15==_0x3ef8[9]){this[_0x3ef8[33]]()}else {this[_0x3ef8[73]](_0x3ef8[71]+_0x401ex15[_0x3ef8[72]](),_0x401ex15)}}};Toolbar[_0x3ef8[6]][_0x3ef8[73]]=function(_0x401ex16,_0x401ex15){var _0x401ex17=this[_0x3ef8[0]][_0x3ef8[74]][_0x3ef8[24]](_0x401ex15);var _0x401ex11=null;if(_0x401ex17!=null){_0x401ex11=this[_0x3ef8[76]](_0x401ex16,_0x401ex17[_0x3ef8[75]],_0x401ex17[_0x3ef8[57]]);_0x401ex11[_0x3ef8[61]](_0x401ex17[_0x3ef8[60]]);_0x401ex17[_0x3ef8[51]](_0x3ef8[59],function(){_0x401ex11[_0x3ef8[61]](_0x401ex17[_0x3ef8[60]])})};return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[76]]=function(_0x401ex18,_0x401exd,_0x401ex12){var _0x401ex11=this[_0x3ef8[63]](_0x401ex18);this[_0x3ef8[64]](_0x401ex11,_0x401exd);this[_0x3ef8[77]](_0x401ex11,_0x401ex12);this[_0x3ef8[1]][_0x3ef8[66]](_0x401ex11);return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[78]]=function(_0x401ex19){var _0x401ex7=this[_0x3ef8[0]][_0x3ef8[41]][_0x3ef8[40]];var _0x401ex1a=function(){var _0x401ex1b=!_0x401ex7[_0x3ef8[79]]();for(var _0x401ex14=0;_0x401ex14<_0x401ex19[_0x3ef8[47]];_0x401ex14++){_0x401ex19[_0x401ex14][_0x3ef8[61]](_0x401ex1b)}};_0x401ex7[_0x3ef8[52]]()[_0x3ef8[51]](mxEvent.CHANGE,_0x401ex1a);_0x401ex1a()};Toolbar[_0x3ef8[6]][_0x3ef8[80]]=function(_0x401ex19){var _0x401ex7=this[_0x3ef8[0]][_0x3ef8[41]][_0x3ef8[40]];var _0x401ex1a=function(){var _0x401ex1c=false;if(!_0x401ex7[_0x3ef8[79]]()){var _0x401ex1d=_0x401ex7[_0x3ef8[81]]();for(var _0x401ex14=0;_0x401ex14<_0x401ex1d[_0x3ef8[47]];_0x401ex14++){if(_0x401ex7[_0x3ef8[53]]()[_0x3ef8[82]](_0x401ex1d[_0x401ex14])){_0x401ex1c=true;break}}};for(var _0x401ex14=0;_0x401ex14<_0x401ex19[_0x3ef8[47]];_0x401ex14++){_0x401ex19[_0x401ex14][_0x3ef8[61]](_0x401ex1c)}};_0x401ex7[_0x3ef8[52]]()[_0x3ef8[51]](mxEvent.CHANGE,_0x401ex1a);_0x401ex1a()};Toolbar[_0x3ef8[6]][_0x3ef8[64]]=function(_0x401ex11,_0x401exd){_0x401ex11[_0x3ef8[85]](_0x3ef8[83],_0x3ef8[84]);if(_0x401exd!=null){_0x401ex11[_0x3ef8[85]](_0x3ef8[86],_0x401exd)};this[_0x3ef8[87]](_0x401ex11)};Toolbar[_0x3ef8[6]][_0x3ef8[87]]=function(_0x401ex11){var _0x401ex18=_0x401ex11[_0x3ef8[69]];_0x401ex11[_0x3ef8[61]]=function(_0x401ex1e){_0x401ex11[_0x3ef8[60]]=_0x401ex1e;if(_0x401ex1e){_0x401ex11[_0x3ef8[69]]=_0x401ex18}else {_0x401ex11[_0x3ef8[69]]=_0x401ex18+_0x3ef8[88]}};_0x401ex11[_0x3ef8[61]](true)};Toolbar[_0x3ef8[6]][_0x3ef8[77]]=function(_0x401ex11,_0x401ex12){if(_0x401ex12!=null){mxEvent[_0x3ef8[51]](_0x401ex11,_0x3ef8[89],function(_0x401ex4){if(_0x401ex11[_0x3ef8[60]]){_0x401ex12(_0x401ex4)};mxEvent[_0x3ef8[90]](_0x401ex4)})}};Toolbar[_0x3ef8[6]][_0x3ef8[63]]=function(_0x401ex18){var _0x401ex11=document[_0x3ef8[68]](_0x3ef8[91]);_0x401ex11[_0x3ef8[85]](_0x3ef8[92],_0x3ef8[93]);_0x401ex11[_0x3ef8[69]]=_0x3ef8[94];var _0x401ex1f=document[_0x3ef8[68]](_0x3ef8[67]);_0x401ex1f[_0x3ef8[69]]=_0x3ef8[95]+_0x401ex18;_0x401ex11[_0x3ef8[66]](_0x401ex1f);return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[62]]=function(_0x401exc,_0x401exd){var _0x401ex11=document[_0x3ef8[68]](_0x3ef8[91]);_0x401ex11[_0x3ef8[85]](_0x3ef8[92],_0x3ef8[93]);_0x401ex11[_0x3ef8[69]]=_0x3ef8[96];mxUtils[_0x3ef8[97]](_0x401ex11,_0x401exc);return _0x401ex11};Toolbar[_0x3ef8[6]][_0x3ef8[65]]=function(_0x401ex11,_0x401exe,_0x401ex12,_0x401ex20){if(_0x401ex12!=null){var _0x401ex7=this[_0x3ef8[0]][_0x3ef8[41]][_0x3ef8[40]];var _0x401ex10=null;mxEvent[_0x3ef8[51]](_0x401ex11,_0x3ef8[89],mxUtils[_0x3ef8[4]](this,function(_0x401ex4){if(_0x401ex11[_0x3ef8[60]]==null||_0x401ex11[_0x3ef8[60]]){_0x401ex7[_0x3ef8[98]][_0x3ef8[3]]();_0x401ex10= new mxPopupMenu(_0x401ex12);_0x401ex10[_0x3ef8[67]][_0x3ef8[69]]+=_0x3ef8[99];_0x401ex10[_0x3ef8[100]]=_0x401ex20;_0x401ex10[_0x3ef8[101]]=_0x401exe;_0x401ex10[_0x3ef8[102]]=true;_0x401ex10[_0x3ef8[106]](_0x401ex11[_0x3ef8[103]],_0x401ex11[_0x3ef8[104]]+_0x401ex11[_0x3ef8[105]]+34,null,_0x401ex4);this[_0x3ef8[54]]=_0x401ex10};mxEvent[_0x3ef8[90]](_0x401ex4)}))}} \ No newline at end of file diff --git a/public/assets/plugins/jscripty/js/custom.js b/public/assets/plugins/jscripty/js/custom.js index 81647ac..190b05e 100644 --- a/public/assets/plugins/jscripty/js/custom.js +++ b/public/assets/plugins/jscripty/js/custom.js @@ -1 +1 @@ -var _0xf3ee=["\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x26","\x73\x70\x6C\x69\x74","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x3D","\x69\x6E\x64\x65\x78\x4F\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x65\x78\x70\x2E\x64\x72\x61\x77\x2E\x69\x6F\x2F\x49\x6D\x61\x67\x65\x45\x78\x70\x6F\x72\x74\x32\x2F\x65\x78\x70\x6F\x72\x74","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x33\x30\x30\x30","\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x2F","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x73\x74\x65\x6E\x63\x69\x6C\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x68\x61\x70\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x74\x79\x6C\x65\x73","\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x6F\x70\x65\x6E","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x2F\x64\x69\x61","\x63\x75\x73\x74\x6F\x6D","\x4E\x47\x5F\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x4C\x41\x4E\x47\x5F\x4B\x45\x59","\x67\x65\x74\x49\x74\x65\x6D","\x6C\x6F\x67","\x65\x6E","\x65\x6E\x5F\x45\x4E","\x69\x74","\x6D\x78\x4C\x61\x6E\x67\x75\x61\x67\x65","\x61\x72","\x62\x73","\x63\x73","\x64\x61","\x64\x65","\x65\x6C","\x65\x73","\x65\x73\x2D\x61\x72","\x66\x72","\x68\x75","\x69\x64","\x6A\x61","\x6B\x6F","\x6E\x6C","\x6E\x6F","\x70\x6C","\x70\x74\x2D\x62\x72","\x70\x74","\x72\x6F","\x72\x75","\x73\x72","\x73\x76","\x74\x68","\x74\x72","\x75\x6B","\x7A\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x6A\x73","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x20\x43\x61\x6E\x74\x6F\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x54\x61\x69\x77\x61\x6E\x20\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x4D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x42\x72\x61\x7A\x69\x6C\x69\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x61\x74\x61\x6C\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x7A\x65\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x75\x74\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x49\x74\x61\x6C\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65\x09","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x4D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x4D\x61\x6C\x65","\x53\x77\x65\x64\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x53\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x4B\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x53\x70\x61\x69\x6E\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x4D\x65\x78\x69\x63\x6F\x29","\x49\x74\x61\x6C\x69\x61\x6E\x20\x28\x49\x74\x61\x6C\x79\x29\x20\x2F\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x28\x46\x69\x6E\x6C\x61\x6E\x64\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x46\x72\x61\x6E\x63\x65\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x50\x6F\x6C\x69\x73\x68\x20\x28\x50\x6F\x6C\x61\x6E\x64\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x50\x6F\x72\x74\x75\x67\x61\x6C\x29","\x43\x61\x74\x61\x6C\x61\x6E\x20\x28\x43\x61\x74\x61\x6C\x61\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x61\x69\x77\x61\x6E\x29","\x44\x61\x6E\x69\x73\x68\x20\x28\x44\x65\x6E\x6D\x61\x72\x6B\x29","\x47\x65\x72\x6D\x61\x6E\x20\x28\x47\x65\x72\x6D\x61\x6E\x79\x29","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x28\x4A\x61\x70\x61\x6E\x29","\x4B\x6F\x72\x65\x61\x6E\x20\x28\x4B\x6F\x72\x65\x61\x29","\x44\x75\x74\x63\x68\x20\x28\x4E\x65\x74\x68\x65\x72\x6C\x61\x6E\x64\x73\x29","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x6F\x72\x77\x61\x79\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x42\x72\x61\x7A\x69\x6C\x29","\x52\x75\x73\x73\x69\x61\x6E\x20\x28\x52\x75\x73\x73\x69\x61\x29","\x53\x77\x65\x64\x69\x73\x68\x20\x28\x53\x77\x65\x64\x65\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x43\x68\x69\x6E\x61\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x29","\x44\x65\x66\x61\x75\x6C\x74","\x44\x61\x74\x65","\x55\x53\x20\x4D\x6F\x6E\x65\x79","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39\x39","\x54\x69\x6D\x65","\x50\x68\x6F\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72","\x53\x74\x72\x65\x65\x74\x73","\x55\x53\x20\x43\x69\x74\x79\x2F\x53\x74\x61\x74\x65\x73","\x41\x66\x72\x69\x6B\x61\x61\x6E\x73","\x41\x6C\x62\x61\x6E\x69\x61\x6E","\x41\x6D\x68\x61\x72\x69\x63","\x41\x72\x61\x62\x69\x63","\x41\x72\x6D\x65\x6E\x69\x61\x6E","\x41\x7A\x65\x72\x62\x61\x69\x6A\x61\x6E\x69","\x42\x61\x73\x71\x75\x65","\x42\x65\x6C\x61\x72\x75\x73\x69\x61\x6E","\x42\x65\x6E\x67\x61\x6C\x69","\x42\x69\x68\x61\x72\x69","\x42\x6F\x73\x6E\x69\x61\x6E","\x42\x72\x65\x74\x6F\x6E","\x42\x75\x6C\x67\x61\x72\x69\x61\x6E","\x43\x61\x6D\x62\x6F\x64\x69\x61\x6E","\x43\x61\x74\x61\x6C\x61\x6E","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x53\x69\x6D\x70\x6C\x69\x66\x69\x65\x64\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x72\x61\x64\x69\x74\x69\x6F\x6E\x61\x6C\x29","\x43\x6F\x72\x73\x69\x63\x61\x6E","\x43\x72\x6F\x61\x74\x69\x61\x6E","\x43\x7A\x65\x63\x68","\x44\x61\x6E\x69\x73\x68","\x44\x75\x74\x63\x68","\x45\x6E\x67\x6C\x69\x73\x68","\x45\x73\x70\x65\x72\x61\x6E\x74\x6F","\x45\x73\x74\x6F\x6E\x69\x61\x6E","\x46\x61\x72\x6F\x65\x73\x65","\x46\x69\x6C\x69\x70\x69\x6E\x6F","\x46\x69\x6E\x6E\x69\x73\x68","\x46\x72\x65\x6E\x63\x68","\x46\x72\x69\x73\x69\x61\x6E","\x47\x61\x6C\x69\x63\x69\x61\x6E","\x47\x65\x6F\x72\x67\x69\x61\x6E","\x47\x65\x72\x6D\x61\x6E","\x47\x72\x65\x65\x6B","\x47\x75\x61\x72\x61\x6E\x69","\x47\x75\x6A\x61\x72\x61\x74\x69","\x48\x61\x63\x6B\x65\x72","\x48\x61\x75\x73\x61","\x48\x65\x62\x72\x65\x77","\x48\x69\x6E\x64\x69","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E","\x49\x63\x65\x6C\x61\x6E\x64\x69\x63","\x49\x6E\x64\x6F\x6E\x65\x73\x69\x61\x6E","\x49\x6E\x74\x65\x72\x6C\x69\x6E\x67\x75\x61","\x49\x72\x69\x73\x68","\x49\x74\x61\x6C\x69\x61\x6E","\x4A\x61\x76\x61\x6E\x65\x73\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65","\x4B\x61\x6E\x6E\x61\x64\x61","\x4B\x61\x7A\x61\x6B\x68","\x4B\x69\x6E\x79\x61\x72\x77\x61\x6E\x64\x61","\x4B\x69\x72\x75\x6E\x64\x69","\x4B\x6C\x69\x6E\x67\x6F\x6E","\x4B\x75\x72\x64\x69\x73\x68","\x4B\x6F\x72\x65\x61\x6E","\x4B\x79\x72\x67\x79\x7A","\x4C\x61\x6F\x74\x68\x69\x61\x6E","\x4C\x61\x74\x69\x6E","\x4C\x61\x74\x76\x69\x61\x6E","\x4C\x69\x6E\x67\x61\x6C\x61","\x4C\x69\x74\x68\x75\x61\x6E\x69\x61\x6E","\x4D\x61\x63\x65\x64\x6F\x6E\x69\x61\x6E","\x4D\x61\x6C\x61\x67\x61\x73\x79","\x4D\x61\x6C\x61\x79","\x4D\x61\x6C\x61\x79\x61\x6C\x61\x6D","\x4D\x61\x6C\x74\x65\x73\x65","\x4D\x61\x6F\x72\x69","\x4D\x61\x72\x61\x74\x68\x69","\x4D\x6F\x6C\x64\x61\x76\x69\x61\x6E","\x4D\x6F\x6E\x67\x6F\x6C\x69\x61\x6E","\x4D\x6F\x6E\x74\x65\x6E\x65\x67\x72\x69\x6E","\x4E\x65\x70\x61\x6C\x69","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x79\x6E\x6F\x72\x73\x6B\x29","\x4F\x63\x63\x69\x74\x61\x6E","\x4F\x72\x69\x79\x61","\x4F\x72\x6F\x6D\x6F","\x50\x61\x73\x68\x74\x6F","\x50\x65\x72\x73\x69\x61\x6E","\x50\x69\x72\x61\x74\x65","\x50\x6F\x6C\x69\x73\x68","\x50\x75\x6E\x6A\x61\x62\x69","\x51\x75\x65\x63\x68\x75\x61","\x52\x6F\x6D\x61\x6E\x69\x61\x6E","\x52\x6F\x6D\x61\x6E\x73\x68","\x52\x75\x73\x73\x69\x61\x6E","\x53\x63\x6F\x74\x73\x20\x47\x61\x65\x6C\x69\x63","\x53\x65\x72\x62\x69\x61\x6E","\x53\x65\x72\x62\x6F\x2D\x43\x72\x6F\x61\x74\x69\x61\x6E","\x53\x65\x73\x6F\x74\x68\x6F","\x53\x68\x6F\x6E\x61","\x53\x69\x6E\x64\x68\x69","\x53\x69\x6E\x68\x61\x6C\x65\x73\x65","\x53\x6C\x6F\x76\x61\x6B","\x53\x6C\x6F\x76\x65\x6E\x69\x61\x6E","\x53\x6F\x6D\x61\x6C\x69","\x53\x70\x61\x6E\x69\x73\x68","\x53\x75\x6E\x64\x61\x6E\x65\x73\x65","\x53\x77\x61\x68\x69\x6C\x69","\x53\x77\x65\x64\x69\x73\x68","\x54\x61\x6A\x69\x6B","\x54\x61\x6D\x69\x6C","\x54\x61\x74\x61\x72","\x54\x65\x6C\x75\x67\x75","\x54\x68\x61\x69","\x54\x69\x67\x72\x69\x6E\x79\x61","\x54\x6F\x6E\x67\x61","\x54\x75\x72\x6B\x69\x73\x68","\x54\x75\x72\x6B\x6D\x65\x6E","\x54\x77\x69","\x55\x69\x67\x68\x75\x72","\x55\x6B\x72\x61\x69\x6E\x69\x61\x6E","\x55\x72\x64\x75","\x55\x7A\x62\x65\x6B","\x56\x69\x65\x74\x6E\x61\x6D\x65\x73\x65","\x57\x65\x6C\x73\x68","\x58\x68\x6F\x73\x61","\x59\x69\x64\x64\x69\x73\x68","\x59\x6F\x72\x75\x62\x61","\x5A\x75\x6C\x75"];var urlParams=(function(_0x37dex2){var _0x37dex3= new Object();var _0x37dex4=_0x37dex2[_0xf3ee[3]](_0xf3ee[2]);if(_0x37dex4>0){var _0x37dex5=_0x37dex2[_0xf3ee[6]](_0x37dex4+1)[_0xf3ee[5]](_0xf3ee[4]);for(var _0x37dex6=0;_0x37dex6<_0x37dex5[_0xf3ee[7]];_0x37dex6++){_0x37dex4=_0x37dex5[_0x37dex6][_0xf3ee[9]](_0xf3ee[8]);if(_0x37dex4>0){_0x37dex3[_0x37dex5[_0x37dex6][_0xf3ee[6]](0,_0x37dex4)]=_0x37dex5[_0x37dex6][_0xf3ee[6]](_0x37dex4+1)}}};return _0x37dex3})(window[_0xf3ee[1]][_0xf3ee[0]]);var t0= new Date();var MAX_REQUEST_SIZE=10485760;var MAX_WIDTH=12000;var MAX_HEIGHT=12000;var EXPORT_URL=_0xf3ee[10];var SHARE_HOST=_0xf3ee[11];var SAVE_URL=_0xf3ee[12];var VARIABLE_URL=_0xf3ee[13];var STENCIL_PATH=_0xf3ee[14];var SHAPES_PATH=_0xf3ee[15];var IMAGE_PATH=_0xf3ee[16];var STYLE_PATH=_0xf3ee[17];var CSS_PATH=_0xf3ee[17];var OPEN_FORM=_0xf3ee[18];var TEMPLATE_PATH=_0xf3ee[19];var RESOURCES_PATH=_0xf3ee[20];var RESOURCE_BASE=RESOURCES_PATH+_0xf3ee[21];var tapAndHoldStartsConnection=true;var showConnectorImg=true;var mxLoadResources=false;console[_0xf3ee[25]](_0xf3ee[22],localStorage[_0xf3ee[24]](_0xf3ee[23]));switch(localStorage[_0xf3ee[24]](_0xf3ee[23])){case _0xf3ee[27]:mxLanguage=_0xf3ee[26];break;case _0xf3ee[28]:mxLanguage=_0xf3ee[28];break;default:mxLanguage=_0xf3ee[28]};console[_0xf3ee[25]](_0xf3ee[29],mxLanguage);var mxLanguages=[_0xf3ee[30],_0xf3ee[31],_0xf3ee[32],_0xf3ee[33],_0xf3ee[34],_0xf3ee[35],_0xf3ee[36],_0xf3ee[37],_0xf3ee[38],_0xf3ee[39],_0xf3ee[40],_0xf3ee[28],_0xf3ee[41],_0xf3ee[42],_0xf3ee[43],_0xf3ee[44],_0xf3ee[45],_0xf3ee[46],_0xf3ee[47],_0xf3ee[48],_0xf3ee[49],_0xf3ee[50],_0xf3ee[51],_0xf3ee[52],_0xf3ee[53],_0xf3ee[54],_0xf3ee[55]];var mxBasePath=_0xf3ee[56];var geBasePath=_0xf3ee[57];var ISPEECHLANG={usenglishfemale:_0xf3ee[58],usenglishmale:_0xf3ee[59],ukenglishfemale:_0xf3ee[60],ukenglishmale:_0xf3ee[61],auenglishfemale:_0xf3ee[62],usspanishfemale:_0xf3ee[63],usspanishmale:_0xf3ee[64],chchinesefemale:_0xf3ee[65],chchinesemale:_0xf3ee[66],hkchinesefemale:_0xf3ee[67],twchinesefemale:_0xf3ee[68],jpjapanesefemale:_0xf3ee[69],jpjapanesemale:_0xf3ee[70],krkoreanfemale:_0xf3ee[71],krkoreanmale:_0xf3ee[72],caenglishfemale:_0xf3ee[73],huhungarianfemale:_0xf3ee[74],brportuguesefemale:_0xf3ee[75],eurportuguesefemale:_0xf3ee[76],eurportuguesemale:_0xf3ee[77],eurspanishfemale:_0xf3ee[78],eurspanishmale:_0xf3ee[79],eurcatalanfemale:_0xf3ee[80],eurczechfemale:_0xf3ee[81],eurdanishfemale:_0xf3ee[82],eurfinnishfemale:_0xf3ee[83],eurfrenchfemale:_0xf3ee[84],eurfrenchmale:_0xf3ee[85],eurnorwegianfemale:_0xf3ee[86],eurdutchfemale:_0xf3ee[87],eurpolishfemale:_0xf3ee[88],euritalianfemale:_0xf3ee[89],eurturkishfemale:_0xf3ee[90],eurturkishmale:_0xf3ee[91],eurgermanfemale:_0xf3ee[92],eurgermanmale:_0xf3ee[93],rurussianfemale:_0xf3ee[94],rurussianmale:_0xf3ee[95],swswedishfemale:_0xf3ee[96],cafrenchfemale:_0xf3ee[97],cafrenchmale:_0xf3ee[98]};var ISPEECHASRLANG={"\x65\x6E\x2D\x55\x53":_0xf3ee[99],"\x65\x6E\x2D\x43\x41":_0xf3ee[100],"\x65\x6E\x2D\x47\x42":_0xf3ee[101],"\x65\x6E\x2D\x41\x55":_0xf3ee[102],"\x65\x73\x2D\x45\x53":_0xf3ee[103],"\x65\x73\x2D\x4D\x58":_0xf3ee[104],"\x69\x74\x2D\x49\x54":_0xf3ee[105],"\x66\x72\x2D\x46\x52":_0xf3ee[106],"\x66\x72\x2D\x43\x41":_0xf3ee[107],"\x70\x6C\x2D\x50\x4C":_0xf3ee[108],"\x70\x74\x2D\x50\x54":_0xf3ee[109],"\x63\x61\x2D\x45\x53":_0xf3ee[110],"\x7A\x68\x2D\x54\x57":_0xf3ee[111],"\x64\x61\x2D\x44\x4B":_0xf3ee[112],"\x66\x72\x2D\x46\x52":_0xf3ee[113],"\x6A\x61\x2D\x4A\x50":_0xf3ee[114],"\x6B\x6F\x2D\x4B\x52":_0xf3ee[115],"\x6E\x6C\x2D\x4E\x4C":_0xf3ee[116],"\x6E\x62\x2D\x4E\x4F":_0xf3ee[117],"\x70\x74\x2D\x42\x52":_0xf3ee[118],"\x72\x75\x2D\x52\x55":_0xf3ee[119],"\x73\x76\x2D\x53\x45":_0xf3ee[120],"\x7A\x68\x2D\x43\x4E":_0xf3ee[121],"\x7A\x68\x2D\x48\x4B":_0xf3ee[122]};var ISPEECHASRMODEL={0:_0xf3ee[123],date:_0xf3ee[124],usmoney:_0xf3ee[125],numbersto9:_0xf3ee[126],numbersto99:_0xf3ee[127],numbersto999:_0xf3ee[128],time:_0xf3ee[129],phonenumber:_0xf3ee[130],streets:_0xf3ee[131],citystate:_0xf3ee[132]};var GOOGLETTSLANG={"\x61\x66":_0xf3ee[133],"\x73\x71":_0xf3ee[134],"\x61\x6D":_0xf3ee[135],"\x61\x72":_0xf3ee[136],"\x68\x79":_0xf3ee[137],"\x61\x7A":_0xf3ee[138],"\x65\x75":_0xf3ee[139],"\x62\x65":_0xf3ee[140],"\x62\x6E":_0xf3ee[141],"\x62\x68":_0xf3ee[142],"\x62\x73":_0xf3ee[143],"\x62\x72":_0xf3ee[144],"\x62\x67":_0xf3ee[145],"\x6B\x6D":_0xf3ee[146],"\x63\x61":_0xf3ee[147],"\x7A\x68\x2D\x43\x4E":_0xf3ee[148],"\x7A\x68\x2D\x54\x57":_0xf3ee[149],"\x63\x6F":_0xf3ee[150],"\x68\x72":_0xf3ee[151],"\x63\x73":_0xf3ee[152],"\x64\x61":_0xf3ee[153],"\x6E\x6C":_0xf3ee[154],"\x65\x6E":_0xf3ee[155],"\x65\x6F":_0xf3ee[156],"\x65\x74":_0xf3ee[157],"\x66\x6F":_0xf3ee[158],"\x74\x6C":_0xf3ee[159],"\x66\x69":_0xf3ee[160],"\x66\x72":_0xf3ee[161],"\x66\x79":_0xf3ee[162],"\x67\x6C":_0xf3ee[163],"\x6B\x61":_0xf3ee[164],"\x64\x65":_0xf3ee[165],"\x65\x6C":_0xf3ee[166],"\x67\x6E":_0xf3ee[167],"\x67\x75":_0xf3ee[168],"\x78\x78\x2D\x68\x61\x63\x6B\x65\x72":_0xf3ee[169],"\x68\x61":_0xf3ee[170],"\x69\x77":_0xf3ee[171],"\x68\x69":_0xf3ee[172],"\x68\x75":_0xf3ee[173],"\x69\x73":_0xf3ee[174],"\x69\x64":_0xf3ee[175],"\x69\x61":_0xf3ee[176],"\x67\x61":_0xf3ee[177],"\x69\x74":_0xf3ee[178],"\x6A\x77":_0xf3ee[179],"\x6A\x61":_0xf3ee[180],"\x6B\x6E":_0xf3ee[181],"\x6B\x6B":_0xf3ee[182],"\x72\x77":_0xf3ee[183],"\x72\x6E":_0xf3ee[184],"\x78\x78\x2D\x6B\x6C\x69\x6E\x67\x6F\x6E":_0xf3ee[185],"\x6B\x75":_0xf3ee[186],"\x6B\x6F":_0xf3ee[187],"\x6B\x79":_0xf3ee[188],"\x6C\x6F":_0xf3ee[189],"\x6C\x61":_0xf3ee[190],"\x6C\x76":_0xf3ee[191],"\x6C\x6E":_0xf3ee[192],"\x6C\x74":_0xf3ee[193],"\x6D\x6B":_0xf3ee[194],"\x6D\x67":_0xf3ee[195],"\x6D\x73":_0xf3ee[196],"\x6D\x6C":_0xf3ee[197],"\x6D\x74":_0xf3ee[198],"\x6D\x69":_0xf3ee[199],"\x6D\x72":_0xf3ee[200],"\x6D\x6F":_0xf3ee[201],"\x6D\x6E":_0xf3ee[202],"\x73\x72\x2D\x4D\x45":_0xf3ee[203],"\x6E\x65":_0xf3ee[204],"\x6E\x6F":_0xf3ee[205],"\x6E\x6E":_0xf3ee[206],"\x6F\x63":_0xf3ee[207],"\x6F\x72":_0xf3ee[208],"\x6F\x6D":_0xf3ee[209],"\x70\x73":_0xf3ee[210],"\x66\x61":_0xf3ee[211],"\x78\x78\x2D\x70\x69\x72\x61\x74\x65":_0xf3ee[212],"\x70\x6C":_0xf3ee[213],"\x70\x74\x2D\x42\x52":_0xf3ee[118],"\x70\x74\x2D\x50\x54":_0xf3ee[109],"\x70\x61":_0xf3ee[214],"\x71\x75":_0xf3ee[215],"\x72\x6F":_0xf3ee[216],"\x72\x6D":_0xf3ee[217],"\x72\x75":_0xf3ee[218],"\x67\x64":_0xf3ee[219],"\x73\x72":_0xf3ee[220],"\x73\x68":_0xf3ee[221],"\x73\x74":_0xf3ee[222],"\x73\x6E":_0xf3ee[223],"\x73\x64":_0xf3ee[224],"\x73\x69":_0xf3ee[225],"\x73\x6B":_0xf3ee[226],"\x73\x6C":_0xf3ee[227],"\x73\x6F":_0xf3ee[228],"\x65\x73":_0xf3ee[229],"\x73\x75":_0xf3ee[230],"\x73\x77":_0xf3ee[231],"\x73\x76":_0xf3ee[232],"\x74\x67":_0xf3ee[233],"\x74\x61":_0xf3ee[234],"\x74\x74":_0xf3ee[235],"\x74\x65":_0xf3ee[236],"\x74\x68":_0xf3ee[237],"\x74\x69":_0xf3ee[238],"\x74\x6F":_0xf3ee[239],"\x74\x72":_0xf3ee[240],"\x74\x6B":_0xf3ee[241],"\x74\x77":_0xf3ee[242],"\x75\x67":_0xf3ee[243],"\x75\x6B":_0xf3ee[244],"\x75\x72":_0xf3ee[245],"\x75\x7A":_0xf3ee[246],"\x76\x69":_0xf3ee[247],"\x63\x79":_0xf3ee[248],"\x78\x68":_0xf3ee[249],"\x79\x69":_0xf3ee[250],"\x79\x6F":_0xf3ee[251],"\x7A\x75":_0xf3ee[252]} \ No newline at end of file +var _0xe578=["\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x26","\x73\x70\x6C\x69\x74","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x3D","\x69\x6E\x64\x65\x78\x4F\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x65\x78\x70\x2E\x64\x72\x61\x77\x2E\x69\x6F\x2F\x49\x6D\x61\x67\x65\x45\x78\x70\x6F\x72\x74\x32\x2F\x65\x78\x70\x6F\x72\x74","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x33\x30\x30\x30","\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73\x2F","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x73\x74\x65\x6E\x63\x69\x6C\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x68\x61\x70\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x74\x79\x6C\x65\x73","\x61\x70\x69\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x6F\x70\x65\x6E","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6A\x73\x63\x72\x69\x70\x74\x79\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x2F\x64\x69\x61","\x63\x75\x73\x74\x6F\x6D","\x4E\x47\x5F\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x4C\x41\x4E\x47\x5F\x4B\x45\x59","\x67\x65\x74\x49\x74\x65\x6D","\x6C\x6F\x67","\x65\x6E","\x65\x6E\x5F\x45\x4E","\x69\x74","\x6D\x78\x4C\x61\x6E\x67\x75\x61\x67\x65","\x61\x72","\x62\x73","\x63\x73","\x64\x61","\x64\x65","\x65\x6C","\x65\x73","\x65\x73\x2D\x61\x72","\x66\x72","\x68\x75","\x69\x64","\x6A\x61","\x6B\x6F","\x6E\x6C","\x6E\x6F","\x70\x6C","\x70\x74\x2D\x62\x72","\x70\x74","\x72\x6F","\x72\x75","\x73\x72","\x73\x76","\x74\x68","\x74\x72","\x75\x6B","\x7A\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x6A\x73","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x20\x43\x61\x6E\x74\x6F\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x54\x61\x69\x77\x61\x6E\x20\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x4D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x42\x72\x61\x7A\x69\x6C\x69\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x61\x74\x61\x6C\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x7A\x65\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x75\x74\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x49\x74\x61\x6C\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65\x09","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x4D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x4D\x61\x6C\x65","\x53\x77\x65\x64\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x53\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x4B\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x53\x70\x61\x69\x6E\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x4D\x65\x78\x69\x63\x6F\x29","\x49\x74\x61\x6C\x69\x61\x6E\x20\x28\x49\x74\x61\x6C\x79\x29\x20\x2F\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x28\x46\x69\x6E\x6C\x61\x6E\x64\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x46\x72\x61\x6E\x63\x65\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x50\x6F\x6C\x69\x73\x68\x20\x28\x50\x6F\x6C\x61\x6E\x64\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x50\x6F\x72\x74\x75\x67\x61\x6C\x29","\x43\x61\x74\x61\x6C\x61\x6E\x20\x28\x43\x61\x74\x61\x6C\x61\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x61\x69\x77\x61\x6E\x29","\x44\x61\x6E\x69\x73\x68\x20\x28\x44\x65\x6E\x6D\x61\x72\x6B\x29","\x47\x65\x72\x6D\x61\x6E\x20\x28\x47\x65\x72\x6D\x61\x6E\x79\x29","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x28\x4A\x61\x70\x61\x6E\x29","\x4B\x6F\x72\x65\x61\x6E\x20\x28\x4B\x6F\x72\x65\x61\x29","\x44\x75\x74\x63\x68\x20\x28\x4E\x65\x74\x68\x65\x72\x6C\x61\x6E\x64\x73\x29","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x6F\x72\x77\x61\x79\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x42\x72\x61\x7A\x69\x6C\x29","\x52\x75\x73\x73\x69\x61\x6E\x20\x28\x52\x75\x73\x73\x69\x61\x29","\x53\x77\x65\x64\x69\x73\x68\x20\x28\x53\x77\x65\x64\x65\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x43\x68\x69\x6E\x61\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x29","\x44\x65\x66\x61\x75\x6C\x74","\x44\x61\x74\x65","\x55\x53\x20\x4D\x6F\x6E\x65\x79","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39\x39","\x54\x69\x6D\x65","\x50\x68\x6F\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72","\x53\x74\x72\x65\x65\x74\x73","\x55\x53\x20\x43\x69\x74\x79\x2F\x53\x74\x61\x74\x65\x73","\x41\x66\x72\x69\x6B\x61\x61\x6E\x73","\x41\x6C\x62\x61\x6E\x69\x61\x6E","\x41\x6D\x68\x61\x72\x69\x63","\x41\x72\x61\x62\x69\x63","\x41\x72\x6D\x65\x6E\x69\x61\x6E","\x41\x7A\x65\x72\x62\x61\x69\x6A\x61\x6E\x69","\x42\x61\x73\x71\x75\x65","\x42\x65\x6C\x61\x72\x75\x73\x69\x61\x6E","\x42\x65\x6E\x67\x61\x6C\x69","\x42\x69\x68\x61\x72\x69","\x42\x6F\x73\x6E\x69\x61\x6E","\x42\x72\x65\x74\x6F\x6E","\x42\x75\x6C\x67\x61\x72\x69\x61\x6E","\x43\x61\x6D\x62\x6F\x64\x69\x61\x6E","\x43\x61\x74\x61\x6C\x61\x6E","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x53\x69\x6D\x70\x6C\x69\x66\x69\x65\x64\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x72\x61\x64\x69\x74\x69\x6F\x6E\x61\x6C\x29","\x43\x6F\x72\x73\x69\x63\x61\x6E","\x43\x72\x6F\x61\x74\x69\x61\x6E","\x43\x7A\x65\x63\x68","\x44\x61\x6E\x69\x73\x68","\x44\x75\x74\x63\x68","\x45\x6E\x67\x6C\x69\x73\x68","\x45\x73\x70\x65\x72\x61\x6E\x74\x6F","\x45\x73\x74\x6F\x6E\x69\x61\x6E","\x46\x61\x72\x6F\x65\x73\x65","\x46\x69\x6C\x69\x70\x69\x6E\x6F","\x46\x69\x6E\x6E\x69\x73\x68","\x46\x72\x65\x6E\x63\x68","\x46\x72\x69\x73\x69\x61\x6E","\x47\x61\x6C\x69\x63\x69\x61\x6E","\x47\x65\x6F\x72\x67\x69\x61\x6E","\x47\x65\x72\x6D\x61\x6E","\x47\x72\x65\x65\x6B","\x47\x75\x61\x72\x61\x6E\x69","\x47\x75\x6A\x61\x72\x61\x74\x69","\x48\x61\x63\x6B\x65\x72","\x48\x61\x75\x73\x61","\x48\x65\x62\x72\x65\x77","\x48\x69\x6E\x64\x69","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E","\x49\x63\x65\x6C\x61\x6E\x64\x69\x63","\x49\x6E\x64\x6F\x6E\x65\x73\x69\x61\x6E","\x49\x6E\x74\x65\x72\x6C\x69\x6E\x67\x75\x61","\x49\x72\x69\x73\x68","\x49\x74\x61\x6C\x69\x61\x6E","\x4A\x61\x76\x61\x6E\x65\x73\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65","\x4B\x61\x6E\x6E\x61\x64\x61","\x4B\x61\x7A\x61\x6B\x68","\x4B\x69\x6E\x79\x61\x72\x77\x61\x6E\x64\x61","\x4B\x69\x72\x75\x6E\x64\x69","\x4B\x6C\x69\x6E\x67\x6F\x6E","\x4B\x75\x72\x64\x69\x73\x68","\x4B\x6F\x72\x65\x61\x6E","\x4B\x79\x72\x67\x79\x7A","\x4C\x61\x6F\x74\x68\x69\x61\x6E","\x4C\x61\x74\x69\x6E","\x4C\x61\x74\x76\x69\x61\x6E","\x4C\x69\x6E\x67\x61\x6C\x61","\x4C\x69\x74\x68\x75\x61\x6E\x69\x61\x6E","\x4D\x61\x63\x65\x64\x6F\x6E\x69\x61\x6E","\x4D\x61\x6C\x61\x67\x61\x73\x79","\x4D\x61\x6C\x61\x79","\x4D\x61\x6C\x61\x79\x61\x6C\x61\x6D","\x4D\x61\x6C\x74\x65\x73\x65","\x4D\x61\x6F\x72\x69","\x4D\x61\x72\x61\x74\x68\x69","\x4D\x6F\x6C\x64\x61\x76\x69\x61\x6E","\x4D\x6F\x6E\x67\x6F\x6C\x69\x61\x6E","\x4D\x6F\x6E\x74\x65\x6E\x65\x67\x72\x69\x6E","\x4E\x65\x70\x61\x6C\x69","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x79\x6E\x6F\x72\x73\x6B\x29","\x4F\x63\x63\x69\x74\x61\x6E","\x4F\x72\x69\x79\x61","\x4F\x72\x6F\x6D\x6F","\x50\x61\x73\x68\x74\x6F","\x50\x65\x72\x73\x69\x61\x6E","\x50\x69\x72\x61\x74\x65","\x50\x6F\x6C\x69\x73\x68","\x50\x75\x6E\x6A\x61\x62\x69","\x51\x75\x65\x63\x68\x75\x61","\x52\x6F\x6D\x61\x6E\x69\x61\x6E","\x52\x6F\x6D\x61\x6E\x73\x68","\x52\x75\x73\x73\x69\x61\x6E","\x53\x63\x6F\x74\x73\x20\x47\x61\x65\x6C\x69\x63","\x53\x65\x72\x62\x69\x61\x6E","\x53\x65\x72\x62\x6F\x2D\x43\x72\x6F\x61\x74\x69\x61\x6E","\x53\x65\x73\x6F\x74\x68\x6F","\x53\x68\x6F\x6E\x61","\x53\x69\x6E\x64\x68\x69","\x53\x69\x6E\x68\x61\x6C\x65\x73\x65","\x53\x6C\x6F\x76\x61\x6B","\x53\x6C\x6F\x76\x65\x6E\x69\x61\x6E","\x53\x6F\x6D\x61\x6C\x69","\x53\x70\x61\x6E\x69\x73\x68","\x53\x75\x6E\x64\x61\x6E\x65\x73\x65","\x53\x77\x61\x68\x69\x6C\x69","\x53\x77\x65\x64\x69\x73\x68","\x54\x61\x6A\x69\x6B","\x54\x61\x6D\x69\x6C","\x54\x61\x74\x61\x72","\x54\x65\x6C\x75\x67\x75","\x54\x68\x61\x69","\x54\x69\x67\x72\x69\x6E\x79\x61","\x54\x6F\x6E\x67\x61","\x54\x75\x72\x6B\x69\x73\x68","\x54\x75\x72\x6B\x6D\x65\x6E","\x54\x77\x69","\x55\x69\x67\x68\x75\x72","\x55\x6B\x72\x61\x69\x6E\x69\x61\x6E","\x55\x72\x64\x75","\x55\x7A\x62\x65\x6B","\x56\x69\x65\x74\x6E\x61\x6D\x65\x73\x65","\x57\x65\x6C\x73\x68","\x58\x68\x6F\x73\x61","\x59\x69\x64\x64\x69\x73\x68","\x59\x6F\x72\x75\x62\x61","\x5A\x75\x6C\x75"];var urlParams=(function(_0xfb2fx2){var _0xfb2fx3= new Object();var _0xfb2fx4=_0xfb2fx2[_0xe578[3]](_0xe578[2]);if(_0xfb2fx4>0){var _0xfb2fx5=_0xfb2fx2[_0xe578[6]](_0xfb2fx4+1)[_0xe578[5]](_0xe578[4]);for(var _0xfb2fx6=0;_0xfb2fx6<_0xfb2fx5[_0xe578[7]];_0xfb2fx6++){_0xfb2fx4=_0xfb2fx5[_0xfb2fx6][_0xe578[9]](_0xe578[8]);if(_0xfb2fx4>0){_0xfb2fx3[_0xfb2fx5[_0xfb2fx6][_0xe578[6]](0,_0xfb2fx4)]=_0xfb2fx5[_0xfb2fx6][_0xe578[6]](_0xfb2fx4+1)}}};return _0xfb2fx3})(window[_0xe578[1]][_0xe578[0]]);var t0= new Date();var MAX_REQUEST_SIZE=10485760;var MAX_WIDTH=12000;var MAX_HEIGHT=12000;var EXPORT_URL=_0xe578[10];var SHARE_HOST=_0xe578[11];var SAVE_URL=_0xe578[12];var VARIABLE_URL=_0xe578[13];var STENCIL_PATH=_0xe578[14];var SHAPES_PATH=_0xe578[15];var IMAGE_PATH=_0xe578[16];var STYLE_PATH=_0xe578[17];var CSS_PATH=_0xe578[17];var OPEN_FORM=_0xe578[18];var TEMPLATE_PATH=_0xe578[19];var RESOURCES_PATH=_0xe578[20];var RESOURCE_BASE=RESOURCES_PATH+_0xe578[21];var tapAndHoldStartsConnection=true;var showConnectorImg=true;var mxLoadResources=false;console[_0xe578[25]](_0xe578[22],localStorage[_0xe578[24]](_0xe578[23]));switch(localStorage[_0xe578[24]](_0xe578[23])){case _0xe578[27]:mxLanguage=_0xe578[26];break;case _0xe578[28]:mxLanguage=_0xe578[28];break;default:mxLanguage=_0xe578[28]};console[_0xe578[25]](_0xe578[29],mxLanguage);var mxLanguages=[_0xe578[30],_0xe578[31],_0xe578[32],_0xe578[33],_0xe578[34],_0xe578[35],_0xe578[36],_0xe578[37],_0xe578[38],_0xe578[39],_0xe578[40],_0xe578[28],_0xe578[41],_0xe578[42],_0xe578[43],_0xe578[44],_0xe578[45],_0xe578[46],_0xe578[47],_0xe578[48],_0xe578[49],_0xe578[50],_0xe578[51],_0xe578[52],_0xe578[53],_0xe578[54],_0xe578[55]];var mxBasePath=_0xe578[56];var geBasePath=_0xe578[57];var ISPEECHLANG={usenglishfemale:_0xe578[58],usenglishmale:_0xe578[59],ukenglishfemale:_0xe578[60],ukenglishmale:_0xe578[61],auenglishfemale:_0xe578[62],usspanishfemale:_0xe578[63],usspanishmale:_0xe578[64],chchinesefemale:_0xe578[65],chchinesemale:_0xe578[66],hkchinesefemale:_0xe578[67],twchinesefemale:_0xe578[68],jpjapanesefemale:_0xe578[69],jpjapanesemale:_0xe578[70],krkoreanfemale:_0xe578[71],krkoreanmale:_0xe578[72],caenglishfemale:_0xe578[73],huhungarianfemale:_0xe578[74],brportuguesefemale:_0xe578[75],eurportuguesefemale:_0xe578[76],eurportuguesemale:_0xe578[77],eurspanishfemale:_0xe578[78],eurspanishmale:_0xe578[79],eurcatalanfemale:_0xe578[80],eurczechfemale:_0xe578[81],eurdanishfemale:_0xe578[82],eurfinnishfemale:_0xe578[83],eurfrenchfemale:_0xe578[84],eurfrenchmale:_0xe578[85],eurnorwegianfemale:_0xe578[86],eurdutchfemale:_0xe578[87],eurpolishfemale:_0xe578[88],euritalianfemale:_0xe578[89],eurturkishfemale:_0xe578[90],eurturkishmale:_0xe578[91],eurgermanfemale:_0xe578[92],eurgermanmale:_0xe578[93],rurussianfemale:_0xe578[94],rurussianmale:_0xe578[95],swswedishfemale:_0xe578[96],cafrenchfemale:_0xe578[97],cafrenchmale:_0xe578[98]};var ISPEECHASRLANG={"\x65\x6E\x2D\x55\x53":_0xe578[99],"\x65\x6E\x2D\x43\x41":_0xe578[100],"\x65\x6E\x2D\x47\x42":_0xe578[101],"\x65\x6E\x2D\x41\x55":_0xe578[102],"\x65\x73\x2D\x45\x53":_0xe578[103],"\x65\x73\x2D\x4D\x58":_0xe578[104],"\x69\x74\x2D\x49\x54":_0xe578[105],"\x66\x72\x2D\x46\x52":_0xe578[106],"\x66\x72\x2D\x43\x41":_0xe578[107],"\x70\x6C\x2D\x50\x4C":_0xe578[108],"\x70\x74\x2D\x50\x54":_0xe578[109],"\x63\x61\x2D\x45\x53":_0xe578[110],"\x7A\x68\x2D\x54\x57":_0xe578[111],"\x64\x61\x2D\x44\x4B":_0xe578[112],"\x66\x72\x2D\x46\x52":_0xe578[113],"\x6A\x61\x2D\x4A\x50":_0xe578[114],"\x6B\x6F\x2D\x4B\x52":_0xe578[115],"\x6E\x6C\x2D\x4E\x4C":_0xe578[116],"\x6E\x62\x2D\x4E\x4F":_0xe578[117],"\x70\x74\x2D\x42\x52":_0xe578[118],"\x72\x75\x2D\x52\x55":_0xe578[119],"\x73\x76\x2D\x53\x45":_0xe578[120],"\x7A\x68\x2D\x43\x4E":_0xe578[121],"\x7A\x68\x2D\x48\x4B":_0xe578[122]};var ISPEECHASRMODEL={0:_0xe578[123],date:_0xe578[124],usmoney:_0xe578[125],numbersto9:_0xe578[126],numbersto99:_0xe578[127],numbersto999:_0xe578[128],time:_0xe578[129],phonenumber:_0xe578[130],streets:_0xe578[131],citystate:_0xe578[132]};var GOOGLETTSLANG={"\x61\x66":_0xe578[133],"\x73\x71":_0xe578[134],"\x61\x6D":_0xe578[135],"\x61\x72":_0xe578[136],"\x68\x79":_0xe578[137],"\x61\x7A":_0xe578[138],"\x65\x75":_0xe578[139],"\x62\x65":_0xe578[140],"\x62\x6E":_0xe578[141],"\x62\x68":_0xe578[142],"\x62\x73":_0xe578[143],"\x62\x72":_0xe578[144],"\x62\x67":_0xe578[145],"\x6B\x6D":_0xe578[146],"\x63\x61":_0xe578[147],"\x7A\x68\x2D\x43\x4E":_0xe578[148],"\x7A\x68\x2D\x54\x57":_0xe578[149],"\x63\x6F":_0xe578[150],"\x68\x72":_0xe578[151],"\x63\x73":_0xe578[152],"\x64\x61":_0xe578[153],"\x6E\x6C":_0xe578[154],"\x65\x6E":_0xe578[155],"\x65\x6F":_0xe578[156],"\x65\x74":_0xe578[157],"\x66\x6F":_0xe578[158],"\x74\x6C":_0xe578[159],"\x66\x69":_0xe578[160],"\x66\x72":_0xe578[161],"\x66\x79":_0xe578[162],"\x67\x6C":_0xe578[163],"\x6B\x61":_0xe578[164],"\x64\x65":_0xe578[165],"\x65\x6C":_0xe578[166],"\x67\x6E":_0xe578[167],"\x67\x75":_0xe578[168],"\x78\x78\x2D\x68\x61\x63\x6B\x65\x72":_0xe578[169],"\x68\x61":_0xe578[170],"\x69\x77":_0xe578[171],"\x68\x69":_0xe578[172],"\x68\x75":_0xe578[173],"\x69\x73":_0xe578[174],"\x69\x64":_0xe578[175],"\x69\x61":_0xe578[176],"\x67\x61":_0xe578[177],"\x69\x74":_0xe578[178],"\x6A\x77":_0xe578[179],"\x6A\x61":_0xe578[180],"\x6B\x6E":_0xe578[181],"\x6B\x6B":_0xe578[182],"\x72\x77":_0xe578[183],"\x72\x6E":_0xe578[184],"\x78\x78\x2D\x6B\x6C\x69\x6E\x67\x6F\x6E":_0xe578[185],"\x6B\x75":_0xe578[186],"\x6B\x6F":_0xe578[187],"\x6B\x79":_0xe578[188],"\x6C\x6F":_0xe578[189],"\x6C\x61":_0xe578[190],"\x6C\x76":_0xe578[191],"\x6C\x6E":_0xe578[192],"\x6C\x74":_0xe578[193],"\x6D\x6B":_0xe578[194],"\x6D\x67":_0xe578[195],"\x6D\x73":_0xe578[196],"\x6D\x6C":_0xe578[197],"\x6D\x74":_0xe578[198],"\x6D\x69":_0xe578[199],"\x6D\x72":_0xe578[200],"\x6D\x6F":_0xe578[201],"\x6D\x6E":_0xe578[202],"\x73\x72\x2D\x4D\x45":_0xe578[203],"\x6E\x65":_0xe578[204],"\x6E\x6F":_0xe578[205],"\x6E\x6E":_0xe578[206],"\x6F\x63":_0xe578[207],"\x6F\x72":_0xe578[208],"\x6F\x6D":_0xe578[209],"\x70\x73":_0xe578[210],"\x66\x61":_0xe578[211],"\x78\x78\x2D\x70\x69\x72\x61\x74\x65":_0xe578[212],"\x70\x6C":_0xe578[213],"\x70\x74\x2D\x42\x52":_0xe578[118],"\x70\x74\x2D\x50\x54":_0xe578[109],"\x70\x61":_0xe578[214],"\x71\x75":_0xe578[215],"\x72\x6F":_0xe578[216],"\x72\x6D":_0xe578[217],"\x72\x75":_0xe578[218],"\x67\x64":_0xe578[219],"\x73\x72":_0xe578[220],"\x73\x68":_0xe578[221],"\x73\x74":_0xe578[222],"\x73\x6E":_0xe578[223],"\x73\x64":_0xe578[224],"\x73\x69":_0xe578[225],"\x73\x6B":_0xe578[226],"\x73\x6C":_0xe578[227],"\x73\x6F":_0xe578[228],"\x65\x73":_0xe578[229],"\x73\x75":_0xe578[230],"\x73\x77":_0xe578[231],"\x73\x76":_0xe578[232],"\x74\x67":_0xe578[233],"\x74\x61":_0xe578[234],"\x74\x74":_0xe578[235],"\x74\x65":_0xe578[236],"\x74\x68":_0xe578[237],"\x74\x69":_0xe578[238],"\x74\x6F":_0xe578[239],"\x74\x72":_0xe578[240],"\x74\x6B":_0xe578[241],"\x74\x77":_0xe578[242],"\x75\x67":_0xe578[243],"\x75\x6B":_0xe578[244],"\x75\x72":_0xe578[245],"\x75\x7A":_0xe578[246],"\x76\x69":_0xe578[247],"\x63\x79":_0xe578[248],"\x78\x68":_0xe578[249],"\x79\x69":_0xe578[250],"\x79\x6F":_0xe578[251],"\x7A\x75":_0xe578[252]} \ No newline at end of file diff --git a/public/assets/plugins/mxgraph/js/mxClient.js b/public/assets/plugins/mxgraph/js/mxClient.js index 8fadc54..0830b7a 100644 --- a/public/assets/plugins/mxgraph/js/mxClient.js +++ b/public/assets/plugins/mxgraph/js/mxClient.js @@ -1 +1 @@ -var _0x53bb=["\x32\x2E\x30\x2E\x30\x2E\x30","\x4D\x53\x49\x45","\x69\x6E\x64\x65\x78\x4F\x66","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x4D\x53\x49\x45\x20\x36","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x76","\x6F","\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F","\x4F\x70\x65\x72\x61\x2F","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x34\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x33\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x32\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x31\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x30\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x31\x2E","\x41\x70\x70\x6C\x65\x57\x65\x62\x4B\x69\x74\x2F","\x43\x68\x72\x6F\x6D\x65\x2F","\x46\x69\x72\x65\x66\x6F\x78\x2F","\x46\x69\x72\x65\x66\x6F\x78\x2F\x31\x2E","\x46\x69\x72\x65\x66\x6F\x78\x2F\x32\x2E","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F\x31\x2E","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F\x32\x2E","\x53\x65\x61\x4D\x6F\x6E\x6B\x65\x79\x2F","\x53\x65\x61\x4D\x6F\x6E\x6B\x65\x79\x2F\x31\x2E","\x49\x63\x65\x61\x70\x65\x2F","\x49\x63\x65\x61\x70\x65\x2F\x31\x2E","\x53\x65\x61\x6D\x6F\x6E\x6B\x65\x79\x2F","\x47\x61\x6C\x65\x6F\x6E\x2F","\x45\x70\x69\x70\x68\x61\x6E\x79\x2F","\x47\x65\x63\x6B\x6F\x2F","\x43\x61\x6D\x69\x6E\x6F\x2F\x31\x2E","\x45\x70\x69\x70\x68\x61\x6E\x79\x2F\x32\x2E","\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F\x32\x2E","\x4D\x49\x43\x52\x4F\x53\x4F\x46\x54\x20\x49\x4E\x54\x45\x52\x4E\x45\x54\x20\x45\x58\x50\x4C\x4F\x52\x45\x52","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x61\x70\x70\x4E\x61\x6D\x65","\x4D\x41\x43\x49\x4E\x54\x4F\x53\x48","\x49\x50\x41\x44","\x49\x50\x4F\x44","\x49\x50\x48\x4F\x4E\x45","\x41\x4E\x44\x52\x4F\x49\x44","\x68\x74\x74\x70\x3A\x2F\x2F","\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x68\x74\x74\x70\x73\x3A\x2F\x2F","\x49\x53\x5F\x56\x4D\x4C","\x49\x53\x5F\x53\x56\x47","\x49\x53\x5F\x49\x45\x36","\x3C\x6C\x69\x6E\x6B\x20\x72\x65\x6C\x3D\x22","\x22\x20\x68\x72\x65\x66\x3D\x22","\x22\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x22\x49\x53\x4F\x2D\x38\x38\x35\x39\x2D\x31\x22\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x2F\x3E","\x77\x72\x69\x74\x65","\x6C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x61\x72\x73\x65\x74","\x49\x53\x4F\x2D\x38\x38\x35\x39\x2D\x31","\x74\x79\x70\x65","\x74\x65\x78\x74\x2F\x63\x73\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x68\x65\x61\x64","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x73\x42\x79\x54\x61\x67\x4E\x61\x6D\x65","\x3C\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3D\x22","\x22\x3E\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E","\x6C\x65\x6E\x67\x74\x68","\x6F\x62\x6A\x65\x63\x74\x73","\x6D\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x4C\x69\x73\x74","\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x4F\x50","\x49\x53\x5F\x4F\x54","\x43\x53\x53\x5F\x50\x52\x45\x46\x49\x58","\x4F","\x49\x53\x5F\x53\x46","\x49\x53\x5F\x47\x43","\x57\x65\x62\x6B\x69\x74","\x49\x53\x5F\x4D\x54","\x4D\x6F\x7A","\x49\x53\x5F\x49\x45","\x6D\x73","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x2E\x74\x78\x74","\x2F","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x62\x61\x73\x65\x50\x61\x74\x68","\x2E","\x69\x6D\x61\x67\x65\x42\x61\x73\x65\x50\x61\x74\x68","\x2F\x69\x6D\x61\x67\x65\x73","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x75\x73\x65\x72\x4C\x61\x6E\x67\x75\x61\x67\x65","\x64\x65\x66\x61\x75\x6C\x74\x4C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x63\x73\x73\x2F\x63\x6F\x6D\x6D\x6F\x6E\x2E\x63\x73\x73","\x6C\x61\x6E\x67\x75\x61\x67\x65\x73","\x75\x72\x6E\x3A\x73\x63\x68\x65\x6D\x61\x73\x2D\x6D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2D\x63\x6F\x6D\x3A\x76\x6D\x6C","\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C","\x61\x64\x64","\x6E\x61\x6D\x65\x73\x70\x61\x63\x65\x73","\x75\x72\x6E\x3A\x73\x63\x68\x65\x6D\x61\x73\x2D\x6D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2D\x63\x6F\x6D\x3A\x6F\x66\x66\x69\x63\x65\x3A\x6F\x66\x66\x69\x63\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65\x53\x68\x65\x65\x74","\x63\x73\x73\x54\x65\x78\x74","\x76\x5C\x3A\x2A\x7B\x62\x65\x68\x61\x76\x69\x6F\x72\x3A\x75\x72\x6C\x28\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C\x29\x7D\x6F\x5C\x3A\x2A\x7B\x62\x65\x68\x61\x76\x69\x6F\x72\x3A\x75\x72\x6C\x28\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C\x29\x7D","\x2F\x63\x73\x73\x2F\x65\x78\x70\x6C\x6F\x72\x65\x72\x2E\x63\x73\x73","\x6F\x6E\x75\x6E\x6C\x6F\x61\x64","\x64\x69\x73\x70\x6F\x73\x65","\x61\x74\x74\x61\x63\x68\x45\x76\x65\x6E\x74","\x43\x6F\x6E\x73\x6F\x6C\x65","","\x77\x69\x6E\x64\x6F\x77","\x62\x6F\x64\x79","\x63\x6F\x6E\x73\x6F\x6C\x65\x4E\x61\x6D\x65","\x20\x2D\x20\x6D\x78\x47\x72\x61\x70\x68\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x74\x61\x62\x6C\x65","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x74\x62\x6F\x64\x79","\x74\x72","\x74\x64","\x76\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x73\x74\x79\x6C\x65","\x74\x6F\x70","\x74\x65\x78\x74\x61\x72\x65\x61","\x72\x65\x61\x64\x4F\x6E\x6C\x79","\x74\x72\x75\x65","\x72\x65\x73\x69\x7A\x65","\x6E\x6F\x6E\x65","\x76\x61\x6C\x75\x65","\x62\x75\x66\x66\x65\x72","\x49\x53\x5F\x4E\x53","\x42\x61\x63\x6B\x43\x6F\x6D\x70\x61\x74","\x63\x6F\x6D\x70\x61\x74\x4D\x6F\x64\x65","\x39\x39\x25","\x33\x30\x70\x78","\x49\x6E\x66\x6F","\x69\x6E\x66\x6F","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x44\x4F\x4D","\x67\x65\x74\x49\x6E\x6E\x65\x72\x48\x74\x6D\x6C","\x64\x65\x62\x75\x67","\x54\x72\x61\x63\x65","\x54\x52\x41\x43\x45","\x54\x72\x61\x63\x69\x6E\x67\x20\x65\x6E\x61\x62\x6C\x65\x64","\x54\x72\x61\x63\x69\x6E\x67\x20\x64\x69\x73\x61\x62\x6C\x65\x64","\x43\x6F\x70\x79","\x63\x6F\x70\x79","\x61\x6C\x65\x72\x74","\x53\x68\x6F\x77","\x70\x6F\x70\x75\x70","\x43\x6C\x65\x61\x72","\x6E\x75\x6D\x62\x65\x72","\x69\x6E\x6E\x65\x72\x57\x69\x64\x74\x68","\x69\x6E\x6E\x65\x72\x48\x65\x69\x67\x68\x74","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x6D\x61\x78","\x73\x65\x74\x4D\x61\x78\x69\x6D\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x53\x63\x72\x6F\x6C\x6C\x61\x62\x6C\x65","\x73\x65\x74\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x43\x6C\x6F\x73\x61\x62\x6C\x65","\x64\x65\x73\x74\x72\x6F\x79\x4F\x6E\x43\x6C\x6F\x73\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x78","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x39\x32\x70\x78","\x77\x72\x69\x74\x65\x6C\x6E","\x62\x75\x74\x74\x6F\x6E","\x63\x6C\x69\x63\x6B","\x69\x73\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x56\x69\x73\x69\x62\x6C\x65","\x69\x6E\x69\x74","\x45\x6E\x74\x65\x72\x69\x6E\x67\x20","\x67\x65\x74\x54\x69\x6D\x65","\x20\x28","\x20\x6D\x73\x29","\x4C\x65\x61\x76\x69\x6E\x67\x20","\x44\x45\x42\x55\x47","\x61\x70\x70\x6C\x79","\x57\x41\x52\x4E","\x20","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x35","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x68\x69\x64\x64\x65\x6E","\x76\x69\x73\x69\x62\x6C\x65","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x0A","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x49\x64","\x6F\x62\x6A\x65\x63\x74","\x46\x49\x45\x4C\x44\x5F\x4E\x41\x4D\x45","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x67\x65\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E\x4E\x61\x6D\x65","\x23","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x6C\x65\x61\x72","\x6D\x61\x70","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x65\x74","\x70\x75\x74","\x72\x65\x6D\x6F\x76\x65","\x67\x65\x74\x4B\x65\x79\x73","\x70\x75\x73\x68","\x67\x65\x74\x56\x61\x6C\x75\x65\x73","\x76\x69\x73\x69\x74","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2D","\x6C\x6F\x61\x64\x53\x70\x65\x63\x69\x61\x6C\x42\x75\x6E\x64\x6C\x65","\x5F","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x4E\x4F\x4E\x45","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x6C\x6F\x61\x64","\x69\x73\x52\x65\x61\x64\x79","\x67\x65\x74\x54\x65\x78\x74","\x70\x61\x72\x73\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x42\x75\x6E\x64\x6C\x65","\x73\x70\x6C\x69\x74","\x63\x68\x61\x72\x41\x74","\x3D","\x63\x68\x61\x72\x43\x6F\x64\x65\x41\x74","\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x45\x6E\x63\x6F\x64\x65\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x7B","\x7D","\x6A\x6F\x69\x6E","\x78","\x79","\x65\x71\x75\x61\x6C\x73","\x63\x6C\x6F\x6E\x65","\x63\x61\x6C\x6C","\x73\x65\x74\x52\x65\x63\x74","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x6D\x69\x6E","\x67\x72\x6F\x77","\x67\x65\x74\x50\x6F\x69\x6E\x74","\x63\x65\x6C\x6C","\x63\x68\x69\x6C\x64","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x69\x73\x45\x64\x67\x65","\x6D\x6F\x64\x65\x6C","\x6E\x6F\x64\x65","\x73\x68\x61\x70\x65","\x73\x65\x74\x4F\x70\x61\x63\x69\x74\x79","\x73\x63\x61\x6C\x65","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x72\x65\x76\x69\x6F\x75\x73","\x72\x65\x64\x72\x61\x77","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x61\x73\x63\x61\x64\x65\x4F\x70\x61\x63\x69\x74\x79","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x67\x65\x74\x45\x64\x67\x65\x73","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x65\x72\x72\x6F\x72","\x63\x6C\x6F\x73\x65","\x2F\x65\x72\x72\x6F\x72\x2E\x67\x69\x66","\x63\x75\x72\x73\x6F\x72","\x63\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65\x43\x75\x72\x73\x6F\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x53\x74\x79\x6C\x65","\x67\x65\x74\x43\x6F\x6D\x70\x75\x74\x65\x64\x53\x74\x79\x6C\x65","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x53\x74\x79\x6C\x65","\x73\x63\x72\x6F\x6C\x6C","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x76\x61\x72\x20\x5F\x6D\x78\x4A\x61\x76\x61\x53\x63\x72\x69\x70\x74\x45\x78\x70\x72\x65\x73\x73\x69\x6F\x6E\x3D","\x6D\x65\x73\x73\x61\x67\x65","\x20\x77\x68\x69\x6C\x65\x20\x65\x76\x61\x6C\x75\x61\x74\x69\x6E\x67\x20","\x77\x61\x72\x6E","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x66\x69\x6E\x64\x4E\x6F\x64\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x66\x69\x6E\x64\x4E\x6F\x64\x65\x42\x79\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x2F\x2F\x2A\x5B\x40","\x3D\x27","\x27\x5D","\x73\x65\x6C\x65\x63\x74\x53\x69\x6E\x67\x6C\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x69\x74\x65\x72\x61\x74\x65\x4E\x65\x78\x74","\x65\x76\x61\x6C\x75\x61\x74\x65","\x6E\x61\x6D\x65","\x28","\x73\x70\x6C\x69\x63\x65","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x41\x63\x74\x69\x76\x65\x58\x4F\x62\x6A\x65\x63\x74","\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x58\x4D\x4C\x44\x4F\x4D","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x61\x73\x79\x6E\x63","\x66\x61\x6C\x73\x65","\x6C\x6F\x61\x64\x58\x4D\x4C","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x70\x61\x72\x73\x65\x46\x72\x6F\x6D\x53\x74\x72\x69\x6E\x67","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x65\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x52\x61\x6E\x67\x65\x73","\x20\x20","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x54\x45\x58\x54","\x6E\x6F\x64\x65\x56\x61\x6C\x75\x65","\x3C","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x3D\x22","\x22","\x3E\x0A","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x3C\x2F","\x2F\x3E\x0A","\x70\x72\x65\x76\x69\x6F\x75\x73\x53\x69\x62\x6C\x69\x6E\x67","\x67\x65\x74\x54\x65\x78\x74\x43\x6F\x6E\x74\x65\x6E\x74","\x74\x72\x69\x6D","\x26\x61\x6D\x70\x3B","\x26\x71\x75\x6F\x74\x3B","\x26\x23\x33\x39\x3B","\x26\x6C\x74\x3B","\x26\x67\x74\x3B","\x26\x23\x78\x61\x3B","\x74\x61\x67\x55\x72\x6E","\x78\x6D\x6C","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x73\x65\x72\x69\x61\x6C\x69\x7A\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x3E","\x6F\x75\x74\x65\x72\x48\x54\x4D\x4C","\x2F\x3E","\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x4E\x6F\x64\x65","\x62\x72","\x70","\x66\x69\x6C\x74\x65\x72","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x41\x6C\x70\x68\x61\x49\x6D\x61\x67\x65\x4C\x6F\x61\x64\x65\x72\x28\x73\x72\x63\x3D\x27","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66\x27\x2C\x20\x73\x69\x7A\x69\x6E\x67\x4D\x65\x74\x68\x6F\x64\x3D\x27\x73\x63\x61\x6C\x65\x27\x29","\x65\x78\x65\x63\x75\x74\x65","\x73\x70\x61\x6E","\x63\x6F\x6C\x6F\x72","\x62\x6C\x75\x65","\x74\x65\x78\x74\x44\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x70\x6F\x69\x6E\x74\x65\x72","\x70\x61\x64\x64\x69\x6E\x67\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x55\x6E\x69\x76\x65\x72\x73\x61\x6C\x58\x50\x43\x6F\x6E\x6E\x65\x63\x74","\x65\x6E\x61\x62\x6C\x65\x50\x72\x69\x76\x69\x6C\x65\x67\x65","\x50\x72\x69\x76\x69\x6C\x65\x67\x65\x4D\x61\x6E\x61\x67\x65\x72","\x73\x65\x63\x75\x72\x69\x74\x79","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x72\x65\x61\x64\x20\x66\x69\x6C\x65\x20\x64\x65\x6E\x69\x65\x64\x2E","\x6E\x73\x49\x4C\x6F\x63\x61\x6C\x46\x69\x6C\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x73","\x63\x72\x65\x61\x74\x65\x49\x6E\x73\x74\x61\x6E\x63\x65","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x66\x69\x6C\x65\x2F\x6C\x6F\x63\x61\x6C\x3B\x31","\x63\x6C\x61\x73\x73\x65\x73","\x69\x6E\x69\x74\x57\x69\x74\x68\x50\x61\x74\x68","\x65\x78\x69\x73\x74\x73","\x46\x69\x6C\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x6E\x73\x49\x46\x69\x6C\x65\x49\x6E\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x66\x69\x6C\x65\x2D\x69\x6E\x70\x75\x74\x2D\x73\x74\x72\x65\x61\x6D\x3B\x31","\x6E\x73\x49\x53\x63\x72\x69\x70\x74\x61\x62\x6C\x65\x49\x6E\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x73\x63\x72\x69\x70\x74\x61\x62\x6C\x65\x69\x6E\x70\x75\x74\x73\x74\x72\x65\x61\x6D\x3B\x31","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x65\x61\x64","\x53\x63\x72\x69\x70\x74\x69\x6E\x67\x2E\x46\x69\x6C\x65\x53\x79\x73\x74\x65\x6D\x4F\x62\x6A\x65\x63\x74","\x72\x65\x61\x64\x41\x6C\x6C","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x77\x72\x69\x74\x65\x20\x66\x69\x6C\x65\x20\x64\x65\x6E\x69\x65\x64\x2E","\x63\x72\x65\x61\x74\x65","\x6E\x73\x49\x46\x69\x6C\x65\x4F\x75\x74\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x66\x69\x6C\x65\x2D\x6F\x75\x74\x70\x75\x74\x2D\x73\x74\x72\x65\x61\x6D\x3B\x31","\x66\x6C\x75\x73\x68","\x69\x66\x72\x61\x6D\x65","\x73\x72\x63","\x63\x6F\x6E\x74\x65\x6E\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6F\x70\x65\x6E","\x66\x6F\x63\x75\x73","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x73\x61\x76\x65\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x20\x64\x65\x6E\x69\x65\x64\x2E","\x64\x6F\x63\x75\x6D\x65\x6E\x74","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x69\x6E\x64\x6F\x77","\x53\x61\x76\x65\x41\x73","\x65\x78\x65\x63\x43\x6F\x6D\x6D\x61\x6E\x64","\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61","\x54\x65\x78\x74","\x73\x65\x74\x44\x61\x74\x61","\x6E\x73\x49\x43\x6C\x69\x70\x62\x6F\x61\x72\x64","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x77\x69\x64\x67\x65\x74\x2F\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x3B\x31","\x6E\x73\x49\x54\x72\x61\x6E\x73\x66\x65\x72\x61\x62\x6C\x65","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x77\x69\x64\x67\x65\x74\x2F\x74\x72\x61\x6E\x73\x66\x65\x72\x61\x62\x6C\x65\x3B\x31","\x74\x65\x78\x74\x2F\x75\x6E\x69\x63\x6F\x64\x65","\x61\x64\x64\x44\x61\x74\x61\x46\x6C\x61\x76\x6F\x72","\x6E\x73\x49\x53\x75\x70\x70\x6F\x72\x74\x73\x53\x74\x72\x69\x6E\x67","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x73\x75\x70\x70\x6F\x72\x74\x73\x2D\x73\x74\x72\x69\x6E\x67\x3B\x31","\x64\x61\x74\x61","\x73\x65\x74\x54\x72\x61\x6E\x73\x66\x65\x72\x44\x61\x74\x61","\x6B\x47\x6C\x6F\x62\x61\x6C\x43\x6C\x69\x70\x62\x6F\x61\x72\x64","\x47\x45\x54","\x73\x65\x6E\x64","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x6F\x6E\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x6E\x67\x65","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x20\x3D\x20\x5B\x6E\x75\x6C\x6C\x5D\x0A","\x20\x3D\x3E\x20\x5B\x46\x75\x6E\x63\x74\x69\x6F\x6E\x5D\x0A","\x20\x3D\x3E\x20\x5B","\x5D\x0A","\x20\x3D\x20","\x50\x49","\x61\x62\x73","\x63\x6F\x73","\x73\x69\x6E","\x73\x71\x72\x74","\x61\x74\x61\x6E\x32","\x63\x65\x69\x6C","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x67\x65\x74\x56\x61\x6C\x75\x65","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x4E\x4F\x4E\x45","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x4E\x4F\x52\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x57\x45\x53\x54","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x53\x4F\x55\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x45\x41\x53\x54","\x61\x62\x73\x6F\x6C\x75\x74\x65\x50\x6F\x69\x6E\x74\x73","\x70\x74\x53\x65\x67\x44\x69\x73\x74\x53\x71","\x76\x69\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x73","\x6F\x66\x66\x73\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x53\x63\x72\x6F\x6C\x6C\x4F\x72\x69\x67\x69\x6E","\x67\x65\x74\x4F\x66\x66\x73\x65\x74","\x5E\x5B","\x5C\x73","\x5D\x2B","\x67","\x5B","\x5D\x2B\x24","\x72\x74\x72\x69\x6D","\x6C\x74\x72\x69\x6D","\x30\x78","\x30\x58","\x61\x6E\x69\x6D\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x73","\x66\x61\x64\x65\x4F\x75\x74","\x69\x73\x56\x6D\x6C","\x61\x6C\x70\x68\x61\x28\x6F\x70\x61\x63\x69\x74\x79\x3D","\x29","\x6F\x70\x61\x63\x69\x74\x79","\x43\x53\x53\x31\x43\x6F\x6D\x70\x61\x74","\x56\x4D\x4C\x5F\x50\x52\x45\x46\x49\x58","\x3A\x69\x6D\x61\x67\x65","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30","\x63\x6F\x6D\x70\x61\x72\x65","\x73\x6F\x72\x74","\x3B","\x69\x6E\x64\x65\x78\x4F\x66\x53\x74\x79\x6C\x65\x6E\x61\x6D\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x65\x74\x53\x74\x79\x6C\x65\x46\x6C\x61\x67","\x3D\x30","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x64\x69\x76","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x72\x6F\x75\x6E\x64","\x6C\x69\x6E\x65\x48\x65\x69\x67\x68\x74","\x4C\x49\x4E\x45\x5F\x48\x45\x49\x47\x48\x54","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x7A\x6F\x6F\x6D","\x31","\x67\x65\x74\x52\x6F\x6F\x74","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x69\x73\x45\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x64\x72\x61\x77\x50\x61\x6E\x65","\x6F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x4E\x53","\x63\x61\x6E\x76\x61\x73","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x67\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x65\x6E\x63\x6F\x64\x65","\x64\x65\x73\x74\x72\x6F\x79","\x50\x41\x47\x45\x5F\x46\x4F\x52\x4D\x41\x54\x5F\x41\x34\x5F\x50\x4F\x52\x54\x52\x41\x49\x54","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x63\x61\x6C\x65","\x66\x6C\x6F\x6F\x72","\x3C\x68\x74\x6D\x6C\x3E\x3C\x68\x65\x61\x64\x3E","\x62\x61\x73\x65","\x3C\x73\x74\x79\x6C\x65\x3E","\x73\x74\x79\x6C\x65\x53\x68\x65\x65\x74\x73","\x3C\x2F\x73\x74\x79\x6C\x65\x3E\x3C\x2F\x68\x65\x61\x64\x3E","\x3C\x62\x6F\x64\x79\x3E","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x3C\x2F\x62\x6F\x64\x79\x3E","\x3C\x68\x74\x6D\x6C\x3E","\x44\x49\x56","\x3C\x68\x74\x6D\x6C","\x3C\x68\x65\x61\x64\x3E","\x67\x65\x74\x4F\x75\x74\x65\x72\x48\x74\x6D\x6C","\x3C\x2F\x68\x65\x61\x64\x3E","\x3C\x2F\x68\x74\x6D\x6C\x3E","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x68\x6F\x77","\x70\x72\x69\x6E\x74","\x36\x33\x36\x70\x78","\x34\x36\x30\x70\x78","\x70\x72\x65","\x26\x6E\x62\x73\x70\x3B","\x3C\x62\x72\x3E","\x50\x6F\x70\x75\x70\x20\x57\x69\x6E\x64\x6F\x77","\x3C\x70\x72\x65\x3E","\x3C\x2F\x70\x72\x65","\x70\x61\x64\x64\x69\x6E\x67","\x32\x30\x70\x78","\x65\x72\x72\x6F\x72\x49\x6D\x61\x67\x65","\x76\x61\x6C\x69\x67\x6E","\x62\x6F\x74\x74\x6F\x6D","\x6D\x69\x64\x64\x6C\x65","\xA0","\x65\x72\x72\x6F\x72\x52\x65\x73\x6F\x75\x72\x63\x65","\x66\x6C\x6F\x61\x74\x3A\x72\x69\x67\x68\x74","\x63\x6C\x6F\x73\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x72\x61\x67\x4F\x66\x66\x73\x65\x74","\x54\x4F\x4F\x4C\x54\x49\x50\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4F\x46\x46\x53\x45\x54","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74\x73","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x46\x6F\x72\x45\x76\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x45\x6C\x65\x6D\x65\x6E\x74","\x65\x78\x61\x63\x74","\x66\x61\x73\x74\x65\x72","\x66\x61\x73\x74\x65\x73\x74","\x73\x76\x67","\x76\x6D\x6C","\x6D\x69\x78\x65\x64\x48\x74\x6D\x6C","\x70\x72\x65\x66\x65\x72\x48\x74\x6D\x6C","\x73\x74\x72\x69\x63\x74\x48\x74\x6D\x6C","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x32\x30\x30\x30\x2F\x73\x76\x67","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x6C\x69\x6E\x6B","\x67\x72\x61\x79","\x23\x30\x30\x46\x46\x30\x30","\x23\x46\x46\x30\x30\x30\x30","\x6D\x6F\x76\x65","\x64\x65\x66\x61\x75\x6C\x74","\x23\x30\x30\x30\x30\x46\x46","\x23\x30\x30\x39\x39\x46\x46","\x62\x6C\x61\x63\x6B","\x79\x65\x6C\x6C\x6F\x77","\x23\x30\x30\x46\x46\x46\x46","\x23\x30\x30\x33\x33\x46\x46","\x41\x72\x69\x61\x6C\x2C\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x50\x6F\x72\x74","\x74\x61\x72\x67\x65\x74\x50\x6F\x72\x74","\x70\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C","\x65\x78\x69\x74\x58","\x65\x78\x69\x74\x59","\x65\x78\x69\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x65\x6E\x74\x72\x79\x58","\x65\x6E\x74\x72\x79\x59","\x65\x6E\x74\x72\x79\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x66\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74\x44\x69\x72\x65\x63\x74\x69\x6F\x6E","\x73\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x73\x65\x70\x61\x72\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x73\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x61\x6C\x69\x67\x6E","\x6C\x61\x62\x65\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x65\x72\x74\x69\x63\x61\x6C\x4C\x61\x62\x65\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x6D\x61\x67\x65\x41\x73\x70\x65\x63\x74","\x69\x6D\x61\x67\x65\x41\x6C\x69\x67\x6E","\x69\x6D\x61\x67\x65\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x67\x6C\x61\x73\x73","\x69\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65\x57\x69\x64\x74\x68","\x69\x6D\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x69\x6D\x61\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x69\x6D\x61\x67\x65\x42\x6F\x72\x64\x65\x72","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x6E\x6F\x4C\x61\x62\x65\x6C","\x6E\x6F\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x61\x62\x65\x6C\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x6C\x61\x62\x65\x6C\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x6C\x61\x62\x65\x6C\x50\x61\x64\x64\x69\x6E\x67","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x68\x61\x70\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x49\x6D\x61\x67\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x47\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x70\x61\x63\x69\x6E\x67","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x57\x69\x64\x74\x68","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x48\x65\x69\x67\x68\x74","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x44\x69\x72\x65\x63\x74\x69\x6F\x6E","\x73\x68\x61\x64\x6F\x77","\x73\x65\x67\x6D\x65\x6E\x74","\x65\x6E\x64\x41\x72\x72\x6F\x77","\x73\x74\x61\x72\x74\x41\x72\x72\x6F\x77","\x65\x6E\x64\x53\x69\x7A\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x69\x6E\x65","\x65\x6E\x64\x46\x69\x6C\x6C","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x64\x61\x73\x68\x65\x64","\x64\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x61\x72\x63\x53\x69\x7A\x65","\x73\x6D\x6F\x6F\x74\x68","\x73\x6F\x75\x72\x63\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x70\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x73\x70\x61\x63\x69\x6E\x67","\x73\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x73\x70\x61\x63\x69\x6E\x67\x4C\x65\x66\x74","\x73\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x73\x70\x61\x63\x69\x6E\x67\x52\x69\x67\x68\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x65\x6C\x62\x6F\x77","\x66\x6F\x6E\x74\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x66\x6F\x6C\x64\x61\x62\x6C\x65","\x65\x64\x69\x74\x61\x62\x6C\x65","\x62\x65\x6E\x64\x61\x62\x6C\x65","\x6D\x6F\x76\x61\x62\x6C\x65","\x72\x65\x73\x69\x7A\x61\x62\x6C\x65","\x63\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x64\x65\x6C\x65\x74\x61\x62\x6C\x65","\x65\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x6F\x6F\x70\x53\x74\x79\x6C\x65","\x72\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x58","\x72\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x59","\x72\x65\x63\x74\x61\x6E\x67\x6C\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x64\x6F\x75\x62\x6C\x65\x45\x6C\x6C\x69\x70\x73\x65","\x72\x68\x6F\x6D\x62\x75\x73","\x6C\x69\x6E\x65","\x61\x72\x72\x6F\x77","\x6C\x61\x62\x65\x6C","\x63\x79\x6C\x69\x6E\x64\x65\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x61\x63\x74\x6F\x72","\x63\x6C\x6F\x75\x64","\x74\x72\x69\x61\x6E\x67\x6C\x65","\x68\x65\x78\x61\x67\x6F\x6E","\x63\x6C\x61\x73\x73\x69\x63","\x62\x6C\x6F\x63\x6B","\x6F\x76\x61\x6C","\x64\x69\x61\x6D\x6F\x6E\x64","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x63\x65\x6E\x74\x65\x72","\x72\x69\x67\x68\x74","\x6E\x6F\x72\x74\x68","\x73\x6F\x75\x74\x68","\x65\x61\x73\x74","\x77\x65\x73\x74","\x76\x65\x72\x74\x69\x63\x61\x6C","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x6F\x6F\x70\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x73\x69\x64\x65\x54\x6F\x53\x69\x64\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x74\x6F\x70\x54\x6F\x42\x6F\x74\x74\x6F\x6D\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x65\x6C\x6C\x69\x70\x73\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x65\x63\x74\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x68\x6F\x6D\x62\x75\x73\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x74\x72\x69\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x63\x6F\x6E\x73\x75\x6D\x65\x64","\x67\x65\x74\x4E\x61\x6D\x65","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x63\x6F\x6E\x73\x75\x6D\x65","\x65\x76\x74","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x69\x73\x53\x6F\x75\x72\x63\x65","\x67\x65\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x59","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x72\x65\x74\x75\x72\x6E\x56\x61\x6C\x75\x65","\x73\x65\x74\x45\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x65\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x65\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x65\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x67\x65\x74\x45\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x6F\x6E","\x66","\x72\x65\x6D\x6F\x76\x65\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x64\x65\x74\x61\x63\x68\x45\x76\x65\x6E\x74","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x75\x63\x68\x73\x74\x61\x72\x74","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x72\x65\x6C\x65\x61\x73\x65","\x65\x76\x65\x6E\x74","\x64\x65\x74\x61\x69\x6C","\x77\x68\x65\x65\x6C\x44\x65\x6C\x74\x61","\x6D\x6F\x75\x73\x65\x77\x68\x65\x65\x6C","\x44\x4F\x4D\x4D\x6F\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B","\x73\x72\x63\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x61\x72\x67\x65\x74","\x69\x73\x52\x69\x67\x68\x74\x4D\x6F\x75\x73\x65\x42\x75\x74\x74\x6F\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x73\x68\x69\x66\x74\x4B\x65\x79","\x61\x6C\x74\x4B\x65\x79","\x63\x74\x72\x6C\x4B\x65\x79","\x6D\x65\x74\x61\x4B\x65\x79","\x74\x6F\x75\x63\x68\x65\x73","\x63\x68\x61\x6E\x67\x65\x64\x54\x6F\x75\x63\x68\x65\x73","\x63\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x4D\x61\x69\x6E\x45\x76\x65\x6E\x74","\x63\x6C\x69\x65\x6E\x74\x59","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x63\x61\x6E\x63\x65\x6C\x42\x75\x62\x62\x6C\x65","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x63\x74\x69\x76\x61\x74\x65","\x72\x65\x73\x69\x7A\x65\x53\x74\x61\x72\x74","\x72\x65\x73\x69\x7A\x65\x45\x6E\x64","\x6D\x6F\x76\x65\x53\x74\x61\x72\x74","\x6D\x6F\x76\x65\x45\x6E\x64","\x70\x61\x6E\x53\x74\x61\x72\x74","\x70\x61\x6E","\x70\x61\x6E\x45\x6E\x64","\x6D\x69\x6E\x69\x6D\x69\x7A\x65","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x6D\x61\x78\x69\x6D\x69\x7A\x65","\x68\x69\x64\x65","\x72\x65\x66\x72\x65\x73\x68","\x73\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74","\x66\x69\x72\x65\x64","\x72\x65\x63\x65\x69\x76\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x75\x73\x70\x65\x6E\x64","\x72\x65\x73\x75\x6D\x65","\x6D\x61\x72\x6B","\x73\x65\x73\x73\x69\x6F\x6E","\x72\x6F\x6F\x74","\x70\x6F\x73\x74","\x73\x61\x76\x65","\x62\x65\x66\x6F\x72\x65\x41\x64\x64\x56\x65\x72\x74\x65\x78","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x61\x66\x74\x65\x72\x41\x64\x64\x56\x65\x72\x74\x65\x78","\x64\x6F\x6E\x65","\x65\x78\x65\x63\x75\x74\x65\x64","\x73\x74\x61\x72\x74\x45\x64\x69\x74","\x65\x6E\x64\x45\x64\x69\x74","\x62\x65\x66\x6F\x72\x65\x55\x6E\x64\x6F","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x68\x61\x6E\x67\x65","\x6E\x6F\x74\x69\x66\x79","\x6C\x61\x79\x6F\x75\x74\x43\x65\x6C\x6C\x73","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x75\x70","\x64\x6F\x77\x6E","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x41\x64\x64\x65\x64","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x4D\x6F\x76\x65\x64","\x72\x65\x73\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x65\x64","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x54\x6F\x67\x67\x6C\x65\x64","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x4F\x72\x64\x65\x72\x65\x64","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x52\x65\x6D\x6F\x76\x65\x64","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x46\x6F\x6C\x64\x65\x64","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67","\x61\x64\x64\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x4F\x76\x65\x72\x6C\x61\x79","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x73\x63\x61\x70\x65","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B","\x73\x74\x61\x72\x74","\x72\x65\x73\x65\x74","\x75\x72\x6C","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x74\x68\x6F\x64","\x50\x4F\x53\x54","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x62\x69\x6E\x61\x72\x79","\x72\x65\x71\x75\x65\x73\x74","\x69\x73\x42\x69\x6E\x61\x72\x79","\x73\x65\x74\x42\x69\x6E\x61\x72\x79","\x72\x65\x73\x70\x6F\x6E\x73\x65\x54\x65\x78\x74","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x58\x6D\x6C","\x72\x65\x73\x70\x6F\x6E\x73\x65\x58\x4D\x4C","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73","\x58\x4D\x4C\x48\x74\x74\x70\x52\x65\x71\x75\x65\x73\x74","\x6F\x76\x65\x72\x72\x69\x64\x65\x4D\x69\x6D\x65\x54\x79\x70\x65","\x74\x65\x78\x74\x2F\x70\x6C\x61\x69\x6E\x3B\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x78\x2D\x75\x73\x65\x72\x2D\x64\x65\x66\x69\x6E\x65\x64","\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x58\x4D\x4C\x48\x54\x54\x50","\x6F\x6E\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x66\x6F\x72\x6D","\x61\x63\x74\x69\x6F\x6E","\x26","\x73\x75\x62\x6D\x69\x74","\x63\x65\x6C\x6C\x73","\x69\x6E\x73\x65\x72\x74\x43\x6F\x75\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x67\x65\x74\x45\x78\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x53\x54\x45\x50\x53\x49\x5A\x45","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x61\x78\x69\x6D\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x69\x6E\x69\x6D\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x6C\x6F\x73\x65\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x4D\x69\x6E\x69\x6D\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x54\x69\x74\x6C\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x70\x6C\x61\x63\x65\x43\x68\x69\x6C\x64","\x63\x6C\x6F\x73\x65\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x6F\x73\x65\x2E\x67\x69\x66","\x6D\x69\x6E\x69\x6D\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6D\x69\x6E\x69\x6D\x69\x7A\x65\x2E\x67\x69\x66","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65\x2E\x67\x69\x66","\x6D\x61\x78\x69\x6D\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6D\x61\x78\x69\x6D\x69\x7A\x65\x2E\x67\x69\x66","\x72\x65\x73\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x72\x65\x73\x69\x7A\x65\x2E\x67\x69\x66","\x6D\x69\x6E\x69\x6D\x75\x6D\x53\x69\x7A\x65","\x74\x69\x74\x6C\x65","\x6D\x78\x57\x69\x6E\x64\x6F\x77","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x54\x69\x74\x6C\x65","\x50\x61\x6E\x65","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x72\x61\x70\x70\x65\x72","\x61\x63\x74\x69\x76\x65\x57\x69\x6E\x64\x6F\x77","\x7A\x49\x6E\x64\x65\x78","\x70\x72\x65\x76\x69\x6F\x75\x73\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x69\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x32\x70\x78","\x6E\x77\x2D\x72\x65\x73\x69\x7A\x65","\x73\x65\x74\x53\x69\x7A\x65","\x72\x65\x6D\x6F\x76\x65\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x67\x65\x74\x4D\x69\x6E\x69\x6D\x75\x6D\x53\x69\x7A\x65","\x4D\x69\x6E\x69\x6D\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E\x52\x69\x67\x68\x74","\x31\x70\x78","\x4E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x4D\x61\x78\x69\x6D\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x30\x70\x78","\x73\x65\x74\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x63\x6C\x6F\x73\x65\x49\x6D\x67","\x43\x6C\x6F\x73\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x73\x65\x74\x49\x6D\x61\x67\x65","\x34\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x2D\x32\x70\x78","\x67\x65\x74\x54\x61\x62\x6C\x65","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E\x73","\x6F\x6B","\x4F\x4B","\x63\x61\x6E\x63\x65\x6C","\x43\x61\x6E\x63\x65\x6C","\x61\x64\x64\x54\x65\x78\x74","\x69\x6E\x70\x75\x74","\x74\x65\x78\x74","\x61\x64\x64\x46\x69\x65\x6C\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x62\x6F\x78","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x63\x68\x65\x63\x6B\x65\x64","\x61\x64\x64\x54\x65\x78\x74\x61\x72\x65\x61","\x72\x6F\x77\x73","\x61\x64\x64\x43\x6F\x6D\x62\x6F","\x6D\x75\x6C\x74\x69\x70\x6C\x65","\x61\x64\x64\x4F\x70\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x65\x73\x69\x7A\x65\x57\x69\x64\x74\x68","\x72\x65\x73\x69\x7A\x65\x48\x65\x69\x67\x68\x74","\x68\x61\x6E\x64\x6C\x69\x6E\x67\x52\x65\x73\x69\x7A\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x57\x69\x64\x74\x68","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x65\x6C\x65\x6D\x65\x6E\x74","\x64\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74","\x70\x72\x65\x76\x69\x65\x77\x45\x6C\x65\x6D\x65\x6E\x74","\x65\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x63\x75\x72\x72\x65\x6E\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x63\x75\x72\x72\x65\x6E\x74\x50\x6F\x69\x6E\x74","\x63\x75\x72\x72\x65\x6E\x74\x47\x75\x69\x64\x65","\x63\x75\x72\x72\x65\x6E\x74\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74\x5A\x49\x6E\x64\x65\x78","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74\x4F\x70\x61\x63\x69\x74\x79","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x73\x74\x61\x72\x74\x44\x72\x61\x67","\x6D\x6F\x75\x73\x65\x55\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x74\x6F\x70\x44\x72\x61\x67","\x67\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x73\x45\x76\x65\x6E\x74","\x64\x72\x61\x67\x45\x78\x69\x74","\x64\x72\x61\x67\x45\x6E\x74\x65\x72","\x64\x72\x61\x67\x4F\x76\x65\x72","\x64\x72\x6F\x70","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x67\x65\x74\x47\x75\x69\x64\x65\x53\x74\x61\x74\x65\x73","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x61\x75\x74\x6F\x45\x78\x74\x65\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x50\x6F\x69\x6E\x74\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x68\x69\x67\x68\x6C\x69\x67\x68\x74","\x33","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x6E\x61\x70","\x70\x72\x65\x76\x69\x65\x77\x4F\x66\x66\x73\x65\x74","\x6E\x6F\x52\x65\x73\x65\x74","\x75\x70\x64\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x4D\x6F\x64\x65","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x6F\x64\x65","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x49\x74\x65\x6D","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x6D\x65\x6E\x75","\x63\x75\x72\x72\x65\x6E\x74\x49\x6D\x67","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6D\x62\x6F\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6D\x62\x6F","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x43\x6F\x6D\x62\x6F","\x73\x65\x6C\x65\x63\x74\x65\x64\x49\x6E\x64\x65\x78","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x53\x77\x69\x74\x63\x68\x4D\x6F\x64\x65","\x69\x6E\x69\x74\x69\x61\x6C\x43\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x61\x6C\x74\x49\x63\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x4D\x6F\x64\x65","\x64\x65\x66\x61\x75\x6C\x74\x4D\x6F\x64\x65","\x73\x65\x6C\x65\x63\x74\x4D\x6F\x64\x65","\x61\x64\x64\x4D\x6F\x64\x65","\x64\x65\x66\x61\x75\x6C\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x72\x65\x73\x65\x74\x4D\x6F\x64\x65","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x61\x64\x64\x42\x72\x65\x61\x6B","\x61\x64\x64\x4C\x69\x6E\x65","\x68\x72","\x36\x70\x78","\x75\x72\x6C\x49\x6E\x69\x74","\x75\x72\x6C\x50\x6F\x6C\x6C","\x75\x72\x6C\x4E\x6F\x74\x69\x66\x79","\x63\x6F\x64\x65\x63","\x6C\x6F\x6F\x6B\x75\x70","\x65\x64\x69\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x73\x75\x73\x70\x65\x6E\x64\x65\x64","\x3C\x65\x64\x69\x74\x3E","\x63\x68\x61\x6E\x67\x65\x73","\x75\x6E\x64\x6F\x6E\x65","\x65\x6E\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65\x73","\x3C\x2F\x65\x64\x69\x74\x3E","\x6C\x69\x6E\x65\x66\x65\x65\x64","\x65\x73\x63\x61\x70\x65\x50\x6F\x73\x74\x44\x61\x74\x61","\x73\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74\x52\x65\x6D\x6F\x74\x65\x43\x68\x61\x6E\x67\x65\x73","\x73\x65\x6E\x74","\x72\x65\x63\x65\x69\x76\x65\x64","\x70\x6F\x6C\x6C\x69\x6E\x67","\x70\x6F\x6C\x6C","\x73\x74\x6F\x70","\x72\x65\x61\x73\x6F\x6E","\x6D\x78\x53\x65\x73\x73\x69\x6F\x6E\x2E\x6E\x6F\x74\x69\x66\x79\x3A\x20","\x20\x78\x6D\x6C\x3D","\x3C\x6D\x65\x73\x73\x61\x67\x65\x3E\x3C\x64\x65\x6C\x74\x61\x3E","\x3C\x2F\x64\x65\x6C\x74\x61\x3E\x3C\x2F\x6D\x65\x73\x73\x61\x67\x65\x3E","\x78\x6D\x6C\x3D","\x69\x73\x56\x61\x6C\x69\x64\x52\x65\x73\x70\x6F\x6E\x73\x65","\x49\x6E\x76\x61\x6C\x69\x64\x20\x72\x65\x73\x70\x6F\x6E\x73\x65\x3A\x20","\x52\x65\x73\x70\x6F\x6E\x73\x65\x20\x6E\x6F\x74\x20\x72\x65\x61\x64\x79","\x54\x72\x61\x6E\x73\x6D\x69\x73\x73\x69\x6F\x6E\x20\x65\x72\x72\x6F\x72","\x3C\x3F\x70\x68\x70","\x6E\x61\x6D\x65\x73\x70\x61\x63\x65","\x70\x72\x65\x66\x69\x78","\x70\x72\x6F\x63\x65\x73\x73\x53\x74\x61\x74\x65","\x64\x65\x6C\x74\x61","\x70\x72\x6F\x63\x65\x73\x73\x44\x65\x6C\x74\x61","\x64\x65\x63\x6F\x64\x65","\x70\x72\x6F\x63\x65\x73\x73\x45\x64\x69\x74","\x64\x65\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65\x73","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74","\x73\x6F\x75\x72\x63\x65","\x64\x65\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65","\x6D\x78\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x6D\x78\x43\x68\x69\x6C\x64\x43\x68\x61\x6E\x67\x65","\x70\x61\x72\x65\x6E\x74","\x63\x65\x6C\x6C\x52\x65\x6D\x6F\x76\x65\x64","\x67\x65\x74\x49\x64","\x70\x75\x74\x4F\x62\x6A\x65\x63\x74","\x73\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74","\x72\x65\x64\x6F\x6E\x65","\x69\x73\x45\x6D\x70\x74\x79","\x69\x73\x53\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74","\x64\x69\x65","\x68\x69\x73\x74\x6F\x72\x79","\x69\x6E\x64\x65\x78\x4F\x66\x4E\x65\x78\x74\x41\x64\x64","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x73\x68\x69\x66\x74","\x64\x61\x74\x61\x3A\x69\x6D\x61\x67\x65","\x69\x73\x52\x65\x6C\x61\x74\x69\x76\x65\x55\x72\x6C","\x70\x72\x6F\x74\x6F\x63\x6F\x6C","\x2F\x2F","\x68\x6F\x73\x74","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x74\x68\x72\x65\x61\x64","\x61\x63\x74\x69\x76\x65","\x64\x79","\x64\x78","\x74\x30\x79","\x74\x30\x78","\x74\x64\x79","\x74\x64\x78","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x4D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x70\x61\x6E\x47\x72\x61\x70\x68","\x70\x61\x6E\x44\x78","\x70\x61\x6E\x44\x79","\x67\x65\x74\x44\x78","\x67\x65\x74\x44\x79","\x64\x65\x6C\x61\x79","\x73\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C","\x69\x73\x41\x63\x74\x69\x76\x65","\x70\x61\x6E\x54\x6F","\x68\x61\x6E\x64\x6C\x65\x4D\x6F\x75\x73\x65\x4F\x75\x74","\x64\x61\x6D\x70\x65\x72","\x63\x6C\x65\x61\x72\x49\x6E\x74\x65\x72\x76\x61\x6C","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65\x4D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x2F\x73\x75\x62\x6D\x65\x6E\x75\x2E\x67\x69\x66","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x6F\x70\x75\x70","\x69\x74\x65\x6D\x43\x6F\x75\x6E\x74","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x6C\x61\x62\x65\x6C\x73","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x64\x69\x73\x61\x62\x6C\x65\x43\x6F\x6E\x74\x65\x78\x74\x4D\x65\x6E\x75","\x69\x73\x4C\x65\x66\x74\x4D\x6F\x75\x73\x65\x42\x75\x74\x74\x6F\x6E","\x77\x69\x6C\x6C\x41\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x49\x74\x65\x6D\x73","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x63\x6F\x6E","\x20\x64\x69\x73\x61\x62\x6C\x65\x64","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x72\x65\x61\x74\x65\x53\x75\x62\x6D\x65\x6E\x75","\x65\x76\x65\x6E\x74\x52\x65\x63\x65\x69\x76\x65\x72","\x61\x63\x74\x69\x76\x65\x52\x6F\x77","\x68\x69\x64\x65\x53\x75\x62\x6D\x65\x6E\x75","\x73\x68\x6F\x77\x53\x75\x62\x6D\x65\x6E\x75","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x74\x65\x6D\x48\x6F\x76\x65\x72","\x30\x20\x30\x20\x30\x20\x30\x70\x78","\x63\x6F\x6C\x53\x70\x61\x6E","\x32","\x73\x68\x6F\x77\x4D\x65\x6E\x75","\x63\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x73\x65\x74\x47\x72\x61\x70\x68","\x67\x72\x61\x70\x68","\x61\x75\x74\x6F\x53\x61\x76\x65\x44\x65\x6C\x61\x79","\x61\x75\x74\x6F\x53\x61\x76\x65\x54\x68\x72\x6F\x74\x74\x6C\x65","\x61\x75\x74\x6F\x53\x61\x76\x65\x54\x68\x72\x65\x73\x68\x6F\x6C\x64","\x69\x67\x6E\x6F\x72\x65\x64\x43\x68\x61\x6E\x67\x65\x73","\x6C\x61\x73\x74\x53\x6E\x61\x70\x73\x68\x6F\x74","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x73\x74\x6F\x70\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x73\x74\x65\x70\x73","\x65\x61\x73\x65","\x73\x74\x65\x70","\x61\x6E\x69\x6D\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x44\x65\x6C\x74\x61","\x69\x73\x56\x65\x72\x74\x65\x78","\x6D\x6F\x76\x65\x53\x74\x61\x74\x65","\x73\x74\x6F\x70\x52\x65\x63\x75\x72\x73\x69\x6F\x6E","\x67\x65\x74\x4F\x72\x69\x67\x69\x6E\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x69\x6D\x61\x67\x65\x73","\x61\x6C\x74","\x70\x75\x74\x49\x6D\x61\x67\x65","\x67\x65\x74\x49\x6D\x61\x67\x65","\x66\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x6E\x63\x6C\x75\x64\x65\x4F\x76\x65\x72\x6C\x61\x79\x73","\x64\x72\x61\x77\x53\x74\x61\x74\x65","\x64\x72\x61\x77\x43\x65\x6C\x6C\x53\x74\x61\x74\x65","\x76\x69\x73\x69\x74\x53\x74\x61\x74\x65\x73\x52\x65\x63\x75\x72\x73\x69\x76\x65","\x64\x72\x61\x77\x4F\x76\x65\x72\x6C\x61\x79\x73","\x70\x61\x69\x6E\x74","\x72\x65\x73\x74\x6F\x72\x65","\x6F\x76\x65\x72\x6C\x61\x79\x73","\x63\x6F\x6E\x76\x65\x72\x74\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x72\x6C\x43\x6F\x6E\x76\x65\x72\x74\x65\x72","\x73\x74\x61\x74\x65\x73","\x70\x61\x74\x68","\x72\x6F\x74\x61\x74\x65\x48\x74\x6D\x6C","\x6C\x61\x73\x74\x58","\x6C\x61\x73\x74\x59","\x6D\x6F\x76\x65\x4F\x70","\x4D","\x6C\x69\x6E\x65\x4F\x70","\x4C","\x71\x75\x61\x64\x4F\x70","\x51","\x63\x75\x72\x76\x65\x4F\x70","\x43","\x63\x6C\x6F\x73\x65\x4F\x70","\x5A","\x70\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x33\x20\x33","\x66\x6C\x61\x74","\x6D\x69\x74\x65\x72","\x23\x30\x30\x30\x30\x30\x30","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x50\x41\x43\x49\x54\x59","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x46\x46\x53\x45\x54\x5F\x58","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x46\x46\x53\x45\x54\x5F\x59","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4F\x70","\x72\x6F\x74\x61\x74\x65\x50\x6F\x69\x6E\x74","\x70\x6F\x70","\x73\x65\x74\x41\x6C\x70\x68\x61","\x61\x6C\x70\x68\x61","\x73\x65\x74\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x47\x72\x61\x64\x69\x65\x6E\x74","\x66\x69\x6C\x6C\x41\x6C\x70\x68\x61","\x67\x72\x61\x64\x69\x65\x6E\x74\x41\x6C\x70\x68\x61","\x73\x65\x74\x53\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x53\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x65\x74\x44\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x73\x65\x74\x4C\x69\x6E\x65\x43\x61\x70","\x6C\x69\x6E\x65\x43\x61\x70","\x73\x65\x74\x4C\x69\x6E\x65\x4A\x6F\x69\x6E","\x6C\x69\x6E\x65\x4A\x6F\x69\x6E","\x73\x65\x74\x4D\x69\x74\x65\x72\x4C\x69\x6D\x69\x74","\x6D\x69\x74\x65\x72\x4C\x69\x6D\x69\x74","\x73\x65\x74\x46\x6F\x6E\x74\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x53\x69\x7A\x65","\x73\x65\x74\x46\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x73\x65\x74\x46\x6F\x6E\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x43\x6F\x6C\x6F\x72","\x73\x68\x61\x64\x6F\x77\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x41\x6C\x70\x68\x61","\x73\x68\x61\x64\x6F\x77\x41\x6C\x70\x68\x61","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x4F\x66\x66\x73\x65\x74","\x73\x68\x61\x64\x6F\x77\x44\x78","\x73\x68\x61\x64\x6F\x77\x44\x79","\x62\x65\x67\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x71\x75\x61\x64\x54\x6F","\x63\x75\x72\x76\x65\x54\x6F","\x61\x72\x63\x54\x6F","\x61\x72\x63\x54\x6F\x43\x75\x72\x76\x65\x73","\x65\x6E\x64","\x77\x72\x69\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x73","\x65\x78\x74\x65\x6E\x64","\x74\x65\x78\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6D\x70\x72\x65\x73\x73\x65\x64","\x66\x6F\x6E\x74\x66\x61\x6D\x69\x6C\x79","\x66\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x73\x69\x7A\x65","\x73\x68\x61\x64\x6F\x77\x63\x6F\x6C\x6F\x72","\x73\x68\x61\x64\x6F\x77\x61\x6C\x70\x68\x61","\x73\x68\x61\x64\x6F\x77\x6F\x66\x66\x73\x65\x74","\x74\x6F\x46\x69\x78\x65\x64","\x72\x6F\x74\x61\x74\x65","\x74\x68\x65\x74\x61","\x63\x78","\x63\x79","\x66\x69\x6C\x6C\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74","\x63\x31","\x63\x32","\x77","\x68","\x61\x6C\x70\x68\x61\x31","\x61\x6C\x70\x68\x61\x32","\x73\x74\x72\x6F\x6B\x65\x63\x6F\x6C\x6F\x72","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x64\x61\x73\x68\x70\x61\x74\x74\x65\x72\x6E","\x70\x61\x74\x74\x65\x72\x6E","\x6C\x69\x6E\x65\x63\x61\x70","\x63\x61\x70","\x6C\x69\x6E\x65\x6A\x6F\x69\x6E","\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74","\x6C\x69\x6D\x69\x74","\x66\x6F\x6E\x74\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x62\x6F\x72\x64\x65\x72\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x73\x74\x79\x6C\x65","\x72\x65\x63\x74","\x72\x6F\x75\x6E\x64\x72\x65\x63\x74","\x63\x6F\x6E\x76\x65\x72\x74","\x61\x73\x70\x65\x63\x74","\x71\x75\x61\x64","\x78\x31","\x79\x31","\x78\x32","\x79\x32","\x63\x75\x72\x76\x65","\x78\x33","\x79\x33","\x69\x73\x4E\x6F\x64\x65","\x73\x74\x72","\x77\x72\x61\x70","\x66\x69\x6C\x6C","\x63\x6C\x69\x70","\x73\x74\x72\x6F\x6B\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x66\x69\x6C\x6C\x73\x74\x72\x6F\x6B\x65","\x67\x72\x61\x64\x69\x65\x6E\x74\x73","\x64\x65\x66\x73","\x73\x74\x79\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x61\x74\x63\x68\x48\x74\x6D\x6C\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x66\x6F\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x72\x6F\x6B\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x72\x65\x66\x43\x6F\x75\x6E\x74","\x62\x6C\x6F\x63\x6B\x49\x6D\x61\x67\x65\x50\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x73\x76\x67\x7B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A","\x3B\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A","\x3B\x66\x69\x6C\x6C\x3A\x6E\x6F\x6E\x65\x3B\x73\x74\x72\x6F\x6B\x65\x2D\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74\x3A\x31\x30\x7D","\x4E\x53\x5F\x53\x56\x47","\x78\x6D\x6C\x6E\x73","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x64\x69\x65\x6E\x74\x49\x64","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x53\x4F\x55\x54\x48","\x73","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x45\x41\x53\x54","\x65","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4E\x4F\x52\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x57\x45\x53\x54","\x6D\x78\x2D\x67\x72\x61\x64\x69\x65\x6E\x74\x2D","\x67\x65\x74\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x69\x64","\x63\x72\x65\x61\x74\x65\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74","\x6C\x69\x6E\x65\x61\x72\x47\x72\x61\x64\x69\x65\x6E\x74","\x30\x25","\x3B\x73\x74\x6F\x70\x2D\x6F\x70\x61\x63\x69\x74\x79\x3A","\x6F\x66\x66\x73\x65\x74","\x73\x74\x6F\x70\x2D\x63\x6F\x6C\x6F\x72\x3A","\x61\x64\x64\x4E\x6F\x64\x65","\x64","\x75\x70\x64\x61\x74\x65\x46\x69\x6C\x6C","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77","\x63\x72\x65\x61\x74\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x70\x6F\x69\x6E\x74\x65\x72\x2D\x65\x76\x65\x6E\x74\x73","\x61\x6C\x6C","\x66\x69\x6C\x6C\x2D\x6F\x70\x61\x63\x69\x74\x79","\x75\x72\x6C\x28\x23","\x73\x74\x72\x6F\x6B\x65\x2D\x6F\x70\x61\x63\x69\x74\x79","\x73\x74\x72\x6F\x6B\x65\x2D\x77\x69\x64\x74\x68","\x75\x70\x64\x61\x74\x65\x53\x74\x72\x6F\x6B\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x73\x74\x72\x6F\x6B\x65\x2D\x64\x61\x73\x68\x61\x72\x72\x61\x79","\x63\x72\x65\x61\x74\x65\x44\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x73\x74\x72\x6F\x6B\x65\x2D\x6C\x69\x6E\x65\x6A\x6F\x69\x6E","\x62\x75\x74\x74","\x73\x74\x72\x6F\x6B\x65\x2D\x6C\x69\x6E\x65\x63\x61\x70","\x73\x74\x72\x6F\x6B\x65\x2D\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x68\x69\x74\x65","\x29\x73\x63\x61\x6C\x65\x28","\x29\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x72\x6F\x74\x61\x74\x65\x28","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x43\x78","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x43\x79","\x72\x78","\x72\x79","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x53","\x78\x6C\x69\x6E\x6B\x3A\x68\x72\x65\x66","\x70\x72\x65\x73\x65\x72\x76\x65\x41\x73\x70\x65\x63\x74\x52\x61\x74\x69\x6F","\x73\x63\x61\x6C\x65\x28","\x70\x6F\x69\x6E\x74\x65\x72\x2D\x65\x76\x65\x6E\x74\x73\x3A\x6E\x6F\x6E\x65","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A","\x70\x78\x3B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A","\x3B\x63\x6F\x6C\x6F\x72\x3A","\x3B\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A","\x70\x78\x3B","\x46\x4F\x4E\x54\x5F\x42\x4F\x4C\x44","\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x62\x6F\x6C\x64\x3B","\x46\x4F\x4E\x54\x5F\x49\x54\x41\x4C\x49\x43","\x66\x6F\x6E\x74\x2D\x73\x74\x79\x6C\x65\x3A\x69\x74\x61\x6C\x69\x63\x3B","\x46\x4F\x4E\x54\x5F\x55\x4E\x44\x45\x52\x4C\x49\x4E\x45","\x66\x6F\x6E\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E\x3A\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65\x3B","\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x63\x65\x6E\x74\x65\x72\x3B","\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x72\x69\x67\x68\x74\x3B","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A","\x62\x6F\x72\x64\x65\x72\x3A\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20","\x26\x61\x6D\x70\x3B\x67\x74\x3B","\x26\x61\x6D\x70\x3B\x6C\x74\x3B","\x3C\x64\x69\x76\x20\x78\x6D\x6C\x6E\x73\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C\x22\x20\x73\x74\x79\x6C\x65\x3D\x22\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B","\x22\x3E","\x3C\x2F\x64\x69\x76\x3E","\x3C\x68\x72\x20\x2F\x3E","\x3C\x62\x72\x20\x2F\x3E","\x3C\x64\x69\x76\x20\x78\x6D\x6C\x6E\x73\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C\x22\x20\x73\x74\x79\x6C\x65\x3D\x22","\x68\x74\x6D\x6C","\x76\x65\x72\x74\x69\x63\x61\x6C\x2D\x61\x6C\x69\x67\x6E\x3A\x74\x6F\x70\x3B","\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x68\x69\x64\x64\x65\x6E\x3B","\x6D\x61\x78\x2D\x68\x65\x69\x67\x68\x74\x3A","\x77\x69\x64\x74\x68\x3A","\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x6E\x6F\x72\x6D\x61\x6C\x3B","\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x6E\x6F\x77\x72\x61\x70\x3B","\x66\x6F\x72\x65\x69\x67\x6E\x4F\x62\x6A\x65\x63\x74","\x70\x6C\x61\x69\x6E\x54\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x43\x6C\x69\x70","\x6D\x78\x2D\x63\x6C\x69\x70\x2D","\x63\x6C\x69\x70\x50\x61\x74\x68","\x63\x6C\x69\x70\x2D\x70\x61\x74\x68","\x75\x70\x64\x61\x74\x65\x46\x6F\x6E\x74","\x74\x65\x78\x74\x2D\x61\x6E\x63\x68\x6F\x72","\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65","\x61\x64\x64\x54\x65\x78\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74","\x62\x6F\x6C\x64","\x66\x6F\x6E\x74\x2D\x73\x74\x79\x6C\x65","\x69\x74\x61\x6C\x69\x63","\x74\x65\x78\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x67\x65\x74\x42\x42\x6F\x78","\x66\x6F\x6E\x74\x57\x65\x69\x67\x68\x74","\x3C\x62\x72\x2F\x3E","\x6D\x6F\x64","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28\x30\x2E\x35\x2C\x20\x30\x2E\x35\x29","\x6D","\x6C","\x63","\x72\x6F\x74\x61\x74\x65\x64\x48\x74\x6D\x6C\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x76\x6D\x6C\x53\x63\x61\x6C\x65","\x20\x65","\x63\x6F\x6F\x72\x64\x73\x69\x7A\x65","\x73\x74\x72\x6F\x6B\x65\x77\x65\x69\x67\x68\x74","\x73\x74\x72\x6F\x6B\x65\x64","\x63\x72\x65\x61\x74\x65\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x46\x69\x6C\x6C","\x63\x72\x65\x61\x74\x65\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x46\x69\x6C\x6C","\x66\x69\x6C\x6C\x65\x64","\x3A\x66\x69\x6C\x6C","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x74\x69\x6C\x65","\x63\x6F\x6C\x6F\x72\x32","\x66\x6C\x69\x70","\x61\x6E\x67\x6C\x65","\x4F\x46\x46\x49\x43\x45\x5F\x50\x52\x45\x46\x49\x58","\x3A\x6F\x70\x61\x63\x69\x74\x79\x32","\x3A\x73\x74\x72\x6F\x6B\x65","\x65\x6E\x64\x63\x61\x70","\x6A\x6F\x69\x6E\x73\x74\x79\x6C\x65","\x31\x30","\x64\x61\x73\x68\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x6D\x6C\x44\x61\x73\x68\x53\x74\x79\x6C\x65","\x64\x61\x73\x68","\x30\x20\x32","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77\x46\x69\x6C\x6C","\x3A\x73\x68\x61\x70\x65","\x63\x20","\x63\x72\x65\x61\x74\x65\x52\x65\x63\x74","\x3A\x72\x65\x63\x74","\x3A\x72\x6F\x75\x6E\x64\x72\x65\x63\x74","\x61\x72\x63\x73\x69\x7A\x65","\x3A\x6F\x76\x61\x6C","\x61\x74\x6D\x6F\x73\x74","\x69\x67\x6E\x6F\x72\x65","\x66\x72\x61\x6D\x65","\x31\x38\x30","\x66\x6F\x6E\x74\x44\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x3A\x67\x72\x6F\x75\x70","\x72\x65\x6C\x61\x74\x69\x76\x65","\x67\x65\x74\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74\x41\x73\x50\x6F\x69\x6E\x74","\x6E\x6F\x72\x6D\x61\x6C","\x6D\x61\x78\x48\x65\x69\x67\x68\x74","\x67\x72\x6F\x75\x70","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x4D\x61\x74\x72\x69\x78\x28\x4D\x31\x31\x3D","\x2C\x20\x4D\x31\x32\x3D","\x2C\x20\x4D\x32\x31\x3D","\x2C\x20\x4D\x32\x32\x3D","\x2C\x20\x73\x69\x7A\x69\x6E\x67\x4D\x65\x74\x68\x6F\x64\x3D\x27\x61\x75\x74\x6F\x20\x65\x78\x70\x61\x6E\x64\x27\x29","\x3A\x70\x61\x74\x68","\x74\x65\x78\x74\x70\x61\x74\x68\x6F\x6B","\x6D\x20","\x20\x6C\x20","\x3A\x74\x65\x78\x74\x70\x61\x74\x68","\x76\x2D\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A","\x73\x74\x72\x69\x6E\x67","\x73\x65\x74\x53\x74\x61\x74\x65\x73","\x67\x75\x69\x64\x65\x58","\x67\x75\x69\x64\x65\x59","\x67\x65\x74\x47\x75\x69\x64\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x63\x72\x65\x61\x74\x65\x47\x75\x69\x64\x65\x53\x68\x61\x70\x65","\x69\x73\x44\x61\x73\x68\x65\x64","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x70\x6F\x69\x6E\x74\x73","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x64\x65\x73\x63","\x70\x61\x72\x73\x65\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x70\x61\x72\x73\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x63\x61\x6C\x69\x7A\x65\x64","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x77\x30","\x68\x30","\x62\x67\x4E\x6F\x64\x65","\x66\x67\x4E\x6F\x64\x65","\x66\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x70\x61\x72\x73\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x65\x76\x61\x6C\x75\x61\x74\x65\x54\x65\x78\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x65\x76\x61\x6C\x75\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x6F\x63\x61\x6C\x69\x7A\x65\x64","\x65\x76\x61\x6C","\x64\x72\x61\x77\x53\x68\x61\x70\x65","\x64\x72\x61\x77\x43\x68\x69\x6C\x64\x72\x65\x6E","\x63\x6F\x6D\x70\x75\x74\x65\x41\x73\x70\x65\x63\x74","\x69\x6E\x68\x65\x72\x69\x74","\x67\x65\x74\x4E\x75\x6D\x62\x65\x72","\x64\x72\x61\x77\x4E\x6F\x64\x65","\x66\x69\x78\x65\x64","\x61\x72\x63","\x78\x2D\x61\x78\x69\x73\x2D\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x6C\x61\x72\x67\x65\x2D\x61\x72\x63\x2D\x66\x6C\x61\x67","\x73\x77\x65\x65\x70\x2D\x66\x6C\x61\x67","\x52\x45\x43\x54\x41\x4E\x47\x4C\x45\x5F\x52\x4F\x55\x4E\x44\x49\x4E\x47\x5F\x46\x41\x43\x54\x4F\x52","\x61\x6C\x69\x67\x6E\x2D\x73\x68\x61\x70\x65","\x69\x6E\x63\x6C\x75\x64\x65\x2D\x73\x68\x61\x70\x65","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C","\x62\x6F\x75\x6E\x64\x73","\x62\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x73\x76\x67\x53\x74\x72\x6F\x6B\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x73\x74\x65\x6E\x63\x69\x6C\x50\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x69\x73\x50\x61\x72\x73\x65\x56\x6D\x6C","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x67\x65\x74\x53\x76\x67\x53\x63\x72\x65\x65\x6E\x4F\x66\x66\x73\x65\x74","\x63\x72\x65\x61\x74\x65\x53\x76\x67","\x63\x72\x65\x61\x74\x65\x48\x74\x6D\x6C","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x75\x70\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x73\x46\x72\x6F\x6D\x50\x6F\x69\x6E\x74\x73","\x63\x68\x65\x63\x6B\x42\x6F\x75\x6E\x64\x73","\x72\x65\x64\x72\x61\x77\x48\x74\x6D\x6C\x53\x68\x61\x70\x65","\x72\x65\x64\x72\x61\x77\x53\x68\x61\x70\x65","\x75\x70\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C\x47\x72\x6F\x75\x70","\x63\x72\x65\x61\x74\x65\x43\x61\x6E\x76\x61\x73","\x68\x61\x73\x43\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x6C\x61\x73\x74\x43\x68\x69\x6C\x64","\x62\x65\x66\x6F\x72\x65\x65\x6E\x64","\x69\x6E\x73\x65\x72\x74\x41\x64\x6A\x61\x63\x65\x6E\x74\x48\x54\x4D\x4C","\x61\x64\x64\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x46\x69\x6C\x74\x65\x72","\x64\x65\x73\x74\x72\x6F\x79\x43\x61\x6E\x76\x61\x73","\x75\x70\x64\x61\x74\x65\x56\x6D\x6C\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x78\x52\x65\x66\x43\x6F\x75\x6E\x74","\x6F\x6C\x64\x47\x72\x61\x64\x69\x65\x6E\x74\x73","\x72\x65\x6C\x65\x61\x73\x65\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74\x73","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x75\x70\x64\x61\x74\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x43\x61\x6E\x76\x61\x73","\x70\x61\x69\x6E\x74\x53\x74\x65\x6E\x63\x69\x6C\x53\x68\x61\x70\x65","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x67\x65\x74\x47\x72\x61\x64\x69\x65\x6E\x74\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x64\x64\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x63\x74\x61\x6E\x67\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x70\x61\x69\x6E\x74\x47\x6C\x61\x73\x73\x45\x66\x66\x65\x63\x74","\x23\x66\x66\x66\x66\x66\x66","\x69\x73\x52\x6F\x75\x6E\x64\x65\x64","\x73\x74\x65\x6E\x63\x69\x6C\x46\x6C\x69\x70\x48","\x73\x74\x65\x6E\x63\x69\x6C\x46\x6C\x69\x70\x56","\x73\x65\x74\x43\x75\x72\x73\x6F\x72","\x67\x65\x74\x43\x75\x72\x73\x6F\x72","\x63\x72\x65\x61\x74\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x61\x75\x67\x6D\x65\x6E\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x67\x65\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x67\x65\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x67\x65\x74\x54\x65\x78\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x76\x65\x72\x74\x69\x63\x61\x6C\x54\x65\x78\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28\x27","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66\x27\x29","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x6D\x61\x72\x6B\x65\x72\x73","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x46\x69\x6C\x74\x65\x72\x73","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x43\x6F\x6C\x6F\x72\x73","\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x73\x6F\x6C\x69\x64","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x64\x72\x6F\x70\x53\x68\x61\x64\x6F\x77\x20\x28\x4F\x66\x66\x58\x3D\x27","\x27\x2C\x20\x4F\x66\x66\x59\x3D\x27","\x27\x2C\x20\x43\x6F\x6C\x6F\x72\x3D\x27","\x27\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x67\x72\x61\x64\x69\x65\x6E\x74\x28\x73\x74\x61\x72\x74\x43\x6F\x6C\x6F\x72\x53\x74\x72\x3D\x27","\x27\x2C\x20\x65\x6E\x64\x43\x6F\x6C\x6F\x72\x53\x74\x72\x3D\x27","\x27\x2C\x20\x67\x72\x61\x64\x69\x65\x6E\x74\x54\x79\x70\x65\x3D\x27","\x70\x61\x69\x6E\x74\x4C\x69\x6E\x65","\x61\x72\x72\x6F\x77\x57\x69\x64\x74\x68","\x41\x52\x52\x4F\x57\x5F\x57\x49\x44\x54\x48","\x41\x52\x52\x4F\x57\x5F\x53\x50\x41\x43\x49\x4E\x47","\x41\x52\x52\x4F\x57\x5F\x53\x49\x5A\x45","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x53\x54\x59\x4C\x45","\x63\x6C\x69\x70\x70\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x4C\x65\x66\x74","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x52\x69\x67\x68\x74","\x72\x65\x70\x6C\x61\x63\x65\x4C\x69\x6E\x65\x66\x65\x65\x64\x73","\x69\x67\x6E\x6F\x72\x65\x43\x6C\x69\x70\x70\x65\x64\x53\x74\x72\x69\x6E\x67\x53\x69\x7A\x65","\x69\x67\x6E\x6F\x72\x65\x53\x74\x72\x69\x6E\x67\x53\x69\x7A\x65","\x74\x65\x78\x74\x44\x69\x76","\x75\x70\x64\x61\x74\x65\x53\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x75\x70\x64\x61\x74\x65\x56\x61\x6C\x75\x65","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x46\x69\x6C\x74\x65\x72","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x4F\x72\x69\x67\x69\x6E","\x25\x20","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x25\x2C","\x25\x29\x73\x63\x61\x6C\x65\x28","\x29\x20\x72\x6F\x74\x61\x74\x65\x28","\x64\x65\x67\x29","\x30\x25\x20\x30\x25","\x25\x29","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20","\x3C\x64\x69\x76\x20\x73\x74\x79\x6C\x65\x3D\x22\x7A\x6F\x6F\x6D\x3A\x31\x3B","\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5F\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x3B\x70\x61\x64\x64\x69\x6E\x67\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x31\x70\x78\x3B\x70\x61\x64\x64\x69\x6E\x67\x2D\x72\x69\x67\x68\x74\x3A\x31\x70\x78\x3B\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A","\x75\x70\x64\x61\x74\x65\x4D\x61\x72\x67\x69\x6E","\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x70\x72\x65\x73\x65\x72\x76\x65\x49\x6D\x61\x67\x65\x41\x73\x70\x65\x63\x74","\x69\x6D\x61\x67\x65\x46\x6C\x69\x70\x48","\x69\x6D\x61\x67\x65\x46\x6C\x69\x70\x56","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x72\x6F\x74\x61\x74\x69\x6F\x6E\x3D\x32\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x6D\x69\x72\x72\x6F\x72\x3D\x31\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x72\x6F\x74\x61\x74\x69\x6F\x6E\x3D\x32\x2C\x20\x6D\x69\x72\x72\x6F\x72\x3D\x31\x29","\x69\x6D\x61\x67\x65\x53\x69\x7A\x65","\x44\x45\x46\x41\x55\x4C\x54\x5F\x49\x4D\x41\x47\x45\x53\x49\x5A\x45","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x69\x7A\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72","\x70\x61\x69\x6E\x74\x49\x6D\x61\x67\x65","\x70\x61\x69\x6E\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72","\x67\x65\x74\x49\x6D\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x53\x54\x59\x4C\x45\x5F\x43\x55\x52\x56\x45\x44","\x70\x61\x69\x6E\x74\x43\x75\x72\x76\x65\x64\x4C\x69\x6E\x65","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x53\x49\x5A\x45","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x53\x49\x5A\x45","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x46\x49\x4C\x4C","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x46\x49\x4C\x4C","\x70\x61\x69\x6E\x74\x52\x6F\x75\x6E\x64\x65\x64\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x70\x61\x69\x6E\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x70\x61\x69\x6E\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x75\x73\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x6D\x6F\x76\x65\x43\x65\x6C\x6C","\x67\x65\x74\x47\x72\x61\x70\x68","\x67\x65\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x72\x61\x76\x65\x72\x73\x65","\x67\x65\x74\x45\x64\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x41\x74","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x69\x73\x56\x65\x72\x74\x65\x78\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x56\x65\x72\x74\x65\x78\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x45\x64\x67\x65\x49\x67\x6E\x6F\x72\x65\x64","\x73\x65\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x4F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x4F\x66\x66\x73\x65\x74","\x69\x73\x41\x6E\x63\x65\x73\x74\x6F\x72","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x65\x74\x45\x64\x67\x65\x50\x6F\x69\x6E\x74\x73","\x73\x65\x74\x52\x65\x6C\x61\x74\x69\x76\x65","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x65\x74\x56\x65\x72\x74\x65\x78\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x56\x65\x72\x74\x65\x78\x42\x6F\x75\x6E\x64\x73","\x61\x72\x72\x61\x6E\x67\x65\x47\x72\x6F\x75\x70\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x56\x65\x72\x74\x69\x63\x65\x73","\x67\x65\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78\x46\x72\x6F\x6D\x47\x65\x6F\x6D\x65\x74\x72\x79","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x67\x65\x74\x53\x74\x61\x72\x74\x53\x69\x7A\x65","\x78\x30","\x79\x30","\x6B\x65\x65\x70\x46\x69\x72\x73\x74\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x72\x65\x73\x69\x7A\x65\x50\x61\x72\x65\x6E\x74","\x72\x65\x73\x69\x7A\x65\x4C\x61\x73\x74","\x69\x73\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x67\x65\x74\x49\x6E\x64\x65\x78","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x53\x69\x7A\x65","\x69\x73\x4C\x61\x79\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x72\x65\x73\x69\x7A\x65\x56\x65\x72\x74\x69\x63\x65\x73","\x69\x6E\x76\x65\x72\x74","\x67\x72\x6F\x75\x70\x50\x61\x64\x64\x69\x6E\x67","\x70\x61\x72\x65\x6E\x74\x73\x43\x68\x61\x6E\x67\x65\x64","\x6D\x6F\x76\x65\x54\x72\x65\x65","\x6C\x65\x76\x65\x6C\x44\x69\x73\x74\x61\x6E\x63\x65","\x6E\x6F\x64\x65\x44\x69\x73\x74\x61\x6E\x63\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73","\x70\x72\x65\x66\x48\x6F\x7A\x45\x64\x67\x65\x53\x65\x70","\x70\x72\x65\x66\x56\x65\x72\x74\x45\x64\x67\x65\x4F\x66\x66","\x6D\x69\x6E\x45\x64\x67\x65\x4A\x65\x74\x74\x79","\x63\x68\x61\x6E\x6E\x65\x6C\x42\x75\x66\x66\x65\x72","\x65\x64\x67\x65\x52\x6F\x75\x74\x69\x6E\x67","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x54\x72\x65\x65\x52\x6F\x6F\x74\x73","\x64\x66\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x4C\x61\x79\x6F\x75\x74","\x6D\x6F\x76\x65\x4E\x6F\x64\x65","\x61\x64\x6A\x75\x73\x74\x50\x61\x72\x65\x6E\x74\x73","\x6C\x6F\x63\x61\x6C\x45\x64\x67\x65\x50\x72\x6F\x63\x65\x73\x73\x69\x6E\x67","\x6E\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x4E\x6F\x64\x65","\x61\x74\x74\x61\x63\x68\x50\x61\x72\x65\x6E\x74","\x6C\x61\x79\x6F\x75\x74\x4C\x65\x61\x66","\x6F\x66\x66\x73\x65\x74\x58","\x6F\x66\x66\x73\x65\x74\x59","\x75\x70\x70\x65\x72\x48\x65\x61\x64","\x63\x6F\x6E\x74\x6F\x75\x72","\x63\x72\x65\x61\x74\x65\x4C\x69\x6E\x65","\x6C\x6F\x77\x65\x72\x48\x65\x61\x64","\x75\x70\x70\x65\x72\x54\x61\x69\x6C","\x6C\x6F\x77\x65\x72\x54\x61\x69\x6C","\x6D\x65\x72\x67\x65","\x62\x72\x69\x64\x67\x65","\x73\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x70\x72\x6F\x63\x65\x73\x73\x4E\x6F\x64\x65\x4F\x75\x74\x67\x6F\x69\x6E\x67","\x67\x65\x74\x45\x64\x67\x65\x73\x42\x65\x74\x77\x65\x65\x6E","\x77\x65\x69\x67\x68\x74\x65\x64\x56\x61\x6C\x75\x65","\x6E\x75\x64\x67\x65","\x76\x69\x73\x69\x74\x65\x64","\x72\x61\x6E\x6B\x49\x6E\x64\x65\x78","\x75\x73\x65\x49\x6E\x70\x75\x74\x4F\x72\x69\x67\x69\x6E","\x64\x69\x73\x61\x62\x6C\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x66\x6F\x72\x63\x65\x43\x6F\x6E\x73\x74\x61\x6E\x74","\x66\x6F\x72\x63\x65\x43\x6F\x6E\x73\x74\x61\x6E\x74\x53\x71\x75\x61\x72\x65\x64","\x6D\x69\x6E\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74","\x6D\x61\x78\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74","\x6D\x69\x6E\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74\x53\x71\x75\x61\x72\x65\x64","\x69\x6E\x69\x74\x69\x61\x6C\x54\x65\x6D\x70","\x74\x65\x6D\x70\x65\x72\x61\x74\x75\x72\x65","\x6D\x61\x78\x49\x74\x65\x72\x61\x74\x69\x6F\x6E\x73","\x69\x74\x65\x72\x61\x74\x69\x6F\x6E","\x61\x6C\x6C\x6F\x77\x65\x64\x54\x6F\x52\x75\x6E","\x76\x65\x72\x74\x65\x78\x41\x72\x72\x61\x79","\x67\x65\x74\x42\x6F\x75\x6E\x64\x73","\x69\x6E\x64\x69\x63\x65\x73","\x64\x69\x73\x70\x58","\x64\x69\x73\x70\x59","\x63\x65\x6C\x6C\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x69\x73\x4D\x6F\x76\x65\x61\x62\x6C\x65","\x6E\x65\x69\x67\x68\x62\x6F\x75\x72\x73","\x72\x61\x64\x69\x75\x73","\x72\x61\x64\x69\x75\x73\x53\x71\x75\x61\x72\x65\x64","\x67\x65\x74\x4F\x70\x70\x6F\x73\x69\x74\x65\x73","\x72\x65\x73\x65\x74\x45\x64\x67\x65","\x63\x61\x6C\x63\x52\x65\x70\x75\x6C\x73\x69\x6F\x6E","\x63\x61\x6C\x63\x41\x74\x74\x72\x61\x63\x74\x69\x6F\x6E","\x63\x61\x6C\x63\x50\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x72\x65\x64\x75\x63\x65\x54\x65\x6D\x70\x65\x72\x61\x74\x75\x72\x65","\x72\x61\x6E\x64\x6F\x6D","\x6D\x6F\x76\x65\x43\x69\x72\x63\x6C\x65","\x67\x65\x74\x52\x61\x64\x69\x75\x73","\x63\x69\x72\x63\x6C\x65","\x66\x69\x6E\x64\x50\x61\x72\x61\x6C\x6C\x65\x6C\x73","\x67\x65\x74\x45\x64\x67\x65\x49\x64","\x72\x6F\x75\x74\x65","\x6C\x61\x79\x6F\x75\x74\x73","\x6D\x61\x73\x74\x65\x72","\x70\x6C\x61\x63\x65\x4C\x61\x62\x65\x6C\x73","\x61\x76\x6F\x69\x64","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x74\x65\x6D\x70","\x6D\x61\x78\x52\x61\x6E\x6B","\x6D\x69\x6E\x52\x61\x6E\x6B","\x6E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x70\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x4E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x65\x6E\x65\x72\x61\x6C\x50\x75\x72\x70\x6F\x73\x65\x56\x61\x72\x69\x61\x62\x6C\x65","\x73\x65\x74\x47\x65\x6E\x65\x72\x61\x6C\x50\x75\x72\x70\x6F\x73\x65\x56\x61\x72\x69\x61\x62\x6C\x65","\x73\x65\x74\x58","\x73\x65\x74\x59","\x63\x6F\x6E\x6E\x65\x63\x74\x73\x41\x73\x54\x61\x72\x67\x65\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x73\x41\x73\x53\x6F\x75\x72\x63\x65","\x68\x61\x73\x68\x43\x6F\x64\x65","\x67\x65\x74\x52\x61\x6E\x6B\x56\x61\x6C\x75\x65","\x67\x65\x74\x43\x6F\x72\x65\x43\x65\x6C\x6C","\x65\x64\x67\x65\x73","\x69\x73\x52\x65\x76\x65\x72\x73\x65\x64","\x74\x69\x67\x68\x74\x65\x6E\x54\x6F\x53\x6F\x75\x72\x63\x65","\x72\x6F\x6F\x74\x73","\x76\x65\x72\x74\x65\x78\x4D\x61\x70\x70\x65\x72","\x65\x64\x67\x65\x4D\x61\x70\x70\x65\x72","\x53\x4F\x55\x52\x43\x45\x53\x43\x41\x4E\x53\x54\x41\x52\x54\x52\x41\x4E\x4B","\x63\x72\x65\x61\x74\x65\x49\x6E\x74\x65\x72\x6E\x61\x6C\x43\x65\x6C\x6C\x73","\x72\x61\x6E\x6B\x73","\x64\x66\x73\x43\x6F\x75\x6E\x74","\x69\x6E\x69\x74\x69\x61\x6C\x52\x61\x6E\x6B","\x73\x6C\x69\x63\x65","\x66\x69\x78\x52\x61\x6E\x6B\x73","\x65\x78\x74\x65\x6E\x64\x65\x64\x44\x66\x73","\x6E\x65\x73\x74\x65\x64\x42\x65\x73\x74\x52\x61\x6E\x6B\x73","\x63\x75\x72\x72\x65\x6E\x74\x42\x65\x73\x74\x43\x72\x6F\x73\x73\x69\x6E\x67\x73","\x69\x74\x65\x72\x61\x74\x69\x6F\x6E\x73\x57\x69\x74\x68\x6F\x75\x74\x49\x6D\x70\x72\x6F\x76\x65\x6D\x65\x6E\x74","\x6D\x61\x78\x4E\x6F\x49\x6D\x70\x72\x6F\x76\x65\x6D\x65\x6E\x74\x49\x74\x65\x72\x61\x74\x69\x6F\x6E\x73","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x43\x72\x6F\x73\x73\x69\x6E\x67\x73","\x77\x65\x69\x67\x68\x74\x65\x64\x4D\x65\x64\x69\x61\x6E","\x74\x72\x61\x6E\x73\x70\x6F\x73\x65","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x52\x61\x6E\x6B\x43\x72\x6F\x73\x73\x69\x6E\x67","\x6D\x65\x64\x69\x61\x6E\x52\x61\x6E\x6B","\x6D\x65\x64\x69\x61\x6E\x56\x61\x6C\x75\x65","\x6C\x65\x6E\x74\x68","\x67\x65\x74\x49\x6E\x63\x6F\x6D\x69\x6E\x67\x45\x64\x67\x65\x73","\x69\x6E\x74\x72\x61\x43\x65\x6C\x6C\x53\x70\x61\x63\x69\x6E\x67","\x69\x6E\x74\x65\x72\x52\x61\x6E\x6B\x43\x65\x6C\x6C\x53\x70\x61\x63\x69\x6E\x67","\x6F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x69\x6E\x69\x74\x69\x61\x6C\x58","\x70\x61\x72\x61\x6C\x6C\x65\x6C\x45\x64\x67\x65\x53\x70\x61\x63\x69\x6E\x67","\x6A\x65\x74\x74\x79\x50\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6C\x69\x6D\x69\x74\x58","\x63\x75\x72\x72\x65\x6E\x74\x58\x44\x65\x6C\x74\x61","\x77\x69\x64\x65\x73\x74\x52\x61\x6E\x6B","\x72\x61\x6E\x6B\x54\x6F\x70\x59","\x72\x61\x6E\x6B\x42\x6F\x74\x74\x6F\x6D\x59","\x77\x69\x64\x65\x73\x74\x52\x61\x6E\x6B\x56\x61\x6C\x75\x65","\x72\x61\x6E\x6B\x57\x69\x64\x74\x68\x73","\x72\x61\x6E\x6B\x59","\x66\x69\x6E\x65\x54\x75\x6E\x69\x6E\x67","\x50\x4F\x4C\x59\x4C\x49\x4E\x45","\x6E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x61\x63\x68\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x61\x63\x68\x65","\x70\x72\x69\x6E\x74\x53\x74\x61\x74\x75\x73","\x3D\x3D\x3D\x3D\x3D\x3D\x43\x6F\x6F\x72\x64\x20\x61\x73\x73\x69\x67\x6E\x6D\x65\x6E\x74\x20\x64\x65\x62\x75\x67\x3D\x3D\x3D\x3D\x3D\x3D\x3D","\x52\x61\x6E\x6B\x20","\x20\x3A\x20","\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D","\x69\x6E\x69\x74\x69\x61\x6C\x43\x6F\x6F\x72\x64\x73","\x6D\x69\x6E\x4E\x6F\x64\x65","\x6D\x65\x64\x69\x61\x6E\x50\x6F\x73","\x6D\x69\x6E\x50\x61\x74\x68","\x73\x65\x74\x43\x65\x6C\x6C\x4C\x6F\x63\x61\x74\x69\x6F\x6E\x73","\x6D\x65\x64\x69\x61\x6E\x58\x56\x61\x6C\x75\x65","\x72\x61\x6E\x6B\x4D\x65\x64\x69\x61\x6E\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x64\x57\x65\x69\x67\x68\x74\x65\x64\x56\x61\x6C\x75\x65","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x57\x69\x64\x65\x73\x74\x52\x61\x6E\x6B","\x72\x61\x6E\x6B\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x65\x64\x67\x65\x2E\x65\x64\x67\x65\x73\x20\x69\x73\x20\x6E\x75\x6C\x6C","\x41\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x63\x65\x6C\x6C\x20\x68\x61\x73\x20\x6E\x6F\x20\x62\x6F\x75\x6E\x64\x73","\x72\x65\x70\x6F\x73\x69\x74\x69\x6F\x6E\x56\x61\x6C\x69\x64","\x4D\x41\x58\x5F\x56\x41\x4C\x55\x45","\x4F\x52\x54\x48\x4F\x47\x4F\x4E\x41\x4C","\x43\x55\x52\x56\x45","\x73\x65\x74\x45\x64\x67\x65\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x73\x50\x6F\x72\x74","\x70\x72\x6F\x63\x65\x73\x73\x52\x65\x76\x65\x72\x73\x65\x64\x45\x64\x67\x65","\x64\x65\x74\x65\x72\x6D\x69\x6E\x69\x73\x74\x69\x63","\x6D\x6F\x76\x65\x50\x61\x72\x65\x6E\x74","\x70\x61\x72\x65\x6E\x74\x42\x6F\x72\x64\x65\x72","\x69\x6E\x74\x65\x72\x48\x69\x65\x72\x61\x72\x63\x68\x79\x53\x70\x61\x63\x69\x6E\x67","\x74\x72\x61\x76\x65\x72\x73\x65\x41\x6E\x63\x65\x73\x74\x6F\x72\x73","\x65\x64\x67\x65\x73\x43\x61\x63\x68\x65","\x72\x75\x6E","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x66\x69\x6E\x64\x52\x6F\x6F\x74\x73","\x63\x6F\x6E\x63\x61\x74","\x69\x73\x56\x61\x6C\x69\x64\x41\x6E\x63\x65\x73\x74\x6F\x72","\x66\x69\x6C\x74\x65\x72\x44\x65\x73\x63\x65\x6E\x64\x61\x6E\x74\x73","\x63\x79\x63\x6C\x65\x53\x74\x61\x67\x65","\x6C\x61\x79\x65\x72\x69\x6E\x67\x53\x74\x61\x67\x65","\x63\x72\x6F\x73\x73\x69\x6E\x67\x53\x74\x61\x67\x65","\x70\x6C\x61\x63\x65\x6D\x65\x6E\x74\x53\x74\x61\x67\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x64\x69\x74","\x73\x65\x74\x52\x6F\x6F\x74","\x6D\x61\x69\x6E\x74\x61\x69\x6E\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x49\x64\x73","\x70\x6F\x73\x74\x66\x69\x78","\x6E\x65\x78\x74\x49\x64","\x75\x70\x64\x61\x74\x65\x4C\x65\x76\x65\x6C","\x65\x6E\x64\x69\x6E\x67\x55\x70\x64\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x52\x6F\x6F\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x49\x64\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x49\x64\x73","\x69\x6E\x73\x65\x72\x74","\x66\x69\x6C\x74\x65\x72\x43\x65\x6C\x6C\x73","\x67\x65\x74\x44\x65\x73\x63\x65\x6E\x64\x61\x6E\x74\x73","\x72\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65\x64","\x63\x65\x6C\x6C\x41\x64\x64\x65\x64","\x69\x73\x52\x6F\x6F\x74","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65\x49\x64","\x73\x65\x74\x49\x64","\x69\x73\x4E\x75\x6D\x65\x72\x69\x63","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x4E\x65\x61\x72\x65\x73\x74\x43\x6F\x6D\x6D\x6F\x6E\x41\x6E\x63\x65\x73\x74\x6F\x72","\x67\x65\x74\x4F\x72\x69\x67\x69\x6E","\x50\x41\x54\x48\x5F\x53\x45\x50\x41\x52\x41\x54\x4F\x52","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x50\x61\x74\x68","\x70\x61\x72\x65\x6E\x74\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x43\x68\x69\x6C\x64\x72\x65\x6E","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x74\x65\x72\x6D\x69\x6E\x61\x6C\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x69\x6E\x73\x65\x72\x74\x45\x64\x67\x65","\x72\x65\x6D\x6F\x76\x65\x45\x64\x67\x65","\x67\x65\x74\x44\x69\x72\x65\x63\x74\x65\x64\x45\x64\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x4F\x75\x74\x67\x6F\x69\x6E\x67\x45\x64\x67\x65\x73","\x67\x65\x74\x54\x6F\x70\x6D\x6F\x73\x74\x43\x65\x6C\x6C\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x76\x61\x6C\x75\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x76\x61\x6C\x75\x65\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x6F\x6D\x65\x74\x72\x79\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x73\x74\x79\x6C\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x69\x73\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x73\x65\x74\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x76\x69\x73\x69\x62\x6C\x65\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x6D\x65\x72\x67\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x6D\x65\x72\x67\x65\x43\x68\x69\x6C\x64\x72\x65\x6E\x49\x6D\x70\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x73","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x49\x6D\x70\x6C","\x72\x65\x73\x74\x6F\x72\x65\x43\x6C\x6F\x6E\x65","\x63\x65\x6C\x6C\x43\x6C\x6F\x6E\x65\x64","\x70\x72\x65\x76\x69\x6F\x75\x73\x49\x6E\x64\x65\x78","\x69\x6E\x64\x65\x78","\x74\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x61\x74\x74\x72\x69\x62\x75\x74\x65","\x6F\x6E\x49\x6E\x69\x74","\x76\x65\x72\x74\x65\x78","\x65\x64\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x6D\x78\x54\x72\x61\x6E\x73\x69\x65\x6E\x74","\x69\x64\x20\x76\x61\x6C\x75\x65\x20\x70\x61\x72\x65\x6E\x74\x20\x73\x6F\x75\x72\x63\x65\x20\x74\x61\x72\x67\x65\x74\x20\x63\x68\x69\x6C\x64\x72\x65\x6E\x20\x65\x64\x67\x65\x73","\x73\x65\x74\x56\x65\x72\x74\x65\x78","\x73\x65\x74\x45\x64\x67\x65","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x50\x61\x72\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x49\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x6C\x6F\x6E\x65\x56\x61\x6C\x75\x65","\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x43\x4F\x4E\x54\x52\x4F\x4C\x5F\x50\x4F\x49\x4E\x54\x53","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x73\x6F\x75\x72\x63\x65\x50\x6F\x69\x6E\x74","\x74\x61\x72\x67\x65\x74\x50\x6F\x69\x6E\x74","\x73\x77\x61\x70","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x74\x61\x6E","\x70\x6F\x77","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x50\x72\x69\x6E\x74\x65\x72\x2D\x66\x72\x69\x65\x6E\x64\x6C\x79\x20\x76\x65\x72\x73\x69\x6F\x6E","\x70\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x61\x75\x74\x6F\x4F\x72\x69\x67\x69\x6E","\x70\x72\x69\x6E\x74\x4F\x76\x65\x72\x6C\x61\x79\x73","\x77\x6E\x64","\x70\x61\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x57\x69\x6E\x64\x6F\x77","\x67\x65\x74\x44\x6F\x63\x74\x79\x70\x65","\x3C\x6D\x65\x74\x61\x20\x68\x74\x74\x70\x2D\x65\x71\x75\x69\x76\x3D\x22\x58\x2D\x55\x41\x2D\x43\x6F\x6D\x70\x61\x74\x69\x62\x6C\x65\x22\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3D\x22\x49\x45\x3D\x38\x22\x3E","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x4F\x76\x65\x72\x6C\x61\x79","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x77\x72\x69\x74\x65\x48\x65\x61\x64","\x3C\x62\x6F\x64\x79\x20\x63\x6C\x61\x73\x73\x3D\x22\x6D\x78\x50\x61\x67\x65\x22\x3E","\x63\x72\x65\x61\x74\x65\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x41\x66\x74\x65\x72","\x61\x6C\x77\x61\x79\x73","\x6D\x78\x50\x61\x67\x65\x42\x72\x65\x61\x6B","\x67\x65\x74\x43\x6F\x76\x65\x72\x50\x61\x67\x65\x73","\x67\x65\x74\x41\x70\x70\x65\x6E\x64\x69\x63\x65\x73","\x61\x64\x64\x47\x72\x61\x70\x68\x46\x72\x61\x67\x6D\x65\x6E\x74","\x72\x65\x6E\x64\x65\x72\x50\x61\x67\x65","\x6D\x78\x50\x61\x67\x65\x2D","\x3C\x74\x69\x74\x6C\x65\x3E","\x3C\x2F\x74\x69\x74\x6C\x65\x3E","\x3C\x73\x74\x79\x6C\x65\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3E","\x40\x6D\x65\x64\x69\x61\x20\x70\x72\x69\x6E\x74\x20\x7B","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x7B\x20\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x6E\x6F\x6E\x65\x3B\x20\x7D","\x20\x20\x68\x72\x2E\x6D\x78\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x20\x7B\x20\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x6E\x6F\x6E\x65\x3B\x20\x7D","\x40\x6D\x65\x64\x69\x61\x20\x73\x63\x72\x65\x65\x6E\x20\x7B","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x7B\x20\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x20\x72\x69\x67\x68\x74\x3A\x20\x31\x30\x70\x78\x3B\x20\x74\x6F\x70\x3A\x20\x31\x30\x70\x78\x3B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x41\x72\x69\x61\x6C\x3B\x20\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x31\x30\x70\x74\x3B\x20\x62\x6F\x72\x64\x65\x72\x3A\x20\x73\x6F\x6C\x69\x64\x20\x31\x70\x78\x20\x64\x61\x72\x6B\x67\x72\x61\x79\x3B\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x77\x68\x69\x74\x65\x3B\x20\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6C\x61\x70\x73\x65\x3A\x63\x6F\x6C\x6C\x61\x70\x73\x65\x3B\x20\x7D","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x74\x64\x20\x7B\x20\x62\x6F\x72\x64\x65\x72\x3A\x20\x73\x6F\x6C\x69\x64\x20\x31\x70\x78\x20\x67\x72\x61\x79\x3B\x20\x70\x61\x64\x64\x69\x6E\x67\x3A\x34\x70\x78\x3B\x20\x7D","\x20\x20\x62\x6F\x64\x79\x2E\x6D\x78\x50\x61\x67\x65\x20\x7B\x20\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x67\x72\x61\x79\x3B\x20\x7D","\x3C\x2F\x73\x74\x79\x6C\x65\x3E","\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x61","\x23\x6D\x78\x50\x61\x67\x65\x2D","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x49\x6E\x73\x69\x64\x65","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x73\x74\x79\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x70\x75\x74\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x70\x75\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x53\x48\x41\x50\x45","\x53\x48\x41\x50\x45\x5F\x52\x45\x43\x54\x41\x4E\x47\x4C\x45","\x53\x54\x59\x4C\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x52\x65\x63\x74\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x53\x54\x59\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x43\x33\x44\x39\x46\x46","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x36\x34\x38\x32\x42\x39","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x43\x4F\x4C\x4F\x52","\x23\x37\x37\x34\x34\x30\x30","\x53\x48\x41\x50\x45\x5F\x43\x4F\x4E\x4E\x45\x43\x54\x4F\x52","\x23\x34\x34\x36\x32\x39\x39","\x64\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78","\x70\x75\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6F\x72\x69\x67\x69\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65\x4F\x66\x66\x73\x65\x74","\x69\x6E\x76\x61\x6C\x69\x64","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x64\x65\x72","\x6F\x72\x64\x65\x72\x43\x68\x61\x6E\x67\x65\x64","\x76\x69\x73\x69\x62\x6C\x65\x53\x6F\x75\x72\x63\x65\x53\x74\x61\x74\x65","\x76\x69\x73\x69\x62\x6C\x65\x54\x61\x72\x67\x65\x74\x53\x74\x61\x74\x65","\x74\x65\x72\x6D\x69\x6E\x61\x6C\x44\x69\x73\x74\x61\x6E\x63\x65","\x73\x65\x67\x6D\x65\x6E\x74\x73","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x42\x6F\x75\x6E\x64\x73","\x73\x65\x74\x41\x62\x73\x6F\x6C\x75\x74\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x73\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x64\x6F\x6E\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x69\x73\x53\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x68\x61\x6E\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x43\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x73","\x67\x65\x74\x46\x69\x72\x73\x74\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x61\x64\x64\x43\x65\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x61\x64\x64\x65\x64","\x72\x65\x6D\x6F\x76\x65\x64","\x6D\x78\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x68\x61\x6E\x67\x65\x2E\x65\x78\x65\x63\x75\x74\x65","\x65\x6E\x74\x65\x72","\x6C\x65\x61\x76\x65","\x65\x64\x69\x74\x69\x6E\x67\x43\x65\x6C\x6C","\x74\x72\x69\x67\x67\x65\x72","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x61\x75\x74\x6F\x53\x69\x7A\x65","\x65\x6D\x70\x74\x79\x4C\x61\x62\x65\x6C\x54\x65\x78\x74","\x74\x65\x78\x74\x4E\x6F\x64\x65","\x6D\x78\x43\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x63\x6F\x6C\x73","\x32\x30","\x34","\x62\x6C\x75\x72","\x66\x6F\x63\x75\x73\x4C\x6F\x73\x74","\x6B\x65\x79\x64\x6F\x77\x6E","\x6B\x65\x79\x43\x6F\x64\x65","\x69\x73\x45\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x73\x74\x6F\x70\x45\x64\x69\x74\x69\x6E\x67","\x63\x6C\x65\x61\x72\x4F\x6E\x43\x68\x61\x6E\x67\x65","\x73\x65\x74\x4D\x6F\x64\x69\x66\x69\x65\x64","\x6B\x65\x79\x70\x72\x65\x73\x73","\x69\x73\x4C\x61\x62\x65\x6C\x43\x6C\x69\x70\x70\x65\x64","\x69\x73\x57\x72\x61\x70\x70\x69\x6E\x67","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x69\x73\x4D\x6F\x64\x69\x66\x69\x65\x64","\x69\x73\x49\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x69\x73\x48\x69\x64\x65\x4C\x61\x62\x65\x6C","\x6F\x75\x74\x6C\x69\x6E\x65","\x67\x65\x74\x45\x64\x69\x74\x6F\x72\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x56\x61\x6C\x75\x65","\x67\x65\x74\x45\x6D\x70\x74\x79\x4C\x61\x62\x65\x6C\x54\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x44\x69\x76","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x56\x61\x6C\x75\x65","\x67\x65\x74\x45\x64\x69\x74\x69\x6E\x67\x56\x61\x6C\x75\x65","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x54\x4F\x50","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x52\x49\x47\x48\x54","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x42\x4F\x54\x54\x4F\x4D","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x4C\x45\x46\x54","\x67\x65\x74\x45\x64\x69\x74\x69\x6E\x67\x43\x65\x6C\x6C","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x64\x65\x66\x61\x75\x6C\x74\x54\x65\x78\x74\x53\x68\x61\x70\x65","\x6C\x65\x67\x61\x63\x79\x43\x6F\x6E\x74\x72\x6F\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x72\x65\x67\x69\x73\x74\x65\x72\x53\x68\x61\x70\x65","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x70\x65","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x53\x68\x61\x70\x65","\x6F\x72\x64\x65\x72\x65\x64","\x6B\x65\x65\x70\x45\x64\x67\x65\x73\x49\x6E\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x66\x69\x72\x73\x74\x45\x64\x67\x65","\x69\x6E\x73\x65\x72\x74\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x69\x6E\x73\x74\x61\x6C\x6C\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x67\x65\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x53\x74\x61\x74\x65\x49\x6E\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x69\x6E\x64\x50\x72\x65\x76\x69\x6F\x75\x73\x53\x74\x61\x74\x65\x49\x6E\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x72\x64\x65\x72","\x6F\x72\x64\x65\x72\x45\x64\x67\x65","\x6B\x65\x65\x70\x45\x64\x67\x65\x73\x49\x6E\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x53\x68\x61\x70\x65\x43\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x53\x68\x61\x70\x65","\x67\x65\x74\x53\x68\x61\x70\x65","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x68\x61\x70\x65","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x47\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x49\x6D\x61\x67\x65","\x70\x6F\x73\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x65\x53\x68\x61\x70\x65","\x72\x65\x73\x6F\x6C\x76\x65\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x6E\x64\x69\x63\x61\x74\x65\x64","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x67\x65\x74\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x54\x59\x4C\x45","\x53\x54\x59\x4C\x45\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x42\x41\x43\x4B\x47\x52\x4F\x55\x4E\x44\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x42\x4F\x52\x44\x45\x52\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x4F\x56\x45\x52\x46\x4C\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x41\x44\x44\x49\x4E\x47","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x4C\x61\x62\x65\x6C","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x69\x73\x4C\x61\x62\x65\x6C\x45\x76\x65\x6E\x74","\x49\x4D\x47","\x4E\x4F\x5F\x46\x4F","\x67\x65\x74\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x6F\x76\x65\x72\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x74\x72\x6F\x6C","\x67\x65\x74\x46\x6F\x6C\x64\x69\x6E\x67\x49\x6D\x61\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6E\x74\x72\x6F\x6C","\x69\x6E\x69\x74\x43\x6F\x6E\x74\x72\x6F\x6C","\x44\x49\x41\x4C\x45\x43\x54\x5F\x50\x52\x45\x46\x45\x52\x48\x54\x4D\x4C","\x69\x6E\x6E\x65\x72\x4E\x6F\x64\x65","\x69\x73\x53\x68\x61\x70\x65\x45\x76\x65\x6E\x74","\x67\x65\x73\x74\x75\x72\x65\x73\x74\x61\x72\x74","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x54\x69\x6D\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x67\x65\x73\x74\x75\x72\x65\x45\x6E\x61\x62\x6C\x65\x64","\x68\x61\x6E\x64\x6C\x65\x47\x65\x73\x74\x75\x72\x65","\x72\x65\x64\x72\x61\x77\x4C\x61\x62\x65\x6C","\x67\x65\x74\x4C\x61\x62\x65\x6C\x42\x6F\x75\x6E\x64\x73","\x69\x73\x43\x6C\x69\x70\x70\x69\x6E\x67","\x67\x65\x74\x54\x65\x78\x74\x53\x63\x61\x6C\x65","\x72\x6F\x74\x61\x74\x65\x4C\x61\x62\x65\x6C\x42\x6F\x75\x6E\x64\x73","\x72\x65\x64\x72\x61\x77\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x72\x65\x64\x72\x61\x77\x43\x6F\x6E\x74\x72\x6F\x6C","\x67\x65\x74\x43\x6F\x6E\x74\x72\x6F\x6C\x42\x6F\x75\x6E\x64\x73","\x65\x71\x75\x61\x6C\x45\x6E\x74\x72\x69\x65\x73","\x65\x71\x75\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x67\x65\x74\x50\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x67\x65\x74\x52\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x59","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D\x43\x6F\x6E\x74\x72\x6F\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x52\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x58","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x6F\x72\x74\x68\x42\x75\x66\x66\x65\x72","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x41\x4C\x4C","\x6C\x69\x6D\x69\x74\x73","\x76\x65\x72\x74\x65\x78\x53\x65\x70\x65\x72\x61\x74\x69\x6F\x6E\x73","\x72\x65\x76\x65\x72\x73\x65\x50\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x72\x6F\x75\x74\x65\x50\x61\x74\x74\x65\x72\x6E\x73","\x77\x61\x79\x50\x6F\x69\x6E\x74\x73\x31","\x64\x69\x72\x56\x65\x63\x74\x6F\x72\x73","\x54\x41\x52\x47\x45\x54\x5F\x4D\x41\x53\x4B","\x53\x4F\x55\x52\x43\x45\x5F\x4D\x41\x53\x4B","\x53\x49\x44\x45\x5F\x4D\x41\x53\x4B","\x43\x45\x4E\x54\x45\x52\x5F\x4D\x41\x53\x4B","\x76\x61\x6C\x75\x65\x73","\x70\x75\x74\x56\x61\x6C\x75\x65","\x67\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x45\x4D\x50\x54\x59\x5F\x50\x4F\x49\x4E\x54","\x75\x70\x64\x61\x74\x69\x6E\x67\x44\x6F\x63\x75\x6D\x65\x6E\x74\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x61\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x63\x61\x70\x74\x75\x72\x65\x44\x6F\x63\x75\x6D\x65\x6E\x74\x47\x65\x73\x74\x75\x72\x65","\x6F\x70\x74\x69\x6D\x69\x7A\x65\x56\x6D\x6C\x52\x65\x66\x6C\x6F\x77\x73","\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x73\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x73\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x53\x63\x61\x6C\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x65\x74\x53\x63\x61\x6C\x65","\x69\x6E\x76\x61\x6C\x69\x64\x61\x74\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65\x53\x74\x61\x74\x65","\x6D\x78\x47\x72\x61\x70\x68\x56\x69\x65\x77\x2E\x76\x61\x6C\x69\x64\x61\x74\x65","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x76\x61\x6C\x69\x64\x61\x74\x65\x50\x6F\x69\x6E\x74\x73","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x75\x70\x64\x61\x74\x65\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x4F\x66\x66\x73\x65\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x4F\x66\x66\x73\x65\x74\x46\x6F\x72\x43\x65\x6C\x6C","\x75\x70\x64\x61\x74\x65\x46\x69\x78\x65\x64\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x46\x6C\x6F\x61\x74\x69\x6E\x67\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x4F\x66\x66\x73\x65\x74","\x63\x68\x69\x6C\x64\x4D\x6F\x76\x65\x64","\x69\x73\x52\x65\x6E\x64\x65\x72\x69\x6E\x67","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x46\x69\x78\x65\x64\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x72\x74","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x6F\x70\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x69\x73\x41\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x75\x70\x64\x61\x74\x65\x46\x6C\x6F\x61\x74\x69\x6E\x67\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x4E\x65\x78\x74\x50\x6F\x69\x6E\x74","\x69\x73\x4F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x53\x4F\x55\x52\x43\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x54\x41\x52\x47\x45\x54\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x53\x4F\x55\x52\x43\x45\x5F\x50\x4F\x52\x54","\x53\x54\x59\x4C\x45\x5F\x54\x41\x52\x47\x45\x54\x5F\x50\x4F\x52\x54","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x55\x54\x49\x4E\x47\x5F\x43\x45\x4E\x54\x45\x52\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x55\x54\x49\x4E\x47\x5F\x43\x45\x4E\x54\x45\x52\x5F\x59","\x67\x65\x74\x52\x65\x6C\x61\x74\x69\x76\x65\x50\x6F\x69\x6E\x74","\x72\x65\x6C\x61\x74\x69\x76\x65\x43\x63\x77","\x73\x65\x74\x52\x65\x6E\x64\x65\x72\x69\x6E\x67","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x67\x65\x74\x53\x74\x61\x74\x65\x73","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x61\x74\x65\x73","\x69\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x63\x72\x6F\x6C\x6C\x45\x76\x65\x6E\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x65\x6E\x64\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x48\x74\x6D\x6C\x50\x61\x6E\x65","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x43\x61\x6E\x76\x61\x73\x53\x69\x7A\x65","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C\x50\x61\x6E\x65","\x63\x6F\x6F\x72\x64\x6F\x72\x69\x67\x69\x6E","\x30\x2C\x30","\x73\x74\x61\x74\x69\x63","\x69\x73\x55\x70","\x67\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65\x46\x6F\x72\x52\x6F\x6F\x74","\x55\x50","\x44\x4F\x57\x4E","\x6D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x72\x65\x6E\x64\x65\x72\x48\x69\x6E\x74","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x45\x58\x41\x43\x54","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x46\x41\x53\x54\x45\x53\x54","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x46\x41\x53\x54\x45\x52","\x44\x49\x41\x4C\x45\x43\x54\x5F\x4D\x49\x58\x45\x44\x48\x54\x4D\x4C","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x69\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x73\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x70\x68\x56\x69\x65\x77","\x67\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x2F\x67\x72\x61\x70\x68","\x45\x4D\x50\x54\x59\x5F\x41\x52\x52\x41\x59","\x63\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x70\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x54\x69\x6D\x65\x6F\x75\x74","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x59","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x64\x65\x66\x61\x75\x6C\x74\x4F\x76\x65\x72\x6C\x61\x70","\x64\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x65\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x65\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x65\x78\x70\x6F\x72\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x6D\x70\x6F\x72\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x63\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x65\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x76\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x64\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x74\x69\x6D\x65\x72\x41\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x67\x6E\x6F\x72\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x78\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x53\x69\x7A\x65","\x6D\x69\x6E\x69\x6D\x75\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x6D\x61\x78\x69\x6D\x75\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x72\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x61\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x54\x6F\x50\x72\x65\x66\x65\x72\x72\x65\x64\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x46\x61\x63\x74\x6F\x72","\x6B\x65\x65\x70\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x56\x69\x73\x69\x62\x6C\x65\x4F\x6E\x5A\x6F\x6F\x6D","\x63\x65\x6E\x74\x65\x72\x5A\x6F\x6F\x6D","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x52\x65\x73\x69\x7A\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x4D\x6F\x76\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x4C\x6F\x6F\x70","\x6D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x61\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x63\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x68\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x49\x6D\x61\x67\x65","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66","\x65\x78\x70\x61\x6E\x64\x65\x64\x49\x6D\x61\x67\x65","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66","\x77\x61\x72\x6E\x69\x6E\x67\x49\x6D\x61\x67\x65","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73\x2F\x77\x61\x72\x6E\x69\x6E\x67\x2E\x67\x69\x66","\x61\x6C\x72\x65\x61\x64\x79\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x61\x6C\x72\x65\x61\x64\x79\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x45\x78\x70\x61\x6E\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x2D\x65\x78\x70\x61\x6E\x64","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x75\x6E\x6C\x6F\x61\x64","\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x3C\x76\x3A\x67\x72\x6F\x75\x70\x20\x73\x74\x79\x6C\x65\x3D\x22\x44\x49\x53\x50\x4C\x41\x59\x3A\x20\x6E\x6F\x6E\x65\x3B\x22\x3E\x3C\x2F\x76\x3A\x67\x72\x6F\x75\x70\x3E","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x70\x72\x6F\x63\x65\x73\x73\x43\x68\x61\x6E\x67\x65","\x67\x65\x74\x52\x65\x6D\x6F\x76\x65\x64\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x72\x65\x6D\x6F\x76\x65\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C","\x68\x6F\x6D\x65","\x61\x64\x64\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x63\x6C\x65\x61\x72\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","\x3C\x66\x6F\x6E\x74\x20\x63\x6F\x6C\x6F\x72\x3D\x72\x65\x64\x3E","\x3C\x2F\x66\x6F\x6E\x74\x3E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x69\x73\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x65\x6C\x6C\x53\x69\x7A\x65\x55\x70\x64\x61\x74\x65\x64","\x68\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x41\x74","\x69\x73\x54\x6F\x67\x67\x6C\x65\x45\x76\x65\x6E\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x50\x61\x6E\x6E\x69\x6E\x67\x4D\x61\x6E\x61\x67\x65\x72","\x67\x65\x74\x42\x6F\x72\x64\x65\x72\x53\x69\x7A\x65\x73","\x74\x68\x69\x6E","\x6D\x65\x64\x69\x75\x6D","\x74\x68\x69\x63\x6B","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x70\x61\x64\x64\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x67\x65\x74\x50\x72\x65\x66\x65\x72\x72\x65\x64\x50\x61\x67\x65\x53\x69\x7A\x65","\x67\x65\x74\x42\x6F\x72\x64\x65\x72","\x64\x6F\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x73\x74\x50\x72\x6F\x63\x65\x73\x73\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x67\x65\x74\x49\x6D\x61\x67\x65\x46\x72\x6F\x6D\x42\x75\x6E\x64\x6C\x65\x73","\x64\x61\x74\x61\x3A\x69\x6D\x61\x67\x65\x2F","\x3B\x62\x61\x73\x65\x36\x34\x2C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x61\x64\x64\x49\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65","\x62\x61\x63\x6B","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x47\x72\x6F\x75\x70","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x65\x74\x42\x6F\x75\x6E\x64\x73\x46\x6F\x72\x47\x72\x6F\x75\x70","\x61\x64\x64\x41\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65","\x61\x64\x64\x45\x64\x67\x65","\x69\x73\x41\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64","\x67\x65\x74\x44\x65\x6C\x65\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x6E\x63\x6C\x75\x64\x65\x45\x64\x67\x65\x73","\x6E\x65\x77\x45\x64\x67\x65","\x67\x65\x74\x46\x6F\x6C\x64\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x72\x65\x63\x75\x72\x73\x65","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x73\x77\x61\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x41\x6C\x74\x65\x72\x6E\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x50\x72\x65\x66\x65\x72\x72\x65\x64\x53\x69\x7A\x65\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x41\x6C\x6C\x45\x64\x67\x65\x73","\x69\x67\x6E\x6F\x72\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x53\x48\x41\x50\x45\x5F\x4C\x41\x42\x45\x4C","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45\x5F\x57\x49\x44\x54\x48","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45\x5F\x48\x45\x49\x47\x48\x54","\x67\x65\x74\x53\x69\x7A\x65\x46\x6F\x72\x53\x74\x72\x69\x6E\x67","\x72\x65\x73\x69\x7A\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x69\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x69\x73\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x47\x72\x61\x70\x68","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x43\x65\x6C\x6C\x43\x6F\x6E\x74\x61\x69\x6E\x6D\x65\x6E\x74\x41\x72\x65\x61","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x67\x65\x74\x4D\x61\x78\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x70","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x59","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x59","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x70\x6F\x69\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x46\x4C\x49\x50\x48","\x53\x54\x59\x4C\x45\x5F\x46\x4C\x49\x50\x56","\x69\x73\x50\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x46\x6F\x72\x50\x6F\x72\x74","\x69\x73\x43\x65\x6C\x6C\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x67\x65\x74\x43\x65\x6C\x6C\x42\x6F\x75\x6E\x64\x73","\x73\x68\x69\x66\x74\x50\x72\x65\x76\x69\x65\x77\x31","\x73\x68\x69\x66\x74\x50\x72\x65\x76\x69\x65\x77\x32","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x7A\x6F\x6F\x6D\x41\x63\x74\x75\x61\x6C","\x7A\x6F\x6F\x6D\x54\x6F","\x73\x63\x72\x6F\x6C\x6C\x52\x65\x63\x74\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x7A\x6F\x6F\x6D\x54\x6F\x52\x65\x63\x74","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x4F\x52\x54\x48\x4F\x47\x4F\x4E\x41\x4C","\x53\x65\x67\x6D\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x45\x6C\x62\x6F\x77\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x53\x69\x64\x65\x54\x6F\x53\x69\x64\x65","\x54\x6F\x70\x54\x6F\x42\x6F\x74\x74\x6F\x6D","\x45\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x4F\x72\x74\x68\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x69\x73\x4C\x6F\x6F\x70","\x69\x73\x43\x6C\x6F\x6E\x65\x45\x76\x65\x6E\x74","\x49\x53\x5F\x4D\x41\x43","\x69\x73\x4D\x65\x74\x61\x44\x6F\x77\x6E","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x65\x64\x45\x76\x65\x6E\x74","\x69\x73\x46\x6F\x72\x63\x65\x4D\x61\x72\x71\x75\x65\x65\x45\x76\x65\x6E\x74","\x76\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x41\x6C\x65\x72\x74","\x69\x73\x45\x64\x67\x65\x56\x61\x6C\x69\x64","\x69\x73\x56\x61\x6C\x69\x64\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x63\x68\x65\x63\x6B","\x76\x61\x6C\x69\x64\x61\x74\x65\x45\x64\x67\x65","\x76\x61\x6C\x69\x64\x61\x74\x65\x47\x72\x61\x70\x68","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x61\x74\x74\x72","\x63\x6F\x75\x6E\x74\x45\x72\x72\x6F\x72","\x73\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x74\x6F\x53\x74\x72\x69\x6E\x67","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x73\x65\x74\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x4E\x6F\x64\x65","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x43\x75\x72\x73\x6F\x72\x46\x6F\x72\x43\x65\x6C\x6C","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x47\x52\x41\x44\x49\x45\x4E\x54\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x53\x48\x41\x50\x45","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x49\x4D\x41\x47\x45","\x73\x65\x74\x42\x6F\x72\x64\x65\x72","\x53\x48\x41\x50\x45\x5F\x53\x57\x49\x4D\x4C\x41\x4E\x45","\x69\x73\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x65\x74\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x73\x45\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x49\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x73\x65\x74\x45\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x69\x73\x43\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x73\x65\x74\x43\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x67\x65\x74\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x43\x65\x6C\x6C\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x43\x4C\x4F\x4E\x45\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x63\x61\x6E\x45\x78\x70\x6F\x72\x74\x43\x65\x6C\x6C","\x63\x61\x6E\x49\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x44\x45\x4C\x45\x54\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x69\x73\x4C\x61\x62\x65\x6C\x4D\x6F\x76\x61\x62\x6C\x65","\x67\x65\x74\x4D\x6F\x76\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x43\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x4D\x4F\x56\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x50\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x73\x65\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x69\x73\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x73\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x73\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x69\x73\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x65\x6C\x6C\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x52\x45\x53\x49\x5A\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x69\x73\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x42\x65\x6E\x64\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x42\x45\x4E\x44\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x45\x44\x49\x54\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x69\x73\x56\x61\x6C\x69\x64\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x53\x54\x59\x4C\x45\x5F\x41\x55\x54\x4F\x53\x49\x5A\x45","\x73\x65\x74\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x73\x65\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x69\x73\x41\x6C\x6C\x6F\x77\x4F\x76\x65\x72\x6C\x61\x70\x50\x61\x72\x65\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4C\x44\x41\x42\x4C\x45","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x68\x69\x74\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x43\x6F\x6E\x74\x65\x6E\x74","\x67\x65\x74\x50\x6F\x69\x6E\x74\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x73","\x67\x65\x74\x43\x65\x6C\x6C\x73\x42\x65\x79\x6F\x6E\x64","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x52\x65\x67\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x4E\x65\x78\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x50\x61\x72\x65\x6E\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x43\x68\x69\x6C\x64\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x58","\x6C\x61\x73\x74\x4D\x6F\x75\x73\x65\x58","\x6C\x61\x73\x74\x4D\x6F\x75\x73\x65\x59","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x64\x65\x73\x74\x72\x6F\x79\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70","\x68\x65\x6C\x70","\x67\x72\x61\x70\x68\x52\x65\x6E\x64\x65\x72\x48\x69\x6E\x74","\x73\x68\x6F\x77\x56\x69\x65\x77\x70\x6F\x72\x74","\x73\x69\x7A\x65\x72\x53\x69\x7A\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x68\x61\x70\x65\x2D\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x6F\x70\x74\x69\x6D\x69\x7A\x65\x53\x70\x65\x65\x64","\x69\x6D\x61\x67\x65\x2D\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x75\x70\x64\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x75\x70\x64\x61\x74\x65","\x70\x61\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x66\x72\x65\x73\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x72\x64\x65\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x73\x69\x7A\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x7A\x65\x72","\x73\x65\x74\x5A\x6F\x6F\x6D\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x53\x6F\x75\x72\x63\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x67\x65\x74\x4F\x75\x74\x6C\x69\x6E\x65\x4F\x66\x66\x73\x65\x74","\x73\x74\x61\x72\x74\x58","\x73\x74\x61\x72\x74\x59","\x64\x78\x30","\x64\x79\x30","\x6E","\x76\x61\x6C\x69\x64\x4E\x65\x69\x67\x68\x62\x6F\x72\x73","\x74\x79\x70\x65\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x4E\x65\x69\x67\x68\x62\x6F\x72\x73\x41\x6C\x6C\x6F\x77\x65\x64","\x63\x68\x65\x63\x6B\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x68\x65\x63\x6B\x4E\x65\x69\x67\x68\x62\x6F\x72\x73","\x63\x68\x65\x63\x6B\x54\x79\x70\x65","\x75\x6E\x64\x6F\x48\x61\x6E\x64\x6C\x65\x72","\x62\x75\x62\x62\x6C\x69\x6E\x67","\x69\x73\x42\x75\x62\x62\x6C\x69\x6E\x67","\x73\x65\x74\x42\x75\x62\x62\x6C\x69\x6E\x67","\x67\x65\x74\x4C\x61\x79\x6F\x75\x74","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x72\x65\x73\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x66\x6F\x6C\x64\x48\x61\x6E\x64\x6C\x65\x72","\x73\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x73\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x69\x73\x43\x65\x6C\x6C\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x53\x68\x69\x66\x74\x61\x62\x6C\x65","\x69\x73\x53\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x73\x65\x74\x53\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x73\x65\x74\x53\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x63\x65\x6C\x6C\x52\x65\x73\x69\x7A\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C\x73\x54\x6F\x53\x68\x69\x66\x74","\x73\x68\x69\x66\x74\x43\x65\x6C\x6C","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x61\x64\x64\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x41\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x52\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x65\x74\x41\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x52\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x41\x64\x64\x65\x64","\x72\x65\x73\x69\x7A\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x6F\x6C\x64\x42\x6F\x75\x6E\x64\x73","\x6F\x6C\x64\x53\x74\x61\x74\x65\x73","\x6F\x6C\x64\x53\x63\x61\x6C\x65","\x64\x65\x6C\x74\x61\x73","\x63\x6F\x75\x6E\x74","\x58","\x59","\x61\x64\x64\x45\x64\x67\x65\x73","\x72\x65\x73\x6F\x6C\x76\x65","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x53\x74\x61\x74\x65","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65\x53\x74\x61\x74\x65","\x75\x70\x64\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x68\x61\x70\x65","\x6D\x61\x78\x43\x65\x6C\x6C\x73","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65","\x63\x75\x72\x72\x65\x6E\x74\x44\x78","\x63\x75\x72\x72\x65\x6E\x74\x44\x79","\x75\x70\x64\x61\x74\x65\x43\x75\x72\x73\x6F\x72","\x73\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x44\x72\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x4F\x6E\x4D\x6F\x76\x65","\x70\x72\x65\x76\x69\x65\x77\x43\x6F\x6C\x6F\x72","\x68\x74\x6D\x6C\x50\x72\x65\x76\x69\x65\x77","\x73\x63\x61\x6C\x65\x47\x72\x69\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x4D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x4D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x73\x65\x74\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x65\x6C\x6C\x57\x61\x73\x43\x6C\x69\x63\x6B\x65\x64","\x53\x45\x4C\x45\x43\x54","\x66\x69\x72\x73\x74","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x68\x61\x70\x65","\x70\x42\x6F\x75\x6E\x64\x73","\x75\x73\x65\x47\x75\x69\x64\x65\x73\x46\x6F\x72\x45\x76\x65\x6E\x74","\x73\x65\x74\x48\x69\x67\x68\x6C\x69\x67\x68\x74\x43\x6F\x6C\x6F\x72","\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x54\x41\x52\x47\x45\x54\x5F\x43\x4F\x4C\x4F\x52","\x43\x55\x52\x53\x4F\x52\x5F\x4D\x4F\x56\x41\x42\x4C\x45\x5F\x45\x44\x47\x45","\x43\x55\x52\x53\x4F\x52\x5F\x4D\x4F\x56\x41\x42\x4C\x45\x5F\x56\x45\x52\x54\x45\x58","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x64\x65\x73\x74\x72\x6F\x79\x53\x68\x61\x70\x65\x73","\x67\x75\x69\x64\x65\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x74\x72\x69\x67\x67\x65\x72\x58","\x74\x72\x69\x67\x67\x65\x72\x59","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x63\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4F\x6E\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x70\x72\x65\x76\x69\x65\x77\x45\x6E\x61\x62\x6C\x65\x64","\x75\x73\x65\x47\x72\x69\x64","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x70\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x76\x61\x6C\x69\x64\x43\x6F\x6C\x6F\x72","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x69\x6E\x76\x61\x6C\x69\x64\x43\x6F\x6C\x6F\x72","\x44\x45\x46\x41\x55\x4C\x54\x5F\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x68\x6F\x74\x73\x70\x6F\x74","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x68\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x76\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x6D\x61\x72\x6B\x65\x64\x53\x74\x61\x74\x65","\x73\x65\x74\x48\x6F\x74\x73\x70\x6F\x74","\x67\x65\x74\x48\x6F\x74\x73\x70\x6F\x74","\x73\x65\x74\x48\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x48\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x68\x61\x73\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x4D\x61\x72\x6B\x65\x64\x53\x74\x61\x74\x65","\x75\x6E\x6D\x61\x72\x6B","\x70\x72\x6F\x63\x65\x73\x73","\x69\x73\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x4D\x61\x72\x6B\x65\x72\x43\x6F\x6C\x6F\x72","\x6D\x61\x72\x6B\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65\x54\x6F\x4D\x61\x72\x6B","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73\x48\x6F\x74\x73\x70\x6F\x74","\x72\x65\x73\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x68\x61\x6E\x64\x6C\x65\x72\x73","\x6D\x61\x78\x48\x61\x6E\x64\x6C\x65\x72\x73","\x6D\x6F\x76\x65\x49\x63\x6F\x6E\x46\x72\x6F\x6E\x74","\x6D\x6F\x76\x65\x49\x63\x6F\x6E\x42\x61\x63\x6B","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x6D\x61\x72\x6B\x65\x72","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x48\x61\x6E\x64\x6C\x65\x72","\x77\x61\x79\x70\x6F\x69\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x45\x6E\x61\x62\x6C\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x44\x65\x6C\x61\x79","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x49\x6E\x50\x72\x6F\x67\x72\x65\x73\x73","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x56\x61\x6C\x69\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x69\x6E\x69\x74\x69\x61\x6C\x54\x6F\x75\x63\x68\x58","\x69\x6E\x69\x74\x69\x61\x6C\x54\x6F\x75\x63\x68\x59","\x69\x67\x6E\x6F\x72\x65\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x63\x6F\x6E\x4F\x66\x66\x73\x65\x74","\x65\x64\x67\x65\x53\x74\x61\x74\x65","\x64\x72\x69\x6C\x6C\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x43\x6F\x75\x6E\x74\x65\x72","\x6D\x6F\x76\x65\x50\x72\x65\x76\x69\x65\x77\x41\x77\x61\x79","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x63\x6F\x6E\x53\x74\x61\x74\x65","\x69\x63\x6F\x6E\x73","\x72\x65\x64\x72\x61\x77\x49\x63\x6F\x6E\x73","\x64\x65\x73\x74\x72\x6F\x79\x49\x63\x6F\x6E\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x69\x73\x4D\x6F\x76\x65\x49\x63\x6F\x6E\x54\x6F\x46\x72\x6F\x6E\x74\x46\x6F\x72\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x49\x63\x6F\x6E\x73","\x43\x55\x52\x53\x4F\x52\x5F\x43\x4F\x4E\x4E\x45\x43\x54","\x63\x75\x72\x72\x65\x6E\x74\x53\x74\x61\x74\x65","\x69\x63\x6F\x6E","\x67\x65\x74\x49\x63\x6F\x6E\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x73\x53\x74\x61\x72\x74\x45\x76\x65\x6E\x74","\x63\x75\x72\x72\x65\x6E\x74\x46\x6F\x63\x75\x73","\x63\x75\x72\x72\x65\x6E\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x73\x6F\x75\x72\x63\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x77\x61\x79\x70\x6F\x69\x6E\x74\x73","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x73\x65\x6C\x65\x63\x74\x65\x64\x49\x63\x6F\x6E","\x69\x73\x49\x6D\x6D\x65\x64\x69\x61\x74\x65\x43\x6F\x6E\x6E\x65\x63\x74\x53\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x65\x43\x75\x72\x72\x65\x6E\x74\x53\x74\x61\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x54\x61\x72\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x67\x65\x74\x53\x6F\x75\x72\x63\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x64\x72\x61\x77\x50\x72\x65\x76\x69\x65\x77","\x75\x70\x64\x61\x74\x65\x49\x63\x6F\x6E\x73","\x69\x73\x53\x74\x6F\x70\x45\x76\x65\x6E\x74","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x57\x69\x64\x74\x68","\x67\x65\x74\x45\x64\x67\x65\x43\x6F\x6C\x6F\x72","\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x63\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x70\x6F\x69\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x70\x6F\x69\x6E\x74\x2E\x67\x69\x66","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x43\x6F\x6C\x6F\x72","\x66\x6F\x63\x75\x73\x49\x63\x6F\x6E\x73","\x66\x6F\x63\x75\x73\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x66\x6F\x63\x75\x73\x50\x6F\x69\x6E\x74\x73","\x63\x75\x72\x72\x65\x6E\x74\x46\x6F\x63\x75\x73\x41\x72\x65\x61","\x67\x65\x74\x49\x6D\x61\x67\x65\x46\x6F\x72\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x69\x73\x45\x76\x65\x6E\x74\x49\x67\x6E\x6F\x72\x65\x64","\x72\x65\x70\x61\x69\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x73\x68\x61\x72\x65\x64\x44\x69\x76","\x63\x75\x72\x72\x65\x6E\x74\x58","\x63\x75\x72\x72\x65\x6E\x74\x59","\x64\x72\x61\x67\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x78\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x61\x6C\x6C\x6F\x77\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73\x43\x68\x65\x63\x6B","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x52\x61\x73\x74\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x53\x68\x61\x70\x65","\x73\x69\x7A\x65\x72\x73","\x6E\x2D\x72\x65\x73\x69\x7A\x65","\x6E\x65\x2D\x72\x65\x73\x69\x7A\x65","\x77\x2D\x72\x65\x73\x69\x7A\x65","\x65\x2D\x72\x65\x73\x69\x7A\x65","\x73\x77\x2D\x72\x65\x73\x69\x7A\x65","\x73\x2D\x72\x65\x73\x69\x7A\x65","\x73\x65\x2D\x72\x65\x73\x69\x7A\x65","\x6C\x61\x62\x65\x6C\x53\x68\x61\x70\x65","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x53\x68\x61\x70\x65","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x53\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x44\x61\x73\x68\x65\x64","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x44\x41\x53\x48\x45\x44","\x63\x72\x65\x61\x74\x65\x53\x69\x7A\x65\x72\x53\x68\x61\x70\x65","\x69\x73\x53\x69\x7A\x65\x72\x56\x69\x73\x69\x62\x6C\x65","\x52\x4F\x54\x41\x54\x49\x4F\x4E\x5F\x48\x41\x4E\x44\x4C\x45","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45","\x70\x72\x65\x76\x69\x65\x77","\x63\x75\x72\x72\x65\x6E\x74\x41\x6C\x70\x68\x61","\x61\x74\x61\x6E","\x75\x6E\x69\x6F\x6E","\x72\x6F\x74\x61\x74\x65\x43\x65\x6C\x6C","\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x62\x65\x6E\x64\x73","\x72\x65\x6D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x61\x62\x73\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x50\x6F\x69\x6E\x74\x73","\x69\x73\x41\x64\x64\x50\x6F\x69\x6E\x74\x45\x76\x65\x6E\x74","\x61\x64\x64\x50\x6F\x69\x6E\x74","\x63\x72\x65\x61\x74\x65\x42\x65\x6E\x64\x73","\x69\x6E\x69\x74\x42\x65\x6E\x64","\x43\x55\x52\x53\x4F\x52\x5F\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45","\x69\x73\x52\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74\x45\x76\x65\x6E\x74","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x44\x41\x53\x48\x45\x44","\x69\x73\x48\x61\x6E\x64\x6C\x65\x56\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x53\x68\x61\x70\x65","\x69\x73\x48\x61\x6E\x64\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x43\x55\x52\x53\x4F\x52\x5F\x42\x45\x4E\x44\x5F\x48\x41\x4E\x44\x4C\x45","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x73\x54\x61\x72\x67\x65\x74","\x69\x73\x4C\x61\x62\x65\x6C","\x63\x6C\x6F\x6E\x65\x50\x72\x65\x76\x69\x65\x77\x53\x74\x61\x74\x65","\x67\x65\x74\x53\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x74\x61\x74\x65","\x73\x65\x74\x50\x72\x65\x76\x69\x65\x77\x43\x6F\x6C\x6F\x72","\x6D\x6F\x76\x65\x4C\x61\x62\x65\x6C","\x63\x68\x61\x6E\x67\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x63\x68\x61\x6E\x67\x65\x50\x6F\x69\x6E\x74\x73","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x66\x69\x6E\x64\x4E\x65\x61\x72\x65\x73\x74\x53\x65\x67\x6D\x65\x6E\x74","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x4C\x4F\x43\x4B\x45\x44\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x72\x65\x64\x72\x61\x77\x49\x6E\x6E\x65\x72\x42\x65\x6E\x64\x73","\x66\x6C\x69\x70\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B\x4F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B\x4F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x56\x69\x72\x74\x75\x61\x6C\x42\x65\x6E\x64","\x67\x65\x74\x43\x75\x72\x73\x6F\x72\x46\x6F\x72\x42\x65\x6E\x64","\x45\x44\x47\x45\x53\x54\x59\x4C\x45\x5F\x54\x4F\x50\x54\x4F\x42\x4F\x54\x54\x4F\x4D","\x45\x44\x47\x45\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x72\x6F\x77\x2D\x72\x65\x73\x69\x7A\x65","\x63\x6F\x6C\x2D\x72\x65\x73\x69\x7A\x65","\x6E\x6F\x72\x6D\x61\x6C\x4B\x65\x79\x73","\x73\x68\x69\x66\x74\x4B\x65\x79\x73","\x63\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79\x73","\x63\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79\x73","\x6B\x65\x79\x44\x6F\x77\x6E","\x62\x69\x6E\x64\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x67\x65\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x69\x73\x47\x72\x61\x70\x68\x45\x76\x65\x6E\x74","\x68\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x73\x65\x74\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x6D\x78\x54\x6F\x6F\x6C\x74\x69\x70","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x73\x74\x61\x74\x65\x53\x6F\x75\x72\x63\x65","\x72\x65\x73\x65\x74\x54\x69\x6D\x65\x72","\x48\x49\x47\x48\x4C\x49\x47\x48\x54\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x72\x65\x70\x61\x69\x6E\x74\x48\x61\x6E\x64\x6C\x65\x72","\x6B\x65\x65\x70\x4F\x6E\x54\x6F\x70","\x64\x72\x61\x77\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x65\x64\x69\x74\x6F\x72","\x68\x69\x64\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x62\x69\x6E\x64\x41\x63\x74\x69\x6F\x6E","\x63\x6F\x6E\x66\x69\x67","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x49\x74\x65\x6D\x73","\x69\x66","\x61\x73","\x69\x63\x6F\x6E\x43\x6C\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x73\x65\x70\x61\x72\x61\x74\x6F\x72","\x6E\x6F\x63\x65\x6C\x6C","\x6E\x63\x65\x6C\x6C\x73","\x6E\x6F\x74\x52\x6F\x6F\x74","\x6E\x6F\x6E\x45\x6D\x70\x74\x79","\x65\x78\x70\x61\x6E\x64\x61\x62\x6C\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x61\x62\x6C\x65","\x76\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x65\x6D\x70\x74\x79\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x62\x61\x72","\x69\x6E\x73\x65\x72\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x2F\x73\x65\x70\x61\x72\x61\x74\x6F\x72\x2E\x67\x69\x66","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x4F\x70\x74\x69\x6F\x6E","\x73\x65\x74\x4D\x6F\x64\x65","\x61\x64\x64\x50\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x56\x61\x6C\x75\x65\x73","\x70\x6F\x70\x75\x70\x48\x61\x6E\x64\x6C\x65\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x70\x68","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x6B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x61\x6D\x65","\x49\x53\x5F\x4C\x4F\x43\x41\x4C","\x63\x72\x65\x61\x74\x65\x53\x65\x73\x73\x69\x6F\x6E","\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x2F\x65\x64\x69\x74\x6F\x72","\x61\x73\x6B\x5A\x6F\x6F\x6D\x52\x65\x73\x6F\x75\x72\x63\x65","\x61\x73\x6B\x5A\x6F\x6F\x6D","\x6C\x61\x73\x74\x53\x61\x76\x65\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x6C\x61\x73\x74\x53\x61\x76\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x46\x69\x6C\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x46\x69\x6C\x65","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x74\x61\x73\x6B\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x74\x61\x73\x6B\x73","\x68\x65\x6C\x70\x52\x65\x73\x6F\x75\x72\x63\x65","\x6F\x75\x74\x6C\x69\x6E\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x62\x6C\x43\x6C\x69\x63\x6B\x41\x63\x74\x69\x6F\x6E","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x52\x65\x71\x75\x69\x72\x65\x64","\x66\x6F\x72\x63\x65\x64\x49\x6E\x73\x65\x72\x74\x69\x6E\x67","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x64\x65\x66\x61\x75\x6C\x74\x47\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x42\x6F\x72\x64\x65\x72\x53\x69\x7A\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x6F\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x4E\x61\x6D\x65","\x75\x72\x6C\x50\x6F\x73\x74","\x75\x72\x6C\x49\x6D\x61\x67\x65","\x6C\x61\x79\x6F\x75\x74\x44\x69\x61\x67\x72\x61\x6D","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x53\x70\x61\x63\x69\x6E\x67","\x6D\x61\x69\x6E\x74\x61\x69\x6E\x53\x77\x69\x6D\x6C\x61\x6E\x65\x73","\x6C\x61\x79\x6F\x75\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x73","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x49\x6E\x64\x65\x78","\x74\x61\x73\x6B\x73\x57\x69\x6E\x64\x6F\x77\x49\x6D\x61\x67\x65","\x74\x61\x73\x6B\x73\x54\x6F\x70","\x68\x65\x6C\x70\x57\x69\x6E\x64\x6F\x77\x49\x6D\x61\x67\x65","\x75\x72\x6C\x48\x65\x6C\x70","\x68\x65\x6C\x70\x57\x69\x64\x74\x68","\x68\x65\x6C\x70\x48\x65\x69\x67\x68\x74","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x57\x69\x64\x74\x68","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x48\x65\x69\x67\x68\x74","\x6D\x6F\x76\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x44\x69\x61\x6C\x6F\x67","\x76\x61\x6C\x69\x64\x61\x74\x69\x6E\x67","\x65\x78\x70\x6F\x72\x74\x49\x6D\x61\x67\x65","\x67\x65\x74\x55\x72\x6C\x49\x6D\x61\x67\x65","\x67\x65\x74\x56\x69\x65\x77\x58\x6D\x6C","\x5F\x62\x6C\x61\x6E\x6B","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x75\x6E\x67\x72\x6F\x75\x70","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x73\x68\x6F\x77\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x73\x65\x6C\x65\x63\x74\x4E\x6F\x6E\x65","\x74\x6F\x42\x61\x63\x6B","\x74\x6F\x46\x72\x6F\x6E\x74","\x73\x65\x6C\x65\x63\x74\x50\x72\x65\x76\x69\x6F\x75\x73","\x73\x65\x6C\x65\x63\x74\x4E\x65\x78\x74","\x73\x65\x6C\x65\x63\x74\x50\x61\x72\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x68\x69\x6C\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x41\x6C\x6C","\x65\x78\x70\x61\x6E\x64","\x65\x78\x70\x61\x6E\x64\x41\x6C\x6C","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x4C\x65\x66\x74","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x43\x65\x6E\x74\x65\x72","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x52\x69\x67\x68\x74","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x54\x6F\x70","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x4D\x69\x64\x64\x6C\x65","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x42\x6F\x74\x74\x6F\x6D","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x4C\x65\x66\x74","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x43\x65\x6E\x74\x65\x72","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x52\x69\x67\x68\x74","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x54\x6F\x70","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x4D\x69\x64\x64\x6C\x65","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x42\x6F\x74\x74\x6F\x6D","\x70\x72\x6F\x6D\x70\x74","\x74\x6F\x67\x67\x6C\x65\x54\x61\x73\x6B\x73","\x73\x68\x6F\x77\x54\x61\x73\x6B\x73","\x74\x6F\x67\x67\x6C\x65\x48\x65\x6C\x70","\x73\x68\x6F\x77\x48\x65\x6C\x70","\x74\x6F\x67\x67\x6C\x65\x4F\x75\x74\x6C\x69\x6E\x65","\x73\x68\x6F\x77\x4F\x75\x74\x6C\x69\x6E\x65","\x74\x6F\x67\x67\x6C\x65\x43\x6F\x6E\x73\x6F\x6C\x65","\x72\x65\x73\x65\x74\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x73\x65\x74\x46\x69\x72\x73\x74\x54\x69\x6D\x65","\x63\x6F\x6F\x6B\x69\x65","\x6D\x78\x67\x72\x61\x70\x68\x3D\x73\x65\x65\x6E\x3B\x20\x65\x78\x70\x69\x72\x65\x73\x3D\x46\x72\x69\x2C\x20\x32\x37\x20\x4A\x75\x6C\x20\x32\x30\x30\x31\x20\x30\x32\x3A\x34\x37\x3A\x31\x31\x20\x55\x54\x43\x3B\x20\x70\x61\x74\x68\x3D\x2F","\x43\x61\x6E\x6E\x6F\x74\x20\x65\x78\x65\x63\x75\x74\x65\x20","\x3A\x20","\x43\x61\x6E\x6E\x6F\x74\x20\x66\x69\x6E\x64\x20\x61\x63\x74\x69\x6F\x6E\x20","\x61\x64\x64\x54\x65\x6D\x70\x6C\x61\x74\x65","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x62\x6C\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x55\x6E\x64\x6F\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x72\x69\x6C\x6C\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x49\x6E\x73\x65\x72\x74\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x63\x72\x65\x61\x74\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x4C\x61\x79\x6F\x75\x74\x4D\x61\x6E\x61\x67\x65\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x61\x79\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x61\x79\x6F\x75\x74","\x64\x69\x61\x67\x72\x61\x6D\x4C\x61\x79\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x44\x69\x61\x67\x72\x61\x6D\x4C\x61\x79\x6F\x75\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x72\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x73\x65\x74\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x74\x6F\x4C\x6F\x63\x61\x6C\x65\x53\x74\x72\x69\x6E\x67","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x54\x69\x74\x6C\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x74\x54\x69\x74\x6C\x65","\x74\x72\x65\x65\x4C\x61\x79\x6F\x75\x74","\x20\x3E\x20","\x67\x65\x74\x52\x6F\x6F\x74\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70","\x72\x65\x61\x64\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x55\x72\x6C\x50\x6F\x73\x74","\x77\x72\x69\x74\x65\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x70\x6F\x73\x74\x44\x69\x61\x67\x72\x61\x6D","\x73\x77\x61\x70\x53\x74\x79\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x69\x73\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x56\x69\x73\x69\x62\x6C\x65","\x72\x65\x61\x64\x6F\x6E\x6C\x79","\x49\x44","\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x61\x73\x6B\x73","\x72\x65\x66\x72\x65\x73\x68\x54\x61\x73\x6B\x73","\x66\x72\x61\x6D\x65\x42\x6F\x72\x64\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x43\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x65\x64\x4D\x6F\x76\x69\x6E\x67","\x63\x6F\x64\x65\x63\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65","\x61\x64\x64\x41\x6C\x69\x61\x73","\x61\x6C\x69\x61\x73\x65\x73","\x72\x65\x67\x69\x73\x74\x65\x72","\x65\x6E\x63\x6F\x64\x65\x44\x65\x66\x61\x75\x6C\x74\x73","\x67\x65\x74\x4F\x62\x6A\x65\x63\x74","\x72\x65\x66\x65\x72\x65\x6E\x63\x65","\x67\x65\x74\x43\x6F\x64\x65\x63","\x69\x6D\x70\x6F\x72\x74\x4E\x6F\x64\x65","\x6D\x78\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x63\x6F\x64\x65\x63\x20\x66\x6F\x72\x20","\x43\x61\x6E\x6E\x6F\x74\x20\x64\x65\x63\x6F\x64\x65\x20","\x65\x6E\x63\x6F\x64\x65\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x64\x65\x63","\x64\x65\x63\x6F\x64\x65\x43\x65\x6C\x6C","\x69\x6E\x73\x65\x72\x74\x49\x6E\x74\x6F\x47\x72\x61\x70\x68","\x65\x78\x63\x6C\x75\x64\x65","\x69\x64\x72\x65\x66\x73","\x6D\x61\x70\x70\x69\x6E\x67","\x72\x65\x76\x65\x72\x73\x65","\x63\x6C\x6F\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x67\x65\x74\x46\x69\x65\x6C\x64\x4E\x61\x6D\x65","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x61\x6D\x65","\x69\x73\x45\x78\x63\x6C\x75\x64\x65\x64","\x69\x73\x52\x65\x66\x65\x72\x65\x6E\x63\x65","\x62\x65\x66\x6F\x72\x65\x45\x6E\x63\x6F\x64\x65","\x65\x6E\x63\x6F\x64\x65\x4F\x62\x6A\x65\x63\x74","\x61\x66\x74\x65\x72\x45\x6E\x63\x6F\x64\x65","\x65\x6E\x63\x6F\x64\x65\x56\x61\x6C\x75\x65","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x49\x44\x20\x66\x6F\x72\x20","\x77\x72\x69\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x72\x69\x74\x65\x50\x72\x69\x6D\x69\x74\x69\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x72\x69\x74\x65\x43\x6F\x6D\x70\x6C\x65\x78\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x58\x6D\x6C","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x6E\x6F\x64\x65\x20\x66\x6F\x72\x20","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x46\x72\x6F\x6D\x58\x6D\x6C","\x62\x65\x66\x6F\x72\x65\x44\x65\x63\x6F\x64\x65","\x64\x65\x63\x6F\x64\x65\x4E\x6F\x64\x65","\x61\x66\x74\x65\x72\x44\x65\x63\x6F\x64\x65","\x64\x65\x63\x6F\x64\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x64\x65\x63\x6F\x64\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x64\x65\x63\x6F\x64\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x64\x65\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x6F\x62\x6A\x65\x63\x74\x20\x66\x6F\x72\x20","\x70\x72\x6F\x63\x65\x73\x73\x49\x6E\x63\x6C\x75\x64\x65","\x64\x65\x63\x6F\x64\x65\x43\x68\x69\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x54\x65\x6D\x70\x6C\x61\x74\x65","\x61\x64\x64\x4F\x62\x6A\x65\x63\x74\x56\x61\x6C\x75\x65","\x69\x6E\x63\x6C\x75\x64\x65","\x72\x65\x6D\x6F\x76\x65\x57\x68\x69\x74\x65\x73\x70\x61\x63\x65","\x64\x65\x63\x6F\x64\x65\x52\x6F\x6F\x74","\x67\x72\x61\x70\x68\x4C\x69\x73\x74\x65\x6E\x65\x72\x73\x20\x65\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x73\x20\x76\x69\x65\x77\x20\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72\x20\x65\x64\x69\x74\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x6C\x61\x79\x65\x72","\x67\x65\x74\x53\x74\x72\x69\x6E\x67\x56\x61\x6C\x75\x65","\x6D\x78\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74\x43\x6F\x64\x65\x63\x2E\x64\x65\x63\x6F\x64\x65\x3A\x20\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74\x20","\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x64","\x70\x72\x65\x73\x73\x65\x64\x49\x63\x6F\x6E","\x6D\x6F\x64\x65","\x74\x6F\x67\x67\x6C\x65","\x2D\x2D\x2D","\x63\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x54\x65\x6D\x70\x6C\x61\x74\x65\x20","\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6D\x6F\x64\x69\x66\x69\x65\x64\x20\x6C\x61\x73\x74\x53\x6E\x61\x70\x73\x68\x6F\x74\x20\x69\x67\x6E\x6F\x72\x65\x64\x43\x68\x61\x6E\x67\x65\x73\x20\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72\x20\x67\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x41\x72\x72\x61\x79","\x64\x65\x63\x6F\x64\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x75\x69","\x64\x65\x63\x6F\x64\x65\x55\x69","\x73\x65\x74\x4D\x61\x70\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x72\x65\x73\x6F\x75\x72\x63\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65"];var mxClient={VERSION:_0x53bb[0],IS_IE:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[1]),IS_IE6:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[4]),IS_QUIRKS:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[1])&&(null==document[_0x53bb[5]]||5==document[_0x53bb[5]]),VML_PREFIX:_0x53bb[6],OFFICE_PREFIX:_0x53bb[7],IS_NS:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[8])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[1]),IS_OP:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[9]),IS_OT:0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[10])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[11])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[12])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[13])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[14])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[15]),IS_SF:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[16])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[17]),IS_GC:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[17]),IS_MT:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[18])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[19])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[20])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[21])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[22])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[23])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[24])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[25])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[26])&&0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[27]),IS_SVG:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[18])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[21])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[28])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[26])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[29])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[30])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[16])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[31])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[9]),NO_FO:0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[19])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[22])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[20])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[23])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[25])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[27])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[32])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[33])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[9])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[1])||0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[34]),IS_VML:_0x53bb[35]==navigator[_0x53bb[37]][_0x53bb[36]](),IS_MAC:0<navigator[_0x53bb[3]][_0x53bb[36]]()[_0x53bb[2]](_0x53bb[38]),IS_TOUCH:0<navigator[_0x53bb[3]][_0x53bb[36]]()[_0x53bb[2]](_0x53bb[39])||0<navigator[_0x53bb[3]][_0x53bb[36]]()[_0x53bb[2]](_0x53bb[40])||0<navigator[_0x53bb[3]][_0x53bb[36]]()[_0x53bb[2]](_0x53bb[41])||0<navigator[_0x53bb[3]][_0x53bb[36]]()[_0x53bb[2]](_0x53bb[42]),IS_LOCAL:0>document[_0x53bb[45]][_0x53bb[44]][_0x53bb[2]](_0x53bb[43])&&0>document[_0x53bb[45]][_0x53bb[44]][_0x53bb[2]](_0x53bb[46]),isBrowserSupported:function(){return mxClient[_0x53bb[47]]||mxClient[_0x53bb[48]]},link:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=_0x39abx4||document;if(mxClient[_0x53bb[49]]){_0x39abx4[_0x53bb[53]](_0x53bb[50]+_0x39abx2+_0x53bb[51]+_0x39abx3+_0x53bb[52])}else {var _0x39abx5=_0x39abx4[_0x53bb[55]](_0x53bb[54]);_0x39abx5[_0x53bb[57]](_0x53bb[56],_0x39abx2);_0x39abx5[_0x53bb[57]](_0x53bb[44],_0x39abx3);_0x39abx5[_0x53bb[57]](_0x53bb[58],_0x53bb[59]);_0x39abx5[_0x53bb[57]](_0x53bb[60],_0x53bb[61]);_0x39abx4[_0x53bb[64]](_0x53bb[63])[0][_0x53bb[62]](_0x39abx5)}},include:function(_0x39abx2){document[_0x53bb[53]](_0x53bb[65]+_0x39abx2+_0x53bb[66])},dispose:function(){for(var _0x39abx2=0;_0x39abx2<mxEvent[_0x53bb[68]][_0x53bb[67]];_0x39abx2++){null!=mxEvent[_0x53bb[68]][_0x39abx2][_0x53bb[69]]&&mxEvent[_0x53bb[70]](mxEvent[_0x53bb[68]][_0x39abx2])}}};mxClient[_0x53bb[71]]&&mxClient[_0x53bb[72]]?mxClient[_0x53bb[73]]=_0x53bb[74]:mxClient[_0x53bb[75]]||mxClient[_0x53bb[76]]?mxClient[_0x53bb[73]]=_0x53bb[77]:mxClient[_0x53bb[78]]?mxClient[_0x53bb[73]]=_0x53bb[79]:mxClient[_0x53bb[80]]&&9<=document[_0x53bb[5]]&&(mxClient[_0x53bb[73]]=_0x53bb[81]);_0x53bb[82]== typeof mxLoadResources&&(mxLoadResources= !0);_0x53bb[82]== typeof mxResourceExtension&&(mxResourceExtension=_0x53bb[83]);_0x53bb[82]== typeof mxLoadStylesheets&&(mxLoadStylesheets= !0);_0x53bb[82]!= typeof mxBasePath&&0<mxBasePath[_0x53bb[67]]?(_0x53bb[84]==mxBasePath[_0x53bb[85]](mxBasePath[_0x53bb[67]]-1)&&(mxBasePath=mxBasePath[_0x53bb[85]](0,mxBasePath[_0x53bb[67]]-1)),mxClient[_0x53bb[86]]=mxBasePath):mxClient[_0x53bb[86]]=_0x53bb[87];_0x53bb[82]!= typeof mxImageBasePath&&0<mxImageBasePath[_0x53bb[67]]?(_0x53bb[84]==mxImageBasePath[_0x53bb[85]](mxImageBasePath[_0x53bb[67]]-1)&&(mxImageBasePath=mxImageBasePath[_0x53bb[85]](0,mxImageBasePath[_0x53bb[67]]-1)),mxClient[_0x53bb[88]]=mxImageBasePath):mxClient[_0x53bb[88]]=mxClient[_0x53bb[86]]+_0x53bb[89];mxClient[_0x53bb[90]]=_0x53bb[82]!= typeof mxLanguage?mxLanguage:mxClient[_0x53bb[80]]?navigator[_0x53bb[91]]:navigator[_0x53bb[90]];mxClient[_0x53bb[92]]=_0x53bb[82]!= typeof mxDefaultLanguage?mxDefaultLanguage:_0x53bb[93];mxLoadStylesheets&&mxClient[_0x53bb[54]](_0x53bb[94],mxClient[_0x53bb[86]]+_0x53bb[95]);_0x53bb[82]!= typeof mxLanguages&&(mxClient[_0x53bb[96]]=mxLanguages);if(mxClient[_0x53bb[80]]){if(9<=document[_0x53bb[5]]){mxClient[_0x53bb[47]]= !1,mxClient[_0x53bb[48]]= !0}else {8==document[_0x53bb[5]]?(document[_0x53bb[100]][_0x53bb[99]](mxClient.VML_PREFIX,_0x53bb[97],_0x53bb[98]),document[_0x53bb[100]][_0x53bb[99]](mxClient.OFFICE_PREFIX,_0x53bb[101],_0x53bb[98])):(document[_0x53bb[100]][_0x53bb[99]](mxClient.VML_PREFIX,_0x53bb[97]),document[_0x53bb[100]][_0x53bb[99]](mxClient.OFFICE_PREFIX,_0x53bb[101]));var ss=document[_0x53bb[102]]();ss[_0x53bb[103]]=_0x53bb[104];mxLoadStylesheets&&mxClient[_0x53bb[54]](_0x53bb[94],mxClient[_0x53bb[86]]+_0x53bb[105])};window[_0x53bb[108]](_0x53bb[106],mxClient[_0x53bb[107]])};var mxLog={consoleName:_0x53bb[109],TRACE:!1,DEBUG:!0,WARN:!0,buffer:_0x53bb[110],init:function(){if(null==mxLog[_0x53bb[111]]&&null!=document[_0x53bb[112]]){var _0x39abx2=mxLog[_0x53bb[113]]+_0x53bb[114]+mxClient[_0x53bb[115]],_0x39abx3=document[_0x53bb[55]](_0x53bb[116]);_0x39abx3[_0x53bb[57]](_0x53bb[117],_0x53bb[118]);_0x39abx3[_0x53bb[57]](_0x53bb[119],_0x53bb[118]);var _0x39abx4=document[_0x53bb[55]](_0x53bb[120]),_0x39abx5=document[_0x53bb[55]](_0x53bb[121]),_0x39abx9=document[_0x53bb[55]](_0x53bb[122]);_0x39abx9[_0x53bb[124]][_0x53bb[123]]=_0x53bb[125];mxLog[_0x53bb[126]]=document[_0x53bb[55]](_0x53bb[126]);mxLog[_0x53bb[126]][_0x53bb[57]](_0x53bb[127],_0x53bb[128]);mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[119]]=_0x53bb[118];mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[129]]=_0x53bb[130];mxLog[_0x53bb[126]][_0x53bb[131]]=mxLog[_0x53bb[132]];mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[117]]=mxClient[_0x53bb[133]]&&_0x53bb[134]!=document[_0x53bb[135]]?_0x53bb[136]:_0x53bb[118];_0x39abx9[_0x53bb[62]](mxLog[_0x53bb[126]]);_0x39abx5[_0x53bb[62]](_0x39abx9);_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx5=document[_0x53bb[55]](_0x53bb[121]);mxLog[_0x53bb[122]]=document[_0x53bb[55]](_0x53bb[122]);mxLog[_0x53bb[122]][_0x53bb[124]][_0x53bb[123]]=_0x53bb[125];mxLog[_0x53bb[122]][_0x53bb[57]](_0x53bb[119],_0x53bb[137]);_0x39abx5[_0x53bb[62]](mxLog[_0x53bb[122]]);_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx3[_0x53bb[62]](_0x39abx4);mxLog[_0x53bb[140]](_0x53bb[138],function(_0x39abx2){mxLog[_0x53bb[139]]()});mxLog[_0x53bb[140]](_0x53bb[141],function(_0x39abx2){_0x39abx2=mxUtils[_0x53bb[142]](document[_0x53bb[112]]);mxLog[_0x53bb[143]](_0x39abx2)});mxLog[_0x53bb[140]](_0x53bb[144],function(_0x39abx2){mxLog[_0x53bb[145]]=!mxLog[_0x53bb[145]];mxLog[_0x53bb[145]]?mxLog[_0x53bb[143]](_0x53bb[146]):mxLog[_0x53bb[143]](_0x53bb[147])});mxLog[_0x53bb[140]](_0x53bb[148],function(_0x39abx2){try{mxUtils[_0x53bb[149]](mxLog[_0x53bb[126]][_0x53bb[131]])}catch(_0x39abx3){mxUtils[_0x53bb[150]](_0x39abx3)}});mxLog[_0x53bb[140]](_0x53bb[151],function(_0x39abx2){try{mxUtils[_0x53bb[152]](mxLog[_0x53bb[126]][_0x53bb[131]])}catch(_0x39abx3){mxUtils[_0x53bb[150]](_0x39abx3)}});mxLog[_0x53bb[140]](_0x53bb[153],function(_0x39abx2){mxLog[_0x53bb[126]][_0x53bb[131]]=_0x53bb[110]});_0x39abx5=_0x39abx4=0;_0x53bb[154]=== typeof window[_0x53bb[155]]?(_0x39abx4=window[_0x53bb[156]],_0x39abx5=window[_0x53bb[155]]):(_0x39abx4=document[_0x53bb[158]][_0x53bb[157]]||document[_0x53bb[112]][_0x53bb[157]],_0x39abx5=document[_0x53bb[112]][_0x53bb[159]]);mxLog[_0x53bb[111]]= new mxWindow(_0x39abx2,_0x39abx3,Math[_0x53bb[160]](0,_0x39abx5-320),Math[_0x53bb[160]](0,_0x39abx4-210),300,160);mxLog[_0x53bb[111]][_0x53bb[161]](!0);mxLog[_0x53bb[111]][_0x53bb[162]](!1);mxLog[_0x53bb[111]][_0x53bb[163]](!0);mxLog[_0x53bb[111]][_0x53bb[164]](!0);mxLog[_0x53bb[111]][_0x53bb[165]]= !1;if((mxClient[_0x53bb[133]]||mxClient[_0x53bb[80]])&&!mxClient[_0x53bb[76]]&&!mxClient[_0x53bb[75]]&&_0x53bb[134]!=document[_0x53bb[135]]){var _0x39abxa=mxLog[_0x53bb[111]][_0x53bb[166]](),_0x39abx2=function(_0x39abx2,_0x39abx3){mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[160]](0,_0x39abxa[_0x53bb[167]]-70)+_0x53bb[168]};mxLog[_0x53bb[111]][_0x53bb[169]](mxEvent.RESIZE_END,_0x39abx2);mxLog[_0x53bb[111]][_0x53bb[169]](mxEvent.MAXIMIZE,_0x39abx2);mxLog[_0x53bb[111]][_0x53bb[169]](mxEvent.NORMALIZE,_0x39abx2);mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[119]]=_0x53bb[170]}}},info:function(){mxLog[_0x53bb[171]](mxUtils.toString(navigator))},addButton:function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[172]);mxUtils[_0x53bb[53]](_0x39abx4,_0x39abx2);mxEvent[_0x53bb[169]](_0x39abx4,_0x53bb[173],_0x39abx3);mxLog[_0x53bb[122]][_0x53bb[62]](_0x39abx4)},isVisible:function(){return null!=mxLog[_0x53bb[111]]?mxLog[_0x53bb[111]][_0x53bb[174]]():!1},show:function(){mxLog[_0x53bb[175]](!0)},setVisible:function(_0x39abx2){null==mxLog[_0x53bb[111]]&&mxLog[_0x53bb[176]]();null!=mxLog[_0x53bb[111]]&&mxLog[_0x53bb[111]][_0x53bb[175]](_0x39abx2)},enter:function(_0x39abx2){if(mxLog[_0x53bb[145]]){return mxLog[_0x53bb[171]](_0x53bb[177]+_0x39abx2),( new Date)[_0x53bb[178]]()}},leave:function(_0x39abx2,_0x39abx3){if(mxLog[_0x53bb[145]]){var _0x39abx4=0!=_0x39abx3?_0x53bb[179]+(( new Date)[_0x53bb[178]]()-_0x39abx3)+_0x53bb[180]:_0x53bb[110];mxLog[_0x53bb[171]](_0x53bb[181]+_0x39abx2+_0x39abx4)}},debug:function(){mxLog[_0x53bb[182]]&&mxLog[_0x53bb[171]][_0x53bb[183]](this,arguments)},warn:function(){mxLog[_0x53bb[184]]&&mxLog[_0x53bb[171]][_0x53bb[183]](this,arguments)},write:function(){for(var _0x39abx2=_0x53bb[110],_0x39abx3=0;_0x39abx3<arguments[_0x53bb[67]];_0x39abx3++){_0x39abx2+=arguments[_0x39abx3],_0x39abx3<arguments[_0x53bb[67]]-1&&(_0x39abx2+=_0x53bb[185])};null!=mxLog[_0x53bb[126]]?(mxLog[_0x53bb[126]][_0x53bb[131]]+=_0x39abx2,0<=navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[186])&&(mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],mxLog[_0x53bb[126]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189]),mxLog[_0x53bb[126]][_0x53bb[190]]=mxLog[_0x53bb[126]][_0x53bb[191]]):mxLog[_0x53bb[132]]+=_0x39abx2},writeln:function(){for(var _0x39abx2=_0x53bb[110],_0x39abx3=0;_0x39abx3<arguments[_0x53bb[67]];_0x39abx3++){_0x39abx2+=arguments[_0x39abx3],_0x39abx3<arguments[_0x53bb[67]]-1&&(_0x39abx2+=_0x53bb[185])};mxLog[_0x53bb[53]](_0x39abx2+_0x53bb[192])}},mxObjectIdentity={FIELD_NAME:_0x53bb[193],counter:0,get:function(_0x39abx2){if(_0x53bb[194]== typeof _0x39abx2&&null==_0x39abx2[mxObjectIdentity[_0x53bb[195]]]){var _0x39abx3=mxUtils[_0x53bb[197]](_0x39abx2[_0x53bb[196]]);_0x39abx2[mxObjectIdentity[_0x53bb[195]]]=_0x39abx3+_0x53bb[198]+mxObjectIdentity[_0x53bb[199]]++};return _0x39abx2[mxObjectIdentity[_0x53bb[195]]]},clear:function(_0x39abx2){_0x53bb[194]== typeof _0x39abx2&& delete _0x39abx2[mxObjectIdentity[_0x53bb[195]]]}};function mxDictionary(){this[_0x53bb[200]]()}mxDictionary[_0x53bb[202]][_0x53bb[201]]=null;mxDictionary[_0x53bb[202]][_0x53bb[200]]=function(){this[_0x53bb[201]]={}};mxDictionary[_0x53bb[202]][_0x53bb[203]]=function(_0x39abx2){_0x39abx2=mxObjectIdentity[_0x53bb[203]](_0x39abx2);return this[_0x53bb[201]][_0x39abx2]};mxDictionary[_0x53bb[202]][_0x53bb[204]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxObjectIdentity[_0x53bb[203]](_0x39abx2),_0x39abx5=this[_0x53bb[201]][_0x39abx4];this[_0x53bb[201]][_0x39abx4]=_0x39abx3;return _0x39abx5};mxDictionary[_0x53bb[202]][_0x53bb[205]]=function(_0x39abx2){_0x39abx2=mxObjectIdentity[_0x53bb[203]](_0x39abx2);var _0x39abx3=this[_0x53bb[201]][_0x39abx2];delete this[_0x53bb[201]][_0x39abx2];return _0x39abx3};mxDictionary[_0x53bb[202]][_0x53bb[206]]=function(){var _0x39abx2=[],_0x39abx3;for(_0x39abx3 in this[_0x53bb[201]]){_0x39abx2[_0x53bb[207]](_0x39abx3)};return _0x39abx2};mxDictionary[_0x53bb[202]][_0x53bb[208]]=function(){var _0x39abx2=[],_0x39abx3;for(_0x39abx3 in this[_0x53bb[201]]){_0x39abx2[_0x53bb[207]](this[_0x53bb[201]][_0x39abx3])};return _0x39abx2};mxDictionary[_0x53bb[202]][_0x53bb[209]]=function(_0x39abx2){for(var _0x39abx3 in this[_0x53bb[201]]){_0x39abx2(_0x39abx3,this[_0x53bb[201]][_0x39abx3])}};var mxResources={resources:[],extension:mxResourceExtension,resourcesEncoded:!1,loadDefaultBundle:!0,loadSpecialBundle:!0,isLanguageSupported:function(_0x39abx2){return null!=mxClient[_0x53bb[96]]?0<=mxUtils[_0x53bb[2]](mxClient[_0x53bb[96]],_0x39abx2):!0},getDefaultBundle:function(_0x39abx2,_0x39abx3){return mxResources[_0x53bb[210]]||!mxResources[_0x53bb[211]](_0x39abx3)?_0x39abx2+mxResources[_0x53bb[212]]:null},getSpecialBundle:function(_0x39abx2,_0x39abx3){if(null==mxClient[_0x53bb[96]]||!this[_0x53bb[211]](_0x39abx3)){var _0x39abx4=_0x39abx3[_0x53bb[2]](_0x53bb[213]);0<_0x39abx4&&(_0x39abx3=_0x39abx3[_0x53bb[85]](0,_0x39abx4))};return mxResources[_0x53bb[214]]&&mxResources[_0x53bb[211]](_0x39abx3)&&_0x39abx3!=mxClient[_0x53bb[92]]?_0x39abx2+_0x53bb[215]+_0x39abx3+mxResources[_0x53bb[212]]:null},add:function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:mxClient[_0x53bb[90]][_0x53bb[216]]();if(_0x39abx3!=mxConstants[_0x53bb[217]]){var _0x39abx4=mxResources[_0x53bb[218]](_0x39abx2,_0x39abx3);if(null!=_0x39abx4){try{var _0x39abx5=mxUtils[_0x53bb[219]](_0x39abx4);_0x39abx5[_0x53bb[220]]()&&mxResources[_0x53bb[222]](_0x39abx5[_0x53bb[221]]())}catch(e){}};_0x39abx4=mxResources[_0x53bb[223]](_0x39abx2,_0x39abx3);if(null!=_0x39abx4){try{_0x39abx5=mxUtils[_0x53bb[219]](_0x39abx4),_0x39abx5[_0x53bb[220]]()&&mxResources[_0x53bb[222]](_0x39abx5[_0x53bb[221]]())}catch(f){}}}},parse:function(_0x39abx2){if(null!=_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[224]](_0x53bb[192]);for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){if(_0x53bb[198]!=_0x39abx2[_0x39abx3][_0x53bb[225]](0)){var _0x39abx4=_0x39abx2[_0x39abx3][_0x53bb[2]](_0x53bb[226]);if(0<_0x39abx4){var _0x39abx5=_0x39abx2[_0x39abx3][_0x53bb[85]](0,_0x39abx4),_0x39abx9=_0x39abx2[_0x39abx3][_0x53bb[67]];13==_0x39abx2[_0x39abx3][_0x53bb[227]](_0x39abx9-1)&&_0x39abx9--;_0x39abx4=_0x39abx2[_0x39abx3][_0x53bb[85]](_0x39abx4+1,_0x39abx9);this[_0x53bb[228]]?(_0x39abx4=_0x39abx4[_0x53bb[230]](/\\(?=u[a-fA-F\d]{4})/g,_0x53bb[229]),mxResources[_0x53bb[231]][_0x39abx5]=unescape(_0x39abx4)):mxResources[_0x53bb[231]][_0x39abx5]=_0x39abx4}}}}},get:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=mxResources[_0x53bb[231]][_0x39abx2];null==_0x39abx2&&(_0x39abx2=_0x39abx4);if(null!=_0x39abx2&&null!=_0x39abx3){_0x39abx4=[];for(var _0x39abx5=null,_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=_0x39abx2[_0x53bb[225]](_0x39abx9);_0x53bb[232]==_0x39abxa?_0x39abx5=_0x53bb[110]:null!=_0x39abx5&&_0x53bb[233]==_0x39abxa?(_0x39abx5=parseInt(_0x39abx5)-1,0<=_0x39abx5&&_0x39abx5<_0x39abx3[_0x53bb[67]]&&_0x39abx4[_0x53bb[207]](_0x39abx3[_0x39abx5]),_0x39abx5=null):null!=_0x39abx5?_0x39abx5+=_0x39abxa:_0x39abx4[_0x53bb[207]](_0x39abxa)};_0x39abx2=_0x39abx4[_0x53bb[234]](_0x53bb[110])};return _0x39abx2}};function mxPoint(_0x39abx2,_0x39abx3){this[_0x53bb[235]]=null!=_0x39abx2?_0x39abx2:0;this[_0x53bb[236]]=null!=_0x39abx3?_0x39abx3:0}mxPoint[_0x53bb[202]][_0x53bb[235]]=null;mxPoint[_0x53bb[202]][_0x53bb[236]]=null;mxPoint[_0x53bb[202]][_0x53bb[237]]=function(_0x39abx2){return _0x39abx2[_0x53bb[235]]==this[_0x53bb[235]]&&_0x39abx2[_0x53bb[236]]==this[_0x53bb[236]]};mxPoint[_0x53bb[202]][_0x53bb[238]]=function(){return mxUtils[_0x53bb[238]](this)};function mxRectangle(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxPoint[_0x53bb[239]](this,_0x39abx2,_0x39abx3);this[_0x53bb[117]]=null!=_0x39abx4?_0x39abx4:0;this[_0x53bb[119]]=null!=_0x39abx5?_0x39abx5:0}mxRectangle[_0x53bb[202]]= new mxPoint;mxRectangle[_0x53bb[202]][_0x53bb[196]]=mxRectangle;mxRectangle[_0x53bb[202]][_0x53bb[117]]=null;mxRectangle[_0x53bb[202]][_0x53bb[119]]=null;mxRectangle[_0x53bb[202]][_0x53bb[240]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[235]]=_0x39abx2;this[_0x53bb[236]]=_0x39abx3;this[_0x53bb[117]]=_0x39abx4;this[_0x53bb[119]]=_0x39abx5};mxRectangle[_0x53bb[202]][_0x53bb[241]]=function(){return this[_0x53bb[235]]+this[_0x53bb[117]]/2};mxRectangle[_0x53bb[202]][_0x53bb[242]]=function(){return this[_0x53bb[236]]+this[_0x53bb[119]]/2};mxRectangle[_0x53bb[202]][_0x53bb[99]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=Math[_0x53bb[243]](this[_0x53bb[235]],_0x39abx2[_0x53bb[235]]),_0x39abx4=Math[_0x53bb[243]](this[_0x53bb[236]],_0x39abx2[_0x53bb[236]]),_0x39abx5=Math[_0x53bb[160]](this[_0x53bb[235]]+this[_0x53bb[117]],_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]);_0x39abx2=Math[_0x53bb[160]](this[_0x53bb[236]]+this[_0x53bb[119]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]);this[_0x53bb[235]]=_0x39abx3;this[_0x53bb[236]]=_0x39abx4;this[_0x53bb[117]]=_0x39abx5-_0x39abx3;this[_0x53bb[119]]=_0x39abx2-_0x39abx4}};mxRectangle[_0x53bb[202]][_0x53bb[244]]=function(_0x39abx2){this[_0x53bb[235]]-=_0x39abx2;this[_0x53bb[236]]-=_0x39abx2;this[_0x53bb[117]]+=2*_0x39abx2;this[_0x53bb[119]]+=2*_0x39abx2};mxRectangle[_0x53bb[202]][_0x53bb[245]]=function(){return new mxPoint(this[_0x53bb[235]],this[_0x53bb[236]])};mxRectangle[_0x53bb[202]][_0x53bb[237]]=function(_0x39abx2){return _0x39abx2[_0x53bb[235]]==this[_0x53bb[235]]&&_0x39abx2[_0x53bb[236]]==this[_0x53bb[236]]&&_0x39abx2[_0x53bb[117]]==this[_0x53bb[117]]&&_0x39abx2[_0x53bb[119]]==this[_0x53bb[119]]};var mxEffects={animateChanges:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=0,_0x39abx9=function(){for(var _0x39abx12=!1,_0x39abx13=0;_0x39abx13<_0x39abx3[_0x53bb[67]];_0x39abx13++){var _0x39abx14=_0x39abx3[_0x39abx13];if(_0x39abx14 instanceof mxGeometryChange||_0x39abx14 instanceof mxTerminalChange||_0x39abx14 instanceof mxValueChange||_0x39abx14 instanceof mxChildChange||_0x39abx14 instanceof mxStyleChange){var _0x39abx15=_0x39abx2[_0x53bb[249]]()[_0x53bb[248]](_0x39abx14[_0x53bb[246]]||_0x39abx14[_0x53bb[247]],!1);if(null!=_0x39abx15){if(_0x39abx12= !0,_0x39abx14[_0x53bb[196]]!=mxGeometryChange||_0x39abx2[_0x53bb[251]][_0x53bb[250]](_0x39abx14[_0x53bb[246]])){mxUtils[_0x53bb[254]](_0x39abx15[_0x53bb[253]][_0x53bb[252]],100*_0x39abx5/10)}else {var _0x39abx16=_0x39abx2[_0x53bb[249]]()[_0x53bb[255]],_0x39abx17=(_0x39abx14[_0x53bb[256]][_0x53bb[235]]-_0x39abx14[_0x53bb[257]][_0x53bb[235]])*_0x39abx16,_0x39abx18=(_0x39abx14[_0x53bb[256]][_0x53bb[236]]-_0x39abx14[_0x53bb[257]][_0x53bb[236]])*_0x39abx16,_0x39abx19=(_0x39abx14[_0x53bb[256]][_0x53bb[117]]-_0x39abx14[_0x53bb[257]][_0x53bb[117]])*_0x39abx16,_0x39abx16=(_0x39abx14[_0x53bb[256]][_0x53bb[119]]-_0x39abx14[_0x53bb[257]][_0x53bb[119]])*_0x39abx16;0==_0x39abx5?(_0x39abx15[_0x53bb[235]]-=_0x39abx17,_0x39abx15[_0x53bb[236]]-=_0x39abx18,_0x39abx15[_0x53bb[117]]-=_0x39abx19,_0x39abx15[_0x53bb[119]]-=_0x39abx16):(_0x39abx15[_0x53bb[235]]+=_0x39abx17/10,_0x39abx15[_0x53bb[236]]+=_0x39abx18/10,_0x39abx15[_0x53bb[117]]+=_0x39abx19/10,_0x39abx15[_0x53bb[119]]+=_0x39abx16/10);_0x39abx2[_0x53bb[259]][_0x53bb[258]](_0x39abx15);mxEffects[_0x53bb[260]](_0x39abx2,_0x39abx14[_0x53bb[246]],100*_0x39abx5/10)}}}};10>_0x39abx5&&_0x39abx12?(_0x39abx5++,window[_0x53bb[261]](_0x39abx9,_0x39abxa)):null!=_0x39abx4&&_0x39abx4()},_0x39abxa=30;_0x39abx9()},cascadeOpacity:function(_0x39abx2,_0x39abx3,_0x39abx4){for(var _0x39abx5=_0x39abx2[_0x53bb[251]][_0x53bb[262]](_0x39abx3),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=_0x39abx2[_0x53bb[251]][_0x53bb[263]](_0x39abx3,_0x39abx9),_0x39abx12=_0x39abx2[_0x53bb[249]]()[_0x53bb[248]](_0x39abxa);null!=_0x39abx12&&(mxUtils[_0x53bb[254]](_0x39abx12[_0x53bb[253]][_0x53bb[252]],_0x39abx4),mxEffects[_0x53bb[260]](_0x39abx2,_0x39abxa,_0x39abx4))};_0x39abx3=_0x39abx2[_0x53bb[251]][_0x53bb[264]](_0x39abx3);if(null!=_0x39abx3){for(_0x39abx9=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){_0x39abx5=_0x39abx2[_0x53bb[249]]()[_0x53bb[248]](_0x39abx3[_0x39abx9]),null!=_0x39abx5&&mxUtils[_0x53bb[254]](_0x39abx5[_0x53bb[253]][_0x53bb[252]],_0x39abx4)}}},fadeOut:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx5=_0x39abx5||40;_0x39abx9=_0x39abx9||30;var _0x39abx12=_0x39abx3||100;mxUtils[_0x53bb[254]](_0x39abx2,_0x39abx12);if(_0x39abxa||null==_0x39abxa){var _0x39abx13=function(){_0x39abx12=Math[_0x53bb[160]](_0x39abx12-_0x39abx5,0);mxUtils[_0x53bb[254]](_0x39abx2,_0x39abx12);0<_0x39abx12?window[_0x53bb[261]](_0x39abx13,_0x39abx9):(_0x39abx2[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],_0x39abx4&&_0x39abx2[_0x53bb[265]]&&_0x39abx2[_0x53bb[265]][_0x53bb[266]](_0x39abx2))};window[_0x53bb[261]](_0x39abx13,_0x39abx9)}else {_0x39abx2[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],_0x39abx4&&_0x39abx2[_0x53bb[265]]&&_0x39abx2[_0x53bb[265]][_0x53bb[266]](_0x39abx2)}}},mxUtils={errorResource:_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[267]:_0x53bb[110],closeResource:_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[268]:_0x53bb[110],errorImage:mxClient[_0x53bb[88]]+_0x53bb[269],removeCursors:function(_0x39abx2){null!=_0x39abx2[_0x53bb[124]]&&(_0x39abx2[_0x53bb[124]][_0x53bb[270]]=_0x53bb[110]);_0x39abx2=_0x39abx2[_0x53bb[271]];if(null!=_0x39abx2){for(var _0x39abx3=_0x39abx2[_0x53bb[67]],_0x39abx4=0;_0x39abx4<_0x39abx3;_0x39abx4+=1){mxUtils[_0x53bb[272]](_0x39abx2[_0x39abx4])}}},getCurrentStyle:function(){return mxClient[_0x53bb[80]]?function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[273]]:null}:function(_0x39abx2){return null!=_0x39abx2?window[_0x53bb[274]](_0x39abx2,_0x53bb[110]):null}}(),hasScrollbars:function(_0x39abx2){_0x39abx2=mxUtils[_0x53bb[275]](_0x39abx2);return null!=_0x39abx2&&(_0x53bb[276]==_0x39abx2[_0x53bb[277]]||_0x53bb[278]==_0x39abx2[_0x53bb[277]])},bind:function(_0x39abx2,_0x39abx3){return function(){return _0x39abx3[_0x53bb[183]](_0x39abx2,arguments)}},eval:function(_0x39abx2){var _0x39abx3=null;if(0<=_0x39abx2[_0x53bb[2]](_0x53bb[279])){try{eval(_0x53bb[280]+_0x39abx2),_0x39abx3=_mxJavaScriptExpression,_mxJavaScriptExpression=null}catch(c){mxLog[_0x53bb[283]](c[_0x53bb[281]]+_0x53bb[282]+_0x39abx2)}}else {try{_0x39abx3=eval(_0x39abx2)}catch(d){mxLog[_0x53bb[283]](d[_0x53bb[281]]+_0x53bb[282]+_0x39abx2)}};return _0x39abx3},findNode:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[284]](_0x39abx3);if(null!=_0x39abx5&&_0x39abx5==_0x39abx4){return _0x39abx2};for(_0x39abx2=_0x39abx2[_0x53bb[285]];null!=_0x39abx2;){_0x39abx5=mxUtils[_0x53bb[286]](_0x39abx2,_0x39abx3,_0x39abx4);if(null!=_0x39abx5){return _0x39abx5};_0x39abx2=_0x39abx2[_0x53bb[287]]};return null},findNodeByAttribute:function(){return 9<=document[_0x53bb[5]]?function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=null;if(null!=_0x39abx2){if(_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&_0x39abx2[_0x53bb[284]](_0x39abx3)==_0x39abx4){_0x39abx5=_0x39abx2}else {for(_0x39abx2=_0x39abx2[_0x53bb[285]];null!=_0x39abx2&&null==_0x39abx5;){_0x39abx5=mxUtils[_0x53bb[290]](_0x39abx2,_0x39abx3,_0x39abx4),_0x39abx2=_0x39abx2[_0x53bb[287]]}}};return _0x39abx5}:mxClient[_0x53bb[80]]?function(_0x39abx2,_0x39abx3,_0x39abx4){return null==_0x39abx2?null:_0x39abx2[_0x53bb[295]][_0x53bb[294]](_0x53bb[291]+_0x39abx3+_0x53bb[292]+_0x39abx4+_0x53bb[293])}:function(_0x39abx2,_0x39abx3,_0x39abx4){return null==_0x39abx2?null:_0x39abx2[_0x53bb[295]][_0x53bb[297]](_0x53bb[291]+_0x39abx3+_0x53bb[292]+_0x39abx4+_0x53bb[293],_0x39abx2[_0x53bb[295]],null,XPathResult.ANY_TYPE,null)[_0x53bb[296]]()}}(),getFunctionName:function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2){if(null!=_0x39abx2[_0x53bb[298]]){_0x39abx3=_0x39abx2[_0x53bb[298]]}else {_0x39abx2=_0x39abx2.toString();for(_0x39abx3=9;_0x53bb[185]==_0x39abx2[_0x53bb[225]](_0x39abx3);){_0x39abx3++};var _0x39abx4=_0x39abx2[_0x53bb[2]](_0x53bb[299],_0x39abx3),_0x39abx3=_0x39abx2[_0x53bb[85]](_0x39abx3,_0x39abx4)}};return _0x39abx3},indexOf:function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx3){for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){if(_0x39abx2[_0x39abx4]==_0x39abx3){return _0x39abx4}}};return -1},remove:function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(_0x53bb[194]== typeof _0x39abx3){for(var _0x39abx5=mxUtils[_0x53bb[2]](_0x39abx3,_0x39abx2);0<=_0x39abx5;){_0x39abx3[_0x53bb[300]](_0x39abx5,1),_0x39abx4=_0x39abx2,_0x39abx5=mxUtils[_0x53bb[2]](_0x39abx3,_0x39abx2)}};for(var _0x39abx9 in _0x39abx3){_0x39abx3[_0x39abx9]==_0x39abx2&&( delete _0x39abx3[_0x39abx9],_0x39abx4=_0x39abx2)};return _0x39abx4},isNode:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return null!=_0x39abx2&&!isNaN(_0x39abx2[_0x53bb[288]])&&(null==_0x39abx3||_0x39abx2[_0x53bb[301]][_0x53bb[216]]()==_0x39abx3[_0x53bb[216]]())?null==_0x39abx4||_0x39abx2[_0x53bb[284]](_0x39abx4)==_0x39abx5:!1},getChildNodes:function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3||mxConstants[_0x53bb[289]];for(var _0x39abx4=[],_0x39abx5=_0x39abx2[_0x53bb[285]];null!=_0x39abx5;){_0x39abx5[_0x53bb[288]]==_0x39abx3&&_0x39abx4[_0x53bb[207]](_0x39abx5),_0x39abx5=_0x39abx5[_0x53bb[287]]};return _0x39abx4},createXmlDocument:function(){var _0x39abx2=null;document[_0x53bb[302]]&&document[_0x53bb[302]][_0x53bb[303]]?_0x39abx2=document[_0x53bb[302]][_0x53bb[303]](_0x53bb[110],_0x53bb[110],null):window[_0x53bb[304]]&&(_0x39abx2= new ActiveXObject(_0x53bb[305]));return _0x39abx2},parseXml:function(){return mxClient[_0x53bb[80]]&&(_0x53bb[82]=== typeof document[_0x53bb[5]]||9>document[_0x53bb[5]])?function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[306]]();_0x39abx3[_0x53bb[307]]=_0x53bb[308];_0x39abx3[_0x53bb[309]](_0x39abx2);return _0x39abx3}:function(_0x39abx2){return ( new DOMParser)[_0x53bb[311]](_0x39abx2,_0x53bb[310])}}(),clearSelection:function(){if(document[_0x53bb[312]]){return function(){document[_0x53bb[312]][_0x53bb[313]]()}};if(window[_0x53bb[314]]){return function(){window[_0x53bb[314]]()[_0x53bb[315]]()}}}(),getPrettyXml:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=[];if(null!=_0x39abx2){if(_0x39abx3=_0x39abx3||_0x53bb[316],_0x39abx4=_0x39abx4||_0x53bb[110],_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[317]]){_0x39abx5[_0x53bb[207]](_0x39abx2[_0x53bb[318]])}else {_0x39abx5[_0x53bb[207]](_0x39abx4+_0x53bb[319]+_0x39abx2[_0x53bb[301]]);var _0x39abx9=_0x39abx2[_0x53bb[320]];if(null!=_0x39abx9){for(var _0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){var _0x39abx12=mxUtils[_0x53bb[321]](_0x39abx9[_0x39abxa][_0x53bb[318]]);_0x39abx5[_0x53bb[207]](_0x53bb[185]+_0x39abx9[_0x39abxa][_0x53bb[301]]+_0x53bb[322]+_0x39abx12+_0x53bb[323])}};_0x39abx9=_0x39abx2[_0x53bb[285]];if(null!=_0x39abx9){for(_0x39abx5[_0x53bb[207]](_0x53bb[324]);null!=_0x39abx9;){_0x39abx5[_0x53bb[207]](mxUtils[_0x53bb[325]](_0x39abx9,_0x39abx3,_0x39abx4+_0x39abx3)),_0x39abx9=_0x39abx9[_0x53bb[287]]};_0x39abx5[_0x53bb[207]](_0x39abx4+_0x53bb[326]+_0x39abx2[_0x53bb[301]]+_0x53bb[324])}else {_0x39abx5[_0x53bb[207]](_0x53bb[327])}}};return _0x39abx5[_0x53bb[234]](_0x53bb[110])},removeWhitespace:function(_0x39abx2,_0x39abx3){for(var _0x39abx4=_0x39abx3?_0x39abx2[_0x53bb[328]]:_0x39abx2[_0x53bb[287]];null!=_0x39abx4&&_0x39abx4[_0x53bb[288]]==mxConstants[_0x53bb[317]];){var _0x39abx5=_0x39abx3?_0x39abx4[_0x53bb[328]]:_0x39abx4[_0x53bb[287]],_0x39abx9=mxUtils[_0x53bb[329]](_0x39abx4);0==mxUtils[_0x53bb[330]](_0x39abx9)[_0x53bb[67]]&&_0x39abx4[_0x53bb[265]][_0x53bb[266]](_0x39abx4);_0x39abx4=_0x39abx5}},htmlEntities:function(_0x39abx2,_0x39abx3){_0x39abx2=(_0x39abx2||_0x53bb[110])[_0x53bb[230]](/&/g,_0x53bb[331]);_0x39abx2=_0x39abx2[_0x53bb[230]](/"/g,_0x53bb[332]);_0x39abx2=_0x39abx2[_0x53bb[230]](/\'/g,_0x53bb[333]);_0x39abx2=_0x39abx2[_0x53bb[230]](/</g,_0x53bb[334]);_0x39abx2=_0x39abx2[_0x53bb[230]](/>/g,_0x53bb[335]);if(null==_0x39abx3||_0x39abx3){_0x39abx2=_0x39abx2[_0x53bb[230]](/\n/g,_0x53bb[336])};return _0x39abx2},isVml:function(_0x39abx2){return null!=_0x39abx2&&_0x53bb[97]==_0x39abx2[_0x53bb[337]]},getXml:function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x53bb[110];null!=_0x39abx2&&(_0x39abx4=_0x39abx2[_0x53bb[338]],_0x39abx4=null==_0x39abx4?_0x39abx2[_0x53bb[339]]?_0x39abx2[_0x53bb[339]]:( new XMLSerializer)[_0x53bb[340]](_0x39abx2):_0x39abx4[_0x53bb[230]](/\r\n\t[\t]*/g,_0x53bb[110])[_0x53bb[230]](/>\r\n/g,_0x53bb[341])[_0x53bb[230]](/\r\n/g,_0x53bb[192]));return _0x39abx4=_0x39abx4[_0x53bb[230]](/\n/g,_0x39abx3||_0x53bb[336])},getTextContent:function(_0x39abx2){var _0x39abx3=_0x53bb[110];null!=_0x39abx2&&(null!=_0x39abx2[_0x53bb[285]]&&(_0x39abx2=_0x39abx2[_0x53bb[285]]),_0x39abx3=_0x39abx2[_0x53bb[318]]||_0x53bb[110]);return _0x39abx3},getInnerHtml:function(){return mxClient[_0x53bb[80]]?function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[339]]:_0x53bb[110]}:function(_0x39abx2){return null!=_0x39abx2?( new XMLSerializer)[_0x53bb[340]](_0x39abx2):_0x53bb[110]}}(),getOuterHtml:function(){return mxClient[_0x53bb[80]]?function(_0x39abx2){if(null!=_0x39abx2){if(null!=_0x39abx2[_0x53bb[342]]){return _0x39abx2[_0x53bb[342]]};var _0x39abx3=[];_0x39abx3[_0x53bb[207]](_0x53bb[319]+_0x39abx2[_0x53bb[301]]);var _0x39abx4=_0x39abx2[_0x53bb[320]];if(null!=_0x39abx4){for(var _0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){var _0x39abx9=_0x39abx4[_0x39abx5][_0x53bb[318]];null!=_0x39abx9&&0<_0x39abx9[_0x53bb[67]]&&(_0x39abx3[_0x53bb[207]](_0x53bb[185]),_0x39abx3[_0x53bb[207]](_0x39abx4[_0x39abx5][_0x53bb[301]]),_0x39abx3[_0x53bb[207]](_0x53bb[322]),_0x39abx3[_0x53bb[207]](_0x39abx9),_0x39abx3[_0x53bb[207]](_0x53bb[323]))}};0==_0x39abx2[_0x53bb[339]][_0x53bb[67]]?_0x39abx3[_0x53bb[207]](_0x53bb[343]):(_0x39abx3[_0x53bb[207]](_0x53bb[341]),_0x39abx3[_0x53bb[207]](_0x39abx2[_0x53bb[339]]),_0x39abx3[_0x53bb[207]](_0x53bb[326]+_0x39abx2[_0x53bb[301]]+_0x53bb[341]));return _0x39abx3[_0x53bb[234]](_0x53bb[110])};return _0x53bb[110]}:function(_0x39abx2){return null!=_0x39abx2?( new XMLSerializer)[_0x53bb[340]](_0x39abx2):_0x53bb[110]}}(),write:function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[295]][_0x53bb[344]](_0x39abx3);null!=_0x39abx2&&_0x39abx2[_0x53bb[62]](_0x39abx4);return _0x39abx4},writeln:function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[295]][_0x53bb[344]](_0x39abx3);null!=_0x39abx2&&(_0x39abx2[_0x53bb[62]](_0x39abx4),_0x39abx2[_0x53bb[62]](document[_0x53bb[55]](_0x53bb[345])));return _0x39abx4},br:function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3||1;for(var _0x39abx4=null,_0x39abx5=0;_0x39abx5<_0x39abx3;_0x39abx5++){null!=_0x39abx2&&(_0x39abx4=_0x39abx2[_0x53bb[295]][_0x53bb[55]](_0x53bb[345]),_0x39abx2[_0x53bb[62]](_0x39abx4))};return _0x39abx4},button:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:document;_0x39abx4=_0x39abx4[_0x53bb[55]](_0x53bb[172]);mxUtils[_0x53bb[53]](_0x39abx4,_0x39abx2);mxEvent[_0x53bb[169]](_0x39abx4,_0x53bb[173],function(_0x39abx2){_0x39abx3(_0x39abx2)});return _0x39abx4},para:function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[346]);mxUtils[_0x53bb[53]](_0x39abx4,_0x39abx3);null!=_0x39abx2&&_0x39abx2[_0x53bb[62]](_0x39abx4);return _0x39abx4},addTransparentBackgroundFilter:function(_0x39abx2){_0x39abx2[_0x53bb[124]][_0x53bb[347]]+=_0x53bb[348]+mxClient[_0x53bb[88]]+_0x53bb[349]},linkAction:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return mxUtils[_0x53bb[54]](_0x39abx2,_0x39abx3,function(){_0x39abx4[_0x53bb[350]](_0x39abx5)},_0x39abx9)},linkInvoke:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){return mxUtils[_0x53bb[54]](_0x39abx2,_0x39abx3,function(){_0x39abx4[_0x39abx5](_0x39abx9)},_0x39abxa)},link:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=document[_0x53bb[55]](_0x53bb[351]);_0x39abx9[_0x53bb[124]][_0x53bb[352]]=_0x53bb[353];_0x39abx9[_0x53bb[124]][_0x53bb[354]]=_0x53bb[355];_0x39abx9[_0x53bb[124]][_0x53bb[270]]=_0x53bb[356];null!=_0x39abx5&&(_0x39abx9[_0x53bb[124]][_0x53bb[357]]=_0x39abx5+_0x53bb[168]);mxEvent[_0x53bb[169]](_0x39abx9,_0x53bb[173],_0x39abx4);mxUtils[_0x53bb[53]](_0x39abx9,_0x39abx3);null!=_0x39abx2&&_0x39abx2[_0x53bb[62]](_0x39abx9);return _0x39abx9},fit:function(_0x39abx2){var _0x39abx3=parseInt(_0x39abx2[_0x53bb[358]]),_0x39abx4=parseInt(_0x39abx2[_0x53bb[359]]),_0x39abx5=document[_0x53bb[112]],_0x39abx9=document[_0x53bb[158]],_0x39abxa=(_0x39abx5[_0x53bb[360]]||_0x39abx9[_0x53bb[360]])+(_0x39abx5[_0x53bb[159]]||_0x39abx9[_0x53bb[159]]);_0x39abx3+_0x39abx4>_0x39abxa&&(_0x39abx2[_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[160]](_0x39abx5[_0x53bb[360]]||_0x39abx9[_0x53bb[360]],_0x39abxa-_0x39abx4)+_0x53bb[168]);_0x39abx3=parseInt(_0x39abx2[_0x53bb[362]]);_0x39abx4=parseInt(_0x39abx2[_0x53bb[167]]);_0x39abxa=(_0x39abx5[_0x53bb[190]]||_0x39abx9[_0x53bb[190]])+Math[_0x53bb[160]](_0x39abx5[_0x53bb[157]]||0,_0x39abx9[_0x53bb[157]]);_0x39abx3+_0x39abx4>_0x39abxa&&(_0x39abx2[_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[160]](_0x39abx5[_0x53bb[190]]||_0x39abx9[_0x53bb[190]],_0x39abxa-_0x39abx4)+_0x53bb[168])},open:function(_0x39abx2){if(mxClient[_0x53bb[133]]){try{netscape[_0x53bb[366]][_0x53bb[365]][_0x53bb[364]](_0x53bb[363])}catch(b){return mxUtils[_0x53bb[150]](_0x53bb[367]),_0x53bb[110]};var _0x39abx4=Components[_0x53bb[372]][_0x53bb[371]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[368]]);_0x39abx4[_0x53bb[373]](_0x39abx2);if(!_0x39abx4[_0x53bb[374]]()){return mxUtils[_0x53bb[150]](_0x53bb[375]),_0x53bb[110]};_0x39abx2=Components[_0x53bb[372]][_0x53bb[377]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[376]]);_0x39abx2[_0x53bb[176]](_0x39abx4,1,4,null);_0x39abx4=Components[_0x53bb[372]][_0x53bb[379]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[378]]);_0x39abx4[_0x53bb[176]](_0x39abx2);return _0x39abx4[_0x53bb[381]](_0x39abx4[_0x53bb[380]]())};_0x39abx4=( new ActiveXObject(_0x53bb[382])).OpenTextFile(_0x39abx2,1);_0x39abx2=_0x39abx4[_0x53bb[383]]();_0x39abx4[_0x53bb[268]]();return _0x39abx2},save:function(_0x39abx2,_0x39abx3){if(mxClient[_0x53bb[133]]){try{netscape[_0x53bb[366]][_0x53bb[365]][_0x53bb[364]](_0x53bb[363])}catch(c){mxUtils[_0x53bb[150]](_0x53bb[384]);return};var _0x39abx5=Components[_0x53bb[372]][_0x53bb[371]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[368]]);_0x39abx5[_0x53bb[373]](_0x39abx2);_0x39abx5[_0x53bb[374]]()||_0x39abx5[_0x53bb[385]](0,420);var _0x39abx9=Components[_0x53bb[372]][_0x53bb[387]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[386]]);_0x39abx9[_0x53bb[176]](_0x39abx5,34,4,null);_0x39abx9[_0x53bb[53]](_0x39abx3,_0x39abx3[_0x53bb[67]]);_0x39abx9[_0x53bb[388]]();_0x39abx9[_0x53bb[268]]()}else {_0x39abx5=( new ActiveXObject(_0x53bb[382])).CreateTextFile(_0x39abx2,!0),_0x39abx5.Write(_0x39abx3),_0x39abx5.Close()}},saveAs:function(_0x39abx2){var _0x39abx3=document[_0x53bb[55]](_0x53bb[389]);_0x39abx3[_0x53bb[57]](_0x53bb[390],_0x53bb[110]);_0x39abx3[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];document[_0x53bb[112]][_0x53bb[62]](_0x39abx3);try{if(mxClient[_0x53bb[133]]){var _0x39abx4=_0x39abx3[_0x53bb[391]];_0x39abx4[_0x53bb[392]]();_0x39abx4[_0x53bb[53]](_0x39abx2);_0x39abx4[_0x53bb[268]]();try{netscape[_0x53bb[366]][_0x53bb[365]][_0x53bb[364]](_0x53bb[363]),_0x39abx3[_0x53bb[393]](),saveDocument(_0x39abx4)}catch(d){mxUtils[_0x53bb[150]](_0x53bb[394])}}else {_0x39abx4=_0x39abx3[_0x53bb[396]][_0x53bb[395]],_0x39abx4[_0x53bb[53]](_0x39abx2),_0x39abx4[_0x53bb[398]](_0x53bb[397],!1,document[_0x53bb[45]])}}finally{document[_0x53bb[112]][_0x53bb[266]](_0x39abx3)}},copy:function(_0x39abx2){if(window[_0x53bb[399]]){window[_0x53bb[399]][_0x53bb[401]](_0x53bb[400],_0x39abx2)}else {netscape[_0x53bb[366]][_0x53bb[365]][_0x53bb[364]](_0x53bb[363]);var _0x39abx3=Components[_0x53bb[372]][_0x53bb[403]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[402]]);if(_0x39abx3){var _0x39abx4=Components[_0x53bb[372]][_0x53bb[405]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[404]]);if(_0x39abx4){_0x39abx4[_0x53bb[407]](_0x53bb[406]);var _0x39abx5=Components[_0x53bb[372]][_0x53bb[409]][_0x53bb[370]](Components[_0x53bb[369]][_0x53bb[408]]);_0x39abx5[_0x53bb[410]]=_0x39abx2;_0x39abx4[_0x53bb[411]](_0x53bb[406],_0x39abx5,2*_0x39abx2[_0x53bb[67]]);_0x39abx3[_0x53bb[401]](_0x39abx4,null,Components[_0x53bb[369]][_0x53bb[402]][_0x53bb[412]])}}}},load:function(_0x39abx2){_0x39abx2= new mxXmlRequest(_0x39abx2,null,_0x53bb[413],!1);_0x39abx2[_0x53bb[414]]();return _0x39abx2},get:function(_0x39abx2,_0x39abx3,_0x39abx4){return ( new mxXmlRequest(_0x39abx2,null,_0x53bb[413]))[_0x53bb[414]](_0x39abx3,_0x39abx4)},post:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return ( new mxXmlRequest(_0x39abx2,_0x39abx3))[_0x53bb[414]](_0x39abx4,_0x39abx5)},submit:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return ( new mxXmlRequest(_0x39abx2,_0x39abx3))[_0x53bb[415]](_0x39abx4,_0x39abx5)},loadInto:function(_0x39abx2,_0x39abx3,_0x39abx4){mxClient[_0x53bb[80]]?_0x39abx3[_0x53bb[416]]=function(){4==_0x39abx3[_0x53bb[417]]&&_0x39abx4()}:_0x39abx3[_0x53bb[418]](_0x53bb[219],_0x39abx4,!1);_0x39abx3[_0x53bb[219]](_0x39abx2)},getValue:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=null!=_0x39abx2?_0x39abx2[_0x39abx3]:null;null==_0x39abx2&&(_0x39abx2=_0x39abx4);return _0x39abx2},getNumber:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=null!=_0x39abx2?_0x39abx2[_0x39abx3]:null;null==_0x39abx2&&(_0x39abx2=_0x39abx4||0);return Number(_0x39abx2)},getColor:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=null!=_0x39abx2?_0x39abx2[_0x39abx3]:null;null==_0x39abx2?_0x39abx2=_0x39abx4:_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);return _0x39abx2},clone:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;var _0x39abx5=null;if(null!=_0x39abx2&&_0x53bb[279]== typeof _0x39abx2[_0x53bb[196]]){var _0x39abx5= new _0x39abx2[_0x53bb[196]],_0x39abx9;for(_0x39abx9 in _0x39abx2){if(_0x39abx9!=mxObjectIdentity[_0x53bb[195]]&&(null==_0x39abx3||0>mxUtils[_0x53bb[2]](_0x39abx3,_0x39abx9))){_0x39abx5[_0x39abx9]=!_0x39abx4&&_0x53bb[194]== typeof _0x39abx2[_0x39abx9]?mxUtils[_0x53bb[238]](_0x39abx2[_0x39abx9]):_0x39abx2[_0x39abx9]}}};return _0x39abx5},equalPoints:function(_0x39abx2,_0x39abx3){if(null==_0x39abx2&&null!=_0x39abx3||null!=_0x39abx2&&null==_0x39abx3||null!=_0x39abx2&&null!=_0x39abx3&&_0x39abx2[_0x53bb[67]]!=_0x39abx3[_0x53bb[67]]){return !1};if(null!=_0x39abx2&&null!=_0x39abx3){for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){if(_0x39abx2[_0x39abx4]==_0x39abx3[_0x39abx4]||null!=_0x39abx2[_0x39abx4]&&!_0x39abx2[_0x39abx4][_0x53bb[237]](_0x39abx3[_0x39abx4])){return !1}}};return !0},equalEntries:function(_0x39abx2,_0x39abx3){if(null==_0x39abx2&&null!=_0x39abx3||null!=_0x39abx2&&null==_0x39abx3||null!=_0x39abx2&&null!=_0x39abx3&&_0x39abx2[_0x53bb[67]]!=_0x39abx3[_0x53bb[67]]){return !1};if(null!=_0x39abx2&&null!=_0x39abx3){for(var _0x39abx4 in _0x39abx2){if(_0x39abx2[_0x39abx4]!=_0x39abx3[_0x39abx4]){return !1}}};return !0},extend:function(_0x39abx2,_0x39abx3){var _0x39abx4=function(){};_0x39abx4[_0x53bb[202]]=_0x39abx3[_0x53bb[202]];_0x39abx2[_0x53bb[202]]= new _0x39abx4;_0x39abx2[_0x53bb[202]][_0x53bb[196]]=_0x39abx2},toString:function(_0x39abx2){var _0x39abx3=_0x53bb[110],_0x39abx4;for(_0x39abx4 in _0x39abx2){try{if(null==_0x39abx2[_0x39abx4]){_0x39abx3+=_0x39abx4+_0x53bb[419]}else {if(_0x53bb[279]== typeof _0x39abx2[_0x39abx4]){_0x39abx3+=_0x39abx4+_0x53bb[420]}else {if(_0x53bb[194]== typeof _0x39abx2[_0x39abx4]){var _0x39abx5=mxUtils[_0x53bb[197]](_0x39abx2[_0x39abx4][_0x53bb[196]]),_0x39abx3=_0x39abx3+(_0x39abx4+_0x53bb[421]+_0x39abx5+_0x53bb[422])}else {_0x39abx3+=_0x39abx4+_0x53bb[423]+_0x39abx2[_0x39abx4]+_0x53bb[192]}}}}catch(e){_0x39abx3+=_0x39abx4+_0x53bb[226]+e[_0x53bb[281]]}};return _0x39abx3},toRadians:function(_0x39abx2){return Math[_0x53bb[424]]*_0x39abx2/180},arcToCurves:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){_0x39abx13-=_0x39abx2;_0x39abx14-=_0x39abx3;if(0===_0x39abx4||0===_0x39abx5){return _0x39abx18};_0x39abx4=Math[_0x53bb[425]](_0x39abx4);_0x39abx5=Math[_0x53bb[425]](_0x39abx5);var _0x39abx15=-_0x39abx13/2,_0x39abx16=-_0x39abx14/2,_0x39abx17=Math[_0x53bb[426]](_0x39abx9*Math[_0x53bb[424]]/180),_0x39abx18=Math[_0x53bb[427]](_0x39abx9*Math[_0x53bb[424]]/180);_0x39abx9=_0x39abx17*_0x39abx15+_0x39abx18*_0x39abx16;var _0x39abx15=-1*_0x39abx18*_0x39abx15+_0x39abx17*_0x39abx16,_0x39abx16=_0x39abx9*_0x39abx9,_0x39abx19=_0x39abx15*_0x39abx15,_0x39abx1a=_0x39abx4*_0x39abx4,_0x39abx1b=_0x39abx5*_0x39abx5,_0x39abx1c=_0x39abx16/_0x39abx1a+_0x39abx19/_0x39abx1b;1<_0x39abx1c?(_0x39abx4*=Math[_0x53bb[428]](_0x39abx1c),_0x39abx5*=Math[_0x53bb[428]](_0x39abx1c),_0x39abxa=0):(_0x39abx1c=1,_0x39abxa===_0x39abx12&&(_0x39abx1c= -1),_0x39abxa=_0x39abx1c*Math[_0x53bb[428]]((_0x39abx1a*_0x39abx1b-_0x39abx1a*_0x39abx19-_0x39abx1b*_0x39abx16)/(_0x39abx1a*_0x39abx19+_0x39abx1b*_0x39abx16)));_0x39abx16=_0x39abxa*_0x39abx4*_0x39abx15/_0x39abx5;_0x39abx19=-1*_0x39abxa*_0x39abx5*_0x39abx9/_0x39abx4;_0x39abx13=_0x39abx17*_0x39abx16-_0x39abx18*_0x39abx19+_0x39abx13/2;_0x39abx14=_0x39abx18*_0x39abx16+_0x39abx17*_0x39abx19+_0x39abx14/2;_0x39abx1a=Math[_0x53bb[429]]((_0x39abx15-_0x39abx19)/_0x39abx5,(_0x39abx9-_0x39abx16)/_0x39abx4)-Math[_0x53bb[429]](0,1);_0x39abxa=0<=_0x39abx1a?_0x39abx1a:2*Math[_0x53bb[424]]+_0x39abx1a;_0x39abx1a=Math[_0x53bb[429]]((-_0x39abx15-_0x39abx19)/_0x39abx5,(-_0x39abx9-_0x39abx16)/_0x39abx4)-Math[_0x53bb[429]]((_0x39abx15-_0x39abx19)/_0x39abx5,(_0x39abx9-_0x39abx16)/_0x39abx4);_0x39abx9=0<=_0x39abx1a?_0x39abx1a:2*Math[_0x53bb[424]]+_0x39abx1a;0==_0x39abx12&&0<_0x39abx9?_0x39abx9-=2*Math[_0x53bb[424]]:0!=_0x39abx12&&0>_0x39abx9&&(_0x39abx9+=2*Math[_0x53bb[424]]);_0x39abx12=2*_0x39abx9/Math[_0x53bb[424]];_0x39abx12=Math[_0x53bb[430]](0>_0x39abx12?-1*_0x39abx12:_0x39abx12);_0x39abx9/=_0x39abx12;_0x39abx15=8/3*Math[_0x53bb[427]](_0x39abx9/4)*Math[_0x53bb[427]](_0x39abx9/4)/Math[_0x53bb[427]](_0x39abx9/2);_0x39abx16=_0x39abx17*_0x39abx4;_0x39abx17*=_0x39abx5;_0x39abx4*=_0x39abx18;_0x39abx5*=_0x39abx18;for(var _0x39abx1d=Math[_0x53bb[426]](_0x39abxa),_0x39abx1e=Math[_0x53bb[427]](_0x39abxa),_0x39abx19=-_0x39abx15*(_0x39abx16*_0x39abx1e+_0x39abx5*_0x39abx1d),_0x39abx1a=-_0x39abx15*(_0x39abx4*_0x39abx1e-_0x39abx17*_0x39abx1d),_0x39abx1c=_0x39abx1b=0,_0x39abx18=[],_0x39abx1f=0;_0x39abx1f<_0x39abx12;++_0x39abx1f){_0x39abxa+=_0x39abx9;var _0x39abx1d=Math[_0x53bb[426]](_0x39abxa),_0x39abx1e=Math[_0x53bb[427]](_0x39abxa),_0x39abx1b=_0x39abx16*_0x39abx1d-_0x39abx5*_0x39abx1e+_0x39abx13,_0x39abx1c=_0x39abx4*_0x39abx1d+_0x39abx17*_0x39abx1e+_0x39abx14,_0x39abx20=-_0x39abx15*(_0x39abx16*_0x39abx1e+_0x39abx5*_0x39abx1d),_0x39abx1d=-_0x39abx15*(_0x39abx4*_0x39abx1e-_0x39abx17*_0x39abx1d),_0x39abx1e=6*_0x39abx1f;_0x39abx18[_0x39abx1e]=Number(_0x39abx19+_0x39abx2);_0x39abx18[_0x39abx1e+1]=Number(_0x39abx1a+_0x39abx3);_0x39abx18[_0x39abx1e+2]=Number(_0x39abx1b-_0x39abx20+_0x39abx2);_0x39abx18[_0x39abx1e+3]=Number(_0x39abx1c-_0x39abx1d+_0x39abx3);_0x39abx18[_0x39abx1e+4]=Number(_0x39abx1b+_0x39abx2);_0x39abx18[_0x39abx1e+5]=Number(_0x39abx1c+_0x39abx3);_0x39abx19=_0x39abx1b+_0x39abx20;_0x39abx1a=_0x39abx1c+_0x39abx1d};return _0x39abx18},getBoundingBox:function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(null!=_0x39abx2&&null!=_0x39abx3&&0!=_0x39abx3){var _0x39abx5=mxUtils[_0x53bb[431]](_0x39abx3),_0x39abx4=Math[_0x53bb[426]](_0x39abx5),_0x39abx9=Math[_0x53bb[427]](_0x39abx5),_0x39abxa= new mxPoint(_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]/2,_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]/2),_0x39abx12= new mxPoint(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]),_0x39abx5= new mxPoint(_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]],_0x39abx2[_0x53bb[236]]),_0x39abx13= new mxPoint(_0x39abx5[_0x53bb[235]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]),_0x39abx14= new mxPoint(_0x39abx2[_0x53bb[235]],_0x39abx13[_0x53bb[236]]),_0x39abx12=mxUtils[_0x53bb[432]](_0x39abx12,_0x39abx4,_0x39abx9,_0x39abxa),_0x39abx5=mxUtils[_0x53bb[432]](_0x39abx5,_0x39abx4,_0x39abx9,_0x39abxa),_0x39abx13=mxUtils[_0x53bb[432]](_0x39abx13,_0x39abx4,_0x39abx9,_0x39abxa),_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx4,_0x39abx9,_0x39abxa),_0x39abx4= new mxRectangle(_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],0,0);_0x39abx4[_0x53bb[99]]( new mxRectangle(_0x39abx5[_0x53bb[235]],_0x39abx5[_0x53bb[236]],0,0));_0x39abx4[_0x53bb[99]]( new mxRectangle(_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],0,0));_0x39abx4[_0x53bb[99]]( new mxRectangle(_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]],0,0))};return _0x39abx4},getRotatedPoint:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx5=null!=_0x39abx5?_0x39abx5: new mxPoint;var _0x39abx9=_0x39abx2[_0x53bb[235]]-_0x39abx5[_0x53bb[235]];_0x39abx2=_0x39abx2[_0x53bb[236]]-_0x39abx5[_0x53bb[236]];return new mxPoint(_0x39abx9*_0x39abx3-_0x39abx2*_0x39abx4+_0x39abx5[_0x53bb[235]],_0x39abx2*_0x39abx3+_0x39abx9*_0x39abx4+_0x39abx5[_0x53bb[236]])},getPortConstraints:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx2=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_PORT_CONSTRAINT,null);if(null==_0x39abx2){return _0x39abx5};_0x39abx5=_0x39abx2.toString();_0x39abx2=mxConstants[_0x53bb[434]];0<=_0x39abx5[_0x53bb[2]](mxConstants.DIRECTION_NORTH)&&(_0x39abx2|=mxConstants[_0x53bb[435]]);0<=_0x39abx5[_0x53bb[2]](mxConstants.DIRECTION_WEST)&&(_0x39abx2|=mxConstants[_0x53bb[436]]);0<=_0x39abx5[_0x53bb[2]](mxConstants.DIRECTION_SOUTH)&&(_0x39abx2|=mxConstants[_0x53bb[437]]);0<=_0x39abx5[_0x53bb[2]](mxConstants.DIRECTION_EAST)&&(_0x39abx2|=mxConstants[_0x53bb[438]]);return _0x39abx2},reversePortConstraints:function(_0x39abx2){var _0x39abx3=0,_0x39abx3=(_0x39abx2&mxConstants[_0x53bb[436]])<<3,_0x39abx3=_0x39abx3|(_0x39abx2&mxConstants[_0x53bb[435]])<<1,_0x39abx3=_0x39abx3|(_0x39abx2&mxConstants[_0x53bb[437]])>>1;return _0x39abx3|=(_0x39abx2&mxConstants[_0x53bb[438]])>>3},findNearestSegment:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=-1;if(0<_0x39abx2[_0x53bb[439]][_0x53bb[67]]){for(var _0x39abx9=_0x39abx2[_0x53bb[439]][0],_0x39abxa=null,_0x39abx12=1;_0x39abx12<_0x39abx2[_0x53bb[439]][_0x53bb[67]];_0x39abx12++){var _0x39abx13=_0x39abx2[_0x53bb[439]][_0x39abx12],_0x39abx9=mxUtils[_0x53bb[440]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx3,_0x39abx4);if(null==_0x39abxa||_0x39abx9<_0x39abxa){_0x39abxa=_0x39abx9,_0x39abx5=_0x39abx12-1};_0x39abx9=_0x39abx13}};return _0x39abx5},rectangleIntersectsSegment:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[236]],_0x39abx9=_0x39abx2[_0x53bb[235]],_0x39abxa=_0x39abx5+_0x39abx2[_0x53bb[119]],_0x39abx12=_0x39abx9+_0x39abx2[_0x53bb[117]];_0x39abx2=_0x39abx3[_0x53bb[235]];var _0x39abx13=_0x39abx4[_0x53bb[235]];_0x39abx3[_0x53bb[235]]>_0x39abx4[_0x53bb[235]]&&(_0x39abx2=_0x39abx4[_0x53bb[235]],_0x39abx13=_0x39abx3[_0x53bb[235]]);_0x39abx13>_0x39abx12&&(_0x39abx13=_0x39abx12);_0x39abx2<_0x39abx9&&(_0x39abx2=_0x39abx9);if(_0x39abx2>_0x39abx13){return !1};var _0x39abx9=_0x39abx3[_0x53bb[236]],_0x39abx12=_0x39abx4[_0x53bb[236]],_0x39abx14=_0x39abx4[_0x53bb[235]]-_0x39abx3[_0x53bb[235]];1E-7<Math[_0x53bb[425]](_0x39abx14)&&(_0x39abx4=(_0x39abx4[_0x53bb[236]]-_0x39abx3[_0x53bb[236]])/_0x39abx14,_0x39abx3=_0x39abx3[_0x53bb[236]]-_0x39abx4*_0x39abx3[_0x53bb[235]],_0x39abx9=_0x39abx4*_0x39abx2+_0x39abx3,_0x39abx12=_0x39abx4*_0x39abx13+_0x39abx3);_0x39abx9>_0x39abx12&&(_0x39abx3=_0x39abx12,_0x39abx12=_0x39abx9,_0x39abx9=_0x39abx3);_0x39abx12>_0x39abxa&&(_0x39abx12=_0x39abxa);_0x39abx9<_0x39abx5&&(_0x39abx9=_0x39abx5);return _0x39abx9>_0x39abx12?!1:!0},contains:function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx2[_0x53bb[235]]<=_0x39abx3&&_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]>=_0x39abx3&&_0x39abx2[_0x53bb[236]]<=_0x39abx4&&_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]>=_0x39abx4},intersects:function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[117]],_0x39abx5=_0x39abx2[_0x53bb[119]],_0x39abx9=_0x39abx3[_0x53bb[117]],_0x39abxa=_0x39abx3[_0x53bb[119]];if(0>=_0x39abx9||0>=_0x39abxa||0>=_0x39abx4||0>=_0x39abx5){return !1};var _0x39abx12=_0x39abx2[_0x53bb[235]],_0x39abx13=_0x39abx2[_0x53bb[236]],_0x39abx14=_0x39abx3[_0x53bb[235]],_0x39abx15=_0x39abx3[_0x53bb[236]],_0x39abx9=_0x39abx9+_0x39abx14,_0x39abxa=_0x39abxa+_0x39abx15,_0x39abx4=_0x39abx4+_0x39abx12,_0x39abx5=_0x39abx5+_0x39abx13;return (_0x39abx9<_0x39abx14||_0x39abx9>_0x39abx12)&&(_0x39abxa<_0x39abx15||_0x39abxa>_0x39abx13)&&(_0x39abx4<_0x39abx12||_0x39abx4>_0x39abx14)&&(_0x39abx5<_0x39abx13||_0x39abx5>_0x39abx15)},intersectsHotspot:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx5=null!=_0x39abx5?_0x39abx5:1;_0x39abx9=null!=_0x39abx9?_0x39abx9:0;_0x39abxa=null!=_0x39abxa?_0x39abxa:0;if(0<_0x39abx5){var _0x39abx12=_0x39abx2[_0x53bb[241]](),_0x39abx13=_0x39abx2[_0x53bb[242]](),_0x39abx14=_0x39abx2[_0x53bb[117]],_0x39abx15=_0x39abx2[_0x53bb[119]],_0x39abx16=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_STARTSIZE)*_0x39abx2[_0x53bb[441]][_0x53bb[255]];0<_0x39abx16&&(mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_HORIZONTAL,!0)?(_0x39abx13=_0x39abx2[_0x53bb[236]]+_0x39abx16/2,_0x39abx15=_0x39abx16):(_0x39abx12=_0x39abx2[_0x53bb[235]]+_0x39abx16/2,_0x39abx14=_0x39abx16));_0x39abx14=Math[_0x53bb[160]](_0x39abx9,_0x39abx14*_0x39abx5);_0x39abx15=Math[_0x53bb[160]](_0x39abx9,_0x39abx15*_0x39abx5);0<_0x39abxa&&(_0x39abx14=Math[_0x53bb[243]](_0x39abx14,_0x39abxa),_0x39abx15=Math[_0x53bb[243]](_0x39abx15,_0x39abxa));_0x39abx5= new mxRectangle(_0x39abx12-_0x39abx14/2,_0x39abx13-_0x39abx15/2,_0x39abx14,_0x39abx15);_0x39abx12=mxUtils[_0x53bb[431]](mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION)||0);0!=_0x39abx12&&(_0x39abx9=Math[_0x53bb[426]](-_0x39abx12),_0x39abxa=Math[_0x53bb[427]](-_0x39abx12),_0x39abx12= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]()),_0x39abx2=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx3,_0x39abx4),_0x39abx9,_0x39abxa,_0x39abx12),_0x39abx3=_0x39abx2[_0x53bb[235]],_0x39abx4=_0x39abx2[_0x53bb[236]]);return mxUtils[_0x53bb[442]](_0x39abx5,_0x39abx3,_0x39abx4)};return !0},getOffset:function(_0x39abx2,_0x39abx3){var _0x39abx4=0,_0x39abx5=0;if(null!=_0x39abx3&&_0x39abx3){var _0x39abx9=document[_0x53bb[112]],_0x39abxa=document[_0x53bb[158]],_0x39abx4=_0x39abx4+(_0x39abx9[_0x53bb[360]]||_0x39abxa[_0x53bb[360]]),_0x39abx5=_0x39abx5+(_0x39abx9[_0x53bb[190]]||_0x39abxa[_0x53bb[190]])};for(;_0x39abx2[_0x53bb[443]];){_0x39abx4+=_0x39abx2[_0x53bb[358]],_0x39abx5+=_0x39abx2[_0x53bb[362]],_0x39abx2=_0x39abx2[_0x53bb[443]]};return new mxPoint(_0x39abx4,_0x39abx5)},getScrollOrigin:function(_0x39abx2){for(var _0x39abx3=document[_0x53bb[112]],_0x39abx4=document[_0x53bb[158]],_0x39abx5= new mxPoint(_0x39abx3[_0x53bb[360]]||_0x39abx4[_0x53bb[360]],_0x39abx3[_0x53bb[190]]||_0x39abx4[_0x53bb[190]]);null!=_0x39abx2&&_0x39abx2!=_0x39abx3&&_0x39abx2!=_0x39abx4;){!isNaN(_0x39abx2[_0x53bb[360]])&&!isNaN(_0x39abx2[_0x53bb[190]])&&(_0x39abx5[_0x53bb[235]]+=_0x39abx2[_0x53bb[360]],_0x39abx5[_0x53bb[236]]+=_0x39abx2[_0x53bb[190]]),_0x39abx2=_0x39abx2[_0x53bb[265]]};return _0x39abx5},convertPoint:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=mxUtils[_0x53bb[444]](_0x39abx2);_0x39abx2=mxUtils[_0x53bb[445]](_0x39abx2);_0x39abx2[_0x53bb[235]]-=_0x39abx5[_0x53bb[235]];_0x39abx2[_0x53bb[236]]-=_0x39abx5[_0x53bb[236]];return new mxPoint(_0x39abx3-_0x39abx2[_0x53bb[235]],_0x39abx4-_0x39abx2[_0x53bb[236]])},ltrim:function(_0x39abx2,_0x39abx3){return _0x39abx2[_0x53bb[230]](RegExp(_0x53bb[446]+(_0x39abx3||_0x53bb[447])+_0x53bb[448],_0x53bb[449]),_0x53bb[110])},rtrim:function(_0x39abx2,_0x39abx3){return _0x39abx2[_0x53bb[230]](RegExp(_0x53bb[450]+(_0x39abx3||_0x53bb[447])+_0x53bb[451],_0x53bb[449]),_0x53bb[110])},trim:function(_0x39abx2,_0x39abx3){return mxUtils[_0x53bb[453]](mxUtils[_0x53bb[452]](_0x39abx2,_0x39abx3),_0x39abx3)},isNumeric:function(_0x39abx2){return null!=_0x39abx2&&(null==_0x39abx2[_0x53bb[67]]||0<_0x39abx2[_0x53bb[67]]&&0>_0x39abx2[_0x53bb[2]](_0x53bb[454])&&0>_0x39abx2[_0x53bb[2]](_0x53bb[455]))&&!isNaN(_0x39abx2)},mod:function(_0x39abx2,_0x39abx3){return (_0x39abx2%_0x39abx3+_0x39abx3)%_0x39abx3},intersection:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){var _0x39abx14=(_0x39abx13-_0x39abxa)*(_0x39abx4-_0x39abx2)-(_0x39abx12-_0x39abx9)*(_0x39abx5-_0x39abx3);_0x39abx12=((_0x39abx12-_0x39abx9)*(_0x39abx3-_0x39abxa)-(_0x39abx13-_0x39abxa)*(_0x39abx2-_0x39abx9))/_0x39abx14;_0x39abx9=((_0x39abx4-_0x39abx2)*(_0x39abx3-_0x39abxa)-(_0x39abx5-_0x39abx3)*(_0x39abx2-_0x39abx9))/_0x39abx14;return 0<=_0x39abx12&&1>=_0x39abx12&&0<=_0x39abx9&&1>=_0x39abx9? new mxPoint(_0x39abx2+_0x39abx12*(_0x39abx4-_0x39abx2),_0x39abx3+_0x39abx12*(_0x39abx5-_0x39abx3)):null},ptSegDistSq:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx4-=_0x39abx2;_0x39abx5-=_0x39abx3;_0x39abx9-=_0x39abx2;_0x39abxa-=_0x39abx3;0>=_0x39abx9*_0x39abx4+_0x39abxa*_0x39abx5?_0x39abx4=0:(_0x39abx9=_0x39abx4-_0x39abx9,_0x39abxa=_0x39abx5-_0x39abxa,_0x39abx2=_0x39abx9*_0x39abx4+_0x39abxa*_0x39abx5,_0x39abx4=0>=_0x39abx2?0:_0x39abx2*_0x39abx2/(_0x39abx4*_0x39abx4+_0x39abx5*_0x39abx5));_0x39abx9=_0x39abx9*_0x39abx9+_0x39abxa*_0x39abxa-_0x39abx4;0>_0x39abx9&&(_0x39abx9=0);return _0x39abx9},relativeCcw:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx4-=_0x39abx2;_0x39abx5-=_0x39abx3;_0x39abx9-=_0x39abx2;_0x39abxa-=_0x39abx3;_0x39abx2=_0x39abx9*_0x39abx5-_0x39abxa*_0x39abx4;0==_0x39abx2&&(_0x39abx2=_0x39abx9*_0x39abx4+_0x39abxa*_0x39abx5,0<_0x39abx2&&(_0x39abx2=(_0x39abx9-_0x39abx4)*_0x39abx4+(_0x39abxa-_0x39abx5)*_0x39abx5,0>_0x39abx2&&(_0x39abx2=0)));return 0>_0x39abx2?-1:0<_0x39abx2?1:0},animateChanges:function(_0x39abx2,_0x39abx3){mxEffects[_0x53bb[456]][_0x53bb[183]](this,arguments)},cascadeOpacity:function(_0x39abx2,_0x39abx3,_0x39abx4){mxEffects[_0x53bb[260]][_0x53bb[183]](this,arguments)},fadeOut:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){mxEffects[_0x53bb[457]][_0x53bb[183]](this,arguments)},setOpacity:function(_0x39abx2,_0x39abx3){mxUtils[_0x53bb[458]](_0x39abx2)?_0x39abx2[_0x53bb[124]][_0x53bb[347]]=100<=_0x39abx3?null:_0x53bb[459]+_0x39abx3/5+_0x53bb[460]:mxClient[_0x53bb[80]]&&(_0x53bb[82]=== typeof document[_0x53bb[5]]||9>document[_0x53bb[5]])?_0x39abx2[_0x53bb[124]][_0x53bb[347]]=100<=_0x39abx3?null:_0x53bb[459]+_0x39abx3+_0x53bb[460]:_0x39abx2[_0x53bb[124]][_0x53bb[461]]=_0x39abx3/100},createImage:function(_0x39abx2){var _0x39abx3=null;mxClient[_0x53bb[49]]&&_0x53bb[462]!=document[_0x53bb[135]]?(_0x39abx3=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[464]),_0x39abx3[_0x53bb[57]](_0x53bb[390],_0x39abx2),_0x39abx3[_0x53bb[124]][_0x53bb[465]]=_0x53bb[130]):(_0x39abx3=document[_0x53bb[55]](_0x53bb[466]),_0x39abx3[_0x53bb[57]](_0x53bb[390],_0x39abx2),_0x39abx3[_0x53bb[57]](_0x53bb[467],_0x53bb[468]));return _0x39abx3},sortCells:function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;var _0x39abx4= new mxDictionary;_0x39abx2[_0x53bb[470]](function(_0x39abx2,_0x39abx9){var _0x39abxa=_0x39abx4[_0x53bb[203]](_0x39abx2);null==_0x39abxa&&(_0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2)[_0x53bb[224]](mxCellPath.PATH_SEPARATOR),_0x39abx4[_0x53bb[204]](_0x39abx2,_0x39abxa));var _0x39abx12=_0x39abx4[_0x53bb[203]](_0x39abx9);null==_0x39abx12&&(_0x39abx12=mxCellPath[_0x53bb[385]](_0x39abx9)[_0x53bb[224]](mxCellPath.PATH_SEPARATOR),_0x39abx4[_0x53bb[204]](_0x39abx9,_0x39abx12));_0x39abxa=mxCellPath[_0x53bb[469]](_0x39abxa,_0x39abx12);return 0==_0x39abxa?0:0<_0x39abxa==_0x39abx3?1:-1});return _0x39abx2},getStylename:function(_0x39abx2){return null!=_0x39abx2&&(_0x39abx2=_0x39abx2[_0x53bb[224]](_0x53bb[471])[0],0>_0x39abx2[_0x53bb[2]](_0x53bb[226]))?_0x39abx2:_0x53bb[110]},getStylenames:function(_0x39abx2){var _0x39abx3=[];if(null!=_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[224]](_0x53bb[471]);for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){0>_0x39abx2[_0x39abx4][_0x53bb[2]](_0x53bb[226])&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])}};return _0x39abx3},indexOfStylename:function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx3){for(var _0x39abx4=_0x39abx2[_0x53bb[224]](_0x53bb[471]),_0x39abx5=0,_0x39abx9=0;_0x39abx9<_0x39abx4[_0x53bb[67]];_0x39abx9++){if(_0x39abx4[_0x39abx9]==_0x39abx3){return _0x39abx5};_0x39abx5+=_0x39abx4[_0x39abx9][_0x53bb[67]]+1}};return -1},addStylename:function(_0x39abx2,_0x39abx3){0>mxUtils[_0x53bb[472]](_0x39abx2,_0x39abx3)&&(null==_0x39abx2?_0x39abx2=_0x53bb[110]:0<_0x39abx2[_0x53bb[67]]&&_0x53bb[471]!=_0x39abx2[_0x53bb[225]](_0x39abx2[_0x53bb[67]]-1)&&(_0x39abx2+=_0x53bb[471]),_0x39abx2+=_0x39abx3);return _0x39abx2},removeStylename:function(_0x39abx2,_0x39abx3){var _0x39abx4=[];if(null!=_0x39abx2){for(var _0x39abx5=_0x39abx2[_0x53bb[224]](_0x53bb[471]),_0x39abx9=0;_0x39abx9<_0x39abx5[_0x53bb[67]];_0x39abx9++){_0x39abx5[_0x39abx9]!=_0x39abx3&&_0x39abx4[_0x53bb[207]](_0x39abx5[_0x39abx9])}};return _0x39abx4[_0x53bb[234]](_0x53bb[471])},removeAllStylenames:function(_0x39abx2){var _0x39abx3=[];if(null!=_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[224]](_0x53bb[471]);for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){0<=_0x39abx2[_0x39abx4][_0x53bb[2]](_0x53bb[226])&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])}};return _0x39abx3[_0x53bb[234]](_0x53bb[471])},setCellStyles:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]){_0x39abx2[_0x53bb[473]]();try{for(var _0x39abx9=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){if(null!=_0x39abx3[_0x39abx9]){var _0x39abxa=mxUtils[_0x53bb[475]](_0x39abx2[_0x53bb[474]](_0x39abx3[_0x39abx9]),_0x39abx4,_0x39abx5);_0x39abx2[_0x53bb[475]](_0x39abx3[_0x39abx9],_0x39abxa)}}}finally{_0x39abx2[_0x53bb[476]]()}}},setStyle:function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=null!=_0x39abx4&&(_0x53bb[82]== typeof _0x39abx4[_0x53bb[67]]||0<_0x39abx4[_0x53bb[67]]);if(null==_0x39abx2||0==_0x39abx2[_0x53bb[67]]){_0x39abx5&&(_0x39abx2=_0x39abx3+_0x53bb[226]+_0x39abx4)}else {var _0x39abx9=_0x39abx2[_0x53bb[2]](_0x39abx3+_0x53bb[226]);0>_0x39abx9?_0x39abx5&&(_0x39abx5=_0x53bb[471]==_0x39abx2[_0x53bb[225]](_0x39abx2[_0x53bb[67]]-1)?_0x53bb[110]:_0x53bb[471],_0x39abx2=_0x39abx2+_0x39abx5+_0x39abx3+_0x53bb[226]+_0x39abx4):(_0x39abx3=_0x39abx5?_0x39abx3+_0x53bb[226]+_0x39abx4:_0x53bb[110],_0x39abx4=_0x39abx2[_0x53bb[2]](_0x53bb[471],_0x39abx9),_0x39abx5||_0x39abx4++,_0x39abx2=_0x39abx2[_0x53bb[85]](0,_0x39abx9)+_0x39abx3+(_0x39abx4>_0x39abx9?_0x39abx2[_0x53bb[85]](_0x39abx4):_0x53bb[110]))};return _0x39abx2},setCellStyleFlags:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]){_0x39abx2[_0x53bb[473]]();try{for(var _0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[67]];_0x39abxa++){if(null!=_0x39abx3[_0x39abxa]){var _0x39abx12=mxUtils[_0x53bb[477]](_0x39abx2[_0x53bb[474]](_0x39abx3[_0x39abxa]),_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[475]](_0x39abx3[_0x39abxa],_0x39abx12)}}}finally{_0x39abx2[_0x53bb[476]]()}}},setStyleFlag:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null==_0x39abx2||0==_0x39abx2[_0x53bb[67]]){_0x39abx2=_0x39abx5||null==_0x39abx5?_0x39abx3+_0x53bb[226]+_0x39abx4:_0x39abx3+_0x53bb[478]}else {var _0x39abx9=_0x39abx2[_0x53bb[2]](_0x39abx3+_0x53bb[226]);if(0>_0x39abx9){_0x39abx9=_0x53bb[471]==_0x39abx2[_0x53bb[225]](_0x39abx2[_0x53bb[67]]-1)?_0x53bb[110]:_0x53bb[471],_0x39abx2=_0x39abx5||null==_0x39abx5?_0x39abx2+_0x39abx9+_0x39abx3+_0x53bb[226]+_0x39abx4:_0x39abx2+_0x39abx9+_0x39abx3+_0x53bb[478]}else {var _0x39abxa=_0x39abx2[_0x53bb[2]](_0x53bb[471],_0x39abx9),_0x39abx12=_0x53bb[110],_0x39abx12=0>_0x39abxa?_0x39abx2[_0x53bb[85]](_0x39abx9+_0x39abx3[_0x53bb[67]]+1):_0x39abx2[_0x53bb[85]](_0x39abx9+_0x39abx3[_0x53bb[67]]+1,_0x39abxa),_0x39abx12=null==_0x39abx5?parseInt(_0x39abx12)^_0x39abx4:_0x39abx5?parseInt(_0x39abx12)|_0x39abx4:parseInt(_0x39abx12)& ~_0x39abx4;_0x39abx2=_0x39abx2[_0x53bb[85]](0,_0x39abx9)+_0x39abx3+_0x53bb[226]+_0x39abx12+(0<=_0x39abxa?_0x39abx2[_0x53bb[85]](_0x39abxa):_0x53bb[110])}};return _0x39abx2},getAlignmentAsPoint:function(_0x39abx2,_0x39abx3){var _0x39abx4=0,_0x39abx5=0;_0x39abx2==mxConstants[_0x53bb[479]]?_0x39abx4= -0.5:_0x39abx2==mxConstants[_0x53bb[480]]&&(_0x39abx4= -1);_0x39abx3==mxConstants[_0x53bb[481]]?_0x39abx5= -0.5:_0x39abx3==mxConstants[_0x53bb[482]]&&(_0x39abx5= -1);return new mxPoint(_0x39abx4,_0x39abx5)},getSizeForString:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=null!=_0x39abx3?_0x39abx3:mxConstants[_0x53bb[483]];_0x39abx4=null!=_0x39abx4?_0x39abx4:mxConstants[_0x53bb[484]];var _0x39abx5=document[_0x53bb[55]](_0x53bb[485]);_0x39abx5[_0x53bb[124]][_0x53bb[486]]=_0x39abx4;_0x39abx5[_0x53bb[124]][_0x53bb[487]]=Math[_0x53bb[488]](_0x39abx3)+_0x53bb[168];_0x39abx5[_0x53bb[124]][_0x53bb[489]]=Math[_0x53bb[488]](_0x39abx3*mxConstants[_0x53bb[490]])+_0x53bb[168];_0x39abx5[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx5[_0x53bb[124]][_0x53bb[493]]=_0x53bb[494];_0x39abx5[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];_0x39abx5[_0x53bb[124]][_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498];_0x39abx5[_0x53bb[124]][_0x53bb[499]]=_0x53bb[500];_0x39abx5[_0x53bb[339]]=_0x39abx2;document[_0x53bb[112]][_0x53bb[62]](_0x39abx5);_0x39abx2= new mxRectangle(0,0,_0x39abx5[_0x53bb[359]],_0x39abx5[_0x53bb[167]]);document[_0x53bb[112]][_0x53bb[266]](_0x39abx5);return _0x39abx2},getViewXml:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=null!=_0x39abx5?_0x39abx5:0;_0x39abx9=null!=_0x39abx9?_0x39abx9:0;_0x39abx3=null!=_0x39abx3?_0x39abx3:1;null==_0x39abx4&&(_0x39abx4=[_0x39abx2[_0x53bb[502]]()[_0x53bb[501]]()]);var _0x39abxa=_0x39abx2[_0x53bb[249]](),_0x39abx12=null,_0x39abx13=_0x39abxa[_0x53bb[503]]();_0x39abxa[_0x53bb[504]](!1);var _0x39abx14=_0x39abxa[_0x53bb[505]],_0x39abx15=_0x39abxa[_0x53bb[506]];_0x39abx2[_0x53bb[507]]==mxConstants[_0x53bb[508]]?(_0x39abxa[_0x53bb[505]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449]),_0x39abxa[_0x53bb[510]][_0x53bb[62]](_0x39abxa[_0x53bb[505]]),_0x39abxa[_0x53bb[506]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449])):(_0x39abxa[_0x53bb[505]]=_0x39abxa[_0x53bb[505]][_0x53bb[511]](!1),_0x39abxa[_0x53bb[510]][_0x53bb[62]](_0x39abxa[_0x53bb[505]]),_0x39abxa[_0x53bb[506]]=_0x39abxa[_0x53bb[506]][_0x53bb[511]](!1));_0x39abxa[_0x53bb[510]][_0x53bb[62]](_0x39abxa[_0x53bb[506]]);var _0x39abx16=_0x39abxa[_0x53bb[512]]();_0x39abxa[_0x53bb[513]]= new mxPoint(_0x39abx5,_0x39abx9);_0x39abx3= new mxTemporaryCellStates(_0x39abx2[_0x53bb[249]](),_0x39abx3,_0x39abx4);try{_0x39abx12=( new mxCodec)[_0x53bb[514]](_0x39abx2[_0x53bb[249]]())}finally{_0x39abx3[_0x53bb[515]](),_0x39abxa[_0x53bb[513]]=_0x39abx16,_0x39abxa[_0x53bb[510]][_0x53bb[266]](_0x39abxa[_0x53bb[505]]),_0x39abxa[_0x53bb[510]][_0x53bb[266]](_0x39abxa[_0x53bb[506]]),_0x39abxa[_0x53bb[505]]=_0x39abx14,_0x39abxa[_0x53bb[506]]=_0x39abx15,_0x39abxa[_0x53bb[504]](_0x39abx13)};return _0x39abx12},getScaleForPageCount:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(1>_0x39abx2){return 1};_0x39abx4=null!=_0x39abx4?_0x39abx4:mxConstants[_0x53bb[516]];_0x39abx5=null!=_0x39abx5?_0x39abx5:0;var _0x39abx9=_0x39abx4[_0x53bb[117]]-2*_0x39abx5;_0x39abx4=_0x39abx4[_0x53bb[119]]-2*_0x39abx5;_0x39abx5=_0x39abx3[_0x53bb[517]]()[_0x53bb[238]]();_0x39abx3=_0x39abx3[_0x53bb[249]]()[_0x53bb[518]]();_0x39abx5[_0x53bb[117]]/=_0x39abx3;_0x39abx5[_0x53bb[119]]/=_0x39abx3;_0x39abx3=_0x39abx5[_0x53bb[117]];_0x39abx4=_0x39abx3/_0x39abx5[_0x53bb[119]]/(_0x39abx9/_0x39abx4);_0x39abx5=Math[_0x53bb[428]](_0x39abx2);var _0x39abxa=Math[_0x53bb[428]](_0x39abx4);_0x39abx4=_0x39abx5*_0x39abxa;_0x39abx5/=_0x39abxa;if(1>_0x39abx4&&_0x39abx5>_0x39abx2){var _0x39abx12=_0x39abx5/_0x39abx2;_0x39abx5=_0x39abx2;_0x39abx4/=_0x39abx12};1>_0x39abx5&&_0x39abx4>_0x39abx2&&(_0x39abx12=_0x39abx4/_0x39abx2,_0x39abx4=_0x39abx2,_0x39abx5/=_0x39abx12);_0x39abx12=Math[_0x53bb[430]](_0x39abx4)*Math[_0x53bb[430]](_0x39abx5);for(_0x39abxa=0;_0x39abx12>_0x39abx2;){var _0x39abx12=Math[_0x53bb[519]](_0x39abx4)/_0x39abx4,_0x39abx13=Math[_0x53bb[519]](_0x39abx5)/_0x39abx5;1==_0x39abx12&&(_0x39abx12=Math[_0x53bb[519]](_0x39abx4-1)/_0x39abx4);1==_0x39abx13&&(_0x39abx13=Math[_0x53bb[519]](_0x39abx5-1)/_0x39abx5);_0x39abx12=_0x39abx12>_0x39abx13?_0x39abx12:_0x39abx13;_0x39abx4*=_0x39abx12;_0x39abx5*=_0x39abx12;_0x39abx12=Math[_0x53bb[430]](_0x39abx4)*Math[_0x53bb[430]](_0x39abx5);_0x39abxa++;if(10<_0x39abxa){break}};return 0.99999*(_0x39abx9*_0x39abx4/_0x39abx3)},show:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=null!=_0x39abx4?_0x39abx4:0;_0x39abx5=null!=_0x39abx5?_0x39abx5:0;null==_0x39abx3?_0x39abx3=window[_0x53bb[392]]()[_0x53bb[395]]:_0x39abx3[_0x53bb[392]]();var _0x39abx9=_0x39abx2[_0x53bb[517]]();_0x39abx4=-_0x39abx9[_0x53bb[235]]+_0x39abx4;_0x39abx5=-_0x39abx9[_0x53bb[236]]+_0x39abx5;if(mxClient[_0x53bb[80]]){for(var _0x39abx9=_0x53bb[520],_0x39abxa=document[_0x53bb[64]](_0x53bb[521]),_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){_0x39abx9+=_0x39abxa[_0x39abx12][_0x53bb[342]]};_0x39abx9+=_0x53bb[522];for(_0x39abx12=0;_0x39abx12<document[_0x53bb[523]][_0x53bb[67]];_0x39abx12++){try{_0x39abx9+=document[_0x53bb[523]](_0x39abx12)[_0x53bb[103]]}catch(h){}};_0x39abx9+=_0x53bb[524];_0x39abx9+=_0x53bb[525];_0x39abx9+=_0x39abx2[_0x53bb[526]][_0x53bb[339]];_0x39abx9+=_0x53bb[527];_0x39abx9+=_0x53bb[528];_0x39abx3[_0x53bb[171]](_0x39abx9);_0x39abx3[_0x53bb[268]]();_0x39abx2=_0x39abx3[_0x53bb[112]][_0x53bb[64]](_0x53bb[529])[0];null!=_0x39abx2&&(_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492],_0x39abx2[_0x53bb[124]][_0x53bb[361]]=_0x39abx4+_0x53bb[168],_0x39abx2[_0x53bb[124]][_0x53bb[125]]=_0x39abx5+_0x53bb[168])}else {_0x39abx3[_0x53bb[171]](_0x53bb[530]);_0x39abx3[_0x53bb[171]](_0x53bb[531]);_0x39abxa=document[_0x53bb[64]](_0x53bb[521]);for(_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){_0x39abx3[_0x53bb[171]](mxUtils[_0x53bb[532]](_0x39abxa[_0x39abx12]))};_0x39abxa=document[_0x53bb[64]](_0x53bb[54]);for(_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){_0x39abx3[_0x53bb[171]](mxUtils[_0x53bb[532]](_0x39abxa[_0x39abx12]))};_0x39abxa=document[_0x53bb[64]](_0x53bb[124]);for(_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){_0x39abx3[_0x53bb[171]](mxUtils[_0x53bb[532]](_0x39abxa[_0x39abx12]))};_0x39abx3[_0x53bb[171]](_0x53bb[533]);_0x39abx3[_0x53bb[171]](_0x53bb[534]);_0x39abx3[_0x53bb[268]]();null==_0x39abx3[_0x53bb[112]]&&_0x39abx3[_0x53bb[158]][_0x53bb[62]](_0x39abx3[_0x53bb[55]](_0x53bb[112]));_0x39abx3[_0x53bb[112]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[278];for(_0x39abx2=_0x39abx2[_0x53bb[526]][_0x53bb[285]];null!=_0x39abx2;){_0x39abx12=_0x39abx2[_0x53bb[511]](!0),_0x39abx3[_0x53bb[112]][_0x53bb[62]](_0x39abx12),_0x39abx2=_0x39abx2[_0x53bb[287]]};_0x39abx2=_0x39abx3[_0x53bb[64]](_0x53bb[449])[0];null!=_0x39abx2&&(_0x39abx2[_0x53bb[57]](_0x53bb[535],_0x53bb[536]+_0x39abx4+_0x53bb[537]+_0x39abx5+_0x53bb[460]),_0x39abx4=_0x39abx2[_0x53bb[538]],_0x39abx4[_0x53bb[57]](_0x53bb[117],_0x39abx9[_0x53bb[117]]+Math[_0x53bb[160]](_0x39abx9[_0x53bb[235]],0)+3),_0x39abx4[_0x53bb[57]](_0x53bb[119],_0x39abx9[_0x53bb[119]]+Math[_0x53bb[160]](_0x39abx9[_0x53bb[236]],0)+3))};mxUtils[_0x53bb[272]](_0x39abx3[_0x53bb[112]]);return _0x39abx3},printScreen:function(_0x39abx2){var _0x39abx3=window[_0x53bb[392]]();mxUtils[_0x53bb[539]](_0x39abx2,_0x39abx3[_0x53bb[395]]);_0x39abx2=function(){_0x39abx3[_0x53bb[393]]();_0x39abx3[_0x53bb[540]]();_0x39abx3[_0x53bb[268]]()};mxClient[_0x53bb[76]]?_0x39abx3[_0x53bb[261]](_0x39abx2,500):_0x39abx2()},popup:function(_0x39abx2,_0x39abx3){if(_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[485]);_0x39abx4[_0x53bb[124]][_0x53bb[277]]=_0x53bb[276];_0x39abx4[_0x53bb[124]][_0x53bb[117]]=_0x53bb[541];_0x39abx4[_0x53bb[124]][_0x53bb[119]]=_0x53bb[542];var _0x39abx5=document[_0x53bb[55]](_0x53bb[543]);_0x39abx5[_0x53bb[339]]=mxUtils[_0x53bb[321]](_0x39abx2,!1)[_0x53bb[230]](/\n/g,_0x53bb[545])[_0x53bb[230]](/ /g,_0x53bb[544]);_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx4= new mxWindow(_0x53bb[546],_0x39abx4,document[_0x53bb[112]][_0x53bb[159]]/2-320,(document[_0x53bb[112]][_0x53bb[157]]||document[_0x53bb[158]][_0x53bb[157]])/2-240,640,480,!1,!0);_0x39abx4[_0x53bb[164]](!0);_0x39abx4[_0x53bb[175]](!0)}else {mxClient[_0x53bb[133]]?(_0x39abx4=window[_0x53bb[392]](),_0x39abx4[_0x53bb[395]][_0x53bb[171]](_0x53bb[547]+mxUtils[_0x53bb[321]](_0x39abx2)+_0x53bb[548]),_0x39abx4[_0x53bb[395]][_0x53bb[268]]()):(_0x39abx4=window[_0x53bb[392]](),_0x39abx5=_0x39abx4[_0x53bb[395]][_0x53bb[55]](_0x53bb[543]),_0x39abx5[_0x53bb[339]]=mxUtils[_0x53bb[321]](_0x39abx2,!1)[_0x53bb[230]](/\n/g,_0x53bb[545])[_0x53bb[230]](/ /g,_0x53bb[544]),_0x39abx4[_0x53bb[395]][_0x53bb[112]][_0x53bb[62]](_0x39abx5))}},alert:function(_0x39abx2){alert(_0x39abx2)},prompt:function(_0x39abx2,_0x39abx3){return prompt(_0x39abx2,_0x39abx3)},confirm:function(_0x39abx2){return confirm(_0x39abx2)},error:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=document[_0x53bb[55]](_0x53bb[485]);_0x39abx9[_0x53bb[124]][_0x53bb[549]]=_0x53bb[550];var _0x39abxa=document[_0x53bb[55]](_0x53bb[466]);_0x39abxa[_0x53bb[57]](_0x53bb[390],_0x39abx5||mxUtils[_0x53bb[551]]);_0x39abxa[_0x53bb[57]](_0x53bb[552],_0x53bb[553]);_0x39abxa[_0x53bb[124]][_0x53bb[123]]=_0x53bb[554];_0x39abx9[_0x53bb[62]](_0x39abxa);_0x39abx9[_0x53bb[62]](document[_0x53bb[344]](_0x53bb[555]));_0x39abx9[_0x53bb[62]](document[_0x53bb[344]](_0x53bb[555]));_0x39abx9[_0x53bb[62]](document[_0x53bb[344]](_0x53bb[555]));mxUtils[_0x53bb[53]](_0x39abx9,_0x39abx2);_0x39abx2=document[_0x53bb[112]][_0x53bb[159]];_0x39abx5=document[_0x53bb[112]][_0x53bb[157]]||document[_0x53bb[158]][_0x53bb[157]];var _0x39abx12= new mxWindow(mxResources[_0x53bb[203]](mxUtils[_0x53bb[556]])||mxUtils[_0x53bb[556]],_0x39abx9,(_0x39abx2-_0x39abx3)/2,_0x39abx5/4,_0x39abx3,null,!1,!0);_0x39abx4&&(mxUtils[_0x53bb[345]](_0x39abx9),_0x39abx3=document[_0x53bb[55]](_0x53bb[346]),_0x39abx4=document[_0x53bb[55]](_0x53bb[172]),mxClient[_0x53bb[80]]?_0x39abx4[_0x53bb[124]][_0x53bb[103]]=_0x53bb[557]:_0x39abx4[_0x53bb[57]](_0x53bb[124],_0x53bb[557]),mxEvent[_0x53bb[169]](_0x39abx4,_0x53bb[173],function(_0x39abx2){_0x39abx12[_0x53bb[515]]()}),mxUtils[_0x53bb[53]](_0x39abx4,mxResources[_0x53bb[203]](mxUtils[_0x53bb[558]])||mxUtils[_0x53bb[558]]),_0x39abx3[_0x53bb[62]](_0x39abx4),_0x39abx9[_0x53bb[62]](_0x39abx3),mxUtils[_0x53bb[345]](_0x39abx9),_0x39abx12[_0x53bb[164]](!0));_0x39abx12[_0x53bb[175]](!0);return _0x39abx12},makeDraggable:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15){_0x39abx2= new mxDragSource(_0x39abx2,_0x39abx4);_0x39abx2[_0x53bb[559]]= new mxPoint(null!=_0x39abx9?_0x39abx9:0,null!=_0x39abxa?_0x39abxa:mxConstants[_0x53bb[560]]);_0x39abx2[_0x53bb[561]]=_0x39abx12;_0x39abx2[_0x53bb[562]](!1);null!=_0x39abx14&&(_0x39abx2[_0x53bb[563]]=_0x39abx14);null!=_0x39abx15&&(_0x39abx2[_0x53bb[564]]=_0x39abx15);_0x39abx2[_0x53bb[565]]=function(_0x39abx2){return _0x53bb[279]== typeof _0x39abx3?_0x39abx3(_0x39abx2):_0x39abx3};null!=_0x39abx5&&(_0x39abx2[_0x53bb[566]]=function(){return _0x39abx5[_0x53bb[511]](!0)},_0x39abx13&&(_0x39abx2[_0x53bb[567]]=function(_0x39abx2){var _0x39abx3=_0x39abx5[_0x53bb[511]](!0),_0x39abx4=parseInt(_0x39abx3[_0x53bb[124]][_0x53bb[117]]),_0x39abx9=parseInt(_0x39abx3[_0x53bb[124]][_0x53bb[119]]);_0x39abx3[_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[488]](_0x39abx4*_0x39abx2[_0x53bb[441]][_0x53bb[255]])+_0x53bb[168];_0x39abx3[_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[488]](_0x39abx9*_0x39abx2[_0x53bb[441]][_0x53bb[255]])+_0x53bb[168];return _0x39abx3}));return _0x39abx2}},mxConstants={DEFAULT_HOTSPOT:0.3,MIN_HOTSPOT_SIZE:8,MAX_HOTSPOT_SIZE:0,RENDERING_HINT_EXACT:_0x53bb[568],RENDERING_HINT_FASTER:_0x53bb[569],RENDERING_HINT_FASTEST:_0x53bb[570],DIALECT_SVG:_0x53bb[571],DIALECT_VML:_0x53bb[572],DIALECT_MIXEDHTML:_0x53bb[573],DIALECT_PREFERHTML:_0x53bb[574],DIALECT_STRICTHTML:_0x53bb[575],NS_SVG:_0x53bb[576],NS_XHTML:_0x53bb[577],NS_XLINK:_0x53bb[578],SHADOWCOLOR:_0x53bb[579],SHADOW_OFFSET_X:2,SHADOW_OFFSET_Y:3,SHADOW_OPACITY:1,NODETYPE_ELEMENT:1,NODETYPE_ATTRIBUTE:2,NODETYPE_TEXT:3,NODETYPE_CDATA:4,NODETYPE_ENTITY_REFERENCE:5,NODETYPE_ENTITY:6,NODETYPE_PROCESSING_INSTRUCTION:7,NODETYPE_COMMENT:8,NODETYPE_DOCUMENT:9,NODETYPE_DOCUMENTTYPE:10,NODETYPE_DOCUMENT_FRAGMENT:11,NODETYPE_NOTATION:12,TOOLTIP_VERTICAL_OFFSET:16,DEFAULT_VALID_COLOR:_0x53bb[580],DEFAULT_INVALID_COLOR:_0x53bb[581],HIGHLIGHT_STROKEWIDTH:3,CURSOR_MOVABLE_VERTEX:_0x53bb[582],CURSOR_MOVABLE_EDGE:_0x53bb[582],CURSOR_LABEL_HANDLE:_0x53bb[583],CURSOR_BEND_HANDLE:_0x53bb[356],CURSOR_CONNECT:_0x53bb[356],HIGHLIGHT_COLOR:_0x53bb[580],CONNECT_TARGET_COLOR:_0x53bb[584],INVALID_CONNECT_TARGET_COLOR:_0x53bb[581],DROP_TARGET_COLOR:_0x53bb[584],VALID_COLOR:_0x53bb[580],INVALID_COLOR:_0x53bb[581],EDGE_SELECTION_COLOR:_0x53bb[580],VERTEX_SELECTION_COLOR:_0x53bb[580],VERTEX_SELECTION_STROKEWIDTH:1,EDGE_SELECTION_STROKEWIDTH:1,VERTEX_SELECTION_DASHED:!0,EDGE_SELECTION_DASHED:!0,GUIDE_COLOR:_0x53bb[581],GUIDE_STROKEWIDTH:1,OUTLINE_COLOR:_0x53bb[585],OUTLINE_STROKEWIDTH:mxClient[_0x53bb[80]]?2:3,HANDLE_SIZE:7,LABEL_HANDLE_SIZE:4,HANDLE_FILLCOLOR:_0x53bb[580],HANDLE_STROKECOLOR:_0x53bb[586],LABEL_HANDLE_FILLCOLOR:_0x53bb[587],CONNECT_HANDLE_FILLCOLOR:_0x53bb[584],LOCKED_HANDLE_FILLCOLOR:_0x53bb[581],OUTLINE_HANDLE_FILLCOLOR:_0x53bb[588],OUTLINE_HANDLE_STROKECOLOR:_0x53bb[589],DEFAULT_FONTFAMILY:_0x53bb[590],DEFAULT_FONTSIZE:11,LINE_HEIGHT:1.2,DEFAULT_FONTSTYLE:0,DEFAULT_STARTSIZE:40,DEFAULT_MARKERSIZE:6,DEFAULT_IMAGESIZE:24,ENTITY_SEGMENT:30,RECTANGLE_ROUNDING_FACTOR:0.15,LINE_ARCSIZE:20,ARROW_SPACING:10,ARROW_WIDTH:30,ARROW_SIZE:30,PAGE_FORMAT_A4_PORTRAIT: new mxRectangle(0,0,826,1169),PAGE_FORMAT_A4_LANDSCAPE: new mxRectangle(0,0,1169,826),PAGE_FORMAT_LETTER_PORTRAIT: new mxRectangle(0,0,850,1100),PAGE_FORMAT_LETTER_LANDSCAPE: new mxRectangle(0,0,1100,850),NONE:_0x53bb[130],STYLE_PERIMETER:_0x53bb[591],STYLE_SOURCE_PORT:_0x53bb[592],STYLE_TARGET_PORT:_0x53bb[593],STYLE_PORT_CONSTRAINT:_0x53bb[594],STYLE_OPACITY:_0x53bb[461],STYLE_TEXT_OPACITY:_0x53bb[595],STYLE_OVERFLOW:_0x53bb[277],STYLE_ORTHOGONAL:_0x53bb[596],STYLE_EXIT_X:_0x53bb[597],STYLE_EXIT_Y:_0x53bb[598],STYLE_EXIT_PERIMETER:_0x53bb[599],STYLE_ENTRY_X:_0x53bb[600],STYLE_ENTRY_Y:_0x53bb[601],STYLE_ENTRY_PERIMETER:_0x53bb[602],STYLE_WHITE_SPACE:_0x53bb[493],STYLE_ROTATION:_0x53bb[603],STYLE_FILLCOLOR:_0x53bb[604],STYLE_SWIMLANE_FILLCOLOR:_0x53bb[605],STYLE_GRADIENTCOLOR:_0x53bb[606],STYLE_GRADIENT_DIRECTION:_0x53bb[607],STYLE_STROKECOLOR:_0x53bb[608],STYLE_SEPARATORCOLOR:_0x53bb[609],STYLE_STROKEWIDTH:_0x53bb[610],STYLE_ALIGN:_0x53bb[611],STYLE_VERTICAL_ALIGN:_0x53bb[123],STYLE_LABEL_POSITION:_0x53bb[612],STYLE_VERTICAL_LABEL_POSITION:_0x53bb[613],STYLE_IMAGE_ASPECT:_0x53bb[614],STYLE_IMAGE_ALIGN:_0x53bb[615],STYLE_IMAGE_VERTICAL_ALIGN:_0x53bb[616],STYLE_GLASS:_0x53bb[617],STYLE_IMAGE:_0x53bb[618],STYLE_IMAGE_WIDTH:_0x53bb[619],STYLE_IMAGE_HEIGHT:_0x53bb[620],STYLE_IMAGE_BACKGROUND:_0x53bb[621],STYLE_IMAGE_BORDER:_0x53bb[622],STYLE_FLIPH:_0x53bb[623],STYLE_FLIPV:_0x53bb[624],STYLE_NOLABEL:_0x53bb[625],STYLE_NOEDGESTYLE:_0x53bb[626],STYLE_LABEL_BACKGROUNDCOLOR:_0x53bb[627],STYLE_LABEL_BORDERCOLOR:_0x53bb[628],STYLE_LABEL_PADDING:_0x53bb[629],STYLE_INDICATOR_SHAPE:_0x53bb[630],STYLE_INDICATOR_IMAGE:_0x53bb[631],STYLE_INDICATOR_COLOR:_0x53bb[632],STYLE_INDICATOR_STROKECOLOR:_0x53bb[633],STYLE_INDICATOR_GRADIENTCOLOR:_0x53bb[634],STYLE_INDICATOR_SPACING:_0x53bb[635],STYLE_INDICATOR_WIDTH:_0x53bb[636],STYLE_INDICATOR_HEIGHT:_0x53bb[637],STYLE_INDICATOR_DIRECTION:_0x53bb[638],STYLE_SHADOW:_0x53bb[639],STYLE_SEGMENT:_0x53bb[640],STYLE_ENDARROW:_0x53bb[641],STYLE_STARTARROW:_0x53bb[642],STYLE_ENDSIZE:_0x53bb[643],STYLE_STARTSIZE:_0x53bb[644],STYLE_SWIMLANE_LINE:_0x53bb[645],STYLE_ENDFILL:_0x53bb[646],STYLE_STARTFILL:_0x53bb[647],STYLE_DASHED:_0x53bb[648],STYLE_DASH_PATTERN:_0x53bb[649],STYLE_ROUNDED:_0x53bb[650],STYLE_CURVED:_0x53bb[651],STYLE_ARCSIZE:_0x53bb[652],STYLE_SMOOTH:_0x53bb[653],STYLE_SOURCE_PERIMETER_SPACING:_0x53bb[654],STYLE_TARGET_PERIMETER_SPACING:_0x53bb[655],STYLE_PERIMETER_SPACING:_0x53bb[656],STYLE_SPACING:_0x53bb[657],STYLE_SPACING_TOP:_0x53bb[658],STYLE_SPACING_LEFT:_0x53bb[659],STYLE_SPACING_BOTTOM:_0x53bb[660],STYLE_SPACING_RIGHT:_0x53bb[661],STYLE_HORIZONTAL:_0x53bb[662],STYLE_DIRECTION:_0x53bb[663],STYLE_ELBOW:_0x53bb[664],STYLE_FONTCOLOR:_0x53bb[665],STYLE_FONTFAMILY:_0x53bb[486],STYLE_FONTSIZE:_0x53bb[487],STYLE_FONTSTYLE:_0x53bb[666],STYLE_AUTOSIZE:_0x53bb[667],STYLE_FOLDABLE:_0x53bb[668],STYLE_EDITABLE:_0x53bb[669],STYLE_BENDABLE:_0x53bb[670],STYLE_MOVABLE:_0x53bb[671],STYLE_RESIZABLE:_0x53bb[672],STYLE_CLONEABLE:_0x53bb[673],STYLE_DELETABLE:_0x53bb[674],STYLE_SHAPE:_0x53bb[253],STYLE_EDGE:_0x53bb[675],STYLE_LOOP:_0x53bb[676],STYLE_ROUTING_CENTER_X:_0x53bb[677],STYLE_ROUTING_CENTER_Y:_0x53bb[678],FONT_BOLD:1,FONT_ITALIC:2,FONT_UNDERLINE:4,FONT_SHADOW:8,SHAPE_RECTANGLE:_0x53bb[679],SHAPE_ELLIPSE:_0x53bb[680],SHAPE_DOUBLE_ELLIPSE:_0x53bb[681],SHAPE_RHOMBUS:_0x53bb[682],SHAPE_LINE:_0x53bb[683],SHAPE_IMAGE:_0x53bb[618],SHAPE_ARROW:_0x53bb[684],SHAPE_LABEL:_0x53bb[685],SHAPE_CYLINDER:_0x53bb[686],SHAPE_SWIMLANE:_0x53bb[687],SHAPE_CONNECTOR:_0x53bb[688],SHAPE_ACTOR:_0x53bb[689],SHAPE_CLOUD:_0x53bb[690],SHAPE_TRIANGLE:_0x53bb[691],SHAPE_HEXAGON:_0x53bb[692],ARROW_CLASSIC:_0x53bb[693],ARROW_BLOCK:_0x53bb[694],ARROW_OPEN:_0x53bb[392],ARROW_OVAL:_0x53bb[695],ARROW_DIAMOND:_0x53bb[696],ARROW_DIAMOND_THIN:_0x53bb[697],ALIGN_LEFT:_0x53bb[361],ALIGN_CENTER:_0x53bb[698],ALIGN_RIGHT:_0x53bb[699],ALIGN_TOP:_0x53bb[125],ALIGN_MIDDLE:_0x53bb[554],ALIGN_BOTTOM:_0x53bb[553],DIRECTION_NORTH:_0x53bb[700],DIRECTION_SOUTH:_0x53bb[701],DIRECTION_EAST:_0x53bb[702],DIRECTION_WEST:_0x53bb[703],DIRECTION_MASK_NONE:0,DIRECTION_MASK_WEST:1,DIRECTION_MASK_NORTH:2,DIRECTION_MASK_SOUTH:4,DIRECTION_MASK_EAST:8,DIRECTION_MASK_ALL:15,ELBOW_VERTICAL:_0x53bb[704],ELBOW_HORIZONTAL:_0x53bb[662],EDGESTYLE_ELBOW:_0x53bb[705],EDGESTYLE_ENTITY_RELATION:_0x53bb[706],EDGESTYLE_LOOP:_0x53bb[707],EDGESTYLE_SIDETOSIDE:_0x53bb[708],EDGESTYLE_TOPTOBOTTOM:_0x53bb[709],EDGESTYLE_ORTHOGONAL:_0x53bb[710],EDGESTYLE_SEGMENT:_0x53bb[711],PERIMETER_ELLIPSE:_0x53bb[712],PERIMETER_RECTANGLE:_0x53bb[713],PERIMETER_RHOMBUS:_0x53bb[714],PERIMETER_TRIANGLE:_0x53bb[715]};function mxEventObject(_0x39abx2){this[_0x53bb[298]]=_0x39abx2;this[_0x53bb[716]]=[];for(var _0x39abx3=1;_0x39abx3<arguments[_0x53bb[67]];_0x39abx3+=2){null!=arguments[_0x39abx3+1]&&(this[_0x53bb[716]][arguments[_0x39abx3]]=arguments[_0x39abx3+1])}}mxEventObject[_0x53bb[202]][_0x53bb[298]]=null;mxEventObject[_0x53bb[202]][_0x53bb[716]]=null;mxEventObject[_0x53bb[202]][_0x53bb[717]]= !1;mxEventObject[_0x53bb[202]][_0x53bb[718]]=function(){return this[_0x53bb[298]]};mxEventObject[_0x53bb[202]][_0x53bb[719]]=function(){return this[_0x53bb[716]]};mxEventObject[_0x53bb[202]][_0x53bb[720]]=function(_0x39abx2){return this[_0x53bb[716]][_0x39abx2]};mxEventObject[_0x53bb[202]][_0x53bb[721]]=function(){return this[_0x53bb[717]]};mxEventObject[_0x53bb[202]][_0x53bb[722]]=function(){this[_0x53bb[717]]= !0};function mxMouseEvent(_0x39abx2,_0x39abx3){this[_0x53bb[723]]=_0x39abx2;this[_0x53bb[724]]=_0x39abx3}mxMouseEvent[_0x53bb[202]][_0x53bb[717]]= !1;mxMouseEvent[_0x53bb[202]][_0x53bb[723]]=null;mxMouseEvent[_0x53bb[202]][_0x53bb[725]]=null;mxMouseEvent[_0x53bb[202]][_0x53bb[726]]=null;mxMouseEvent[_0x53bb[202]][_0x53bb[724]]=null;mxMouseEvent[_0x53bb[202]][_0x53bb[727]]=function(){return this[_0x53bb[723]]};mxMouseEvent[_0x53bb[202]][_0x53bb[728]]=function(){return mxEvent[_0x53bb[728]](this[_0x53bb[723]])};mxMouseEvent[_0x53bb[202]][_0x53bb[729]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3=this[_0x53bb[728]]();null!=_0x39abx3;){if(_0x39abx3==_0x39abx2[_0x53bb[252]]){return !0};_0x39abx3=_0x39abx3[_0x53bb[265]]}};return !1};mxMouseEvent[_0x53bb[202]][_0x53bb[730]]=function(){return mxEvent[_0x53bb[731]](this[_0x53bb[727]]())};mxMouseEvent[_0x53bb[202]][_0x53bb[732]]=function(){return mxEvent[_0x53bb[733]](this[_0x53bb[727]]())};mxMouseEvent[_0x53bb[202]][_0x53bb[734]]=function(){return this[_0x53bb[725]]};mxMouseEvent[_0x53bb[202]][_0x53bb[735]]=function(){return this[_0x53bb[726]]};mxMouseEvent[_0x53bb[202]][_0x53bb[248]]=function(){return this[_0x53bb[724]]};mxMouseEvent[_0x53bb[202]][_0x53bb[736]]=function(){var _0x39abx2=this[_0x53bb[248]]();return null!=_0x39abx2?_0x39abx2[_0x53bb[246]]:null};mxMouseEvent[_0x53bb[202]][_0x53bb[737]]=function(){return mxEvent[_0x53bb[737]](this[_0x53bb[727]]())};mxMouseEvent[_0x53bb[202]][_0x53bb[721]]=function(){return this[_0x53bb[717]]};mxMouseEvent[_0x53bb[202]][_0x53bb[722]]=function(_0x39abx2){(null!=_0x39abx2?_0x39abx2:1)&&this[_0x53bb[723]][_0x53bb[738]]&&this[_0x53bb[723]][_0x53bb[738]]();this[_0x53bb[723]][_0x53bb[739]]= !1;this[_0x53bb[717]]= !0};function mxEventSource(_0x39abx2){this[_0x53bb[740]](_0x39abx2)}mxEventSource[_0x53bb[202]][_0x53bb[741]]=null;mxEventSource[_0x53bb[202]][_0x53bb[742]]= !0;mxEventSource[_0x53bb[202]][_0x53bb[743]]=null;mxEventSource[_0x53bb[202]][_0x53bb[503]]=function(){return this[_0x53bb[742]]};mxEventSource[_0x53bb[202]][_0x53bb[504]]=function(_0x39abx2){this[_0x53bb[742]]=_0x39abx2};mxEventSource[_0x53bb[202]][_0x53bb[744]]=function(){return this[_0x53bb[743]]};mxEventSource[_0x53bb[202]][_0x53bb[740]]=function(_0x39abx2){this[_0x53bb[743]]=_0x39abx2};mxEventSource[_0x53bb[202]][_0x53bb[169]]=function(_0x39abx2,_0x39abx3){null==this[_0x53bb[741]]&&(this[_0x53bb[741]]=[]);this[_0x53bb[741]][_0x53bb[207]](_0x39abx2);this[_0x53bb[741]][_0x53bb[207]](_0x39abx3)};mxEventSource[_0x53bb[202]][_0x53bb[745]]=function(_0x39abx2){if(null!=this[_0x53bb[741]]){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[741]][_0x53bb[67]];){this[_0x53bb[741]][_0x39abx3+1]==_0x39abx2?this[_0x53bb[741]][_0x53bb[300]](_0x39abx3,2):_0x39abx3+=2}}};mxEventSource[_0x53bb[202]][_0x53bb[746]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[741]]&&this[_0x53bb[503]]()){null==_0x39abx2&&(_0x39abx2= new mxEventObject);null==_0x39abx3&&(_0x39abx3=this[_0x53bb[744]]());null==_0x39abx3&&(_0x39abx3=this);for(var _0x39abx4=[_0x39abx3,_0x39abx2],_0x39abx5=0;_0x39abx5<this[_0x53bb[741]][_0x53bb[67]];_0x39abx5+=2){var _0x39abx9=this[_0x53bb[741]][_0x39abx5];(null==_0x39abx9||_0x39abx9==_0x39abx2[_0x53bb[718]]())&&this[_0x53bb[741]][_0x39abx5+1][_0x53bb[183]](this,_0x39abx4)}}};var mxEvent={objects:[],addListener:function(){var _0x39abx2=function(_0x39abx2,_0x39abx4,_0x39abx5){null==_0x39abx2[_0x53bb[69]]&&(_0x39abx2[_0x53bb[69]]=[],mxEvent[_0x53bb[68]][_0x53bb[207]](_0x39abx2));_0x39abx2[_0x53bb[69]][_0x53bb[207]]({name:_0x39abx4,f:_0x39abx5})};return window[_0x53bb[418]]?function(_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3[_0x53bb[418]](_0x39abx4,_0x39abx5,!1);_0x39abx2(_0x39abx3,_0x39abx4,_0x39abx5)}:function(_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3[_0x53bb[108]](_0x53bb[747]+_0x39abx4,_0x39abx5);_0x39abx2(_0x39abx3,_0x39abx4,_0x39abx5)}}(),removeListener:function(){var _0x39abx2=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx2[_0x53bb[69]]){_0x39abx4=_0x39abx2[_0x53bb[69]][_0x53bb[67]];for(var _0x39abx9=0;_0x39abx9<_0x39abx4;_0x39abx9++){if(_0x39abx2[_0x53bb[69]][_0x39abx9][_0x53bb[748]]==_0x39abx5){_0x39abx2[_0x53bb[69]][_0x53bb[300]](_0x39abx9,1);break}};0==_0x39abx2[_0x53bb[69]][_0x53bb[67]]&&(_0x39abx2[_0x53bb[69]]=null)}};return window[_0x53bb[749]]?function(_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3[_0x53bb[749]](_0x39abx4,_0x39abx5,!1);_0x39abx2(_0x39abx3,_0x39abx4,_0x39abx5)}:function(_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3[_0x53bb[750]](_0x53bb[747]+_0x39abx4,_0x39abx5);_0x39abx2(_0x39abx3,_0x39abx4,_0x39abx5)}}(),removeAllListeners:function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[69]];if(null!=_0x39abx3){for(;0<_0x39abx3[_0x53bb[67]];){var _0x39abx4=_0x39abx3[0];mxEvent[_0x53bb[745]](_0x39abx2,_0x39abx4[_0x53bb[298]],_0x39abx4[_0x53bb[748]])}}},addGestureListeners:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){null!=_0x39abx3&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[751],_0x39abx3);null!=_0x39abx4&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[752],_0x39abx4);null!=_0x39abx5&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[753],_0x39abx5);mxClient[_0x53bb[754]]&&(null!=_0x39abx3&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[755],_0x39abx3),null!=_0x39abx4&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[756],_0x39abx4),null!=_0x39abx5&&mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[757],_0x39abx5))},removeGestureListeners:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){null!=_0x39abx3&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[751],_0x39abx3);null!=_0x39abx4&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[752],_0x39abx4);null!=_0x39abx5&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[753],_0x39abx5);mxClient[_0x53bb[754]]&&(null!=_0x39abx3&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[755],_0x39abx3),null!=_0x39abx4&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[756],_0x39abx4),null!=_0x39abx5&&mxEvent[_0x53bb[745]](_0x39abx2,_0x53bb[757],_0x39abx5))},redirectMouseEvents:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){var _0x39abx13=function(_0x39abx2){return _0x53bb[279]== typeof _0x39abx4?_0x39abx4(_0x39abx2):_0x39abx4};mxEvent[_0x53bb[759]](_0x39abx2,function(_0x39abx2){null!=_0x39abx5?_0x39abx5(_0x39abx2):mxEvent[_0x53bb[721]](_0x39abx2)||_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx2,_0x39abx13(_0x39abx2)))},function(_0x39abx2){null!=_0x39abx9?_0x39abx9(_0x39abx2):mxEvent[_0x53bb[721]](_0x39abx2)||_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx2,_0x39abx13(_0x39abx2)))},function(_0x39abx2){null!=_0x39abxa?_0x39abxa(_0x39abx2):mxEvent[_0x53bb[721]](_0x39abx2)||_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx2,_0x39abx13(_0x39abx2)))});mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[760],function(_0x39abx2){if(null!=_0x39abx12){_0x39abx12(_0x39abx2)}else {if(!mxEvent[_0x53bb[721]](_0x39abx2)){var _0x39abx4=_0x39abx13(_0x39abx2);_0x39abx3[_0x53bb[761]](_0x39abx2,null!=_0x39abx4?_0x39abx4[_0x53bb[246]]:null)}}})},release:function(_0x39abx2){if(null!=_0x39abx2&&(mxEvent[_0x53bb[70]](_0x39abx2),_0x39abx2=_0x39abx2[_0x53bb[271]],null!=_0x39abx2)){for(var _0x39abx3=_0x39abx2[_0x53bb[67]],_0x39abx4=0;_0x39abx4<_0x39abx3;_0x39abx4+=1){mxEvent[_0x53bb[762]](_0x39abx2[_0x39abx4])}}},addMouseWheelListener:function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=function(_0x39abx3){null==_0x39abx3&&(_0x39abx3=window[_0x53bb[763]]);var _0x39abx5=0,_0x39abx5=mxClient[_0x53bb[133]]&&!mxClient[_0x53bb[75]]&&!mxClient[_0x53bb[76]]?-_0x39abx3[_0x53bb[764]]/2:_0x39abx3[_0x53bb[765]]/120;0!=_0x39abx5&&_0x39abx2(_0x39abx3,0<_0x39abx5)};mxClient[_0x53bb[133]]?mxEvent[_0x53bb[169]](window,mxClient[_0x53bb[75]]||mxClient[_0x53bb[76]]?_0x53bb[766]:_0x53bb[767],_0x39abx3):mxEvent[_0x53bb[169]](document,_0x53bb[766],_0x39abx3)}},disableContextMenu:function(){return mxClient[_0x53bb[80]]&&(_0x53bb[82]=== typeof document[_0x53bb[5]]||9>document[_0x53bb[5]])?function(_0x39abx2){mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[768],function(){return !1})}:function(_0x39abx2){_0x39abx2[_0x53bb[57]](_0x53bb[769],_0x53bb[770])}}(),getSource:function(_0x39abx2){return null!=_0x39abx2[_0x53bb[771]]?_0x39abx2[_0x53bb[771]]:_0x39abx2[_0x53bb[772]]},isConsumed:function(_0x39abx2){return null!=_0x39abx2[_0x53bb[721]]&&_0x39abx2[_0x53bb[721]]},isLeftMouseButton:function(_0x39abx2){return _0x39abx2[_0x53bb[172]]==(mxClient[_0x53bb[80]]&&(_0x53bb[82]=== typeof document[_0x53bb[5]]||9>document[_0x53bb[5]])?1:0)},isRightMouseButton:function(_0x39abx2){return 2==_0x39abx2[_0x53bb[172]]},isPopupTrigger:function(_0x39abx2){return mxEvent[_0x53bb[773]](_0x39abx2)||mxEvent[_0x53bb[774]](_0x39abx2)&&!mxEvent[_0x53bb[775]](_0x39abx2)},isShiftDown:function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[776]]:!1},isAltDown:function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[777]]:!1},isControlDown:function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[778]]:!1},isMetaDown:function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[779]]:!1},getMainEvent:function(_0x39abx2){(_0x53bb[755]==_0x39abx2[_0x53bb[60]]||_0x53bb[756]==_0x39abx2[_0x53bb[60]])&&null!=_0x39abx2[_0x53bb[780]]&&null!=_0x39abx2[_0x53bb[780]][0]?_0x39abx2=_0x39abx2[_0x53bb[780]][0]:_0x53bb[757]==_0x39abx2[_0x53bb[60]]&&(null!=_0x39abx2[_0x53bb[781]]&&null!=_0x39abx2[_0x53bb[781]][0])&&(_0x39abx2=_0x39abx2[_0x53bb[781]][0]);return _0x39abx2},getClientX:function(_0x39abx2){return mxEvent[_0x53bb[783]](_0x39abx2)[_0x53bb[782]]},getClientY:function(_0x39abx2){return mxEvent[_0x53bb[783]](_0x39abx2)[_0x53bb[784]]},consume:function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;if(null!=_0x39abx3?_0x39abx3:1){_0x39abx2[_0x53bb[738]]?(_0x39abx4&&_0x39abx2[_0x53bb[785]](),_0x39abx2[_0x53bb[738]]()):_0x39abx4&&(_0x39abx2[_0x53bb[786]]= !0)};_0x39abx2[_0x53bb[721]]= !0;_0x39abx2[_0x53bb[739]]= !1},LABEL_HANDLE:-1,ROTATION_HANDLE:-2,MOUSE_DOWN:_0x53bb[787],MOUSE_MOVE:_0x53bb[788],MOUSE_UP:_0x53bb[789],ACTIVATE:_0x53bb[790],RESIZE_START:_0x53bb[791],RESIZE:_0x53bb[129],RESIZE_END:_0x53bb[792],MOVE_START:_0x53bb[793],MOVE:_0x53bb[582],MOVE_END:_0x53bb[794],PAN_START:_0x53bb[795],PAN:_0x53bb[796],PAN_END:_0x53bb[797],MINIMIZE:_0x53bb[798],NORMALIZE:_0x53bb[799],MAXIMIZE:_0x53bb[800],HIDE:_0x53bb[801],SHOW:_0x53bb[539],CLOSE:_0x53bb[268],DESTROY:_0x53bb[515],REFRESH:_0x53bb[802],SIZE:_0x53bb[803],SELECT:_0x53bb[804],FIRED:_0x53bb[805],GET:_0x53bb[203],RECEIVE:_0x53bb[806],CONNECT:_0x53bb[807],DISCONNECT:_0x53bb[808],SUSPEND:_0x53bb[809],RESUME:_0x53bb[810],MARK:_0x53bb[811],SESSION:_0x53bb[812],ROOT:_0x53bb[813],POST:_0x53bb[814],OPEN:_0x53bb[392],SAVE:_0x53bb[815],BEFORE_ADD_VERTEX:_0x53bb[816],ADD_VERTEX:_0x53bb[817],AFTER_ADD_VERTEX:_0x53bb[818],DONE:_0x53bb[819],EXECUTE:_0x53bb[350],EXECUTED:_0x53bb[820],BEGIN_UPDATE:_0x53bb[473],START_EDIT:_0x53bb[821],END_UPDATE:_0x53bb[476],END_EDIT:_0x53bb[822],BEFORE_UNDO:_0x53bb[823],UNDO:_0x53bb[824],REDO:_0x53bb[825],CHANGE:_0x53bb[826],NOTIFY:_0x53bb[827],LAYOUT_CELLS:_0x53bb[828],CLICK:_0x53bb[173],SCALE:_0x53bb[255],TRANSLATE:_0x53bb[513],SCALE_AND_TRANSLATE:_0x53bb[829],UP:_0x53bb[830],DOWN:_0x53bb[831],ADD:_0x53bb[99],REMOVE:_0x53bb[205],CLEAR:_0x53bb[200],ADD_CELLS:_0x53bb[832],CELLS_ADDED:_0x53bb[833],MOVE_CELLS:_0x53bb[834],CELLS_MOVED:_0x53bb[835],RESIZE_CELLS:_0x53bb[836],CELLS_RESIZED:_0x53bb[837],TOGGLE_CELLS:_0x53bb[838],CELLS_TOGGLED:_0x53bb[839],ORDER_CELLS:_0x53bb[840],CELLS_ORDERED:_0x53bb[841],REMOVE_CELLS:_0x53bb[842],CELLS_REMOVED:_0x53bb[843],GROUP_CELLS:_0x53bb[844],UNGROUP_CELLS:_0x53bb[845],REMOVE_CELLS_FROM_PARENT:_0x53bb[846],FOLD_CELLS:_0x53bb[847],CELLS_FOLDED:_0x53bb[848],ALIGN_CELLS:_0x53bb[849],LABEL_CHANGED:_0x53bb[850],CONNECT_CELL:_0x53bb[851],CELL_CONNECTED:_0x53bb[852],SPLIT_EDGE:_0x53bb[853],FLIP_EDGE:_0x53bb[854],START_EDITING:_0x53bb[855],ADD_OVERLAY:_0x53bb[856],REMOVE_OVERLAY:_0x53bb[857],UPDATE_CELL_SIZE:_0x53bb[858],ESCAPE:_0x53bb[859],CLICK:_0x53bb[173],DOUBLE_CLICK:_0x53bb[860],START:_0x53bb[861],RESET:_0x53bb[862]};function mxXmlRequest(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[863]]=_0x39abx2;this[_0x53bb[864]]=_0x39abx3;this[_0x53bb[865]]=_0x39abx4||_0x53bb[866];this[_0x53bb[307]]=null!=_0x39abx5?_0x39abx5:!0;this[_0x53bb[867]]=_0x39abx9;this[_0x53bb[868]]=_0x39abxa}mxXmlRequest[_0x53bb[202]][_0x53bb[863]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[864]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[865]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[307]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[869]]= !1;mxXmlRequest[_0x53bb[202]][_0x53bb[867]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[868]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[870]]=null;mxXmlRequest[_0x53bb[202]][_0x53bb[871]]=function(){return this[_0x53bb[869]]};mxXmlRequest[_0x53bb[202]][_0x53bb[872]]=function(_0x39abx2){this[_0x53bb[869]]=_0x39abx2};mxXmlRequest[_0x53bb[202]][_0x53bb[221]]=function(){return this[_0x53bb[870]][_0x53bb[873]]};mxXmlRequest[_0x53bb[202]][_0x53bb[220]]=function(){return 4==this[_0x53bb[870]][_0x53bb[417]]};mxXmlRequest[_0x53bb[202]][_0x53bb[874]]=function(){var _0x39abx2=this[_0x53bb[875]]();return null!=_0x39abx2?_0x39abx2[_0x53bb[158]]:null};mxXmlRequest[_0x53bb[202]][_0x53bb[875]]=function(){var _0x39abx2=this[_0x53bb[870]][_0x53bb[876]];if(9<=document[_0x53bb[5]]||null==_0x39abx2||null==_0x39abx2[_0x53bb[158]]){_0x39abx2=mxUtils[_0x53bb[877]](this[_0x53bb[870]][_0x53bb[873]])};return _0x39abx2};mxXmlRequest[_0x53bb[202]][_0x53bb[221]]=function(){return this[_0x53bb[870]][_0x53bb[873]]};mxXmlRequest[_0x53bb[202]][_0x53bb[878]]=function(){return this[_0x53bb[870]][_0x53bb[879]]};mxXmlRequest[_0x53bb[202]][_0x53bb[385]]=function(){if(window[_0x53bb[880]]){return function(){var _0x39abx2= new XMLHttpRequest;this[_0x53bb[871]]()&&_0x39abx2[_0x53bb[881]]&&_0x39abx2[_0x53bb[881]](_0x53bb[882]);return _0x39abx2}};if(_0x53bb[82]!= typeof ActiveXObject){return function(){return new ActiveXObject(_0x53bb[883])}}}();mxXmlRequest[_0x53bb[202]][_0x53bb[414]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[870]]=this[_0x53bb[385]]();null!=this[_0x53bb[870]]&&(null!=_0x39abx2&&(this[_0x53bb[870]][_0x53bb[416]]=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[220]]()&&(_0x39abx2(this),this[_0x53bb[884]]=null)})),this[_0x53bb[870]][_0x53bb[392]](this[_0x53bb[865]],this[_0x53bb[863]],this[_0x53bb[307]],this[_0x53bb[867]],this[_0x53bb[868]]),this[_0x53bb[886]](this[_0x53bb[870]],this[_0x53bb[864]]),this[_0x53bb[870]][_0x53bb[414]](this[_0x53bb[864]]))};mxXmlRequest[_0x53bb[202]][_0x53bb[886]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx3&&_0x39abx2[_0x53bb[889]](_0x53bb[887],_0x53bb[888])};mxXmlRequest[_0x53bb[202]][_0x53bb[415]]=function(_0x39abx2,_0x39abx3){_0x39abx2=_0x39abx2||document;var _0x39abx4=null;_0x39abx2==document&&(_0x39abx4=window[_0x53bb[890]],window[_0x53bb[890]]=null);var _0x39abx5=_0x39abx2[_0x53bb[55]](_0x53bb[891]);_0x39abx5[_0x53bb[57]](_0x53bb[865],this[_0x53bb[865]]);_0x39abx5[_0x53bb[57]](_0x53bb[892],this[_0x53bb[863]]);null!=_0x39abx3&&_0x39abx5[_0x53bb[57]](_0x53bb[772],_0x39abx3);_0x39abx5[_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];_0x39abx5[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];for(var _0x39abx9=0<this[_0x53bb[864]][_0x53bb[2]](_0x53bb[893])?this[_0x53bb[864]][_0x53bb[224]](_0x53bb[893]):this[_0x53bb[864]][_0x53bb[224]](),_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx9[_0x39abxa][_0x53bb[2]](_0x53bb[226]);if(0<_0x39abx12){var _0x39abx13=_0x39abx9[_0x39abxa][_0x53bb[85]](0,_0x39abx12),_0x39abx14=_0x39abx9[_0x39abxa][_0x53bb[85]](_0x39abx12+1),_0x39abx12=_0x39abx2[_0x53bb[55]](_0x53bb[126]);_0x39abx12[_0x53bb[57]](_0x53bb[298],_0x39abx13);_0x39abx14=_0x39abx14[_0x53bb[230]](/\n/g,_0x53bb[336]);_0x39abx13=_0x39abx2[_0x53bb[344]](_0x39abx14);_0x39abx12[_0x53bb[62]](_0x39abx13);_0x39abx5[_0x53bb[62]](_0x39abx12)}};_0x39abx2[_0x53bb[112]][_0x53bb[62]](_0x39abx5);_0x39abx5[_0x53bb[894]]();_0x39abx2[_0x53bb[112]][_0x53bb[266]](_0x39abx5);null!=_0x39abx4&&(window[_0x53bb[890]]=_0x39abx4)};var mxClipboard={STEPSIZE:10,insertCount:1,cells:null,isEmpty:function(){return null==mxClipboard[_0x53bb[895]]},cut:function(_0x39abx2,_0x39abx3){_0x39abx3=mxClipboard[_0x53bb[149]](_0x39abx2,_0x39abx3);mxClipboard[_0x53bb[896]]=0;mxClipboard[_0x53bb[842]](_0x39abx2,_0x39abx3);return _0x39abx3},removeCells:function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[842]](_0x39abx3)},copy:function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3||_0x39abx2[_0x53bb[897]]();var _0x39abx4=_0x39abx2[_0x53bb[898]](_0x39abx3);mxClipboard[_0x53bb[896]]=1;mxClipboard[_0x53bb[895]]=_0x39abx2[_0x53bb[899]](_0x39abx4);return _0x39abx4},paste:function(_0x39abx2){if(null!=mxClipboard[_0x53bb[895]]){var _0x39abx3=_0x39abx2[_0x53bb[900]](mxClipboard[_0x53bb[895]]),_0x39abx4=mxClipboard[_0x53bb[896]]*mxClipboard[_0x53bb[901]],_0x39abx5=_0x39abx2[_0x53bb[902]](),_0x39abx3=_0x39abx2[_0x53bb[903]](_0x39abx3,_0x39abx4,_0x39abx4,_0x39abx5);mxClipboard[_0x53bb[896]]++;_0x39abx2[_0x53bb[904]](_0x39abx3)}}};function mxWindow(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15){null!=_0x39abx3&&(_0x39abx12=null!=_0x39abx12?_0x39abx12:!0,this[_0x53bb[905]]=_0x39abx3,this[_0x53bb[176]](_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx15),this[_0x53bb[906]](),this[_0x53bb[907]](),this[_0x53bb[908]](),this[_0x53bb[909]](_0x39abx12),this[_0x53bb[910]](_0x39abx2),(null==_0x39abx13||_0x39abx13)&&this[_0x53bb[911]](),null!=_0x39abx14&&null!=_0x39abx14[_0x53bb[265]]?_0x39abx14[_0x53bb[265]][_0x53bb[912]](this[_0x53bb[485]],_0x39abx14):document[_0x53bb[112]][_0x53bb[62]](this[_0x53bb[485]]))}mxWindow[_0x53bb[202]]= new mxEventSource;mxWindow[_0x53bb[202]][_0x53bb[196]]=mxWindow;mxWindow[_0x53bb[202]][_0x53bb[913]]=mxClient[_0x53bb[88]]+_0x53bb[914];mxWindow[_0x53bb[202]][_0x53bb[915]]=mxClient[_0x53bb[88]]+_0x53bb[916];mxWindow[_0x53bb[202]][_0x53bb[917]]=mxClient[_0x53bb[88]]+_0x53bb[918];mxWindow[_0x53bb[202]][_0x53bb[919]]=mxClient[_0x53bb[88]]+_0x53bb[920];mxWindow[_0x53bb[202]][_0x53bb[921]]=mxClient[_0x53bb[88]]+_0x53bb[922];mxWindow[_0x53bb[202]][_0x53bb[189]]= !1;mxWindow[_0x53bb[202]][_0x53bb[905]]= !1;mxWindow[_0x53bb[202]][_0x53bb[923]]= new mxRectangle(0,0,50,40);mxWindow[_0x53bb[202]][_0x53bb[924]]= !1;mxWindow[_0x53bb[202]][_0x53bb[905]]= !1;mxWindow[_0x53bb[202]][_0x53bb[165]]= !0;mxWindow[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx9=null!=_0x39abx9?_0x39abx9:_0x53bb[925];this[_0x53bb[485]]=document[_0x53bb[55]](_0x53bb[485]);this[_0x53bb[485]][_0x53bb[926]]=_0x39abx9;this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168];this[_0x53bb[116]]=document[_0x53bb[55]](_0x53bb[116]);this[_0x53bb[116]][_0x53bb[926]]=_0x39abx9;null!=_0x39abx4&&(mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=_0x39abx4+_0x53bb[168]),this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]]=_0x39abx4+_0x53bb[168]);null!=_0x39abx5&&(mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abx5+_0x53bb[168]),this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=_0x39abx5+_0x53bb[168]);_0x39abx2=document[_0x53bb[55]](_0x53bb[120]);_0x39abx3=document[_0x53bb[55]](_0x53bb[121]);this[_0x53bb[924]]=document[_0x53bb[55]](_0x53bb[122]);this[_0x53bb[924]][_0x53bb[926]]=_0x39abx9+_0x53bb[927];_0x39abx3[_0x53bb[62]](this[_0x53bb[924]]);_0x39abx2[_0x53bb[62]](_0x39abx3);_0x39abx3=document[_0x53bb[55]](_0x53bb[121]);this[_0x53bb[122]]=document[_0x53bb[55]](_0x53bb[122]);this[_0x53bb[122]][_0x53bb[926]]=_0x39abx9+_0x53bb[928];this[_0x53bb[929]]=document[_0x53bb[55]](_0x53bb[485]);this[_0x53bb[929]][_0x53bb[926]]=_0x39abx9+_0x53bb[928];this[_0x53bb[929]][_0x53bb[124]][_0x53bb[117]]=_0x53bb[118];this[_0x53bb[929]][_0x53bb[62]](this[_0x53bb[905]]);if(mxClient[_0x53bb[80]]||_0x53bb[529]!=this[_0x53bb[905]][_0x53bb[301]][_0x53bb[36]]()){this[_0x53bb[929]][_0x53bb[124]][_0x53bb[119]]=_0x53bb[118]};this[_0x53bb[122]][_0x53bb[62]](this[_0x53bb[929]]);_0x39abx3[_0x53bb[62]](this[_0x53bb[122]]);_0x39abx2[_0x53bb[62]](_0x39abx3);this[_0x53bb[116]][_0x53bb[62]](_0x39abx2);this[_0x53bb[485]][_0x53bb[62]](this[_0x53bb[116]]);_0x39abx9=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[790]]()});mxEvent[_0x53bb[169]](this[_0x53bb[924]],_0x53bb[751],_0x39abx9);mxEvent[_0x53bb[169]](this[_0x53bb[116]],_0x53bb[751],_0x39abx9);mxClient[_0x53bb[754]]&&(mxEvent[_0x53bb[169]](this[_0x53bb[924]],_0x53bb[755],_0x39abx9),mxEvent[_0x53bb[169]](this[_0x53bb[116]],_0x53bb[755],_0x39abx9));this[_0x53bb[801]]()};mxWindow[_0x53bb[202]][_0x53bb[910]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[924]][_0x53bb[285]];null!=_0x39abx3;){var _0x39abx4=_0x39abx3[_0x53bb[287]];_0x39abx3[_0x53bb[288]]==mxConstants[_0x53bb[317]]&&_0x39abx3[_0x53bb[265]][_0x53bb[266]](_0x39abx3);_0x39abx3=_0x39abx4};mxUtils[_0x53bb[53]](this[_0x53bb[924]],_0x39abx2||_0x53bb[110])};mxWindow[_0x53bb[202]][_0x53bb[162]]=function(_0x39abx2){0>navigator[_0x53bb[3]][_0x53bb[2]](_0x53bb[186])&&(this[_0x53bb[929]][_0x53bb[124]][_0x53bb[277]]=_0x39abx2?_0x53bb[278]:_0x53bb[188])};mxWindow[_0x53bb[202]][_0x53bb[790]]=function(){if(mxWindow[_0x53bb[930]]!=this){var _0x39abx2=mxUtils[_0x53bb[275]](this[_0x53bb[166]]()),_0x39abx2=null!=_0x39abx2?_0x39abx2[_0x53bb[931]]:3;if(mxWindow[_0x53bb[930]]){var _0x39abx3=mxWindow[_0x53bb[930]][_0x53bb[166]]();null!=_0x39abx3&&null!=_0x39abx3[_0x53bb[124]]&&(_0x39abx3[_0x53bb[124]][_0x53bb[931]]=_0x39abx2)};_0x39abx3=mxWindow[_0x53bb[930]];this[_0x53bb[166]]()[_0x53bb[124]][_0x53bb[931]]=parseInt(_0x39abx2)+1;mxWindow[_0x53bb[930]]=this;this[_0x53bb[746]]( new mxEventObject(mxEvent.ACTIVATE,_0x53bb[932],_0x39abx3))}};mxWindow[_0x53bb[202]][_0x53bb[166]]=function(){return this[_0x53bb[485]]};mxWindow[_0x53bb[202]][_0x53bb[933]]=function(){mxUtils[_0x53bb[933]](this[_0x53bb[485]])};mxWindow[_0x53bb[202]][_0x53bb[934]]=function(){return null!=this[_0x53bb[129]]?_0x53bb[130]!=this[_0x53bb[129]][_0x53bb[124]][_0x53bb[495]]:!1};mxWindow[_0x53bb[202]][_0x53bb[163]]=function(_0x39abx2){_0x39abx2?null==this[_0x53bb[129]]?(this[_0x53bb[129]]=document[_0x53bb[55]](_0x53bb[466]),this[_0x53bb[129]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492],this[_0x53bb[129]][_0x53bb[124]][_0x53bb[553]]=_0x53bb[935],this[_0x53bb[129]][_0x53bb[124]][_0x53bb[699]]=_0x53bb[935],this[_0x53bb[129]][_0x53bb[57]](_0x53bb[390],mxClient[_0x53bb[88]]+_0x53bb[922]),this[_0x53bb[129]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[936],mxEvent[_0x53bb[759]](this[_0x53bb[129]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[790]]();var _0x39abx4=mxEvent[_0x53bb[731]](_0x39abx2),_0x39abx5=mxEvent[_0x53bb[733]](_0x39abx2),_0x39abx9=this[_0x53bb[485]][_0x53bb[359]],_0x39abxa=this[_0x53bb[485]][_0x53bb[167]],_0x39abx12=mxUtils[_0x53bb[885]](this,function(_0x39abx2){var _0x39abx3=mxEvent[_0x53bb[731]](_0x39abx2)-_0x39abx4,_0x39abx12=mxEvent[_0x53bb[733]](_0x39abx2)-_0x39abx5;this[_0x53bb[937]](_0x39abx9+_0x39abx3,_0x39abxa+_0x39abx12);this[_0x53bb[746]]( new mxEventObject(mxEvent.RESIZE,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)}),_0x39abx13=mxUtils[_0x53bb[885]](this,function(_0x39abx2){mxEvent[_0x53bb[938]](document,null,_0x39abx12,_0x39abx13);this[_0x53bb[746]]( new mxEventObject(mxEvent.RESIZE_END,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)});mxEvent[_0x53bb[759]](document,null,_0x39abx12,_0x39abx13);this[_0x53bb[746]]( new mxEventObject(mxEvent.RESIZE_START,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)}),null,null),this[_0x53bb[485]][_0x53bb[62]](this[_0x53bb[129]])):this[_0x53bb[129]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[497]:null!=this[_0x53bb[129]]&&(this[_0x53bb[129]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130])};mxWindow[_0x53bb[202]][_0x53bb[937]]=function(_0x39abx2,_0x39abx3){_0x39abx2=Math[_0x53bb[160]](this[_0x53bb[923]][_0x53bb[117]],_0x39abx2);_0x39abx3=Math[_0x53bb[160]](this[_0x53bb[923]][_0x53bb[119]],_0x39abx3);mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=_0x39abx2+_0x53bb[168],this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168]);this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]]=_0x39abx2+_0x53bb[168];this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168];mxClient[_0x53bb[80]]||(this[_0x53bb[929]][_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[485]][_0x53bb[167]]-this[_0x53bb[924]][_0x53bb[167]]-2+_0x53bb[168])};mxWindow[_0x53bb[202]][_0x53bb[909]]=function(_0x39abx2){this[_0x53bb[798]][_0x53bb[124]][_0x53bb[495]]=_0x39abx2?_0x53bb[110]:_0x53bb[130]};mxWindow[_0x53bb[202]][_0x53bb[939]]=function(){return new mxRectangle(0,0,0,this[_0x53bb[924]][_0x53bb[167]])};mxWindow[_0x53bb[202]][_0x53bb[907]]=function(){this[_0x53bb[798]]=document[_0x53bb[55]](_0x53bb[466]);this[_0x53bb[798]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[915]]);this[_0x53bb[798]][_0x53bb[57]](_0x53bb[611],_0x53bb[699]);this[_0x53bb[798]][_0x53bb[57]](_0x53bb[924],_0x53bb[940]);this[_0x53bb[798]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[356];this[_0x53bb[798]][_0x53bb[124]][_0x53bb[941]]=_0x53bb[942];this[_0x53bb[798]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];this[_0x53bb[924]][_0x53bb[62]](this[_0x53bb[798]]);var _0x39abx2=!1,_0x39abx3=null,_0x39abx4=null,_0x39abx5=mxUtils[_0x53bb[885]](this,function(_0x39abx5){this[_0x53bb[790]]();if(_0x39abx2){_0x39abx2= !1,this[_0x53bb[798]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[915]]),this[_0x53bb[798]][_0x53bb[57]](_0x53bb[924],_0x53bb[940]),this[_0x53bb[929]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[110],this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]]=_0x39abx3,mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abx4),this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=_0x39abx4,null!=this[_0x53bb[129]]&&(this[_0x53bb[129]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110]),this[_0x53bb[746]]( new mxEventObject(mxEvent.NORMALIZE,_0x53bb[763],_0x39abx5))}else {_0x39abx2= !0;this[_0x53bb[798]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[917]]);this[_0x53bb[798]][_0x53bb[57]](_0x53bb[924],_0x53bb[943]);this[_0x53bb[929]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];_0x39abx3=this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]];this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];_0x39abx4=this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]];var _0x39abxa=this[_0x53bb[939]]();0<_0x39abxa[_0x53bb[119]]&&(mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abxa[_0x53bb[119]]+_0x53bb[168]),this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=_0x39abxa[_0x53bb[119]]+_0x53bb[168]);0<_0x39abxa[_0x53bb[117]]&&(mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=_0x39abxa[_0x53bb[117]]+_0x53bb[168]),this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]]=_0x39abxa[_0x53bb[117]]+_0x53bb[168]);null!=this[_0x53bb[129]]&&(this[_0x53bb[129]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]);this[_0x53bb[746]]( new mxEventObject(mxEvent.MINIMIZE,_0x53bb[763],_0x39abx5))};mxEvent[_0x53bb[722]](_0x39abx5)});mxEvent[_0x53bb[169]](this[_0x53bb[798]],_0x53bb[751],_0x39abx5);mxClient[_0x53bb[754]]&&mxEvent[_0x53bb[169]](this[_0x53bb[798]],_0x53bb[755],_0x39abx5)};mxWindow[_0x53bb[202]][_0x53bb[161]]=function(_0x39abx2){this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]]=_0x39abx2?_0x53bb[110]:_0x53bb[130]};mxWindow[_0x53bb[202]][_0x53bb[906]]=function(){this[_0x53bb[800]]=document[_0x53bb[55]](_0x53bb[466]);this[_0x53bb[800]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[919]]);this[_0x53bb[800]][_0x53bb[57]](_0x53bb[611],_0x53bb[699]);this[_0x53bb[800]][_0x53bb[57]](_0x53bb[924],_0x53bb[944]);this[_0x53bb[800]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[583];this[_0x53bb[800]][_0x53bb[124]][_0x53bb[945]]=_0x53bb[942];this[_0x53bb[800]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[356];this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];this[_0x53bb[924]][_0x53bb[62]](this[_0x53bb[800]]);var _0x39abx2=!1,_0x39abx3=null,_0x39abx4=null,_0x39abx5=null,_0x39abx9=null,_0x39abxa=mxUtils[_0x53bb[885]](this,function(_0x39abxa){this[_0x53bb[790]]();if(_0x53bb[130]!=this[_0x53bb[800]][_0x53bb[124]][_0x53bb[495]]){if(_0x39abx2){_0x39abx2= !1;this[_0x53bb[800]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[919]]);this[_0x53bb[800]][_0x53bb[57]](_0x53bb[924],_0x53bb[944]);this[_0x53bb[929]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[110];this[_0x53bb[798]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx3+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx4+_0x53bb[168];if(!mxClient[_0x53bb[80]]&&(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abx5,this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=_0x39abx9,_0x39abx13=mxUtils[_0x53bb[275]](this[_0x53bb[929]]),_0x53bb[278]==_0x39abx13[_0x53bb[277]]||null!=this[_0x53bb[129]])){this[_0x53bb[929]][_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[485]][_0x53bb[167]]-this[_0x53bb[924]][_0x53bb[167]]-2+_0x53bb[168]};this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=_0x39abx5;this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]]=_0x39abx9;null!=this[_0x53bb[129]]&&(this[_0x53bb[129]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110]);this[_0x53bb[746]]( new mxEventObject(mxEvent.NORMALIZE,_0x53bb[763],_0x39abxa))}else {_0x39abx2= !0;this[_0x53bb[800]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[917]]);this[_0x53bb[800]][_0x53bb[57]](_0x53bb[924],_0x53bb[943]);this[_0x53bb[929]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[110];this[_0x53bb[798]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];_0x39abx3=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]);_0x39abx4=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]);_0x39abx5=this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]];_0x39abx9=this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x53bb[946];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x53bb[946];mxClient[_0x53bb[80]]||(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=document[_0x53bb[112]][_0x53bb[157]]-2+_0x53bb[168],this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=document[_0x53bb[112]][_0x53bb[159]]-2+_0x53bb[168]);this[_0x53bb[116]][_0x53bb[124]][_0x53bb[117]]=document[_0x53bb[112]][_0x53bb[159]]-2+_0x53bb[168];this[_0x53bb[116]][_0x53bb[124]][_0x53bb[119]]=document[_0x53bb[112]][_0x53bb[157]]-2+_0x53bb[168];null!=this[_0x53bb[129]]&&(this[_0x53bb[129]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]);if(!mxClient[_0x53bb[80]]){var _0x39abx13=mxUtils[_0x53bb[275]](this[_0x53bb[929]]);if(_0x53bb[278]==_0x39abx13[_0x53bb[277]]||null!=this[_0x53bb[129]]){this[_0x53bb[929]][_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[485]][_0x53bb[167]]-this[_0x53bb[924]][_0x53bb[167]]-2+_0x53bb[168]}};this[_0x53bb[746]]( new mxEventObject(mxEvent.MAXIMIZE,_0x53bb[763],_0x39abxa))};mxEvent[_0x53bb[722]](_0x39abxa)}});mxEvent[_0x53bb[759]](this[_0x53bb[800]],_0x39abxa);mxEvent[_0x53bb[169]](this[_0x53bb[924]],_0x53bb[760],_0x39abxa)};mxWindow[_0x53bb[202]][_0x53bb[911]]=function(){this[_0x53bb[924]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[582];mxEvent[_0x53bb[759]](this[_0x53bb[924]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){var _0x39abx3=mxEvent[_0x53bb[731]](_0x39abx2),_0x39abx4=mxEvent[_0x53bb[733]](_0x39abx2),_0x39abx5=this[_0x53bb[730]](),_0x39abx9=this[_0x53bb[732]](),_0x39abxa=mxUtils[_0x53bb[885]](this,function(_0x39abx2){var _0x39abxa=mxEvent[_0x53bb[731]](_0x39abx2)-_0x39abx3,_0x39abx12=mxEvent[_0x53bb[733]](_0x39abx2)-_0x39abx4;this[_0x53bb[947]](_0x39abx5+_0x39abxa,_0x39abx9+_0x39abx12);this[_0x53bb[746]]( new mxEventObject(mxEvent.MOVE,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)}),_0x39abx12=mxUtils[_0x53bb[885]](this,function(_0x39abx2){mxEvent[_0x53bb[938]](document,null,_0x39abxa,_0x39abx12);this[_0x53bb[746]]( new mxEventObject(mxEvent.MOVE_END,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)});mxEvent[_0x53bb[759]](document,null,_0x39abxa,_0x39abx12);this[_0x53bb[746]]( new mxEventObject(mxEvent.MOVE_START,_0x53bb[763],_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx2)}))};mxWindow[_0x53bb[202]][_0x53bb[947]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168]};mxWindow[_0x53bb[202]][_0x53bb[730]]=function(){return parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]])};mxWindow[_0x53bb[202]][_0x53bb[732]]=function(){return parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]])};mxWindow[_0x53bb[202]][_0x53bb[908]]=function(){this[_0x53bb[948]]=document[_0x53bb[55]](_0x53bb[466]);this[_0x53bb[948]][_0x53bb[57]](_0x53bb[390],this[_0x53bb[913]]);this[_0x53bb[948]][_0x53bb[57]](_0x53bb[611],_0x53bb[699]);this[_0x53bb[948]][_0x53bb[57]](_0x53bb[924],_0x53bb[949]);this[_0x53bb[948]][_0x53bb[124]][_0x53bb[945]]=_0x53bb[935];this[_0x53bb[948]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[356];this[_0x53bb[948]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];this[_0x53bb[924]][_0x53bb[950]](this[_0x53bb[948]],this[_0x53bb[924]][_0x53bb[285]]);mxEvent[_0x53bb[759]](this[_0x53bb[948]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[746]]( new mxEventObject(mxEvent.CLOSE,_0x53bb[763],_0x39abx2));this[_0x53bb[165]]?this[_0x53bb[515]]():this[_0x53bb[175]](!1);mxEvent[_0x53bb[722]](_0x39abx2)}))};mxWindow[_0x53bb[202]][_0x53bb[951]]=function(_0x39abx2){this[_0x53bb[618]]=document[_0x53bb[55]](_0x53bb[466]);this[_0x53bb[618]][_0x53bb[57]](_0x53bb[390],_0x39abx2);this[_0x53bb[618]][_0x53bb[57]](_0x53bb[611],_0x53bb[361]);this[_0x53bb[618]][_0x53bb[124]][_0x53bb[941]]=_0x53bb[952];this[_0x53bb[618]][_0x53bb[124]][_0x53bb[945]]=_0x53bb[946];this[_0x53bb[618]][_0x53bb[124]][_0x53bb[953]]=_0x53bb[954];this[_0x53bb[924]][_0x53bb[950]](this[_0x53bb[618]],this[_0x53bb[924]][_0x53bb[285]])};mxWindow[_0x53bb[202]][_0x53bb[164]]=function(_0x39abx2){this[_0x53bb[948]][_0x53bb[124]][_0x53bb[495]]=_0x39abx2?_0x53bb[110]:_0x53bb[130]};mxWindow[_0x53bb[202]][_0x53bb[174]]=function(){return null!=this[_0x53bb[485]]?_0x53bb[188]!=this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]:!1};mxWindow[_0x53bb[202]][_0x53bb[175]]=function(_0x39abx2){null!=this[_0x53bb[485]]&&this[_0x53bb[174]]()!=_0x39abx2&&(_0x39abx2?this[_0x53bb[539]]():this[_0x53bb[801]]())};mxWindow[_0x53bb[202]][_0x53bb[539]]=function(){this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110];this[_0x53bb[790]]();var _0x39abx2=mxUtils[_0x53bb[275]](this[_0x53bb[929]]);if(!mxClient[_0x53bb[80]]&&(_0x53bb[278]==_0x39abx2[_0x53bb[277]]||null!=this[_0x53bb[129]])){this[_0x53bb[929]][_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[485]][_0x53bb[167]]-this[_0x53bb[924]][_0x53bb[167]]-2+_0x53bb[168]};this[_0x53bb[746]]( new mxEventObject(mxEvent.SHOW))};mxWindow[_0x53bb[202]][_0x53bb[801]]=function(){this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];this[_0x53bb[746]]( new mxEventObject(mxEvent.HIDE))};mxWindow[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[746]]( new mxEventObject(mxEvent.DESTROY));null!=this[_0x53bb[485]]&&(mxEvent[_0x53bb[762]](this[_0x53bb[485]]),this[_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[485]]),this[_0x53bb[485]]=null);this[_0x53bb[929]]=this[_0x53bb[905]]=this[_0x53bb[924]]=null};function mxForm(_0x39abx2){this[_0x53bb[116]]=document[_0x53bb[55]](_0x53bb[116]);this[_0x53bb[116]][_0x53bb[926]]=_0x39abx2;this[_0x53bb[112]]=document[_0x53bb[55]](_0x53bb[120]);this[_0x53bb[116]][_0x53bb[62]](this[_0x53bb[112]])}mxForm[_0x53bb[202]][_0x53bb[116]]=null;mxForm[_0x53bb[202]][_0x53bb[112]]= !1;mxForm[_0x53bb[202]][_0x53bb[955]]=function(){return this[_0x53bb[116]]};mxForm[_0x53bb[202]][_0x53bb[956]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[121]),_0x39abx5=document[_0x53bb[55]](_0x53bb[122]);_0x39abx4[_0x53bb[62]](_0x39abx5);var _0x39abx5=document[_0x53bb[55]](_0x53bb[122]),_0x39abx9=document[_0x53bb[55]](_0x53bb[172]);mxUtils[_0x53bb[53]](_0x39abx9,mxResources[_0x53bb[203]](_0x53bb[957])||_0x53bb[958]);_0x39abx5[_0x53bb[62]](_0x39abx9);mxEvent[_0x53bb[169]](_0x39abx9,_0x53bb[173],function(){_0x39abx2()});_0x39abx9=document[_0x53bb[55]](_0x53bb[172]);mxUtils[_0x53bb[53]](_0x39abx9,mxResources[_0x53bb[203]](_0x53bb[959])||_0x53bb[960]);_0x39abx5[_0x53bb[62]](_0x39abx9);mxEvent[_0x53bb[169]](_0x39abx9,_0x53bb[173],function(){_0x39abx3()});_0x39abx4[_0x53bb[62]](_0x39abx5);this[_0x53bb[112]][_0x53bb[62]](_0x39abx4)};mxForm[_0x53bb[202]][_0x53bb[961]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[962]);_0x39abx4[_0x53bb[57]](_0x53bb[60],_0x53bb[963]);_0x39abx4[_0x53bb[131]]=_0x39abx3;return this[_0x53bb[964]](_0x39abx2,_0x39abx4)};mxForm[_0x53bb[202]][_0x53bb[965]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[962]);_0x39abx4[_0x53bb[57]](_0x53bb[60],_0x53bb[966]);this[_0x53bb[964]](_0x39abx2,_0x39abx4);_0x39abx3&&(_0x39abx4[_0x53bb[967]]= !0);return _0x39abx4};mxForm[_0x53bb[202]][_0x53bb[968]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=document[_0x53bb[55]](_0x53bb[126]);mxClient[_0x53bb[133]]&&_0x39abx4--;_0x39abx5[_0x53bb[57]](_0x53bb[969],_0x39abx4||2);_0x39abx5[_0x53bb[131]]=_0x39abx3;return this[_0x53bb[964]](_0x39abx2,_0x39abx5)};mxForm[_0x53bb[202]][_0x53bb[970]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=document[_0x53bb[55]](_0x53bb[804]);null!=_0x39abx4&&_0x39abx5[_0x53bb[57]](_0x53bb[803],_0x39abx4);_0x39abx3&&_0x39abx5[_0x53bb[57]](_0x53bb[971],_0x53bb[128]);return this[_0x53bb[964]](_0x39abx2,_0x39abx5)};mxForm[_0x53bb[202]][_0x53bb[972]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=document[_0x53bb[55]](_0x53bb[973]);mxUtils[_0x53bb[171]](_0x39abx9,_0x39abx3);_0x39abx9[_0x53bb[57]](_0x53bb[131],_0x39abx4);_0x39abx5&&_0x39abx9[_0x53bb[57]](_0x53bb[974],_0x39abx5);_0x39abx2[_0x53bb[62]](_0x39abx9)};mxForm[_0x53bb[202]][_0x53bb[964]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[121]),_0x39abx5=document[_0x53bb[55]](_0x53bb[122]);mxUtils[_0x53bb[53]](_0x39abx5,_0x39abx2);_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx5=document[_0x53bb[55]](_0x53bb[122]);_0x39abx5[_0x53bb[62]](_0x39abx3);_0x39abx4[_0x53bb[62]](_0x39abx5);this[_0x53bb[112]][_0x53bb[62]](_0x39abx4);return _0x39abx3};function mxImage(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[390]]=_0x39abx2;this[_0x53bb[117]]=_0x39abx3;this[_0x53bb[119]]=_0x39abx4}mxImage[_0x53bb[202]][_0x53bb[390]]=null;mxImage[_0x53bb[202]][_0x53bb[117]]=null;mxImage[_0x53bb[202]][_0x53bb[119]]=null;function mxDivResizer(_0x39abx2,_0x39abx3){if(_0x53bb[485]==_0x39abx2[_0x53bb[301]][_0x53bb[216]]()){null==_0x39abx3&&(_0x39abx3=window);this[_0x53bb[485]]=_0x39abx2;var _0x39abx4=mxUtils[_0x53bb[275]](_0x39abx2);null!=_0x39abx4&&(this[_0x53bb[975]]=_0x53bb[278]==_0x39abx4[_0x53bb[117]],this[_0x53bb[976]]=_0x53bb[278]==_0x39abx4[_0x53bb[119]]);mxEvent[_0x53bb[169]](_0x39abx3,_0x53bb[129],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[977]]||(this[_0x53bb[977]]= !0,this[_0x53bb[129]](),this[_0x53bb[977]]= !1)}));this[_0x53bb[129]]()}}mxDivResizer[_0x53bb[202]][_0x53bb[975]]= !0;mxDivResizer[_0x53bb[202]][_0x53bb[976]]= !0;mxDivResizer[_0x53bb[202]][_0x53bb[977]]= !1;mxDivResizer[_0x53bb[202]][_0x53bb[129]]=function(){var _0x39abx2=this[_0x53bb[978]](),_0x39abx3=this[_0x53bb[979]](),_0x39abx4=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]),_0x39abx5=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[699]]),_0x39abx9=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]),_0x39abxa=parseInt(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[553]]);this[_0x53bb[975]]&&(!isNaN(_0x39abx4)&&!isNaN(_0x39abx5)&&0<=_0x39abx4&&0<=_0x39abx5&&0<_0x39abx2-_0x39abx5-_0x39abx4)&&(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=_0x39abx2-_0x39abx5-_0x39abx4+_0x53bb[168]);this[_0x53bb[976]]&&(!isNaN(_0x39abx9)&&!isNaN(_0x39abxa)&&0<=_0x39abx9&&0<=_0x39abxa&&0<_0x39abx3-_0x39abx9-_0x39abxa)&&(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=_0x39abx3-_0x39abx9-_0x39abxa+_0x53bb[168])};mxDivResizer[_0x53bb[202]][_0x53bb[978]]=function(){return document[_0x53bb[112]][_0x53bb[159]]};mxDivResizer[_0x53bb[202]][_0x53bb[979]]=function(){return document[_0x53bb[112]][_0x53bb[157]]};function mxDragSource(_0x39abx2,_0x39abx3){this[_0x53bb[980]]=_0x39abx2;this[_0x53bb[981]]=_0x39abx3;mxEvent[_0x53bb[759]](_0x39abx2,mxUtils[_0x53bb[885]](this,this[_0x53bb[787]]))}mxDragSource[_0x53bb[202]][_0x53bb[980]]=null;mxDragSource[_0x53bb[202]][_0x53bb[981]]=null;mxDragSource[_0x53bb[202]][_0x53bb[559]]=null;mxDragSource[_0x53bb[202]][_0x53bb[982]]=null;mxDragSource[_0x53bb[202]][_0x53bb[983]]=null;mxDragSource[_0x53bb[202]][_0x53bb[984]]= !0;mxDragSource[_0x53bb[202]][_0x53bb[985]]=null;mxDragSource[_0x53bb[202]][_0x53bb[986]]=null;mxDragSource[_0x53bb[202]][_0x53bb[987]]=null;mxDragSource[_0x53bb[202]][_0x53bb[988]]=null;mxDragSource[_0x53bb[202]][_0x53bb[989]]=null;mxDragSource[_0x53bb[202]][_0x53bb[561]]= !0;mxDragSource[_0x53bb[202]][_0x53bb[990]]= !0;mxDragSource[_0x53bb[202]][_0x53bb[991]]= !0;mxDragSource[_0x53bb[202]][_0x53bb[563]]= !0;mxDragSource[_0x53bb[202]][_0x53bb[992]]=100;mxDragSource[_0x53bb[202]][_0x53bb[993]]=70;mxDragSource[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxDragSource[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxDragSource[_0x53bb[202]][_0x53bb[996]]=function(){return this[_0x53bb[990]]};mxDragSource[_0x53bb[202]][_0x53bb[562]]=function(_0x39abx2){this[_0x53bb[990]]=_0x39abx2};mxDragSource[_0x53bb[202]][_0x53bb[997]]=function(){return this[_0x53bb[991]]};mxDragSource[_0x53bb[202]][_0x53bb[998]]=function(_0x39abx2){this[_0x53bb[991]]=_0x39abx2};mxDragSource[_0x53bb[202]][_0x53bb[565]]=function(_0x39abx2){return null};mxDragSource[_0x53bb[202]][_0x53bb[564]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx2[_0x53bb[999]](_0x39abx3,_0x39abx4)};mxDragSource[_0x53bb[202]][_0x53bb[566]]=function(_0x39abx2){return this[_0x53bb[980]][_0x53bb[511]](!0)};mxDragSource[_0x53bb[202]][_0x53bb[567]]=function(_0x39abx2){return null};mxDragSource[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2){this[_0x53bb[984]]&&(!mxEvent[_0x53bb[721]](_0x39abx2)&&null==this[_0x53bb[1000]])&&(this[_0x53bb[1001]](_0x39abx2),this[_0x53bb[1000]]=mxUtils[_0x53bb[885]](this,this[_0x53bb[788]]),this[_0x53bb[1002]]=mxUtils[_0x53bb[885]](this,this[_0x53bb[789]]),mxEvent[_0x53bb[759]](document,null,this[_0x53bb[1000]],this[_0x53bb[1002]]),mxEvent[_0x53bb[722]](_0x39abx2,!0,!1))};mxDragSource[_0x53bb[202]][_0x53bb[1001]]=function(_0x39abx2){this[_0x53bb[982]]=this[_0x53bb[566]](_0x39abx2);this[_0x53bb[982]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];this[_0x53bb[982]][_0x53bb[124]][_0x53bb[931]]=this[_0x53bb[992]];mxUtils[_0x53bb[254]](this[_0x53bb[982]],this[_0x53bb[993]])};mxDragSource[_0x53bb[202]][_0x53bb[1003]]=function(_0x39abx2){null!=this[_0x53bb[982]]&&(null!=this[_0x53bb[982]][_0x53bb[265]]&&this[_0x53bb[982]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[982]]),this[_0x53bb[982]]=null)};mxDragSource[_0x53bb[202]][_0x53bb[1004]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxEvent[_0x53bb[731]](_0x39abx3),_0x39abx5=mxEvent[_0x53bb[733]](_0x39abx3),_0x39abx9=mxUtils[_0x53bb[445]](_0x39abx2[_0x53bb[526]]),_0x39abxa=mxUtils[_0x53bb[444]]();return _0x39abx4>=_0x39abx9[_0x53bb[235]]-_0x39abxa[_0x53bb[235]]&&_0x39abx5>=_0x39abx9[_0x53bb[236]]-_0x39abxa[_0x53bb[236]]&&_0x39abx4<=_0x39abx9[_0x53bb[235]]-_0x39abxa[_0x53bb[235]]+_0x39abx2[_0x53bb[526]][_0x53bb[359]]&&_0x39abx5<=_0x39abx9[_0x53bb[236]]-_0x39abxa[_0x53bb[236]]+_0x39abx2[_0x53bb[526]][_0x53bb[167]]};mxDragSource[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[565]](_0x39abx2);null!=_0x39abx3&&!this[_0x53bb[1004]](_0x39abx3,_0x39abx2)&&(_0x39abx3=null);_0x39abx3!=this[_0x53bb[985]]&&(null!=this[_0x53bb[985]]&&this[_0x53bb[1005]](this[_0x53bb[985]]),this[_0x53bb[985]]=_0x39abx3,null!=this[_0x53bb[985]]&&this[_0x53bb[1006]](this[_0x53bb[985]]));null!=this[_0x53bb[985]]&&this[_0x53bb[1007]](this[_0x53bb[985]],_0x39abx2);if(null!=this[_0x53bb[982]]&&(null==this[_0x53bb[983]]||_0x53bb[189]!=this[_0x53bb[983]][_0x53bb[124]][_0x53bb[187]])){var _0x39abx3=mxEvent[_0x53bb[731]](_0x39abx2),_0x39abx4=mxEvent[_0x53bb[733]](_0x39abx2);null==this[_0x53bb[982]][_0x53bb[265]]&&document[_0x53bb[112]][_0x53bb[62]](this[_0x53bb[982]]);this[_0x53bb[982]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189];null!=this[_0x53bb[559]]&&(_0x39abx3+=this[_0x53bb[559]][_0x53bb[235]],_0x39abx4+=this[_0x53bb[559]][_0x53bb[236]]);_0x39abx3+=document[_0x53bb[112]][_0x53bb[360]]||document[_0x53bb[158]][_0x53bb[360]];_0x39abx4+=document[_0x53bb[112]][_0x53bb[190]]||document[_0x53bb[158]][_0x53bb[190]];this[_0x53bb[982]][_0x53bb[124]][_0x53bb[361]]=_0x39abx3+_0x53bb[168];this[_0x53bb[982]][_0x53bb[124]][_0x53bb[125]]=_0x39abx4+_0x53bb[168]}else {null!=this[_0x53bb[982]]&&(this[_0x53bb[982]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188])};mxEvent[_0x53bb[722]](_0x39abx2)};mxDragSource[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2){if(null!=this[_0x53bb[985]]){if(null!=this[_0x53bb[987]]&&(null==this[_0x53bb[983]]||_0x53bb[188]!=this[_0x53bb[983]][_0x53bb[124]][_0x53bb[187]])){var _0x39abx3=this[_0x53bb[985]][_0x53bb[441]][_0x53bb[255]],_0x39abx4=this[_0x53bb[985]][_0x53bb[441]][_0x53bb[513]];this[_0x53bb[1008]](this[_0x53bb[985]],_0x39abx2,this[_0x53bb[986]],this[_0x53bb[987]][_0x53bb[235]]/_0x39abx3-_0x39abx4[_0x53bb[235]],this[_0x53bb[987]][_0x53bb[236]]/_0x39abx3-_0x39abx4[_0x53bb[236]])};this[_0x53bb[1005]](this[_0x53bb[985]])};this[_0x53bb[1003]](_0x39abx2);mxEvent[_0x53bb[938]](document,null,this[_0x53bb[1000]],this[_0x53bb[1002]]);this[_0x53bb[985]]=this[_0x53bb[1002]]=this[_0x53bb[1000]]=null;mxEvent[_0x53bb[722]](_0x39abx2)};mxDragSource[_0x53bb[202]][_0x53bb[1006]]=function(_0x39abx2){_0x39abx2[_0x53bb[1009]]= !0;this[_0x53bb[983]]=this[_0x53bb[567]](_0x39abx2);this[_0x53bb[996]]()&&null!=this[_0x53bb[983]]&&(this[_0x53bb[988]]= new mxGuide(_0x39abx2,_0x39abx2[_0x53bb[1011]][_0x53bb[1010]]()));this[_0x53bb[563]]&&(this[_0x53bb[989]]= new mxCellHighlight(_0x39abx2,mxConstants.DROP_TARGET_COLOR))};mxDragSource[_0x53bb[202]][_0x53bb[1005]]=function(_0x39abx2){this[_0x53bb[987]]=this[_0x53bb[986]]=null;_0x39abx2[_0x53bb[1009]]= !1;null!=this[_0x53bb[983]]&&(null!=this[_0x53bb[983]][_0x53bb[265]]&&this[_0x53bb[983]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[983]]),this[_0x53bb[983]]=null);null!=this[_0x53bb[988]]&&(this[_0x53bb[988]][_0x53bb[515]](),this[_0x53bb[988]]=null);null!=this[_0x53bb[989]]&&(this[_0x53bb[989]][_0x53bb[515]](),this[_0x53bb[989]]=null)};mxDragSource[_0x53bb[202]][_0x53bb[1007]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxUtils[_0x53bb[445]](_0x39abx2[_0x53bb[526]]),_0x39abx5=mxUtils[_0x53bb[444]](_0x39abx2[_0x53bb[526]]),_0x39abx9=mxEvent[_0x53bb[731]](_0x39abx3)-_0x39abx4[_0x53bb[235]]+_0x39abx5[_0x53bb[235]],_0x39abx4=mxEvent[_0x53bb[733]](_0x39abx3)-_0x39abx4[_0x53bb[236]]+_0x39abx5[_0x53bb[236]];_0x39abx2[_0x53bb[1012]]&&(null==this[_0x53bb[561]]||this[_0x53bb[561]])&&_0x39abx2[_0x53bb[1014]](_0x39abx9,_0x39abx4,_0x39abx2[_0x53bb[1013]]);null!=this[_0x53bb[989]]&&_0x39abx2[_0x53bb[1015]]()&&(this[_0x53bb[986]]=this[_0x53bb[564]](_0x39abx2,_0x39abx9,_0x39abx4),_0x39abx5=_0x39abx2[_0x53bb[249]]()[_0x53bb[248]](this[_0x53bb[986]]),this[_0x53bb[989]][_0x53bb[1016]](_0x39abx5));if(null!=this[_0x53bb[983]]){null==this[_0x53bb[983]][_0x53bb[265]]&&(_0x39abx2[_0x53bb[526]][_0x53bb[62]](this[_0x53bb[983]]),this[_0x53bb[983]][_0x53bb[124]][_0x53bb[931]]=_0x53bb[1017],this[_0x53bb[983]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492]);var _0x39abx5=this[_0x53bb[997]]()&&_0x39abx2[_0x53bb[1018]](_0x39abx3),_0x39abxa=!0;if(null!=this[_0x53bb[988]]&&this[_0x53bb[988]][_0x53bb[1019]](_0x39abx3)){var _0x39abxa=parseInt(this[_0x53bb[983]][_0x53bb[124]][_0x53bb[117]]),_0x39abx12=parseInt(this[_0x53bb[983]][_0x53bb[124]][_0x53bb[119]]),_0x39abxa= new mxRectangle(0,0,_0x39abxa,_0x39abx12),_0x39abx4= new mxPoint(_0x39abx9,_0x39abx4),_0x39abx4=this[_0x53bb[988]][_0x53bb[582]](_0x39abxa,_0x39abx4,_0x39abx5),_0x39abxa=!1,_0x39abx9=_0x39abx4[_0x53bb[235]],_0x39abx4=_0x39abx4[_0x53bb[236]]}else {if(_0x39abx5){var _0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx12=_0x39abx2[_0x53bb[441]][_0x53bb[513]],_0x39abx13=_0x39abx2[_0x53bb[1020]]/2,_0x39abx9=(_0x39abx2[_0x53bb[1021]](_0x39abx9/_0x39abx5-_0x39abx12[_0x53bb[235]]-_0x39abx13)+_0x39abx12[_0x53bb[235]])*_0x39abx5,_0x39abx4=(_0x39abx2[_0x53bb[1021]](_0x39abx4/_0x39abx5-_0x39abx12[_0x53bb[236]]-_0x39abx13)+_0x39abx12[_0x53bb[236]])*_0x39abx5}};null!=this[_0x53bb[988]]&&_0x39abxa&&this[_0x53bb[988]][_0x53bb[801]]();null!=this[_0x53bb[1022]]&&(_0x39abx9+=this[_0x53bb[1022]][_0x53bb[235]],_0x39abx4+=this[_0x53bb[1022]][_0x53bb[236]]);this[_0x53bb[983]][_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](_0x39abx9)+_0x53bb[168];this[_0x53bb[983]][_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](_0x39abx4)+_0x53bb[168];this[_0x53bb[983]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189]};this[_0x53bb[987]]= new mxPoint(_0x39abx9,_0x39abx4)};mxDragSource[_0x53bb[202]][_0x53bb[1008]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){this[_0x53bb[981]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[526]][_0x53bb[393]]()};function mxToolbar(_0x39abx2){this[_0x53bb[526]]=_0x39abx2}mxToolbar[_0x53bb[202]]= new mxEventSource;mxToolbar[_0x53bb[202]][_0x53bb[196]]=mxToolbar;mxToolbar[_0x53bb[202]][_0x53bb[526]]=null;mxToolbar[_0x53bb[202]][_0x53bb[984]]= !0;mxToolbar[_0x53bb[202]][_0x53bb[1023]]= !1;mxToolbar[_0x53bb[202]][_0x53bb[1024]]= !0;mxToolbar[_0x53bb[202]][_0x53bb[1025]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=document[_0x53bb[55]](null!=_0x39abx3?_0x53bb[466]:_0x53bb[172]),_0x39abx13=_0x39abx9||(null!=_0x39abxa?_0x53bb[1026]:_0x53bb[1027]);_0x39abx12[_0x53bb[926]]=_0x39abx13;_0x39abx12[_0x53bb[57]](_0x53bb[390],_0x39abx3);null!=_0x39abx2&&(null!=_0x39abx3?_0x39abx12[_0x53bb[57]](_0x53bb[924],_0x39abx2):mxUtils[_0x53bb[53]](_0x39abx12,_0x39abx2));this[_0x53bb[526]][_0x53bb[62]](_0x39abx12);null!=_0x39abx4&&(mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[173],_0x39abx4),mxClient[_0x53bb[754]]&&mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[757],_0x39abx4));_0x39abx2=mxUtils[_0x53bb[885]](this,function(_0x39abx2){null!=_0x39abx5?_0x39abx12[_0x53bb[57]](_0x53bb[390],_0x39abx3):_0x39abx12[_0x53bb[124]][_0x53bb[1028]]=_0x53bb[110]});mxEvent[_0x53bb[759]](_0x39abx12,mxUtils[_0x53bb[885]](this,function(_0x39abx2){null!=_0x39abx5?_0x39abx12[_0x53bb[57]](_0x53bb[390],_0x39abx5):_0x39abx12[_0x53bb[124]][_0x53bb[1028]]=_0x53bb[579];if(null!=_0x39abxa){null==this[_0x53bb[1029]]&&(this[_0x53bb[1029]]= new mxPopupMenu,this[_0x53bb[1029]][_0x53bb[176]]());var _0x39abx3=this[_0x53bb[1030]];this[_0x53bb[1029]][_0x53bb[1031]]()&&this[_0x53bb[1029]][_0x53bb[1032]]();_0x39abx3!=_0x39abx12&&(this[_0x53bb[1030]]=_0x39abx12,this[_0x53bb[1029]][_0x53bb[1033]]=_0x39abxa,_0x39abx3= new mxPoint(_0x39abx12[_0x53bb[358]],_0x39abx12[_0x53bb[362]]+_0x39abx12[_0x53bb[167]]),this[_0x53bb[1029]][_0x53bb[152]](_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],null,_0x39abx2),this[_0x53bb[1029]][_0x53bb[1031]]()&&(_0x39abx12[_0x53bb[926]]=_0x39abx13+_0x53bb[1034],this[_0x53bb[1029]][_0x53bb[1032]]=function(){mxPopupMenu[_0x53bb[202]][_0x53bb[1032]][_0x53bb[183]](this);_0x39abx12[_0x53bb[926]]=_0x39abx13;this[_0x53bb[1030]]=null}))}}),null,_0x39abx2);mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[1035],_0x39abx2);return _0x39abx12};mxToolbar[_0x53bb[202]][_0x53bb[970]]=function(_0x39abx2){var _0x39abx3=document[_0x53bb[55]](_0x53bb[485]);_0x39abx3[_0x53bb[124]][_0x53bb[495]]=_0x53bb[497];_0x39abx3[_0x53bb[926]]=_0x53bb[1036];var _0x39abx4=document[_0x53bb[55]](_0x53bb[804]);_0x39abx4[_0x53bb[926]]=_0x39abx2||_0x53bb[1037];_0x39abx3[_0x53bb[62]](_0x39abx4);this[_0x53bb[526]][_0x53bb[62]](_0x39abx3);return _0x39abx4};mxToolbar[_0x53bb[202]][_0x53bb[1038]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[804]);_0x39abx4[_0x53bb[926]]=_0x39abx3||_0x53bb[1037];this[_0x53bb[972]](_0x39abx4,_0x39abx2,null);mxEvent[_0x53bb[169]](_0x39abx4,_0x53bb[826],function(_0x39abx2){var _0x39abx3=_0x39abx4[_0x53bb[1040]][_0x39abx4[_0x53bb[1039]]];_0x39abx4[_0x53bb[1039]]=0;null!=_0x39abx3[_0x53bb[1041]]&&_0x39abx3[_0x53bb[1041]](_0x39abx2)});this[_0x53bb[526]][_0x53bb[62]](_0x39abx4);return _0x39abx4};mxToolbar[_0x53bb[202]][_0x53bb[972]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=document[_0x53bb[55]](_0x53bb[973]);mxUtils[_0x53bb[171]](_0x39abx5,_0x39abx3);_0x53bb[279]== typeof _0x39abx4?_0x39abx5[_0x53bb[1041]]=_0x39abx4:_0x39abx5[_0x53bb[57]](_0x53bb[131],_0x39abx4);_0x39abx2[_0x53bb[62]](_0x39abx5);return _0x39abx5};mxToolbar[_0x53bb[202]][_0x53bb[1042]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=document[_0x53bb[55]](_0x53bb[466]);_0x39abxa[_0x53bb[1043]]=_0x39abx9||_0x53bb[1026];_0x39abxa[_0x53bb[926]]=_0x39abxa[_0x53bb[1043]];_0x39abxa[_0x53bb[57]](_0x53bb[390],_0x39abx3);_0x39abxa[_0x53bb[1044]]=_0x39abx5;null!=_0x39abx2&&_0x39abxa[_0x53bb[57]](_0x53bb[924],_0x39abx2);mxEvent[_0x53bb[169]](_0x39abxa,_0x53bb[173],mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx2=this[_0x53bb[1045]][_0x53bb[1044]];null!=_0x39abx2?(this[_0x53bb[1045]][_0x53bb[1044]]=this[_0x53bb[1045]][_0x53bb[284]](_0x53bb[390]),this[_0x53bb[1045]][_0x53bb[57]](_0x53bb[390],_0x39abx2)):this[_0x53bb[1045]][_0x53bb[926]]=this[_0x53bb[1045]][_0x53bb[1043]];this[_0x53bb[1024]]&&(this[_0x53bb[1046]]=_0x39abxa);this[_0x53bb[1045]]=_0x39abxa;_0x39abx2=_0x39abxa[_0x53bb[1044]];null!=_0x39abx2?(_0x39abxa[_0x53bb[1044]]=_0x39abxa[_0x53bb[284]](_0x53bb[390]),_0x39abxa[_0x53bb[57]](_0x53bb[390],_0x39abx2)):_0x39abxa[_0x53bb[926]]=_0x39abxa[_0x53bb[1043]]+_0x53bb[1034];this[_0x53bb[746]]( new mxEventObject(mxEvent.SELECT));_0x39abx4()}));this[_0x53bb[526]][_0x53bb[62]](_0x39abxa);null==this[_0x53bb[1046]]&&(this[_0x53bb[1046]]=_0x39abxa,this[_0x53bb[1047]](_0x39abxa),_0x39abx4());return _0x39abxa};mxToolbar[_0x53bb[202]][_0x53bb[1048]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abxa=null!=_0x39abxa?_0x39abxa:!0;var _0x39abx12=document[_0x53bb[55]](null!=_0x39abx3?_0x53bb[466]:_0x53bb[172]);_0x39abx12[_0x53bb[1043]]=_0x39abx9||_0x53bb[1026];_0x39abx12[_0x53bb[926]]=_0x39abx12[_0x53bb[1043]];_0x39abx12[_0x53bb[57]](_0x53bb[390],_0x39abx3);_0x39abx12[_0x53bb[1044]]=_0x39abx5;null!=_0x39abx2&&_0x39abx12[_0x53bb[57]](_0x53bb[924],_0x39abx2);this[_0x53bb[984]]&&_0x39abxa&&(mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[173],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1047]](_0x39abx12,_0x39abx4);this[_0x53bb[1023]]= !1})),mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[760],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1047]](_0x39abx12,_0x39abx4);this[_0x53bb[1023]]= !0})),null==this[_0x53bb[1046]]&&(this[_0x53bb[1046]]=_0x39abx12,this[_0x53bb[1049]]=_0x39abx4,this[_0x53bb[1047]](_0x39abx12,_0x39abx4)));this[_0x53bb[526]][_0x53bb[62]](_0x39abx12);return _0x39abx12};mxToolbar[_0x53bb[202]][_0x53bb[1047]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1045]]!=_0x39abx2){if(null!=this[_0x53bb[1045]]){var _0x39abx4=this[_0x53bb[1045]][_0x53bb[1044]];null!=_0x39abx4?(this[_0x53bb[1045]][_0x53bb[1044]]=this[_0x53bb[1045]][_0x53bb[284]](_0x53bb[390]),this[_0x53bb[1045]][_0x53bb[57]](_0x53bb[390],_0x39abx4)):this[_0x53bb[1045]][_0x53bb[926]]=this[_0x53bb[1045]][_0x53bb[1043]]};this[_0x53bb[1045]]=_0x39abx2;_0x39abx4=this[_0x53bb[1045]][_0x53bb[1044]];null!=_0x39abx4?(this[_0x53bb[1045]][_0x53bb[1044]]=this[_0x53bb[1045]][_0x53bb[284]](_0x53bb[390]),this[_0x53bb[1045]][_0x53bb[57]](_0x53bb[390],_0x39abx4)):this[_0x53bb[1045]][_0x53bb[926]]=this[_0x53bb[1045]][_0x53bb[1043]]+_0x53bb[1034];this[_0x53bb[746]]( new mxEventObject(mxEvent.SELECT,_0x53bb[279],_0x39abx3))}};mxToolbar[_0x53bb[202]][_0x53bb[1050]]=function(_0x39abx2){(_0x39abx2||!this[_0x53bb[1023]])&&this[_0x53bb[1045]]!=this[_0x53bb[1046]]&&this[_0x53bb[1047]](this[_0x53bb[1046]],this[_0x53bb[1049]])};mxToolbar[_0x53bb[202]][_0x53bb[1051]]=function(_0x39abx2){return this[_0x53bb[1025]](null,_0x39abx2,null)};mxToolbar[_0x53bb[202]][_0x53bb[1052]]=function(){mxUtils[_0x53bb[345]](this[_0x53bb[526]])};mxToolbar[_0x53bb[202]][_0x53bb[1053]]=function(){var _0x39abx2=document[_0x53bb[55]](_0x53bb[1054]);_0x39abx2[_0x53bb[124]][_0x53bb[941]]=_0x53bb[1055];_0x39abx2[_0x53bb[57]](_0x53bb[803],_0x53bb[500]);this[_0x53bb[526]][_0x53bb[62]](_0x39abx2)};mxToolbar[_0x53bb[202]][_0x53bb[515]]=function(){mxEvent[_0x53bb[762]](this[_0x53bb[526]]);this[_0x53bb[1045]]=this[_0x53bb[1049]]=this[_0x53bb[1046]]=this[_0x53bb[526]]=null;null!=this[_0x53bb[1029]]&&this[_0x53bb[1029]][_0x53bb[515]]()};function mxSession(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[1056]]=_0x39abx3;this[_0x53bb[1057]]=_0x39abx4;this[_0x53bb[1058]]=_0x39abx5;null!=_0x39abx2&&(this[_0x53bb[1059]]= new mxCodec,this[_0x53bb[1059]][_0x53bb[1060]]=function(_0x39abx3){return _0x39abx2[_0x53bb[736]](_0x39abx3)});_0x39abx2[_0x53bb[169]](mxEvent.NOTIFY,mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx3[_0x53bb[720]](_0x53bb[1061]);(null!=_0x39abx4&&this[_0x53bb[143]]||this[_0x53bb[1062]]&&!this[_0x53bb[1063]])&&this[_0x53bb[827]](_0x53bb[1064]+this[_0x53bb[1067]](_0x39abx4[_0x53bb[1065]],_0x39abx4[_0x53bb[1066]])+_0x53bb[1068])}))}mxSession[_0x53bb[202]]= new mxEventSource;mxSession[_0x53bb[202]][_0x53bb[196]]=mxSession;mxSession[_0x53bb[202]][_0x53bb[251]]=null;mxSession[_0x53bb[202]][_0x53bb[1056]]=null;mxSession[_0x53bb[202]][_0x53bb[1057]]=null;mxSession[_0x53bb[202]][_0x53bb[1058]]=null;mxSession[_0x53bb[202]][_0x53bb[1059]]=null;mxSession[_0x53bb[202]][_0x53bb[1069]]=_0x53bb[336];mxSession[_0x53bb[202]][_0x53bb[1070]]= !0;mxSession[_0x53bb[202]][_0x53bb[1071]]= !0;mxSession[_0x53bb[202]][_0x53bb[1072]]=0;mxSession[_0x53bb[202]][_0x53bb[1073]]=0;mxSession[_0x53bb[202]][_0x53bb[143]]= !1;mxSession[_0x53bb[202]][_0x53bb[1062]]= !1;mxSession[_0x53bb[202]][_0x53bb[1063]]= !1;mxSession[_0x53bb[202]][_0x53bb[1074]]= !1;mxSession[_0x53bb[202]][_0x53bb[861]]=function(){this[_0x53bb[143]]?(this[_0x53bb[1062]]= !0,this[_0x53bb[746]]( new mxEventObject(mxEvent.CONNECT))):this[_0x53bb[1062]]||this[_0x53bb[203]](this[_0x53bb[1056]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1062]]= !0;this[_0x53bb[746]]( new mxEventObject(mxEvent.CONNECT));this[_0x53bb[1075]]()}))};mxSession[_0x53bb[202]][_0x53bb[809]]=function(){this[_0x53bb[1062]]&&!this[_0x53bb[1063]]&&(this[_0x53bb[1063]]= !0,this[_0x53bb[746]]( new mxEventObject(mxEvent.SUSPEND)))};mxSession[_0x53bb[202]][_0x53bb[810]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[1062]]&&this[_0x53bb[1063]]&&(this[_0x53bb[1063]]= !1,this[_0x53bb[746]]( new mxEventObject(mxEvent.RESUME)),this[_0x53bb[1074]]||this[_0x53bb[1075]]())};mxSession[_0x53bb[202]][_0x53bb[1076]]=function(_0x39abx2){this[_0x53bb[1062]]&&(this[_0x53bb[1062]]= !1);this[_0x53bb[746]]( new mxEventObject(mxEvent.DISCONNECT,_0x53bb[1077],_0x39abx2))};mxSession[_0x53bb[202]][_0x53bb[1075]]=function(){this[_0x53bb[1062]]&&!this[_0x53bb[1063]]&&null!=this[_0x53bb[1057]]?(this[_0x53bb[1074]]= !0,this[_0x53bb[203]](this[_0x53bb[1057]],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[1075]]()}))):this[_0x53bb[1074]]= !1};mxSession[_0x53bb[202]][_0x53bb[827]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]&&(null!=this[_0x53bb[1058]]&&(this[_0x53bb[143]]?(mxLog[_0x53bb[539]](),mxLog[_0x53bb[143]](_0x53bb[1078]+this[_0x53bb[1058]]+_0x53bb[1079]+_0x39abx2)):(_0x39abx2=_0x53bb[1080]+_0x39abx2+_0x53bb[1081],this[_0x53bb[1070]]&&(_0x39abx2=encodeURIComponent(_0x39abx2)),mxUtils[_0x53bb[814]](this[_0x53bb[1058]],_0x53bb[1082]+_0x39abx2,_0x39abx3,_0x39abx4))),this[_0x53bb[1072]]+=_0x39abx2[_0x53bb[67]],this[_0x53bb[746]]( new mxEventObject(mxEvent.NOTIFY,_0x53bb[863],this[_0x53bb[1058]],_0x53bb[338],_0x39abx2)))};mxSession[_0x53bb[202]][_0x53bb[203]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(_0x53bb[82]!= typeof mxUtils){var _0x39abx5=mxUtils[_0x53bb[885]](this,function(_0x39abx2){null!=_0x39abx4?_0x39abx4(_0x39abx2):this[_0x53bb[1076]](_0x39abx2)});mxUtils[_0x53bb[203]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx4){if(_0x53bb[82]!= typeof mxUtils){if(_0x39abx4[_0x53bb[220]]()&&404!=_0x39abx4[_0x53bb[878]]()){if(this[_0x53bb[1073]]+=_0x39abx4[_0x53bb[221]]()[_0x53bb[67]],this[_0x53bb[746]]( new mxEventObject(mxEvent.GET,_0x53bb[863],_0x39abx2,_0x53bb[870],_0x39abx4)),this[_0x53bb[1083]](_0x39abx4)){if(0<_0x39abx4[_0x53bb[221]]()[_0x53bb[67]]){var _0x39abxa=_0x39abx4[_0x53bb[874]]();null==_0x39abxa?_0x39abx5(_0x53bb[1084]+_0x39abx4[_0x53bb[221]]()):this[_0x53bb[806]](_0x39abxa)};null!=_0x39abx3&&_0x39abx3(_0x39abx4)}}else {_0x39abx5(_0x53bb[1085])}}}),function(_0x39abx2){_0x39abx5(_0x53bb[1086])})}};mxSession[_0x53bb[202]][_0x53bb[1083]]=function(_0x39abx2){return 0>_0x39abx2[_0x53bb[221]]()[_0x53bb[2]](_0x53bb[1087])};mxSession[_0x53bb[202]][_0x53bb[1067]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=_0x53bb[110],_0x39abx5=_0x39abx3?-1:1,_0x39abx9=_0x39abx3?_0x39abx2[_0x53bb[67]]-1:0;0<=_0x39abx9&&_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9+=_0x39abx5){var _0x39abxa=this[_0x53bb[1059]][_0x53bb[514]](_0x39abx2[_0x39abx9]),_0x39abx4=_0x39abx4+mxUtils[_0x53bb[875]](_0x39abxa,this[_0x53bb[1069]])};return _0x39abx4};mxSession[_0x53bb[202]][_0x53bb[806]]=function(_0x39abx2){if(null!=_0x39abx2&&_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[289]]){var _0x39abx3=_0x39abx2[_0x53bb[284]](_0x53bb[1088]);null!=_0x39abx3&&(this[_0x53bb[251]][_0x53bb[1089]]=_0x39abx3+_0x53bb[213]);for(_0x39abx3=_0x39abx2[_0x53bb[285]];null!=_0x39abx3;){var _0x39abx4=_0x39abx3[_0x53bb[301]][_0x53bb[216]]();_0x53bb[724]==_0x39abx4?this[_0x53bb[1090]](_0x39abx3):_0x53bb[1091]==_0x39abx4&&this[_0x53bb[1092]](_0x39abx3);_0x39abx3=_0x39abx3[_0x53bb[287]]};this[_0x53bb[746]]( new mxEventObject(mxEvent.RECEIVE,_0x53bb[252],_0x39abx2))}};mxSession[_0x53bb[202]][_0x53bb[1090]]=function(_0x39abx2){( new mxCodec(_0x39abx2[_0x53bb[295]]))[_0x53bb[1093]](_0x39abx2[_0x53bb[285]],this[_0x53bb[251]])};mxSession[_0x53bb[202]][_0x53bb[1092]]=function(_0x39abx2){for(_0x39abx2=_0x39abx2[_0x53bb[285]];null!=_0x39abx2;){_0x53bb[1061]==_0x39abx2[_0x53bb[301]]&&this[_0x53bb[1094]](_0x39abx2),_0x39abx2=_0x39abx2[_0x53bb[287]]}};mxSession[_0x53bb[202]][_0x53bb[1094]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1095]](_0x39abx2);if(0<_0x39abx2[_0x53bb[67]]){var _0x39abx3=this[_0x53bb[1096]](_0x39abx2);this[_0x53bb[251]][_0x53bb[746]]( new mxEventObject(mxEvent.CHANGE,_0x53bb[1061],_0x39abx3,_0x53bb[1065],_0x39abx2));this[_0x53bb[251]][_0x53bb[746]]( new mxEventObject(mxEvent.UNDO,_0x53bb[1061],_0x39abx3));this[_0x53bb[746]]( new mxEventObject(mxEvent.FIRED,_0x53bb[1061],_0x39abx3))}};mxSession[_0x53bb[202]][_0x53bb[1096]]=function(_0x39abx2){var _0x39abx3= new mxUndoableEdit(this[_0x53bb[251]],this[_0x53bb[1071]]);_0x39abx3[_0x53bb[1065]]=_0x39abx2;_0x39abx3[_0x53bb[827]]=function(){_0x39abx3[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.CHANGE,_0x53bb[1061],_0x39abx3,_0x53bb[1065],_0x39abx3[_0x53bb[1065]]));_0x39abx3[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.NOTIFY,_0x53bb[1061],_0x39abx3,_0x53bb[1065],_0x39abx3[_0x53bb[1065]]))};return _0x39abx3};mxSession[_0x53bb[202]][_0x53bb[1095]]=function(_0x39abx2){this[_0x53bb[1059]][_0x53bb[395]]=_0x39abx2[_0x53bb[295]];var _0x39abx3=[];for(_0x39abx2=_0x39abx2[_0x53bb[285]];null!=_0x39abx2;){var _0x39abx4=this[_0x53bb[1098]](_0x39abx2);null!=_0x39abx4&&_0x39abx3[_0x53bb[207]](_0x39abx4);_0x39abx2=_0x39abx2[_0x53bb[287]]};return _0x39abx3};mxSession[_0x53bb[202]][_0x53bb[1098]]=function(_0x39abx2){var _0x39abx3=null;_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&(_0x39abx3=_0x53bb[1099]==_0x39abx2[_0x53bb[301]]?( new mxCodec(_0x39abx2[_0x53bb[295]]))[_0x53bb[1093]](_0x39abx2):this[_0x53bb[1059]][_0x53bb[1093]](_0x39abx2),null!=_0x39abx3&&(_0x39abx3[_0x53bb[251]]=this[_0x53bb[251]],_0x39abx3[_0x53bb[350]](),_0x53bb[1100]==_0x39abx2[_0x53bb[301]]&&null==_0x39abx3[_0x53bb[1101]]&&this[_0x53bb[1102]](_0x39abx3[_0x53bb[247]])));return _0x39abx3};mxSession[_0x53bb[202]][_0x53bb[1102]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1059]][_0x53bb[1104]](_0x39abx2[_0x53bb[1103]](),_0x39abx2);for(var _0x39abx4=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2),_0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){this[_0x53bb[1102]](this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx5))}};function mxUndoableEdit(_0x39abx2,_0x39abx3){this[_0x53bb[1097]]=_0x39abx2;this[_0x53bb[1065]]=[];this[_0x53bb[1105]]=null!=_0x39abx3?_0x39abx3:!0}mxUndoableEdit[_0x53bb[202]][_0x53bb[1097]]=null;mxUndoableEdit[_0x53bb[202]][_0x53bb[1065]]=null;mxUndoableEdit[_0x53bb[202]][_0x53bb[1105]]=null;mxUndoableEdit[_0x53bb[202]][_0x53bb[1066]]= !1;mxUndoableEdit[_0x53bb[202]][_0x53bb[1106]]= !1;mxUndoableEdit[_0x53bb[202]][_0x53bb[1107]]=function(){return 0==this[_0x53bb[1065]][_0x53bb[67]]};mxUndoableEdit[_0x53bb[202]][_0x53bb[1108]]=function(){return this[_0x53bb[1105]]};mxUndoableEdit[_0x53bb[202]][_0x53bb[99]]=function(_0x39abx2){this[_0x53bb[1065]][_0x53bb[207]](_0x39abx2)};mxUndoableEdit[_0x53bb[202]][_0x53bb[827]]=function(){};mxUndoableEdit[_0x53bb[202]][_0x53bb[1109]]=function(){};mxUndoableEdit[_0x53bb[202]][_0x53bb[824]]=function(){if(!this[_0x53bb[1066]]){this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.START_EDIT));for(var _0x39abx2=this[_0x53bb[1065]][_0x53bb[67]]-1;0<=_0x39abx2;_0x39abx2--){var _0x39abx3=this[_0x53bb[1065]][_0x39abx2];null!=_0x39abx3[_0x53bb[350]]?_0x39abx3[_0x53bb[350]]():null!=_0x39abx3[_0x53bb[824]]&&_0x39abx3[_0x53bb[824]]();this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.EXECUTED,_0x53bb[826],_0x39abx3))};this[_0x53bb[1066]]= !0;this[_0x53bb[1106]]= !1;this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.END_EDIT))};this[_0x53bb[827]]()};mxUndoableEdit[_0x53bb[202]][_0x53bb[825]]=function(){if(!this[_0x53bb[1106]]){this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.START_EDIT));for(var _0x39abx2=this[_0x53bb[1065]][_0x53bb[67]],_0x39abx3=0;_0x39abx3<_0x39abx2;_0x39abx3++){var _0x39abx4=this[_0x53bb[1065]][_0x39abx3];null!=_0x39abx4[_0x53bb[350]]?_0x39abx4[_0x53bb[350]]():null!=_0x39abx4[_0x53bb[825]]&&_0x39abx4[_0x53bb[825]]();this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.EXECUTED,_0x53bb[826],_0x39abx4))};this[_0x53bb[1066]]= !1;this[_0x53bb[1106]]= !0;this[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.END_EDIT))};this[_0x53bb[827]]()};function mxUndoManager(_0x39abx2){this[_0x53bb[803]]=null!=_0x39abx2?_0x39abx2:100;this[_0x53bb[200]]()}mxUndoManager[_0x53bb[202]]= new mxEventSource;mxUndoManager[_0x53bb[202]][_0x53bb[196]]=mxUndoManager;mxUndoManager[_0x53bb[202]][_0x53bb[803]]=null;mxUndoManager[_0x53bb[202]][_0x53bb[1110]]=null;mxUndoManager[_0x53bb[202]][_0x53bb[1111]]=0;mxUndoManager[_0x53bb[202]][_0x53bb[1107]]=function(){return 0==this[_0x53bb[1110]][_0x53bb[67]]};mxUndoManager[_0x53bb[202]][_0x53bb[200]]=function(){this[_0x53bb[1110]]=[];this[_0x53bb[1111]]=0;this[_0x53bb[746]]( new mxEventObject(mxEvent.CLEAR))};mxUndoManager[_0x53bb[202]][_0x53bb[1112]]=function(){return 0<this[_0x53bb[1111]]};mxUndoManager[_0x53bb[202]][_0x53bb[824]]=function(){for(;0<this[_0x53bb[1111]];){var _0x39abx2=this[_0x53bb[1110]][--this[_0x53bb[1111]]];_0x39abx2[_0x53bb[824]]();if(_0x39abx2[_0x53bb[1108]]()){this[_0x53bb[746]]( new mxEventObject(mxEvent.UNDO,_0x53bb[1061],_0x39abx2));break}}};mxUndoManager[_0x53bb[202]][_0x53bb[1113]]=function(){return this[_0x53bb[1111]]<this[_0x53bb[1110]][_0x53bb[67]]};mxUndoManager[_0x53bb[202]][_0x53bb[825]]=function(){for(var _0x39abx2=this[_0x53bb[1110]][_0x53bb[67]];this[_0x53bb[1111]]<_0x39abx2;){var _0x39abx3=this[_0x53bb[1110]][this[_0x53bb[1111]]++];_0x39abx3[_0x53bb[825]]();if(_0x39abx3[_0x53bb[1108]]()){this[_0x53bb[746]]( new mxEventObject(mxEvent.REDO,_0x53bb[1061],_0x39abx3));break}}};mxUndoManager[_0x53bb[202]][_0x53bb[1114]]=function(_0x39abx2){this[_0x53bb[330]]();0<this[_0x53bb[803]]&&this[_0x53bb[803]]==this[_0x53bb[1110]][_0x53bb[67]]&&this[_0x53bb[1110]][_0x53bb[1115]]();this[_0x53bb[1110]][_0x53bb[207]](_0x39abx2);this[_0x53bb[1111]]=this[_0x53bb[1110]][_0x53bb[67]];this[_0x53bb[746]]( new mxEventObject(mxEvent.ADD,_0x53bb[1061],_0x39abx2))};mxUndoManager[_0x53bb[202]][_0x53bb[330]]=function(){if(this[_0x53bb[1110]][_0x53bb[67]]>this[_0x53bb[1111]]){for(var _0x39abx2=this[_0x53bb[1110]][_0x53bb[300]](this[_0x53bb[1111]],this[_0x53bb[1110]][_0x53bb[67]]-this[_0x53bb[1111]]),_0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){_0x39abx2[_0x39abx3][_0x53bb[1109]]()}}};var mxUrlConverter=function(_0x39abx2){var _0x39abx3=!0,_0x39abx4=null,_0x39abx5=null;return {isEnabled:function(){return _0x39abx3},setEnabled:function(_0x39abx2){_0x39abx3=_0x39abx2},getBaseUrl:function(){return _0x39abx4},setBaseUrl:function(_0x39abx2){_0x39abx4=_0x39abx2},getBaseDomain:function(){return _0x39abx4},setBaseDomain:function(_0x39abx2){_0x39abx4=_0x39abx2},isRelativeUrl:function(_0x39abx2){return _0x53bb[43]!=_0x39abx2[_0x53bb[85]](0,7)&&_0x53bb[46]!=_0x39abx2[_0x53bb[85]](0,8)&&_0x53bb[1116]!=_0x39abx2[_0x53bb[85]](0,10)},convert:function(_0x39abx2){if(_0x39abx3&&this[_0x53bb[1117]](_0x39abx2)){if(null==_0x39abx4){_0x39abx5=location[_0x53bb[1118]]+_0x53bb[1119]+location[_0x53bb[1120]];_0x39abx4=_0x39abx5+location[_0x53bb[1121]];var _0x39abxa=_0x39abx4[_0x53bb[1122]](_0x53bb[84]);0<_0x39abxa&&(_0x39abx4=_0x39abx4[_0x53bb[85]](0,_0x39abxa+1))};_0x39abx2=_0x53bb[84]==_0x39abx2[_0x53bb[225]](0)?_0x39abx5+_0x39abx2:_0x39abx4+_0x39abx2};return _0x39abx2}}};function mxPanningManager(_0x39abx2){this[_0x53bb[1123]]=null;this[_0x53bb[1124]]= !1;this[_0x53bb[1125]]=this[_0x53bb[1126]]=this[_0x53bb[1127]]=this[_0x53bb[1128]]=this[_0x53bb[1129]]=this[_0x53bb[1130]]=0;this[_0x53bb[1131]]= !1;this[_0x53bb[190]]=this[_0x53bb[360]]=0;this[_0x53bb[1132]]={mouseDown:function(_0x39abx2,_0x39abx3){},mouseMove:function(_0x39abx2,_0x39abx3){},mouseUp:mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[1124]]&&this[_0x53bb[1076]]()})};_0x39abx2[_0x53bb[1133]](this[_0x53bb[1132]]);mxEvent[_0x53bb[169]](document,_0x53bb[753],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[1124]]&&this[_0x53bb[1076]]()}));var _0x39abx3=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[1131]]=mxUtils[_0x53bb[1134]](_0x39abx2[_0x53bb[526]]);this[_0x53bb[360]]=_0x39abx2[_0x53bb[526]][_0x53bb[360]];this[_0x53bb[190]]=_0x39abx2[_0x53bb[526]][_0x53bb[190]];return window[_0x53bb[1141]](mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[1130]]-=this[_0x53bb[1126]];this[_0x53bb[1129]]-=this[_0x53bb[1125]];if(this[_0x53bb[1131]]){var _0x39abx3=-_0x39abx2[_0x53bb[526]][_0x53bb[360]]-Math[_0x53bb[430]](this[_0x53bb[1126]]),_0x39abx5=-_0x39abx2[_0x53bb[526]][_0x53bb[190]]-Math[_0x53bb[430]](this[_0x53bb[1125]]);_0x39abx2[_0x53bb[1135]](_0x39abx3,_0x39abx5);_0x39abx2[_0x53bb[1136]]=this[_0x53bb[360]]-_0x39abx2[_0x53bb[526]][_0x53bb[360]];_0x39abx2[_0x53bb[1137]]=this[_0x53bb[190]]-_0x39abx2[_0x53bb[526]][_0x53bb[190]];_0x39abx2[_0x53bb[746]]( new mxEventObject(mxEvent.PAN))}else {_0x39abx2[_0x53bb[1135]](this[_0x53bb[1138]](),this[_0x53bb[1139]]())}}),this[_0x53bb[1140]])});this[_0x53bb[1142]]=function(){return active};this[_0x53bb[1138]]=function(){return Math[_0x53bb[488]](this[_0x53bb[1130]])};this[_0x53bb[1139]]=function(){return Math[_0x53bb[488]](this[_0x53bb[1129]])};this[_0x53bb[861]]=function(){this[_0x53bb[1128]]=_0x39abx2[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]];this[_0x53bb[1127]]=_0x39abx2[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]];this[_0x53bb[1124]]= !0};this[_0x53bb[1143]]=function(_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1124]]||this[_0x53bb[861]]();this[_0x53bb[360]]=_0x39abx2[_0x53bb[526]][_0x53bb[360]];this[_0x53bb[190]]=_0x39abx2[_0x53bb[526]][_0x53bb[190]];_0x39abxa=null!=_0x39abxa?_0x39abxa:0;var _0x39abx12=_0x39abx2[_0x53bb[526]];this[_0x53bb[1126]]=_0x39abx4+(null!=_0x39abx9?_0x39abx9:0)-_0x39abx12[_0x53bb[360]]-_0x39abx12[_0x53bb[159]];0>this[_0x53bb[1126]]&&Math[_0x53bb[425]](this[_0x53bb[1126]])<this[_0x53bb[467]]?this[_0x53bb[1126]]=this[_0x53bb[467]]+this[_0x53bb[1126]]:this[_0x53bb[1126]]=this[_0x53bb[1144]]?Math[_0x53bb[160]](this[_0x53bb[1126]],0):0;0==this[_0x53bb[1126]]&&(this[_0x53bb[1126]]=_0x39abx4-_0x39abx12[_0x53bb[360]],this[_0x53bb[1126]]=0<this[_0x53bb[1126]]&&this[_0x53bb[1126]]<this[_0x53bb[467]]?this[_0x53bb[1126]]-this[_0x53bb[467]]:this[_0x53bb[1144]]?Math[_0x53bb[243]](0,this[_0x53bb[1126]]):0);this[_0x53bb[1125]]=_0x39abx5+_0x39abxa-_0x39abx12[_0x53bb[190]]-_0x39abx12[_0x53bb[157]];0>this[_0x53bb[1125]]&&Math[_0x53bb[425]](this[_0x53bb[1125]])<this[_0x53bb[467]]?this[_0x53bb[1125]]=this[_0x53bb[467]]+this[_0x53bb[1125]]:this[_0x53bb[1125]]=this[_0x53bb[1144]]?Math[_0x53bb[160]](this[_0x53bb[1125]],0):0;0==this[_0x53bb[1125]]&&(this[_0x53bb[1125]]=_0x39abx5-_0x39abx12[_0x53bb[190]],this[_0x53bb[1125]]=0<this[_0x53bb[1125]]&&this[_0x53bb[1125]]<this[_0x53bb[467]]?this[_0x53bb[1125]]-this[_0x53bb[467]]:this[_0x53bb[1144]]?Math[_0x53bb[243]](0,this[_0x53bb[1125]]):0);0!=this[_0x53bb[1126]]||0!=this[_0x53bb[1125]]?(this[_0x53bb[1126]]*=this[_0x53bb[1145]],this[_0x53bb[1125]]*=this[_0x53bb[1145]],null==this[_0x53bb[1123]]&&(this[_0x53bb[1123]]=_0x39abx3())):null!=this[_0x53bb[1123]]&&(window[_0x53bb[1146]](this[_0x53bb[1123]]),this[_0x53bb[1123]]=null)};this[_0x53bb[1076]]=function(){if(this[_0x53bb[1124]]){if(this[_0x53bb[1124]]= !1,null!=this[_0x53bb[1123]]&&(window[_0x53bb[1146]](this[_0x53bb[1123]]),this[_0x53bb[1123]]=null),this[_0x53bb[1129]]=this[_0x53bb[1130]]=0,this[_0x53bb[1131]]){_0x39abx2[_0x53bb[1136]]=0,_0x39abx2[_0x53bb[1137]]=0,_0x39abx2[_0x53bb[746]]( new mxEventObject(mxEvent.PAN))}else {var _0x39abx3=_0x39abx2[_0x53bb[1136]],_0x39abx5=_0x39abx2[_0x53bb[1137]];if(0!=_0x39abx3||0!=_0x39abx5){_0x39abx2[_0x53bb[1135]](0,0),_0x39abx2[_0x53bb[441]][_0x53bb[1147]](this[_0x53bb[1128]]+_0x39abx3/_0x39abx2[_0x53bb[441]][_0x53bb[255]],this[_0x53bb[1127]]+_0x39abx5/_0x39abx2[_0x53bb[441]][_0x53bb[255]])}}}};this[_0x53bb[515]]=function(){_0x39abx2[_0x53bb[1148]](this[_0x53bb[1132]])}}mxPanningManager[_0x53bb[202]][_0x53bb[1145]]=1/6;mxPanningManager[_0x53bb[202]][_0x53bb[1140]]=10;mxPanningManager[_0x53bb[202]][_0x53bb[1144]]= !0;mxPanningManager[_0x53bb[202]][_0x53bb[467]]=0;function mxPopupMenu(_0x39abx2){this[_0x53bb[1033]]=_0x39abx2;null!=_0x39abx2&&this[_0x53bb[176]]()}mxPopupMenu[_0x53bb[202]]= new mxEventSource;mxPopupMenu[_0x53bb[202]][_0x53bb[196]]=mxPopupMenu;mxPopupMenu[_0x53bb[202]][_0x53bb[1149]]=mxClient[_0x53bb[88]]+_0x53bb[1150];mxPopupMenu[_0x53bb[202]][_0x53bb[931]]=10006;mxPopupMenu[_0x53bb[202]][_0x53bb[1033]]=null;mxPopupMenu[_0x53bb[202]][_0x53bb[1151]]= !1;mxPopupMenu[_0x53bb[202]][_0x53bb[984]]= !0;mxPopupMenu[_0x53bb[202]][_0x53bb[1152]]=0;mxPopupMenu[_0x53bb[202]][_0x53bb[1153]]= !1;mxPopupMenu[_0x53bb[202]][_0x53bb[1154]]= !1;mxPopupMenu[_0x53bb[202]][_0x53bb[1155]]= !0;mxPopupMenu[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[116]]=document[_0x53bb[55]](_0x53bb[116]);this[_0x53bb[116]][_0x53bb[926]]=_0x53bb[1156];this[_0x53bb[120]]=document[_0x53bb[55]](_0x53bb[120]);this[_0x53bb[116]][_0x53bb[62]](this[_0x53bb[120]]);this[_0x53bb[485]]=document[_0x53bb[55]](_0x53bb[485]);this[_0x53bb[485]][_0x53bb[926]]=_0x53bb[1156];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[497];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[931]]=this[_0x53bb[931]];this[_0x53bb[485]][_0x53bb[62]](this[_0x53bb[116]]);mxEvent[_0x53bb[1157]](this[_0x53bb[485]])};mxPopupMenu[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxPopupMenu[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxPopupMenu[_0x53bb[202]][_0x53bb[737]]=function(_0x39abx2){return _0x39abx2[_0x53bb[737]]()||this[_0x53bb[1151]]&&mxEvent[_0x53bb[1158]](_0x39abx2[_0x53bb[727]]())};mxPopupMenu[_0x53bb[202]][_0x53bb[1025]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx5=_0x39abx5||this;this[_0x53bb[1152]]++;_0x39abx5[_0x53bb[1159]]&&(_0x39abx5[_0x53bb[1160]]&&this[_0x53bb[1051]](_0x39abx5,!0),_0x39abx5[_0x53bb[1159]]= !1);_0x39abx5[_0x53bb[1160]]= !0;var _0x39abx12=document[_0x53bb[55]](_0x53bb[121]);_0x39abx12[_0x53bb[926]]=_0x53bb[1161];var _0x39abx13=document[_0x53bb[55]](_0x53bb[122]);_0x39abx13[_0x53bb[926]]=_0x53bb[1162];null!=_0x39abx3?(_0x39abx9=document[_0x53bb[55]](_0x53bb[466]),_0x39abx9[_0x53bb[390]]=_0x39abx3,_0x39abx13[_0x53bb[62]](_0x39abx9)):null!=_0x39abx9&&(_0x39abx3=document[_0x53bb[55]](_0x53bb[485]),_0x39abx3[_0x53bb[926]]=_0x39abx9,_0x39abx13[_0x53bb[62]](_0x39abx3));_0x39abx12[_0x53bb[62]](_0x39abx13);this[_0x53bb[1155]]&&(_0x39abx13=document[_0x53bb[55]](_0x53bb[122]),_0x39abx13[_0x53bb[926]]=_0x53bb[1161]+(null!=_0x39abxa&&!_0x39abxa?_0x53bb[1163]:_0x53bb[110]),mxUtils[_0x53bb[53]](_0x39abx13,_0x39abx2),_0x39abx13[_0x53bb[611]]=_0x53bb[361],_0x39abx12[_0x53bb[62]](_0x39abx13),_0x39abx2=document[_0x53bb[55]](_0x53bb[122]),_0x39abx2[_0x53bb[926]]=_0x53bb[1161]+(null!=_0x39abxa&&!_0x39abxa?_0x53bb[1163]:_0x53bb[110]),_0x39abx2[_0x53bb[124]][_0x53bb[1164]]=_0x53bb[1055],_0x39abx2[_0x53bb[124]][_0x53bb[1165]]=_0x53bb[699],_0x39abx12[_0x53bb[62]](_0x39abx2),null==_0x39abx5[_0x53bb[485]]&&this[_0x53bb[1166]](_0x39abx5));_0x39abx5[_0x53bb[120]][_0x53bb[62]](_0x39abx12);if(null==_0x39abxa||_0x39abxa){mxEvent[_0x53bb[759]](_0x39abx12,mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1167]]=_0x39abx12;_0x39abx5[_0x53bb[1168]]!=_0x39abx12&&_0x39abx5[_0x53bb[1168]]!=_0x39abx5&&(null!=_0x39abx5[_0x53bb[1168]]&&null!=_0x39abx5[_0x53bb[1168]][_0x53bb[485]][_0x53bb[265]]&&this[_0x53bb[1169]](_0x39abx5),null!=_0x39abx12[_0x53bb[485]]&&(this[_0x53bb[1170]](_0x39abx5,_0x39abx12),_0x39abx5[_0x53bb[1168]]=_0x39abx12));mxEvent[_0x53bb[722]](_0x39abx2)}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx5[_0x53bb[1168]]!=_0x39abx12&&_0x39abx5[_0x53bb[1168]]!=_0x39abx5&&(null!=_0x39abx5[_0x53bb[1168]]&&null!=_0x39abx5[_0x53bb[1168]][_0x53bb[485]][_0x53bb[265]]&&this[_0x53bb[1169]](_0x39abx5),this[_0x53bb[1153]]&&null!=_0x39abx12[_0x53bb[485]]&&(this[_0x53bb[1170]](_0x39abx5,_0x39abx12),_0x39abx5[_0x53bb[1168]]=_0x39abx12));_0x39abx12[_0x53bb[926]]=_0x53bb[1171]}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1167]]==_0x39abx12&&(_0x39abx5[_0x53bb[1168]]!=_0x39abx12&&this[_0x53bb[1032]](),null!=_0x39abx4&&_0x39abx4(_0x39abx2));this[_0x53bb[1167]]=null;mxEvent[_0x53bb[722]](_0x39abx2)})),mxEvent[_0x53bb[169]](_0x39abx12,_0x53bb[1035],mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx12[_0x53bb[926]]=_0x53bb[1161]}))};return _0x39abx12};mxPopupMenu[_0x53bb[202]][_0x53bb[1166]]=function(_0x39abx2){_0x39abx2[_0x53bb[116]]=document[_0x53bb[55]](_0x53bb[116]);_0x39abx2[_0x53bb[116]][_0x53bb[926]]=_0x53bb[1156];_0x39abx2[_0x53bb[120]]=document[_0x53bb[55]](_0x53bb[120]);_0x39abx2[_0x53bb[116]][_0x53bb[62]](_0x39abx2[_0x53bb[120]]);_0x39abx2[_0x53bb[485]]=document[_0x53bb[55]](_0x53bb[485]);_0x39abx2[_0x53bb[485]][_0x53bb[926]]=_0x53bb[1156];_0x39abx2[_0x53bb[485]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx2[_0x53bb[485]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[497];_0x39abx2[_0x53bb[485]][_0x53bb[124]][_0x53bb[931]]=this[_0x53bb[931]];_0x39abx2[_0x53bb[485]][_0x53bb[62]](_0x39abx2[_0x53bb[116]]);var _0x39abx3=document[_0x53bb[55]](_0x53bb[466]);_0x39abx3[_0x53bb[57]](_0x53bb[390],this[_0x53bb[1149]]);td=_0x39abx2[_0x53bb[285]][_0x53bb[287]][_0x53bb[287]];td[_0x53bb[62]](_0x39abx3)};mxPopupMenu[_0x53bb[202]][_0x53bb[1170]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx3[_0x53bb[485]]){_0x39abx3[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2[_0x53bb[485]][_0x53bb[358]]+_0x39abx3[_0x53bb[358]]+_0x39abx3[_0x53bb[359]]-1+_0x53bb[168];_0x39abx3[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx2[_0x53bb[485]][_0x53bb[362]]+_0x39abx3[_0x53bb[362]]+_0x53bb[168];document[_0x53bb[112]][_0x53bb[62]](_0x39abx3[_0x53bb[485]]);var _0x39abx4=parseInt(_0x39abx3[_0x53bb[485]][_0x53bb[358]]),_0x39abx5=parseInt(_0x39abx3[_0x53bb[485]][_0x53bb[359]]),_0x39abx9=document[_0x53bb[112]],_0x39abxa=document[_0x53bb[158]];if(_0x39abx4+_0x39abx5>(_0x39abx9[_0x53bb[360]]||_0x39abxa[_0x53bb[360]])+(_0x39abx9[_0x53bb[159]]||_0x39abxa[_0x53bb[159]])){_0x39abx3[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2[_0x53bb[485]][_0x53bb[358]]-_0x39abx5+(mxClient[_0x53bb[80]]?6:-6)+_0x53bb[168]};mxUtils[_0x53bb[933]](_0x39abx3[_0x53bb[485]])}};mxPopupMenu[_0x53bb[202]][_0x53bb[1051]]=function(_0x39abx2,_0x39abx3){_0x39abx2=_0x39abx2||this;if(this[_0x53bb[1154]]&& !_0x39abx3){_0x39abx2[_0x53bb[1159]]= !0}else {if(null!=_0x39abx2[_0x53bb[120]]){_0x39abx2[_0x53bb[1159]]= !1;var _0x39abx4=document[_0x53bb[55]](_0x53bb[121]),_0x39abx5=document[_0x53bb[55]](_0x53bb[122]);_0x39abx5[_0x53bb[926]]=_0x53bb[1162];_0x39abx5[_0x53bb[124]][_0x53bb[549]]=_0x53bb[1172];_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx5=document[_0x53bb[55]](_0x53bb[122]);_0x39abx5[_0x53bb[124]][_0x53bb[549]]=_0x53bb[1172];_0x39abx5[_0x53bb[57]](_0x53bb[1173],_0x53bb[1174]);var _0x39abx9=document[_0x53bb[55]](_0x53bb[1054]);_0x39abx9[_0x53bb[57]](_0x53bb[803],_0x53bb[500]);_0x39abx5[_0x53bb[62]](_0x39abx9);_0x39abx4[_0x53bb[62]](_0x39abx5);_0x39abx2[_0x53bb[120]][_0x53bb[62]](_0x39abx4)}}};mxPopupMenu[_0x53bb[202]][_0x53bb[152]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=this[_0x53bb[485]]&&null!=this[_0x53bb[120]]&&null!=this[_0x53bb[1033]]){this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168];for(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168];null!=this[_0x53bb[120]][_0x53bb[285]];){mxEvent[_0x53bb[762]](this[_0x53bb[120]][_0x53bb[285]]),this[_0x53bb[120]][_0x53bb[266]](this[_0x53bb[120]][_0x53bb[285]])};this[_0x53bb[1152]]=0;this[_0x53bb[1033]](this,_0x39abx4,_0x39abx5);0<this[_0x53bb[1152]]&&(this[_0x53bb[1175]](),this[_0x53bb[746]]( new mxEventObject(mxEvent.SHOW)))}};mxPopupMenu[_0x53bb[202]][_0x53bb[1031]]=function(){return null!=this[_0x53bb[485]]&&this[_0x53bb[485]][_0x53bb[265]]==document[_0x53bb[112]]};mxPopupMenu[_0x53bb[202]][_0x53bb[1175]]=function(){9<=document[_0x53bb[5]]&&(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[347]]=_0x53bb[130]);document[_0x53bb[112]][_0x53bb[62]](this[_0x53bb[485]]);mxUtils[_0x53bb[933]](this[_0x53bb[485]])};mxPopupMenu[_0x53bb[202]][_0x53bb[1032]]=function(){null!=this[_0x53bb[485]]&&(null!=this[_0x53bb[485]][_0x53bb[265]]&&this[_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[485]]),this[_0x53bb[1169]](this),this[_0x53bb[1160]]= !1)};mxPopupMenu[_0x53bb[202]][_0x53bb[1169]]=function(_0x39abx2){null!=_0x39abx2[_0x53bb[1168]]&&(this[_0x53bb[1169]](_0x39abx2[_0x53bb[1168]]),null!=_0x39abx2[_0x53bb[1168]][_0x53bb[485]][_0x53bb[265]]&&_0x39abx2[_0x53bb[1168]][_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](_0x39abx2[_0x53bb[1168]][_0x53bb[485]]),_0x39abx2[_0x53bb[1168]]=null)};mxPopupMenu[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[485]]&&(mxEvent[_0x53bb[762]](this[_0x53bb[485]]),null!=this[_0x53bb[485]][_0x53bb[265]]&&this[_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[485]]),this[_0x53bb[485]]=null)};function mxAutoSaveManager(_0x39abx2){this[_0x53bb[1176]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){this[_0x53bb[994]]()&&this[_0x53bb[1177]](_0x39abx4[_0x53bb[720]](_0x53bb[1061])[_0x53bb[1065]])});this[_0x53bb[1178]](_0x39abx2)}mxAutoSaveManager[_0x53bb[202]]= new mxEventSource;mxAutoSaveManager[_0x53bb[202]][_0x53bb[196]]=mxAutoSaveManager;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1179]]=null;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1180]]=10;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1181]]=2;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1182]]=5;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1183]]=0;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1184]]=0;mxAutoSaveManager[_0x53bb[202]][_0x53bb[984]]= !0;mxAutoSaveManager[_0x53bb[202]][_0x53bb[1176]]=null;mxAutoSaveManager[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxAutoSaveManager[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxAutoSaveManager[_0x53bb[202]][_0x53bb[1178]]=function(_0x39abx2){null!=this[_0x53bb[1179]]&&this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[1176]]);this[_0x53bb[1179]]=_0x39abx2;null!=this[_0x53bb[1179]]&&this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[1176]])};mxAutoSaveManager[_0x53bb[202]][_0x53bb[815]]=function(){};mxAutoSaveManager[_0x53bb[202]][_0x53bb[1177]]=function(_0x39abx2){_0x39abx2=(( new Date)[_0x53bb[178]]()-this[_0x53bb[1184]])/1E3;_0x39abx2>this[_0x53bb[1180]]||this[_0x53bb[1183]]>=this[_0x53bb[1182]]&&_0x39abx2>this[_0x53bb[1181]]?(this[_0x53bb[815]](),this[_0x53bb[862]]()):this[_0x53bb[1183]]++};mxAutoSaveManager[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[1184]]=( new Date)[_0x53bb[178]]();this[_0x53bb[1183]]=0};mxAutoSaveManager[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1178]](null)};function mxAnimation(_0x39abx2){this[_0x53bb[1140]]=null!=_0x39abx2?_0x39abx2:20}mxAnimation[_0x53bb[202]]= new mxEventSource;mxAnimation[_0x53bb[202]][_0x53bb[196]]=mxAnimation;mxAnimation[_0x53bb[202]][_0x53bb[1140]]=null;mxAnimation[_0x53bb[202]][_0x53bb[1123]]=null;mxAnimation[_0x53bb[202]][_0x53bb[1185]]=function(){null==this[_0x53bb[1123]]&&(this[_0x53bb[1123]]=window[_0x53bb[1141]](mxUtils[_0x53bb[885]](this,this[_0x53bb[1186]]),this[_0x53bb[1140]]))};mxAnimation[_0x53bb[202]][_0x53bb[1186]]=function(){this[_0x53bb[746]]( new mxEventObject(mxEvent.EXECUTE))};mxAnimation[_0x53bb[202]][_0x53bb[1187]]=function(){null!=this[_0x53bb[1123]]&&(window[_0x53bb[1146]](this[_0x53bb[1123]]),this[_0x53bb[1123]]=null,this[_0x53bb[746]]( new mxEventObject(mxEvent.DONE)))};function mxMorphing(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxAnimation[_0x53bb[239]](this,_0x39abx5);this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[1188]]=null!=_0x39abx3?_0x39abx3:6;this[_0x53bb[1189]]=null!=_0x39abx4?_0x39abx4:1.5}mxMorphing[_0x53bb[202]]= new mxAnimation;mxMorphing[_0x53bb[202]][_0x53bb[196]]=mxMorphing;mxMorphing[_0x53bb[202]][_0x53bb[1179]]=null;mxMorphing[_0x53bb[202]][_0x53bb[1188]]=null;mxMorphing[_0x53bb[202]][_0x53bb[1190]]=0;mxMorphing[_0x53bb[202]][_0x53bb[1189]]=null;mxMorphing[_0x53bb[202]][_0x53bb[895]]=null;mxMorphing[_0x53bb[202]][_0x53bb[1186]]=function(){var _0x39abx2= new mxCellStatePreview(this[_0x53bb[1179]]);if(null!=this[_0x53bb[895]]){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[895]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[1191]](cells[_0x39abx3],_0x39abx2,!1)}}else {this[_0x53bb[1191]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]](),_0x39abx2,!0)};this[_0x53bb[539]](_0x39abx2);(_0x39abx2[_0x53bb[1107]]()||this[_0x53bb[1190]]++ >=this[_0x53bb[1188]])&&this[_0x53bb[1187]]()};mxMorphing[_0x53bb[202]][_0x53bb[539]]=function(_0x39abx2){_0x39abx2[_0x53bb[539]]()};mxMorphing[_0x53bb[202]][_0x53bb[1191]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2),_0x39abx9=null;if(null!=_0x39abx5&&(_0x39abx9=this[_0x53bb[1192]](_0x39abx5),this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2)&&(0!=_0x39abx9[_0x53bb[235]]||0!=_0x39abx9[_0x53bb[236]]))){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[512]](),_0x39abx12=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[518]]();_0x39abx9[_0x53bb[235]]+=_0x39abxa[_0x53bb[235]]*_0x39abx12;_0x39abx9[_0x53bb[236]]+=_0x39abxa[_0x53bb[236]]*_0x39abx12;_0x39abx3[_0x53bb[1194]](_0x39abx5,-_0x39abx9[_0x53bb[235]]/this[_0x53bb[1189]],-_0x39abx9[_0x53bb[236]]/this[_0x53bb[1189]])};if(_0x39abx4&&!this[_0x53bb[1195]](_0x39abx5,_0x39abx9)){_0x39abx5=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[262]](_0x39abx2);for(_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){this[_0x53bb[1191]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx3,_0x39abx4)}}};mxMorphing[_0x53bb[202]][_0x53bb[1195]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx3&&(0!=_0x39abx3[_0x53bb[235]]||0!=_0x39abx3[_0x53bb[236]])};mxMorphing[_0x53bb[202]][_0x53bb[1192]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1196]](_0x39abx2[_0x53bb[246]]),_0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[512]](),_0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[518]]();_0x39abx2= new mxPoint(_0x39abx2[_0x53bb[235]]/_0x39abx5-_0x39abx4[_0x53bb[235]],_0x39abx2[_0x53bb[236]]/_0x39abx5-_0x39abx4[_0x53bb[236]]);return new mxPoint((_0x39abx3[_0x53bb[235]]-_0x39abx2[_0x53bb[235]])*_0x39abx5,(_0x39abx3[_0x53bb[236]]-_0x39abx2[_0x53bb[236]])*_0x39abx5)};mxMorphing[_0x53bb[202]][_0x53bb[1196]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[1196]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](_0x39abx2)),_0x39abx2=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx2),null!=_0x39abx2&&(_0x39abx3[_0x53bb[235]]+=_0x39abx2[_0x53bb[235]],_0x39abx3[_0x53bb[236]]+=_0x39abx2[_0x53bb[236]]));null==_0x39abx3&&(_0x39abx3=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[512]](),_0x39abx3= new mxPoint(-_0x39abx3[_0x53bb[235]],-_0x39abx3[_0x53bb[236]]));return _0x39abx3};function mxImageBundle(_0x39abx2){this[_0x53bb[1199]]=[];this[_0x53bb[1200]]=null!=_0x39abx2?_0x39abx2:!1}mxImageBundle[_0x53bb[202]][_0x53bb[1199]]=null;mxImageBundle[_0x53bb[202]][_0x53bb[1199]]=null;mxImageBundle[_0x53bb[202]][_0x53bb[1201]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[1199]][_0x39abx2]={value:_0x39abx3,fallback:_0x39abx4}};mxImageBundle[_0x53bb[202]][_0x53bb[1202]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(_0x39abx2=this[_0x53bb[1199]][_0x39abx2],null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[1200]]?_0x39abx2[_0x53bb[1203]]:_0x39abx2[_0x53bb[131]]));return _0x39abx3};function mxImageExport(){}mxImageExport[_0x53bb[202]][_0x53bb[1204]]= !1;mxImageExport[_0x53bb[202]][_0x53bb[1205]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx2&&(this[_0x53bb[1207]](_0x39abx2,_0x39abx3,this[_0x53bb[1206]]),this[_0x53bb[1204]]&&this[_0x53bb[1207]](_0x39abx2,_0x39abx3,this[_0x53bb[1208]]))};mxImageExport[_0x53bb[202]][_0x53bb[1207]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2){_0x39abx4(_0x39abx2,_0x39abx3);for(var _0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx9=_0x39abx5[_0x53bb[251]][_0x53bb[262]](_0x39abx2[_0x53bb[246]]),_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){var _0x39abx12=_0x39abx5[_0x53bb[441]][_0x53bb[248]](_0x39abx5[_0x53bb[251]][_0x53bb[263]](_0x39abx2[_0x53bb[246]],_0x39abxa));this[_0x53bb[1207]](_0x39abx12,_0x39abx3,_0x39abx4)}}};mxImageExport[_0x53bb[202]][_0x53bb[1206]]=function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[253]] instanceof mxShape&&(_0x39abx3[_0x53bb[815]](),_0x39abx2[_0x53bb[253]][_0x53bb[1209]](_0x39abx3),_0x39abx3[_0x53bb[1210]]());null!=_0x39abx2[_0x53bb[963]]&&(_0x39abx3[_0x53bb[815]](),_0x39abx2[_0x53bb[963]][_0x53bb[1209]](_0x39abx3),_0x39abx3[_0x53bb[1210]]())};mxImageExport[_0x53bb[202]][_0x53bb[1208]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx2[_0x53bb[1211]]&&_0x39abx2[_0x53bb[1211]][_0x53bb[209]](function(_0x39abx2,_0x39abx5){_0x39abx5 instanceof mxShape&&_0x39abx5[_0x53bb[1209]](_0x39abx3)})};function mxAbstractCanvas2D(){this[_0x53bb[1212]]=this[_0x53bb[1213]]();this[_0x53bb[862]]()}mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[724]]=null;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1214]]=null;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1215]]=null;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1216]]= !0;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1217]]=0;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1218]]=0;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1219]]=_0x53bb[1220];mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1221]]=_0x53bb[1222];mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1223]]=_0x53bb[1224];mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1225]]=_0x53bb[1226];mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1227]]=_0x53bb[1228];mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1229]]= !1;mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1213]]=function(){return new mxUrlConverter};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[724]]=this[_0x53bb[1230]]();this[_0x53bb[1214]]=[]};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1230]]=function(){return {dx:0,dy:0,scale:1,alpha:1,fillColor:null,fillAlpha:1,gradientColor:null,gradientAlpha:1,gradientDirection:null,strokeColor:null,strokeWidth:1,dashed:!1,dashPattern:_0x53bb[1231],lineCap:_0x53bb[1232],lineJoin:_0x53bb[1233],miterLimit:10,fontColor:_0x53bb[1234],fontBackgroundColor:null,fontBorderColor:null,fontSize:mxConstants[_0x53bb[483]],fontFamily:mxConstants[_0x53bb[484]],fontStyle:0,shadow:!1,shadowColor:mxConstants[_0x53bb[1235]],shadowAlpha:mxConstants[_0x53bb[1236]],shadowDx:mxConstants[_0x53bb[1237]],shadowDy:mxConstants[_0x53bb[1238]],rotation:0,rotationCx:0,rotationCy:0}};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1239]]=function(_0x39abx2){return Math[_0x53bb[488]](parseFloat(_0x39abx2))};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1240]]=function(){if(null!=this[_0x53bb[1215]]&&(this[_0x53bb[1215]][_0x53bb[207]](arguments[0]),2<arguments[_0x53bb[67]])){for(var _0x39abx2=this[_0x53bb[724]],_0x39abx3=2;_0x39abx3<arguments[_0x53bb[67]];_0x39abx3+=2){this[_0x53bb[1217]]=arguments[_0x39abx3-1],this[_0x53bb[1218]]=arguments[_0x39abx3],this[_0x53bb[1215]][_0x53bb[207]](this[_0x53bb[1239]]((this[_0x53bb[1217]]+_0x39abx2[_0x53bb[1126]])*_0x39abx2[_0x53bb[255]])),this[_0x53bb[1215]][_0x53bb[207]](this[_0x53bb[1239]]((this[_0x53bb[1218]]+_0x39abx2[_0x53bb[1125]])*_0x39abx2[_0x53bb[255]]))}}};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1241]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx4*=Math[_0x53bb[424]]/180;return mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx2,_0x39abx3),Math[_0x53bb[426]](_0x39abx4),Math[_0x53bb[427]](_0x39abx4), new mxPoint(_0x39abx5,_0x39abx9))};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[815]]=function(){this[_0x53bb[1214]][_0x53bb[207]](this[_0x53bb[724]]);this[_0x53bb[724]]=mxUtils[_0x53bb[238]](this[_0x53bb[724]])};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1210]]=function(){this[_0x53bb[724]]=this[_0x53bb[1214]][_0x53bb[1242]]()};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[255]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[255]]*=_0x39abx2;this[_0x53bb[724]][_0x53bb[610]]*=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[513]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[724]][_0x53bb[1126]]+=_0x39abx2;this[_0x53bb[724]][_0x53bb[1125]]+=_0x39abx3};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1243]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[1244]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1245]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[604]]=_0x39abx2;this[_0x53bb[724]][_0x53bb[606]]=null};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1246]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){_0x39abx4=this[_0x53bb[724]];_0x39abx4[_0x53bb[604]]=_0x39abx2;_0x39abx4[_0x53bb[1247]]=null!=_0x39abx13?_0x39abx13:1;_0x39abx4[_0x53bb[606]]=_0x39abx3;_0x39abx4[_0x53bb[1248]]=null!=_0x39abx14?_0x39abx14:1;_0x39abx4[_0x53bb[607]]=_0x39abx12};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1249]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[608]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1250]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[610]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1251]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[648]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1252]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[649]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1253]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[1254]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1255]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[1256]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1257]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[1258]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1259]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[665]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1260]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[1261]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1262]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[1263]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1264]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[487]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1265]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[486]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1266]]=function(_0x39abx2){null==_0x39abx2&&(_0x39abx2=0);this[_0x53bb[724]][_0x53bb[666]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1267]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[639]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1268]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);this[_0x53bb[724]][_0x53bb[1269]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1270]]=function(_0x39abx2){this[_0x53bb[724]][_0x53bb[1271]]=_0x39abx2};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1272]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[724]][_0x53bb[1273]]=_0x39abx2;this[_0x53bb[724]][_0x53bb[1274]]=_0x39abx3};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1275]]=function(){this[_0x53bb[1218]]=this[_0x53bb[1217]]=0;this[_0x53bb[1215]]=[]};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1276]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1240]](this[_0x53bb[1219]],_0x39abx2,_0x39abx3)};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1277]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1240]](this[_0x53bb[1221]],_0x39abx2,_0x39abx3)};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1278]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[1240]](this[_0x53bb[1223]],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1279]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1240]](this[_0x53bb[1225]],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa)};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1280]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){_0x39abx2=mxUtils[_0x53bb[1281]](this[_0x53bb[1217]],this[_0x53bb[1218]],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12);for(_0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3+=6){this[_0x53bb[1279]](_0x39abx2[_0x39abx3],_0x39abx2[_0x39abx3+1],_0x39abx2[_0x39abx3+2],_0x39abx2[_0x39abx3+3],_0x39abx2[_0x39abx3+4],_0x39abx2[_0x39abx3+5])}};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[268]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1240]](this[_0x53bb[1227]])};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1282]]=function(){};function mxXmlCanvas2D(_0x39abx2){mxAbstractCanvas2D[_0x53bb[239]](this);this[_0x53bb[813]]=_0x39abx2;this[_0x53bb[1283]]()}mxUtils[_0x53bb[1284]](mxXmlCanvas2D,mxAbstractCanvas2D);mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1285]]= !0;mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1286]]= !0;mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1283]]=function(){var _0x39abx2;_0x39abx2=this[_0x53bb[55]](_0x53bb[1287]);_0x39abx2[_0x53bb[57]](_0x53bb[1288],mxConstants.DEFAULT_FONTFAMILY);this[_0x53bb[813]][_0x53bb[62]](_0x39abx2);_0x39abx2=this[_0x53bb[55]](_0x53bb[1289]);_0x39abx2[_0x53bb[57]](_0x53bb[803],mxConstants.DEFAULT_FONTSIZE);this[_0x53bb[813]][_0x53bb[62]](_0x39abx2);_0x39abx2=this[_0x53bb[55]](_0x53bb[1290]);_0x39abx2[_0x53bb[57]](_0x53bb[352],mxConstants.SHADOWCOLOR);this[_0x53bb[813]][_0x53bb[62]](_0x39abx2);_0x39abx2=this[_0x53bb[55]](_0x53bb[1291]);_0x39abx2[_0x53bb[57]](_0x53bb[1244],mxConstants.SHADOW_OPACITY);this[_0x53bb[813]][_0x53bb[62]](_0x39abx2);_0x39abx2=this[_0x53bb[55]](_0x53bb[1292]);_0x39abx2[_0x53bb[57]](_0x53bb[1126],mxConstants.SHADOW_OFFSET_X);_0x39abx2[_0x53bb[57]](_0x53bb[1125],mxConstants.SHADOW_OFFSET_Y);this[_0x53bb[813]][_0x53bb[62]](_0x39abx2)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1239]]=function(_0x39abx2){return parseFloat(parseFloat(_0x39abx2)[_0x53bb[1293]](2))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[55]]=function(_0x39abx2){return this[_0x53bb[813]][_0x53bb[295]][_0x53bb[55]](_0x39abx2)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[815]]=function(){this[_0x53bb[1286]]&&mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[815]][_0x53bb[183]](this,arguments);this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[815]))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1210]]=function(){this[_0x53bb[1286]]&&mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1210]][_0x53bb[183]](this,arguments);this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[1210]))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[255]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[255]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1243]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[255]);_0x39abx3[_0x53bb[57]](_0x53bb[255],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[513]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[55]](_0x53bb[513]);_0x39abx4[_0x53bb[57]](_0x53bb[1126],this[_0x53bb[1239]](_0x39abx2));_0x39abx4[_0x53bb[57]](_0x53bb[1125],this[_0x53bb[1239]](_0x39abx3));this[_0x53bb[813]][_0x53bb[62]](_0x39abx4)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1294]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=this[_0x53bb[55]](_0x53bb[1294]);if(0!=_0x39abx2||_0x39abx3||_0x39abx4){_0x39abxa[_0x53bb[57]](_0x53bb[1295],this[_0x53bb[1239]](_0x39abx2)),_0x39abxa[_0x53bb[57]](_0x53bb[623],_0x39abx3?_0x53bb[500]:_0x53bb[468]),_0x39abxa[_0x53bb[57]](_0x53bb[624],_0x39abx4?_0x53bb[500]:_0x53bb[468]),_0x39abxa[_0x53bb[57]](_0x53bb[1296],this[_0x53bb[1239]](_0x39abx5)),_0x39abxa[_0x53bb[57]](_0x53bb[1297],this[_0x53bb[1239]](_0x39abx9)),this[_0x53bb[813]][_0x53bb[62]](_0x39abxa)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1243]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1244]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1243]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1244]);_0x39abx3[_0x53bb[57]](_0x53bb[1244],this[_0x53bb[1239]](_0x39abx2));this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1245]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[604]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1245]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1298]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1246]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){if(null!=_0x39abx2&&null!=_0x39abx3){mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1246]][_0x53bb[183]](this,arguments);var _0x39abx15=this[_0x53bb[55]](_0x53bb[1299]);_0x39abx15[_0x53bb[57]](_0x53bb[1300],_0x39abx2);_0x39abx15[_0x53bb[57]](_0x53bb[1301],_0x39abx3);_0x39abx15[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx4));_0x39abx15[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx5));_0x39abx15[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx9));_0x39abx15[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abxa));null!=_0x39abx12&&_0x39abx15[_0x53bb[57]](_0x53bb[663],_0x39abx12);null!=_0x39abx13&&_0x39abx15[_0x53bb[57]](_0x53bb[1304],_0x39abx13);null!=_0x39abx14&&_0x39abx15[_0x53bb[57]](_0x53bb[1305],_0x39abx14);this[_0x53bb[813]][_0x53bb[62]](_0x39abx15)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1249]]=function(_0x39abx2){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[608]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1249]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1306]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1250]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[610]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1250]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1307]);_0x39abx3[_0x53bb[57]](_0x53bb[117],this[_0x53bb[1239]](_0x39abx2));this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1251]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[648]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1251]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[648]);_0x39abx3[_0x53bb[57]](_0x53bb[648],_0x39abx2?_0x53bb[500]:_0x53bb[468]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1252]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[649]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1252]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1308]);_0x39abx3[_0x53bb[57]](_0x53bb[1309],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1253]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1254]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1253]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1310]);_0x39abx3[_0x53bb[57]](_0x53bb[1311],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1255]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1256]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1255]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1312]);_0x39abx3[_0x53bb[57]](_0x53bb[234],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1257]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1258]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1257]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1313]);_0x39abx3[_0x53bb[57]](_0x53bb[1314],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1259]]=function(_0x39abx2){if(this[_0x53bb[1285]]){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[665]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1259]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1315]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1260]]=function(_0x39abx2){if(this[_0x53bb[1285]]){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1261]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1260]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1316]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1262]]=function(_0x39abx2){if(this[_0x53bb[1285]]){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1263]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1262]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1317]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1264]]=function(_0x39abx2){if(this[_0x53bb[1285]]){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[487]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1264]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1289]);_0x39abx3[_0x53bb[57]](_0x53bb[803],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1265]]=function(_0x39abx2){if(this[_0x53bb[1285]]){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[486]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1265]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1287]);_0x39abx3[_0x53bb[57]](_0x53bb[1288],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1266]]=function(_0x39abx2){if(this[_0x53bb[1285]]){null==_0x39abx2&&(_0x39abx2=0);if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[666]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1266]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1318]);_0x39abx3[_0x53bb[57]](_0x53bb[124],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1267]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[639]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1267]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[639]);_0x39abx3[_0x53bb[57]](_0x53bb[984],_0x39abx2?_0x53bb[500]:_0x53bb[468]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1268]]=function(_0x39abx2){if(this[_0x53bb[1286]]){_0x39abx2==mxConstants[_0x53bb[217]]&&(_0x39abx2=null);if(this[_0x53bb[724]][_0x53bb[1269]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1268]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1290]);_0x39abx3[_0x53bb[57]](_0x53bb[352],null!=_0x39abx2?_0x39abx2:mxConstants[_0x53bb[217]]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1270]]=function(_0x39abx2){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1271]]==_0x39abx2){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1270]][_0x53bb[183]](this,arguments)};var _0x39abx3=this[_0x53bb[55]](_0x53bb[1291]);_0x39abx3[_0x53bb[57]](_0x53bb[1244],_0x39abx2);this[_0x53bb[813]][_0x53bb[62]](_0x39abx3)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1272]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1286]]){if(this[_0x53bb[724]][_0x53bb[1273]]==_0x39abx2&&this[_0x53bb[724]][_0x53bb[1274]]==_0x39abx3){return};mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1272]][_0x53bb[183]](this,arguments)};var _0x39abx4=this[_0x53bb[55]](_0x53bb[1292]);_0x39abx4[_0x53bb[57]](_0x53bb[1126],_0x39abx2);_0x39abx4[_0x53bb[57]](_0x53bb[1125],_0x39abx3);this[_0x53bb[813]][_0x53bb[62]](_0x39abx4)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1319]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[55]](_0x53bb[1319]);_0x39abx9[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx9[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));_0x39abx9[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx4));_0x39abx9[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abx5));this[_0x53bb[813]][_0x53bb[62]](_0x39abx9)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1320]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=this[_0x53bb[55]](_0x53bb[1320]);_0x39abx12[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx12[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));_0x39abx12[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx4));_0x39abx12[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abx5));_0x39abx12[_0x53bb[57]](_0x53bb[1126],this[_0x53bb[1239]](_0x39abx9));_0x39abx12[_0x53bb[57]](_0x53bb[1125],this[_0x53bb[1239]](_0x39abxa));this[_0x53bb[813]][_0x53bb[62]](_0x39abx12)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[680]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[55]](_0x53bb[680]);_0x39abx9[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx9[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));_0x39abx9[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx4));_0x39abx9[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abx5));this[_0x53bb[813]][_0x53bb[62]](_0x39abx9)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[618]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){_0x39abx9=this[_0x53bb[1212]][_0x53bb[1321]](_0x39abx9);var _0x39abx14=this[_0x53bb[55]](_0x53bb[618]);_0x39abx14[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx14[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));_0x39abx14[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx4));_0x39abx14[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abx5));_0x39abx14[_0x53bb[57]](_0x53bb[390],_0x39abx9);_0x39abx14[_0x53bb[57]](_0x53bb[1322],_0x39abxa?_0x53bb[500]:_0x53bb[468]);_0x39abx14[_0x53bb[57]](_0x53bb[623],_0x39abx12?_0x53bb[500]:_0x53bb[468]);_0x39abx14[_0x53bb[57]](_0x53bb[624],_0x39abx13?_0x53bb[500]:_0x53bb[468]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx14)};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1275]]=function(){this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[1275]));this[_0x53bb[1218]]=this[_0x53bb[1217]]=0};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1276]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[55]](_0x53bb[582]);_0x39abx4[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx4[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));this[_0x53bb[813]][_0x53bb[62]](_0x39abx4);this[_0x53bb[1217]]=_0x39abx2;this[_0x53bb[1218]]=_0x39abx3};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1277]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[55]](_0x53bb[683]);_0x39abx4[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx4[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));this[_0x53bb[813]][_0x53bb[62]](_0x39abx4);this[_0x53bb[1217]]=_0x39abx2;this[_0x53bb[1218]]=_0x39abx3};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1278]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[55]](_0x53bb[1323]);_0x39abx9[_0x53bb[57]](_0x53bb[1324],this[_0x53bb[1239]](_0x39abx2));_0x39abx9[_0x53bb[57]](_0x53bb[1325],this[_0x53bb[1239]](_0x39abx3));_0x39abx9[_0x53bb[57]](_0x53bb[1326],this[_0x53bb[1239]](_0x39abx4));_0x39abx9[_0x53bb[57]](_0x53bb[1327],this[_0x53bb[1239]](_0x39abx5));this[_0x53bb[813]][_0x53bb[62]](_0x39abx9);this[_0x53bb[1217]]=_0x39abx4;this[_0x53bb[1218]]=_0x39abx5};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1279]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=this[_0x53bb[55]](_0x53bb[1328]);_0x39abx12[_0x53bb[57]](_0x53bb[1324],this[_0x53bb[1239]](_0x39abx2));_0x39abx12[_0x53bb[57]](_0x53bb[1325],this[_0x53bb[1239]](_0x39abx3));_0x39abx12[_0x53bb[57]](_0x53bb[1326],this[_0x53bb[1239]](_0x39abx4));_0x39abx12[_0x53bb[57]](_0x53bb[1327],this[_0x53bb[1239]](_0x39abx5));_0x39abx12[_0x53bb[57]](_0x53bb[1329],this[_0x53bb[1239]](_0x39abx9));_0x39abx12[_0x53bb[57]](_0x53bb[1330],this[_0x53bb[1239]](_0x39abxa));this[_0x53bb[813]][_0x53bb[62]](_0x39abx12);this[_0x53bb[1217]]=_0x39abx9;this[_0x53bb[1218]]=_0x39abxa};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[268]]=function(){this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[268]))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[963]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){if(this[_0x53bb[1285]]&&null!=_0x39abx9){mxUtils[_0x53bb[1331]](_0x39abx9)&&(_0x39abx9=mxUtils[_0x53bb[532]](_0x39abx9));var _0x39abx18=this[_0x53bb[55]](_0x53bb[963]);_0x39abx18[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2));_0x39abx18[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3));_0x39abx18[_0x53bb[57]](_0x53bb[1302],this[_0x53bb[1239]](_0x39abx4));_0x39abx18[_0x53bb[57]](_0x53bb[1303],this[_0x53bb[1239]](_0x39abx5));_0x39abx18[_0x53bb[57]](_0x53bb[1332],_0x39abx9);null!=_0x39abxa&&_0x39abx18[_0x53bb[57]](_0x53bb[611],_0x39abxa);null!=_0x39abx12&&_0x39abx18[_0x53bb[57]](_0x53bb[552],_0x39abx12);_0x39abx18[_0x53bb[57]](_0x53bb[1333],_0x39abx13?_0x53bb[500]:_0x53bb[468]);null==_0x39abx14&&(_0x39abx14=_0x53bb[110]);_0x39abx18[_0x53bb[57]](_0x53bb[1239],_0x39abx14);null!=_0x39abx15&&_0x39abx18[_0x53bb[57]](_0x53bb[1334],_0x39abx15?_0x53bb[500]:_0x53bb[468]);null!=_0x39abx16&&_0x39abx18[_0x53bb[57]](_0x53bb[1335],_0x39abx16?_0x53bb[500]:_0x53bb[468]);null!=_0x39abx17&&_0x39abx18[_0x53bb[57]](_0x53bb[603],_0x39abx17);this[_0x53bb[813]][_0x53bb[62]](_0x39abx18)}};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1336]]=function(){this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[1336]))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1334]]=function(){this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[1334]))};mxXmlCanvas2D[_0x53bb[202]][_0x53bb[1337]]=function(){this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[55]](_0x53bb[1338]))};function mxSvgCanvas2D(_0x39abx2,_0x39abx3){mxAbstractCanvas2D[_0x53bb[239]](this);this[_0x53bb[813]]=_0x39abx2;this[_0x53bb[1339]]=[];this[_0x53bb[1340]]=null;this[_0x53bb[1341]]=null!=_0x39abx3?_0x39abx3:!1;var _0x39abx4=null;if(_0x39abx2[_0x53bb[295]]!=document){for(_0x39abx4=_0x39abx2;null!=_0x39abx4&&_0x53bb[571]!=_0x39abx4[_0x53bb[301]];){_0x39abx4=_0x39abx4[_0x53bb[265]]}};null!=_0x39abx4&&(0<_0x39abx4[_0x53bb[64]](_0x53bb[1340])[_0x53bb[67]]&&(this[_0x53bb[1340]]=_0x39abx4[_0x53bb[64]](_0x53bb[1340])[0]),null==this[_0x53bb[1340]]&&(this[_0x53bb[1340]]=this[_0x53bb[55]](_0x53bb[1340]),null!=_0x39abx4[_0x53bb[285]]?_0x39abx4[_0x53bb[950]](this[_0x53bb[1340]],_0x39abx4[_0x53bb[285]]):_0x39abx4[_0x53bb[62]](this[_0x53bb[1340]])),this[_0x53bb[1341]]&&this[_0x53bb[1340]][_0x53bb[62]](this[_0x53bb[1342]]()))}mxUtils[_0x53bb[1284]](mxSvgCanvas2D,mxAbstractCanvas2D);mxSvgCanvas2D[_0x53bb[202]][_0x53bb[252]]=null;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1343]]= !0;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1285]]= !0;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1344]]= !0;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1345]]=0;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1346]]=0;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1347]]= !1;mxSvgCanvas2D[_0x53bb[202]][_0x53bb[862]]=function(){mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[862]][_0x53bb[183]](this,arguments);this[_0x53bb[1339]]=[]};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1342]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[55]](_0x53bb[124]);_0x39abx2[_0x53bb[57]](_0x53bb[60],_0x53bb[61]);mxUtils[_0x53bb[53]](_0x39abx2,_0x53bb[1348]+mxConstants[_0x53bb[484]]+_0x53bb[1349]+mxConstants[_0x53bb[483]]+_0x53bb[1350]);return _0x39abx2};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[55]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[813]][_0x53bb[295]][_0x53bb[509]]){return this[_0x53bb[813]][_0x53bb[295]][_0x53bb[509]](_0x39abx3||mxConstants[_0x53bb[1351]],_0x39abx2)};var _0x39abx4=this[_0x53bb[813]][_0x53bb[295]][_0x53bb[55]](_0x39abx2);null!=_0x39abx3&&_0x39abx4[_0x53bb[57]](_0x53bb[1352],_0x39abx3);return _0x39abx4};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1353]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x53bb[198]==_0x39abx2[_0x53bb[225]](0)&&(_0x39abx2=_0x39abx2[_0x53bb[85]](1));_0x53bb[198]==_0x39abx3[_0x53bb[225]](0)&&(_0x39abx3=_0x39abx3[_0x53bb[85]](1));_0x39abx2=_0x39abx2[_0x53bb[216]]()+_0x53bb[213]+_0x39abx4;_0x39abx3=_0x39abx3[_0x53bb[216]]()+_0x53bb[213]+_0x39abx5;_0x39abx4=null;null==_0x39abx9||_0x39abx9==mxConstants[_0x53bb[1354]]?_0x39abx4=_0x53bb[1355]:_0x39abx9==mxConstants[_0x53bb[1356]]?_0x39abx4=_0x53bb[1357]:(_0x39abx5=_0x39abx2,_0x39abx2=_0x39abx3,_0x39abx3=_0x39abx5,_0x39abx9==mxConstants[_0x53bb[1358]]?_0x39abx4=_0x53bb[1355]:_0x39abx9==mxConstants[_0x53bb[1359]]&&(_0x39abx4=_0x53bb[1357]));return _0x53bb[1360]+_0x39abx2+_0x53bb[213]+_0x39abx3+_0x53bb[213]+_0x39abx4};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1361]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=this[_0x53bb[1353]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx12=this[_0x53bb[1339]][_0x39abxa];if(null==_0x39abx12){var _0x39abx13=this[_0x53bb[813]][_0x53bb[538]],_0x39abx14=0,_0x39abx15=_0x39abxa+_0x53bb[213]+_0x39abx14;if(null!=_0x39abx13){for(_0x39abx12=_0x39abx13[_0x53bb[295]][_0x53bb[1362]](_0x39abx15);null!=_0x39abx12&&_0x39abx12[_0x53bb[538]]!=_0x39abx13;){_0x39abx15=_0x39abxa+_0x53bb[213]+_0x39abx14++,_0x39abx12=_0x39abx13[_0x53bb[295]][_0x53bb[1362]](_0x39abx15)}}else {_0x39abx15=_0x53bb[1363]+++this[_0x53bb[1346]]};null==_0x39abx12&&(_0x39abx12=this[_0x53bb[1364]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx12[_0x53bb[57]](_0x53bb[1363],_0x39abx15),null!=this[_0x53bb[1340]]?this[_0x53bb[1340]][_0x53bb[62]](_0x39abx12):_0x39abx13[_0x53bb[62]](_0x39abx12));this[_0x53bb[1339]][_0x39abxa]=_0x39abx12};return _0x39abx12[_0x53bb[284]](_0x53bb[1363])};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1364]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=this[_0x53bb[55]](_0x53bb[1365]);_0x39abxa[_0x53bb[57]](_0x53bb[1324],_0x53bb[1366]);_0x39abxa[_0x53bb[57]](_0x53bb[1325],_0x53bb[1366]);_0x39abxa[_0x53bb[57]](_0x53bb[1326],_0x53bb[1366]);_0x39abxa[_0x53bb[57]](_0x53bb[1327],_0x53bb[1366]);null==_0x39abx9||_0x39abx9==mxConstants[_0x53bb[1354]]?_0x39abxa[_0x53bb[57]](_0x53bb[1327],_0x53bb[118]):_0x39abx9==mxConstants[_0x53bb[1356]]?_0x39abxa[_0x53bb[57]](_0x53bb[1326],_0x53bb[118]):_0x39abx9==mxConstants[_0x53bb[1358]]?_0x39abxa[_0x53bb[57]](_0x53bb[1325],_0x53bb[118]):_0x39abx9==mxConstants[_0x53bb[1359]]&&_0x39abxa[_0x53bb[57]](_0x53bb[1324],_0x53bb[118]);_0x39abx4=1>_0x39abx4?_0x53bb[1367]+_0x39abx4:_0x53bb[110];_0x39abx9=this[_0x53bb[55]](_0x53bb[1076]);_0x39abx9[_0x53bb[57]](_0x53bb[1368],_0x53bb[1366]);_0x39abx9[_0x53bb[57]](_0x53bb[124],_0x53bb[1369]+_0x39abx2+_0x39abx4);_0x39abxa[_0x53bb[62]](_0x39abx9);_0x39abx4=1>_0x39abx5?_0x53bb[1367]+_0x39abx5:_0x53bb[110];_0x39abx9=this[_0x53bb[55]](_0x53bb[1076]);_0x39abx9[_0x53bb[57]](_0x53bb[1368],_0x53bb[118]);_0x39abx9[_0x53bb[57]](_0x53bb[124],_0x53bb[1369]+_0x39abx3+_0x39abx4);_0x39abxa[_0x53bb[62]](_0x39abx9);return _0x39abxa};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1370]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[252]],_0x39abx5=this[_0x53bb[724]];if(null!=_0x39abx4){if(_0x53bb[1215]==_0x39abx4[_0x53bb[301]]){if(null!=this[_0x53bb[1215]]&&0<this[_0x53bb[1215]][_0x53bb[67]]){_0x39abx4[_0x53bb[57]](_0x53bb[1371],this[_0x53bb[1215]][_0x53bb[234]](_0x53bb[185]))}else {return}};_0x39abx2&&null!=_0x39abx5[_0x53bb[604]]?this[_0x53bb[1372]]():this[_0x53bb[1341]]||(_0x53bb[680]==_0x39abx4[_0x53bb[301]]&&mxClient[_0x53bb[133]]&&!mxClient[_0x53bb[76]]&&!mxClient[_0x53bb[75]]?_0x39abx4[_0x53bb[57]](_0x53bb[1334],_0x53bb[1373]):_0x39abx4[_0x53bb[57]](_0x53bb[1334],_0x53bb[130]),_0x39abx2= !1);_0x39abx3&&null!=_0x39abx5[_0x53bb[608]]?this[_0x53bb[1374]]():this[_0x53bb[1341]]||_0x39abx4[_0x53bb[57]](_0x53bb[1336],_0x53bb[130]);null!=_0x39abx5[_0x53bb[535]]&&0<_0x39abx5[_0x53bb[535]][_0x53bb[67]]&&_0x39abx4[_0x53bb[57]](_0x53bb[535],_0x39abx5[_0x53bb[535]]);_0x39abx5[_0x53bb[639]]&&this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[1375]](_0x39abx4));0<this[_0x53bb[1345]]&&!_0x39abx2&&this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[1376]](_0x39abx4));this[_0x53bb[1229]]&&(_0x53bb[1215]!=_0x39abx4[_0x53bb[301]]||this[_0x53bb[1215]][this[_0x53bb[1215]][_0x53bb[67]]-1]==this[_0x53bb[1227]])&&_0x39abx4[_0x53bb[57]](_0x53bb[1377],_0x53bb[1378]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx4)}};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1372]]=function(){var _0x39abx2=this[_0x53bb[724]];1>_0x39abx2[_0x53bb[1244]]&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1379],_0x39abx2[_0x53bb[1244]]);null!=_0x39abx2[_0x53bb[604]]&&(null!=_0x39abx2[_0x53bb[606]]?(_0x39abx2=this[_0x53bb[1361]](_0x39abx2[_0x53bb[604]],_0x39abx2[_0x53bb[606]],_0x39abx2[_0x53bb[1247]],_0x39abx2[_0x53bb[1248]],_0x39abx2[_0x53bb[607]]),this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1334],_0x53bb[1380]+_0x39abx2+_0x53bb[460])):this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1334],_0x39abx2[_0x53bb[604]][_0x53bb[216]]()))};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1374]]=function(){var _0x39abx2=this[_0x53bb[724]];this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1336],_0x39abx2[_0x53bb[608]][_0x53bb[216]]());1>_0x39abx2[_0x53bb[1244]]&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1381],_0x39abx2[_0x53bb[1244]]);var _0x39abx3=Math[_0x53bb[160]](1,this[_0x53bb[1239]](_0x39abx2[_0x53bb[610]]*_0x39abx2[_0x53bb[255]]));1!=_0x39abx3&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1382],_0x39abx3);_0x53bb[1215]==this[_0x53bb[252]][_0x53bb[301]]&&this[_0x53bb[1383]]();_0x39abx2[_0x53bb[648]]&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1384],this[_0x53bb[1385]](_0x39abx3))};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1383]]=function(){var _0x39abx2=this[_0x53bb[724]];null!=_0x39abx2[_0x53bb[1256]]&&_0x53bb[1233]!=_0x39abx2[_0x53bb[1256]]&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1386],_0x39abx2[_0x53bb[1256]]);if(null!=_0x39abx2[_0x53bb[1254]]){var _0x39abx3=_0x39abx2[_0x53bb[1254]];_0x53bb[1232]==_0x39abx3&&(_0x39abx3=_0x53bb[1387]);_0x53bb[1387]!=_0x39abx3&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1388],_0x39abx3)};null!=_0x39abx2[_0x53bb[1258]]&&(!this[_0x53bb[1341]]||10!=_0x39abx2[_0x53bb[1258]])&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1389],_0x39abx2[_0x53bb[1258]])};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1385]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[724]][_0x53bb[649]][_0x53bb[224]](_0x53bb[185]),_0x39abx4=[];if(0<_0x39abx3[_0x53bb[67]]){for(var _0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){_0x39abx4[_0x39abx5]=Number(_0x39abx3[_0x39abx5])*_0x39abx2}};return _0x39abx4[_0x53bb[234]](_0x53bb[185])};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1376]]=function(_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[511]](!0);var _0x39abx3=parseFloat(_0x39abx2[_0x53bb[284]](_0x53bb[1382])||1)+this[_0x53bb[1345]];_0x39abx2[_0x53bb[57]](_0x53bb[1377],_0x53bb[1336]);_0x39abx2[_0x53bb[57]](_0x53bb[187],_0x53bb[188]);_0x39abx2[_0x53bb[1390]](_0x53bb[1384]);_0x39abx2[_0x53bb[57]](_0x53bb[1382],_0x39abx3);_0x39abx2[_0x53bb[57]](_0x53bb[1334],_0x53bb[130]);_0x39abx2[_0x53bb[57]](_0x53bb[1336],mxClient[_0x53bb[71]]?_0x53bb[130]:_0x53bb[1391]);return _0x39abx2};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1375]]=function(_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[511]](!0);var _0x39abx3=this[_0x53bb[724]];_0x53bb[130]!=_0x39abx2[_0x53bb[284]](_0x53bb[1334])&&_0x39abx2[_0x53bb[57]](_0x53bb[1334],_0x39abx3[_0x53bb[1269]]);_0x53bb[130]!=_0x39abx2[_0x53bb[284]](_0x53bb[1336])&&_0x39abx2[_0x53bb[57]](_0x53bb[1336],_0x39abx3[_0x53bb[1269]]);_0x39abx2[_0x53bb[57]](_0x53bb[535],_0x53bb[536]+this[_0x53bb[1239]](_0x39abx3[_0x53bb[1273]]*_0x39abx3[_0x53bb[255]])+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx3[_0x53bb[1274]]*_0x39abx3[_0x53bb[255]])+_0x53bb[460]+(_0x39abx3[_0x53bb[535]]||_0x53bb[110]));_0x39abx2[_0x53bb[57]](_0x53bb[461],_0x39abx3[_0x53bb[1271]]);return _0x39abx2};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1294]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(0!=_0x39abx2||_0x39abx3||_0x39abx4){var _0x39abxa=this[_0x53bb[724]];_0x39abx5+=_0x39abxa[_0x53bb[1126]];_0x39abx9+=_0x39abxa[_0x53bb[1125]];_0x39abx5*=_0x39abxa[_0x53bb[255]];_0x39abx9*=_0x39abxa[_0x53bb[255]];_0x39abxa[_0x53bb[535]]=_0x39abxa[_0x53bb[535]]||_0x53bb[110];if(_0x39abx3&&_0x39abx4){_0x39abx2+=180}else {if(_0x39abx3^_0x39abx4){var _0x39abx12=_0x39abx3?_0x39abx5:0,_0x39abx13=_0x39abx3?-1:1,_0x39abx14=_0x39abx4?_0x39abx9:0,_0x39abx15=_0x39abx4?-1:1;_0x39abxa[_0x53bb[535]]+=_0x53bb[536]+this[_0x53bb[1239]](_0x39abx12)+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx14)+_0x53bb[1392]+this[_0x53bb[1239]](_0x39abx13)+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx15)+_0x53bb[1393]+this[_0x53bb[1239]](-_0x39abx12)+_0x53bb[537]+this[_0x53bb[1239]](-_0x39abx14)+_0x53bb[460]}};if(_0x39abx3?!_0x39abx4:_0x39abx4){_0x39abx2*= -1};0!=_0x39abx2&&(_0x39abxa[_0x53bb[535]]+=_0x53bb[1394]+this[_0x53bb[1239]](_0x39abx2)+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx5)+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx9)+_0x53bb[460]);_0x39abxa[_0x53bb[603]]+=_0x39abx2;_0x39abxa[_0x53bb[1395]]=_0x39abx5;_0x39abxa[_0x53bb[1396]]=_0x39abx9}};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1275]]=function(){mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1275]][_0x53bb[183]](this,arguments);this[_0x53bb[252]]=this[_0x53bb[55]](_0x53bb[1215])};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1319]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[724]],_0x39abxa=this[_0x53bb[55]](_0x53bb[1319]);_0x39abxa[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]]((_0x39abx2+_0x39abx9[_0x53bb[1126]])*_0x39abx9[_0x53bb[255]]));_0x39abxa[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]]((_0x39abx3+_0x39abx9[_0x53bb[1125]])*_0x39abx9[_0x53bb[255]]));_0x39abxa[_0x53bb[57]](_0x53bb[117],this[_0x53bb[1239]](_0x39abx4*_0x39abx9[_0x53bb[255]]));_0x39abxa[_0x53bb[57]](_0x53bb[119],this[_0x53bb[1239]](_0x39abx5*_0x39abx9[_0x53bb[255]]));this[_0x53bb[252]]=_0x39abxa};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1320]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1319]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);0<_0x39abx9&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1397],this[_0x53bb[1239]](_0x39abx9*this[_0x53bb[724]][_0x53bb[255]]));0<_0x39abxa&&this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1398],this[_0x53bb[1239]](_0x39abxa*this[_0x53bb[724]][_0x53bb[255]]))};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[680]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[724]],_0x39abxa=this[_0x53bb[55]](_0x53bb[680]);_0x39abxa[_0x53bb[57]](_0x53bb[1296],Math[_0x53bb[488]]((_0x39abx2+_0x39abx4/2+_0x39abx9[_0x53bb[1126]])*_0x39abx9[_0x53bb[255]]));_0x39abxa[_0x53bb[57]](_0x53bb[1297],Math[_0x53bb[488]]((_0x39abx3+_0x39abx5/2+_0x39abx9[_0x53bb[1125]])*_0x39abx9[_0x53bb[255]]));_0x39abxa[_0x53bb[57]](_0x53bb[1397],_0x39abx4/2*_0x39abx9[_0x53bb[255]]);_0x39abxa[_0x53bb[57]](_0x53bb[1398],_0x39abx5/2*_0x39abx9[_0x53bb[255]]);this[_0x53bb[252]]=_0x39abxa};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[618]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){_0x39abx9=this[_0x53bb[1212]][_0x53bb[1321]](_0x39abx9);_0x39abxa=null!=_0x39abxa?_0x39abxa:!0;_0x39abx12=null!=_0x39abx12?_0x39abx12:!1;_0x39abx13=null!=_0x39abx13?_0x39abx13:!1;var _0x39abx14=this[_0x53bb[724]];_0x39abx2+=_0x39abx14[_0x53bb[1126]];_0x39abx3+=_0x39abx14[_0x53bb[1125]];var _0x39abx15=this[_0x53bb[55]](_0x53bb[618]);_0x39abx15[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2*_0x39abx14[_0x53bb[255]]));_0x39abx15[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3*_0x39abx14[_0x53bb[255]]));_0x39abx15[_0x53bb[57]](_0x53bb[117],this[_0x53bb[1239]](_0x39abx4*_0x39abx14[_0x53bb[255]]));_0x39abx15[_0x53bb[57]](_0x53bb[119],this[_0x53bb[1239]](_0x39abx5*_0x39abx14[_0x53bb[255]]));null==_0x39abx15[_0x53bb[1399]]?_0x39abx15[_0x53bb[57]](_0x53bb[1400],_0x39abx9):_0x39abx15[_0x53bb[1399]](mxConstants.NS_XLINK,_0x53bb[44],_0x39abx9);_0x39abxa||_0x39abx15[_0x53bb[57]](_0x53bb[1401],_0x53bb[130]);1>_0x39abx14[_0x53bb[1244]]&&_0x39abx15[_0x53bb[57]](_0x53bb[461],_0x39abx14[_0x53bb[1244]]);_0x39abx9=this[_0x53bb[724]][_0x53bb[535]]||_0x53bb[110];if(_0x39abx12||_0x39abx13){var _0x39abx16=_0x39abxa=1,_0x39abx17=0,_0x39abx18=0;_0x39abx12&&(_0x39abxa= -1,_0x39abx17=-_0x39abx4-2*_0x39abx2);_0x39abx13&&(_0x39abx16= -1,_0x39abx18=-_0x39abx5-2*_0x39abx3);_0x39abx9+=_0x53bb[1402]+_0x39abxa+_0x53bb[537]+_0x39abx16+_0x53bb[1393]+_0x39abx17+_0x53bb[537]+_0x39abx18+_0x53bb[460]};0<_0x39abx9[_0x53bb[67]]&&_0x39abx15[_0x53bb[57]](_0x53bb[535],_0x39abx9);this[_0x53bb[813]][_0x53bb[62]](_0x39abx15);this[_0x53bb[1347]]&&(_0x39abx15[_0x53bb[57]](_0x53bb[124],_0x53bb[1403]),_0x39abx15=this[_0x53bb[55]](_0x53bb[1319]),_0x39abx15[_0x53bb[57]](_0x53bb[187],_0x53bb[188]),_0x39abx15[_0x53bb[57]](_0x53bb[1377],_0x53bb[1334]),_0x39abx15[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2*_0x39abx14[_0x53bb[255]])),_0x39abx15[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx3*_0x39abx14[_0x53bb[255]])),_0x39abx15[_0x53bb[57]](_0x53bb[117],this[_0x53bb[1239]](_0x39abx4*_0x39abx14[_0x53bb[255]])),_0x39abx15[_0x53bb[57]](_0x53bb[119],this[_0x53bb[1239]](_0x39abx5*_0x39abx14[_0x53bb[255]])),this[_0x53bb[813]][_0x53bb[62]](_0x39abx15))};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1404]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx4=this[_0x53bb[724]];_0x39abx5=_0x53bb[1405]+Math[_0x53bb[488]](_0x39abx4[_0x53bb[487]])+_0x53bb[1406]+_0x39abx4[_0x53bb[486]]+_0x53bb[1407]+_0x39abx4[_0x53bb[665]]+_0x53bb[1408]+Math[_0x53bb[488]](_0x39abx4[_0x53bb[487]]*mxConstants[_0x53bb[490]])+_0x53bb[1409]+_0x39abx5;(_0x39abx4[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]&&(_0x39abx5+=_0x53bb[1411]);(_0x39abx4[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]&&(_0x39abx5+=_0x53bb[1413]);(_0x39abx4[_0x53bb[666]]&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]]&&(_0x39abx5+=_0x53bb[1415]);_0x39abx3==mxConstants[_0x53bb[479]]?_0x39abx5+=_0x53bb[1416]:_0x39abx3==mxConstants[_0x53bb[480]]&&(_0x39abx5+=_0x53bb[1417]);_0x39abx3=_0x53bb[110];null!=_0x39abx4[_0x53bb[1261]]&&(_0x39abx3+=_0x53bb[1418]+_0x39abx4[_0x53bb[1261]]+_0x53bb[471]);null!=_0x39abx4[_0x53bb[1263]]&&(_0x39abx3+=_0x53bb[1419]+_0x39abx4[_0x53bb[1263]]+_0x53bb[471]);mxUtils[_0x53bb[1331]](_0x39abx2)||(_0x39abx4=document[_0x53bb[55]](_0x53bb[126]),_0x39abx4[_0x53bb[339]]=_0x39abx2[_0x53bb[230]](/</g,_0x53bb[1421])[_0x53bb[230]](/>/g,_0x53bb[1420])[_0x53bb[230]](/</g,_0x53bb[334])[_0x53bb[230]](/>/g,_0x53bb[335]),_0x39abx2=_0x39abx4[_0x53bb[131]],_0x39abx9?_0x39abx5+=_0x39abx3:0<_0x39abx3[_0x53bb[67]]&&(_0x39abx2=_0x53bb[1422]+_0x39abx3+_0x53bb[1423]+_0x39abx2+_0x53bb[1424]));if(!mxClient[_0x53bb[80]]&&document[_0x53bb[509]]){return _0x39abx9=document[_0x53bb[509]](_0x53bb[577],_0x53bb[485]),_0x39abx9[_0x53bb[57]](_0x53bb[124],_0x39abx5),mxUtils[_0x53bb[1331]](_0x39abx2)?this[_0x53bb[813]][_0x53bb[295]]!=document?_0x39abx9[_0x53bb[62]](_0x39abx2[_0x53bb[511]](!0)):_0x39abx9[_0x53bb[62]](_0x39abx2):_0x39abx9[_0x53bb[339]]=_0x39abx2,_0x39abx9};mxUtils[_0x53bb[1331]](_0x39abx2)&&this[_0x53bb[813]][_0x53bb[295]]!=document&&(_0x39abx2=_0x39abx2[_0x53bb[342]]);_0x39abx2=_0x39abx2[_0x53bb[230]](/<br>/g,_0x53bb[1426])[_0x53bb[230]](/<hr>/g,_0x53bb[1425]);return mxUtils[_0x53bb[877]](_0x53bb[1427]+_0x39abx5+_0x53bb[1423]+_0x39abx2+_0x53bb[1424])[_0x53bb[158]]};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[963]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){if(this[_0x53bb[1285]]&&null!=_0x39abx9){_0x39abx17=null!=_0x39abx17?_0x39abx17:0;var _0x39abx18=this[_0x53bb[724]];_0x39abx2+=_0x39abx18[_0x53bb[1126]];_0x39abx3+=_0x39abx18[_0x53bb[1125]];if(this[_0x53bb[1344]]&&_0x53bb[1428]==_0x39abx14){var _0x39abx19=_0x53bb[1429];_0x39abx16?(_0x39abx19+=_0x53bb[1430],0<_0x39abx5&&(_0x39abx19+=_0x53bb[1431]+Math[_0x53bb[488]](_0x39abx5)+_0x53bb[1409]),0<_0x39abx4&&(_0x39abx19+=_0x53bb[1432]+Math[_0x53bb[488]](_0x39abx4)+_0x53bb[1409])):_0x39abx15&&(_0x39abx19+=_0x53bb[1432]+Math[_0x53bb[488]](_0x39abx4)+_0x53bb[1409],0<_0x39abx5&&(_0x39abx19+=_0x53bb[1431]+Math[_0x53bb[488]](_0x39abx5)+_0x53bb[1409]));_0x39abx13?(!_0x39abx16&&0<_0x39abx4&&(_0x39abx19+=_0x53bb[1432]+Math[_0x53bb[488]](_0x39abx4)+_0x53bb[1409]),_0x39abx19+=_0x53bb[1433]):_0x39abx19+=_0x53bb[1434];_0x39abx13=this[_0x53bb[55]](_0x53bb[449]);1>_0x39abx18[_0x53bb[1244]]&&_0x39abx13[_0x53bb[57]](_0x53bb[461],_0x39abx18[_0x53bb[1244]]);_0x39abx14=this[_0x53bb[55]](_0x53bb[1435]);_0x39abx14[_0x53bb[57]](_0x53bb[1377],_0x53bb[1378]);_0x39abx19=this[_0x53bb[1404]](_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx19,_0x39abx15);if(null!=_0x39abx19){_0x39abx13[_0x53bb[62]](_0x39abx14);this[_0x53bb[813]][_0x53bb[62]](_0x39abx13);var _0x39abx1a=0;if(mxClient[_0x53bb[80]]&&!mxClient[_0x53bb[48]]){var _0x39abx1b=document[_0x53bb[55]](_0x53bb[485]);_0x39abx1b[_0x53bb[124]][_0x53bb[103]]=_0x39abx19[_0x53bb[284]](_0x53bb[124]);_0x39abx1b[_0x53bb[124]][_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498];_0x39abx1b[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];_0x39abx1b[_0x53bb[339]]=mxUtils[_0x53bb[1331]](_0x39abx9)?_0x39abx9[_0x53bb[342]]:_0x39abx9;document[_0x53bb[112]][_0x53bb[62]](_0x39abx1b);_0x39abx1a=_0x39abx1b[_0x53bb[359]];_0x39abx5=mxClient[_0x53bb[496]]&&0<_0x39abx5&&_0x39abx16?Math[_0x53bb[243]](_0x39abx5,_0x39abx1b[_0x53bb[167]]+2):_0x39abx1b[_0x53bb[167]];_0x39abx1b[_0x53bb[265]][_0x53bb[266]](_0x39abx1b);_0x39abx14[_0x53bb[62]](_0x39abx19)}else {this[_0x53bb[813]][_0x53bb[295]]!=document?(_0x39abx19[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],document[_0x53bb[112]][_0x53bb[62]](_0x39abx19),_0x39abx1a=_0x39abx19[_0x53bb[359]],_0x39abx5=_0x39abx19[_0x53bb[167]],_0x39abx14[_0x53bb[62]](_0x39abx19),_0x39abx19[_0x53bb[124]][_0x53bb[187]]=_0x53bb[110]):(_0x39abx14[_0x53bb[62]](_0x39abx19),_0x39abx1a=_0x39abx19[_0x53bb[359]],_0x39abx5=_0x39abx19[_0x53bb[167]])};_0x39abx4=_0x39abx15?Math[_0x53bb[160]](_0x39abx4,_0x39abx1a):_0x39abx1a;1>_0x39abx18[_0x53bb[1244]]&&_0x39abx13[_0x53bb[57]](_0x53bb[461],_0x39abx18[_0x53bb[1244]]);_0x39abx15=_0x39abx9=0;_0x39abxa==mxConstants[_0x53bb[479]]?_0x39abx9-=_0x39abx4/2:_0x39abxa==mxConstants[_0x53bb[480]]&&(_0x39abx9-=_0x39abx4);_0x39abx2+=_0x39abx9;_0x39abx12==mxConstants[_0x53bb[481]]?_0x39abx15-=_0x39abx5/2:_0x39abx12==mxConstants[_0x53bb[482]]&&(_0x39abx15-=_0x39abx5);_0x39abx3+=_0x39abx15;_0x39abxa=1!=_0x39abx18[_0x53bb[255]]?_0x53bb[1402]+_0x39abx18[_0x53bb[255]]+_0x53bb[460]:_0x53bb[110];0!=_0x39abx18[_0x53bb[603]]&&this[_0x53bb[1216]]?(_0x39abxa+=_0x53bb[1394]+_0x39abx18[_0x53bb[603]]+_0x53bb[537]+_0x39abx4/2+_0x53bb[537]+_0x39abx5/2+_0x53bb[460],_0x39abx3=this[_0x53bb[1241]]((_0x39abx2+_0x39abx4/2)*_0x39abx18[_0x53bb[255]],(_0x39abx3+_0x39abx5/2)*_0x39abx18[_0x53bb[255]],_0x39abx18[_0x53bb[603]],_0x39abx18[_0x53bb[1395]],_0x39abx18[_0x53bb[1396]]),_0x39abx2=_0x39abx3[_0x53bb[235]]-_0x39abx4*_0x39abx18[_0x53bb[255]]/2,_0x39abx3=_0x39abx3[_0x53bb[236]]-_0x39abx5*_0x39abx18[_0x53bb[255]]/2):(_0x39abx2*=_0x39abx18[_0x53bb[255]],_0x39abx3*=_0x39abx18[_0x53bb[255]]);0!=_0x39abx17&&(_0x39abxa+=_0x53bb[1394]+_0x39abx17+_0x53bb[537]+-_0x39abx9+_0x53bb[537]+-_0x39abx15+_0x53bb[460]);_0x39abx13[_0x53bb[57]](_0x53bb[535],_0x53bb[536]+Math[_0x53bb[488]](_0x39abx2)+_0x53bb[537]+Math[_0x53bb[488]](_0x39abx3)+_0x53bb[460]+_0x39abxa);_0x39abx14[_0x53bb[57]](_0x53bb[117],Math[_0x53bb[488]](Math[_0x53bb[160]](1,_0x39abx4)));_0x39abx14[_0x53bb[57]](_0x53bb[119],Math[_0x53bb[488]](Math[_0x53bb[160]](1,_0x39abx5)))}}else {this[_0x53bb[1436]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx15,_0x39abx16,_0x39abx17)}}};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1437]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx2=Math[_0x53bb[488]](_0x39abx2);_0x39abx3=Math[_0x53bb[488]](_0x39abx3);_0x39abx4=Math[_0x53bb[488]](_0x39abx4);_0x39abx5=Math[_0x53bb[488]](_0x39abx5);for(var _0x39abx9=_0x53bb[1438]+_0x39abx2+_0x53bb[213]+_0x39abx3+_0x53bb[213]+_0x39abx4+_0x53bb[213]+_0x39abx5,_0x39abxa=0,_0x39abx12=_0x39abx9+_0x53bb[213]+_0x39abxa;null!=document[_0x53bb[1362]](_0x39abx12);){_0x39abx12=_0x39abx9+_0x53bb[213]+ ++_0x39abxa};clip=this[_0x53bb[55]](_0x53bb[1439]);clip[_0x53bb[57]](_0x53bb[1363],_0x39abx12);_0x39abx9=this[_0x53bb[55]](_0x53bb[1319]);_0x39abx9[_0x53bb[57]](_0x53bb[235],_0x39abx2);_0x39abx9[_0x53bb[57]](_0x53bb[236],_0x39abx3);_0x39abx9[_0x53bb[57]](_0x53bb[117],_0x39abx4);_0x39abx9[_0x53bb[57]](_0x53bb[119],_0x39abx5);clip[_0x53bb[62]](_0x39abx9);return clip};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1436]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16){_0x39abx16=null!=_0x39abx16?_0x39abx16:0;_0x39abx13=this[_0x53bb[724]];var _0x39abx17=Math[_0x53bb[488]](_0x39abx13[_0x53bb[487]]),_0x39abx18=this[_0x53bb[55]](_0x53bb[449]),_0x39abx19=_0x39abx13[_0x53bb[535]]||_0x53bb[110];0!=_0x39abx16&&(_0x39abx19+=_0x53bb[1394]+_0x39abx16+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx2*_0x39abx13[_0x53bb[255]])+_0x53bb[537]+this[_0x53bb[1239]](_0x39abx3*_0x39abx13[_0x53bb[255]])+_0x53bb[460]);if(_0x39abx15&&0<_0x39abx4&&0<_0x39abx5){var _0x39abx1a=_0x39abx2;_0x39abx16=_0x39abx3;_0x39abxa==mxConstants[_0x53bb[479]]?_0x39abx1a-=_0x39abx4/2:_0x39abxa==mxConstants[_0x53bb[480]]&&(_0x39abx1a-=_0x39abx4);_0x39abx12==mxConstants[_0x53bb[481]]?_0x39abx16-=_0x39abx5/2:_0x39abx12==mxConstants[_0x53bb[482]]&&(_0x39abx16-=_0x39abx5);_0x39abx16=this[_0x53bb[1437]](_0x39abx1a*_0x39abx13[_0x53bb[255]]-2,_0x39abx16*_0x39abx13[_0x53bb[255]]-2,_0x39abx4*_0x39abx13[_0x53bb[255]]+4,_0x39abx5*_0x39abx13[_0x53bb[255]]+4);null!=this[_0x53bb[1340]]?this[_0x53bb[1340]][_0x53bb[62]](_0x39abx16):this[_0x53bb[813]][_0x53bb[62]](_0x39abx16);_0x39abx18[_0x53bb[57]](_0x53bb[1440],_0x53bb[1380]+_0x39abx16[_0x53bb[284]](_0x53bb[1363])+_0x53bb[460])};this[_0x53bb[1441]](_0x39abx18,_0x39abxa);_0x39abx16=_0x39abxa==mxConstants[_0x53bb[480]]?_0x53bb[1282]:_0x39abxa==mxConstants[_0x53bb[479]]?_0x53bb[554]:_0x53bb[861];_0x53bb[861]!=_0x39abx16&&_0x39abx18[_0x53bb[57]](_0x53bb[1442],_0x39abx16);(!this[_0x53bb[1341]]||_0x39abx17!=mxConstants[_0x53bb[483]])&&_0x39abx18[_0x53bb[57]](_0x53bb[1443],Math[_0x53bb[488]](_0x39abx17*_0x39abx13[_0x53bb[255]])+_0x53bb[168]);0<_0x39abx19[_0x53bb[67]]&&_0x39abx18[_0x53bb[57]](_0x53bb[535],_0x39abx19);1>_0x39abx13[_0x53bb[1244]]&&_0x39abx18[_0x53bb[57]](_0x53bb[461],_0x39abx13[_0x53bb[1244]]);var _0x39abx19=_0x39abx9[_0x53bb[224]](_0x53bb[192]),_0x39abx1a=Math[_0x53bb[488]](_0x39abx17*mxConstants[_0x53bb[490]]),_0x39abx1b=_0x39abx17+(_0x39abx19[_0x53bb[67]]-1)*_0x39abx1a;_0x39abx16=_0x39abx3+_0x39abx17-1;_0x39abx12==mxConstants[_0x53bb[481]]?(_0x39abx5=(this[_0x53bb[1343]]&&_0x39abx15&&0<_0x39abx5?Math[_0x53bb[243]](_0x39abx1b,_0x39abx5):_0x39abx1b)/2,_0x39abx16-=_0x39abx5+1):_0x39abx12==mxConstants[_0x53bb[482]]&&(_0x39abx5=this[_0x53bb[1343]]&&_0x39abx15&&0<_0x39abx5?Math[_0x53bb[243]](_0x39abx1b,_0x39abx5):_0x39abx1b,_0x39abx16-=_0x39abx5+2);for(_0x39abx5=0;_0x39abx5<_0x39abx19[_0x53bb[67]];_0x39abx5++){0<_0x39abx19[_0x39abx5][_0x53bb[67]]&&0<mxUtils[_0x53bb[330]](_0x39abx19[_0x39abx5])[_0x53bb[67]]&&(_0x39abx15=this[_0x53bb[55]](_0x53bb[963]),_0x39abx15[_0x53bb[57]](_0x53bb[235],this[_0x53bb[1239]](_0x39abx2*_0x39abx13[_0x53bb[255]])),_0x39abx15[_0x53bb[57]](_0x53bb[236],this[_0x53bb[1239]](_0x39abx16*_0x39abx13[_0x53bb[255]])),mxUtils[_0x53bb[53]](_0x39abx15,_0x39abx19[_0x39abx5]),_0x39abx18[_0x53bb[62]](_0x39abx15)),_0x39abx16+=_0x39abx1a};this[_0x53bb[813]][_0x53bb[62]](_0x39abx18);this[_0x53bb[1444]](_0x39abx18,_0x39abx9,_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx1b,_0x39abxa,_0x39abx12,_0x39abx14)};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1441]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[724]];_0x39abx2[_0x53bb[57]](_0x53bb[1334],_0x39abx3[_0x53bb[665]]);(!this[_0x53bb[1341]]||_0x39abx3[_0x53bb[486]]!=mxConstants[_0x53bb[484]])&&_0x39abx2[_0x53bb[57]](_0x53bb[1445],_0x39abx3[_0x53bb[486]]);(_0x39abx3[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]&&_0x39abx2[_0x53bb[57]](_0x53bb[1446],_0x53bb[1447]);(_0x39abx3[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]&&_0x39abx2[_0x53bb[57]](_0x53bb[1448],_0x53bb[1449]);(_0x39abx3[_0x53bb[666]]&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]]&&_0x39abx2[_0x53bb[57]](_0x53bb[1450],_0x53bb[355])};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1444]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){var _0x39abx15=this[_0x53bb[724]];if(null!=_0x39abx15[_0x53bb[1261]]||null!=_0x39abx15[_0x53bb[1263]]){var _0x39abx16=null;_0x39abx14?(_0x39abx12==mxConstants[_0x53bb[479]]?_0x39abx4-=_0x39abx9/2:_0x39abx12==mxConstants[_0x53bb[480]]&&(_0x39abx4-=_0x39abx9),_0x39abx13==mxConstants[_0x53bb[481]]?_0x39abx5-=_0x39abxa/2:_0x39abx13==mxConstants[_0x53bb[482]]&&(_0x39abx5-=_0x39abxa),_0x39abx16= new mxRectangle((_0x39abx4+1)*_0x39abx15[_0x53bb[255]],_0x39abx5*_0x39abx15[_0x53bb[255]],(_0x39abx9-2)*_0x39abx15[_0x53bb[255]],(_0x39abxa+2)*_0x39abx15[_0x53bb[255]])):null!=_0x39abx2[_0x53bb[1451]]&&this[_0x53bb[813]][_0x53bb[295]]==document?(_0x39abx16=_0x39abx2[_0x53bb[1451]](),_0x39abx3=mxClient[_0x53bb[80]]&&mxClient[_0x53bb[48]],_0x39abx16= new mxRectangle(_0x39abx16[_0x53bb[235]],_0x39abx16[_0x53bb[236]]+(_0x39abx3?0:1),_0x39abx16[_0x53bb[117]],_0x39abx16[_0x53bb[119]]+(_0x39abx3?1:0))):(_0x39abx16=document[_0x53bb[55]](_0x53bb[485]),_0x39abx16[_0x53bb[124]][_0x53bb[489]]=Math[_0x53bb[488]](_0x39abx15[_0x53bb[487]]*mxConstants[_0x53bb[490]])+_0x53bb[168],_0x39abx16[_0x53bb[124]][_0x53bb[487]]=Math[_0x53bb[488]](_0x39abx15[_0x53bb[487]])+_0x53bb[168],_0x39abx16[_0x53bb[124]][_0x53bb[486]]=_0x39abx15[_0x53bb[486]],_0x39abx16[_0x53bb[124]][_0x53bb[493]]=_0x53bb[494],_0x39abx16[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492],_0x39abx16[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],_0x39abx16[_0x53bb[124]][_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498],_0x39abx16[_0x53bb[124]][_0x53bb[499]]=_0x53bb[500],(_0x39abx15[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]&&(_0x39abx16[_0x53bb[124]][_0x53bb[1452]]=_0x53bb[1447]),(_0x39abx15[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]&&(_0x39abx16[_0x53bb[124]][_0x53bb[666]]=_0x53bb[1449]),_0x39abx3=mxUtils[_0x53bb[321]](_0x39abx3,!1),_0x39abx16[_0x53bb[339]]=_0x39abx3[_0x53bb[230]](/\n/g,_0x53bb[1453]),document[_0x53bb[112]][_0x53bb[62]](_0x39abx16),_0x39abx9=_0x39abx16[_0x53bb[359]],_0x39abxa=_0x39abx16[_0x53bb[167]],_0x39abx16[_0x53bb[265]][_0x53bb[266]](_0x39abx16),_0x39abx12==mxConstants[_0x53bb[479]]?_0x39abx4-=_0x39abx9/2:_0x39abx12==mxConstants[_0x53bb[480]]&&(_0x39abx4-=_0x39abx9),_0x39abx13==mxConstants[_0x53bb[481]]?_0x39abx5-=_0x39abxa/2:_0x39abx13==mxConstants[_0x53bb[482]]&&(_0x39abx5-=_0x39abxa),_0x39abx16= new mxRectangle((_0x39abx4+1)*_0x39abx15[_0x53bb[255]],(_0x39abx5+2)*_0x39abx15[_0x53bb[255]],_0x39abx9*_0x39abx15[_0x53bb[255]],(_0x39abxa+1)*_0x39abx15[_0x53bb[255]]));null!=_0x39abx16&&(_0x39abx3=this[_0x53bb[55]](_0x53bb[1319]),_0x39abx3[_0x53bb[57]](_0x53bb[1334],_0x39abx15[_0x53bb[1261]]||_0x53bb[130]),_0x39abx3[_0x53bb[57]](_0x53bb[1336],_0x39abx15[_0x53bb[1263]]||_0x53bb[130]),_0x39abx3[_0x53bb[57]](_0x53bb[235],Math[_0x53bb[519]](_0x39abx16[_0x53bb[235]]-1)),_0x39abx3[_0x53bb[57]](_0x53bb[236],Math[_0x53bb[519]](_0x39abx16[_0x53bb[236]]-1)),_0x39abx3[_0x53bb[57]](_0x53bb[117],Math[_0x53bb[430]](_0x39abx16[_0x53bb[117]]+2)),_0x39abx3[_0x53bb[57]](_0x53bb[119],Math[_0x53bb[430]](_0x39abx16[_0x53bb[119]])),_0x39abx15=null!=_0x39abx15[_0x53bb[1263]]?Math[_0x53bb[160]](1,this[_0x53bb[1239]](_0x39abx15[_0x53bb[255]])):0,_0x39abx3[_0x53bb[57]](_0x53bb[1382],_0x39abx15),this[_0x53bb[813]][_0x53bb[295]]==document&&1==mxUtils[_0x53bb[1454]](_0x39abx15,2)&&_0x39abx3[_0x53bb[57]](_0x53bb[535],_0x53bb[1455]),_0x39abx2[_0x53bb[950]](_0x39abx3,_0x39abx2[_0x53bb[285]]))}};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1336]]=function(){this[_0x53bb[1370]](!1,!0)};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1334]]=function(){this[_0x53bb[1370]](!0,!1)};mxSvgCanvas2D[_0x53bb[202]][_0x53bb[1337]]=function(){this[_0x53bb[1370]](!0,!0)};var mxVmlCanvas2D=function(_0x39abx2){mxAbstractCanvas2D[_0x53bb[239]](this);this[_0x53bb[813]]=_0x39abx2};mxUtils[_0x53bb[1284]](mxVmlCanvas2D,mxAbstractCanvas2D);mxVmlCanvas2D[_0x53bb[202]][_0x53bb[252]]=null;mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1285]]= !0;mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1219]]=_0x53bb[1456];mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1221]]=_0x53bb[1457];mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1225]]=_0x53bb[1458];mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1227]]=_0x53bb[235];mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1459]]=_0x53bb[110];mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1460]]=1;mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1370]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[252]],_0x39abx5=this[_0x53bb[724]];if(null!=_0x39abx4){if(_0x53bb[253]==_0x39abx4[_0x53bb[301]]){if(null!=this[_0x53bb[1215]]&&0<this[_0x53bb[1215]][_0x53bb[67]]){_0x39abx4[_0x53bb[1215]]=this[_0x53bb[1215]][_0x53bb[234]](_0x53bb[185])+_0x53bb[1461],_0x39abx4[_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[813]][_0x53bb[124]][_0x53bb[117]],_0x39abx4[_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[813]][_0x53bb[124]][_0x53bb[119]],_0x39abx4[_0x53bb[1462]]=parseInt(_0x39abx4[_0x53bb[124]][_0x53bb[117]])+_0x53bb[185]+parseInt(_0x39abx4[_0x53bb[124]][_0x53bb[119]])}else {return}};_0x39abx4[_0x53bb[1463]]=this[_0x53bb[1239]](Math[_0x53bb[160]](1,_0x39abx5[_0x53bb[610]]*_0x39abx5[_0x53bb[255]]/this[_0x53bb[1460]]))+_0x53bb[168];_0x39abx5[_0x53bb[639]]&&this[_0x53bb[813]][_0x53bb[62]](this[_0x53bb[1375]](_0x39abx4,_0x39abx2&&null!=_0x39abx5[_0x53bb[604]],_0x39abx3&&null!=_0x39abx5[_0x53bb[608]]));_0x39abx3&&null!=_0x39abx5[_0x53bb[608]]?(_0x39abx4[_0x53bb[1464]]=_0x53bb[128],_0x39abx4[_0x53bb[1306]]=_0x39abx5[_0x53bb[608]]):_0x39abx4[_0x53bb[1464]]=_0x53bb[308];_0x39abx4[_0x53bb[62]](this[_0x53bb[1465]]());_0x39abx2&&null!=_0x39abx5[_0x53bb[604]]?_0x39abx4[_0x53bb[62]](this[_0x53bb[1466]]()):this[_0x53bb[1229]]&&(_0x53bb[253]!=_0x39abx4[_0x53bb[301]]||this[_0x53bb[1215]][this[_0x53bb[1215]][_0x53bb[67]]-1]==this[_0x53bb[1227]])?_0x39abx4[_0x53bb[62]](this[_0x53bb[1467]]()):_0x39abx4[_0x53bb[1468]]=_0x53bb[308];this[_0x53bb[813]][_0x53bb[62]](_0x39abx4)}};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1467]]=function(){var _0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1469]);_0x39abx2[_0x53bb[390]]=mxClient[_0x53bb[88]]+_0x53bb[1470];_0x39abx2[_0x53bb[60]]=_0x53bb[1471];return _0x39abx2};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1466]]=function(){var _0x39abx2=this[_0x53bb[724]],_0x39abx3=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1469]);_0x39abx3[_0x53bb[352]]=_0x39abx2[_0x53bb[604]];if(null!=_0x39abx2[_0x53bb[606]]){_0x39abx3[_0x53bb[60]]=_0x53bb[1299];_0x39abx3[_0x53bb[865]]=_0x53bb[130];_0x39abx3[_0x53bb[1472]]=_0x39abx2[_0x53bb[606]];var _0x39abx4=180-_0x39abx2[_0x53bb[603]],_0x39abx4=_0x39abx2[_0x53bb[607]]==mxConstants[_0x53bb[1359]]?_0x39abx4-(90+(_0x53bb[235]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]?180:0)):_0x39abx2[_0x53bb[607]]==mxConstants[_0x53bb[1356]]?_0x39abx4+(90+(_0x53bb[235]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]?180:0)):_0x39abx2[_0x53bb[607]]==mxConstants[_0x53bb[1358]]?_0x39abx4-(180+(_0x53bb[236]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]?-180:0)):_0x39abx4+(_0x53bb[236]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]?-180:0);if(_0x53bb[235]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]||_0x53bb[236]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]){_0x39abx4*= -1};_0x39abx3[_0x53bb[1474]]=mxUtils[_0x53bb[1454]](_0x39abx4,360);_0x39abx3[_0x53bb[461]]=100*_0x39abx2[_0x53bb[1244]]*_0x39abx2[_0x53bb[1247]]+_0x53bb[229];_0x39abx3[_0x53bb[57]](mxClient[_0x53bb[1475]]+_0x53bb[1476],100*_0x39abx2[_0x53bb[1244]]*_0x39abx2[_0x53bb[1248]]+_0x53bb[229])}else {1>_0x39abx2[_0x53bb[1244]]&&(_0x39abx3[_0x53bb[461]]=100*_0x39abx2[_0x53bb[1244]]+_0x53bb[229])};return _0x39abx3};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1465]]=function(){var _0x39abx2=this[_0x53bb[724]],_0x39abx3=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1477]);_0x39abx3[_0x53bb[1478]]=_0x39abx2[_0x53bb[1254]]||_0x53bb[1232];_0x39abx3[_0x53bb[1479]]=_0x39abx2[_0x53bb[1256]]||_0x53bb[1233];_0x39abx3[_0x53bb[1313]]=_0x39abx2[_0x53bb[1258]]||_0x53bb[1480];1>_0x39abx2[_0x53bb[1244]]&&(_0x39abx3[_0x53bb[461]]=100*_0x39abx2[_0x53bb[1244]]+_0x53bb[229]);_0x39abx2[_0x53bb[648]]&&(_0x39abx3[_0x53bb[1481]]=this[_0x53bb[1482]]());return _0x39abx3};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1482]]=function(){var _0x39abx2=_0x53bb[1483];if(null!=this[_0x53bb[724]][_0x53bb[649]]){var _0x39abx3=this[_0x53bb[724]][_0x53bb[649]][_0x53bb[224]](_0x53bb[185]);0<_0x39abx3[_0x53bb[67]]&&1==_0x39abx3[0]&&(_0x39abx2=_0x53bb[1484])};return _0x39abx2};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1375]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[724]],_0x39abx9=-_0x39abx5[_0x53bb[603]]*(Math[_0x53bb[424]]/180),_0x39abxa=Math[_0x53bb[426]](_0x39abx9),_0x39abx9=Math[_0x53bb[427]](_0x39abx9),_0x39abx12=_0x39abx5[_0x53bb[1273]]*_0x39abx5[_0x53bb[255]],_0x39abx13=_0x39abx5[_0x53bb[1274]]*_0x39abx5[_0x53bb[255]];_0x53bb[235]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]?_0x39abx12*= -1:_0x53bb[236]==this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]&&(_0x39abx13*= -1);var _0x39abx14=_0x39abx2[_0x53bb[511]](!0);_0x39abx14[_0x53bb[124]][_0x53bb[945]]=Math[_0x53bb[488]](_0x39abx12*_0x39abxa-_0x39abx13*_0x39abx9)+_0x53bb[168];_0x39abx14[_0x53bb[124]][_0x53bb[953]]=Math[_0x53bb[488]](_0x39abx12*_0x39abx9+_0x39abx13*_0x39abxa)+_0x53bb[168];8==document[_0x53bb[5]]&&(_0x39abx14[_0x53bb[1463]]=_0x39abx2[_0x53bb[1463]],_0x53bb[253]==_0x39abx2[_0x53bb[301]]&&(_0x39abx14[_0x53bb[1215]]=this[_0x53bb[1215]][_0x53bb[234]](_0x53bb[185])+_0x53bb[1461],_0x39abx14[_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[813]][_0x53bb[124]][_0x53bb[117]],_0x39abx14[_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[813]][_0x53bb[124]][_0x53bb[119]],_0x39abx14[_0x53bb[1462]]=parseInt(_0x39abx2[_0x53bb[124]][_0x53bb[117]])+_0x53bb[185]+parseInt(_0x39abx2[_0x53bb[124]][_0x53bb[119]])));_0x39abx4?(_0x39abx14[_0x53bb[1306]]=_0x39abx5[_0x53bb[1269]],_0x39abx14[_0x53bb[62]](this[_0x53bb[1485]]())):_0x39abx14[_0x53bb[1464]]=_0x53bb[308];_0x39abx3?_0x39abx14[_0x53bb[62]](this[_0x53bb[1486]]()):_0x39abx14[_0x53bb[1468]]=_0x53bb[308];return _0x39abx14};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1486]]=function(){var _0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1469]);_0x39abx2[_0x53bb[352]]=this[_0x53bb[724]][_0x53bb[1269]];_0x39abx2[_0x53bb[461]]=100*this[_0x53bb[724]][_0x53bb[1244]]*this[_0x53bb[724]][_0x53bb[1271]]+_0x53bb[229];return _0x39abx2};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1485]]=function(){var _0x39abx2=this[_0x53bb[1465]]();_0x39abx2[_0x53bb[461]]=100*this[_0x53bb[724]][_0x53bb[1244]]*this[_0x53bb[724]][_0x53bb[1271]]+_0x53bb[229];return _0x39abx2};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1294]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx3&&_0x39abx4?_0x39abx2+=180:_0x39abx3?this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]=_0x53bb[235]:_0x39abx4&&(this[_0x53bb[813]][_0x53bb[124]][_0x53bb[1473]]=_0x53bb[236]);if(_0x39abx3?!_0x39abx4:_0x39abx4){_0x39abx2*= -1};this[_0x53bb[813]][_0x53bb[124]][_0x53bb[603]]=_0x39abx2;this[_0x53bb[724]][_0x53bb[603]]+=_0x39abx2;this[_0x53bb[724]][_0x53bb[1395]]=_0x39abx5;this[_0x53bb[724]][_0x53bb[1396]]=_0x39abx9};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1275]]=function(){mxAbstractCanvas2D[_0x53bb[202]][_0x53bb[1275]][_0x53bb[183]](this,arguments);this[_0x53bb[252]]=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1487]);this[_0x53bb[252]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492]};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1278]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[724]],_0x39abxa=(this[_0x53bb[1217]]+_0x39abx9[_0x53bb[1126]])*_0x39abx9[_0x53bb[255]],_0x39abx12=(this[_0x53bb[1218]]+_0x39abx9[_0x53bb[1125]])*_0x39abx9[_0x53bb[255]];_0x39abx2=(_0x39abx2+_0x39abx9[_0x53bb[1126]])*_0x39abx9[_0x53bb[255]];_0x39abx3=(_0x39abx3+_0x39abx9[_0x53bb[1125]])*_0x39abx9[_0x53bb[255]];_0x39abx4=(_0x39abx4+_0x39abx9[_0x53bb[1126]])*_0x39abx9[_0x53bb[255]];_0x39abx5=(_0x39abx5+_0x39abx9[_0x53bb[1125]])*_0x39abx9[_0x53bb[255]];var _0x39abx12=_0x39abx12+2/3*(_0x39abx3-_0x39abx12),_0x39abx13=_0x39abx4+2/3*(_0x39abx2-_0x39abx4);_0x39abx3=_0x39abx5+2/3*(_0x39abx3-_0x39abx5);this[_0x53bb[1215]][_0x53bb[207]](_0x53bb[1488]+this[_0x53bb[1239]](_0x39abxa+2/3*(_0x39abx2-_0x39abxa))+_0x53bb[185]+this[_0x53bb[1239]](_0x39abx12)+_0x53bb[185]+this[_0x53bb[1239]](_0x39abx13)+_0x53bb[185]+this[_0x53bb[1239]](_0x39abx3)+_0x53bb[185]+this[_0x53bb[1239]](_0x39abx4)+_0x53bb[185]+this[_0x53bb[1239]](_0x39abx5));this[_0x53bb[1217]]=_0x39abx4/_0x39abx9[_0x53bb[255]]-_0x39abx9[_0x53bb[1126]];this[_0x53bb[1218]]=_0x39abx5/_0x39abx9[_0x53bb[255]]-_0x39abx9[_0x53bb[1125]]};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1489]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=this[_0x53bb[724]];_0x39abx2=document[_0x53bb[55]](_0x39abx2);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx2[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]]((_0x39abx3+_0x39abxa[_0x53bb[1126]])*_0x39abxa[_0x53bb[255]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]]((_0x39abx4+_0x39abxa[_0x53bb[1125]])*_0x39abxa[_0x53bb[255]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[1239]](_0x39abx5*_0x39abxa[_0x53bb[255]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[1239]](_0x39abx9*_0x39abxa[_0x53bb[255]])+_0x53bb[168];return _0x39abx2};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1319]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[252]]=this[_0x53bb[1489]](mxClient[_0x53bb[463]]+_0x53bb[1490],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1320]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[252]]=this[_0x53bb[1489]](mxClient[_0x53bb[463]]+_0x53bb[1491],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);this[_0x53bb[252]][_0x53bb[57]](_0x53bb[1492],Math[_0x53bb[160]](100*_0x39abx9/_0x39abx4,100*_0x39abxa/_0x39abx5)+_0x53bb[229])};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[680]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[252]]=this[_0x53bb[1489]](mxClient[_0x53bb[463]]+_0x53bb[1493],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[618]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){var _0x39abx14=null;_0x39abxa?(_0x39abx14=this[_0x53bb[1489]](mxClient[_0x53bb[463]]+_0x53bb[1490],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5),_0x39abx14[_0x53bb[1464]]=_0x53bb[308],_0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1469]),_0x39abx2[_0x53bb[1322]]=_0x39abxa?_0x53bb[1494]:_0x53bb[1495],_0x39abx2[_0x53bb[1294]]=_0x53bb[128],_0x39abx2[_0x53bb[60]]=_0x53bb[1496],_0x39abx2[_0x53bb[390]]=_0x39abx9,_0x39abx14[_0x53bb[62]](_0x39abx2)):(_0x39abx14=this[_0x53bb[1489]](mxClient[_0x53bb[463]]+_0x53bb[464],_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5),_0x39abx14[_0x53bb[390]]=_0x39abx9);_0x39abx12&&_0x39abx13?_0x39abx14[_0x53bb[124]][_0x53bb[603]]=_0x53bb[1497]:_0x39abx12?_0x39abx14[_0x53bb[124]][_0x53bb[1473]]=_0x53bb[235]:_0x39abx13&&(_0x39abx14[_0x53bb[124]][_0x53bb[1473]]=_0x53bb[236]);1>this[_0x53bb[724]][_0x53bb[1244]]&&(_0x39abx14[_0x53bb[124]][_0x53bb[347]]+=_0x53bb[459]+100*this[_0x53bb[724]][_0x53bb[1244]]+_0x53bb[460]);this[_0x53bb[813]][_0x53bb[62]](_0x39abx14)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1404]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=document[_0x53bb[55]](_0x53bb[485]);var _0x39abx9=this[_0x53bb[724]],_0x39abxa=_0x53bb[110];null!=_0x39abx9[_0x53bb[1261]]&&(_0x39abxa+=_0x53bb[1418]+_0x39abx9[_0x53bb[1261]]+_0x53bb[471]);null!=_0x39abx9[_0x53bb[1263]]&&(_0x39abxa+=_0x53bb[1419]+_0x39abx9[_0x53bb[1263]]+_0x53bb[471]);mxUtils[_0x53bb[1331]](_0x39abx2)?_0x39abx4[_0x53bb[62]](_0x39abx2):0<_0x39abxa[_0x53bb[67]]&&!_0x39abx5?(_0x39abx5=document[_0x53bb[55]](_0x53bb[485]),_0x39abx5[_0x53bb[124]][_0x53bb[103]]=_0x39abxa,_0x39abx5[_0x53bb[124]][_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498],_0x39abx5[_0x53bb[124]][_0x53bb[499]]=_0x53bb[500],_0x39abx5[_0x53bb[339]]=_0x39abx2,_0x39abx4[_0x53bb[62]](_0x39abx5)):(_0x39abx4[_0x53bb[124]][_0x53bb[103]]=_0x39abxa,_0x39abx4[_0x53bb[339]]=_0x39abx2);_0x39abx2=_0x39abx4[_0x53bb[124]];_0x39abx2[_0x53bb[487]]=Math[_0x53bb[488]](_0x39abx9[_0x53bb[487]]/this[_0x53bb[1460]])+_0x53bb[168];_0x39abx2[_0x53bb[486]]=_0x39abx9[_0x53bb[486]];_0x39abx2[_0x53bb[352]]=_0x39abx9[_0x53bb[665]];_0x39abx2[_0x53bb[123]]=_0x53bb[125];_0x39abx2[_0x53bb[1165]]=_0x39abx3||_0x53bb[361];_0x39abx2[_0x53bb[489]]=Math[_0x53bb[488]](_0x39abx9[_0x53bb[487]]*mxConstants[_0x53bb[490]]/this[_0x53bb[1460]])+_0x53bb[168];(_0x39abx9[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]&&(_0x39abx2[_0x53bb[1452]]=_0x53bb[1447]);(_0x39abx9[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]&&(_0x39abx2[_0x53bb[666]]=_0x53bb[1449]);(_0x39abx9[_0x53bb[666]]&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]]&&(_0x39abx2[_0x53bb[1498]]=_0x53bb[355]);return _0x39abx4};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[963]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){if(this[_0x53bb[1285]]&&null!=_0x39abx9){var _0x39abx18=this[_0x53bb[724]];if(_0x53bb[1428]==_0x39abx14){null!=_0x39abx18[_0x53bb[603]]&&(_0x39abx3=this[_0x53bb[1241]](_0x39abx2,_0x39abx3,_0x39abx18[_0x53bb[603]],_0x39abx18[_0x53bb[1395]],_0x39abx18[_0x53bb[1396]]),_0x39abx2=_0x39abx3[_0x53bb[235]],_0x39abx3=_0x39abx3[_0x53bb[236]]);8==document[_0x53bb[5]]?(_0x39abx2+=_0x39abx18[_0x53bb[1126]],_0x39abx3+=_0x39abx18[_0x53bb[1125]]):(_0x39abx2*=_0x39abx18[_0x53bb[255]],_0x39abx3*=_0x39abx18[_0x53bb[255]]);_0x39abx14=8==document[_0x53bb[5]]?document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1499]):document[_0x53bb[55]](_0x53bb[485]);_0x39abx14[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx14[_0x53bb[124]][_0x53bb[495]]=_0x53bb[497];_0x39abx14[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]](_0x39abx2)+_0x53bb[168];_0x39abx14[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]](_0x39abx3)+_0x53bb[168];_0x39abx14[_0x53bb[124]][_0x53bb[499]]=_0x39abx18[_0x53bb[255]];var _0x39abx19=document[_0x53bb[55]](_0x53bb[485]);_0x39abx19[_0x53bb[124]][_0x53bb[491]]=_0x53bb[1500];_0x39abx19[_0x53bb[124]][_0x53bb[495]]=_0x53bb[497];var _0x39abx1a=mxUtils[_0x53bb[1501]](_0x39abxa,_0x39abx12),_0x39abx1b=_0x39abx1a[_0x53bb[235]],_0x39abx1a=_0x39abx1a[_0x53bb[236]];_0x39abx9=this[_0x53bb[1404]](_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx15);_0x39abxa=document[_0x53bb[55]](_0x53bb[485]);_0x39abx13?(!_0x39abx16&&0<_0x39abx4&&(_0x39abx9[_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[488]](_0x39abx4)+_0x53bb[168]),_0x39abx9[_0x53bb[124]][_0x53bb[493]]=_0x53bb[1502]):_0x39abx9[_0x53bb[124]][_0x53bb[493]]=_0x53bb[494];_0x39abx13=_0x39abx18[_0x53bb[603]]+(_0x39abx17||0);this[_0x53bb[1216]]&&0!=_0x39abx13?(_0x39abxa[_0x53bb[124]][_0x53bb[495]]=_0x53bb[497],_0x39abxa[_0x53bb[124]][_0x53bb[499]]=_0x53bb[500],_0x39abxa[_0x53bb[62]](_0x39abx9),8==document[_0x53bb[5]]&&_0x53bb[529]!=this[_0x53bb[813]][_0x53bb[301]]?(_0x39abx19[_0x53bb[62]](_0x39abxa),_0x39abx14[_0x53bb[62]](_0x39abx19)):_0x39abx14[_0x53bb[62]](_0x39abxa)):8==document[_0x53bb[5]]?(_0x39abx19[_0x53bb[62]](_0x39abx9),_0x39abx14[_0x53bb[62]](_0x39abx19)):(_0x39abx9[_0x53bb[124]][_0x53bb[495]]=_0x53bb[497],_0x39abx14[_0x53bb[62]](_0x39abx9));_0x53bb[529]!=this[_0x53bb[813]][_0x53bb[301]]?(_0x39abx17=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1490]),_0x39abx17[_0x53bb[1464]]=_0x53bb[308],_0x39abx17[_0x53bb[1468]]=_0x53bb[308],_0x39abx17[_0x53bb[62]](_0x39abx14),this[_0x53bb[813]][_0x53bb[62]](_0x39abx17)):this[_0x53bb[813]][_0x53bb[62]](_0x39abx14);_0x39abx16?(_0x39abx9[_0x53bb[124]][_0x53bb[277]]=_0x53bb[188],0<_0x39abx4&&(_0x39abx9[_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[488]](_0x39abx4)+_0x53bb[168]),0<_0x39abx5&&8==document[_0x53bb[5]]&&(_0x39abx9[_0x53bb[124]][_0x53bb[1503]]=Math[_0x53bb[488]](_0x39abx5)+_0x53bb[168])):_0x39abx15&&(_0x39abx9[_0x53bb[124]][_0x53bb[117]]=_0x39abx4+_0x53bb[168],0<_0x39abx5&&(_0x39abx9[_0x53bb[124]][_0x53bb[1503]]=Math[_0x53bb[488]](_0x39abx5)+_0x53bb[168]));if(this[_0x53bb[1216]]&&0!=_0x39abx13){_0x39abx4=_0x39abx13*(Math[_0x53bb[424]]/180);_0x39abx13=parseFloat(parseFloat(Math[_0x53bb[426]](_0x39abx4))[_0x53bb[1293]](8));_0x39abx17=parseFloat(parseFloat(Math[_0x53bb[427]](-_0x39abx4))[_0x53bb[1293]](8));_0x39abx4%=2*Math[_0x53bb[424]];0>_0x39abx4&&(_0x39abx4+=2*Math[_0x53bb[424]]);_0x39abx4%=Math[_0x53bb[424]];_0x39abx4>Math[_0x53bb[424]]/2&&(_0x39abx4=Math[_0x53bb[424]]-_0x39abx4);_0x39abx12=Math[_0x53bb[426]](_0x39abx4);var _0x39abx1c=Math[_0x53bb[427]](_0x39abx4);8==document[_0x53bb[5]]&&(_0x39abx9[_0x53bb[124]][_0x53bb[495]]=_0x53bb[498],_0x39abxa[_0x53bb[124]][_0x53bb[495]]=_0x53bb[498],_0x39abx19[_0x53bb[124]][_0x53bb[495]]=_0x53bb[498]);_0x39abx9[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];document[_0x53bb[112]][_0x53bb[62]](_0x39abx9);_0x39abx4=_0x39abx9[_0x53bb[359]];_0x39abx19=_0x39abx9[_0x53bb[167]];if(mxClient[_0x53bb[496]]&&(_0x39abx16||_0x39abx15)&&_0x39abx19>_0x39abx5){_0x39abx19=_0x39abx5,_0x39abx9[_0x53bb[124]][_0x53bb[119]]=_0x39abx19+_0x53bb[168]};_0x39abx5=_0x39abx19;_0x39abx16=(_0x39abx5-_0x39abx5*_0x39abx12+_0x39abx4* -_0x39abx1c)/2-_0x39abx17*_0x39abx4*(_0x39abx1b+0.5)+_0x39abx13*_0x39abx5*(_0x39abx1a+0.5);_0x39abx15=(_0x39abx4-_0x39abx4*_0x39abx12+_0x39abx5* -_0x39abx1c)/2+_0x39abx13*_0x39abx4*(_0x39abx1b+0.5)+_0x39abx17*_0x39abx5*(_0x39abx1a+0.5);_0x53bb[1504]==_0x39abx14[_0x53bb[301]]&&_0x53bb[529]==this[_0x53bb[813]][_0x53bb[301]]?(_0x39abx1b=document[_0x53bb[55]](_0x53bb[485]),_0x39abx1b[_0x53bb[124]][_0x53bb[495]]=_0x53bb[498],_0x39abx1b[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492],_0x39abx1b[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]](_0x39abx2+(_0x39abx15-_0x39abx4/2)*_0x39abx18[_0x53bb[255]])+_0x53bb[168],_0x39abx1b[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]](_0x39abx3+(_0x39abx16-_0x39abx5/2)*_0x39abx18[_0x53bb[255]])+_0x53bb[168],_0x39abx14[_0x53bb[265]][_0x53bb[62]](_0x39abx1b),_0x39abx1b[_0x53bb[62]](_0x39abx14)):(_0x39abx18=8==document[_0x53bb[5]]?1:_0x39abx18[_0x53bb[255]],_0x39abx14[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]](_0x39abx2+(_0x39abx15-_0x39abx4/2)*_0x39abx18)+_0x53bb[168],_0x39abx14[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]](_0x39abx3+(_0x39abx16-_0x39abx5/2)*_0x39abx18)+_0x53bb[168]);_0x39abxa[_0x53bb[124]][_0x53bb[347]]=_0x53bb[1505]+_0x39abx13+_0x53bb[1506]+_0x39abx17+_0x53bb[1507]+-_0x39abx17+_0x53bb[1508]+_0x39abx13+_0x53bb[1509];_0x39abxa[_0x53bb[124]][_0x53bb[1028]]=this[_0x53bb[1459]];1>this[_0x53bb[724]][_0x53bb[1244]]&&(_0x39abxa[_0x53bb[124]][_0x53bb[347]]+=_0x53bb[459]+100*this[_0x53bb[724]][_0x53bb[1244]]+_0x53bb[460]);_0x39abx9[_0x53bb[124]][_0x53bb[187]]=_0x53bb[110];_0x39abxa[_0x53bb[62]](_0x39abx9)}else {8!=document[_0x53bb[5]]?(_0x39abx9[_0x53bb[124]][_0x53bb[123]]=_0x53bb[125],1>this[_0x53bb[724]][_0x53bb[1244]]&&(_0x39abx14[_0x53bb[124]][_0x53bb[347]]=_0x53bb[459]+100*this[_0x53bb[724]][_0x53bb[1244]]+_0x53bb[460]),_0x39abx18=_0x39abx9[_0x53bb[265]],_0x39abx9[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],document[_0x53bb[112]][_0x53bb[62]](_0x39abx9),_0x39abx4=_0x39abx9[_0x53bb[359]],_0x39abx19=_0x39abx9[_0x53bb[167]],mxClient[_0x53bb[496]]&&(_0x39abx16&&_0x39abx19>_0x39abx5)&&(_0x39abx19=_0x39abx5,_0x39abx9[_0x53bb[124]][_0x53bb[119]]=_0x39abx19+_0x53bb[168]),_0x39abx5=_0x39abx19,_0x39abx9[_0x53bb[124]][_0x53bb[187]]=_0x53bb[110],_0x39abx18[_0x53bb[62]](_0x39abx9),_0x39abx14[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]](_0x39abx2+_0x39abx4*_0x39abx1b*this[_0x53bb[724]][_0x53bb[255]])+_0x53bb[168],_0x39abx14[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]](_0x39abx3+_0x39abx5*_0x39abx1a*this[_0x53bb[724]][_0x53bb[255]])+_0x53bb[168]):(1>this[_0x53bb[724]][_0x53bb[1244]]&&(_0x39abx9[_0x53bb[124]][_0x53bb[347]]=_0x53bb[459]+100*this[_0x53bb[724]][_0x53bb[1244]]+_0x53bb[460]),_0x39abx19[_0x53bb[124]][_0x53bb[361]]=100*_0x39abx1b+_0x53bb[229],_0x39abx19[_0x53bb[124]][_0x53bb[125]]=100*_0x39abx1a+_0x53bb[229])}}else {this[_0x53bb[1436]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,mxUtils[_0x53bb[321]](_0x39abx9,!1),_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17)}}};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1436]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){_0x39abx5=this[_0x53bb[724]];_0x39abx2=(_0x39abx2+_0x39abx5[_0x53bb[1126]])*_0x39abx5[_0x53bb[255]];_0x39abx3=(_0x39abx3+_0x39abx5[_0x53bb[1125]])*_0x39abx5[_0x53bb[255]];_0x39abx4=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1487]);_0x39abx4[_0x53bb[124]][_0x53bb[117]]=_0x53bb[942];_0x39abx4[_0x53bb[124]][_0x53bb[119]]=_0x53bb[942];_0x39abx4[_0x53bb[1464]]=_0x53bb[308];_0x39abx15=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1469]);_0x39abx15[_0x53bb[352]]=_0x39abx5[_0x53bb[665]];_0x39abx15[_0x53bb[461]]=100*_0x39abx5[_0x53bb[1244]]+_0x53bb[229];_0x39abx4[_0x53bb[62]](_0x39abx15);_0x39abx15=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1510]);_0x39abx15[_0x53bb[1511]]=_0x53bb[128];_0x39abx15[_0x53bb[6]]=_0x53bb[1512]+this[_0x53bb[1239]](0)+_0x53bb[185]+this[_0x53bb[1239]](0)+_0x53bb[1513]+this[_0x53bb[1239]](1)+_0x53bb[185]+this[_0x53bb[1239]](0);_0x39abx4[_0x53bb[62]](_0x39abx15);_0x39abx15=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1514]);_0x39abx15[_0x53bb[124]][_0x53bb[103]]=_0x53bb[1515]+_0x39abxa;_0x39abx15[_0x53bb[124]][_0x53bb[611]]=_0x39abxa;_0x39abx15[_0x53bb[124]][_0x53bb[486]]=_0x39abx5[_0x53bb[486]];_0x39abx15[_0x53bb[1516]]=_0x39abx9;_0x39abx15[_0x53bb[747]]=_0x53bb[128];_0x39abxa=Math[_0x53bb[488]](_0x39abx5[_0x53bb[487]]*_0x39abx5[_0x53bb[255]]/this[_0x53bb[1460]]);_0x39abx15[_0x53bb[124]][_0x53bb[487]]=_0x39abxa+_0x53bb[168];(_0x39abx5[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]&&(_0x39abx15[_0x53bb[124]][_0x53bb[1452]]=_0x53bb[1447]);(_0x39abx5[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]&&(_0x39abx15[_0x53bb[124]][_0x53bb[666]]=_0x53bb[1449]);(_0x39abx5[_0x53bb[666]]&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]]&&(_0x39abx15[_0x53bb[124]][_0x53bb[354]]=_0x53bb[355]);_0x39abx9=_0x39abx9[_0x53bb[224]](_0x53bb[192]);_0x39abx5=_0x39abxa+(_0x39abx9[_0x53bb[67]]-1)*_0x39abxa*mxConstants[_0x53bb[490]];_0x39abxa=_0x39abx9=0;_0x39abx12==mxConstants[_0x53bb[482]]?_0x39abxa=-_0x39abx5/2:_0x39abx12!=mxConstants[_0x53bb[481]]&&(_0x39abxa=_0x39abx5/2);null!=_0x39abx17&&(_0x39abx4[_0x53bb[124]][_0x53bb[603]]=_0x39abx17,_0x39abx12=_0x39abx17*(Math[_0x53bb[424]]/180),_0x39abx9=Math[_0x53bb[427]](_0x39abx12)*_0x39abxa,_0x39abxa*=Math[_0x53bb[426]](_0x39abx12));_0x39abx4[_0x53bb[62]](_0x39abx15);_0x39abx4[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[1239]](_0x39abx2-_0x39abx9)+_0x53bb[168];_0x39abx4[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[1239]](_0x39abx3+_0x39abxa)+_0x53bb[168];this[_0x53bb[813]][_0x53bb[62]](_0x39abx4)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1336]]=function(){this[_0x53bb[1370]](!1,!0)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1334]]=function(){this[_0x53bb[1370]](!0,!1)};mxVmlCanvas2D[_0x53bb[202]][_0x53bb[1337]]=function(){this[_0x53bb[1370]](!0,!0)};function mxGuide(_0x39abx2,_0x39abx3){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[1517]](_0x39abx3)}mxGuide[_0x53bb[202]][_0x53bb[1179]]=null;mxGuide[_0x53bb[202]][_0x53bb[1214]]=null;mxGuide[_0x53bb[202]][_0x53bb[662]]= !0;mxGuide[_0x53bb[202]][_0x53bb[704]]= !0;mxGuide[_0x53bb[202]][_0x53bb[1518]]=null;mxGuide[_0x53bb[202]][_0x53bb[1519]]=null;mxGuide[_0x53bb[202]][_0x53bb[1517]]=function(_0x39abx2){this[_0x53bb[1214]]=_0x39abx2};mxGuide[_0x53bb[202]][_0x53bb[1019]]=function(_0x39abx2){return !0};mxGuide[_0x53bb[202]][_0x53bb[1520]]=function(){return this[_0x53bb[1179]][_0x53bb[1020]]*this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]]/2};mxGuide[_0x53bb[202]][_0x53bb[1521]]=function(_0x39abx2){_0x39abx2= new mxPolyline([],mxConstants.GUIDE_COLOR,mxConstants.GUIDE_STROKEWIDTH);_0x39abx2[_0x53bb[1522]]= !0;return _0x39abx2};mxGuide[_0x53bb[202]][_0x53bb[582]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=this[_0x53bb[1214]]&&(this[_0x53bb[662]]||this[_0x53bb[704]])&&null!=_0x39abx2&&null!=_0x39abx3){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]],_0x39abx9=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abxa=_0x39abx3[_0x53bb[235]],_0x39abx12=_0x39abx3[_0x53bb[236]],_0x39abx13=!1,_0x39abx14=!1,_0x39abx15=this[_0x53bb[1520]](),_0x39abx16=_0x39abx15,_0x39abx17=_0x39abx15,_0x39abx15=_0x39abx2[_0x53bb[238]]();_0x39abx15[_0x53bb[235]]+=_0x39abx3[_0x53bb[235]];_0x39abx15[_0x53bb[236]]+=_0x39abx3[_0x53bb[236]];var _0x39abx18=_0x39abx15[_0x53bb[235]],_0x39abx19=_0x39abx15[_0x53bb[235]]+_0x39abx15[_0x53bb[117]],_0x39abx1a=_0x39abx15[_0x53bb[241]](),_0x39abx1b=_0x39abx15[_0x53bb[236]],_0x39abx1c=_0x39abx15[_0x53bb[236]]+_0x39abx15[_0x53bb[119]],_0x39abx1d=_0x39abx15[_0x53bb[242]]();_0x39abx3=function(_0x39abx3){_0x39abx3+=this[_0x53bb[1179]][_0x53bb[1136]];var _0x39abx4=!1;Math[_0x53bb[425]](_0x39abx3-_0x39abx1a)<_0x39abx16?(_0x39abxa=_0x39abx3-_0x39abx2[_0x53bb[241]](),_0x39abx16=Math[_0x53bb[425]](_0x39abx3-_0x39abx1a),_0x39abx4= !0):Math[_0x53bb[425]](_0x39abx3-_0x39abx18)<_0x39abx16?(_0x39abxa=_0x39abx3-_0x39abx2[_0x53bb[235]],_0x39abx16=Math[_0x53bb[425]](_0x39abx3-_0x39abx18),_0x39abx4= !0):Math[_0x53bb[425]](_0x39abx3-_0x39abx19)<_0x39abx16&&(_0x39abxa=_0x39abx3-_0x39abx2[_0x53bb[235]]-_0x39abx2[_0x53bb[117]],_0x39abx16=Math[_0x53bb[425]](_0x39abx3-_0x39abx19),_0x39abx4= !0);if(_0x39abx4){null==this[_0x53bb[1518]]&&(this[_0x53bb[1518]]=this[_0x53bb[1521]](!0),this[_0x53bb[1518]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]],this[_0x53bb[1518]][_0x53bb[1229]]= !1,this[_0x53bb[1518]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()));var _0x39abx5=this[_0x53bb[1179]][_0x53bb[526]];_0x39abx3-=this[_0x53bb[1179]][_0x53bb[1136]];this[_0x53bb[1518]][_0x53bb[1525]]=[ new mxPoint(_0x39abx3,-this[_0x53bb[1179]][_0x53bb[1137]]), new mxPoint(_0x39abx3,_0x39abx5[_0x53bb[191]]-3-this[_0x53bb[1179]][_0x53bb[1137]])]};_0x39abx13=_0x39abx13||_0x39abx4};for(var _0x39abx15=function(_0x39abx3){_0x39abx3+=this[_0x53bb[1179]][_0x53bb[1137]];var _0x39abx4=!1;Math[_0x53bb[425]](_0x39abx3-_0x39abx1d)<_0x39abx17?(_0x39abx12=_0x39abx3-_0x39abx2[_0x53bb[242]](),_0x39abx17=Math[_0x53bb[425]](_0x39abx3-_0x39abx1d),_0x39abx4= !0):Math[_0x53bb[425]](_0x39abx3-_0x39abx1b)<_0x39abx17?(_0x39abx12=_0x39abx3-_0x39abx2[_0x53bb[236]],_0x39abx17=Math[_0x53bb[425]](_0x39abx3-_0x39abx1b),_0x39abx4= !0):Math[_0x53bb[425]](_0x39abx3-_0x39abx1c)<_0x39abx17&&(_0x39abx12=_0x39abx3-_0x39abx2[_0x53bb[236]]-_0x39abx2[_0x53bb[119]],_0x39abx17=Math[_0x53bb[425]](_0x39abx3-_0x39abx1c),_0x39abx4= !0);if(_0x39abx4){null==this[_0x53bb[1519]]&&(this[_0x53bb[1519]]=this[_0x53bb[1521]](!1),this[_0x53bb[1519]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]],this[_0x53bb[1519]][_0x53bb[1229]]= !1,this[_0x53bb[1519]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()));var _0x39abx5=this[_0x53bb[1179]][_0x53bb[526]];_0x39abx3-=this[_0x53bb[1179]][_0x53bb[1137]];this[_0x53bb[1519]][_0x53bb[1525]]=[ new mxPoint(-this[_0x53bb[1179]][_0x53bb[1136]],_0x39abx3), new mxPoint(_0x39abx5[_0x53bb[1526]]-3-this[_0x53bb[1179]][_0x53bb[1136]],_0x39abx3)]};_0x39abx14=_0x39abx14||_0x39abx4},_0x39abx1e=0;_0x39abx1e<this[_0x53bb[1214]][_0x53bb[67]];_0x39abx1e++){var _0x39abx1f=this[_0x53bb[1214]][_0x39abx1e];null!=_0x39abx1f&&(this[_0x53bb[662]]&&(_0x39abx3[_0x53bb[239]](this,_0x39abx1f[_0x53bb[241]]()),_0x39abx3[_0x53bb[239]](this,_0x39abx1f[_0x53bb[235]]),_0x39abx3[_0x53bb[239]](this,_0x39abx1f[_0x53bb[235]]+_0x39abx1f[_0x53bb[117]])),this[_0x53bb[704]]&&(_0x39abx15[_0x53bb[239]](this,_0x39abx1f[_0x53bb[242]]()),_0x39abx15[_0x53bb[239]](this,_0x39abx1f[_0x53bb[236]]),_0x39abx15[_0x53bb[239]](this,_0x39abx1f[_0x53bb[236]]+_0x39abx1f[_0x53bb[119]])))};!_0x39abx13&&null!=this[_0x53bb[1518]]?this[_0x53bb[1518]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]:null!=this[_0x53bb[1518]]&&(this[_0x53bb[1518]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189],this[_0x53bb[1518]][_0x53bb[258]]());!_0x39abx14&&null!=this[_0x53bb[1519]]?this[_0x53bb[1519]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]:null!=this[_0x53bb[1519]]&&(this[_0x53bb[1519]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189],this[_0x53bb[1519]][_0x53bb[258]]());_0x39abx4&&(_0x39abx13||(_0x39abx4=_0x39abx2[_0x53bb[235]]-(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[235]]/_0x39abx9-_0x39abx5[_0x53bb[235]])+_0x39abx5[_0x53bb[235]])*_0x39abx9,_0x39abxa=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abxa/_0x39abx9)*_0x39abx9-_0x39abx4),_0x39abx14||(_0x39abx5=_0x39abx2[_0x53bb[236]]-(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[236]]/_0x39abx9-_0x39abx5[_0x53bb[236]])+_0x39abx5[_0x53bb[236]])*_0x39abx9,_0x39abx12=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx12/_0x39abx9)*_0x39abx9-_0x39abx5));_0x39abx3= new mxPoint(_0x39abxa,_0x39abx12)};return _0x39abx3};mxGuide[_0x53bb[202]][_0x53bb[801]]=function(){null!=this[_0x53bb[1518]]&&(this[_0x53bb[1518]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]);null!=this[_0x53bb[1519]]&&(this[_0x53bb[1519]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188])};mxGuide[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[1518]]&&(this[_0x53bb[1518]][_0x53bb[515]](),this[_0x53bb[1518]]=null);null!=this[_0x53bb[1519]]&&(this[_0x53bb[1519]][_0x53bb[515]](),this[_0x53bb[1519]]=null)};function mxStencil(_0x39abx2){this[_0x53bb[1527]]=_0x39abx2;this[_0x53bb[1528]]();this[_0x53bb[1529]]()}mxStencil[_0x53bb[1530]]= !1;mxStencil[_0x53bb[202]][_0x53bb[1527]]=null;mxStencil[_0x53bb[202]][_0x53bb[1531]]=null;mxStencil[_0x53bb[202]][_0x53bb[1322]]=null;mxStencil[_0x53bb[202]][_0x53bb[1532]]=null;mxStencil[_0x53bb[202]][_0x53bb[1533]]=null;mxStencil[_0x53bb[202]][_0x53bb[1534]]=null;mxStencil[_0x53bb[202]][_0x53bb[1535]]=null;mxStencil[_0x53bb[202]][_0x53bb[1307]]=null;mxStencil[_0x53bb[202]][_0x53bb[1528]]=function(){this[_0x53bb[1535]]=this[_0x53bb[1527]][_0x53bb[64]](_0x53bb[1536])[0];this[_0x53bb[1534]]=this[_0x53bb[1527]][_0x53bb[64]](_0x53bb[1537])[0];this[_0x53bb[1532]]=Number(this[_0x53bb[1527]][_0x53bb[284]](_0x53bb[1302])||100);this[_0x53bb[1533]]=Number(this[_0x53bb[1527]][_0x53bb[284]](_0x53bb[1303])||100);var _0x39abx2=this[_0x53bb[1527]][_0x53bb[284]](_0x53bb[1322]);this[_0x53bb[1322]]=null!=_0x39abx2?_0x39abx2:_0x53bb[1538];_0x39abx2=this[_0x53bb[1527]][_0x53bb[284]](_0x53bb[1307]);this[_0x53bb[1307]]=null!=_0x39abx2?_0x39abx2:_0x53bb[500]};mxStencil[_0x53bb[202]][_0x53bb[1529]]=function(){var _0x39abx2=this[_0x53bb[1527]][_0x53bb[64]](_0x53bb[1539])[0];if(null!=_0x39abx2&&(_0x39abx2=mxUtils[_0x53bb[1540]](_0x39abx2),null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]])){this[_0x53bb[1531]]=[];for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){this[_0x53bb[1531]][_0x53bb[207]](this[_0x53bb[1541]](_0x39abx2[_0x39abx3]))}}};mxStencil[_0x53bb[202]][_0x53bb[1541]]=function(_0x39abx2){var _0x39abx3=Number(_0x39abx2[_0x53bb[284]](_0x53bb[235])),_0x39abx4=Number(_0x39abx2[_0x53bb[284]](_0x53bb[236]));_0x39abx2=_0x53bb[500]==_0x39abx2[_0x53bb[284]](_0x53bb[591]);return new mxConnectionConstraint( new mxPoint(_0x39abx3,_0x39abx4),_0x39abx2)};mxStencil[_0x53bb[202]][_0x53bb[1542]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=this[_0x53bb[1543]](_0x39abx2,_0x39abx3,_0x39abx4);_0x39abx2=_0x39abx2[_0x53bb[284]](_0x53bb[1544]);if(mxStencil[_0x53bb[1530]]&&null==_0x39abx2||_0x53bb[500]==_0x39abx2){_0x39abx3=mxResources[_0x53bb[203]](_0x39abx3)};return _0x39abx3};mxStencil[_0x53bb[202]][_0x53bb[1543]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=_0x39abx2[_0x53bb[284]](_0x39abx3);null==_0x39abx3&&(_0x39abx2=mxUtils[_0x53bb[329]](_0x39abx2),null!=_0x39abx2&&(_0x39abx2=mxUtils[_0x53bb[1545]](_0x39abx2),_0x53bb[279]== typeof _0x39abx2&&(_0x39abx3=_0x39abx2(_0x39abx4))));return _0x39abx3};mxStencil[_0x53bb[202]][_0x53bb[1546]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1547]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,this[_0x53bb[1534]],!1);this[_0x53bb[1547]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,this[_0x53bb[1535]],!0)};mxStencil[_0x53bb[202]][_0x53bb[1547]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){if(null!=_0x39abx12){var _0x39abx14=mxUtils[_0x53bb[433]](_0x39abx3[_0x53bb[124]],mxConstants.STYLE_DIRECTION,null);_0x39abx4=this[_0x53bb[1548]](_0x39abx3[_0x53bb[124]],_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx14);_0x39abx5=Math[_0x53bb[243]](_0x39abx4[_0x53bb[117]],_0x39abx4[_0x53bb[119]]);_0x39abx5=_0x53bb[1549]==this[_0x53bb[1307]]?Number(mxUtils[_0x53bb[1550]](_0x39abx3[_0x53bb[124]],mxConstants.STYLE_STROKEWIDTH,1)):Number(this[_0x53bb[1307]])*_0x39abx5;_0x39abx2[_0x53bb[1250]](_0x39abx5);for(_0x39abx12=_0x39abx12[_0x53bb[285]];null!=_0x39abx12;){_0x39abx12[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&this[_0x53bb[1551]](_0x39abx2,_0x39abx3,_0x39abx12,_0x39abx4,_0x39abx13),_0x39abx12=_0x39abx12[_0x53bb[287]]}}};mxStencil[_0x53bb[202]][_0x53bb[1548]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx2=_0x39abx3;_0x39abx3=_0x39abx5/this[_0x53bb[1532]];var _0x39abx12=_0x39abx9/this[_0x53bb[1533]];if(_0x39abxa=_0x53bb[700]==_0x39abxa||_0x53bb[701]==_0x39abxa){_0x39abx12=_0x39abx5/this[_0x53bb[1533]];_0x39abx3=_0x39abx9/this[_0x53bb[1532]];var _0x39abx13=(_0x39abx5-_0x39abx9)/2;_0x39abx2+=_0x39abx13;_0x39abx4-=_0x39abx13};_0x53bb[1552]==this[_0x53bb[1322]]&&(_0x39abx3=_0x39abx12=Math[_0x53bb[243]](_0x39abx3,_0x39abx12),_0x39abxa?(_0x39abx2+=(_0x39abx9-this[_0x53bb[1532]]*_0x39abx3)/2,_0x39abx4+=(_0x39abx5-this[_0x53bb[1533]]*_0x39abx12)/2):(_0x39abx2+=(_0x39abx5-this[_0x53bb[1532]]*_0x39abx3)/2,_0x39abx4+=(_0x39abx9-this[_0x53bb[1533]]*_0x39abx12)/2));return new mxRectangle(_0x39abx2,_0x39abx4,_0x39abx3,_0x39abx12)};mxStencil[_0x53bb[202]][_0x53bb[1551]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx4[_0x53bb[301]],_0x39abx12=_0x39abx5[_0x53bb[235]],_0x39abx13=_0x39abx5[_0x53bb[236]],_0x39abx14=_0x39abx5[_0x53bb[117]],_0x39abx15=_0x39abx5[_0x53bb[119]],_0x39abx16=Math[_0x53bb[243]](_0x39abx14,_0x39abx15);if(_0x53bb[815]==_0x39abxa){_0x39abx2[_0x53bb[815]]()}else {if(_0x53bb[1210]==_0x39abxa){_0x39abx2[_0x53bb[1210]]()}else {if(_0x53bb[1215]==_0x39abxa){_0x39abx2[_0x53bb[1275]]();for(_0x39abx4=_0x39abx4[_0x53bb[285]];null!=_0x39abx4;){_0x39abx4[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&this[_0x53bb[1551]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx4=_0x39abx4[_0x53bb[287]]}}else {if(_0x53bb[268]==_0x39abxa){_0x39abx2[_0x53bb[268]]()}else {if(_0x53bb[582]==_0x39abxa){_0x39abx2[_0x53bb[1276]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15)}else {if(_0x53bb[683]==_0x39abxa){_0x39abx2[_0x53bb[1277]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15)}else {if(_0x53bb[1323]==_0x39abxa){_0x39abx2[_0x53bb[1278]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1324]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1325]))*_0x39abx15,_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1326]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1327]))*_0x39abx15)}else {if(_0x53bb[1328]==_0x39abxa){_0x39abx2[_0x53bb[1279]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1324]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1325]))*_0x39abx15,_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1326]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1327]))*_0x39abx15,_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1329]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[1330]))*_0x39abx15)}else {if(_0x53bb[1553]==_0x39abxa){_0x39abx2[_0x53bb[1280]](Number(_0x39abx4[_0x53bb[284]](_0x53bb[1397]))*_0x39abx14,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1398]))*_0x39abx15,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1554])),Number(_0x39abx4[_0x53bb[284]](_0x53bb[1555])),Number(_0x39abx4[_0x53bb[284]](_0x53bb[1556])),_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15)}else {if(_0x53bb[1319]==_0x39abxa){_0x39abx2[_0x53bb[1319]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1302]))*_0x39abx14,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1303]))*_0x39abx15)}else {if(_0x53bb[1320]==_0x39abxa){_0x39abx3=_0x39abx4[_0x53bb[284]](_0x53bb[1492]),0==_0x39abx3&&(_0x39abx3=100*mxConstants[_0x53bb[1557]]),_0x39abx16=Number(_0x39abx4[_0x53bb[284]](_0x53bb[1302]))*_0x39abx14,_0x39abx5=Number(_0x39abx4[_0x53bb[284]](_0x53bb[1303]))*_0x39abx15,_0x39abx3=Number(_0x39abx3)/100,_0x39abx3=Math[_0x53bb[243]](_0x39abx16*_0x39abx3,_0x39abx5*_0x39abx3),_0x39abx2[_0x53bb[1320]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,_0x39abx16,_0x39abx5,_0x39abx3,_0x39abx3)}else {if(_0x53bb[680]==_0x39abxa){_0x39abx2[_0x53bb[680]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1302]))*_0x39abx14,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1303]))*_0x39abx15)}else {if(_0x53bb[618]==_0x39abxa){_0x39abx3=this[_0x53bb[1543]](_0x39abx4,_0x53bb[390],_0x39abx3),_0x39abx2[_0x53bb[618]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1302]))*_0x39abx14,Number(_0x39abx4[_0x53bb[284]](_0x53bb[1303]))*_0x39abx15,_0x39abx3,!1,_0x53bb[500]==_0x39abx4[_0x53bb[284]](_0x53bb[623]),_0x53bb[500]==_0x39abx4[_0x53bb[284]](_0x53bb[624]))}else {if(_0x53bb[963]==_0x39abxa){_0x39abx16=this[_0x53bb[1542]](_0x39abx4,_0x53bb[1332],_0x39abx3);_0x39abx5=_0x53bb[500]==_0x39abx4[_0x53bb[284]](_0x53bb[704])?-90:0;if(_0x53bb[468]==_0x39abx4[_0x53bb[284]](_0x53bb[1558])){var _0x39abx17=_0x39abx3[_0x53bb[603]],_0x39abx18=1==mxUtils[_0x53bb[433]](_0x39abx3[_0x53bb[124]],mxConstants.STYLE_FLIPH,0);_0x39abx3=1==mxUtils[_0x53bb[433]](_0x39abx3[_0x53bb[124]],mxConstants.STYLE_FLIPV,0);_0x39abx5=_0x39abx18&&_0x39abx3?_0x39abx5-_0x39abx17:_0x39abx18||_0x39abx3?_0x39abx5+_0x39abx17:_0x39abx5-_0x39abx17};_0x39abx5-=_0x39abx4[_0x53bb[284]](_0x53bb[603]);_0x39abx2[_0x53bb[963]](_0x39abx12+Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,0,0,_0x39abx16,_0x39abx4[_0x53bb[284]](_0x53bb[611])||_0x53bb[361],_0x39abx4[_0x53bb[284]](_0x53bb[552])||_0x53bb[125],!1,_0x53bb[110],!1,!1,_0x39abx5)}else {if(_0x53bb[1559]==_0x39abxa){_0x39abx17=mxStencilRegistry[_0x53bb[1560]](_0x39abx4[_0x53bb[284]](_0x53bb[298])),null!=_0x39abx17&&(_0x39abx12+=Number(_0x39abx4[_0x53bb[284]](_0x53bb[235]))*_0x39abx14,_0x39abx13+=Number(_0x39abx4[_0x53bb[284]](_0x53bb[236]))*_0x39abx15,_0x39abx16=Number(_0x39abx4[_0x53bb[284]](_0x53bb[1302]))*_0x39abx14,_0x39abx5=Number(_0x39abx4[_0x53bb[284]](_0x53bb[1303]))*_0x39abx15,_0x39abx17[_0x53bb[1546]](_0x39abx2,_0x39abx3,_0x39abx12,_0x39abx13,_0x39abx16,_0x39abx5))}else {if(_0x53bb[1338]==_0x39abxa){_0x39abx2[_0x53bb[1337]]()}else {if(_0x53bb[1334]==_0x39abxa){_0x39abx2[_0x53bb[1334]]()}else {if(_0x53bb[1336]==_0x39abxa){_0x39abx2[_0x53bb[1336]]()}else {if(_0x53bb[1307]==_0x39abxa){_0x39abx2[_0x53bb[1250]](Number(_0x39abx4[_0x53bb[284]](_0x53bb[117]))*_0x39abx16)}else {if(_0x53bb[648]==_0x39abxa){_0x39abx2[_0x53bb[1251]](_0x53bb[500]==_0x39abx4[_0x53bb[284]](_0x53bb[648]))}else {if(_0x53bb[1308]==_0x39abxa){if(_0x39abx4=_0x39abx4[_0x53bb[284]](_0x53bb[1309]),null!=_0x39abx4){_0x39abx4=_0x39abx4[_0x53bb[224]](_0x53bb[185]);_0x39abx14=[];for(_0x39abx15=0;_0x39abx15<_0x39abx4[_0x53bb[67]];_0x39abx15++){0<_0x39abx4[_0x39abx15][_0x53bb[67]]&&_0x39abx14[_0x53bb[207]](Number(_0x39abx4[_0x39abx15])*_0x39abx16)};_0x39abx4=_0x39abx14[_0x53bb[234]](_0x53bb[185]);_0x39abx2[_0x53bb[1252]](_0x39abx4)}}else {_0x53bb[1306]==_0x39abxa?_0x39abx2[_0x53bb[1249]](_0x39abx4[_0x53bb[284]](_0x53bb[352])):_0x53bb[1310]==_0x39abxa?_0x39abx2[_0x53bb[1253]](_0x39abx4[_0x53bb[284]](_0x53bb[1311])):_0x53bb[1312]==_0x39abxa?_0x39abx2[_0x53bb[1255]](_0x39abx4[_0x53bb[284]](_0x53bb[234])):_0x53bb[1313]==_0x39abxa?_0x39abx2[_0x53bb[1257]](Number(_0x39abx4[_0x53bb[284]](_0x53bb[1314]))):_0x53bb[1298]==_0x39abxa?_0x39abx2[_0x53bb[1245]](_0x39abx4[_0x53bb[284]](_0x53bb[352])):_0x53bb[1244]==_0x39abxa?_0x39abx2[_0x53bb[1243]](_0x39abx4[_0x53bb[284]](_0x53bb[1244])):_0x53bb[1315]==_0x39abxa?_0x39abx2[_0x53bb[1259]](_0x39abx4[_0x53bb[284]](_0x53bb[352])):_0x53bb[1318]==_0x39abxa?_0x39abx2[_0x53bb[1266]](_0x39abx4[_0x53bb[284]](_0x53bb[124])):_0x53bb[1287]==_0x39abxa?_0x39abx2[_0x53bb[1265]](_0x39abx4[_0x53bb[284]](_0x53bb[1288])):_0x53bb[1289]==_0x39abxa&&_0x39abx2[_0x53bb[1264]](Number(_0x39abx4[_0x53bb[284]](_0x53bb[803]))*_0x39abx16)}}}}}}}}}}}}}}}}}}}}};_0x39abx9&&(_0x53bb[1338]==_0x39abxa||_0x53bb[1334]==_0x39abxa||_0x53bb[1336]==_0x39abxa)&&_0x39abx2[_0x53bb[1267]](!1)};function mxShape(_0x39abx2){this[_0x53bb[1561]]=_0x39abx2;this[_0x53bb[1307]]=1;this[_0x53bb[603]]=0;this[_0x53bb[461]]=100;this[_0x53bb[624]]=this[_0x53bb[623]]= !1}mxShape[_0x53bb[202]][_0x53bb[507]]=null;mxShape[_0x53bb[202]][_0x53bb[255]]=1;mxShape[_0x53bb[202]][_0x53bb[1562]]=null;mxShape[_0x53bb[202]][_0x53bb[1525]]=null;mxShape[_0x53bb[202]][_0x53bb[252]]=null;mxShape[_0x53bb[202]][_0x53bb[124]]=null;mxShape[_0x53bb[202]][_0x53bb[124]]=null;mxShape[_0x53bb[202]][_0x53bb[1563]]=null;mxShape[_0x53bb[202]][_0x53bb[1561]]=null;mxShape[_0x53bb[202]][_0x53bb[1564]]=6;mxShape[_0x53bb[202]][_0x53bb[1229]]= !0;mxShape[_0x53bb[202]][_0x53bb[1565]]= !1;mxShape[_0x53bb[202]][_0x53bb[1460]]=1;mxShape[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2){null==this[_0x53bb[252]]&&(this[_0x53bb[252]]=this[_0x53bb[385]](_0x39abx2),null!=_0x39abx2&&_0x39abx2[_0x53bb[62]](this[_0x53bb[252]]))};mxShape[_0x53bb[202]][_0x53bb[1566]]=function(){return !0};mxShape[_0x53bb[202]][_0x53bb[1567]]=function(){return !1};mxShape[_0x53bb[202]][_0x53bb[1568]]=function(){return 1==mxUtils[_0x53bb[1454]](Math[_0x53bb[160]](1,Math[_0x53bb[488]](this[_0x53bb[1307]]*this[_0x53bb[255]])),2)?0.5:0};mxShape[_0x53bb[202]][_0x53bb[385]]=function(_0x39abx2){var _0x39abx3=null;return _0x39abx3=null!=_0x39abx2[_0x53bb[538]]?this[_0x53bb[1569]](_0x39abx2):8==document[_0x53bb[5]]||this[_0x53bb[507]]==mxConstants[_0x53bb[508]]||this[_0x53bb[507]]!=mxConstants[_0x53bb[1523]]&&this[_0x53bb[1567]]()?this[_0x53bb[1570]](_0x39abx2):this[_0x53bb[1571]](_0x39abx2)};mxShape[_0x53bb[202]][_0x53bb[1569]]=function(){return document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449])};mxShape[_0x53bb[202]][_0x53bb[1571]]=function(){var _0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1499]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1570]]=function(){var _0x39abx2=document[_0x53bb[55]](_0x53bb[485]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1572]]=function(){this[_0x53bb[258]]()};mxShape[_0x53bb[202]][_0x53bb[258]]=function(){this[_0x53bb[1573]]();this[_0x53bb[1574]]()?(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110],_0x53bb[529]==this[_0x53bb[252]][_0x53bb[301]]&&this[_0x53bb[1567]]()?this[_0x53bb[1575]]():this[_0x53bb[1576]](),this[_0x53bb[1577]]()):(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],this[_0x53bb[1563]]=null)};mxShape[_0x53bb[202]][_0x53bb[1573]]=function(){var _0x39abx2=this[_0x53bb[1525]];if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]&&null!=_0x39abx2[0]){this[_0x53bb[1562]]= new mxRectangle(Number(_0x39abx2[0][_0x53bb[235]]),Number(_0x39abx2[0][_0x53bb[236]]),1,1);for(var _0x39abx3=1;_0x39abx3<this[_0x53bb[1525]][_0x53bb[67]];_0x39abx3++){null!=_0x39abx2[_0x39abx3]&&this[_0x53bb[1562]][_0x53bb[99]]( new mxRectangle(Number(_0x39abx2[_0x39abx3][_0x53bb[235]]),Number(_0x39abx2[_0x39abx3][_0x53bb[236]]),1,1))}}};mxShape[_0x53bb[202]][_0x53bb[1574]]=function(){return null!=this[_0x53bb[1562]]&&!isNaN(this[_0x53bb[1562]][_0x53bb[235]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[236]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[117]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[119]])&&0<this[_0x53bb[1562]][_0x53bb[117]]&&0<this[_0x53bb[1562]][_0x53bb[119]]};mxShape[_0x53bb[202]][_0x53bb[1578]]=function(){var _0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1499]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx2[_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[252]][_0x53bb[124]][_0x53bb[117]];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[252]][_0x53bb[124]][_0x53bb[119]];return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1576]]=function(){var _0x39abx2=this[_0x53bb[1579]]();for(_0x39abx2[_0x53bb[1229]]=this[_0x53bb[1229]];this[_0x53bb[252]][_0x53bb[1580]]();){this[_0x53bb[252]][_0x53bb[266]](this[_0x53bb[252]][_0x53bb[1581]])};this[_0x53bb[1209]](_0x39abx2);this[_0x53bb[252]]!=_0x39abx2[_0x53bb[813]]&&this[_0x53bb[252]][_0x53bb[1583]](_0x53bb[1582],_0x39abx2[_0x53bb[813]][_0x53bb[342]]);_0x53bb[529]==this[_0x53bb[252]][_0x53bb[301]]&&8==document[_0x53bb[5]]&&(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[347]]=_0x53bb[110],(null==this[_0x53bb[1561]]||!this[_0x53bb[1565]])&&mxUtils[_0x53bb[1584]](this[_0x53bb[252]]));this[_0x53bb[1585]](_0x39abx2)};mxShape[_0x53bb[202]][_0x53bb[1579]]=function(){var _0x39abx2=null,_0x39abx3=null;if(null!=this[_0x53bb[252]][_0x53bb[538]]){_0x39abx2= new mxSvgCanvas2D(this[_0x53bb[252]],!1),_0x39abx2[_0x53bb[1345]]=this[_0x53bb[1564]],_0x39abx2[_0x53bb[1347]]=mxClient[_0x53bb[133]]&&!mxClient[_0x53bb[75]]&&!mxClient[_0x53bb[76]],_0x39abx3=this[_0x53bb[1568]](),0!=_0x39abx3?this[_0x53bb[252]][_0x53bb[57]](_0x53bb[535],_0x53bb[536]+_0x39abx3+_0x53bb[537]+_0x39abx3+_0x53bb[460]):this[_0x53bb[252]][_0x53bb[1390]](_0x53bb[535])}else {this[_0x53bb[1586]]();var _0x39abx4=Math[_0x53bb[160]](1,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[117]])),_0x39abx5=Math[_0x53bb[160]](1,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[119]])),_0x39abx3=8==document[_0x53bb[5]]&&this[_0x53bb[1566]]()?this[_0x53bb[1578]]():this[_0x53bb[252]],_0x39abx2= new mxVmlCanvas2D(_0x39abx3,!1);_0x53bb[110]!=_0x39abx3[_0x53bb[337]]&&(_0x39abx3[_0x53bb[1462]]=_0x39abx4*this[_0x53bb[1460]]+_0x53bb[537]+_0x39abx5*this[_0x53bb[1460]],_0x39abx2[_0x53bb[255]](this[_0x53bb[1460]]),_0x39abx2[_0x53bb[1460]]=this[_0x53bb[1460]]);_0x39abx3=this[_0x53bb[255]];_0x39abx2[_0x53bb[513]](-Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]]/_0x39abx3),-Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]]/_0x39abx3))};return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1586]]=function(){this[_0x53bb[252]][_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]])+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]])+_0x53bb[168];var _0x39abx2=Math[_0x53bb[160]](1,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[117]])),_0x39abx3=Math[_0x53bb[160]](1,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[119]]));this[_0x53bb[252]][_0x53bb[124]][_0x53bb[117]]=_0x39abx2+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[189]};mxShape[_0x53bb[202]][_0x53bb[1585]]=function(_0x39abx2){if(_0x39abx2 instanceof mxSvgCanvas2D){for(var _0x39abx3 in _0x39abx2[_0x53bb[1339]]){var _0x39abx4=_0x39abx2[_0x53bb[1339]][_0x39abx3];_0x39abx4[_0x53bb[1587]]=(_0x39abx4[_0x53bb[1587]]||0)+1};this[_0x53bb[1589]](this[_0x53bb[1588]]);this[_0x53bb[1588]]=_0x39abx2[_0x53bb[1339]]}};mxShape[_0x53bb[202]][_0x53bb[1209]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[255]],_0x39abx4=this[_0x53bb[1562]][_0x53bb[235]]/_0x39abx3,_0x39abx5=this[_0x53bb[1562]][_0x53bb[236]]/_0x39abx3,_0x39abx9=this[_0x53bb[1562]][_0x53bb[117]]/_0x39abx3,_0x39abxa=this[_0x53bb[1562]][_0x53bb[119]]/_0x39abx3;if(this[_0x53bb[1590]]()){var _0x39abx12=(_0x39abx9-_0x39abxa)/2,_0x39abx4=_0x39abx4+_0x39abx12,_0x39abx5=_0x39abx5-_0x39abx12,_0x39abx12=_0x39abx9,_0x39abx9=_0x39abxa,_0x39abxa=_0x39abx12};this[_0x53bb[1591]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa);this[_0x53bb[1592]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa);if(null!=this[_0x53bb[1561]]){this[_0x53bb[1593]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa)}else {if(_0x39abx2[_0x53bb[1250]](this[_0x53bb[1307]]),null!=this[_0x53bb[1525]]){_0x39abx4=[];for(_0x39abx5=0;_0x39abx5<this[_0x53bb[1525]][_0x53bb[67]];_0x39abx5++){_0x39abx4[_0x53bb[207]]( new mxPoint(this[_0x53bb[1525]][_0x39abx5][_0x53bb[235]]/_0x39abx3,this[_0x53bb[1525]][_0x39abx5][_0x53bb[236]]/_0x39abx3))};this[_0x53bb[1594]](_0x39abx2,_0x39abx4)}else {this[_0x53bb[1595]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa)}}};mxShape[_0x53bb[202]][_0x53bb[1592]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=null;null!=this[_0x53bb[124]]&&(_0x39abxa=this[_0x53bb[124]][_0x53bb[649]]);_0x39abx2[_0x53bb[1243]](this[_0x53bb[461]]/100);null!=this[_0x53bb[1596]]&&_0x39abx2[_0x53bb[1267]](this[_0x53bb[1596]]);null!=this[_0x53bb[1522]]&&_0x39abx2[_0x53bb[1251]](this[_0x53bb[1522]]);null!=_0x39abxa&&_0x39abx2[_0x53bb[1252]](_0x39abxa);null!=this[_0x53bb[1299]]?(_0x39abx3=this[_0x53bb[1597]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[1246]](this[_0x53bb[1334]],this[_0x53bb[1299]],_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]],this[_0x53bb[607]])):_0x39abx2[_0x53bb[1245]](this[_0x53bb[1334]]);_0x39abx2[_0x53bb[1249]](this[_0x53bb[1336]])};mxShape[_0x53bb[202]][_0x53bb[1597]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return new mxRectangle(_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)};mxShape[_0x53bb[202]][_0x53bb[1591]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[255]](this[_0x53bb[255]]);_0x39abx2[_0x53bb[1294]](this[_0x53bb[1598]](),this[_0x53bb[623]],this[_0x53bb[624]],_0x39abx3+_0x39abx5/2,_0x39abx4+_0x39abx9/2)};mxShape[_0x53bb[202]][_0x53bb[1593]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){this[_0x53bb[1565]]&&(this[_0x53bb[507]]==mxConstants[_0x53bb[508]]?this[_0x53bb[1599]](this[_0x53bb[252]],_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9):8!=document[_0x53bb[5]]&&this[_0x53bb[1600]](this[_0x53bb[252]]));this[_0x53bb[1561]][_0x53bb[1546]](_0x39abx2,this,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)};mxShape[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){this[_0x53bb[1601]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1267]](!1);this[_0x53bb[1602]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)};mxShape[_0x53bb[202]][_0x53bb[1601]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){};mxShape[_0x53bb[202]][_0x53bb[1602]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){};mxShape[_0x53bb[202]][_0x53bb[1594]]=function(_0x39abx2,_0x39abx3){};mxShape[_0x53bb[202]][_0x53bb[1603]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x53bb[1557]])/100;return Math[_0x53bb[243]](_0x39abx2*_0x39abx4,_0x39abx3*_0x39abx4)};mxShape[_0x53bb[202]][_0x53bb[1604]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=Math[_0x53bb[430]](this[_0x53bb[1307]]/2);_0x39abx2[_0x53bb[1246]](_0x53bb[1605],_0x53bb[1605],_0x39abx3,_0x39abx4,_0x39abx5,0.6*_0x39abx9,_0x53bb[701],0.9,0.1);_0x39abx2[_0x53bb[1275]]();_0x39abxa+=2*_0x39abx12;this[_0x53bb[1606]]?(_0x39abx2[_0x53bb[1276]](_0x39abx3-_0x39abx12+_0x39abxa,_0x39abx4-_0x39abx12),_0x39abx2[_0x53bb[1278]](_0x39abx3-_0x39abx12,_0x39abx4-_0x39abx12,_0x39abx3-_0x39abx12,_0x39abx4-_0x39abx12+_0x39abxa),_0x39abx2[_0x53bb[1277]](_0x39abx3-_0x39abx12,_0x39abx4+0.4*_0x39abx9),_0x39abx2[_0x53bb[1278]](_0x39abx3+0.5*_0x39abx5,_0x39abx4+0.7*_0x39abx9,_0x39abx3+_0x39abx5+_0x39abx12,_0x39abx4+0.4*_0x39abx9),_0x39abx2[_0x53bb[1277]](_0x39abx3+_0x39abx5+_0x39abx12,_0x39abx4-_0x39abx12+_0x39abxa),_0x39abx2[_0x53bb[1278]](_0x39abx3+_0x39abx5+_0x39abx12,_0x39abx4-_0x39abx12,_0x39abx3+_0x39abx5+_0x39abx12-_0x39abxa,_0x39abx4-_0x39abx12)):(_0x39abx2[_0x53bb[1276]](_0x39abx3-_0x39abx12,_0x39abx4-_0x39abx12),_0x39abx2[_0x53bb[1277]](_0x39abx3-_0x39abx12,_0x39abx4+0.4*_0x39abx9),_0x39abx2[_0x53bb[1278]](_0x39abx3+0.5*_0x39abx5,_0x39abx4+0.7*_0x39abx9,_0x39abx3+_0x39abx5+_0x39abx12,_0x39abx4+0.4*_0x39abx9),_0x39abx2[_0x53bb[1277]](_0x39abx3+_0x39abx5+_0x39abx12,_0x39abx4-_0x39abx12));_0x39abx2[_0x53bb[268]]();_0x39abx2[_0x53bb[1334]]()};mxShape[_0x53bb[202]][_0x53bb[183]]=function(_0x39abx2){this[_0x53bb[724]]=_0x39abx2;this[_0x53bb[124]]=_0x39abx2[_0x53bb[124]];if(null!=this[_0x53bb[124]]){this[_0x53bb[1334]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_FILLCOLOR,this[_0x53bb[1334]]);this[_0x53bb[1299]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_GRADIENTCOLOR,this[_0x53bb[1299]]);this[_0x53bb[607]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_GRADIENT_DIRECTION,this[_0x53bb[607]]);this[_0x53bb[461]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_OPACITY,this[_0x53bb[461]]);this[_0x53bb[1336]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_STROKECOLOR,this[_0x53bb[1336]]);this[_0x53bb[1307]]=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_STROKEWIDTH,this[_0x53bb[1307]]);this[_0x53bb[657]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_SPACING,this[_0x53bb[657]]);this[_0x53bb[644]]=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_STARTSIZE,this[_0x53bb[644]]);this[_0x53bb[643]]=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_ENDSIZE,this[_0x53bb[643]]);this[_0x53bb[642]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_STARTARROW,this[_0x53bb[642]]);this[_0x53bb[641]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ENDARROW,this[_0x53bb[641]]);this[_0x53bb[603]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ROTATION,this[_0x53bb[603]]);this[_0x53bb[663]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_DIRECTION,this[_0x53bb[663]]);this[_0x53bb[623]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_FLIPH,0);this[_0x53bb[624]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_FLIPV,0);null!=this[_0x53bb[1561]]&&(this[_0x53bb[623]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],_0x53bb[1607],0)||this[_0x53bb[623]],this[_0x53bb[624]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],_0x53bb[1608],0)||this[_0x53bb[624]]);if(_0x53bb[700]==this[_0x53bb[663]]||_0x53bb[701]==this[_0x53bb[663]]){_0x39abx2=this[_0x53bb[623]],this[_0x53bb[623]]=this[_0x53bb[624]],this[_0x53bb[624]]=_0x39abx2};this[_0x53bb[1596]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_SHADOW,this[_0x53bb[1596]]);this[_0x53bb[1522]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_DASHED,this[_0x53bb[1522]]);this[_0x53bb[1606]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ROUNDED,this[_0x53bb[1606]]);this[_0x53bb[617]]=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_GLASS,this[_0x53bb[617]]);_0x53bb[130]==this[_0x53bb[1334]]&&(this[_0x53bb[1334]]=null);_0x53bb[130]==this[_0x53bb[1299]]&&(this[_0x53bb[1299]]=null);_0x53bb[130]==this[_0x53bb[1336]]&&(this[_0x53bb[1336]]=null)}};mxShape[_0x53bb[202]][_0x53bb[1609]]=function(_0x39abx2){null==_0x39abx2&&(_0x39abx2=_0x53bb[110]);this[_0x53bb[270]]=_0x39abx2;null!=this[_0x53bb[252]]&&(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x39abx2)};mxShape[_0x53bb[202]][_0x53bb[1610]]=function(){return this[_0x53bb[270]]};mxShape[_0x53bb[202]][_0x53bb[1577]]=function(){if(null!=this[_0x53bb[1562]]){var _0x39abx2=this[_0x53bb[1611]]();if(null!=_0x39abx2){this[_0x53bb[1612]](_0x39abx2);var _0x39abx3=this[_0x53bb[1598]]();0!=_0x39abx3&&(_0x39abx2=mxUtils[_0x53bb[1613]](_0x39abx2,_0x39abx3));_0x39abx2[_0x53bb[235]]=Math[_0x53bb[519]](_0x39abx2[_0x53bb[235]]);_0x39abx2[_0x53bb[236]]=Math[_0x53bb[519]](_0x39abx2[_0x53bb[236]]);_0x39abx2[_0x53bb[117]]=Math[_0x53bb[430]](_0x39abx2[_0x53bb[117]]);_0x39abx2[_0x53bb[119]]=Math[_0x53bb[430]](_0x39abx2[_0x53bb[119]])};this[_0x53bb[1563]]=_0x39abx2}};mxShape[_0x53bb[202]][_0x53bb[1611]]=function(){var _0x39abx2=this[_0x53bb[1562]][_0x53bb[238]]();if(this[_0x53bb[1590]]()){var _0x39abx3=(_0x39abx2[_0x53bb[117]]-_0x39abx2[_0x53bb[119]])/2;_0x39abx2[_0x53bb[235]]+=_0x39abx3;_0x39abx2[_0x53bb[236]]-=_0x39abx3;_0x39abx3=_0x39abx2[_0x53bb[117]];_0x39abx2[_0x53bb[117]]=_0x39abx2[_0x53bb[119]];_0x39abx2[_0x53bb[119]]=_0x39abx3};return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1612]]=function(_0x39abx2){this[_0x53bb[1596]]&&(_0x39abx2[_0x53bb[117]]+=Math[_0x53bb[430]](mxConstants[_0x53bb[1237]]*this[_0x53bb[255]]),_0x39abx2[_0x53bb[119]]+=Math[_0x53bb[430]](mxConstants[_0x53bb[1238]]*this[_0x53bb[255]]));var _0x39abx3=Math[_0x53bb[430]](this[_0x53bb[1307]]*this[_0x53bb[255]]);_0x39abx2[_0x53bb[244]](Math[_0x53bb[430]](_0x39abx3/2))};mxShape[_0x53bb[202]][_0x53bb[1590]]=function(){return null==this[_0x53bb[1561]]&&(_0x53bb[700]==this[_0x53bb[663]]||_0x53bb[701]==this[_0x53bb[663]])};mxShape[_0x53bb[202]][_0x53bb[1614]]=function(){return null!=this[_0x53bb[603]]?this[_0x53bb[603]]:0};mxShape[_0x53bb[202]][_0x53bb[1615]]=function(){var _0x39abx2=this[_0x53bb[1614]]();1!=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_HORIZONTAL,1)&&(_0x39abx2+=mxText[_0x53bb[202]][_0x53bb[1616]]);return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1598]]=function(){var _0x39abx2=this[_0x53bb[1614]]();null!=this[_0x53bb[663]]&&(_0x53bb[700]==this[_0x53bb[663]]?_0x39abx2+=270:_0x53bb[703]==this[_0x53bb[663]]?_0x39abx2+=180:_0x53bb[701]==this[_0x53bb[663]]&&(_0x39abx2+=90));return _0x39abx2};mxShape[_0x53bb[202]][_0x53bb[1599]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[1319]);_0x39abx2[_0x53bb[57]](_0x53bb[235],_0x39abx3);_0x39abx2[_0x53bb[57]](_0x53bb[236],_0x39abx4);_0x39abx2[_0x53bb[57]](_0x53bb[117],_0x39abx5);_0x39abx2[_0x53bb[57]](_0x53bb[119],_0x39abx9);_0x39abx2[_0x53bb[57]](_0x53bb[1334],_0x53bb[130]);_0x39abx2[_0x53bb[57]](_0x53bb[1336],_0x53bb[130]);_0x39abx2[_0x53bb[57]](_0x53bb[1377],_0x53bb[1378]);this[_0x53bb[252]][_0x53bb[62]](_0x39abx2)};mxShape[_0x53bb[202]][_0x53bb[1600]]=function(_0x39abx2){_0x39abx2[_0x53bb[124]][_0x53bb[1617]]=_0x53bb[1618]+mxClient[_0x53bb[88]]+_0x53bb[1619]};mxShape[_0x53bb[202]][_0x53bb[1589]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3 in _0x39abx2){var _0x39abx4=_0x39abx2[_0x39abx3];_0x39abx4[_0x53bb[1587]]=(_0x39abx4[_0x53bb[1587]]||0)-1;0==_0x39abx4[_0x53bb[1587]]&&null!=_0x39abx4[_0x53bb[265]]&&_0x39abx4[_0x53bb[265]][_0x53bb[266]](_0x39abx4)}}};mxShape[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[252]]&&(mxEvent[_0x53bb[762]](this[_0x53bb[252]]),null!=this[_0x53bb[252]][_0x53bb[265]]&&this[_0x53bb[252]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[252]]),this[_0x53bb[252]]=null);this[_0x53bb[1589]](this[_0x53bb[1588]]);this[_0x53bb[1588]]=null};var mxStencilRegistry={stencils:[],addStencil:function(_0x39abx2,_0x39abx3){mxStencilRegistry[_0x53bb[1620]][_0x39abx2]=_0x39abx3},getStencil:function(_0x39abx2){return mxStencilRegistry[_0x53bb[1620]][_0x39abx2]}},mxMarker={markers:[],addMarker:function(_0x39abx2,_0x39abx3){mxMarker[_0x53bb[1621]][_0x39abx2]=_0x39abx3},createMarker:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15){var _0x39abx16=mxMarker[_0x53bb[1621]][_0x39abx4];return null!=_0x39abx16?_0x39abx16(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15):null}};(function(){function _0x39abx2(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){_0x39abx3=1.118*_0x39abx12*_0x39abx16;_0x39abx15=1.118*_0x39abx13*_0x39abx16;_0x39abx12*=_0x39abx14+_0x39abx16;_0x39abx13*=_0x39abx14+_0x39abx16;var _0x39abx18=_0x39abxa[_0x53bb[238]]();_0x39abx18[_0x53bb[235]]-=_0x39abx3;_0x39abx18[_0x53bb[236]]-=_0x39abx15;_0x39abx14=_0x39abx9!=mxConstants[_0x53bb[1622]]?1:0.75;_0x39abxa[_0x53bb[235]]+=-_0x39abx12*_0x39abx14-_0x39abx3;_0x39abxa[_0x53bb[236]]+=-_0x39abx13*_0x39abx14-_0x39abx15;return function(){_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx18[_0x53bb[235]],_0x39abx18[_0x53bb[236]]);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]-_0x39abx12-_0x39abx13/2,_0x39abx18[_0x53bb[236]]-_0x39abx13+_0x39abx12/2);_0x39abx9==mxConstants[_0x53bb[1622]]&&_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]-3*_0x39abx12/4,_0x39abx18[_0x53bb[236]]-3*_0x39abx13/4);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]+_0x39abx13/2-_0x39abx12,_0x39abx18[_0x53bb[236]]-_0x39abx13-_0x39abx12/2);_0x39abx2[_0x53bb[268]]();_0x39abx17?_0x39abx2[_0x53bb[1337]]():_0x39abx2[_0x53bb[1336]]()}}function _0x39abx3(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){_0x39abx15=_0x39abx9==mxConstants[_0x53bb[1623]]?0.7071:0.9862;_0x39abx3=_0x39abx12*_0x39abx16*_0x39abx15;_0x39abx15*=_0x39abx13*_0x39abx16;_0x39abx12*=_0x39abx14+_0x39abx16;_0x39abx13*=_0x39abx14+_0x39abx16;var _0x39abx18=_0x39abxa[_0x53bb[238]]();_0x39abx18[_0x53bb[235]]-=_0x39abx3;_0x39abx18[_0x53bb[236]]-=_0x39abx15;_0x39abxa[_0x53bb[235]]+=-_0x39abx12-_0x39abx3;_0x39abxa[_0x53bb[236]]+=-_0x39abx13-_0x39abx15;var _0x39abx19=_0x39abx9==mxConstants[_0x53bb[1623]]?2:3.4;return function(){_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx18[_0x53bb[235]],_0x39abx18[_0x53bb[236]]);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]-_0x39abx12/2-_0x39abx13/_0x39abx19,_0x39abx18[_0x53bb[236]]+_0x39abx12/_0x39abx19-_0x39abx13/2);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]-_0x39abx12,_0x39abx18[_0x53bb[236]]-_0x39abx13);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]-_0x39abx12/2+_0x39abx13/_0x39abx19,_0x39abx18[_0x53bb[236]]-_0x39abx13/2-_0x39abx12/_0x39abx19);_0x39abx2[_0x53bb[268]]();_0x39abx17?_0x39abx2[_0x53bb[1337]]():_0x39abx2[_0x53bb[1336]]()}}mxMarker[_0x53bb[1624]](_0x53bb[693],_0x39abx2);mxMarker[_0x53bb[1624]](_0x53bb[694],_0x39abx2);mxMarker[_0x53bb[1624]](_0x53bb[392],function(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){_0x39abx3=1.118*_0x39abx12*_0x39abx16;_0x39abx9=1.118*_0x39abx13*_0x39abx16;_0x39abx12*=_0x39abx14+_0x39abx16;_0x39abx13*=_0x39abx14+_0x39abx16;var _0x39abx18=_0x39abxa[_0x53bb[238]]();_0x39abx18[_0x53bb[235]]-=_0x39abx3;_0x39abx18[_0x53bb[236]]-=_0x39abx9;_0x39abxa[_0x53bb[235]]+=2* -_0x39abx3;_0x39abxa[_0x53bb[236]]+=2* -_0x39abx9;return function(){_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx18[_0x53bb[235]]-_0x39abx12-_0x39abx13/2,_0x39abx18[_0x53bb[236]]-_0x39abx13+_0x39abx12/2);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]],_0x39abx18[_0x53bb[236]]);_0x39abx2[_0x53bb[1277]](_0x39abx18[_0x53bb[235]]+_0x39abx13/2-_0x39abx12,_0x39abx18[_0x53bb[236]]-_0x39abx13-_0x39abx12/2);_0x39abx2[_0x53bb[1336]]()}});mxMarker[_0x53bb[1624]](_0x53bb[695],function(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17){var _0x39abx18=_0x39abx14/2,_0x39abx19=_0x39abxa[_0x53bb[238]]();_0x39abxa[_0x53bb[235]]-=_0x39abx12*_0x39abx18;_0x39abxa[_0x53bb[236]]-=_0x39abx13*_0x39abx18;return function(){_0x39abx2[_0x53bb[680]](_0x39abx19[_0x53bb[235]]-_0x39abx18,_0x39abx19[_0x53bb[236]]-_0x39abx18,_0x39abx14,_0x39abx14);_0x39abx17?_0x39abx2[_0x53bb[1337]]():_0x39abx2[_0x53bb[1336]]()}});mxMarker[_0x53bb[1624]](_0x53bb[696],_0x39abx3);mxMarker[_0x53bb[1624]](_0x53bb[697],_0x39abx3)})();function mxActor(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxActor,mxShape);mxActor[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[513]](_0x39abx3,_0x39abx4);_0x39abx2[_0x53bb[1275]]();this[_0x53bb[1625]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1337]]()};mxActor[_0x53bb[202]][_0x53bb[1625]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx3=_0x39abx5/3;_0x39abx2[_0x53bb[1276]](0,_0x39abx9);_0x39abx2[_0x53bb[1279]](0,3*_0x39abx9/5,0,2*_0x39abx9/5,_0x39abx5/2,2*_0x39abx9/5);_0x39abx2[_0x53bb[1279]](_0x39abx5/2-_0x39abx3,2*_0x39abx9/5,_0x39abx5/2-_0x39abx3,0,_0x39abx5/2,0);_0x39abx2[_0x53bb[1279]](_0x39abx5/2+_0x39abx3,0,_0x39abx5/2+_0x39abx3,2*_0x39abx9/5,_0x39abx5/2,2*_0x39abx9/5);_0x39abx2[_0x53bb[1279]](_0x39abx5,2*_0x39abx9/5,_0x39abx5,3*_0x39abx9/5,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[268]]()};function mxCloud(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxActor[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxCloud,mxActor);mxCloud[_0x53bb[202]][_0x53bb[1625]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[1276]](0.25*_0x39abx5,0.25*_0x39abx9);_0x39abx2[_0x53bb[1279]](0.05*_0x39abx5,0.25*_0x39abx9,0,0.5*_0x39abx9,0.16*_0x39abx5,0.55*_0x39abx9);_0x39abx2[_0x53bb[1279]](0,0.66*_0x39abx9,0.18*_0x39abx5,0.9*_0x39abx9,0.31*_0x39abx5,0.8*_0x39abx9);_0x39abx2[_0x53bb[1279]](0.4*_0x39abx5,_0x39abx9,0.7*_0x39abx5,_0x39abx9,0.8*_0x39abx5,0.8*_0x39abx9);_0x39abx2[_0x53bb[1279]](_0x39abx5,0.8*_0x39abx9,_0x39abx5,0.6*_0x39abx9,0.875*_0x39abx5,0.5*_0x39abx9);_0x39abx2[_0x53bb[1279]](_0x39abx5,0.3*_0x39abx9,0.8*_0x39abx5,0.1*_0x39abx9,0.625*_0x39abx5,0.2*_0x39abx9);_0x39abx2[_0x53bb[1279]](0.5*_0x39abx5,0.05*_0x39abx9,0.3*_0x39abx5,0.05*_0x39abx9,0.25*_0x39abx5,0.25*_0x39abx9);_0x39abx2[_0x53bb[268]]()};function mxRectangleShape(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxRectangleShape,mxShape);mxRectangleShape[_0x53bb[202]][_0x53bb[1567]]=function(){return !this[_0x53bb[1606]]&&!this[_0x53bb[617]]&&0==this[_0x53bb[603]]};mxRectangleShape[_0x53bb[202]][_0x53bb[1601]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(this[_0x53bb[1606]]){var _0x39abxa=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x53bb[1557]])/100,_0x39abxa=Math[_0x53bb[243]](_0x39abx5*_0x39abxa,_0x39abx9*_0x39abxa);_0x39abx2[_0x53bb[1320]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abxa)}else {_0x39abx2[_0x53bb[1319]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)};_0x39abx2[_0x53bb[1337]]()};mxRectangleShape[_0x53bb[202]][_0x53bb[1602]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){this[_0x53bb[617]]&&this[_0x53bb[1604]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,this[_0x53bb[1603]](_0x39abx5+this[_0x53bb[1307]],_0x39abx9+this[_0x53bb[1307]]))};mxRectangleShape[_0x53bb[202]][_0x53bb[1575]]=function(){this[_0x53bb[1626]](this[_0x53bb[252]]);this[_0x53bb[1627]](this[_0x53bb[252]]);this[_0x53bb[1628]](this[_0x53bb[252]])};mxRectangleShape[_0x53bb[202]][_0x53bb[1626]]=function(_0x39abx2){var _0x39abx3=9<=document[_0x53bb[5]]?0:Math[_0x53bb[430]](this[_0x53bb[1307]]*this[_0x53bb[255]]);_0x39abx2[_0x53bb[124]][_0x53bb[1629]]=Math[_0x53bb[160]](1,_0x39abx3)+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[277]]=_0x53bb[188];_0x39abx2[_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]]-_0x39abx3/2)+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]]-_0x39abx3/2)+_0x53bb[168];_0x53bb[462]==document[_0x53bb[135]]&&(_0x39abx3= -_0x39abx3);_0x39abx2[_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[488]](Math[_0x53bb[160]](0,this[_0x53bb[1562]][_0x53bb[117]]+_0x39abx3))+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[488]](Math[_0x53bb[160]](0,this[_0x53bb[1562]][_0x53bb[119]]+_0x39abx3))+_0x53bb[168]};mxRectangleShape[_0x53bb[202]][_0x53bb[1628]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1336]];null!=_0x39abx3&&_0x39abx3!=mxConstants[_0x53bb[217]]?(_0x39abx2[_0x53bb[124]][_0x53bb[1630]]=_0x39abx3,this[_0x53bb[1522]]?_0x39abx2[_0x53bb[124]][_0x53bb[465]]=_0x53bb[648]:0<this[_0x53bb[1307]]&&(_0x39abx2[_0x53bb[124]][_0x53bb[465]]=_0x53bb[1631]),_0x39abx2[_0x53bb[124]][_0x53bb[1629]]=Math[_0x53bb[160]](1,Math[_0x53bb[430]](this[_0x53bb[1307]]*this[_0x53bb[255]]))+_0x53bb[168]):_0x39abx2[_0x53bb[124]][_0x53bb[1629]]=_0x53bb[946];_0x39abx3=this[_0x53bb[1334]];null!=_0x39abx3&&_0x39abx3!=mxConstants[_0x53bb[217]]?(_0x39abx2[_0x53bb[124]][_0x53bb[1028]]=_0x39abx3,_0x39abx2[_0x53bb[124]][_0x53bb[1617]]=_0x53bb[130]):this[_0x53bb[1229]]?_0x39abx2[_0x53bb[124]][_0x53bb[1028]]=_0x53bb[1373]:8==document[_0x53bb[5]]?mxUtils[_0x53bb[1584]](_0x39abx2):this[_0x53bb[1600]](_0x39abx2)};mxRectangleShape[_0x53bb[202]][_0x53bb[1627]]=function(_0x39abx2){var _0x39abx3=_0x53bb[110];100>this[_0x53bb[461]]&&(_0x39abx3+=_0x53bb[459]+this[_0x53bb[461]]+_0x53bb[460]);this[_0x53bb[1596]]&&(_0x39abx3+=_0x53bb[1632]+Math[_0x53bb[488]](mxConstants[_0x53bb[1237]]*this[_0x53bb[255]])+_0x53bb[1633]+Math[_0x53bb[488]](mxConstants[_0x53bb[1238]]*this[_0x53bb[255]])+_0x53bb[1634]+mxConstants[_0x53bb[1235]]+_0x53bb[1635]);if(this[_0x53bb[1299]]){var _0x39abx4=this[_0x53bb[1334]],_0x39abx5=this[_0x53bb[1299]],_0x39abx9=_0x53bb[468],_0x39abxa={east:0,south:1,west:2,north:3},_0x39abx12=null!=this[_0x53bb[663]]?_0x39abxa[this[_0x53bb[663]]]:0;null!=this[_0x53bb[607]]&&(_0x39abx12=mxUtils[_0x53bb[1454]](_0x39abx12+_0x39abxa[this[_0x53bb[607]]]-1,4));1==_0x39abx12?(_0x39abx9=_0x53bb[500],_0x39abxa=_0x39abx4,_0x39abx4=_0x39abx5,_0x39abx5=_0x39abxa):2==_0x39abx12?(_0x39abxa=_0x39abx4,_0x39abx4=_0x39abx5,_0x39abx5=_0x39abxa):3==_0x39abx12&&(_0x39abx9=_0x53bb[500]);_0x39abx3+=_0x53bb[1636]+_0x39abx4+_0x53bb[1637]+_0x39abx5+_0x53bb[1638]+_0x39abx9+_0x53bb[1635]};_0x39abx2[_0x53bb[124]][_0x53bb[347]]=_0x39abx3};function mxEllipse(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxEllipse,mxShape);mxEllipse[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[680]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1337]]()};function mxDoubleEllipse(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxDoubleEllipse,mxShape);mxDoubleEllipse[_0x53bb[202]][_0x53bb[1460]]=10;mxDoubleEllipse[_0x53bb[202]][_0x53bb[1601]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[680]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1337]]()};mxDoubleEllipse[_0x53bb[202]][_0x53bb[1602]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=Math[_0x53bb[243]](4,Math[_0x53bb[243]](_0x39abx5/5,_0x39abx9/5));_0x39abx5-=2*_0x39abxa;_0x39abx9-=2*_0x39abxa;0<_0x39abx5&&0<_0x39abx9&&_0x39abx2[_0x53bb[680]](_0x39abx3+_0x39abxa,_0x39abx4+_0x39abxa,_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1336]]()};function mxRhombus(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxRhombus,mxShape);mxRhombus[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx5/2,_0x39abx12=_0x39abx9/2;_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx3+_0x39abxa,_0x39abx4);_0x39abx2[_0x53bb[1277]](_0x39abx3+_0x39abx5,_0x39abx4+_0x39abx12);_0x39abx2[_0x53bb[1277]](_0x39abx3+_0x39abxa,_0x39abx4+_0x39abx9);_0x39abx2[_0x53bb[1277]](_0x39abx3,_0x39abx4+_0x39abx12);_0x39abx2[_0x53bb[268]]();_0x39abx2[_0x53bb[1337]]()};function mxPolyline(_0x39abx2,_0x39abx3,_0x39abx4){mxShape[_0x53bb[239]](this);this[_0x53bb[1525]]=_0x39abx2;this[_0x53bb[1336]]=_0x39abx3;this[_0x53bb[1307]]=null!=_0x39abx4?_0x39abx4:1}mxUtils[_0x53bb[1284]](mxPolyline,mxShape);mxPolyline[_0x53bb[202]][_0x53bb[1614]]=function(){return 0};mxPolyline[_0x53bb[202]][_0x53bb[1594]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1639]](_0x39abx2,_0x39abx3,this[_0x53bb[1606]])};mxPolyline[_0x53bb[202]][_0x53bb[1639]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,_0x39abx9=_0x39abx3[0],_0x39abxa=_0x39abx3[_0x39abx3[_0x53bb[67]]-1];_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]]);for(var _0x39abx12=1;_0x39abx12<_0x39abx3[_0x53bb[67]]-1;_0x39abx12++){var _0x39abx13=_0x39abx3[_0x39abx12],_0x39abx14=_0x39abx9[_0x53bb[235]]-_0x39abx13[_0x53bb[235]],_0x39abx9=_0x39abx9[_0x53bb[236]]-_0x39abx13[_0x53bb[236]];if(_0x39abx4&&_0x39abx12<_0x39abx3[_0x53bb[67]]-1&&(0!=_0x39abx14||0!=_0x39abx9)){var _0x39abx15=Math[_0x53bb[428]](_0x39abx14*_0x39abx14+_0x39abx9*_0x39abx9),_0x39abx14=_0x39abx14*Math[_0x53bb[243]](_0x39abx5,_0x39abx15/2)/_0x39abx15,_0x39abx9=_0x39abx9*Math[_0x53bb[243]](_0x39abx5,_0x39abx15/2)/_0x39abx15;_0x39abx2[_0x53bb[1277]](_0x39abx13[_0x53bb[235]]+_0x39abx14,_0x39abx13[_0x53bb[236]]+_0x39abx9);_0x39abx9=_0x39abx3[_0x39abx12+1];_0x39abx14=_0x39abx9[_0x53bb[235]]-_0x39abx13[_0x53bb[235]];_0x39abx9=_0x39abx9[_0x53bb[236]]-_0x39abx13[_0x53bb[236]];_0x39abx15=Math[_0x53bb[160]](1,Math[_0x53bb[428]](_0x39abx14*_0x39abx14+_0x39abx9*_0x39abx9));_0x39abx14=_0x39abx14*Math[_0x53bb[243]](_0x39abx5,_0x39abx15/2)/_0x39abx15;_0x39abx9=_0x39abx9*Math[_0x53bb[243]](_0x39abx5,_0x39abx15/2)/_0x39abx15;_0x39abx14=_0x39abx13[_0x53bb[235]]+_0x39abx14;_0x39abx9=_0x39abx13[_0x53bb[236]]+_0x39abx9;_0x39abx2[_0x53bb[1278]](_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx14,_0x39abx9);_0x39abx13= new mxPoint(_0x39abx14,_0x39abx9)}else {_0x39abx2[_0x53bb[1277]](_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]])};_0x39abx9=_0x39abx13};_0x39abx2[_0x53bb[1277]](_0x39abxa[_0x53bb[235]],_0x39abxa[_0x53bb[236]]);_0x39abx2[_0x53bb[1336]]()};function mxArrow(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){mxShape[_0x53bb[239]](this);this[_0x53bb[1525]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1;this[_0x53bb[1640]]=null!=_0x39abx9?_0x39abx9:mxConstants[_0x53bb[1641]];this[_0x53bb[657]]=null!=_0x39abxa?_0x39abxa:mxConstants[_0x53bb[1642]];this[_0x53bb[643]]=null!=_0x39abx12?_0x39abx12:mxConstants[_0x53bb[1643]]}mxUtils[_0x53bb[1284]](mxArrow,mxShape);mxArrow[_0x53bb[202]][_0x53bb[1594]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxConstants[_0x53bb[1642]],_0x39abx5=mxConstants[_0x53bb[1641]],_0x39abx9=mxConstants[_0x53bb[1643]],_0x39abxa=_0x39abx3[0],_0x39abx12=_0x39abx3[_0x39abx3[_0x53bb[67]]-1],_0x39abx13=_0x39abx12[_0x53bb[235]]-_0x39abxa[_0x53bb[235]],_0x39abx14=_0x39abx12[_0x53bb[236]]-_0x39abxa[_0x53bb[236]],_0x39abx15=Math[_0x53bb[428]](_0x39abx13*_0x39abx13+_0x39abx14*_0x39abx14),_0x39abx16=_0x39abx15-2*_0x39abx4-_0x39abx9,_0x39abx13=_0x39abx13/_0x39abx15,_0x39abx14=_0x39abx14/_0x39abx15,_0x39abx15=_0x39abx5*_0x39abx14/3,_0x39abx5=-_0x39abx5*_0x39abx13/3,_0x39abx9=_0x39abxa[_0x53bb[235]]-_0x39abx15/2+_0x39abx4*_0x39abx13,_0x39abxa=_0x39abxa[_0x53bb[236]]-_0x39abx5/2+_0x39abx4*_0x39abx14,_0x39abx17=_0x39abx9+_0x39abx15,_0x39abx18=_0x39abxa+_0x39abx5,_0x39abx19=_0x39abx17+_0x39abx16*_0x39abx13,_0x39abx16=_0x39abx18+_0x39abx16*_0x39abx14,_0x39abx1a=_0x39abx19+_0x39abx15,_0x39abx1b=_0x39abx16+_0x39abx5,_0x39abx1c=_0x39abx1a-3*_0x39abx15,_0x39abx1d=_0x39abx1b-3*_0x39abx5;_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx9,_0x39abxa);_0x39abx2[_0x53bb[1277]](_0x39abx17,_0x39abx18);_0x39abx2[_0x53bb[1277]](_0x39abx19,_0x39abx16);_0x39abx2[_0x53bb[1277]](_0x39abx1a,_0x39abx1b);_0x39abx2[_0x53bb[1277]](_0x39abx12[_0x53bb[235]]-_0x39abx4*_0x39abx13,_0x39abx12[_0x53bb[236]]-_0x39abx4*_0x39abx14);_0x39abx2[_0x53bb[1277]](_0x39abx1c,_0x39abx1d);_0x39abx2[_0x53bb[1277]](_0x39abx1c+_0x39abx15,_0x39abx1d+_0x39abx5);_0x39abx2[_0x53bb[268]]();_0x39abx2[_0x53bb[1337]]()};function mxText(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15,_0x39abx16,_0x39abx17,_0x39abx18,_0x39abx19,_0x39abx1a,_0x39abx1b,_0x39abx1c,_0x39abx1d,_0x39abx1e,_0x39abx1f){mxShape[_0x53bb[239]](this);this[_0x53bb[131]]=_0x39abx2;this[_0x53bb[1562]]=_0x39abx3;this[_0x53bb[352]]=null!=_0x39abx9?_0x39abx9:_0x53bb[586];this[_0x53bb[611]]=null!=_0x39abx4?_0x39abx4:_0x53bb[110];this[_0x53bb[552]]=null!=_0x39abx5?_0x39abx5:_0x53bb[110];this[_0x53bb[1288]]=null!=_0x39abxa?_0x39abxa:mxConstants[_0x53bb[484]];this[_0x53bb[803]]=null!=_0x39abx12?_0x39abx12:mxConstants[_0x53bb[483]];this[_0x53bb[666]]=null!=_0x39abx13?_0x39abx13:mxConstants[_0x53bb[1644]];this[_0x53bb[657]]=parseInt(_0x39abx14||2);this[_0x53bb[658]]=this[_0x53bb[657]]+parseInt(_0x39abx15||0);this[_0x53bb[661]]=this[_0x53bb[657]]+parseInt(_0x39abx16||0);this[_0x53bb[660]]=this[_0x53bb[657]]+parseInt(_0x39abx17||0);this[_0x53bb[659]]=this[_0x53bb[657]]+parseInt(_0x39abx18||0);this[_0x53bb[662]]=null!=_0x39abx19?_0x39abx19:!0;this[_0x53bb[1537]]=_0x39abx1a;this[_0x53bb[467]]=_0x39abx1b;this[_0x53bb[1333]]=null!=_0x39abx1c?_0x39abx1c:!1;this[_0x53bb[1645]]=null!=_0x39abx1d?_0x39abx1d:!1;this[_0x53bb[277]]=null!=_0x39abx1e?_0x39abx1e:_0x53bb[189];this[_0x53bb[629]]=null!=_0x39abx1f?_0x39abx1f:0;this[_0x53bb[603]]=0}mxUtils[_0x53bb[1284]](mxText,mxShape);mxText[_0x53bb[202]][_0x53bb[1646]]=0;mxText[_0x53bb[202]][_0x53bb[1647]]=0;mxText[_0x53bb[202]][_0x53bb[1648]]=0;mxText[_0x53bb[202]][_0x53bb[1649]]=0;mxText[_0x53bb[202]][_0x53bb[1650]]= !0;mxText[_0x53bb[202]][_0x53bb[1616]]= -90;mxText[_0x53bb[202]][_0x53bb[1651]]= !0;mxText[_0x53bb[202]][_0x53bb[1652]]= !1;mxText[_0x53bb[202]][_0x53bb[1566]]=function(){return !1};mxText[_0x53bb[202]][_0x53bb[1567]]=function(){return 8!=document[_0x53bb[5]]};mxText[_0x53bb[202]][_0x53bb[1568]]=function(){return 0};mxText[_0x53bb[202]][_0x53bb[1574]]=function(){return null!=this[_0x53bb[1562]]&&!isNaN(this[_0x53bb[1562]][_0x53bb[235]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[236]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[117]])&&!isNaN(this[_0x53bb[1562]][_0x53bb[119]])};mxText[_0x53bb[202]][_0x53bb[1577]]=function(){var _0x39abx2=this[_0x53bb[252]];8==document[_0x53bb[5]]&&null!=_0x39abx2[_0x53bb[285]]&&(_0x39abx2=_0x39abx2[_0x53bb[285]],null!=_0x39abx2[_0x53bb[285]]&&(_0x39abx2=_0x39abx2[_0x53bb[285]]));this[_0x53bb[1563]]=this[_0x53bb[1562]][_0x53bb[238]]();var _0x39abx3=this[_0x53bb[1615]]();if(!this[_0x53bb[1652]]&&null!=_0x39abx2&&_0x53bb[1334]!=this[_0x53bb[277]]&&(!this[_0x53bb[1645]]||!this[_0x53bb[1651]])){var _0x39abx4=null,_0x39abx5=null;if(null!=_0x39abx2[_0x53bb[538]]){if(null!=_0x39abx2[_0x53bb[285]]&&null!=_0x39abx2[_0x53bb[285]][_0x53bb[285]]&&_0x53bb[1435]==_0x39abx2[_0x53bb[285]][_0x53bb[285]][_0x53bb[301]]){_0x39abx2=_0x39abx2[_0x53bb[285]][_0x53bb[285]],_0x39abx4=this[_0x53bb[1333]]?this[_0x53bb[1562]][_0x53bb[117]]:parseInt(_0x39abx2[_0x53bb[284]](_0x53bb[117]))*this[_0x53bb[255]],_0x39abx5=parseInt(_0x39abx2[_0x53bb[284]](_0x53bb[119]))*this[_0x53bb[255]]}else {_0x39abx3=_0x39abx2[_0x53bb[1451]]();if(0==_0x39abx3[_0x53bb[117]]&&0==_0x39abx3[_0x53bb[119]]){return};this[_0x53bb[1563]]= new mxRectangle(_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]]);_0x39abx3=0}}else {_0x39abx5=this[_0x53bb[724]][_0x53bb[441]][_0x53bb[1653]],null!=this[_0x53bb[359]]&&null!=this[_0x53bb[167]]?(_0x39abx4=this[_0x53bb[1333]]?this[_0x53bb[1562]][_0x53bb[117]]:this[_0x53bb[359]]*this[_0x53bb[255]],_0x39abx5=this[_0x53bb[167]]*this[_0x53bb[255]]):null!=_0x39abx5?(this[_0x53bb[1441]](_0x39abx5),this[_0x53bb[1654]](_0x39abx5),mxUtils[_0x53bb[1331]](this[_0x53bb[131]])?_0x39abx5[_0x53bb[339]]=this[_0x53bb[131]][_0x53bb[342]]:(_0x39abx4=this[_0x53bb[1650]]?this[_0x53bb[131]][_0x53bb[230]](/\n/g,_0x53bb[1453]):this[_0x53bb[131]],_0x39abx5[_0x53bb[339]]=_0x39abx4),_0x39abx4=this[_0x53bb[1333]]?this[_0x53bb[1562]][_0x53bb[117]]:_0x39abx5[_0x53bb[359]]*this[_0x53bb[255]],_0x39abx5=_0x39abx5[_0x53bb[167]]*this[_0x53bb[255]]):(_0x39abx4=this[_0x53bb[1333]]?this[_0x53bb[1562]][_0x53bb[117]]:_0x39abx2[_0x53bb[359]]*this[_0x53bb[255]],_0x39abx5=_0x39abx2[_0x53bb[167]]*this[_0x53bb[255]])};null!=_0x39abx4&&null!=_0x39abx5&&(this[_0x53bb[1563]]= new mxRectangle(this[_0x53bb[1562]][_0x53bb[235]]+this[_0x53bb[1655]][_0x53bb[235]]*_0x39abx4,this[_0x53bb[1562]][_0x53bb[236]]+this[_0x53bb[1655]][_0x53bb[236]]*_0x39abx5,_0x39abx4,_0x39abx5))}else {this[_0x53bb[1563]][_0x53bb[235]]+=this[_0x53bb[1655]][_0x53bb[235]]*this[_0x53bb[1563]][_0x53bb[117]],this[_0x53bb[1563]][_0x53bb[236]]+=this[_0x53bb[1655]][_0x53bb[236]]*this[_0x53bb[1563]][_0x53bb[119]]};null!=this[_0x53bb[1563]]&&(0!=_0x39abx3&&(_0x39abx3=mxUtils[_0x53bb[1613]](this[_0x53bb[1563]],_0x39abx3),this[_0x53bb[1563]][_0x53bb[235]]=_0x39abx3[_0x53bb[235]],this[_0x53bb[1563]][_0x53bb[236]]=_0x39abx3[_0x53bb[236]],mxClient[_0x53bb[496]]||(this[_0x53bb[1563]][_0x53bb[117]]=_0x39abx3[_0x53bb[117]],this[_0x53bb[1563]][_0x53bb[119]]=_0x39abx3[_0x53bb[119]])),this[_0x53bb[1563]][_0x53bb[235]]=Math[_0x53bb[519]](this[_0x53bb[1563]][_0x53bb[235]]),this[_0x53bb[1563]][_0x53bb[236]]=Math[_0x53bb[519]](this[_0x53bb[1563]][_0x53bb[236]]),this[_0x53bb[1563]][_0x53bb[117]]=Math[_0x53bb[430]](this[_0x53bb[1563]][_0x53bb[117]]),this[_0x53bb[1563]][_0x53bb[119]]=Math[_0x53bb[430]](this[_0x53bb[1563]][_0x53bb[119]]))};mxText[_0x53bb[202]][_0x53bb[1598]]=function(){return 0};mxText[_0x53bb[202]][_0x53bb[1615]]=function(){return null!=this[_0x53bb[724]]&&null!=this[_0x53bb[724]][_0x53bb[253]]?this[_0x53bb[724]][_0x53bb[253]][_0x53bb[1615]]():0};mxText[_0x53bb[202]][_0x53bb[1590]]=function(){return !this[_0x53bb[662]]&&null!=this[_0x53bb[724]]&&this[_0x53bb[724]][_0x53bb[441]][_0x53bb[1179]][_0x53bb[251]][_0x53bb[1193]](this[_0x53bb[724]][_0x53bb[246]])};mxText[_0x53bb[202]][_0x53bb[1592]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){mxShape[_0x53bb[202]][_0x53bb[1592]][_0x53bb[183]](this,arguments);_0x39abx2[_0x53bb[1259]](this[_0x53bb[352]]);_0x39abx2[_0x53bb[1260]](this[_0x53bb[1537]]);_0x39abx2[_0x53bb[1262]](this[_0x53bb[467]]);_0x39abx2[_0x53bb[1265]](this[_0x53bb[1288]]);_0x39abx2[_0x53bb[1264]](this[_0x53bb[803]]);_0x39abx2[_0x53bb[1266]](this[_0x53bb[666]])};mxText[_0x53bb[202]][_0x53bb[1586]]=function(){this[_0x53bb[252]][_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]])+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]])+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[117]]=_0x53bb[942];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[119]]=_0x53bb[942];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[189]};mxText[_0x53bb[202]][_0x53bb[1209]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[255]],_0x39abx4=this[_0x53bb[1562]][_0x53bb[235]]/_0x39abx3,_0x39abx5=this[_0x53bb[1562]][_0x53bb[236]]/_0x39abx3,_0x39abx9=this[_0x53bb[1562]][_0x53bb[117]]/_0x39abx3,_0x39abx3=this[_0x53bb[1562]][_0x53bb[119]]/_0x39abx3;this[_0x53bb[1591]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abx3);this[_0x53bb[1592]](_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abx3);var _0x39abxa=mxUtils[_0x53bb[1331]](this[_0x53bb[131]])||this[_0x53bb[507]]==mxConstants[_0x53bb[1656]],_0x39abx12=_0x39abxa||_0x39abx2 instanceof mxVmlCanvas2D?_0x53bb[1428]:_0x53bb[110],_0x39abx13=this[_0x53bb[131]];!_0x39abxa&&_0x53bb[1428]==_0x39abx12&&(_0x39abx13=mxUtils[_0x53bb[321]](_0x39abx13,!1));_0x39abx13=!mxUtils[_0x53bb[1331]](this[_0x53bb[131]])&&this[_0x53bb[1650]]&&_0x53bb[1428]==_0x39abx12?_0x39abx13[_0x53bb[230]](/\n/g,_0x53bb[1453]):_0x39abx13;_0x39abx2[_0x53bb[963]](_0x39abx4,_0x39abx5,_0x39abx9,_0x39abx3,_0x39abx13,this[_0x53bb[611]],this[_0x53bb[552]],this[_0x53bb[1333]],_0x39abx12,_0x53bb[1334]==this[_0x53bb[277]],this[_0x53bb[1645]],this[_0x53bb[1615]]())};mxText[_0x53bb[202]][_0x53bb[1575]]=function(){var _0x39abx2=this[_0x53bb[252]][_0x53bb[124]];_0x39abx2[_0x53bb[461]]=1>this[_0x53bb[461]]?this[_0x53bb[461]]:_0x53bb[110];_0x39abx2[_0x53bb[277]]=_0x53bb[110];_0x39abx2[_0x53bb[117]]=_0x53bb[110];_0x39abx2[_0x53bb[119]]=_0x53bb[110];this[_0x53bb[1441]](this[_0x53bb[252]]);this[_0x53bb[1654]](this[_0x53bb[252]]);this[_0x53bb[1657]]();this[_0x53bb[167]]=this[_0x53bb[359]]=null;null!=mxClient[_0x53bb[73]]?this[_0x53bb[1658]]():this[_0x53bb[1659]]()};mxText[_0x53bb[202]][_0x53bb[1658]]=function(){var _0x39abx2=this[_0x53bb[1615]](),_0x39abx3=this[_0x53bb[252]][_0x53bb[124]],_0x39abx4=this[_0x53bb[1655]][_0x53bb[235]],_0x39abx5=this[_0x53bb[1655]][_0x53bb[236]];0!=_0x39abx2?(_0x39abx3[mxClient[_0x53bb[73]]+_0x53bb[1660]]=100*-_0x39abx4+_0x53bb[1661]+100*-_0x39abx5+_0x53bb[229],_0x39abx3[mxClient[_0x53bb[73]]+_0x53bb[1662]]=_0x53bb[536]+100*_0x39abx4+_0x53bb[1663]+100*_0x39abx5+_0x53bb[1664]+this[_0x53bb[255]]+_0x53bb[1665]+_0x39abx2+_0x53bb[1666]):(_0x39abx3[mxClient[_0x53bb[73]]+_0x53bb[1660]]=_0x53bb[1667],_0x39abx3[mxClient[_0x53bb[73]]+_0x53bb[1662]]=_0x53bb[1402]+this[_0x53bb[255]]+_0x53bb[1393]+100*_0x39abx4+_0x53bb[1663]+100*_0x39abx5+_0x53bb[1668]);_0x39abx3[_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]])+_0x53bb[168];_0x39abx3[_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]])+_0x53bb[168]};mxText[_0x53bb[202]][_0x53bb[1659]]=function(){var _0x39abx2=this[_0x53bb[252]][_0x53bb[124]],_0x39abx3=this[_0x53bb[1655]][_0x53bb[235]],_0x39abx4=this[_0x53bb[1655]][_0x53bb[236]],_0x39abx5=this[_0x53bb[255]];_0x39abx2[_0x53bb[347]]=_0x53bb[110];var _0x39abx9=0,_0x39abxa=0,_0x39abx12=null!=this[_0x53bb[724]]?this[_0x53bb[724]][_0x53bb[441]][_0x53bb[1653]]:null;if(null!=_0x39abx12){_0x39abx12[_0x53bb[124]][_0x53bb[277]]=_0x53bb[110];_0x39abx12[_0x53bb[124]][_0x53bb[119]]=_0x53bb[110];_0x39abx12[_0x53bb[124]][_0x53bb[117]]=_0x53bb[110];this[_0x53bb[1441]](_0x39abx12);this[_0x53bb[1654]](_0x39abx12);if(mxUtils[_0x53bb[1331]](this[_0x53bb[131]])){_0x39abx12[_0x53bb[339]]=this[_0x53bb[131]][_0x53bb[342]]}else {var _0x39abx13=this[_0x53bb[131]];this[_0x53bb[507]]!=mxConstants[_0x53bb[1656]]&&(_0x39abx13=mxUtils[_0x53bb[321]](_0x39abx13,!1));_0x39abx13=this[_0x53bb[1650]]?_0x39abx13[_0x53bb[230]](/\n/g,_0x53bb[1453]):_0x39abx13;_0x39abx12[_0x53bb[339]]=_0x39abx13};_0x39abx9=_0x39abx12[_0x53bb[359]]+2;_0x39abxa=_0x39abx12[_0x53bb[167]]+2}else {_0x39abx9=this[_0x53bb[252]][_0x53bb[359]],_0x39abxa=this[_0x53bb[252]][_0x53bb[167]]+1};this[_0x53bb[359]]=_0x39abx9;this[_0x53bb[167]]=_0x39abxa;_0x39abx12=this[_0x53bb[1562]][_0x53bb[117]]/_0x39abx5;_0x39abx13=this[_0x53bb[1562]][_0x53bb[119]]/_0x39abx5;mxClient[_0x53bb[496]]&&(this[_0x53bb[1645]]||_0x53bb[1334]==this[_0x53bb[277]])&&0<_0x39abx13?(_0x39abx13=Math[_0x53bb[243]](_0x39abx13,_0x39abxa),_0x39abx2[_0x53bb[119]]=Math[_0x53bb[488]](_0x39abx13+1)+_0x53bb[168]):_0x39abx13=_0x39abxa;_0x53bb[1334]!=this[_0x53bb[277]]&&(mxClient[_0x53bb[496]]&&(this[_0x53bb[1645]]||this[_0x53bb[1333]])&&0<_0x39abx12?(_0x39abx12=Math[_0x53bb[243]](_0x39abx12,_0x39abx9),_0x39abx2[_0x53bb[117]]=Math[_0x53bb[488]](_0x39abx12)+_0x53bb[168]):_0x39abx12=_0x39abx9);var _0x39abx13=_0x39abx13*_0x39abx5,_0x39abx12=_0x39abx12*_0x39abx5,_0x39abx9=this[_0x53bb[1615]]()*(Math[_0x53bb[424]]/180),_0x39abxa=parseFloat(parseFloat(Math[_0x53bb[426]](_0x39abx9))[_0x53bb[1293]](8)),_0x39abx14=parseFloat(parseFloat(Math[_0x53bb[427]](-_0x39abx9))[_0x53bb[1293]](8)),_0x39abx9=_0x39abx9%(2*Math[_0x53bb[424]]);0>_0x39abx9&&(_0x39abx9+=2*Math[_0x53bb[424]]);_0x39abx9%=Math[_0x53bb[424]];_0x39abx9>Math[_0x53bb[424]]/2&&(_0x39abx9=Math[_0x53bb[424]]-_0x39abx9);var _0x39abx15=Math[_0x53bb[426]](_0x39abx9),_0x39abx16=Math[_0x53bb[427]](-_0x39abx9),_0x39abx3=_0x39abx12* -(_0x39abx3+0.5),_0x39abx4=_0x39abx13* -(_0x39abx4+0.5),_0x39abx17=(_0x39abx13-_0x39abx13*_0x39abx15+_0x39abx12*_0x39abx16)/2+_0x39abx14*_0x39abx3-_0x39abxa*_0x39abx4;0!=_0x39abx9&&(_0x39abx2[_0x53bb[347]]=_0x53bb[1505]+_0x39abxa+_0x53bb[1506]+_0x39abx14+_0x53bb[1507]+-_0x39abx14+_0x53bb[1508]+_0x39abxa+_0x53bb[1509]);_0x39abx2[_0x53bb[499]]=_0x39abx5;_0x39abx2[_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]]+((_0x39abx12-_0x39abx12*_0x39abx15+_0x39abx13*_0x39abx16)/2-_0x39abxa*_0x39abx3-_0x39abx14*_0x39abx4)-_0x39abx12/2)+_0x53bb[168];_0x39abx2[_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]]+_0x39abx17-_0x39abx13/2)+_0x53bb[168]};mxText[_0x53bb[202]][_0x53bb[1657]]=function(){if(mxUtils[_0x53bb[1331]](this[_0x53bb[131]])){this[_0x53bb[252]][_0x53bb[339]]=_0x53bb[110],this[_0x53bb[252]][_0x53bb[62]](this[_0x53bb[131]])}else {var _0x39abx2=this[_0x53bb[131]];this[_0x53bb[507]]!=mxConstants[_0x53bb[1656]]&&(_0x39abx2=mxUtils[_0x53bb[321]](_0x39abx2,!1));var _0x39abx2=this[_0x53bb[1650]]?_0x39abx2[_0x53bb[230]](/\n/g,_0x53bb[1453]):_0x39abx2,_0x39abx3=null!=this[_0x53bb[1537]]&&this[_0x53bb[1537]]!=mxConstants[_0x53bb[217]]?this[_0x53bb[1537]]:null,_0x39abx4=null!=this[_0x53bb[467]]&&this[_0x53bb[467]]!=mxConstants[_0x53bb[217]]?this[_0x53bb[467]]:null;if(null!=_0x39abx3||null!=_0x39abx4){if(_0x53bb[1334]==this[_0x53bb[277]]){null!=_0x39abx3&&(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[1028]]=_0x39abx3),null!=_0x39abx4&&(this[_0x53bb[252]][_0x53bb[124]][_0x53bb[467]]=_0x53bb[1669]+_0x39abx4)}else {var _0x39abx5=_0x53bb[110];null!=_0x39abx3&&(_0x39abx5+=_0x53bb[1418]+_0x39abx3+_0x53bb[471]);null!=_0x39abx4&&(_0x39abx5+=_0x53bb[1419]+_0x39abx4+_0x53bb[471]);_0x39abx2=_0x53bb[1670]+_0x39abx5+_0x53bb[1671]+this[_0x53bb[252]][_0x53bb[124]][_0x53bb[489]]+_0x53bb[1423]+_0x39abx2+_0x53bb[1424];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[489]]=_0x53bb[110]}};this[_0x53bb[252]][_0x53bb[339]]=_0x39abx2}};mxText[_0x53bb[202]][_0x53bb[1441]]=function(_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[124]];_0x39abx2[_0x53bb[489]]=Math[_0x53bb[488]](this[_0x53bb[803]]*mxConstants[_0x53bb[490]])+_0x53bb[168];_0x39abx2[_0x53bb[487]]=Math[_0x53bb[488]](this[_0x53bb[803]])+_0x53bb[168];_0x39abx2[_0x53bb[486]]=this[_0x53bb[1288]];_0x39abx2[_0x53bb[123]]=_0x53bb[125];_0x39abx2[_0x53bb[352]]=this[_0x53bb[352]];_0x39abx2[_0x53bb[1452]]=(this[_0x53bb[666]]&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]]?_0x53bb[1447]:_0x53bb[110];_0x39abx2[_0x53bb[666]]=(this[_0x53bb[666]]&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]]?_0x53bb[1449]:_0x53bb[110];_0x39abx2[_0x53bb[1498]]=(this[_0x53bb[666]]&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]]?_0x53bb[355]:_0x53bb[110];_0x39abx2[_0x53bb[1165]]=this[_0x53bb[611]]==mxConstants[_0x53bb[479]]?_0x53bb[698]:this[_0x53bb[611]]==mxConstants[_0x53bb[480]]?_0x53bb[699]:_0x53bb[361]};mxText[_0x53bb[202]][_0x53bb[1654]]=function(_0x39abx2){var _0x39abx3=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[117]]/this[_0x53bb[255]]),_0x39abx4=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[119]]/this[_0x53bb[255]]);_0x39abx2=_0x39abx2[_0x53bb[124]];this[_0x53bb[1645]]?(_0x39abx2[_0x53bb[277]]=_0x53bb[188],0<_0x39abx4&&(_0x39abx2[_0x53bb[1503]]=_0x39abx4+_0x53bb[168]),0<_0x39abx3&&(_0x39abx2[_0x53bb[117]]=_0x39abx3+_0x53bb[168])):_0x53bb[1334]==this[_0x53bb[277]]&&(_0x39abx2[_0x53bb[117]]=_0x39abx3+_0x53bb[168],0<_0x39abx4&&(_0x39abx2[_0x53bb[1503]]=_0x39abx4+_0x53bb[168]));this[_0x53bb[1333]]?(!this[_0x53bb[1645]]&&0<_0x39abx3&&(_0x39abx2[_0x53bb[117]]=_0x39abx3+_0x53bb[168]),_0x39abx2[_0x53bb[493]]=_0x53bb[1502]):_0x39abx2[_0x53bb[493]]=_0x53bb[494]};mxText[_0x53bb[202]][_0x53bb[1672]]=function(){this[_0x53bb[1655]]=mxUtils[_0x53bb[1501]](this[_0x53bb[611]],this[_0x53bb[552]])};mxText[_0x53bb[202]][_0x53bb[1673]]=function(){var _0x39abx2=0,_0x39abx3=0,_0x39abx2=this[_0x53bb[611]]==mxConstants[_0x53bb[479]]?(this[_0x53bb[659]]-this[_0x53bb[661]])/2:this[_0x53bb[611]]==mxConstants[_0x53bb[480]]?-this[_0x53bb[661]]-this[_0x53bb[1649]]:this[_0x53bb[659]]+this[_0x53bb[1648]],_0x39abx3=this[_0x53bb[552]]==mxConstants[_0x53bb[481]]?(this[_0x53bb[658]]-this[_0x53bb[660]])/2:this[_0x53bb[552]]==mxConstants[_0x53bb[482]]?-this[_0x53bb[660]]-this[_0x53bb[1647]]:this[_0x53bb[658]]+this[_0x53bb[1646]];return new mxPoint(_0x39abx2,_0x39abx3)};function mxTriangle(){mxActor[_0x53bb[239]](this)}mxUtils[_0x53bb[1284]](mxTriangle,mxActor);mxTriangle[_0x53bb[202]][_0x53bb[1625]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[1276]](0,0);_0x39abx2[_0x53bb[1277]](_0x39abx5,0.5*_0x39abx9);_0x39abx2[_0x53bb[1277]](0,_0x39abx9);_0x39abx2[_0x53bb[268]]()};function mxHexagon(){mxActor[_0x53bb[239]](this)}mxUtils[_0x53bb[1284]](mxHexagon,mxActor);mxHexagon[_0x53bb[202]][_0x53bb[1625]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[1276]](0.25*_0x39abx5,0);_0x39abx2[_0x53bb[1277]](0.75*_0x39abx5,0);_0x39abx2[_0x53bb[1277]](_0x39abx5,0.5*_0x39abx9);_0x39abx2[_0x53bb[1277]](0.75*_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1277]](0.25*_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[1277]](0,0.5*_0x39abx9);_0x39abx2[_0x53bb[268]]()};function mxLine(_0x39abx2,_0x39abx3,_0x39abx4){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1336]]=_0x39abx3;this[_0x53bb[1307]]=null!=_0x39abx4?_0x39abx4:1}mxUtils[_0x53bb[1284]](mxLine,mxShape);mxLine[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx4+=_0x39abx9/2;_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx3,_0x39abx4);_0x39abx2[_0x53bb[1277]](_0x39abx3+_0x39abx5,_0x39abx4);_0x39abx2[_0x53bb[1336]]()};function mxImageShape(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[618]]=_0x39abx3;this[_0x53bb[1334]]=_0x39abx4;this[_0x53bb[1336]]=_0x39abx5;this[_0x53bb[1307]]=null!=_0x39abx9?_0x39abx9:1;this[_0x53bb[639]]= !1}mxUtils[_0x53bb[1284]](mxImageShape,mxRectangleShape);mxImageShape[_0x53bb[202]][_0x53bb[1674]]= !0;mxImageShape[_0x53bb[202]][_0x53bb[1568]]=function(){return !mxClient[_0x53bb[80]]?0.5:0};mxImageShape[_0x53bb[202]][_0x53bb[183]]=function(_0x39abx2){mxShape[_0x53bb[202]][_0x53bb[183]][_0x53bb[183]](this,arguments);this[_0x53bb[1299]]=this[_0x53bb[1336]]=this[_0x53bb[1334]]=null;null!=this[_0x53bb[124]]&&(this[_0x53bb[1334]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_BACKGROUND),this[_0x53bb[1336]]=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_BORDER),this[_0x53bb[1674]]=1==mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_ASPECT,1),this[_0x53bb[623]]=this[_0x53bb[623]]||1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],_0x53bb[1675],0),this[_0x53bb[624]]=this[_0x53bb[624]]||1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],_0x53bb[1676],0))};mxImageShape[_0x53bb[202]][_0x53bb[1567]]=function(){return !this[_0x53bb[1674]]};mxImageShape[_0x53bb[202]][_0x53bb[1570]]=function(){var _0x39abx2=document[_0x53bb[55]](_0x53bb[485]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];return _0x39abx2};mxImageShape[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=this[_0x53bb[618]]){var _0x39abxa=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_BACKGROUND,null),_0x39abx12=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_BORDER,null);if(null!=_0x39abxa||null!=_0x39abx12){_0x39abx2[_0x53bb[1245]](_0x39abxa),_0x39abx2[_0x53bb[1249]](_0x39abx12),_0x39abx2[_0x53bb[1319]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[1337]]()};_0x39abx2[_0x53bb[618]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,this[_0x53bb[618]],this[_0x53bb[1674]],!1,!1)}else {mxRectangleShape[_0x53bb[202]][_0x53bb[1601]][_0x53bb[183]](this,arguments)}};mxImageShape[_0x53bb[202]][_0x53bb[1575]]=function(){this[_0x53bb[252]][_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]])+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]])+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[160]](0,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[117]]))+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[160]](0,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[119]]))+_0x53bb[168];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[1028]]=this[_0x53bb[1334]]||_0x53bb[110];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[1630]]=this[_0x53bb[1336]]||_0x53bb[110];this[_0x53bb[252]][_0x53bb[339]]=_0x53bb[110];if(null!=this[_0x53bb[618]]){var _0x39abx2=document[_0x53bb[55]](mxClient[_0x53bb[49]]||null==mxClient[_0x53bb[73]]&&0!=this[_0x53bb[603]]?mxClient[_0x53bb[463]]+_0x53bb[464]:_0x53bb[466]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx2[_0x53bb[390]]=this[_0x53bb[618]];var _0x39abx3=100>this[_0x53bb[461]]?_0x53bb[459]+this[_0x53bb[461]]+_0x53bb[460]:_0x53bb[110];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[347]]=_0x39abx3;this[_0x53bb[623]]&&this[_0x53bb[624]]?_0x39abx3+=_0x53bb[1677]:this[_0x53bb[623]]?_0x39abx3+=_0x53bb[1678]:this[_0x53bb[624]]&&(_0x39abx3+=_0x53bb[1679]);_0x39abx2[_0x53bb[124]][_0x53bb[347]]!=_0x39abx3&&(_0x39abx2[_0x53bb[124]][_0x53bb[347]]=_0x39abx3);_0x53bb[618]==_0x39abx2[_0x53bb[301]]?_0x39abx2[_0x53bb[124]][_0x53bb[603]]=this[_0x53bb[603]]:_0x39abx2[_0x53bb[124]][mxClient[_0x53bb[73]]+_0x53bb[1662]]=_0x53bb[1394]+this[_0x53bb[603]]+_0x53bb[1666];_0x39abx2[_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[252]][_0x53bb[124]][_0x53bb[117]];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=this[_0x53bb[252]][_0x53bb[124]][_0x53bb[119]];this[_0x53bb[252]][_0x53bb[124]][_0x53bb[1617]]=_0x53bb[110];this[_0x53bb[252]][_0x53bb[62]](_0x39abx2)}else {this[_0x53bb[1600]](this[_0x53bb[252]])}};function mxLabel(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxRectangleShape[_0x53bb[239]](this,_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)}mxUtils[_0x53bb[1284]](mxLabel,mxRectangleShape);mxLabel[_0x53bb[202]][_0x53bb[1680]]=mxConstants[_0x53bb[1681]];mxLabel[_0x53bb[202]][_0x53bb[657]]=2;mxLabel[_0x53bb[202]][_0x53bb[1682]]=10;mxLabel[_0x53bb[202]][_0x53bb[635]]=2;mxLabel[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2){mxShape[_0x53bb[202]][_0x53bb[176]][_0x53bb[183]](this,arguments);null!=this[_0x53bb[632]]&&null!=this[_0x53bb[630]]&&(this[_0x53bb[1683]]= new this[_0x53bb[630]],this[_0x53bb[1683]][_0x53bb[507]]=this[_0x53bb[507]],this[_0x53bb[1683]][_0x53bb[1562]]=this[_0x53bb[1562]],this[_0x53bb[1683]][_0x53bb[1334]]=this[_0x53bb[632]],this[_0x53bb[1683]][_0x53bb[1336]]=this[_0x53bb[632]],this[_0x53bb[1683]][_0x53bb[1299]]=this[_0x53bb[634]],this[_0x53bb[1683]][_0x53bb[663]]=this[_0x53bb[638]],this[_0x53bb[1683]][_0x53bb[176]](this[_0x53bb[252]]))};mxLabel[_0x53bb[202]][_0x53bb[258]]=function(){null!=this[_0x53bb[1683]]&&(this[_0x53bb[1683]][_0x53bb[1334]]=this[_0x53bb[632]],this[_0x53bb[1683]][_0x53bb[1336]]=this[_0x53bb[632]],this[_0x53bb[1683]][_0x53bb[1299]]=this[_0x53bb[634]],this[_0x53bb[1683]][_0x53bb[663]]=this[_0x53bb[638]]);mxShape[_0x53bb[202]][_0x53bb[258]][_0x53bb[183]](this,arguments)};mxLabel[_0x53bb[202]][_0x53bb[1567]]=function(){return mxRectangleShape[_0x53bb[202]][_0x53bb[1567]][_0x53bb[183]](this,arguments)&&null==this[_0x53bb[632]]&&null==this[_0x53bb[630]]};mxLabel[_0x53bb[202]][_0x53bb[1602]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){this[_0x53bb[1684]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);this[_0x53bb[1685]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9);mxRectangleShape[_0x53bb[202]][_0x53bb[1602]][_0x53bb[183]](this,arguments)};mxLabel[_0x53bb[202]][_0x53bb[1684]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){null!=this[_0x53bb[618]]&&(_0x39abx3=this[_0x53bb[1686]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[618]](_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]],this[_0x53bb[618]],!1,!1,!1))};mxLabel[_0x53bb[202]][_0x53bb[1686]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),_0x39abxa=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x39abx12=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_WIDTH,mxConstants.DEFAULT_IMAGESIZE),_0x39abx13=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_HEIGHT,mxConstants.DEFAULT_IMAGESIZE),_0x39abx14=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_SPACING,this[_0x53bb[657]])+5;_0x39abx2=_0x39abx9==mxConstants[_0x53bb[479]]?_0x39abx2+(_0x39abx4-_0x39abx12)/2:_0x39abx9==mxConstants[_0x53bb[480]]?_0x39abx2+(_0x39abx4-_0x39abx12-_0x39abx14):_0x39abx2+_0x39abx14;_0x39abx3=_0x39abxa==mxConstants[_0x53bb[1687]]?_0x39abx3+_0x39abx14:_0x39abxa==mxConstants[_0x53bb[482]]?_0x39abx3+(_0x39abx5-_0x39abx13-_0x39abx14):_0x39abx3+(_0x39abx5-_0x39abx13)/2;return new mxRectangle(_0x39abx2,_0x39abx3,_0x39abx12,_0x39abx13)};mxLabel[_0x53bb[202]][_0x53bb[1685]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){null!=this[_0x53bb[1683]]?(this[_0x53bb[1683]][_0x53bb[1562]]=this[_0x53bb[1688]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),this[_0x53bb[1683]][_0x53bb[1209]](_0x39abx2)):null!=this[_0x53bb[631]]&&(_0x39abx3=this[_0x53bb[1688]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[618]](_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]],this[_0x53bb[631]],!1,!1,!1))};mxLabel[_0x53bb[202]][_0x53bb[1688]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),_0x39abxa=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x39abx12=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_INDICATOR_WIDTH,this[_0x53bb[1682]]),_0x39abx13=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_INDICATOR_HEIGHT,this[_0x53bb[1682]]),_0x39abx14=this[_0x53bb[657]]+5;_0x39abx2=_0x39abx9==mxConstants[_0x53bb[480]]?_0x39abx2+(_0x39abx4-_0x39abx12-_0x39abx14):_0x39abx9==mxConstants[_0x53bb[479]]?_0x39abx2+(_0x39abx4-_0x39abx12)/2:_0x39abx2+_0x39abx14;_0x39abx3=_0x39abxa==mxConstants[_0x53bb[482]]?_0x39abx3+(_0x39abx5-_0x39abx13-_0x39abx14):_0x39abxa==mxConstants[_0x53bb[1687]]?_0x39abx3+_0x39abx14:_0x39abx3+(_0x39abx5-_0x39abx13)/2;return new mxRectangle(_0x39abx2,_0x39abx3,_0x39abx12,_0x39abx13)};mxLabel[_0x53bb[202]][_0x53bb[1575]]=function(){for(mxRectangleShape[_0x53bb[202]][_0x53bb[1575]][_0x53bb[183]](this,arguments);this[_0x53bb[252]][_0x53bb[1580]]();){this[_0x53bb[252]][_0x53bb[266]](this[_0x53bb[252]][_0x53bb[1581]])};if(null!=this[_0x53bb[618]]){var _0x39abx2=document[_0x53bb[55]](_0x53bb[466]);_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[1500];_0x39abx2[_0x53bb[57]](_0x53bb[467],_0x53bb[468]);var _0x39abx3=this[_0x53bb[1686]](this[_0x53bb[1562]][_0x53bb[235]],this[_0x53bb[1562]][_0x53bb[236]],this[_0x53bb[1562]][_0x53bb[117]],this[_0x53bb[1562]][_0x53bb[119]]);_0x39abx3[_0x53bb[235]]-=this[_0x53bb[1562]][_0x53bb[235]];_0x39abx3[_0x53bb[236]]-=this[_0x53bb[1562]][_0x53bb[236]];_0x39abx2[_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[488]](_0x39abx3[_0x53bb[235]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[488]](_0x39abx3[_0x53bb[236]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[488]](_0x39abx3[_0x53bb[117]])+_0x53bb[168];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[488]](_0x39abx3[_0x53bb[119]])+_0x53bb[168];_0x39abx2[_0x53bb[390]]=this[_0x53bb[618]];this[_0x53bb[252]][_0x53bb[62]](_0x39abx2)}};function mxCylinder(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxCylinder,mxShape);mxCylinder[_0x53bb[202]][_0x53bb[1503]]=40;mxCylinder[_0x53bb[202]][_0x53bb[1564]]=0;mxCylinder[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[513]](_0x39abx3,_0x39abx4);_0x39abx2[_0x53bb[1275]]();this[_0x53bb[1625]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,!1);_0x39abx2[_0x53bb[1337]]();_0x39abx2[_0x53bb[1267]](!1);_0x39abx2[_0x53bb[1275]]();this[_0x53bb[1625]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,!0);_0x39abx2[_0x53bb[1336]]()};mxCylinder[_0x53bb[202]][_0x53bb[1625]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx3=Math[_0x53bb[243]](this[_0x53bb[1503]],Math[_0x53bb[488]](_0x39abx9/5));if(_0x39abxa&&null!=this[_0x53bb[1334]]||!_0x39abxa&&null==this[_0x53bb[1334]]){_0x39abx2[_0x53bb[1276]](0,_0x39abx3),_0x39abx2[_0x53bb[1279]](0,2*_0x39abx3,_0x39abx5,2*_0x39abx3,_0x39abx5,_0x39abx3),_0x39abxa||(_0x39abx2[_0x53bb[1336]](),_0x39abx2[_0x53bb[1275]]())};_0x39abxa||(_0x39abx2[_0x53bb[1276]](0,_0x39abx3),_0x39abx2[_0x53bb[1279]](0,-_0x39abx3/3,_0x39abx5,-_0x39abx3/3,_0x39abx5,_0x39abx3),_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abx9-_0x39abx3),_0x39abx2[_0x53bb[1279]](_0x39abx5,_0x39abx9+_0x39abx3/3,0,_0x39abx9+_0x39abx3/3,0,_0x39abx9-_0x39abx3),_0x39abx2[_0x53bb[268]]())};function mxConnector(_0x39abx2,_0x39abx3,_0x39abx4){mxPolyline[_0x53bb[239]](this,_0x39abx2,_0x39abx3,_0x39abx4)}mxUtils[_0x53bb[1284]](mxConnector,mxPolyline);mxConnector[_0x53bb[202]][_0x53bb[1594]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1689]](_0x39abx2,_0x39abx3,!0),_0x39abx5=this[_0x53bb[1689]](_0x39abx2,_0x39abx3,!1);null==this[_0x53bb[124]]||1!=this[_0x53bb[124]][mxConstants[_0x53bb[1690]]]?this[_0x53bb[1639]](_0x39abx2,_0x39abx3,this[_0x53bb[1606]]):this[_0x53bb[1691]](_0x39abx2,_0x39abx3);_0x39abx2[_0x53bb[1245]](this[_0x53bb[1336]]);_0x39abx2[_0x53bb[1267]](!1);_0x39abx2[_0x53bb[1251]](!1);null!=_0x39abx4&&_0x39abx4();null!=_0x39abx5&&_0x39abx5()};mxConnector[_0x53bb[202]][_0x53bb[1691]]=function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[1275]]();var _0x39abx4=_0x39abx3[0],_0x39abx5=_0x39abx3[_0x53bb[67]];_0x39abx2[_0x53bb[1276]](_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]]);for(_0x39abx4=1;_0x39abx4<_0x39abx5-2;_0x39abx4++){var _0x39abx9=_0x39abx3[_0x39abx4],_0x39abxa=_0x39abx3[_0x39abx4+1];_0x39abx2[_0x53bb[1278]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],(_0x39abx9[_0x53bb[235]]+_0x39abxa[_0x53bb[235]])/2,(_0x39abx9[_0x53bb[236]]+_0x39abxa[_0x53bb[236]])/2)};_0x39abx9=_0x39abx3[_0x39abx5-2];_0x39abxa=_0x39abx3[_0x39abx5-1];_0x39abx2[_0x53bb[1278]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abxa[_0x53bb[235]],_0x39abxa[_0x53bb[236]]);_0x39abx2[_0x53bb[1336]]()};mxConnector[_0x53bb[202]][_0x53bb[1689]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx3[_0x53bb[67]],_0x39abx9=_0x39abx4?_0x39abx3[1]:_0x39abx3[_0x39abx5-2];_0x39abx3=_0x39abx4?_0x39abx3[0]:_0x39abx3[_0x39abx5-1];var _0x39abx5=_0x39abx3[_0x53bb[235]]-_0x39abx9[_0x53bb[235]],_0x39abxa=_0x39abx3[_0x53bb[236]]-_0x39abx9[_0x53bb[236]],_0x39abx12=Math[_0x53bb[160]](1,Math[_0x53bb[428]](_0x39abx5*_0x39abx5+_0x39abxa*_0x39abxa)),_0x39abx9=_0x39abx5/_0x39abx12,_0x39abx5=_0x39abxa/_0x39abx12,_0x39abxa=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],_0x39abx4?mxConstants[_0x53bb[1692]]:mxConstants[_0x53bb[1693]],mxConstants.DEFAULT_MARKERSIZE),_0x39abx12=mxUtils[_0x53bb[433]](this[_0x53bb[124]],_0x39abx4?mxConstants[_0x53bb[1694]]:mxConstants[_0x53bb[1695]]);return mxMarker[_0x53bb[1689]](_0x39abx2,this,_0x39abx12,_0x39abx3,_0x39abx9,_0x39abx5,_0x39abxa,_0x39abx4,this[_0x53bb[1307]],0!=this[_0x53bb[124]][_0x39abx4?mxConstants[_0x53bb[1696]]:mxConstants[_0x53bb[1697]]])};mxConnector[_0x53bb[202]][_0x53bb[1612]]=function(_0x39abx2){mxShape[_0x53bb[202]][_0x53bb[1612]][_0x53bb[183]](this,arguments);var _0x39abx3=0;mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants[_0x53bb[217]]&&(_0x39abx3=mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_MARKERSIZE)+1);mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ENDARROW,mxConstants.NONE)!=mxConstants[_0x53bb[217]]&&(_0x39abx3=Math[_0x53bb[160]](_0x39abx3,mxUtils[_0x53bb[1550]](this[_0x53bb[124]],mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE))+1);_0x39abx2[_0x53bb[244]](Math[_0x53bb[430]](_0x39abx3*this[_0x53bb[255]]))};function mxSwimlane(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxShape[_0x53bb[239]](this);this[_0x53bb[1562]]=_0x39abx2;this[_0x53bb[1334]]=_0x39abx3;this[_0x53bb[1336]]=_0x39abx4;this[_0x53bb[1307]]=null!=_0x39abx5?_0x39abx5:1}mxUtils[_0x53bb[1284]](mxSwimlane,mxShape);mxSwimlane[_0x53bb[202]][_0x53bb[1680]]=16;mxSwimlane[_0x53bb[202]][_0x53bb[1597]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2=Math[_0x53bb[243]](_0x39abx9,mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE));return new mxRectangle(_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx2)};mxSwimlane[_0x53bb[202]][_0x53bb[1614]]=function(){var _0x39abx2=mxShape[_0x53bb[202]][_0x53bb[1614]][_0x53bb[183]](this,arguments);1!=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_HORIZONTAL,1)&&(_0x39abx2+=mxText[_0x53bb[202]][_0x53bb[1616]]);return _0x39abx2};mxSwimlane[_0x53bb[202]][_0x53bb[1615]]=function(){return this[_0x53bb[1614]]()};mxSwimlane[_0x53bb[202]][_0x53bb[1590]]=function(){return mxShape[_0x53bb[202]][_0x53bb[1590]][_0x53bb[183]](this,arguments)||1!=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_HORIZONTAL,1)};mxSwimlane[_0x53bb[202]][_0x53bb[1603]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x53bb[1557]])/100;return 3*_0x39abx4*_0x39abx2};mxSwimlane[_0x53bb[202]][_0x53bb[1595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=Math[_0x53bb[243]](_0x39abx9,mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),_0x39abx12=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_SWIMLANE_FILLCOLOR,mxConstants.NONE),_0x39abx13=1==mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_SWIMLANE_LINE,1),_0x39abx14=0;_0x39abx2[_0x53bb[513]](_0x39abx3,_0x39abx4);this[_0x53bb[1606]]?(_0x39abx14=this[_0x53bb[1603]](_0x39abx5,_0x39abx9,_0x39abxa),this[_0x53bb[1698]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx14,_0x39abx12,_0x39abx13)):this[_0x53bb[1699]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13);_0x39abx12=mxUtils[_0x53bb[433]](this[_0x53bb[124]],mxConstants.STYLE_SEPARATORCOLOR,mxConstants.NONE);this[_0x53bb[1700]](_0x39abx2,_0x39abx5,_0x39abxa,_0x39abx9,_0x39abx12);null!=this[_0x53bb[618]]&&(_0x39abx9=this[_0x53bb[1686]](_0x39abx3,_0x39abxa,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[618]](_0x39abx9[_0x53bb[235]]-_0x39abx3,_0x39abx9[_0x53bb[236]]-_0x39abx4,_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]],this[_0x53bb[618]],!1,!1,!1));this[_0x53bb[617]]&&(_0x39abx2[_0x53bb[1267]](!1),this[_0x53bb[1604]](_0x39abx2,0,0,_0x39abx5,_0x39abxa,_0x39abx14))};mxSwimlane[_0x53bb[202]][_0x53bb[1699]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){_0x39abx12!=mxConstants[_0x53bb[217]]&&(_0x39abx2[_0x53bb[815]](),_0x39abx2[_0x53bb[1245]](_0x39abx12),_0x39abx2[_0x53bb[1319]](0,0,_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[1337]](),_0x39abx2[_0x53bb[1210]](),_0x39abx2[_0x53bb[1267]](!1));_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](0,_0x39abxa);_0x39abx2[_0x53bb[1277]](0,0);_0x39abx2[_0x53bb[1277]](_0x39abx5,0);_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abxa);_0x39abx13&&_0x39abx2[_0x53bb[268]]();_0x39abx2[_0x53bb[1337]]();_0x39abxa<_0x39abx9&&_0x39abx12==mxConstants[_0x53bb[217]]&&(_0x39abx2[_0x53bb[1229]]= !1,_0x39abx2[_0x53bb[1275]](),_0x39abx2[_0x53bb[1276]](0,_0x39abxa),_0x39abx2[_0x53bb[1277]](0,_0x39abx9),_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abx9),_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abxa),_0x39abx2[_0x53bb[1336]]())};mxSwimlane[_0x53bb[202]][_0x53bb[1698]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){_0x39abx13!=mxConstants[_0x53bb[217]]&&(_0x39abx2[_0x53bb[815]](),_0x39abx2[_0x53bb[1245]](_0x39abx13),_0x39abx2[_0x53bb[1320]](0,0,_0x39abx5,_0x39abx9,_0x39abx12,_0x39abx12),_0x39abx2[_0x53bb[1337]](),_0x39abx2[_0x53bb[1210]](),_0x39abx2[_0x53bb[1267]](!1));_0x39abx2[_0x53bb[1275]]();_0x39abx2[_0x53bb[1276]](_0x39abx5,_0x39abxa);_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abx12);_0x39abx2[_0x53bb[1278]](_0x39abx5,0,_0x39abx5-Math[_0x53bb[243]](_0x39abx5/2,_0x39abx12),0);_0x39abx2[_0x53bb[1277]](Math[_0x53bb[243]](_0x39abx5/2,_0x39abx12),0);_0x39abx2[_0x53bb[1278]](0,0,0,_0x39abx12);_0x39abx2[_0x53bb[1277]](0,_0x39abxa);_0x39abx14&&_0x39abx2[_0x53bb[268]]();_0x39abx2[_0x53bb[1337]]();_0x39abxa<_0x39abx9&&_0x39abx13==mxConstants[_0x53bb[217]]&&(_0x39abx2[_0x53bb[1229]]= !1,_0x39abx2[_0x53bb[1275]](),_0x39abx2[_0x53bb[1276]](0,_0x39abxa),_0x39abx2[_0x53bb[1277]](0,_0x39abx9-_0x39abx12),_0x39abx2[_0x53bb[1278]](0,_0x39abx9,Math[_0x53bb[243]](_0x39abx5/2,_0x39abx12),_0x39abx9),_0x39abx2[_0x53bb[1277]](_0x39abx5-Math[_0x53bb[243]](_0x39abx5/2,_0x39abx12),_0x39abx9),_0x39abx2[_0x53bb[1278]](_0x39abx5,_0x39abx9,_0x39abx5,_0x39abx9-_0x39abx12),_0x39abx2[_0x53bb[1277]](_0x39abx5,_0x39abxa),_0x39abx2[_0x53bb[1336]]())};mxSwimlane[_0x53bb[202]][_0x53bb[1700]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx9!=mxConstants[_0x53bb[217]]&&(_0x39abx2[_0x53bb[1249]](_0x39abx9),_0x39abx2[_0x53bb[1251]](!0),_0x39abx2[_0x53bb[1275]](),_0x39abx2[_0x53bb[1276]](_0x39abx3,_0x39abx4),_0x39abx2[_0x53bb[1277]](_0x39abx3,_0x39abx5),_0x39abx2[_0x53bb[1336]](),_0x39abx2[_0x53bb[1251]](!1))};mxSwimlane[_0x53bb[202]][_0x53bb[1686]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return new mxRectangle(_0x39abx2+_0x39abx4-this[_0x53bb[1680]],_0x39abx3,this[_0x53bb[1680]],this[_0x53bb[1680]])};function mxGraphLayout(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2}mxGraphLayout[_0x53bb[202]][_0x53bb[1179]]=null;mxGraphLayout[_0x53bb[202]][_0x53bb[1701]]= !0;mxGraphLayout[_0x53bb[202]][_0x53bb[1101]]=null;mxGraphLayout[_0x53bb[202]][_0x53bb[1702]]=function(_0x39abx2,_0x39abx3,_0x39abx4){};mxGraphLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){};mxGraphLayout[_0x53bb[202]][_0x53bb[1703]]=function(){return this[_0x53bb[1179]]};mxGraphLayout[_0x53bb[202]][_0x53bb[1704]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3);_0x39abx3=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1179]][_0x53bb[1705]](_0x39abx3);return null!=_0x39abx3?_0x39abx3[_0x39abx2]:null};mxGraphLayout[_0x53bb[1706]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx4&&null!=_0x39abx2){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;_0x39abx9=_0x39abx9||[];var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2);if(null==_0x39abx9[_0x39abxa]&&(_0x39abx9[_0x39abxa]=_0x39abx2,_0x39abx5=_0x39abx4(_0x39abx2,_0x39abx5),null==_0x39abx5||_0x39abx5)){if(_0x39abx5=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1707]](_0x39abx2),0<_0x39abx5){for(_0x39abxa=0;_0x39abxa<_0x39abx5;_0x39abxa++){var _0x39abx12=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1708]](_0x39abx2,_0x39abxa),_0x39abx13=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1709]](_0x39abx12,!0)==_0x39abx2;if(!_0x39abx3||_0x39abx13){_0x39abx13=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[1710]](_0x39abx12,!_0x39abx13),this[_0x53bb[1706]](_0x39abx13,_0x39abx3,_0x39abx4,_0x39abx12,_0x39abx9)}}}}}};mxGraphLayout[_0x53bb[202]][_0x53bb[1711]]=function(_0x39abx2){return this[_0x53bb[1179]][_0x53bb[1712]](_0x39abx2)};mxGraphLayout[_0x53bb[202]][_0x53bb[1713]]=function(_0x39abx2){return !this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2)||!this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2)};mxGraphLayout[_0x53bb[202]][_0x53bb[1715]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();return !_0x39abx3[_0x53bb[250]](_0x39abx2)||!this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2)||null==_0x39abx3[_0x53bb[1709]](_0x39abx2,!0)||null==_0x39abx3[_0x53bb[1709]](_0x39abx2,!1)};mxGraphLayout[_0x53bb[202]][_0x53bb[1716]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_NOEDGESTYLE,_0x39abx3?_0x53bb[468]:_0x53bb[500],[_0x39abx2])};mxGraphLayout[_0x53bb[202]][_0x53bb[1718]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_ORTHOGONAL,_0x39abx3?_0x53bb[500]:_0x53bb[468],[_0x39abx2])};mxGraphLayout[_0x53bb[202]][_0x53bb[1719]]=function(_0x39abx2){var _0x39abx3= new mxPoint;if(null!=_0x39abx2&&_0x39abx2!=this[_0x53bb[1101]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]();if(_0x39abx4[_0x53bb[1720]](this[_0x53bb[1101]],_0x39abx2)){for(var _0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx2);_0x39abx2!=this[_0x53bb[1101]];){_0x39abx3[_0x53bb[235]]+=_0x39abx5[_0x53bb[235]],_0x39abx3[_0x53bb[236]]+=_0x39abx5[_0x53bb[236]],_0x39abx2=_0x39abx4[_0x53bb[1197]](_0x39abx2),_0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx2)}}};return _0x39abx3};mxGraphLayout[_0x53bb[202]][_0x53bb[1722]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[251]],_0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx2);null==_0x39abx5?(_0x39abx5= new mxGeometry,_0x39abx5[_0x53bb[1723]](!0)):_0x39abx5=_0x39abx5[_0x53bb[238]]();if(null!=this[_0x53bb[1101]]&&null!=_0x39abx3){for(var _0x39abx9=_0x39abx4[_0x53bb[1197]](_0x39abx2),_0x39abx9=this[_0x53bb[1719]](_0x39abx9),_0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[67]];_0x39abxa++){_0x39abx3[_0x39abxa][_0x53bb[235]]-=_0x39abx9[_0x53bb[235]],_0x39abx3[_0x39abxa][_0x53bb[236]]-=_0x39abx9[_0x53bb[236]]}};_0x39abx5[_0x53bb[1525]]=_0x39abx3;_0x39abx4[_0x53bb[1724]](_0x39abx2,_0x39abx5)}};mxGraphLayout[_0x53bb[202]][_0x53bb[1725]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[1721]](_0x39abx2),_0x39abxa=null;if(null!=_0x39abx9){_0x39abxa= new mxRectangle(_0x39abx3,_0x39abx4,_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]]);if(this[_0x53bb[1701]]){var _0x39abx12=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);if(null!=_0x39abx12&&null!=_0x39abx12[_0x53bb[963]]&&null!=_0x39abx12[_0x53bb[963]][_0x53bb[1563]]){var _0x39abx13=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx14=_0x39abx12[_0x53bb[963]][_0x53bb[1563]];_0x39abx12[_0x53bb[963]][_0x53bb[1563]][_0x53bb[235]]<_0x39abx12[_0x53bb[235]]&&(_0x39abx3+=(_0x39abx12[_0x53bb[235]]-_0x39abx14[_0x53bb[235]])/_0x39abx13,_0x39abxa[_0x53bb[117]]=_0x39abx14[_0x53bb[117]]);_0x39abx12[_0x53bb[963]][_0x53bb[1563]][_0x53bb[236]]<_0x39abx12[_0x53bb[236]]&&(_0x39abx4+=(_0x39abx12[_0x53bb[236]]-_0x39abx14[_0x53bb[236]])/_0x39abx13,_0x39abxa[_0x53bb[119]]=_0x39abx14[_0x53bb[119]])}};null!=this[_0x53bb[1101]]&&(_0x39abx12=_0x39abx5[_0x53bb[1197]](_0x39abx2),null!=_0x39abx12&&_0x39abx12!=this[_0x53bb[1101]]&&(_0x39abx12=this[_0x53bb[1719]](_0x39abx12),_0x39abx3-=_0x39abx12[_0x53bb[235]],_0x39abx4-=_0x39abx12[_0x53bb[236]]));if(_0x39abx9[_0x53bb[235]]!=_0x39abx3||_0x39abx9[_0x53bb[236]]!=_0x39abx4){_0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abx9[_0x53bb[235]]=_0x39abx3,_0x39abx9[_0x53bb[236]]=_0x39abx4,_0x39abx5[_0x53bb[1724]](_0x39abx2,_0x39abx9)}};return _0x39abxa};mxGraphLayout[_0x53bb[202]][_0x53bb[1726]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1721]](_0x39abx2);if(this[_0x53bb[1701]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);if(null!=_0x39abx4&&null!=_0x39abx4[_0x53bb[963]]&&null!=_0x39abx4[_0x53bb[963]][_0x53bb[1563]]){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx9=_0x39abx4[_0x53bb[963]][_0x53bb[1563]],_0x39abxa=Math[_0x53bb[160]](_0x39abx4[_0x53bb[235]]-_0x39abx9[_0x53bb[235]],0)/_0x39abx5,_0x39abx12=Math[_0x53bb[160]](_0x39abx4[_0x53bb[236]]-_0x39abx9[_0x53bb[236]],0)/_0x39abx5,_0x39abx13=Math[_0x53bb[160]](_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]-(_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]),0)/_0x39abx5,_0x39abx4=Math[_0x53bb[160]](_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]-(_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]),0)/_0x39abx5,_0x39abx3= new mxRectangle(_0x39abx3[_0x53bb[235]]-_0x39abxa,_0x39abx3[_0x53bb[236]]-_0x39abx12,_0x39abx3[_0x53bb[117]]+_0x39abxa+_0x39abx13,_0x39abx3[_0x53bb[119]]+_0x39abx12+_0x39abx4)}};null!=this[_0x53bb[1101]]&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](_0x39abx2),_0x39abx3=_0x39abx3[_0x53bb[238]](),null!=_0x39abx2&&_0x39abx2!=this[_0x53bb[1101]]&&(_0x39abx2=this[_0x53bb[1719]](_0x39abx2),_0x39abx3[_0x53bb[235]]+=_0x39abx2[_0x53bb[235]],_0x39abx3[_0x53bb[236]]+=_0x39abx2[_0x53bb[236]]));return new mxRectangle(_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]])};mxGraphLayout[_0x53bb[202]][_0x53bb[1727]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[473]]();try{for(var _0x39abx4=_0x39abx2[_0x53bb[67]]-1;0<=_0x39abx4;_0x39abx4--){var _0x39abx5=_0x39abx2[_0x39abx4],_0x39abx9=this[_0x53bb[1179]][_0x53bb[1728]](_0x39abx5),_0x39abxa=this[_0x53bb[1179]][_0x53bb[1729]](_0x39abx9),_0x39abx12=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx5),_0x39abx13=0,_0x39abx14=0;if(this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx5)){var _0x39abx15=this[_0x53bb[1179]][_0x53bb[1731]](_0x39abx5),_0x39abx13=_0x39abx15[_0x53bb[117]],_0x39abx14=_0x39abx15[_0x53bb[119]]};null!=_0x39abxa&&null!=_0x39abx12&&(_0x39abx12=_0x39abx12[_0x53bb[238]](),_0x39abx12[_0x53bb[235]]=_0x39abx12[_0x53bb[235]]+_0x39abxa[_0x53bb[235]]-_0x39abx3-_0x39abx13,_0x39abx12[_0x53bb[236]]=_0x39abx12[_0x53bb[236]]+_0x39abxa[_0x53bb[236]]-_0x39abx3-_0x39abx14,_0x39abx12[_0x53bb[117]]=_0x39abxa[_0x53bb[117]]+2*_0x39abx3+_0x39abx13,_0x39abx12[_0x53bb[119]]=_0x39abxa[_0x53bb[119]]+2*_0x39abx3+_0x39abx14,this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1724]](_0x39abx5,_0x39abx12),this[_0x53bb[1179]][_0x53bb[834]](_0x39abx9,_0x39abx3+_0x39abx13-_0x39abxa[_0x53bb[235]],_0x39abx3+_0x39abx14-_0x39abxa[_0x53bb[236]]))}}finally{this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[476]]()}};function mxStackLayout(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[662]]=null!=_0x39abx3?_0x39abx3:!0;this[_0x53bb[657]]=null!=_0x39abx4?_0x39abx4:0;this[_0x53bb[1732]]=null!=_0x39abx5?_0x39abx5:0;this[_0x53bb[1733]]=null!=_0x39abx9?_0x39abx9:0;this[_0x53bb[467]]=null!=_0x39abxa?_0x39abxa:0}mxStackLayout[_0x53bb[202]]= new mxGraphLayout;mxStackLayout[_0x53bb[202]][_0x53bb[196]]=mxStackLayout;mxStackLayout[_0x53bb[202]][_0x53bb[662]]=null;mxStackLayout[_0x53bb[202]][_0x53bb[657]]=null;mxStackLayout[_0x53bb[202]][_0x53bb[1732]]=null;mxStackLayout[_0x53bb[202]][_0x53bb[1733]]=null;mxStackLayout[_0x53bb[202]][_0x53bb[467]]=0;mxStackLayout[_0x53bb[202]][_0x53bb[1734]]= !1;mxStackLayout[_0x53bb[202]][_0x53bb[1334]]= !1;mxStackLayout[_0x53bb[202]][_0x53bb[1735]]= !1;mxStackLayout[_0x53bb[202]][_0x53bb[1736]]= !1;mxStackLayout[_0x53bb[202]][_0x53bb[1333]]=null;mxStackLayout[_0x53bb[202]][_0x53bb[1737]]=function(){return this[_0x53bb[662]]};mxStackLayout[_0x53bb[202]][_0x53bb[1702]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[1197]](_0x39abx2),_0x39abxa=this[_0x53bb[1737]]();if(null!=_0x39abx2&&null!=_0x39abx9){var _0x39abx12=0,_0x39abx13=0,_0x39abx14=_0x39abx5[_0x53bb[262]](_0x39abx9);_0x39abx3=_0x39abxa?_0x39abx3:_0x39abx4;_0x39abx12=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx9);null!=_0x39abx12&&(_0x39abx3-=_0x39abxa?_0x39abx12[_0x53bb[235]]:_0x39abx12[_0x53bb[236]]);for(_0x39abx12=0;_0x39abx12<_0x39abx14;_0x39abx12++){if(_0x39abx4=_0x39abx5[_0x53bb[263]](_0x39abx9,_0x39abx12),_0x39abx4!=_0x39abx2&&(_0x39abx4=_0x39abx5[_0x53bb[1721]](_0x39abx4),null!=_0x39abx4)){_0x39abx4=_0x39abxa?_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]/2:_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]/2;if(_0x39abx13<_0x39abx3&&_0x39abx4>_0x39abx3){break};_0x39abx13=_0x39abx4}};_0x39abxa=_0x39abx9[_0x53bb[1738]](_0x39abx2);_0x39abxa=Math[_0x53bb[160]](0,_0x39abx12-(_0x39abx12>_0x39abxa?1:0));_0x39abx5[_0x53bb[99]](_0x39abx9,_0x39abx2,_0x39abxa)}};mxStackLayout[_0x53bb[202]][_0x53bb[1739]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=_0x39abx3[_0x53bb[1721]](_0x39abx2);if(null!=this[_0x53bb[1179]][_0x53bb[526]]&&(null==_0x39abx4&&_0x39abx3[_0x53bb[1740]](_0x39abx2)||_0x39abx2==this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1741]])){_0x39abx4= new mxRectangle(0,0,this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[359]]-1,this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[167]]-1)};return _0x39abx4};mxStackLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[1737]](),_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=this[_0x53bb[1739]](_0x39abx2),_0x39abx9=0;null!=_0x39abx5&&(_0x39abx9=_0x39abx3?_0x39abx5[_0x53bb[119]]:_0x39abx5[_0x53bb[117]]);var _0x39abx9=_0x39abx9-(2*this[_0x53bb[657]]+2*this[_0x53bb[467]]),_0x39abxa=this[_0x53bb[1732]]+this[_0x53bb[467]],_0x39abx12=this[_0x53bb[1733]]+this[_0x53bb[467]];if(this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)){var _0x39abx13=this[_0x53bb[1179]][_0x53bb[1705]](_0x39abx2),_0x39abx14=mxUtils[_0x53bb[433]](_0x39abx13,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE),_0x39abx13=mxUtils[_0x53bb[433]](_0x39abx13,mxConstants.STYLE_HORIZONTAL,!0);_0x39abx3==_0x39abx13&&(_0x39abx9-=_0x39abx14);_0x39abx3?_0x39abx12+=_0x39abx14:_0x39abxa+=_0x39abx14};_0x39abx4[_0x53bb[473]]();try{for(var _0x39abx14=0,_0x39abx13=null,_0x39abx15=_0x39abx4[_0x53bb[262]](_0x39abx2),_0x39abx16=0;_0x39abx16<_0x39abx15;_0x39abx16++){var _0x39abx17=_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx16);if(!this[_0x53bb[1713]](_0x39abx17)&&this[_0x53bb[1711]](_0x39abx17)){var _0x39abx18=_0x39abx4[_0x53bb[1721]](_0x39abx17);if(null!=_0x39abx18){_0x39abx18=_0x39abx18[_0x53bb[238]]();if(null!=this[_0x53bb[1333]]&&null!=_0x39abx13&&(_0x39abx3&&_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]+_0x39abx18[_0x53bb[117]]+2*this[_0x53bb[657]]>this[_0x53bb[1333]]||!_0x39abx3&&_0x39abx13[_0x53bb[236]]+_0x39abx13[_0x53bb[119]]+_0x39abx18[_0x53bb[119]]+2*this[_0x53bb[657]]>this[_0x53bb[1333]])){_0x39abx13=null,_0x39abx3?_0x39abx12+=_0x39abx14+this[_0x53bb[657]]:_0x39abxa+=_0x39abx14+this[_0x53bb[657]],_0x39abx14=0};_0x39abx14=Math[_0x53bb[160]](_0x39abx14,_0x39abx3?_0x39abx18[_0x53bb[119]]:_0x39abx18[_0x53bb[117]]);null!=_0x39abx13?_0x39abx3?_0x39abx18[_0x53bb[235]]=_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]+this[_0x53bb[657]]:_0x39abx18[_0x53bb[236]]=_0x39abx13[_0x53bb[236]]+_0x39abx13[_0x53bb[119]]+this[_0x53bb[657]]:this[_0x53bb[1734]]||(_0x39abx3?_0x39abx18[_0x53bb[235]]=_0x39abxa:_0x39abx18[_0x53bb[236]]=_0x39abx12);_0x39abx3?_0x39abx18[_0x53bb[236]]=_0x39abx12:_0x39abx18[_0x53bb[235]]=_0x39abxa;this[_0x53bb[1334]]&&0<_0x39abx9&&(_0x39abx3?_0x39abx18[_0x53bb[119]]=_0x39abx9:_0x39abx18[_0x53bb[117]]=_0x39abx9);_0x39abx4[_0x53bb[1724]](_0x39abx17,_0x39abx18);_0x39abx13=_0x39abx18}}};this[_0x53bb[1735]]&&null!=_0x39abx5&&null!=_0x39abx13&&!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx2)?(_0x39abx5=_0x39abx5[_0x53bb[238]](),_0x39abx3?_0x39abx5[_0x53bb[117]]=_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]+this[_0x53bb[657]]:_0x39abx5[_0x53bb[119]]=_0x39abx13[_0x53bb[236]]+_0x39abx13[_0x53bb[119]]+this[_0x53bb[657]],_0x39abx4[_0x53bb[1724]](_0x39abx2,_0x39abx5)):this[_0x53bb[1736]]&&(null!=_0x39abx5&&null!=_0x39abx13)&&(_0x39abx3?_0x39abx13[_0x53bb[117]]=_0x39abx5[_0x53bb[117]]-_0x39abx13[_0x53bb[235]]-this[_0x53bb[657]]:_0x39abx13[_0x53bb[119]]=_0x39abx5[_0x53bb[119]]-_0x39abx13[_0x53bb[236]]-this[_0x53bb[657]])}finally{_0x39abx4[_0x53bb[476]]()}}};function mxPartitionLayout(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[662]]=null!=_0x39abx3?_0x39abx3:!0;this[_0x53bb[657]]=_0x39abx4||0;this[_0x53bb[467]]=_0x39abx5||0}mxPartitionLayout[_0x53bb[202]]= new mxGraphLayout;mxPartitionLayout[_0x53bb[202]][_0x53bb[196]]=mxPartitionLayout;mxPartitionLayout[_0x53bb[202]][_0x53bb[662]]=null;mxPartitionLayout[_0x53bb[202]][_0x53bb[657]]=null;mxPartitionLayout[_0x53bb[202]][_0x53bb[467]]=null;mxPartitionLayout[_0x53bb[202]][_0x53bb[1743]]= !0;mxPartitionLayout[_0x53bb[202]][_0x53bb[1737]]=function(){return this[_0x53bb[662]]};mxPartitionLayout[_0x53bb[202]][_0x53bb[1702]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]();var _0x39abx5=_0x39abx4[_0x53bb[1197]](_0x39abx2);if(null!=_0x39abx2&&null!=_0x39abx5){for(var _0x39abx9=0,_0x39abxa=0,_0x39abx12=_0x39abx4[_0x53bb[262]](_0x39abx5),_0x39abx9=0;_0x39abx9<_0x39abx12;_0x39abx9++){var _0x39abx13=_0x39abx4[_0x53bb[263]](_0x39abx5,_0x39abx9),_0x39abx13=this[_0x53bb[1726]](_0x39abx13);if(null!=_0x39abx13){_0x39abx13=_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]/2;if(_0x39abxa<_0x39abx3&&_0x39abx13>_0x39abx3){break};_0x39abxa=_0x39abx13}};_0x39abx3=_0x39abx5[_0x53bb[1738]](_0x39abx2);_0x39abx3=Math[_0x53bb[160]](0,_0x39abx9-(_0x39abx9>_0x39abx3?1:0));_0x39abx4[_0x53bb[99]](_0x39abx5,_0x39abx2,_0x39abx3)}};mxPartitionLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1737]](),_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx2);if(null!=this[_0x53bb[1179]][_0x53bb[526]]&&(null==_0x39abx5&&_0x39abx4[_0x53bb[1740]](_0x39abx2)||_0x39abx2==this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1741]])){_0x39abx5= new mxRectangle(0,0,this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[359]]-1,this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[167]]-1)};if(null!=_0x39abx5){for(var _0x39abx9=[],_0x39abxa=_0x39abx4[_0x53bb[262]](_0x39abx2),_0x39abx12=0;_0x39abx12<_0x39abxa;_0x39abx12++){var _0x39abx13=_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx12);!this[_0x53bb[1713]](_0x39abx13)&&this[_0x53bb[1711]](_0x39abx13)&&_0x39abx9[_0x53bb[207]](_0x39abx13)};_0x39abxa=_0x39abx9[_0x53bb[67]];if(0<_0x39abxa){var _0x39abx14=this[_0x53bb[467]],_0x39abx15=this[_0x53bb[467]],_0x39abx16=_0x39abx3?_0x39abx5[_0x53bb[119]]:_0x39abx5[_0x53bb[117]],_0x39abx16=_0x39abx16-2*this[_0x53bb[467]];_0x39abx2=this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)?this[_0x53bb[1179]][_0x53bb[1731]](_0x39abx2): new mxRectangle;_0x39abx16-=_0x39abx3?_0x39abx2[_0x53bb[119]]:_0x39abx2[_0x53bb[117]];_0x39abx14+=_0x39abx2[_0x53bb[117]];_0x39abx15+=_0x39abx2[_0x53bb[119]];_0x39abx2=this[_0x53bb[467]]+(_0x39abxa-1)*this[_0x53bb[657]];_0x39abx5=_0x39abx3?(_0x39abx5[_0x53bb[117]]-_0x39abx14-_0x39abx2)/_0x39abxa:(_0x39abx5[_0x53bb[119]]-_0x39abx15-_0x39abx2)/_0x39abxa;if(0<_0x39abx5){_0x39abx4[_0x53bb[473]]();try{for(_0x39abx12=0;_0x39abx12<_0x39abxa;_0x39abx12++){var _0x39abx13=_0x39abx9[_0x39abx12],_0x39abx17=_0x39abx4[_0x53bb[1721]](_0x39abx13);null!=_0x39abx17&&(_0x39abx17=_0x39abx17[_0x53bb[238]](),_0x39abx17[_0x53bb[235]]=_0x39abx14,_0x39abx17[_0x53bb[236]]=_0x39abx15,_0x39abx3?(this[_0x53bb[1743]]&&(_0x39abx17[_0x53bb[117]]=_0x39abx5,_0x39abx17[_0x53bb[119]]=_0x39abx16),_0x39abx14+=_0x39abx5+this[_0x53bb[657]]):(this[_0x53bb[1743]]&&(_0x39abx17[_0x53bb[119]]=_0x39abx5,_0x39abx17[_0x53bb[117]]=_0x39abx16),_0x39abx15+=_0x39abx5+this[_0x53bb[657]]),_0x39abx4[_0x53bb[1724]](_0x39abx13,_0x39abx17))}}finally{_0x39abx4[_0x53bb[476]]()}}}}};function mxCompactTreeLayout(_0x39abx2,_0x39abx3,_0x39abx4){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[662]]=null!=_0x39abx3?_0x39abx3:!0;this[_0x53bb[1744]]=null!=_0x39abx4?_0x39abx4:!1}mxCompactTreeLayout[_0x53bb[202]]= new mxGraphLayout;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[196]]=mxCompactTreeLayout;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[662]]=null;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1744]]=null;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1735]]= !0;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1745]]=10;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1746]]=null;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1747]]= !1;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1748]]=10;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1749]]=20;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1750]]= !0;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1751]]=5;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1752]]=4;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1753]]=8;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1754]]=4;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1755]]= !0;mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1713]]=function(_0x39abx2){return mxGraphLayout[_0x53bb[202]][_0x53bb[1713]][_0x53bb[183]](this,arguments)||0==this[_0x53bb[1179]][_0x53bb[1756]](_0x39abx2)[_0x53bb[67]]};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1737]]=function(){return this[_0x53bb[662]]};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1101]]=_0x39abx2;var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]();if(null==_0x39abx3){if(0<this[_0x53bb[1179]][_0x53bb[264]](_0x39abx2,_0x39abx4[_0x53bb[1197]](_0x39abx2),this[_0x53bb[1744]],!this[_0x53bb[1744]],!1)[_0x53bb[67]]){_0x39abx3=_0x39abx2}else {var _0x39abx5=this[_0x53bb[1179]][_0x53bb[1757]](_0x39abx2,!0,this[_0x53bb[1744]]);if(0<_0x39abx5[_0x53bb[67]]){for(var _0x39abx9=0;_0x39abx9<_0x39abx5[_0x53bb[67]];_0x39abx9++){if(!this[_0x53bb[1713]](_0x39abx5[_0x39abx9])&&0<this[_0x53bb[1179]][_0x53bb[264]](_0x39abx5[_0x39abx9],null,this[_0x53bb[1744]],!this[_0x53bb[1744]],!1)[_0x53bb[67]]){_0x39abx3=_0x39abx5[_0x39abx9];break}}}}};if(null!=_0x39abx3){this[_0x53bb[1746]]=this[_0x53bb[1735]]?{}:null;_0x39abx4[_0x53bb[473]]();try{var _0x39abxa=this[_0x53bb[1758]](_0x39abx3,_0x39abx2);if(null!=_0x39abxa){this[_0x53bb[1759]](_0x39abxa);var _0x39abx12=this[_0x53bb[1179]][_0x53bb[1020]],_0x39abx5=_0x39abx12;if(!this[_0x53bb[1747]]){var _0x39abx13=this[_0x53bb[1726]](_0x39abx3);null!=_0x39abx13&&(_0x39abx12=_0x39abx13[_0x53bb[235]],_0x39abx5=_0x39abx13[_0x53bb[236]])};_0x39abx13=null;_0x39abx13=this[_0x53bb[1737]]()?this[_0x53bb[1760]](_0x39abxa,_0x39abx12,_0x39abx5):this[_0x53bb[1761]](_0x39abxa,null,_0x39abx12,_0x39abx5);if(null!=_0x39abx13){var _0x39abx14=_0x39abx9=0;0>_0x39abx13[_0x53bb[235]]&&(_0x39abx9=Math[_0x53bb[425]](_0x39abx12-_0x39abx13[_0x53bb[235]]));0>_0x39abx13[_0x53bb[236]]&&(_0x39abx14=Math[_0x53bb[425]](_0x39abx5-_0x39abx13[_0x53bb[236]]));(0!=_0x39abx9||0!=_0x39abx14)&&this[_0x53bb[1762]](_0x39abxa,_0x39abx9,_0x39abx14);this[_0x53bb[1735]]&&this[_0x53bb[1763]]();this[_0x53bb[1755]]&&this[_0x53bb[1764]](_0x39abxa)}}}finally{_0x39abx4[_0x53bb[476]]()}}};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1762]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2[_0x53bb[235]]+=_0x39abx3;_0x39abx2[_0x53bb[236]]+=_0x39abx4;this[_0x53bb[183]](_0x39abx2);for(_0x39abx2=_0x39abx2[_0x53bb[247]];null!=_0x39abx2;){this[_0x53bb[1762]](_0x39abx2,_0x39abx3,_0x39abx4),_0x39abx2=_0x39abx2[_0x53bb[1765]]}};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1758]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:[];var _0x39abx5=mxCellPath[_0x53bb[385]](_0x39abx2),_0x39abx9=null;if(null!=_0x39abx2&&null==_0x39abx4[_0x39abx5]&&!this[_0x53bb[1713]](_0x39abx2)){_0x39abx4[_0x39abx5]=_0x39abx2;var _0x39abx9=this[_0x53bb[1766]](_0x39abx2),_0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abxa=null;_0x39abx2=this[_0x53bb[1179]][_0x53bb[264]](_0x39abx2,_0x39abx3,this[_0x53bb[1744]],!this[_0x53bb[1744]],!1,!0);for(var _0x39abx12=this[_0x53bb[1179]][_0x53bb[249]](),_0x39abx13=0;_0x39abx13<_0x39abx2[_0x53bb[67]];_0x39abx13++){var _0x39abx14=_0x39abx2[_0x39abx13];if(!this[_0x53bb[1715]](_0x39abx14)){this[_0x53bb[1750]]&&this[_0x53bb[1722]](_0x39abx14,null);this[_0x53bb[1755]]&&(this[_0x53bb[1716]](_0x39abx14,!1),this[_0x53bb[1722]](_0x39abx14,null));var _0x39abx15=_0x39abx12[_0x53bb[248]](_0x39abx14),_0x39abx14=null!=_0x39abx15?_0x39abx15[_0x53bb[1710]](this[_0x53bb[1744]]):_0x39abx12[_0x53bb[1710]](_0x39abx14,this[_0x53bb[1744]]),_0x39abx15=this[_0x53bb[1758]](_0x39abx14,_0x39abx3,_0x39abx4);null!=_0x39abx15&&null!=_0x39abx5[_0x53bb[1721]](_0x39abx14)&&(null==_0x39abxa?_0x39abx9[_0x53bb[247]]=_0x39abx15:_0x39abxa[_0x53bb[1765]]=_0x39abx15,_0x39abxa=_0x39abx15)}}};return _0x39abx9};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1759]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3=_0x39abx2[_0x53bb[247]];null!=_0x39abx3;){this[_0x53bb[1759]](_0x39abx3),_0x39abx3=_0x39abx3[_0x53bb[1765]]};null!=_0x39abx2[_0x53bb[247]]?this[_0x53bb[1767]](_0x39abx2,this[_0x53bb[234]](_0x39abx2)):this[_0x53bb[1768]](_0x39abx2)}};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1760]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx2[_0x53bb[235]]+=_0x39abx3+_0x39abx2[_0x53bb[1769]];_0x39abx2[_0x53bb[236]]+=_0x39abx4+_0x39abx2[_0x53bb[1770]];_0x39abx5=this[_0x53bb[183]](_0x39abx2,_0x39abx5);_0x39abx3=_0x39abx2[_0x53bb[247]];if(null!=_0x39abx3){_0x39abx5=this[_0x53bb[1760]](_0x39abx3,_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],_0x39abx5);_0x39abx4=_0x39abx2[_0x53bb[236]]+_0x39abx3[_0x53bb[1770]];for(var _0x39abx9=_0x39abx3[_0x53bb[1765]];null!=_0x39abx9;){_0x39abx5=this[_0x53bb[1760]](_0x39abx9,_0x39abx2[_0x53bb[235]]+_0x39abx3[_0x53bb[1769]],_0x39abx4,_0x39abx5),_0x39abx4+=_0x39abx9[_0x53bb[1770]],_0x39abx9=_0x39abx9[_0x53bb[1765]]}};return _0x39abx5};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1761]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[235]]+=_0x39abx4+_0x39abx2[_0x53bb[1770]];_0x39abx2[_0x53bb[236]]+=_0x39abx5+_0x39abx2[_0x53bb[1769]];_0x39abx9=this[_0x53bb[183]](_0x39abx2,_0x39abx9);_0x39abx3=_0x39abx2[_0x53bb[247]];if(null!=_0x39abx3){_0x39abx9=this[_0x53bb[1761]](_0x39abx3,_0x39abx2,_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],_0x39abx9);_0x39abx4=_0x39abx2[_0x53bb[235]]+_0x39abx3[_0x53bb[1770]];for(_0x39abx5=_0x39abx3[_0x53bb[1765]];null!=_0x39abx5;){_0x39abx9=this[_0x53bb[1761]](_0x39abx5,_0x39abx2,_0x39abx4,_0x39abx2[_0x53bb[236]]+_0x39abx3[_0x53bb[1769]],_0x39abx9),_0x39abx4+=_0x39abx5[_0x53bb[1770]],_0x39abx5=_0x39abx5[_0x53bb[1765]]}};return _0x39abx9};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1767]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1749]]+this[_0x53bb[1748]],_0x39abx5=(_0x39abx3-_0x39abx2[_0x53bb[117]])/2-this[_0x53bb[1749]],_0x39abx9=_0x39abx5+_0x39abx2[_0x53bb[117]]+2*this[_0x53bb[1749]]-_0x39abx3;_0x39abx2[_0x53bb[247]][_0x53bb[1769]]=_0x39abx4+_0x39abx2[_0x53bb[119]];_0x39abx2[_0x53bb[247]][_0x53bb[1770]]=_0x39abx9;_0x39abx2[_0x53bb[1772]][_0x53bb[1771]]=this[_0x53bb[1773]](_0x39abx2[_0x53bb[119]],0,this[_0x53bb[1773]](_0x39abx4,_0x39abx9,_0x39abx2[_0x53bb[1772]][_0x53bb[1771]]));_0x39abx2[_0x53bb[1772]][_0x53bb[1774]]=this[_0x53bb[1773]](_0x39abx2[_0x53bb[119]],0,this[_0x53bb[1773]](_0x39abx4,_0x39abx5,_0x39abx2[_0x53bb[1772]][_0x53bb[1774]]))};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1768]]=function(_0x39abx2){var _0x39abx3=2*this[_0x53bb[1749]];_0x39abx2[_0x53bb[1772]][_0x53bb[1775]]=this[_0x53bb[1773]](_0x39abx2[_0x53bb[119]]+_0x39abx3,0);_0x39abx2[_0x53bb[1772]][_0x53bb[1771]]=_0x39abx2[_0x53bb[1772]][_0x53bb[1775]];_0x39abx2[_0x53bb[1772]][_0x53bb[1776]]=this[_0x53bb[1773]](0,-_0x39abx2[_0x53bb[117]]-_0x39abx3);_0x39abx2[_0x53bb[1772]][_0x53bb[1774]]=this[_0x53bb[1773]](_0x39abx2[_0x53bb[119]]+_0x39abx3,0,_0x39abx2[_0x53bb[1772]][_0x53bb[1776]])};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[234]]=function(_0x39abx2){var _0x39abx3=2*this[_0x53bb[1749]],_0x39abx4=_0x39abx2[_0x53bb[247]];_0x39abx2[_0x53bb[1772]]=_0x39abx4[_0x53bb[1772]];for(var _0x39abx5=_0x39abx4[_0x53bb[117]]+_0x39abx3,_0x39abx9=_0x39abx5,_0x39abx4=_0x39abx4[_0x53bb[1765]];null!=_0x39abx4;){var _0x39abxa=this[_0x53bb[1777]](_0x39abx2[_0x53bb[1772]],_0x39abx4[_0x53bb[1772]]);_0x39abx4[_0x53bb[1770]]=_0x39abxa+_0x39abx5;_0x39abx4[_0x53bb[1769]]=0;_0x39abx5=_0x39abx4[_0x53bb[117]]+_0x39abx3;_0x39abx9+=_0x39abxa+_0x39abx5;_0x39abx4=_0x39abx4[_0x53bb[1765]]};return _0x39abx9};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1777]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=0,_0x39abx5=0,_0x39abx9=0,_0x39abxa=_0x39abx2[_0x53bb[1774]],_0x39abx12=_0x39abx3[_0x53bb[1771]];null!=_0x39abx12&&null!=_0x39abxa;){var _0x39abx13=this[_0x53bb[1368]](_0x39abx4,_0x39abx5,_0x39abx12[_0x53bb[1126]],_0x39abx12[_0x53bb[1125]],_0x39abxa[_0x53bb[1126]],_0x39abxa[_0x53bb[1125]]),_0x39abx5=_0x39abx5+_0x39abx13,_0x39abx9=_0x39abx9+_0x39abx13;_0x39abx4+_0x39abx12[_0x53bb[1126]]<=_0x39abxa[_0x53bb[1126]]?(_0x39abx4+=_0x39abx12[_0x53bb[1126]],_0x39abx5+=_0x39abx12[_0x53bb[1125]],_0x39abx12=_0x39abx12[_0x53bb[1765]]):(_0x39abx4-=_0x39abxa[_0x53bb[1126]],_0x39abx5-=_0x39abxa[_0x53bb[1125]],_0x39abxa=_0x39abxa[_0x53bb[1765]])};null!=_0x39abx12?(_0x39abx4=this[_0x53bb[1778]](_0x39abx2[_0x53bb[1775]],0,0,_0x39abx12,_0x39abx4,_0x39abx5),_0x39abx2[_0x53bb[1775]]=null!=_0x39abx4[_0x53bb[1765]]?_0x39abx3[_0x53bb[1775]]:_0x39abx4,_0x39abx2[_0x53bb[1776]]=_0x39abx3[_0x53bb[1776]]):(_0x39abx4=this[_0x53bb[1778]](_0x39abx3[_0x53bb[1776]],_0x39abx4,_0x39abx5,_0x39abxa,0,0),null==_0x39abx4[_0x53bb[1765]]&&(_0x39abx2[_0x53bb[1776]]=_0x39abx4));_0x39abx2[_0x53bb[1774]]=_0x39abx3[_0x53bb[1774]];return _0x39abx9};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1368]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=0;if(_0x39abx9<=_0x39abx2||0>=_0x39abx2+_0x39abx4){return 0};_0x39abx12=0<_0x39abx9*_0x39abx5-_0x39abx4*_0x39abxa?0>_0x39abx2?_0x39abx2*_0x39abx5/_0x39abx4-_0x39abx3:0<_0x39abx2?_0x39abx2*_0x39abxa/_0x39abx9-_0x39abx3:-_0x39abx3:_0x39abx9<_0x39abx2+_0x39abx4?_0x39abxa-(_0x39abx3+(_0x39abx9-_0x39abx2)*_0x39abx5/_0x39abx4):_0x39abx9>_0x39abx2+_0x39abx4?(_0x39abx4+_0x39abx2)*_0x39abxa/_0x39abx9-(_0x39abx3+_0x39abx5):_0x39abxa-(_0x39abx3+_0x39abx5);return 0<_0x39abx12?_0x39abx12:0};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1778]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx3=_0x39abx9+_0x39abx5[_0x53bb[1126]]-_0x39abx3;_0x39abx9=_0x39abx9=0;0==_0x39abx5[_0x53bb[1126]]?_0x39abx9=_0x39abx5[_0x53bb[1125]]:(_0x39abx9=_0x39abx3*_0x39abx5[_0x53bb[1125]],_0x39abx9/=_0x39abx5[_0x53bb[1126]]);_0x39abx3=this[_0x53bb[1773]](_0x39abx3,_0x39abx9,_0x39abx5[_0x53bb[1765]]);_0x39abx2[_0x53bb[1765]]=this[_0x53bb[1773]](0,_0x39abxa+_0x39abx5[_0x53bb[1125]]-_0x39abx9-_0x39abx4,_0x39abx3);return _0x39abx3};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1766]]=function(_0x39abx2){var _0x39abx3={};_0x39abx3[_0x53bb[246]]=_0x39abx2;_0x39abx3[_0x53bb[235]]=0;_0x39abx3[_0x53bb[236]]=0;_0x39abx3[_0x53bb[117]]=0;_0x39abx3[_0x53bb[119]]=0;_0x39abx2=this[_0x53bb[1726]](_0x39abx2);null!=_0x39abx2&&(this[_0x53bb[1737]]()?(_0x39abx3[_0x53bb[117]]=_0x39abx2[_0x53bb[119]],_0x39abx3[_0x53bb[119]]=_0x39abx2[_0x53bb[117]]):(_0x39abx3[_0x53bb[117]]=_0x39abx2[_0x53bb[117]],_0x39abx3[_0x53bb[119]]=_0x39abx2[_0x53bb[119]]));_0x39abx3[_0x53bb[1769]]=0;_0x39abx3[_0x53bb[1770]]=0;_0x39abx3[_0x53bb[1772]]={};return _0x39abx3};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[183]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx2[_0x53bb[246]],_0x39abx9=_0x39abx4[_0x53bb[1721]](_0x39abx5);null!=_0x39abx5&&null!=_0x39abx9&&(this[_0x53bb[1711]](_0x39abx5)&&(_0x39abx9=this[_0x53bb[1725]](_0x39abx5,_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]),this[_0x53bb[1735]]&&(_0x39abx4=_0x39abx4[_0x53bb[1197]](_0x39abx5),_0x39abx5=mxCellPath[_0x53bb[385]](_0x39abx4),null==this[_0x53bb[1746]][_0x39abx5]&&(this[_0x53bb[1746]][_0x39abx5]=_0x39abx4))),_0x39abx3=null==_0x39abx3? new mxRectangle(_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]]): new mxRectangle(Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]],_0x39abx9[_0x53bb[235]]),Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]],_0x39abx9[_0x53bb[236]]),Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]),Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]])));return _0x39abx3};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1773]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5={};_0x39abx5[_0x53bb[1126]]=_0x39abx2;_0x39abx5[_0x53bb[1125]]=_0x39abx3;_0x39abx5[_0x53bb[1765]]=_0x39abx4;return _0x39abx5};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1763]]=function(){var _0x39abx2=[],_0x39abx3;for(_0x39abx3 in this[_0x53bb[1746]]){_0x39abx2[_0x53bb[207]](this[_0x53bb[1746]][_0x39abx3])};this[_0x53bb[1727]](mxUtils[_0x53bb[1779]](_0x39abx2,!0),this[_0x53bb[1745]])};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1764]]=function(_0x39abx2){this[_0x53bb[1780]](_0x39abx2);for(_0x39abx2=_0x39abx2[_0x53bb[247]];null!=_0x39abx2;){this[_0x53bb[1764]](_0x39abx2),_0x39abx2=_0x39abx2[_0x53bb[1765]]}};mxCompactTreeLayout[_0x53bb[202]][_0x53bb[1780]]=function(_0x39abx2){for(var _0x39abx3=_0x39abx2[_0x53bb[247]],_0x39abx4=_0x39abx2[_0x53bb[246]],_0x39abx5=0,_0x39abx9=[];null!=_0x39abx3;){_0x39abx5++;var _0x39abxa=_0x39abx3[_0x53bb[235]];this[_0x53bb[662]]&&(_0x39abxa=_0x39abx3[_0x53bb[236]]);_0x39abx9[_0x53bb[207]]( new WeightedCellSorter(_0x39abx3,_0x39abxa));_0x39abx3=_0x39abx3[_0x53bb[1765]]};_0x39abx9[_0x53bb[470]](WeightedCellSorter[_0x53bb[202]][_0x53bb[469]]);var _0x39abxa=_0x39abx2[_0x53bb[117]],_0x39abx12=(_0x39abx5+1)*this[_0x53bb[1751]];_0x39abxa>_0x39abx12+2*this[_0x53bb[1751]]&&(_0x39abxa-=2*this[_0x53bb[1751]]);_0x39abx2=_0x39abxa/_0x39abx5;_0x39abx3=_0x39abx2/2;_0x39abxa>_0x39abx12+2*this[_0x53bb[1751]]&&(_0x39abx3+=this[_0x53bb[1751]]);for(var _0x39abxa=this[_0x53bb[1753]]-this[_0x53bb[1752]],_0x39abx12=0,_0x39abx13=this[_0x53bb[1726]](_0x39abx4),_0x39abx14=0;_0x39abx14<_0x39abx9[_0x53bb[67]];_0x39abx14++){for(var _0x39abx15=_0x39abx9[_0x39abx14][_0x53bb[246]][_0x53bb[246]],_0x39abx16=this[_0x53bb[1726]](_0x39abx15),_0x39abx15=this[_0x53bb[1179]][_0x53bb[1781]](_0x39abx4,_0x39abx15,!1),_0x39abx17=[],_0x39abx18=0,_0x39abx19=0,_0x39abx1a=0;_0x39abx1a<_0x39abx15[_0x53bb[67]];_0x39abx1a++){this[_0x53bb[662]]?(_0x39abx18=_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]],_0x39abx19=_0x39abx13[_0x53bb[236]]+_0x39abx3,_0x39abx17[_0x53bb[207]]( new mxPoint(_0x39abx18,_0x39abx19)),_0x39abx18=_0x39abx13[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]+_0x39abxa,_0x39abx17[_0x53bb[207]]( new mxPoint(_0x39abx18,_0x39abx19)),_0x39abx19=_0x39abx16[_0x53bb[236]]+_0x39abx16[_0x53bb[119]]/2):(_0x39abx18=_0x39abx13[_0x53bb[235]]+_0x39abx3,_0x39abx19=_0x39abx13[_0x53bb[236]]+_0x39abx13[_0x53bb[119]],_0x39abx17[_0x53bb[207]]( new mxPoint(_0x39abx18,_0x39abx19)),_0x39abx19=_0x39abx13[_0x53bb[236]]+_0x39abx13[_0x53bb[119]]+_0x39abxa,_0x39abx17[_0x53bb[207]]( new mxPoint(_0x39abx18,_0x39abx19)),_0x39abx18=_0x39abx16[_0x53bb[235]]+_0x39abx16[_0x53bb[117]]/2),_0x39abx17[_0x53bb[207]]( new mxPoint(_0x39abx18,_0x39abx19)),this[_0x53bb[1722]](_0x39abx15[_0x39abx1a],_0x39abx17)};_0x39abx14<_0x39abx5/2?_0x39abxa+=this[_0x53bb[1752]]:_0x39abx14>_0x39abx5/2&&(_0x39abxa-=this[_0x53bb[1752]]);_0x39abx3+=_0x39abx2;_0x39abx12=Math[_0x53bb[160]](_0x39abx12,_0x39abxa)}};function WeightedCellSorter(_0x39abx2,_0x39abx3){this[_0x53bb[246]]=_0x39abx2;this[_0x53bb[1782]]=_0x39abx3}WeightedCellSorter[_0x53bb[202]][_0x53bb[1782]]=0;WeightedCellSorter[_0x53bb[202]][_0x53bb[1783]]= !1;WeightedCellSorter[_0x53bb[202]][_0x53bb[1784]]= !1;WeightedCellSorter[_0x53bb[202]][_0x53bb[1785]]=null;WeightedCellSorter[_0x53bb[202]][_0x53bb[246]]=null;WeightedCellSorter[_0x53bb[202]][_0x53bb[469]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2&&null!=_0x39abx3?_0x39abx3[_0x53bb[1782]]>_0x39abx2[_0x53bb[1782]]?1:_0x39abx3[_0x53bb[1782]]<_0x39abx2[_0x53bb[1782]]?-1:_0x39abx3[_0x53bb[1783]]?1:-1:0};function mxFastOrganicLayout(_0x39abx2){mxGraphLayout[_0x53bb[239]](this,_0x39abx2)}mxFastOrganicLayout[_0x53bb[202]]= new mxGraphLayout;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[196]]=mxFastOrganicLayout;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1786]]= !0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1750]]= !0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1787]]= !0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1788]]=50;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1789]]=0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1790]]=2;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1791]]=500;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1792]]=4;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1793]]=200;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1794]]=0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1795]]=0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1796]]=0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1797]]= !0;mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1713]]=function(_0x39abx2){return mxGraphLayout[_0x53bb[202]][_0x53bb[1713]][_0x53bb[183]](this,arguments)||0==this[_0x53bb[1179]][_0x53bb[1756]](_0x39abx2)[_0x53bb[67]]};mxFastOrganicLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();this[_0x53bb[1798]]=[];for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[1728]](_0x39abx2),_0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){this[_0x53bb[1713]](_0x39abx4[_0x39abx5])||this[_0x53bb[1798]][_0x53bb[207]](_0x39abx4[_0x39abx5])};var _0x39abx9=this[_0x53bb[1786]]?this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[1799]](this[_0x53bb[1798]]):null,_0x39abxa=this[_0x53bb[1798]][_0x53bb[67]];this[_0x53bb[1800]]=[];this[_0x53bb[1801]]=[];this[_0x53bb[1802]]=[];this[_0x53bb[1803]]=[];this[_0x53bb[1804]]=[];this[_0x53bb[1805]]=[];this[_0x53bb[1806]]=[];this[_0x53bb[1807]]=[];0.0010>this[_0x53bb[1788]]&&(this[_0x53bb[1788]]=0.0010);this[_0x53bb[1789]]=this[_0x53bb[1788]]*this[_0x53bb[1788]];for(_0x39abx5=0;_0x39abx5<this[_0x53bb[1798]][_0x53bb[67]];_0x39abx5++){var _0x39abx12=this[_0x53bb[1798]][_0x39abx5];this[_0x53bb[1803]][_0x39abx5]=[];var _0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx12);this[_0x53bb[1800]][_0x39abx13]=_0x39abx5;var _0x39abx14=this[_0x53bb[1726]](_0x39abx12),_0x39abx15=_0x39abx14[_0x53bb[117]],_0x39abx16=_0x39abx14[_0x53bb[119]],_0x39abx17=_0x39abx14[_0x53bb[235]],_0x39abx18=_0x39abx14[_0x53bb[236]];this[_0x53bb[1803]][_0x39abx5][0]=_0x39abx17+_0x39abx15/2;this[_0x53bb[1803]][_0x39abx5][1]=_0x39abx18+_0x39abx16/2;this[_0x53bb[1806]][_0x39abx5]=Math[_0x53bb[243]](_0x39abx15,_0x39abx16);this[_0x53bb[1807]][_0x39abx5]=this[_0x53bb[1806]][_0x39abx5]*this[_0x53bb[1806]][_0x39abx5]};_0x39abx3[_0x53bb[473]]();try{for(_0x39abx5=0;_0x39abx5<_0x39abxa;_0x39abx5++){this[_0x53bb[1801]][_0x39abx5]=0;this[_0x53bb[1802]][_0x39abx5]=0;this[_0x53bb[1804]][_0x39abx5]=this[_0x53bb[1711]](this[_0x53bb[1798]][_0x39abx5]);var _0x39abx19=this[_0x53bb[1179]][_0x53bb[1756]](this[_0x53bb[1798]][_0x39abx5],_0x39abx2),_0x39abx4=this[_0x53bb[1179]][_0x53bb[1808]](_0x39abx19,this[_0x53bb[1798]][_0x39abx5]);this[_0x53bb[1805]][_0x39abx5]=[];for(_0x39abx15=0;_0x39abx15<_0x39abx4[_0x53bb[67]];_0x39abx15++){this[_0x53bb[1750]]&&this[_0x53bb[1179]][_0x53bb[1809]](_0x39abx19[_0x39abx15]);this[_0x53bb[1787]]&&this[_0x53bb[1716]](_0x39abx19[_0x39abx15],!1);var _0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx4[_0x39abx15]),_0x39abx1a=this[_0x53bb[1800]][_0x39abx13];this[_0x53bb[1805]][_0x39abx5][_0x39abx15]=null!=_0x39abx1a?_0x39abx1a:_0x39abx5}};this[_0x53bb[1794]]=this[_0x53bb[1793]];0==this[_0x53bb[1795]]&&(this[_0x53bb[1795]]=20*Math[_0x53bb[428]](_0x39abxa));for(this[_0x53bb[1796]]=0;this[_0x53bb[1796]]<this[_0x53bb[1795]];this[_0x53bb[1796]]++){if(!this[_0x53bb[1797]]){return};this[_0x53bb[1810]]();this[_0x53bb[1811]]();this[_0x53bb[1812]]();this[_0x53bb[1813]]()};_0x39abx2=_0x39abx4=null;for(_0x39abx5=0;_0x39abx5<this[_0x53bb[1798]][_0x53bb[67]];_0x39abx5++){_0x39abx12=this[_0x53bb[1798]][_0x39abx5],this[_0x53bb[1711]](_0x39abx12)&&(_0x39abx14=this[_0x53bb[1726]](_0x39abx12),null!=_0x39abx14&&(this[_0x53bb[1803]][_0x39abx5][0]-=_0x39abx14[_0x53bb[117]]/2,this[_0x53bb[1803]][_0x39abx5][1]-=_0x39abx14[_0x53bb[119]]/2,_0x39abx17=this[_0x53bb[1179]][_0x53bb[1021]](this[_0x53bb[1803]][_0x39abx5][0]),_0x39abx18=this[_0x53bb[1179]][_0x53bb[1021]](this[_0x53bb[1803]][_0x39abx5][1]),this[_0x53bb[1725]](_0x39abx12,_0x39abx17,_0x39abx18),_0x39abx4=null==_0x39abx4?_0x39abx17:Math[_0x53bb[243]](_0x39abx4,_0x39abx17),_0x39abx2=null==_0x39abx2?_0x39abx18:Math[_0x53bb[243]](_0x39abx2,_0x39abx18)))};_0x39abx5=-(_0x39abx4||0)+1;_0x39abx12=-(_0x39abx2||0)+1;null!=_0x39abx9&&(_0x39abx5+=_0x39abx9[_0x53bb[235]],_0x39abx12+=_0x39abx9[_0x53bb[236]]);this[_0x53bb[1179]][_0x53bb[834]](this[_0x53bb[1798]],_0x39abx5,_0x39abx12)}finally{_0x39abx3[_0x53bb[476]]()}};mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1812]]=function(){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[1798]][_0x53bb[67]];_0x39abx2++){if(this[_0x53bb[1804]][_0x39abx2]){var _0x39abx3=Math[_0x53bb[428]](this[_0x53bb[1801]][_0x39abx2]*this[_0x53bb[1801]][_0x39abx2]+this[_0x53bb[1802]][_0x39abx2]*this[_0x53bb[1802]][_0x39abx2]);0.0010>_0x39abx3&&(_0x39abx3=0.0010);var _0x39abx4=this[_0x53bb[1801]][_0x39abx2]/_0x39abx3*Math[_0x53bb[243]](_0x39abx3,this[_0x53bb[1794]]),_0x39abx3=this[_0x53bb[1802]][_0x39abx2]/_0x39abx3*Math[_0x53bb[243]](_0x39abx3,this[_0x53bb[1794]]);this[_0x53bb[1801]][_0x39abx2]=0;this[_0x53bb[1802]][_0x39abx2]=0;this[_0x53bb[1803]][_0x39abx2][0]+=_0x39abx4;this[_0x53bb[1803]][_0x39abx2][1]+=_0x39abx3}}};mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1811]]=function(){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[1798]][_0x53bb[67]];_0x39abx2++){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1805]][_0x39abx2][_0x53bb[67]];_0x39abx3++){var _0x39abx4=this[_0x53bb[1805]][_0x39abx2][_0x39abx3];if(_0x39abx2!=_0x39abx4&&this[_0x53bb[1804]][_0x39abx2]&&this[_0x53bb[1804]][_0x39abx4]){var _0x39abx5=this[_0x53bb[1803]][_0x39abx2][0]-this[_0x53bb[1803]][_0x39abx4][0],_0x39abx9=this[_0x53bb[1803]][_0x39abx2][1]-this[_0x53bb[1803]][_0x39abx4][1],_0x39abxa=_0x39abx5*_0x39abx5+_0x39abx9*_0x39abx9-this[_0x53bb[1807]][_0x39abx2]-this[_0x53bb[1807]][_0x39abx4];_0x39abxa<this[_0x53bb[1792]]&&(_0x39abxa=this[_0x53bb[1792]]);var _0x39abx12=Math[_0x53bb[428]](_0x39abxa),_0x39abxa=_0x39abxa/this[_0x53bb[1788]],_0x39abx5=_0x39abx5/_0x39abx12*_0x39abxa,_0x39abx9=_0x39abx9/_0x39abx12*_0x39abxa;this[_0x53bb[1801]][_0x39abx2]-=_0x39abx5;this[_0x53bb[1802]][_0x39abx2]-=_0x39abx9;this[_0x53bb[1801]][_0x39abx4]+=_0x39abx5;this[_0x53bb[1802]][_0x39abx4]+=_0x39abx9}}}};mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1810]]=function(){for(var _0x39abx2=this[_0x53bb[1798]][_0x53bb[67]],_0x39abx3=0;_0x39abx3<_0x39abx2;_0x39abx3++){for(var _0x39abx4=_0x39abx3;_0x39abx4<_0x39abx2;_0x39abx4++){if(!this[_0x53bb[1797]]){return};if(_0x39abx4!=_0x39abx3&&this[_0x53bb[1804]][_0x39abx3]&&this[_0x53bb[1804]][_0x39abx4]){var _0x39abx5=this[_0x53bb[1803]][_0x39abx3][0]-this[_0x53bb[1803]][_0x39abx4][0],_0x39abx9=this[_0x53bb[1803]][_0x39abx3][1]-this[_0x53bb[1803]][_0x39abx4][1];0==_0x39abx5&&(_0x39abx5=0.01+Math[_0x53bb[1814]]());0==_0x39abx9&&(_0x39abx9=0.01+Math[_0x53bb[1814]]());var _0x39abxa=Math[_0x53bb[428]](_0x39abx5*_0x39abx5+_0x39abx9*_0x39abx9),_0x39abx12=_0x39abxa-this[_0x53bb[1806]][_0x39abx3]-this[_0x53bb[1806]][_0x39abx4];_0x39abx12>this[_0x53bb[1791]]||(_0x39abx12<this[_0x53bb[1790]]&&(_0x39abx12=this[_0x53bb[1790]]),_0x39abx12=this[_0x53bb[1789]]/_0x39abx12,_0x39abx5=_0x39abx5/_0x39abxa*_0x39abx12,_0x39abx9=_0x39abx9/_0x39abxa*_0x39abx12,this[_0x53bb[1801]][_0x39abx3]+=_0x39abx5,this[_0x53bb[1802]][_0x39abx3]+=_0x39abx9,this[_0x53bb[1801]][_0x39abx4]-=_0x39abx5,this[_0x53bb[1802]][_0x39abx4]-=_0x39abx9)}}}};mxFastOrganicLayout[_0x53bb[202]][_0x53bb[1813]]=function(){this[_0x53bb[1794]]=this[_0x53bb[1793]]*(1-this[_0x53bb[1796]]/this[_0x53bb[1795]])};function mxCircleLayout(_0x39abx2,_0x39abx3){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[1806]]=null!=_0x39abx3?_0x39abx3:100}mxCircleLayout[_0x53bb[202]]= new mxGraphLayout;mxCircleLayout[_0x53bb[202]][_0x53bb[196]]=mxCircleLayout;mxCircleLayout[_0x53bb[202]][_0x53bb[1806]]=null;mxCircleLayout[_0x53bb[202]][_0x53bb[1815]]= !1;mxCircleLayout[_0x53bb[202]][_0x53bb[1732]]=0;mxCircleLayout[_0x53bb[202]][_0x53bb[1733]]=0;mxCircleLayout[_0x53bb[202]][_0x53bb[1750]]= !0;mxCircleLayout[_0x53bb[202]][_0x53bb[1787]]= !0;mxCircleLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=0,_0x39abx5=null,_0x39abx9=null,_0x39abxa=[],_0x39abx12=_0x39abx3[_0x53bb[262]](_0x39abx2),_0x39abx13=0;_0x39abx13<_0x39abx12;_0x39abx13++){var _0x39abx14=_0x39abx3[_0x53bb[263]](_0x39abx2,_0x39abx13);if(this[_0x53bb[1713]](_0x39abx14)){this[_0x53bb[1715]](_0x39abx14)||(this[_0x53bb[1750]]&&this[_0x53bb[1179]][_0x53bb[1809]](_0x39abx14),this[_0x53bb[1787]]&&this[_0x53bb[1716]](_0x39abx14,!1))}else {_0x39abxa[_0x53bb[207]](_0x39abx14);var _0x39abx15=this[_0x53bb[1726]](_0x39abx14),_0x39abx5=null==_0x39abx5?_0x39abx15[_0x53bb[236]]:Math[_0x53bb[243]](_0x39abx5,_0x39abx15[_0x53bb[236]]),_0x39abx9=null==_0x39abx9?_0x39abx15[_0x53bb[235]]:Math[_0x53bb[243]](_0x39abx9,_0x39abx15[_0x53bb[235]]),_0x39abx4=Math[_0x53bb[160]](_0x39abx4,Math[_0x53bb[160]](_0x39abx15[_0x53bb[117]],_0x39abx15[_0x53bb[119]]))}};var _0x39abx16=this[_0x53bb[1816]](_0x39abxa[_0x53bb[67]],_0x39abx4);this[_0x53bb[1815]]&&(_0x39abx9=this[_0x53bb[1732]],_0x39abx5=this[_0x53bb[1733]]);this[_0x53bb[1817]](_0x39abxa,_0x39abx16,_0x39abx9,_0x39abx5)}finally{_0x39abx3[_0x53bb[476]]()}};mxCircleLayout[_0x53bb[202]][_0x53bb[1816]]=function(_0x39abx2,_0x39abx3){return Math[_0x53bb[160]](_0x39abx2*_0x39abx3/Math[_0x53bb[424]],this[_0x53bb[1806]])};mxCircleLayout[_0x53bb[202]][_0x53bb[1817]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){for(var _0x39abx9=_0x39abx2[_0x53bb[67]],_0x39abxa=2*Math[_0x53bb[424]]/_0x39abx9,_0x39abx12=0;_0x39abx12<_0x39abx9;_0x39abx12++){this[_0x53bb[1711]](_0x39abx2[_0x39abx12])&&this[_0x53bb[1725]](_0x39abx2[_0x39abx12],_0x39abx4+_0x39abx3+_0x39abx3*Math[_0x53bb[427]](_0x39abx12*_0x39abxa),_0x39abx5+_0x39abx3+_0x39abx3*Math[_0x53bb[426]](_0x39abx12*_0x39abxa))}};function mxParallelEdgeLayout(_0x39abx2){mxGraphLayout[_0x53bb[239]](this,_0x39abx2)}mxParallelEdgeLayout[_0x53bb[202]]= new mxGraphLayout;mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[196]]=mxParallelEdgeLayout;mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[657]]=20;mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1818]](_0x39abx2);this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx3 in _0x39abx2){var _0x39abx4=_0x39abx2[_0x39abx3];1<_0x39abx4[_0x53bb[67]]&&this[_0x53bb[1759]](_0x39abx4)}}finally{this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[476]]()}};mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[1818]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=[],_0x39abx5=_0x39abx3[_0x53bb[262]](_0x39abx2),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=_0x39abx3[_0x53bb[263]](_0x39abx2,_0x39abx9);if(!this[_0x53bb[1715]](_0x39abxa)){var _0x39abx12=this[_0x53bb[1819]](_0x39abxa);null!=_0x39abx12&&(null==_0x39abx4[_0x39abx12]&&(_0x39abx4[_0x39abx12]=[]),_0x39abx4[_0x39abx12][_0x53bb[207]](_0x39abxa))}};return _0x39abx4};mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[1819]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[249]](),_0x39abx4=_0x39abx3[_0x53bb[248]](_0x39abx2),_0x39abx5=null!=_0x39abx4?_0x39abx4[_0x53bb[1710]](!0):_0x39abx3[_0x53bb[1710]](_0x39abx2,!0);_0x39abx2=null!=_0x39abx4?_0x39abx4[_0x53bb[1710]](!1):_0x39abx3[_0x53bb[1710]](_0x39abx2,!1);return null!=_0x39abx5&&null!=_0x39abx2?(_0x39abx5=mxCellPath[_0x53bb[385]](_0x39abx5),_0x39abx2=mxCellPath[_0x53bb[385]](_0x39abx2),_0x39abx5>_0x39abx2?_0x39abx2+_0x53bb[213]+_0x39abx5:_0x39abx5+_0x53bb[213]+_0x39abx2):null};mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[1759]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[0],_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx4[_0x53bb[1709]](_0x39abx3,!0)),_0x39abx9=_0x39abx4[_0x53bb[1721]](_0x39abx4[_0x53bb[1709]](_0x39abx3,!1));if(_0x39abx5==_0x39abx9){for(var _0x39abx3=_0x39abx5[_0x53bb[235]]+_0x39abx5[_0x53bb[117]]+this[_0x53bb[657]],_0x39abx4=_0x39abx5[_0x53bb[236]]+_0x39abx5[_0x53bb[119]]/2,_0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){this[_0x53bb[1820]](_0x39abx2[_0x39abxa],_0x39abx3,_0x39abx4),_0x39abx3+=this[_0x53bb[657]]}}else {if(null!=_0x39abx5&&null!=_0x39abx9){for(var _0x39abx3=_0x39abx5[_0x53bb[235]]+_0x39abx5[_0x53bb[117]]/2,_0x39abx4=_0x39abx5[_0x53bb[236]]+_0x39abx5[_0x53bb[119]]/2,_0x39abxa=_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]/2-_0x39abx3,_0x39abx12=_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]/2-_0x39abx4,_0x39abx9=Math[_0x53bb[428]](_0x39abxa*_0x39abxa+_0x39abx12*_0x39abx12),_0x39abx5=_0x39abx12*this[_0x53bb[657]]/_0x39abx9,_0x39abx9=_0x39abxa*this[_0x53bb[657]]/_0x39abx9,_0x39abx3=_0x39abx3+_0x39abxa/2+_0x39abx5*(_0x39abx2[_0x53bb[67]]-1)/2,_0x39abx4=_0x39abx4+_0x39abx12/2-_0x39abx9*(_0x39abx2[_0x53bb[67]]-1)/2,_0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){this[_0x53bb[1820]](_0x39abx2[_0x39abxa],_0x39abx3,_0x39abx4),_0x39abx3-=_0x39abx5,_0x39abx4+=_0x39abx9}}}};mxParallelEdgeLayout[_0x53bb[202]][_0x53bb[1820]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[1179]][_0x53bb[1712]](_0x39abx2)&&this[_0x53bb[1722]](_0x39abx2,[ new mxPoint(_0x39abx3,_0x39abx4)])};function mxCompositeLayout(_0x39abx2,_0x39abx3,_0x39abx4){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[1821]]=_0x39abx3;this[_0x53bb[1822]]=_0x39abx4}mxCompositeLayout[_0x53bb[202]]= new mxGraphLayout;mxCompositeLayout[_0x53bb[202]][_0x53bb[196]]=mxCompositeLayout;mxCompositeLayout[_0x53bb[202]][_0x53bb[1821]]=null;mxCompositeLayout[_0x53bb[202]][_0x53bb[1822]]=null;mxCompositeLayout[_0x53bb[202]][_0x53bb[1702]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null!=this[_0x53bb[1822]]?this[_0x53bb[1822]][_0x53bb[582]][_0x53bb[183]](this[_0x53bb[1822]],arguments):this[_0x53bb[1821]][0][_0x53bb[582]][_0x53bb[183]](this[_0x53bb[1821]][0],arguments)};mxCompositeLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<this[_0x53bb[1821]][_0x53bb[67]];_0x39abx4++){this[_0x53bb[1821]][_0x39abx4][_0x53bb[350]][_0x53bb[183]](this[_0x53bb[1821]][_0x39abx4],arguments)}}finally{_0x39abx3[_0x53bb[476]]()}};function mxEdgeLabelLayout(_0x39abx2,_0x39abx3){mxGraphLayout[_0x53bb[239]](this,_0x39abx2)}mxEdgeLabelLayout[_0x53bb[202]]= new mxGraphLayout;mxEdgeLabelLayout[_0x53bb[202]][_0x53bb[196]]=mxEdgeLabelLayout;mxEdgeLabelLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[1179]][_0x53bb[441]],_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=[],_0x39abx9=[],_0x39abxa=_0x39abx4[_0x53bb[262]](_0x39abx2),_0x39abx12=0;_0x39abx12<_0x39abxa;_0x39abx12++){var _0x39abx13=_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx12),_0x39abx14=_0x39abx3[_0x53bb[248]](_0x39abx13);null!=_0x39abx14&&(this[_0x53bb[1713]](_0x39abx13)?this[_0x53bb[1715]](_0x39abx13)||_0x39abx5[_0x53bb[207]](_0x39abx14):_0x39abx9[_0x53bb[207]](_0x39abx14))};this[_0x53bb[1823]](_0x39abx9,_0x39abx5)};mxEdgeLabelLayout[_0x53bb[202]][_0x53bb[1823]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx4[_0x53bb[473]]();try{for(var _0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){var _0x39abx9=_0x39abx3[_0x39abx5];if(null!=_0x39abx9&&null!=_0x39abx9[_0x53bb[963]]&&null!=_0x39abx9[_0x53bb[963]][_0x53bb[1563]]){for(var _0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx2[_0x39abxa];null!=_0x39abx12&&this[_0x53bb[1824]](_0x39abx9,_0x39abx12)}}}}finally{_0x39abx4[_0x53bb[476]]()}};mxEdgeLabelLayout[_0x53bb[202]][_0x53bb[1824]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx2[_0x53bb[963]][_0x53bb[1563]];if(mxUtils[_0x53bb[1825]](_0x39abx5,_0x39abx3)){var _0x39abx9=-_0x39abx5[_0x53bb[236]]-_0x39abx5[_0x53bb[119]]+_0x39abx3[_0x53bb[236]],_0x39abxa=-_0x39abx5[_0x53bb[236]]+_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx9=Math[_0x53bb[425]](_0x39abx9)<Math[_0x53bb[425]](_0x39abxa)?_0x39abx9:_0x39abxa,_0x39abxa=-_0x39abx5[_0x53bb[235]]-_0x39abx5[_0x53bb[117]]+_0x39abx3[_0x53bb[235]],_0x39abx5=-_0x39abx5[_0x53bb[235]]+_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx5=Math[_0x53bb[425]](_0x39abxa)<Math[_0x53bb[425]](_0x39abx5)?_0x39abxa:_0x39abx5;Math[_0x53bb[425]](_0x39abx5)<Math[_0x53bb[425]](_0x39abx9)?_0x39abx9=0:_0x39abx5=0;_0x39abxa=_0x39abx4[_0x53bb[1721]](_0x39abx2[_0x53bb[246]]);null!=_0x39abxa&&(_0x39abxa=_0x39abxa[_0x53bb[238]](),null!=_0x39abxa[_0x53bb[1368]]?(_0x39abxa[_0x53bb[1368]][_0x53bb[235]]+=_0x39abx5,_0x39abxa[_0x53bb[1368]][_0x53bb[236]]+=_0x39abx9):_0x39abxa[_0x53bb[1368]]= new mxPoint(_0x39abx5,_0x39abx9),_0x39abx4[_0x53bb[1724]](_0x39abx2[_0x53bb[246]],_0x39abxa))}};function mxGraphAbstractHierarchyCell(){this[_0x53bb[235]]=[];this[_0x53bb[236]]=[];this[_0x53bb[1826]]=[]}mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1827]]= -1;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1828]]= -1;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[235]]=null;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[236]]=null;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[117]]=0;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[119]]=0;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1829]]=null;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1830]]=null;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1826]]=null;mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1831]]=function(_0x39abx2){return null};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1832]]=function(_0x39abx2){return null};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[250]]=function(){return !1};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1193]]=function(){return !1};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1833]]=function(_0x39abx2){return null};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1834]]=function(_0x39abx2,_0x39abx3){return null};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1835]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1193]]()?this[_0x53bb[235]][0]=_0x39abx3:this[_0x53bb[250]]()&&(this[_0x53bb[235]][_0x39abx2-this[_0x53bb[1828]]-1]=_0x39abx3)};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[730]]=function(_0x39abx2){return this[_0x53bb[1193]]()?this[_0x53bb[235]][0]:this[_0x53bb[250]]()?this[_0x53bb[235]][_0x39abx2-this[_0x53bb[1828]]-1]:0};mxGraphAbstractHierarchyCell[_0x53bb[202]][_0x53bb[1836]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1193]]()?this[_0x53bb[236]][0]=_0x39abx3:this[_0x53bb[250]]()&&(this[_0x53bb[236]][_0x39abx2-this[_0x53bb[1828]]-1]=_0x39abx3)};function mxGraphHierarchyNode(_0x39abx2){mxGraphAbstractHierarchyCell[_0x53bb[183]](this,arguments);this[_0x53bb[246]]=_0x39abx2}mxGraphHierarchyNode[_0x53bb[202]]= new mxGraphAbstractHierarchyCell;mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[196]]=mxGraphHierarchyNode;mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[246]]=null;mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1837]]=[];mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1838]]=[];mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1839]]= !1;mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1840]]=function(_0x39abx2){return this[_0x53bb[1827]]};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1831]]=function(_0x39abx2){if(null==this[_0x53bb[1829]]){this[_0x53bb[1829]]=[];this[_0x53bb[1829]][0]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1837]][_0x53bb[67]];_0x39abx3++){var _0x39abx4=this[_0x53bb[1837]][_0x39abx3];-1==_0x39abx4[_0x53bb[1827]]||_0x39abx4[_0x53bb[1827]]==_0x39abx2+1?this[_0x53bb[1829]][0][_0x53bb[207]](_0x39abx4[_0x53bb[1097]]):this[_0x53bb[1829]][0][_0x53bb[207]](_0x39abx4)}};return this[_0x53bb[1829]][0]};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1832]]=function(_0x39abx2){if(null==this[_0x53bb[1830]]){this[_0x53bb[1830]]=[];this[_0x53bb[1830]][0]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1838]][_0x53bb[67]];_0x39abx3++){var _0x39abx4=this[_0x53bb[1838]][_0x39abx3];-1==_0x39abx4[_0x53bb[1828]]||_0x39abx4[_0x53bb[1828]]==_0x39abx2-1?this[_0x53bb[1830]][0][_0x53bb[207]](_0x39abx4[_0x53bb[772]]):this[_0x53bb[1830]][0][_0x53bb[207]](_0x39abx4)}};return this[_0x53bb[1830]][0]};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1193]]=function(){return !0};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1833]]=function(_0x39abx2){return this[_0x53bb[1826]][0]};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1834]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1826]][0]=_0x39abx3};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1720]]=function(_0x39abx2){if(null!=_0x39abx2&&null!=this[_0x53bb[1839]]&&null!=_0x39abx2[_0x53bb[1839]]&&this[_0x53bb[1839]][_0x53bb[67]]<_0x39abx2[_0x53bb[1839]][_0x53bb[67]]){if(this[_0x53bb[1839]]==_0x39abx2[_0x53bb[1839]]){return !0};if(null==this[_0x53bb[1839]]||null==this[_0x53bb[1839]]){return !1};for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1839]][_0x53bb[67]];_0x39abx3++){if(this[_0x53bb[1839]][_0x39abx3]!=_0x39abx2[_0x53bb[1839]][_0x39abx3]){return !1}};return !0};return !1};mxGraphHierarchyNode[_0x53bb[202]][_0x53bb[1841]]=function(){return this[_0x53bb[246]]};function mxGraphHierarchyEdge(_0x39abx2){mxGraphAbstractHierarchyCell[_0x53bb[183]](this,arguments);this[_0x53bb[1842]]=_0x39abx2}mxGraphHierarchyEdge[_0x53bb[202]]= new mxGraphAbstractHierarchyCell;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[196]]=mxGraphHierarchyEdge;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1842]]=null;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1097]]=null;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[772]]=null;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1843]]= !1;mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1744]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1097]];this[_0x53bb[1097]]=this[_0x53bb[772]];this[_0x53bb[772]]=_0x39abx2;this[_0x53bb[1843]]=!this[_0x53bb[1843]]};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1831]]=function(_0x39abx2){if(null==this[_0x53bb[1829]]){this[_0x53bb[1829]]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1826]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[1829]][_0x39abx3]=[],_0x39abx3==this[_0x53bb[1826]][_0x53bb[67]]-1?this[_0x53bb[1829]][_0x39abx3][_0x53bb[207]](this[_0x53bb[1097]]):this[_0x53bb[1829]][_0x39abx3][_0x53bb[207]](this)}};return this[_0x53bb[1829]][_0x39abx2-this[_0x53bb[1828]]-1]};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1832]]=function(_0x39abx2){if(null==this[_0x53bb[1830]]){this[_0x53bb[1830]]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1826]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[1830]][_0x39abx3]=[],0==_0x39abx3?this[_0x53bb[1830]][_0x39abx3][_0x53bb[207]](this[_0x53bb[772]]):this[_0x53bb[1830]][_0x39abx3][_0x53bb[207]](this)}};return this[_0x53bb[1830]][_0x39abx2-this[_0x53bb[1828]]-1]};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[250]]=function(){return !0};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1833]]=function(_0x39abx2){return this[_0x53bb[1826]][_0x39abx2-this[_0x53bb[1828]]-1]};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1834]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1826]][_0x39abx2-this[_0x53bb[1828]]-1]=_0x39abx3};mxGraphHierarchyEdge[_0x53bb[202]][_0x53bb[1841]]=function(){return null!=this[_0x53bb[1842]]&&0<this[_0x53bb[1842]][_0x53bb[67]]?this[_0x53bb[1842]][0]:null};function mxGraphHierarchyModel(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2[_0x53bb[1703]]();this[_0x53bb[1844]]=_0x39abx9;this[_0x53bb[1845]]=_0x39abx4;this[_0x53bb[1101]]=_0x39abx5;this[_0x53bb[1846]]={};this[_0x53bb[1847]]={};this[_0x53bb[1827]]=0;_0x39abx4=[];null==_0x39abx3&&(_0x39abx3=this[_0x53bb[1179]][_0x53bb[1728]](_0x39abx5));this[_0x53bb[1827]]=this[_0x53bb[1848]];this[_0x53bb[1849]](_0x39abx2,_0x39abx3,_0x39abx4);for(_0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){_0x39abx9=_0x39abx4[_0x39abx5][_0x53bb[1838]];for(var _0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx9[_0x39abxa],_0x39abx13=_0x39abx12[_0x53bb[1842]];if(null!=_0x39abx13&&0<_0x39abx13[_0x53bb[67]]){var _0x39abx13=_0x39abx13[0],_0x39abx14=_0x39abx2[_0x53bb[1710]](_0x39abx13,!1),_0x39abx14=mxCellPath[_0x53bb[385]](_0x39abx14),_0x39abx14=this[_0x53bb[1846]][_0x39abx14];_0x39abx4[_0x39abx5]==_0x39abx14&&(_0x39abx14=_0x39abx2[_0x53bb[1710]](_0x39abx13,!0),_0x39abx14=mxCellPath[_0x53bb[385]](_0x39abx14),_0x39abx14=this[_0x53bb[1846]][_0x39abx14]);null!=_0x39abx14&&_0x39abx4[_0x39abx5]!=_0x39abx14&&(_0x39abx12[_0x53bb[772]]=_0x39abx14,0==_0x39abx14[_0x53bb[1837]][_0x53bb[67]]&&(_0x39abx14[_0x53bb[1837]]=[]),0>mxUtils[_0x53bb[2]](_0x39abx14[_0x53bb[1837]],_0x39abx12)&&_0x39abx14[_0x53bb[1837]][_0x53bb[207]](_0x39abx12))}};_0x39abx4[_0x39abx5][_0x53bb[1826]][0]=1}}mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1827]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1846]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1847]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1850]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1845]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1101]]=null;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1851]]=0;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1848]]=1E8;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1844]]= !1;mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1849]]=function(_0x39abx2,_0x39abx3,_0x39abx4){for(var _0x39abx5=_0x39abx2[_0x53bb[1703]](),_0x39abx9=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){_0x39abx4[_0x39abx9]= new mxGraphHierarchyNode(_0x39abx3[_0x39abx9]);var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx3[_0x39abx9]);this[_0x53bb[1846]][_0x39abxa]=_0x39abx4[_0x39abx9];_0x39abxa=_0x39abx2[_0x53bb[264]](_0x39abx3[_0x39abx9]);_0x39abx4[_0x39abx9][_0x53bb[1838]]=[];for(var _0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){var _0x39abx13=_0x39abx2[_0x53bb[1710]](_0x39abxa[_0x39abx12],!1);if(_0x39abx13!=_0x39abx3[_0x39abx9]&&_0x39abx13!=_0x39abx3[_0x39abx9]&&_0x39abx2[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1193]](_0x39abx13)&&!_0x39abx2[_0x53bb[1713]](_0x39abx13)){var _0x39abx14=_0x39abx2[_0x53bb[1781]](_0x39abx3[_0x39abx9],_0x39abx13,!1),_0x39abx15=_0x39abx2[_0x53bb[1781]](_0x39abx3[_0x39abx9],_0x39abx13,!0),_0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx14[0]);if(null!=_0x39abx14&&0<_0x39abx14[_0x53bb[67]]&&null==this[_0x53bb[1847]][_0x39abx13]&&2*_0x39abx15[_0x53bb[67]]>=_0x39abx14[_0x53bb[67]]){for(var _0x39abx15= new mxGraphHierarchyEdge(_0x39abx14),_0x39abx16=0;_0x39abx16<_0x39abx14[_0x53bb[67]];_0x39abx16++){var _0x39abx17=_0x39abx14[_0x39abx16],_0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx17);this[_0x53bb[1847]][_0x39abx13]=_0x39abx15;_0x39abx5[_0x53bb[1809]](_0x39abx17);_0x39abx2[_0x53bb[1787]]&&(_0x39abx2[_0x53bb[1716]](_0x39abx17,!1),_0x39abx2[_0x53bb[1718]](_0x39abx17,!0))};_0x39abx15[_0x53bb[1097]]=_0x39abx4[_0x39abx9];0>mxUtils[_0x53bb[2]](_0x39abx4[_0x39abx9][_0x53bb[1838]],_0x39abx15)&&_0x39abx4[_0x39abx9][_0x53bb[1838]][_0x53bb[207]](_0x39abx15)}}};_0x39abx4[_0x39abx9][_0x53bb[1826]][0]=0}};mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1852]]=function(){var _0x39abx2=[];if(null!=this[_0x53bb[1845]]){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1845]][_0x53bb[67]];_0x39abx3++){var _0x39abx4=mxCellPath[_0x53bb[385]](this[_0x53bb[1845]][_0x39abx3]),_0x39abx4=this[_0x53bb[1846]][_0x39abx4];null!=_0x39abx4&&_0x39abx2[_0x53bb[207]](_0x39abx4)}};for(var _0x39abx5 in this[_0x53bb[1846]]){_0x39abx4=this[_0x53bb[1846]][_0x39abx5],_0x39abx4[_0x53bb[1826]][0]= -1};for(var _0x39abx9=_0x39abx2[_0x53bb[1853]]();0<_0x39abx2[_0x53bb[67]];){var _0x39abx4=_0x39abx2[0],_0x39abxa,_0x39abx12;_0x39abxa=_0x39abx4[_0x53bb[1837]];_0x39abx12=_0x39abx4[_0x53bb[1838]];for(var _0x39abx13=!0,_0x39abx14=this[_0x53bb[1848]],_0x39abx3=0;_0x39abx3<_0x39abxa[_0x53bb[67]];_0x39abx3++){var _0x39abx15=_0x39abxa[_0x39abx3];if(5270620==_0x39abx15[_0x53bb[1826]][0]){_0x39abx15=_0x39abx15[_0x53bb[1097]],_0x39abx14=Math[_0x53bb[243]](_0x39abx14,_0x39abx15[_0x53bb[1826]][0]-1)}else {_0x39abx13= !1;break}};if(_0x39abx13){_0x39abx4[_0x53bb[1826]][0]=_0x39abx14;this[_0x53bb[1827]]=Math[_0x53bb[243]](this[_0x53bb[1827]],_0x39abx14);if(null!=_0x39abx12){for(_0x39abx3=0;_0x39abx3<_0x39abx12[_0x53bb[67]];_0x39abx3++){_0x39abx15=_0x39abx12[_0x39abx3],_0x39abx15[_0x53bb[1826]][0]=5270620,_0x39abx15=_0x39abx15[_0x53bb[772]],-1==_0x39abx15[_0x53bb[1826]][0]&&(_0x39abx2[_0x53bb[207]](_0x39abx15),_0x39abx15[_0x53bb[1826]][0]= -2)}};_0x39abx2[_0x53bb[1115]]()}else {if(_0x39abx3=_0x39abx2[_0x53bb[1115]](),_0x39abx2[_0x53bb[207]](_0x39abx4),_0x39abx3==_0x39abx4&&1==_0x39abx2[_0x53bb[67]]){break}}};for(_0x39abx5 in this[_0x53bb[1846]]){_0x39abx4=this[_0x53bb[1846]][_0x39abx5],_0x39abx4[_0x53bb[1826]][0]-=this[_0x53bb[1827]]};for(_0x39abx3=0;_0x39abx3<_0x39abx9[_0x53bb[67]];_0x39abx3++){_0x39abx4=_0x39abx9[_0x39abx3];_0x39abx2=0;_0x39abxa=_0x39abx4[_0x53bb[1838]];for(_0x39abx5=0;_0x39abx5<_0x39abxa[_0x53bb[67]];_0x39abx5++){_0x39abx15=_0x39abxa[_0x39abx5],_0x39abx15=_0x39abx15[_0x53bb[772]],_0x39abx4[_0x53bb[1826]][0]=Math[_0x53bb[160]](_0x39abx2,_0x39abx15[_0x53bb[1826]][0]+1),_0x39abx2=_0x39abx4[_0x53bb[1826]][0]}};this[_0x53bb[1827]]=this[_0x53bb[1848]]-this[_0x53bb[1827]]};mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1854]]=function(){var _0x39abx2=[];this[_0x53bb[1850]]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[1827]]+1;_0x39abx3++){_0x39abx2[_0x39abx3]=[],this[_0x53bb[1850]][_0x39abx3]=_0x39abx2[_0x39abx3]};var _0x39abx4=null;if(null!=this[_0x53bb[1845]]){for(var _0x39abx5=this[_0x53bb[1845]],_0x39abx4=[],_0x39abx3=0;_0x39abx3<_0x39abx5[_0x53bb[67]];_0x39abx3++){var _0x39abx9=mxCellPath[_0x53bb[385]](_0x39abx5[_0x39abx3]);_0x39abx4[_0x39abx3]=this[_0x53bb[1846]][_0x39abx9]}};this[_0x53bb[209]](function(_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abx15){0==_0x39abx15&&(0>_0x39abx4[_0x53bb[1827]]&&0>_0x39abx4[_0x53bb[1828]])&&(_0x39abx2[_0x39abx4[_0x53bb[1826]][0]][_0x53bb[207]](_0x39abx4),_0x39abx4[_0x53bb[1827]]=_0x39abx4[_0x53bb[1826]][0],_0x39abx4[_0x53bb[1828]]=_0x39abx4[_0x53bb[1826]][0],_0x39abx4[_0x53bb[1826]][0]=_0x39abx2[_0x39abx4[_0x53bb[1827]]][_0x53bb[67]]-1);if(null!=_0x39abx3&&null!=_0x39abx5&&1<_0x39abx3[_0x53bb[1827]]-_0x39abx4[_0x53bb[1827]]){_0x39abx5[_0x53bb[1827]]=_0x39abx3[_0x53bb[1827]];_0x39abx5[_0x53bb[1828]]=_0x39abx4[_0x53bb[1827]];_0x39abx5[_0x53bb[1826]]=[];_0x39abx5[_0x53bb[235]]=[];_0x39abx5[_0x53bb[236]]=[];for(_0x39abx3=_0x39abx5[_0x53bb[1828]]+1;_0x39abx3<_0x39abx5[_0x53bb[1827]];_0x39abx3++){_0x39abx2[_0x39abx3][_0x53bb[207]](_0x39abx5),_0x39abx5[_0x53bb[1834]](_0x39abx3,_0x39abx2[_0x39abx3][_0x53bb[67]]-1)}}},_0x39abx4,!1,null)};mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[209]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx3){for(var _0x39abx9=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){var _0x39abxa=_0x39abx3[_0x39abx9];null!=_0x39abxa&&(null==_0x39abx5&&(_0x39abx5={}),_0x39abx4?(_0x39abxa[_0x53bb[1839]]=[],_0x39abxa[_0x53bb[1839]][0]=this[_0x53bb[1851]],_0x39abxa[_0x53bb[1839]][1]=_0x39abx9,this[_0x53bb[1855]](null,_0x39abxa,null,_0x39abx2,_0x39abx5,_0x39abxa[_0x53bb[1839]],_0x39abx9,0)):this[_0x53bb[1758]](null,_0x39abxa,null,_0x39abx2,_0x39abx5,0))};this[_0x53bb[1851]]++}};mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1758]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){if(null!=_0x39abx3){var _0x39abx12=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]);if(null==_0x39abx9[_0x39abx12]){_0x39abx9[_0x39abx12]=_0x39abx3;_0x39abx5(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abxa,0);_0x39abx2=_0x39abx3[_0x53bb[1838]][_0x53bb[1853]]();for(_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){_0x39abx12=_0x39abx2[_0x39abx4],this[_0x53bb[1758]](_0x39abx3,_0x39abx12[_0x53bb[772]],_0x39abx12,_0x39abx5,_0x39abx9,_0x39abxa+1)}}else {_0x39abx5(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abxa,1)}}};mxGraphHierarchyModel[_0x53bb[202]][_0x53bb[1855]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13){if(null!=_0x39abx3){if(null!=_0x39abx2&&(null==_0x39abx3[_0x53bb[1839]]||_0x39abx3[_0x53bb[1839]][0]!=_0x39abx2[_0x53bb[1839]][0])){_0x39abxa=_0x39abx2[_0x53bb[1839]][_0x53bb[67]]+1,_0x39abx3[_0x53bb[1839]]=_0x39abx2[_0x53bb[1839]][_0x53bb[1853]](),_0x39abx3[_0x53bb[1839]][_0x39abxa-1]=_0x39abx12};_0x39abx12=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]);if(null==_0x39abx9[_0x39abx12]){_0x39abx9[_0x39abx12]=_0x39abx3;_0x39abx5(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx13,0);_0x39abx2=_0x39abx3[_0x53bb[1838]][_0x53bb[1853]]();for(_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){_0x39abx12=_0x39abx2[_0x39abx4],this[_0x53bb[1855]](_0x39abx3,_0x39abx12[_0x53bb[772]],_0x39abx12,_0x39abx5,_0x39abx9,_0x39abx3[_0x53bb[1839]],_0x39abx4,_0x39abx13+1)}}else {_0x39abx5(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx13,1)}}};function mxHierarchicalLayoutStage(){}mxHierarchicalLayoutStage[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){};function mxMedianHybridCrossingReduction(_0x39abx2){this[_0x53bb[1759]]=_0x39abx2}mxMedianHybridCrossingReduction[_0x53bb[202]]= new mxHierarchicalLayoutStage;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[196]]=mxMedianHybridCrossingReduction;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1759]]=null;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1795]]=24;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1856]]=null;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1857]]=0;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1858]]=0;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1859]]=2;mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1759]][_0x53bb[502]]();this[_0x53bb[1856]]=[];for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[1850]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[1856]][_0x39abx3]=_0x39abx2[_0x53bb[1850]][_0x39abx3][_0x53bb[1853]]()};for(var _0x39abx4=0,_0x39abx5=this[_0x53bb[1860]](_0x39abx2),_0x39abx3=0;_0x39abx3<this[_0x53bb[1795]]&&_0x39abx4<this[_0x53bb[1859]];_0x39abx3++){this[_0x53bb[1861]](_0x39abx3,_0x39abx2);this[_0x53bb[1862]](_0x39abx3,_0x39abx2);var _0x39abx9=this[_0x53bb[1860]](_0x39abx2);if(_0x39abx9<_0x39abx5){_0x39abx5=_0x39abx9;for(_0x39abx9=_0x39abx4=0;_0x39abx9<this[_0x53bb[1856]][_0x53bb[67]];_0x39abx9++){for(var _0x39abxa=_0x39abx2[_0x53bb[1850]][_0x39abx9],_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){var _0x39abx13=_0x39abxa[_0x39abx12];this[_0x53bb[1856]][_0x39abx9][_0x39abx13[_0x53bb[1833]](_0x39abx9)]=_0x39abx13}}}else {_0x39abx4++;for(_0x39abx9=0;_0x39abx9<this[_0x53bb[1856]][_0x53bb[67]];_0x39abx9++){_0x39abxa=_0x39abx2[_0x53bb[1850]][_0x39abx9];for(_0x39abx12=0;_0x39abx12<_0x39abxa[_0x53bb[67]];_0x39abx12++){_0x39abx13=_0x39abxa[_0x39abx12],_0x39abx13[_0x53bb[1834]](_0x39abx9,_0x39abx12)}}};if(0==_0x39abx5){break}};_0x39abx4=[];_0x39abx5=[];for(_0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[1827]]+1;_0x39abx3++){_0x39abx5[_0x39abx3]=[],_0x39abx4[_0x39abx3]=_0x39abx5[_0x39abx3]};for(_0x39abx3=0;_0x39abx3<this[_0x53bb[1856]][_0x53bb[67]];_0x39abx3++){for(_0x39abx9=0;_0x39abx9<this[_0x53bb[1856]][_0x39abx3][_0x53bb[67]];_0x39abx9++){_0x39abx5[_0x39abx3][_0x53bb[207]](this[_0x53bb[1856]][_0x39abx3][_0x39abx9])}};_0x39abx2[_0x53bb[1850]]=_0x39abx4};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1860]]=function(_0x39abx2){for(var _0x39abx3=_0x39abx2[_0x53bb[1850]][_0x53bb[67]],_0x39abx4=0,_0x39abx5=1;_0x39abx5<_0x39abx3;_0x39abx5++){_0x39abx4+=this[_0x53bb[1863]](_0x39abx5,_0x39abx2)};return _0x39abx4};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1863]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=0,_0x39abx5=_0x39abx3[_0x53bb[1850]][_0x39abx2],_0x39abx9=_0x39abx5[_0x53bb[67]],_0x39abxa=_0x39abx3[_0x53bb[1850]][_0x39abx2-1][_0x53bb[67]],_0x39abx12=[],_0x39abx13=0;_0x39abx13<_0x39abx9;_0x39abx13++){_0x39abx12[_0x39abx13]=[]};for(_0x39abx13=0;_0x39abx13<_0x39abx5[_0x53bb[67]];_0x39abx13++){for(var _0x39abx14=_0x39abx5[_0x39abx13],_0x39abx15=_0x39abx14[_0x53bb[1833]](_0x39abx2),_0x39abx16=_0x39abx14[_0x53bb[1832]](_0x39abx2),_0x39abx14=0;_0x39abx14<_0x39abx16[_0x53bb[67]];_0x39abx14++){var _0x39abx17=_0x39abx16[_0x39abx14][_0x53bb[1833]](_0x39abx2-1);_0x39abx12[_0x39abx15][_0x39abx17]=201207}};for(_0x39abx13=0;_0x39abx13<_0x39abx9;_0x39abx13++){for(_0x39abx14=0;_0x39abx14<_0x39abxa;_0x39abx14++){if(201207==_0x39abx12[_0x39abx13][_0x39abx14]){for(_0x39abx5=_0x39abx13+1;_0x39abx5<_0x39abx9;_0x39abx5++){for(_0x39abx15=0;_0x39abx15<_0x39abx14;_0x39abx15++){201207==_0x39abx12[_0x39abx5][_0x39abx15]&&_0x39abx4++}};for(_0x39abx5=0;_0x39abx5<_0x39abx13;_0x39abx5++){for(_0x39abx15=_0x39abx14+1;_0x39abx15<_0x39abxa;_0x39abx15++){201207==_0x39abx12[_0x39abx5][_0x39abx15]&&_0x39abx4++}}}}};return _0x39abx4/2};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1862]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=!0,_0x39abx5=0;_0x39abx4&&10>_0x39abx5++;){for(var _0x39abx9=1==_0x39abx2%2&&1==_0x39abx5%2,_0x39abx4=!1,_0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[1850]][_0x53bb[67]];_0x39abxa++){for(var _0x39abx12=_0x39abx3[_0x53bb[1850]][_0x39abxa],_0x39abx13=[],_0x39abx14=0;_0x39abx14<_0x39abx12[_0x53bb[67]];_0x39abx14++){var _0x39abx15=_0x39abx12[_0x39abx14],_0x39abx16=_0x39abx15[_0x53bb[1833]](_0x39abxa);0>_0x39abx16&&(_0x39abx16=_0x39abx14);_0x39abx13[_0x39abx16]=_0x39abx15};for(var _0x39abx17=_0x39abx16=_0x39abx15=null,_0x39abx18=null,_0x39abx19=null,_0x39abx1a=null,_0x39abx1b=null,_0x39abx1c=null,_0x39abx1d=null,_0x39abx1e=null,_0x39abx14=0;_0x39abx14<_0x39abx12[_0x53bb[67]]-1;_0x39abx14++){if(0==_0x39abx14){for(var _0x39abx1d=_0x39abx13[_0x39abx14],_0x39abx15=_0x39abx1d[_0x53bb[1831]](_0x39abxa),_0x39abx16=_0x39abx1d[_0x53bb[1832]](_0x39abxa),_0x39abx19=[],_0x39abx1a=[],_0x39abx1f=0;_0x39abx1f<_0x39abx15[_0x53bb[67]];_0x39abx1f++){_0x39abx19[_0x39abx1f]=_0x39abx15[_0x39abx1f][_0x53bb[1833]](_0x39abxa+1)};for(_0x39abx1f=0;_0x39abx1f<_0x39abx16[_0x53bb[67]];_0x39abx1f++){_0x39abx1a[_0x39abx1f]=_0x39abx16[_0x39abx1f][_0x53bb[1833]](_0x39abxa-1)}}else {_0x39abx15=_0x39abx17,_0x39abx16=_0x39abx18,_0x39abx19=_0x39abx1b,_0x39abx1a=_0x39abx1c,_0x39abx1d=_0x39abx1e};_0x39abx1e=_0x39abx13[_0x39abx14+1];_0x39abx17=_0x39abx1e[_0x53bb[1831]](_0x39abxa);_0x39abx18=_0x39abx1e[_0x53bb[1832]](_0x39abxa);_0x39abx1b=[];_0x39abx1c=[];for(_0x39abx1f=0;_0x39abx1f<_0x39abx17[_0x53bb[67]];_0x39abx1f++){_0x39abx1b[_0x39abx1f]=_0x39abx17[_0x39abx1f][_0x53bb[1833]](_0x39abxa+1)};for(_0x39abx1f=0;_0x39abx1f<_0x39abx18[_0x53bb[67]];_0x39abx1f++){_0x39abx1c[_0x39abx1f]=_0x39abx18[_0x39abx1f][_0x53bb[1833]](_0x39abxa-1)};for(var _0x39abx20=0,_0x39abx62=0,_0x39abx1f=0;_0x39abx1f<_0x39abx19[_0x53bb[67]];_0x39abx1f++){for(var _0x39abx63=0;_0x39abx63<_0x39abx1b[_0x53bb[67]];_0x39abx63++){_0x39abx19[_0x39abx1f]>_0x39abx1b[_0x39abx63]&&_0x39abx20++,_0x39abx19[_0x39abx1f]<_0x39abx1b[_0x39abx63]&&_0x39abx62++}};for(_0x39abx1f=0;_0x39abx1f<_0x39abx1a[_0x53bb[67]];_0x39abx1f++){for(_0x39abx63=0;_0x39abx63<_0x39abx1c[_0x53bb[67]];_0x39abx63++){_0x39abx1a[_0x39abx1f]>_0x39abx1c[_0x39abx63]&&_0x39abx20++,_0x39abx1a[_0x39abx1f]<_0x39abx1c[_0x39abx63]&&_0x39abx62++}};if(_0x39abx62<_0x39abx20||_0x39abx62==_0x39abx20&&_0x39abx9){_0x39abx17=_0x39abx1d[_0x53bb[1833]](_0x39abxa),_0x39abx1d[_0x53bb[1834]](_0x39abxa,_0x39abx1e[_0x53bb[1833]](_0x39abxa)),_0x39abx1e[_0x53bb[1834]](_0x39abxa,_0x39abx17),_0x39abx17=_0x39abx15,_0x39abx18=_0x39abx16,_0x39abx1b=_0x39abx19,_0x39abx1c=_0x39abx1a,_0x39abx1e=_0x39abx1d,_0x39abx9||(_0x39abx4= !0)}}}}};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1861]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=0==_0x39abx2%2;if(_0x39abx4){for(var _0x39abx5=_0x39abx3[_0x53bb[1827]]-1;0<=_0x39abx5;_0x39abx5--){this[_0x53bb[1864]](_0x39abx5,_0x39abx4)}}else {for(_0x39abx5=1;_0x39abx5<_0x39abx3[_0x53bb[1827]];_0x39abx5++){this[_0x53bb[1864]](_0x39abx5,_0x39abx4)}}};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1864]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=this[_0x53bb[1856]][_0x39abx2][_0x53bb[67]],_0x39abx5=[],_0x39abx9=[],_0x39abxa=0;_0x39abxa<_0x39abx4;_0x39abxa++){var _0x39abx12=this[_0x53bb[1856]][_0x39abx2][_0x39abxa],_0x39abx13= new MedianCellSorter;_0x39abx13[_0x53bb[246]]=_0x39abx12;var _0x39abx14;_0x39abx14=_0x39abx3?_0x39abx12[_0x53bb[1831]](_0x39abx2):_0x39abx12[_0x53bb[1832]](_0x39abx2);var _0x39abx15;_0x39abx15=_0x39abx3?_0x39abx2+1:_0x39abx2-1;null!=_0x39abx14&&0!=_0x39abx14[_0x53bb[67]]?(_0x39abx13[_0x53bb[1865]]=this[_0x53bb[1865]](_0x39abx14,_0x39abx15),_0x39abx5[_0x53bb[207]](_0x39abx13)):_0x39abx9[_0x39abx12[_0x53bb[1833]](_0x39abx2)]= !0};_0x39abx5[_0x53bb[470]](MedianCellSorter[_0x53bb[202]][_0x53bb[469]]);for(_0x39abxa=0;_0x39abxa<_0x39abx4;_0x39abxa++){null==_0x39abx9[_0x39abxa]&&(_0x39abx12=_0x39abx5[_0x53bb[1115]]()[_0x53bb[246]],_0x39abx12[_0x53bb[1834]](_0x39abx2,_0x39abxa))}};mxMedianHybridCrossingReduction[_0x53bb[202]][_0x53bb[1865]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=[],_0x39abx5=0,_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=_0x39abx2[_0x39abx9];_0x39abx4[_0x39abx5++]=_0x39abxa[_0x53bb[1833]](_0x39abx3)};_0x39abx4[_0x53bb[470]](function(_0x39abx2,_0x39abx3){return _0x39abx2-_0x39abx3});if(1==_0x39abx5%2){return _0x39abx4[Math[_0x53bb[519]](_0x39abx5/2)]};if(2==_0x39abx5){return (_0x39abx4[0]+_0x39abx4[1])/2};_0x39abx9=_0x39abx5/2;_0x39abxa=_0x39abx4[_0x39abx9-1]-_0x39abx4[0];_0x39abx5=_0x39abx4[_0x39abx5-1]-_0x39abx4[_0x39abx9];return (_0x39abx4[_0x39abx9-1]*_0x39abx5+_0x39abx4[_0x39abx9]*_0x39abxa)/(_0x39abxa+_0x39abx5)};function MedianCellSorter(){}MedianCellSorter[_0x53bb[202]][_0x53bb[1865]]=0;MedianCellSorter[_0x53bb[202]][_0x53bb[246]]= !1;MedianCellSorter[_0x53bb[202]][_0x53bb[469]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2&&null!=_0x39abx3?_0x39abx3[_0x53bb[1865]]>_0x39abx2[_0x53bb[1865]]?-1:_0x39abx3[_0x53bb[1865]]<_0x39abx2[_0x53bb[1865]]?1:0:0};function mxMinimumCycleRemover(_0x39abx2){this[_0x53bb[1759]]=_0x39abx2}mxMinimumCycleRemover[_0x53bb[202]]= new mxHierarchicalLayoutStage;mxMinimumCycleRemover[_0x53bb[202]][_0x53bb[196]]=mxMinimumCycleRemover;mxMinimumCycleRemover[_0x53bb[202]][_0x53bb[1759]]=null;mxMinimumCycleRemover[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1759]][_0x53bb[502]](),_0x39abx4={},_0x39abx5=mxUtils[_0x53bb[238]](_0x39abx3[_0x53bb[1846]],null,!0),_0x39abx9=null;if(null!=_0x39abx3[_0x53bb[1845]]){var _0x39abxa=_0x39abx3[_0x53bb[1845]],_0x39abx9=[];for(_0x39abx2=0;_0x39abx2<_0x39abxa[_0x53bb[67]];_0x39abx2++){var _0x39abx12=mxCellPath[_0x53bb[385]](_0x39abxa[_0x39abx2]);_0x39abx9[_0x39abx2]=_0x39abx3[_0x53bb[1846]][_0x39abx12]}};_0x39abx3[_0x53bb[209]](function(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12){_0x39abx3[_0x53bb[1720]](_0x39abx2)&&(_0x39abx9[_0x53bb[1744]](),mxUtils[_0x53bb[205]](_0x39abx9,_0x39abx2[_0x53bb[1838]]),_0x39abx2[_0x53bb[1837]][_0x53bb[207]](_0x39abx9),mxUtils[_0x53bb[205]](_0x39abx9,_0x39abx3[_0x53bb[1837]]),_0x39abx3[_0x53bb[1838]][_0x53bb[207]](_0x39abx9));_0x39abx2=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]);_0x39abx4[_0x39abx2]=_0x39abx3;delete _0x39abx5[_0x39abx2]},_0x39abx9,!0,null);_0x39abx9=null;0<_0x39abx5[_0x53bb[1866]]&&(_0x39abx9=mxUtils[_0x53bb[238]](_0x39abx5,null,!0));_0x39abx2=mxUtils[_0x53bb[238]](_0x39abx4,null,!0);_0x39abx3[_0x53bb[209]](function(_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx12){_0x39abx3[_0x53bb[1720]](_0x39abx2)&&(_0x39abx9[_0x53bb[1744]](),mxUtils[_0x53bb[205]](_0x39abx9,_0x39abx2[_0x53bb[1838]]),_0x39abx3[_0x53bb[1838]][_0x53bb[207]](_0x39abx9),_0x39abx2[_0x53bb[1837]][_0x53bb[207]](_0x39abx9),mxUtils[_0x53bb[205]](_0x39abx9,_0x39abx3[_0x53bb[1837]]));_0x39abx2=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]);_0x39abx4[_0x39abx2]=_0x39abx3;delete _0x39abx5[_0x39abx2]},_0x39abx5,!0,_0x39abx2);_0x39abxa=this[_0x53bb[1759]][_0x53bb[1703]]();if(null!=_0x39abx9&&0<_0x39abx9[_0x53bb[67]]){_0x39abx3=_0x39abx3[_0x53bb[1845]];for(_0x39abx2=0;_0x39abx2<_0x39abx9[_0x53bb[67]];_0x39abx2++){_0x39abx12=_0x39abx9[_0x39abx2][_0x53bb[246]],0==_0x39abxa[_0x53bb[1867]](_0x39abx12)[_0x53bb[67]]&&_0x39abx3[_0x53bb[207]](_0x39abx12)}}};function mxCoordinateAssignment(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[1759]]=_0x39abx2;this[_0x53bb[1868]]=_0x39abx3;this[_0x53bb[1869]]=_0x39abx4;this[_0x53bb[1870]]=_0x39abx5;this[_0x53bb[1871]]=_0x39abx9;this[_0x53bb[1872]]=_0x39abxa}var mxHierarchicalEdgeStyle={ORTHOGONAL:1,POLYLINE:2,STRAIGHT:3,CURVE:4};mxCoordinateAssignment[_0x53bb[202]]= new mxHierarchicalLayoutStage;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[196]]=mxCoordinateAssignment;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1759]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1868]]=30;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1869]]=100;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1872]]=10;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1795]]=8;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1751]]=5;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1752]]=2;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1753]]=12;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1754]]=4;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1873]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1870]]=mxConstants[_0x53bb[1358]];mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1871]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1874]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1875]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1876]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1877]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1878]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1879]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1880]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1881]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1882]]= !0;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[675]]=mxHierarchicalEdgeStyle[_0x53bb[1883]];mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1884]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1885]]=null;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1745]]=10;mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1886]]=function(){var _0x39abx2=this[_0x53bb[1759]][_0x53bb[502]]();mxLog[_0x53bb[539]]();mxLog[_0x53bb[171]](_0x53bb[1887]);for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[1850]][_0x53bb[67]];_0x39abx3++){mxLog[_0x53bb[53]](_0x53bb[1888],_0x39abx3,_0x53bb[1889]);for(var _0x39abx4=_0x39abx2[_0x53bb[1850]][_0x39abx3],_0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){mxLog[_0x53bb[53]](_0x39abx4[_0x39abx5][_0x53bb[1833]](_0x39abx3),_0x53bb[316])};mxLog[_0x53bb[171]]()};mxLog[_0x53bb[171]](_0x53bb[1890])};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){this[_0x53bb[1873]]=[];_0x39abx2=this[_0x53bb[1759]][_0x53bb[502]]();this[_0x53bb[1875]]=0;this[_0x53bb[1891]](this[_0x53bb[1759]][_0x53bb[1703]](),_0x39abx2);this[_0x53bb[1882]]&&this[_0x53bb[1892]](_0x39abx2);var _0x39abx3=1E8;if(this[_0x53bb[1882]]){for(var _0x39abx4=0;_0x39abx4<this[_0x53bb[1795]];_0x39abx4++){0!=_0x39abx4&&(this[_0x53bb[1893]](_0x39abx4,_0x39abx2),this[_0x53bb[1892]](_0x39abx2));if(this[_0x53bb[1875]]<_0x39abx3){for(var _0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[1850]][_0x53bb[67]];_0x39abx5++){for(var _0x39abx9=_0x39abx2[_0x53bb[1850]][_0x39abx5],_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx9[_0x39abxa];_0x39abx12[_0x53bb[1835]](_0x39abx5,_0x39abx12[_0x53bb[1833]](_0x39abx5))}};_0x39abx3=this[_0x53bb[1875]]}else {for(_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[1850]][_0x53bb[67]];_0x39abx5++){_0x39abx9=_0x39abx2[_0x53bb[1850]][_0x39abx5];for(_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){_0x39abx12=_0x39abx9[_0x39abxa],_0x39abx12[_0x53bb[1834]](_0x39abx5,_0x39abx12[_0x53bb[730]](_0x39abx5))}}};this[_0x53bb[1894]](this[_0x53bb[1759]][_0x53bb[1703]](),_0x39abx2);this[_0x53bb[1875]]=0}};this[_0x53bb[1895]](this[_0x53bb[1759]][_0x53bb[1703]](),_0x39abx2)};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1892]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4=[],_0x39abx5=[],_0x39abx9=0;_0x39abx9<=_0x39abx2[_0x53bb[1827]];_0x39abx9++){_0x39abx5[_0x39abx9]=_0x39abx2[_0x53bb[1850]][_0x39abx9];for(var _0x39abxa=0;_0x39abxa<_0x39abx5[_0x39abx9][_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx5[_0x39abx9][_0x39abxa],_0x39abx13= new WeightedCellSorter(_0x39abx12,_0x39abx9);_0x39abx13[_0x53bb[1785]]=_0x39abxa;_0x39abx13[_0x53bb[1784]]= !0;_0x39abx3[_0x53bb[207]](_0x39abx13);_0x39abx12=mxCellPath[_0x53bb[385]](_0x39abx12[_0x53bb[1841]]());_0x39abx4[_0x39abx12]=_0x39abx13}};_0x39abx2=10*_0x39abx3[_0x53bb[67]];for(_0x39abxa=0;0<_0x39abx3[_0x53bb[67]]&&_0x39abxa<=_0x39abx2;){var _0x39abx13=_0x39abx3[_0x53bb[1115]](),_0x39abx9=_0x39abx13[_0x53bb[246]],_0x39abx14=_0x39abx13[_0x53bb[1782]],_0x39abx15=parseInt(_0x39abx13[_0x53bb[1785]]),_0x39abx12=_0x39abx9[_0x53bb[1831]](_0x39abx14),_0x39abx16=_0x39abx9[_0x53bb[1832]](_0x39abx14),_0x39abx17=_0x39abx12[_0x53bb[67]],_0x39abx18=_0x39abx16[_0x53bb[67]],_0x39abx19=this[_0x53bb[1896]](_0x39abx12,_0x39abx14+1),_0x39abx1a=this[_0x53bb[1896]](_0x39abx16,_0x39abx14-1),_0x39abx1b=_0x39abx17+_0x39abx18,_0x39abx1c=_0x39abx9[_0x53bb[1833]](_0x39abx14),_0x39abx1d=_0x39abx1c;0<_0x39abx1b&&(_0x39abx1d=(_0x39abx19*_0x39abx17+_0x39abx1a*_0x39abx18)/_0x39abx1b);_0x39abx17= !1;_0x39abx1d<_0x39abx1c-1?0==_0x39abx15?(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1d),_0x39abx17= !0):(_0x39abx15=_0x39abx5[_0x39abx14][_0x39abx15-1],_0x39abx1c=_0x39abx15[_0x53bb[1833]](_0x39abx14),_0x39abx1c=_0x39abx1c+_0x39abx15[_0x53bb[117]]/2+this[_0x53bb[1868]]+_0x39abx9[_0x53bb[117]]/2,_0x39abx1c<_0x39abx1d?(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1d),_0x39abx17= !0):_0x39abx1c<_0x39abx9[_0x53bb[1833]](_0x39abx14)-1&&(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1c),_0x39abx17= !0)):_0x39abx1d>_0x39abx1c+1&&(_0x39abx15==_0x39abx5[_0x39abx14][_0x53bb[67]]-1?(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1d),_0x39abx17= !0):(_0x39abx15=_0x39abx5[_0x39abx14][_0x39abx15+1],_0x39abx1c=_0x39abx15[_0x53bb[1833]](_0x39abx14),_0x39abx1c=_0x39abx1c-_0x39abx15[_0x53bb[117]]/2-this[_0x53bb[1868]]-_0x39abx9[_0x53bb[117]]/2,_0x39abx1c>_0x39abx1d?(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1d),_0x39abx17= !0):_0x39abx1c>_0x39abx9[_0x53bb[1833]](_0x39abx14)+1&&(_0x39abx9[_0x53bb[1834]](_0x39abx14,_0x39abx1c),_0x39abx17= !0)));if(_0x39abx17){for(_0x39abx9=0;_0x39abx9<_0x39abx12[_0x53bb[67]];_0x39abx9++){_0x39abx14=_0x39abx12[_0x39abx9],_0x39abx14=mxCellPath[_0x53bb[385]](_0x39abx14[_0x53bb[1841]]()),_0x39abx14=_0x39abx4[_0x39abx14],null!=_0x39abx14&&!1==_0x39abx14[_0x53bb[1784]]&&(_0x39abx14[_0x53bb[1784]]= !0,_0x39abx3[_0x53bb[207]](_0x39abx14))};for(_0x39abx9=0;_0x39abx9<_0x39abx16[_0x53bb[67]];_0x39abx9++){_0x39abx14=_0x39abx16[_0x39abx9],_0x39abx14=mxCellPath[_0x53bb[385]](_0x39abx14[_0x53bb[1841]]()),_0x39abx14=_0x39abx4[_0x39abx14],null!=_0x39abx14&&!1==_0x39abx14[_0x53bb[1784]]&&(_0x39abx14[_0x53bb[1784]]= !0,_0x39abx3[_0x53bb[207]](_0x39abx14))}};_0x39abx13[_0x53bb[1784]]= !1;_0x39abxa++}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1893]]=function(_0x39abx2,_0x39abx3){if(0==_0x39abx2%2){for(var _0x39abx4=_0x39abx3[_0x53bb[1827]];0<_0x39abx4;_0x39abx4--){this[_0x53bb[1897]](_0x39abx4-1,_0x39abx3,_0x39abx4)}}else {for(_0x39abx4=0;_0x39abx4<_0x39abx3[_0x53bb[1827]]-1;_0x39abx4++){this[_0x53bb[1897]](_0x39abx4+1,_0x39abx3,_0x39abx4)}}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1897]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=_0x39abx3[_0x53bb[1850]][_0x39abx2];for(var _0x39abx5=[],_0x39abx9=[],_0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx3[_0x39abxa];_0x39abx5[_0x39abxa]= new WeightedCellSorter;_0x39abx5[_0x39abxa][_0x53bb[246]]=_0x39abx12;_0x39abx5[_0x39abxa][_0x53bb[1785]]=_0x39abxa;var _0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx12[_0x53bb[1841]]());_0x39abx9[_0x39abx13]=_0x39abx5[_0x39abxa];var _0x39abx14=null,_0x39abx14=_0x39abx4<_0x39abx2?_0x39abx12[_0x53bb[1832]](_0x39abx2):_0x39abx12[_0x53bb[1831]](_0x39abx2);_0x39abx5[_0x39abxa][_0x53bb[1782]]=this[_0x53bb[1898]](_0x39abx12,_0x39abx14)};_0x39abx5[_0x53bb[470]](WeightedCellSorter[_0x53bb[202]][_0x53bb[469]]);for(_0x39abxa=0;_0x39abxa<_0x39abx5[_0x53bb[67]];_0x39abxa++){_0x39abx13=0;_0x39abx12=_0x39abx5[_0x39abxa][_0x53bb[246]];_0x39abx13=0;_0x39abx14=_0x39abx4<_0x39abx2?_0x39abx12[_0x53bb[1832]](_0x39abx2)[_0x53bb[1853]]():_0x39abx12[_0x53bb[1831]](_0x39abx2)[_0x53bb[1853]]();null!=_0x39abx14&&(_0x39abx13=_0x39abx14[_0x53bb[67]],_0x39abx13=0<_0x39abx13?this[_0x53bb[1896]](_0x39abx14,_0x39abx4):_0x39abx12[_0x53bb[1833]](_0x39abx2));for(var _0x39abx15=0,_0x39abx14=-1E8,_0x39abx16=_0x39abx5[_0x39abxa][_0x53bb[1785]]-1;0<=_0x39abx16;){var _0x39abx17=mxCellPath[_0x53bb[385]](_0x39abx3[_0x39abx16][_0x53bb[1841]]()),_0x39abx17=_0x39abx9[_0x39abx17];if(null!=_0x39abx17){var _0x39abx18=_0x39abx17[_0x53bb[246]];_0x39abx17[_0x53bb[1784]]?(_0x39abx14=_0x39abx18[_0x53bb[1833]](_0x39abx2)+_0x39abx18[_0x53bb[117]]/2+this[_0x53bb[1868]]+_0x39abx15+_0x39abx12[_0x53bb[117]]/2,_0x39abx16= -1):(_0x39abx15+=_0x39abx18[_0x53bb[117]]+this[_0x53bb[1868]],_0x39abx16--)}};_0x39abx15=0;_0x39abx18=1E8;for(_0x39abx16=_0x39abx5[_0x39abxa][_0x53bb[1785]]+1;_0x39abx16<_0x39abx5[_0x53bb[67]];){if(_0x39abx17=mxCellPath[_0x53bb[385]](_0x39abx3[_0x39abx16][_0x53bb[1841]]()),_0x39abx17=_0x39abx9[_0x39abx17],null!=_0x39abx17){var _0x39abx19=_0x39abx17[_0x53bb[246]];_0x39abx17[_0x53bb[1784]]?(_0x39abx18=_0x39abx19[_0x53bb[1833]](_0x39abx2)-_0x39abx19[_0x53bb[117]]/2-this[_0x53bb[1868]]-_0x39abx15-_0x39abx12[_0x53bb[117]]/2,_0x39abx16=_0x39abx5[_0x53bb[67]]):(_0x39abx15+=_0x39abx19[_0x53bb[117]]+this[_0x53bb[1868]],_0x39abx16++)}};_0x39abx13>=_0x39abx14&&_0x39abx13<=_0x39abx18?_0x39abx12[_0x53bb[1834]](_0x39abx2,_0x39abx13):_0x39abx13<_0x39abx14?(_0x39abx12[_0x53bb[1834]](_0x39abx2,_0x39abx14),this[_0x53bb[1875]]+=_0x39abx14-_0x39abx13):_0x39abx13>_0x39abx18&&(_0x39abx12[_0x53bb[1834]](_0x39abx2,_0x39abx18),this[_0x53bb[1875]]+=_0x39abx13-_0x39abx18);_0x39abx5[_0x39abxa][_0x53bb[1784]]= !0}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1898]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=0,_0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){var _0x39abx9=_0x39abx3[_0x39abx5];_0x39abx2[_0x53bb[1193]]()&&_0x39abx9[_0x53bb[1193]]()?_0x39abx4++:_0x39abx4=_0x39abx2[_0x53bb[250]]()&&_0x39abx9[_0x53bb[250]]()?_0x39abx4+8:_0x39abx4+2};return _0x39abx4};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1896]]=function(_0x39abx2,_0x39abx3){if(0==_0x39abx2[_0x53bb[67]]){return 0};for(var _0x39abx4=[],_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){_0x39abx4[_0x39abx5]=_0x39abx2[_0x39abx5][_0x53bb[1833]](_0x39abx3)};_0x39abx4[_0x53bb[470]](function(_0x39abx2,_0x39abx3){return _0x39abx2-_0x39abx3});if(1==_0x39abx2[_0x53bb[67]]%2){return _0x39abx4[Math[_0x53bb[519]](_0x39abx2[_0x53bb[67]]/2)]};_0x39abx5=_0x39abx2[_0x53bb[67]]/2;return (_0x39abx4[_0x39abx5-1]+_0x39abx4[_0x39abx5])/2};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1891]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1899]](_0x39abx2,_0x39abx3);for(var _0x39abx4=this[_0x53bb[1876]];0<=_0x39abx4;_0x39abx4--){_0x39abx4<_0x39abx3[_0x53bb[1827]]&&this[_0x53bb[1900]](_0x39abx4,_0x39abx2,_0x39abx3)};for(_0x39abx4=this[_0x53bb[1876]]+1;_0x39abx4<=_0x39abx3[_0x53bb[1827]];_0x39abx4++){0<_0x39abx4&&this[_0x53bb[1900]](_0x39abx4,_0x39abx2,_0x39abx3)}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1900]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=_0x39abx4[_0x53bb[1850]][_0x39abx2];_0x39abx4=0;for(var _0x39abx5=this[_0x53bb[1871]]+(this[_0x53bb[1879]]-this[_0x53bb[1880]][_0x39abx2])/2,_0x39abx9=!1,_0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx3[_0x39abxa];if(_0x39abx12[_0x53bb[1193]]()){var _0x39abx13=this[_0x53bb[1759]][_0x53bb[1726]](_0x39abx12[_0x53bb[246]]);null!=_0x39abx13?this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?(_0x39abx12[_0x53bb[117]]=_0x39abx13[_0x53bb[117]],_0x39abx12[_0x53bb[119]]=_0x39abx13[_0x53bb[119]]):(_0x39abx12[_0x53bb[117]]=_0x39abx13[_0x53bb[119]],_0x39abx12[_0x53bb[119]]=_0x39abx13[_0x53bb[117]]):_0x39abx9= !0;_0x39abx4=Math[_0x53bb[160]](_0x39abx4,_0x39abx12[_0x53bb[119]])}else {_0x39abx12[_0x53bb[250]]()&&(_0x39abx13=1,null!=_0x39abx12[_0x53bb[1842]]?_0x39abx13=_0x39abx12[_0x53bb[1842]][_0x53bb[67]]:mxLog[_0x53bb[283]](_0x53bb[1901]),_0x39abx12[_0x53bb[117]]=(_0x39abx13-1)*this[_0x53bb[1872]])};_0x39abx5+=_0x39abx12[_0x53bb[117]]/2;_0x39abx12[_0x53bb[1835]](_0x39abx2,_0x39abx5);_0x39abx12[_0x53bb[1834]](_0x39abx2,_0x39abx5);_0x39abx5+=_0x39abx12[_0x53bb[117]]/2;_0x39abx5+=this[_0x53bb[1868]]};!0==_0x39abx9&&mxLog[_0x53bb[283]](_0x53bb[1902])};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1899]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=-this[_0x53bb[1869]],_0x39abx5=0;this[_0x53bb[1880]]=[];this[_0x53bb[1881]]=[];for(var _0x39abx9=_0x39abx3[_0x53bb[1827]];0<=_0x39abx9;_0x39abx9--){for(var _0x39abxa=0,_0x39abx12=_0x39abx3[_0x53bb[1850]][_0x39abx9],_0x39abx13=this[_0x53bb[1871]],_0x39abx14=!1,_0x39abx15=0;_0x39abx15<_0x39abx12[_0x53bb[67]];_0x39abx15++){var _0x39abx16=_0x39abx12[_0x39abx15];if(_0x39abx16[_0x53bb[1193]]()){var _0x39abx17=this[_0x53bb[1759]][_0x53bb[1726]](_0x39abx16[_0x53bb[246]]);null!=_0x39abx17?this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?(_0x39abx16[_0x53bb[117]]=_0x39abx17[_0x53bb[117]],_0x39abx16[_0x53bb[119]]=_0x39abx17[_0x53bb[119]]):(_0x39abx16[_0x53bb[117]]=_0x39abx17[_0x53bb[119]],_0x39abx16[_0x53bb[119]]=_0x39abx17[_0x53bb[117]]):_0x39abx14= !0;_0x39abxa=Math[_0x53bb[160]](_0x39abxa,_0x39abx16[_0x53bb[119]])}else {_0x39abx16[_0x53bb[250]]()&&(_0x39abx17=1,null!=_0x39abx16[_0x53bb[1842]]?_0x39abx17=_0x39abx16[_0x53bb[1842]][_0x53bb[67]]:mxLog[_0x53bb[283]](_0x53bb[1901]),_0x39abx16[_0x53bb[117]]=(_0x39abx17-1)*this[_0x53bb[1872]])};_0x39abx13+=_0x39abx16[_0x53bb[117]]/2;_0x39abx16[_0x53bb[1835]](_0x39abx9,_0x39abx13);_0x39abx16[_0x53bb[1834]](_0x39abx9,_0x39abx13);_0x39abx13+=_0x39abx16[_0x53bb[117]]/2;_0x39abx13+=this[_0x53bb[1868]];_0x39abx13>this[_0x53bb[1879]]&&(this[_0x53bb[1879]]=_0x39abx13,this[_0x53bb[1876]]=_0x39abx9);this[_0x53bb[1880]][_0x39abx9]=_0x39abx13};!0==_0x39abx14&&mxLog[_0x53bb[283]](_0x53bb[1902]);this[_0x53bb[1881]][_0x39abx9]=_0x39abx4;_0x39abx13=_0x39abxa/2+_0x39abx5/2+this[_0x53bb[1869]];_0x39abx5=_0x39abxa;_0x39abx4=this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1359]]?_0x39abx4+_0x39abx13:_0x39abx4-_0x39abx13;for(_0x39abx15=0;_0x39abx15<_0x39abx12[_0x53bb[67]];_0x39abx15++){_0x39abx12[_0x39abx15][_0x53bb[1836]](_0x39abx9,_0x39abx4)}}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1894]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx3[_0x53bb[1847]],_0x39abx5;for(_0x39abx5 in _0x39abx4){var _0x39abx9=_0x39abx4[_0x39abx5];if(!(1>_0x39abx9[_0x53bb[1827]]-_0x39abx9[_0x53bb[1828]]-1)){for(var _0x39abxa=_0x39abx9[_0x53bb[1833]](_0x39abx9[_0x53bb[1828]]+1),_0x39abx12=!0,_0x39abx13=0,_0x39abx14=_0x39abx9[_0x53bb[1828]]+2;_0x39abx14<_0x39abx9[_0x53bb[1827]];_0x39abx14++){var _0x39abx15=_0x39abx9[_0x53bb[1833]](_0x39abx14);_0x39abxa!=_0x39abx15?(_0x39abx12= !1,_0x39abxa=_0x39abx15):_0x39abx13++};if(!_0x39abx12){for(var _0x39abx12=_0x39abxa=0,_0x39abx15=[],_0x39abx16=[],_0x39abx17=_0x39abx9[_0x53bb[1833]](_0x39abx9[_0x53bb[1828]]+1),_0x39abx14=_0x39abx9[_0x53bb[1828]]+1;_0x39abx14<_0x39abx9[_0x53bb[1827]]-1;_0x39abx14++){var _0x39abx18=_0x39abx9[_0x53bb[730]](_0x39abx14+1);_0x39abx17==_0x39abx18?(_0x39abx15[_0x39abx14-_0x39abx9[_0x53bb[1828]]-1]=_0x39abx17,_0x39abxa++):this[_0x53bb[1903]](_0x39abx3,_0x39abx9,_0x39abx14+1,_0x39abx17)?(_0x39abx15[_0x39abx14-_0x39abx9[_0x53bb[1828]]-1]=_0x39abx17,_0x39abxa++):_0x39abx17=_0x39abx15[_0x39abx14-_0x39abx9[_0x53bb[1828]]-1]=_0x39abx18};_0x39abx17=_0x39abx9[_0x53bb[730]](_0x39abx14);for(_0x39abx14=_0x39abx9[_0x53bb[1827]]-1;_0x39abx14>_0x39abx9[_0x53bb[1828]]+1;_0x39abx14--){_0x39abx18=_0x39abx9[_0x53bb[730]](_0x39abx14-1),_0x39abx17==_0x39abx18?(_0x39abx16[_0x39abx14-_0x39abx9[_0x53bb[1828]]-2]=_0x39abx17,_0x39abx12++):this[_0x53bb[1903]](_0x39abx3,_0x39abx9,_0x39abx14-1,_0x39abx17)?(_0x39abx16[_0x39abx14-_0x39abx9[_0x53bb[1828]]-2]=_0x39abx17,_0x39abx12++):(_0x39abx16[_0x39abx14-_0x39abx9[_0x53bb[1828]]-2]=_0x39abx9[_0x53bb[730]](_0x39abx14-1),_0x39abx17=_0x39abx18)};if(_0x39abx12>_0x39abx13||_0x39abxa>_0x39abx13){if(_0x39abx12>=_0x39abxa){for(_0x39abx14=_0x39abx9[_0x53bb[1827]]-2;_0x39abx14>_0x39abx9[_0x53bb[1828]];_0x39abx14--){_0x39abx9[_0x53bb[1835]](_0x39abx14,_0x39abx16[_0x39abx14-_0x39abx9[_0x53bb[1828]]-1])}}else {if(_0x39abxa>_0x39abx12){for(_0x39abx14=_0x39abx9[_0x53bb[1828]]+2;_0x39abx14<_0x39abx9[_0x53bb[1827]];_0x39abx14++){_0x39abx9[_0x53bb[1835]](_0x39abx14,_0x39abx15[_0x39abx14-_0x39abx9[_0x53bb[1828]]-2])}}}}}}}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1903]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx2=_0x39abx2[_0x53bb[1850]][_0x39abx4];for(var _0x39abx9=-1,_0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){if(_0x39abx3==_0x39abx2[_0x39abxa]){_0x39abx9=_0x39abxa;break}};if(0>_0x39abx9){return !1};_0x39abxa=_0x39abx3[_0x53bb[1833]](_0x39abx4);if(_0x39abx5<_0x39abxa){if(0==_0x39abx9){return !0};_0x39abx2=_0x39abx2[_0x39abx9-1];_0x39abx4=_0x39abx2[_0x53bb[1833]](_0x39abx4);_0x39abx4=_0x39abx4+_0x39abx2[_0x53bb[117]]/2+this[_0x53bb[1868]]+_0x39abx3[_0x53bb[117]]/2;if(!(_0x39abx4<=_0x39abx5)){return !1}}else {if(_0x39abx5>_0x39abxa){if(_0x39abx9==_0x39abx2[_0x53bb[67]]-1){return !0};_0x39abx2=_0x39abx2[_0x39abx9+1];_0x39abx4=_0x39abx2[_0x53bb[1833]](_0x39abx4);_0x39abx4=_0x39abx4-_0x39abx2[_0x53bb[117]]/2-this[_0x53bb[1868]]-_0x39abx3[_0x53bb[117]]/2;if(!(_0x39abx4>=_0x39abx5)){return !1}}};return !0};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1895]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1877]]=[];this[_0x53bb[1878]]=[];for(var _0x39abx4=0;_0x39abx4<_0x39abx3[_0x53bb[1850]][_0x53bb[67]];_0x39abx4++){this[_0x53bb[1877]][_0x39abx4]=Number[_0x53bb[1904]],this[_0x53bb[1878]][_0x39abx4]=0};_0x39abx4=null;this[_0x53bb[1759]][_0x53bb[1735]]&&(_0x39abx4={});var _0x39abx5=_0x39abx3[_0x53bb[1847]],_0x39abx9=_0x39abx3[_0x53bb[1846]],_0x39abxa;for(_0x39abxa in _0x39abx9){var _0x39abx12=_0x39abx9[_0x39abxa];this[_0x53bb[1725]](_0x39abx12);if(this[_0x53bb[1759]][_0x53bb[1735]]){var _0x39abx12=_0x39abx2[_0x53bb[251]][_0x53bb[1197]](_0x39abx12[_0x53bb[246]]),_0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx12);null==_0x39abx4[_0x39abx13]&&(_0x39abx4[_0x39abx13]=_0x39abx12)}};this[_0x53bb[1759]][_0x53bb[1735]]&&null!=_0x39abx4&&this[_0x53bb[1763]](_0x39abx4);(this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1905]]||this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1883]]||this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1906]])&&this[_0x53bb[1764]](_0x39abx3);for(_0x39abxa in _0x39abx5){this[_0x53bb[1907]](_0x39abx5[_0x39abxa])}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1763]]=function(_0x39abx2){var _0x39abx3=[],_0x39abx4;for(_0x39abx4 in _0x39abx2){_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])};this[_0x53bb[1759]][_0x53bb[1727]](mxUtils[_0x53bb[1779]](_0x39abx3,!0),this[_0x53bb[1745]])};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1764]]=function(_0x39abx2){for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[1850]][_0x53bb[67]];_0x39abx3++){for(var _0x39abx4=_0x39abx2[_0x53bb[1850]][_0x39abx3],_0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){var _0x39abx9=_0x39abx4[_0x39abx5];if(_0x39abx9[_0x53bb[1193]]()){for(var _0x39abxa=_0x39abx9[_0x53bb[1832]](_0x39abx3),_0x39abx12=_0x39abx3-1,_0x39abx13=0;2>_0x39abx13;_0x39abx13++){if(-1<_0x39abx12&&_0x39abx12<_0x39abx2[_0x53bb[1850]][_0x53bb[67]]&&null!=_0x39abxa&&0<_0x39abxa[_0x53bb[67]]){for(var _0x39abx14=[],_0x39abx15=0;_0x39abx15<_0x39abxa[_0x53bb[67]];_0x39abx15++){var _0x39abx16= new WeightedCellSorter(_0x39abxa[_0x39abx15],_0x39abxa[_0x39abx15][_0x53bb[730]](_0x39abx12));_0x39abx14[_0x53bb[207]](_0x39abx16)};_0x39abx14[_0x53bb[470]](WeightedCellSorter[_0x53bb[202]][_0x53bb[469]]);for(var _0x39abx16=_0x39abx9[_0x53bb[235]][0]-_0x39abx9[_0x53bb[117]]/2,_0x39abx17=_0x39abx16+_0x39abx9[_0x53bb[117]],_0x39abx18=_0x39abxa=0,_0x39abx12=[],_0x39abx15=0;_0x39abx15<_0x39abx14[_0x53bb[67]];_0x39abx15++){var _0x39abx19=_0x39abx14[_0x39abx15][_0x53bb[246]],_0x39abx1a;if(_0x39abx19[_0x53bb[1193]]()){_0x39abx1a=0==_0x39abx13?_0x39abx9[_0x53bb[1838]]:_0x39abx9[_0x53bb[1837]];for(var _0x39abx1b=0;_0x39abx1b<_0x39abx1a[_0x53bb[67]];_0x39abx1b++){if(_0x39abx1a[_0x39abx1b][_0x53bb[1097]]==_0x39abx19||_0x39abx1a[_0x39abx1b][_0x53bb[772]]==_0x39abx19){_0x39abxa+=_0x39abx1a[_0x39abx1b][_0x53bb[1842]][_0x53bb[67]],_0x39abx18++,_0x39abx12[_0x53bb[207]](_0x39abx1a[_0x39abx1b])}}}else {_0x39abxa+=_0x39abx19[_0x53bb[1842]][_0x53bb[67]],_0x39abx18++,_0x39abx12[_0x53bb[207]](_0x39abx19)}};_0x39abx9[_0x53bb[117]]>(_0x39abxa+1)*this[_0x53bb[1751]]+2*this[_0x53bb[1751]]&&(_0x39abx16+=this[_0x53bb[1751]],_0x39abx17-=this[_0x53bb[1751]]);_0x39abx14=(_0x39abx17-_0x39abx16)/_0x39abxa;_0x39abx16+=_0x39abx14/2;_0x39abx17=this[_0x53bb[1753]]-this[_0x53bb[1752]];for(_0x39abx15=_0x39abx18=0;_0x39abx15<_0x39abx12[_0x53bb[67]];_0x39abx15++){_0x39abx19=_0x39abx12[_0x39abx15][_0x53bb[1842]][_0x53bb[67]];_0x39abx1b=mxCellPath[_0x53bb[385]](_0x39abx12[_0x39abx15][_0x53bb[1842]][0]);_0x39abx1a=this[_0x53bb[1873]][_0x39abx1b];null==_0x39abx1a&&(_0x39abx1a=[],this[_0x53bb[1873]][_0x39abx1b]=_0x39abx1a);_0x39abx15<_0x39abxa/2?_0x39abx17+=this[_0x53bb[1752]]:_0x39abx15>_0x39abxa/2&&(_0x39abx17-=this[_0x53bb[1752]]);for(_0x39abx1b=0;_0x39abx1b<_0x39abx19;_0x39abx1b++){_0x39abx1a[4*_0x39abx1b+2*_0x39abx13]=_0x39abx16,_0x39abx16+=_0x39abx14,_0x39abx1a[4*_0x39abx1b+2*_0x39abx13+1]=_0x39abx17};_0x39abx18=Math[_0x53bb[160]](_0x39abx18,_0x39abx17)}};_0x39abxa=_0x39abx9[_0x53bb[1831]](_0x39abx3);_0x39abx12=_0x39abx3+1}}}}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1907]]=function(_0x39abx2){var _0x39abx3=0;if(101207!=_0x39abx2[_0x53bb[1826]][0]){var _0x39abx4=_0x39abx2[_0x53bb[1827]],_0x39abx5=_0x39abx2[_0x53bb[1828]];_0x39abx4==_0x39abx5&&(_0x39abx4=_0x39abx2[_0x53bb[1097]][_0x53bb[1827]],_0x39abx5=_0x39abx2[_0x53bb[772]][_0x53bb[1828]]);for(var _0x39abx9=0,_0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2[_0x53bb[1842]][0]),_0x39abxa=this[_0x53bb[1873]][_0x39abxa],_0x39abx12=_0x39abx2[_0x53bb[1843]]?_0x39abx2[_0x53bb[772]][_0x53bb[246]]:_0x39abx2[_0x53bb[1097]][_0x53bb[246]],_0x39abx13=this[_0x53bb[1759]][_0x53bb[1179]],_0x39abx14=0;_0x39abx14<_0x39abx2[_0x53bb[1842]][_0x53bb[67]];_0x39abx14++){var _0x39abx15=_0x39abx2[_0x53bb[1842]][_0x39abx14],_0x39abx16=this[_0x53bb[1759]][_0x53bb[1710]](_0x39abx15,!0),_0x39abx17=_0x39abx13[_0x53bb[251]][_0x53bb[1709]](_0x39abx15,!0),_0x39abx18=[],_0x39abx19=_0x39abx2[_0x53bb[1843]];_0x39abx16!=_0x39abx12&&(_0x39abx19= !_0x39abx19);if(null!=_0x39abxa){var _0x39abx1a=_0x39abx19?2:0,_0x39abx1b=_0x39abx19?this[_0x53bb[1877]][_0x39abx5]:this[_0x53bb[1878]][_0x39abx4],_0x39abx1c=_0x39abxa[4*_0x39abx9+1+_0x39abx1a];_0x39abx19&&(_0x39abx1c= -_0x39abx1c);_0x39abx1b+=_0x39abx1c;_0x39abx1a=_0x39abxa[4*_0x39abx9+_0x39abx1a];_0x39abx17=_0x39abx13[_0x53bb[251]][_0x53bb[1709]](_0x39abx15,!0);this[_0x53bb[1759]][_0x53bb[1908]](_0x39abx17)&&_0x39abx13[_0x53bb[251]][_0x53bb[1197]](_0x39abx17)==_0x39abx16&&(_0x39abx1a=_0x39abx13[_0x53bb[441]][_0x53bb[248]](_0x39abx17),_0x39abx1a=null!=_0x39abx1a?_0x39abx1a[_0x53bb[235]]:_0x39abx16[_0x53bb[256]][_0x53bb[235]]+_0x39abx2[_0x53bb[1097]][_0x53bb[117]]*_0x39abx17[_0x53bb[256]][_0x53bb[235]]);this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?(_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1a,_0x39abx1b)),this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1906]]&&_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1a,_0x39abx1b+_0x39abx1c))):(_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1b,_0x39abx1a)),this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1906]]&&_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1b+_0x39abx1c,_0x39abx1a)))};_0x39abx1a=_0x39abx2[_0x53bb[235]][_0x53bb[67]]-1;_0x39abx1b=_0x39abx1c= -1;_0x39abx16=_0x39abx2[_0x53bb[1827]]-1;_0x39abx19&&(_0x39abx1a=0,_0x39abx1c=_0x39abx2[_0x53bb[235]][_0x53bb[67]],_0x39abx1b=1,_0x39abx16=_0x39abx2[_0x53bb[1828]]+1);for(;_0x39abx2[_0x53bb[1827]]!=_0x39abx2[_0x53bb[1828]]&&_0x39abx1a!=_0x39abx1c;_0x39abx1a+=_0x39abx1b){var _0x39abx17=_0x39abx2[_0x53bb[235]][_0x39abx1a]+_0x39abx3,_0x39abx1d=(this[_0x53bb[1877]][_0x39abx16]+this[_0x53bb[1878]][_0x39abx16+1])/2,_0x39abx1e=(this[_0x53bb[1877]][_0x39abx16-1]+this[_0x53bb[1878]][_0x39abx16])/2;if(_0x39abx19){var _0x39abx1f=_0x39abx1d,_0x39abx1d=_0x39abx1e,_0x39abx1e=_0x39abx1f};this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?(_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx17,_0x39abx1d)),_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx17,_0x39abx1e))):(_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1d,_0x39abx17)),_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1e,_0x39abx17)));this[_0x53bb[1874]]=Math[_0x53bb[160]](this[_0x53bb[1874]],_0x39abx17);_0x39abx16+=_0x39abx1b};null!=_0x39abxa&&(_0x39abx1a=_0x39abx19?2:0,_0x39abx1b=_0x39abx19?this[_0x53bb[1878]][_0x39abx4]:this[_0x53bb[1877]][_0x39abx5],_0x39abx1c=_0x39abxa[4*_0x39abx9+3-_0x39abx1a],_0x39abx19&&(_0x39abx1c= -_0x39abx1c),_0x39abx1b-=_0x39abx1c,_0x39abx1a=_0x39abxa[4*_0x39abx9+2-_0x39abx1a],_0x39abx19=_0x39abx13[_0x53bb[251]][_0x53bb[1709]](_0x39abx15,!1),_0x39abx16=this[_0x53bb[1759]][_0x53bb[1710]](_0x39abx15,!1),this[_0x53bb[1759]][_0x53bb[1908]](_0x39abx19)&&_0x39abx13[_0x53bb[251]][_0x53bb[1197]](_0x39abx19)==_0x39abx16&&(_0x39abx1a=_0x39abx13[_0x53bb[441]][_0x53bb[248]](_0x39abx19),_0x39abx1a=null!=_0x39abx1a?_0x39abx1a[_0x53bb[235]]:_0x39abx16[_0x53bb[256]][_0x53bb[235]]+_0x39abx2[_0x53bb[772]][_0x53bb[117]]*_0x39abx19[_0x53bb[256]][_0x53bb[235]]),this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?(this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1906]]&&_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1a,_0x39abx1b-_0x39abx1c)),_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1a,_0x39abx1b))):(this[_0x53bb[675]]==mxHierarchicalEdgeStyle[_0x53bb[1906]]&&_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1b-_0x39abx1c,_0x39abx1a)),_0x39abx18[_0x53bb[207]]( new mxPoint(_0x39abx1b,_0x39abx1a))));_0x39abx2[_0x53bb[1843]]&&this[_0x53bb[1909]](_0x39abx2,_0x39abx15);this[_0x53bb[1759]][_0x53bb[1722]](_0x39abx15,_0x39abx18);_0x39abx3=0==_0x39abx3?this[_0x53bb[1872]]:0<_0x39abx3?-_0x39abx3:-_0x39abx3+this[_0x53bb[1872]];_0x39abx9++};_0x39abx2[_0x53bb[1826]][0]=101207}};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1725]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[246]],_0x39abx4=_0x39abx2[_0x53bb[235]][0]-_0x39abx2[_0x53bb[117]]/2,_0x39abx5=_0x39abx2[_0x53bb[236]][0]-_0x39abx2[_0x53bb[119]]/2;this[_0x53bb[1877]][_0x39abx2[_0x53bb[1828]]]=Math[_0x53bb[243]](this[_0x53bb[1877]][_0x39abx2[_0x53bb[1828]]],_0x39abx5);this[_0x53bb[1878]][_0x39abx2[_0x53bb[1828]]]=Math[_0x53bb[160]](this[_0x53bb[1878]][_0x39abx2[_0x53bb[1828]]],_0x39abx5+_0x39abx2[_0x53bb[119]]);this[_0x53bb[1870]]==mxConstants[_0x53bb[1358]]||this[_0x53bb[1870]]==mxConstants[_0x53bb[1354]]?this[_0x53bb[1759]][_0x53bb[1725]](_0x39abx3,_0x39abx4,_0x39abx5):this[_0x53bb[1759]][_0x53bb[1725]](_0x39abx3,_0x39abx5,_0x39abx4);this[_0x53bb[1874]]=Math[_0x53bb[160]](this[_0x53bb[1874]],_0x39abx4+_0x39abx2[_0x53bb[117]])};mxCoordinateAssignment[_0x53bb[202]][_0x53bb[1909]]=function(_0x39abx2,_0x39abx3){};function WeightedCellSorter(_0x39abx2,_0x39abx3){this[_0x53bb[246]]=_0x39abx2;this[_0x53bb[1782]]=_0x39abx3}WeightedCellSorter[_0x53bb[202]][_0x53bb[1782]]=0;WeightedCellSorter[_0x53bb[202]][_0x53bb[1783]]= !1;WeightedCellSorter[_0x53bb[202]][_0x53bb[1784]]= !1;WeightedCellSorter[_0x53bb[202]][_0x53bb[1785]]=null;WeightedCellSorter[_0x53bb[202]][_0x53bb[246]]=null;WeightedCellSorter[_0x53bb[202]][_0x53bb[469]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2&&null!=_0x39abx3?_0x39abx3[_0x53bb[1782]]>_0x39abx2[_0x53bb[1782]]?-1:_0x39abx3[_0x53bb[1782]]<_0x39abx2[_0x53bb[1782]]?1:_0x39abx3[_0x53bb[1783]]?-1:1:0};function mxHierarchicalLayout(_0x39abx2,_0x39abx3,_0x39abx4){mxGraphLayout[_0x53bb[239]](this,_0x39abx2);this[_0x53bb[1870]]=null!=_0x39abx3?_0x39abx3:mxConstants[_0x53bb[1358]];this[_0x53bb[1910]]=null!=_0x39abx4?_0x39abx4:!0}mxHierarchicalLayout[_0x53bb[202]]= new mxGraphLayout;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[196]]=mxHierarchicalLayout;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1845]]=null;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1735]]= !1;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1911]]= !1;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1912]]=0;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1868]]=30;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1869]]=100;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1913]]=60;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1872]]=10;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1870]]=mxConstants[_0x53bb[1358]];mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1882]]= !0;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1844]]= !0;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1787]]= !0;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1914]]= !0;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[251]]=null;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1915]]=null;mxHierarchicalLayout[_0x53bb[202]][_0x53bb[502]]=function(){return this[_0x53bb[251]]};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1101]]=_0x39abx2;var _0x39abx4=this[_0x53bb[1179]][_0x53bb[251]];this[_0x53bb[1915]]={};if(!(null==_0x39abx3&&null==_0x39abx2)){if(null!=_0x39abx3&&null!=_0x39abx2){for(var _0x39abx5=[],_0x39abx9=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){_0x39abx4[_0x53bb[1720]](_0x39abx2,_0x39abx3[_0x39abx9])&&_0x39abx5[_0x53bb[207]](_0x39abx3[_0x39abx9])};this[_0x53bb[1845]]=_0x39abx5}else {this[_0x53bb[1845]]=_0x39abx3};_0x39abx4[_0x53bb[473]]();try{this[_0x53bb[1916]](_0x39abx2),this[_0x53bb[1735]]&&!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx2)&&this[_0x53bb[1179]][_0x53bb[1917]]([_0x39abx2],this[_0x53bb[1912]],this[_0x53bb[1911]])}finally{_0x39abx4[_0x53bb[476]]()}}};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1918]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=[];if(null!=_0x39abx2&&null!=_0x39abx3){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[251]],_0x39abx9=null,_0x39abxa=-1E5,_0x39abx12;for(_0x39abx12 in _0x39abx3){var _0x39abx13=_0x39abx3[_0x39abx12];if(_0x39abx5[_0x53bb[1193]](_0x39abx13)&&this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx13)){for(var _0x39abx14=this[_0x53bb[264]](_0x39abx13),_0x39abx15=0,_0x39abx16=0,_0x39abx17=0;_0x39abx17<_0x39abx14[_0x53bb[67]];_0x39abx17++){this[_0x53bb[1710]](_0x39abx14[_0x39abx17],!0)==_0x39abx13?_0x39abx15++:_0x39abx16++};0==_0x39abx16&&0<_0x39abx15&&_0x39abx4[_0x53bb[207]](_0x39abx13);_0x39abx14=_0x39abx15-_0x39abx16;_0x39abx14>_0x39abxa&&(_0x39abxa=_0x39abx14,_0x39abx9=_0x39abx13)}};0==_0x39abx4[_0x53bb[67]]&&null!=_0x39abx9&&_0x39abx4[_0x53bb[207]](_0x39abx9)};return _0x39abx4};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[264]]=function(_0x39abx2){var _0x39abx3=mxCellPath[_0x53bb[385]](_0x39abx2);if(null!=this[_0x53bb[1915]][_0x39abx3]){return this[_0x53bb[1915]][_0x39abx3]};for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[251]],_0x39abx5=[],_0x39abx9=this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx2),_0x39abxa=_0x39abx4[_0x53bb[262]](_0x39abx2),_0x39abx12=0;_0x39abx12<_0x39abxa;_0x39abx12++){var _0x39abx13=_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx12);if(this[_0x53bb[1908]](_0x39abx13)){_0x39abx5=_0x39abx5[_0x53bb[1919]](_0x39abx4[_0x53bb[264]](_0x39abx13,!0,!0))}else {if(_0x39abx9||!this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx13)){_0x39abx5=_0x39abx5[_0x53bb[1919]](_0x39abx4[_0x53bb[264]](_0x39abx13,!0,!0))}}};_0x39abx5=_0x39abx5[_0x53bb[1919]](_0x39abx4[_0x53bb[264]](_0x39abx2,!0,!0));_0x39abx4=[];for(_0x39abx12=0;_0x39abx12<_0x39abx5[_0x53bb[67]];_0x39abx12++){_0x39abx9=this[_0x53bb[1710]](_0x39abx5[_0x39abx12],!0),_0x39abxa=this[_0x53bb[1710]](_0x39abx5[_0x39abx12],!1),(_0x39abx9==_0x39abxa||_0x39abx9!=_0x39abxa&&(_0x39abxa==_0x39abx2&&(null==this[_0x53bb[1101]]||this[_0x53bb[1179]][_0x53bb[1920]](_0x39abx9,this[_0x53bb[1101]],this[_0x53bb[1914]]))||_0x39abx9==_0x39abx2&&(null==this[_0x53bb[1101]]||this[_0x53bb[1179]][_0x53bb[1920]](_0x39abxa,this[_0x53bb[1101]],this[_0x53bb[1914]]))))&&_0x39abx4[_0x53bb[207]](_0x39abx5[_0x39abx12])};return this[_0x53bb[1915]][_0x39abx3]=_0x39abx4};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1710]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx4=null!=_0x39abx4?_0x39abx4[_0x53bb[1710]](_0x39abx3):this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[1710]](_0x39abx2,_0x39abx3);this[_0x53bb[1908]](_0x39abx4)&&(_0x39abx4=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1197]](_0x39abx4));return _0x39abx4};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1916]]=function(_0x39abx2){var _0x39abx3=[],_0x39abx4=[];if(null==this[_0x53bb[1845]]&&null!=_0x39abx2){var _0x39abx5={};this[_0x53bb[1921]](_0x39abx2,_0x39abx5);this[_0x53bb[1845]]=[];var _0x39abx9=!0,_0x39abxa;for(_0x39abxa in _0x39abx5){if(null!=_0x39abx5[_0x39abxa]){_0x39abx9= !1;break}};for(;!_0x39abx9;){for(var _0x39abx12=this[_0x53bb[1918]](_0x39abx2,_0x39abx5),_0x39abx9=0;_0x39abx9<_0x39abx12[_0x53bb[67]];_0x39abx9++){var _0x39abx13=[];_0x39abx3[_0x53bb[207]](_0x39abx13);this[_0x53bb[1706]](_0x39abx12[_0x39abx9],!0,null,_0x39abx4,_0x39abx13,_0x39abx3,_0x39abx5)};for(_0x39abx9=0;_0x39abx9<_0x39abx12[_0x53bb[67]];_0x39abx9++){this[_0x53bb[1845]][_0x53bb[207]](_0x39abx12[_0x39abx9])};_0x39abx9= !0;for(_0x39abxa in _0x39abx5){if(null!=_0x39abx5[_0x39abxa]){_0x39abx9= !1;break}}}}else {for(_0x39abx9=0;_0x39abx9<roots[_0x53bb[67]];_0x39abx9++){_0x39abx13=[],_0x39abx3[_0x53bb[207]](_0x39abx13),traverse(roots[_0x53bb[203]](_0x39abx9),!0,null,_0x39abx4,_0x39abx13,_0x39abx3,null)}};for(_0x39abx9=_0x39abx4=0;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){_0x39abx13=_0x39abx3[_0x39abx9];_0x39abx5=[];for(_0x39abxa in _0x39abx13){_0x39abx5[_0x53bb[207]](_0x39abx13[_0x39abxa])};this[_0x53bb[251]]= new mxGraphHierarchyModel(this,_0x39abx5,this[_0x53bb[1845]],_0x39abx2,this[_0x53bb[1844]]);this[_0x53bb[1922]](_0x39abx2);this[_0x53bb[1923]]();this[_0x53bb[1924]](_0x39abx2);_0x39abx4=this[_0x53bb[1925]](_0x39abx4,_0x39abx2)}};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1921]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[251]];_0x39abx4[_0x53bb[1193]](_0x39abx2)&&(_0x39abx2!=this[_0x53bb[1101]]&&this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2))&&(_0x39abx3[mxCellPath[_0x53bb[385]](_0x39abx2)]=_0x39abx2);if(this[_0x53bb[1914]]||_0x39abx2==this[_0x53bb[1101]]&&this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2)){for(var _0x39abx5=_0x39abx4[_0x53bb[262]](_0x39abx2),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx9);this[_0x53bb[1908]](_0x39abxa)||this[_0x53bb[1921]](_0x39abxa,_0x39abx3)}}};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1908]]=function(_0x39abx2){return _0x39abx2[_0x53bb[256]][_0x53bb[1500]]?!0:!1};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1781]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;for(var _0x39abx5=this[_0x53bb[264]](_0x39abx2),_0x39abx9=[],_0x39abxa=0;_0x39abxa<_0x39abx5[_0x53bb[67]];_0x39abxa++){var _0x39abx12=this[_0x53bb[1710]](_0x39abx5[_0x39abxa],!0),_0x39abx13=this[_0x53bb[1710]](_0x39abx5[_0x39abxa],!1);(_0x39abx12==_0x39abx2&&_0x39abx13==_0x39abx3||!_0x39abx4&&_0x39abx12==_0x39abx3&&_0x39abx13==_0x39abx2)&&_0x39abx9[_0x53bb[207]](_0x39abx5[_0x39abxa])};return _0x39abx9};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1706]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){if(null!=_0x39abx2&&null!=_0x39abx5){var _0x39abx13=mxCellPath[_0x53bb[385]](_0x39abx2);if(null==_0x39abx5[_0x39abx13]&&(null==_0x39abx12||null!=_0x39abx12[_0x39abx13])){null==_0x39abx9[_0x39abx13]&&(_0x39abx9[_0x39abx13]=_0x39abx2);null==_0x39abx5[_0x39abx13]&&(_0x39abx5[_0x39abx13]=_0x39abx2);delete _0x39abx12[_0x39abx13];var _0x39abx14=this[_0x53bb[264]](_0x39abx2);for(_0x39abx4=0;_0x39abx4<_0x39abx14[_0x53bb[67]];_0x39abx4++){if(_0x39abx13=this[_0x53bb[1710]](_0x39abx14[_0x39abx4],!0)==_0x39abx2,!_0x39abx3||_0x39abx13){_0x39abx13=this[_0x53bb[1710]](_0x39abx14[_0x39abx4],!_0x39abx13),_0x39abx9=this[_0x53bb[1706]](_0x39abx13,_0x39abx3,_0x39abx14[_0x39abx4],_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12)}}}else {if(null==_0x39abx9[_0x39abx13]){for(_0x39abx4=0;_0x39abx4<_0x39abxa[_0x53bb[67]];_0x39abx4++){if(_0x39abx2=_0x39abxa[_0x39abx4],null!=_0x39abx2[_0x39abx13]){for(_0x39abx14 in _0x39abx9){_0x39abx2[_0x39abx14]=_0x39abx9[_0x39abx14]};_0x39abxa[_0x53bb[1242]]();return _0x39abx2}}}}};return _0x39abx9};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1922]]=function(_0x39abx2){( new mxMinimumCycleRemover(this))[_0x53bb[350]](_0x39abx2)};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1923]]=function(){this[_0x53bb[251]][_0x53bb[1852]]();this[_0x53bb[251]][_0x53bb[1854]]()};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1924]]=function(_0x39abx2){( new mxMedianHybridCrossingReduction(this))[_0x53bb[350]](_0x39abx2)};mxHierarchicalLayout[_0x53bb[202]][_0x53bb[1925]]=function(_0x39abx2,_0x39abx3){var _0x39abx4= new mxCoordinateAssignment(this,this[_0x53bb[1868]],this[_0x53bb[1869]],this[_0x53bb[1870]],_0x39abx2,this[_0x53bb[1872]]);_0x39abx4[_0x53bb[1882]]=this[_0x53bb[1882]];_0x39abx4[_0x53bb[350]](_0x39abx3);return _0x39abx4[_0x53bb[1874]]+this[_0x53bb[1913]]};function mxGraphModel(_0x39abx2){this[_0x53bb[1926]]=this[_0x53bb[1096]]();null!=_0x39abx2?this[_0x53bb[1927]](_0x39abx2):this[_0x53bb[200]]()}mxGraphModel[_0x53bb[202]]= new mxEventSource;mxGraphModel[_0x53bb[202]][_0x53bb[196]]=mxGraphModel;mxGraphModel[_0x53bb[202]][_0x53bb[813]]=null;mxGraphModel[_0x53bb[202]][_0x53bb[895]]=null;mxGraphModel[_0x53bb[202]][_0x53bb[1928]]= !0;mxGraphModel[_0x53bb[202]][_0x53bb[1929]]= !0;mxGraphModel[_0x53bb[202]][_0x53bb[1089]]=_0x53bb[110];mxGraphModel[_0x53bb[202]][_0x53bb[1930]]=_0x53bb[110];mxGraphModel[_0x53bb[202]][_0x53bb[1931]]=0;mxGraphModel[_0x53bb[202]][_0x53bb[1926]]=null;mxGraphModel[_0x53bb[202]][_0x53bb[1932]]=0;mxGraphModel[_0x53bb[202]][_0x53bb[1933]]= !1;mxGraphModel[_0x53bb[202]][_0x53bb[200]]=function(){this[_0x53bb[1927]](this[_0x53bb[1934]]())};mxGraphModel[_0x53bb[202]][_0x53bb[1935]]=function(){return this[_0x53bb[1929]]};mxGraphModel[_0x53bb[202]][_0x53bb[1936]]=function(_0x39abx2){this[_0x53bb[1929]]=_0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[1934]]=function(){var _0x39abx2= new mxCell;_0x39abx2[_0x53bb[1937]]( new mxCell);return _0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[736]]=function(_0x39abx2){return null!=this[_0x53bb[895]]?this[_0x53bb[895]][_0x39abx2]:null};mxGraphModel[_0x53bb[202]][_0x53bb[1938]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(null!=_0x39abx2){for(var _0x39abx4=[],_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){_0x39abx3(_0x39abx2[_0x39abx5])&&_0x39abx4[_0x53bb[207]](_0x39abx2[_0x39abx5])}};return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[1939]]=function(_0x39abx2){return this[_0x53bb[1921]](null,_0x39abx2)};mxGraphModel[_0x53bb[202]][_0x53bb[1921]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=[];_0x39abx3=_0x39abx3||this[_0x53bb[501]]();(null==_0x39abx2||_0x39abx2(_0x39abx3))&&_0x39abx4[_0x53bb[207]](_0x39abx3);for(var _0x39abx5=this[_0x53bb[262]](_0x39abx3),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=this[_0x53bb[263]](_0x39abx3,_0x39abx9),_0x39abx4=_0x39abx4[_0x53bb[1919]](this[_0x53bb[1921]](_0x39abx2,_0x39abxa))};return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[501]]=function(_0x39abx2){var _0x39abx3=_0x39abx2||this[_0x53bb[813]];if(null!=_0x39abx2){for(;null!=_0x39abx2;){_0x39abx3=_0x39abx2,_0x39abx2=this[_0x53bb[1197]](_0x39abx2)}};return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1927]]=function(_0x39abx2){this[_0x53bb[350]]( new mxRootChange(this,_0x39abx2));return _0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[1940]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[813]];this[_0x53bb[813]]=_0x39abx2;this[_0x53bb[1931]]=0;this[_0x53bb[895]]=null;this[_0x53bb[1941]](_0x39abx2);return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1942]]=function(_0x39abx2){return null!=_0x39abx2&&this[_0x53bb[813]]==_0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[1740]]=function(_0x39abx2){return this[_0x53bb[1942]](this[_0x53bb[1197]](_0x39abx2))};mxGraphModel[_0x53bb[202]][_0x53bb[1720]]=function(_0x39abx2,_0x39abx3){for(;null!=_0x39abx3&&_0x39abx3!=_0x39abx2;){_0x39abx3=this[_0x53bb[1197]](_0x39abx3)};return _0x39abx3==_0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[442]]=function(_0x39abx2){return this[_0x53bb[1720]](this[_0x53bb[813]],_0x39abx2)};mxGraphModel[_0x53bb[202]][_0x53bb[1197]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1197]]():null};mxGraphModel[_0x53bb[202]][_0x53bb[99]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(_0x39abx3!=_0x39abx2&&null!=_0x39abx2&&null!=_0x39abx3){null==_0x39abx4&&(_0x39abx4=this[_0x53bb[262]](_0x39abx2));var _0x39abx5=_0x39abx2!=this[_0x53bb[1197]](_0x39abx3);this[_0x53bb[350]]( new mxChildChange(this,_0x39abx2,_0x39abx3,_0x39abx4));this[_0x53bb[1928]]&&_0x39abx5&&this[_0x53bb[1943]](_0x39abx3)};return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1941]]=function(_0x39abx2){if(null!=_0x39abx2){null==_0x39abx2[_0x53bb[1103]]()&&this[_0x53bb[1929]]&&_0x39abx2[_0x53bb[1945]](this[_0x53bb[1944]](_0x39abx2));if(null!=_0x39abx2[_0x53bb[1103]]()){var _0x39abx3=this[_0x53bb[736]](_0x39abx2[_0x53bb[1103]]());if(_0x39abx3!=_0x39abx2){for(;null!=_0x39abx3;){_0x39abx2[_0x53bb[1945]](this[_0x53bb[1944]](_0x39abx2)),_0x39abx3=this[_0x53bb[736]](_0x39abx2[_0x53bb[1103]]())};null==this[_0x53bb[895]]&&(this[_0x53bb[895]]={});this[_0x53bb[895]][_0x39abx2[_0x53bb[1103]]()]=_0x39abx2}};mxUtils[_0x53bb[1946]](_0x39abx2[_0x53bb[1103]]())&&(this[_0x53bb[1931]]=Math[_0x53bb[160]](this[_0x53bb[1931]],_0x39abx2[_0x53bb[1103]]()));for(var _0x39abx3=this[_0x53bb[262]](_0x39abx2),_0x39abx4=0;_0x39abx4<_0x39abx3;_0x39abx4++){this[_0x53bb[1941]](this[_0x53bb[263]](_0x39abx2,_0x39abx4))}}};mxGraphModel[_0x53bb[202]][_0x53bb[1944]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1931]];this[_0x53bb[1931]]++;return this[_0x53bb[1089]]+_0x39abx2+this[_0x53bb[1930]]};mxGraphModel[_0x53bb[202]][_0x53bb[1943]]=function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3||this[_0x53bb[501]](_0x39abx2);for(var _0x39abx4=this[_0x53bb[262]](_0x39abx2),_0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){var _0x39abx9=this[_0x53bb[263]](_0x39abx2,_0x39abx5);this[_0x53bb[1943]](_0x39abx9,_0x39abx3)};_0x39abx9=this[_0x53bb[1707]](_0x39abx2);_0x39abx4=[];for(_0x39abx5=0;_0x39abx5<_0x39abx9;_0x39abx5++){_0x39abx4[_0x53bb[207]](this[_0x53bb[1708]](_0x39abx2,_0x39abx5))};for(_0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){_0x39abx9=_0x39abx4[_0x39abx5],this[_0x53bb[1720]](_0x39abx3,_0x39abx9)&&this[_0x53bb[1947]](_0x39abx9,_0x39abx3)}};mxGraphModel[_0x53bb[202]][_0x53bb[1947]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=this[_0x53bb[1709]](_0x39abx2,!0),_0x39abx5=this[_0x53bb[1709]](_0x39abx2,!1),_0x39abx9=null;null!=_0x39abx4&&!this[_0x53bb[250]](_0x39abx4)&&null!=_0x39abx4[_0x53bb[256]]&&_0x39abx4[_0x53bb[256]][_0x53bb[1500]];){_0x39abx4=this[_0x53bb[1197]](_0x39abx4)};for(;null!=_0x39abx5&&!this[_0x53bb[250]](_0x39abx5)&&null!=_0x39abx5[_0x53bb[256]]&&_0x39abx5[_0x53bb[256]][_0x53bb[1500]];){_0x39abx5=this[_0x53bb[1197]](_0x39abx5)};if(this[_0x53bb[1720]](_0x39abx3,_0x39abx4)&&this[_0x53bb[1720]](_0x39abx3,_0x39abx5)&&(_0x39abx9=_0x39abx4==_0x39abx5?this[_0x53bb[1197]](_0x39abx4):this[_0x53bb[1948]](_0x39abx4,_0x39abx5),null!=_0x39abx9&&(this[_0x53bb[1197]](_0x39abx9)!=this[_0x53bb[813]]||this[_0x53bb[1720]](_0x39abx9,_0x39abx2))&&this[_0x53bb[1197]](_0x39abx2)!=_0x39abx9)){_0x39abx4=this[_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx4){var _0x39abxa=this[_0x53bb[1949]](this[_0x53bb[1197]](_0x39abx2)),_0x39abx12=this[_0x53bb[1949]](_0x39abx9),_0x39abx5=_0x39abx12[_0x53bb[235]]-_0x39abxa[_0x53bb[235]],_0x39abxa=_0x39abx12[_0x53bb[236]]-_0x39abxa[_0x53bb[236]],_0x39abx4=_0x39abx4[_0x53bb[238]]();_0x39abx4[_0x53bb[513]](-_0x39abx5,-_0x39abxa);this[_0x53bb[1724]](_0x39abx2,_0x39abx4)};this[_0x53bb[99]](_0x39abx9,_0x39abx2,this[_0x53bb[262]](_0x39abx9))}};mxGraphModel[_0x53bb[202]][_0x53bb[1949]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2?(_0x39abx3=this[_0x53bb[1949]](this[_0x53bb[1197]](_0x39abx2)),this[_0x53bb[250]](_0x39abx2)||(_0x39abx2=this[_0x53bb[1721]](_0x39abx2),null!=_0x39abx2&&(_0x39abx3[_0x53bb[235]]+=_0x39abx2[_0x53bb[235]],_0x39abx3[_0x53bb[236]]+=_0x39abx2[_0x53bb[236]]))):_0x39abx3= new mxPoint;return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1948]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx3){var _0x39abx4=mxCellPath[_0x53bb[385]](_0x39abx3);if(null!=_0x39abx4&&0<_0x39abx4[_0x53bb[67]]){var _0x39abx5=_0x39abx2,_0x39abx9=mxCellPath[_0x53bb[385]](_0x39abx5);if(_0x39abx4[_0x53bb[67]]<_0x39abx9[_0x53bb[67]]){var _0x39abx5=_0x39abx3,_0x39abxa=_0x39abx9,_0x39abx9=_0x39abx4,_0x39abx4=_0x39abxa};for(;null!=_0x39abx5;){_0x39abxa=this[_0x53bb[1197]](_0x39abx5);if(0==_0x39abx4[_0x53bb[2]](_0x39abx9+mxCellPath[_0x53bb[1950]])&&null!=_0x39abxa){return _0x39abx5};_0x39abx9=mxCellPath[_0x53bb[1951]](_0x39abx9);_0x39abx5=_0x39abxa}}};return null};mxGraphModel[_0x53bb[202]][_0x53bb[205]]=function(_0x39abx2){_0x39abx2==this[_0x53bb[813]]?this[_0x53bb[1927]](null):null!=this[_0x53bb[1197]](_0x39abx2)&&this[_0x53bb[350]]( new mxChildChange(this,null,_0x39abx2));return _0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[1102]]=function(_0x39abx2){if(null!=_0x39abx2&&null!=this[_0x53bb[895]]){for(var _0x39abx3=this[_0x53bb[262]](_0x39abx2)-1;0<=_0x39abx3;_0x39abx3--){this[_0x53bb[1102]](this[_0x53bb[263]](_0x39abx2,_0x39abx3))};null!=this[_0x53bb[895]]&&null!=_0x39abx2[_0x53bb[1103]]()&& delete this[_0x53bb[895]][_0x39abx2[_0x53bb[1103]]()]}};mxGraphModel[_0x53bb[202]][_0x53bb[1952]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1197]](_0x39abx2);null!=_0x39abx3?(_0x39abx3!=_0x39abx5||_0x39abx5[_0x53bb[1738]](_0x39abx2)!=_0x39abx4)&&_0x39abx3[_0x53bb[1937]](_0x39abx2,_0x39abx4):null!=_0x39abx5&&(_0x39abx4=_0x39abx5[_0x53bb[1738]](_0x39abx2),_0x39abx5[_0x53bb[205]](_0x39abx4));!this[_0x53bb[442]](_0x39abx5)&&null!=_0x39abx3?this[_0x53bb[1941]](_0x39abx2):null==_0x39abx3&&this[_0x53bb[1102]](_0x39abx2);return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[262]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[262]]():0};mxGraphModel[_0x53bb[202]][_0x53bb[263]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2?_0x39abx2[_0x53bb[263]](_0x39abx3):null};mxGraphModel[_0x53bb[202]][_0x53bb[1953]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1954]]:null};mxGraphModel[_0x53bb[202]][_0x53bb[1728]]=function(_0x39abx2){return this[_0x53bb[1955]](_0x39abx2,!0,!1)};mxGraphModel[_0x53bb[202]][_0x53bb[1956]]=function(_0x39abx2){return this[_0x53bb[1955]](_0x39abx2,!1,!0)};mxGraphModel[_0x53bb[202]][_0x53bb[1955]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;for(var _0x39abx5=this[_0x53bb[262]](_0x39abx2),_0x39abx9=[],_0x39abxa=0;_0x39abxa<_0x39abx5;_0x39abxa++){var _0x39abx12=this[_0x53bb[263]](_0x39abx2,_0x39abxa);(!_0x39abx4&&!_0x39abx3||_0x39abx4&&this[_0x53bb[250]](_0x39abx12)||_0x39abx3&&this[_0x53bb[1193]](_0x39abx12))&&_0x39abx9[_0x53bb[207]](_0x39abx12)};return _0x39abx9};mxGraphModel[_0x53bb[202]][_0x53bb[1709]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2?_0x39abx2[_0x53bb[1709]](_0x39abx3):null};mxGraphModel[_0x53bb[202]][_0x53bb[1957]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx3!=this[_0x53bb[1709]](_0x39abx2,_0x39abx4);this[_0x53bb[350]]( new mxTerminalChange(this,_0x39abx2,_0x39abx3,_0x39abx4));this[_0x53bb[1928]]&&_0x39abx5&&this[_0x53bb[1947]](_0x39abx2,this[_0x53bb[501]]());return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1958]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[473]]();try{this[_0x53bb[1957]](_0x39abx2,_0x39abx3,!0),this[_0x53bb[1957]](_0x39abx2,_0x39abx4,!1)}finally{this[_0x53bb[476]]()}};mxGraphModel[_0x53bb[202]][_0x53bb[1959]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1709]](_0x39abx2,_0x39abx4);null!=_0x39abx3?_0x39abx3[_0x53bb[1960]](_0x39abx2,_0x39abx4):null!=_0x39abx5&&_0x39abx5[_0x53bb[1961]](_0x39abx2,_0x39abx4);return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[1707]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1707]]():0};mxGraphModel[_0x53bb[202]][_0x53bb[1708]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2?_0x39abx2[_0x53bb[1708]](_0x39abx3):null};mxGraphModel[_0x53bb[202]][_0x53bb[1962]]=function(_0x39abx2,_0x39abx3,_0x39abx4){for(var _0x39abx5=0,_0x39abx9=this[_0x53bb[1707]](_0x39abx2),_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){var _0x39abx12=this[_0x53bb[1708]](_0x39abx2,_0x39abxa);_0x39abx12!=_0x39abx4&&this[_0x53bb[1709]](_0x39abx12,_0x39abx3)==_0x39abx2&&_0x39abx5++};return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[1756]]=function(_0x39abx2){return this[_0x53bb[264]](_0x39abx2,!0,!0,!1)};mxGraphModel[_0x53bb[202]][_0x53bb[1867]]=function(_0x39abx2){return this[_0x53bb[264]](_0x39abx2,!0,!1,!1)};mxGraphModel[_0x53bb[202]][_0x53bb[1963]]=function(_0x39abx2){return this[_0x53bb[264]](_0x39abx2,!1,!0,!1)};mxGraphModel[_0x53bb[202]][_0x53bb[264]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;for(var _0x39abx9=this[_0x53bb[1707]](_0x39abx2),_0x39abxa=[],_0x39abx12=0;_0x39abx12<_0x39abx9;_0x39abx12++){var _0x39abx13=this[_0x53bb[1708]](_0x39abx2,_0x39abx12),_0x39abx14=this[_0x53bb[1709]](_0x39abx13,!0),_0x39abx15=this[_0x53bb[1709]](_0x39abx13,!1);(_0x39abx5&&_0x39abx14==_0x39abx15||_0x39abx14!=_0x39abx15&&(_0x39abx3&&_0x39abx15==_0x39abx2||_0x39abx4&&_0x39abx14==_0x39abx2))&&_0x39abxa[_0x53bb[207]](_0x39abx13)};return _0x39abxa};mxGraphModel[_0x53bb[202]][_0x53bb[1781]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;var _0x39abx5=this[_0x53bb[1707]](_0x39abx2),_0x39abx9=this[_0x53bb[1707]](_0x39abx3),_0x39abxa=_0x39abx2,_0x39abx12=_0x39abx5;_0x39abx9<_0x39abx5&&(_0x39abx12=_0x39abx9,_0x39abxa=_0x39abx3);_0x39abx5=[];for(_0x39abx9=0;_0x39abx9<_0x39abx12;_0x39abx9++){var _0x39abx13=this[_0x53bb[1708]](_0x39abxa,_0x39abx9),_0x39abx14=this[_0x53bb[1709]](_0x39abx13,!0),_0x39abx15=this[_0x53bb[1709]](_0x39abx13,!1),_0x39abx16=_0x39abx15==_0x39abx2&&_0x39abx14==_0x39abx3;(_0x39abx14==_0x39abx2&&_0x39abx15==_0x39abx3||!_0x39abx4&&_0x39abx16)&&_0x39abx5[_0x53bb[207]](_0x39abx13)};return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[1808]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;var _0x39abx9=[];if(null!=_0x39abx2){for(var _0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){var _0x39abx12=this[_0x53bb[1709]](_0x39abx2[_0x39abxa],!0),_0x39abx13=this[_0x53bb[1709]](_0x39abx2[_0x39abxa],!1);_0x39abx12==_0x39abx3&&null!=_0x39abx13&&_0x39abx13!=_0x39abx3&&_0x39abx5?_0x39abx9[_0x53bb[207]](_0x39abx13):_0x39abx13==_0x39abx3&&(null!=_0x39abx12&&_0x39abx12!=_0x39abx3&&_0x39abx4)&&_0x39abx9[_0x53bb[207]](_0x39abx12)}};return _0x39abx9};mxGraphModel[_0x53bb[202]][_0x53bb[1964]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){for(var _0x39abx5=_0x39abx2[_0x39abx4],_0x39abx9=!0,_0x39abxa=this[_0x53bb[1197]](_0x39abx5);null!=_0x39abxa;){if(0<=mxUtils[_0x53bb[2]](_0x39abx2,_0x39abxa)){_0x39abx9= !1;break};_0x39abxa=this[_0x53bb[1197]](_0x39abxa)};_0x39abx9&&_0x39abx3[_0x53bb[207]](_0x39abx5)};return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1193]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1193]]():!1};mxGraphModel[_0x53bb[202]][_0x53bb[250]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[250]]():!1};mxGraphModel[_0x53bb[202]][_0x53bb[1965]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1965]]():!1};mxGraphModel[_0x53bb[202]][_0x53bb[433]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[433]]():null};mxGraphModel[_0x53bb[202]][_0x53bb[1966]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[350]]( new mxValueChange(this,_0x39abx2,_0x39abx3));return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1967]]=function(_0x39abx2,_0x39abx3){return _0x39abx2[_0x53bb[1968]](_0x39abx3)};mxGraphModel[_0x53bb[202]][_0x53bb[1721]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2?_0x39abx2[_0x53bb[1721]]():null};mxGraphModel[_0x53bb[202]][_0x53bb[1724]]=function(_0x39abx2,_0x39abx3){_0x39abx3!=this[_0x53bb[1721]](_0x39abx2)&&this[_0x53bb[350]]( new mxGeometryChange(this,_0x39abx2,_0x39abx3));return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1969]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1721]](_0x39abx2);_0x39abx2[_0x53bb[1724]](_0x39abx3);return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[474]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[474]]():null};mxGraphModel[_0x53bb[202]][_0x53bb[475]]=function(_0x39abx2,_0x39abx3){_0x39abx3!=this[_0x53bb[474]](_0x39abx2)&&this[_0x53bb[350]]( new mxStyleChange(this,_0x39abx2,_0x39abx3));return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1970]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[474]](_0x39abx2);_0x39abx2[_0x53bb[475]](_0x39abx3);return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[1971]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[1971]]():!1};mxGraphModel[_0x53bb[202]][_0x53bb[1972]]=function(_0x39abx2,_0x39abx3){_0x39abx3!=this[_0x53bb[1971]](_0x39abx2)&&this[_0x53bb[350]]( new mxCollapseChange(this,_0x39abx2,_0x39abx3));return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1973]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1971]](_0x39abx2);_0x39abx2[_0x53bb[1972]](_0x39abx3);return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[174]]=function(_0x39abx2){return null!=_0x39abx2?_0x39abx2[_0x53bb[174]]():!1};mxGraphModel[_0x53bb[202]][_0x53bb[175]]=function(_0x39abx2,_0x39abx3){_0x39abx3!=this[_0x53bb[174]](_0x39abx2)&&this[_0x53bb[350]]( new mxVisibleChange(this,_0x39abx2,_0x39abx3));return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1974]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[174]](_0x39abx2);_0x39abx2[_0x53bb[175]](_0x39abx3);return _0x39abx4};mxGraphModel[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2){_0x39abx2[_0x53bb[350]]();this[_0x53bb[473]]();this[_0x53bb[1926]][_0x53bb[99]](_0x39abx2);this[_0x53bb[746]]( new mxEventObject(mxEvent.EXECUTE,_0x53bb[826],_0x39abx2));this[_0x53bb[746]]( new mxEventObject(mxEvent.EXECUTED,_0x53bb[826],_0x39abx2));this[_0x53bb[476]]()};mxGraphModel[_0x53bb[202]][_0x53bb[473]]=function(){this[_0x53bb[1932]]++;this[_0x53bb[746]]( new mxEventObject(mxEvent.BEGIN_UPDATE));1==this[_0x53bb[1932]]&&this[_0x53bb[746]]( new mxEventObject(mxEvent.START_EDIT))};mxGraphModel[_0x53bb[202]][_0x53bb[476]]=function(){this[_0x53bb[1932]]--;0==this[_0x53bb[1932]]&&this[_0x53bb[746]]( new mxEventObject(mxEvent.END_EDIT));if(!this[_0x53bb[1933]]){this[_0x53bb[1933]]=0==this[_0x53bb[1932]];this[_0x53bb[746]]( new mxEventObject(mxEvent.END_UPDATE,_0x53bb[1061],this[_0x53bb[1926]]));try{if(this[_0x53bb[1933]]&&!this[_0x53bb[1926]][_0x53bb[1107]]()){this[_0x53bb[746]]( new mxEventObject(mxEvent.BEFORE_UNDO,_0x53bb[1061],this[_0x53bb[1926]]));var _0x39abx2=this[_0x53bb[1926]];this[_0x53bb[1926]]=this[_0x53bb[1096]]();_0x39abx2[_0x53bb[827]]();this[_0x53bb[746]]( new mxEventObject(mxEvent.UNDO,_0x53bb[1061],_0x39abx2))}}finally{this[_0x53bb[1933]]= !1}}};mxGraphModel[_0x53bb[202]][_0x53bb[1096]]=function(){var _0x39abx2= new mxUndoableEdit(this,!0);_0x39abx2[_0x53bb[827]]=function(){_0x39abx2[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.CHANGE,_0x53bb[1061],_0x39abx2,_0x53bb[1065],_0x39abx2[_0x53bb[1065]]));_0x39abx2[_0x53bb[1097]][_0x53bb[746]]( new mxEventObject(mxEvent.NOTIFY,_0x53bb[1061],_0x39abx2,_0x53bb[1065],_0x39abx2[_0x53bb[1065]]))};return _0x39abx2};mxGraphModel[_0x53bb[202]][_0x53bb[1975]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;this[_0x53bb[473]]();try{var _0x39abx5={};this[_0x53bb[1976]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);for(var _0x39abx9 in _0x39abx5){var _0x39abxa=_0x39abx5[_0x39abx9],_0x39abx12=this[_0x53bb[1709]](_0x39abxa,!0);null!=_0x39abx12&&(_0x39abx12=_0x39abx5[mxCellPath[_0x53bb[385]](_0x39abx12)],this[_0x53bb[1957]](_0x39abxa,_0x39abx12,!0));_0x39abx12=this[_0x53bb[1709]](_0x39abxa,!1);null!=_0x39abx12&&(_0x39abx12=_0x39abx5[mxCellPath[_0x53bb[385]](_0x39abx12)],this[_0x53bb[1957]](_0x39abxa,_0x39abx12,!1))}}finally{this[_0x53bb[476]]()}};mxGraphModel[_0x53bb[202]][_0x53bb[1976]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[473]]();try{for(var _0x39abx9=_0x39abx2[_0x53bb[262]](),_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){var _0x39abx12=_0x39abx2[_0x53bb[263]](_0x39abxa);if(_0x53bb[279]== typeof _0x39abx12[_0x53bb[1103]]){var _0x39abx13=_0x39abx12[_0x53bb[1103]](),_0x39abx14=null!=_0x39abx13&&(!this[_0x53bb[250]](_0x39abx12)|| !_0x39abx4)?this[_0x53bb[736]](_0x39abx13):null;if(null==_0x39abx14){var _0x39abx15=_0x39abx12[_0x53bb[238]]();_0x39abx15[_0x53bb[1945]](_0x39abx13);_0x39abx15[_0x53bb[1957]](_0x39abx12[_0x53bb[1709]](!0),!0);_0x39abx15[_0x53bb[1957]](_0x39abx12[_0x53bb[1709]](!1),!1);_0x39abx14=_0x39abx3[_0x53bb[1937]](_0x39abx15);this[_0x53bb[1941]](_0x39abx14)};_0x39abx5[mxCellPath[_0x53bb[385]](_0x39abx12)]=_0x39abx14;this[_0x53bb[1976]](_0x39abx12,_0x39abx14,_0x39abx4,_0x39abx5)}}}finally{this[_0x53bb[476]]()}};mxGraphModel[_0x53bb[202]][_0x53bb[1977]]=function(_0x39abx2){var _0x39abx3=[];if(null!=_0x39abx2){for(var _0x39abx4={},_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){var _0x39abx9=this[_0x53bb[1197]](_0x39abx2[_0x39abx5]);if(null!=_0x39abx9){var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx9);null==_0x39abx4[_0x39abxa]&&(_0x39abx4[_0x39abxa]=_0x39abx9,_0x39abx3[_0x53bb[207]](_0x39abx9))}}};return _0x39abx3};mxGraphModel[_0x53bb[202]][_0x53bb[1978]]=function(_0x39abx2){return null!=_0x39abx2?this[_0x53bb[899]]([_0x39abx2],!0)[0]:null};mxGraphModel[_0x53bb[202]][_0x53bb[899]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4={},_0x39abx5=[],_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){null!=_0x39abx2[_0x39abx9]?_0x39abx5[_0x53bb[207]](this[_0x53bb[1979]](_0x39abx2[_0x39abx9],_0x39abx4,_0x39abx3)):_0x39abx5[_0x53bb[207]](null)};for(_0x39abx9=0;_0x39abx9<_0x39abx5[_0x53bb[67]];_0x39abx9++){null!=_0x39abx5[_0x39abx9]&&this[_0x53bb[1980]](_0x39abx5[_0x39abx9],_0x39abx2[_0x39abx9],_0x39abx4)};return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[1979]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1981]](_0x39abx2);_0x39abx3[mxObjectIdentity[_0x53bb[203]](_0x39abx2)]=_0x39abx5;if(_0x39abx4){_0x39abx4=this[_0x53bb[262]](_0x39abx2);for(var _0x39abx9=0;_0x39abx9<_0x39abx4;_0x39abx9++){var _0x39abxa=this[_0x53bb[1979]](this[_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx3,!0);_0x39abx5[_0x53bb[1937]](_0x39abxa)}};return _0x39abx5};mxGraphModel[_0x53bb[202]][_0x53bb[1981]]=function(_0x39abx2){return _0x39abx2[_0x53bb[238]]()};mxGraphModel[_0x53bb[202]][_0x53bb[1980]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1709]](_0x39abx3,!0);null!=_0x39abx5&&(_0x39abx5=_0x39abx4[mxObjectIdentity[_0x53bb[203]](_0x39abx5)],null!=_0x39abx5&&_0x39abx5[_0x53bb[1960]](_0x39abx2,!0));_0x39abx5=this[_0x53bb[1709]](_0x39abx3,!1);null!=_0x39abx5&&(_0x39abx5=_0x39abx4[mxObjectIdentity[_0x53bb[203]](_0x39abx5)],null!=_0x39abx5&&_0x39abx5[_0x53bb[1960]](_0x39abx2,!1));for(var _0x39abx5=this[_0x53bb[262]](_0x39abx2),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){this[_0x53bb[1980]](this[_0x53bb[263]](_0x39abx2,_0x39abx9),this[_0x53bb[263]](_0x39abx3,_0x39abx9),_0x39abx4)}};function mxRootChange(_0x39abx2,_0x39abx3){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[257]]=this[_0x53bb[813]]=_0x39abx3}mxRootChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[813]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1940]](this[_0x53bb[257]])};function mxChildChange(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[257]]=this[_0x53bb[1101]]=_0x39abx3;this[_0x53bb[247]]=_0x39abx4;this[_0x53bb[1982]]=this[_0x53bb[1983]]=_0x39abx5}mxChildChange[_0x53bb[202]][_0x53bb[350]]=function(){var _0x39abx2=this[_0x53bb[251]][_0x53bb[1197]](this[_0x53bb[247]]),_0x39abx3=null!=_0x39abx2?_0x39abx2[_0x53bb[1738]](this[_0x53bb[247]]):0;null==this[_0x53bb[257]]&&this[_0x53bb[807]](this[_0x53bb[247]],!1);_0x39abx2=this[_0x53bb[251]][_0x53bb[1952]](this[_0x53bb[247]],this[_0x53bb[257]],this[_0x53bb[1982]]);null!=this[_0x53bb[257]]&&this[_0x53bb[807]](this[_0x53bb[247]],!0);this[_0x53bb[1101]]=this[_0x53bb[257]];this[_0x53bb[257]]=_0x39abx2;this[_0x53bb[1983]]=this[_0x53bb[1982]];this[_0x53bb[1982]]=_0x39abx3};mxChildChange[_0x53bb[202]][_0x53bb[807]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;var _0x39abx4=_0x39abx2[_0x53bb[1709]](!0),_0x39abx5=_0x39abx2[_0x53bb[1709]](!1);null!=_0x39abx4&&(_0x39abx3?this[_0x53bb[251]][_0x53bb[1959]](_0x39abx2,_0x39abx4,!0):this[_0x53bb[251]][_0x53bb[1959]](_0x39abx2,null,!0));null!=_0x39abx5&&(_0x39abx3?this[_0x53bb[251]][_0x53bb[1959]](_0x39abx2,_0x39abx5,!1):this[_0x53bb[251]][_0x53bb[1959]](_0x39abx2,null,!1));_0x39abx2[_0x53bb[1957]](_0x39abx4,!0);_0x39abx2[_0x53bb[1957]](_0x39abx5,!1);_0x39abx4=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2);for(_0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){this[_0x53bb[807]](this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx5),_0x39abx3)}};function mxTerminalChange(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[1984]]=_0x39abx4;this[_0x53bb[1097]]=_0x39abx5}mxTerminalChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[1984]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1959]](this[_0x53bb[246]],this[_0x53bb[257]],this[_0x53bb[1097]])};function mxValueChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[131]]=_0x39abx4}mxValueChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[131]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1967]](this[_0x53bb[246]],this[_0x53bb[257]])};function mxStyleChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[124]]=_0x39abx4}mxStyleChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[124]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1970]](this[_0x53bb[246]],this[_0x53bb[257]])};function mxGeometryChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[256]]=_0x39abx4}mxGeometryChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[256]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1969]](this[_0x53bb[246]],this[_0x53bb[257]])};function mxCollapseChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[1985]]=_0x39abx4}mxCollapseChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[1985]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1973]](this[_0x53bb[246]],this[_0x53bb[257]])};function mxVisibleChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[189]]=_0x39abx4}mxVisibleChange[_0x53bb[202]][_0x53bb[350]]=function(){this[_0x53bb[189]]=this[_0x53bb[257]];this[_0x53bb[257]]=this[_0x53bb[251]][_0x53bb[1974]](this[_0x53bb[246]],this[_0x53bb[257]])};function mxCellAttributeChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[246]]=_0x39abx2;this[_0x53bb[1986]]=_0x39abx3;this[_0x53bb[257]]=this[_0x53bb[131]]=_0x39abx4}mxCellAttributeChange[_0x53bb[202]][_0x53bb[350]]=function(){var _0x39abx2=this[_0x53bb[246]][_0x53bb[284]](this[_0x53bb[1986]]);null==this[_0x53bb[257]]?this[_0x53bb[246]][_0x53bb[131]][_0x53bb[1390]](this[_0x53bb[1986]]):this[_0x53bb[246]][_0x53bb[57]](this[_0x53bb[1986]],this[_0x53bb[257]]);this[_0x53bb[257]]=_0x39abx2};function mxCell(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[131]]=_0x39abx2;this[_0x53bb[1724]](_0x39abx3);this[_0x53bb[475]](_0x39abx4);if(null!=this[_0x53bb[1987]]){this[_0x53bb[1987]]()}}mxCell[_0x53bb[202]][_0x53bb[1363]]=null;mxCell[_0x53bb[202]][_0x53bb[131]]=null;mxCell[_0x53bb[202]][_0x53bb[256]]=null;mxCell[_0x53bb[202]][_0x53bb[124]]=null;mxCell[_0x53bb[202]][_0x53bb[1988]]= !1;mxCell[_0x53bb[202]][_0x53bb[1989]]= !1;mxCell[_0x53bb[202]][_0x53bb[1990]]= !0;mxCell[_0x53bb[202]][_0x53bb[189]]= !0;mxCell[_0x53bb[202]][_0x53bb[1985]]= !1;mxCell[_0x53bb[202]][_0x53bb[1101]]=null;mxCell[_0x53bb[202]][_0x53bb[1097]]=null;mxCell[_0x53bb[202]][_0x53bb[772]]=null;mxCell[_0x53bb[202]][_0x53bb[1954]]=null;mxCell[_0x53bb[202]][_0x53bb[1842]]=null;mxCell[_0x53bb[202]][_0x53bb[1991]]=_0x53bb[1992][_0x53bb[224]](_0x53bb[185]);mxCell[_0x53bb[202]][_0x53bb[1103]]=function(){return this[_0x53bb[1363]]};mxCell[_0x53bb[202]][_0x53bb[1945]]=function(_0x39abx2){this[_0x53bb[1363]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[433]]=function(){return this[_0x53bb[131]]};mxCell[_0x53bb[202]][_0x53bb[1966]]=function(_0x39abx2){this[_0x53bb[131]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1968]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[433]]();this[_0x53bb[1966]](_0x39abx2);return _0x39abx3};mxCell[_0x53bb[202]][_0x53bb[1721]]=function(){return this[_0x53bb[256]]};mxCell[_0x53bb[202]][_0x53bb[1724]]=function(_0x39abx2){this[_0x53bb[256]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[474]]=function(){return this[_0x53bb[124]]};mxCell[_0x53bb[202]][_0x53bb[475]]=function(_0x39abx2){this[_0x53bb[124]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1193]]=function(){return this[_0x53bb[1988]]};mxCell[_0x53bb[202]][_0x53bb[1993]]=function(_0x39abx2){this[_0x53bb[1988]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[250]]=function(){return this[_0x53bb[1989]]};mxCell[_0x53bb[202]][_0x53bb[1994]]=function(_0x39abx2){this[_0x53bb[1989]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1965]]=function(){return this[_0x53bb[1990]]};mxCell[_0x53bb[202]][_0x53bb[1995]]=function(_0x39abx2){this[_0x53bb[1990]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[174]]=function(){return this[_0x53bb[189]]};mxCell[_0x53bb[202]][_0x53bb[175]]=function(_0x39abx2){this[_0x53bb[189]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1971]]=function(){return this[_0x53bb[1985]]};mxCell[_0x53bb[202]][_0x53bb[1972]]=function(_0x39abx2){this[_0x53bb[1985]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1197]]=function(){return this[_0x53bb[1101]]};mxCell[_0x53bb[202]][_0x53bb[1996]]=function(_0x39abx2){this[_0x53bb[1101]]=_0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1709]]=function(_0x39abx2){return _0x39abx2?this[_0x53bb[1097]]:this[_0x53bb[772]]};mxCell[_0x53bb[202]][_0x53bb[1957]]=function(_0x39abx2,_0x39abx3){_0x39abx3?this[_0x53bb[1097]]=_0x39abx2:this[_0x53bb[772]]=_0x39abx2;return _0x39abx2};mxCell[_0x53bb[202]][_0x53bb[262]]=function(){return null==this[_0x53bb[1954]]?0:this[_0x53bb[1954]][_0x53bb[67]]};mxCell[_0x53bb[202]][_0x53bb[1738]]=function(_0x39abx2){return mxUtils[_0x53bb[2]](this[_0x53bb[1954]],_0x39abx2)};mxCell[_0x53bb[202]][_0x53bb[263]]=function(_0x39abx2){return null==this[_0x53bb[1954]]?null:this[_0x53bb[1954]][_0x39abx2]};mxCell[_0x53bb[202]][_0x53bb[1937]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx2&&(null==_0x39abx3&&(_0x39abx3=this[_0x53bb[262]](),_0x39abx2[_0x53bb[1197]]()==this&&_0x39abx3--),_0x39abx2[_0x53bb[1997]](),_0x39abx2[_0x53bb[1996]](this),null==this[_0x53bb[1954]]?(this[_0x53bb[1954]]=[],this[_0x53bb[1954]][_0x53bb[207]](_0x39abx2)):this[_0x53bb[1954]][_0x53bb[300]](_0x39abx3,0,_0x39abx2));return _0x39abx2};mxCell[_0x53bb[202]][_0x53bb[205]]=function(_0x39abx2){var _0x39abx3=null;null!=this[_0x53bb[1954]]&&0<=_0x39abx2&&(_0x39abx3=this[_0x53bb[263]](_0x39abx2),null!=_0x39abx3&&(this[_0x53bb[1954]][_0x53bb[300]](_0x39abx2,1),_0x39abx3[_0x53bb[1996]](null)));return _0x39abx3};mxCell[_0x53bb[202]][_0x53bb[1997]]=function(){if(null!=this[_0x53bb[1101]]){var _0x39abx2=this[_0x53bb[1101]][_0x53bb[1738]](this);this[_0x53bb[1101]][_0x53bb[205]](_0x39abx2)}};mxCell[_0x53bb[202]][_0x53bb[1707]]=function(){return null==this[_0x53bb[1842]]?0:this[_0x53bb[1842]][_0x53bb[67]]};mxCell[_0x53bb[202]][_0x53bb[1998]]=function(_0x39abx2){return mxUtils[_0x53bb[2]](this[_0x53bb[1842]],_0x39abx2)};mxCell[_0x53bb[202]][_0x53bb[1708]]=function(_0x39abx2){return null==this[_0x53bb[1842]]?null:this[_0x53bb[1842]][_0x39abx2]};mxCell[_0x53bb[202]][_0x53bb[1960]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&(_0x39abx2[_0x53bb[1999]](_0x39abx3),_0x39abx2[_0x53bb[1957]](this,_0x39abx3),null==this[_0x53bb[1842]]||_0x39abx2[_0x53bb[1709]](!_0x39abx3)!=this||0>mxUtils[_0x53bb[2]](this[_0x53bb[1842]],_0x39abx2))){null==this[_0x53bb[1842]]&&(this[_0x53bb[1842]]=[]),this[_0x53bb[1842]][_0x53bb[207]](_0x39abx2)};return _0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1961]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2){if(_0x39abx2[_0x53bb[1709]](!_0x39abx3)!=this&&null!=this[_0x53bb[1842]]){var _0x39abx4=this[_0x53bb[1998]](_0x39abx2);0<=_0x39abx4&&this[_0x53bb[1842]][_0x53bb[300]](_0x39abx4,1)};_0x39abx2[_0x53bb[1957]](null,_0x39abx3)};return _0x39abx2};mxCell[_0x53bb[202]][_0x53bb[1999]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1709]](_0x39abx2);null!=_0x39abx3&&_0x39abx3[_0x53bb[1961]](this,_0x39abx2)};mxCell[_0x53bb[202]][_0x53bb[284]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[433]]();return (null!=_0x39abx4&&_0x39abx4[_0x53bb[288]]==mxConstants[_0x53bb[289]]?_0x39abx4[_0x53bb[284]](_0x39abx2):null)||_0x39abx3};mxCell[_0x53bb[202]][_0x53bb[57]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[433]]();null!=_0x39abx4&&_0x39abx4[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&_0x39abx4[_0x53bb[57]](_0x39abx2,_0x39abx3)};mxCell[_0x53bb[202]][_0x53bb[238]]=function(){var _0x39abx2=mxUtils[_0x53bb[238]](this,this[_0x53bb[1991]]);_0x39abx2[_0x53bb[1966]](this[_0x53bb[2000]]());return _0x39abx2};mxCell[_0x53bb[202]][_0x53bb[2000]]=function(){var _0x39abx2=this[_0x53bb[433]]();null!=_0x39abx2&&(_0x53bb[279]== typeof _0x39abx2[_0x53bb[238]]?_0x39abx2=_0x39abx2[_0x53bb[238]]():isNaN(_0x39abx2[_0x53bb[288]])||(_0x39abx2=_0x39abx2[_0x53bb[511]](!0)));return _0x39abx2};function mxGeometry(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxRectangle[_0x53bb[239]](this,_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)}mxGeometry[_0x53bb[202]]= new mxRectangle;mxGeometry[_0x53bb[202]][_0x53bb[196]]=mxGeometry;mxGeometry[_0x53bb[202]][_0x53bb[2001]]= !0;mxGeometry[_0x53bb[202]][_0x53bb[2002]]=null;mxGeometry[_0x53bb[202]][_0x53bb[2003]]=null;mxGeometry[_0x53bb[202]][_0x53bb[2004]]=null;mxGeometry[_0x53bb[202]][_0x53bb[1525]]=null;mxGeometry[_0x53bb[202]][_0x53bb[1368]]=null;mxGeometry[_0x53bb[202]][_0x53bb[1500]]= !1;mxGeometry[_0x53bb[202]][_0x53bb[2005]]=function(){if(null!=this[_0x53bb[2002]]){var _0x39abx2= new mxRectangle(this[_0x53bb[235]],this[_0x53bb[236]],this[_0x53bb[117]],this[_0x53bb[119]]);this[_0x53bb[235]]=this[_0x53bb[2002]][_0x53bb[235]];this[_0x53bb[236]]=this[_0x53bb[2002]][_0x53bb[236]];this[_0x53bb[117]]=this[_0x53bb[2002]][_0x53bb[117]];this[_0x53bb[119]]=this[_0x53bb[2002]][_0x53bb[119]];this[_0x53bb[2002]]=_0x39abx2}};mxGeometry[_0x53bb[202]][_0x53bb[2006]]=function(_0x39abx2){return _0x39abx2?this[_0x53bb[2003]]:this[_0x53bb[2004]]};mxGeometry[_0x53bb[202]][_0x53bb[2007]]=function(_0x39abx2,_0x39abx3){_0x39abx3?this[_0x53bb[2003]]=_0x39abx2:this[_0x53bb[2004]]=_0x39abx2;return _0x39abx2};mxGeometry[_0x53bb[202]][_0x53bb[513]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[238]]();this[_0x53bb[1500]]||(this[_0x53bb[235]]+=_0x39abx2,this[_0x53bb[236]]+=_0x39abx3);null!=this[_0x53bb[2003]]&&(this[_0x53bb[2003]][_0x53bb[235]]+=_0x39abx2,this[_0x53bb[2003]][_0x53bb[236]]+=_0x39abx3);null!=this[_0x53bb[2004]]&&(this[_0x53bb[2004]][_0x53bb[235]]+=_0x39abx2,this[_0x53bb[2004]][_0x53bb[236]]+=_0x39abx3);if(this[_0x53bb[2001]]&&null!=this[_0x53bb[1525]]){for(var _0x39abx4=this[_0x53bb[1525]][_0x53bb[67]],_0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){var _0x39abx9=this[_0x53bb[1525]][_0x39abx5];null!=_0x39abx9&&(_0x39abx9[_0x53bb[235]]+=_0x39abx2,_0x39abx9[_0x53bb[236]]+=_0x39abx3)}}};var mxCellPath={PATH_SEPARATOR:_0x53bb[87],create:function(_0x39abx2){var _0x39abx3=_0x53bb[110];if(null!=_0x39abx2){for(var _0x39abx4=_0x39abx2[_0x53bb[1197]]();null!=_0x39abx4;){_0x39abx3=_0x39abx4[_0x53bb[1738]](_0x39abx2)+mxCellPath[_0x53bb[1950]]+_0x39abx3,_0x39abx2=_0x39abx4,_0x39abx4=_0x39abx2[_0x53bb[1197]]()}};_0x39abx2=_0x39abx3[_0x53bb[67]];1<_0x39abx2&&(_0x39abx3=_0x39abx3[_0x53bb[85]](0,_0x39abx2-1));return _0x39abx3},getParentPath:function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[1122]](mxCellPath.PATH_SEPARATOR);if(0<=_0x39abx3){return _0x39abx2[_0x53bb[85]](0,_0x39abx3)};if(0<_0x39abx2[_0x53bb[67]]){return _0x53bb[110]}};return null},resolve:function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2;if(null!=_0x39abx3){for(var _0x39abx5=_0x39abx3[_0x53bb[224]](mxCellPath.PATH_SEPARATOR),_0x39abx9=0;_0x39abx9<_0x39abx5[_0x53bb[67]];_0x39abx9++){_0x39abx4=_0x39abx4[_0x53bb[263]](parseInt(_0x39abx5[_0x39abx9]))}};return _0x39abx4},compare:function(_0x39abx2,_0x39abx3){for(var _0x39abx4=Math[_0x53bb[243]](_0x39abx2[_0x53bb[67]],_0x39abx3[_0x53bb[67]]),_0x39abx5=0,_0x39abx9=0;_0x39abx9<_0x39abx4;_0x39abx9++){if(_0x39abx2[_0x39abx9]!=_0x39abx3[_0x39abx9]){0==_0x39abx2[_0x39abx9][_0x53bb[67]]||0==_0x39abx3[_0x39abx9][_0x53bb[67]]?_0x39abx5=_0x39abx2[_0x39abx9]==_0x39abx3[_0x39abx9]?0:_0x39abx2[_0x39abx9]>_0x39abx3[_0x39abx9]?1:-1:(_0x39abx4=parseInt(_0x39abx2[_0x39abx9]),_0x39abx9=parseInt(_0x39abx3[_0x39abx9]),_0x39abx5=_0x39abx4==_0x39abx9?0:_0x39abx4>_0x39abx9?1:-1);break}};0==_0x39abx5&&(_0x39abx4=_0x39abx2[_0x53bb[67]],_0x39abx9=_0x39abx3[_0x53bb[67]],_0x39abx4!=_0x39abx9&&(_0x39abx5=_0x39abx4>_0x39abx9?1:-1));return _0x39abx5}},mxPerimeter={RectanglePerimeter:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=_0x39abx2[_0x53bb[241]]();var _0x39abx9=_0x39abx2[_0x53bb[242]](),_0x39abxa=Math[_0x53bb[429]](_0x39abx4[_0x53bb[236]]-_0x39abx9,_0x39abx4[_0x53bb[235]]-_0x39abx3),_0x39abx12= new mxPoint(0,0),_0x39abx13=Math[_0x53bb[424]],_0x39abx14=Math[_0x53bb[424]]/2-_0x39abxa,_0x39abx15=Math[_0x53bb[429]](_0x39abx2[_0x53bb[119]],_0x39abx2[_0x53bb[117]]);_0x39abxa<-_0x39abx13+_0x39abx15||_0x39abxa>_0x39abx13-_0x39abx15?(_0x39abx12[_0x53bb[235]]=_0x39abx2[_0x53bb[235]],_0x39abx12[_0x53bb[236]]=_0x39abx9-_0x39abx2[_0x53bb[117]]*Math[_0x53bb[2008]](_0x39abxa)/2):_0x39abxa<-_0x39abx15?(_0x39abx12[_0x53bb[236]]=_0x39abx2[_0x53bb[236]],_0x39abx12[_0x53bb[235]]=_0x39abx3-_0x39abx2[_0x53bb[119]]*Math[_0x53bb[2008]](_0x39abx14)/2):_0x39abxa<_0x39abx15?(_0x39abx12[_0x53bb[235]]=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]],_0x39abx12[_0x53bb[236]]=_0x39abx9+_0x39abx2[_0x53bb[117]]*Math[_0x53bb[2008]](_0x39abxa)/2):(_0x39abx12[_0x53bb[236]]=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]],_0x39abx12[_0x53bb[235]]=_0x39abx3+_0x39abx2[_0x53bb[119]]*Math[_0x53bb[2008]](_0x39abx14)/2);_0x39abx5&&(_0x39abx4[_0x53bb[235]]>=_0x39abx2[_0x53bb[235]]&&_0x39abx4[_0x53bb[235]]<=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]?_0x39abx12[_0x53bb[235]]=_0x39abx4[_0x53bb[235]]:_0x39abx4[_0x53bb[236]]>=_0x39abx2[_0x53bb[236]]&&_0x39abx4[_0x53bb[236]]<=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]&&(_0x39abx12[_0x53bb[236]]=_0x39abx4[_0x53bb[236]]),_0x39abx4[_0x53bb[235]]<_0x39abx2[_0x53bb[235]]?_0x39abx12[_0x53bb[235]]=_0x39abx2[_0x53bb[235]]:_0x39abx4[_0x53bb[235]]>_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]&&(_0x39abx12[_0x53bb[235]]=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]),_0x39abx4[_0x53bb[236]]<_0x39abx2[_0x53bb[236]]?_0x39abx12[_0x53bb[236]]=_0x39abx2[_0x53bb[236]]:_0x39abx4[_0x53bb[236]]>_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]&&(_0x39abx12[_0x53bb[236]]=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]));return _0x39abx12},EllipsePerimeter:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[235]],_0x39abxa=_0x39abx2[_0x53bb[236]],_0x39abx12=_0x39abx2[_0x53bb[117]]/2,_0x39abx13=_0x39abx2[_0x53bb[119]]/2,_0x39abx14=_0x39abx9+_0x39abx12,_0x39abx15=_0x39abxa+_0x39abx13;_0x39abx3=_0x39abx4[_0x53bb[235]];_0x39abx4=_0x39abx4[_0x53bb[236]];var _0x39abx16=parseInt(_0x39abx3-_0x39abx14),_0x39abx17=parseInt(_0x39abx4-_0x39abx15);if(0==_0x39abx16&&0!=_0x39abx17){return new mxPoint(_0x39abx14,_0x39abx15+_0x39abx13*_0x39abx17/Math[_0x53bb[425]](_0x39abx17))};if(0==_0x39abx16&&0==_0x39abx17){return new mxPoint(_0x39abx3,_0x39abx4)};if(_0x39abx5){if(_0x39abx4>=_0x39abxa&&_0x39abx4<=_0x39abxa+_0x39abx2[_0x53bb[119]]){return _0x39abx2=_0x39abx4-_0x39abx15,_0x39abx2=Math[_0x53bb[428]](_0x39abx12*_0x39abx12*(1-_0x39abx2*_0x39abx2/(_0x39abx13*_0x39abx13)))||0,_0x39abx3<=_0x39abx9&&(_0x39abx2= -_0x39abx2), new mxPoint(_0x39abx14+_0x39abx2,_0x39abx4)};if(_0x39abx3>=_0x39abx9&&_0x39abx3<=_0x39abx9+_0x39abx2[_0x53bb[117]]){return _0x39abx2=_0x39abx3-_0x39abx14,_0x39abx2=Math[_0x53bb[428]](_0x39abx13*_0x39abx13*(1-_0x39abx2*_0x39abx2/(_0x39abx12*_0x39abx12)))||0,_0x39abx4<=_0x39abxa&&(_0x39abx2= -_0x39abx2), new mxPoint(_0x39abx3,_0x39abx15+_0x39abx2)}};_0x39abx9=_0x39abx17/_0x39abx16;_0x39abx15-=_0x39abx9*_0x39abx14;_0x39abxa=_0x39abx12*_0x39abx12*_0x39abx9*_0x39abx9+_0x39abx13*_0x39abx13;_0x39abx2=-2*_0x39abx14*_0x39abxa;_0x39abx13=Math[_0x53bb[428]](_0x39abx2*_0x39abx2-4*_0x39abxa*(_0x39abx12*_0x39abx12*_0x39abx9*_0x39abx9*_0x39abx14*_0x39abx14+_0x39abx13*_0x39abx13*_0x39abx14*_0x39abx14-_0x39abx12*_0x39abx12*_0x39abx13*_0x39abx13));_0x39abx12=(-_0x39abx2+_0x39abx13)/(2*_0x39abxa);_0x39abx13=(-_0x39abx2-_0x39abx13)/(2*_0x39abxa);_0x39abx14=_0x39abx9*_0x39abx12+_0x39abx15;_0x39abx15=_0x39abx9*_0x39abx13+_0x39abx15;_0x39abx9=Math[_0x53bb[428]](Math[_0x53bb[2009]](_0x39abx12-_0x39abx3,2)+Math[_0x53bb[2009]](_0x39abx14-_0x39abx4,2));_0x39abx3=Math[_0x53bb[428]](Math[_0x53bb[2009]](_0x39abx13-_0x39abx3,2)+Math[_0x53bb[2009]](_0x39abx15-_0x39abx4,2));_0x39abxa=_0x39abx4=0;_0x39abx9<_0x39abx3?(_0x39abx4=_0x39abx12,_0x39abxa=_0x39abx14):(_0x39abx4=_0x39abx13,_0x39abxa=_0x39abx15);return new mxPoint(_0x39abx4,_0x39abxa)},RhombusPerimeter:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=_0x39abx2[_0x53bb[235]];var _0x39abx9=_0x39abx2[_0x53bb[236]],_0x39abxa=_0x39abx2[_0x53bb[117]];_0x39abx2=_0x39abx2[_0x53bb[119]];var _0x39abx12=_0x39abx3+_0x39abxa/2,_0x39abx13=_0x39abx9+_0x39abx2/2,_0x39abx14=_0x39abx4[_0x53bb[235]];_0x39abx4=_0x39abx4[_0x53bb[236]];if(_0x39abx12==_0x39abx14){return _0x39abx13>_0x39abx4? new mxPoint(_0x39abx12,_0x39abx9): new mxPoint(_0x39abx12,_0x39abx9+_0x39abx2)};if(_0x39abx13==_0x39abx4){return _0x39abx12>_0x39abx14? new mxPoint(_0x39abx3,_0x39abx13): new mxPoint(_0x39abx3+_0x39abxa,_0x39abx13)};var _0x39abx15=_0x39abx12,_0x39abx16=_0x39abx13;_0x39abx5&&(_0x39abx14>=_0x39abx3&&_0x39abx14<=_0x39abx3+_0x39abxa?_0x39abx15=_0x39abx14:_0x39abx4>=_0x39abx9&&_0x39abx4<=_0x39abx9+_0x39abx2&&(_0x39abx16=_0x39abx4));return _0x39abx14<_0x39abx12?_0x39abx4<_0x39abx13?mxUtils[_0x53bb[2010]](_0x39abx14,_0x39abx4,_0x39abx15,_0x39abx16,_0x39abx12,_0x39abx9,_0x39abx3,_0x39abx13):mxUtils[_0x53bb[2010]](_0x39abx14,_0x39abx4,_0x39abx15,_0x39abx16,_0x39abx12,_0x39abx9+_0x39abx2,_0x39abx3,_0x39abx13):_0x39abx4<_0x39abx13?mxUtils[_0x53bb[2010]](_0x39abx14,_0x39abx4,_0x39abx15,_0x39abx16,_0x39abx12,_0x39abx9,_0x39abx3+_0x39abxa,_0x39abx13):mxUtils[_0x53bb[2010]](_0x39abx14,_0x39abx4,_0x39abx15,_0x39abx16,_0x39abx12,_0x39abx9+_0x39abx2,_0x39abx3+_0x39abxa,_0x39abx13)},TrianglePerimeter:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]][mxConstants[_0x53bb[2011]]]:null;var _0x39abx9=_0x39abx3==mxConstants[_0x53bb[1358]]||_0x39abx3==mxConstants[_0x53bb[1354]],_0x39abxa=_0x39abx2[_0x53bb[235]],_0x39abx12=_0x39abx2[_0x53bb[236]],_0x39abx13=_0x39abx2[_0x53bb[117]];_0x39abx2=_0x39abx2[_0x53bb[119]];var _0x39abx14=_0x39abxa+_0x39abx13/2,_0x39abx15=_0x39abx12+_0x39abx2/2,_0x39abx16= new mxPoint(_0x39abxa,_0x39abx12),_0x39abx17= new mxPoint(_0x39abxa+_0x39abx13,_0x39abx15),_0x39abx18= new mxPoint(_0x39abxa,_0x39abx12+_0x39abx2);_0x39abx3==mxConstants[_0x53bb[1358]]?(_0x39abx16=_0x39abx18,_0x39abx17= new mxPoint(_0x39abx14,_0x39abx12),_0x39abx18= new mxPoint(_0x39abxa+_0x39abx13,_0x39abx12+_0x39abx2)):_0x39abx3==mxConstants[_0x53bb[1354]]?(_0x39abx17= new mxPoint(_0x39abx14,_0x39abx12+_0x39abx2),_0x39abx18= new mxPoint(_0x39abxa+_0x39abx13,_0x39abx12)):_0x39abx3==mxConstants[_0x53bb[1359]]&&(_0x39abx16= new mxPoint(_0x39abxa+_0x39abx13,_0x39abx12),_0x39abx17= new mxPoint(_0x39abxa,_0x39abx15),_0x39abx18= new mxPoint(_0x39abxa+_0x39abx13,_0x39abx12+_0x39abx2));var _0x39abx19=_0x39abx4[_0x53bb[235]]-_0x39abx14,_0x39abx1a=_0x39abx4[_0x53bb[236]]-_0x39abx15,_0x39abx19=_0x39abx9?Math[_0x53bb[429]](_0x39abx19,_0x39abx1a):Math[_0x53bb[429]](_0x39abx1a,_0x39abx19),_0x39abx1b=_0x39abx9?Math[_0x53bb[429]](_0x39abx13,_0x39abx2):Math[_0x53bb[429]](_0x39abx2,_0x39abx13),_0x39abx1a=!1,_0x39abx1a=_0x39abx3==mxConstants[_0x53bb[1358]]||_0x39abx3==mxConstants[_0x53bb[1359]]?_0x39abx19>-_0x39abx1b&&_0x39abx19<_0x39abx1b:_0x39abx19<-Math[_0x53bb[424]]+_0x39abx1b||_0x39abx19>Math[_0x53bb[424]]-_0x39abx1b,_0x39abx1b=null;_0x39abx1a?_0x39abx1b=_0x39abx5&&(_0x39abx9&&_0x39abx4[_0x53bb[235]]>=_0x39abx16[_0x53bb[235]]&&_0x39abx4[_0x53bb[235]]<=_0x39abx18[_0x53bb[235]]||!_0x39abx9&&_0x39abx4[_0x53bb[236]]>=_0x39abx16[_0x53bb[236]]&&_0x39abx4[_0x53bb[236]]<=_0x39abx18[_0x53bb[236]])?_0x39abx9? new mxPoint(_0x39abx4[_0x53bb[235]],_0x39abx16[_0x53bb[236]]): new mxPoint(_0x39abx16[_0x53bb[235]],_0x39abx4[_0x53bb[236]]):_0x39abx3==mxConstants[_0x53bb[1358]]? new mxPoint(_0x39abxa+_0x39abx13/2+_0x39abx2*Math[_0x53bb[2008]](_0x39abx19)/2,_0x39abx12+_0x39abx2):_0x39abx3==mxConstants[_0x53bb[1354]]? new mxPoint(_0x39abxa+_0x39abx13/2-_0x39abx2*Math[_0x53bb[2008]](_0x39abx19)/2,_0x39abx12):_0x39abx3==mxConstants[_0x53bb[1359]]? new mxPoint(_0x39abxa+_0x39abx13,_0x39abx12+_0x39abx2/2+_0x39abx13*Math[_0x53bb[2008]](_0x39abx19)/2): new mxPoint(_0x39abxa,_0x39abx12+_0x39abx2/2-_0x39abx13*Math[_0x53bb[2008]](_0x39abx19)/2):(_0x39abx5&&(_0x39abx5= new mxPoint(_0x39abx14,_0x39abx15),_0x39abx4[_0x53bb[236]]>=_0x39abx12&&_0x39abx4[_0x53bb[236]]<=_0x39abx12+_0x39abx2?(_0x39abx5[_0x53bb[235]]=_0x39abx9?_0x39abx14:_0x39abx3==mxConstants[_0x53bb[1359]]?_0x39abxa+_0x39abx13:_0x39abxa,_0x39abx5[_0x53bb[236]]=_0x39abx4[_0x53bb[236]]):_0x39abx4[_0x53bb[235]]>=_0x39abxa&&_0x39abx4[_0x53bb[235]]<=_0x39abxa+_0x39abx13&&(_0x39abx5[_0x53bb[235]]=_0x39abx4[_0x53bb[235]],_0x39abx5[_0x53bb[236]]=!_0x39abx9?_0x39abx15:_0x39abx3==mxConstants[_0x53bb[1358]]?_0x39abx12+_0x39abx2:_0x39abx12),_0x39abx14=_0x39abx5[_0x53bb[235]],_0x39abx15=_0x39abx5[_0x53bb[236]]),_0x39abx1b=_0x39abx9&&_0x39abx4[_0x53bb[235]]<=_0x39abxa+_0x39abx13/2||!_0x39abx9&&_0x39abx4[_0x53bb[236]]<=_0x39abx12+_0x39abx2/2?mxUtils[_0x53bb[2010]](_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]],_0x39abx14,_0x39abx15,_0x39abx16[_0x53bb[235]],_0x39abx16[_0x53bb[236]],_0x39abx17[_0x53bb[235]],_0x39abx17[_0x53bb[236]]):mxUtils[_0x53bb[2010]](_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]],_0x39abx14,_0x39abx15,_0x39abx17[_0x53bb[235]],_0x39abx17[_0x53bb[236]],_0x39abx18[_0x53bb[235]],_0x39abx18[_0x53bb[236]]));null==_0x39abx1b&&(_0x39abx1b= new mxPoint(_0x39abx14,_0x39abx15));return _0x39abx1b}};function mxPrintPreview(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[255]]=null!=_0x39abx3?_0x39abx3:1/_0x39abx2[_0x53bb[2012]];this[_0x53bb[467]]=null!=_0x39abx5?_0x39abx5:0;this[_0x53bb[2013]]=null!=_0x39abx4?_0x39abx4:_0x39abx2[_0x53bb[2013]];this[_0x53bb[924]]=null!=_0x39abx13?_0x39abx13:_0x53bb[2014];this[_0x53bb[1732]]=null!=_0x39abx9?_0x39abx9:0;this[_0x53bb[1733]]=null!=_0x39abxa?_0x39abxa:0;this[_0x53bb[1630]]=_0x39abx12;this[_0x53bb[2015]]=null!=_0x39abx14?_0x39abx14:!0}mxPrintPreview[_0x53bb[202]][_0x53bb[1179]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[2013]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[255]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[467]]=0;mxPrintPreview[_0x53bb[202]][_0x53bb[1732]]=0;mxPrintPreview[_0x53bb[202]][_0x53bb[1733]]=0;mxPrintPreview[_0x53bb[202]][_0x53bb[2016]]= !0;mxPrintPreview[_0x53bb[202]][_0x53bb[2017]]= !1;mxPrintPreview[_0x53bb[202]][_0x53bb[1630]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[924]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[2015]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[2018]]=null;mxPrintPreview[_0x53bb[202]][_0x53bb[2019]]=0;mxPrintPreview[_0x53bb[202]][_0x53bb[2020]]=function(){return this[_0x53bb[2018]]};mxPrintPreview[_0x53bb[202]][_0x53bb[2021]]=function(){var _0x39abx2=_0x53bb[110];8==document[_0x53bb[5]]&&(_0x39abx2=_0x53bb[2022]);return _0x39abx2};mxPrintPreview[_0x53bb[202]][_0x53bb[392]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[2023]],_0x39abx4=null;try{this[_0x53bb[2017]]&&(this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[2023]]=function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[176]](_0x39abx2[_0x53bb[441]][_0x53bb[2024]]())});if(null==this[_0x53bb[2018]]){this[_0x53bb[2018]]=window[_0x53bb[392]]();var _0x39abx5=this[_0x53bb[2018]][_0x53bb[395]],_0x39abx9=this[_0x53bb[2021]]();null!=_0x39abx9&&0<_0x39abx9[_0x53bb[67]]&&_0x39abx5[_0x53bb[171]](_0x39abx9);_0x39abx5[_0x53bb[171]](_0x53bb[528]);_0x39abx5[_0x53bb[171]](_0x53bb[531]);this[_0x53bb[2025]](_0x39abx5,_0x39abx2);_0x39abx5[_0x53bb[171]](_0x53bb[533]);_0x39abx5[_0x53bb[171]](_0x53bb[2026]);mxClient[_0x53bb[54]](_0x53bb[94],mxClient[_0x53bb[86]]+_0x53bb[95],_0x39abx5);mxClient[_0x53bb[47]]&&(_0x39abx5[_0x53bb[100]][_0x53bb[99]](_0x53bb[6],_0x53bb[97]),_0x39abx5[_0x53bb[100]][_0x53bb[99]](_0x53bb[7],_0x53bb[101]),_0x39abx5[_0x53bb[102]]()[_0x53bb[103]]=_0x53bb[104],mxClient[_0x53bb[54]](_0x53bb[94],mxClient[_0x53bb[86]]+_0x53bb[105],_0x39abx5));var _0x39abxa=this[_0x53bb[1179]][_0x53bb[517]]()[_0x53bb[238]](),_0x39abx12=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[518]](),_0x39abx13=_0x39abx12/this[_0x53bb[255]],_0x39abx14=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[512]]();this[_0x53bb[2016]]||(this[_0x53bb[1732]]=-_0x39abx14[_0x53bb[235]]*this[_0x53bb[255]],this[_0x53bb[1733]]=-_0x39abx14[_0x53bb[236]]*this[_0x53bb[255]],_0x39abxa[_0x53bb[117]]+=_0x39abxa[_0x53bb[235]],_0x39abxa[_0x53bb[119]]+=_0x39abxa[_0x53bb[236]],_0x39abxa[_0x53bb[235]]=0,this[_0x53bb[467]]=_0x39abxa[_0x53bb[236]]=0);_0x39abxa[_0x53bb[117]]/=_0x39abx13;_0x39abxa[_0x53bb[119]]/=_0x39abx13;var _0x39abx15=this[_0x53bb[2013]][_0x53bb[117]]-2*this[_0x53bb[467]],_0x39abx16=this[_0x53bb[2013]][_0x53bb[119]]-2*this[_0x53bb[467]],_0x39abx17=Math[_0x53bb[160]](1,Math[_0x53bb[430]]((_0x39abxa[_0x53bb[117]]+this[_0x53bb[1732]])/_0x39abx15)),_0x39abx18=Math[_0x53bb[160]](1,Math[_0x53bb[430]]((_0x39abxa[_0x53bb[119]]+this[_0x53bb[1733]])/_0x39abx16));this[_0x53bb[2019]]=_0x39abx17*_0x39abx18;var _0x39abx19=mxUtils[_0x53bb[885]](this,function(){if(this[_0x53bb[2015]]&&(1<_0x39abx18||1<_0x39abx17)){var _0x39abx2=this[_0x53bb[2027]](_0x39abx18,_0x39abx17);_0x39abx5[_0x53bb[112]][_0x53bb[62]](_0x39abx2);if(mxClient[_0x53bb[80]]){_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];var _0x39abx3=function(){_0x39abx2[_0x53bb[124]][_0x53bb[125]]=_0x39abx5[_0x53bb[112]][_0x53bb[190]]+10+_0x53bb[168]};mxEvent[_0x53bb[169]](this[_0x53bb[2018]],_0x53bb[276],function(_0x39abx2){_0x39abx3()});mxEvent[_0x53bb[169]](this[_0x53bb[2018]],_0x53bb[129],function(_0x39abx2){_0x39abx3()})}}});_0x39abx2=function(_0x39abx2,_0x39abx3){null!=this[_0x53bb[1630]]&&(_0x39abx2[_0x53bb[124]][_0x53bb[1630]]=this[_0x53bb[1630]],_0x39abx2[_0x53bb[124]][_0x53bb[465]]=_0x53bb[1631],_0x39abx2[_0x53bb[124]][_0x53bb[1629]]=_0x53bb[942]);_0x39abx2[_0x53bb[124]][_0x53bb[1537]]=_0x53bb[1391];_0x39abx3&&(_0x39abx2[_0x53bb[124]][_0x53bb[2028]]=_0x53bb[2029]);mxClient[_0x53bb[80]]?(_0x39abx5[_0x53bb[171]](_0x39abx2[_0x53bb[342]]),_0x39abx2[_0x53bb[265]][_0x53bb[266]](_0x39abx2)):(_0x39abx2[_0x53bb[265]][_0x53bb[266]](_0x39abx2),_0x39abx5[_0x53bb[112]][_0x53bb[62]](_0x39abx2));if(_0x39abx3){var _0x39abx4=_0x39abx5[_0x53bb[55]](_0x53bb[1054]);_0x39abx4[_0x53bb[926]]=_0x53bb[2030];_0x39abx5[_0x53bb[112]][_0x53bb[62]](_0x39abx4)}};var _0x39abx1a=this[_0x53bb[2031]](this[_0x53bb[2013]][_0x53bb[117]],this[_0x53bb[2013]][_0x53bb[119]]);if(null!=_0x39abx1a){for(var _0x39abx1b=0;_0x39abx1b<_0x39abx1a[_0x53bb[67]];_0x39abx1b++){_0x39abx2(_0x39abx1a[_0x39abx1b],!0)}};for(var _0x39abx1c=this[_0x53bb[2032]](this[_0x53bb[2013]][_0x53bb[117]],this[_0x53bb[2013]][_0x53bb[119]]),_0x39abx1b=0;_0x39abx1b<_0x39abx18;_0x39abx1b++){for(var _0x39abx1d=_0x39abx1b*_0x39abx16/this[_0x53bb[255]]-this[_0x53bb[1733]]/this[_0x53bb[255]]+(_0x39abxa[_0x53bb[236]]-_0x39abx14[_0x53bb[236]]*_0x39abx12)/_0x39abx12,_0x39abx1a=0;_0x39abx1a<_0x39abx17;_0x39abx1a++){if(null==this[_0x53bb[2018]]){return null};var _0x39abx1e=_0x39abx1a*_0x39abx15/this[_0x53bb[255]]-this[_0x53bb[1732]]/this[_0x53bb[255]]+(_0x39abxa[_0x53bb[235]]-_0x39abx14[_0x53bb[235]]*_0x39abx12)/_0x39abx12,_0x39abx1f=_0x39abx1b*_0x39abx17+_0x39abx1a+1,_0x39abx4=this[_0x53bb[2034]](this[_0x53bb[2013]][_0x53bb[117]],this[_0x53bb[2013]][_0x53bb[119]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2033]](-_0x39abx1e,-_0x39abx1d,this[_0x53bb[255]],_0x39abx1f,_0x39abx2)}));_0x39abx4[_0x53bb[57]](_0x53bb[1363],_0x53bb[2035]+_0x39abx1f);_0x39abx2(_0x39abx4,null!=_0x39abx1c||_0x39abx1b<_0x39abx18-1||_0x39abx1a<_0x39abx17-1)}};if(null!=_0x39abx1c){for(_0x39abx1b=0;_0x39abx1b<_0x39abx1c[_0x53bb[67]];_0x39abx1b++){_0x39abx2(_0x39abx1c[_0x39abx1b],_0x39abx1b<_0x39abx1c[_0x53bb[67]])}};_0x39abx5[_0x53bb[171]](_0x53bb[527]);_0x39abx5[_0x53bb[171]](_0x53bb[534]);_0x39abx5[_0x53bb[268]]();_0x39abx19();mxEvent[_0x53bb[762]](_0x39abx5[_0x53bb[112]])};this[_0x53bb[2018]][_0x53bb[393]]()}catch(y){null!=_0x39abx4&&null!=_0x39abx4[_0x53bb[265]]&&_0x39abx4[_0x53bb[265]][_0x53bb[266]](_0x39abx4)}finally{this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[2023]]=_0x39abx3};return this[_0x53bb[2018]]};mxPrintPreview[_0x53bb[202]][_0x53bb[2025]]=function(_0x39abx2,_0x39abx3){null!=this[_0x53bb[924]]&&_0x39abx2[_0x53bb[171]](_0x53bb[2036]+this[_0x53bb[924]]+_0x53bb[2037]);_0x39abx2[_0x53bb[171]](_0x53bb[2038]);_0x39abx2[_0x53bb[171]](_0x53bb[2039]);_0x39abx2[_0x53bb[171]](_0x53bb[2040]);_0x39abx2[_0x53bb[171]](_0x53bb[2041]);_0x39abx2[_0x53bb[171]](_0x53bb[233]);_0x39abx2[_0x53bb[171]](_0x53bb[2042]);_0x39abx2[_0x53bb[171]](_0x53bb[2043]);_0x39abx2[_0x53bb[171]](_0x53bb[2044]);_0x39abx2[_0x53bb[171]](_0x53bb[2045]);_0x39abx2[_0x53bb[171]](_0x53bb[233]);null!=_0x39abx3&&_0x39abx2[_0x53bb[171]](_0x39abx3);_0x39abx2[_0x53bb[171]](_0x53bb[2046])};mxPrintPreview[_0x53bb[202]][_0x53bb[2027]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[2018]][_0x53bb[395]],_0x39abx5=_0x39abx4[_0x53bb[55]](_0x53bb[116]);_0x39abx5[_0x53bb[926]]=_0x53bb[2047];_0x39abx5[_0x53bb[57]](_0x53bb[467],_0x53bb[468]);for(var _0x39abx9=_0x39abx4[_0x53bb[55]](_0x53bb[120]),_0x39abxa=0;_0x39abxa<_0x39abx2;_0x39abxa++){for(var _0x39abx12=_0x39abx4[_0x53bb[55]](_0x53bb[121]),_0x39abx13=0;_0x39abx13<_0x39abx3;_0x39abx13++){var _0x39abx14=_0x39abxa*_0x39abx3+_0x39abx13+1,_0x39abx15=_0x39abx4[_0x53bb[55]](_0x53bb[122]);if(!mxClient[_0x53bb[133]]||mxClient[_0x53bb[75]]||mxClient[_0x53bb[76]]){var _0x39abx16=_0x39abx4[_0x53bb[55]](_0x53bb[2048]);_0x39abx16[_0x53bb[57]](_0x53bb[44],_0x53bb[2049]+_0x39abx14);mxUtils[_0x53bb[53]](_0x39abx16,_0x39abx14,_0x39abx4);_0x39abx15[_0x53bb[62]](_0x39abx16)}else {mxUtils[_0x53bb[53]](_0x39abx15,_0x39abx14,_0x39abx4)};_0x39abx12[_0x53bb[62]](_0x39abx15)};_0x39abx9[_0x53bb[62]](_0x39abx12)};_0x39abx5[_0x53bb[62]](_0x39abx9);return _0x39abx5};mxPrintPreview[_0x53bb[202]][_0x53bb[2034]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=document[_0x53bb[55]](_0x53bb[485]);try{_0x39abx5[_0x53bb[124]][_0x53bb[117]]=_0x39abx2+_0x53bb[168];_0x39abx5[_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168];_0x39abx5[_0x53bb[124]][_0x53bb[277]]=_0x53bb[188];_0x39abx5[_0x53bb[124]][_0x53bb[2050]]=_0x53bb[1824];_0x39abx5[_0x53bb[124]][_0x53bb[491]]=_0x53bb[1500];var _0x39abx9=document[_0x53bb[55]](_0x53bb[485]);_0x39abx9[_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[467]]+_0x53bb[168];_0x39abx9[_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[467]]+_0x53bb[168];_0x39abx9[_0x53bb[124]][_0x53bb[117]]=_0x39abx2-2*this[_0x53bb[467]]+_0x53bb[168];_0x39abx9[_0x53bb[124]][_0x53bb[119]]=_0x39abx3-2*this[_0x53bb[467]]+_0x53bb[168];_0x39abx9[_0x53bb[124]][_0x53bb[277]]=_0x53bb[188];this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[1523]]&&(_0x39abx9[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492]);_0x39abx5[_0x53bb[62]](_0x39abx9);document[_0x53bb[112]][_0x53bb[62]](_0x39abx5);_0x39abx4(_0x39abx9)}catch(f){throw _0x39abx5[_0x53bb[265]][_0x53bb[266]](_0x39abx5),f};return _0x39abx5};mxPrintPreview[_0x53bb[202]][_0x53bb[2033]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]();var _0x39abxa=this[_0x53bb[1179]][_0x53bb[526]];this[_0x53bb[1179]][_0x53bb[526]]=_0x39abx9;var _0x39abx12=_0x39abx5[_0x53bb[2051]](),_0x39abx13=_0x39abx5[_0x53bb[2052]](),_0x39abx14=_0x39abx5[_0x53bb[2024]](),_0x39abx15=_0x39abx5[_0x53bb[1524]]();this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[508]]?_0x39abx5[_0x53bb[1569]]():this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[1523]]?_0x39abx5[_0x53bb[1571]]():_0x39abx5[_0x53bb[1570]]();var _0x39abx16=_0x39abx5[_0x53bb[503]]();_0x39abx5[_0x53bb[504]](!1);var _0x39abx17=this[_0x53bb[1179]][_0x53bb[994]]();this[_0x53bb[1179]][_0x53bb[995]](!1);var _0x39abx18=_0x39abx5[_0x53bb[512]]();_0x39abx5[_0x53bb[513]]= new mxPoint(_0x39abx2,_0x39abx3);_0x39abx2=null;try{var _0x39abx19=[this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]]()];_0x39abx2= new mxTemporaryCellStates(_0x39abx5,_0x39abx4,_0x39abx19)}finally{if(mxClient[_0x53bb[80]]){_0x39abx5[_0x53bb[506]][_0x53bb[339]]=_0x53bb[110]}else {for(_0x39abx4=_0x39abx9[_0x53bb[285]];null!=_0x39abx4;){_0x39abx19=_0x39abx4[_0x53bb[287]],_0x39abx3=_0x39abx4[_0x53bb[301]][_0x53bb[216]](),_0x53bb[571]==_0x39abx3?(_0x39abx4[_0x53bb[57]](_0x53bb[117],parseInt(_0x39abx9[_0x53bb[124]][_0x53bb[117]])),_0x39abx4[_0x53bb[57]](_0x53bb[119],parseInt(_0x39abx9[_0x53bb[124]][_0x53bb[119]]))):_0x53bb[583]!=_0x39abx4[_0x53bb[124]][_0x53bb[270]]&&_0x53bb[116]!=_0x39abx3&&_0x39abx4[_0x53bb[265]][_0x53bb[266]](_0x39abx4),_0x39abx4=_0x39abx19}};_0x39abx5[_0x53bb[506]][_0x53bb[265]][_0x53bb[266]](_0x39abx5[_0x53bb[506]]);this[_0x53bb[1179]][_0x53bb[995]](_0x39abx17);this[_0x53bb[1179]][_0x53bb[526]]=_0x39abxa;_0x39abx5[_0x53bb[510]]=_0x39abx12;_0x39abx5[_0x53bb[2053]]=_0x39abx13;_0x39abx5[_0x53bb[505]]=_0x39abx14;_0x39abx5[_0x53bb[506]]=_0x39abx15;_0x39abx5[_0x53bb[513]]=_0x39abx18;_0x39abx2[_0x53bb[515]]();_0x39abx5[_0x53bb[504]](_0x39abx16)}};mxPrintPreview[_0x53bb[202]][_0x53bb[2031]]=function(){return null};mxPrintPreview[_0x53bb[202]][_0x53bb[2032]]=function(){return null};mxPrintPreview[_0x53bb[202]][_0x53bb[540]]=function(){var _0x39abx2=this[_0x53bb[392]]();null!=_0x39abx2&&_0x39abx2[_0x53bb[540]]()};mxPrintPreview[_0x53bb[202]][_0x53bb[268]]=function(){null!=this[_0x53bb[2018]]&&(this[_0x53bb[2018]][_0x53bb[268]](),this[_0x53bb[2018]]=null)};function mxStylesheet(){this[_0x53bb[2054]]={};this[_0x53bb[2056]](this[_0x53bb[2055]]());this[_0x53bb[2058]](this[_0x53bb[2057]]())}mxStylesheet[_0x53bb[202]][_0x53bb[2055]]=function(){var _0x39abx2={};_0x39abx2[mxConstants[_0x53bb[2059]]]=mxConstants[_0x53bb[2060]];_0x39abx2[mxConstants[_0x53bb[2061]]]=mxPerimeter[_0x53bb[2062]];_0x39abx2[mxConstants[_0x53bb[2063]]]=mxConstants[_0x53bb[481]];_0x39abx2[mxConstants[_0x53bb[2064]]]=mxConstants[_0x53bb[479]];_0x39abx2[mxConstants[_0x53bb[2065]]]=_0x53bb[2066];_0x39abx2[mxConstants[_0x53bb[2067]]]=_0x53bb[2068];_0x39abx2[mxConstants[_0x53bb[2069]]]=_0x53bb[2070];return _0x39abx2};mxStylesheet[_0x53bb[202]][_0x53bb[2057]]=function(){var _0x39abx2={};_0x39abx2[mxConstants[_0x53bb[2059]]]=mxConstants[_0x53bb[2071]];_0x39abx2[mxConstants[_0x53bb[1695]]]=mxConstants[_0x53bb[1622]];_0x39abx2[mxConstants[_0x53bb[2063]]]=mxConstants[_0x53bb[481]];_0x39abx2[mxConstants[_0x53bb[2064]]]=mxConstants[_0x53bb[479]];_0x39abx2[mxConstants[_0x53bb[2067]]]=_0x53bb[2068];_0x39abx2[mxConstants[_0x53bb[2069]]]=_0x53bb[2072];return _0x39abx2};mxStylesheet[_0x53bb[202]][_0x53bb[2056]]=function(_0x39abx2){this[_0x53bb[2074]](_0x53bb[2073],_0x39abx2)};mxStylesheet[_0x53bb[202]][_0x53bb[2058]]=function(_0x39abx2){this[_0x53bb[2074]](_0x53bb[2075],_0x39abx2)};mxStylesheet[_0x53bb[202]][_0x53bb[2076]]=function(){return this[_0x53bb[2054]][_0x53bb[2073]]};mxStylesheet[_0x53bb[202]][_0x53bb[2077]]=function(){return this[_0x53bb[2054]][_0x53bb[2075]]};mxStylesheet[_0x53bb[202]][_0x53bb[2074]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2054]][_0x39abx2]=_0x39abx3};mxStylesheet[_0x53bb[202]][_0x53bb[1705]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx3;if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){for(var _0x39abx5=_0x39abx2[_0x53bb[224]](_0x53bb[471]),_0x39abx4=null!=_0x39abx4&&_0x53bb[471]!=_0x39abx2[_0x53bb[225]](0)?mxUtils[_0x53bb[238]](_0x39abx4):{},_0x39abx9=0;_0x39abx9<_0x39abx5[_0x53bb[67]];_0x39abx9++){var _0x39abxa=_0x39abx5[_0x39abx9],_0x39abx12=_0x39abxa[_0x53bb[2]](_0x53bb[226]);if(0<=_0x39abx12){var _0x39abx13=_0x39abxa[_0x53bb[85]](0,_0x39abx12),_0x39abxa=_0x39abxa[_0x53bb[85]](_0x39abx12+1);_0x39abxa==mxConstants[_0x53bb[217]]? delete _0x39abx4[_0x39abx13]:mxUtils[_0x53bb[1946]](_0x39abxa)?_0x39abx4[_0x39abx13]=parseFloat(_0x39abxa):_0x39abx4[_0x39abx13]=_0x39abxa}else {if(_0x39abxa=this[_0x53bb[2054]][_0x39abxa],null!=_0x39abxa){for(_0x39abx13 in _0x39abxa){_0x39abx4[_0x39abx13]=_0x39abxa[_0x39abx13]}}}}};return _0x39abx4};function mxCellState(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[441]]=_0x39abx2;this[_0x53bb[246]]=_0x39abx3;this[_0x53bb[124]]=_0x39abx4;this[_0x53bb[2078]]= new mxPoint;this[_0x53bb[2079]]= new mxPoint}mxCellState[_0x53bb[202]]= new mxRectangle;mxCellState[_0x53bb[202]][_0x53bb[196]]=mxCellState;mxCellState[_0x53bb[202]][_0x53bb[441]]=null;mxCellState[_0x53bb[202]][_0x53bb[246]]=null;mxCellState[_0x53bb[202]][_0x53bb[124]]=null;mxCellState[_0x53bb[202]][_0x53bb[2080]]= !0;mxCellState[_0x53bb[202]][_0x53bb[2081]]= !1;mxCellState[_0x53bb[202]][_0x53bb[2082]]= !1;mxCellState[_0x53bb[202]][_0x53bb[2078]]=null;mxCellState[_0x53bb[202]][_0x53bb[439]]=null;mxCellState[_0x53bb[202]][_0x53bb[2079]]=null;mxCellState[_0x53bb[202]][_0x53bb[2083]]=null;mxCellState[_0x53bb[202]][_0x53bb[2084]]=null;mxCellState[_0x53bb[202]][_0x53bb[2085]]=0;mxCellState[_0x53bb[202]][_0x53bb[67]]=0;mxCellState[_0x53bb[202]][_0x53bb[2086]]=null;mxCellState[_0x53bb[202]][_0x53bb[253]]=null;mxCellState[_0x53bb[202]][_0x53bb[963]]=null;mxCellState[_0x53bb[202]][_0x53bb[2087]]=function(_0x39abx2,_0x39abx3){_0x39abx2=_0x39abx2||0;_0x39abx3=null!=_0x39abx3?_0x39abx3: new mxRectangle(this[_0x53bb[235]],this[_0x53bb[236]],this[_0x53bb[117]],this[_0x53bb[119]]);if(null!=this[_0x53bb[253]]&&null!=this[_0x53bb[253]][_0x53bb[1561]]){var _0x39abx4=this[_0x53bb[253]][_0x53bb[1561]][_0x53bb[1548]](this[_0x53bb[124]],_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]],_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]]);_0x39abx3[_0x53bb[235]]=_0x39abx4[_0x53bb[235]];_0x39abx3[_0x53bb[236]]=_0x39abx4[_0x53bb[236]];_0x39abx3[_0x53bb[117]]=this[_0x53bb[253]][_0x53bb[1561]][_0x53bb[1532]]*_0x39abx4[_0x53bb[117]];_0x39abx3[_0x53bb[119]]=this[_0x53bb[253]][_0x53bb[1561]][_0x53bb[1533]]*_0x39abx4[_0x53bb[119]]};0!=_0x39abx2&&_0x39abx3[_0x53bb[244]](_0x39abx2);return _0x39abx3};mxCellState[_0x53bb[202]][_0x53bb[2088]]=function(_0x39abx2,_0x39abx3){_0x39abx3?(null==this[_0x53bb[439]]&&(this[_0x53bb[439]]=[]),0==this[_0x53bb[439]][_0x53bb[67]]?this[_0x53bb[439]][_0x53bb[207]](_0x39abx2):this[_0x53bb[439]][0]=_0x39abx2):null==this[_0x53bb[439]]?(this[_0x53bb[439]]=[],this[_0x53bb[439]][_0x53bb[207]](null),this[_0x53bb[439]][_0x53bb[207]](_0x39abx2)):1==this[_0x53bb[439]][_0x53bb[67]]?this[_0x53bb[439]][_0x53bb[207]](_0x39abx2):this[_0x53bb[439]][this[_0x53bb[439]][_0x53bb[67]]-1]=_0x39abx2};mxCellState[_0x53bb[202]][_0x53bb[1609]]=function(_0x39abx2){null!=this[_0x53bb[253]]&&this[_0x53bb[253]][_0x53bb[1609]](_0x39abx2);null!=this[_0x53bb[963]]&&this[_0x53bb[963]][_0x53bb[1609]](_0x39abx2)};mxCellState[_0x53bb[202]][_0x53bb[1710]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[2089]](_0x39abx2);return null!=_0x39abx2?_0x39abx2[_0x53bb[246]]:null};mxCellState[_0x53bb[202]][_0x53bb[2089]]=function(_0x39abx2){return _0x39abx2?this[_0x53bb[2083]]:this[_0x53bb[2084]]};mxCellState[_0x53bb[202]][_0x53bb[2090]]=function(_0x39abx2,_0x39abx3){_0x39abx3?this[_0x53bb[2083]]=_0x39abx2:this[_0x53bb[2084]]=_0x39abx2};mxCellState[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[441]][_0x53bb[1179]][_0x53bb[259]][_0x53bb[515]](this)};mxCellState[_0x53bb[202]][_0x53bb[238]]=function(){var _0x39abx2= new mxCellState(this[_0x53bb[441]],this[_0x53bb[246]],this[_0x53bb[124]]);if(null!=this[_0x53bb[439]]){_0x39abx2[_0x53bb[439]]=[];for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[439]][_0x53bb[67]];_0x39abx3++){_0x39abx2[_0x53bb[439]][_0x39abx3]=this[_0x53bb[439]][_0x39abx3][_0x53bb[238]]()}};null!=this[_0x53bb[2078]]&&(_0x39abx2[_0x53bb[2078]]=this[_0x53bb[2078]][_0x53bb[238]]());null!=this[_0x53bb[2079]]&&(_0x39abx2[_0x53bb[2079]]=this[_0x53bb[2079]][_0x53bb[238]]());null!=this[_0x53bb[1563]]&&(_0x39abx2[_0x53bb[1563]]=this[_0x53bb[1563]][_0x53bb[238]]());_0x39abx2[_0x53bb[2085]]=this[_0x53bb[2085]];_0x39abx2[_0x53bb[2086]]=this[_0x53bb[2086]];_0x39abx2[_0x53bb[67]]=this[_0x53bb[67]];_0x39abx2[_0x53bb[235]]=this[_0x53bb[235]];_0x39abx2[_0x53bb[236]]=this[_0x53bb[236]];_0x39abx2[_0x53bb[117]]=this[_0x53bb[117]];_0x39abx2[_0x53bb[119]]=this[_0x53bb[119]];return _0x39abx2};function mxGraphSelectionModel(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[895]]=[]}mxGraphSelectionModel[_0x53bb[202]]= new mxEventSource;mxGraphSelectionModel[_0x53bb[202]][_0x53bb[196]]=mxGraphSelectionModel;mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2091]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[819]:_0x53bb[110];mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2092]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2093]:_0x53bb[110];mxGraphSelectionModel[_0x53bb[202]][_0x53bb[1179]]=null;mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2094]]= !1;mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2095]]=function(){return this[_0x53bb[2094]]};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2096]]=function(_0x39abx2){this[_0x53bb[2094]]=_0x39abx2};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2097]]=function(_0x39abx2){return null!=_0x39abx2?0<=mxUtils[_0x53bb[2]](this[_0x53bb[895]],_0x39abx2):!1};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[1107]]=function(){return 0==this[_0x53bb[895]][_0x53bb[67]]};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[200]]=function(){this[_0x53bb[2098]](null,this[_0x53bb[895]])};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2099]]=function(_0x39abx2){null!=_0x39abx2&&this[_0x53bb[2100]]([_0x39abx2])};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2100]]=function(_0x39abx2){if(null!=_0x39abx2){this[_0x53bb[2094]]&&(_0x39abx2=[this[_0x53bb[2101]](_0x39abx2)]);for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){this[_0x53bb[1179]][_0x53bb[2102]](_0x39abx2[_0x39abx4])&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])};this[_0x53bb[2098]](_0x39abx3,this[_0x53bb[895]])}};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2101]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){if(this[_0x53bb[1179]][_0x53bb[2102]](_0x39abx2[_0x39abx3])){return _0x39abx2[_0x39abx3]}}};return null};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2103]]=function(_0x39abx2){null!=_0x39abx2&&this[_0x53bb[832]]([_0x39abx2])};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[832]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=null;this[_0x53bb[2094]]&&(_0x39abx3=this[_0x53bb[895]],_0x39abx2=[this[_0x53bb[2101]](_0x39abx2)]);for(var _0x39abx4=[],_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){!this[_0x53bb[2097]](_0x39abx2[_0x39abx5])&&this[_0x53bb[1179]][_0x53bb[2102]](_0x39abx2[_0x39abx5])&&_0x39abx4[_0x53bb[207]](_0x39abx2[_0x39abx5])};this[_0x53bb[2098]](_0x39abx4,_0x39abx3)}};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2104]]=function(_0x39abx2){null!=_0x39abx2&&this[_0x53bb[842]]([_0x39abx2])};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[842]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){this[_0x53bb[2097]](_0x39abx2[_0x39abx4])&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])};this[_0x53bb[2098]](null,_0x39abx3)}};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[2098]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]&&null!=_0x39abx2[0]||null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]&&null!=_0x39abx3[0]){var _0x39abx4= new mxSelectionChange(this,_0x39abx2,_0x39abx3);_0x39abx4[_0x53bb[350]]();var _0x39abx5= new mxUndoableEdit(this,!1);_0x39abx5[_0x53bb[99]](_0x39abx4);this[_0x53bb[746]]( new mxEventObject(mxEvent.UNDO,_0x53bb[1061],_0x39abx5))}};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[1941]]=function(_0x39abx2){null!=_0x39abx2&&!this[_0x53bb[2097]](_0x39abx2)&&this[_0x53bb[895]][_0x53bb[207]](_0x39abx2)};mxGraphSelectionModel[_0x53bb[202]][_0x53bb[1102]]=function(_0x39abx2){null!=_0x39abx2&&(_0x39abx2=mxUtils[_0x53bb[2]](this[_0x53bb[895]],_0x39abx2),0<=_0x39abx2&&this[_0x53bb[895]][_0x53bb[300]](_0x39abx2,1))};function mxSelectionChange(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[2105]]=_0x39abx2;this[_0x53bb[2106]]=null!=_0x39abx3?_0x39abx3[_0x53bb[1853]]():null;this[_0x53bb[2107]]=null!=_0x39abx4?_0x39abx4[_0x53bb[1853]]():null}mxSelectionChange[_0x53bb[202]][_0x53bb[350]]=function(){var _0x39abx2=mxLog[_0x53bb[2109]](_0x53bb[2108]);window[_0x53bb[879]]=mxResources[_0x53bb[203]](this[_0x53bb[2105]][_0x53bb[2092]])||this[_0x53bb[2105]][_0x53bb[2092]];if(null!=this[_0x53bb[2107]]){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[2107]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[2105]][_0x53bb[1102]](this[_0x53bb[2107]][_0x39abx3])}};if(null!=this[_0x53bb[2106]]){for(_0x39abx3=0;_0x39abx3<this[_0x53bb[2106]][_0x53bb[67]];_0x39abx3++){this[_0x53bb[2105]][_0x53bb[1941]](this[_0x53bb[2106]][_0x39abx3])}};_0x39abx3=this[_0x53bb[2106]];this[_0x53bb[2106]]=this[_0x53bb[2107]];this[_0x53bb[2107]]=_0x39abx3;window[_0x53bb[879]]=mxResources[_0x53bb[203]](this[_0x53bb[2105]][_0x53bb[2091]])||this[_0x53bb[2105]][_0x53bb[2091]];mxLog[_0x53bb[2110]](_0x53bb[2108],_0x39abx2);this[_0x53bb[2105]][_0x53bb[746]]( new mxEventObject(mxEvent.CHANGE,_0x53bb[2106],this[_0x53bb[2106]],_0x53bb[2107],this[_0x53bb[2107]]))};function mxCellEditor(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2}mxCellEditor[_0x53bb[202]][_0x53bb[1179]]=null;mxCellEditor[_0x53bb[202]][_0x53bb[126]]=null;mxCellEditor[_0x53bb[202]][_0x53bb[2111]]=null;mxCellEditor[_0x53bb[202]][_0x53bb[2112]]=null;mxCellEditor[_0x53bb[202]][_0x53bb[2113]]= !1;mxCellEditor[_0x53bb[202]][_0x53bb[2114]]= !0;mxCellEditor[_0x53bb[202]][_0x53bb[2115]]=_0x53bb[110];mxCellEditor[_0x53bb[202]][_0x53bb[2116]]=_0x53bb[110];mxCellEditor[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[126]]=document[_0x53bb[55]](_0x53bb[126]);this[_0x53bb[126]][_0x53bb[926]]=_0x53bb[2117];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[189];this[_0x53bb[126]][_0x53bb[57]](_0x53bb[2118],_0x53bb[2119]);this[_0x53bb[126]][_0x53bb[57]](_0x53bb[969],_0x53bb[2120]);mxClient[_0x53bb[133]]&&(this[_0x53bb[126]][_0x53bb[124]][_0x53bb[129]]=_0x53bb[130]);mxEvent[_0x53bb[169]](this[_0x53bb[126]],_0x53bb[2121],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2122]]()}));mxEvent[_0x53bb[169]](this[_0x53bb[126]],_0x53bb[2123],mxUtils[_0x53bb[885]](this,function(_0x39abx2){mxEvent[_0x53bb[721]](_0x39abx2)||(113==_0x39abx2[_0x53bb[2124]]||this[_0x53bb[1179]][_0x53bb[2125]]()&&13==_0x39abx2[_0x53bb[2124]]&&!mxEvent[_0x53bb[775]](_0x39abx2)&&!mxEvent[_0x53bb[774]](_0x39abx2)?(this[_0x53bb[1179]][_0x53bb[2126]](!1),mxEvent[_0x53bb[722]](_0x39abx2)):27==_0x39abx2[_0x53bb[2124]]?(this[_0x53bb[1179]][_0x53bb[2126]](!0),mxEvent[_0x53bb[722]](_0x39abx2)):(this[_0x53bb[2127]]&&(this[_0x53bb[2127]]= !1,this[_0x53bb[126]][_0x53bb[131]]=_0x53bb[110]),this[_0x53bb[2128]](!0)))}));mxEvent[_0x53bb[169]](this[_0x53bb[126]],_0x53bb[2129],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2114]]&&!mxEvent[_0x53bb[721]](_0x39abx2)&&setTimeout(mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[129]]()}),0)}))};mxCellEditor[_0x53bb[202]][_0x53bb[129]]=function(){if(null!=this[_0x53bb[1653]]){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](this[_0x53bb[2111]]),_0x39abx3=this[_0x53bb[1179]][_0x53bb[2130]](_0x39abx2[_0x53bb[246]]),_0x39abx4=this[_0x53bb[1179]][_0x53bb[2131]](_0x39abx2[_0x53bb[246]]);if(this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]])){this[_0x53bb[1562]][_0x53bb[235]]=_0x39abx2[_0x53bb[2079]][_0x53bb[235]],this[_0x53bb[1562]][_0x53bb[236]]=_0x39abx2[_0x53bb[2079]][_0x53bb[236]],this[_0x53bb[1562]][_0x53bb[117]]=0,this[_0x53bb[1562]][_0x53bb[119]]=0}else {if(null!=this[_0x53bb[1562]]){this[_0x53bb[1562]][_0x53bb[235]]=_0x39abx2[_0x53bb[235]];this[_0x53bb[1562]][_0x53bb[236]]=_0x39abx2[_0x53bb[236]];this[_0x53bb[1562]][_0x53bb[117]]=_0x39abx2[_0x53bb[117]];this[_0x53bb[1562]][_0x53bb[119]]=_0x39abx2[_0x53bb[119]];var _0x39abx5=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);_0x39abx5==mxConstants[_0x53bb[2132]]?this[_0x53bb[1562]][_0x53bb[235]]-=_0x39abx2[_0x53bb[117]]:_0x39abx5==mxConstants[_0x53bb[480]]&&(this[_0x53bb[1562]][_0x53bb[235]]+=_0x39abx2[_0x53bb[117]]);_0x39abx5=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);_0x39abx5==mxConstants[_0x53bb[1687]]?this[_0x53bb[1562]][_0x53bb[236]]-=_0x39abx2[_0x53bb[119]]:_0x39abx5==mxConstants[_0x53bb[482]]&&(this[_0x53bb[1562]][_0x53bb[236]]+=_0x39abx2[_0x53bb[119]])}};_0x39abx5=this[_0x53bb[126]][_0x53bb[131]];if(_0x53bb[192]==_0x39abx5[_0x53bb[225]](_0x39abx5[_0x53bb[67]]-1)||_0x53bb[110]==_0x39abx5){_0x39abx5+=_0x53bb[544]};_0x39abx5=mxUtils[_0x53bb[321]](_0x39abx5,!1);_0x39abx4?(this[_0x53bb[1653]][_0x53bb[124]][_0x53bb[493]]=_0x53bb[1502],this[_0x53bb[1653]][_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[1562]][_0x53bb[117]]+_0x53bb[168]):_0x39abx5=_0x39abx5[_0x53bb[230]](/ /g,_0x53bb[544]);_0x39abx5=_0x39abx5[_0x53bb[230]](/\n/g,_0x53bb[1453]);this[_0x53bb[1653]][_0x53bb[339]]=_0x39abx5;var _0x39abx5=this[_0x53bb[1653]][_0x53bb[359]]+30,_0x39abx9=this[_0x53bb[1653]][_0x53bb[167]]+16,_0x39abx5=Math[_0x53bb[160]](_0x39abx5,40),_0x39abx9=Math[_0x53bb[160]](_0x39abx9,20);_0x39abx3&&(_0x39abx5=Math[_0x53bb[243]](this[_0x53bb[1562]][_0x53bb[117]]-4,_0x39abx5),_0x39abx9=Math[_0x53bb[243]](this[_0x53bb[1562]][_0x53bb[119]],_0x39abx9));var _0x39abxa=null!=_0x39abx2[_0x53bb[963]]?_0x39abx2[_0x53bb[963]][_0x53bb[1655]]:null;null==_0x39abxa&&(_0x39abxa=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),_0x39abx2=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x39abxa=mxUtils[_0x53bb[1501]](_0x39abxa,_0x39abx2));if(null!=_0x39abxa){if(_0x39abx3|| !_0x39abx4){this[_0x53bb[126]][_0x53bb[124]][_0x53bb[361]]=Math[_0x53bb[160]](0,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[235]]-_0x39abxa[_0x53bb[235]]*this[_0x53bb[1562]][_0x53bb[117]]+_0x39abxa[_0x53bb[235]]*_0x39abx5)-3)+_0x53bb[168]};this[_0x53bb[126]][_0x53bb[124]][_0x53bb[125]]=Math[_0x53bb[160]](0,Math[_0x53bb[488]](this[_0x53bb[1562]][_0x53bb[236]]-_0x39abxa[_0x53bb[236]]*this[_0x53bb[1562]][_0x53bb[119]]+_0x39abxa[_0x53bb[236]]*_0x39abx9)+4)+_0x53bb[168]};if(_0x39abx3|| !_0x39abx4){this[_0x53bb[126]][_0x53bb[124]][_0x53bb[117]]=_0x39abx5+_0x53bb[168]};this[_0x53bb[126]][_0x53bb[124]][_0x53bb[119]]=_0x39abx9+_0x53bb[168]}};mxCellEditor[_0x53bb[202]][_0x53bb[2133]]=function(){return this[_0x53bb[2113]]};mxCellEditor[_0x53bb[202]][_0x53bb[2128]]=function(_0x39abx2){this[_0x53bb[2113]]=_0x39abx2};mxCellEditor[_0x53bb[202]][_0x53bb[2122]]=function(){this[_0x53bb[2126]](!this[_0x53bb[1179]][_0x53bb[2134]]())};mxCellEditor[_0x53bb[202]][_0x53bb[855]]=function(_0x39abx2,_0x39abx3){null==this[_0x53bb[126]]&&this[_0x53bb[176]]();this[_0x53bb[2126]](!0);var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);if(null!=_0x39abx4){this[_0x53bb[2111]]=_0x39abx2;this[_0x53bb[2112]]=_0x39abx3;this[_0x53bb[2116]]=null;null!=_0x39abx4[_0x53bb[963]]&&this[_0x53bb[2135]](_0x39abx4)&&(this[_0x53bb[2116]]=_0x39abx4[_0x53bb[963]][_0x53bb[252]],this[_0x53bb[2116]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]);var _0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx5=mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE)*_0x39abx5,_0x39abx9=mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),_0x39abxa=mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTCOLOR,_0x53bb[586]),_0x39abx12=mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),_0x39abx13=(mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x53bb[1410]])==mxConstants[_0x53bb[1410]],_0x39abx14=(mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x53bb[1412]])==mxConstants[_0x53bb[1412]],_0x39abx15=(mxUtils[_0x53bb[433]](_0x39abx4[_0x53bb[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x53bb[1414]])==mxConstants[_0x53bb[1414]];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[487]]=Math[_0x53bb[488]](_0x39abx5)+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[489]]=Math[_0x53bb[488]](_0x39abx5*mxConstants[_0x53bb[490]])+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[486]]=_0x39abx9;this[_0x53bb[126]][_0x53bb[124]][_0x53bb[1165]]=_0x39abx12;this[_0x53bb[126]][_0x53bb[124]][_0x53bb[352]]=_0x39abxa;this[_0x53bb[126]][_0x53bb[124]][_0x53bb[1452]]=_0x39abx13?_0x53bb[1447]:_0x53bb[1502];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[666]]=_0x39abx14?_0x53bb[1449]:_0x53bb[110];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[354]]=_0x39abx15?_0x53bb[355]:_0x53bb[110];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[278];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[2136]]=_0x53bb[130];this[_0x53bb[1562]]=_0x39abx5=this[_0x53bb[2137]](_0x39abx4);this[_0x53bb[126]][_0x53bb[124]][_0x53bb[361]]=_0x39abx5[_0x53bb[235]]+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[125]]=_0x39abx5[_0x53bb[236]]+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[117]]=_0x39abx5[_0x53bb[117]]+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[119]]=_0x39abx5[_0x53bb[119]]+_0x53bb[168];this[_0x53bb[126]][_0x53bb[124]][_0x53bb[931]]=5;_0x39abx4=this[_0x53bb[2138]](_0x39abx4,_0x39abx3);null==_0x39abx4||0==_0x39abx4[_0x53bb[67]]?(_0x39abx4=this[_0x53bb[2139]](),this[_0x53bb[2127]]= !0):this[_0x53bb[2127]]= !1;this[_0x53bb[2128]](!1);this[_0x53bb[126]][_0x53bb[131]]=_0x39abx4;this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[62]](this[_0x53bb[126]]);_0x53bb[130]!=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[495]]&&(this[_0x53bb[2114]]&&(this[_0x53bb[1653]]=this[_0x53bb[2140]](),document[_0x53bb[112]][_0x53bb[62]](this[_0x53bb[1653]]),this[_0x53bb[129]]()),this[_0x53bb[126]][_0x53bb[393]](),this[_0x53bb[126]][_0x53bb[804]]())}};mxCellEditor[_0x53bb[202]][_0x53bb[2140]]=function(){var _0x39abx2=document[_0x53bb[55]](_0x53bb[485]),_0x39abx3=_0x39abx2[_0x53bb[124]];_0x39abx3[_0x53bb[491]]=_0x53bb[492];_0x39abx3[_0x53bb[493]]=_0x53bb[494];_0x39abx3[_0x53bb[187]]=_0x53bb[188];_0x39abx3[_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498];_0x39abx3[_0x53bb[499]]=_0x53bb[500];_0x39abx3[_0x53bb[123]]=_0x53bb[125];_0x39abx3[_0x53bb[489]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[489]];_0x39abx3[_0x53bb[487]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[487]];_0x39abx3[_0x53bb[486]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[486]];_0x39abx3[_0x53bb[1452]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[1452]];_0x39abx3[_0x53bb[1165]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[1165]];_0x39abx3[_0x53bb[666]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[666]];_0x39abx3[_0x53bb[354]]=this[_0x53bb[126]][_0x53bb[124]][_0x53bb[354]];return _0x39abx2};mxCellEditor[_0x53bb[202]][_0x53bb[2126]]=function(_0x39abx2){null!=this[_0x53bb[2111]]&&(null!=this[_0x53bb[2116]]&&(this[_0x53bb[2116]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189],this[_0x53bb[2116]]=null),!_0x39abx2&&this[_0x53bb[2133]]()&&this[_0x53bb[1179]][_0x53bb[850]](this[_0x53bb[2111]],this[_0x53bb[2141]](),this[_0x53bb[2112]]),null!=this[_0x53bb[1653]]&&(document[_0x53bb[112]][_0x53bb[266]](this[_0x53bb[1653]]),this[_0x53bb[1653]]=null),this[_0x53bb[1562]]=this[_0x53bb[2112]]=this[_0x53bb[2111]]=null,this[_0x53bb[126]][_0x53bb[2121]](),this[_0x53bb[126]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[126]]))};mxCellEditor[_0x53bb[202]][_0x53bb[2138]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[1179]][_0x53bb[2142]](_0x39abx2[_0x53bb[246]],_0x39abx3)};mxCellEditor[_0x53bb[202]][_0x53bb[2141]]=function(){return this[_0x53bb[126]][_0x53bb[131]][_0x53bb[230]](/\r/g,_0x53bb[110])};mxCellEditor[_0x53bb[202]][_0x53bb[2135]]=function(_0x39abx2){return !0};mxCellEditor[_0x53bb[202]][_0x53bb[939]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]];return new mxRectangle(0,0,null==_0x39abx2[_0x53bb[963]]?30:_0x39abx2[_0x53bb[963]][_0x53bb[803]]*_0x39abx3+20,_0x53bb[361]==this[_0x53bb[126]][_0x53bb[124]][_0x53bb[1165]]?120:40)};mxCellEditor[_0x53bb[202]][_0x53bb[2137]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]),_0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx5=this[_0x53bb[939]](_0x39abx2),_0x39abx9=_0x39abx5[_0x53bb[117]],_0x39abx5=_0x39abx5[_0x53bb[119]],_0x39abxa=parseInt(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2143]]]||2)*_0x39abx4,_0x39abx12=parseInt(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2144]]]||0)*_0x39abx4+_0x39abxa,_0x39abx13=parseInt(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2145]]]||0)*_0x39abx4+_0x39abxa,_0x39abx14=parseInt(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2146]]]||0)*_0x39abx4+_0x39abxa,_0x39abx4=parseInt(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2147]]]||0)*_0x39abx4+_0x39abxa,_0x39abx13= new mxRectangle(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],Math[_0x53bb[160]](_0x39abx9,_0x39abx2[_0x53bb[117]]-_0x39abx4-_0x39abx13),Math[_0x53bb[160]](_0x39abx5,_0x39abx2[_0x53bb[119]]-_0x39abx12-_0x39abx14));_0x39abx3?(_0x39abx13[_0x53bb[235]]=_0x39abx2[_0x53bb[2079]][_0x53bb[235]],_0x39abx13[_0x53bb[236]]=_0x39abx2[_0x53bb[2079]][_0x53bb[236]],null!=_0x39abx2[_0x53bb[963]]&&null!=_0x39abx2[_0x53bb[963]][_0x53bb[1563]]&&(0<_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[235]]&&(_0x39abx13[_0x53bb[235]]=_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[235]]),0<_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[236]]&&(_0x39abx13[_0x53bb[236]]=_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[236]]))):null!=_0x39abx2[_0x53bb[963]]&&null!=_0x39abx2[_0x53bb[963]][_0x53bb[1563]]&&(_0x39abx13[_0x53bb[235]]=Math[_0x53bb[243]](_0x39abx13[_0x53bb[235]],_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[235]]),_0x39abx13[_0x53bb[236]]=Math[_0x53bb[243]](_0x39abx13[_0x53bb[236]],_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[236]]));_0x39abx13[_0x53bb[235]]+=_0x39abx4;_0x39abx13[_0x53bb[236]]+=_0x39abx12;null!=_0x39abx2[_0x53bb[963]]&&null!=_0x39abx2[_0x53bb[963]][_0x53bb[1563]]&&(_0x39abx3?(_0x39abx13[_0x53bb[117]]=Math[_0x53bb[160]](_0x39abx9,_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[117]]),_0x39abx13[_0x53bb[119]]=Math[_0x53bb[160]](_0x39abx5,_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[119]])):(_0x39abx13[_0x53bb[117]]=Math[_0x53bb[160]](_0x39abx13[_0x53bb[117]],_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[117]]),_0x39abx13[_0x53bb[119]]=Math[_0x53bb[160]](_0x39abx13[_0x53bb[119]],_0x39abx2[_0x53bb[963]][_0x53bb[1563]][_0x53bb[119]])));this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2[_0x53bb[246]])&&(_0x39abx3=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),_0x39abx3==mxConstants[_0x53bb[2132]]?_0x39abx13[_0x53bb[235]]-=_0x39abx2[_0x53bb[117]]:_0x39abx3==mxConstants[_0x53bb[480]]&&(_0x39abx13[_0x53bb[235]]+=_0x39abx2[_0x53bb[117]]),_0x39abx3=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),_0x39abx3==mxConstants[_0x53bb[1687]]?_0x39abx13[_0x53bb[236]]-=_0x39abx2[_0x53bb[119]]:_0x39abx3==mxConstants[_0x53bb[482]]&&(_0x39abx13[_0x53bb[236]]+=_0x39abx2[_0x53bb[119]]));return _0x39abx13};mxCellEditor[_0x53bb[202]][_0x53bb[2139]]=function(_0x39abx2){return this[_0x53bb[2115]]};mxCellEditor[_0x53bb[202]][_0x53bb[2148]]=function(){return this[_0x53bb[2111]]};mxCellEditor[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[126]]&&(mxEvent[_0x53bb[762]](this[_0x53bb[126]]),null!=this[_0x53bb[126]][_0x53bb[265]]&&this[_0x53bb[126]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[126]]),this[_0x53bb[126]]=null)};function mxCellRenderer(){}mxCellRenderer[_0x53bb[202]][_0x53bb[2149]]=mxConnector;mxCellRenderer[_0x53bb[202]][_0x53bb[2150]]=mxRectangleShape;mxCellRenderer[_0x53bb[202]][_0x53bb[2151]]=mxText;mxCellRenderer[_0x53bb[202]][_0x53bb[2152]]= !0;mxCellRenderer[_0x53bb[202]][_0x53bb[2153]]={};mxCellRenderer[_0x53bb[2154]]=function(_0x39abx2,_0x39abx3){mxCellRenderer[_0x53bb[202]][_0x53bb[2153]][_0x39abx2]=_0x39abx3};mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_RECTANGLE,mxRectangleShape);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_HEXAGON,mxHexagon);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_LINE,mxLine);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_IMAGE,mxImageShape);mxCellRenderer[_0x53bb[2154]](mxConstants.SHAPE_LABEL,mxLabel);mxCellRenderer[_0x53bb[202]][_0x53bb[2155]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]();if(null!=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[526]]&&null==_0x39abx2[_0x53bb[253]]&&_0x39abx2[_0x53bb[246]]!=_0x39abx2[_0x53bb[441]][_0x53bb[1741]]&&(_0x39abx4[_0x53bb[1193]](_0x39abx2[_0x53bb[246]])||_0x39abx4[_0x53bb[250]](_0x39abx2[_0x53bb[246]]))){if(this[_0x53bb[2156]](_0x39abx2),null!=_0x39abx2[_0x53bb[253]]&&(null==_0x39abx3||_0x39abx3)){this[_0x53bb[2157]](_0x39abx2),_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2158]]||_0x39abx4[_0x53bb[250]](_0x39abx2[_0x53bb[246]])?_0x39abx2[_0x53bb[2081]]= !0:_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2159]]&&null!=this[_0x53bb[2160]]&&(this[_0x53bb[2160]][_0x53bb[265]]==_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]]?this[_0x53bb[2161]](_0x39abx2,this[_0x53bb[2160]]):this[_0x53bb[2160]]=null),_0x39abx2[_0x53bb[253]][_0x53bb[255]]=_0x39abx2[_0x53bb[441]][_0x53bb[255]],this[_0x53bb[2162]](_0x39abx2),this[_0x53bb[2163]](_0x39abx2)}}};mxCellRenderer[_0x53bb[202]][_0x53bb[2157]]=function(_0x39abx2){_0x39abx2[_0x53bb[253]][_0x53bb[176]](_0x39abx2[_0x53bb[441]][_0x53bb[2024]]())};mxCellRenderer[_0x53bb[202]][_0x53bb[2164]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=null,_0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx9=_0x39abx5[_0x53bb[502]](),_0x39abxa=_0x39abx2[_0x53bb[246]],_0x39abx12=_0x39abx9[_0x53bb[1197]](_0x39abxa);null!=_0x39abx12&&null==_0x39abx4;){_0x39abx4=this[_0x53bb[2165]](_0x39abx5,_0x39abx12,_0x39abxa,_0x39abx3),_0x39abxa=_0x39abx12,_0x39abx12=_0x39abx9[_0x53bb[1197]](_0x39abxa)};return _0x39abx4};mxCellRenderer[_0x53bb[202]][_0x53bb[2165]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null,_0x39abxa=_0x39abx2[_0x53bb[502]]();for(_0x39abx4=null!=_0x39abx4?_0x39abx3[_0x53bb[1738]](_0x39abx4)-1:_0x39abxa[_0x53bb[262]](_0x39abx3)-1;0<=_0x39abx4&&null==_0x39abx9;_0x39abx4--){_0x39abx9=this[_0x53bb[2165]](_0x39abx2,_0x39abxa[_0x53bb[263]](_0x39abx3,_0x39abx4),null,_0x39abx5)};if(null==_0x39abx9&&(_0x39abx9=_0x39abx2[_0x53bb[441]][_0x53bb[248]](_0x39abx3),null!=_0x39abx9&&(null==_0x39abx9[_0x53bb[253]]||null==_0x39abx9[_0x53bb[253]][_0x53bb[252]]||_0x39abx9[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]]!=_0x39abx5))){_0x39abx9=null};return _0x39abx9};mxCellRenderer[_0x53bb[202]][_0x53bb[2166]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]],_0x39abx4=this[_0x53bb[2164]](_0x39abx2,_0x39abx3),_0x39abx5=_0x39abx3[_0x53bb[285]];null!=_0x39abx4&&(_0x39abx5=_0x39abx4[_0x53bb[253]][_0x53bb[252]],null!=_0x39abx4[_0x53bb[963]]&&(null!=_0x39abx4[_0x53bb[963]][_0x53bb[252]]&&_0x39abx4[_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==_0x39abx3)&&(_0x39abx5=_0x39abx4[_0x53bb[963]][_0x53bb[252]]),_0x39abx5=_0x39abx5[_0x53bb[287]]);this[_0x53bb[2161]](_0x39abx2,_0x39abx5)};mxCellRenderer[_0x53bb[202]][_0x53bb[2167]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]],_0x39abx4=_0x39abx3[_0x53bb[1179]][_0x53bb[502]]();if(_0x39abx3[_0x53bb[1179]][_0x53bb[2159]]){if(null==this[_0x53bb[2160]]||null==this[_0x53bb[2160]][_0x53bb[265]]||this[_0x53bb[2160]][_0x53bb[265]]!=_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]]){this[_0x53bb[2160]]=_0x39abx2[_0x53bb[253]][_0x53bb[252]]}}else {if(_0x39abx3[_0x53bb[1179]][_0x53bb[2168]]){var _0x39abx5=_0x39abx2[_0x53bb[253]][_0x53bb[252]],_0x39abx9=_0x39abx5[_0x53bb[265]],_0x39abx4=_0x39abx4[_0x53bb[1197]](_0x39abx2[_0x53bb[246]]),_0x39abx3=_0x39abx3[_0x53bb[248]](_0x39abx4),_0x39abx9=null!=_0x39abx3&&null!=_0x39abx3[_0x53bb[253]]&&null!=_0x39abx3[_0x53bb[253]][_0x53bb[252]]?_0x39abx3[_0x53bb[253]][_0x53bb[252]][_0x53bb[287]]:_0x39abx9[_0x53bb[285]];null!=_0x39abx9&&_0x39abx9!=_0x39abx5&&this[_0x53bb[2161]](_0x39abx2,_0x39abx9)}}};mxCellRenderer[_0x53bb[202]][_0x53bb[2161]]=function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](_0x39abx2[_0x53bb[253]][_0x53bb[252]],_0x39abx3);null!=_0x39abx2[_0x53bb[963]]&&(null!=_0x39abx2[_0x53bb[963]][_0x53bb[252]]&&_0x39abx2[_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]])&&_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](_0x39abx2[_0x53bb[963]][_0x53bb[252]],_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[287]])};mxCellRenderer[_0x53bb[202]][_0x53bb[2156]]=function(_0x39abx2){if(null!=_0x39abx2[_0x53bb[124]]){var _0x39abx3=mxStencilRegistry[_0x53bb[1560]](_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2059]]]);null!=_0x39abx3?_0x39abx2[_0x53bb[253]]= new mxShape(_0x39abx3):(_0x39abx3=this[_0x53bb[2169]](_0x39abx2),_0x39abx2[_0x53bb[253]]= new _0x39abx3);_0x39abx2[_0x53bb[253]][_0x53bb[1525]]=_0x39abx2[_0x53bb[439]];_0x39abx2[_0x53bb[253]][_0x53bb[1562]]= new mxRectangle(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],_0x39abx2[_0x53bb[117]],_0x39abx2[_0x53bb[119]]);_0x39abx2[_0x53bb[253]][_0x53bb[507]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[507]];this[_0x53bb[2170]](_0x39abx2)}};mxCellRenderer[_0x53bb[202]][_0x53bb[2171]]=function(_0x39abx2){return null!=_0x39abx2?mxCellRenderer[_0x53bb[202]][_0x53bb[2153]][_0x39abx2]:null};mxCellRenderer[_0x53bb[202]][_0x53bb[2169]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[2171]](_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2059]]]);null==_0x39abx3&&(_0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]])?this[_0x53bb[2149]]:this[_0x53bb[2150]]);return _0x39abx3};mxCellRenderer[_0x53bb[202]][_0x53bb[2170]]=function(_0x39abx2){_0x39abx2[_0x53bb[253]][_0x53bb[183]](_0x39abx2);_0x39abx2[_0x53bb[253]][_0x53bb[618]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[1202]](_0x39abx2);_0x39abx2[_0x53bb[253]][_0x53bb[630]]=this[_0x53bb[2171]](_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2172]](_0x39abx2));_0x39abx2[_0x53bb[253]][_0x53bb[632]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2173]](_0x39abx2);_0x39abx2[_0x53bb[253]][_0x53bb[634]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2174]](_0x39abx2);_0x39abx2[_0x53bb[253]][_0x53bb[638]]=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2175]]];_0x39abx2[_0x53bb[253]][_0x53bb[631]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2176]](_0x39abx2);this[_0x53bb[2177]](_0x39abx2)};mxCellRenderer[_0x53bb[202]][_0x53bb[2177]]=function(_0x39abx2){null!=_0x39abx2[_0x53bb[253]]&&(this[_0x53bb[2178]](_0x39abx2,_0x53bb[632],mxConstants.STYLE_FILLCOLOR),this[_0x53bb[2178]](_0x39abx2,_0x53bb[634],mxConstants.STYLE_GRADIENTCOLOR),this[_0x53bb[2178]](_0x39abx2,_0x53bb[1334],mxConstants.STYLE_FILLCOLOR),this[_0x53bb[2178]](_0x39abx2,_0x53bb[1336],mxConstants.STYLE_STROKECOLOR),this[_0x53bb[2178]](_0x39abx2,_0x53bb[1299],mxConstants.STYLE_GRADIENTCOLOR))};mxCellRenderer[_0x53bb[202]][_0x53bb[2178]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[253]][_0x39abx3],_0x39abx9=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abxa=null;_0x53bb[1549]==_0x39abx5?_0x39abxa=_0x39abx9[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x53bb[246]]):_0x53bb[687]==_0x39abx5?(_0x39abxa=null!=_0x39abx9[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x53bb[246]],!1)?_0x39abx9[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x53bb[246]],!1):_0x39abx2[_0x53bb[246]],_0x39abxa=_0x39abx9[_0x53bb[2179]](_0x39abxa),_0x39abx4=_0x39abx9[_0x53bb[2180]]):_0x53bb[2181]==_0x39abx5&&(_0x39abx2[_0x53bb[253]][_0x39abx3]=_0x39abx2[_0x53bb[253]][_0x53bb[632]]);null!=_0x39abxa&&(_0x39abx5=_0x39abx9[_0x53bb[249]]()[_0x53bb[248]](_0x39abxa),_0x39abx2[_0x53bb[253]][_0x39abx3]=null,null!=_0x39abx5&&(_0x39abx2[_0x53bb[253]][_0x39abx3]=null!=_0x39abx5[_0x53bb[253]]&&_0x53bb[632]!=_0x39abx3?_0x39abx5[_0x53bb[253]][_0x39abx3]:_0x39abx5[_0x53bb[124]][_0x39abx4]))};mxCellRenderer[_0x53bb[202]][_0x53bb[2182]]=function(_0x39abx2){return _0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2183]](_0x39abx2[_0x53bb[246]])};mxCellRenderer[_0x53bb[202]][_0x53bb[2184]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[441]][_0x53bb[1179]];_0x39abx4[_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]);if(0<_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2185]]]||null==_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2185]]]){var _0x39abx5=_0x39abx4[_0x53bb[2186]](_0x39abx2[_0x53bb[246]])||null!=_0x39abx3&&mxUtils[_0x53bb[1331]](_0x39abx3);_0x39abx2[_0x53bb[963]]= new this[_0x53bb[2151]](_0x39abx3, new mxRectangle,_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2064]]]||mxConstants[_0x53bb[479]],_0x39abx4[_0x53bb[2187]](_0x39abx2),_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2069]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2188]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2185]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2189]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2143]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2144]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2145]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2146]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2147]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2190]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2191]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2192]]],_0x39abx4[_0x53bb[2131]](_0x39abx2[_0x53bb[246]])&&_0x39abx4[_0x53bb[2186]](_0x39abx2[_0x53bb[246]]),_0x39abx4[_0x53bb[2130]](_0x39abx2[_0x53bb[246]]),_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2193]]],_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2194]]]);_0x39abx2[_0x53bb[963]][_0x53bb[461]]=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_TEXT_OPACITY,100);_0x39abx2[_0x53bb[963]][_0x53bb[507]]=_0x39abx5?mxConstants[_0x53bb[1656]]:_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[507]];_0x39abx2[_0x53bb[963]][_0x53bb[724]]=_0x39abx2;this[_0x53bb[2195]](_0x39abx2);var _0x39abx9=!1,_0x39abxa=function(_0x39abx3){var _0x39abx5=_0x39abx2;if(mxClient[_0x53bb[754]]||_0x39abx9){_0x39abx5=mxEvent[_0x53bb[731]](_0x39abx3),_0x39abx3=mxEvent[_0x53bb[733]](_0x39abx3),_0x39abx3=mxUtils[_0x53bb[2196]](_0x39abx4[_0x53bb[526]],_0x39abx5,_0x39abx3),_0x39abx5=_0x39abx4[_0x53bb[441]][_0x53bb[248]](_0x39abx4[_0x53bb[999]](_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]]))};return _0x39abx5};mxEvent[_0x53bb[759]](_0x39abx2[_0x53bb[963]][_0x53bb[252]],mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2197]](_0x39abx2,_0x39abx3)&&(_0x39abx4[_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx3,_0x39abx2)),_0x39abx9=_0x39abx4[_0x53bb[507]]!=mxConstants[_0x53bb[508]]&&_0x53bb[2198]==mxEvent[_0x53bb[728]](_0x39abx3)[_0x53bb[301]])}),mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2197]](_0x39abx2,_0x39abx3)&&_0x39abx4[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx3,_0x39abxa(_0x39abx3)))}),mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2197]](_0x39abx2,_0x39abx3)&&(_0x39abx4[_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx3,_0x39abxa(_0x39abx3))),_0x39abx9= !1)}));mxEvent[_0x53bb[169]](_0x39abx2[_0x53bb[963]][_0x53bb[252]],_0x53bb[760],mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2197]](_0x39abx2,_0x39abx3)&&(_0x39abx4[_0x53bb[761]](_0x39abx3,_0x39abx2[_0x53bb[246]]),mxEvent[_0x53bb[722]](_0x39abx3))}))}};mxCellRenderer[_0x53bb[202]][_0x53bb[2195]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]];_0x39abx2[_0x53bb[963]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]&&(mxClient[_0x53bb[48]]&&mxClient[_0x53bb[2199]]?_0x39abx2[_0x53bb[963]][_0x53bb[176]](_0x39abx3[_0x53bb[526]]):mxUtils[_0x53bb[458]](_0x39abx2[_0x53bb[441]][_0x53bb[2024]]())&&(null!=_0x39abx2[_0x53bb[253]][_0x53bb[685]]?_0x39abx2[_0x53bb[963]][_0x53bb[176]](_0x39abx2[_0x53bb[253]][_0x53bb[685]]):_0x39abx2[_0x53bb[963]][_0x53bb[176]](_0x39abx2[_0x53bb[253]][_0x53bb[252]])));null==_0x39abx2[_0x53bb[963]][_0x53bb[252]]&&(_0x39abx2[_0x53bb[963]][_0x53bb[176]](_0x39abx2[_0x53bb[441]][_0x53bb[2024]]()),null!=_0x39abx2[_0x53bb[253]]&&null!=_0x39abx2[_0x53bb[963]]&&_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](_0x39abx2[_0x53bb[963]][_0x53bb[252]],_0x39abx2[_0x53bb[253]][_0x53bb[252]][_0x53bb[287]]))};mxCellRenderer[_0x53bb[202]][_0x53bb[2162]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2200]](_0x39abx2[_0x53bb[246]]),_0x39abx4=null;if(null!=_0x39abx3){for(var _0x39abx4= new mxDictionary,_0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){var _0x39abx9=null!=_0x39abx2[_0x53bb[1211]]?_0x39abx2[_0x53bb[1211]][_0x53bb[205]](_0x39abx3[_0x39abx5]):null;null==_0x39abx9&&(_0x39abx9= new mxImageShape( new mxRectangle,_0x39abx3[_0x39abx5][_0x53bb[618]][_0x53bb[390]]),_0x39abx9[_0x53bb[507]]=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[507]],_0x39abx9[_0x53bb[1674]]= !1,_0x39abx9[_0x53bb[2201]]=_0x39abx3[_0x39abx5],this[_0x53bb[2023]](_0x39abx2,_0x39abx9),this[_0x53bb[2202]](_0x39abx2,_0x39abx3[_0x39abx5],_0x39abx9),null!=_0x39abx3[_0x39abx5][_0x53bb[270]]&&(_0x39abx9[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x39abx3[_0x39abx5][_0x53bb[270]]));_0x39abx4[_0x53bb[204]](_0x39abx3[_0x39abx5],_0x39abx9)}};null!=_0x39abx2[_0x53bb[1211]]&&_0x39abx2[_0x53bb[1211]][_0x53bb[209]](function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[515]]()});_0x39abx2[_0x53bb[1211]]=_0x39abx4};mxCellRenderer[_0x53bb[202]][_0x53bb[2023]]=function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[176]](_0x39abx2[_0x53bb[441]][_0x53bb[1524]]())};mxCellRenderer[_0x53bb[202]][_0x53bb[2202]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[1179]];mxEvent[_0x53bb[169]](_0x39abx4[_0x53bb[252]],_0x53bb[173],function(_0x39abx4){_0x39abx5[_0x53bb[2203]]()&&_0x39abx5[_0x53bb[2126]](!_0x39abx5[_0x53bb[2134]]());_0x39abx3[_0x53bb[746]]( new mxEventObject(mxEvent.CLICK,_0x53bb[763],_0x39abx4,_0x53bb[246],_0x39abx2[_0x53bb[246]]))});mxEvent[_0x53bb[759]](_0x39abx4[_0x53bb[252]],function(_0x39abx2){mxEvent[_0x53bb[722]](_0x39abx2)},function(_0x39abx3){_0x39abx5[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx3,_0x39abx2))});mxClient[_0x53bb[754]]&&mxEvent[_0x53bb[169]](_0x39abx4[_0x53bb[252]],_0x53bb[757],function(_0x39abx4){_0x39abx3[_0x53bb[746]]( new mxEventObject(mxEvent.CLICK,_0x53bb[763],_0x39abx4,_0x53bb[246],_0x39abx2[_0x53bb[246]]))})};mxCellRenderer[_0x53bb[202]][_0x53bb[2204]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx4=_0x39abx3[_0x53bb[2205]](_0x39abx2);if(_0x39abx3[_0x53bb[2206]]&&null!=_0x39abx4){if(null==_0x39abx2[_0x53bb[2207]]){var _0x39abx5= new mxRectangle(0,0,_0x39abx4[_0x53bb[117]],_0x39abx4[_0x53bb[119]]);_0x39abx2[_0x53bb[2207]]= new mxImageShape(_0x39abx5,_0x39abx4[_0x53bb[390]]);_0x39abx2[_0x53bb[2207]][_0x53bb[1674]]= !1;_0x39abx2[_0x53bb[2207]][_0x53bb[507]]=_0x39abx3[_0x53bb[507]];this[_0x53bb[2208]](_0x39abx2,_0x39abx2[_0x53bb[2207]],!0,function(_0x39abx4){if(_0x39abx3[_0x53bb[994]]()){var _0x39abx5=!_0x39abx3[_0x53bb[1742]](_0x39abx2[_0x53bb[246]]);_0x39abx3[_0x53bb[847]](_0x39abx5,!1,[_0x39abx2[_0x53bb[246]]]);mxEvent[_0x53bb[722]](_0x39abx4)}})}}else {null!=_0x39abx2[_0x53bb[2207]]&&(_0x39abx2[_0x53bb[2207]][_0x53bb[515]](),_0x39abx2[_0x53bb[2207]]=null)}};mxCellRenderer[_0x53bb[202]][_0x53bb[2208]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[441]][_0x53bb[1179]];_0x39abx9[_0x53bb[2186]](_0x39abx2[_0x53bb[246]])&&mxClient[_0x53bb[2199]]&&_0x39abx9[_0x53bb[507]]==mxConstants[_0x53bb[508]]?(_0x39abx3[_0x53bb[507]]=mxConstants[_0x53bb[2209]],_0x39abx3[_0x53bb[176]](_0x39abx9[_0x53bb[526]]),_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[931]]=1):_0x39abx3[_0x53bb[176]](_0x39abx2[_0x53bb[441]][_0x53bb[1524]]());_0x39abx3=_0x39abx3[_0x53bb[2210]]||_0x39abx3[_0x53bb[252]];_0x39abx5&&(_0x39abx9[_0x53bb[994]]()&&(_0x39abx3[_0x53bb[124]][_0x53bb[270]]=_0x53bb[356]),mxEvent[_0x53bb[169]](_0x39abx3,_0x53bb[173],_0x39abx5));_0x39abx4&&mxEvent[_0x53bb[759]](_0x39abx3,function(_0x39abx3){_0x39abx9[_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx3,_0x39abx2));mxEvent[_0x53bb[722]](_0x39abx3)},function(_0x39abx3){_0x39abx9[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx3,_0x39abx2))});return _0x39abx3};mxCellRenderer[_0x53bb[202]][_0x53bb[2211]]=function(_0x39abx2,_0x39abx3){return !0};mxCellRenderer[_0x53bb[202]][_0x53bb[2197]]=function(_0x39abx2,_0x39abx3){return !0};mxCellRenderer[_0x53bb[202]][_0x53bb[2163]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx4=function(_0x39abx4){var _0x39abx5=_0x39abx2;if(_0x39abx3[_0x53bb[507]]!=mxConstants[_0x53bb[508]]&&_0x53bb[2198]==mxEvent[_0x53bb[728]](_0x39abx4)[_0x53bb[301]]||mxClient[_0x53bb[754]]){_0x39abx5=mxEvent[_0x53bb[731]](_0x39abx4),_0x39abx4=mxEvent[_0x53bb[733]](_0x39abx4),_0x39abx4=mxUtils[_0x53bb[2196]](_0x39abx3[_0x53bb[526]],_0x39abx5,_0x39abx4),_0x39abx5=_0x39abx3[_0x53bb[441]][_0x53bb[248]](_0x39abx3[_0x53bb[999]](_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]]))};return _0x39abx5},_0x39abx5=!1;mxEvent[_0x53bb[169]](_0x39abx2[_0x53bb[253]][_0x53bb[252]],_0x53bb[2212],mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx3[_0x53bb[2213]]=0;_0x39abx5= !0;mxEvent[_0x53bb[722]](_0x39abx2)}));mxEvent[_0x53bb[759]](_0x39abx2[_0x53bb[253]][_0x53bb[252]],mxUtils[_0x53bb[885]](this,function(_0x39abx4){this[_0x53bb[2211]](_0x39abx2,_0x39abx4)&&!_0x39abx5?_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx4,null!=_0x39abx2[_0x53bb[253]]&&mxEvent[_0x53bb[728]](_0x39abx4)==_0x39abx2[_0x53bb[253]][_0x53bb[905]]?null:_0x39abx2)):_0x39abx5&&mxEvent[_0x53bb[722]](_0x39abx4)}),mxUtils[_0x53bb[885]](this,function(_0x39abx9){this[_0x53bb[2211]](_0x39abx2,_0x39abx9)&&!_0x39abx5?_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx9,null!=_0x39abx2[_0x53bb[253]]&&mxEvent[_0x53bb[728]](_0x39abx9)==_0x39abx2[_0x53bb[253]][_0x53bb[905]]?null:_0x39abx4(_0x39abx9))):_0x39abx5&&mxEvent[_0x53bb[722]](_0x39abx9)}),mxUtils[_0x53bb[885]](this,function(_0x39abx9){this[_0x53bb[2211]](_0x39abx2,_0x39abx9)&&!_0x39abx5?_0x39abx3[_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx9,null!=_0x39abx2[_0x53bb[253]]&&mxEvent[_0x53bb[728]](_0x39abx9)==_0x39abx2[_0x53bb[253]][_0x53bb[905]]?null:_0x39abx4(_0x39abx9))):_0x39abx5&&mxEvent[_0x53bb[722]](_0x39abx9)}));var _0x39abx9=mxClient[_0x53bb[754]]?_0x53bb[2214]:_0x53bb[760];mxEvent[_0x53bb[169]](_0x39abx2[_0x53bb[253]][_0x53bb[252]],_0x39abx9,mxUtils[_0x53bb[885]](this,function(_0x39abx4){_0x39abx5= !1;_0x53bb[2214]==_0x39abx9?(_0x39abx3[_0x53bb[2213]]=0,_0x39abx3[_0x53bb[2215]]&&(_0x39abx3[_0x53bb[2216]](_0x39abx2,_0x39abx4),mxEvent[_0x53bb[722]](_0x39abx4))):this[_0x53bb[2211]](_0x39abx2,_0x39abx4)&&(_0x39abx3[_0x53bb[761]](_0x39abx4,null!=_0x39abx2[_0x53bb[253]]&&mxEvent[_0x53bb[728]](_0x39abx4)==_0x39abx2[_0x53bb[253]][_0x53bb[905]]?null:_0x39abx2[_0x53bb[246]]),mxEvent[_0x53bb[722]](_0x39abx4))}))};mxCellRenderer[_0x53bb[202]][_0x53bb[2217]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[2182]](_0x39abx2);if(null==_0x39abx2[_0x53bb[963]]&&null!=_0x39abx4&&(mxUtils[_0x53bb[1331]](_0x39abx4)||0<_0x39abx4[_0x53bb[67]])){this[_0x53bb[2184]](_0x39abx2,_0x39abx4)}else {if(null!=_0x39abx2[_0x53bb[963]]&&(null==_0x39abx4||0==_0x39abx4[_0x53bb[67]])){_0x39abx2[_0x53bb[963]][_0x53bb[515]](),_0x39abx2[_0x53bb[963]]=null}};if(null!=_0x39abx2[_0x53bb[963]]){var _0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx9=_0x39abx5[_0x53bb[2131]](_0x39abx2[_0x53bb[246]]),_0x39abx5=_0x39abx5[_0x53bb[2130]](_0x39abx2[_0x53bb[246]]),_0x39abxa=this[_0x53bb[2218]](_0x39abx2);if(_0x39abx3||_0x39abx2[_0x53bb[963]][_0x53bb[131]]!=_0x39abx4||_0x39abx2[_0x53bb[963]][_0x53bb[2131]]!=_0x39abx9||_0x39abx2[_0x53bb[963]][_0x53bb[2219]]!=_0x39abx5||_0x39abx2[_0x53bb[963]][_0x53bb[255]]!=_0x39abx2[_0x53bb[441]][_0x53bb[255]]||!_0x39abx2[_0x53bb[963]][_0x53bb[1562]][_0x53bb[237]](_0x39abxa)){_0x39abx2[_0x53bb[963]][_0x53bb[131]]=_0x39abx4,_0x39abx2[_0x53bb[963]][_0x53bb[1562]]=_0x39abxa,_0x39abx2[_0x53bb[963]][_0x53bb[255]]=this[_0x53bb[2220]](_0x39abx2),_0x39abx2[_0x53bb[963]][_0x53bb[2131]]=_0x39abx9,_0x39abx2[_0x53bb[963]][_0x53bb[2219]]=_0x39abx5,_0x39abx2[_0x53bb[963]][_0x53bb[258]]()}}};mxCellRenderer[_0x53bb[202]][_0x53bb[2220]]=function(_0x39abx2){return _0x39abx2[_0x53bb[441]][_0x53bb[255]]};mxCellRenderer[_0x53bb[202]][_0x53bb[2218]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx4=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx5=_0x39abx3[_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]),_0x39abx9= new mxRectangle(_0x39abx2[_0x53bb[2079]][_0x53bb[235]],_0x39abx2[_0x53bb[2079]][_0x53bb[236]]);_0x39abx2[_0x53bb[963]][_0x53bb[1672]]();_0x39abx5?(_0x39abx5=_0x39abx2[_0x53bb[963]][_0x53bb[1673]](),_0x39abx9[_0x53bb[235]]+=_0x39abx5[_0x53bb[235]]*_0x39abx4,_0x39abx9[_0x53bb[236]]+=_0x39abx5[_0x53bb[236]]*_0x39abx4,_0x39abx3=_0x39abx3[_0x53bb[1198]](_0x39abx2[_0x53bb[246]]),null!=_0x39abx3&&(_0x39abx9[_0x53bb[117]]=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[963]][_0x53bb[1655]][_0x53bb[235]]*_0x39abx3[_0x53bb[117]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[659]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[661]]*_0x39abx4),_0x39abx9[_0x53bb[119]]=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[963]][_0x53bb[1655]][_0x53bb[236]]*_0x39abx3[_0x53bb[119]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[658]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[660]]*_0x39abx4))):(_0x39abx2[_0x53bb[963]][_0x53bb[1590]]()&&(_0x39abx5=_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[235]]=_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[236]]=_0x39abx5),_0x39abx9[_0x53bb[235]]+=_0x39abx2[_0x53bb[235]],_0x39abx9[_0x53bb[236]]+=_0x39abx2[_0x53bb[236]],_0x39abx9[_0x53bb[117]]=Math[_0x53bb[160]](1,_0x39abx2[_0x53bb[117]]),_0x39abx9[_0x53bb[119]]=Math[_0x53bb[160]](1,_0x39abx2[_0x53bb[119]]),_0x39abx3[_0x53bb[1730]](_0x39abx2[_0x53bb[246]])&&(_0x39abx3=_0x39abx3[_0x53bb[1731]](_0x39abx2[_0x53bb[246]]),0<_0x39abx3[_0x53bb[117]]?(_0x39abx5=Math[_0x53bb[243]](_0x39abx9[_0x53bb[117]],_0x39abx3[_0x53bb[117]]*_0x39abx4),_0x39abx2[_0x53bb[253]][_0x53bb[623]]&&(_0x39abx9[_0x53bb[235]]+=_0x39abx9[_0x53bb[117]]-_0x39abx5),_0x39abx9[_0x53bb[117]]=_0x39abx5):0<_0x39abx3[_0x53bb[119]]&&(_0x39abx5=Math[_0x53bb[243]](_0x39abx9[_0x53bb[119]],_0x39abx3[_0x53bb[119]]*_0x39abx4),_0x39abx2[_0x53bb[253]][_0x53bb[624]]&&(_0x39abx9[_0x53bb[236]]+=_0x39abx9[_0x53bb[119]]-_0x39abx5),_0x39abx9[_0x53bb[119]]=_0x39abx5)),this[_0x53bb[2221]](_0x39abx2,_0x39abx9));return _0x39abx9};mxCellRenderer[_0x53bb[202]][_0x53bb[2221]]=function(_0x39abx2,_0x39abx3){if(_0x39abx2[_0x53bb[963]][_0x53bb[1590]]()){var _0x39abx4=(_0x39abx2[_0x53bb[117]]-_0x39abx2[_0x53bb[119]])/2;_0x39abx3[_0x53bb[235]]+=_0x39abx4;_0x39abx3[_0x53bb[236]]-=_0x39abx4;_0x39abx4=_0x39abx3[_0x53bb[117]];_0x39abx3[_0x53bb[117]]=_0x39abx3[_0x53bb[119]];_0x39abx3[_0x53bb[119]]=_0x39abx4};_0x39abx3[_0x53bb[235]]-=_0x39abx2[_0x53bb[963]][_0x53bb[1655]][_0x53bb[235]]*_0x39abx3[_0x53bb[117]];_0x39abx3[_0x53bb[236]]-=_0x39abx2[_0x53bb[963]][_0x53bb[1655]][_0x53bb[236]]*_0x39abx3[_0x53bb[119]];if(_0x53bb[1334]!=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2193]]]){var _0x39abx4=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx5=_0x39abx2[_0x53bb[963]][_0x53bb[1673]]();_0x39abx3[_0x53bb[235]]+=_0x39abx5[_0x53bb[235]]*_0x39abx4;_0x39abx3[_0x53bb[236]]+=_0x39abx5[_0x53bb[236]]*_0x39abx4;_0x39abx3[_0x53bb[117]]=Math[_0x53bb[160]](0,_0x39abx3[_0x53bb[117]]-_0x39abx2[_0x53bb[963]][_0x53bb[659]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[661]]*_0x39abx4);_0x39abx3[_0x53bb[119]]=Math[_0x53bb[160]](0,_0x39abx3[_0x53bb[119]]-_0x39abx2[_0x53bb[963]][_0x53bb[658]]*_0x39abx4-_0x39abx2[_0x53bb[963]][_0x53bb[660]]*_0x39abx4)};var _0x39abx9=_0x39abx2[_0x53bb[963]][_0x53bb[1615]]();if(0!=_0x39abx9&&(null!=_0x39abx2&&_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[251]][_0x53bb[1193]](_0x39abx2[_0x53bb[246]]))&&(_0x39abx4=_0x39abx2[_0x53bb[241]](),_0x39abx5=_0x39abx2[_0x53bb[242]](),_0x39abx3[_0x53bb[235]]!=_0x39abx4||_0x39abx3[_0x53bb[236]]!=_0x39abx5)){_0x39abx9*=Math[_0x53bb[424]]/180,pt=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]]),Math[_0x53bb[426]](_0x39abx9),Math[_0x53bb[427]](_0x39abx9), new mxPoint(_0x39abx4,_0x39abx5)),_0x39abx3[_0x53bb[235]]=pt[_0x53bb[235]],_0x39abx3[_0x53bb[236]]=pt[_0x53bb[236]]}};mxCellRenderer[_0x53bb[202]][_0x53bb[2222]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2162]](_0x39abx2);if(null!=_0x39abx2[_0x53bb[1211]]){var _0x39abx4=mxUtils[_0x53bb[1454]](mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION,0),90),_0x39abx5=mxUtils[_0x53bb[431]](_0x39abx4),_0x39abx9=Math[_0x53bb[426]](_0x39abx5),_0x39abxa=Math[_0x53bb[427]](_0x39abx5);_0x39abx2[_0x53bb[1211]][_0x53bb[209]](function(_0x39abx5,_0x39abx13){var _0x39abx14=_0x39abx13[_0x53bb[2201]][_0x53bb[1799]](_0x39abx2);if(!_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]])&&null!=_0x39abx2[_0x53bb[253]]&&0!=_0x39abx4){var _0x39abx15=_0x39abx14[_0x53bb[241]](),_0x39abx16=_0x39abx14[_0x53bb[242]](),_0x39abx16=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx15,_0x39abx16),_0x39abx9,_0x39abxa, new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]())),_0x39abx15=_0x39abx16[_0x53bb[235]],_0x39abx16=_0x39abx16[_0x53bb[236]];_0x39abx14[_0x53bb[235]]=Math[_0x53bb[488]](_0x39abx15-_0x39abx14[_0x53bb[117]]/2);_0x39abx14[_0x53bb[236]]=Math[_0x53bb[488]](_0x39abx16-_0x39abx14[_0x53bb[119]]/2)};if(_0x39abx3||null==_0x39abx13[_0x53bb[1562]]||_0x39abx13[_0x53bb[255]]!=_0x39abx2[_0x53bb[441]][_0x53bb[255]]||!_0x39abx13[_0x53bb[1562]][_0x53bb[237]](_0x39abx14)){_0x39abx13[_0x53bb[1562]]=_0x39abx14,_0x39abx13[_0x53bb[255]]=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx13[_0x53bb[258]]()}})}};mxCellRenderer[_0x53bb[202]][_0x53bb[2223]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2[_0x53bb[2207]]){var _0x39abx4=this[_0x53bb[2224]](_0x39abx2),_0x39abx5=this[_0x53bb[2152]]?mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION,0):_0x39abx2[_0x53bb[253]][_0x53bb[1615]](),_0x39abx9=_0x39abx2[_0x53bb[441]][_0x53bb[255]];if(_0x39abx3||_0x39abx2[_0x53bb[2207]][_0x53bb[255]]!=_0x39abx9||!_0x39abx2[_0x53bb[2207]][_0x53bb[1562]][_0x53bb[237]](_0x39abx4)||_0x39abx2[_0x53bb[2207]][_0x53bb[603]]!=_0x39abx5){_0x39abx2[_0x53bb[2207]][_0x53bb[603]]=_0x39abx5,_0x39abx2[_0x53bb[2207]][_0x53bb[1562]]=_0x39abx4,_0x39abx2[_0x53bb[2207]][_0x53bb[255]]=_0x39abx9,_0x39abx2[_0x53bb[2207]][_0x53bb[258]]()}}};mxCellRenderer[_0x53bb[202]][_0x53bb[2224]]=function(_0x39abx2){if(null!=_0x39abx2[_0x53bb[2207]]){var _0x39abx3=_0x39abx2[_0x53bb[2207]][_0x53bb[255]],_0x39abx4=_0x39abx2[_0x53bb[2207]][_0x53bb[1562]][_0x53bb[117]]/_0x39abx3,_0x39abx3=_0x39abx2[_0x53bb[2207]][_0x53bb[1562]][_0x53bb[119]]/_0x39abx3,_0x39abx5=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx9=_0x39abx2[_0x53bb[241]](),_0x39abxa=_0x39abx2[_0x53bb[242]]();if(!_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]])&&(_0x39abx9=_0x39abx2[_0x53bb[235]]+_0x39abx4*_0x39abx5,_0x39abxa=_0x39abx2[_0x53bb[236]]+_0x39abx3*_0x39abx5,null!=_0x39abx2[_0x53bb[253]])){var _0x39abx12=_0x39abx2[_0x53bb[253]][_0x53bb[1598]]();if(this[_0x53bb[2152]]){_0x39abx12=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION,0)}else {if(_0x39abx2[_0x53bb[253]][_0x53bb[1590]]()){var _0x39abx13=(_0x39abx2[_0x53bb[117]]-_0x39abx2[_0x53bb[119]])/2,_0x39abx9=_0x39abx9+_0x39abx13,_0x39abxa=_0x39abxa-_0x39abx13}};0!=_0x39abx12&&(_0x39abx13=mxUtils[_0x53bb[431]](_0x39abx12),_0x39abx12=Math[_0x53bb[426]](_0x39abx13),_0x39abx13=Math[_0x53bb[427]](_0x39abx13),_0x39abxa=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx9,_0x39abxa),_0x39abx12,_0x39abx13, new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]())),_0x39abx9=_0x39abxa[_0x53bb[235]],_0x39abxa=_0x39abxa[_0x53bb[236]])};return _0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]), new mxRectangle(Math[_0x53bb[488]](_0x39abx9-_0x39abx4/2*_0x39abx5),Math[_0x53bb[488]](_0x39abxa-_0x39abx3/2*_0x39abx5),Math[_0x53bb[488]](_0x39abx4*_0x39abx5),Math[_0x53bb[488]](_0x39abx3*_0x39abx5))};return null};mxCellRenderer[_0x53bb[202]][_0x53bb[258]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2[_0x53bb[253]]){var _0x39abx5=!1;_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]);reconfigure=null!=_0x39abx3?_0x39abx3:!1;this[_0x53bb[2204]](_0x39abx2);if(_0x39abx2[_0x53bb[2082]]||_0x39abx2[_0x53bb[2081]]){_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2158]]?this[_0x53bb[2166]](_0x39abx2):this[_0x53bb[2167]](_0x39abx2)};if(_0x39abx2[_0x53bb[2082]]||!mxUtils[_0x53bb[2225]](_0x39abx2[_0x53bb[253]][_0x53bb[124]],_0x39abx2[_0x53bb[124]])){this[_0x53bb[2170]](_0x39abx2),_0x39abx3= !0};delete _0x39abx2[_0x53bb[2081]];delete _0x39abx2[_0x53bb[2082]];if(_0x39abx3||null==_0x39abx2[_0x53bb[253]][_0x53bb[1562]]||_0x39abx2[_0x53bb[253]][_0x53bb[255]]!=_0x39abx2[_0x53bb[441]][_0x53bb[255]]||!_0x39abx2[_0x53bb[253]][_0x53bb[1562]][_0x53bb[237]](_0x39abx2)||!mxUtils[_0x53bb[2226]](_0x39abx2[_0x53bb[253]][_0x53bb[1525]],_0x39abx2[_0x53bb[439]])){_0x39abx5= !0,_0x39abx2[_0x53bb[253]][_0x53bb[1525]]=null!=_0x39abx2[_0x53bb[439]]?_0x39abx2[_0x53bb[439]][_0x53bb[1853]]():null,_0x39abx2[_0x53bb[253]][_0x53bb[1562]]= new mxRectangle(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],_0x39abx2[_0x53bb[117]],_0x39abx2[_0x53bb[119]]),_0x39abx2[_0x53bb[253]][_0x53bb[255]]=_0x39abx2[_0x53bb[441]][_0x53bb[255]],null==_0x39abx4||_0x39abx4?_0x39abx2[_0x53bb[253]][_0x53bb[258]]():_0x39abx2[_0x53bb[253]][_0x53bb[1577]]()};if(null==_0x39abx4||_0x39abx4){this[_0x53bb[2217]](_0x39abx2,_0x39abx5),this[_0x53bb[2222]](_0x39abx2,_0x39abx5),this[_0x53bb[2223]](_0x39abx2,_0x39abx5)}}};mxCellRenderer[_0x53bb[202]][_0x53bb[515]]=function(_0x39abx2){null!=_0x39abx2[_0x53bb[253]]&&(null!=_0x39abx2[_0x53bb[963]]&&(_0x39abx2[_0x53bb[963]][_0x53bb[515]](),_0x39abx2[_0x53bb[963]]=null),null!=_0x39abx2[_0x53bb[1211]]&&(_0x39abx2[_0x53bb[1211]][_0x53bb[209]](function(_0x39abx2,_0x39abx4){_0x39abx4[_0x53bb[515]]()}),_0x39abx2[_0x53bb[1211]]=null),null!=_0x39abx2[_0x53bb[2207]]&&(_0x39abx2[_0x53bb[2207]][_0x53bb[515]](),_0x39abx2[_0x53bb[2207]]=null),_0x39abx2[_0x53bb[253]][_0x53bb[515]](),_0x39abx2[_0x53bb[253]]=null)};var mxEdgeStyle={EntityRelation:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx2[_0x53bb[441]],_0x39abx12=_0x39abxa[_0x53bb[1179]];_0x39abx5=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_SEGMENT,mxConstants.ENTITY_SEGMENT)*_0x39abxa[_0x53bb[255]];var _0x39abx13=_0x39abx2[_0x53bb[439]],_0x39abx14=_0x39abx13[0],_0x39abx15=_0x39abx13[_0x39abx13[_0x53bb[67]]-1],_0x39abx13=!1;if(null!=_0x39abx14){_0x39abx3= new mxCellState,_0x39abx3[_0x53bb[235]]=_0x39abx14[_0x53bb[235]],_0x39abx3[_0x53bb[236]]=_0x39abx14[_0x53bb[236]]}else {if(null!=_0x39abx3){var _0x39abx16=mxUtils[_0x53bb[2227]](_0x39abx3,_0x39abx2,!0,mxConstants.DIRECTION_MASK_NONE);_0x39abx16!=mxConstants[_0x53bb[434]]?_0x39abx13=_0x39abx16==mxConstants[_0x53bb[436]]:(_0x39abx14=_0x39abx12[_0x53bb[1198]](_0x39abx3[_0x53bb[246]]),_0x39abx14[_0x53bb[1500]]?_0x39abx13=0.5>=_0x39abx14[_0x53bb[235]]:null!=_0x39abx4&&(_0x39abx13=_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]<_0x39abx3[_0x53bb[235]]))}else {return}};_0x39abx14= !0;null!=_0x39abx15?(_0x39abx4= new mxCellState,_0x39abx4[_0x53bb[235]]=_0x39abx15[_0x53bb[235]],_0x39abx4[_0x53bb[236]]=_0x39abx15[_0x53bb[236]]):null!=_0x39abx4&&(_0x39abx16=mxUtils[_0x53bb[2227]](_0x39abx4,_0x39abx2,!1,mxConstants.DIRECTION_MASK_NONE),_0x39abx16!=mxConstants[_0x53bb[434]]?_0x39abx14=_0x39abx16==mxConstants[_0x53bb[436]]:(_0x39abx2=_0x39abx12[_0x53bb[1198]](_0x39abx4[_0x53bb[246]]),_0x39abx2[_0x53bb[1500]]?_0x39abx14=0.5>=_0x39abx2[_0x53bb[235]]:null!=_0x39abx3&&(_0x39abx14=_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]]<_0x39abx4[_0x53bb[235]])));null!=_0x39abx3&&null!=_0x39abx4&&(_0x39abx2=_0x39abx13?_0x39abx3[_0x53bb[235]]:_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx3=_0x39abxa[_0x53bb[2228]](_0x39abx3),_0x39abx12=_0x39abx14?_0x39abx4[_0x53bb[235]]:_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]],_0x39abx4=_0x39abxa[_0x53bb[2228]](_0x39abx4),_0x39abxa= new mxPoint(_0x39abx2+(_0x39abx13?-_0x39abx5:_0x39abx5),_0x39abx3),_0x39abx15= new mxPoint(_0x39abx12+(_0x39abx14?-_0x39abx5:_0x39abx5),_0x39abx4),_0x39abx13==_0x39abx14?(_0x39abx5=_0x39abx13?Math[_0x53bb[243]](_0x39abx2,_0x39abx12)-_0x39abx5:Math[_0x53bb[160]](_0x39abx2,_0x39abx12)+_0x39abx5,_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx5,_0x39abx3)),_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx5,_0x39abx4))):(_0x39abxa[_0x53bb[235]]<_0x39abx15[_0x53bb[235]]==_0x39abx13?(_0x39abx5=_0x39abx3+(_0x39abx4-_0x39abx3)/2,_0x39abx9[_0x53bb[207]](_0x39abxa),_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abxa[_0x53bb[235]],_0x39abx5)),_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx15[_0x53bb[235]],_0x39abx5))):_0x39abx9[_0x53bb[207]](_0x39abxa),_0x39abx9[_0x53bb[207]](_0x39abx15)))},Loop:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx3){_0x39abx4=_0x39abx2[_0x53bb[441]];var _0x39abxa=_0x39abx4[_0x53bb[1179]];_0x39abx5=null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]?_0x39abx5[0]:null;null!=_0x39abx5&&(_0x39abx5=_0x39abx4[_0x53bb[2229]](_0x39abx2,_0x39abx5),mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx5[_0x53bb[235]],_0x39abx5[_0x53bb[236]])&&(_0x39abx5=null));var _0x39abx12=0,_0x39abx13=0,_0x39abx14=0,_0x39abx15=0,_0x39abxa=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_SEGMENT,_0x39abxa[_0x53bb[1020]])*_0x39abx4[_0x53bb[255]];_0x39abx2=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_WEST);_0x39abx2==mxConstants[_0x53bb[1358]]||_0x39abx2==mxConstants[_0x53bb[1354]]?(_0x39abx12=_0x39abx4[_0x53bb[2230]](_0x39abx3),_0x39abx13=_0x39abxa):(_0x39abx14=_0x39abx4[_0x53bb[2228]](_0x39abx3),_0x39abx15=_0x39abxa);null==_0x39abx5||_0x39abx5[_0x53bb[235]]<_0x39abx3[_0x53bb[235]]||_0x39abx5[_0x53bb[235]]>_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]]?null!=_0x39abx5?(_0x39abx12=_0x39abx5[_0x53bb[235]],_0x39abx15=Math[_0x53bb[160]](Math[_0x53bb[425]](_0x39abx14-_0x39abx5[_0x53bb[236]]),_0x39abx15)):_0x39abx2==mxConstants[_0x53bb[1358]]?_0x39abx14=_0x39abx3[_0x53bb[236]]-2*_0x39abx13:_0x39abx2==mxConstants[_0x53bb[1354]]?_0x39abx14=_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]]+2*_0x39abx13:_0x39abx12=_0x39abx2==mxConstants[_0x53bb[1356]]?_0x39abx3[_0x53bb[235]]-2*_0x39abx15:_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]]+2*_0x39abx15:null!=_0x39abx5&&(_0x39abx12=_0x39abx4[_0x53bb[2230]](_0x39abx3),_0x39abx13=Math[_0x53bb[160]](Math[_0x53bb[425]](_0x39abx12-_0x39abx5[_0x53bb[235]]),_0x39abx15),_0x39abx14=_0x39abx5[_0x53bb[236]],_0x39abx15=0);_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx12-_0x39abx13,_0x39abx14-_0x39abx15));_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx12+_0x39abx13,_0x39abx14+_0x39abx15))}},ElbowConnector:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]?_0x39abx5[0]:null,_0x39abx12=!1,_0x39abx13=!1;if(null!=_0x39abx3&&null!=_0x39abx4){if(null!=_0x39abxa){var _0x39abx14=Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]),_0x39abx15=Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]),_0x39abx13=Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]),_0x39abx16=Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]),_0x39abxa=_0x39abx2[_0x53bb[441]][_0x53bb[2229]](_0x39abx2,_0x39abxa),_0x39abx12=_0x39abxa[_0x53bb[236]]<_0x39abx13||_0x39abxa[_0x53bb[236]]>_0x39abx16,_0x39abx13=_0x39abxa[_0x53bb[235]]<_0x39abx14||_0x39abxa[_0x53bb[235]]>_0x39abx15}else {_0x39abx14=Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]),_0x39abx15=Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]),_0x39abx12=_0x39abx14==_0x39abx15,_0x39abx12||(_0x39abx13=Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]),_0x39abx16=Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]),_0x39abx13=_0x39abx13==_0x39abx16)}};!_0x39abx13&&(_0x39abx12||_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2231]]]==mxConstants[_0x53bb[2232]])?mxEdgeStyle.TopToBottom(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9):mxEdgeStyle.SideToSide(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)},SideToSide:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx2[_0x53bb[441]];_0x39abx5=null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]?_0x39abx5[0]:null;var _0x39abx12=_0x39abx2[_0x53bb[439]],_0x39abx13=_0x39abx12[0],_0x39abx12=_0x39abx12[_0x39abx12[_0x53bb[67]]-1];null!=_0x39abx5&&(_0x39abx5=_0x39abxa[_0x53bb[2229]](_0x39abx2,_0x39abx5));null!=_0x39abx13&&(_0x39abx3= new mxCellState,_0x39abx3[_0x53bb[235]]=_0x39abx13[_0x53bb[235]],_0x39abx3[_0x53bb[236]]=_0x39abx13[_0x53bb[236]]);null!=_0x39abx12&&(_0x39abx4= new mxCellState,_0x39abx4[_0x53bb[235]]=_0x39abx12[_0x53bb[235]],_0x39abx4[_0x53bb[236]]=_0x39abx12[_0x53bb[236]]);null!=_0x39abx3&&null!=_0x39abx4&&(_0x39abx2=Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]),_0x39abx13=Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]),_0x39abx2=null!=_0x39abx5?_0x39abx5[_0x53bb[235]]:_0x39abx13+(_0x39abx2-_0x39abx13)/2,_0x39abx13=_0x39abxa[_0x53bb[2228]](_0x39abx3),_0x39abxa=_0x39abxa[_0x53bb[2228]](_0x39abx4),null!=_0x39abx5&&(_0x39abx5[_0x53bb[236]]>=_0x39abx3[_0x53bb[236]]&&_0x39abx5[_0x53bb[236]]<=_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]]&&(_0x39abx13=_0x39abx5[_0x53bb[236]]),_0x39abx5[_0x53bb[236]]>=_0x39abx4[_0x53bb[236]]&&_0x39abx5[_0x53bb[236]]<=_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]&&(_0x39abxa=_0x39abx5[_0x53bb[236]])),!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx2,_0x39abx13)&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx2,_0x39abx13)&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abx13)),!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx2,_0x39abxa)&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx2,_0x39abxa)&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abxa)),1==_0x39abx9[_0x53bb[67]]&&(null!=_0x39abx5?!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx2,_0x39abx5[_0x53bb[236]])&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx2,_0x39abx5[_0x53bb[236]])&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abx5[_0x53bb[236]])):(_0x39abxa=Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]),_0x39abx3=Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]),_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abxa+(_0x39abx3-_0x39abxa)/2)))))},TopToBottom:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx2[_0x53bb[441]];_0x39abx5=null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]?_0x39abx5[0]:null;var _0x39abx12=_0x39abx2[_0x53bb[439]],_0x39abx13=_0x39abx12[0],_0x39abx12=_0x39abx12[_0x39abx12[_0x53bb[67]]-1];null!=_0x39abx5&&(_0x39abx5=_0x39abxa[_0x53bb[2229]](_0x39abx2,_0x39abx5));null!=_0x39abx13&&(_0x39abx3= new mxCellState,_0x39abx3[_0x53bb[235]]=_0x39abx13[_0x53bb[235]],_0x39abx3[_0x53bb[236]]=_0x39abx13[_0x53bb[236]]);null!=_0x39abx12&&(_0x39abx4= new mxCellState,_0x39abx4[_0x53bb[235]]=_0x39abx12[_0x53bb[235]],_0x39abx4[_0x53bb[236]]=_0x39abx12[_0x53bb[236]]);null!=_0x39abx3&&null!=_0x39abx4&&(_0x39abx13=Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]),_0x39abx12=Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]],_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]),_0x39abx2=_0x39abxa[_0x53bb[2230]](_0x39abx3),null!=_0x39abx5&&(_0x39abx5[_0x53bb[235]]>=_0x39abx3[_0x53bb[235]]&&_0x39abx5[_0x53bb[235]]<=_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]])&&(_0x39abx2=_0x39abx5[_0x53bb[235]]),_0x39abx13=null!=_0x39abx5?_0x39abx5[_0x53bb[236]]:_0x39abx12+(_0x39abx13-_0x39abx12)/2,!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx2,_0x39abx13)&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx2,_0x39abx13)&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abx13)),_0x39abx2=null!=_0x39abx5&&_0x39abx5[_0x53bb[235]]>=_0x39abx4[_0x53bb[235]]&&_0x39abx5[_0x53bb[235]]<=_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]?_0x39abx5[_0x53bb[235]]:_0x39abxa[_0x53bb[2230]](_0x39abx4),!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx2,_0x39abx13)&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx2,_0x39abx13)&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx2,_0x39abx13)),1==_0x39abx9[_0x53bb[67]]&&(null!=_0x39abx5&&1==_0x39abx9[_0x53bb[67]]?!mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx5[_0x53bb[235]],_0x39abx13)&&!mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx5[_0x53bb[235]],_0x39abx13)&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx5[_0x53bb[235]],_0x39abx13)):(_0x39abxa=Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]),_0x39abx3=Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]],_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]),_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abxa+(_0x39abx3-_0x39abxa)/2,_0x39abx13)))))},SegmentConnector:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx2[_0x53bb[439]],_0x39abx12=!0,_0x39abx13=null,_0x39abx14=_0x39abxa[0];null==_0x39abx14&&null!=_0x39abx3?_0x39abx14= new mxPoint(_0x39abx2[_0x53bb[441]][_0x53bb[2230]](_0x39abx3),_0x39abx2[_0x53bb[441]][_0x53bb[2228]](_0x39abx3)):null!=_0x39abx14&&(_0x39abx14=_0x39abx14[_0x53bb[238]]());var _0x39abx15=_0x39abxa[_0x53bb[67]]-1;if(null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]){for(var _0x39abx13=_0x39abx2[_0x53bb[441]][_0x53bb[2229]](_0x39abx2,_0x39abx5[0]),_0x39abx16=_0x39abx3,_0x39abx17=_0x39abxa[0],_0x39abx18=!1,_0x39abx19=!1,_0x39abx18=_0x39abx13,_0x39abx1a=_0x39abx5[_0x53bb[67]],_0x39abx1b=0;2>_0x39abx1b;_0x39abx1b++){var _0x39abx1c=null!=_0x39abx17&&_0x39abx17[_0x53bb[235]]==_0x39abx18[_0x53bb[235]],_0x39abx1d=null!=_0x39abx17&&_0x39abx17[_0x53bb[236]]==_0x39abx18[_0x53bb[236]],_0x39abx1e=null!=_0x39abx16&&_0x39abx18[_0x53bb[236]]>=_0x39abx16[_0x53bb[236]]&&_0x39abx18[_0x53bb[236]]<=_0x39abx16[_0x53bb[236]]+_0x39abx16[_0x53bb[119]],_0x39abx16=null!=_0x39abx16&&_0x39abx18[_0x53bb[235]]>=_0x39abx16[_0x53bb[235]]&&_0x39abx18[_0x53bb[235]]<=_0x39abx16[_0x53bb[235]]+_0x39abx16[_0x53bb[117]],_0x39abx18=_0x39abx1d||null==_0x39abx17&&_0x39abx1e,_0x39abx19=_0x39abx1c||null==_0x39abx17&&_0x39abx16;if(null!=_0x39abx17&&!_0x39abx1d&&!_0x39abx1c&&(_0x39abx1e||_0x39abx16)){_0x39abx12=_0x39abx1e?!1:!0;break};if(_0x39abx19||_0x39abx18){_0x39abx12=_0x39abx18;1==_0x39abx1b&&(_0x39abx12=0==_0x39abx5[_0x53bb[67]]%2?_0x39abx18:_0x39abx19);break};_0x39abx16=_0x39abx4;_0x39abx17=_0x39abxa[_0x39abx15];_0x39abx18=_0x39abx2[_0x53bb[441]][_0x53bb[2229]](_0x39abx2,_0x39abx5[_0x39abx1a-1])};_0x39abx12&&(null!=_0x39abxa[0]&&_0x39abxa[0][_0x53bb[236]]!=_0x39abx13[_0x53bb[236]]||null==_0x39abxa[0]&&null!=_0x39abx3&&(_0x39abx13[_0x53bb[236]]<_0x39abx3[_0x53bb[236]]||_0x39abx13[_0x53bb[236]]>_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]]))?_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx14[_0x53bb[235]],_0x39abx13[_0x53bb[236]])):!_0x39abx12&&(null!=_0x39abxa[0]&&_0x39abxa[0][_0x53bb[235]]!=_0x39abx13[_0x53bb[235]]||null==_0x39abxa[0]&&null!=_0x39abx3&&(_0x39abx13[_0x53bb[235]]<_0x39abx3[_0x53bb[235]]||_0x39abx13[_0x53bb[235]]>_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]]))&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx13[_0x53bb[235]],_0x39abx14[_0x53bb[236]]));_0x39abx12?_0x39abx14[_0x53bb[236]]=_0x39abx13[_0x53bb[236]]:_0x39abx14[_0x53bb[235]]=_0x39abx13[_0x53bb[235]];for(_0x39abx1b=0;_0x39abx1b<_0x39abx5[_0x53bb[67]];_0x39abx1b++){_0x39abx12= !_0x39abx12,_0x39abx13=_0x39abx2[_0x53bb[441]][_0x53bb[2229]](_0x39abx2,_0x39abx5[_0x39abx1b]),_0x39abx12?_0x39abx14[_0x53bb[236]]=_0x39abx13[_0x53bb[236]]:_0x39abx14[_0x53bb[235]]=_0x39abx13[_0x53bb[235]],_0x39abx9[_0x53bb[207]](_0x39abx14[_0x53bb[238]]())}}else {_0x39abx13=_0x39abx14,_0x39abx12= !0};_0x39abx14=_0x39abxa[_0x39abx15];null==_0x39abx14&&null!=_0x39abx4&&(_0x39abx14= new mxPoint(_0x39abx2[_0x53bb[441]][_0x53bb[2230]](_0x39abx4),_0x39abx2[_0x53bb[441]][_0x53bb[2228]](_0x39abx4)));_0x39abx12&&(null!=_0x39abxa[_0x39abx15]&&_0x39abxa[_0x39abx15][_0x53bb[236]]!=_0x39abx13[_0x53bb[236]]||null==_0x39abxa[_0x39abx15]&&null!=_0x39abx4&&(_0x39abx13[_0x53bb[236]]<_0x39abx4[_0x53bb[236]]||_0x39abx13[_0x53bb[236]]>_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]))?_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx14[_0x53bb[235]],_0x39abx13[_0x53bb[236]])):!_0x39abx12&&(null!=_0x39abxa[_0x39abx15]&&_0x39abxa[_0x39abx15][_0x53bb[235]]!=_0x39abx13[_0x53bb[235]]||null==_0x39abxa[_0x39abx15]&&null!=_0x39abx4&&(_0x39abx13[_0x53bb[235]]<_0x39abx4[_0x53bb[235]]||_0x39abx13[_0x53bb[235]]>_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]))&&_0x39abx9[_0x53bb[207]]( new mxPoint(_0x39abx13[_0x53bb[235]],_0x39abx14[_0x53bb[236]]));if(null==_0x39abxa[0]&&null!=_0x39abx3){for(;1<_0x39abx9[_0x53bb[67]]&&mxUtils[_0x53bb[442]](_0x39abx3,_0x39abx9[1][_0x53bb[235]],_0x39abx9[1][_0x53bb[236]]);){_0x39abx9=_0x39abx9[_0x53bb[300]](1,1)}};if(null==_0x39abxa[_0x39abx15]&&null!=_0x39abx4){for(;1<_0x39abx9[_0x53bb[67]]&&mxUtils[_0x53bb[442]](_0x39abx4,_0x39abx9[_0x39abx9[_0x53bb[67]]-1][_0x53bb[235]],_0x39abx9[_0x39abx9[_0x53bb[67]]-1][_0x53bb[236]]);){_0x39abx9=_0x39abx9[_0x53bb[300]](_0x39abx9[_0x53bb[67]]-1,1)}}},orthBuffer:10,dirVectors:[[-1,0],[0,-1],[1,0],[0,1],[-1,0],[0,-1],[1,0]],wayPoints1:[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],routePatterns:[[[513,2308,2081,2562],[513,1090,514,2184,2114,2561],[513,1090,514,2564,2184,2562],[513,2308,2561,1090,514,2568,2308]],[[514,1057,513,2308,2081,2562],[514,2184,2114,2561],[514,2184,2562,1057,513,2564,2184],[514,1057,513,2568,2308,2561]],[[1090,514,1057,513,2308,2081,2562],[2114,2561],[1090,2562,1057,513,2564,2184],[1090,514,1057,513,2308,2561,2568]],[[2081,2562],[1057,513,1090,514,2184,2114,2561],[1057,513,1090,514,2184,2562,2564],[1057,2561,1090,514,2568,2308]]],inlineRoutePatterns:[[null,[2114,2568],null,null],[null,[514,2081,2114,2568],null,null],[null,[2114,2561],null,null],[[2081,2562],[1057,2114,2568],[2184,2562],null]],vertexSeperations:[],limits:[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]],LEFT_MASK:32,TOP_MASK:64,RIGHT_MASK:128,BOTTOM_MASK:256,LEFT:1,TOP:2,RIGHT:4,BOTTOM:8,SIDE_MASK:480,CENTER_MASK:512,SOURCE_MASK:1024,TARGET_MASK:2048,VERTEX_MASK:3072,OrthConnector:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=_0x39abx2[_0x53bb[441]][_0x53bb[1179]],_0x39abx12=null==_0x39abx3?!1:_0x39abxa[_0x53bb[502]]()[_0x53bb[250]](_0x39abx3[_0x53bb[246]]),_0x39abxa=null==_0x39abx4?!1:_0x39abxa[_0x53bb[502]]()[_0x53bb[250]](_0x39abx4[_0x53bb[246]]);if(null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]||_0x39abx12||_0x39abxa){mxEdgeStyle.SegmentConnector(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)}else {_0x39abx5=_0x39abx2[_0x53bb[439]];var _0x39abx13=_0x39abx5[0],_0x39abx14=_0x39abx5[_0x39abx5[_0x53bb[67]]-1];_0x39abx5=null!=_0x39abx3?_0x39abx3[_0x53bb[235]]:_0x39abx13[_0x53bb[235]];var _0x39abx12=null!=_0x39abx3?_0x39abx3[_0x53bb[236]]:_0x39abx13[_0x53bb[236]],_0x39abx15=null!=_0x39abx3?_0x39abx3[_0x53bb[117]]:1,_0x39abx16=null!=_0x39abx3?_0x39abx3[_0x53bb[119]]:1,_0x39abx17=null!=_0x39abx4?_0x39abx4[_0x53bb[235]]:_0x39abx14[_0x53bb[235]],_0x39abx18=null!=_0x39abx4?_0x39abx4[_0x53bb[236]]:_0x39abx14[_0x53bb[236]],_0x39abx19=null!=_0x39abx4?_0x39abx4[_0x53bb[117]]:1,_0x39abx1a=null!=_0x39abx4?_0x39abx4[_0x53bb[119]]:1,_0x39abxa=_0x39abx2[_0x53bb[441]][_0x53bb[255]]*mxEdgeStyle[_0x53bb[2233]],_0x39abx1b=[mxConstants[_0x53bb[2234]],mxConstants[_0x53bb[2234]]];null!=_0x39abx3&&(_0x39abx1b[0]=mxUtils[_0x53bb[2227]](_0x39abx3,_0x39abx2,!0,mxConstants.DIRECTION_MASK_ALL));null!=_0x39abx4&&(_0x39abx1b[1]=mxUtils[_0x53bb[2227]](_0x39abx4,_0x39abx2,!1,mxConstants.DIRECTION_MASK_ALL));_0x39abx2=[0,0];_0x39abx5=[[_0x39abx5,_0x39abx12,_0x39abx15,_0x39abx16],[_0x39abx17,_0x39abx18,_0x39abx19,_0x39abx1a]];for(_0x39abx15=0;2>_0x39abx15;_0x39abx15++){mxEdgeStyle[_0x53bb[2235]][_0x39abx15][1]=_0x39abx5[_0x39abx15][0]-_0x39abxa,mxEdgeStyle[_0x53bb[2235]][_0x39abx15][2]=_0x39abx5[_0x39abx15][1]-_0x39abxa,mxEdgeStyle[_0x53bb[2235]][_0x39abx15][4]=_0x39abx5[_0x39abx15][0]+_0x39abx5[_0x39abx15][2]+_0x39abxa,mxEdgeStyle[_0x53bb[2235]][_0x39abx15][8]=_0x39abx5[_0x39abx15][1]+_0x39abx5[_0x39abx15][3]+_0x39abxa};_0x39abx15=_0x39abx5[0][0]+_0x39abx5[0][2]/2-(_0x39abx5[1][0]+_0x39abx5[1][2]/2);_0x39abx16=_0x39abx5[0][1]+_0x39abx5[0][3]/2-(_0x39abx5[1][1]+_0x39abx5[1][3]/2);_0x39abx12=0;0>_0x39abx15?_0x39abx12=0>_0x39abx16?2:1:0>=_0x39abx16&&(_0x39abx12=3,0==_0x39abx15&&(_0x39abx12=2));_0x39abx16=null;null!=_0x39abx3&&(_0x39abx16=_0x39abx13);_0x39abx3=[[0.5,0.5],[0.5,0.5]];for(_0x39abx15=0;2>_0x39abx15;_0x39abx15++){null!=_0x39abx16&&(_0x39abx3[_0x39abx15][0]=(_0x39abx16[_0x53bb[235]]-_0x39abx5[_0x39abx15][0])/_0x39abx5[_0x39abx15][2],0.01>_0x39abx3[_0x39abx15][0]?_0x39abx2[_0x39abx15]=mxConstants[_0x53bb[436]]:0.99<_0x39abx3[_0x39abx15][0]&&(_0x39abx2[_0x39abx15]=mxConstants[_0x53bb[438]]),_0x39abx3[_0x39abx15][1]=(_0x39abx16[_0x53bb[236]]-_0x39abx5[_0x39abx15][1])/_0x39abx5[_0x39abx15][3],0.01>_0x39abx3[_0x39abx15][1]?_0x39abx2[_0x39abx15]=mxConstants[_0x53bb[435]]:0.99<_0x39abx3[_0x39abx15][1]&&(_0x39abx2[_0x39abx15]=mxConstants[_0x53bb[437]])),_0x39abx16=null,null!=_0x39abx4&&(_0x39abx16=_0x39abx14)};_0x39abx15=_0x39abx5[0][1]-(_0x39abx5[1][1]+_0x39abx5[1][3]);_0x39abx16=_0x39abx5[0][0]-(_0x39abx5[1][0]+_0x39abx5[1][2]);_0x39abx17=_0x39abx5[1][1]-(_0x39abx5[0][1]+_0x39abx5[0][3]);_0x39abx18=_0x39abx5[1][0]-(_0x39abx5[0][0]+_0x39abx5[0][2]);mxEdgeStyle[_0x53bb[2236]][1]=Math[_0x53bb[160]](_0x39abx16-2*_0x39abxa,0);mxEdgeStyle[_0x53bb[2236]][2]=Math[_0x53bb[160]](_0x39abx15-2*_0x39abxa,0);mxEdgeStyle[_0x53bb[2236]][4]=Math[_0x53bb[160]](_0x39abx17-2*_0x39abxa,0);mxEdgeStyle[_0x53bb[2236]][3]=Math[_0x53bb[160]](_0x39abx18-2*_0x39abxa,0);_0x39abx4=[];_0x39abx13=[];_0x39abx14=[];_0x39abx13[0]=_0x39abx16>=_0x39abx18?mxConstants[_0x53bb[436]]:mxConstants[_0x53bb[438]];_0x39abx14[0]=_0x39abx15>=_0x39abx17?mxConstants[_0x53bb[435]]:mxConstants[_0x53bb[437]];_0x39abx13[1]=mxUtils[_0x53bb[2237]](_0x39abx13[0]);_0x39abx14[1]=mxUtils[_0x53bb[2237]](_0x39abx14[0]);_0x39abx16=_0x39abx16>=_0x39abx18?_0x39abx16:_0x39abx18;_0x39abx17=_0x39abx15>=_0x39abx17?_0x39abx15:_0x39abx17;_0x39abx18=[[0,0],[0,0]];_0x39abx19= !1;for(_0x39abx15=0;2>_0x39abx15;_0x39abx15++){0==_0x39abx2[_0x39abx15]&&(0==(_0x39abx13[_0x39abx15]&_0x39abx1b[_0x39abx15])&&(_0x39abx13[_0x39abx15]=mxUtils[_0x53bb[2237]](_0x39abx13[_0x39abx15])),0==(_0x39abx14[_0x39abx15]&_0x39abx1b[_0x39abx15])&&(_0x39abx14[_0x39abx15]=mxUtils[_0x53bb[2237]](_0x39abx14[_0x39abx15])),_0x39abx18[_0x39abx15][0]=_0x39abx14[_0x39abx15],_0x39abx18[_0x39abx15][1]=_0x39abx13[_0x39abx15])};_0x39abx17>2*_0x39abxa&&_0x39abx16>2*_0x39abxa&&(0<(_0x39abx13[0]&_0x39abx1b[0])&&0<(_0x39abx14[1]&_0x39abx1b[1])?(_0x39abx18[0][0]=_0x39abx13[0],_0x39abx18[0][1]=_0x39abx14[0],_0x39abx18[1][0]=_0x39abx14[1],_0x39abx18[1][1]=_0x39abx13[1],_0x39abx19= !0):0<(_0x39abx14[0]&_0x39abx1b[0])&&0<(_0x39abx13[1]&_0x39abx1b[1])&&(_0x39abx18[0][0]=_0x39abx14[0],_0x39abx18[0][1]=_0x39abx13[0],_0x39abx18[1][0]=_0x39abx13[1],_0x39abx18[1][1]=_0x39abx14[1],_0x39abx19= !0));_0x39abx17>2*_0x39abxa&&!_0x39abx19&&(_0x39abx18[0][0]=_0x39abx14[0],_0x39abx18[0][1]=_0x39abx13[0],_0x39abx18[1][0]=_0x39abx14[1],_0x39abx18[1][1]=_0x39abx13[1],_0x39abx19= !0);_0x39abx16>2*_0x39abxa&&!_0x39abx19&&(_0x39abx18[0][0]=_0x39abx13[0],_0x39abx18[0][1]=_0x39abx14[0],_0x39abx18[1][0]=_0x39abx13[1],_0x39abx18[1][1]=_0x39abx14[1]);for(_0x39abx15=0;2>_0x39abx15;_0x39abx15++){if(0==_0x39abx2[_0x39abx15]&&(0==(_0x39abx18[_0x39abx15][0]&_0x39abx1b[_0x39abx15])&&(_0x39abx18[_0x39abx15][0]=_0x39abx18[_0x39abx15][1]),_0x39abx4[_0x39abx15]=_0x39abx18[_0x39abx15][0]&_0x39abx1b[_0x39abx15],_0x39abx4[_0x39abx15]|=(_0x39abx18[_0x39abx15][1]&_0x39abx1b[_0x39abx15])<<8,_0x39abx4[_0x39abx15]|=(_0x39abx18[1-_0x39abx15][_0x39abx15]&_0x39abx1b[_0x39abx15])<<16,_0x39abx4[_0x39abx15]|=(_0x39abx18[1-_0x39abx15][1-_0x39abx15]&_0x39abx1b[_0x39abx15])<<24,0==(_0x39abx4[_0x39abx15]&15)&&(_0x39abx4[_0x39abx15]<<=8),0==(_0x39abx4[_0x39abx15]&3840)&&(_0x39abx4[_0x39abx15]=_0x39abx4[_0x39abx15]&15|_0x39abx4[_0x39abx15]>>8),0==(_0x39abx4[_0x39abx15]&983040)&&(_0x39abx4[_0x39abx15]=_0x39abx4[_0x39abx15]&65535|(_0x39abx4[_0x39abx15]&251658240)>>8),_0x39abx2[_0x39abx15]=_0x39abx4[_0x39abx15]&15,_0x39abx1b[_0x39abx15]==mxConstants[_0x53bb[436]]||_0x39abx1b[_0x39abx15]==mxConstants[_0x53bb[435]]||_0x39abx1b[_0x39abx15]==mxConstants[_0x53bb[438]]||_0x39abx1b[_0x39abx15]==mxConstants[_0x53bb[437]])){_0x39abx2[_0x39abx15]=_0x39abx1b[_0x39abx15]}};_0x39abx15=_0x39abx2[0]==mxConstants[_0x53bb[438]]?3:_0x39abx2[0];_0x39abx1b=_0x39abx2[1]==mxConstants[_0x53bb[438]]?3:_0x39abx2[1];_0x39abx15-=_0x39abx12;_0x39abx1b-=_0x39abx12;1>_0x39abx15&&(_0x39abx15+=4);1>_0x39abx1b&&(_0x39abx1b+=4);_0x39abx1b=mxEdgeStyle[_0x53bb[2238]][_0x39abx15-1][_0x39abx1b-1];mxEdgeStyle[_0x53bb[2239]][0][0]=_0x39abx5[0][0];mxEdgeStyle[_0x53bb[2239]][0][1]=_0x39abx5[0][1];switch(_0x39abx2[0]){case mxConstants[_0x53bb[436]]:mxEdgeStyle[_0x53bb[2239]][0][0]-=_0x39abxa;mxEdgeStyle[_0x53bb[2239]][0][1]+=_0x39abx3[0][1]*_0x39abx5[0][3];break;case mxConstants[_0x53bb[437]]:mxEdgeStyle[_0x53bb[2239]][0][0]+=_0x39abx3[0][0]*_0x39abx5[0][2];mxEdgeStyle[_0x53bb[2239]][0][1]+=_0x39abx5[0][3]+_0x39abxa;break;case mxConstants[_0x53bb[438]]:mxEdgeStyle[_0x53bb[2239]][0][0]+=_0x39abx5[0][2]+_0x39abxa;mxEdgeStyle[_0x53bb[2239]][0][1]+=_0x39abx3[0][1]*_0x39abx5[0][3];break;case mxConstants[_0x53bb[435]]:mxEdgeStyle[_0x53bb[2239]][0][0]+=_0x39abx3[0][0]*_0x39abx5[0][2],mxEdgeStyle[_0x53bb[2239]][0][1]-=_0x39abxa};_0x39abxa=0;_0x39abx13=_0x39abx4=0<(_0x39abx2[0]&(mxConstants[_0x53bb[438]]|mxConstants[_0x53bb[436]]))?0:1;for(_0x39abx15=_0x39abx14=0;_0x39abx15<_0x39abx1b[_0x53bb[67]];_0x39abx15++){_0x39abx14=_0x39abx1b[_0x39abx15]&15;_0x39abx1a=_0x39abx14==mxConstants[_0x53bb[438]]?3:_0x39abx14;_0x39abx1a+=_0x39abx12;4<_0x39abx1a&&(_0x39abx1a-=4);_0x39abx16=mxEdgeStyle[_0x53bb[2240]][_0x39abx1a-1];_0x39abx14=0<_0x39abx1a%2?0:1;_0x39abx14!=_0x39abx4&&(_0x39abxa++,mxEdgeStyle[_0x53bb[2239]][_0x39abxa][0]=mxEdgeStyle[_0x53bb[2239]][_0x39abxa-1][0],mxEdgeStyle[_0x53bb[2239]][_0x39abxa][1]=mxEdgeStyle[_0x53bb[2239]][_0x39abxa-1][1]);var _0x39abx1c=0<(_0x39abx1b[_0x39abx15]&mxEdgeStyle[_0x53bb[2241]]),_0x39abx19=0<(_0x39abx1b[_0x39abx15]&mxEdgeStyle[_0x53bb[2242]]),_0x39abx17=(_0x39abx1b[_0x39abx15]&mxEdgeStyle[_0x53bb[2243]])>>5,_0x39abx17=_0x39abx17<<_0x39abx12;15<_0x39abx17&&(_0x39abx17>>=4);_0x39abx18=0<(_0x39abx1b[_0x39abx15]&mxEdgeStyle[_0x53bb[2244]]);(_0x39abx19||_0x39abx1c)&&9>_0x39abx17?(_0x39abx1a=0,_0x39abx19=_0x39abx19?0:1,_0x39abx1a=_0x39abx18&&0==_0x39abx14?_0x39abx5[_0x39abx19][0]+_0x39abx3[_0x39abx19][0]*_0x39abx5[_0x39abx19][2]:_0x39abx18?_0x39abx5[_0x39abx19][1]+_0x39abx3[_0x39abx19][1]*_0x39abx5[_0x39abx19][3]:mxEdgeStyle[_0x53bb[2235]][_0x39abx19][_0x39abx17],0==_0x39abx14?(_0x39abx17=(_0x39abx1a-mxEdgeStyle[_0x53bb[2239]][_0x39abxa][0])*_0x39abx16[0],0<_0x39abx17&&(mxEdgeStyle[_0x53bb[2239]][_0x39abxa][0]+=_0x39abx16[0]*_0x39abx17)):(_0x39abx17=(_0x39abx1a-mxEdgeStyle[_0x53bb[2239]][_0x39abxa][1])*_0x39abx16[1],0<_0x39abx17&&(mxEdgeStyle[_0x53bb[2239]][_0x39abxa][1]+=_0x39abx16[1]*_0x39abx17))):_0x39abx18&&(mxEdgeStyle[_0x53bb[2239]][_0x39abxa][0]+=_0x39abx16[0]*Math[_0x53bb[425]](mxEdgeStyle[_0x53bb[2236]][_0x39abx1a]/2),mxEdgeStyle[_0x53bb[2239]][_0x39abxa][1]+=_0x39abx16[1]*Math[_0x53bb[425]](mxEdgeStyle[_0x53bb[2236]][_0x39abx1a]/2));0<_0x39abxa&&mxEdgeStyle[_0x53bb[2239]][_0x39abxa][_0x39abx14]==mxEdgeStyle[_0x53bb[2239]][_0x39abxa-1][_0x39abx14]?_0x39abxa--:_0x39abx4=_0x39abx14};for(_0x39abx15=0;_0x39abx15<=_0x39abxa&& !(_0x39abx15==_0x39abxa&&((0<(_0x39abx2[1]&(mxConstants[_0x53bb[438]]|mxConstants[_0x53bb[436]]))?0:1)==_0x39abx13?0:1)!=(_0x39abxa+1)%2);_0x39abx15++){_0x39abx9[_0x53bb[207]]( new mxPoint(mxEdgeStyle[_0x53bb[2239]][_0x39abx15][0],mxEdgeStyle[_0x53bb[2239]][_0x39abx15][1]))}}},getRoutePattern:function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx2[0]==mxConstants[_0x53bb[438]]?3:_0x39abx2[0];_0x39abx2=_0x39abx2[1]==mxConstants[_0x53bb[438]]?3:_0x39abx2[1];_0x39abx9-=_0x39abx3;_0x39abx2-=_0x39abx3;1>_0x39abx9&&(_0x39abx9+=4);1>_0x39abx2&&(_0x39abx2+=4);_0x39abx3=routePatterns[_0x39abx9-1][_0x39abx2-1];if(0==_0x39abx4||0==_0x39abx5){null!=inlineRoutePatterns[_0x39abx9-1][_0x39abx2-1]&&(_0x39abx3=inlineRoutePatterns[_0x39abx9-1][_0x39abx2-1])};return _0x39abx3}},mxStyleRegistry={values:[],putValue:function(_0x39abx2,_0x39abx3){mxStyleRegistry[_0x53bb[2245]][_0x39abx2]=_0x39abx3},getValue:function(_0x39abx2){return mxStyleRegistry[_0x53bb[2245]][_0x39abx2]},getName:function(_0x39abx2){for(var _0x39abx3 in mxStyleRegistry[_0x53bb[2245]]){if(mxStyleRegistry[_0x53bb[2245]][_0x39abx3]==_0x39abx2){return _0x39abx3}};return null}};mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_ELBOW,mxEdgeStyle.ElbowConnector);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_ENTITY_RELATION,mxEdgeStyle.EntityRelation);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_LOOP,mxEdgeStyle.Loop);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_SIDETOSIDE,mxEdgeStyle.SideToSide);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_TOPTOBOTTOM,mxEdgeStyle.TopToBottom);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_ORTHOGONAL,mxEdgeStyle.OrthConnector);mxStyleRegistry[_0x53bb[2246]](mxConstants.EDGESTYLE_SEGMENT,mxEdgeStyle.SegmentConnector);mxStyleRegistry[_0x53bb[2246]](mxConstants.PERIMETER_ELLIPSE,mxPerimeter.EllipsePerimeter);mxStyleRegistry[_0x53bb[2246]](mxConstants.PERIMETER_RECTANGLE,mxPerimeter.RectanglePerimeter);mxStyleRegistry[_0x53bb[2246]](mxConstants.PERIMETER_RHOMBUS,mxPerimeter.RhombusPerimeter);mxStyleRegistry[_0x53bb[2246]](mxConstants.PERIMETER_TRIANGLE,mxPerimeter.TrianglePerimeter);function mxGraphView(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[513]]= new mxPoint;this[_0x53bb[2247]]= new mxRectangle;this[_0x53bb[1214]]= new mxDictionary}mxGraphView[_0x53bb[202]]= new mxEventSource;mxGraphView[_0x53bb[202]][_0x53bb[196]]=mxGraphView;mxGraphView[_0x53bb[202]][_0x53bb[2248]]= new mxPoint;mxGraphView[_0x53bb[202]][_0x53bb[2091]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[819]:_0x53bb[110];mxGraphView[_0x53bb[202]][_0x53bb[2249]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2250]:_0x53bb[110];mxGraphView[_0x53bb[202]][_0x53bb[2251]]= !1;mxGraphView[_0x53bb[202]][_0x53bb[2252]]= !0;mxGraphView[_0x53bb[202]][_0x53bb[2253]]= !0;mxGraphView[_0x53bb[202]][_0x53bb[2254]]= !0;mxGraphView[_0x53bb[202]][_0x53bb[1179]]=null;mxGraphView[_0x53bb[202]][_0x53bb[1741]]=null;mxGraphView[_0x53bb[202]][_0x53bb[2247]]=null;mxGraphView[_0x53bb[202]][_0x53bb[255]]=1;mxGraphView[_0x53bb[202]][_0x53bb[513]]=null;mxGraphView[_0x53bb[202]][_0x53bb[2255]]= !1;mxGraphView[_0x53bb[202]][_0x53bb[517]]=function(){return this[_0x53bb[2247]]};mxGraphView[_0x53bb[202]][_0x53bb[2256]]=function(_0x39abx2){this[_0x53bb[2247]]=_0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[1799]]=function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){if(_0x39abx4[_0x53bb[1193]](_0x39abx2[_0x39abx5])||_0x39abx4[_0x53bb[250]](_0x39abx2[_0x39abx5])){var _0x39abx9=this[_0x53bb[248]](_0x39abx2[_0x39abx5]);null!=_0x39abx9&&(null==_0x39abx3?_0x39abx3= new mxRectangle(_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]]):_0x39abx3[_0x53bb[99]](_0x39abx9))}}};return _0x39abx3};mxGraphView[_0x53bb[202]][_0x53bb[2257]]=function(_0x39abx2){if(this[_0x53bb[1741]]!=_0x39abx2){var _0x39abx3= new mxCurrentRootChange(this,_0x39abx2);_0x39abx3[_0x53bb[350]]();var _0x39abx4= new mxUndoableEdit(this,!1);_0x39abx4[_0x53bb[99]](_0x39abx3);this[_0x53bb[746]]( new mxEventObject(mxEvent.UNDO,_0x53bb[1061],_0x39abx4));this[_0x53bb[1179]][_0x53bb[2258]]()};return _0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[829]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[255]],_0x39abx9= new mxPoint(this[_0x53bb[513]][_0x53bb[235]],this[_0x53bb[513]][_0x53bb[236]]);if(this[_0x53bb[255]]!=_0x39abx2||this[_0x53bb[513]][_0x53bb[235]]!=_0x39abx3||this[_0x53bb[513]][_0x53bb[236]]!=_0x39abx4){this[_0x53bb[255]]=_0x39abx2,this[_0x53bb[513]][_0x53bb[235]]=_0x39abx3,this[_0x53bb[513]][_0x53bb[236]]=_0x39abx4,this[_0x53bb[503]]()&&(this[_0x53bb[2259]](),this[_0x53bb[1179]][_0x53bb[2258]]())};this[_0x53bb[746]]( new mxEventObject(mxEvent.SCALE_AND_TRANSLATE,_0x53bb[255],_0x39abx2,_0x53bb[2260],_0x39abx5,_0x53bb[513],this[_0x53bb[513]],_0x53bb[2261],_0x39abx9))};mxGraphView[_0x53bb[202]][_0x53bb[518]]=function(){return this[_0x53bb[255]]};mxGraphView[_0x53bb[202]][_0x53bb[2262]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[255]];this[_0x53bb[255]]!=_0x39abx2&&(this[_0x53bb[255]]=_0x39abx2,this[_0x53bb[503]]()&&(this[_0x53bb[2259]](),this[_0x53bb[1179]][_0x53bb[2258]]()));this[_0x53bb[746]]( new mxEventObject(mxEvent.SCALE,_0x53bb[255],_0x39abx2,_0x53bb[2260],_0x39abx3))};mxGraphView[_0x53bb[202]][_0x53bb[512]]=function(){return this[_0x53bb[513]]};mxGraphView[_0x53bb[202]][_0x53bb[1147]]=function(_0x39abx2,_0x39abx3){var _0x39abx4= new mxPoint(this[_0x53bb[513]][_0x53bb[235]],this[_0x53bb[513]][_0x53bb[236]]);if(this[_0x53bb[513]][_0x53bb[235]]!=_0x39abx2||this[_0x53bb[513]][_0x53bb[236]]!=_0x39abx3){this[_0x53bb[513]][_0x53bb[235]]=_0x39abx2,this[_0x53bb[513]][_0x53bb[236]]=_0x39abx3,this[_0x53bb[503]]()&&(this[_0x53bb[2259]](),this[_0x53bb[1179]][_0x53bb[2258]]())};this[_0x53bb[746]]( new mxEventObject(mxEvent.TRANSLATE,_0x53bb[513],this[_0x53bb[513]],_0x53bb[2261],_0x39abx4))};mxGraphView[_0x53bb[202]][_0x53bb[802]]=function(){null!=this[_0x53bb[1741]]&&this[_0x53bb[200]]();this[_0x53bb[2259]]()};mxGraphView[_0x53bb[202]][_0x53bb[2259]]=function(){this[_0x53bb[2263]]();this[_0x53bb[2264]]()};mxGraphView[_0x53bb[202]][_0x53bb[200]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx2=_0x39abx2||_0x39abx5[_0x53bb[501]]();_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;this[_0x53bb[2265]](_0x39abx2);if(_0x39abx4&&(_0x39abx3||_0x39abx2!=this[_0x53bb[1741]])){_0x39abx4=_0x39abx5[_0x53bb[262]](_0x39abx2);for(var _0x39abx9=0;_0x39abx9<_0x39abx4;_0x39abx9++){this[_0x53bb[200]](_0x39abx5[_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx3)}}else {this[_0x53bb[2263]](_0x39abx2)}};mxGraphView[_0x53bb[202]][_0x53bb[2263]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx2=_0x39abx2||_0x39abx9[_0x53bb[501]]();_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!1;var _0x39abxa=this[_0x53bb[248]](_0x39abx2);null!=_0x39abxa&&(_0x39abxa[_0x53bb[2080]]= !0,_0x39abx5&&(_0x39abxa[_0x53bb[2082]]= !0));if(_0x39abx3){for(var _0x39abx12=_0x39abx9[_0x53bb[262]](_0x39abx2),_0x39abxa=0;_0x39abxa<_0x39abx12;_0x39abxa++){var _0x39abx13=_0x39abx9[_0x53bb[263]](_0x39abx2,_0x39abxa);this[_0x53bb[2263]](_0x39abx13,_0x39abx3,_0x39abx4,_0x39abx5)}};if(_0x39abx4){_0x39abx5=_0x39abx9[_0x53bb[1707]](_0x39abx2);for(_0x39abxa=0;_0x39abxa<_0x39abx5;_0x39abxa++){this[_0x53bb[2263]](_0x39abx9[_0x53bb[1708]](_0x39abx2,_0x39abxa),_0x39abx3,_0x39abx4)}}};mxGraphView[_0x53bb[202]][_0x53bb[2264]]=function(_0x39abx2){var _0x39abx3=mxLog[_0x53bb[2109]](_0x53bb[2266]);window[_0x53bb[879]]=mxResources[_0x53bb[203]](this[_0x53bb[2249]])||this[_0x53bb[2249]];var _0x39abx4=null;if(this[_0x53bb[2253]]&&null!=this[_0x53bb[510]]&&null==this[_0x53bb[1653]]&&(8==document[_0x53bb[5]]||mxClient[_0x53bb[496]])){_0x39abx4=this[_0x53bb[510]][_0x53bb[124]][_0x53bb[495]];this[_0x53bb[510]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130];var _0x39abx5=document[_0x53bb[55]](_0x53bb[485]);_0x39abx5[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx5[_0x53bb[124]][_0x53bb[493]]=_0x53bb[494];_0x39abx5[_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];_0x39abx5[_0x53bb[124]][_0x53bb[495]]=mxClient[_0x53bb[496]]?_0x53bb[497]:_0x53bb[498];_0x39abx5[_0x53bb[124]][_0x53bb[499]]=_0x53bb[500];document[_0x53bb[112]][_0x53bb[62]](_0x39abx5);this[_0x53bb[1653]]=_0x39abx5};_0x39abx2=_0x39abx2||(null!=this[_0x53bb[1741]]?this[_0x53bb[1741]]:this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]]());this[_0x53bb[2267]](null,_0x39abx2);_0x39abx2=this[_0x53bb[2268]](null,_0x39abx2);null==_0x39abx2&&(_0x39abx2= new mxRectangle);this[_0x53bb[2256]](_0x39abx2);this[_0x53bb[2269]]();null!=_0x39abx4&&(this[_0x53bb[510]][_0x53bb[124]][_0x53bb[495]]=_0x39abx4,document[_0x53bb[112]][_0x53bb[266]](this[_0x53bb[1653]]),this[_0x53bb[1653]]=null);window[_0x53bb[879]]=mxResources[_0x53bb[203]](this[_0x53bb[2091]])||this[_0x53bb[2091]];mxLog[_0x53bb[2110]](_0x53bb[2266],_0x39abx3)};mxGraphView[_0x53bb[202]][_0x53bb[2270]]=function(_0x39abx2){return new mxRectangleShape(_0x39abx2,_0x53bb[1391],_0x53bb[586])};mxGraphView[_0x53bb[202]][_0x53bb[2269]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[2271]]();if(null!=_0x39abx2){if(null==this[_0x53bb[1617]]||this[_0x53bb[1617]][_0x53bb[618]]!=_0x39abx2[_0x53bb[390]]){null!=this[_0x53bb[1617]]&&this[_0x53bb[1617]][_0x53bb[515]]();var _0x39abx3= new mxRectangle(0,0,1,1);this[_0x53bb[1617]]= new mxImageShape(_0x39abx3,_0x39abx2[_0x53bb[390]]);this[_0x53bb[1617]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]];this[_0x53bb[1617]][_0x53bb[176]](this[_0x53bb[2053]]);this[_0x53bb[1617]][_0x53bb[258]]()};this[_0x53bb[2272]](this[_0x53bb[1617]],_0x39abx2)}else {null!=this[_0x53bb[1617]]&&(this[_0x53bb[1617]][_0x53bb[515]](),this[_0x53bb[1617]]=null)};this[_0x53bb[1179]][_0x53bb[2273]]?(_0x39abx3=this[_0x53bb[2274]](),null==this[_0x53bb[2275]]?(this[_0x53bb[2275]]=this[_0x53bb[2270]](_0x39abx3),this[_0x53bb[2275]][_0x53bb[255]]=this[_0x53bb[255]],this[_0x53bb[2275]][_0x53bb[1596]]= !0,this[_0x53bb[2275]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]],this[_0x53bb[2275]][_0x53bb[176]](this[_0x53bb[2053]]),this[_0x53bb[2275]][_0x53bb[258]](),mxEvent[_0x53bb[169]](this[_0x53bb[2275]][_0x53bb[252]],_0x53bb[760],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[761]](_0x39abx2)})),mxEvent[_0x53bb[759]](this[_0x53bb[2275]][_0x53bb[252]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx2))}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){null!=this[_0x53bb[1179]][_0x53bb[2276]]&&this[_0x53bb[1179]][_0x53bb[2276]][_0x53bb[2277]]()&&this[_0x53bb[1179]][_0x53bb[2276]][_0x53bb[801]]();this[_0x53bb[1179]][_0x53bb[1009]]&&!mxEvent[_0x53bb[721]](_0x39abx2)&&this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx2))}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx2))}))):(this[_0x53bb[2275]][_0x53bb[255]]=this[_0x53bb[255]],this[_0x53bb[2275]][_0x53bb[1562]]=_0x39abx3,this[_0x53bb[2275]][_0x53bb[258]]())):null!=this[_0x53bb[2275]]&&(this[_0x53bb[2275]][_0x53bb[515]](),this[_0x53bb[2275]]=null)};mxGraphView[_0x53bb[202]][_0x53bb[2274]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[2013]],_0x39abx3=this[_0x53bb[255]]*this[_0x53bb[1179]][_0x53bb[2012]];return new mxRectangle(this[_0x53bb[255]]*this[_0x53bb[513]][_0x53bb[235]],this[_0x53bb[255]]*this[_0x53bb[513]][_0x53bb[236]],_0x39abx2[_0x53bb[117]]*_0x39abx3,_0x39abx2[_0x53bb[119]]*_0x39abx3)};mxGraphView[_0x53bb[202]][_0x53bb[2272]]=function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[255]]=this[_0x53bb[255]];_0x39abx2[_0x53bb[1562]][_0x53bb[235]]=this[_0x53bb[255]]*this[_0x53bb[513]][_0x53bb[235]];_0x39abx2[_0x53bb[1562]][_0x53bb[236]]=this[_0x53bb[255]]*this[_0x53bb[513]][_0x53bb[236]];_0x39abx2[_0x53bb[1562]][_0x53bb[117]]=this[_0x53bb[255]]*_0x39abx3[_0x53bb[117]];_0x39abx2[_0x53bb[1562]][_0x53bb[119]]=this[_0x53bb[255]]*_0x39abx3[_0x53bb[119]];_0x39abx2[_0x53bb[258]]()};mxGraphView[_0x53bb[202]][_0x53bb[2267]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=this[_0x53bb[248]](_0x39abx3,!0);if(null!=_0x39abx5&&_0x39abx5[_0x53bb[2080]]){if(this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx3)){if(_0x39abx3!=this[_0x53bb[1741]]&&null!=_0x39abx2){_0x39abx5[_0x53bb[2079]][_0x53bb[235]]=0;_0x39abx5[_0x53bb[2079]][_0x53bb[236]]=0;_0x39abx5[_0x53bb[2078]][_0x53bb[235]]=_0x39abx2[_0x53bb[2078]][_0x53bb[235]];_0x39abx5[_0x53bb[2078]][_0x53bb[236]]=_0x39abx2[_0x53bb[2078]][_0x53bb[236]];var _0x39abx9=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx3);if(null!=_0x39abx9){if(!_0x39abx4[_0x53bb[250]](_0x39abx3)){var _0x39abxa=_0x39abx9[_0x53bb[1368]]||this[_0x53bb[2248]];_0x39abx9[_0x53bb[1500]]?(_0x39abx5[_0x53bb[2078]][_0x53bb[235]]+=_0x39abx9[_0x53bb[235]]*_0x39abx2[_0x53bb[117]]/this[_0x53bb[255]]+_0x39abxa[_0x53bb[235]],_0x39abx5[_0x53bb[2078]][_0x53bb[236]]+=_0x39abx9[_0x53bb[236]]*_0x39abx2[_0x53bb[119]]/this[_0x53bb[255]]+_0x39abxa[_0x53bb[236]]):(_0x39abx5[_0x53bb[2079]][_0x53bb[235]]=this[_0x53bb[255]]*_0x39abxa[_0x53bb[235]],_0x39abx5[_0x53bb[2079]][_0x53bb[236]]=this[_0x53bb[255]]*_0x39abxa[_0x53bb[236]],_0x39abx5[_0x53bb[2078]][_0x53bb[235]]+=_0x39abx9[_0x53bb[235]],_0x39abx5[_0x53bb[2078]][_0x53bb[236]]+=_0x39abx9[_0x53bb[236]])};_0x39abx5[_0x53bb[235]]=this[_0x53bb[255]]*(this[_0x53bb[513]][_0x53bb[235]]+_0x39abx5[_0x53bb[2078]][_0x53bb[235]]);_0x39abx5[_0x53bb[236]]=this[_0x53bb[255]]*(this[_0x53bb[513]][_0x53bb[236]]+_0x39abx5[_0x53bb[2078]][_0x53bb[236]]);_0x39abx5[_0x53bb[117]]=this[_0x53bb[255]]*_0x39abx9[_0x53bb[117]];_0x39abx5[_0x53bb[119]]=this[_0x53bb[255]]*_0x39abx9[_0x53bb[119]];if(_0x39abx4[_0x53bb[1193]](_0x39abx3)){if(_0x39abx9[_0x53bb[1500]]&&(_0x39abxa=mxUtils[_0x53bb[431]](_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),0!=_0x39abxa)){var _0x39abx9=Math[_0x53bb[426]](_0x39abxa),_0x39abxa=Math[_0x53bb[427]](_0x39abxa),_0x39abx12= new mxPoint(_0x39abx5[_0x53bb[241]](),_0x39abx5[_0x53bb[242]]()),_0x39abx13= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]()),_0x39abx9=mxUtils[_0x53bb[432]](_0x39abx12,_0x39abx9,_0x39abxa,_0x39abx13);_0x39abx5[_0x53bb[235]]=_0x39abx9[_0x53bb[235]]-_0x39abx5[_0x53bb[117]]/2;_0x39abx5[_0x53bb[236]]=_0x39abx9[_0x53bb[236]]-_0x39abx5[_0x53bb[119]]/2};this[_0x53bb[2279]](_0x39abx5)}}}}else {this[_0x53bb[2265]](_0x39abx3)};_0x39abxa=this[_0x53bb[1179]][_0x53bb[2280]](_0x39abx3);null!=_0x39abxa&&(_0x39abx5[_0x53bb[2078]][_0x53bb[235]]+=_0x39abxa[_0x53bb[235]],_0x39abx5[_0x53bb[2078]][_0x53bb[236]]+=_0x39abxa[_0x53bb[236]])};if(null!=_0x39abx5&&(!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx3)||_0x39abx3==this[_0x53bb[1741]])){_0x39abx9=_0x39abx4[_0x53bb[262]](_0x39abx3);for(_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){_0x39abx12=_0x39abx4[_0x53bb[263]](_0x39abx3,_0x39abxa),this[_0x53bb[2267]](_0x39abx5,_0x39abx12)}}};mxGraphView[_0x53bb[202]][_0x53bb[2279]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);_0x39abx3==mxConstants[_0x53bb[2132]]?_0x39abx2[_0x53bb[2079]][_0x53bb[235]]-=_0x39abx2[_0x53bb[117]]:_0x39abx3==mxConstants[_0x53bb[480]]&&(_0x39abx2[_0x53bb[2079]][_0x53bb[235]]+=_0x39abx2[_0x53bb[117]]);_0x39abx3=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);_0x39abx3==mxConstants[_0x53bb[1687]]?_0x39abx2[_0x53bb[2079]][_0x53bb[236]]-=_0x39abx2[_0x53bb[119]]:_0x39abx3==mxConstants[_0x53bb[482]]&&(_0x39abx2[_0x53bb[2079]][_0x53bb[236]]+=_0x39abx2[_0x53bb[119]])};mxGraphView[_0x53bb[202]][_0x53bb[2268]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=this[_0x53bb[248]](_0x39abx3),_0x39abx9=null;if(null!=_0x39abx5){if(_0x39abx5[_0x53bb[2080]]){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx3);if(null!=_0x39abxa&&_0x39abx4[_0x53bb[250]](_0x39abx3)){var _0x39abx12=this[_0x53bb[248]](this[_0x53bb[1710]](_0x39abx3,!0));_0x39abx5[_0x53bb[2090]](_0x39abx12,!0);if(null!=_0x39abx12&&_0x39abx4[_0x53bb[250]](_0x39abx12[_0x53bb[246]])&&!_0x39abx4[_0x53bb[1720]](_0x39abx12[_0x53bb[246]],_0x39abx3)){var _0x39abx13=this[_0x53bb[248]](_0x39abx4[_0x53bb[1197]](_0x39abx12[_0x53bb[246]]));this[_0x53bb[2268]](_0x39abx13,_0x39abx12[_0x53bb[246]])};var _0x39abx14=this[_0x53bb[248]](this[_0x53bb[1710]](_0x39abx3,!1));_0x39abx5[_0x53bb[2090]](_0x39abx14,!1);null!=_0x39abx14&&(_0x39abx4[_0x53bb[250]](_0x39abx14[_0x53bb[246]])&&!_0x39abx4[_0x53bb[1720]](_0x39abx14[_0x53bb[246]],_0x39abx3))&&(_0x39abx13=this[_0x53bb[248]](_0x39abx4[_0x53bb[1197]](_0x39abx14[_0x53bb[246]])),this[_0x53bb[2268]](_0x39abx13,_0x39abx14[_0x53bb[246]]));this[_0x53bb[2281]](_0x39abx5,_0x39abx12,_0x39abx14);this[_0x53bb[2282]](_0x39abx5,_0x39abxa[_0x53bb[1525]],_0x39abx12,_0x39abx14);this[_0x53bb[2283]](_0x39abx5,_0x39abx12,_0x39abx14);this[_0x53bb[2284]](_0x39abx5);this[_0x53bb[2285]](_0x39abx5)}else {null!=_0x39abxa&&(_0x39abxa[_0x53bb[1500]]&&null!=_0x39abx2&&_0x39abx4[_0x53bb[250]](_0x39abx2[_0x53bb[246]]))&&(_0x39abxa=this[_0x53bb[245]](_0x39abx2,_0x39abxa),null!=_0x39abxa&&(_0x39abx5[_0x53bb[235]]=_0x39abxa[_0x53bb[235]],_0x39abx5[_0x53bb[236]]=_0x39abxa[_0x53bb[236]],_0x39abxa[_0x53bb[235]]=_0x39abxa[_0x53bb[235]]/this[_0x53bb[255]]-this[_0x53bb[513]][_0x53bb[235]],_0x39abxa[_0x53bb[236]]=_0x39abxa[_0x53bb[236]]/this[_0x53bb[255]]-this[_0x53bb[513]][_0x53bb[236]],_0x39abx5[_0x53bb[2078]]=_0x39abxa,this[_0x53bb[2286]](_0x39abx2,_0x39abx5)))};_0x39abx5[_0x53bb[2080]]= !1;_0x39abx3!=this[_0x53bb[1741]]&&this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[258]](_0x39abx5,!1,this[_0x53bb[2287]]())};if(_0x39abx4[_0x53bb[250]](_0x39abx3)||_0x39abx4[_0x53bb[1193]](_0x39abx3)){null!=_0x39abx5[_0x53bb[253]]&&null!=_0x39abx5[_0x53bb[253]][_0x53bb[1563]]&&(_0x39abx9=_0x39abx5[_0x53bb[253]][_0x53bb[1563]][_0x53bb[238]]()),null!=_0x39abx5[_0x53bb[963]]&&!this[_0x53bb[1179]][_0x53bb[2130]](_0x39abx5[_0x53bb[246]])&&null!=_0x39abx5[_0x53bb[963]][_0x53bb[1563]]&&(null!=_0x39abx9?_0x39abx9[_0x53bb[99]](_0x39abx5[_0x53bb[963]][_0x53bb[1563]]):_0x39abx9=_0x39abx5[_0x53bb[963]][_0x53bb[1563]][_0x53bb[238]]())}};if(null!=_0x39abx5&&(!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx3)||_0x39abx3==this[_0x53bb[1741]])){_0x39abxa=_0x39abx4[_0x53bb[262]](_0x39abx3);for(_0x39abx12=0;_0x39abx12<_0x39abxa;_0x39abx12++){_0x39abx13=_0x39abx4[_0x53bb[263]](_0x39abx3,_0x39abx12),_0x39abx13=this[_0x53bb[2268]](_0x39abx5,_0x39abx13),null!=_0x39abx13&&(null==_0x39abx9?_0x39abx9=_0x39abx13:_0x39abx9[_0x53bb[99]](_0x39abx13))}};return _0x39abx9};mxGraphView[_0x53bb[202]][_0x53bb[2286]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx3[_0x53bb[246]];if(!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx4)||_0x39abx4==this[_0x53bb[1741]]){for(var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[262]](_0x39abx4),_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){this[_0x53bb[2267]](_0x39abx3,_0x39abx5[_0x53bb[263]](_0x39abx4,_0x39abxa))}}};mxGraphView[_0x53bb[202]][_0x53bb[2281]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[2289]](_0x39abx2,_0x39abx3,!0,this[_0x53bb[1179]][_0x53bb[2288]](_0x39abx2,_0x39abx3,!0));this[_0x53bb[2289]](_0x39abx2,_0x39abx4,!1,this[_0x53bb[1179]][_0x53bb[2288]](_0x39abx2,_0x39abx4,!1))};mxGraphView[_0x53bb[202]][_0x53bb[2289]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null;null!=_0x39abx5&&(_0x39abx9=this[_0x53bb[1179]][_0x53bb[2290]](_0x39abx3,_0x39abx5));if(null==_0x39abx9&&null==_0x39abx3){_0x39abx3=this[_0x53bb[255]];_0x39abx5=this[_0x53bb[513]];var _0x39abxa=_0x39abx2[_0x53bb[2078]],_0x39abx9=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx2[_0x53bb[246]])[_0x53bb[2006]](_0x39abx4);null!=_0x39abx9&&(_0x39abx9= new mxPoint(_0x39abx3*(_0x39abx5[_0x53bb[235]]+_0x39abx9[_0x53bb[235]]+_0x39abxa[_0x53bb[235]]),_0x39abx3*(_0x39abx5[_0x53bb[236]]+_0x39abx9[_0x53bb[236]]+_0x39abxa[_0x53bb[236]])))};_0x39abx2[_0x53bb[2088]](_0x39abx9,_0x39abx4)};mxGraphView[_0x53bb[202]][_0x53bb[2282]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx2){var _0x39abx9=[];_0x39abx9[_0x53bb[207]](_0x39abx2[_0x53bb[439]][0]);var _0x39abxa=this[_0x53bb[2291]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);if(null!=_0x39abxa){_0x39abx4=this[_0x53bb[2292]](_0x39abx2,_0x39abx4,!0),_0x39abx5=this[_0x53bb[2292]](_0x39abx2,_0x39abx5,!1),_0x39abxa(_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx3,_0x39abx9)}else {if(null!=_0x39abx3){for(_0x39abxa=0;_0x39abxa<_0x39abx3[_0x53bb[67]];_0x39abxa++){null!=_0x39abx3[_0x39abxa]&&(_0x39abx5=mxUtils[_0x53bb[238]](_0x39abx3[_0x39abxa]),_0x39abx9[_0x53bb[207]](this[_0x53bb[2229]](_0x39abx2,_0x39abx5)))}}};_0x39abx3=_0x39abx2[_0x53bb[439]];_0x39abx9[_0x53bb[207]](_0x39abx3[_0x39abx3[_0x53bb[67]]-1]);_0x39abx2[_0x53bb[439]]=_0x39abx9}};mxGraphView[_0x53bb[202]][_0x53bb[2229]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[2078]];return new mxPoint(this[_0x53bb[255]]*(_0x39abx3[_0x53bb[235]]+this[_0x53bb[513]][_0x53bb[235]]+_0x39abx4[_0x53bb[235]]),this[_0x53bb[255]]*(_0x39abx3[_0x53bb[236]]+this[_0x53bb[513]][_0x53bb[236]]+_0x39abx4[_0x53bb[236]]))};mxGraphView[_0x53bb[202]][_0x53bb[2291]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx2=null!=_0x39abx4&&_0x39abx4==_0x39abx5?mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_LOOP,this[_0x53bb[1179]][_0x53bb[2293]]):!mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_NOEDGESTYLE,!1)?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2294]]]:null;_0x53bb[1516]== typeof _0x39abx2&&(_0x39abx3=mxStyleRegistry[_0x53bb[433]](_0x39abx2),null==_0x39abx3&&this[_0x53bb[2295]]()&&(_0x39abx3=mxUtils[_0x53bb[1545]](_0x39abx2)),_0x39abx2=_0x39abx3);return _0x53bb[279]== typeof _0x39abx2?_0x39abx2:null};mxGraphView[_0x53bb[202]][_0x53bb[2283]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[439]],_0x39abx9=_0x39abx5[0];null==_0x39abx5[_0x39abx5[_0x53bb[67]]-1]&&null!=_0x39abx4&&this[_0x53bb[2296]](_0x39abx2,_0x39abx4,_0x39abx3,!1);null==_0x39abx9&&null!=_0x39abx3&&this[_0x53bb[2296]](_0x39abx2,_0x39abx3,_0x39abx4,!0)};mxGraphView[_0x53bb[202]][_0x53bb[2296]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=this[_0x53bb[2292]](_0x39abx2,_0x39abx3,_0x39abx5);var _0x39abx9=this[_0x53bb[2297]](_0x39abx2,_0x39abx4,_0x39abx5),_0x39abxa=this[_0x53bb[1179]][_0x53bb[2298]](_0x39abx2);_0x39abx4=mxUtils[_0x53bb[431]](Number(_0x39abx3[_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]));var _0x39abx12= new mxPoint(_0x39abx3[_0x53bb[241]](),_0x39abx3[_0x53bb[242]]());if(0!=_0x39abx4){var _0x39abx13=Math[_0x53bb[426]](-_0x39abx4),_0x39abx14=Math[_0x53bb[427]](-_0x39abx4),_0x39abx9=mxUtils[_0x53bb[432]](_0x39abx9,_0x39abx13,_0x39abx14,_0x39abx12)};_0x39abx13=parseFloat(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2299]]]||0);_0x39abx13+=parseFloat(_0x39abx2[_0x53bb[124]][_0x39abx5?mxConstants[_0x53bb[2300]]:mxConstants[_0x53bb[2301]]]||0);_0x39abx3=this[_0x53bb[2302]](_0x39abx3,_0x39abx9,0==_0x39abx4&&_0x39abxa,_0x39abx13);0!=_0x39abx4&&(_0x39abx13=Math[_0x53bb[426]](_0x39abx4),_0x39abx14=Math[_0x53bb[427]](_0x39abx4),_0x39abx3=mxUtils[_0x53bb[432]](_0x39abx3,_0x39abx13,_0x39abx14,_0x39abx12));_0x39abx2[_0x53bb[2088]](_0x39abx3,_0x39abx5)};mxGraphView[_0x53bb[202]][_0x53bb[2292]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],_0x39abx4?mxConstants[_0x53bb[2303]]:mxConstants[_0x53bb[2304]]);null!=_0x39abx2&&(_0x39abx2=this[_0x53bb[248]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[736]](_0x39abx2)),null!=_0x39abx2&&(_0x39abx3=_0x39abx2));return _0x39abx3};mxGraphView[_0x53bb[202]][_0x53bb[2302]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null;if(null!=_0x39abx2){var _0x39abxa=this[_0x53bb[2305]](_0x39abx2);if(null!=_0x39abxa&&null!=_0x39abx3&&(_0x39abx5=this[_0x53bb[2087]](_0x39abx2,_0x39abx5),0<_0x39abx5[_0x53bb[117]]||0<_0x39abx5[_0x53bb[119]])){_0x39abx9=_0x39abxa(_0x39abx5,_0x39abx2,_0x39abx3,_0x39abx4)};null==_0x39abx9&&(_0x39abx9=this[_0x53bb[245]](_0x39abx2))};return _0x39abx9};mxGraphView[_0x53bb[202]][_0x53bb[2230]]=function(_0x39abx2){var _0x39abx3=null!=_0x39abx2[_0x53bb[124]]?parseFloat(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2306]]])||0:0;return _0x39abx2[_0x53bb[241]]()+_0x39abx3*_0x39abx2[_0x53bb[117]]};mxGraphView[_0x53bb[202]][_0x53bb[2228]]=function(_0x39abx2){var _0x39abx3=null!=_0x39abx2[_0x53bb[124]]?parseFloat(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2307]]])||0:0;return _0x39abx2[_0x53bb[242]]()+_0x39abx3*_0x39abx2[_0x53bb[119]]};mxGraphView[_0x53bb[202]][_0x53bb[2087]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:0;null!=_0x39abx2&&(_0x39abx3+=parseFloat(_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2299]]]||0));return _0x39abx2[_0x53bb[2087]](_0x39abx3*this[_0x53bb[255]])};mxGraphView[_0x53bb[202]][_0x53bb[2305]]=function(_0x39abx2){_0x39abx2=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2061]]];if(_0x53bb[1516]== typeof _0x39abx2){var _0x39abx3=mxStyleRegistry[_0x53bb[433]](_0x39abx2);null==_0x39abx3&&this[_0x53bb[2295]]()&&(_0x39abx3=mxUtils[_0x53bb[1545]](_0x39abx2));_0x39abx2=_0x39abx3};return _0x53bb[279]== typeof _0x39abx2?_0x39abx2:null};mxGraphView[_0x53bb[202]][_0x53bb[2297]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=_0x39abx2[_0x53bb[439]];var _0x39abx5=null;if(null!=_0x39abx2&&(_0x39abx4||2<_0x39abx2[_0x53bb[67]]||null==_0x39abx3)){_0x39abx5=_0x39abx2[_0x53bb[67]],_0x39abx5=_0x39abx2[_0x39abx4?Math[_0x53bb[243]](1,_0x39abx5-1):Math[_0x53bb[160]](0,_0x39abx5-2)]};null==_0x39abx5&&null!=_0x39abx3&&(_0x39abx5= new mxPoint(_0x39abx3[_0x53bb[241]](),_0x39abx3[_0x53bb[242]]()));return _0x39abx5};mxGraphView[_0x53bb[202]][_0x53bb[1710]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx4[_0x53bb[1709]](_0x39abx2,_0x39abx3),_0x39abx9=_0x39abx5;null!=_0x39abx5&&_0x39abx5!=this[_0x53bb[1741]];){if(!this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx9)||this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx5)){_0x39abx9=_0x39abx5};_0x39abx5=_0x39abx4[_0x53bb[1197]](_0x39abx5)};_0x39abx4[_0x53bb[1197]](_0x39abx9)==_0x39abx4[_0x53bb[501]]()&&(_0x39abx9=null);return _0x39abx9};mxGraphView[_0x53bb[202]][_0x53bb[2284]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[439]];_0x39abx2[_0x53bb[67]]=0;if(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]){var _0x39abx4=_0x39abx3[0],_0x39abx5=_0x39abx3[_0x39abx3[_0x53bb[67]]-1];if(null==_0x39abx4||null==_0x39abx5){_0x39abx2[_0x53bb[246]]!=this[_0x53bb[1741]]&&this[_0x53bb[200]](_0x39abx2[_0x53bb[246]],!0)}else {if(_0x39abx4[_0x53bb[235]]!=_0x39abx5[_0x53bb[235]]||_0x39abx4[_0x53bb[236]]!=_0x39abx5[_0x53bb[236]]){var _0x39abx9=_0x39abx5[_0x53bb[235]]-_0x39abx4[_0x53bb[235]],_0x39abxa=_0x39abx5[_0x53bb[236]]-_0x39abx4[_0x53bb[236]];_0x39abx2[_0x53bb[2085]]=Math[_0x53bb[428]](_0x39abx9*_0x39abx9+_0x39abxa*_0x39abxa)}else {_0x39abx2[_0x53bb[2085]]=0};var _0x39abx5=0,_0x39abx12=[],_0x39abxa=_0x39abx4;if(null!=_0x39abxa){for(var _0x39abx4=_0x39abxa[_0x53bb[235]],_0x39abx13=_0x39abxa[_0x53bb[236]],_0x39abx14=_0x39abx4,_0x39abx15=_0x39abx13,_0x39abx16=1;_0x39abx16<_0x39abx3[_0x53bb[67]];_0x39abx16++){var _0x39abx17=_0x39abx3[_0x39abx16];null!=_0x39abx17&&(_0x39abx9=_0x39abxa[_0x53bb[235]]-_0x39abx17[_0x53bb[235]],_0x39abxa=_0x39abxa[_0x53bb[236]]-_0x39abx17[_0x53bb[236]],_0x39abx9=Math[_0x53bb[428]](_0x39abx9*_0x39abx9+_0x39abxa*_0x39abxa),_0x39abx12[_0x53bb[207]](_0x39abx9),_0x39abx5+=_0x39abx9,_0x39abxa=_0x39abx17,_0x39abx4=Math[_0x53bb[243]](_0x39abxa[_0x53bb[235]],_0x39abx4),_0x39abx13=Math[_0x53bb[243]](_0x39abxa[_0x53bb[236]],_0x39abx13),_0x39abx14=Math[_0x53bb[160]](_0x39abxa[_0x53bb[235]],_0x39abx14),_0x39abx15=Math[_0x53bb[160]](_0x39abxa[_0x53bb[236]],_0x39abx15))};_0x39abx2[_0x53bb[67]]=_0x39abx5;_0x39abx2[_0x53bb[2086]]=_0x39abx12;_0x39abx2[_0x53bb[235]]=_0x39abx4;_0x39abx2[_0x53bb[236]]=_0x39abx13;_0x39abx2[_0x53bb[117]]=Math[_0x53bb[160]](1,_0x39abx14-_0x39abx4);_0x39abx2[_0x53bb[119]]=Math[_0x53bb[160]](1,_0x39abx15-_0x39abx13)}}}};mxGraphView[_0x53bb[202]][_0x53bb[245]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[241]](),_0x39abx5=_0x39abx2[_0x53bb[242]]();if(null!=_0x39abx2[_0x53bb[2086]]&&(null==_0x39abx3||_0x39abx3[_0x53bb[1500]])){for(var _0x39abx9=_0x39abx2[_0x53bb[439]][_0x53bb[67]],_0x39abxa=((null!=_0x39abx3?_0x39abx3[_0x53bb[235]]/2:0)+0.5)*_0x39abx2[_0x53bb[67]],_0x39abx12=_0x39abx2[_0x53bb[2086]][0],_0x39abx13=0,_0x39abx14=1;_0x39abxa>_0x39abx13+_0x39abx12&&_0x39abx14<_0x39abx9-1;){_0x39abx13+=_0x39abx12,_0x39abx12=_0x39abx2[_0x53bb[2086]][_0x39abx14++]};_0x39abx9=0==_0x39abx12?0:(_0x39abxa-_0x39abx13)/_0x39abx12;_0x39abxa=_0x39abx2[_0x53bb[439]][_0x39abx14-1];_0x39abx14=_0x39abx2[_0x53bb[439]][_0x39abx14];if(null!=_0x39abxa&&null!=_0x39abx14){_0x39abx13=_0x39abx4=_0x39abx5=0;if(null!=_0x39abx3){var _0x39abx5=_0x39abx3[_0x53bb[236]],_0x39abx15=_0x39abx3[_0x53bb[1368]];null!=_0x39abx15&&(_0x39abx4=_0x39abx15[_0x53bb[235]],_0x39abx13=_0x39abx15[_0x53bb[236]])};_0x39abx15=_0x39abx14[_0x53bb[235]]-_0x39abxa[_0x53bb[235]];_0x39abx14=_0x39abx14[_0x53bb[236]]-_0x39abxa[_0x53bb[236]];_0x39abx4=_0x39abxa[_0x53bb[235]]+_0x39abx15*_0x39abx9+((0==_0x39abx12?0:_0x39abx14/_0x39abx12)*_0x39abx5+_0x39abx4)*this[_0x53bb[255]];_0x39abx5=_0x39abxa[_0x53bb[236]]+_0x39abx14*_0x39abx9-((0==_0x39abx12?0:_0x39abx15/_0x39abx12)*_0x39abx5-_0x39abx13)*this[_0x53bb[255]]}}else {null!=_0x39abx3&&(_0x39abx15=_0x39abx3[_0x53bb[1368]],null!=_0x39abx15&&(_0x39abx4+=_0x39abx15[_0x53bb[235]],_0x39abx5+=_0x39abx15[_0x53bb[236]]))};return new mxPoint(_0x39abx4,_0x39abx5)};mxGraphView[_0x53bb[202]][_0x53bb[2308]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1721]](_0x39abx2[_0x53bb[246]]);if(null!=_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[439]][_0x53bb[67]];if(_0x39abx5[_0x53bb[1500]]&&1<_0x39abx9){for(var _0x39abx5=_0x39abx2[_0x53bb[67]],_0x39abxa=_0x39abx2[_0x53bb[2086]],_0x39abx12=_0x39abx2[_0x53bb[439]][0],_0x39abx13=_0x39abx2[_0x53bb[439]][1],_0x39abx14=mxUtils[_0x53bb[440]](_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx3,_0x39abx4),_0x39abx15=0,_0x39abx16=0,_0x39abx17=0,_0x39abx18=2;_0x39abx18<_0x39abx9;_0x39abx18++){_0x39abx16+=_0x39abxa[_0x39abx18-2],_0x39abx13=_0x39abx2[_0x53bb[439]][_0x39abx18],_0x39abx12=mxUtils[_0x53bb[440]](_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx3,_0x39abx4),_0x39abx12<=_0x39abx14&&(_0x39abx14=_0x39abx12,_0x39abx15=_0x39abx18-1,_0x39abx17=_0x39abx16),_0x39abx12=_0x39abx13};_0x39abx9=_0x39abxa[_0x39abx15];_0x39abx12=_0x39abx2[_0x53bb[439]][_0x39abx15];_0x39abx13=_0x39abx2[_0x53bb[439]][_0x39abx15+1];_0x39abx14=_0x39abx13[_0x53bb[235]];_0x39abxa=_0x39abx13[_0x53bb[236]];_0x39abx2=_0x39abx12[_0x53bb[235]]-_0x39abx14;_0x39abx15=_0x39abx12[_0x53bb[236]]-_0x39abxa;_0x39abx14=_0x39abx3-_0x39abx14;_0x39abxa=_0x39abx4-_0x39abxa;_0x39abx14=_0x39abx2-_0x39abx14;_0x39abxa=_0x39abx15-_0x39abxa;_0x39abxa=_0x39abx14*_0x39abx2+_0x39abxa*_0x39abx15;_0x39abx2=Math[_0x53bb[428]](0>=_0x39abxa?0:_0x39abxa*_0x39abxa/(_0x39abx2*_0x39abx2+_0x39abx15*_0x39abx15));_0x39abx2>_0x39abx9&&(_0x39abx2=_0x39abx9);_0x39abx9=Math[_0x53bb[428]](mxUtils[_0x53bb[440]](_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx3,_0x39abx4));-1==mxUtils[_0x53bb[2309]](_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx13[_0x53bb[235]],_0x39abx13[_0x53bb[236]],_0x39abx3,_0x39abx4)&&(_0x39abx9= -_0x39abx9);return new mxPoint(-2*((_0x39abx5/2-_0x39abx17-_0x39abx2)/_0x39abx5),_0x39abx9/this[_0x53bb[255]])}};return new mxPoint};mxGraphView[_0x53bb[202]][_0x53bb[2285]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[439]];_0x39abx2[_0x53bb[2079]][_0x53bb[235]]=_0x39abx2[_0x53bb[241]]();_0x39abx2[_0x53bb[2079]][_0x53bb[236]]=_0x39abx2[_0x53bb[242]]();if(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]&&null!=_0x39abx2[_0x53bb[2086]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx2[_0x53bb[246]]);if(_0x39abx4[_0x53bb[1500]]){var _0x39abx5=this[_0x53bb[245]](_0x39abx2,_0x39abx4);null!=_0x39abx5&&(_0x39abx2[_0x53bb[2079]]=_0x39abx5)}else {var _0x39abx5=_0x39abx3[0],_0x39abx9=_0x39abx3[_0x39abx3[_0x53bb[67]]-1];if(null!=_0x39abx5&&null!=_0x39abx9){var _0x39abx3=_0x39abx9[_0x53bb[235]]-_0x39abx5[_0x53bb[235]],_0x39abxa=_0x39abx9[_0x53bb[236]]-_0x39abx5[_0x53bb[236]],_0x39abx12=_0x39abx9=0,_0x39abx4=_0x39abx4[_0x53bb[1368]];null!=_0x39abx4&&(_0x39abx9=_0x39abx4[_0x53bb[235]],_0x39abx12=_0x39abx4[_0x53bb[236]]);_0x39abx4=_0x39abx5[_0x53bb[236]]+_0x39abxa/2+_0x39abx12*this[_0x53bb[255]];_0x39abx2[_0x53bb[2079]][_0x53bb[235]]=_0x39abx5[_0x53bb[235]]+_0x39abx3/2+_0x39abx9*this[_0x53bb[255]];_0x39abx2[_0x53bb[2079]][_0x53bb[236]]=_0x39abx4}}}};mxGraphView[_0x53bb[202]][_0x53bb[248]]=function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3|| !1;var _0x39abx4=null;null!=_0x39abx2&&(_0x39abx4=this[_0x53bb[1214]][_0x53bb[203]](_0x39abx2),this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2)&&(null==_0x39abx4&&_0x39abx3&&this[_0x53bb[1179]][_0x53bb[1714]](_0x39abx2)?(_0x39abx4=this[_0x53bb[1230]](_0x39abx2),this[_0x53bb[1214]][_0x53bb[204]](_0x39abx2,_0x39abx4)):_0x39abx3&&(null!=_0x39abx4&&this[_0x53bb[2255]])&&(_0x39abx4[_0x53bb[124]]=this[_0x53bb[1179]][_0x53bb[1705]](_0x39abx2))));return _0x39abx4};mxGraphView[_0x53bb[202]][_0x53bb[2287]]=function(){return this[_0x53bb[2254]]};mxGraphView[_0x53bb[202]][_0x53bb[2310]]=function(_0x39abx2){this[_0x53bb[2254]]=_0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[2295]]=function(){return this[_0x53bb[2251]]};mxGraphView[_0x53bb[202]][_0x53bb[2311]]=function(_0x39abx2){this[_0x53bb[2251]]=_0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[2312]]=function(){return this[_0x53bb[1214]]};mxGraphView[_0x53bb[202]][_0x53bb[1517]]=function(_0x39abx2){this[_0x53bb[1214]]=_0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[2313]]=function(_0x39abx2){if(null==_0x39abx2){return this[_0x53bb[1214]]};for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=this[_0x53bb[248]](_0x39abx2[_0x39abx4]);null!=_0x39abx5&&_0x39abx3[_0x53bb[207]](_0x39abx5)};return _0x39abx3};mxGraphView[_0x53bb[202]][_0x53bb[2265]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[1214]][_0x53bb[205]](_0x39abx2),null!=_0x39abx3&&(this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[515]](_0x39abx3),_0x39abx3[_0x53bb[515]]()));return _0x39abx3};mxGraphView[_0x53bb[202]][_0x53bb[1230]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[1705]](_0x39abx2);_0x39abx2= new mxCellState(this,_0x39abx2,_0x39abx3);this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[2155]](_0x39abx2,this[_0x53bb[2287]]());return _0x39abx2};mxGraphView[_0x53bb[202]][_0x53bb[2051]]=function(){return this[_0x53bb[510]]};mxGraphView[_0x53bb[202]][_0x53bb[2052]]=function(){return this[_0x53bb[2053]]};mxGraphView[_0x53bb[202]][_0x53bb[2024]]=function(){return this[_0x53bb[505]]};mxGraphView[_0x53bb[202]][_0x53bb[1524]]=function(){return this[_0x53bb[506]]};mxGraphView[_0x53bb[202]][_0x53bb[2314]]=function(_0x39abx2){_0x39abx2=mxEvent[_0x53bb[728]](_0x39abx2);return _0x39abx2==this[_0x53bb[1179]][_0x53bb[526]]||_0x39abx2[_0x53bb[265]]==this[_0x53bb[2053]]||null!=_0x39abx2[_0x53bb[265]]&&_0x39abx2[_0x53bb[265]][_0x53bb[265]]==this[_0x53bb[2053]]||_0x39abx2==this[_0x53bb[510]][_0x53bb[265]]||_0x39abx2==this[_0x53bb[510]]||_0x39abx2==this[_0x53bb[2053]]||_0x39abx2==this[_0x53bb[505]]||_0x39abx2==this[_0x53bb[506]]};mxGraphView[_0x53bb[202]][_0x53bb[2315]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[445]](this[_0x53bb[1179]][_0x53bb[526]]);_0x39abx2= new mxPoint(_0x39abx2[_0x53bb[782]]-_0x39abx3[_0x53bb[235]],_0x39abx2[_0x53bb[784]]-_0x39abx3[_0x53bb[236]]);var _0x39abx3=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[359]],_0x39abx4=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[159]];if(_0x39abx3>_0x39abx4&&_0x39abx2[_0x53bb[235]]>_0x39abx4+2&&_0x39abx2[_0x53bb[235]]<=_0x39abx3){return !0};_0x39abx3=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[167]];_0x39abx4=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[157]];return _0x39abx3>_0x39abx4&&_0x39abx2[_0x53bb[236]]>_0x39abx4+2&&_0x39abx2[_0x53bb[236]]<=_0x39abx3?!0:!1};mxGraphView[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[2163]]();var _0x39abx2=this[_0x53bb[1179]];_0x39abx2[_0x53bb[507]]==mxConstants[_0x53bb[508]]?this[_0x53bb[1569]]():_0x39abx2[_0x53bb[507]]==mxConstants[_0x53bb[1523]]?this[_0x53bb[1571]]():this[_0x53bb[1570]]()};mxGraphView[_0x53bb[202]][_0x53bb[2163]]=function(){var _0x39abx2=this[_0x53bb[1179]],_0x39abx3=_0x39abx2[_0x53bb[526]];if(null!=_0x39abx3){mxEvent[_0x53bb[759]](_0x39abx3,mxUtils[_0x53bb[885]](this,function(_0x39abx3){mxClient[_0x53bb[754]]&&_0x39abx2[_0x53bb[2203]]()&&_0x39abx2[_0x53bb[2126]](!_0x39abx2[_0x53bb[2134]]());this[_0x53bb[2314]](_0x39abx3)&&(!mxClient[_0x53bb[80]]&&!mxClient[_0x53bb[76]]&&!mxClient[_0x53bb[71]]&&!mxClient[_0x53bb[75]]||!this[_0x53bb[2315]](_0x39abx3))&&_0x39abx2[_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx3))}),mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2314]](_0x39abx3)&&_0x39abx2[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx3))}),mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2314]](_0x39abx3)&&_0x39abx2[_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx3))}));mxEvent[_0x53bb[169]](_0x39abx3,_0x53bb[760],mxUtils[_0x53bb[885]](this,function(_0x39abx3){_0x39abx2[_0x53bb[761]](_0x39abx3)}));var _0x39abx4=function(_0x39abx4){var _0x39abx9=null;mxClient[_0x53bb[754]]&&(_0x39abx9=mxEvent[_0x53bb[731]](_0x39abx4),_0x39abx4=mxEvent[_0x53bb[733]](_0x39abx4),_0x39abx4=mxUtils[_0x53bb[2196]](_0x39abx3,_0x39abx9,_0x39abx4),_0x39abx9=_0x39abx2[_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x53bb[999]](_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]])));return _0x39abx9};_0x39abx2[_0x53bb[1133]]({mouseDown:function(_0x39abx3,_0x39abx4){_0x39abx2[_0x53bb[2316]][_0x53bb[1032]]()},mouseMove:function(){},mouseUp:function(){}});this[_0x53bb[2317]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3){null!=_0x39abx2[_0x53bb[2276]]&&_0x39abx2[_0x53bb[2276]][_0x53bb[2277]]()&&_0x39abx2[_0x53bb[2276]][_0x53bb[801]]();this[_0x53bb[2252]]&&(_0x39abx2[_0x53bb[1009]]&&!mxEvent[_0x53bb[721]](_0x39abx3))&&_0x39abx2[_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx3,_0x39abx4(_0x39abx3)))});this[_0x53bb[2318]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3){this[_0x53bb[2252]]&&_0x39abx2[_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx3))});mxEvent[_0x53bb[759]](document,null,this[_0x53bb[2317]],this[_0x53bb[2318]])}};mxGraphView[_0x53bb[202]][_0x53bb[1570]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[526]];null!=_0x39abx2&&(this[_0x53bb[510]]=this[_0x53bb[2319]](_0x53bb[118],_0x53bb[118]),this[_0x53bb[2053]]=this[_0x53bb[2319]](_0x53bb[942],_0x53bb[942]),this[_0x53bb[505]]=this[_0x53bb[2319]](_0x53bb[942],_0x53bb[942]),this[_0x53bb[506]]=this[_0x53bb[2319]](_0x53bb[942],_0x53bb[942]),this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[2053]]),this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[505]]),this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[506]]),_0x39abx2[_0x53bb[62]](this[_0x53bb[510]]),mxClient[_0x53bb[496]]&&(_0x39abx2=mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx2=this[_0x53bb[517]]();this[_0x53bb[2320]](_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]+this[_0x53bb[1179]][_0x53bb[467]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]+this[_0x53bb[1179]][_0x53bb[467]])}),mxEvent[_0x53bb[169]](window,_0x53bb[129],_0x39abx2)))};mxGraphView[_0x53bb[202]][_0x53bb[2320]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[1179]][_0x53bb[526]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[167]];this[_0x53bb[510]][_0x53bb[124]][_0x53bb[117]]=this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[359]]<_0x39abx2?_0x39abx2+_0x53bb[168]:_0x53bb[118];this[_0x53bb[510]][_0x53bb[124]][_0x53bb[119]]=_0x39abx4<_0x39abx3?_0x39abx3+_0x53bb[168]:_0x53bb[118]}};mxGraphView[_0x53bb[202]][_0x53bb[2319]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[529]);null!=_0x39abx2&&null!=_0x39abx3?(_0x39abx4[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492],_0x39abx4[_0x53bb[124]][_0x53bb[361]]=_0x53bb[946],_0x39abx4[_0x53bb[124]][_0x53bb[125]]=_0x53bb[946],_0x39abx4[_0x53bb[124]][_0x53bb[117]]=_0x39abx2,_0x39abx4[_0x53bb[124]][_0x53bb[119]]=_0x39abx3):_0x39abx4[_0x53bb[124]][_0x53bb[491]]=_0x53bb[1500];return _0x39abx4};mxGraphView[_0x53bb[202]][_0x53bb[1571]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[526]];if(null!=_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[359]],_0x39abx4=_0x39abx2[_0x53bb[167]];this[_0x53bb[510]]=this[_0x53bb[2321]](_0x39abx3,_0x39abx4);this[_0x53bb[2053]]=this[_0x53bb[2321]](_0x39abx3,_0x39abx4);this[_0x53bb[505]]=this[_0x53bb[2321]](_0x39abx3,_0x39abx4);this[_0x53bb[506]]=this[_0x53bb[2321]](_0x39abx3,_0x39abx4);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[2053]]);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[505]]);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[506]]);_0x39abx2[_0x53bb[62]](this[_0x53bb[510]])}};mxGraphView[_0x53bb[202]][_0x53bb[2321]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](mxClient[_0x53bb[463]]+_0x53bb[1499]);_0x39abx4[_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];_0x39abx4[_0x53bb[124]][_0x53bb[361]]=_0x53bb[946];_0x39abx4[_0x53bb[124]][_0x53bb[125]]=_0x53bb[946];_0x39abx4[_0x53bb[124]][_0x53bb[117]]=_0x39abx2+_0x53bb[168];_0x39abx4[_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168];_0x39abx4[_0x53bb[57]](_0x53bb[1462],_0x39abx2+_0x53bb[537]+_0x39abx3);_0x39abx4[_0x53bb[57]](_0x53bb[2322],_0x53bb[2323]);return _0x39abx4};mxGraphView[_0x53bb[202]][_0x53bb[1569]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[526]];this[_0x53bb[510]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449]);this[_0x53bb[2053]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449]);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[2053]]);this[_0x53bb[505]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449]);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[505]]);this[_0x53bb[506]]=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[449]);this[_0x53bb[510]][_0x53bb[62]](this[_0x53bb[506]]);var _0x39abx3=document[_0x53bb[509]](mxConstants.NS_SVG,_0x53bb[571]);_0x39abx3[_0x53bb[124]][_0x53bb[117]]=_0x53bb[118];_0x39abx3[_0x53bb[124]][_0x53bb[119]]=_0x53bb[118];_0x39abx3[_0x53bb[124]][_0x53bb[495]]=_0x53bb[694];_0x39abx3[_0x53bb[62]](this[_0x53bb[510]]);null!=_0x39abx2&&(_0x39abx2[_0x53bb[62]](_0x39abx3),_0x53bb[2324]==mxUtils[_0x53bb[275]](_0x39abx2)[_0x53bb[491]]&&(_0x39abx2[_0x53bb[124]][_0x53bb[491]]=_0x53bb[1500]))};mxGraphView[_0x53bb[202]][_0x53bb[515]]=function(){var _0x39abx2=null!=this[_0x53bb[510]]?this[_0x53bb[510]][_0x53bb[538]]:null;null==_0x39abx2&&(_0x39abx2=this[_0x53bb[510]]);null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[265]]&&(this[_0x53bb[200]](this[_0x53bb[1741]],!0),mxEvent[_0x53bb[938]](document,null,this[_0x53bb[2317]],this[_0x53bb[2318]]),mxEvent[_0x53bb[762]](this[_0x53bb[1179]][_0x53bb[526]]),_0x39abx2[_0x53bb[265]][_0x53bb[266]](_0x39abx2),this[_0x53bb[506]]=this[_0x53bb[505]]=this[_0x53bb[2053]]=this[_0x53bb[510]]=this[_0x53bb[2318]]=this[_0x53bb[2317]]=null)};function mxCurrentRootChange(_0x39abx2,_0x39abx3){this[_0x53bb[441]]=_0x39abx2;this[_0x53bb[257]]=this[_0x53bb[813]]=_0x39abx3;this[_0x53bb[2325]]=null==_0x39abx3;if(!this[_0x53bb[2325]]){for(var _0x39abx4=this[_0x53bb[441]][_0x53bb[1741]],_0x39abx5=this[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]();null!=_0x39abx4;){if(_0x39abx4==_0x39abx3){this[_0x53bb[2325]]= !0;break};_0x39abx4=_0x39abx5[_0x53bb[1197]](_0x39abx4)}}}mxCurrentRootChange[_0x53bb[202]][_0x53bb[350]]=function(){var _0x39abx2=this[_0x53bb[441]][_0x53bb[1741]];this[_0x53bb[441]][_0x53bb[1741]]=this[_0x53bb[257]];this[_0x53bb[257]]=_0x39abx2;_0x39abx2=this[_0x53bb[441]][_0x53bb[1179]][_0x53bb[2326]](this[_0x53bb[441]][_0x53bb[1741]]);null!=_0x39abx2&&(this[_0x53bb[441]][_0x53bb[513]]= new mxPoint(-_0x39abx2[_0x53bb[235]],-_0x39abx2[_0x53bb[236]]));this[_0x53bb[441]][_0x53bb[746]]( new mxEventObject(this[_0x53bb[2325]]?mxEvent[_0x53bb[2327]]:mxEvent[_0x53bb[2328]],_0x53bb[813],this[_0x53bb[441]][_0x53bb[1741]],_0x53bb[257],this[_0x53bb[257]]));this[_0x53bb[2325]]?(this[_0x53bb[441]][_0x53bb[200]](this[_0x53bb[441]][_0x53bb[1741]],!0),this[_0x53bb[441]][_0x53bb[2264]]()):this[_0x53bb[441]][_0x53bb[802]]();this[_0x53bb[2325]]=!this[_0x53bb[2325]]};function mxGraph(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[2329]]=null;this[_0x53bb[2330]]=_0x39abx4;this[_0x53bb[507]]=mxClient[_0x53bb[48]]?mxConstants[_0x53bb[508]]:_0x39abx4==mxConstants[_0x53bb[2331]]&&mxClient[_0x53bb[47]]?mxConstants[_0x53bb[1523]]:_0x39abx4==mxConstants[_0x53bb[2332]]?mxConstants[_0x53bb[1656]]:_0x39abx4==mxConstants[_0x53bb[2333]]?mxConstants[_0x53bb[2209]]:mxConstants[_0x53bb[2334]];this[_0x53bb[251]]=null!=_0x39abx3?_0x39abx3: new mxGraphModel;this[_0x53bb[2335]]=[];this[_0x53bb[2336]]=[];this[_0x53bb[259]]=this[_0x53bb[2337]]();this[_0x53bb[2339]](this[_0x53bb[2338]]());this[_0x53bb[2341]](null!=_0x39abx5?_0x39abx5:this[_0x53bb[2340]]());this[_0x53bb[441]]=this[_0x53bb[2342]]();this[_0x53bb[2343]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[1177]](_0x39abx3[_0x53bb[720]](_0x53bb[1061])[_0x53bb[1065]])});this[_0x53bb[251]][_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[2343]]);this[_0x53bb[2344]]();null!=_0x39abx2&&this[_0x53bb[176]](_0x39abx2);this[_0x53bb[441]][_0x53bb[2259]]()}mxLoadResources&&mxResources[_0x53bb[99]](mxClient[_0x53bb[86]]+_0x53bb[2345]);mxGraph[_0x53bb[202]]= new mxEventSource;mxGraph[_0x53bb[202]][_0x53bb[196]]=mxGraph;mxGraph[_0x53bb[202]][_0x53bb[2346]]=[];mxGraph[_0x53bb[202]][_0x53bb[2329]]=null;mxGraph[_0x53bb[202]][_0x53bb[1009]]= !1;mxGraph[_0x53bb[202]][_0x53bb[251]]=null;mxGraph[_0x53bb[202]][_0x53bb[441]]=null;mxGraph[_0x53bb[202]][_0x53bb[94]]=null;mxGraph[_0x53bb[202]][_0x53bb[2105]]=null;mxGraph[_0x53bb[202]][_0x53bb[2347]]=null;mxGraph[_0x53bb[202]][_0x53bb[259]]=null;mxGraph[_0x53bb[202]][_0x53bb[2335]]=null;mxGraph[_0x53bb[202]][_0x53bb[2330]]=null;mxGraph[_0x53bb[202]][_0x53bb[507]]=null;mxGraph[_0x53bb[202]][_0x53bb[1020]]=10;mxGraph[_0x53bb[202]][_0x53bb[991]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2348]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2349]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2350]]=700;mxGraph[_0x53bb[202]][_0x53bb[2351]]=25;mxGraph[_0x53bb[202]][_0x53bb[2352]]=0;mxGraph[_0x53bb[202]][_0x53bb[2352]]=0;mxGraph[_0x53bb[202]][_0x53bb[2213]]=0;mxGraph[_0x53bb[202]][_0x53bb[2215]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2353]]=4;mxGraph[_0x53bb[202]][_0x53bb[2354]]=0.5;mxGraph[_0x53bb[202]][_0x53bb[2355]]=null;mxGraph[_0x53bb[202]][_0x53bb[2356]]=null;mxGraph[_0x53bb[202]][_0x53bb[1617]]=null;mxGraph[_0x53bb[202]][_0x53bb[2273]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2357]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2358]]=_0x53bb[579];mxGraph[_0x53bb[202]][_0x53bb[2359]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2360]]=20;mxGraph[_0x53bb[202]][_0x53bb[2361]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2013]]=mxConstants[_0x53bb[516]];mxGraph[_0x53bb[202]][_0x53bb[2012]]=1.5;mxGraph[_0x53bb[202]][_0x53bb[984]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2362]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2363]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2364]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2365]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2366]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2367]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2368]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2369]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2206]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2370]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2371]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2372]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2373]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2374]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2375]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2376]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2377]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2378]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2379]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2380]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2381]]= !1;mxGraph[_0x53bb[202]][_0x53bb[1012]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2382]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2383]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2384]]= !1;mxGraph[_0x53bb[202]][_0x53bb[1013]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2385]]=null;mxGraph[_0x53bb[202]][_0x53bb[2386]]=null;mxGraph[_0x53bb[202]][_0x53bb[2387]]=null;mxGraph[_0x53bb[202]][_0x53bb[2388]]=null;mxGraph[_0x53bb[202]][_0x53bb[2389]]= !1;mxGraph[_0x53bb[202]][_0x53bb[467]]=0;mxGraph[_0x53bb[202]][_0x53bb[2158]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2159]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2168]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2390]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2391]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2392]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2393]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2394]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2395]]=1.2;mxGraph[_0x53bb[202]][_0x53bb[2396]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2397]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2398]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2399]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2400]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2401]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2402]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2293]]=mxEdgeStyle[_0x53bb[2403]];mxGraph[_0x53bb[202]][_0x53bb[2404]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2405]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2406]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2407]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2408]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2409]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2410]]= !1;mxGraph[_0x53bb[202]][_0x53bb[2411]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2412]]= !0;mxGraph[_0x53bb[202]][_0x53bb[2180]]=mxConstants[_0x53bb[2065]];mxGraph[_0x53bb[202]][_0x53bb[2336]]=null;mxGraph[_0x53bb[202]][_0x53bb[2413]]=0.1;mxGraph[_0x53bb[202]][_0x53bb[2414]]=8;mxGraph[_0x53bb[202]][_0x53bb[1136]]=0;mxGraph[_0x53bb[202]][_0x53bb[1137]]=0;mxGraph[_0x53bb[202]][_0x53bb[2415]]= new mxImage(mxClient[_0x53bb[88]]+_0x53bb[2416],9,9);mxGraph[_0x53bb[202]][_0x53bb[2417]]= new mxImage(mxClient[_0x53bb[88]]+_0x53bb[2418],9,9);mxGraph[_0x53bb[202]][_0x53bb[2419]]= new mxImage(_0x53bb[2420],16,16);mxGraph[_0x53bb[202]][_0x53bb[2421]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2422]:_0x53bb[110];mxGraph[_0x53bb[202]][_0x53bb[2423]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2424]:_0x53bb[110];mxGraph[_0x53bb[202]][_0x53bb[2425]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2426]:_0x53bb[110];mxGraph[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2){this[_0x53bb[526]]=_0x39abx2;this[_0x53bb[2347]]=this[_0x53bb[2427]]();this[_0x53bb[441]][_0x53bb[176]]();this[_0x53bb[2258]]();mxClient[_0x53bb[80]]&&(mxEvent[_0x53bb[169]](window,_0x53bb[2428],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[515]]()})),mxEvent[_0x53bb[169]](_0x39abx2,_0x53bb[2429],mxUtils[_0x53bb[885]](this,function(){return this[_0x53bb[2203]]()})));8==document[_0x53bb[5]]&&_0x39abx2[_0x53bb[1583]](_0x53bb[1582],_0x53bb[2430])};mxGraph[_0x53bb[202]][_0x53bb[2344]]=function(_0x39abx2){this[_0x53bb[2276]]= new mxTooltipHandler(this);this[_0x53bb[2276]][_0x53bb[995]](!1);this[_0x53bb[2316]]= new mxPanningHandler(this);this[_0x53bb[2316]][_0x53bb[2431]]= !1;this[_0x53bb[2432]]= new mxSelectionCellsHandler(this);this[_0x53bb[2433]]= new mxConnectionHandler(this);this[_0x53bb[2433]][_0x53bb[995]](!1);this[_0x53bb[1011]]= new mxGraphHandler(this)};mxGraph[_0x53bb[202]][_0x53bb[2338]]=function(){return new mxGraphSelectionModel(this)};mxGraph[_0x53bb[202]][_0x53bb[2340]]=function(){return new mxStylesheet};mxGraph[_0x53bb[202]][_0x53bb[2342]]=function(){return new mxGraphView(this)};mxGraph[_0x53bb[202]][_0x53bb[2337]]=function(){return new mxCellRenderer};mxGraph[_0x53bb[202]][_0x53bb[2427]]=function(){return new mxCellEditor(this)};mxGraph[_0x53bb[202]][_0x53bb[502]]=function(){return this[_0x53bb[251]]};mxGraph[_0x53bb[202]][_0x53bb[249]]=function(){return this[_0x53bb[441]]};mxGraph[_0x53bb[202]][_0x53bb[2434]]=function(){return this[_0x53bb[94]]};mxGraph[_0x53bb[202]][_0x53bb[2341]]=function(_0x39abx2){this[_0x53bb[94]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2435]]=function(){return this[_0x53bb[2105]]};mxGraph[_0x53bb[202]][_0x53bb[2339]]=function(_0x39abx2){this[_0x53bb[2105]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2436]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=_0x39abx2[_0x39abx4];if(_0x39abx5[_0x53bb[196]]!=mxRootChange){var _0x39abx9=null;_0x39abx5 instanceof mxChildChange&&null==_0x39abx5[_0x53bb[257]]?_0x39abx9=_0x39abx5[_0x53bb[247]]:null!=_0x39abx5[_0x53bb[246]]&&_0x39abx5[_0x53bb[246]] instanceof mxCell&&(_0x39abx9=_0x39abx5[_0x53bb[246]]);null!=_0x39abx9&&0>mxUtils[_0x53bb[2]](_0x39abx3,_0x39abx9)&&_0x39abx3[_0x53bb[207]](_0x39abx9)}};return this[_0x53bb[502]]()[_0x53bb[1964]](_0x39abx3)};mxGraph[_0x53bb[202]][_0x53bb[1177]]=function(_0x39abx2){for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){this[_0x53bb[2437]](_0x39abx2[_0x39abx3])};this[_0x53bb[2439]](this[_0x53bb[2438]](_0x39abx2));this[_0x53bb[441]][_0x53bb[2264]]();this[_0x53bb[2258]]()};mxGraph[_0x53bb[202]][_0x53bb[2438]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=_0x39abx2[_0x39abx4];if(_0x39abx5 instanceof mxRootChange){break}else {_0x39abx5 instanceof mxChildChange?null!=_0x39abx5[_0x53bb[257]]&&null==_0x39abx5[_0x53bb[1101]]&&(_0x39abx3=_0x39abx3[_0x53bb[1919]](this[_0x53bb[251]][_0x53bb[1939]](_0x39abx5[_0x53bb[247]]))):_0x39abx5 instanceof mxVisibleChange&&(_0x39abx3=_0x39abx3[_0x53bb[1919]](this[_0x53bb[251]][_0x53bb[1939]](_0x39abx5[_0x53bb[246]])))}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2437]]=function(_0x39abx2){if(_0x39abx2 instanceof mxRootChange){this[_0x53bb[2440]](),this[_0x53bb[2441]](_0x39abx2[_0x53bb[257]]),this[_0x53bb[2398]]&&(this[_0x53bb[441]][_0x53bb[255]]=1,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]=0,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]=0),this[_0x53bb[746]]( new mxEventObject(mxEvent.ROOT))}else {if(_0x39abx2 instanceof mxChildChange){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x53bb[247]]);null!=_0x39abx3?this[_0x53bb[441]][_0x53bb[2263]](_0x39abx2[_0x53bb[247]],!0,!1,null!=_0x39abx2[_0x53bb[257]]):(this[_0x53bb[2441]](_0x39abx2[_0x53bb[247]]),this[_0x53bb[441]][_0x53bb[1741]]==_0x39abx2[_0x53bb[247]]&&this[_0x53bb[2442]]());_0x39abx3!=_0x39abx2[_0x53bb[257]]&&(null!=_0x39abx3&&this[_0x53bb[441]][_0x53bb[2263]](_0x39abx3,!1,!1),null!=_0x39abx2[_0x53bb[257]]&&this[_0x53bb[441]][_0x53bb[2263]](_0x39abx2[_0x53bb[257]],!1,!1))}else {_0x39abx2 instanceof mxTerminalChange||_0x39abx2 instanceof mxGeometryChange?this[_0x53bb[441]][_0x53bb[2263]](_0x39abx2[_0x53bb[246]]):_0x39abx2 instanceof mxValueChange?this[_0x53bb[441]][_0x53bb[2263]](_0x39abx2[_0x53bb[246]],!1,!1):_0x39abx2 instanceof mxStyleChange?(this[_0x53bb[441]][_0x53bb[2263]](_0x39abx2[_0x53bb[246]],!0,!0,!1),this[_0x53bb[441]][_0x53bb[2265]](_0x39abx2[_0x53bb[246]])):null!=_0x39abx2[_0x53bb[246]]&&_0x39abx2[_0x53bb[246]] instanceof mxCell&&this[_0x53bb[2441]](_0x39abx2[_0x53bb[246]])}}};mxGraph[_0x53bb[202]][_0x53bb[2441]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2),_0x39abx4=0;_0x39abx4<_0x39abx3;_0x39abx4++){this[_0x53bb[2441]](this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx4))};this[_0x53bb[441]][_0x53bb[2265]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2443]]=function(_0x39abx2,_0x39abx3){null==_0x39abx2[_0x53bb[1211]]&&(_0x39abx2[_0x53bb[1211]]=[]);_0x39abx2[_0x53bb[1211]][_0x53bb[207]](_0x39abx3);var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);null!=_0x39abx4&&this[_0x53bb[259]][_0x53bb[258]](_0x39abx4);this[_0x53bb[746]]( new mxEventObject(mxEvent.ADD_OVERLAY,_0x53bb[246],_0x39abx2,_0x53bb[2201],_0x39abx3));return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2200]]=function(_0x39abx2){return _0x39abx2[_0x53bb[1211]]};mxGraph[_0x53bb[202]][_0x53bb[2444]]=function(_0x39abx2,_0x39abx3){if(null==_0x39abx3){this[_0x53bb[2445]](_0x39abx2)}else {var _0x39abx4=mxUtils[_0x53bb[2]](_0x39abx2[_0x53bb[1211]],_0x39abx3);0<=_0x39abx4?(_0x39abx2[_0x53bb[1211]][_0x53bb[300]](_0x39abx4,1),0==_0x39abx2[_0x53bb[1211]][_0x53bb[67]]&&(_0x39abx2[_0x53bb[1211]]=null),_0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),null!=_0x39abx4&&this[_0x53bb[259]][_0x53bb[258]](_0x39abx4),this[_0x53bb[746]]( new mxEventObject(mxEvent.REMOVE_OVERLAY,_0x53bb[246],_0x39abx2,_0x53bb[2201],_0x39abx3))):_0x39abx3=null};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2445]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[1211]];if(null!=_0x39abx3){_0x39abx2[_0x53bb[1211]]=null;var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);null!=_0x39abx4&&this[_0x53bb[259]][_0x53bb[258]](_0x39abx4);for(_0x39abx4=0;_0x39abx4<_0x39abx3[_0x53bb[67]];_0x39abx4++){this[_0x53bb[746]]( new mxEventObject(mxEvent.REMOVE_OVERLAY,_0x53bb[246],_0x39abx2,_0x53bb[2201],_0x39abx3[_0x39abx4]))}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2446]]=function(_0x39abx2){_0x39abx2=null!=_0x39abx2?_0x39abx2:this[_0x53bb[251]][_0x53bb[501]]();this[_0x53bb[2445]](_0x39abx2);for(var _0x39abx3=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2),_0x39abx4=0;_0x39abx4<_0x39abx3;_0x39abx4++){var _0x39abx5=this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx4);this[_0x53bb[2446]](_0x39abx5)}};mxGraph[_0x53bb[202]][_0x53bb[2447]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]){return _0x39abx4=null!=_0x39abx4?_0x39abx4:this[_0x53bb[2419]],_0x39abx3= new mxCellOverlay(_0x39abx4,_0x53bb[2448]+_0x39abx3+_0x53bb[2449]),_0x39abx5&&_0x39abx3[_0x53bb[169]](mxEvent.CLICK,mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx4){this[_0x53bb[994]]()&&this[_0x53bb[2450]](_0x39abx2)})),this[_0x53bb[2443]](_0x39abx2,_0x39abx3)};this[_0x53bb[2445]](_0x39abx2);return null};mxGraph[_0x53bb[202]][_0x53bb[855]]=function(_0x39abx2){this[_0x53bb[2451]](null,_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2451]]=function(_0x39abx2,_0x39abx3){null==_0x39abx2&&(_0x39abx2=this[_0x53bb[2452]](),null!=_0x39abx2&&!this[_0x53bb[2453]](_0x39abx2)&&(_0x39abx2=null));null!=_0x39abx2&&(this[_0x53bb[746]]( new mxEventObject(mxEvent.START_EDITING,_0x53bb[246],_0x39abx2,_0x53bb[763],_0x39abx3)),this[_0x53bb[2347]][_0x53bb[855]](_0x39abx2,_0x39abx3))};mxGraph[_0x53bb[202]][_0x53bb[2142]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[2454]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2126]]=function(_0x39abx2){this[_0x53bb[2347]][_0x53bb[2126]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[850]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[2456]](_0x39abx2,_0x39abx3,this[_0x53bb[2455]](_0x39abx2)),this[_0x53bb[746]]( new mxEventObject(mxEvent.LABEL_CHANGED,_0x53bb[246],_0x39abx2,_0x53bb[131],_0x39abx3,_0x53bb[763],_0x39abx4))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2456]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[251]][_0x53bb[1966]](_0x39abx2,_0x39abx3),_0x39abx4&&this[_0x53bb[2457]](_0x39abx2,!1)}finally{this[_0x53bb[251]][_0x53bb[476]]()}};mxGraph[_0x53bb[202]][_0x53bb[859]]=function(_0x39abx2){this[_0x53bb[2126]](!0);this[_0x53bb[2433]][_0x53bb[862]]();this[_0x53bb[1011]][_0x53bb[862]]();_0x39abx2=this[_0x53bb[897]]();for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x39abx3]);null!=_0x39abx4&&null!=_0x39abx4[_0x53bb[2458]]&&_0x39abx4[_0x53bb[2458]][_0x53bb[862]]()}};mxGraph[_0x53bb[202]][_0x53bb[173]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[727]](),_0x39abx4=_0x39abx2[_0x53bb[736]](),_0x39abx5= new mxEventObject(mxEvent.CLICK,_0x53bb[763],_0x39abx3,_0x53bb[246],_0x39abx4);_0x39abx2[_0x53bb[721]]()&&_0x39abx5[_0x53bb[722]]();this[_0x53bb[746]](_0x39abx5);this[_0x53bb[994]]()&&(!mxEvent[_0x53bb[721]](_0x39abx3)&&!_0x39abx5[_0x53bb[721]]())&&(null!=_0x39abx4?this[_0x53bb[2459]](_0x39abx4,_0x39abx3):(_0x39abx4=null,this[_0x53bb[2460]]()&&(_0x39abx4=this[_0x53bb[2461]](_0x39abx2[_0x53bb[734]](),_0x39abx2[_0x53bb[735]]())),null!=_0x39abx4?this[_0x53bb[2459]](_0x39abx4,_0x39abx3):this[_0x53bb[2462]](_0x39abx3)||this[_0x53bb[2440]]()))};mxGraph[_0x53bb[202]][_0x53bb[761]]=function(_0x39abx2,_0x39abx3){var _0x39abx4= new mxEventObject(mxEvent.DOUBLE_CLICK,_0x53bb[763],_0x39abx2,_0x53bb[246],_0x39abx3);this[_0x53bb[746]](_0x39abx4);this[_0x53bb[994]]()&&(!mxEvent[_0x53bb[721]](_0x39abx2)&&!_0x39abx4[_0x53bb[721]]()&&null!=_0x39abx3&&this[_0x53bb[2453]](_0x39abx3))&&this[_0x53bb[2451]](_0x39abx3,_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1014]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(!this[_0x53bb[2382]]&&(this[_0x53bb[2384]]||mxUtils[_0x53bb[1134]](this[_0x53bb[526]]))){var _0x39abx9=this[_0x53bb[526]];_0x39abx5=null!=_0x39abx5?_0x39abx5:20;if(_0x39abx2>=_0x39abx9[_0x53bb[360]]&&_0x39abx3>=_0x39abx9[_0x53bb[190]]&&_0x39abx2<=_0x39abx9[_0x53bb[360]]+_0x39abx9[_0x53bb[159]]&&_0x39abx3<=_0x39abx9[_0x53bb[190]]+_0x39abx9[_0x53bb[157]]){var _0x39abxa=_0x39abx9[_0x53bb[360]]+_0x39abx9[_0x53bb[159]]-_0x39abx2;if(_0x39abxa<_0x39abx5){if(_0x39abx2=_0x39abx9[_0x53bb[360]],_0x39abx9[_0x53bb[360]]+=_0x39abx5-_0x39abxa,_0x39abx4&&_0x39abx2==_0x39abx9[_0x53bb[360]]){if(this[_0x53bb[507]]==mxConstants[_0x53bb[508]]){_0x39abx2=this[_0x53bb[441]][_0x53bb[2024]]()[_0x53bb[538]];var _0x39abx12=this[_0x53bb[526]][_0x53bb[1526]]+_0x39abx5-_0x39abxa}else {_0x39abx12=Math[_0x53bb[160]](_0x39abx9[_0x53bb[159]],_0x39abx9[_0x53bb[1526]])+_0x39abx5-_0x39abxa,_0x39abx2=this[_0x53bb[441]][_0x53bb[2051]]()};_0x39abx2[_0x53bb[124]][_0x53bb[117]]=_0x39abx12+_0x53bb[168];_0x39abx9[_0x53bb[360]]+=_0x39abx5-_0x39abxa}}else {_0x39abxa=_0x39abx2-_0x39abx9[_0x53bb[360]],_0x39abxa<_0x39abx5&&(_0x39abx9[_0x53bb[360]]-=_0x39abx5-_0x39abxa)};_0x39abxa=_0x39abx9[_0x53bb[190]]+_0x39abx9[_0x53bb[157]]-_0x39abx3;_0x39abxa<_0x39abx5?(_0x39abx2=_0x39abx9[_0x53bb[190]],_0x39abx9[_0x53bb[190]]+=_0x39abx5-_0x39abxa,_0x39abx2==_0x39abx9[_0x53bb[190]]&&_0x39abx4&&(this[_0x53bb[507]]==mxConstants[_0x53bb[508]]?(_0x39abx2=this[_0x53bb[441]][_0x53bb[2024]]()[_0x53bb[538]],_0x39abx3=this[_0x53bb[526]][_0x53bb[191]]+_0x39abx5-_0x39abxa):(_0x39abx3=Math[_0x53bb[160]](_0x39abx9[_0x53bb[157]],_0x39abx9[_0x53bb[191]])+_0x39abx5-_0x39abxa,_0x39abx2=this[_0x53bb[441]][_0x53bb[2051]]()),_0x39abx2[_0x53bb[124]][_0x53bb[119]]=_0x39abx3+_0x53bb[168],_0x39abx9[_0x53bb[190]]+=_0x39abx5-_0x39abxa)):(_0x39abxa=_0x39abx3-_0x39abx9[_0x53bb[190]],_0x39abxa<_0x39abx5&&(_0x39abx9[_0x53bb[190]]-=_0x39abx5-_0x39abxa))}}else {this[_0x53bb[2383]]&&!this[_0x53bb[2316]][_0x53bb[1124]]&&(null==this[_0x53bb[2463]]&&(this[_0x53bb[2463]]=this[_0x53bb[2464]]()),this[_0x53bb[2463]][_0x53bb[1143]](_0x39abx2+this[_0x53bb[1136]],_0x39abx3+this[_0x53bb[1137]]))}};mxGraph[_0x53bb[202]][_0x53bb[2464]]=function(){return new mxPanningManager(this)};mxGraph[_0x53bb[202]][_0x53bb[2465]]=function(){function _0x39abx2(_0x39abx2){var _0x39abx3=0,_0x39abx3=_0x53bb[2466]==_0x39abx2?2:_0x53bb[2467]==_0x39abx2?4:_0x53bb[2468]==_0x39abx2?6:parseInt(_0x39abx2);isNaN(_0x39abx3)&&(_0x39abx3=0);return _0x39abx3}var _0x39abx3=mxUtils[_0x53bb[275]](this[_0x53bb[526]]),_0x39abx4= new mxRectangle;_0x39abx4[_0x53bb[235]]=_0x39abx2(_0x39abx3[_0x53bb[2469]])+parseInt(_0x39abx3[_0x53bb[357]]||0);_0x39abx4[_0x53bb[236]]=_0x39abx2(_0x39abx3[_0x53bb[2470]])+parseInt(_0x39abx3[_0x53bb[2471]]||0);_0x39abx4[_0x53bb[117]]=_0x39abx2(_0x39abx3[_0x53bb[2472]])+parseInt(_0x39abx3[_0x53bb[1164]]||0);_0x39abx4[_0x53bb[119]]=_0x39abx2(_0x39abx3[_0x53bb[2473]])+parseInt(_0x39abx3[_0x53bb[2474]]||0);return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[2475]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=this[_0x53bb[441]][_0x53bb[255]];var _0x39abx5=this[_0x53bb[441]][_0x53bb[513]],_0x39abx9=this[_0x53bb[2013]],_0x39abxa=_0x39abx2*this[_0x53bb[2012]],_0x39abx9= new mxRectangle(0,0,_0x39abx9[_0x53bb[117]]*_0x39abxa,_0x39abx9[_0x53bb[119]]*_0x39abxa);_0x39abx3=this[_0x53bb[2357]]?Math[_0x53bb[430]](_0x39abx3/_0x39abx9[_0x53bb[117]]):1;_0x39abx4=this[_0x53bb[2357]]?Math[_0x53bb[430]](_0x39abx4/_0x39abx9[_0x53bb[119]]):1;return new mxRectangle(0,0,_0x39abx3*_0x39abx9[_0x53bb[117]]+2+_0x39abx5[_0x53bb[235]]/_0x39abx2,_0x39abx4*_0x39abx9[_0x53bb[119]]+2+_0x39abx5[_0x53bb[236]]/_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2258]]=function(){var _0x39abx2=this[_0x53bb[517]]();if(null!=this[_0x53bb[526]]){var _0x39abx3=this[_0x53bb[2476]](),_0x39abx4=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]+1+_0x39abx3),_0x39abx3=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]+1+_0x39abx3);null!=this[_0x53bb[2387]]&&(_0x39abx4=Math[_0x53bb[160]](_0x39abx4,this[_0x53bb[2387]][_0x53bb[117]]),_0x39abx3=Math[_0x53bb[160]](_0x39abx3,this[_0x53bb[2387]][_0x53bb[119]]));this[_0x53bb[2389]]&&this[_0x53bb[2477]](_0x39abx4,_0x39abx3);if(this[_0x53bb[2361]]||!mxClient[_0x53bb[80]]&&this[_0x53bb[2273]]){var _0x39abx5=this[_0x53bb[2475]](_0x39abx2,_0x39abx4,_0x39abx3);null!=_0x39abx5&&(_0x39abx4=_0x39abx5[_0x53bb[117]],_0x39abx3=_0x39abx5[_0x53bb[119]])};null!=this[_0x53bb[2386]]&&(_0x39abx4=Math[_0x53bb[160]](_0x39abx4,this[_0x53bb[2386]][_0x53bb[117]]*this[_0x53bb[441]][_0x53bb[255]]),_0x39abx3=Math[_0x53bb[160]](_0x39abx3,this[_0x53bb[2386]][_0x53bb[119]]*this[_0x53bb[441]][_0x53bb[255]]));_0x39abx4=Math[_0x53bb[430]](_0x39abx4-1);_0x39abx3=Math[_0x53bb[430]](_0x39abx3-1);this[_0x53bb[507]]==mxConstants[_0x53bb[508]]?(_0x39abx5=this[_0x53bb[441]][_0x53bb[2024]]()[_0x53bb[538]],_0x39abx5[_0x53bb[124]][_0x53bb[2478]]=Math[_0x53bb[160]](1,_0x39abx4)+_0x53bb[168],_0x39abx5[_0x53bb[124]][_0x53bb[2479]]=Math[_0x53bb[160]](1,_0x39abx3)+_0x53bb[168],_0x39abx5[_0x53bb[124]][_0x53bb[117]]=_0x53bb[118],_0x39abx5[_0x53bb[124]][_0x53bb[119]]=_0x53bb[118]):mxClient[_0x53bb[496]]?this[_0x53bb[441]][_0x53bb[2320]](Math[_0x53bb[160]](1,_0x39abx4),Math[_0x53bb[160]](1,_0x39abx3)):(this[_0x53bb[441]][_0x53bb[510]][_0x53bb[124]][_0x53bb[2478]]=Math[_0x53bb[160]](1,_0x39abx4)+_0x53bb[168],this[_0x53bb[441]][_0x53bb[510]][_0x53bb[124]][_0x53bb[2479]]=Math[_0x53bb[160]](1,_0x39abx3)+_0x53bb[168]);this[_0x53bb[2480]](this[_0x53bb[2357]],_0x39abx4-1,_0x39abx3-1)};this[_0x53bb[746]]( new mxEventObject(mxEvent.SIZE,_0x53bb[1562],_0x39abx2))};mxGraph[_0x53bb[202]][_0x53bb[2477]]=function(_0x39abx2,_0x39abx3){if(mxClient[_0x53bb[80]]){if(mxClient[_0x53bb[496]]){var _0x39abx4=this[_0x53bb[2465]]();_0x39abx2+=Math[_0x53bb[160]](2,_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]+1);_0x39abx3+=Math[_0x53bb[160]](2,_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]+1)}else {9<=document[_0x53bb[5]]?(_0x39abx2+=3,_0x39abx3+=5):(_0x39abx2+=1,_0x39abx3+=1)}}else {_0x39abx3+=1};null!=this[_0x53bb[2388]]&&(_0x39abx2=Math[_0x53bb[243]](this[_0x53bb[2388]][_0x53bb[117]],_0x39abx2),_0x39abx3=Math[_0x53bb[243]](this[_0x53bb[2388]][_0x53bb[119]],_0x39abx3));this[_0x53bb[526]][_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[430]](_0x39abx2)+_0x53bb[168];this[_0x53bb[526]][_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[430]](_0x39abx3)+_0x53bb[168]};mxGraph[_0x53bb[202]][_0x53bb[2480]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[441]][_0x53bb[255]],_0x39abx9=this[_0x53bb[441]][_0x53bb[513]],_0x39abxa=this[_0x53bb[2013]],_0x39abx12=_0x39abx5*this[_0x53bb[2012]],_0x39abx9= new mxRectangle(_0x39abx5*_0x39abx9[_0x53bb[235]],_0x39abx5*_0x39abx9[_0x53bb[236]],_0x39abxa[_0x53bb[117]]*_0x39abx12,_0x39abxa[_0x53bb[119]]*_0x39abx12);_0x39abx2=_0x39abx2&&Math[_0x53bb[243]](_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]])>this[_0x53bb[2360]];_0x39abx9[_0x53bb[235]]=mxUtils[_0x53bb[1454]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[117]]);_0x39abx9[_0x53bb[236]]=mxUtils[_0x53bb[1454]](_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[119]]);_0x39abxa=_0x39abx2?Math[_0x53bb[430]]((_0x39abx3-_0x39abx9[_0x53bb[235]])/_0x39abx9[_0x53bb[117]]):0;_0x39abx2=_0x39abx2?Math[_0x53bb[430]]((_0x39abx4-_0x39abx9[_0x53bb[236]])/_0x39abx9[_0x53bb[119]]):0;null==this[_0x53bb[2481]]&&0<_0x39abxa&&(this[_0x53bb[2481]]=[]);if(null!=this[_0x53bb[2481]]){for(_0x39abx12=0;_0x39abx12<=_0x39abxa;_0x39abx12++){var _0x39abx13=[ new mxPoint(_0x39abx9[_0x53bb[235]]+_0x39abx12*_0x39abx9[_0x53bb[117]],1), new mxPoint(_0x39abx9[_0x53bb[235]]+_0x39abx12*_0x39abx9[_0x53bb[117]],_0x39abx4)];null!=this[_0x53bb[2481]][_0x39abx12]?(this[_0x53bb[2481]][_0x39abx12][_0x53bb[255]]=1,this[_0x53bb[2481]][_0x39abx12][_0x53bb[1525]]=_0x39abx13,this[_0x53bb[2481]][_0x39abx12][_0x53bb[258]]()):(_0x39abx13= new mxPolyline(_0x39abx13,this[_0x53bb[2358]],this[_0x53bb[255]]),_0x39abx13[_0x53bb[507]]=this[_0x53bb[507]],_0x39abx13[_0x53bb[1522]]=this[_0x53bb[2359]],_0x39abx13[_0x53bb[255]]=_0x39abx5,_0x39abx13[_0x53bb[176]](this[_0x53bb[441]][_0x53bb[2053]]),_0x39abx13[_0x53bb[258]](),this[_0x53bb[2481]][_0x39abx12]=_0x39abx13)};for(_0x39abx12=_0x39abxa;_0x39abx12<this[_0x53bb[2481]][_0x53bb[67]];_0x39abx12++){this[_0x53bb[2481]][_0x39abx12][_0x53bb[515]]()};this[_0x53bb[2481]][_0x53bb[300]](_0x39abxa,this[_0x53bb[2481]][_0x53bb[67]]-_0x39abxa)};null==this[_0x53bb[2482]]&&0<_0x39abx2&&(this[_0x53bb[2482]]=[]);if(null!=this[_0x53bb[2482]]){for(_0x39abx12=0;_0x39abx12<=_0x39abx2;_0x39abx12++){_0x39abx13=[ new mxPoint(1,_0x39abx9[_0x53bb[236]]+_0x39abx12*_0x39abx9[_0x53bb[119]]), new mxPoint(_0x39abx3,_0x39abx9[_0x53bb[236]]+_0x39abx12*_0x39abx9[_0x53bb[119]])],null!=this[_0x53bb[2482]][_0x39abx12]?(this[_0x53bb[2482]][_0x39abx12][_0x53bb[255]]=1,this[_0x53bb[2482]][_0x39abx12][_0x53bb[1525]]=_0x39abx13,this[_0x53bb[2482]][_0x39abx12][_0x53bb[258]]()):(_0x39abx13= new mxPolyline(_0x39abx13,this[_0x53bb[2358]],_0x39abx5),_0x39abx13[_0x53bb[507]]=this[_0x53bb[507]],_0x39abx13[_0x53bb[1522]]=this[_0x53bb[2359]],_0x39abx13[_0x53bb[255]]=_0x39abx5,_0x39abx13[_0x53bb[176]](this[_0x53bb[441]][_0x53bb[2053]]),_0x39abx13[_0x53bb[258]](),this[_0x53bb[2482]][_0x39abx12]=_0x39abx13)};for(_0x39abx12=_0x39abx2;_0x39abx12<this[_0x53bb[2482]][_0x53bb[67]];_0x39abx12++){this[_0x53bb[2482]][_0x39abx12][_0x53bb[515]]()};this[_0x53bb[2482]][_0x53bb[300]](_0x39abx2,this[_0x53bb[2482]][_0x53bb[67]]-_0x39abx2)}};mxGraph[_0x53bb[202]][_0x53bb[1705]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[474]](_0x39abx2),_0x39abx4=null,_0x39abx4=this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)?this[_0x53bb[94]][_0x53bb[2077]]():this[_0x53bb[94]][_0x53bb[2076]]();null!=_0x39abx3&&(_0x39abx4=this[_0x53bb[2483]](this[_0x53bb[94]][_0x53bb[1705]](_0x39abx3,_0x39abx4)));null==_0x39abx4&&(_0x39abx4=mxGraph[_0x53bb[202]][_0x53bb[2346]]);return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[2483]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=_0x39abx2[mxConstants[_0x53bb[2484]]],_0x39abx4=this[_0x53bb[2485]](_0x39abx3);null!=_0x39abx4?_0x39abx2[mxConstants[_0x53bb[2484]]]=_0x39abx4:_0x39abx4=_0x39abx3;null!=_0x39abx4&&_0x53bb[2486]==_0x39abx4[_0x53bb[85]](0,11)&&(_0x39abx3=_0x39abx4[_0x53bb[2]](_0x53bb[537]),0<_0x39abx3&&(_0x39abx4=_0x39abx4[_0x53bb[85]](0,_0x39abx3)+_0x53bb[2487]+_0x39abx4[_0x53bb[85]](_0x39abx3+1)),_0x39abx2[mxConstants[_0x53bb[2484]]]=_0x39abx4)};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2488]]=function(_0x39abx2,_0x39abx3){_0x39abx3=_0x39abx3||this[_0x53bb[897]]();if(null!=_0x39abx3){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx3[_0x53bb[67]];_0x39abx4++){this[_0x53bb[251]][_0x53bb[475]](_0x39abx3[_0x39abx4],_0x39abx2)}}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2489]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=_0x39abx4||this[_0x53bb[2452]]();this[_0x53bb[2490]](_0x39abx2,_0x39abx3,[_0x39abx4])};mxGraph[_0x53bb[202]][_0x53bb[2490]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;_0x39abx4=_0x39abx4||this[_0x53bb[897]]();if(null!=_0x39abx4&&0<_0x39abx4[_0x53bb[67]]){var _0x39abx5=this[_0x53bb[441]][_0x53bb[248]](_0x39abx4[0]),_0x39abx5=null!=_0x39abx5?_0x39abx5[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx4[0]);null!=_0x39abx5&&(_0x39abx3=mxUtils[_0x53bb[433]](_0x39abx5,_0x39abx2,_0x39abx3)?0:1,this[_0x53bb[1717]](_0x39abx2,_0x39abx3,_0x39abx4))}};mxGraph[_0x53bb[202]][_0x53bb[1717]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=_0x39abx4||this[_0x53bb[897]]();mxUtils[_0x53bb[1717]](this[_0x53bb[251]],_0x39abx4,_0x39abx2,_0x39abx3)};mxGraph[_0x53bb[202]][_0x53bb[2491]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[2492]](_0x39abx2,_0x39abx3,null,_0x39abx4)};mxGraph[_0x53bb[202]][_0x53bb[2492]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx5=_0x39abx5||this[_0x53bb[897]]();if(null!=_0x39abx5&&0<_0x39abx5[_0x53bb[67]]){if(null==_0x39abx4){var _0x39abx9=this[_0x53bb[441]][_0x53bb[248]](_0x39abx5[0]),_0x39abx9=null!=_0x39abx9?_0x39abx9[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx5[0]);null!=_0x39abx9&&(_0x39abx4=(parseInt(_0x39abx9[_0x39abx2]||0)&_0x39abx3)!=_0x39abx3)};mxUtils[_0x53bb[2492]](this[_0x53bb[251]],_0x39abx5,_0x39abx2,_0x39abx3,_0x39abx4)}};mxGraph[_0x53bb[202]][_0x53bb[849]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null==_0x39abx3&&(_0x39abx3=this[_0x53bb[897]]());if(null!=_0x39abx3&&1<_0x39abx3[_0x53bb[67]]){if(null==_0x39abx4){for(var _0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){var _0x39abx9=this[_0x53bb[1198]](_0x39abx3[_0x39abx5]);if(null!=_0x39abx9&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx3[_0x39abx5])){if(null==_0x39abx4){if(_0x39abx2==mxConstants[_0x53bb[479]]){_0x39abx4=_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]/2;break}else {if(_0x39abx2==mxConstants[_0x53bb[480]]){_0x39abx4=_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]}else {if(_0x39abx2==mxConstants[_0x53bb[1687]]){_0x39abx4=_0x39abx9[_0x53bb[236]]}else {if(_0x39abx2==mxConstants[_0x53bb[481]]){_0x39abx4=_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]/2;break}else {_0x39abx4=_0x39abx2==mxConstants[_0x53bb[482]]?_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]:_0x39abx9[_0x53bb[235]]}}}}}else {_0x39abx4=_0x39abx2==mxConstants[_0x53bb[480]]?Math[_0x53bb[160]](_0x39abx4,_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]):_0x39abx2==mxConstants[_0x53bb[1687]]?Math[_0x53bb[243]](_0x39abx4,_0x39abx9[_0x53bb[236]]):_0x39abx2==mxConstants[_0x53bb[482]]?Math[_0x53bb[160]](_0x39abx4,_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]):Math[_0x53bb[243]](_0x39abx4,_0x39abx9[_0x53bb[235]])}}}};if(null!=_0x39abx4){this[_0x53bb[251]][_0x53bb[473]]();try{for(_0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){_0x39abx9=this[_0x53bb[1198]](_0x39abx3[_0x39abx5]),null!=_0x39abx9&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx3[_0x39abx5])&&(_0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abx2==mxConstants[_0x53bb[479]]?_0x39abx9[_0x53bb[235]]=_0x39abx4-_0x39abx9[_0x53bb[117]]/2:_0x39abx2==mxConstants[_0x53bb[480]]?_0x39abx9[_0x53bb[235]]=_0x39abx4-_0x39abx9[_0x53bb[117]]:_0x39abx2==mxConstants[_0x53bb[1687]]?_0x39abx9[_0x53bb[236]]=_0x39abx4:_0x39abx2==mxConstants[_0x53bb[481]]?_0x39abx9[_0x53bb[236]]=_0x39abx4-_0x39abx9[_0x53bb[119]]/2:_0x39abx2==mxConstants[_0x53bb[482]]?_0x39abx9[_0x53bb[236]]=_0x39abx4-_0x39abx9[_0x53bb[119]]:_0x39abx9[_0x53bb[235]]=_0x39abx4,this[_0x53bb[251]][_0x53bb[1724]](_0x39abx3[_0x39abx5],_0x39abx9))};this[_0x53bb[746]]( new mxEventObject(mxEvent.ALIGN_CELLS,_0x53bb[611],_0x39abx2,_0x53bb[895],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[854]]=function(_0x39abx2){if(null!=_0x39abx2&&null!=this[_0x53bb[2356]]){this[_0x53bb[251]][_0x53bb[473]]();try{var _0x39abx3=this[_0x53bb[251]][_0x53bb[474]](_0x39abx2);null==_0x39abx3||0==_0x39abx3[_0x53bb[67]]?this[_0x53bb[251]][_0x53bb[475]](_0x39abx2,this[_0x53bb[2356]]):this[_0x53bb[251]][_0x53bb[475]](_0x39abx2,null);this[_0x53bb[1809]](_0x39abx2);this[_0x53bb[746]]( new mxEventObject(mxEvent.FLIP_EDGE,_0x53bb[1989],_0x39abx2))}finally{this[_0x53bb[251]][_0x53bb[476]]()}};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2493]]=function(_0x39abx2){this[_0x53bb[2336]][_0x53bb[207]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2494]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4=0;_0x39abx4<this[_0x53bb[2336]][_0x53bb[67]];_0x39abx4++){this[_0x53bb[2336]][_0x39abx4]!=_0x39abx2&&_0x39abx3[_0x53bb[207]](this[_0x53bb[2336]][_0x39abx4])};this[_0x53bb[2336]]=_0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2485]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[2336]][_0x53bb[67]];_0x39abx3++){var _0x39abx4=this[_0x53bb[2336]][_0x39abx3][_0x53bb[1202]](_0x39abx2);if(null!=_0x39abx4){return _0x39abx4}}};return null};mxGraph[_0x53bb[202]][_0x53bb[840]]=function(_0x39abx2,_0x39abx3){null==_0x39abx3&&(_0x39abx3=mxUtils[_0x53bb[1779]](this[_0x53bb[897]](),!0));this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[841]](_0x39abx3,_0x39abx2),this[_0x53bb[746]]( new mxEventObject(mxEvent.ORDER_CELLS,_0x53bb[2495],_0x39abx2,_0x53bb[895],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[841]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx4]);_0x39abx3?this[_0x53bb[251]][_0x53bb[99]](_0x39abx5,_0x39abx2[_0x39abx4],_0x39abx4):this[_0x53bb[251]][_0x53bb[99]](_0x39abx5,_0x39abx2[_0x39abx4],this[_0x53bb[251]][_0x53bb[262]](_0x39abx5)-1)};this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_ORDERED,_0x53bb[2495],_0x39abx3,_0x53bb[895],_0x39abx2))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[844]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null==_0x39abx4&&(_0x39abx4=mxUtils[_0x53bb[1779]](this[_0x53bb[897]](),!0));_0x39abx4=this[_0x53bb[2496]](_0x39abx4);null==_0x39abx2&&(_0x39abx2=this[_0x53bb[2497]](_0x39abx4));var _0x39abx5=this[_0x53bb[2498]](_0x39abx2,_0x39abx4,_0x39abx3);if(0<_0x39abx4[_0x53bb[67]]&&null!=_0x39abx5){var _0x39abx9=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2);null==_0x39abx9&&(_0x39abx9=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx4[0]));this[_0x53bb[251]][_0x53bb[473]]();try{null==this[_0x53bb[1198]](_0x39abx2)&&this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2, new mxGeometry);var _0x39abxa=this[_0x53bb[251]][_0x53bb[262]](_0x39abx9);this[_0x53bb[833]]([_0x39abx2],_0x39abx9,_0x39abxa,null,null,!1);_0x39abxa=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2);this[_0x53bb[833]](_0x39abx4,_0x39abx2,_0x39abxa,null,null,!1,!1);this[_0x53bb[835]](_0x39abx4,-_0x39abx5[_0x53bb[235]],-_0x39abx5[_0x53bb[236]],!1,!0);this[_0x53bb[837]]([_0x39abx2],[_0x39abx5]);this[_0x53bb[746]]( new mxEventObject(mxEvent.GROUP_CELLS,_0x53bb[1504],_0x39abx2,_0x53bb[467],_0x39abx3,_0x53bb[895],_0x39abx4))}finally{this[_0x53bb[251]][_0x53bb[476]]()}};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2496]]=function(_0x39abx2){var _0x39abx3=[];if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){var _0x39abx4=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[0]);_0x39abx3[_0x53bb[207]](_0x39abx2[0]);for(var _0x39abx5=1;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx5])==_0x39abx4&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx5])}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2498]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=this[_0x53bb[1729]](_0x39abx3);null!=_0x39abx3&&(this[_0x53bb[1730]](_0x39abx2)&&(_0x39abx2=this[_0x53bb[1731]](_0x39abx2),_0x39abx3[_0x53bb[235]]-=_0x39abx2[_0x53bb[117]],_0x39abx3[_0x53bb[236]]-=_0x39abx2[_0x53bb[119]],_0x39abx3[_0x53bb[117]]+=_0x39abx2[_0x53bb[117]],_0x39abx3[_0x53bb[119]]+=_0x39abx2[_0x53bb[119]]),_0x39abx3[_0x53bb[235]]-=_0x39abx4,_0x39abx3[_0x53bb[236]]-=_0x39abx4,_0x39abx3[_0x53bb[117]]+=2*_0x39abx4,_0x39abx3[_0x53bb[119]]+=2*_0x39abx4);return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2497]]=function(_0x39abx2){_0x39abx2= new mxCell(_0x53bb[110]);_0x39abx2[_0x53bb[1993]](!0);_0x39abx2[_0x53bb[1995]](!1);return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[845]]=function(_0x39abx2){var _0x39abx3=[];if(null==_0x39abx2){_0x39abx2=this[_0x53bb[897]]();for(var _0x39abx4=[],_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){0<this[_0x53bb[251]][_0x53bb[262]](_0x39abx2[_0x39abx5])&&_0x39abx4[_0x53bb[207]](_0x39abx2[_0x39abx5])};_0x39abx2=_0x39abx4};if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){this[_0x53bb[251]][_0x53bb[473]]();try{for(_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){var _0x39abx9=this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2[_0x39abx5]);if(null!=_0x39abx9&&0<_0x39abx9[_0x53bb[67]]){var _0x39abx9=_0x39abx9[_0x53bb[1853]](),_0x39abxa=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx5]),_0x39abx12=this[_0x53bb[251]][_0x53bb[262]](_0x39abxa);this[_0x53bb[833]](_0x39abx9,_0x39abxa,_0x39abx12,null,null,!0);_0x39abx3=_0x39abx3[_0x53bb[1919]](_0x39abx9)}};this[_0x53bb[843]](this[_0x53bb[2499]](_0x39abx2));this[_0x53bb[746]]( new mxEventObject(mxEvent.UNGROUP_CELLS,_0x53bb[895],_0x39abx2))}finally{this[_0x53bb[251]][_0x53bb[476]]()}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[846]]=function(_0x39abx2){null==_0x39abx2&&(_0x39abx2=this[_0x53bb[897]]());this[_0x53bb[251]][_0x53bb[473]]();try{var _0x39abx3=this[_0x53bb[902]](),_0x39abx4=this[_0x53bb[251]][_0x53bb[262]](_0x39abx3);this[_0x53bb[833]](_0x39abx2,_0x39abx3,_0x39abx4,null,null,!0);this[_0x53bb[746]]( new mxEventObject(mxEvent.REMOVE_CELLS_FROM_PARENT,_0x53bb[895],_0x39abx2))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[1917]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null==_0x39abx2&&(_0x39abx2=this[_0x53bb[897]]());_0x39abx3=null!=_0x39abx3?_0x39abx3:0;_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){var _0x39abx9=this[_0x53bb[1198]](_0x39abx2[_0x39abx5]);if(null!=_0x39abx9){var _0x39abxa=this[_0x53bb[1955]](_0x39abx2[_0x39abx5]);if(null!=_0x39abxa&&0<_0x39abxa[_0x53bb[67]]){var _0x39abx12=this[_0x53bb[1729]](_0x39abxa);if(0<_0x39abx12[_0x53bb[117]]&&0<_0x39abx12[_0x53bb[119]]){var _0x39abx13=this[_0x53bb[1730]](_0x39abx2[_0x39abx5])?this[_0x53bb[1731]](_0x39abx2[_0x39abx5]): new mxRectangle,_0x39abx9=_0x39abx9[_0x53bb[238]]();_0x39abx4&&(_0x39abx9[_0x53bb[235]]+=_0x39abx12[_0x53bb[235]]-_0x39abx13[_0x53bb[117]]-_0x39abx3,_0x39abx9[_0x53bb[236]]+=_0x39abx12[_0x53bb[236]]-_0x39abx13[_0x53bb[119]]-_0x39abx3);_0x39abx9[_0x53bb[117]]=_0x39abx12[_0x53bb[117]]+_0x39abx13[_0x53bb[117]]+2*_0x39abx3;_0x39abx9[_0x53bb[119]]=_0x39abx12[_0x53bb[119]]+_0x39abx13[_0x53bb[119]]+2*_0x39abx3;this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2[_0x39abx5],_0x39abx9);this[_0x53bb[834]](_0x39abxa,-_0x39abx12[_0x53bb[235]]+_0x39abx13[_0x53bb[117]]+_0x39abx3,-_0x39abx12[_0x53bb[236]]+_0x39abx13[_0x53bb[119]]+_0x39abx3)}}}}}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[899]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;var _0x39abx4=null;if(null!=_0x39abx2){for(var _0x39abx5={},_0x39abx4=[],_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2[_0x39abx9]);_0x39abx5[_0x39abxa]=_0x39abx2[_0x39abx9];_0x39abx4[_0x53bb[207]](_0x39abx2[_0x39abx9])};if(0<_0x39abx4[_0x53bb[67]]){for(var _0x39abxa=this[_0x53bb[441]][_0x53bb[255]],_0x39abx12=this[_0x53bb[441]][_0x53bb[513]],_0x39abx4=this[_0x53bb[251]][_0x53bb[899]](_0x39abx2,!0),_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){if(!_0x39abx3&&this[_0x53bb[251]][_0x53bb[250]](_0x39abx4[_0x39abx9])&&null!=this[_0x53bb[2500]](_0x39abx4[_0x39abx9],this[_0x53bb[251]][_0x53bb[1709]](_0x39abx4[_0x39abx9],!0),this[_0x53bb[251]][_0x53bb[1709]](_0x39abx4[_0x39abx9],!1))){_0x39abx4[_0x39abx9]=null}else {var _0x39abx13=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx4[_0x39abx9]);if(null!=_0x39abx13){var _0x39abx14=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x39abx9]),_0x39abx15=this[_0x53bb[441]][_0x53bb[248]](this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx9]));if(null!=_0x39abx14&&null!=_0x39abx15){var _0x39abx16=_0x39abx15[_0x53bb[2078]][_0x53bb[235]],_0x39abx15=_0x39abx15[_0x53bb[2078]][_0x53bb[236]];if(this[_0x53bb[251]][_0x53bb[250]](_0x39abx4[_0x39abx9])){for(var _0x39abx14=_0x39abx14[_0x53bb[439]],_0x39abx17=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x39abx9],!0),_0x39abx18=mxCellPath[_0x53bb[385]](_0x39abx17);null!=_0x39abx17&&null==_0x39abx5[_0x39abx18];){_0x39abx17=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx17),_0x39abx18=mxCellPath[_0x53bb[385]](_0x39abx17)};null==_0x39abx17&&_0x39abx13[_0x53bb[2007]]( new mxPoint(_0x39abx14[0][_0x53bb[235]]/_0x39abxa-_0x39abx12[_0x53bb[235]],_0x39abx14[0][_0x53bb[236]]/_0x39abxa-_0x39abx12[_0x53bb[236]]),!0);_0x39abx17=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x39abx9],!1);for(_0x39abx18=mxCellPath[_0x53bb[385]](_0x39abx17);null!=_0x39abx17&&null==_0x39abx5[_0x39abx18];){_0x39abx17=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx17),_0x39abx18=mxCellPath[_0x53bb[385]](_0x39abx17)};null==_0x39abx17&&(_0x39abx17=_0x39abx14[_0x53bb[67]]-1,_0x39abx13[_0x53bb[2007]]( new mxPoint(_0x39abx14[_0x39abx17][_0x53bb[235]]/_0x39abxa-_0x39abx12[_0x53bb[235]],_0x39abx14[_0x39abx17][_0x53bb[236]]/_0x39abxa-_0x39abx12[_0x53bb[236]]),!1));_0x39abx13=_0x39abx13[_0x53bb[1525]];if(null!=_0x39abx13){for(_0x39abx14=0;_0x39abx14<_0x39abx13[_0x53bb[67]];_0x39abx14++){_0x39abx13[_0x39abx14][_0x53bb[235]]+=_0x39abx16,_0x39abx13[_0x39abx14][_0x53bb[236]]+=_0x39abx15}}}else {_0x39abx13[_0x53bb[235]]+=_0x39abx16,_0x39abx13[_0x53bb[236]]+=_0x39abx15}}}}}}else {_0x39abx4=[]}};return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[2501]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){_0x39abx3=this[_0x53bb[2502]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14);return this[_0x53bb[2103]](_0x39abx3,_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2502]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){_0x39abx2= new mxGeometry(_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12);_0x39abx2[_0x53bb[1500]]=null!=_0x39abx14?_0x39abx14:!1;_0x39abx4= new mxCell(_0x39abx4,_0x39abx2,_0x39abx13);_0x39abx4[_0x53bb[1945]](_0x39abx3);_0x39abx4[_0x53bb[1993]](!0);_0x39abx4[_0x53bb[1995]](!0);return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[1960]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx3=this[_0x53bb[2503]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa);return this[_0x53bb[2504]](_0x39abx3,_0x39abx2,_0x39abx5,_0x39abx9)};mxGraph[_0x53bb[202]][_0x53bb[2503]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx2= new mxCell(_0x39abx4, new mxGeometry,_0x39abxa);_0x39abx2[_0x53bb[1945]](_0x39abx3);_0x39abx2[_0x53bb[1994]](!0);_0x39abx2[_0x53bb[256]][_0x53bb[1500]]= !0;return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2504]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return this[_0x53bb[2103]](_0x39abx2,_0x39abx3,_0x39abx9,_0x39abx4,_0x39abx5)};mxGraph[_0x53bb[202]][_0x53bb[2103]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return this[_0x53bb[832]]([_0x39abx2],_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)[0]};mxGraph[_0x53bb[202]][_0x53bb[832]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){null==_0x39abx3&&(_0x39abx3=this[_0x53bb[902]]());null==_0x39abx4&&(_0x39abx4=this[_0x53bb[251]][_0x53bb[262]](_0x39abx3));this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[833]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,!1,!0),this[_0x53bb[746]]( new mxEventObject(mxEvent.ADD_CELLS,_0x53bb[895],_0x39abx2,_0x53bb[1101],_0x39abx3,_0x53bb[1983],_0x39abx4,_0x53bb[1097],_0x39abx5,_0x53bb[772],_0x39abx9))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[833]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){if(null!=_0x39abx2&&null!=_0x39abx3&&null!=_0x39abx4){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx13=_0x39abxa?this[_0x53bb[441]][_0x53bb[248]](_0x39abx3):null,_0x39abx14=null!=_0x39abx13?_0x39abx13[_0x53bb[2078]]:null,_0x39abx15= new mxPoint(0,0),_0x39abx13=0;_0x39abx13<_0x39abx2[_0x53bb[67]];_0x39abx13++){if(null==_0x39abx2[_0x39abx13]){_0x39abx4--}else {var _0x39abx16=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx13]);if(null!=_0x39abx14&&_0x39abx2[_0x39abx13]!=_0x39abx3&&_0x39abx3!=_0x39abx16){var _0x39abx17=this[_0x53bb[441]][_0x53bb[248]](_0x39abx16),_0x39abx18=null!=_0x39abx17?_0x39abx17[_0x53bb[2078]]:_0x39abx15,_0x39abx19=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2[_0x39abx13]);if(null!=_0x39abx19){var _0x39abx1a=_0x39abx18[_0x53bb[235]]-_0x39abx14[_0x53bb[235]],_0x39abx1b=_0x39abx18[_0x53bb[236]]-_0x39abx14[_0x53bb[236]],_0x39abx19=_0x39abx19[_0x53bb[238]]();_0x39abx19[_0x53bb[513]](_0x39abx1a,_0x39abx1b);!_0x39abx19[_0x53bb[1500]]&&(this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2[_0x39abx13])&&!this[_0x53bb[2505]]())&&(_0x39abx19[_0x53bb[235]]=Math[_0x53bb[160]](0,_0x39abx19[_0x53bb[235]]),_0x39abx19[_0x53bb[236]]=Math[_0x53bb[160]](0,_0x39abx19[_0x53bb[236]]));this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2[_0x39abx13],_0x39abx19)}};_0x39abx3==_0x39abx16&&_0x39abx4+_0x39abx13>this[_0x53bb[251]][_0x53bb[262]](_0x39abx3)&&_0x39abx4--;this[_0x53bb[251]][_0x53bb[99]](_0x39abx3,_0x39abx2[_0x39abx13],_0x39abx4+_0x39abx13);this[_0x53bb[2506]]()&&this[_0x53bb[2507]](_0x39abx2[_0x39abx13])&&this[_0x53bb[2508]](_0x39abx2[_0x39abx13]);(null==_0x39abx12||_0x39abx12)&&this[_0x53bb[2509]](_0x39abx2[_0x39abx13]);null!=_0x39abx5&&this[_0x53bb[852]](_0x39abx2[_0x39abx13],_0x39abx5,!0);null!=_0x39abx9&&this[_0x53bb[852]](_0x39abx2[_0x39abx13],_0x39abx9,!1)}};this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_ADDED,_0x53bb[895],_0x39abx2,_0x53bb[1101],_0x39abx3,_0x53bb[1983],_0x39abx4,_0x53bb[1097],_0x39abx5,_0x53bb[772],_0x39abx9,_0x53bb[492],_0x39abxa))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[842]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;null==_0x39abx2&&(_0x39abx2=this[_0x53bb[2510]](this[_0x53bb[897]]()));_0x39abx3&&(_0x39abx2=this[_0x53bb[2510]](this[_0x53bb[2499]](_0x39abx2)));this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[843]](_0x39abx2),this[_0x53bb[746]]( new mxEventObject(mxEvent.REMOVE_CELLS,_0x53bb[895],_0x39abx2,_0x53bb[2511],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[843]]=function(_0x39abx2){if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){var _0x39abx3=this[_0x53bb[441]][_0x53bb[255]],_0x39abx4=this[_0x53bb[441]][_0x53bb[513]];this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx5={},_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2[_0x39abx9]);_0x39abx5[_0x39abxa]=_0x39abx2[_0x39abx9]};for(_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){for(var _0x39abx12=this[_0x53bb[1756]](_0x39abx2[_0x39abx9]),_0x39abx13=0;_0x39abx13<_0x39abx12[_0x53bb[67]];_0x39abx13++){if(_0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx12[_0x39abx13]),null==_0x39abx5[_0x39abxa]){var _0x39abx14=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx12[_0x39abx13]);if(null!=_0x39abx14){var _0x39abx15=this[_0x53bb[441]][_0x53bb[248]](_0x39abx12[_0x39abx13]);if(null!=_0x39abx15){var _0x39abx14=_0x39abx14[_0x53bb[238]](),_0x39abx16=_0x39abx15[_0x53bb[1710]](!0)==_0x39abx2[_0x39abx9],_0x39abx17=_0x39abx15[_0x53bb[439]],_0x39abx18=_0x39abx16?0:_0x39abx17[_0x53bb[67]]-1;_0x39abx14[_0x53bb[2007]]( new mxPoint(_0x39abx17[_0x39abx18][_0x53bb[235]]/_0x39abx3-_0x39abx4[_0x53bb[235]],_0x39abx17[_0x39abx18][_0x53bb[236]]/_0x39abx3-_0x39abx4[_0x53bb[236]]),_0x39abx16);this[_0x53bb[251]][_0x53bb[1957]](_0x39abx12[_0x39abx13],null,_0x39abx16);this[_0x53bb[251]][_0x53bb[1724]](_0x39abx12[_0x39abx13],_0x39abx14)}}}};this[_0x53bb[251]][_0x53bb[205]](_0x39abx2[_0x39abx9])};this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_REMOVED,_0x53bb[895],_0x39abx2))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[853]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=_0x39abx5||0;_0x39abx9=_0x39abx9||0;null==_0x39abx4&&(_0x39abx4=this[_0x53bb[899]]([_0x39abx2])[0]);var _0x39abxa=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2),_0x39abx12=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!0);this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[835]](_0x39abx3,_0x39abx5,_0x39abx9,!1,!1),this[_0x53bb[833]](_0x39abx3,_0x39abxa,this[_0x53bb[251]][_0x53bb[262]](_0x39abxa),null,null,!0),this[_0x53bb[833]]([_0x39abx4],_0x39abxa,this[_0x53bb[251]][_0x53bb[262]](_0x39abxa),_0x39abx12,_0x39abx3[0],!1),this[_0x53bb[852]](_0x39abx2,_0x39abx3[0],!0),this[_0x53bb[746]]( new mxEventObject(mxEvent.SPLIT_EDGE,_0x53bb[1989],_0x39abx2,_0x53bb[895],_0x39abx3,_0x53bb[2512],_0x39abx4,_0x53bb[1126],_0x39abx5,_0x53bb[1125],_0x39abx9))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[838]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null==_0x39abx3&&(_0x39abx3=this[_0x53bb[897]]());_0x39abx4&&(_0x39abx3=this[_0x53bb[2499]](_0x39abx3));this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[839]](_0x39abx3,_0x39abx2),this[_0x53bb[746]]( new mxEventObject(mxEvent.TOGGLE_CELLS,_0x53bb[539],_0x39abx2,_0x53bb[895],_0x39abx3,_0x53bb[2511],_0x39abx4))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[839]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){this[_0x53bb[251]][_0x53bb[175]](_0x39abx2[_0x39abx4],_0x39abx3)}}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[847]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;null==_0x39abx4&&(_0x39abx4=this[_0x53bb[2513]](this[_0x53bb[897]](),_0x39abx2));this[_0x53bb[2126]](!1);this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[848]](_0x39abx4,_0x39abx2,_0x39abx3,_0x39abx5),this[_0x53bb[746]]( new mxEventObject(mxEvent.FOLD_CELLS,_0x53bb[2514],_0x39abx2,_0x53bb[2515],_0x39abx3,_0x53bb[895],_0x39abx4))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[848]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){if((!_0x39abx5||this[_0x53bb[2516]](_0x39abx2[_0x39abx9],_0x39abx3))&&_0x39abx3!=this[_0x53bb[1742]](_0x39abx2[_0x39abx9])){if(this[_0x53bb[251]][_0x53bb[1972]](_0x39abx2[_0x39abx9],_0x39abx3),this[_0x53bb[2517]](_0x39abx2[_0x39abx9],_0x39abx3),this[_0x53bb[2507]](_0x39abx2[_0x39abx9])&&this[_0x53bb[2508]](_0x39abx2[_0x39abx9]),_0x39abx4){var _0x39abxa=this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2[_0x39abx9]);this[_0x53bb[847]](_0x39abxa,_0x39abx3,_0x39abx4)}}};this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_FOLDED,_0x53bb[895],_0x39abx2,_0x53bb[2514],_0x39abx3,_0x53bb[2515],_0x39abx4))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2517]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2){var _0x39abx4=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2);null!=_0x39abx4&&(_0x39abx4=_0x39abx4[_0x53bb[238]](),this[_0x53bb[2518]](_0x39abx2,_0x39abx4,_0x39abx3),_0x39abx4[_0x53bb[2005]](),this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2,_0x39abx4))}};mxGraph[_0x53bb[202]][_0x53bb[2518]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2&&null!=_0x39abx3){_0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx4=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);if(null==_0x39abx3[_0x53bb[2002]]){var _0x39abx5=_0x39abx3;this[_0x53bb[2394]]&&(_0x39abx2=this[_0x53bb[2519]](_0x39abx2),null!=_0x39abx2&&(_0x39abx5=_0x39abx2,_0x39abx2=mxUtils[_0x53bb[433]](_0x39abx4,mxConstants.STYLE_STARTSIZE),0<_0x39abx2&&(_0x39abx5[_0x53bb[119]]=Math[_0x53bb[160]](_0x39abx5[_0x53bb[119]],_0x39abx2))));_0x39abx3[_0x53bb[2002]]= new mxRectangle(0,0,_0x39abx5[_0x53bb[117]],_0x39abx5[_0x53bb[119]])};if(null!=_0x39abx3[_0x53bb[2002]]){_0x39abx3[_0x53bb[2002]][_0x53bb[235]]=_0x39abx3[_0x53bb[235]];_0x39abx3[_0x53bb[2002]][_0x53bb[236]]=_0x39abx3[_0x53bb[236]];var _0x39abx9=mxUtils[_0x53bb[431]](_0x39abx4[mxConstants[_0x53bb[2278]]]||_0x53bb[468]);0!=_0x39abx9&&(_0x39abx2=_0x39abx3[_0x53bb[2002]][_0x53bb[241]]()-_0x39abx3[_0x53bb[241]](),_0x39abx4=_0x39abx3[_0x53bb[2002]][_0x53bb[242]]()-_0x39abx3[_0x53bb[242]](),_0x39abx5=Math[_0x53bb[426]](_0x39abx9),_0x39abx9=Math[_0x53bb[427]](_0x39abx9),_0x39abx3[_0x53bb[2002]][_0x53bb[235]]+=_0x39abx5*_0x39abx2-_0x39abx9*_0x39abx4-_0x39abx2,_0x39abx3[_0x53bb[2002]][_0x53bb[236]]+=_0x39abx9*_0x39abx2+_0x39abx5*_0x39abx4-_0x39abx4)}}};mxGraph[_0x53bb[202]][_0x53bb[2499]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[1853]]();return _0x39abx3=_0x39abx3[_0x53bb[1919]](this[_0x53bb[2520]](_0x39abx2))};mxGraph[_0x53bb[202]][_0x53bb[2520]]=function(_0x39abx2){var _0x39abx3=[];if(null!=_0x39abx2){for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){for(var _0x39abx5=this[_0x53bb[251]][_0x53bb[1707]](_0x39abx2[_0x39abx4]),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){_0x39abx3[_0x53bb[207]](this[_0x53bb[251]][_0x53bb[1708]](_0x39abx2[_0x39abx4],_0x39abx9))};_0x39abx5=this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2[_0x39abx4]);_0x39abx3=_0x39abx3[_0x53bb[1919]](this[_0x53bb[2520]](_0x39abx5))}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[858]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[2457]](_0x39abx2,_0x39abx3),this[_0x53bb[746]]( new mxEventObject(mxEvent.UPDATE_CELL_SIZE,_0x53bb[246],_0x39abx2,_0x53bb[2521],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2457]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2){this[_0x53bb[251]][_0x53bb[473]]();try{var _0x39abx4=this[_0x53bb[2519]](_0x39abx2),_0x39abx5=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx4&&null!=_0x39abx5){var _0x39abx9=this[_0x53bb[1742]](_0x39abx2),_0x39abx5=_0x39abx5[_0x53bb[238]]();if(this[_0x53bb[1730]](_0x39abx2)){var _0x39abxa=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx12=null!=_0x39abxa?_0x39abxa[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2),_0x39abx13=this[_0x53bb[251]][_0x53bb[474]](_0x39abx2);null==_0x39abx13&&(_0x39abx13=_0x53bb[110]);mxUtils[_0x53bb[433]](_0x39abx12,mxConstants.STYLE_HORIZONTAL,!0)?(_0x39abx13=mxUtils[_0x53bb[475]](_0x39abx13,mxConstants.STYLE_STARTSIZE,_0x39abx4[_0x53bb[119]]+8),_0x39abx9&&(_0x39abx5[_0x53bb[119]]=_0x39abx4[_0x53bb[119]]+8),_0x39abx5[_0x53bb[117]]=_0x39abx4[_0x53bb[117]]):(_0x39abx13=mxUtils[_0x53bb[475]](_0x39abx13,mxConstants.STYLE_STARTSIZE,_0x39abx4[_0x53bb[117]]+8),_0x39abx9&&(_0x39abx5[_0x53bb[117]]=_0x39abx4[_0x53bb[117]]+8),_0x39abx5[_0x53bb[119]]=_0x39abx4[_0x53bb[119]]);this[_0x53bb[251]][_0x53bb[475]](_0x39abx2,_0x39abx13)}else {_0x39abx5[_0x53bb[117]]=_0x39abx4[_0x53bb[117]],_0x39abx5[_0x53bb[119]]=_0x39abx4[_0x53bb[119]]};if(!_0x39abx3&& !_0x39abx9){var _0x39abx14=this[_0x53bb[441]][_0x53bb[1799]](this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2));if(null!=_0x39abx14){var _0x39abx15=this[_0x53bb[441]][_0x53bb[513]],_0x39abx16=this[_0x53bb[441]][_0x53bb[255]],_0x39abx17=(_0x39abx14[_0x53bb[236]]+_0x39abx14[_0x53bb[119]])/_0x39abx16-_0x39abx5[_0x53bb[236]]-_0x39abx15[_0x53bb[236]];_0x39abx5[_0x53bb[117]]=Math[_0x53bb[160]](_0x39abx5[_0x53bb[117]],(_0x39abx14[_0x53bb[235]]+_0x39abx14[_0x53bb[117]])/_0x39abx16-_0x39abx5[_0x53bb[235]]-_0x39abx15[_0x53bb[235]]);_0x39abx5[_0x53bb[119]]=Math[_0x53bb[160]](_0x39abx5[_0x53bb[119]],_0x39abx17)}};this[_0x53bb[837]]([_0x39abx2],[_0x39abx5])}}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2519]]=function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2){var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx5=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);if(null!=_0x39abx5&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)){var _0x39abx9=_0x39abx5[mxConstants[_0x53bb[2185]]]||mxConstants[_0x53bb[483]],_0x39abxa=0,_0x39abx3=0;if((null!=this[_0x53bb[1202]](_0x39abx4)||null!=_0x39abx5[mxConstants[_0x53bb[2484]]])&&_0x39abx5[mxConstants[_0x53bb[2059]]]==mxConstants[_0x53bb[2522]]){_0x39abx5[mxConstants[_0x53bb[2063]]]==mxConstants[_0x53bb[481]]&&(_0x39abxa+=parseFloat(_0x39abx5[mxConstants[_0x53bb[2523]]])||mxLabel[_0x53bb[202]][_0x53bb[1680]]),_0x39abx5[mxConstants[_0x53bb[2064]]]!=mxConstants[_0x53bb[479]]&&(_0x39abx3+=parseFloat(_0x39abx5[mxConstants[_0x53bb[2524]]])||mxLabel[_0x53bb[202]][_0x53bb[1680]])};_0x39abxa+=2*(_0x39abx5[mxConstants[_0x53bb[2143]]]||0);_0x39abxa+=_0x39abx5[mxConstants[_0x53bb[2147]]]||0;_0x39abxa+=_0x39abx5[mxConstants[_0x53bb[2145]]]||0;_0x39abx3+=2*(_0x39abx5[mxConstants[_0x53bb[2143]]]||0);_0x39abx3+=_0x39abx5[mxConstants[_0x53bb[2144]]]||0;_0x39abx3+=_0x39abx5[mxConstants[_0x53bb[2146]]]||0;_0x39abx4=this[_0x53bb[2205]](_0x39abx4);null!=_0x39abx4&&(_0x39abxa+=_0x39abx4[_0x53bb[117]]+8);_0x39abx4=this[_0x53bb[2183]](_0x39abx2);null!=_0x39abx4&&0<_0x39abx4[_0x53bb[67]]?(this[_0x53bb[2186]](_0x39abx2)||(_0x39abx4=_0x39abx4[_0x53bb[230]](/\n/g,_0x53bb[545])),_0x39abx9=mxUtils[_0x53bb[2525]](_0x39abx4,_0x39abx9,_0x39abx5[mxConstants[_0x53bb[2188]]]),_0x39abx2=_0x39abx9[_0x53bb[117]]+_0x39abxa,_0x39abx3=_0x39abx9[_0x53bb[119]]+_0x39abx3,mxUtils[_0x53bb[433]](_0x39abx5,mxConstants.STYLE_HORIZONTAL,!0)||(_0x39abx5=_0x39abx3,_0x39abx3=_0x39abx2,_0x39abx2=_0x39abx5),this[_0x53bb[991]]&&(_0x39abx2=this[_0x53bb[1021]](_0x39abx2+this[_0x53bb[1020]]/2),_0x39abx3=this[_0x53bb[1021]](_0x39abx3+this[_0x53bb[1020]]/2)),_0x39abx3= new mxRectangle(0,0,_0x39abx2,_0x39abx3)):(_0x39abx5=4*this[_0x53bb[1020]],_0x39abx3= new mxRectangle(0,0,_0x39abx5,_0x39abx5))}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2216]]=function(_0x39abx2,_0x39abx3){if(0.2<Math[_0x53bb[425]](1-_0x39abx3[_0x53bb[255]])){var _0x39abx4=this[_0x53bb[441]][_0x53bb[255]],_0x39abx5=this[_0x53bb[441]][_0x53bb[513]],_0x39abx9=_0x39abx2[_0x53bb[117]]*_0x39abx3[_0x53bb[255]],_0x39abxa=_0x39abx2[_0x53bb[119]]*_0x39abx3[_0x53bb[255]],_0x39abx12=_0x39abx2[_0x53bb[236]]-(_0x39abxa-_0x39abx2[_0x53bb[119]])/2,_0x39abx4= new mxRectangle(this[_0x53bb[1021]]((_0x39abx2[_0x53bb[235]]-(_0x39abx9-_0x39abx2[_0x53bb[117]])/2)/_0x39abx4)-_0x39abx5[_0x53bb[235]],this[_0x53bb[1021]](_0x39abx12/_0x39abx4)-_0x39abx5[_0x53bb[236]],this[_0x53bb[1021]](_0x39abx9/_0x39abx4),this[_0x53bb[1021]](_0x39abxa/_0x39abx4));this[_0x53bb[2526]](_0x39abx2[_0x53bb[246]],_0x39abx4)}};mxGraph[_0x53bb[202]][_0x53bb[2526]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[836]]([_0x39abx2],[_0x39abx3])[0]};mxGraph[_0x53bb[202]][_0x53bb[836]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[251]][_0x53bb[473]]();try{this[_0x53bb[837]](_0x39abx2,_0x39abx3),this[_0x53bb[746]]( new mxEventObject(mxEvent.RESIZE_CELLS,_0x53bb[895],_0x39abx2,_0x53bb[1562],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[837]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx3&&_0x39abx2[_0x53bb[67]]==_0x39abx3[_0x53bb[67]]){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=_0x39abx3[_0x39abx4],_0x39abx9=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2[_0x39abx4]);if(null!=_0x39abx9&&(_0x39abx9[_0x53bb[235]]!=_0x39abx5[_0x53bb[235]]||_0x39abx9[_0x53bb[236]]!=_0x39abx5[_0x53bb[236]]||_0x39abx9[_0x53bb[117]]!=_0x39abx5[_0x53bb[117]]||_0x39abx9[_0x53bb[119]]!=_0x39abx5[_0x53bb[119]])){_0x39abx9=_0x39abx9[_0x53bb[238]]();if(_0x39abx9[_0x53bb[1500]]){var _0x39abxa=_0x39abx9[_0x53bb[1368]];null!=_0x39abxa&&(_0x39abxa[_0x53bb[235]]+=_0x39abx5[_0x53bb[235]]-_0x39abx9[_0x53bb[235]],_0x39abxa[_0x53bb[236]]+=_0x39abx5[_0x53bb[236]]-_0x39abx9[_0x53bb[236]])}else {_0x39abx9[_0x53bb[235]]=_0x39abx5[_0x53bb[235]],_0x39abx9[_0x53bb[236]]=_0x39abx5[_0x53bb[236]]};_0x39abx9[_0x53bb[117]]=_0x39abx5[_0x53bb[117]];_0x39abx9[_0x53bb[119]]=_0x39abx5[_0x53bb[119]];!_0x39abx9[_0x53bb[1500]]&&(this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2[_0x39abx4])&&!this[_0x53bb[2505]]())&&(_0x39abx9[_0x53bb[235]]=Math[_0x53bb[160]](0,_0x39abx9[_0x53bb[235]]),_0x39abx9[_0x53bb[236]]=Math[_0x53bb[160]](0,_0x39abx9[_0x53bb[236]]));this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2[_0x39abx4],_0x39abx9);this[_0x53bb[2507]](_0x39abx2[_0x39abx4])&&this[_0x53bb[2508]](_0x39abx2[_0x39abx4])}};this[_0x53bb[2399]]&&this[_0x53bb[1750]](_0x39abx2);this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_RESIZED,_0x53bb[895],_0x39abx2,_0x53bb[1562],_0x39abx3))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2508]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2),_0x39abx4=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx3);if(null!=_0x39abx3&&(null!=_0x39abx4&&!this[_0x53bb[1742]](_0x39abx3))&&(_0x39abx2=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2),null!=_0x39abx2&&(_0x39abx4[_0x53bb[117]]<_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]||_0x39abx4[_0x53bb[119]]<_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]))){_0x39abx4=_0x39abx4[_0x53bb[238]](),_0x39abx4[_0x53bb[117]]=Math[_0x53bb[160]](_0x39abx4[_0x53bb[117]],_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]),_0x39abx4[_0x53bb[119]]=Math[_0x53bb[160]](_0x39abx4[_0x53bb[119]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]),this[_0x53bb[837]]([_0x39abx3],[_0x39abx4])}}};mxGraph[_0x53bb[202]][_0x53bb[903]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return this[_0x53bb[834]](_0x39abx2,_0x39abx3,_0x39abx4,!0,_0x39abx5,_0x39abx9)};mxGraph[_0x53bb[202]][_0x53bb[834]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx3=null!=_0x39abx3?_0x39abx3:0;_0x39abx4=null!=_0x39abx4?_0x39abx4:0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!1;if(null!=_0x39abx2&&(0!=_0x39abx3||0!=_0x39abx4||_0x39abx5||null!=_0x39abx9)){this[_0x53bb[251]][_0x53bb[473]]();try{_0x39abx5&&(_0x39abx2=this[_0x53bb[899]](_0x39abx2,this[_0x53bb[2527]]()),null==_0x39abx9&&(_0x39abx9=this[_0x53bb[902]]()));var _0x39abx12=this[_0x53bb[2505]]();null!=_0x39abx9&&this[_0x53bb[2528]](!0);this[_0x53bb[835]](_0x39abx2,_0x39abx3,_0x39abx4,!_0x39abx5&&this[_0x53bb[2529]]()&&this[_0x53bb[2530]](),null==_0x39abx9);this[_0x53bb[2528]](_0x39abx12);if(null!=_0x39abx9){var _0x39abx13=this[_0x53bb[251]][_0x53bb[262]](_0x39abx9);this[_0x53bb[833]](_0x39abx2,_0x39abx9,_0x39abx13,null,null,!0)};this[_0x53bb[746]]( new mxEventObject(mxEvent.MOVE_CELLS,_0x53bb[895],_0x39abx2,_0x53bb[1126],_0x39abx3,_0x53bb[1125],_0x39abx4,_0x53bb[238],_0x39abx5,_0x53bb[772],_0x39abx9,_0x53bb[763],_0x39abxa))}finally{this[_0x53bb[251]][_0x53bb[476]]()}};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[835]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx2&&(0!=_0x39abx3||0!=_0x39abx4)){this[_0x53bb[251]][_0x53bb[473]]();try{_0x39abx5&&this[_0x53bb[2531]](_0x39abx2);for(var _0x39abxa=0;_0x39abxa<_0x39abx2[_0x53bb[67]];_0x39abxa++){this[_0x53bb[2532]](_0x39abx2[_0x39abxa],_0x39abx3,_0x39abx4),_0x39abx9&&this[_0x53bb[2509]](_0x39abx2[_0x39abxa])};this[_0x53bb[2400]]&&this[_0x53bb[1750]](_0x39abx2);this[_0x53bb[746]]( new mxEventObject(mxEvent.CELLS_MOVED,_0x53bb[895],_0x39abx2,_0x53bb[1126],_0x39abx4,_0x53bb[1125],_0x39abx4,_0x53bb[808],_0x39abx5))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2532]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2);null!=_0x39abx5&&(_0x39abx5=_0x39abx5[_0x53bb[238]](),_0x39abx5[_0x53bb[513]](_0x39abx3,_0x39abx4),!_0x39abx5[_0x53bb[1500]]&&(this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2)&&!this[_0x53bb[2505]]())&&(_0x39abx5[_0x53bb[235]]=Math[_0x53bb[160]](0,_0x39abx5[_0x53bb[235]]),_0x39abx5[_0x53bb[236]]=Math[_0x53bb[160]](0,_0x39abx5[_0x53bb[236]])),_0x39abx5[_0x53bb[1500]]&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)&&(null==_0x39abx5[_0x53bb[1368]]?_0x39abx5[_0x53bb[1368]]= new mxPoint(_0x39abx3,_0x39abx4):(_0x39abx5[_0x53bb[1368]][_0x53bb[235]]+=_0x39abx3,_0x39abx5[_0x53bb[1368]][_0x53bb[236]]+=_0x39abx4)),this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2,_0x39abx5))};mxGraph[_0x53bb[202]][_0x53bb[2533]]=function(_0x39abx2){if(null!=_0x39abx2&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2);if(_0x39abx3==this[_0x53bb[902]]()||_0x39abx3==this[_0x53bb[2534]]()){return this[_0x53bb[2535]]()};if(null!=_0x39abx3&&_0x39abx3!=this[_0x53bb[902]]()){var _0x39abx4=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx3);if(null!=_0x39abx4){var _0x39abx5=_0x39abx2=0,_0x39abx9=_0x39abx4[_0x53bb[117]],_0x39abx4=_0x39abx4[_0x53bb[119]];this[_0x53bb[1730]](_0x39abx3)&&(_0x39abx3=this[_0x53bb[1731]](_0x39abx3),_0x39abx2=_0x39abx3[_0x53bb[117]],_0x39abx9-=_0x39abx3[_0x53bb[117]],_0x39abx5=_0x39abx3[_0x53bb[119]],_0x39abx4-=_0x39abx3[_0x53bb[119]]);return new mxRectangle(_0x39abx2,_0x39abx5,_0x39abx9,_0x39abx4)}}};return null};mxGraph[_0x53bb[202]][_0x53bb[2535]]=function(){return this[_0x53bb[2385]]};mxGraph[_0x53bb[202]][_0x53bb[2509]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2),_0x39abx4=this[_0x53bb[2536]](_0x39abx2)?this[_0x53bb[2533]](_0x39abx2):this[_0x53bb[2535]]();if(null!=_0x39abx3&&null!=_0x39abx4&&!_0x39abx3[_0x53bb[1500]]&&(_0x39abx3[_0x53bb[235]]<_0x39abx4[_0x53bb[235]]||_0x39abx3[_0x53bb[236]]<_0x39abx4[_0x53bb[236]]||_0x39abx4[_0x53bb[117]]<_0x39abx3[_0x53bb[235]]+_0x39abx3[_0x53bb[117]]||_0x39abx4[_0x53bb[119]]<_0x39abx3[_0x53bb[236]]+_0x39abx3[_0x53bb[119]])){_0x39abx2=this[_0x53bb[2537]](_0x39abx2),0<_0x39abx4[_0x53bb[117]]&&(_0x39abx3[_0x53bb[235]]=Math[_0x53bb[243]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]+_0x39abx4[_0x53bb[117]]-(1-_0x39abx2)*_0x39abx3[_0x53bb[117]])),0<_0x39abx4[_0x53bb[119]]&&(_0x39abx3[_0x53bb[236]]=Math[_0x53bb[243]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]+_0x39abx4[_0x53bb[119]]-(1-_0x39abx2)*_0x39abx3[_0x53bb[119]])),_0x39abx3[_0x53bb[235]]=Math[_0x53bb[160]](_0x39abx3[_0x53bb[235]],_0x39abx4[_0x53bb[235]]-_0x39abx3[_0x53bb[117]]*_0x39abx2),_0x39abx3[_0x53bb[236]]=Math[_0x53bb[160]](_0x39abx3[_0x53bb[236]],_0x39abx4[_0x53bb[236]]-_0x39abx3[_0x53bb[119]]*_0x39abx2)}}};mxGraph[_0x53bb[202]][_0x53bb[1750]]=function(_0x39abx2){if(null!=_0x39abx2){for(var _0x39abx3={},_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx5=mxCellPath[_0x53bb[385]](_0x39abx2[_0x39abx4]);_0x39abx3[_0x39abx5]=_0x39abx2[_0x39abx4]};this[_0x53bb[251]][_0x53bb[473]]();try{for(_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){var _0x39abx9=this[_0x53bb[251]][_0x53bb[264]](_0x39abx2[_0x39abx4]);if(null!=_0x39abx9){for(_0x39abx5=0;_0x39abx5<_0x39abx9[_0x53bb[67]];_0x39abx5++){var _0x39abxa=this[_0x53bb[441]][_0x53bb[248]](_0x39abx9[_0x39abx5]),_0x39abx12=null!=_0x39abxa?_0x39abxa[_0x53bb[1710]](!0):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx9[_0x39abx5],!0),_0x39abx13=null!=_0x39abxa?_0x39abxa[_0x53bb[1710]](!1):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx9[_0x39abx5],!1),_0x39abx14=mxCellPath[_0x53bb[385]](_0x39abx12),_0x39abx15=mxCellPath[_0x53bb[385]](_0x39abx13);(null==_0x39abx3[_0x39abx14]||null==_0x39abx3[_0x39abx15])&&this[_0x53bb[1809]](_0x39abx9[_0x39abx5])}};this[_0x53bb[1750]](this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2[_0x39abx4]))}}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[1809]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2);null!=_0x39abx3&&(null!=_0x39abx3[_0x53bb[1525]]&&0<_0x39abx3[_0x53bb[1525]][_0x53bb[67]])&&(_0x39abx3=_0x39abx3[_0x53bb[238]](),_0x39abx3[_0x53bb[1525]]=[],this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2,_0x39abx3));return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2538]]=function(_0x39abx2,_0x39abx3){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[253]]&&null!=_0x39abx2[_0x53bb[253]][_0x53bb[1561]]?_0x39abx2[_0x53bb[253]][_0x53bb[1561]][_0x53bb[1531]]:null};mxGraph[_0x53bb[202]][_0x53bb[2288]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=null;var _0x39abx5=_0x39abx2[_0x53bb[124]][_0x39abx4?mxConstants[_0x53bb[2539]]:mxConstants[_0x53bb[2540]]];if(null!=_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[124]][_0x39abx4?mxConstants[_0x53bb[2541]]:mxConstants[_0x53bb[2542]]];null!=_0x39abx9&&(_0x39abx3= new mxPoint(parseFloat(_0x39abx5),parseFloat(_0x39abx9)))};_0x39abx5= !1;null!=_0x39abx3&&(_0x39abx5=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],_0x39abx4?mxConstants[_0x53bb[2543]]:mxConstants[_0x53bb[2544]],!0));return new mxConnectionConstraint(_0x39abx3,_0x39abx5)};mxGraph[_0x53bb[202]][_0x53bb[2545]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx5){this[_0x53bb[251]][_0x53bb[473]]();try{null==_0x39abx5||null==_0x39abx5[_0x53bb[2546]]?(this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2539]]:mxConstants[_0x53bb[2540]],null,[_0x39abx2]),this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2541]]:mxConstants[_0x53bb[2542]],null,[_0x39abx2]),this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2543]]:mxConstants[_0x53bb[2544]],null,[_0x39abx2])):null!=_0x39abx5[_0x53bb[2546]]&&(this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2539]]:mxConstants[_0x53bb[2540]],_0x39abx5[_0x53bb[2546]][_0x53bb[235]],[_0x39abx2]),this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2541]]:mxConstants[_0x53bb[2542]],_0x39abx5[_0x53bb[2546]][_0x53bb[236]],[_0x39abx2]),_0x39abx5[_0x53bb[591]]?this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2543]]:mxConstants[_0x53bb[2544]],null,[_0x39abx2]):this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2543]]:mxConstants[_0x53bb[2544]],_0x53bb[468],[_0x39abx2]))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2290]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(null!=_0x39abx2){var _0x39abx5=this[_0x53bb[441]][_0x53bb[2087]](_0x39abx2),_0x39abx9= new mxPoint(_0x39abx5[_0x53bb[241]](),_0x39abx5[_0x53bb[242]]()),_0x39abxa=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2011]]],_0x39abx12=0;if(null!=_0x39abxa&&(_0x53bb[700]==_0x39abxa?_0x39abx12+=270:_0x53bb[703]==_0x39abxa?_0x39abx12+=180:_0x53bb[701]==_0x39abxa&&(_0x39abx12+=90),_0x53bb[700]==_0x39abxa||_0x53bb[701]==_0x39abxa)){_0x39abx5[_0x53bb[235]]+=_0x39abx5[_0x53bb[117]]/2-_0x39abx5[_0x53bb[119]]/2;_0x39abx5[_0x53bb[236]]+=_0x39abx5[_0x53bb[119]]/2-_0x39abx5[_0x53bb[117]]/2;var _0x39abx13=_0x39abx5[_0x53bb[117]];_0x39abx5[_0x53bb[117]]=_0x39abx5[_0x53bb[119]];_0x39abx5[_0x53bb[119]]=_0x39abx13};if(null!=_0x39abx3[_0x53bb[2546]]){var _0x39abx14=_0x39abx4=1,_0x39abx15=0,_0x39abx16=0;if(this[_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2[_0x53bb[246]])){var _0x39abx17=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2547]]],_0x39abx18=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2548]]];null!=_0x39abx2[_0x53bb[253]][_0x53bb[1561]]&&(_0x39abx17=1==mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],_0x53bb[1607],0)||_0x39abx17,_0x39abx18=1==mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],_0x53bb[1608],0)||_0x39abx18);if(_0x53bb[700]==_0x39abxa||_0x53bb[701]==_0x39abxa){_0x39abx13=_0x39abx17,_0x39abx17=_0x39abx18,_0x39abx18=_0x39abx13};_0x39abx17&&(_0x39abx4= -1,_0x39abx15=-_0x39abx5[_0x53bb[117]]);_0x39abx18&&(_0x39abx14= -1,_0x39abx16=-_0x39abx5[_0x53bb[119]])};_0x39abx4= new mxPoint(_0x39abx5[_0x53bb[235]]+_0x39abx3[_0x53bb[2546]][_0x53bb[235]]*_0x39abx5[_0x53bb[117]]*_0x39abx4-_0x39abx15,_0x39abx5[_0x53bb[236]]+_0x39abx3[_0x53bb[2546]][_0x53bb[236]]*_0x39abx5[_0x53bb[119]]*_0x39abx14-_0x39abx16)};_0x39abxa=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2278]]]||0;_0x39abx3[_0x53bb[591]]?(0!=_0x39abx12&&null!=_0x39abx4&&(_0x39abx13=_0x39abx5=0,90==_0x39abx12?_0x39abx13=1:180==_0x39abx12?_0x39abx5= -1:270==_0x39abxa&&(_0x39abx13= -1),_0x39abx4=mxUtils[_0x53bb[432]](_0x39abx4,_0x39abx5,_0x39abx13,_0x39abx9)),null!=_0x39abx4&&_0x39abx3[_0x53bb[591]]&&(_0x39abx4=this[_0x53bb[441]][_0x53bb[2302]](_0x39abx2,_0x39abx4,!1))):_0x39abxa+=_0x39abx12;0!=_0x39abxa&&null!=_0x39abx4&&(_0x39abx12=mxUtils[_0x53bb[431]](_0x39abxa),_0x39abx5=Math[_0x53bb[426]](_0x39abx12),_0x39abx13=Math[_0x53bb[427]](_0x39abx12),_0x39abx4=mxUtils[_0x53bb[432]](_0x39abx4,_0x39abx5,_0x39abx13,_0x39abx9))};return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[851]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[251]][_0x53bb[473]]();try{var _0x39abx9=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,_0x39abx4);this[_0x53bb[852]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);this[_0x53bb[746]]( new mxEventObject(mxEvent.CONNECT_CELL,_0x53bb[1989],_0x39abx2,_0x53bb[1984],_0x39abx3,_0x53bb[1097],_0x39abx4,_0x53bb[257],_0x39abx9))}finally{this[_0x53bb[251]][_0x53bb[476]]()};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[852]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx2){this[_0x53bb[251]][_0x53bb[473]]();try{var _0x39abx9=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,_0x39abx4);this[_0x53bb[2545]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5);this[_0x53bb[2549]]()&&(_0x39abx5=null,this[_0x53bb[1908]](_0x39abx3)&&(_0x39abx5=_0x39abx3[_0x53bb[1103]](),_0x39abx3=this[_0x53bb[2550]](_0x39abx3,_0x39abx4)),this[_0x53bb[1717]](_0x39abx4?mxConstants[_0x53bb[2303]]:mxConstants[_0x53bb[2304]],_0x39abx5,[_0x39abx2]));this[_0x53bb[251]][_0x53bb[1957]](_0x39abx2,_0x39abx3,_0x39abx4);this[_0x53bb[2401]]&&this[_0x53bb[1809]](_0x39abx2);this[_0x53bb[746]]( new mxEventObject(mxEvent.CELL_CONNECTED,_0x53bb[1989],_0x39abx2,_0x53bb[1984],_0x39abx3,_0x53bb[1097],_0x39abx4,_0x53bb[257],_0x39abx9))}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2531]]=function(_0x39abx2){if(null!=_0x39abx2){this[_0x53bb[251]][_0x53bb[473]]();try{for(var _0x39abx3=this[_0x53bb[441]][_0x53bb[255]],_0x39abx4=this[_0x53bb[441]][_0x53bb[513]],_0x39abx5={},_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2[_0x39abx9]);_0x39abx5[_0x39abxa]=_0x39abx2[_0x39abx9]};for(_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){if(this[_0x53bb[251]][_0x53bb[250]](_0x39abx2[_0x39abx9])){var _0x39abx12=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2[_0x39abx9]);if(null!=_0x39abx12){var _0x39abx13=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x39abx9]),_0x39abx14=this[_0x53bb[441]][_0x53bb[248]](this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2[_0x39abx9]));if(null!=_0x39abx13&&null!=_0x39abx14){var _0x39abx12=_0x39abx12[_0x53bb[238]](),_0x39abx15=-_0x39abx14[_0x53bb[2078]][_0x53bb[235]],_0x39abx16=-_0x39abx14[_0x53bb[2078]][_0x53bb[236]],_0x39abx17=_0x39abx13[_0x53bb[439]],_0x39abx18=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x39abx9],!0);if(null!=_0x39abx18&&this[_0x53bb[2551]](_0x39abx2[_0x39abx9],_0x39abx18,!0)){for(var _0x39abx19=mxCellPath[_0x53bb[385]](_0x39abx18);null!=_0x39abx18&&null==_0x39abx5[_0x39abx19];){_0x39abx18=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx18),_0x39abx19=mxCellPath[_0x53bb[385]](_0x39abx18)};null==_0x39abx18&&(_0x39abx12[_0x53bb[2007]]( new mxPoint(_0x39abx17[0][_0x53bb[235]]/_0x39abx3-_0x39abx4[_0x53bb[235]]+_0x39abx15,_0x39abx17[0][_0x53bb[236]]/_0x39abx3-_0x39abx4[_0x53bb[236]]+_0x39abx16),!0),this[_0x53bb[251]][_0x53bb[1957]](_0x39abx2[_0x39abx9],null,!0))};var _0x39abx1a=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2[_0x39abx9],!1);if(null!=_0x39abx1a&&this[_0x53bb[2551]](_0x39abx2[_0x39abx9],_0x39abx1a,!1)){for(var _0x39abx1b=mxCellPath[_0x53bb[385]](_0x39abx1a);null!=_0x39abx1a&&null==_0x39abx5[_0x39abx1b];){_0x39abx1a=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx1a),_0x39abx1b=mxCellPath[_0x53bb[385]](_0x39abx1a)};if(null==_0x39abx1a){var _0x39abx1c=_0x39abx17[_0x53bb[67]]-1;_0x39abx12[_0x53bb[2007]]( new mxPoint(_0x39abx17[_0x39abx1c][_0x53bb[235]]/_0x39abx3-_0x39abx4[_0x53bb[235]]+_0x39abx15,_0x39abx17[_0x39abx1c][_0x53bb[236]]/_0x39abx3-_0x39abx4[_0x53bb[236]]+_0x39abx16),!1);this[_0x53bb[251]][_0x53bb[1957]](_0x39abx2[_0x39abx9],null,!1)}};this[_0x53bb[251]][_0x53bb[1724]](_0x39abx2[_0x39abx9],_0x39abx12)}}}}}finally{this[_0x53bb[251]][_0x53bb[476]]()}}};mxGraph[_0x53bb[202]][_0x53bb[2534]]=function(){return this[_0x53bb[441]][_0x53bb[1741]]};mxGraph[_0x53bb[202]][_0x53bb[2326]]=function(_0x39abx2){return null};mxGraph[_0x53bb[202]][_0x53bb[1908]]=function(_0x39abx2){return !1};mxGraph[_0x53bb[202]][_0x53bb[2550]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2280]]=function(_0x39abx2){return null};mxGraph[_0x53bb[202]][_0x53bb[2552]]=function(_0x39abx2){_0x39abx2=_0x39abx2||this[_0x53bb[2452]]();null!=_0x39abx2&&this[_0x53bb[2553]](_0x39abx2)&&(this[_0x53bb[441]][_0x53bb[2257]](_0x39abx2),this[_0x53bb[2440]]())};mxGraph[_0x53bb[202]][_0x53bb[2554]]=function(){var _0x39abx2=this[_0x53bb[251]][_0x53bb[501]](),_0x39abx3=this[_0x53bb[2534]]();if(null!=_0x39abx3){for(var _0x39abx4=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx3);_0x39abx4!=_0x39abx2&&!this[_0x53bb[2553]](_0x39abx4)&&this[_0x53bb[251]][_0x53bb[1197]](_0x39abx4)!=_0x39abx2;){_0x39abx4=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx4)};_0x39abx4==_0x39abx2||this[_0x53bb[251]][_0x53bb[1197]](_0x39abx4)==_0x39abx2?this[_0x53bb[441]][_0x53bb[2257]](null):this[_0x53bb[441]][_0x53bb[2257]](_0x39abx4);null!=this[_0x53bb[441]][_0x53bb[248]](_0x39abx3)&&this[_0x53bb[2450]](_0x39abx3)}};mxGraph[_0x53bb[202]][_0x53bb[2442]]=function(){var _0x39abx2=this[_0x53bb[2534]]();null!=_0x39abx2&&(this[_0x53bb[441]][_0x53bb[2257]](null),null!=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2)&&this[_0x53bb[2450]](_0x39abx2))};mxGraph[_0x53bb[202]][_0x53bb[2553]]=function(_0x39abx2){return null!=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[517]]=function(){return this[_0x53bb[441]][_0x53bb[517]]()};mxGraph[_0x53bb[202]][_0x53bb[2555]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=[_0x39abx2];_0x39abx3&&(_0x39abx5=_0x39abx5[_0x53bb[1919]](this[_0x53bb[251]][_0x53bb[264]](_0x39abx2)));_0x39abx5=this[_0x53bb[441]][_0x53bb[1799]](_0x39abx5);if(_0x39abx4){_0x39abx4=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2);for(var _0x39abx9=0;_0x39abx9<_0x39abx4;_0x39abx9++){var _0x39abxa=this[_0x53bb[2555]](this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx3,!0);null!=_0x39abx5?_0x39abx5[_0x53bb[99]](_0x39abxa):_0x39abx5=_0x39abxa}};return _0x39abx5};mxGraph[_0x53bb[202]][_0x53bb[1729]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;var _0x39abx4=null;if(null!=_0x39abx2){for(var _0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){if(_0x39abx3||this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2[_0x39abx5])){var _0x39abx9=this[_0x53bb[1198]](_0x39abx2[_0x39abx5]);if(null!=_0x39abx9){var _0x39abxa=_0x39abx9[_0x53bb[1525]];if(null!=_0x39abxa&&0<_0x39abxa[_0x53bb[67]]){for(var _0x39abx12= new mxRectangle(_0x39abxa[0][_0x53bb[235]],_0x39abxa[0][_0x53bb[236]],0,0),_0x39abx13=function(_0x39abx2){null!=_0x39abx2&&_0x39abx12[_0x53bb[99]]( new mxRectangle(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],0,0))},_0x39abx14=1;_0x39abx14<_0x39abxa[_0x53bb[67]];_0x39abx14++){_0x39abx13(_0x39abxa[_0x39abx14])};_0x39abx13(_0x39abx9[_0x53bb[2006]](!0));_0x39abx13(_0x39abx9[_0x53bb[2006]](!1))};null==_0x39abx4?_0x39abx4= new mxRectangle(_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]]):_0x39abx4[_0x53bb[99]](_0x39abx9)}}}};return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[802]]=function(_0x39abx2){this[_0x53bb[441]][_0x53bb[200]](_0x39abx2,null==_0x39abx2);this[_0x53bb[441]][_0x53bb[2264]]();this[_0x53bb[2258]]();this[_0x53bb[746]]( new mxEventObject(mxEvent.REFRESH))};mxGraph[_0x53bb[202]][_0x53bb[1021]]=function(_0x39abx2){this[_0x53bb[991]]&&(_0x39abx2=Math[_0x53bb[488]](_0x39abx2/this[_0x53bb[1020]])*this[_0x53bb[1020]]);return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[1135]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[2365]]&&mxUtils[_0x53bb[1134]](this[_0x53bb[526]])){this[_0x53bb[526]][_0x53bb[360]]= -_0x39abx2,this[_0x53bb[526]][_0x53bb[190]]= -_0x39abx3}else {var _0x39abx4=this[_0x53bb[441]][_0x53bb[2051]]();if(this[_0x53bb[507]]==mxConstants[_0x53bb[508]]){if(0==_0x39abx2&&0==_0x39abx3){if(mxClient[_0x53bb[80]]?_0x39abx4[_0x53bb[57]](_0x53bb[535],_0x53bb[536]+_0x39abx2+_0x53bb[537]+_0x39abx3+_0x53bb[460]):_0x39abx4[_0x53bb[1390]](_0x53bb[535]),null!=this[_0x53bb[2556]]){for(var _0x39abx5=this[_0x53bb[2556]][_0x53bb[285]];null!=_0x39abx5;){var _0x39abx9=_0x39abx5[_0x53bb[287]];this[_0x53bb[526]][_0x53bb[62]](_0x39abx5);_0x39abx5=_0x39abx9};this[_0x53bb[2556]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[2556]]);this[_0x53bb[2556]]=null;this[_0x53bb[526]][_0x53bb[62]](_0x39abx4[_0x53bb[265]]);for(_0x39abx5=this[_0x53bb[2557]][_0x53bb[285]];null!=_0x39abx5;){_0x39abx9=_0x39abx5[_0x53bb[287]],this[_0x53bb[526]][_0x53bb[62]](_0x39abx5),_0x39abx5=_0x39abx9};this[_0x53bb[2557]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[2557]]);this[_0x53bb[2557]]=null}}else {_0x39abx4[_0x53bb[57]](_0x53bb[535],_0x53bb[536]+_0x39abx2+_0x53bb[537]+_0x39abx3+_0x53bb[460]);if(null==this[_0x53bb[2556]]){this[_0x53bb[2556]]=document[_0x53bb[55]](_0x53bb[485]);this[_0x53bb[2556]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];this[_0x53bb[2556]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[189];this[_0x53bb[2557]]=document[_0x53bb[55]](_0x53bb[485]);this[_0x53bb[2557]][_0x53bb[124]][_0x53bb[491]]=_0x53bb[492];this[_0x53bb[2557]][_0x53bb[124]][_0x53bb[277]]=_0x53bb[189];for(var _0x39abxa=this[_0x53bb[2556]],_0x39abx5=this[_0x53bb[526]][_0x53bb[285]];null!=_0x39abx5;){_0x39abx9=_0x39abx5[_0x53bb[287]],_0x39abx5!=_0x39abx4[_0x53bb[265]]?_0x39abxa[_0x53bb[62]](_0x39abx5):_0x39abxa=this[_0x53bb[2557]],_0x39abx5=_0x39abx9};this[_0x53bb[526]][_0x53bb[950]](this[_0x53bb[2556]],_0x39abx4[_0x53bb[265]]);this[_0x53bb[526]][_0x53bb[62]](this[_0x53bb[2557]])};this[_0x53bb[2556]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168];this[_0x53bb[2556]][_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168];this[_0x53bb[2557]][_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168];this[_0x53bb[2557]][_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168]}}else {_0x39abx4[_0x53bb[124]][_0x53bb[361]]=_0x39abx2+_0x53bb[168],_0x39abx4[_0x53bb[124]][_0x53bb[125]]=_0x39abx3+_0x53bb[168]};this[_0x53bb[1136]]=_0x39abx2;this[_0x53bb[1137]]=_0x39abx3;this[_0x53bb[746]]( new mxEventObject(mxEvent.PAN))}};mxGraph[_0x53bb[202]][_0x53bb[2558]]=function(){this[_0x53bb[499]](this[_0x53bb[2395]])};mxGraph[_0x53bb[202]][_0x53bb[2559]]=function(){this[_0x53bb[499]](1/this[_0x53bb[2395]])};mxGraph[_0x53bb[202]][_0x53bb[2560]]=function(){1==this[_0x53bb[441]][_0x53bb[255]]?this[_0x53bb[441]][_0x53bb[1147]](0,0):(this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]=0,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]=0,this[_0x53bb[441]][_0x53bb[2262]](1))};mxGraph[_0x53bb[202]][_0x53bb[2561]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[499]](_0x39abx2/this[_0x53bb[441]][_0x53bb[255]],_0x39abx3)};mxGraph[_0x53bb[202]][_0x53bb[499]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:this[_0x53bb[2397]];var _0x39abx4=this[_0x53bb[441]][_0x53bb[255]]*_0x39abx2,_0x39abx5=this[_0x53bb[441]][_0x53bb[248]](this[_0x53bb[2452]]());if(this[_0x53bb[2396]]&&null!=_0x39abx5){_0x39abx5= new mxRectangle(_0x39abx5[_0x53bb[235]]*_0x39abx2,_0x39abx5[_0x53bb[236]]*_0x39abx2,_0x39abx5[_0x53bb[117]]*_0x39abx2,_0x39abx5[_0x53bb[119]]*_0x39abx2),this[_0x53bb[441]][_0x53bb[255]]=_0x39abx4,this[_0x53bb[2562]](_0x39abx5)||(this[_0x53bb[441]][_0x53bb[2259]](),this[_0x53bb[441]][_0x53bb[2262]](_0x39abx4))}else {if(_0x39abx3&&!mxUtils[_0x53bb[1134]](this[_0x53bb[526]])){var _0x39abx5=this[_0x53bb[526]][_0x53bb[359]],_0x39abx9=this[_0x53bb[526]][_0x53bb[167]];if(1<_0x39abx2){var _0x39abxa=(_0x39abx2-1)/(2*_0x39abx4),_0x39abx5=_0x39abx5* -_0x39abxa,_0x39abx9=_0x39abx9* -_0x39abxa}else {_0x39abxa=(1/_0x39abx2-1)/(2*this[_0x53bb[441]][_0x53bb[255]]),_0x39abx5*=_0x39abxa,_0x39abx9*=_0x39abxa};this[_0x53bb[441]][_0x53bb[829]](_0x39abx4,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]+_0x39abx5,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]+_0x39abx9)}else {this[_0x53bb[441]][_0x53bb[2262]](_0x39abx4),mxUtils[_0x53bb[1134]](this[_0x53bb[526]])&&(_0x39abx9=_0x39abx5=0,_0x39abx3&&(_0x39abx5=this[_0x53bb[526]][_0x53bb[359]]*(_0x39abx2-1)/2,_0x39abx9=this[_0x53bb[526]][_0x53bb[167]]*(_0x39abx2-1)/2),this[_0x53bb[526]][_0x53bb[360]]=Math[_0x53bb[488]](this[_0x53bb[526]][_0x53bb[360]]*_0x39abx2+_0x39abx5),this[_0x53bb[526]][_0x53bb[190]]=Math[_0x53bb[488]](this[_0x53bb[526]][_0x53bb[190]]*_0x39abx2+_0x39abx9))}}};mxGraph[_0x53bb[202]][_0x53bb[2563]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[526]][_0x53bb[159]]/_0x39abx2[_0x53bb[117]]/(this[_0x53bb[526]][_0x53bb[157]]/_0x39abx2[_0x53bb[119]]);_0x39abx2[_0x53bb[235]]=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[235]]);_0x39abx2[_0x53bb[236]]=Math[_0x53bb[160]](0,_0x39abx2[_0x53bb[236]]);var _0x39abx4=Math[_0x53bb[243]](this[_0x53bb[526]][_0x53bb[1526]],_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]),_0x39abx5=Math[_0x53bb[243]](this[_0x53bb[526]][_0x53bb[191]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]);_0x39abx2[_0x53bb[117]]=_0x39abx4-_0x39abx2[_0x53bb[235]];_0x39abx2[_0x53bb[119]]=_0x39abx5-_0x39abx2[_0x53bb[236]];1>_0x39abx3?(_0x39abx3=_0x39abx2[_0x53bb[119]]/_0x39abx3,_0x39abx4=(_0x39abx3-_0x39abx2[_0x53bb[119]])/2,_0x39abx2[_0x53bb[119]]=_0x39abx3,_0x39abx3=Math[_0x53bb[243]](_0x39abx2[_0x53bb[236]],_0x39abx4),_0x39abx2[_0x53bb[236]]-=_0x39abx3,_0x39abx5=Math[_0x53bb[243]](this[_0x53bb[526]][_0x53bb[191]],_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]),_0x39abx2[_0x53bb[119]]=_0x39abx5-_0x39abx2[_0x53bb[236]]):(_0x39abx3*=_0x39abx2[_0x53bb[117]],_0x39abx4=(_0x39abx3-_0x39abx2[_0x53bb[117]])/2,_0x39abx2[_0x53bb[117]]=_0x39abx3,_0x39abx3=Math[_0x53bb[243]](_0x39abx2[_0x53bb[235]],_0x39abx4),_0x39abx2[_0x53bb[235]]-=_0x39abx3,_0x39abx4=Math[_0x53bb[243]](this[_0x53bb[526]][_0x53bb[1526]],_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]),_0x39abx2[_0x53bb[117]]=_0x39abx4-_0x39abx2[_0x53bb[235]]);_0x39abx3=this[_0x53bb[526]][_0x53bb[159]]/_0x39abx2[_0x53bb[117]];_0x39abx4=this[_0x53bb[441]][_0x53bb[255]]*_0x39abx3;mxUtils[_0x53bb[1134]](this[_0x53bb[526]])?(this[_0x53bb[441]][_0x53bb[2262]](_0x39abx4),this[_0x53bb[526]][_0x53bb[360]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[235]]*_0x39abx3),this[_0x53bb[526]][_0x53bb[190]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[236]]*_0x39abx3)):this[_0x53bb[441]][_0x53bb[829]](_0x39abx4,this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]-_0x39abx2[_0x53bb[235]]/this[_0x53bb[441]][_0x53bb[255]],this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]-_0x39abx2[_0x53bb[236]]/this[_0x53bb[441]][_0x53bb[255]])};mxGraph[_0x53bb[202]][_0x53bb[933]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[526]]){_0x39abx2=null!=_0x39abx2?_0x39abx2:0;_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;var _0x39abx4=this[_0x53bb[526]][_0x53bb[159]],_0x39abx5=this[_0x53bb[526]][_0x53bb[157]],_0x39abx9=this[_0x53bb[441]][_0x53bb[517]]();_0x39abx3&&(null!=_0x39abx9[_0x53bb[235]]&&null!=_0x39abx9[_0x53bb[236]])&&(_0x39abx9[_0x53bb[117]]+=_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[119]]+=_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[235]]=0,_0x39abx9[_0x53bb[236]]=0);var _0x39abxa=this[_0x53bb[441]][_0x53bb[255]],_0x39abx12=_0x39abx9[_0x53bb[117]]/_0x39abxa,_0x39abx13=_0x39abx9[_0x53bb[119]]/_0x39abxa;null!=this[_0x53bb[1617]]&&(_0x39abx12=Math[_0x53bb[160]](_0x39abx12,this[_0x53bb[1617]][_0x53bb[117]]-_0x39abx9[_0x53bb[235]]/_0x39abxa),_0x39abx13=Math[_0x53bb[160]](_0x39abx13,this[_0x53bb[1617]][_0x53bb[119]]-_0x39abx9[_0x53bb[236]]/_0x39abxa));var _0x39abx14=_0x39abx3?_0x39abx2:2*_0x39abx2,_0x39abx4=Math[_0x53bb[519]](100*Math[_0x53bb[243]](_0x39abx4/(_0x39abx12+_0x39abx14),_0x39abx5/(_0x39abx13+_0x39abx14)))/100;null!=this[_0x53bb[2413]]&&(_0x39abx4=Math[_0x53bb[160]](_0x39abx4,this[_0x53bb[2413]]));null!=this[_0x53bb[2414]]&&(_0x39abx4=Math[_0x53bb[243]](_0x39abx4,this[_0x53bb[2414]]));_0x39abx3?this[_0x53bb[441]][_0x53bb[255]]!=_0x39abx4&&this[_0x53bb[441]][_0x53bb[2262]](_0x39abx4):mxUtils[_0x53bb[1134]](this[_0x53bb[526]])?(this[_0x53bb[441]][_0x53bb[2262]](_0x39abx4),null!=_0x39abx9[_0x53bb[235]]&&(this[_0x53bb[526]][_0x53bb[360]]=Math[_0x53bb[488]](_0x39abx9[_0x53bb[235]]/_0x39abxa)*_0x39abx4-_0x39abx2-Math[_0x53bb[160]](0,(this[_0x53bb[526]][_0x53bb[159]]-_0x39abx12*_0x39abx4)/2)),null!=_0x39abx9[_0x53bb[236]]&&(this[_0x53bb[526]][_0x53bb[190]]=Math[_0x53bb[488]](_0x39abx9[_0x53bb[236]]/_0x39abxa)*_0x39abx4-_0x39abx2-Math[_0x53bb[160]](0,(this[_0x53bb[526]][_0x53bb[157]]-_0x39abx13*_0x39abx4)/2))):this[_0x53bb[441]][_0x53bb[829]](_0x39abx4,null!=_0x39abx9[_0x53bb[235]]?Math[_0x53bb[519]](this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]-_0x39abx9[_0x53bb[235]]/_0x39abxa+_0x39abx2+1):_0x39abx2,null!=_0x39abx9[_0x53bb[236]]?Math[_0x53bb[519]](this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]-_0x39abx9[_0x53bb[236]]/_0x39abxa+_0x39abx2+1):_0x39abx2)};return this[_0x53bb[441]][_0x53bb[255]]};mxGraph[_0x53bb[202]][_0x53bb[2564]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=-this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]],_0x39abx5=-this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]],_0x39abx9=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);null!=_0x39abx9&&(_0x39abx4= new mxRectangle(_0x39abx4+_0x39abx9[_0x53bb[235]],_0x39abx5+_0x39abx9[_0x53bb[236]],_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]]),_0x39abx3&&null!=this[_0x53bb[526]]&&(_0x39abx5=this[_0x53bb[526]][_0x53bb[159]],_0x39abx9=this[_0x53bb[526]][_0x53bb[157]],_0x39abx4[_0x53bb[235]]=_0x39abx4[_0x53bb[241]]()-_0x39abx5/2,_0x39abx4[_0x53bb[117]]=_0x39abx5,_0x39abx4[_0x53bb[236]]=_0x39abx4[_0x53bb[242]]()-_0x39abx9/2,_0x39abx4[_0x53bb[119]]=_0x39abx9),this[_0x53bb[2562]](_0x39abx4)&&this[_0x53bb[441]][_0x53bb[1147]](this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]],this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]))};mxGraph[_0x53bb[202]][_0x53bb[2562]]=function(_0x39abx2){var _0x39abx3=!1;if(null!=_0x39abx2){var _0x39abx4=this[_0x53bb[526]][_0x53bb[359]],_0x39abx5=this[_0x53bb[526]][_0x53bb[167]],_0x39abx9=Math[_0x53bb[243]](_0x39abx4,_0x39abx2[_0x53bb[117]]),_0x39abxa=Math[_0x53bb[243]](_0x39abx5,_0x39abx2[_0x53bb[119]]);if(mxUtils[_0x53bb[1134]](this[_0x53bb[526]])){_0x39abx4=this[_0x53bb[526]];_0x39abx2[_0x53bb[235]]+=this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]];_0x39abx2[_0x53bb[236]]+=this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]];var _0x39abx12=_0x39abx4[_0x53bb[360]]-_0x39abx2[_0x53bb[235]],_0x39abx5=Math[_0x53bb[160]](_0x39abx12-_0x39abx4[_0x53bb[360]],0);0<_0x39abx12?_0x39abx4[_0x53bb[360]]-=_0x39abx12+2:(_0x39abx12=_0x39abx2[_0x53bb[235]]+_0x39abx9-_0x39abx4[_0x53bb[360]]-_0x39abx4[_0x53bb[159]],0<_0x39abx12&&(_0x39abx4[_0x53bb[360]]+=_0x39abx12+2));_0x39abx9=_0x39abx4[_0x53bb[190]]-_0x39abx2[_0x53bb[236]];_0x39abx12=Math[_0x53bb[160]](0,_0x39abx9-_0x39abx4[_0x53bb[190]]);0<_0x39abx9?_0x39abx4[_0x53bb[190]]-=_0x39abx9+2:(_0x39abx9=_0x39abx2[_0x53bb[236]]+_0x39abxa-_0x39abx4[_0x53bb[190]]-_0x39abx4[_0x53bb[157]],0<_0x39abx9&&(_0x39abx4[_0x53bb[190]]+=_0x39abx9+2));!this[_0x53bb[2365]]&&(0!=_0x39abx5||0!=_0x39abx12)&&this[_0x53bb[441]][_0x53bb[1147]](_0x39abx5,_0x39abx12)}else {var _0x39abx12=-this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]],_0x39abx13=-this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]],_0x39abx14=this[_0x53bb[441]][_0x53bb[255]];_0x39abx2[_0x53bb[235]]+_0x39abx9>_0x39abx12+_0x39abx4&&(this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]-=(_0x39abx2[_0x53bb[235]]+_0x39abx9-_0x39abx4-_0x39abx12)/_0x39abx14,_0x39abx3= !0);_0x39abx2[_0x53bb[236]]+_0x39abxa>_0x39abx13+_0x39abx5&&(this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]-=(_0x39abx2[_0x53bb[236]]+_0x39abxa-_0x39abx5-_0x39abx13)/_0x39abx14,_0x39abx3= !0);_0x39abx2[_0x53bb[235]]<_0x39abx12&&(this[_0x53bb[441]][_0x53bb[513]][_0x53bb[235]]+=(_0x39abx12-_0x39abx2[_0x53bb[235]])/_0x39abx14,_0x39abx3= !0);_0x39abx2[_0x53bb[236]]<_0x39abx13&&(this[_0x53bb[441]][_0x53bb[513]][_0x53bb[236]]+=(_0x39abx13-_0x39abx2[_0x53bb[236]])/_0x39abx14,_0x39abx3= !0);_0x39abx3&&(this[_0x53bb[441]][_0x53bb[802]](),null!=this[_0x53bb[2432]]&&this[_0x53bb[2432]][_0x53bb[802]]())}};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[1198]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1714]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[174]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1742]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1971]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2565]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1965]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2298]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2566]]];if(null!=_0x39abx3){return _0x39abx3};_0x39abx2=this[_0x53bb[441]][_0x53bb[2291]](_0x39abx2);return _0x39abx2==mxEdgeStyle[_0x53bb[2567]]||_0x39abx2==mxEdgeStyle[_0x53bb[2568]]||_0x39abx2==mxEdgeStyle[_0x53bb[2569]]||_0x39abx2==mxEdgeStyle[_0x53bb[2570]]||_0x39abx2==mxEdgeStyle[_0x53bb[2571]]||_0x39abx2==mxEdgeStyle[_0x53bb[2572]]};mxGraph[_0x53bb[202]][_0x53bb[2573]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[2089]](!0);_0x39abx2=_0x39abx2[_0x53bb[2089]](!1);return null!=_0x39abx3&&_0x39abx3==_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2574]]=function(_0x39abx2){return mxEvent[_0x53bb[775]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2462]]=function(_0x39abx2){return mxClient[_0x53bb[2575]]?mxEvent[_0x53bb[2576]](_0x39abx2):mxEvent[_0x53bb[775]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1018]]=function(_0x39abx2){return null!=_0x39abx2&&!mxEvent[_0x53bb[2577]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2578]]=function(_0x39abx2){return mxEvent[_0x53bb[774]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2579]]=function(_0x39abx2){return mxEvent[_0x53bb[2577]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2580]]=function(_0x39abx2){mxUtils[_0x53bb[150]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2581]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return null==this[_0x53bb[2500]](_0x39abx2,_0x39abx3,_0x39abx4)};mxGraph[_0x53bb[202]][_0x53bb[2500]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2&&!this[_0x53bb[2530]]()&&(null==_0x39abx3||null==_0x39abx4)){return _0x53bb[110]};if(null!=_0x39abx2&&null==this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!0)&&null==this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!1)){return null};if(!this[_0x53bb[2402]]&&_0x39abx3==_0x39abx4&&null!=_0x39abx3||!this[_0x53bb[2582]](_0x39abx3,_0x39abx4)){return _0x53bb[110]};if(null!=_0x39abx3&&null!=_0x39abx4){var _0x39abx5=_0x53bb[110];if(!this[_0x53bb[2404]]){var _0x39abx9=this[_0x53bb[251]][_0x53bb[1781]](_0x39abx3,_0x39abx4,!0);if(1<_0x39abx9[_0x53bb[67]]||1==_0x39abx9[_0x53bb[67]]&&_0x39abx9[0]!=_0x39abx2){_0x39abx5+=(mxResources[_0x53bb[203]](this[_0x53bb[2421]])||this[_0x53bb[2421]])+_0x53bb[192]}};var _0x39abx9=this[_0x53bb[251]][_0x53bb[1962]](_0x39abx3,!0,_0x39abx2),_0x39abxa=this[_0x53bb[251]][_0x53bb[1962]](_0x39abx4,!1,_0x39abx2);if(null!=this[_0x53bb[2335]]){for(var _0x39abx12=0;_0x39abx12<this[_0x53bb[2335]][_0x53bb[67]];_0x39abx12++){var _0x39abx13=this[_0x53bb[2335]][_0x39abx12][_0x53bb[2583]](this,_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx9,_0x39abxa);null!=_0x39abx13&&(_0x39abx5+=_0x39abx13)}};_0x39abx13=this[_0x53bb[2584]](_0x39abx2,_0x39abx3,_0x39abx4);null!=_0x39abx13&&(_0x39abx5+=_0x39abx13);return 0<_0x39abx5[_0x53bb[67]]?_0x39abx5:null};return this[_0x53bb[2406]]?null:_0x53bb[110]};mxGraph[_0x53bb[202]][_0x53bb[2584]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return null};mxGraph[_0x53bb[202]][_0x53bb[2585]]=function(_0x39abx2,_0x39abx3){_0x39abx2=null!=_0x39abx2?_0x39abx2:this[_0x53bb[251]][_0x53bb[501]]();_0x39abx3=null!=_0x39abx3?_0x39abx3:{};for(var _0x39abx4=!0,_0x39abx5=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx12=_0x39abx3;this[_0x53bb[2553]](_0x39abxa)&&(_0x39abx12={});_0x39abx12=this[_0x53bb[2585]](_0x39abxa,_0x39abx12);null!=_0x39abx12?this[_0x53bb[2447]](_0x39abxa,_0x39abx12[_0x53bb[230]](/\n/g,_0x53bb[545])):this[_0x53bb[2447]](_0x39abxa,null);_0x39abx4=_0x39abx4&&null==_0x39abx12};_0x39abx5=_0x53bb[110];this[_0x53bb[1742]](_0x39abx2)&&!_0x39abx4&&(_0x39abx5+=(mxResources[_0x53bb[203]](this[_0x53bb[2423]])||this[_0x53bb[2423]])+_0x53bb[192]);_0x39abx5=this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)?_0x39abx5+(this[_0x53bb[2500]](_0x39abx2,this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!0),this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!1))||_0x53bb[110]):_0x39abx5+(this[_0x53bb[2586]](_0x39abx2)||_0x53bb[110]);_0x39abx9=this[_0x53bb[2587]](_0x39abx2,_0x39abx3);null!=_0x39abx9&&(_0x39abx5+=_0x39abx9);null==this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2)&&this[_0x53bb[441]][_0x53bb[2264]]();return 0<_0x39abx5[_0x53bb[67]]||!_0x39abx4?_0x39abx5:null};mxGraph[_0x53bb[202]][_0x53bb[2586]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1962]](_0x39abx2,!0),_0x39abx4=this[_0x53bb[251]][_0x53bb[1962]](_0x39abx2,!1);_0x39abx2=this[_0x53bb[251]][_0x53bb[433]](_0x39abx2);var _0x39abx5=_0x53bb[110];if(null!=this[_0x53bb[2335]]){for(var _0x39abx9=0;_0x39abx9<this[_0x53bb[2335]][_0x53bb[67]];_0x39abx9++){var _0x39abxa=this[_0x53bb[2335]][_0x39abx9];if(_0x39abxa[_0x53bb[1097]]&&mxUtils[_0x53bb[1331]](_0x39abx2,_0x39abxa[_0x53bb[60]],_0x39abxa[_0x53bb[2588]],_0x39abxa[_0x53bb[131]])&&(0==_0x39abxa[_0x53bb[160]]&&0<_0x39abx3||1==_0x39abxa[_0x53bb[243]]&&0==_0x39abx3||1==_0x39abxa[_0x53bb[160]]&&1<_0x39abx3)){_0x39abx5+=_0x39abxa[_0x53bb[2589]]+_0x53bb[192]}else {if(!_0x39abxa[_0x53bb[1097]]&&mxUtils[_0x53bb[1331]](_0x39abx2,_0x39abxa[_0x53bb[60]],_0x39abxa[_0x53bb[2588]],_0x39abxa[_0x53bb[131]])&&(0==_0x39abxa[_0x53bb[160]]&&0<_0x39abx4||1==_0x39abxa[_0x53bb[243]]&&0==_0x39abx4||1==_0x39abxa[_0x53bb[160]]&&1<_0x39abx4)){_0x39abx5+=_0x39abxa[_0x53bb[2589]]+_0x53bb[192]}}}};return 0<_0x39abx5[_0x53bb[67]]?_0x39abx5:null};mxGraph[_0x53bb[202]][_0x53bb[2587]]=function(_0x39abx2,_0x39abx3){return null};mxGraph[_0x53bb[202]][_0x53bb[2271]]=function(){return this[_0x53bb[1617]]};mxGraph[_0x53bb[202]][_0x53bb[2590]]=function(_0x39abx2){this[_0x53bb[1617]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2205]]=function(_0x39abx2){if(null!=_0x39abx2&&this[_0x53bb[2206]]&&!this[_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]])){var _0x39abx3=this[_0x53bb[1742]](_0x39abx2[_0x53bb[246]]);if(this[_0x53bb[2516]](_0x39abx2[_0x53bb[246]],!_0x39abx3)){return _0x39abx3?this[_0x53bb[2415]]:this[_0x53bb[2417]]}};return null};mxGraph[_0x53bb[202]][_0x53bb[2454]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[251]][_0x53bb[433]](_0x39abx2);if(null!=_0x39abx2){if(mxUtils[_0x53bb[1331]](_0x39abx2)){return _0x39abx2[_0x53bb[301]]};if(_0x53bb[279]== typeof _0x39abx2[_0x53bb[2591]]){return _0x39abx2.toString()}};return _0x53bb[110]};mxGraph[_0x53bb[202]][_0x53bb[2183]]=function(_0x39abx2){var _0x39abx3=_0x53bb[110];if(this[_0x53bb[2409]]&&null!=_0x39abx2){var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx4=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);mxUtils[_0x53bb[433]](_0x39abx4,mxConstants.STYLE_NOLABEL,!1)||(_0x39abx3=this[_0x53bb[2454]](_0x39abx2))};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[2186]]=function(_0x39abx2){return this[_0x53bb[2592]]()};mxGraph[_0x53bb[202]][_0x53bb[2592]]=function(){return this[_0x53bb[2410]]};mxGraph[_0x53bb[202]][_0x53bb[2593]]=function(_0x39abx2){this[_0x53bb[2410]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2131]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return null!=_0x39abx2?_0x53bb[1333]==_0x39abx2[mxConstants[_0x53bb[2594]]]:!1};mxGraph[_0x53bb[202]][_0x53bb[2130]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return null!=_0x39abx2?_0x53bb[188]==_0x39abx2[mxConstants[_0x53bb[2193]]]:!1};mxGraph[_0x53bb[202]][_0x53bb[2595]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null;if(null!=_0x39abx2){if(null!=_0x39abx2[_0x53bb[2207]]&&(_0x39abx3==_0x39abx2[_0x53bb[2207]][_0x53bb[252]]||_0x39abx3[_0x53bb[265]]==_0x39abx2[_0x53bb[2207]][_0x53bb[252]])){_0x39abx9=this[_0x53bb[2425]],_0x39abx9=mxResources[_0x53bb[203]](_0x39abx9)||_0x39abx9};null==_0x39abx9&&null!=_0x39abx2[_0x53bb[1211]]&&_0x39abx2[_0x53bb[1211]][_0x53bb[209]](function(_0x39abx2,_0x39abx4){if(null==_0x39abx9&&(_0x39abx3==_0x39abx4[_0x53bb[252]]||_0x39abx3[_0x53bb[265]]==_0x39abx4[_0x53bb[252]])){_0x39abx9=_0x39abx4[_0x53bb[2201]].toString()}});null==_0x39abx9&&(_0x39abx4=this[_0x53bb[2432]][_0x53bb[2596]](_0x39abx2[_0x53bb[246]]),null!=_0x39abx4&&_0x53bb[279]== typeof _0x39abx4[_0x53bb[2597]]&&(_0x39abx9=_0x39abx4[_0x53bb[2597]](_0x39abx3)));null==_0x39abx9&&(_0x39abx9=this[_0x53bb[2598]](_0x39abx2[_0x53bb[246]]))};return _0x39abx9};mxGraph[_0x53bb[202]][_0x53bb[2598]]=function(_0x39abx2){var _0x39abx3=null;return _0x39abx3=null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[2595]]?_0x39abx2[_0x53bb[2595]]():this[_0x53bb[2454]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2599]]=function(_0x39abx2){return null};mxGraph[_0x53bb[202]][_0x53bb[1731]]=function(_0x39abx2){var _0x39abx3= new mxRectangle,_0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);null!=_0x39abx2&&(_0x39abx4=parseInt(mxUtils[_0x53bb[433]](_0x39abx2,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),mxUtils[_0x53bb[433]](_0x39abx2,mxConstants.STYLE_HORIZONTAL,!0)?_0x39abx3[_0x53bb[119]]=_0x39abx4:_0x39abx3[_0x53bb[117]]=_0x39abx4);return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[1202]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2484]]]:null};mxGraph[_0x53bb[202]][_0x53bb[2187]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2063]]]||mxConstants[_0x53bb[481]]:null};mxGraph[_0x53bb[202]][_0x53bb[2173]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2600]]]:null};mxGraph[_0x53bb[202]][_0x53bb[2174]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2601]]]:null};mxGraph[_0x53bb[202]][_0x53bb[2172]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2602]]]:null};mxGraph[_0x53bb[202]][_0x53bb[2176]]=function(_0x39abx2){return null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[124]]?_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2603]]]:null};mxGraph[_0x53bb[202]][_0x53bb[2476]]=function(){return this[_0x53bb[467]]};mxGraph[_0x53bb[202]][_0x53bb[2604]]=function(_0x39abx2){this[_0x53bb[467]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[1730]]=function(_0x39abx2){if(null!=_0x39abx2&&this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2)!=this[_0x53bb[251]][_0x53bb[501]]()){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);if(null!=_0x39abx3&&!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)){return _0x39abx3[mxConstants[_0x53bb[2059]]]==mxConstants[_0x53bb[2605]]}};return !1};mxGraph[_0x53bb[202]][_0x53bb[2606]]=function(){return this[_0x53bb[2389]]};mxGraph[_0x53bb[202]][_0x53bb[2607]]=function(_0x39abx2){this[_0x53bb[2389]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxGraph[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2608]]=function(){return this[_0x53bb[2362]]};mxGraph[_0x53bb[202]][_0x53bb[2609]]=function(_0x39abx2){this[_0x53bb[2362]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2134]]=function(){return this[_0x53bb[2363]]};mxGraph[_0x53bb[202]][_0x53bb[2610]]=function(_0x39abx2){this[_0x53bb[2363]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2125]]=function(){return this[_0x53bb[2364]]};mxGraph[_0x53bb[202]][_0x53bb[2611]]=function(_0x39abx2){this[_0x53bb[2364]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2612]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx2);return this[_0x53bb[2613]]()||null!=_0x39abx3&&this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2)&&_0x39abx3[_0x53bb[1500]]};mxGraph[_0x53bb[202]][_0x53bb[2613]]=function(){return this[_0x53bb[2368]]};mxGraph[_0x53bb[202]][_0x53bb[2614]]=function(_0x39abx2){this[_0x53bb[2368]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2615]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[2616]](_0x39abx2)}))};mxGraph[_0x53bb[202]][_0x53bb[2616]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2617]]()&&0!=_0x39abx2[mxConstants[_0x53bb[2618]]]};mxGraph[_0x53bb[202]][_0x53bb[2617]]=function(){return this[_0x53bb[2369]]};mxGraph[_0x53bb[202]][_0x53bb[2619]]=function(_0x39abx2){this[_0x53bb[2369]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[898]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[2620]](_0x39abx2)}))};mxGraph[_0x53bb[202]][_0x53bb[2620]]=function(_0x39abx2){return this[_0x53bb[2366]]};mxGraph[_0x53bb[202]][_0x53bb[900]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[2621]](_0x39abx2)}))};mxGraph[_0x53bb[202]][_0x53bb[2621]]=function(_0x39abx2){return this[_0x53bb[2367]]};mxGraph[_0x53bb[202]][_0x53bb[2102]]=function(_0x39abx2){return this[_0x53bb[2622]]()};mxGraph[_0x53bb[202]][_0x53bb[2622]]=function(){return this[_0x53bb[2379]]};mxGraph[_0x53bb[202]][_0x53bb[2623]]=function(_0x39abx2){this[_0x53bb[2379]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2510]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[2624]](_0x39abx2)}))};mxGraph[_0x53bb[202]][_0x53bb[2624]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2625]]()&&0!=_0x39abx2[mxConstants[_0x53bb[2626]]]};mxGraph[_0x53bb[202]][_0x53bb[2625]]=function(){return this[_0x53bb[2371]]};mxGraph[_0x53bb[202]][_0x53bb[2627]]=function(_0x39abx2){this[_0x53bb[2371]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2628]]=function(_0x39abx2){return !this[_0x53bb[2612]](_0x39abx2)&&(this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)&&this[_0x53bb[2373]]||this[_0x53bb[251]][_0x53bb[1193]](_0x39abx2)&&this[_0x53bb[2374]])};mxGraph[_0x53bb[202]][_0x53bb[2629]]=function(_0x39abx2){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[1712]](_0x39abx2)}))};mxGraph[_0x53bb[202]][_0x53bb[1712]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2630]]()&&!this[_0x53bb[2612]](_0x39abx2)&&0!=_0x39abx3[mxConstants[_0x53bb[2631]]]};mxGraph[_0x53bb[202]][_0x53bb[2630]]=function(){return this[_0x53bb[2372]]};mxGraph[_0x53bb[202]][_0x53bb[2632]]=function(_0x39abx2){this[_0x53bb[2372]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[997]]=function(){return this[_0x53bb[991]]};mxGraph[_0x53bb[202]][_0x53bb[998]]=function(_0x39abx2){this[_0x53bb[991]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2549]]=function(){return this[_0x53bb[2348]]};mxGraph[_0x53bb[202]][_0x53bb[2633]]=function(_0x39abx2){this[_0x53bb[2348]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2634]]=function(){return this[_0x53bb[1020]]};mxGraph[_0x53bb[202]][_0x53bb[2635]]=function(_0x39abx2){this[_0x53bb[1020]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2636]]=function(){return this[_0x53bb[2353]]};mxGraph[_0x53bb[202]][_0x53bb[2637]]=function(_0x39abx2){this[_0x53bb[2353]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2638]]=function(){return this[_0x53bb[2374]]};mxGraph[_0x53bb[202]][_0x53bb[2639]]=function(_0x39abx2){this[_0x53bb[2374]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2640]]=function(){return this[_0x53bb[2373]]};mxGraph[_0x53bb[202]][_0x53bb[2641]]=function(_0x39abx2){this[_0x53bb[2373]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2642]]=function(){return this[_0x53bb[2412]]};mxGraph[_0x53bb[202]][_0x53bb[2643]]=function(_0x39abx2){this[_0x53bb[2412]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2460]]=function(){return this[_0x53bb[2411]]};mxGraph[_0x53bb[202]][_0x53bb[2644]]=function(_0x39abx2){this[_0x53bb[2411]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2645]]=function(){return this[_0x53bb[2404]]};mxGraph[_0x53bb[202]][_0x53bb[2646]]=function(_0x39abx2){this[_0x53bb[2404]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2647]]=function(){return this[_0x53bb[2402]]};mxGraph[_0x53bb[202]][_0x53bb[2648]]=function(_0x39abx2){this[_0x53bb[2406]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2530]]=function(){return this[_0x53bb[2406]]};mxGraph[_0x53bb[202]][_0x53bb[2649]]=function(_0x39abx2){this[_0x53bb[2405]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2650]]=function(){return this[_0x53bb[2405]]};mxGraph[_0x53bb[202]][_0x53bb[2651]]=function(_0x39abx2){this[_0x53bb[2407]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2527]]=function(){return this[_0x53bb[2407]]};mxGraph[_0x53bb[202]][_0x53bb[2652]]=function(_0x39abx2){this[_0x53bb[2402]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2529]]=function(){return this[_0x53bb[2408]]};mxGraph[_0x53bb[202]][_0x53bb[2653]]=function(_0x39abx2){this[_0x53bb[2408]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[1015]]=function(){return this[_0x53bb[2375]]};mxGraph[_0x53bb[202]][_0x53bb[2654]]=function(_0x39abx2){this[_0x53bb[2375]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2655]]=function(){return this[_0x53bb[2376]]};mxGraph[_0x53bb[202]][_0x53bb[2656]]=function(_0x39abx2){this[_0x53bb[2376]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2657]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2658]]()&&!this[_0x53bb[2612]](_0x39abx2)&&0!=_0x39abx3[mxConstants[_0x53bb[2659]]]};mxGraph[_0x53bb[202]][_0x53bb[2658]]=function(){return this[_0x53bb[2377]]};mxGraph[_0x53bb[202]][_0x53bb[2660]]=function(_0x39abx2){this[_0x53bb[2377]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2661]]=function(_0x39abx2,_0x39abx3){return !0};mxGraph[_0x53bb[202]][_0x53bb[2662]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2663]]()&&!this[_0x53bb[2612]](_0x39abx2)&&0!=_0x39abx3[mxConstants[_0x53bb[2664]]]};mxGraph[_0x53bb[202]][_0x53bb[2663]]=function(){return this[_0x53bb[2378]]};mxGraph[_0x53bb[202]][_0x53bb[2665]]=function(_0x39abx2){this[_0x53bb[2378]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2453]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx3=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2666]]()&&!this[_0x53bb[2612]](_0x39abx2)&&0!=_0x39abx3[mxConstants[_0x53bb[2667]]]};mxGraph[_0x53bb[202]][_0x53bb[2666]]=function(){return this[_0x53bb[2370]]};mxGraph[_0x53bb[202]][_0x53bb[2668]]=function(_0x39abx2){this[_0x53bb[2370]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2551]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return this[_0x53bb[2669]]()&&!this[_0x53bb[2612]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2669]]=function(){return this[_0x53bb[2380]]};mxGraph[_0x53bb[202]][_0x53bb[2670]]=function(_0x39abx2){this[_0x53bb[2380]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2671]]=function(_0x39abx2){return null==_0x39abx2&&this[_0x53bb[2406]]||null!=_0x39abx2&&(!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)||this[_0x53bb[2405]])&&this[_0x53bb[2565]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2672]]=function(_0x39abx2){return this[_0x53bb[2671]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2582]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[2671]](_0x39abx2)&&this[_0x53bb[2672]](_0x39abx3)};mxGraph[_0x53bb[202]][_0x53bb[1995]]=function(_0x39abx2){this[_0x53bb[2433]][_0x53bb[995]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1965]]=function(_0x39abx2){return this[_0x53bb[2433]][_0x53bb[994]]()};mxGraph[_0x53bb[202]][_0x53bb[2673]]=function(_0x39abx2){this[_0x53bb[2276]][_0x53bb[995]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2674]]=function(_0x39abx2){this[_0x53bb[2316]][_0x53bb[2431]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2203]]=function(_0x39abx2){if(null!=this[_0x53bb[2347]]){var _0x39abx3=this[_0x53bb[2347]][_0x53bb[2148]]();return null==_0x39abx2?null!=_0x39abx3:_0x39abx2==_0x39abx3};return !1};mxGraph[_0x53bb[202]][_0x53bb[2455]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return this[_0x53bb[2675]]()||1==_0x39abx2[mxConstants[_0x53bb[2676]]]};mxGraph[_0x53bb[202]][_0x53bb[2675]]=function(){return this[_0x53bb[2381]]};mxGraph[_0x53bb[202]][_0x53bb[2677]]=function(_0x39abx2){this[_0x53bb[2381]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2507]]=function(_0x39abx2){return !this[_0x53bb[502]]()[_0x53bb[250]](_0x39abx2)&&this[_0x53bb[2678]]()};mxGraph[_0x53bb[202]][_0x53bb[2678]]=function(){return this[_0x53bb[2392]]};mxGraph[_0x53bb[202]][_0x53bb[2679]]=function(_0x39abx2){this[_0x53bb[2392]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2506]]=function(){return this[_0x53bb[2393]]};mxGraph[_0x53bb[202]][_0x53bb[2680]]=function(_0x39abx2){this[_0x53bb[2393]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2536]]=function(_0x39abx2){return this[_0x53bb[2681]]()&&!this[_0x53bb[502]]()[_0x53bb[250]](this[_0x53bb[502]]()[_0x53bb[1197]](_0x39abx2))};mxGraph[_0x53bb[202]][_0x53bb[2681]]=function(){return this[_0x53bb[2391]]};mxGraph[_0x53bb[202]][_0x53bb[2682]]=function(_0x39abx2){this[_0x53bb[2391]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2505]]=function(){return this[_0x53bb[2390]]};mxGraph[_0x53bb[202]][_0x53bb[2528]]=function(_0x39abx2){this[_0x53bb[2390]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2537]]=function(_0x39abx2){return this[_0x53bb[2683]](_0x39abx2)?this[_0x53bb[2354]]:0};mxGraph[_0x53bb[202]][_0x53bb[2683]]=function(_0x39abx2){return !1};mxGraph[_0x53bb[202]][_0x53bb[2513]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[251]][_0x53bb[1938]](_0x39abx2,mxUtils[_0x53bb[885]](this,function(_0x39abx2){return this[_0x53bb[2516]](_0x39abx2,_0x39abx3)}))};mxGraph[_0x53bb[202]][_0x53bb[2516]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2),_0x39abx4=null!=_0x39abx4?_0x39abx4[_0x53bb[124]]:this[_0x53bb[1705]](_0x39abx2);return 0<this[_0x53bb[251]][_0x53bb[262]](_0x39abx2)&&0!=_0x39abx4[mxConstants[_0x53bb[2684]]]};mxGraph[_0x53bb[202]][_0x53bb[2685]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return null!=_0x39abx2&&(this[_0x53bb[2655]]()&&this[_0x53bb[2686]](_0x39abx2,_0x39abx3,_0x39abx4)||!this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)&&(this[_0x53bb[1730]](_0x39abx2)||0<this[_0x53bb[251]][_0x53bb[262]](_0x39abx2)&&!this[_0x53bb[1742]](_0x39abx2)))};mxGraph[_0x53bb[202]][_0x53bb[2686]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return this[_0x53bb[251]][_0x53bb[250]](_0x39abx2)&&null!=_0x39abx3&&1==_0x39abx3[_0x53bb[67]]&&this[_0x53bb[2565]](_0x39abx3[0])&&null==this[_0x53bb[2500]](_0x39abx2,this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!0),_0x39abx3[0])?(_0x39abx4=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!0),_0x39abx2=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx2,!1),!this[_0x53bb[251]][_0x53bb[1720]](_0x39abx3[0],_0x39abx4)&&!this[_0x53bb[251]][_0x53bb[1720]](_0x39abx3[0],_0x39abx2)):!1};mxGraph[_0x53bb[202]][_0x53bb[564]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(!this[_0x53bb[2642]]()){for(var _0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){if(this[_0x53bb[1730]](_0x39abx2[_0x39abx5])){return null}}};_0x39abx5=mxUtils[_0x53bb[2196]](this[_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx3),mxEvent[_0x53bb[733]](_0x39abx3));_0x39abx5[_0x53bb[235]]-=this[_0x53bb[1136]];_0x39abx5[_0x53bb[236]]-=this[_0x53bb[1137]];_0x39abx5=this[_0x53bb[2461]](_0x39abx5[_0x53bb[235]],_0x39abx5[_0x53bb[236]]);if(null==_0x39abx4){_0x39abx4=_0x39abx5}else {if(null!=_0x39abx5){for(var _0x39abx9=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx5);null!=_0x39abx9&&this[_0x53bb[1730]](_0x39abx9)&&_0x39abx9!=_0x39abx4;){_0x39abx9=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx9)};_0x39abx9==_0x39abx4&&(_0x39abx4=_0x39abx5)}};for(;null!=_0x39abx4&&!this[_0x53bb[2685]](_0x39abx4,_0x39abx2,_0x39abx3)&&!this[_0x53bb[251]][_0x53bb[1740]](_0x39abx4);){_0x39abx4=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx4)};return !this[_0x53bb[251]][_0x53bb[1740]](_0x39abx4)&&0>mxUtils[_0x53bb[2]](_0x39abx2,_0x39abx4)?_0x39abx4:null};mxGraph[_0x53bb[202]][_0x53bb[902]]=function(){var _0x39abx2=this[_0x53bb[2355]];null==_0x39abx2&&(_0x39abx2=this[_0x53bb[2534]](),null==_0x39abx2&&(_0x39abx2=this[_0x53bb[251]][_0x53bb[501]](),_0x39abx2=this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,0)));return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2687]]=function(_0x39abx2){this[_0x53bb[2355]]=_0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2179]]=function(_0x39abx2){for(;null!=_0x39abx2&&!this[_0x53bb[1730]](_0x39abx2);){_0x39abx2=this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2)};return _0x39abx2};mxGraph[_0x53bb[202]][_0x53bb[2461]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=_0x39abx4||this[_0x53bb[902]]();if(null!=_0x39abx4){for(var _0x39abx5=this[_0x53bb[251]][_0x53bb[262]](_0x39abx4),_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){var _0x39abxa=this[_0x53bb[251]][_0x53bb[263]](_0x39abx4,_0x39abx9),_0x39abx12=this[_0x53bb[2461]](_0x39abx2,_0x39abx3,_0x39abxa);if(null!=_0x39abx12){return _0x39abx12};if(this[_0x53bb[1730]](_0x39abxa)&&(_0x39abx12=this[_0x53bb[441]][_0x53bb[248]](_0x39abxa),this[_0x53bb[1825]](_0x39abx12,_0x39abx2,_0x39abx3))){return _0x39abxa}}};return null};mxGraph[_0x53bb[202]][_0x53bb[999]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;_0x39abx9=null!=_0x39abx9?_0x39abx9:!0;_0x39abx4=null!=_0x39abx4?_0x39abx4:this[_0x53bb[902]]();if(null!=_0x39abx4){for(var _0x39abxa=this[_0x53bb[251]][_0x53bb[262]](_0x39abx4)-1;0<=_0x39abxa;_0x39abxa--){var _0x39abx12=this[_0x53bb[251]][_0x53bb[263]](_0x39abx4,_0x39abxa),_0x39abx13=this[_0x53bb[999]](_0x39abx2,_0x39abx3,_0x39abx12,_0x39abx5,_0x39abx9);if(null!=_0x39abx13){return _0x39abx13};if(this[_0x53bb[1714]](_0x39abx12)&&(_0x39abx9&&this[_0x53bb[251]][_0x53bb[250]](_0x39abx12)||_0x39abx5&&this[_0x53bb[251]][_0x53bb[1193]](_0x39abx12))){if(_0x39abx13=this[_0x53bb[441]][_0x53bb[248]](_0x39abx12),this[_0x53bb[1825]](_0x39abx13,_0x39abx2,_0x39abx3)){return _0x39abx12}}}};return null};mxGraph[_0x53bb[202]][_0x53bb[1825]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2){var _0x39abx5=_0x39abx2[_0x53bb[439]];if(null!=_0x39abx5){_0x39abx2=this[_0x53bb[2353]]*this[_0x53bb[2353]];for(var _0x39abx9=_0x39abx5[0],_0x39abxa=1;_0x39abxa<_0x39abx5[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx5[_0x39abxa];if(mxUtils[_0x53bb[440]](_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]],_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx3,_0x39abx4)<=_0x39abx2){return !0};_0x39abx9=_0x39abx12}}else {if(_0x39abx9=mxUtils[_0x53bb[431]](mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION)||0),0!=_0x39abx9&&(_0x39abx5=Math[_0x53bb[426]](-_0x39abx9),_0x39abx9=Math[_0x53bb[427]](-_0x39abx9),_0x39abxa= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]()),_0x39abx9=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx3,_0x39abx4),_0x39abx5,_0x39abx9,_0x39abxa),_0x39abx3=_0x39abx9[_0x53bb[235]],_0x39abx4=_0x39abx9[_0x53bb[236]]),mxUtils[_0x53bb[442]](_0x39abx2,_0x39abx3,_0x39abx4)){return !0}}};return !1};mxGraph[_0x53bb[202]][_0x53bb[2688]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);_0x39abx2=this[_0x53bb[1731]](_0x39abx2);if(null!=_0x39abx5){var _0x39abx9=this[_0x53bb[249]]()[_0x53bb[518]]();_0x39abx3-=_0x39abx5[_0x53bb[235]];_0x39abx4-=_0x39abx5[_0x53bb[236]];if(0<_0x39abx2[_0x53bb[117]]&&0<_0x39abx3&&_0x39abx3>_0x39abx2[_0x53bb[117]]*_0x39abx9||0<_0x39abx2[_0x53bb[119]]&&0<_0x39abx4&&_0x39abx4>_0x39abx2[_0x53bb[119]]*_0x39abx9){return !0}};return !1};mxGraph[_0x53bb[202]][_0x53bb[1728]]=function(_0x39abx2){return this[_0x53bb[1955]](_0x39abx2,!0,!1)};mxGraph[_0x53bb[202]][_0x53bb[1956]]=function(_0x39abx2){return this[_0x53bb[1955]](_0x39abx2,!1,!0)};mxGraph[_0x53bb[202]][_0x53bb[1955]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=null!=_0x39abx2?_0x39abx2:this[_0x53bb[902]]();_0x39abx2=this[_0x53bb[251]][_0x53bb[1955]](_0x39abx2,null!=_0x39abx3?_0x39abx3:!1,null!=_0x39abx4?_0x39abx4:!1);_0x39abx3=[];for(_0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){this[_0x53bb[1714]](_0x39abx2[_0x39abx4])&&_0x39abx3[_0x53bb[207]](_0x39abx2[_0x39abx4])};return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[1756]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[264]](_0x39abx2,_0x39abx3,!0,!0,!1)};mxGraph[_0x53bb[202]][_0x53bb[1867]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[264]](_0x39abx2,_0x39abx3,!0,!1,!1)};mxGraph[_0x53bb[202]][_0x53bb[1963]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[264]](_0x39abx2,_0x39abx3,!1,!0,!1)};mxGraph[_0x53bb[202]][_0x53bb[264]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;_0x39abx9=null!=_0x39abx9?_0x39abx9:!0;_0x39abxa=null!=_0x39abxa?_0x39abxa:!1;for(var _0x39abx12=[],_0x39abx13=this[_0x53bb[1742]](_0x39abx2),_0x39abx14=this[_0x53bb[251]][_0x53bb[262]](_0x39abx2),_0x39abx15=0;_0x39abx15<_0x39abx14;_0x39abx15++){var _0x39abx16=this[_0x53bb[251]][_0x53bb[263]](_0x39abx2,_0x39abx15);if(_0x39abx13||!this[_0x53bb[1714]](_0x39abx16)){_0x39abx12=_0x39abx12[_0x53bb[1919]](this[_0x53bb[251]][_0x53bb[264]](_0x39abx16,_0x39abx4,_0x39abx5))}};_0x39abx12=_0x39abx12[_0x53bb[1919]](this[_0x53bb[251]][_0x53bb[264]](_0x39abx2,_0x39abx4,_0x39abx5));_0x39abx13=[];for(_0x39abx15=0;_0x39abx15<_0x39abx12[_0x53bb[67]];_0x39abx15++){_0x39abx16=this[_0x53bb[441]][_0x53bb[248]](_0x39abx12[_0x39abx15]),_0x39abx14=null!=_0x39abx16?_0x39abx16[_0x53bb[1710]](!0):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx12[_0x39abx15],!0),_0x39abx16=null!=_0x39abx16?_0x39abx16[_0x53bb[1710]](!1):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx12[_0x39abx15],!1),(_0x39abx9&&_0x39abx14==_0x39abx16||_0x39abx14!=_0x39abx16&&(_0x39abx4&&_0x39abx16==_0x39abx2&&(null==_0x39abx3||this[_0x53bb[1920]](_0x39abx14,_0x39abx3,_0x39abxa))||_0x39abx5&&_0x39abx14==_0x39abx2&&(null==_0x39abx3||this[_0x53bb[1920]](_0x39abx16,_0x39abx3,_0x39abxa))))&&_0x39abx13[_0x53bb[207]](_0x39abx12[_0x39abx15])};return _0x39abx13};mxGraph[_0x53bb[202]][_0x53bb[1920]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx4?this[_0x53bb[251]][_0x53bb[1720]](_0x39abx3,_0x39abx2):this[_0x53bb[251]][_0x53bb[1197]](_0x39abx2)==_0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[1808]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=null!=_0x39abx4?_0x39abx4:!0;_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;var _0x39abx9=[],_0x39abxa={};if(null!=_0x39abx2){for(var _0x39abx12=0;_0x39abx12<_0x39abx2[_0x53bb[67]];_0x39abx12++){var _0x39abx13=this[_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x39abx12]),_0x39abx14=null!=_0x39abx13?_0x39abx13[_0x53bb[1710]](!0):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx2[_0x39abx12],!0),_0x39abx13=null!=_0x39abx13?_0x39abx13[_0x53bb[1710]](!1):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx2[_0x39abx12],!1);if(_0x39abx14==_0x39abx3&&null!=_0x39abx13&&_0x39abx13!=_0x39abx3&&_0x39abx5){var _0x39abx15=mxCellPath[_0x53bb[385]](_0x39abx13);null==_0x39abxa[_0x39abx15]&&(_0x39abxa[_0x39abx15]=_0x39abx13,_0x39abx9[_0x53bb[207]](_0x39abx13))}else {_0x39abx13==_0x39abx3&&(null!=_0x39abx14&&_0x39abx14!=_0x39abx3&&_0x39abx4)&&(_0x39abx15=mxCellPath[_0x53bb[385]](_0x39abx14),null==_0x39abxa[_0x39abx15]&&(_0x39abxa[_0x39abx15]=_0x39abx14,_0x39abx9[_0x53bb[207]](_0x39abx14)))}}};return _0x39abx9};mxGraph[_0x53bb[202]][_0x53bb[1781]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;for(var _0x39abx5=this[_0x53bb[264]](_0x39abx2),_0x39abx9=[],_0x39abxa=0;_0x39abxa<_0x39abx5[_0x53bb[67]];_0x39abxa++){var _0x39abx12=this[_0x53bb[441]][_0x53bb[248]](_0x39abx5[_0x39abxa]),_0x39abx13=null!=_0x39abx12?_0x39abx12[_0x53bb[1710]](!0):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx5[_0x39abxa],!0),_0x39abx12=null!=_0x39abx12?_0x39abx12[_0x53bb[1710]](!1):this[_0x53bb[441]][_0x53bb[1710]](_0x39abx5[_0x39abxa],!1);(_0x39abx13==_0x39abx2&&_0x39abx12==_0x39abx3||!_0x39abx4&&_0x39abx13==_0x39abx3&&_0x39abx12==_0x39abx2)&&_0x39abx9[_0x53bb[207]](_0x39abx5[_0x39abxa])};return _0x39abx9};mxGraph[_0x53bb[202]][_0x53bb[2689]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxUtils[_0x53bb[2196]](this[_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx2),mxEvent[_0x53bb[733]](_0x39abx2)),_0x39abx5=this[_0x53bb[441]][_0x53bb[255]],_0x39abx9=this[_0x53bb[441]][_0x53bb[513]],_0x39abxa=!1!=_0x39abx3?this[_0x53bb[1020]]/2:0;_0x39abx4[_0x53bb[235]]=this[_0x53bb[1021]](_0x39abx4[_0x53bb[235]]/_0x39abx5-_0x39abx9[_0x53bb[235]]-_0x39abxa);_0x39abx4[_0x53bb[236]]=this[_0x53bb[1021]](_0x39abx4[_0x53bb[236]]/_0x39abx5-_0x39abx9[_0x53bb[236]]-_0x39abxa);return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[2690]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abxa=null!=_0x39abxa?_0x39abxa:[];if(0<_0x39abx4||0<_0x39abx5){var _0x39abx12=_0x39abx2+_0x39abx4,_0x39abx13=_0x39abx3+_0x39abx5;_0x39abx9=_0x39abx9||this[_0x53bb[902]]();if(null!=_0x39abx9){for(var _0x39abx14=this[_0x53bb[251]][_0x53bb[262]](_0x39abx9),_0x39abx15=0;_0x39abx15<_0x39abx14;_0x39abx15++){var _0x39abx16=this[_0x53bb[251]][_0x53bb[263]](_0x39abx9,_0x39abx15),_0x39abx17=this[_0x53bb[441]][_0x53bb[248]](_0x39abx16);if(this[_0x53bb[1714]](_0x39abx16)&&null!=_0x39abx17){var _0x39abx18=_0x39abx17,_0x39abx17=mxUtils[_0x53bb[433]](_0x39abx17[_0x53bb[124]],mxConstants.STYLE_ROTATION)||0;0!=_0x39abx17&&(_0x39abx18=mxUtils[_0x53bb[1613]](_0x39abx18,_0x39abx17));_0x39abx18[_0x53bb[235]]>=_0x39abx2&&_0x39abx18[_0x53bb[236]]+_0x39abx18[_0x53bb[119]]<=_0x39abx13&&_0x39abx18[_0x53bb[236]]>=_0x39abx3&&_0x39abx18[_0x53bb[235]]+_0x39abx18[_0x53bb[117]]<=_0x39abx12?_0x39abxa[_0x53bb[207]](_0x39abx16):this[_0x53bb[2690]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx16,_0x39abxa)}}}};return _0x39abxa};mxGraph[_0x53bb[202]][_0x53bb[2691]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=[];if(_0x39abx5||_0x39abx9){if(null==_0x39abx4&&(_0x39abx4=this[_0x53bb[902]]()),null!=_0x39abx4){for(var _0x39abx12=this[_0x53bb[251]][_0x53bb[262]](_0x39abx4),_0x39abx13=0;_0x39abx13<_0x39abx12;_0x39abx13++){var _0x39abx14=this[_0x53bb[251]][_0x53bb[263]](_0x39abx4,_0x39abx13),_0x39abx15=this[_0x53bb[441]][_0x53bb[248]](_0x39abx14);this[_0x53bb[1714]](_0x39abx14)&&null!=_0x39abx15&&(!_0x39abx5||_0x39abx15[_0x53bb[235]]>=_0x39abx2)&&(!_0x39abx9||_0x39abx15[_0x53bb[236]]>=_0x39abx3)&&_0x39abxa[_0x53bb[207]](_0x39abx14)}}};return _0x39abxa};mxGraph[_0x53bb[202]][_0x53bb[1757]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=null!=_0x39abx3?_0x39abx3:!1;_0x39abx4=null!=_0x39abx4?_0x39abx4:!1;var _0x39abx5=[];if(null!=_0x39abx2){for(var _0x39abx9=this[_0x53bb[502]](),_0x39abxa=_0x39abx9[_0x53bb[262]](_0x39abx2),_0x39abx12=null,_0x39abx13=0,_0x39abx14=0;_0x39abx14<_0x39abxa;_0x39abx14++){var _0x39abx15=_0x39abx9[_0x53bb[263]](_0x39abx2,_0x39abx14);if(this[_0x53bb[251]][_0x53bb[1193]](_0x39abx15)&&this[_0x53bb[1714]](_0x39abx15)){for(var _0x39abx16=this[_0x53bb[1756]](_0x39abx15,_0x39abx3?_0x39abx2:null),_0x39abx17=0,_0x39abx18=0,_0x39abx19=0;_0x39abx19<_0x39abx16[_0x53bb[67]];_0x39abx19++){this[_0x53bb[441]][_0x53bb[1710]](_0x39abx16[_0x39abx19],!0)==_0x39abx15?_0x39abx17++:_0x39abx18++};(_0x39abx4&&0==_0x39abx17&&0<_0x39abx18||!_0x39abx4&&0==_0x39abx18&&0<_0x39abx17)&&_0x39abx5[_0x53bb[207]](_0x39abx15);_0x39abx16=_0x39abx4?_0x39abx18-_0x39abx17:_0x39abx17-_0x39abx18;_0x39abx16>_0x39abx13&&(_0x39abx13=_0x39abx16,_0x39abx12=_0x39abx15)}};0==_0x39abx5[_0x53bb[67]]&&null!=_0x39abx12&&_0x39abx5[_0x53bb[207]](_0x39abx12)};return _0x39abx5};mxGraph[_0x53bb[202]][_0x53bb[1706]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx4&&null!=_0x39abx2){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;_0x39abx9=_0x39abx9||[];var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2);if(null==_0x39abx9[_0x39abxa]&&(_0x39abx9[_0x39abxa]=_0x39abx2,_0x39abx5=_0x39abx4(_0x39abx2,_0x39abx5),null==_0x39abx5||_0x39abx5)){if(_0x39abx5=this[_0x53bb[251]][_0x53bb[1707]](_0x39abx2),0<_0x39abx5){for(_0x39abxa=0;_0x39abxa<_0x39abx5;_0x39abxa++){var _0x39abx12=this[_0x53bb[251]][_0x53bb[1708]](_0x39abx2,_0x39abxa),_0x39abx13=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx12,!0)==_0x39abx2;if(!_0x39abx3||_0x39abx13){_0x39abx13=this[_0x53bb[251]][_0x53bb[1709]](_0x39abx12,!_0x39abx13),this[_0x53bb[1706]](_0x39abx13,_0x39abx3,_0x39abx4,_0x39abx12,_0x39abx9)}}}}}};mxGraph[_0x53bb[202]][_0x53bb[2692]]=function(_0x39abx2){return this[_0x53bb[2435]]()[_0x53bb[2097]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2693]]=function(){return this[_0x53bb[2435]]()[_0x53bb[1107]]()};mxGraph[_0x53bb[202]][_0x53bb[2440]]=function(){return this[_0x53bb[2435]]()[_0x53bb[200]]()};mxGraph[_0x53bb[202]][_0x53bb[2694]]=function(){return this[_0x53bb[2435]]()[_0x53bb[895]][_0x53bb[67]]};mxGraph[_0x53bb[202]][_0x53bb[2452]]=function(){return this[_0x53bb[2435]]()[_0x53bb[895]][0]};mxGraph[_0x53bb[202]][_0x53bb[897]]=function(){return this[_0x53bb[2435]]()[_0x53bb[895]][_0x53bb[1853]]()};mxGraph[_0x53bb[202]][_0x53bb[2450]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[2099]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[904]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[2100]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2695]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[2103]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2696]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[832]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2697]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[2104]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2439]]=function(_0x39abx2){this[_0x53bb[2435]]()[_0x53bb[842]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2698]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[2690]](_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],_0x39abx2[_0x53bb[117]],_0x39abx2[_0x53bb[119]]);this[_0x53bb[2699]](_0x39abx4,_0x39abx3);return _0x39abx4};mxGraph[_0x53bb[202]][_0x53bb[2700]]=function(){this[_0x53bb[2701]](!0)};mxGraph[_0x53bb[202]][_0x53bb[2702]]=function(){this[_0x53bb[2701]]()};mxGraph[_0x53bb[202]][_0x53bb[2703]]=function(){this[_0x53bb[2701]](!1,!0)};mxGraph[_0x53bb[202]][_0x53bb[2704]]=function(){this[_0x53bb[2701]](!1,!1,!0)};mxGraph[_0x53bb[202]][_0x53bb[2701]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[2105]],_0x39abx9=0<_0x39abx5[_0x53bb[895]][_0x53bb[67]]?_0x39abx5[_0x53bb[895]][0]:null;1<_0x39abx5[_0x53bb[895]][_0x53bb[67]]&&_0x39abx5[_0x53bb[200]]();var _0x39abx5=null!=_0x39abx9?this[_0x53bb[251]][_0x53bb[1197]](_0x39abx9):this[_0x53bb[902]](),_0x39abxa=this[_0x53bb[251]][_0x53bb[262]](_0x39abx5);null==_0x39abx9&&0<_0x39abxa?(_0x39abx2=this[_0x53bb[251]][_0x53bb[263]](_0x39abx5,0),this[_0x53bb[2450]](_0x39abx2)):(null==_0x39abx9||_0x39abx3)&&null!=this[_0x53bb[441]][_0x53bb[248]](_0x39abx5)&&null!=this[_0x53bb[251]][_0x53bb[1721]](_0x39abx5)?this[_0x53bb[2534]]()!=_0x39abx5&&this[_0x53bb[2450]](_0x39abx5):null!=_0x39abx9&&_0x39abx4?0<this[_0x53bb[251]][_0x53bb[262]](_0x39abx9)&&(_0x39abx2=this[_0x53bb[251]][_0x53bb[263]](_0x39abx9,0),this[_0x53bb[2450]](_0x39abx2)):0<_0x39abxa&&(_0x39abx3=_0x39abx5[_0x53bb[1738]](_0x39abx9),_0x39abx2?(_0x39abx3++,_0x39abx2=this[_0x53bb[251]][_0x53bb[263]](_0x39abx5,_0x39abx3%_0x39abxa)):(_0x39abx3--,_0x39abx2=this[_0x53bb[251]][_0x53bb[263]](_0x39abx5,0>_0x39abx3?_0x39abxa-1:_0x39abx3)),this[_0x53bb[2450]](_0x39abx2))};mxGraph[_0x53bb[202]][_0x53bb[2705]]=function(_0x39abx2){_0x39abx2=_0x39abx2||this[_0x53bb[902]]();_0x39abx2=this[_0x53bb[251]][_0x53bb[1953]](_0x39abx2);null!=_0x39abx2&&this[_0x53bb[904]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2706]]=function(_0x39abx2){this[_0x53bb[2707]](!0,!1,_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2708]]=function(_0x39abx2){this[_0x53bb[2707]](!1,!0,_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2707]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=_0x39abx4||this[_0x53bb[902]]();var _0x39abx5=mxUtils[_0x53bb[885]](this,function(_0x39abx4){return null!=this[_0x53bb[441]][_0x53bb[248]](_0x39abx4)&&0==this[_0x53bb[251]][_0x53bb[262]](_0x39abx4)&&(this[_0x53bb[251]][_0x53bb[1193]](_0x39abx4)&&_0x39abx2||this[_0x53bb[251]][_0x53bb[250]](_0x39abx4)&&_0x39abx3)});_0x39abx4=this[_0x53bb[251]][_0x53bb[1921]](_0x39abx5,_0x39abx4);this[_0x53bb[904]](_0x39abx4)};mxGraph[_0x53bb[202]][_0x53bb[2459]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[2692]](_0x39abx2);this[_0x53bb[2462]](_0x39abx3)?_0x39abx4?this[_0x53bb[2697]](_0x39abx2):this[_0x53bb[2695]](_0x39abx2):(!_0x39abx4||1!=this[_0x53bb[2694]]())&&this[_0x53bb[2450]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2699]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2462]](_0x39abx3)?this[_0x53bb[2696]](_0x39abx2):this[_0x53bb[904]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[2709]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(this[_0x53bb[251]][_0x53bb[250]](_0x39abx2[_0x53bb[246]])?(_0x39abx3=this[_0x53bb[441]][_0x53bb[2291]](_0x39abx2),_0x39abx3=this[_0x53bb[2573]](_0x39abx2)||_0x39abx3==mxEdgeStyle[_0x53bb[2568]]||_0x39abx3==mxEdgeStyle[_0x53bb[2569]]||_0x39abx3==mxEdgeStyle[_0x53bb[2570]]? new mxElbowEdgeHandler(_0x39abx2):_0x39abx3==mxEdgeStyle[_0x53bb[2567]]||_0x39abx3==mxEdgeStyle[_0x53bb[2572]]? new mxEdgeSegmentHandler(_0x39abx2): new mxEdgeHandler(_0x39abx2)):_0x39abx3= new mxVertexHandler(_0x39abx2));return _0x39abx3};mxGraph[_0x53bb[202]][_0x53bb[1133]]=function(_0x39abx2){null==this[_0x53bb[2329]]&&(this[_0x53bb[2329]]=[]);this[_0x53bb[2329]][_0x53bb[207]](_0x39abx2)};mxGraph[_0x53bb[202]][_0x53bb[1148]]=function(_0x39abx2){if(null!=this[_0x53bb[2329]]){for(var _0x39abx3=0;_0x39abx3<this[_0x53bb[2329]][_0x53bb[67]];_0x39abx3++){if(this[_0x53bb[2329]][_0x39abx3]==_0x39abx2){this[_0x53bb[2329]][_0x53bb[300]](_0x39abx3,1);break}}}};mxGraph[_0x53bb[202]][_0x53bb[2710]]=function(_0x39abx2){if(null==_0x39abx2[_0x53bb[725]]||null==_0x39abx2[_0x53bb[726]]){var _0x39abx3=mxUtils[_0x53bb[2196]](this[_0x53bb[526]],_0x39abx2[_0x53bb[730]](),_0x39abx2[_0x53bb[732]]());_0x39abx2[_0x53bb[725]]=_0x39abx3[_0x53bb[235]]-this[_0x53bb[1136]];_0x39abx2[_0x53bb[726]]=_0x39abx3[_0x53bb[236]]-this[_0x53bb[1137]]}};mxGraph[_0x53bb[202]][_0x53bb[758]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null==_0x39abx4&&(_0x39abx4=this);this[_0x53bb[2710]](_0x39abx3);_0x39abx2==mxEvent[_0x53bb[2711]]&&(this[_0x53bb[1009]]= !0);if(mxClient[_0x53bb[754]]&&this[_0x53bb[2349]]&&_0x39abx2==mxEvent[_0x53bb[2711]]){var _0x39abx5=( new Date)[_0x53bb[178]]();_0x39abx5-this[_0x53bb[2213]]<this[_0x53bb[2350]]&&Math[_0x53bb[425]](this[_0x53bb[2712]]-_0x39abx3[_0x53bb[730]]())<this[_0x53bb[2351]]&&Math[_0x53bb[425]](this[_0x53bb[2352]]-_0x39abx3[_0x53bb[732]]())<this[_0x53bb[2351]]?(this[_0x53bb[2213]]=0,this[_0x53bb[761]](_0x39abx3[_0x53bb[727]](),_0x39abx3[_0x53bb[736]]()),_0x39abx3[_0x53bb[727]]()[_0x53bb[786]]= !0):(this[_0x53bb[2712]]=_0x39abx3[_0x53bb[730]](),this[_0x53bb[2352]]=_0x39abx3[_0x53bb[732]](),this[_0x53bb[2213]]=_0x39abx5)};_0x39abx5=2!=_0x39abx3[_0x53bb[727]]()[_0x53bb[764]];if(mxClient[_0x53bb[80]]&&_0x53bb[462]==document[_0x53bb[135]]){if(null!=this[_0x53bb[2713]]&&Math[_0x53bb[425]](this[_0x53bb[2713]]-_0x39abx3[_0x53bb[730]]())>this[_0x53bb[2351]]||null!=this[_0x53bb[2714]]&&Math[_0x53bb[425]](this[_0x53bb[2714]]-_0x39abx3[_0x53bb[732]]())>this[_0x53bb[2351]]){_0x39abx5= !0};_0x39abx2==mxEvent[_0x53bb[2715]]&&(this[_0x53bb[2713]]=_0x39abx3[_0x53bb[730]](),this[_0x53bb[2714]]=_0x39abx3[_0x53bb[732]]())};if((_0x39abx2!=mxEvent[_0x53bb[2715]]||this[_0x53bb[1009]])&&_0x39abx5){if(_0x39abx2==mxEvent[_0x53bb[2715]]&&(this[_0x53bb[1009]]= !1),!this[_0x53bb[2203]]()&&(mxClient[_0x53bb[71]]||mxClient[_0x53bb[75]]||mxClient[_0x53bb[76]]||mxClient[_0x53bb[80]]&&mxClient[_0x53bb[48]]||_0x39abx3[_0x53bb[727]]()[_0x53bb[772]]!=this[_0x53bb[526]])){_0x39abx2==mxEvent[_0x53bb[2716]]&&(this[_0x53bb[1009]]&&this[_0x53bb[1012]])&&this[_0x53bb[1014]](_0x39abx3[_0x53bb[734]](),_0x39abx3[_0x53bb[735]](),this[_0x53bb[1013]]);if(null!=this[_0x53bb[2329]]){_0x39abx4=[_0x39abx4,_0x39abx3];_0x39abx3[_0x53bb[727]]()[_0x53bb[739]]= !0;for(_0x39abx5=0;_0x39abx5<this[_0x53bb[2329]][_0x53bb[67]];_0x39abx5++){var _0x39abx9=this[_0x53bb[2329]][_0x39abx5];_0x39abx2==mxEvent[_0x53bb[2711]]?_0x39abx9[_0x53bb[787]][_0x53bb[183]](_0x39abx9,_0x39abx4):_0x39abx2==mxEvent[_0x53bb[2716]]?_0x39abx9[_0x53bb[788]][_0x53bb[183]](_0x39abx9,_0x39abx4):_0x39abx2==mxEvent[_0x53bb[2715]]&&_0x39abx9[_0x53bb[789]][_0x53bb[183]](_0x39abx9,_0x39abx4)}};_0x39abx2==mxEvent[_0x53bb[2715]]&&this[_0x53bb[173]](_0x39abx3)}}else {_0x39abx2==mxEvent[_0x53bb[2715]]&&(this[_0x53bb[1009]]= !1)}};mxGraph[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[2717]]||(this[_0x53bb[2717]]= !0,null!=this[_0x53bb[2276]]&&this[_0x53bb[2276]][_0x53bb[515]](),null!=this[_0x53bb[2432]]&&this[_0x53bb[2432]][_0x53bb[515]](),null!=this[_0x53bb[2316]]&&this[_0x53bb[2316]][_0x53bb[515]](),null!=this[_0x53bb[2433]]&&this[_0x53bb[2433]][_0x53bb[515]](),null!=this[_0x53bb[1011]]&&this[_0x53bb[1011]][_0x53bb[515]](),null!=this[_0x53bb[2347]]&&this[_0x53bb[2347]][_0x53bb[515]](),null!=this[_0x53bb[441]]&&this[_0x53bb[441]][_0x53bb[515]](),null!=this[_0x53bb[251]]&&null!=this[_0x53bb[2343]]&&(this[_0x53bb[251]][_0x53bb[745]](this[_0x53bb[2343]]),this[_0x53bb[2343]]=null),this[_0x53bb[526]]=null)};function mxCellOverlay(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){this[_0x53bb[618]]=_0x39abx2;this[_0x53bb[2718]]=_0x39abx3;this[_0x53bb[611]]=null!=_0x39abx4?_0x39abx4:this[_0x53bb[611]];this[_0x53bb[123]]=null!=_0x39abx5?_0x39abx5:this[_0x53bb[123]];this[_0x53bb[1368]]=null!=_0x39abx9?_0x39abx9: new mxPoint;this[_0x53bb[270]]=null!=_0x39abxa?_0x39abxa:_0x53bb[2719]}mxCellOverlay[_0x53bb[202]]= new mxEventSource;mxCellOverlay[_0x53bb[202]][_0x53bb[196]]=mxCellOverlay;mxCellOverlay[_0x53bb[202]][_0x53bb[618]]=null;mxCellOverlay[_0x53bb[202]][_0x53bb[2718]]=null;mxCellOverlay[_0x53bb[202]][_0x53bb[611]]=mxConstants[_0x53bb[480]];mxCellOverlay[_0x53bb[202]][_0x53bb[123]]=mxConstants[_0x53bb[482]];mxCellOverlay[_0x53bb[202]][_0x53bb[1368]]=null;mxCellOverlay[_0x53bb[202]][_0x53bb[270]]=null;mxCellOverlay[_0x53bb[202]][_0x53bb[2354]]=0.5;mxCellOverlay[_0x53bb[202]][_0x53bb[1799]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[441]][_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx2[_0x53bb[246]]),_0x39abx4=_0x39abx2[_0x53bb[441]][_0x53bb[255]],_0x39abx5=null,_0x39abx9=this[_0x53bb[618]][_0x53bb[117]],_0x39abxa=this[_0x53bb[618]][_0x53bb[119]];_0x39abx3?(_0x39abx3=_0x39abx2[_0x53bb[439]],1==_0x39abx3[_0x53bb[67]]%2?_0x39abx5=_0x39abx3[Math[_0x53bb[519]](_0x39abx3[_0x53bb[67]]/2)]:(_0x39abx5=_0x39abx3[_0x53bb[67]]/2,_0x39abx2=_0x39abx3[_0x39abx5-1],_0x39abx3=_0x39abx3[_0x39abx5],_0x39abx5= new mxPoint(_0x39abx2[_0x53bb[235]]+(_0x39abx3[_0x53bb[235]]-_0x39abx2[_0x53bb[235]])/2,_0x39abx2[_0x53bb[236]]+(_0x39abx3[_0x53bb[236]]-_0x39abx2[_0x53bb[236]])/2))):(_0x39abx5= new mxPoint,_0x39abx5[_0x53bb[235]]=this[_0x53bb[611]]==mxConstants[_0x53bb[2132]]?_0x39abx2[_0x53bb[235]]:this[_0x53bb[611]]==mxConstants[_0x53bb[479]]?_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]/2:_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]],_0x39abx5[_0x53bb[236]]=this[_0x53bb[123]]==mxConstants[_0x53bb[1687]]?_0x39abx2[_0x53bb[236]]:this[_0x53bb[123]]==mxConstants[_0x53bb[481]]?_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]/2:_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]);return new mxRectangle(Math[_0x53bb[488]](_0x39abx5[_0x53bb[235]]-(_0x39abx9*this[_0x53bb[2354]]-this[_0x53bb[1368]][_0x53bb[235]])*_0x39abx4),Math[_0x53bb[488]](_0x39abx5[_0x53bb[236]]-(_0x39abxa*this[_0x53bb[2354]]-this[_0x53bb[1368]][_0x53bb[236]])*_0x39abx4),_0x39abx9*_0x39abx4,_0x39abxa*_0x39abx4)};mxCellOverlay[_0x53bb[202]][_0x53bb[2591]]=function(){return this[_0x53bb[2718]]};function mxOutline(_0x39abx2,_0x39abx3){this[_0x53bb[1097]]=_0x39abx2;null!=_0x39abx3&&this[_0x53bb[176]](_0x39abx3)}mxOutline[_0x53bb[202]][_0x53bb[1097]]=null;mxOutline[_0x53bb[202]][_0x53bb[2136]]=null;mxOutline[_0x53bb[202]][_0x53bb[2720]]=mxConstants[_0x53bb[2333]];mxOutline[_0x53bb[202]][_0x53bb[984]]= !0;mxOutline[_0x53bb[202]][_0x53bb[2721]]= !0;mxOutline[_0x53bb[202]][_0x53bb[467]]=10;mxOutline[_0x53bb[202]][_0x53bb[2722]]=8;mxOutline[_0x53bb[202]][_0x53bb[2723]]= !1;mxOutline[_0x53bb[202]][_0x53bb[2724]]=null;mxOutline[_0x53bb[202]][_0x53bb[1063]]= !1;mxOutline[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2){this[_0x53bb[2136]]= new mxGraph(_0x39abx2,this[_0x53bb[1097]][_0x53bb[502]](),this[_0x53bb[2720]],this[_0x53bb[1097]][_0x53bb[2434]]());this[_0x53bb[2136]][_0x53bb[2206]]= !1;this[_0x53bb[2136]][_0x53bb[1012]]= !1;var _0x39abx3=this[_0x53bb[2136]][_0x53bb[1177]];this[_0x53bb[2136]][_0x53bb[1177]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){!this[_0x53bb[1063]]&&null!=this[_0x53bb[2136]]&&_0x39abx3[_0x53bb[183]](this[_0x53bb[2136]],arguments)});mxClient[_0x53bb[48]]&&(_0x39abx2=this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[2051]]()[_0x53bb[265]],_0x39abx2[_0x53bb[57]](_0x53bb[2725],_0x53bb[2726]),_0x39abx2[_0x53bb[57]](_0x53bb[2727],_0x53bb[2726]));this[_0x53bb[2136]][_0x53bb[2409]]= !1;this[_0x53bb[2136]][_0x53bb[995]](!1);this[_0x53bb[2728]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){!this[_0x53bb[1063]]&&!this[_0x53bb[1124]]&&this[_0x53bb[2729]]()});this[_0x53bb[1097]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[2728]]);this[_0x53bb[2136]][_0x53bb[1133]](this);_0x39abx2=this[_0x53bb[1097]][_0x53bb[249]]();_0x39abx2[_0x53bb[169]](mxEvent.SCALE,this[_0x53bb[2728]]);_0x39abx2[_0x53bb[169]](mxEvent.TRANSLATE,this[_0x53bb[2728]]);_0x39abx2[_0x53bb[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x53bb[2728]]);_0x39abx2[_0x53bb[169]](mxEvent.DOWN,this[_0x53bb[2728]]);_0x39abx2[_0x53bb[169]](mxEvent.UP,this[_0x53bb[2728]]);mxEvent[_0x53bb[169]](this[_0x53bb[1097]][_0x53bb[526]],_0x53bb[276],this[_0x53bb[2728]]);this[_0x53bb[2730]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2723]]&&this[_0x53bb[2728]][_0x53bb[183]](this,arguments)});this[_0x53bb[1097]][_0x53bb[169]](mxEvent.PAN,this[_0x53bb[2730]]);this[_0x53bb[2731]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2136]][_0x53bb[2341]](this[_0x53bb[1097]][_0x53bb[2434]]());this[_0x53bb[2136]][_0x53bb[802]]()});this[_0x53bb[1097]][_0x53bb[169]](mxEvent.REFRESH,this[_0x53bb[2731]]);this[_0x53bb[1562]]= new mxRectangle(0,0,0,0);this[_0x53bb[2732]]= new mxRectangleShape(this[_0x53bb[1562]],null,mxConstants.OUTLINE_COLOR,mxConstants.OUTLINE_STROKEWIDTH);this[_0x53bb[2732]][_0x53bb[507]]=this[_0x53bb[2136]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]];this[_0x53bb[2732]][_0x53bb[176]](this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[1524]]());mxEvent[_0x53bb[2733]](this[_0x53bb[2732]][_0x53bb[252]],this[_0x53bb[2136]]);this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[1537]]=_0x53bb[110];this[_0x53bb[2734]]=this[_0x53bb[2735]]();this[_0x53bb[2734]][_0x53bb[176]](this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[1524]]());this[_0x53bb[984]]&&(this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[356]);mxEvent[_0x53bb[169]](this[_0x53bb[2734]][_0x53bb[252]],mxClient[_0x53bb[754]]?_0x53bb[755]:_0x53bb[751],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2136]][_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx2))}));this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=this[_0x53bb[2721]]?_0x53bb[110]:_0x53bb[130];this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]];this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x53bb[582];this[_0x53bb[2729]](!1)};mxOutline[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxOutline[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxOutline[_0x53bb[202]][_0x53bb[2736]]=function(_0x39abx2){this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x39abx2?_0x53bb[189]:_0x53bb[188]};mxOutline[_0x53bb[202]][_0x53bb[802]]=function(){this[_0x53bb[2729]](!0)};mxOutline[_0x53bb[202]][_0x53bb[2735]]=function(){var _0x39abx2=null!=this[_0x53bb[2724]]? new mxImageShape( new mxRectangle(0,0,this[_0x53bb[2724]][_0x53bb[117]],this[_0x53bb[2724]][_0x53bb[119]]),this[_0x53bb[2724]][_0x53bb[390]]): new mxRectangleShape( new mxRectangle(0,0,this[_0x53bb[2722]],this[_0x53bb[2722]]),mxConstants.OUTLINE_HANDLE_FILLCOLOR,mxConstants.OUTLINE_HANDLE_STROKECOLOR);_0x39abx2[_0x53bb[507]]=this[_0x53bb[2136]][_0x53bb[507]];return _0x39abx2};mxOutline[_0x53bb[202]][_0x53bb[2737]]=function(){return new mxRectangle(0,0,this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[1526]],this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[191]])};mxOutline[_0x53bb[202]][_0x53bb[2738]]=function(_0x39abx2){return null};mxOutline[_0x53bb[202]][_0x53bb[2729]]=function(_0x39abx2){if(null!=this[_0x53bb[1097]]){var _0x39abx3=this[_0x53bb[1097]][_0x53bb[441]][_0x53bb[255]],_0x39abx4=this[_0x53bb[1097]][_0x53bb[517]](),_0x39abx4= new mxRectangle(_0x39abx4[_0x53bb[235]]/_0x39abx3+this[_0x53bb[1097]][_0x53bb[1136]],_0x39abx4[_0x53bb[236]]/_0x39abx3+this[_0x53bb[1097]][_0x53bb[1137]],_0x39abx4[_0x53bb[117]]/_0x39abx3,_0x39abx4[_0x53bb[119]]/_0x39abx3),_0x39abx5= new mxRectangle(0,0,this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[159]]/_0x39abx3,this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[157]]/_0x39abx3),_0x39abx9=_0x39abx4[_0x53bb[238]]();_0x39abx9[_0x53bb[99]](_0x39abx5);var _0x39abxa=this[_0x53bb[2737]](),_0x39abx5=Math[_0x53bb[160]](_0x39abxa[_0x53bb[117]]/_0x39abx3,_0x39abx9[_0x53bb[117]]),_0x39abx3=Math[_0x53bb[160]](_0x39abxa[_0x53bb[119]]/_0x39abx3,_0x39abx9[_0x53bb[119]]),_0x39abx9=Math[_0x53bb[160]](0,this[_0x53bb[2136]][_0x53bb[526]][_0x53bb[159]]-this[_0x53bb[467]]),_0x39abxa=Math[_0x53bb[160]](0,this[_0x53bb[2136]][_0x53bb[526]][_0x53bb[157]]-this[_0x53bb[467]]),_0x39abx9=Math[_0x53bb[243]](_0x39abx9/_0x39abx5,_0x39abxa/_0x39abx3);if(0<_0x39abx9){this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[255]]!=_0x39abx9&&(this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[255]]=_0x39abx9,_0x39abx2= !0);_0x39abx5=this[_0x53bb[2136]][_0x53bb[249]]();_0x39abx5[_0x53bb[1741]]!=this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[1741]]&&_0x39abx5[_0x53bb[2257]](this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[1741]]);var _0x39abx3=this[_0x53bb[1097]][_0x53bb[441]][_0x53bb[513]],_0x39abxa=_0x39abx3[_0x53bb[235]]+this[_0x53bb[1097]][_0x53bb[1136]],_0x39abx12=_0x39abx3[_0x53bb[236]]+this[_0x53bb[1097]][_0x53bb[1137]],_0x39abx9=this[_0x53bb[2738]](_0x39abx9);null!=_0x39abx9&&(_0x39abxa+=_0x39abx9[_0x53bb[235]],_0x39abx12+=_0x39abx9[_0x53bb[236]]);0>_0x39abx4[_0x53bb[235]]&&(_0x39abxa-=_0x39abx4[_0x53bb[235]]);0>_0x39abx4[_0x53bb[236]]&&(_0x39abx12-=_0x39abx4[_0x53bb[236]]);if(_0x39abx5[_0x53bb[513]][_0x53bb[235]]!=_0x39abxa||_0x39abx5[_0x53bb[513]][_0x53bb[236]]!=_0x39abx12){_0x39abx5[_0x53bb[513]][_0x53bb[235]]=_0x39abxa,_0x39abx5[_0x53bb[513]][_0x53bb[236]]=_0x39abx12,_0x39abx2= !0};var _0x39abx4=_0x39abx5[_0x53bb[513]],_0x39abx9=this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[255]],_0x39abxa=_0x39abx9/_0x39abx5[_0x53bb[255]],_0x39abx12=1/_0x39abx5[_0x53bb[255]],_0x39abx13=this[_0x53bb[1097]][_0x53bb[526]];this[_0x53bb[1562]]= new mxRectangle((_0x39abx4[_0x53bb[235]]-_0x39abx3[_0x53bb[235]]-this[_0x53bb[1097]][_0x53bb[1136]])/_0x39abx12,(_0x39abx4[_0x53bb[236]]-_0x39abx3[_0x53bb[236]]-this[_0x53bb[1097]][_0x53bb[1137]])/_0x39abx12,_0x39abx13[_0x53bb[159]]/_0x39abxa,_0x39abx13[_0x53bb[157]]/_0x39abxa);this[_0x53bb[1562]][_0x53bb[235]]+=this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[360]]*_0x39abx5[_0x53bb[255]]/_0x39abx9;this[_0x53bb[1562]][_0x53bb[236]]+=this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[190]]*_0x39abx5[_0x53bb[255]]/_0x39abx9;_0x39abx4=this[_0x53bb[2732]][_0x53bb[1562]];if(_0x39abx4[_0x53bb[235]]!=this[_0x53bb[1562]][_0x53bb[235]]||_0x39abx4[_0x53bb[236]]!=this[_0x53bb[1562]][_0x53bb[236]]||_0x39abx4[_0x53bb[117]]!=this[_0x53bb[1562]][_0x53bb[117]]||_0x39abx4[_0x53bb[119]]!=this[_0x53bb[1562]][_0x53bb[119]]){this[_0x53bb[2732]][_0x53bb[1562]]=this[_0x53bb[1562]],this[_0x53bb[2732]][_0x53bb[258]]()};_0x39abx4=this[_0x53bb[2734]][_0x53bb[1562]];_0x39abx5= new mxRectangle(this[_0x53bb[1562]][_0x53bb[235]]+this[_0x53bb[1562]][_0x53bb[117]]-_0x39abx4[_0x53bb[117]]/2,this[_0x53bb[1562]][_0x53bb[236]]+this[_0x53bb[1562]][_0x53bb[119]]-_0x39abx4[_0x53bb[119]]/2,_0x39abx4[_0x53bb[117]],_0x39abx4[_0x53bb[119]]);if(_0x39abx4[_0x53bb[235]]!=_0x39abx5[_0x53bb[235]]||_0x39abx4[_0x53bb[236]]!=_0x39abx5[_0x53bb[236]]||_0x39abx4[_0x53bb[117]]!=_0x39abx5[_0x53bb[117]]||_0x39abx4[_0x53bb[119]]!=_0x39abx5[_0x53bb[119]]){this[_0x53bb[2734]][_0x53bb[1562]]=_0x39abx5,_0x53bb[188]!=this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]&&this[_0x53bb[2734]][_0x53bb[258]]()};_0x39abx2&&this[_0x53bb[2136]][_0x53bb[441]][_0x53bb[2259]]()}}};mxOutline[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[984]]&&this[_0x53bb[2721]]&&(this[_0x53bb[499]]=_0x39abx3[_0x53bb[729]](this[_0x53bb[2734]]),this[_0x53bb[2739]]=_0x39abx3[_0x53bb[730]](),this[_0x53bb[2740]]=_0x39abx3[_0x53bb[732]](),this[_0x53bb[1124]]= !0,this[_0x53bb[1097]][_0x53bb[2365]]&&mxUtils[_0x53bb[1134]](this[_0x53bb[1097]][_0x53bb[526]])?(this[_0x53bb[2741]]=this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[360]],this[_0x53bb[2742]]=this[_0x53bb[1097]][_0x53bb[526]][_0x53bb[190]]):this[_0x53bb[2742]]=this[_0x53bb[2741]]=0);_0x39abx3[_0x53bb[722]]()};mxOutline[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1124]]){this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=this[_0x53bb[2721]]?_0x53bb[110]:_0x53bb[130];this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]];var _0x39abx4=_0x39abx3[_0x53bb[730]]()-this[_0x53bb[2739]],_0x39abx5=_0x39abx3[_0x53bb[732]]()-this[_0x53bb[2740]],_0x39abx9=null;if(this[_0x53bb[499]]){_0x39abx9=this[_0x53bb[1097]][_0x53bb[526]],_0x39abx5=_0x39abx4/(_0x39abx9[_0x53bb[159]]/_0x39abx9[_0x53bb[157]]),_0x39abx9= new mxRectangle(this[_0x53bb[1562]][_0x53bb[235]],this[_0x53bb[1562]][_0x53bb[236]],Math[_0x53bb[160]](1,this[_0x53bb[1562]][_0x53bb[117]]+_0x39abx4),Math[_0x53bb[160]](1,this[_0x53bb[1562]][_0x53bb[119]]+_0x39abx5)),this[_0x53bb[2732]][_0x53bb[1562]]=_0x39abx9,this[_0x53bb[2732]][_0x53bb[258]]()}else {var _0x39abxa=this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx9= new mxRectangle(this[_0x53bb[1562]][_0x53bb[235]]+_0x39abx4,this[_0x53bb[1562]][_0x53bb[236]]+_0x39abx5,this[_0x53bb[1562]][_0x53bb[117]],this[_0x53bb[1562]][_0x53bb[119]]);this[_0x53bb[2732]][_0x53bb[1562]]=_0x39abx9;this[_0x53bb[2732]][_0x53bb[258]]();_0x39abx4=_0x39abx4/_0x39abxa*this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[255]];_0x39abx5=_0x39abx5/_0x39abxa*this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[255]];this[_0x53bb[1097]][_0x53bb[1135]](-_0x39abx4-this[_0x53bb[2741]],-_0x39abx5-this[_0x53bb[2742]])};_0x39abx4=this[_0x53bb[2734]][_0x53bb[1562]];this[_0x53bb[2734]][_0x53bb[1562]]= new mxRectangle(_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]]-_0x39abx4[_0x53bb[117]]/2,_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]]-_0x39abx4[_0x53bb[119]]/2,_0x39abx4[_0x53bb[117]],_0x39abx4[_0x53bb[119]]);_0x53bb[188]!=this[_0x53bb[2734]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]&&this[_0x53bb[2734]][_0x53bb[258]]();_0x39abx3[_0x53bb[722]]()}};mxOutline[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1124]]){var _0x39abx4=_0x39abx3[_0x53bb[730]]()-this[_0x53bb[2739]],_0x39abx5=_0x39abx3[_0x53bb[732]]()-this[_0x53bb[2740]];if(0<Math[_0x53bb[425]](_0x39abx4)||0<Math[_0x53bb[425]](_0x39abx5)){if(this[_0x53bb[499]]){var _0x39abx5=this[_0x53bb[2732]][_0x53bb[1562]][_0x53bb[117]],_0x39abx9=this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[255]];this[_0x53bb[1097]][_0x53bb[2561]](_0x39abx9-_0x39abx4*_0x39abx9/_0x39abx5,!1)}else {if(!this[_0x53bb[1097]][_0x53bb[2365]]||!mxUtils[_0x53bb[1134]](this[_0x53bb[1097]][_0x53bb[526]])){this[_0x53bb[1097]][_0x53bb[1135]](0,0),_0x39abx4/=this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx5/=this[_0x53bb[2136]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx9=this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[513]],this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[1147]](_0x39abx9[_0x53bb[235]]-_0x39abx4,_0x39abx9[_0x53bb[236]]-_0x39abx5)}};this[_0x53bb[2729]]();_0x39abx3[_0x53bb[722]]()};this[_0x53bb[1983]]=null;this[_0x53bb[1124]]= !1}};mxOutline[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[1097]]&&(this[_0x53bb[1097]][_0x53bb[745]](this[_0x53bb[2730]]),this[_0x53bb[1097]][_0x53bb[745]](this[_0x53bb[2731]]),this[_0x53bb[1097]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[2728]]),this[_0x53bb[1097]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[2728]]),mxEvent[_0x53bb[169]](this[_0x53bb[1097]][_0x53bb[526]],_0x53bb[276],this[_0x53bb[2728]]),this[_0x53bb[1097]]=null);null!=this[_0x53bb[2136]]&&(this[_0x53bb[2136]][_0x53bb[1148]](this),this[_0x53bb[2136]][_0x53bb[515]](),this[_0x53bb[2136]]=null);null!=this[_0x53bb[2732]]&&(this[_0x53bb[2732]][_0x53bb[515]](),this[_0x53bb[2732]]=null);null!=this[_0x53bb[2734]]&&(this[_0x53bb[2734]][_0x53bb[515]](),this[_0x53bb[2734]]=null)};function mxMultiplicity(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15){this[_0x53bb[1097]]=_0x39abx2;this[_0x53bb[60]]=_0x39abx3;this[_0x53bb[2588]]=_0x39abx4;this[_0x53bb[131]]=_0x39abx5;this[_0x53bb[243]]=null!=_0x39abx9?_0x39abx9:0;this[_0x53bb[160]]=null!=_0x39abxa?_0x39abxa:_0x53bb[2743];this[_0x53bb[2744]]=_0x39abx12;this[_0x53bb[2589]]=mxResources[_0x53bb[203]](_0x39abx13)||_0x39abx13;this[_0x53bb[2745]]=mxResources[_0x53bb[203]](_0x39abx14)||_0x39abx14;this[_0x53bb[2746]]=null!=_0x39abx15?_0x39abx15:!0}mxMultiplicity[_0x53bb[202]][_0x53bb[60]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[2588]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[131]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[1097]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[243]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[160]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[2744]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[2746]]= !0;mxMultiplicity[_0x53bb[202]][_0x53bb[2589]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[2745]]=null;mxMultiplicity[_0x53bb[202]][_0x53bb[2583]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=_0x53bb[110];if(this[_0x53bb[1097]]&&this[_0x53bb[2747]](_0x39abx2,_0x39abx4,_0x39abx3)||!this[_0x53bb[1097]]&&this[_0x53bb[2747]](_0x39abx2,_0x39abx5,_0x39abx3)){if(null!=this[_0x53bb[2589]]&&(this[_0x53bb[1097]]&&(0==this[_0x53bb[160]]||_0x39abx9>=this[_0x53bb[160]])||!this[_0x53bb[1097]]&&(0==this[_0x53bb[160]]||_0x39abxa>=this[_0x53bb[160]]))){_0x39abx12+=this[_0x53bb[2589]]+_0x53bb[192]};null!=this[_0x53bb[2744]]&&(null!=this[_0x53bb[2745]]&&0<this[_0x53bb[2744]][_0x53bb[67]])&&(this[_0x53bb[2748]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5)||(_0x39abx12+=this[_0x53bb[2745]]+_0x53bb[192]))};return 0<_0x39abx12[_0x53bb[67]]?_0x39abx12:null};mxMultiplicity[_0x53bb[202]][_0x53bb[2748]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx3=_0x39abx2[_0x53bb[251]][_0x53bb[433]](_0x39abx4);_0x39abx5=_0x39abx2[_0x53bb[251]][_0x53bb[433]](_0x39abx5);_0x39abx4=!this[_0x53bb[2746]];for(var _0x39abx9=this[_0x53bb[2744]],_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){if(this[_0x53bb[1097]]&&this[_0x53bb[2749]](_0x39abx2,_0x39abx5,_0x39abx9[_0x39abxa])){_0x39abx4=this[_0x53bb[2746]];break}else {if(!this[_0x53bb[1097]]&&this[_0x53bb[2749]](_0x39abx2,_0x39abx3,_0x39abx9[_0x39abxa])){_0x39abx4=this[_0x53bb[2746]];break}}};return _0x39abx4};mxMultiplicity[_0x53bb[202]][_0x53bb[2747]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=_0x39abx2[_0x53bb[251]][_0x53bb[433]](_0x39abx3);return this[_0x53bb[2749]](_0x39abx2,_0x39abx3,this[_0x53bb[60]],this[_0x53bb[2588]],this[_0x53bb[131]])};mxMultiplicity[_0x53bb[202]][_0x53bb[2749]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){return null!=_0x39abx3?isNaN(_0x39abx3[_0x53bb[288]])?_0x39abx3==_0x39abx4:mxUtils[_0x53bb[1331]](_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9):!1};function mxLayoutManager(_0x39abx2){this[_0x53bb[2750]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){this[_0x53bb[994]]()&&this[_0x53bb[823]](_0x39abx4[_0x53bb[720]](_0x53bb[1061]))});this[_0x53bb[2317]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){this[_0x53bb[994]]()&&this[_0x53bb[835]](_0x39abx4[_0x53bb[720]](_0x53bb[895]),_0x39abx4[_0x53bb[720]](_0x53bb[763]))});this[_0x53bb[1178]](_0x39abx2)}mxLayoutManager[_0x53bb[202]]= new mxEventSource;mxLayoutManager[_0x53bb[202]][_0x53bb[196]]=mxLayoutManager;mxLayoutManager[_0x53bb[202]][_0x53bb[1179]]=null;mxLayoutManager[_0x53bb[202]][_0x53bb[2751]]= !0;mxLayoutManager[_0x53bb[202]][_0x53bb[984]]= !0;mxLayoutManager[_0x53bb[202]][_0x53bb[2728]]=null;mxLayoutManager[_0x53bb[202]][_0x53bb[2317]]=null;mxLayoutManager[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxLayoutManager[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxLayoutManager[_0x53bb[202]][_0x53bb[2752]]=function(){return this[_0x53bb[2751]]};mxLayoutManager[_0x53bb[202]][_0x53bb[2753]]=function(_0x39abx2){this[_0x53bb[2751]]=_0x39abx2};mxLayoutManager[_0x53bb[202]][_0x53bb[1703]]=function(){return this[_0x53bb[1179]]};mxLayoutManager[_0x53bb[202]][_0x53bb[1178]]=function(_0x39abx2){if(null!=this[_0x53bb[1179]]){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx3[_0x53bb[745]](this[_0x53bb[2750]]);this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2317]])};this[_0x53bb[1179]]=_0x39abx2;null!=this[_0x53bb[1179]]&&(_0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx3[_0x53bb[169]](mxEvent.BEFORE_UNDO,this[_0x53bb[2750]]),this[_0x53bb[1179]][_0x53bb[169]](mxEvent.MOVE_CELLS,this[_0x53bb[2317]]))};mxLayoutManager[_0x53bb[202]][_0x53bb[2754]]=function(_0x39abx2){return null};mxLayoutManager[_0x53bb[202]][_0x53bb[823]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[2755]](_0x39abx2[_0x53bb[1065]]);var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]]();if(this[_0x53bb[2752]]()){for(var _0x39abx4=_0x39abx3[_0x53bb[1977]](_0x39abx2);0<_0x39abx4[_0x53bb[67]];){_0x39abx2=_0x39abx2[_0x53bb[1919]](_0x39abx4),_0x39abx4=_0x39abx3[_0x53bb[1977]](_0x39abx4)}};this[_0x53bb[828]](mxUtils[_0x53bb[1779]](_0x39abx2,!1))};mxLayoutManager[_0x53bb[202]][_0x53bb[835]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx3){for(var _0x39abx4=mxUtils[_0x53bb[2196]](this[_0x53bb[1703]]()[_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx3),mxEvent[_0x53bb[733]](_0x39abx3)),_0x39abx5=this[_0x53bb[1703]]()[_0x53bb[502]](),_0x39abx9=0;_0x39abx9<_0x39abx2[_0x53bb[67]];_0x39abx9++){var _0x39abxa=this[_0x53bb[2754]](_0x39abx5[_0x53bb[1197]](_0x39abx2[_0x39abx9]));null!=_0x39abxa&&_0x39abxa[_0x53bb[1702]](_0x39abx2[_0x39abx9],_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]])}}};mxLayoutManager[_0x53bb[202]][_0x53bb[2755]]=function(_0x39abx2){for(var _0x39abx3=[],_0x39abx4={},_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){var _0x39abx9=_0x39abx2[_0x39abx5];if(_0x39abx9 instanceof mxRootChange){return []};for(var _0x39abx9=this[_0x53bb[2756]](_0x39abx9),_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){if(null!=_0x39abx9[_0x39abxa]){var _0x39abx12=mxCellPath[_0x53bb[385]](_0x39abx9[_0x39abxa]);null==_0x39abx4[_0x39abx12]&&(_0x39abx4[_0x39abx12]=_0x39abx9[_0x39abxa],_0x39abx3[_0x53bb[207]](_0x39abx9[_0x39abxa]))}}};return _0x39abx3};mxLayoutManager[_0x53bb[202]][_0x53bb[2756]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]]();return _0x39abx2 instanceof mxChildChange?[_0x39abx2[_0x53bb[247]],_0x39abx2[_0x53bb[257]],_0x39abx3[_0x53bb[1197]](_0x39abx2[_0x53bb[247]])]:_0x39abx2 instanceof mxTerminalChange||_0x39abx2 instanceof mxGeometryChange?[_0x39abx2[_0x53bb[246]],_0x39abx3[_0x53bb[1197]](_0x39abx2[_0x53bb[246]])]:[]};mxLayoutManager[_0x53bb[202]][_0x53bb[828]]=function(_0x39abx2){if(0<_0x39abx2[_0x53bb[67]]){var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=null,_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){_0x39abx2[_0x39abx5]!=_0x39abx3[_0x53bb[501]]()&&_0x39abx2[_0x39abx5]!=_0x39abx4&&(_0x39abx4=_0x39abx2[_0x39abx5],this[_0x53bb[2757]](this[_0x53bb[2754]](_0x39abx4),_0x39abx4))};this[_0x53bb[746]]( new mxEventObject(mxEvent.LAYOUT_CELLS,_0x53bb[895],_0x39abx2))}finally{_0x39abx3[_0x53bb[476]]()}}};mxLayoutManager[_0x53bb[202]][_0x53bb[2757]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx2&&null!=_0x39abx3&&_0x39abx2[_0x53bb[350]](_0x39abx3)};mxLayoutManager[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1178]](null)};function mxSpaceManager(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[2758]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[994]]()&&this[_0x53bb[837]](_0x39abx3[_0x53bb[720]](_0x53bb[895]))});this[_0x53bb[2759]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[994]]()&&this[_0x53bb[837]](_0x39abx3[_0x53bb[720]](_0x53bb[895]))});this[_0x53bb[2760]]=null!=_0x39abx3?_0x39abx3:!0;this[_0x53bb[2761]]=null!=_0x39abx4?_0x39abx4:!0;this[_0x53bb[2392]]=null!=_0x39abx5?_0x39abx5:!0;this[_0x53bb[1178]](_0x39abx2)}mxSpaceManager[_0x53bb[202]]= new mxEventSource;mxSpaceManager[_0x53bb[202]][_0x53bb[196]]=mxSpaceManager;mxSpaceManager[_0x53bb[202]][_0x53bb[1179]]=null;mxSpaceManager[_0x53bb[202]][_0x53bb[984]]= !0;mxSpaceManager[_0x53bb[202]][_0x53bb[2760]]= !0;mxSpaceManager[_0x53bb[202]][_0x53bb[2761]]= !0;mxSpaceManager[_0x53bb[202]][_0x53bb[2392]]= !0;mxSpaceManager[_0x53bb[202]][_0x53bb[2758]]=null;mxSpaceManager[_0x53bb[202]][_0x53bb[2759]]=null;mxSpaceManager[_0x53bb[202]][_0x53bb[2762]]=function(_0x39abx2){return !this[_0x53bb[1703]]()[_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2)};mxSpaceManager[_0x53bb[202]][_0x53bb[2763]]=function(_0x39abx2){return this[_0x53bb[1703]]()[_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2)&&this[_0x53bb[1703]]()[_0x53bb[1712]](_0x39abx2)};mxSpaceManager[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxSpaceManager[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxSpaceManager[_0x53bb[202]][_0x53bb[2764]]=function(){return this[_0x53bb[2760]]};mxSpaceManager[_0x53bb[202]][_0x53bb[2765]]=function(_0x39abx2){this[_0x53bb[2760]]=_0x39abx2};mxSpaceManager[_0x53bb[202]][_0x53bb[2766]]=function(){return this[_0x53bb[2761]]};mxSpaceManager[_0x53bb[202]][_0x53bb[2767]]=function(_0x39abx2){this[_0x53bb[2761]]=_0x39abx2};mxSpaceManager[_0x53bb[202]][_0x53bb[2678]]=function(){return this[_0x53bb[2392]]};mxSpaceManager[_0x53bb[202]][_0x53bb[2679]]=function(_0x39abx2){this[_0x53bb[2392]]=_0x39abx2};mxSpaceManager[_0x53bb[202]][_0x53bb[1703]]=function(){return this[_0x53bb[1179]]};mxSpaceManager[_0x53bb[202]][_0x53bb[1178]]=function(_0x39abx2){null!=this[_0x53bb[1179]]&&(this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2758]]),this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2759]]));this[_0x53bb[1179]]=_0x39abx2;null!=this[_0x53bb[1179]]&&(this[_0x53bb[1179]][_0x53bb[169]](mxEvent.RESIZE_CELLS,this[_0x53bb[2758]]),this[_0x53bb[1179]][_0x53bb[169]](mxEvent.FOLD_CELLS,this[_0x53bb[2759]]))};mxSpaceManager[_0x53bb[202]][_0x53bb[837]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){if(!this[_0x53bb[2762]](_0x39abx2[_0x39abx4])){this[_0x53bb[2768]](_0x39abx2[_0x39abx4]);break}}}finally{_0x39abx3[_0x53bb[476]]()}}};mxSpaceManager[_0x53bb[202]][_0x53bb[2768]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1703]](),_0x39abx4=_0x39abx3[_0x53bb[249]](),_0x39abx5=_0x39abx3[_0x53bb[502]](),_0x39abx9=_0x39abx4[_0x53bb[248]](_0x39abx2),_0x39abxa=_0x39abx4[_0x53bb[248]](_0x39abx5[_0x53bb[1197]](_0x39abx2));if(null!=_0x39abx9&&null!=_0x39abxa){var _0x39abx12=this[_0x53bb[2769]](_0x39abx9),_0x39abx13=_0x39abx5[_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx12&&null!=_0x39abx13){var _0x39abx14=_0x39abx4[_0x53bb[513]],_0x39abx15=_0x39abx4[_0x53bb[255]],_0x39abx4=_0x39abx9[_0x53bb[235]]-_0x39abxa[_0x53bb[2078]][_0x53bb[235]]-_0x39abx14[_0x53bb[235]]*_0x39abx15,_0x39abxa=_0x39abx9[_0x53bb[236]]-_0x39abxa[_0x53bb[2078]][_0x53bb[236]]-_0x39abx14[_0x53bb[236]]*_0x39abx15,_0x39abx14=_0x39abx9[_0x53bb[235]]+_0x39abx9[_0x53bb[117]],_0x39abx16=_0x39abx9[_0x53bb[236]]+_0x39abx9[_0x53bb[119]],_0x39abx17=_0x39abx9[_0x53bb[117]]-_0x39abx13[_0x53bb[117]]*_0x39abx15+_0x39abx4-_0x39abx13[_0x53bb[235]]*_0x39abx15,_0x39abx18=_0x39abx9[_0x53bb[119]]-_0x39abx13[_0x53bb[119]]*_0x39abx15+_0x39abxa-_0x39abx13[_0x53bb[236]]*_0x39abx15,_0x39abx19=1-_0x39abx13[_0x53bb[117]]*_0x39abx15/_0x39abx9[_0x53bb[117]],_0x39abx9=1-_0x39abx13[_0x53bb[119]]*_0x39abx15/_0x39abx9[_0x53bb[119]];_0x39abx5[_0x53bb[473]]();try{for(_0x39abx13=0;_0x39abx13<_0x39abx12[_0x53bb[67]];_0x39abx13++){_0x39abx12[_0x39abx13]!=_0x39abx2&&this[_0x53bb[2763]](_0x39abx12[_0x39abx13])&&this[_0x53bb[2770]](_0x39abx12[_0x39abx13],_0x39abx17,_0x39abx18,_0x39abx4,_0x39abxa,_0x39abx14,_0x39abx16,_0x39abx19,_0x39abx9,this[_0x53bb[2678]]()&&_0x39abx3[_0x53bb[2507]](_0x39abx12[_0x39abx13]))}}finally{_0x39abx5[_0x53bb[476]]()}}}};mxSpaceManager[_0x53bb[202]][_0x53bb[2770]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14,_0x39abx15){_0x39abx5=this[_0x53bb[1703]]();var _0x39abx16=_0x39abx5[_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);if(null!=_0x39abx16){var _0x39abx17=_0x39abx5[_0x53bb[502]](),_0x39abx18=_0x39abx17[_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx18){_0x39abx17[_0x53bb[473]]();try{if(this[_0x53bb[2764]]()){if(_0x39abx16[_0x53bb[235]]>=_0x39abxa){_0x39abx18=_0x39abx18[_0x53bb[238]](),_0x39abx18[_0x53bb[513]](-_0x39abx3,0)}else {var _0x39abx19=Math[_0x53bb[160]](0,_0x39abx16[_0x53bb[235]]-x0),_0x39abx18=_0x39abx18[_0x53bb[238]]();_0x39abx18[_0x53bb[513]](-_0x39abx13*_0x39abx19,0)}};if(this[_0x53bb[2766]]()){if(_0x39abx16[_0x53bb[236]]>=_0x39abx12){_0x39abx18=_0x39abx18[_0x53bb[238]](),_0x39abx18[_0x53bb[513]](0,-_0x39abx4)}else {var _0x39abx1a=Math[_0x53bb[160]](0,_0x39abx16[_0x53bb[236]]-_0x39abx9),_0x39abx18=_0x39abx18[_0x53bb[238]]();_0x39abx18[_0x53bb[513]](0,-_0x39abx14*_0x39abx1a)}};_0x39abx18!=_0x39abx17[_0x53bb[1721]](_0x39abx2)&&(_0x39abx17[_0x53bb[1724]](_0x39abx2,_0x39abx18),_0x39abx15&&_0x39abx5[_0x53bb[2508]](_0x39abx2))}finally{_0x39abx17[_0x53bb[476]]()}}}};mxSpaceManager[_0x53bb[202]][_0x53bb[2769]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1703]](),_0x39abx4=_0x39abx3[_0x53bb[502]]()[_0x53bb[1197]](_0x39abx2[_0x53bb[246]]),_0x39abx5=this[_0x53bb[2766]](),_0x39abx9=this[_0x53bb[2764]]();return _0x39abx3[_0x53bb[2691]](_0x39abx2[_0x53bb[235]]+(_0x39abx5?0:_0x39abx2[_0x53bb[117]]),_0x39abx2[_0x53bb[236]]+(_0x39abx5&&_0x39abx9?0:_0x39abx2[_0x53bb[119]]),_0x39abx4,_0x39abx9,_0x39abx5)};mxSpaceManager[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1178]](null)};function mxSwimlaneManager(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[662]]=null!=_0x39abx3?_0x39abx3:!0;this[_0x53bb[2771]]=null!=_0x39abx4?_0x39abx4:!0;this[_0x53bb[2772]]=null!=_0x39abx5?_0x39abx5:!0;this[_0x53bb[2773]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[994]]()&&this[_0x53bb[2774]]()&&this[_0x53bb[833]](_0x39abx3[_0x53bb[720]](_0x53bb[895]))});this[_0x53bb[2758]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[994]]()&&this[_0x53bb[2775]]()&&this[_0x53bb[837]](_0x39abx3[_0x53bb[720]](_0x53bb[895]))});this[_0x53bb[1178]](_0x39abx2)}mxSwimlaneManager[_0x53bb[202]]= new mxEventSource;mxSwimlaneManager[_0x53bb[202]][_0x53bb[196]]=mxSwimlaneManager;mxSwimlaneManager[_0x53bb[202]][_0x53bb[1179]]=null;mxSwimlaneManager[_0x53bb[202]][_0x53bb[984]]= !0;mxSwimlaneManager[_0x53bb[202]][_0x53bb[662]]= !0;mxSwimlaneManager[_0x53bb[202]][_0x53bb[2771]]= !0;mxSwimlaneManager[_0x53bb[202]][_0x53bb[2772]]= !0;mxSwimlaneManager[_0x53bb[202]][_0x53bb[2773]]=null;mxSwimlaneManager[_0x53bb[202]][_0x53bb[2758]]=null;mxSwimlaneManager[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxSwimlaneManager[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxSwimlaneManager[_0x53bb[202]][_0x53bb[1737]]=function(){return this[_0x53bb[662]]};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2776]]=function(_0x39abx2){this[_0x53bb[662]]=_0x39abx2};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2774]]=function(){return this[_0x53bb[2771]]};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2777]]=function(_0x39abx2){this[_0x53bb[2771]]=_0x39abx2};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2775]]=function(){return this[_0x53bb[2772]]};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2778]]=function(_0x39abx2){this[_0x53bb[2772]]=_0x39abx2};mxSwimlaneManager[_0x53bb[202]][_0x53bb[1703]]=function(){return this[_0x53bb[1179]]};mxSwimlaneManager[_0x53bb[202]][_0x53bb[1178]]=function(_0x39abx2){null!=this[_0x53bb[1179]]&&(this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2773]]),this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2758]]));this[_0x53bb[1179]]=_0x39abx2;null!=this[_0x53bb[1179]]&&(this[_0x53bb[1179]][_0x53bb[169]](mxEvent.ADD_CELLS,this[_0x53bb[2773]]),this[_0x53bb[1179]][_0x53bb[169]](mxEvent.CELLS_RESIZED,this[_0x53bb[2758]]))};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2779]]=function(_0x39abx2){return !this[_0x53bb[1703]]()[_0x53bb[1730]](_0x39abx2)};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2780]]=function(_0x39abx2){if(this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx2);_0x39abx2=null!=_0x39abx3?_0x39abx3[_0x53bb[124]]:this[_0x53bb[1179]][_0x53bb[1705]](_0x39abx2);return 1==mxUtils[_0x53bb[433]](_0x39abx2,mxConstants.STYLE_HORIZONTAL,1)};return !this[_0x53bb[1737]]()};mxSwimlaneManager[_0x53bb[202]][_0x53bb[833]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){this[_0x53bb[2779]](_0x39abx2[_0x39abx4])||this[_0x53bb[2781]](_0x39abx2[_0x39abx4])}}finally{_0x39abx3[_0x53bb[476]]()}}};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2781]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]](),_0x39abx4=_0x39abx3[_0x53bb[1197]](_0x39abx2),_0x39abx5=_0x39abx3[_0x53bb[262]](_0x39abx4),_0x39abx9=null,_0x39abxa=0;_0x39abxa<_0x39abx5;_0x39abxa++){var _0x39abx12=_0x39abx3[_0x53bb[263]](_0x39abx4,_0x39abxa);if(_0x39abx12!=_0x39abx2&&!this[_0x53bb[2779]](_0x39abx12)&&(_0x39abx9=_0x39abx3[_0x53bb[1721]](_0x39abx12),null!=_0x39abx9)){break}};null!=_0x39abx9&&this[_0x53bb[2782]](_0x39abx2,_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]])};mxSwimlaneManager[_0x53bb[202]][_0x53bb[837]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[1703]]()[_0x53bb[502]]();_0x39abx3[_0x53bb[473]]();try{for(var _0x39abx4=0;_0x39abx4<_0x39abx2[_0x53bb[67]];_0x39abx4++){if(!this[_0x53bb[2779]](_0x39abx2[_0x39abx4])){var _0x39abx5=_0x39abx3[_0x53bb[1721]](_0x39abx2[_0x39abx4]);if(null!=_0x39abx5){for(var _0x39abx9= new mxRectangle(0,0,_0x39abx5[_0x53bb[117]],_0x39abx5[_0x53bb[119]]),_0x39abxa=_0x39abx2[_0x39abx4],_0x39abx12=_0x39abxa;null!=_0x39abx12;){var _0x39abxa=_0x39abx12,_0x39abx12=_0x39abx3[_0x53bb[1197]](_0x39abx12),_0x39abx13=this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx12)?this[_0x53bb[1179]][_0x53bb[1731]](_0x39abx12): new mxRectangle;_0x39abx9[_0x53bb[117]]+=_0x39abx13[_0x53bb[117]];_0x39abx9[_0x53bb[119]]+=_0x39abx13[_0x53bb[119]]};this[_0x53bb[2782]](_0x39abxa,_0x39abx9[_0x53bb[117]],_0x39abx9[_0x53bb[119]])}}}}finally{_0x39abx3[_0x53bb[476]]()}}};mxSwimlaneManager[_0x53bb[202]][_0x53bb[2782]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1703]]()[_0x53bb[502]]();_0x39abx5[_0x53bb[473]]();try{if(!this[_0x53bb[2779]](_0x39abx2)){var _0x39abx9=_0x39abx5[_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx9){var _0x39abxa=this[_0x53bb[2780]](_0x39abx2);if(_0x39abxa&&_0x39abx9[_0x53bb[119]]!=_0x39abx4||!_0x39abxa&&_0x39abx9[_0x53bb[117]]!=_0x39abx3){_0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abxa?_0x39abx9[_0x53bb[119]]=_0x39abx4:_0x39abx9[_0x53bb[117]]=_0x39abx3,_0x39abx5[_0x53bb[1724]](_0x39abx2,_0x39abx9)}}};var _0x39abx12=this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)?this[_0x53bb[1179]][_0x53bb[1731]](_0x39abx2): new mxRectangle;_0x39abx3-=_0x39abx12[_0x53bb[117]];_0x39abx4-=_0x39abx12[_0x53bb[119]];for(var _0x39abx13=_0x39abx5[_0x53bb[262]](_0x39abx2),_0x39abx9=0;_0x39abx9<_0x39abx13;_0x39abx9++){var _0x39abx14=_0x39abx5[_0x53bb[263]](_0x39abx2,_0x39abx9);this[_0x53bb[2782]](_0x39abx14,_0x39abx3,_0x39abx4)}}finally{_0x39abx5[_0x53bb[476]]()}};mxSwimlaneManager[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1178]](null)};function mxTemporaryCellStates(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[441]]=_0x39abx2;_0x39abx3=null!=_0x39abx3?_0x39abx3:1;this[_0x53bb[2783]]=_0x39abx2[_0x53bb[517]]();this[_0x53bb[2784]]=_0x39abx2[_0x53bb[2312]]();this[_0x53bb[2785]]=_0x39abx2[_0x53bb[518]]();_0x39abx2[_0x53bb[1517]]( new mxDictionary);_0x39abx2[_0x53bb[2262]](_0x39abx3);if(null!=_0x39abx4){_0x39abx3=_0x39abx2[_0x53bb[1230]]( new mxCell);for(var _0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){_0x39abx2[_0x53bb[2267]](_0x39abx3,_0x39abx4[_0x39abx5])};for(var _0x39abx9=null,_0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]];_0x39abx5++){var _0x39abxa=_0x39abx2[_0x53bb[2268]](_0x39abx3,_0x39abx4[_0x39abx5]);null==_0x39abx9?_0x39abx9=_0x39abxa:_0x39abx9[_0x53bb[99]](_0x39abxa)};null==_0x39abx9&&(_0x39abx9= new mxRectangle);_0x39abx2[_0x53bb[2256]](_0x39abx9)}}mxTemporaryCellStates[_0x53bb[202]][_0x53bb[441]]=null;mxTemporaryCellStates[_0x53bb[202]][_0x53bb[2784]]=null;mxTemporaryCellStates[_0x53bb[202]][_0x53bb[2783]]=null;mxTemporaryCellStates[_0x53bb[202]][_0x53bb[2785]]=null;mxTemporaryCellStates[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[441]][_0x53bb[2262]](this[_0x53bb[2785]]);this[_0x53bb[441]][_0x53bb[1517]](this[_0x53bb[2784]]);this[_0x53bb[441]][_0x53bb[2256]](this[_0x53bb[2783]])};function mxCellStatePreview(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[2786]]={}}mxCellStatePreview[_0x53bb[202]][_0x53bb[1179]]=null;mxCellStatePreview[_0x53bb[202]][_0x53bb[2786]]=null;mxCellStatePreview[_0x53bb[202]][_0x53bb[2787]]=0;mxCellStatePreview[_0x53bb[202]][_0x53bb[1107]]=function(){return 0==this[_0x53bb[2787]]};mxCellStatePreview[_0x53bb[202]][_0x53bb[1194]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=null!=_0x39abx5?_0x39abx5:!0;_0x39abx9=null!=_0x39abx9?_0x39abx9:!0;var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx2[_0x53bb[246]]),_0x39abx12=this[_0x53bb[2786]][_0x39abxa];null==_0x39abx12?(_0x39abx12= new mxPoint(_0x39abx3,_0x39abx4),this[_0x53bb[2786]][_0x39abxa]=_0x39abx12,this[_0x53bb[2787]]++):_0x39abx5?(_0x39abx12[_0x53bb[2788]]+=_0x39abx3,_0x39abx12[_0x53bb[2789]]+=_0x39abx4):(_0x39abx12[_0x53bb[2788]]=_0x39abx3,_0x39abx12[_0x53bb[2789]]=_0x39abx4);_0x39abx9&&this[_0x53bb[2790]](_0x39abx2);return _0x39abx12};mxCellStatePreview[_0x53bb[202]][_0x53bb[539]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=_0x39abx3[_0x53bb[501]](),_0x39abx5;for(_0x39abx5 in this[_0x53bb[2786]]){var _0x39abx9=mxCellPath[_0x53bb[2791]](_0x39abx4,_0x39abx5),_0x39abxa=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx9),_0x39abx12=this[_0x53bb[2786]][_0x39abx5],_0x39abx9=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3[_0x53bb[1197]](_0x39abx9));this[_0x53bb[2792]](_0x39abx9,_0x39abxa,_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]])};for(_0x39abx5 in this[_0x53bb[2786]]){_0x39abx9=mxCellPath[_0x53bb[2791]](_0x39abx4,_0x39abx5),_0x39abxa=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx9),_0x39abx12=this[_0x53bb[2786]][_0x39abx5],_0x39abx9=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3[_0x53bb[1197]](_0x39abx9)),this[_0x53bb[2793]](_0x39abx9,_0x39abxa,_0x39abx12[_0x53bb[235]],_0x39abx12[_0x53bb[236]],_0x39abx2)}};mxCellStatePreview[_0x53bb[202]][_0x53bb[2792]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx3){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[502]]();if(_0x39abx9[_0x53bb[1193]](_0x39abx3[_0x53bb[246]])){_0x39abx3[_0x53bb[2080]]= !0;this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2267]](_0x39abx2,_0x39abx3[_0x53bb[246]]);_0x39abx2=_0x39abx9[_0x53bb[1721]](_0x39abx3[_0x53bb[246]]);var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]);if((0!=_0x39abx4||0!=_0x39abx5)&&null!=_0x39abx2&&(!_0x39abx2[_0x53bb[1500]]||null!=this[_0x53bb[2786]][_0x39abxa])){_0x39abx3[_0x53bb[235]]+=_0x39abx4,_0x39abx3[_0x53bb[236]]+=_0x39abx5}};_0x39abx2=_0x39abx9[_0x53bb[262]](_0x39abx3[_0x53bb[246]]);for(_0x39abxa=0;_0x39abxa<_0x39abx2;_0x39abxa++){this[_0x53bb[2792]](_0x39abx3,this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx9[_0x53bb[263]](_0x39abx3[_0x53bb[246]],_0x39abxa)),_0x39abx4,_0x39abx5)}}};mxCellStatePreview[_0x53bb[202]][_0x53bb[2793]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx3){_0x39abx3[_0x53bb[2080]]= !0;this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2268]](_0x39abx2,_0x39abx3[_0x53bb[246]]);var _0x39abxa=mxCellPath[_0x53bb[385]](_0x39abx3[_0x53bb[246]]),_0x39abx12=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx13=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx3[_0x53bb[246]]);if((0!=_0x39abx4||0!=_0x39abx5)&&null!=_0x39abx13&&_0x39abx13[_0x53bb[1500]]&&_0x39abx12[_0x53bb[1193]](_0x39abx3[_0x53bb[246]])&&(null==_0x39abx2||_0x39abx12[_0x53bb[1193]](_0x39abx2[_0x53bb[246]])||null!=this[_0x53bb[2786]][_0x39abxa])){_0x39abx3[_0x53bb[235]]+=_0x39abx4,_0x39abx3[_0x53bb[236]]+=_0x39abx5,this[_0x53bb[1179]][_0x53bb[259]][_0x53bb[258]](_0x39abx3)};null!=_0x39abx9&&_0x39abx9(_0x39abx3);_0x39abx2=_0x39abx12[_0x53bb[262]](_0x39abx3[_0x53bb[246]]);for(_0x39abxa=0;_0x39abxa<_0x39abx2;_0x39abxa++){this[_0x53bb[2793]](_0x39abx3,this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx12[_0x53bb[263]](_0x39abx3[_0x53bb[246]],_0x39abxa)),_0x39abx4,_0x39abx5,_0x39abx9)}}};mxCellStatePreview[_0x53bb[202]][_0x53bb[2790]]=function(_0x39abx2){for(var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=_0x39abx3[_0x53bb[1707]](_0x39abx2[_0x53bb[246]]),_0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3[_0x53bb[1708]](_0x39abx2[_0x53bb[246]],_0x39abx5));null!=_0x39abx9&&this[_0x53bb[1194]](_0x39abx9,0,0)}};function mxConnectionConstraint(_0x39abx2,_0x39abx3){this[_0x53bb[2546]]=_0x39abx2;this[_0x53bb[591]]=null!=_0x39abx3?_0x39abx3:!0}mxConnectionConstraint[_0x53bb[202]][_0x53bb[2546]]=null;mxConnectionConstraint[_0x53bb[202]][_0x53bb[591]]=null;function mxGraphHandler(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[1179]][_0x53bb[1133]](this);this[_0x53bb[2730]]=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[2794]]()});this[_0x53bb[1179]][_0x53bb[169]](mxEvent.PAN,this[_0x53bb[2730]])}mxGraphHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]=mxClient[_0x53bb[80]]?20:50;mxGraphHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[2796]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[2797]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[2798]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[990]]= !1;mxGraphHandler[_0x53bb[202]][_0x53bb[2799]]=null;mxGraphHandler[_0x53bb[202]][_0x53bb[2800]]=null;mxGraphHandler[_0x53bb[202]][_0x53bb[2801]]=null;mxGraphHandler[_0x53bb[202]][_0x53bb[2802]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[2803]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[846]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[2804]]= !1;mxGraphHandler[_0x53bb[202]][_0x53bb[2805]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[923]]=6;mxGraphHandler[_0x53bb[202]][_0x53bb[2806]]=_0x53bb[586];mxGraphHandler[_0x53bb[202]][_0x53bb[2807]]= !1;mxGraphHandler[_0x53bb[202]][_0x53bb[253]]=null;mxGraphHandler[_0x53bb[202]][_0x53bb[2808]]= !1;mxGraphHandler[_0x53bb[202]][_0x53bb[2809]]= !0;mxGraphHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxGraphHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[2810]]=function(){return this[_0x53bb[2797]]};mxGraphHandler[_0x53bb[202]][_0x53bb[2811]]=function(_0x39abx2){this[_0x53bb[2797]]=_0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[2812]]=function(){return this[_0x53bb[2798]]};mxGraphHandler[_0x53bb[202]][_0x53bb[2813]]=function(_0x39abx2){this[_0x53bb[2798]]=_0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[2814]]=function(){return this[_0x53bb[2803]]};mxGraphHandler[_0x53bb[202]][_0x53bb[2815]]=function(_0x39abx2){this[_0x53bb[2803]]=_0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[2816]]=function(){return this[_0x53bb[846]]};mxGraphHandler[_0x53bb[202]][_0x53bb[2817]]=function(_0x39abx2){this[_0x53bb[846]]=_0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[2818]]=function(_0x39abx2){return _0x39abx2[_0x53bb[736]]()};mxGraphHandler[_0x53bb[202]][_0x53bb[2819]]=function(_0x39abx2){return this[_0x53bb[1179]][_0x53bb[2692]](_0x39abx2)};mxGraphHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[994]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&!this[_0x53bb[1179]][_0x53bb[2579]](_0x39abx3[_0x53bb[727]]())&&null!=_0x39abx3[_0x53bb[248]]()){var _0x39abx4=this[_0x53bb[2818]](_0x39abx3);this[_0x53bb[246]]=null;this[_0x53bb[2820]]=this[_0x53bb[2819]](_0x39abx4);this[_0x53bb[2814]]()&&!this[_0x53bb[2820]]&&this[_0x53bb[1179]][_0x53bb[2459]](_0x39abx4,_0x39abx3[_0x53bb[727]]());if(this[_0x53bb[2812]]()){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[251]],_0x39abx9=_0x39abx5[_0x53bb[1721]](_0x39abx4);this[_0x53bb[1179]][_0x53bb[1712]](_0x39abx4)&&(!_0x39abx5[_0x53bb[250]](_0x39abx4)||1<this[_0x53bb[1179]][_0x53bb[2694]]()||null!=_0x39abx9[_0x53bb[1525]]&&0<_0x39abx9[_0x53bb[1525]][_0x53bb[67]]||null==_0x39abx5[_0x53bb[1709]](_0x39abx4,!0)||null==_0x39abx5[_0x53bb[1709]](_0x39abx4,!1)||this[_0x53bb[1179]][_0x53bb[2406]]||this[_0x53bb[1179]][_0x53bb[2574]](_0x39abx3[_0x53bb[727]]())&&this[_0x53bb[1179]][_0x53bb[2617]]())&&this[_0x53bb[861]](_0x39abx4,_0x39abx3[_0x53bb[730]](),_0x39abx3[_0x53bb[732]]());this[_0x53bb[2821]]= !0;!mxClient[_0x53bb[75]]&&!mxClient[_0x53bb[76]]||_0x53bb[2822]!=_0x39abx3[_0x53bb[728]]()[_0x53bb[301]]?_0x39abx3[_0x53bb[722]]():mxClient[_0x53bb[75]]&&_0x53bb[2822]==_0x39abx3[_0x53bb[728]]()[_0x53bb[301]]&&(this[_0x53bb[2821]]= !1,this[_0x53bb[2823]]=null)}}};mxGraphHandler[_0x53bb[202]][_0x53bb[1010]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[902]](),_0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=mxUtils[_0x53bb[885]](this,function(_0x39abx2){return null!=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx2)&&_0x39abx3[_0x53bb[1193]](_0x39abx2)&&null!=_0x39abx3[_0x53bb[1721]](_0x39abx2)&&!_0x39abx3[_0x53bb[1721]](_0x39abx2)[_0x53bb[1500]]});return this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2313]](_0x39abx3[_0x53bb[1921]](_0x39abx4,_0x39abx2))};mxGraphHandler[_0x53bb[202]][_0x53bb[2690]]=function(_0x39abx2){return !this[_0x53bb[2820]]&&this[_0x53bb[1179]][_0x53bb[1712]](_0x39abx2)?[_0x39abx2]:this[_0x53bb[1179]][_0x53bb[2629]](this[_0x53bb[1179]][_0x53bb[897]]())};mxGraphHandler[_0x53bb[202]][_0x53bb[2824]]=function(_0x39abx2){_0x39abx2=this[_0x53bb[1613]](_0x39abx2);null!=_0x39abx2&&(_0x39abx2[_0x53bb[244]](-1,-1),_0x39abx2[_0x53bb[117]]<this[_0x53bb[923]]&&(_0x39abx2[_0x53bb[235]]-=(this[_0x53bb[923]]-_0x39abx2[_0x53bb[117]])/2,_0x39abx2[_0x53bb[117]]=this[_0x53bb[923]]),_0x39abx2[_0x53bb[119]]<this[_0x53bb[923]]&&(_0x39abx2[_0x53bb[236]]-=(this[_0x53bb[923]]-_0x39abx2[_0x53bb[119]])/2,_0x39abx2[_0x53bb[119]]=this[_0x53bb[923]]));return _0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[1613]]=function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=0;_0x39abx5<_0x39abx2[_0x53bb[67]];_0x39abx5++){if(_0x39abx4[_0x53bb[1193]](_0x39abx2[_0x39abx5])||_0x39abx4[_0x53bb[250]](_0x39abx2[_0x39abx5])){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx2[_0x39abx5]);if(null!=_0x39abx9){var _0x39abxa=_0x39abx9;_0x39abx4[_0x53bb[1193]](_0x39abx2[_0x39abx5])&&(null!=_0x39abx9[_0x53bb[253]]&&null!=_0x39abx9[_0x53bb[253]][_0x53bb[1563]])&&(_0x39abxa=_0x39abx9[_0x53bb[253]][_0x53bb[1563]]);null==_0x39abx3?_0x39abx3= new mxRectangle(_0x39abxa[_0x53bb[235]],_0x39abxa[_0x53bb[236]],_0x39abxa[_0x53bb[117]],_0x39abxa[_0x53bb[119]]):_0x39abx3[_0x53bb[99]](_0x39abxa)}}}};return _0x39abx3};mxGraphHandler[_0x53bb[202]][_0x53bb[2825]]=function(_0x39abx2){_0x39abx2= new mxRectangleShape(_0x39abx2,null,this[_0x53bb[2806]]);_0x39abx2[_0x53bb[1522]]= !0;this[_0x53bb[2807]]?(_0x39abx2[_0x53bb[507]]=mxConstants[_0x53bb[1656]],_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[526]])):(_0x39abx2[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]],_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()),_0x39abx2[_0x53bb[1229]]= !1);return _0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[861]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[246]]=_0x39abx2;this[_0x53bb[2823]]=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],_0x39abx3,_0x39abx4);this[_0x53bb[895]]=this[_0x53bb[2690]](this[_0x53bb[246]]);this[_0x53bb[1562]]=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1799]](this[_0x53bb[895]]);this[_0x53bb[2826]]=this[_0x53bb[2824]](this[_0x53bb[895]]);this[_0x53bb[990]]&&(this[_0x53bb[2799]]= new mxGuide(this[_0x53bb[1179]],this[_0x53bb[1010]]()))};mxGraphHandler[_0x53bb[202]][_0x53bb[2827]]=function(_0x39abx2){return null!=this[_0x53bb[2799]]?this[_0x53bb[2799]][_0x53bb[1019]](_0x39abx2[_0x53bb[727]]()):!0};mxGraphHandler[_0x53bb[202]][_0x53bb[1021]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[2808]]?this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]]:1;_0x39abx2[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[235]]/_0x39abx3)*_0x39abx3;_0x39abx2[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[236]]/_0x39abx3)*_0x39abx3;return _0x39abx2};mxGraphHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]];if(!_0x39abx3[_0x53bb[721]]()&&_0x39abx4[_0x53bb[1009]]&&null!=this[_0x53bb[246]]&&null!=this[_0x53bb[2823]]&&null!=this[_0x53bb[1562]]){var _0x39abx5=mxUtils[_0x53bb[2196]](_0x39abx4[_0x53bb[526]],_0x39abx3[_0x53bb[730]](),_0x39abx3[_0x53bb[732]]()),_0x39abx9=_0x39abx5[_0x53bb[235]]-this[_0x53bb[2823]][_0x53bb[235]],_0x39abxa=_0x39abx5[_0x53bb[236]]-this[_0x53bb[2823]][_0x53bb[236]],_0x39abx5=_0x39abx4[_0x53bb[2353]];if(null!=this[_0x53bb[253]]||Math[_0x53bb[425]](_0x39abx9)>_0x39abx5||Math[_0x53bb[425]](_0x39abxa)>_0x39abx5){null==this[_0x53bb[1016]]&&(this[_0x53bb[1016]]= new mxCellHighlight(this[_0x53bb[1179]],mxConstants.DROP_TARGET_COLOR,3));null==this[_0x53bb[253]]&&(this[_0x53bb[253]]=this[_0x53bb[2825]](this[_0x53bb[1562]]));var _0x39abx12=_0x39abx4[_0x53bb[1018]](_0x39abx3[_0x53bb[727]]()),_0x39abx5=!0;if(null!=this[_0x53bb[2799]]&&this[_0x53bb[2827]](_0x39abx3)){_0x39abxa=this[_0x53bb[2799]][_0x53bb[582]](this[_0x53bb[1562]], new mxPoint(_0x39abx9,_0x39abxa),_0x39abx12),_0x39abx5= !1,_0x39abx9=_0x39abxa[_0x53bb[235]],_0x39abxa=_0x39abxa[_0x53bb[236]]}else {if(_0x39abx12){var _0x39abx13=_0x39abx4[_0x53bb[249]]()[_0x53bb[513]],_0x39abx14=_0x39abx4[_0x53bb[249]]()[_0x53bb[255]],_0x39abx12=this[_0x53bb[1562]][_0x53bb[235]]-(_0x39abx4[_0x53bb[1021]](this[_0x53bb[1562]][_0x53bb[235]]/_0x39abx14-_0x39abx13[_0x53bb[235]])+_0x39abx13[_0x53bb[235]])*_0x39abx14,_0x39abx13=this[_0x53bb[1562]][_0x53bb[236]]-(_0x39abx4[_0x53bb[1021]](this[_0x53bb[1562]][_0x53bb[236]]/_0x39abx14-_0x39abx13[_0x53bb[236]])+_0x39abx13[_0x53bb[236]])*_0x39abx14,_0x39abxa=this[_0x53bb[1021]]( new mxPoint(_0x39abx9,_0x39abxa)),_0x39abx9=_0x39abxa[_0x53bb[235]]-_0x39abx12,_0x39abxa=_0x39abxa[_0x53bb[236]]-_0x39abx13}};null!=this[_0x53bb[2799]]&&_0x39abx5&&this[_0x53bb[2799]][_0x53bb[801]]();_0x39abx4[_0x53bb[2578]](_0x39abx3[_0x53bb[727]]())&&(Math[_0x53bb[425]](_0x39abx9)>Math[_0x53bb[425]](_0x39abxa)?_0x39abxa=0:_0x39abx9=0);this[_0x53bb[2800]]=_0x39abx9;this[_0x53bb[2801]]=_0x39abxa;this[_0x53bb[2794]]();_0x39abx5=null;_0x39abxa=_0x39abx3[_0x53bb[736]]();_0x39abx4[_0x53bb[1015]]()&&this[_0x53bb[2796]]&&(_0x39abx5=_0x39abx4[_0x53bb[564]](this[_0x53bb[895]],_0x39abx3[_0x53bb[727]](),_0x39abxa));_0x39abx12=_0x39abx5;for(_0x39abx13=_0x39abx4[_0x53bb[502]]();null!=_0x39abx12&&_0x39abx12!=this[_0x53bb[895]][0];){_0x39abx12=_0x39abx13[_0x53bb[1197]](_0x39abx12)};var _0x39abx14=_0x39abx4[_0x53bb[2574]](_0x39abx3[_0x53bb[727]]())&&_0x39abx4[_0x53bb[2617]]()&&this[_0x53bb[2810]](),_0x39abx9=_0x39abx4[_0x53bb[249]]()[_0x53bb[248]](_0x39abx5),_0x39abx15=!1;null!=_0x39abx9&&null==_0x39abx12&&(_0x39abx13[_0x53bb[1197]](this[_0x53bb[246]])!=_0x39abx5||_0x39abx14)?(this[_0x53bb[772]]!=_0x39abx5&&(this[_0x53bb[772]]=_0x39abx5,this[_0x53bb[2828]](mxConstants.DROP_TARGET_COLOR)),_0x39abx15= !0):(this[_0x53bb[772]]=null,this[_0x53bb[2804]]&&(null!=_0x39abxa&&1==this[_0x53bb[895]][_0x53bb[67]]&&_0x39abx4[_0x53bb[502]]()[_0x53bb[1193]](_0x39abxa)&&_0x39abx4[_0x53bb[2565]](_0x39abxa))&&(_0x39abx9=_0x39abx4[_0x53bb[249]]()[_0x53bb[248]](_0x39abxa),null!=_0x39abx9&&(_0x39abx4=null==_0x39abx4[_0x53bb[2500]](null,this[_0x53bb[246]],_0x39abxa)?mxConstants[_0x53bb[2829]]:mxConstants[_0x53bb[2830]],this[_0x53bb[2828]](_0x39abx4),_0x39abx15= !0)));null!=_0x39abx9&&_0x39abx15?this[_0x53bb[1016]][_0x53bb[1016]](_0x39abx9):this[_0x53bb[1016]][_0x53bb[801]]()};_0x39abx3[_0x53bb[722]]();mxEvent[_0x53bb[722]](_0x39abx3[_0x53bb[727]]())}else {if((this[_0x53bb[2812]]()||this[_0x53bb[2810]]())&&this[_0x53bb[2802]]&&!_0x39abx3[_0x53bb[721]]()&&null!=_0x39abx3[_0x53bb[248]]()&&!_0x39abx4[_0x53bb[1009]]){_0x39abx9=_0x39abx4[_0x53bb[2599]](_0x39abx3[_0x53bb[736]]()),null==_0x39abx9&&(_0x39abx4[_0x53bb[994]]()&&_0x39abx4[_0x53bb[1712]](_0x39abx3[_0x53bb[736]]()))&&(_0x39abx9=_0x39abx4[_0x53bb[502]]()[_0x53bb[250]](_0x39abx3[_0x53bb[736]]())?mxConstants[_0x53bb[2831]]:mxConstants[_0x53bb[2832]]),_0x39abx3[_0x53bb[248]]()[_0x53bb[1609]](_0x39abx9),_0x39abx3[_0x53bb[722]]()}}};mxGraphHandler[_0x53bb[202]][_0x53bb[2794]]=function(){null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](this[_0x53bb[2826]][_0x53bb[235]]+this[_0x53bb[2800]]-this[_0x53bb[1179]][_0x53bb[1136]]),Math[_0x53bb[488]](this[_0x53bb[2826]][_0x53bb[236]]+this[_0x53bb[2801]]-this[_0x53bb[1179]][_0x53bb[1137]]),this[_0x53bb[2826]][_0x53bb[117]],this[_0x53bb[2826]][_0x53bb[119]]),this[_0x53bb[253]][_0x53bb[258]]())};mxGraphHandler[_0x53bb[202]][_0x53bb[2828]]=function(_0x39abx2){null!=this[_0x53bb[1016]]&&this[_0x53bb[1016]][_0x53bb[2828]](_0x39abx2)};mxGraphHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()){var _0x39abx4=this[_0x53bb[1179]];if(null!=this[_0x53bb[246]]&&null!=this[_0x53bb[2823]]&&null!=this[_0x53bb[253]]&&null!=this[_0x53bb[2800]]&&null!=this[_0x53bb[2801]]){var _0x39abx5=_0x39abx4[_0x53bb[249]]()[_0x53bb[255]],_0x39abx9=_0x39abx4[_0x53bb[2574]](_0x39abx3[_0x53bb[727]]())&&_0x39abx4[_0x53bb[2617]]()&&this[_0x53bb[2810]](),_0x39abxa=this[_0x53bb[2800]]/_0x39abx5,_0x39abx5=this[_0x53bb[2801]]/_0x39abx5,_0x39abx12=_0x39abx3[_0x53bb[736]]();this[_0x53bb[2804]]&&null==this[_0x53bb[772]]&&null!=_0x39abx12&&_0x39abx4[_0x53bb[502]]()[_0x53bb[1193]](_0x39abx12)&&_0x39abx4[_0x53bb[2565]](_0x39abx12)&&_0x39abx4[_0x53bb[2581]](null,this[_0x53bb[246]],_0x39abx12)?_0x39abx4[_0x53bb[2433]][_0x53bb[807]](this[_0x53bb[246]],_0x39abx12,_0x39abx3[_0x53bb[727]]()):(_0x39abx12=this[_0x53bb[772]],_0x39abx4[_0x53bb[2655]]()&&_0x39abx4[_0x53bb[2686]](_0x39abx12,this[_0x53bb[895]],_0x39abx3[_0x53bb[727]]())?_0x39abx4[_0x53bb[853]](_0x39abx12,this[_0x53bb[895]],null,_0x39abxa,_0x39abx5):this[_0x53bb[834]](this[_0x53bb[895]],_0x39abxa,_0x39abx5,_0x39abx9,this[_0x53bb[772]],_0x39abx3[_0x53bb[727]]()))}else {this[_0x53bb[2814]]()&&(this[_0x53bb[2820]]&&null!=this[_0x53bb[246]])&&this[_0x53bb[2833]](_0x39abx3)}};this[_0x53bb[2821]]&&_0x39abx3[_0x53bb[722]]();this[_0x53bb[862]]()};mxGraphHandler[_0x53bb[202]][_0x53bb[2833]]=function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[2459]](this[_0x53bb[246]],_0x39abx2[_0x53bb[727]]())};mxGraphHandler[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[2834]]();this[_0x53bb[2820]]=this[_0x53bb[2821]]= !1;this[_0x53bb[772]]=this[_0x53bb[246]]=this[_0x53bb[2823]]=this[_0x53bb[2835]]=this[_0x53bb[2801]]=this[_0x53bb[2800]]=null};mxGraphHandler[_0x53bb[202]][_0x53bb[2836]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1193]](_0x39abx2)){_0x39abx2=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);_0x39abx4=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx4),mxEvent[_0x53bb[733]](_0x39abx4));var _0x39abx5=mxUtils[_0x53bb[431]](mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION)||0);if(0!=_0x39abx5){_0x39abx3=Math[_0x53bb[426]](-_0x39abx5);var _0x39abx5=Math[_0x53bb[427]](-_0x39abx5),_0x39abx9= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]());_0x39abx4=mxUtils[_0x53bb[432]](_0x39abx4,_0x39abx3,_0x39abx5,_0x39abx9)};return null!=_0x39abx2&&!mxUtils[_0x53bb[442]](_0x39abx2,_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]])};return !1};mxGraphHandler[_0x53bb[202]][_0x53bb[834]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){_0x39abx5&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[2615]](_0x39abx2));null==_0x39abx9&&(this[_0x53bb[2816]]()&&this[_0x53bb[2836]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](this[_0x53bb[246]]),_0x39abx2,_0x39abxa))&&(_0x39abx9=this[_0x53bb[1179]][_0x53bb[902]]());_0x39abx2=this[_0x53bb[1179]][_0x53bb[834]](_0x39abx2,_0x39abx3-this[_0x53bb[1179]][_0x53bb[1136]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx4-this[_0x53bb[1179]][_0x53bb[1137]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx5,_0x39abx9,_0x39abxa);this[_0x53bb[2814]]()&&this[_0x53bb[2805]]&&this[_0x53bb[1179]][_0x53bb[2564]](_0x39abx2[0]);_0x39abx5&&this[_0x53bb[1179]][_0x53bb[904]](_0x39abx2)};mxGraphHandler[_0x53bb[202]][_0x53bb[2834]]=function(){null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null);null!=this[_0x53bb[2799]]&&(this[_0x53bb[2799]][_0x53bb[515]](),this[_0x53bb[2799]]=null);null!=this[_0x53bb[1016]]&&(this[_0x53bb[1016]][_0x53bb[515]](),this[_0x53bb[1016]]=null)};mxGraphHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[1148]](this);this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2730]]);this[_0x53bb[2834]]()};function mxPanningHandler(_0x39abx2,_0x39abx3){null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[1033]]=_0x39abx3,this[_0x53bb[1179]][_0x53bb[1133]](this),this[_0x53bb[176]]())}mxPanningHandler[_0x53bb[202]]= new mxPopupMenu;mxPanningHandler[_0x53bb[202]][_0x53bb[196]]=mxPanningHandler;mxPanningHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxPanningHandler[_0x53bb[202]][_0x53bb[2837]]=null;mxPanningHandler[_0x53bb[202]][_0x53bb[2838]]=null;mxPanningHandler[_0x53bb[202]][_0x53bb[2839]]= !0;mxPanningHandler[_0x53bb[202]][_0x53bb[2840]]= !1;mxPanningHandler[_0x53bb[202]][_0x53bb[2841]]= !0;mxPanningHandler[_0x53bb[202]][_0x53bb[2842]]= !0;mxPanningHandler[_0x53bb[202]][_0x53bb[2843]]= !1;mxPanningHandler[_0x53bb[202]][_0x53bb[2844]]= !0;mxPanningHandler[_0x53bb[202]][_0x53bb[2845]]= !1;mxPanningHandler[_0x53bb[202]][_0x53bb[2431]]= !0;mxPanningHandler[_0x53bb[202]][_0x53bb[2846]]=function(){return this[_0x53bb[2431]]};mxPanningHandler[_0x53bb[202]][_0x53bb[2847]]=function(_0x39abx2){this[_0x53bb[2431]]=_0x39abx2};mxPanningHandler[_0x53bb[202]][_0x53bb[176]]=function(){mxPopupMenu[_0x53bb[202]][_0x53bb[176]][_0x53bb[183]](this);mxEvent[_0x53bb[169]](this[_0x53bb[485]],mxClient[_0x53bb[754]]?_0x53bb[756]:_0x53bb[752],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[2276]][_0x53bb[801]]()}))};mxPanningHandler[_0x53bb[202]][_0x53bb[2848]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[727]]();return this[_0x53bb[2840]]&&(this[_0x53bb[2843]]||null==_0x39abx2[_0x53bb[248]]())&&mxEvent[_0x53bb[1158]](_0x39abx3)||mxEvent[_0x53bb[775]](_0x39abx3)&&mxEvent[_0x53bb[774]](_0x39abx3)||this[_0x53bb[2839]]&&mxEvent[_0x53bb[737]](_0x39abx3)};mxPanningHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[994]]()){this[_0x53bb[1032]]();this[_0x53bb[2741]]=-this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[360]];this[_0x53bb[2742]]=-this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[190]];var _0x39abx4=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],_0x39abx3[_0x53bb[730]](),_0x39abx3[_0x53bb[732]]());this[_0x53bb[2837]]=_0x39abx4[_0x53bb[235]];this[_0x53bb[2838]]=_0x39abx4[_0x53bb[236]];this[_0x53bb[2849]]=this[_0x53bb[737]](_0x39abx3);this[_0x53bb[2850]]=this[_0x53bb[2846]]()&&this[_0x53bb[2848]](_0x39abx3);this[_0x53bb[2739]]=_0x39abx3[_0x53bb[730]]();this[_0x53bb[2740]]=_0x39abx3[_0x53bb[732]]();this[_0x53bb[2850]]&&this[_0x53bb[2851]](_0x39abx3)}};mxPanningHandler[_0x53bb[202]][_0x53bb[2851]]=function(_0x39abx2){_0x39abx2[_0x53bb[722]]()};mxPanningHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx3[_0x53bb[730]]()-this[_0x53bb[2739]],_0x39abx5=_0x39abx3[_0x53bb[732]]()-this[_0x53bb[2740]];if(this[_0x53bb[1124]]){this[_0x53bb[2844]]&&(this[_0x53bb[2845]]&&(_0x39abx4=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx4),_0x39abx5=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx5)),this[_0x53bb[1179]][_0x53bb[1135]](_0x39abx4+this[_0x53bb[2741]],_0x39abx5+this[_0x53bb[2742]])),this[_0x53bb[746]]( new mxEventObject(mxEvent.PAN,_0x53bb[763],_0x39abx3)),_0x39abx3[_0x53bb[722]]()}else {if(this[_0x53bb[2850]]){var _0x39abx9=this[_0x53bb[1124]];this[_0x53bb[1124]]=Math[_0x53bb[425]](_0x39abx4)>this[_0x53bb[1179]][_0x53bb[2353]]||Math[_0x53bb[425]](_0x39abx5)>this[_0x53bb[1179]][_0x53bb[2353]];!_0x39abx9&&this[_0x53bb[1124]]&&this[_0x53bb[746]]( new mxEventObject(mxEvent.PAN_START,_0x53bb[763],_0x39abx3))}}};mxPanningHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=Math[_0x53bb[425]](_0x39abx3[_0x53bb[730]]()-this[_0x53bb[2739]]),_0x39abx5=Math[_0x53bb[425]](_0x39abx3[_0x53bb[732]]()-this[_0x53bb[2740]]);if(this[_0x53bb[1124]]){if(!this[_0x53bb[1179]][_0x53bb[2365]]||!mxUtils[_0x53bb[1134]](this[_0x53bb[1179]][_0x53bb[526]])){_0x39abx4=_0x39abx3[_0x53bb[730]]()-this[_0x53bb[2739]];_0x39abx5=_0x39abx3[_0x53bb[732]]()-this[_0x53bb[2740]];this[_0x53bb[2845]]&&(_0x39abx4=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx4),_0x39abx5=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx5));var _0x39abx9=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abxa=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]];this[_0x53bb[1179]][_0x53bb[1135]](0,0);this[_0x53bb[1135]](_0x39abxa[_0x53bb[235]]+_0x39abx4/_0x39abx9,_0x39abxa[_0x53bb[236]]+_0x39abx5/_0x39abx9)};this[_0x53bb[1124]]= !1;this[_0x53bb[746]]( new mxEventObject(mxEvent.PAN_END,_0x53bb[763],_0x39abx3));_0x39abx3[_0x53bb[722]]()}else {this[_0x53bb[2849]]&&(_0x39abx4<this[_0x53bb[1179]][_0x53bb[2353]]&&_0x39abx5<this[_0x53bb[1179]][_0x53bb[2353]])&&(_0x39abx4=this[_0x53bb[2852]](_0x39abx3),this[_0x53bb[1179]][_0x53bb[994]]()&&this[_0x53bb[2841]]&&null!=_0x39abx4&&!this[_0x53bb[1179]][_0x53bb[2692]](_0x39abx4)?this[_0x53bb[1179]][_0x53bb[2450]](_0x39abx4):this[_0x53bb[2842]]&&null==_0x39abx4&&this[_0x53bb[1179]][_0x53bb[2440]](),this[_0x53bb[1179]][_0x53bb[2276]][_0x53bb[801]](),_0x39abx5=mxUtils[_0x53bb[444]](),_0x39abx5= new mxPoint(_0x39abx3[_0x53bb[730]]()+_0x39abx5[_0x53bb[235]],_0x39abx3[_0x53bb[732]]()+_0x39abx5[_0x53bb[236]]),this[_0x53bb[152]](_0x39abx5[_0x53bb[235]]+1,_0x39abx5[_0x53bb[236]]+1,_0x39abx4,_0x39abx3[_0x53bb[727]]()),_0x39abx3[_0x53bb[722]]())};this[_0x53bb[2849]]=this[_0x53bb[2850]]= !1};mxPanningHandler[_0x53bb[202]][_0x53bb[2852]]=function(_0x39abx2){return _0x39abx2[_0x53bb[736]]()};mxPanningHandler[_0x53bb[202]][_0x53bb[1135]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1147]](_0x39abx2,_0x39abx3)};mxPanningHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[1148]](this);mxPopupMenu[_0x53bb[202]][_0x53bb[515]][_0x53bb[183]](this)};function mxCellMarker(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){mxEventSource[_0x53bb[239]](this);null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[2853]]=null!=_0x39abx3?_0x39abx3:mxConstants[_0x53bb[2854]],this[_0x53bb[2855]]=null!=_0x39abx3?_0x39abx4:mxConstants[_0x53bb[2856]],this[_0x53bb[2857]]=null!=_0x39abx5?_0x39abx5:mxConstants[_0x53bb[2858]],this[_0x53bb[1016]]= new mxCellHighlight(_0x39abx2))}mxUtils[_0x53bb[1284]](mxCellMarker,mxEventSource);mxCellMarker[_0x53bb[202]][_0x53bb[1179]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[984]]= !0;mxCellMarker[_0x53bb[202]][_0x53bb[2857]]=mxConstants[_0x53bb[2858]];mxCellMarker[_0x53bb[202]][_0x53bb[2859]]= !1;mxCellMarker[_0x53bb[202]][_0x53bb[2853]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[2855]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[2860]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[2861]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[2862]]=null;mxCellMarker[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxCellMarker[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxCellMarker[_0x53bb[202]][_0x53bb[2863]]=function(_0x39abx2){this[_0x53bb[2857]]=_0x39abx2};mxCellMarker[_0x53bb[202]][_0x53bb[2864]]=function(){return this[_0x53bb[2857]]};mxCellMarker[_0x53bb[202]][_0x53bb[2865]]=function(_0x39abx2){this[_0x53bb[2859]]=_0x39abx2};mxCellMarker[_0x53bb[202]][_0x53bb[2866]]=function(){return this[_0x53bb[2859]]};mxCellMarker[_0x53bb[202]][_0x53bb[2867]]=function(){return null!=this[_0x53bb[2861]]};mxCellMarker[_0x53bb[202]][_0x53bb[2868]]=function(){return this[_0x53bb[2861]]};mxCellMarker[_0x53bb[202]][_0x53bb[2869]]=function(){return this[_0x53bb[2862]]};mxCellMarker[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[2861]]=null;null!=this[_0x53bb[2862]]&&(this[_0x53bb[2862]]=null,this[_0x53bb[2870]]())};mxCellMarker[_0x53bb[202]][_0x53bb[2871]]=function(_0x39abx2){var _0x39abx3=null;if(this[_0x53bb[994]]()){var _0x39abx3=this[_0x53bb[248]](_0x39abx2),_0x39abx4=null!=_0x39abx3?this[_0x53bb[2872]](_0x39abx3):!1;_0x39abx2=this[_0x53bb[2873]](_0x39abx2[_0x53bb[727]](),_0x39abx3,_0x39abx4);this[_0x53bb[2861]]=_0x39abx4?_0x39abx3:null;if(_0x39abx3!=this[_0x53bb[2862]]||_0x39abx2!=this[_0x53bb[2860]]){this[_0x53bb[2860]]=_0x39abx2,null!=_0x39abx3&&null!=this[_0x53bb[2860]]?(this[_0x53bb[2862]]=_0x39abx3,this[_0x53bb[811]]()):null!=this[_0x53bb[2862]]&&(this[_0x53bb[2862]]=null,this[_0x53bb[2870]]())}};return _0x39abx3};mxCellMarker[_0x53bb[202]][_0x53bb[2874]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);null!=_0x39abx4&&(this[_0x53bb[2860]]=null!=_0x39abx3?_0x39abx3:this[_0x53bb[2853]],this[_0x53bb[2862]]=_0x39abx4,this[_0x53bb[811]]())};mxCellMarker[_0x53bb[202]][_0x53bb[811]]=function(){this[_0x53bb[1016]][_0x53bb[2828]](this[_0x53bb[2860]]);this[_0x53bb[1016]][_0x53bb[1016]](this[_0x53bb[2862]]);this[_0x53bb[746]]( new mxEventObject(mxEvent.MARK,_0x53bb[724],this[_0x53bb[2862]]))};mxCellMarker[_0x53bb[202]][_0x53bb[2870]]=function(){this[_0x53bb[811]]()};mxCellMarker[_0x53bb[202]][_0x53bb[2872]]=function(_0x39abx2){return !0};mxCellMarker[_0x53bb[202]][_0x53bb[2873]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx4?this[_0x53bb[2853]]:this[_0x53bb[2855]]};mxCellMarker[_0x53bb[202]][_0x53bb[248]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[249]]();cell=this[_0x53bb[736]](_0x39abx2);_0x39abx3=this[_0x53bb[2875]](_0x39abx3[_0x53bb[248]](cell));return null!=_0x39abx3&&this[_0x53bb[1825]](_0x39abx3,_0x39abx2)?_0x39abx3:null};mxCellMarker[_0x53bb[202]][_0x53bb[736]]=function(_0x39abx2){return _0x39abx2[_0x53bb[736]]()};mxCellMarker[_0x53bb[202]][_0x53bb[2875]]=function(_0x39abx2){return _0x39abx2};mxCellMarker[_0x53bb[202]][_0x53bb[1825]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[2859]]?mxUtils[_0x53bb[2876]](_0x39abx2,_0x39abx3[_0x53bb[734]](),_0x39abx3[_0x53bb[735]](),this[_0x53bb[2857]],mxConstants.MIN_HOTSPOT_SIZE,mxConstants.MAX_HOTSPOT_SIZE):!0};mxCellMarker[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[2877]]);this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[2877]]);this[_0x53bb[1016]][_0x53bb[515]]()};function mxSelectionCellsHandler(_0x39abx2){mxEventSource[_0x53bb[239]](this);this[_0x53bb[1179]]=_0x39abx2;this[_0x53bb[2878]]= new mxDictionary;this[_0x53bb[1179]][_0x53bb[1133]](this);this[_0x53bb[2731]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){this[_0x53bb[994]]()&&this[_0x53bb[802]]()});this[_0x53bb[1179]][_0x53bb[2435]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.TRANSLATE,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.DOWN,this[_0x53bb[2731]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.UP,this[_0x53bb[2731]])}mxUtils[_0x53bb[1284]](mxSelectionCellsHandler,mxEventSource);mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[2731]]=null;mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[2879]]=100;mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[2878]]=null;mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[2596]]=function(_0x39abx2){return this[_0x53bb[2878]][_0x53bb[203]](_0x39abx2)};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[2878]][_0x53bb[209]](function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[862]][_0x53bb[183]](_0x39abx3)})};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[802]]=function(){var _0x39abx2=this[_0x53bb[2878]];this[_0x53bb[2878]]= new mxDictionary;for(var _0x39abx3=this[_0x53bb[1179]][_0x53bb[897]](),_0x39abx4=0;_0x39abx4<_0x39abx3[_0x53bb[67]];_0x39abx4++){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3[_0x39abx4]);if(null!=_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[205]](_0x39abx3[_0x39abx4]);null!=_0x39abx9&&(_0x39abx9[_0x53bb[724]]!=_0x39abx5?(_0x39abx9[_0x53bb[515]](),_0x39abx9=null):_0x39abx9[_0x53bb[258]]());null==_0x39abx9&&(_0x39abx9=this[_0x53bb[1179]][_0x53bb[2709]](_0x39abx5),this[_0x53bb[746]]( new mxEventObject(mxEvent.ADD,_0x53bb[724],_0x39abx5)));null!=_0x39abx9&&this[_0x53bb[2878]][_0x53bb[204]](_0x39abx3[_0x39abx4],_0x39abx9)}};_0x39abx2[_0x53bb[209]](mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){this[_0x53bb[746]]( new mxEventObject(mxEvent.REMOVE,_0x53bb[724],_0x39abx3[_0x53bb[724]]));_0x39abx3[_0x53bb[515]]()}))};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1179]][_0x53bb[994]]()&&this[_0x53bb[994]]()){var _0x39abx4=[_0x39abx2,_0x39abx3];this[_0x53bb[2878]][_0x53bb[209]](function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[787]][_0x53bb[183]](_0x39abx3,_0x39abx4)})}};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1179]][_0x53bb[994]]()&&this[_0x53bb[994]]()){var _0x39abx4=[_0x39abx2,_0x39abx3];this[_0x53bb[2878]][_0x53bb[209]](function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[788]][_0x53bb[183]](_0x39abx3,_0x39abx4)})}};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1179]][_0x53bb[994]]()&&this[_0x53bb[994]]()){var _0x39abx4=[_0x39abx2,_0x39abx3];this[_0x53bb[2878]][_0x53bb[209]](function(_0x39abx2,_0x39abx3){_0x39abx3[_0x53bb[789]][_0x53bb[183]](_0x39abx3,_0x39abx4)})}};mxSelectionCellsHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[1148]](this);null!=this[_0x53bb[2731]]&&(this[_0x53bb[1179]][_0x53bb[2435]]()[_0x53bb[745]](this[_0x53bb[2731]]),this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[2731]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[2731]]),this[_0x53bb[2731]]=null)};function mxConnectionHandler(_0x39abx2,_0x39abx3){mxEventSource[_0x53bb[239]](this);null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[1033]]=_0x39abx3,this[_0x53bb[176]]())}mxUtils[_0x53bb[1284]](mxConnectionHandler,mxEventSource);mxConnectionHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[1033]]= !0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2880]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2881]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2882]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2883]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxConnectionHandler[_0x53bb[202]][_0x53bb[804]]= !0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2884]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2885]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2886]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[267]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2887]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2888]]= !0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2889]]=500;mxConnectionHandler[_0x53bb[202]][_0x53bb[2890]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2891]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2892]]=4;mxConnectionHandler[_0x53bb[202]][_0x53bb[2893]]=0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2894]]=0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2895]]= !1;mxConnectionHandler[_0x53bb[202]][_0x53bb[2823]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2896]]= new mxPoint(0,mxConstants.TOOLTIP_VERTICAL_OFFSET);mxConnectionHandler[_0x53bb[202]][_0x53bb[2897]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[1176]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2898]]=null;mxConnectionHandler[_0x53bb[202]][_0x53bb[2899]]=0;mxConnectionHandler[_0x53bb[202]][_0x53bb[2900]]=mxClient[_0x53bb[47]];mxConnectionHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxConnectionHandler[_0x53bb[202]][_0x53bb[2901]]=function(){return this[_0x53bb[2884]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2902]]=function(_0x39abx2){this[_0x53bb[2884]]=_0x39abx2};mxConnectionHandler[_0x53bb[202]][_0x53bb[2156]]=function(){var _0x39abx2= new mxPolyline([],mxConstants.INVALID_COLOR);_0x39abx2[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]];_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]());_0x39abx2[_0x53bb[1564]]=0;_0x39abx2[_0x53bb[1229]]= !1;_0x39abx2[_0x53bb[1522]]= !0;if(this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[508]]){_0x39abx2[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130])}else {var _0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx2=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx2),mxEvent[_0x53bb[733]](_0x39abx2));return this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](this[_0x53bb[1179]][_0x53bb[999]](_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]))});mxEvent[_0x53bb[2733]](_0x39abx2[_0x53bb[252]],this[_0x53bb[1179]],_0x39abx3)};return _0x39abx2};mxConnectionHandler[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[1179]][_0x53bb[1133]](this);this[_0x53bb[2885]]=this[_0x53bb[1689]]();this[_0x53bb[2886]]= new mxConstraintHandler(this[_0x53bb[1179]]);this[_0x53bb[1176]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){null!=this[_0x53bb[2903]]&&(this[_0x53bb[2903]]=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](this[_0x53bb[2903]][_0x53bb[246]]));null!=this[_0x53bb[2903]]?this[_0x53bb[2905]](this[_0x53bb[2904]],this[_0x53bb[2903]]):(this[_0x53bb[2906]](this[_0x53bb[2904]]),this[_0x53bb[257]]=null);this[_0x53bb[2886]][_0x53bb[862]]()});this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[1176]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE,this[_0x53bb[1176]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.TRANSLATE,this[_0x53bb[1176]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x53bb[1176]]);this[_0x53bb[2898]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2906]](this[_0x53bb[2904]])});this[_0x53bb[1179]][_0x53bb[169]](mxEvent.START_EDITING,this[_0x53bb[2898]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.DOWN,this[_0x53bb[2898]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.UP,this[_0x53bb[2898]])};mxConnectionHandler[_0x53bb[202]][_0x53bb[2907]]=function(_0x39abx2){return !0};mxConnectionHandler[_0x53bb[202]][_0x53bb[1689]]=function(){var _0x39abx2= new mxCellMarker(this[_0x53bb[1179]]);_0x39abx2[_0x53bb[2859]]= !0;_0x39abx2[_0x53bb[736]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx4){_0x39abx4=mxCellMarker[_0x53bb[202]][_0x53bb[736]][_0x53bb[183]](_0x39abx2,arguments);this[_0x53bb[267]]=null;if(!this[_0x53bb[2907]](_0x39abx4)){return null};null!=_0x39abx4?this[_0x53bb[2908]]()?null!=this[_0x53bb[257]]&&(this[_0x53bb[267]]=this[_0x53bb[2909]](this[_0x53bb[257]][_0x53bb[246]],_0x39abx4),null!=this[_0x53bb[267]]&&0==this[_0x53bb[267]][_0x53bb[67]]&&(_0x39abx4=null,this[_0x53bb[2901]]()&&(this[_0x53bb[267]]=null))):this[_0x53bb[2671]](_0x39abx4)||(_0x39abx4=null):this[_0x53bb[2908]]()&&(!this[_0x53bb[2901]]()&&!this[_0x53bb[1179]][_0x53bb[2406]])&&(this[_0x53bb[267]]=_0x53bb[110]);return _0x39abx4});_0x39abx2[_0x53bb[2872]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3){return this[_0x53bb[2908]]()?null==this[_0x53bb[267]]:mxCellMarker[_0x53bb[202]][_0x53bb[2872]][_0x53bb[183]](_0x39abx2,arguments)});_0x39abx2[_0x53bb[2873]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx4,_0x39abx5){return null==this[_0x53bb[2882]]||this[_0x53bb[2908]]()?mxCellMarker[_0x53bb[202]][_0x53bb[2873]][_0x53bb[183]](_0x39abx2,arguments):null});_0x39abx2[_0x53bb[1825]]=mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx4){return null!=this[_0x53bb[2882]]||this[_0x53bb[2908]]()?!0:mxCellMarker[_0x53bb[202]][_0x53bb[1825]][_0x53bb[183]](_0x39abx2,arguments)});return _0x39abx2};mxConnectionHandler[_0x53bb[202]][_0x53bb[861]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[257]]=_0x39abx2;this[_0x53bb[2823]]= new mxPoint(_0x39abx3,_0x39abx4);this[_0x53bb[2897]]=null!=_0x39abx5?_0x39abx5:this[_0x53bb[2910]](null);this[_0x53bb[2885]][_0x53bb[2860]]=this[_0x53bb[2885]][_0x53bb[2853]];this[_0x53bb[2885]][_0x53bb[2862]]=_0x39abx2;this[_0x53bb[2885]][_0x53bb[811]]();this[_0x53bb[746]]( new mxEventObject(mxEvent.START,_0x53bb[724],this[_0x53bb[257]]))};mxConnectionHandler[_0x53bb[202]][_0x53bb[2908]]=function(){return null!=this[_0x53bb[2823]]&&null!=this[_0x53bb[253]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2671]]=function(_0x39abx2){return this[_0x53bb[1179]][_0x53bb[2671]](_0x39abx2)};mxConnectionHandler[_0x53bb[202]][_0x53bb[2672]]=function(_0x39abx2){return !0};mxConnectionHandler[_0x53bb[202]][_0x53bb[2909]]=function(_0x39abx2,_0x39abx3){return !this[_0x53bb[2672]](_0x39abx3)?_0x53bb[110]:this[_0x53bb[1179]][_0x53bb[2500]](null,_0x39abx2,_0x39abx3)};mxConnectionHandler[_0x53bb[202]][_0x53bb[2911]]=function(_0x39abx2){return this[_0x53bb[2882]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2912]]=function(_0x39abx2){return null!=_0x39abx2[_0x53bb[963]]&&_0x39abx2[_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]?!0:this[_0x53bb[2880]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2913]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[2911]](_0x39abx2);if(null!=_0x39abx3&&null!=_0x39abx2){this[_0x53bb[2903]]=_0x39abx2;var _0x39abx4=[],_0x39abx5= new mxRectangle(0,0,_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]]),_0x39abx9= new mxImageShape(_0x39abx5,_0x39abx3[_0x53bb[390]],null,null,0);_0x39abx9[_0x53bb[1674]]= !1;this[_0x53bb[2912]](_0x39abx2)?(_0x39abx9[_0x53bb[507]]=mxConstants[_0x53bb[1656]],_0x39abx9[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[526]])):(_0x39abx9[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[508]]:mxConstants[_0x53bb[1523]],_0x39abx9[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()),this[_0x53bb[2881]]&&null!=_0x39abx9[_0x53bb[252]][_0x53bb[328]]&&_0x39abx9[_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](_0x39abx9[_0x53bb[252]],_0x39abx9[_0x53bb[252]][_0x53bb[265]][_0x53bb[285]]));_0x39abx9[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[2914]];var _0x39abxa=mxUtils[_0x53bb[885]](this,function(){return null!=this[_0x53bb[2915]]?this[_0x53bb[2915]]:_0x39abx2}),_0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx2){mxEvent[_0x53bb[721]](_0x39abx2)||(this[_0x53bb[2916]]=_0x39abx9,this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx2,_0x39abxa())))});mxEvent[_0x53bb[2733]](_0x39abx9[_0x53bb[252]],this[_0x53bb[1179]],_0x39abxa,_0x39abx3);_0x39abx4[_0x53bb[207]](_0x39abx9);this[_0x53bb[2905]](_0x39abx4,this[_0x53bb[2903]]);return _0x39abx4};return null};mxConnectionHandler[_0x53bb[202]][_0x53bb[2905]]=function(_0x39abx2,_0x39abx3){if(null!=_0x39abx2&&null!=_0x39abx2[0]&&null!=_0x39abx3){var _0x39abx4=this[_0x53bb[2917]](_0x39abx2[0],_0x39abx3);_0x39abx2[0][_0x53bb[1562]][_0x53bb[235]]=_0x39abx4[_0x53bb[235]];_0x39abx2[0][_0x53bb[1562]][_0x53bb[236]]=_0x39abx4[_0x53bb[236]];_0x39abx2[0][_0x53bb[258]]()}};mxConnectionHandler[_0x53bb[202]][_0x53bb[2917]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx5=_0x39abx3[_0x53bb[241]](),_0x39abx9=_0x39abx3[_0x53bb[242]]();if(this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx3[_0x53bb[246]])){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[1731]](_0x39abx3[_0x53bb[246]]),_0x39abx5=0!=_0x39abxa[_0x53bb[117]]?_0x39abx3[_0x53bb[235]]+_0x39abxa[_0x53bb[117]]*_0x39abx4/2:_0x39abx5,_0x39abx9=0!=_0x39abxa[_0x53bb[119]]?_0x39abx3[_0x53bb[236]]+_0x39abxa[_0x53bb[119]]*_0x39abx4/2:_0x39abx9,_0x39abxa=mxUtils[_0x53bb[431]](mxUtils[_0x53bb[433]](_0x39abx3[_0x53bb[124]],mxConstants.STYLE_ROTATION)||0);if(0!=_0x39abxa){var _0x39abx4=Math[_0x53bb[426]](_0x39abxa),_0x39abxa=Math[_0x53bb[427]](_0x39abxa),_0x39abx12= new mxPoint(_0x39abx3[_0x53bb[241]](),_0x39abx3[_0x53bb[242]]()),_0x39abx9=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx5,_0x39abx9),_0x39abx4,_0x39abxa,_0x39abx12),_0x39abx5=_0x39abx9[_0x53bb[235]],_0x39abx9=_0x39abx9[_0x53bb[236]]}};return new mxPoint(_0x39abx5-_0x39abx2[_0x53bb[1562]][_0x53bb[117]]/2,_0x39abx9-_0x39abx2[_0x53bb[1562]][_0x53bb[119]]/2)};mxConnectionHandler[_0x53bb[202]][_0x53bb[2906]]=function(_0x39abx2){if(null!=_0x39abx2){this[_0x53bb[2903]]=null;for(var _0x39abx3=0;_0x39abx3<_0x39abx2[_0x53bb[67]];_0x39abx3++){_0x39abx2[_0x39abx3][_0x53bb[515]]()}}};mxConnectionHandler[_0x53bb[202]][_0x53bb[2918]]=function(_0x39abx2){return !this[_0x53bb[1179]][_0x53bb[2579]](_0x39abx2[_0x53bb[727]]())&&(null!=this[_0x53bb[2886]][_0x53bb[2919]]&&null!=this[_0x53bb[2886]][_0x53bb[2920]]||null!=this[_0x53bb[257]]&&null==this[_0x53bb[267]]&&(null==this[_0x53bb[2904]]||null!=this[_0x53bb[2904]]&&null!=this[_0x53bb[2916]]))};mxConnectionHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2899]]++;if(this[_0x53bb[994]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&!_0x39abx3[_0x53bb[721]]()&&!this[_0x53bb[2908]]()&&this[_0x53bb[2918]](_0x39abx3)){null!=this[_0x53bb[2886]][_0x53bb[2920]]&&null!=this[_0x53bb[2886]][_0x53bb[2919]]&&null!=this[_0x53bb[2886]][_0x53bb[987]]?(this[_0x53bb[2921]]=this[_0x53bb[2886]][_0x53bb[2920]],this[_0x53bb[257]]=this[_0x53bb[2886]][_0x53bb[2919]],this[_0x53bb[2823]]=this[_0x53bb[2886]][_0x53bb[987]][_0x53bb[238]]()):this[_0x53bb[2823]]= new mxPoint(_0x39abx3[_0x53bb[734]](),_0x39abx3[_0x53bb[735]]());this[_0x53bb[2897]]=this[_0x53bb[2910]](_0x39abx3);this[_0x53bb[2899]]=1;this[_0x53bb[2887]]&&null==this[_0x53bb[253]]&&(this[_0x53bb[2922]]=null,this[_0x53bb[253]]=this[_0x53bb[2156]]());if(null==this[_0x53bb[257]]&&null!=this[_0x53bb[2897]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[2689]](_0x39abx3[_0x53bb[727]]());this[_0x53bb[2897]][_0x53bb[246]][_0x53bb[256]][_0x53bb[2007]](_0x39abx4,!0)};this[_0x53bb[746]]( new mxEventObject(mxEvent.START,_0x53bb[724],this[_0x53bb[257]]));_0x39abx3[_0x53bb[722]]()}else {if(mxClient[_0x53bb[754]]&&this[_0x53bb[2888]]&&!this[_0x53bb[2890]]&&this[_0x53bb[994]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&!this[_0x53bb[2908]]()){this[_0x53bb[2890]]= !0;this[_0x53bb[2893]]=_0x39abx3[_0x53bb[730]]();this[_0x53bb[2894]]=_0x39abx3[_0x53bb[732]]();var _0x39abx5=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](this[_0x53bb[2885]][_0x53bb[736]](_0x39abx3));this[_0x53bb[2923]]&&window[_0x53bb[2924]](this[_0x53bb[2923]]);this[_0x53bb[2923]]=window[_0x53bb[261]](mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[2891]]&&this[_0x53bb[2925]](_0x39abx3,_0x39abx5);this[_0x53bb[2891]]=this[_0x53bb[2890]]= !1}),this[_0x53bb[2889]]);this[_0x53bb[2891]]= !0}};this[_0x53bb[2926]]=this[_0x53bb[2916]];this[_0x53bb[2916]]=null};mxConnectionHandler[_0x53bb[202]][_0x53bb[2925]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx3&&(this[_0x53bb[2885]][_0x53bb[2860]]=this[_0x53bb[2885]][_0x53bb[2853]],this[_0x53bb[2885]][_0x53bb[2862]]=_0x39abx3,this[_0x53bb[2885]][_0x53bb[811]](),this[_0x53bb[2823]]= new mxPoint(_0x39abx2[_0x53bb[734]](),_0x39abx2[_0x53bb[735]]()),this[_0x53bb[2897]]=this[_0x53bb[2910]](_0x39abx2),this[_0x53bb[257]]=_0x39abx3,this[_0x53bb[746]]( new mxEventObject(mxEvent.START,_0x53bb[724],this[_0x53bb[257]])))};mxConnectionHandler[_0x53bb[202]][_0x53bb[2927]]=function(_0x39abx2){return !this[_0x53bb[1179]][_0x53bb[1712]](_0x39abx2[_0x53bb[246]])};mxConnectionHandler[_0x53bb[202]][_0x53bb[2910]]=function(_0x39abx2){return null};mxConnectionHandler[_0x53bb[202]][_0x53bb[2928]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[2885]][_0x53bb[2871]](_0x39abx2);this[_0x53bb[2886]][_0x53bb[2729]](_0x39abx2,null==this[_0x53bb[2823]]);this[_0x53bb[2915]]=_0x39abx3};mxConnectionHandler[_0x53bb[202]][_0x53bb[2929]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[518]](),_0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[512]]();_0x39abx2[_0x53bb[235]]=_0x39abx2[_0x53bb[235]]/_0x39abx3-_0x39abx4[_0x53bb[235]];_0x39abx2[_0x53bb[236]]=_0x39abx2[_0x53bb[236]]/_0x39abx3-_0x39abx4[_0x53bb[236]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2891]]&&(this[_0x53bb[2891]]=Math[_0x53bb[425]](this[_0x53bb[2893]]-_0x39abx3[_0x53bb[730]]())<this[_0x53bb[2892]]&&Math[_0x53bb[425]](this[_0x53bb[2894]]-_0x39abx3[_0x53bb[732]]())<this[_0x53bb[2892]]);if(!_0x39abx3[_0x53bb[721]]()&&(this[_0x53bb[2895]]||null!=this[_0x53bb[2823]]||!this[_0x53bb[1179]][_0x53bb[1009]])){!this[_0x53bb[994]]()&&null!=this[_0x53bb[2915]]&&(this[_0x53bb[2906]](this[_0x53bb[2904]]),this[_0x53bb[2915]]=null);(null!=this[_0x53bb[2823]]||this[_0x53bb[994]]()&&this[_0x53bb[1179]][_0x53bb[994]]())&&this[_0x53bb[2928]](_0x39abx3);if(null!=this[_0x53bb[2823]]){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx4= new mxPoint(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx3[_0x53bb[734]]()/_0x39abx4)*_0x39abx4,this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx3[_0x53bb[735]]()/_0x39abx4)*_0x39abx4),_0x39abx5=null,_0x39abx9=_0x39abx4;null!=this[_0x53bb[2886]][_0x53bb[2920]]&&(null!=this[_0x53bb[2886]][_0x53bb[2919]]&&null!=this[_0x53bb[2886]][_0x53bb[987]])&&(_0x39abx5=this[_0x53bb[2886]][_0x53bb[2920]],_0x39abx9=this[_0x53bb[2886]][_0x53bb[987]][_0x53bb[238]]());var _0x39abxa=this[_0x53bb[2823]];if(null!=this[_0x53bb[2926]]){var _0x39abx12=this[_0x53bb[2926]][_0x53bb[1562]][_0x53bb[117]],_0x39abx13=this[_0x53bb[2926]][_0x53bb[1562]][_0x53bb[119]];null!=this[_0x53bb[2915]]&&this[_0x53bb[2883]]?(_0x39abx12=this[_0x53bb[2917]](this[_0x53bb[2926]],this[_0x53bb[2915]]),this[_0x53bb[2926]][_0x53bb[1562]][_0x53bb[235]]=_0x39abx12[_0x53bb[235]],this[_0x53bb[2926]][_0x53bb[1562]][_0x53bb[236]]=_0x39abx12[_0x53bb[236]]):(_0x39abx12= new mxRectangle(_0x39abx3[_0x53bb[734]]()+this[_0x53bb[2896]][_0x53bb[235]],_0x39abx3[_0x53bb[735]]()+this[_0x53bb[2896]][_0x53bb[236]],_0x39abx12,_0x39abx13),this[_0x53bb[2926]][_0x53bb[1562]]=_0x39abx12);this[_0x53bb[2926]][_0x53bb[258]]()};if(null!=this[_0x53bb[2897]]){this[_0x53bb[2897]][_0x53bb[439]]=[null,null!=this[_0x53bb[2915]]?null:_0x39abx9];this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2289]](this[_0x53bb[2897]],this[_0x53bb[257]],!0,this[_0x53bb[2921]]);null!=this[_0x53bb[2915]]&&(null==_0x39abx5&&(_0x39abx5=this[_0x53bb[1179]][_0x53bb[2288]](this[_0x53bb[2897]],this[_0x53bb[257]],!1)),this[_0x53bb[2897]][_0x53bb[2088]](null,!1),this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2289]](this[_0x53bb[2897]],this[_0x53bb[2915]],!1,_0x39abx5));_0x39abxa=null;if(null!=this[_0x53bb[2922]]){_0x39abxa=[];for(_0x39abx9=0;_0x39abx9<this[_0x53bb[2922]][_0x53bb[67]];_0x39abx9++){_0x39abx5=this[_0x53bb[2922]][_0x39abx9][_0x53bb[238]](),this[_0x53bb[2929]](_0x39abx5),_0x39abxa[_0x39abx9]=_0x39abx5}};this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2282]](this[_0x53bb[2897]],_0x39abxa,this[_0x53bb[257]],this[_0x53bb[2915]]);this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2283]](this[_0x53bb[2897]],this[_0x53bb[257]],this[_0x53bb[2915]]);_0x39abx9=this[_0x53bb[2897]][_0x53bb[439]][this[_0x53bb[2897]][_0x53bb[439]][_0x53bb[67]]-1];_0x39abxa=this[_0x53bb[2897]][_0x53bb[439]][0]}else {null!=this[_0x53bb[2915]]&&null==this[_0x53bb[2886]][_0x53bb[2920]]&&(_0x39abx12=this[_0x53bb[2930]](this[_0x53bb[2915]],_0x39abx3),null!=_0x39abx12&&(_0x39abx9=_0x39abx12)),null==this[_0x53bb[2921]]&&null!=this[_0x53bb[257]]&&(_0x39abx12=this[_0x53bb[2931]](this[_0x53bb[257]],null!=this[_0x53bb[2922]]&&0<this[_0x53bb[2922]][_0x53bb[67]]?this[_0x53bb[2922]][0]:_0x39abx9,_0x39abx3),null!=_0x39abx12&&(_0x39abxa=_0x39abx12))};if(null==this[_0x53bb[2915]]&&this[_0x53bb[2900]]){_0x39abx12=_0x39abxa;null!=this[_0x53bb[2897]]&&2<this[_0x53bb[2897]][_0x53bb[439]][_0x53bb[67]]&&(_0x39abx5=this[_0x53bb[2897]][_0x53bb[439]][this[_0x53bb[2897]][_0x53bb[439]][_0x53bb[67]]-2],null!=_0x39abx5&&(_0x39abx12=_0x39abx5));_0x39abx5=_0x39abx9[_0x53bb[235]]-_0x39abx12[_0x53bb[235]];_0x39abx12=_0x39abx9[_0x53bb[236]]-_0x39abx12[_0x53bb[236]];_0x39abx13=Math[_0x53bb[428]](_0x39abx5*_0x39abx5+_0x39abx12*_0x39abx12);if(0==_0x39abx13){return};_0x39abx9[_0x53bb[235]]-=4*_0x39abx5/_0x39abx13;_0x39abx9[_0x53bb[236]]-=4*_0x39abx12/_0x39abx13};if(null==this[_0x53bb[253]]&&(_0x39abx5=Math[_0x53bb[425]](_0x39abx4[_0x53bb[235]]-this[_0x53bb[2823]][_0x53bb[235]]),_0x39abx12=Math[_0x53bb[425]](_0x39abx4[_0x53bb[236]]-this[_0x53bb[2823]][_0x53bb[236]]),_0x39abx5>this[_0x53bb[1179]][_0x53bb[2353]]||_0x39abx12>this[_0x53bb[1179]][_0x53bb[2353]])){this[_0x53bb[253]]=this[_0x53bb[2156]](),this[_0x53bb[2928]](_0x39abx3)};null!=this[_0x53bb[253]]&&(null!=this[_0x53bb[2897]]?this[_0x53bb[253]][_0x53bb[1525]]=this[_0x53bb[2897]][_0x53bb[439]]:(_0x39abx4=[_0x39abxa],null!=this[_0x53bb[2922]]&&(_0x39abx4=_0x39abx4[_0x53bb[1919]](this[_0x53bb[2922]])),_0x39abx4[_0x53bb[207]](_0x39abx9),this[_0x53bb[253]][_0x53bb[1525]]=_0x39abx4),this[_0x53bb[2932]]());mxEvent[_0x53bb[722]](_0x39abx3[_0x53bb[727]]());_0x39abx3[_0x53bb[722]]()}else {!this[_0x53bb[994]]()||!this[_0x53bb[1179]][_0x53bb[994]]()?this[_0x53bb[2886]][_0x53bb[862]]():this[_0x53bb[257]]!=this[_0x53bb[2915]]&&null==this[_0x53bb[2897]]?(this[_0x53bb[2906]](this[_0x53bb[2904]]),this[_0x53bb[2904]]=null,null!=this[_0x53bb[2915]]&&null==this[_0x53bb[267]]&&(this[_0x53bb[2904]]=this[_0x53bb[2913]](this[_0x53bb[2915]]),null==this[_0x53bb[2904]]&&(this[_0x53bb[2915]][_0x53bb[1609]](mxConstants.CURSOR_CONNECT),_0x39abx3[_0x53bb[722]]())),this[_0x53bb[257]]=this[_0x53bb[2915]]):this[_0x53bb[257]]==this[_0x53bb[2915]]&&(null!=this[_0x53bb[2915]]&&null==this[_0x53bb[2904]]&&!this[_0x53bb[1179]][_0x53bb[1009]])&&_0x39abx3[_0x53bb[722]]()};null!=this[_0x53bb[2886]][_0x53bb[2920]]&&this[_0x53bb[2885]][_0x53bb[862]]();if(!this[_0x53bb[1179]][_0x53bb[1009]]&&null!=this[_0x53bb[2915]]&&null!=this[_0x53bb[2904]]){_0x39abx4= !1;_0x39abxa=_0x39abx3[_0x53bb[728]]();for(_0x39abx9=0;_0x39abx9<this[_0x53bb[2904]][_0x53bb[67]]&& !_0x39abx4;_0x39abx9++){_0x39abx4=_0x39abxa==this[_0x53bb[2904]][_0x39abx9][_0x53bb[252]]||_0x39abxa[_0x53bb[265]]==this[_0x53bb[2904]][_0x39abx9][_0x53bb[252]]};_0x39abx4||this[_0x53bb[2933]](this[_0x53bb[2915]],this[_0x53bb[2904]],_0x39abx3)}}else {this[_0x53bb[2886]][_0x53bb[862]]()}};mxConnectionHandler[_0x53bb[202]][_0x53bb[2930]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null,_0x39abx5=_0x39abx2[_0x53bb[441]],_0x39abx9=_0x39abx5[_0x53bb[2305]](_0x39abx2);if(null!=_0x39abx9){var _0x39abxa=null!=this[_0x53bb[2922]]&&0<this[_0x53bb[2922]][_0x53bb[67]]?this[_0x53bb[2922]][this[_0x53bb[2922]][_0x53bb[67]]-1]: new mxPoint(this[_0x53bb[257]][_0x53bb[241]](),this[_0x53bb[257]][_0x53bb[242]]()),_0x39abx5=_0x39abx9(_0x39abx5[_0x53bb[2087]](_0x39abx2),this[_0x53bb[2897]],_0x39abxa,!1);null!=_0x39abx5&&(_0x39abx4=_0x39abx5)}else {_0x39abx4= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]())};return _0x39abx4};mxConnectionHandler[_0x53bb[202]][_0x53bb[2931]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx4=null;var _0x39abx5=_0x39abx2[_0x53bb[441]],_0x39abx9=_0x39abx5[_0x53bb[2305]](_0x39abx2),_0x39abxa= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]());if(null!=_0x39abx9){var _0x39abx12=mxUtils[_0x53bb[433]](_0x39abx2[_0x53bb[124]],mxConstants.STYLE_ROTATION,0),_0x39abx13=-_0x39abx12*(Math[_0x53bb[424]]/180);0!=_0x39abx12&&(_0x39abx3=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx3[_0x53bb[235]],_0x39abx3[_0x53bb[236]]),Math[_0x53bb[426]](_0x39abx13),Math[_0x53bb[427]](_0x39abx13),_0x39abxa));_0x39abx2=_0x39abx9(_0x39abx5[_0x53bb[2087]](_0x39abx2),_0x39abx2,_0x39abx3,!1);null!=_0x39abx2&&(0!=_0x39abx12&&(_0x39abx2=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]),Math[_0x53bb[426]](-_0x39abx13),Math[_0x53bb[427]](-_0x39abx13),_0x39abxa)),_0x39abx4=_0x39abx2)}else {_0x39abx4=_0x39abxa};return _0x39abx4};mxConnectionHandler[_0x53bb[202]][_0x53bb[2933]]=function(_0x39abx2,_0x39abx3,_0x39abx4){};mxConnectionHandler[_0x53bb[202]][_0x53bb[2934]]=function(_0x39abx2){return null!=_0x39abx2[_0x53bb[248]]()};mxConnectionHandler[_0x53bb[202]][_0x53bb[2935]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],_0x39abx2[_0x53bb[730]](),_0x39abx2[_0x53bb[732]]()),_0x39abx4=Math[_0x53bb[425]](_0x39abx3[_0x53bb[235]]-this[_0x53bb[2823]][_0x53bb[235]]),_0x39abx3=Math[_0x53bb[425]](_0x39abx3[_0x53bb[236]]-this[_0x53bb[2823]][_0x53bb[236]]);if(null!=this[_0x53bb[2922]]||1<this[_0x53bb[2899]]&&(_0x39abx4>this[_0x53bb[1179]][_0x53bb[2353]]||_0x39abx3>this[_0x53bb[1179]][_0x53bb[2353]])){null==this[_0x53bb[2922]]&&(this[_0x53bb[2922]]=[]),_0x39abx4=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx3= new mxPoint(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[734]]()/_0x39abx4)*_0x39abx4,this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[735]]()/_0x39abx4)*_0x39abx4),this[_0x53bb[2922]][_0x53bb[207]](_0x39abx3)}};mxConnectionHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[2908]]()){if(this[_0x53bb[2887]]&&!this[_0x53bb[2934]](_0x39abx3)){this[_0x53bb[2935]](_0x39abx3);_0x39abx3[_0x53bb[722]]();return};if(null==this[_0x53bb[267]]){var _0x39abx4=null!=this[_0x53bb[257]]?this[_0x53bb[257]][_0x53bb[246]]:null,_0x39abx5=null;null!=this[_0x53bb[2886]][_0x53bb[2920]]&&null!=this[_0x53bb[2886]][_0x53bb[2919]]&&(_0x39abx5=this[_0x53bb[2886]][_0x53bb[2919]][_0x53bb[246]]);null==_0x39abx5&&this[_0x53bb[2885]][_0x53bb[2867]]()&&(_0x39abx5=this[_0x53bb[2885]][_0x53bb[2861]][_0x53bb[246]]);this[_0x53bb[807]](_0x39abx4,_0x39abx5,_0x39abx3[_0x53bb[727]](),_0x39abx3[_0x53bb[736]]())}else {null!=this[_0x53bb[257]]&&(null!=this[_0x53bb[2885]][_0x53bb[2861]]&&this[_0x53bb[257]][_0x53bb[246]]==this[_0x53bb[2885]][_0x53bb[2861]][_0x53bb[246]])&&this[_0x53bb[1179]][_0x53bb[2459]](this[_0x53bb[2885]][_0x53bb[1097]],evt),0<this[_0x53bb[267]][_0x53bb[67]]&&this[_0x53bb[1179]][_0x53bb[2580]](this[_0x53bb[267]])};this[_0x53bb[2906]](this[_0x53bb[2904]]);_0x39abx3[_0x53bb[722]]()};null!=this[_0x53bb[2823]]&&this[_0x53bb[862]]();this[_0x53bb[2891]]=this[_0x53bb[2890]]= !1};mxConnectionHandler[_0x53bb[202]][_0x53bb[862]]=function(){null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null);this[_0x53bb[2906]](this[_0x53bb[2904]]);this[_0x53bb[2904]]=null;this[_0x53bb[2885]][_0x53bb[862]]();this[_0x53bb[2886]][_0x53bb[862]]();this[_0x53bb[2921]]=this[_0x53bb[267]]=this[_0x53bb[257]]=this[_0x53bb[2897]]=this[_0x53bb[2926]]=null;this[_0x53bb[2899]]=0;this[_0x53bb[2916]]=this[_0x53bb[2823]]=null;this[_0x53bb[746]]( new mxEventObject(mxEvent.RESET))};mxConnectionHandler[_0x53bb[202]][_0x53bb[2932]]=function(){var _0x39abx2=null==this[_0x53bb[267]];this[_0x53bb[253]][_0x53bb[1307]]=this[_0x53bb[2936]](_0x39abx2);_0x39abx2=this[_0x53bb[2937]](_0x39abx2);this[_0x53bb[253]][_0x53bb[1336]]=_0x39abx2;this[_0x53bb[253]][_0x53bb[258]]()};mxConnectionHandler[_0x53bb[202]][_0x53bb[2937]]=function(_0x39abx2){return _0x39abx2?mxConstants[_0x53bb[2829]]:mxConstants[_0x53bb[2938]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2936]]=function(_0x39abx2){return _0x39abx2?3:1};mxConnectionHandler[_0x53bb[202]][_0x53bb[807]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=_0x39abx3||this[_0x53bb[2901]]()||this[_0x53bb[1179]][_0x53bb[2406]]){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abxa=null;_0x39abx9[_0x53bb[473]]();try{if(null!=_0x39abx2&&(null==_0x39abx3&&this[_0x53bb[2901]]())&&(_0x39abx3=this[_0x53bb[2939]](_0x39abx4,_0x39abx2),null!=_0x39abx3)){_0x39abx5=this[_0x53bb[1179]][_0x53bb[564]]([_0x39abx3],_0x39abx4,_0x39abx5);if(null==_0x39abx5||!this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[250]](_0x39abx5)){var _0x39abx12=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx5);if(null!=_0x39abx12){var _0x39abx13=_0x39abx9[_0x53bb[1721]](_0x39abx3);_0x39abx13[_0x53bb[235]]-=_0x39abx12[_0x53bb[2078]][_0x53bb[235]];_0x39abx13[_0x53bb[236]]-=_0x39abx12[_0x53bb[2078]][_0x53bb[236]]}}else {_0x39abx5=this[_0x53bb[1179]][_0x53bb[902]]()};this[_0x53bb[1179]][_0x53bb[2103]](_0x39abx3,_0x39abx5)};var _0x39abx14=this[_0x53bb[1179]][_0x53bb[902]]();null!=_0x39abx2&&(null!=_0x39abx3&&_0x39abx9[_0x53bb[1197]](_0x39abx2)==_0x39abx9[_0x53bb[1197]](_0x39abx3)&&_0x39abx9[_0x53bb[1197]](_0x39abx9[_0x53bb[1197]](_0x39abx2))!=_0x39abx9[_0x53bb[501]]())&&(_0x39abx14=_0x39abx9[_0x53bb[1197]](_0x39abx2),null!=_0x39abx2[_0x53bb[256]]&&_0x39abx2[_0x53bb[256]][_0x53bb[1500]]&&(null!=_0x39abx3[_0x53bb[256]]&&_0x39abx3[_0x53bb[256]][_0x53bb[1500]])&&(_0x39abx14=_0x39abx9[_0x53bb[1197]](_0x39abx14)));_0x39abx13=_0x39abx12=null;null!=this[_0x53bb[2897]]&&(_0x39abx12=this[_0x53bb[2897]][_0x53bb[246]][_0x53bb[131]],_0x39abx13=this[_0x53bb[2897]][_0x53bb[246]][_0x53bb[124]]);_0x39abxa=this[_0x53bb[1960]](_0x39abx14,null,_0x39abx12,_0x39abx2,_0x39abx3,_0x39abx13);if(null!=_0x39abxa){this[_0x53bb[1179]][_0x53bb[2545]](_0x39abxa,_0x39abx2,!0,this[_0x53bb[2921]]);this[_0x53bb[1179]][_0x53bb[2545]](_0x39abxa,_0x39abx3,!1,this[_0x53bb[2886]][_0x53bb[2920]]);null!=this[_0x53bb[2897]]&&_0x39abx9[_0x53bb[1724]](_0x39abxa,this[_0x53bb[2897]][_0x53bb[246]][_0x53bb[256]]);var _0x39abx15=_0x39abx9[_0x53bb[1721]](_0x39abxa);null==_0x39abx15&&(_0x39abx15= new mxGeometry,_0x39abx15[_0x53bb[1500]]= !0,_0x39abx9[_0x53bb[1724]](_0x39abxa,_0x39abx15));if(null!=this[_0x53bb[2922]]&&0<this[_0x53bb[2922]][_0x53bb[67]]){var _0x39abx16=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx17=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[513]];_0x39abx15[_0x53bb[1525]]=[];for(_0x39abx2=0;_0x39abx2<this[_0x53bb[2922]][_0x53bb[67]];_0x39abx2++){var _0x39abx18=this[_0x53bb[2922]][_0x39abx2];_0x39abx15[_0x53bb[1525]][_0x53bb[207]]( new mxPoint(_0x39abx18[_0x53bb[235]]/_0x39abx16-_0x39abx17[_0x53bb[235]],_0x39abx18[_0x53bb[236]]/_0x39abx16-_0x39abx17[_0x53bb[236]]))}};null==_0x39abx3&&(_0x39abx18=this[_0x53bb[1179]][_0x53bb[2689]](_0x39abx4,!1),_0x39abx18[_0x53bb[235]]-=this[_0x53bb[1179]][_0x53bb[1136]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx18[_0x53bb[236]]-=this[_0x53bb[1179]][_0x53bb[1137]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx15[_0x53bb[2007]](_0x39abx18,!1));this[_0x53bb[746]]( new mxEventObject(mxEvent.CONNECT,_0x53bb[246],_0x39abxa,_0x53bb[763],_0x39abx4,_0x53bb[772],_0x39abx5))}}catch(q){mxLog[_0x53bb[539]](),mxLog[_0x53bb[143]](q[_0x53bb[281]])}finally{_0x39abx9[_0x53bb[476]]()};this[_0x53bb[804]]&&this[_0x53bb[2707]](_0x39abxa,_0x39abx3)}};mxConnectionHandler[_0x53bb[202]][_0x53bb[2707]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1179]][_0x53bb[2450]](_0x39abx2)};mxConnectionHandler[_0x53bb[202]][_0x53bb[1960]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){if(null==this[_0x53bb[1033]]){return this[_0x53bb[1179]][_0x53bb[1960]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa)};_0x39abx3=this[_0x53bb[2503]](_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa);return _0x39abx3=this[_0x53bb[1179]][_0x53bb[2504]](_0x39abx3,_0x39abx2,_0x39abx5,_0x39abx9)};mxConnectionHandler[_0x53bb[202]][_0x53bb[2939]]=function(_0x39abx2,_0x39abx3){for(var _0x39abx4=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx3);null!=_0x39abx4&&_0x39abx4[_0x53bb[1500]];){_0x39abx3=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](_0x39abx3),_0x39abx4=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx3)};var _0x39abx5=this[_0x53bb[1179]][_0x53bb[899]]([_0x39abx3])[0],_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1721]](_0x39abx5);if(null!=_0x39abx4){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[2689]](_0x39abx2);_0x39abx4[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx9[_0x53bb[235]]-_0x39abx4[_0x53bb[117]]/2)-this[_0x53bb[1179]][_0x53bb[1136]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];_0x39abx4[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx9[_0x53bb[236]]-_0x39abx4[_0x53bb[119]]/2)-this[_0x53bb[1179]][_0x53bb[1137]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];if(null!=this[_0x53bb[2823]]){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx3);if(null!=_0x39abxa){var _0x39abx12=this[_0x53bb[2940]]();Math[_0x53bb[425]](this[_0x53bb[1179]][_0x53bb[1021]](this[_0x53bb[2823]][_0x53bb[235]])-this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx9[_0x53bb[235]]))<=_0x39abx12?_0x39abx4[_0x53bb[235]]=_0x39abxa[_0x53bb[235]]:Math[_0x53bb[425]](this[_0x53bb[1179]][_0x53bb[1021]](this[_0x53bb[2823]][_0x53bb[236]])-this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx9[_0x53bb[236]]))<=_0x39abx12&&(_0x39abx4[_0x53bb[236]]=_0x39abxa[_0x53bb[236]])}}};return _0x39abx5};mxConnectionHandler[_0x53bb[202]][_0x53bb[2940]]=function(){return this[_0x53bb[1179]][_0x53bb[997]]()?this[_0x53bb[1179]][_0x53bb[1020]]:this[_0x53bb[1179]][_0x53bb[2353]]};mxConnectionHandler[_0x53bb[202]][_0x53bb[2503]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null;null!=this[_0x53bb[1033]]&&(_0x39abx9=this[_0x53bb[1033]](_0x39abx3,_0x39abx4,_0x39abx5));null==_0x39abx9&&(_0x39abx9= new mxCell(_0x39abx2||_0x53bb[110]),_0x39abx9[_0x53bb[1994]](!0),_0x39abx9[_0x53bb[475]](_0x39abx5),_0x39abx2= new mxGeometry,_0x39abx2[_0x53bb[1500]]= !0,_0x39abx9[_0x53bb[1724]](_0x39abx2));return _0x39abx9};mxConnectionHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[1148]](this);null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null);null!=this[_0x53bb[2885]]&&(this[_0x53bb[2885]][_0x53bb[515]](),this[_0x53bb[2885]]=null);null!=this[_0x53bb[2886]]&&(this[_0x53bb[2886]][_0x53bb[515]](),this[_0x53bb[2886]]=null);null!=this[_0x53bb[1176]]&&(this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[1176]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[1176]]),this[_0x53bb[1176]]=null);null!=this[_0x53bb[2898]]&&(this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2898]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[2898]]),this[_0x53bb[2898]]=null)};function mxConstraintHandler(_0x39abx2){this[_0x53bb[1179]]=_0x39abx2}mxConstraintHandler[_0x53bb[202]][_0x53bb[2941]]= new mxImage(mxClient[_0x53bb[88]]+_0x53bb[2942],5,5);mxConstraintHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxConstraintHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxConstraintHandler[_0x53bb[202]][_0x53bb[2943]]=mxConstants[_0x53bb[2854]];mxConstraintHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxConstraintHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxConstraintHandler[_0x53bb[202]][_0x53bb[862]]=function(){if(null!=this[_0x53bb[2944]]){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[2944]][_0x53bb[67]];_0x39abx2++){this[_0x53bb[2944]][_0x39abx2][_0x53bb[515]]()};this[_0x53bb[2944]]=null};null!=this[_0x53bb[2945]]&&(this[_0x53bb[2945]][_0x53bb[515]](),this[_0x53bb[2945]]=null);this[_0x53bb[2946]]=this[_0x53bb[2919]]=this[_0x53bb[987]]=this[_0x53bb[2947]]=this[_0x53bb[2920]]=null};mxConstraintHandler[_0x53bb[202]][_0x53bb[2636]]=function(){return this[_0x53bb[1179]][_0x53bb[2636]]()};mxConstraintHandler[_0x53bb[202]][_0x53bb[2948]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return this[_0x53bb[2941]]};mxConstraintHandler[_0x53bb[202]][_0x53bb[2949]]=function(_0x39abx2,_0x39abx3){return !1};mxConstraintHandler[_0x53bb[202]][_0x53bb[2729]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[994]]()&&!this[_0x53bb[2949]](_0x39abx2)){var _0x39abx4=this[_0x53bb[2636]](),_0x39abx5= new mxRectangle(_0x39abx2[_0x53bb[734]]()-_0x39abx4,_0x39abx2[_0x53bb[735]]()-_0x39abx4,2*_0x39abx4,2*_0x39abx4),_0x39abx9=null!=_0x39abx2[_0x53bb[736]]()?this[_0x53bb[1179]][_0x53bb[2565]](_0x39abx2[_0x53bb[736]]()):!1;if(null==this[_0x53bb[2947]]||!mxUtils[_0x53bb[1825]](this[_0x53bb[2947]],_0x39abx5)||null!=_0x39abx2[_0x53bb[248]]()&&null!=this[_0x53bb[2919]]&&_0x39abx9){if(this[_0x53bb[2947]]=null,_0x39abx2[_0x53bb[248]]()!=this[_0x53bb[2919]]){if(this[_0x53bb[2919]]=null,this[_0x53bb[1531]]=null!=_0x39abx2[_0x53bb[248]]()&&_0x39abx9?this[_0x53bb[1179]][_0x53bb[2538]](_0x39abx2[_0x53bb[248]](),_0x39abx3):null,null!=this[_0x53bb[1531]]){this[_0x53bb[2919]]=_0x39abx2[_0x53bb[248]]();this[_0x53bb[2947]]= new mxRectangle(_0x39abx2[_0x53bb[248]]()[_0x53bb[235]],_0x39abx2[_0x53bb[248]]()[_0x53bb[236]],_0x39abx2[_0x53bb[248]]()[_0x53bb[117]],_0x39abx2[_0x53bb[248]]()[_0x53bb[119]]);if(null!=this[_0x53bb[2944]]){for(_0x39abx9=0;_0x39abx9<this[_0x53bb[2944]][_0x53bb[67]];_0x39abx9++){this[_0x53bb[2944]][_0x39abx9][_0x53bb[515]]()};this[_0x53bb[2946]]=this[_0x53bb[2944]]=null};this[_0x53bb[2944]]=[];this[_0x53bb[2946]]=[];for(_0x39abx9=0;_0x39abx9<this[_0x53bb[1531]][_0x53bb[67]];_0x39abx9++){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[2290]](_0x39abx2[_0x53bb[248]](),this[_0x53bb[1531]][_0x39abx9]),_0x39abx12=this[_0x53bb[2948]](_0x39abx2[_0x53bb[248]](),this[_0x53bb[1531]][_0x39abx9],_0x39abxa),_0x39abx13=_0x39abx12[_0x53bb[390]],_0x39abx12= new mxRectangle(_0x39abxa[_0x53bb[235]]-_0x39abx12[_0x53bb[117]]/2,_0x39abxa[_0x53bb[236]]-_0x39abx12[_0x53bb[119]]/2,_0x39abx12[_0x53bb[117]],_0x39abx12[_0x53bb[119]]),_0x39abx12= new mxImageShape(_0x39abx12,_0x39abx13);_0x39abx12[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[2334]]:mxConstants[_0x53bb[508]];_0x39abx12[_0x53bb[1674]]= !1;_0x39abx12[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]());null!=_0x39abx12[_0x53bb[252]][_0x53bb[328]]&&_0x39abx12[_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](_0x39abx12[_0x53bb[252]],_0x39abx12[_0x53bb[252]][_0x53bb[265]][_0x53bb[285]]);_0x39abx13=mxUtils[_0x53bb[885]](this,function(){return null!=this[_0x53bb[2919]]?this[_0x53bb[2919]]:_0x39abx2[_0x53bb[248]]()});_0x39abx12[_0x53bb[258]]();mxEvent[_0x53bb[2733]](_0x39abx12[_0x53bb[252]],this[_0x53bb[1179]],_0x39abx13);this[_0x53bb[2947]][_0x53bb[99]](_0x39abx12[_0x53bb[1562]]);this[_0x53bb[2944]][_0x53bb[207]](_0x39abx12);this[_0x53bb[2946]][_0x53bb[207]](_0x39abxa)};this[_0x53bb[2947]][_0x53bb[244]](_0x39abx4)}else {if(null!=this[_0x53bb[2944]]){null!=this[_0x53bb[2945]]&&(this[_0x53bb[2945]][_0x53bb[515]](),this[_0x53bb[2945]]=null);for(_0x39abx9=0;_0x39abx9<this[_0x53bb[2944]][_0x53bb[67]];_0x39abx9++){this[_0x53bb[2944]][_0x39abx9][_0x53bb[515]]()};this[_0x53bb[2946]]=this[_0x53bb[2944]]=null}}}};this[_0x53bb[987]]=this[_0x53bb[2920]]=null;if(null!=this[_0x53bb[2944]]&&null!=this[_0x53bb[1531]]&&(null==_0x39abx2[_0x53bb[248]]()||this[_0x53bb[2919]]==_0x39abx2[_0x53bb[248]]())){for(_0x39abx9=0;_0x39abx9<this[_0x53bb[2944]][_0x53bb[67]];_0x39abx9++){if(mxUtils[_0x53bb[1825]](this[_0x53bb[2944]][_0x39abx9][_0x53bb[1562]],_0x39abx5)){this[_0x53bb[2920]]=this[_0x53bb[1531]][_0x39abx9];this[_0x53bb[987]]=this[_0x53bb[2946]][_0x39abx9];_0x39abx4=this[_0x53bb[2944]][_0x39abx9][_0x53bb[1562]][_0x53bb[238]]();_0x39abx4[_0x53bb[244]](mxClient[_0x53bb[80]]?3:2);mxClient[_0x53bb[80]]&&(_0x39abx4[_0x53bb[117]]-=1,_0x39abx4[_0x53bb[119]]-=1);null==this[_0x53bb[2945]]?(_0x39abx4= new mxRectangleShape(_0x39abx4,null,this[_0x53bb[2943]],3),_0x39abx4[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]==mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[508]]:mxConstants[_0x53bb[1523]],_0x39abx4[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()),this[_0x53bb[2945]]=_0x39abx4,_0x39abx13=mxUtils[_0x53bb[885]](this,function(){return null!=this[_0x53bb[2919]]?this[_0x53bb[2919]]:_0x39abx2[_0x53bb[248]]()}),mxEvent[_0x53bb[2733]](_0x39abx4[_0x53bb[252]],this[_0x53bb[1179]],_0x39abx13)):(this[_0x53bb[2945]][_0x53bb[1562]]=_0x39abx4,this[_0x53bb[2945]][_0x53bb[258]]());break}}};null==this[_0x53bb[2920]]&&null!=this[_0x53bb[2945]]&&(this[_0x53bb[2945]][_0x53bb[515]](),this[_0x53bb[2945]]=null)}};mxConstraintHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[862]]()};function mxRubberband(_0x39abx2){null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[1179]][_0x53bb[1133]](this),this[_0x53bb[2730]]=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[2950]]()}),this[_0x53bb[1179]][_0x53bb[169]](mxEvent.PAN,this[_0x53bb[2730]]),mxClient[_0x53bb[80]]&&mxEvent[_0x53bb[169]](window,_0x53bb[2428],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[515]]()})))}mxRubberband[_0x53bb[202]][_0x53bb[2951]]=20;mxRubberband[_0x53bb[202]][_0x53bb[984]]= !0;mxRubberband[_0x53bb[202]][_0x53bb[485]]=null;mxRubberband[_0x53bb[202]][_0x53bb[2952]]=null;mxRubberband[_0x53bb[202]][_0x53bb[2953]]=0;mxRubberband[_0x53bb[202]][_0x53bb[2954]]=0;mxRubberband[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxRubberband[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxRubberband[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[994]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&(this[_0x53bb[1179]][_0x53bb[2579]](_0x39abx3[_0x53bb[727]]())||null==_0x39abx3[_0x53bb[248]]())){var _0x39abx4=mxUtils[_0x53bb[445]](this[_0x53bb[1179]][_0x53bb[526]]),_0x39abx5=mxUtils[_0x53bb[444]](this[_0x53bb[1179]][_0x53bb[526]]);_0x39abx5[_0x53bb[235]]-=_0x39abx4[_0x53bb[235]];_0x39abx5[_0x53bb[236]]-=_0x39abx4[_0x53bb[236]];this[_0x53bb[861]](_0x39abx3[_0x53bb[730]]()+_0x39abx5[_0x53bb[235]],_0x39abx3[_0x53bb[732]]()+_0x39abx5[_0x53bb[236]]);if(mxClient[_0x53bb[133]]&&!mxClient[_0x53bb[75]]&&!mxClient[_0x53bb[76]]){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[526]],_0x39abxa=function(_0x39abx2){_0x39abx2= new mxMouseEvent(_0x39abx2);var _0x39abx3=mxUtils[_0x53bb[2196]](_0x39abx9,_0x39abx2[_0x53bb[730]](),_0x39abx2[_0x53bb[732]]());_0x39abx2[_0x53bb[725]]=_0x39abx3[_0x53bb[235]];_0x39abx2[_0x53bb[726]]=_0x39abx3[_0x53bb[236]];return _0x39abx2};this[_0x53bb[2955]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[788]](this[_0x53bb[1179]],_0x39abxa(_0x39abx2))});this[_0x53bb[981]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[789]](this[_0x53bb[1179]],_0x39abxa(_0x39abx2))});mxEvent[_0x53bb[169]](document,_0x53bb[752],this[_0x53bb[2955]]);mxEvent[_0x53bb[169]](document,_0x53bb[753],this[_0x53bb[981]])};_0x39abx3[_0x53bb[722]](!1)}};mxRubberband[_0x53bb[202]][_0x53bb[861]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2823]]= new mxPoint(_0x39abx2,_0x39abx3)};mxRubberband[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&null!=this[_0x53bb[2823]]){var _0x39abx4=mxUtils[_0x53bb[444]](this[_0x53bb[1179]][_0x53bb[526]]),_0x39abx5=mxUtils[_0x53bb[445]](this[_0x53bb[1179]][_0x53bb[526]]);_0x39abx4[_0x53bb[235]]-=_0x39abx5[_0x53bb[235]];_0x39abx4[_0x53bb[236]]-=_0x39abx5[_0x53bb[236]];var _0x39abx5=_0x39abx3[_0x53bb[730]]()+_0x39abx4[_0x53bb[235]],_0x39abx4=_0x39abx3[_0x53bb[732]]()+_0x39abx4[_0x53bb[236]],_0x39abx9=this[_0x53bb[2823]][_0x53bb[235]]-_0x39abx5,_0x39abxa=this[_0x53bb[2823]][_0x53bb[236]]-_0x39abx4,_0x39abx12=this[_0x53bb[1179]][_0x53bb[2353]];if(null!=this[_0x53bb[485]]||Math[_0x53bb[425]](_0x39abx9)>_0x39abx12||Math[_0x53bb[425]](_0x39abxa)>_0x39abx12){null==this[_0x53bb[485]]&&(this[_0x53bb[485]]=this[_0x53bb[2156]]()),mxUtils[_0x53bb[2440]](),this[_0x53bb[2729]](_0x39abx5,_0x39abx4),_0x39abx3[_0x53bb[722]]()}}};mxRubberband[_0x53bb[202]][_0x53bb[2156]]=function(){null==this[_0x53bb[2952]]&&(this[_0x53bb[2952]]=document[_0x53bb[55]](_0x53bb[485]),this[_0x53bb[2952]][_0x53bb[926]]=_0x53bb[2956],mxUtils[_0x53bb[254]](this[_0x53bb[2952]],this[_0x53bb[2951]]));this[_0x53bb[1179]][_0x53bb[526]][_0x53bb[62]](this[_0x53bb[2952]]);return this[_0x53bb[2952]]};mxRubberband[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null!=this[_0x53bb[485]];this[_0x53bb[862]]();_0x39abx4&&(_0x39abx4= new mxRectangle(this[_0x53bb[235]],this[_0x53bb[236]],this[_0x53bb[117]],this[_0x53bb[119]]),this[_0x53bb[1179]][_0x53bb[2698]](_0x39abx4,_0x39abx3[_0x53bb[727]]()),_0x39abx3[_0x53bb[722]]())};mxRubberband[_0x53bb[202]][_0x53bb[862]]=function(){null!=this[_0x53bb[485]]&&this[_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[485]]);null!=this[_0x53bb[2955]]&&(mxEvent[_0x53bb[745]](document,_0x53bb[752],this[_0x53bb[2955]]),this[_0x53bb[2955]]=null);null!=this[_0x53bb[981]]&&(mxEvent[_0x53bb[745]](document,_0x53bb[753],this[_0x53bb[981]]),this[_0x53bb[981]]=null);this[_0x53bb[2954]]=this[_0x53bb[2953]]=0;this[_0x53bb[485]]=this[_0x53bb[2823]]=null};mxRubberband[_0x53bb[202]][_0x53bb[2729]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[2953]]=_0x39abx2;this[_0x53bb[2954]]=_0x39abx3;this[_0x53bb[2950]]()};mxRubberband[_0x53bb[202]][_0x53bb[2950]]=function(){if(null!=this[_0x53bb[485]]){var _0x39abx2=this[_0x53bb[2953]]-this[_0x53bb[1179]][_0x53bb[1136]],_0x39abx3=this[_0x53bb[2954]]-this[_0x53bb[1179]][_0x53bb[1137]];this[_0x53bb[235]]=Math[_0x53bb[243]](this[_0x53bb[2823]][_0x53bb[235]],_0x39abx2);this[_0x53bb[236]]=Math[_0x53bb[243]](this[_0x53bb[2823]][_0x53bb[236]],_0x39abx3);this[_0x53bb[117]]=Math[_0x53bb[160]](this[_0x53bb[2823]][_0x53bb[235]],_0x39abx2)-this[_0x53bb[235]];this[_0x53bb[119]]=Math[_0x53bb[160]](this[_0x53bb[2823]][_0x53bb[236]],_0x39abx3)-this[_0x53bb[236]];_0x39abx2=mxClient[_0x53bb[47]]?this[_0x53bb[1179]][_0x53bb[1137]]:0;this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=this[_0x53bb[235]]+(mxClient[_0x53bb[47]]?this[_0x53bb[1179]][_0x53bb[1136]]:0)+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=this[_0x53bb[236]]+_0x39abx2+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[117]]=Math[_0x53bb[160]](1,this[_0x53bb[117]])+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[119]]=Math[_0x53bb[160]](1,this[_0x53bb[119]])+_0x53bb[168]}};mxRubberband[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[2717]]||(this[_0x53bb[2717]]= !0,this[_0x53bb[1179]][_0x53bb[1148]](this),this[_0x53bb[1179]][_0x53bb[745]](this[_0x53bb[2730]]),this[_0x53bb[862]](),null!=this[_0x53bb[2952]]&&(this[_0x53bb[2952]]=null))};function mxVertexHandler(_0x39abx2){null!=_0x39abx2&&(this[_0x53bb[724]]=_0x39abx2,this[_0x53bb[176]]())}mxVertexHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxVertexHandler[_0x53bb[202]][_0x53bb[724]]=null;mxVertexHandler[_0x53bb[202]][_0x53bb[2957]]= !1;mxVertexHandler[_0x53bb[202]][_0x53bb[1983]]=null;mxVertexHandler[_0x53bb[202]][_0x53bb[2958]]= !0;mxVertexHandler[_0x53bb[202]][_0x53bb[2959]]=null;mxVertexHandler[_0x53bb[202]][_0x53bb[2353]]=0;mxVertexHandler[_0x53bb[202]][_0x53bb[2809]]= !1;mxVertexHandler[_0x53bb[202]][_0x53bb[2960]]= !0;mxVertexHandler[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[1179]]=this[_0x53bb[724]][_0x53bb[441]][_0x53bb[1179]];this[_0x53bb[2961]]=this[_0x53bb[2962]](this[_0x53bb[724]]);this[_0x53bb[1562]]= new mxRectangle(this[_0x53bb[2961]][_0x53bb[235]],this[_0x53bb[2961]][_0x53bb[236]],this[_0x53bb[2961]][_0x53bb[117]],this[_0x53bb[2961]][_0x53bb[119]]);this[_0x53bb[2732]]=this[_0x53bb[2963]](this[_0x53bb[1562]]);this[_0x53bb[2732]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]];this[_0x53bb[2732]][_0x53bb[1229]]= !1;this[_0x53bb[2732]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]());this[_0x53bb[1179]][_0x53bb[1712]](this[_0x53bb[724]][_0x53bb[246]])&&(this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[2832]]);mxEvent[_0x53bb[2733]](this[_0x53bb[2732]][_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);if(0>=mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]||this[_0x53bb[1179]][_0x53bb[2694]]()<mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[2657]](this[_0x53bb[724]][_0x53bb[246]]);this[_0x53bb[2964]]=[];if(_0x39abx2||this[_0x53bb[1179]][_0x53bb[2628]](this[_0x53bb[724]][_0x53bb[246]])&&2<=this[_0x53bb[724]][_0x53bb[117]]&&2<=this[_0x53bb[724]][_0x53bb[119]]){var _0x39abx3=0;_0x39abx2&&(this[_0x53bb[2957]]||(this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[936],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2965],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2966],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2967],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2968],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2969],_0x39abx3++)),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2970],_0x39abx3++))),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2735]](_0x53bb[2971],_0x39abx3++)));_0x39abx2=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1721]](this[_0x53bb[724]][_0x53bb[246]]);null!=_0x39abx2&&(!_0x39abx2[_0x53bb[1500]]&&!this[_0x53bb[1179]][_0x53bb[1730]](this[_0x53bb[724]][_0x53bb[246]])&&this[_0x53bb[1179]][_0x53bb[2628]](this[_0x53bb[724]][_0x53bb[246]]))&&(this[_0x53bb[2972]]=this[_0x53bb[2735]](mxConstants.CURSOR_LABEL_HANDLE,mxEvent.LABEL_HANDLE,mxConstants.LABEL_HANDLE_SIZE,mxConstants.LABEL_HANDLE_FILLCOLOR),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2972]]))}else {this[_0x53bb[1179]][_0x53bb[1712]](this[_0x53bb[724]][_0x53bb[246]])&&(!this[_0x53bb[1179]][_0x53bb[2657]](this[_0x53bb[724]][_0x53bb[246]])&&2>this[_0x53bb[724]][_0x53bb[117]]&&2>this[_0x53bb[724]][_0x53bb[119]])&&(this[_0x53bb[2972]]=this[_0x53bb[2735]](mxConstants.CURSOR_MOVABLE_VERTEX,null,null,mxConstants.LABEL_HANDLE_FILLCOLOR),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2972]]))}};if(this[_0x53bb[2809]]&&(0>=mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]||this[_0x53bb[1179]][_0x53bb[2694]]()<mxGraphHandler[_0x53bb[202]][_0x53bb[2795]])){this[_0x53bb[2973]]=this[_0x53bb[2735]](_0x53bb[356],mxEvent.ROTATION_HANDLE,mxConstants[_0x53bb[2974]]+3,mxConstants.HANDLE_FILLCOLOR),this[_0x53bb[2964]][_0x53bb[207]](this[_0x53bb[2973]])};this[_0x53bb[258]]()};mxVertexHandler[_0x53bb[202]][_0x53bb[2962]]=function(_0x39abx2){return new mxRectangle(Math[_0x53bb[488]](_0x39abx2[_0x53bb[235]]),Math[_0x53bb[488]](_0x39abx2[_0x53bb[236]]),Math[_0x53bb[488]](_0x39abx2[_0x53bb[117]]),Math[_0x53bb[488]](_0x39abx2[_0x53bb[119]]))};mxVertexHandler[_0x53bb[202]][_0x53bb[2963]]=function(_0x39abx2){_0x39abx2= new mxRectangleShape(_0x39abx2,null,this[_0x53bb[2975]]());_0x39abx2[_0x53bb[1307]]=this[_0x53bb[2976]]();_0x39abx2[_0x53bb[1522]]=this[_0x53bb[2977]]();return _0x39abx2};mxVertexHandler[_0x53bb[202]][_0x53bb[2975]]=function(){return mxConstants[_0x53bb[2978]]};mxVertexHandler[_0x53bb[202]][_0x53bb[2976]]=function(){return mxConstants[_0x53bb[2979]]};mxVertexHandler[_0x53bb[202]][_0x53bb[2977]]=function(){return mxConstants[_0x53bb[2980]]};mxVertexHandler[_0x53bb[202]][_0x53bb[2735]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){_0x39abx4=_0x39abx4||mxConstants[_0x53bb[2974]];_0x39abx4= new mxRectangle(0,0,_0x39abx4,_0x39abx4);_0x39abx5=this[_0x53bb[2981]](_0x39abx4,_0x39abx3,_0x39abx5);_0x39abx5[_0x53bb[1567]]()&&null!=this[_0x53bb[724]][_0x53bb[963]]&&this[_0x53bb[724]][_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]?(_0x39abx5[_0x53bb[1562]][_0x53bb[119]]-=1,_0x39abx5[_0x53bb[1562]][_0x53bb[117]]-=1,_0x39abx5[_0x53bb[507]]=mxConstants[_0x53bb[1656]],_0x39abx5[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[526]])):(_0x39abx5[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[2334]]:mxConstants[_0x53bb[508]],_0x39abx5[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()));mxEvent[_0x53bb[2733]](_0x39abx5[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);this[_0x53bb[1179]][_0x53bb[994]]()&&(_0x39abx5[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x39abx2);this[_0x53bb[2982]](_0x39abx3)||(_0x39abx5[_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188]);return _0x39abx5};mxVertexHandler[_0x53bb[202]][_0x53bb[2982]]=function(_0x39abx2){return !0};mxVertexHandler[_0x53bb[202]][_0x53bb[2981]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return null!=this[_0x53bb[2959]]?(_0x39abx2[_0x53bb[117]]=this[_0x53bb[2959]][_0x53bb[117]],_0x39abx2[_0x53bb[119]]=this[_0x53bb[2959]][_0x53bb[119]], new mxImageShape(_0x39abx2,this[_0x53bb[2959]][_0x53bb[390]])):_0x39abx3==mxEvent[_0x53bb[2983]]? new mxEllipse(_0x39abx2,_0x39abx4||mxConstants[_0x53bb[2984]],mxConstants.HANDLE_STROKECOLOR): new mxRectangleShape(_0x39abx2,_0x39abx4||mxConstants[_0x53bb[2984]],mxConstants.HANDLE_STROKECOLOR)};mxVertexHandler[_0x53bb[202]][_0x53bb[2985]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null!=_0x39abx2&&(_0x39abx2[_0x53bb[1562]][_0x53bb[235]]=Math[_0x53bb[488]](_0x39abx3-_0x39abx2[_0x53bb[1562]][_0x53bb[117]]/2),_0x39abx2[_0x53bb[1562]][_0x53bb[236]]=Math[_0x53bb[488]](_0x39abx4-_0x39abx2[_0x53bb[1562]][_0x53bb[119]]/2),_0x39abx2[_0x53bb[258]]())};mxVertexHandler[_0x53bb[202]][_0x53bb[2986]]=function(_0x39abx2){if(_0x39abx2[_0x53bb[729]](this[_0x53bb[2973]])){return mxEvent[_0x53bb[2983]]};if(_0x39abx2[_0x53bb[729]](this[_0x53bb[2972]])){return mxEvent[_0x53bb[2987]]};if(null!=this[_0x53bb[2964]]){for(var _0x39abx3=this[_0x53bb[2353]],_0x39abx3=this[_0x53bb[2958]]&&(mxClient[_0x53bb[80]]||0<_0x39abx3)? new mxRectangle(_0x39abx2[_0x53bb[734]]()-_0x39abx3,_0x39abx2[_0x53bb[735]]()-_0x39abx3,2*_0x39abx3,2*_0x39abx3):null,_0x39abx4=0;_0x39abx4<this[_0x53bb[2964]][_0x53bb[67]];_0x39abx4++){if(_0x39abx2[_0x53bb[729]](this[_0x53bb[2964]][_0x39abx4])||null!=_0x39abx3&&mxUtils[_0x53bb[1825]](this[_0x53bb[2964]][_0x39abx4][_0x53bb[1562]],_0x39abx3)){return _0x39abx4}}};return null};mxVertexHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&!this[_0x53bb[1179]][_0x53bb[2579]](_0x39abx3[_0x53bb[727]]())&&(0<this[_0x53bb[2353]]||_0x39abx3[_0x53bb[248]]()==this[_0x53bb[724]])){var _0x39abx4=this[_0x53bb[2986]](_0x39abx3);null!=_0x39abx4&&(this[_0x53bb[861]](_0x39abx3[_0x53bb[730]](),_0x39abx3[_0x53bb[732]](),_0x39abx4),_0x39abx3[_0x53bb[722]]())}};mxVertexHandler[_0x53bb[202]][_0x53bb[861]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],_0x39abx2,_0x39abx3);this[_0x53bb[2739]]=_0x39abx2[_0x53bb[235]];this[_0x53bb[2740]]=_0x39abx2[_0x53bb[236]];this[_0x53bb[1983]]=_0x39abx4;this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=_0x39abx4==mxEvent[_0x53bb[2983]]?_0x53bb[497]:_0x53bb[130];this[_0x53bb[2988]]=this[_0x53bb[2963]](this[_0x53bb[1562]]);!(mxClient[_0x53bb[48]]&&0!=Number(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]))&&null!=this[_0x53bb[724]][_0x53bb[963]]&&this[_0x53bb[724]][_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]?(this[_0x53bb[2988]][_0x53bb[507]]=mxConstants[_0x53bb[1656]],this[_0x53bb[2988]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[526]])):(this[_0x53bb[2988]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]],this[_0x53bb[2988]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[1524]]()))};mxVertexHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&null!=this[_0x53bb[1983]]){var _0x39abx4= new mxPoint(_0x39abx3[_0x53bb[734]](),_0x39abx3[_0x53bb[735]]()),_0x39abx5=this[_0x53bb[1179]][_0x53bb[1018]](_0x39abx3[_0x53bb[727]]()),_0x39abx9=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]];if(this[_0x53bb[1983]]==mxEvent[_0x53bb[2987]]){_0x39abx5&&(_0x39abx4[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx4[_0x53bb[235]]/_0x39abx9)*_0x39abx9,_0x39abx4[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx4[_0x53bb[236]]/_0x39abx9)*_0x39abx9),this[_0x53bb[2985]](this[_0x53bb[2964]][this[_0x53bb[2964]][_0x53bb[67]]-1],_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]])}else {if(this[_0x53bb[1983]]==mxEvent[_0x53bb[2983]]){var _0x39abxa=this[_0x53bb[724]][_0x53bb[235]]+this[_0x53bb[724]][_0x53bb[117]]/2-_0x39abx4[_0x53bb[235]],_0x39abx12=this[_0x53bb[724]][_0x53bb[236]]+this[_0x53bb[724]][_0x53bb[119]]/2-_0x39abx4[_0x53bb[236]];this[_0x53bb[2989]]=0!=_0x39abxa?180*Math[_0x53bb[2990]](_0x39abx12/_0x39abxa)/Math[_0x53bb[424]]+90:0>_0x39abx12?180:0;0<_0x39abxa&&(this[_0x53bb[2989]]-=180);this[_0x53bb[2960]]&&(_0x39abxa=_0x39abx4[_0x53bb[235]]-this[_0x53bb[724]][_0x53bb[241]](),_0x39abx12=_0x39abx4[_0x53bb[236]]-this[_0x53bb[724]][_0x53bb[242]](),_0x39abxa=Math[_0x53bb[425]](Math[_0x53bb[428]](_0x39abxa*_0x39abxa+_0x39abx12*_0x39abx12)-this[_0x53bb[724]][_0x53bb[119]]/2-20),_0x39abxa=Math[_0x53bb[160]](1,5*Math[_0x53bb[243]](3,Math[_0x53bb[160]](0,Math[_0x53bb[488]](80/Math[_0x53bb[425]](_0x39abxa))))),this[_0x53bb[2989]]=Math[_0x53bb[488]](this[_0x53bb[2989]]/_0x39abxa)*_0x39abxa);this[_0x53bb[2732]][_0x53bb[603]]=this[_0x53bb[2989]];this[_0x53bb[2732]][_0x53bb[258]]()}else {var _0x39abx13=mxUtils[_0x53bb[431]](this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),_0x39abx14=Math[_0x53bb[426]](-_0x39abx13),_0x39abx15=Math[_0x53bb[427]](-_0x39abx13),_0x39abx16= new mxPoint(this[_0x53bb[724]][_0x53bb[241]](),this[_0x53bb[724]][_0x53bb[242]]()),_0x39abxa=_0x39abx4[_0x53bb[235]]-this[_0x53bb[2739]],_0x39abx12=_0x39abx4[_0x53bb[236]]-this[_0x53bb[2740]],_0x39abx4=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[513]],_0x39abx17=_0x39abx15*_0x39abxa+_0x39abx14*_0x39abx12,_0x39abxa=_0x39abx14*_0x39abxa-_0x39abx15*_0x39abx12;this[_0x53bb[1562]]=this[_0x53bb[2991]](this[_0x53bb[2961]],_0x39abxa,_0x39abx17,this[_0x53bb[1983]],_0x39abx5,_0x39abx9,_0x39abx4);_0x39abx14=Math[_0x53bb[426]](_0x39abx13);_0x39abx15=Math[_0x53bb[427]](_0x39abx13);_0x39abx12= new mxPoint(this[_0x53bb[1562]][_0x53bb[241]](),this[_0x53bb[1562]][_0x53bb[242]]());_0x39abxa=_0x39abx12[_0x53bb[235]]-_0x39abx16[_0x53bb[235]];_0x39abx12=_0x39abx12[_0x53bb[236]]-_0x39abx16[_0x53bb[236]];_0x39abx16=_0x39abx15*_0x39abxa+_0x39abx14*_0x39abx12-_0x39abx12;this[_0x53bb[1562]][_0x53bb[235]]+=_0x39abx14*_0x39abxa-_0x39abx15*_0x39abx12-_0x39abxa;this[_0x53bb[1562]][_0x53bb[236]]+=_0x39abx16;this[_0x53bb[2932]]()}};_0x39abx3[_0x53bb[722]]()}else {null!=this[_0x53bb[2986]](_0x39abx3)&&_0x39abx3[_0x53bb[722]](!1)}};mxVertexHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(!_0x39abx3[_0x53bb[721]]()&&null!=this[_0x53bb[1983]]&&null!=this[_0x53bb[724]]){var _0x39abx4= new mxPoint(_0x39abx3[_0x53bb[734]](),_0x39abx3[_0x53bb[735]]());this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[473]]();try{if(this[_0x53bb[1983]]==mxEvent[_0x53bb[2983]]){null!=this[_0x53bb[2989]]&&this[_0x53bb[2992]](this[_0x53bb[724]][_0x53bb[246]],this[_0x53bb[2989]]-(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||0))}else {var _0x39abx5=this[_0x53bb[1179]][_0x53bb[1018]](_0x39abx3[_0x53bb[727]]()),_0x39abx9=mxUtils[_0x53bb[431]](this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),_0x39abxa=Math[_0x53bb[426]](-_0x39abx9),_0x39abx12=Math[_0x53bb[427]](-_0x39abx9),_0x39abx13=_0x39abx4[_0x53bb[235]]-this[_0x53bb[2739]],_0x39abx14=_0x39abx4[_0x53bb[236]]-this[_0x53bb[2740]],_0x39abx4=_0x39abx12*_0x39abx13+_0x39abxa*_0x39abx14,_0x39abx13=_0x39abxa*_0x39abx13-_0x39abx12*_0x39abx14,_0x39abx14=_0x39abx4,_0x39abx15=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];this[_0x53bb[2526]](this[_0x53bb[724]][_0x53bb[246]],_0x39abx13/_0x39abx15,_0x39abx14/_0x39abx15,this[_0x53bb[1983]],_0x39abx5)}}finally{this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[476]]()};this[_0x53bb[862]]();_0x39abx3[_0x53bb[722]]()}};mxVertexHandler[_0x53bb[202]][_0x53bb[2992]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]();if(_0x39abx4[_0x53bb[1193]](_0x39abx2)){var _0x39abx5=_0x39abx2==this[_0x53bb[724]]?this[_0x53bb[724]]:this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx2);null!=_0x39abx5&&this[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_ROTATION,(_0x39abx5[_0x53bb[124]][mxConstants[_0x53bb[2278]]]||0)+_0x39abx3,[_0x39abx2]);if(this[_0x53bb[724]][_0x53bb[246]]!=_0x39abx2&&(_0x39abx5=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx2),null!=_0x39abx5&&!_0x39abx5[_0x53bb[1500]])){if(0!=_0x39abx3){var _0x39abx9=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](_0x39abx2),_0x39abxa=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx9);if(!_0x39abx5[_0x53bb[1500]]&&null!=_0x39abxa){var _0x39abx12=mxUtils[_0x53bb[431]](_0x39abx3),_0x39abx9=Math[_0x53bb[426]](_0x39abx12),_0x39abx12=Math[_0x53bb[427]](_0x39abx12),_0x39abx13= new mxPoint(_0x39abx5[_0x53bb[241]](),_0x39abx5[_0x53bb[242]]()),_0x39abxa= new mxPoint(_0x39abxa[_0x53bb[117]]/2,_0x39abxa[_0x53bb[119]]/2),_0x39abx9=mxUtils[_0x53bb[432]](_0x39abx13,_0x39abx9,_0x39abx12,_0x39abxa),_0x39abx5=_0x39abx5[_0x53bb[238]]();_0x39abx5[_0x53bb[235]]=_0x39abx9[_0x53bb[235]]-_0x39abx5[_0x53bb[117]]/2;_0x39abx5[_0x53bb[236]]=_0x39abx9[_0x53bb[236]]-_0x39abx5[_0x53bb[119]]/2;_0x39abx4[_0x53bb[1724]](_0x39abx2,_0x39abx5)}}else {_0x39abx5=_0x39abx5[_0x53bb[238]](),_0x39abx5[_0x53bb[235]]+=dx,_0x39abx5[_0x53bb[236]]+=dy,_0x39abx4[_0x53bb[1724]](_0x39abx2,_0x39abx5)}};_0x39abx5=_0x39abx4[_0x53bb[262]](_0x39abx2);for(_0x39abx9=0;_0x39abx9<_0x39abx5;_0x39abx9++){this[_0x53bb[2992]](_0x39abx4[_0x53bb[263]](_0x39abx2,_0x39abx9),_0x39abx3)}}};mxVertexHandler[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[1983]]=this[_0x53bb[2989]]=null;null!=this[_0x53bb[2988]]&&(this[_0x53bb[2988]][_0x53bb[515]](),this[_0x53bb[2988]]=null);null!=this[_0x53bb[2732]]&&(this[_0x53bb[2732]][_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[497],this[_0x53bb[2961]]=this[_0x53bb[2962]](this[_0x53bb[724]]),this[_0x53bb[1562]]= new mxRectangle(this[_0x53bb[2961]][_0x53bb[235]],this[_0x53bb[2961]][_0x53bb[236]],this[_0x53bb[2961]][_0x53bb[117]],this[_0x53bb[2961]][_0x53bb[119]]),this[_0x53bb[2932]]())};mxVertexHandler[_0x53bb[202]][_0x53bb[2526]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1721]](_0x39abx2);if(null!=_0x39abxa){if(_0x39abx5==mxEvent[_0x53bb[2987]]){_0x39abx5=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]],_0x39abx3=(this[_0x53bb[2972]][_0x53bb[1562]][_0x53bb[241]]()-this[_0x53bb[2739]])/_0x39abx5,_0x39abx4=(this[_0x53bb[2972]][_0x53bb[1562]][_0x53bb[242]]()-this[_0x53bb[2740]])/_0x39abx5,_0x39abxa=_0x39abxa[_0x53bb[238]](),null==_0x39abxa[_0x53bb[1368]]?_0x39abxa[_0x53bb[1368]]= new mxPoint(_0x39abx3,_0x39abx4):(_0x39abxa[_0x53bb[1368]][_0x53bb[235]]+=_0x39abx3,_0x39abxa[_0x53bb[1368]][_0x53bb[236]]+=_0x39abx4),this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1724]](_0x39abx2,_0x39abxa)}else {_0x39abx5=this[_0x53bb[2991]](_0x39abxa,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,1, new mxPoint(0,0));var _0x39abx12=mxUtils[_0x53bb[431]](this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]);if(0!=_0x39abx12){_0x39abx3=_0x39abx5[_0x53bb[241]]()-_0x39abxa[_0x53bb[241]]();_0x39abx4=_0x39abx5[_0x53bb[242]]()-_0x39abxa[_0x53bb[242]]();_0x39abx9=Math[_0x53bb[426]](_0x39abx12);var _0x39abx13=Math[_0x53bb[427]](_0x39abx12),_0x39abx12=_0x39abx9*_0x39abx3-_0x39abx13*_0x39abx4-_0x39abx3;_0x39abx3=_0x39abx13*_0x39abx3+_0x39abx9*_0x39abx4-_0x39abx4;_0x39abx4=_0x39abx5[_0x53bb[235]]-_0x39abxa[_0x53bb[235]];var _0x39abx14=_0x39abx5[_0x53bb[236]]-_0x39abxa[_0x53bb[236]],_0x39abx15=_0x39abx9*_0x39abx4-_0x39abx13*_0x39abx14;_0x39abx9=_0x39abx13*_0x39abx4+_0x39abx9*_0x39abx14;_0x39abx5[_0x53bb[235]]+=_0x39abx12;_0x39abx5[_0x53bb[236]]+=_0x39abx3;if(!this[_0x53bb[1179]][_0x53bb[1742]](_0x39abx2)&&(0!=_0x39abx12||0!=_0x39abx3)){_0x39abx4=_0x39abxa[_0x53bb[235]]-_0x39abx5[_0x53bb[235]]+_0x39abx15,_0x39abx14=_0x39abxa[_0x53bb[236]]-_0x39abx5[_0x53bb[236]]+_0x39abx9,this[_0x53bb[2993]](_0x39abx2,_0x39abx4,_0x39abx14)}};this[_0x53bb[1179]][_0x53bb[2526]](_0x39abx2,_0x39abx5)}}};mxVertexHandler[_0x53bb[202]][_0x53bb[2993]]=function(_0x39abx2,_0x39abx3,_0x39abx4){for(var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[262]](_0x39abx2),_0x39abxa=0;_0x39abxa<_0x39abx9;_0x39abxa++){var _0x39abx12=_0x39abx5[_0x53bb[263]](_0x39abx2,_0x39abxa);if(_0x39abx5[_0x53bb[1193]](_0x39abx12)){var _0x39abx13=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx12);null!=_0x39abx13&&!_0x39abx13[_0x53bb[1500]]&&(_0x39abx13=_0x39abx13[_0x53bb[238]](),_0x39abx13[_0x53bb[235]]+=_0x39abx3,_0x39abx13[_0x53bb[236]]+=_0x39abx4,_0x39abx5[_0x53bb[1724]](_0x39abx12,_0x39abx13))}}};mxVertexHandler[_0x53bb[202]][_0x53bb[2991]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){if(this[_0x53bb[2957]]){_0x39abx12=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]+_0x39abx3;var _0x39abx13=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]+_0x39abx4;_0x39abx9&&(_0x39abx12=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx12/_0x39abxa)*_0x39abxa,_0x39abx13=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx13/_0x39abxa)*_0x39abxa);_0x39abxa= new mxRectangle(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]],0,0);_0x39abxa[_0x53bb[99]]( new mxRectangle(_0x39abx12,_0x39abx13,0,0));return _0x39abxa};var _0x39abx13=_0x39abx2[_0x53bb[235]]-_0x39abx12[_0x53bb[235]]*_0x39abxa,_0x39abx14=_0x39abx13+_0x39abx2[_0x53bb[117]],_0x39abx15=_0x39abx2[_0x53bb[236]]-_0x39abx12[_0x53bb[236]]*_0x39abxa;_0x39abx2=_0x39abx15+_0x39abx2[_0x53bb[119]];4<_0x39abx5?(_0x39abx2+=_0x39abx4,_0x39abx9&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2/_0x39abxa)*_0x39abxa)):3>_0x39abx5&&(_0x39abx15+=_0x39abx4,_0x39abx9&&(_0x39abx15=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx15/_0x39abxa)*_0x39abxa));if(0==_0x39abx5||3==_0x39abx5||5==_0x39abx5){_0x39abx13+=_0x39abx3,_0x39abx9&&(_0x39abx13=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx13/_0x39abxa)*_0x39abxa)}else {if(2==_0x39abx5||4==_0x39abx5||7==_0x39abx5){_0x39abx14+=_0x39abx3,_0x39abx9&&(_0x39abx14=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx14/_0x39abxa)*_0x39abxa)}};_0x39abx9=_0x39abx14-_0x39abx13;_0x39abx2-=_0x39abx15;0>_0x39abx9&&(_0x39abx13+=_0x39abx9,_0x39abx9=Math[_0x53bb[425]](_0x39abx9));0>_0x39abx2&&(_0x39abx15+=_0x39abx2,_0x39abx2=Math[_0x53bb[425]](_0x39abx2));return new mxRectangle(_0x39abx13+_0x39abx12[_0x53bb[235]]*_0x39abxa,_0x39abx15+_0x39abx12[_0x53bb[236]]*_0x39abxa,_0x39abx9,_0x39abx2)};mxVertexHandler[_0x53bb[202]][_0x53bb[258]]=function(){this[_0x53bb[2961]]=this[_0x53bb[2962]](this[_0x53bb[724]]);this[_0x53bb[1562]]= new mxRectangle(this[_0x53bb[724]][_0x53bb[235]],this[_0x53bb[724]][_0x53bb[236]],this[_0x53bb[724]][_0x53bb[117]],this[_0x53bb[724]][_0x53bb[119]]);var _0x39abx2=this[_0x53bb[724]];if(null!=this[_0x53bb[2964]]){var _0x39abx3=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]],_0x39abx4=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]];if(this[_0x53bb[2957]]){this[_0x53bb[2985]](this[_0x53bb[2964]][0],_0x39abx3,_0x39abx4)}else {var _0x39abx5=_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]/2,_0x39abx9=_0x39abx2[_0x53bb[236]]+_0x39abx2[_0x53bb[119]]/2;if(1<this[_0x53bb[2964]][_0x53bb[67]]){var _0x39abxa=mxUtils[_0x53bb[431]](_0x39abx2[_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),_0x39abx12=Math[_0x53bb[426]](_0x39abxa),_0x39abxa=Math[_0x53bb[427]](_0x39abxa),_0x39abx13= new mxPoint(_0x39abx2[_0x53bb[241]](),_0x39abx2[_0x53bb[242]]()),_0x39abx14=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]),_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][0],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx5;_0x39abx14[_0x53bb[236]]=_0x39abx2[_0x53bb[236]];_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][1],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx3;_0x39abx14[_0x53bb[236]]=_0x39abx2[_0x53bb[236]];_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][2],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx2[_0x53bb[235]];_0x39abx14[_0x53bb[236]]=_0x39abx9;_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][3],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx3;_0x39abx14[_0x53bb[236]]=_0x39abx9;_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][4],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx2[_0x53bb[235]];_0x39abx14[_0x53bb[236]]=_0x39abx4;_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][5],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx5;_0x39abx14[_0x53bb[236]]=_0x39abx4;_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][6],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);_0x39abx14[_0x53bb[235]]=_0x39abx3;_0x39abx14[_0x53bb[236]]=_0x39abx4;_0x39abx14=mxUtils[_0x53bb[432]](_0x39abx14,_0x39abx12,_0x39abxa,_0x39abx13);this[_0x53bb[2985]](this[_0x53bb[2964]][7],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]);this[_0x53bb[2985]](this[_0x53bb[2964]][8],_0x39abx5+_0x39abx2[_0x53bb[2079]][_0x53bb[235]],_0x39abx9+_0x39abx2[_0x53bb[2079]][_0x53bb[236]])}else {2<=this[_0x53bb[724]][_0x53bb[117]]&&2<=this[_0x53bb[724]][_0x53bb[119]]?this[_0x53bb[2985]](this[_0x53bb[2964]][0],_0x39abx5+_0x39abx2[_0x53bb[2079]][_0x53bb[235]],_0x39abx9+_0x39abx2[_0x53bb[2079]][_0x53bb[236]]):this[_0x53bb[2985]](this[_0x53bb[2964]][0],_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]])}}};null!=this[_0x53bb[2973]]&&(_0x39abxa=mxUtils[_0x53bb[431]](this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),_0x39abx12=Math[_0x53bb[426]](_0x39abxa),_0x39abxa=Math[_0x53bb[427]](_0x39abxa),_0x39abx13= new mxPoint(this[_0x53bb[724]][_0x53bb[241]](),this[_0x53bb[724]][_0x53bb[242]]()),_0x39abx14=mxUtils[_0x53bb[432]]( new mxPoint(_0x39abx2[_0x53bb[235]]+_0x39abx2[_0x53bb[117]]/2,_0x39abx2[_0x53bb[236]]-16),_0x39abx12,_0x39abxa,_0x39abx13),this[_0x53bb[2985]](this[_0x53bb[2973]],_0x39abx14[_0x53bb[235]],_0x39abx14[_0x53bb[236]]));this[_0x53bb[2732]][_0x53bb[603]]=Number(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]);this[_0x53bb[2932]]()};mxVertexHandler[_0x53bb[202]][_0x53bb[2932]]=function(){null!=this[_0x53bb[2988]]&&(this[_0x53bb[2988]][_0x53bb[1562]]=this[_0x53bb[1562]],this[_0x53bb[2988]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]&&(this[_0x53bb[2988]][_0x53bb[1562]][_0x53bb[117]]=Math[_0x53bb[160]](0,this[_0x53bb[2988]][_0x53bb[1562]][_0x53bb[117]]-1),this[_0x53bb[2988]][_0x53bb[1562]][_0x53bb[119]]=Math[_0x53bb[160]](0,this[_0x53bb[2988]][_0x53bb[1562]][_0x53bb[119]]-1)),this[_0x53bb[2988]][_0x53bb[603]]=Number(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]),this[_0x53bb[2988]][_0x53bb[258]]());this[_0x53bb[2732]][_0x53bb[1562]]=this[_0x53bb[1562]];this[_0x53bb[2732]][_0x53bb[258]]()};mxVertexHandler[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[2988]]&&(this[_0x53bb[2988]][_0x53bb[515]](),this[_0x53bb[2988]]=null);this[_0x53bb[2732]][_0x53bb[515]]();this[_0x53bb[2972]]=this[_0x53bb[2732]]=null;if(null!=this[_0x53bb[2964]]){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[2964]][_0x53bb[67]];_0x39abx2++){this[_0x53bb[2964]][_0x39abx2][_0x53bb[515]](),this[_0x53bb[2964]][_0x39abx2]=null}}};function mxEdgeHandler(_0x39abx2){null!=_0x39abx2&&(this[_0x53bb[724]]=_0x39abx2,this[_0x53bb[176]]())}mxEdgeHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[724]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2885]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2886]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[267]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[253]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2994]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2972]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2797]]= !0;mxEdgeHandler[_0x53bb[202]][_0x53bb[2771]]= !1;mxEdgeHandler[_0x53bb[202]][_0x53bb[2995]]= !1;mxEdgeHandler[_0x53bb[202]][_0x53bb[574]]= !1;mxEdgeHandler[_0x53bb[202]][_0x53bb[2958]]= !0;mxEdgeHandler[_0x53bb[202]][_0x53bb[2996]]= !1;mxEdgeHandler[_0x53bb[202]][_0x53bb[2959]]=null;mxEdgeHandler[_0x53bb[202]][_0x53bb[2353]]=0;mxEdgeHandler[_0x53bb[202]][_0x53bb[176]]=function(){this[_0x53bb[1179]]=this[_0x53bb[724]][_0x53bb[441]][_0x53bb[1179]];this[_0x53bb[2885]]=this[_0x53bb[1689]]();this[_0x53bb[2886]]= new mxConstraintHandler(this[_0x53bb[1179]]);this[_0x53bb[1525]]=[];this[_0x53bb[2997]]=this[_0x53bb[2998]](this[_0x53bb[724]]);this[_0x53bb[253]]=this[_0x53bb[2963]](this[_0x53bb[2997]]);this[_0x53bb[253]][_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[2334]]:mxConstants[_0x53bb[508]];this[_0x53bb[253]][_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]());this[_0x53bb[253]][_0x53bb[1564]]=0;this[_0x53bb[253]][_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[2831]];mxEvent[_0x53bb[169]](this[_0x53bb[253]][_0x53bb[252]],_0x53bb[760],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[761]](_0x39abx2,this[_0x53bb[724]][_0x53bb[246]])}));mxEvent[_0x53bb[759]](this[_0x53bb[253]][_0x53bb[252]],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[2771]]&&this[_0x53bb[2999]](_0x39abx2)?this[_0x53bb[3000]](this[_0x53bb[724]],_0x39abx2):this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x39abx2,this[_0x53bb[724]]))}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){var _0x39abx4=this[_0x53bb[724]][_0x53bb[246]];if(null!=this[_0x53bb[1983]]){var _0x39abx5=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx2),mxEvent[_0x53bb[733]](_0x39abx2)),_0x39abx4=this[_0x53bb[1179]][_0x53bb[999]](_0x39abx5[_0x53bb[235]],_0x39abx5[_0x53bb[236]]);this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx4)&&this[_0x53bb[1179]][_0x53bb[2688]](_0x39abx4,_0x39abx5[_0x53bb[235]],_0x39abx5[_0x53bb[236]])&&(_0x39abx4=null)};this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x39abx2,this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx4)))}),mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x39abx2,this[_0x53bb[724]]))}));this[_0x53bb[574]]=null!=this[_0x53bb[724]][_0x53bb[963]]&&this[_0x53bb[724]][_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]];if(!this[_0x53bb[574]]){var _0x39abx2=this[_0x53bb[724]][_0x53bb[2089]](!0);null!=_0x39abx2&&(this[_0x53bb[574]]=null!=_0x39abx2[_0x53bb[963]]&&_0x39abx2[_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]);this[_0x53bb[574]]||(_0x39abx2=this[_0x53bb[724]][_0x53bb[2089]](!1),null!=_0x39abx2&&(this[_0x53bb[574]]=null!=_0x39abx2[_0x53bb[963]]&&_0x39abx2[_0x53bb[963]][_0x53bb[252]][_0x53bb[265]]==this[_0x53bb[1179]][_0x53bb[526]]))};if(this[_0x53bb[1179]][_0x53bb[2694]]()<mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]||0>=mxGraphHandler[_0x53bb[202]][_0x53bb[2795]]){this[_0x53bb[2994]]=this[_0x53bb[3001]]()};this[_0x53bb[685]]= new mxPoint(this[_0x53bb[724]][_0x53bb[2079]][_0x53bb[235]],this[_0x53bb[724]][_0x53bb[2079]][_0x53bb[236]]);this[_0x53bb[2972]]= new mxRectangleShape( new mxRectangle,mxConstants.LABEL_HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR);this[_0x53bb[2972]][_0x53bb[1229]]= !1;this[_0x53bb[3002]](this[_0x53bb[2972]]);this[_0x53bb[2972]][_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3003]];mxEvent[_0x53bb[2733]](this[_0x53bb[2972]][_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);this[_0x53bb[258]]()};mxEdgeHandler[_0x53bb[202]][_0x53bb[2999]]=function(_0x39abx2){return mxEvent[_0x53bb[774]](_0x39abx2)};mxEdgeHandler[_0x53bb[202]][_0x53bb[3004]]=function(_0x39abx2){return mxEvent[_0x53bb[774]](_0x39abx2)};mxEdgeHandler[_0x53bb[202]][_0x53bb[2998]]=function(_0x39abx2){return _0x39abx2[_0x53bb[439]]};mxEdgeHandler[_0x53bb[202]][_0x53bb[2963]]=function(_0x39abx2){_0x39abx2= new mxPolyline(_0x39abx2,this[_0x53bb[2975]]());_0x39abx2[_0x53bb[1307]]=this[_0x53bb[2976]]();_0x39abx2[_0x53bb[1522]]=this[_0x53bb[2977]]();return _0x39abx2};mxEdgeHandler[_0x53bb[202]][_0x53bb[2975]]=function(){return mxConstants[_0x53bb[3005]]};mxEdgeHandler[_0x53bb[202]][_0x53bb[2976]]=function(){return mxConstants[_0x53bb[3006]]};mxEdgeHandler[_0x53bb[202]][_0x53bb[2977]]=function(){return mxConstants[_0x53bb[3007]]};mxEdgeHandler[_0x53bb[202]][_0x53bb[2907]]=function(_0x39abx2){return !0};mxEdgeHandler[_0x53bb[202]][_0x53bb[1689]]=function(){var _0x39abx2= new mxCellMarker(this[_0x53bb[1179]]),_0x39abx3=this;_0x39abx2[_0x53bb[736]]=function(_0x39abx2){var _0x39abx5=mxCellMarker[_0x53bb[202]][_0x53bb[736]][_0x53bb[183]](this,arguments);if(!_0x39abx3[_0x53bb[2907]](_0x39abx5)){return null};var _0x39abx9=_0x39abx3[_0x53bb[1179]][_0x53bb[502]]();if(_0x39abx5==_0x39abx3[_0x53bb[724]][_0x53bb[246]]||null!=_0x39abx5&&!_0x39abx3[_0x53bb[1179]][_0x53bb[2405]]&&_0x39abx9[_0x53bb[250]](_0x39abx5)){_0x39abx5=null};return _0x39abx5};_0x39abx2[_0x53bb[2872]]=function(_0x39abx2){var _0x39abx5=_0x39abx3[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx3[_0x53bb[1179]][_0x53bb[441]][_0x53bb[2292]](_0x39abx2,_0x39abx3[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](_0x39abx5[_0x53bb[1709]](_0x39abx3[_0x53bb[724]][_0x53bb[246]],!_0x39abx3[_0x53bb[729]])),!_0x39abx3[_0x53bb[729]]),_0x39abx5=null!=_0x39abx5?_0x39abx5[_0x53bb[246]]:null;_0x39abx3[_0x53bb[267]]=_0x39abx3[_0x53bb[2909]](_0x39abx3[_0x53bb[729]]?_0x39abx2[_0x53bb[246]]:_0x39abx5,_0x39abx3[_0x53bb[729]]?_0x39abx5:_0x39abx2[_0x53bb[246]]);return null==_0x39abx3[_0x53bb[267]]};return _0x39abx2};mxEdgeHandler[_0x53bb[202]][_0x53bb[2909]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[1179]][_0x53bb[2500]](this[_0x53bb[724]][_0x53bb[246]],_0x39abx2,_0x39abx3)};mxEdgeHandler[_0x53bb[202]][_0x53bb[3001]]=function(){for(var _0x39abx2=this[_0x53bb[724]][_0x53bb[246]],_0x39abx3=[],_0x39abx4=0;_0x39abx4<this[_0x53bb[2997]][_0x53bb[67]];_0x39abx4++){if(this[_0x53bb[3008]](_0x39abx4)){var _0x39abx5=_0x39abx4==this[_0x53bb[2997]][_0x53bb[67]]-1;if((_0x39abx5=0==_0x39abx4||_0x39abx5)||this[_0x53bb[1179]][_0x53bb[2662]](_0x39abx2)){var _0x39abx9=this[_0x53bb[3009]](_0x39abx4);this[_0x53bb[3002]](_0x39abx9);mxClient[_0x53bb[754]]&&_0x39abx9[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130]);if(this[_0x53bb[3010]](_0x39abx4)){if(mxClient[_0x53bb[754]]){var _0x39abxa=mxUtils[_0x53bb[885]](this,function(_0x39abx2){_0x39abx2=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx2),mxEvent[_0x53bb[733]](_0x39abx2));return this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[248]](this[_0x53bb[1179]][_0x53bb[999]](_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]]))});mxEvent[_0x53bb[2733]](_0x39abx9[_0x53bb[252]],this[_0x53bb[1179]],_0x39abxa)}else {_0x39abx9[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3011]],mxEvent[_0x53bb[2733]](_0x39abx9[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]])}};_0x39abx3[_0x53bb[207]](_0x39abx9);_0x39abx5||(this[_0x53bb[1525]][_0x53bb[207]]( new mxPoint(0,0)),_0x39abx9[_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188])}}};return _0x39abx3};mxEdgeHandler[_0x53bb[202]][_0x53bb[3010]]=function(_0x39abx2){return !0};mxEdgeHandler[_0x53bb[202]][_0x53bb[3008]]=function(_0x39abx2){return !0};mxEdgeHandler[_0x53bb[202]][_0x53bb[3009]]=function(_0x39abx2){if(null!=this[_0x53bb[2959]]){return new mxImageShape( new mxRectangle(0,0,this[_0x53bb[2959]][_0x53bb[117]],this[_0x53bb[2959]][_0x53bb[119]]),this[_0x53bb[2959]][_0x53bb[390]])};_0x39abx2=mxConstants[_0x53bb[2974]];this[_0x53bb[574]]&&(_0x39abx2-=1);return new mxRectangleShape( new mxRectangle(0,0,_0x39abx2,_0x39abx2),mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};mxEdgeHandler[_0x53bb[202]][_0x53bb[3002]]=function(_0x39abx2){this[_0x53bb[574]]?(_0x39abx2[_0x53bb[507]]=mxConstants[_0x53bb[1656]],_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[526]])):(_0x39abx2[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[2334]]:mxConstants[_0x53bb[508]],_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]()))};mxEdgeHandler[_0x53bb[202]][_0x53bb[2986]]=function(_0x39abx2){if(null!=this[_0x53bb[2994]]){for(var _0x39abx3=this[_0x53bb[2353]],_0x39abx3=this[_0x53bb[2958]]&&(mxClient[_0x53bb[80]]||0<_0x39abx3)? new mxRectangle(_0x39abx2[_0x53bb[734]]()-_0x39abx3,_0x39abx2[_0x53bb[735]]()-_0x39abx3,2*_0x39abx3,2*_0x39abx3):null,_0x39abx4=0;_0x39abx4<this[_0x53bb[2994]][_0x53bb[67]];_0x39abx4++){if((_0x39abx2[_0x53bb[729]](this[_0x53bb[2994]][_0x39abx4])||null!=_0x39abx3&&mxUtils[_0x53bb[1825]](this[_0x53bb[2994]][_0x39abx4][_0x53bb[1562]],_0x39abx3))&&_0x53bb[188]!=this[_0x53bb[2994]][_0x39abx4][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]){return _0x39abx4}}};if(_0x39abx2[_0x53bb[729]](this[_0x53bb[2972]])&&_0x53bb[188]!=this[_0x53bb[2972]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]||_0x39abx2[_0x53bb[729]](this[_0x53bb[724]][_0x53bb[963]])){if(!mxClient[_0x53bb[75]]&&!mxClient[_0x53bb[76]]||_0x53bb[2822]!=_0x39abx2[_0x53bb[728]]()[_0x53bb[301]]){return mxEvent[_0x53bb[2987]]}};return null};mxEdgeHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null,_0x39abx4=this[_0x53bb[2986]](_0x39abx3);null!=_0x39abx4&&(!_0x39abx3[_0x53bb[721]]()&&this[_0x53bb[1179]][_0x53bb[994]]()&&!this[_0x53bb[1179]][_0x53bb[2579]](_0x39abx3[_0x53bb[727]]()))&&(this[_0x53bb[2995]]&&this[_0x53bb[3004]](_0x39abx3[_0x53bb[727]]())?this[_0x53bb[3012]](this[_0x53bb[724]],_0x39abx4):(_0x39abx4!=mxEvent[_0x53bb[2987]]||this[_0x53bb[1179]][_0x53bb[2628]](_0x39abx3[_0x53bb[736]]()))&&this[_0x53bb[861]](_0x39abx3[_0x53bb[730]](),_0x39abx3[_0x53bb[732]](),_0x39abx4),_0x39abx3[_0x53bb[722]]())};mxEdgeHandler[_0x53bb[202]][_0x53bb[861]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[2739]]=_0x39abx2;this[_0x53bb[2740]]=_0x39abx3;this[_0x53bb[729]]=null==this[_0x53bb[2994]]?!1:0==_0x39abx4;this[_0x53bb[3013]]=null==this[_0x53bb[2994]]?!1:_0x39abx4==this[_0x53bb[2994]][_0x53bb[67]]-1;this[_0x53bb[3014]]=_0x39abx4==mxEvent[_0x53bb[2987]];if(this[_0x53bb[729]]||this[_0x53bb[3013]]){if(_0x39abx2=this[_0x53bb[724]][_0x53bb[246]],_0x39abx3=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[1709]](_0x39abx2,this[_0x53bb[729]]),null==_0x39abx3&&this[_0x53bb[1179]][_0x53bb[2661]](_0x39abx2,this[_0x53bb[729]])||null!=_0x39abx3&&this[_0x53bb[1179]][_0x53bb[2551]](_0x39abx2,_0x39abx3,this[_0x53bb[729]])){this[_0x53bb[1983]]=_0x39abx4}}else {this[_0x53bb[1983]]=_0x39abx4}};mxEdgeHandler[_0x53bb[202]][_0x53bb[3015]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[724]][_0x53bb[238]]()};mxEdgeHandler[_0x53bb[202]][_0x53bb[3016]]=function(){return this[_0x53bb[1179]][_0x53bb[1020]]*this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]]/2};mxEdgeHandler[_0x53bb[202]][_0x53bb[2689]]=function(_0x39abx2){var _0x39abx3= new mxPoint(_0x39abx2[_0x53bb[734]](),_0x39abx2[_0x53bb[735]]()),_0x39abx4=this[_0x53bb[3016]](),_0x39abx5=this[_0x53bb[1179]][_0x53bb[249]](),_0x39abx9=!1,_0x39abxa=!1;if(this[_0x53bb[2996]]&&0<_0x39abx4){var _0x39abx12=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx5=_0x39abx2[_0x53bb[235]];Math[_0x53bb[425]](_0x39abx3[_0x53bb[235]]-_0x39abx5)<_0x39abx4&&(_0x39abx3[_0x53bb[235]]=_0x39abx5,_0x39abx9= !0);_0x39abx2=_0x39abx2[_0x53bb[236]];Math[_0x53bb[425]](_0x39abx3[_0x53bb[236]]-_0x39abx2)<_0x39abx4&&(_0x39abx3[_0x53bb[236]]=_0x39abx2,_0x39abxa= !0)}},_0x39abx13=function(_0x39abx2){null!=_0x39abx2&&_0x39abx12[_0x53bb[239]](this, new mxPoint(_0x39abx5[_0x53bb[2230]](_0x39abx2),_0x39abx5[_0x53bb[2228]](_0x39abx2)))};_0x39abx13[_0x53bb[239]](this,this[_0x53bb[724]][_0x53bb[2089]](!0));_0x39abx13[_0x53bb[239]](this,this[_0x53bb[724]][_0x53bb[2089]](!1));if(null!=this[_0x53bb[2997]]){for(_0x39abx13=0;_0x39abx13<this[_0x53bb[2997]];_0x39abx13++){_0x39abx13!=this[_0x53bb[1983]]&&_0x39abx12[_0x53bb[239]](this,this[_0x53bb[2997]][_0x39abx13])}}};this[_0x53bb[1179]][_0x53bb[1018]](_0x39abx2[_0x53bb[727]]())&&(_0x39abx2=_0x39abx5[_0x53bb[255]],_0x39abx13=_0x39abx5[_0x53bb[513]],_0x39abx9||(_0x39abx3[_0x53bb[235]]=(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx3[_0x53bb[235]]/_0x39abx2-_0x39abx13[_0x53bb[235]])+_0x39abx13[_0x53bb[235]])*_0x39abx2),_0x39abxa||(_0x39abx3[_0x53bb[236]]=(this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx3[_0x53bb[236]]/_0x39abx2-_0x39abx13[_0x53bb[236]])+_0x39abx13[_0x53bb[236]])*_0x39abx2));return _0x39abx3};mxEdgeHandler[_0x53bb[202]][_0x53bb[3017]]=function(_0x39abx2){this[_0x53bb[2886]][_0x53bb[2729]](_0x39abx2,this[_0x53bb[729]]);this[_0x53bb[2885]][_0x53bb[2871]](_0x39abx2);_0x39abx2=this[_0x53bb[2885]][_0x53bb[2868]]();var _0x39abx3=null;null!=this[_0x53bb[2886]][_0x53bb[2919]]&&null!=this[_0x53bb[2886]][_0x53bb[2920]]&&this[_0x53bb[2885]][_0x53bb[862]]();null!=_0x39abx2?_0x39abx3=_0x39abx2:null!=this[_0x53bb[2886]][_0x53bb[2920]]&&null!=this[_0x53bb[2886]][_0x53bb[2919]]&&(_0x39abx3=this[_0x53bb[2886]][_0x53bb[2919]]);return _0x39abx3};mxEdgeHandler[_0x53bb[202]][_0x53bb[3018]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[1198]](this[_0x53bb[724]][_0x53bb[246]]),_0x39abx3=null!=_0x39abx3[_0x53bb[1525]]?_0x39abx3[_0x53bb[1525]][_0x53bb[1853]]():null;!this[_0x53bb[729]]&&!this[_0x53bb[3013]]?(this[_0x53bb[2196]](_0x39abx2,!1),null==_0x39abx3?_0x39abx3=[_0x39abx2]:_0x39abx3[this[_0x53bb[1983]]-1]=_0x39abx2):this[_0x53bb[1179]][_0x53bb[2401]]&&(_0x39abx3=null);return _0x39abx3};mxEdgeHandler[_0x53bb[202]][_0x53bb[3019]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[729]]?_0x39abx4:this[_0x53bb[724]][_0x53bb[2089]](!0),_0x39abx9=this[_0x53bb[3013]]?_0x39abx4:this[_0x53bb[724]][_0x53bb[2089]](!1),_0x39abxa=this[_0x53bb[1179]][_0x53bb[2288]](_0x39abx2,_0x39abx5,!0),_0x39abx12=this[_0x53bb[1179]][_0x53bb[2288]](_0x39abx2,_0x39abx9,!1),_0x39abx13=this[_0x53bb[2886]][_0x53bb[2920]];null==_0x39abx13&&(_0x39abx13= new mxConnectionConstraint);this[_0x53bb[729]]?_0x39abxa=_0x39abx13:this[_0x53bb[3013]]&&(_0x39abx12=_0x39abx13);(!this[_0x53bb[729]]||null!=_0x39abx5)&&_0x39abx2[_0x53bb[441]][_0x53bb[2289]](_0x39abx2,_0x39abx5,!0,_0x39abxa);(!this[_0x53bb[3013]]||null!=_0x39abx9)&&_0x39abx2[_0x53bb[441]][_0x53bb[2289]](_0x39abx2,_0x39abx9,!1,_0x39abx12);if((this[_0x53bb[729]]||this[_0x53bb[3013]])&&null==_0x39abx4){_0x39abx2[_0x53bb[2088]](_0x39abx3,this[_0x53bb[729]]),null==this[_0x53bb[2885]][_0x53bb[2869]]()&&(this[_0x53bb[267]]=this[_0x53bb[1179]][_0x53bb[2406]]?null:_0x53bb[110])};_0x39abx2[_0x53bb[441]][_0x53bb[2282]](_0x39abx2,this[_0x53bb[1525]],_0x39abx5,_0x39abx9);_0x39abx2[_0x53bb[441]][_0x53bb[2283]](_0x39abx2,_0x39abx5,_0x39abx9)};mxEdgeHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[1983]]&&null!=this[_0x53bb[2885]]){var _0x39abx4=this[_0x53bb[2689]](_0x39abx3);if(this[_0x53bb[3014]]){this[_0x53bb[685]][_0x53bb[235]]=_0x39abx4[_0x53bb[235]],this[_0x53bb[685]][_0x53bb[236]]=_0x39abx4[_0x53bb[236]]}else {this[_0x53bb[1525]]=this[_0x53bb[3018]](_0x39abx4);var _0x39abx5=this[_0x53bb[729]]||this[_0x53bb[3013]]?this[_0x53bb[3017]](_0x39abx3):null,_0x39abx9=this[_0x53bb[3015]](_0x39abx4,null!=_0x39abx5?_0x39abx5[_0x53bb[246]]:null);this[_0x53bb[3019]](_0x39abx9,_0x39abx4,_0x39abx5);this[_0x53bb[3020]](null==this[_0x53bb[267]]?this[_0x53bb[2885]][_0x53bb[2853]]:this[_0x53bb[2885]][_0x53bb[2855]]);this[_0x53bb[2997]]=_0x39abx9[_0x53bb[439]];this[_0x53bb[1124]]= !0};this[_0x53bb[2932]]();mxEvent[_0x53bb[722]](_0x39abx3[_0x53bb[727]]());_0x39abx3[_0x53bb[722]]()}else {mxClient[_0x53bb[80]]&&null!=this[_0x53bb[2986]](_0x39abx3)&&_0x39abx3[_0x53bb[722]](!1)}};mxEdgeHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){if(null!=this[_0x53bb[1983]]&&null!=this[_0x53bb[2885]]){var _0x39abx4=this[_0x53bb[724]][_0x53bb[246]];if(_0x39abx3[_0x53bb[730]]()!=this[_0x53bb[2739]]||_0x39abx3[_0x53bb[732]]()!=this[_0x53bb[2740]]){if(null!=this[_0x53bb[267]]){0<this[_0x53bb[267]][_0x53bb[67]]&&this[_0x53bb[1179]][_0x53bb[2580]](this[_0x53bb[267]])}else {if(this[_0x53bb[3014]]){this[_0x53bb[3021]](this[_0x53bb[724]],this[_0x53bb[685]][_0x53bb[235]],this[_0x53bb[685]][_0x53bb[236]])}else {if(this[_0x53bb[729]]||this[_0x53bb[3013]]){var _0x39abx5=null;null!=this[_0x53bb[2886]][_0x53bb[2920]]&&null!=this[_0x53bb[2886]][_0x53bb[2919]]&&(_0x39abx5=this[_0x53bb[2886]][_0x53bb[2919]][_0x53bb[246]]);null==_0x39abx5&&this[_0x53bb[2885]][_0x53bb[2867]]()&&(_0x39abx5=this[_0x53bb[2885]][_0x53bb[2861]][_0x53bb[246]]);if(null!=_0x39abx5){_0x39abx4=this[_0x53bb[807]](_0x39abx4,_0x39abx5,this[_0x53bb[729]],this[_0x53bb[1179]][_0x53bb[2574]](_0x39abx3[_0x53bb[727]]())&&this[_0x53bb[2797]]&&this[_0x53bb[1179]][_0x53bb[2617]](),_0x39abx3)}else {if(this[_0x53bb[1179]][_0x53bb[2530]]()){_0x39abx5=this[_0x53bb[2997]][this[_0x53bb[729]]?0:this[_0x53bb[2997]][_0x53bb[67]]-1];_0x39abx5[_0x53bb[235]]=_0x39abx5[_0x53bb[235]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]]-this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[513]][_0x53bb[235]];_0x39abx5[_0x53bb[236]]=_0x39abx5[_0x53bb[236]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]]-this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[513]][_0x53bb[236]];var _0x39abx9=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](_0x39abx4));null!=_0x39abx9&&(_0x39abx5[_0x53bb[235]]-=_0x39abx9[_0x53bb[2078]][_0x53bb[235]],_0x39abx5[_0x53bb[236]]-=_0x39abx9[_0x53bb[2078]][_0x53bb[236]]);_0x39abx5[_0x53bb[235]]-=this[_0x53bb[1179]][_0x53bb[1136]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];_0x39abx5[_0x53bb[236]]-=this[_0x53bb[1179]][_0x53bb[1137]]/this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];this[_0x53bb[3022]](_0x39abx4,_0x39abx5,this[_0x53bb[729]])}}}else {this[_0x53bb[1124]]?this[_0x53bb[3023]](_0x39abx4,this[_0x53bb[1525]]):(this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[2263]](this[_0x53bb[724]][_0x53bb[246]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[2259]](this[_0x53bb[724]][_0x53bb[246]]))}}}};null!=this[_0x53bb[2885]]&&(this[_0x53bb[862]](),_0x39abx4!=this[_0x53bb[724]][_0x53bb[246]]&&this[_0x53bb[1179]][_0x53bb[2450]](_0x39abx4));_0x39abx3[_0x53bb[722]]()}};mxEdgeHandler[_0x53bb[202]][_0x53bb[862]]=function(){this[_0x53bb[1525]]=this[_0x53bb[685]]=this[_0x53bb[1983]]=this[_0x53bb[267]]=null;this[_0x53bb[3013]]=this[_0x53bb[729]]=this[_0x53bb[3014]]=this[_0x53bb[1124]]= !1;this[_0x53bb[2885]][_0x53bb[862]]();this[_0x53bb[2886]][_0x53bb[862]]();this[_0x53bb[3020]](mxConstants.EDGE_SELECTION_COLOR);this[_0x53bb[258]]()};mxEdgeHandler[_0x53bb[202]][_0x53bb[3020]]=function(_0x39abx2){null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[1336]]=_0x39abx2)};mxEdgeHandler[_0x53bb[202]][_0x53bb[2196]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[518]](),_0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[512]]();_0x39abx3&&(_0x39abx2[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[235]]),_0x39abx2[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[236]]));_0x39abx2[_0x53bb[235]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[235]]/_0x39abx4-_0x39abx5[_0x53bb[235]]);_0x39abx2[_0x53bb[236]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[236]]/_0x39abx4-_0x39abx5[_0x53bb[236]]);_0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1197]](this[_0x53bb[724]][_0x53bb[246]]));null!=_0x39abx4&&(_0x39abx2[_0x53bb[235]]-=_0x39abx4[_0x53bb[2078]][_0x53bb[235]],_0x39abx2[_0x53bb[236]]-=_0x39abx4[_0x53bb[2078]][_0x53bb[236]]);return _0x39abx2};mxEdgeHandler[_0x53bb[202]][_0x53bb[3021]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[1721]](_0x39abx2[_0x53bb[246]]);if(null!=_0x39abx9){var _0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abxa=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[2308]](_0x39abx2,_0x39abx3,_0x39abx4);_0x39abx9[_0x53bb[235]]=_0x39abxa[_0x53bb[235]];_0x39abx9[_0x53bb[236]]=_0x39abxa[_0x53bb[236]];var _0x39abx12=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]];_0x39abx9[_0x53bb[1368]]= new mxPoint(0,0);_0x39abxa=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[245]](_0x39abx2,_0x39abx9);_0x39abx9[_0x53bb[1368]]= new mxPoint((_0x39abx3-_0x39abxa[_0x53bb[235]])/_0x39abx12,(_0x39abx4-_0x39abxa[_0x53bb[236]])/_0x39abx12);_0x39abx5[_0x53bb[1724]](_0x39abx2[_0x53bb[246]],_0x39abx9)}};mxEdgeHandler[_0x53bb[202]][_0x53bb[807]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx9=this[_0x53bb[1179]][_0x53bb[502]]();var _0x39abxa=_0x39abx9[_0x53bb[1197]](_0x39abx2);_0x39abx9[_0x53bb[473]]();try{if(_0x39abx5){var _0x39abx12=_0x39abx2[_0x53bb[238]]();_0x39abx9[_0x53bb[99]](_0x39abxa,_0x39abx12,_0x39abx9[_0x53bb[262]](_0x39abxa));var _0x39abx13=_0x39abx9[_0x53bb[1709]](_0x39abx2,!_0x39abx4);this[_0x53bb[1179]][_0x53bb[851]](_0x39abx12,_0x39abx13,!_0x39abx4);_0x39abx2=_0x39abx12};var _0x39abx14=this[_0x53bb[2886]][_0x53bb[2920]];null==_0x39abx14&&(_0x39abx14= new mxConnectionConstraint);this[_0x53bb[1179]][_0x53bb[851]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx14)}finally{_0x39abx9[_0x53bb[476]]()};return _0x39abx2};mxEdgeHandler[_0x53bb[202]][_0x53bb[3022]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[1721]](_0x39abx2);if(null!=_0x39abx9){_0x39abx5[_0x53bb[473]]();try{_0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abx9[_0x53bb[2007]](_0x39abx3,_0x39abx4),_0x39abx5[_0x53bb[1724]](_0x39abx2,_0x39abx9),this[_0x53bb[1179]][_0x53bb[851]](_0x39abx2,null,_0x39abx4, new mxConnectionConstraint)}finally{_0x39abx5[_0x53bb[476]]()}}};mxEdgeHandler[_0x53bb[202]][_0x53bb[3023]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx5=_0x39abx4[_0x53bb[1721]](_0x39abx2);null!=_0x39abx5&&(_0x39abx5=_0x39abx5[_0x53bb[238]](),_0x39abx5[_0x53bb[1525]]=_0x39abx3,_0x39abx4[_0x53bb[1724]](_0x39abx2,_0x39abx5))};mxEdgeHandler[_0x53bb[202]][_0x53bb[3000]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=mxUtils[_0x53bb[2196]](this[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx3),mxEvent[_0x53bb[733]](_0x39abx3)),_0x39abx5=this[_0x53bb[1179]][_0x53bb[1018]](_0x39abx3);this[_0x53bb[2196]](_0x39abx4,_0x39abx5);this[_0x53bb[3024]](_0x39abx2,_0x39abx4[_0x53bb[235]],_0x39abx4[_0x53bb[236]]);mxEvent[_0x53bb[722]](_0x39abx3)};mxEdgeHandler[_0x53bb[202]][_0x53bb[3024]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[1179]][_0x53bb[1198]](_0x39abx2[_0x53bb[246]]);_0x39abx3= new mxPoint(_0x39abx3,_0x39abx4);if(null!=_0x39abx5){_0x39abx5=_0x39abx5[_0x53bb[238]]();_0x39abx4=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[513]];var _0x39abx9=this[_0x53bb[1179]][_0x53bb[441]][_0x53bb[255]];_0x39abx4=mxUtils[_0x53bb[3025]](_0x39abx2,(_0x39abx3[_0x53bb[235]]+_0x39abx4[_0x53bb[235]])*_0x39abx9,(_0x39abx3[_0x53bb[236]]+_0x39abx4[_0x53bb[236]])*_0x39abx9);null==_0x39abx5[_0x53bb[1525]]?_0x39abx5[_0x53bb[1525]]=[_0x39abx3]:_0x39abx5[_0x53bb[1525]][_0x53bb[300]](_0x39abx4,0,_0x39abx3);this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1724]](_0x39abx2[_0x53bb[246]],_0x39abx5);this[_0x53bb[515]]();this[_0x53bb[176]]()}};mxEdgeHandler[_0x53bb[202]][_0x53bb[3012]]=function(_0x39abx2,_0x39abx3){if(0<_0x39abx3&&_0x39abx3<this[_0x53bb[2997]][_0x53bb[67]]-1){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[1198]](this[_0x53bb[724]][_0x53bb[246]]);null!=_0x39abx4&&null!=_0x39abx4[_0x53bb[1525]]&&(_0x39abx4=_0x39abx4[_0x53bb[238]](),_0x39abx4[_0x53bb[1525]][_0x53bb[300]](_0x39abx3-1,1),this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1724]](_0x39abx2[_0x53bb[246]],_0x39abx4),this[_0x53bb[515]](),this[_0x53bb[176]]())}};mxEdgeHandler[_0x53bb[202]][_0x53bb[3026]]=function(_0x39abx2){_0x39abx2=0==_0x39abx2;var _0x39abx3=this[_0x53bb[724]][_0x53bb[246]],_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1709]](_0x39abx3,_0x39abx2),_0x39abx5=mxConstants[_0x53bb[2984]];null!=_0x39abx4&&!this[_0x53bb[1179]][_0x53bb[2551]](_0x39abx3,_0x39abx4,_0x39abx2)||null==_0x39abx4&&!this[_0x53bb[1179]][_0x53bb[2661]](_0x39abx3,_0x39abx2)?_0x39abx5=mxConstants[_0x53bb[3027]]:null!=_0x39abx4&&this[_0x53bb[1179]][_0x53bb[2551]](_0x39abx3,_0x39abx4,_0x39abx2)&&(_0x39abx5=mxConstants[_0x53bb[3028]]);return _0x39abx5};mxEdgeHandler[_0x53bb[202]][_0x53bb[258]]=function(){this[_0x53bb[2997]]=this[_0x53bb[724]][_0x53bb[439]][_0x53bb[1853]]();var _0x39abx2=this[_0x53bb[724]][_0x53bb[246]],_0x39abx3=mxConstants[_0x53bb[3029]];this[_0x53bb[685]]= new mxPoint(this[_0x53bb[724]][_0x53bb[2079]][_0x53bb[235]],this[_0x53bb[724]][_0x53bb[2079]][_0x53bb[236]]);this[_0x53bb[2972]][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](this[_0x53bb[685]][_0x53bb[235]]-_0x39abx3/2),Math[_0x53bb[488]](this[_0x53bb[685]][_0x53bb[236]]-_0x39abx3/2),_0x39abx3,_0x39abx3);this[_0x53bb[2972]][_0x53bb[258]]();_0x39abx3=this[_0x53bb[1179]][_0x53bb[2183]](_0x39abx2);null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]&&this[_0x53bb[1179]][_0x53bb[2628]](_0x39abx2)?this[_0x53bb[2972]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189]:this[_0x53bb[2972]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188];if(null!=this[_0x53bb[2994]]&&0<this[_0x53bb[2994]][_0x53bb[67]]){var _0x39abx4=this[_0x53bb[2997]][_0x53bb[67]]-1,_0x39abx2=this[_0x53bb[2997]][0],_0x39abx5=this[_0x53bb[2997]][0][_0x53bb[236]],_0x39abx3=this[_0x53bb[2994]][0][_0x53bb[1562]];this[_0x53bb[2994]][0][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](this[_0x53bb[2997]][0][_0x53bb[235]]-_0x39abx3[_0x53bb[117]]/2),Math[_0x53bb[488]](_0x39abx5-_0x39abx3[_0x53bb[119]]/2),_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]]);this[_0x53bb[2994]][0][_0x53bb[1334]]=this[_0x53bb[3026]](0);this[_0x53bb[2994]][0][_0x53bb[258]]();var _0x39abx5=this[_0x53bb[2997]][_0x39abx4],_0x39abx9=this[_0x53bb[2997]][_0x39abx4][_0x53bb[235]],_0x39abx4=this[_0x53bb[2997]][_0x39abx4][_0x53bb[236]],_0x39abxa=this[_0x53bb[2994]][_0x53bb[67]]-1,_0x39abx3=this[_0x53bb[2994]][_0x39abxa][_0x53bb[1562]];this[_0x53bb[2994]][_0x39abxa][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](_0x39abx9-_0x39abx3[_0x53bb[117]]/2),Math[_0x53bb[488]](_0x39abx4-_0x39abx3[_0x53bb[119]]/2),_0x39abx3[_0x53bb[117]],_0x39abx3[_0x53bb[119]]);this[_0x53bb[2994]][_0x39abxa][_0x53bb[1334]]=this[_0x53bb[3026]](_0x39abxa);this[_0x53bb[2994]][_0x39abxa][_0x53bb[258]]();this[_0x53bb[3030]](_0x39abx2,_0x39abx5)};this[_0x53bb[2932]]()};mxEdgeHandler[_0x53bb[202]][_0x53bb[3030]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1721]](this[_0x53bb[724]][_0x53bb[246]])[_0x53bb[1525]];if(null!=_0x39abx4){null==this[_0x53bb[1525]]&&(this[_0x53bb[1525]]=[]);for(var _0x39abx5=1;_0x39abx5<this[_0x53bb[2994]][_0x53bb[67]]-1;_0x39abx5++){if(null!=this[_0x53bb[2994]][_0x39abx5]){if(null!=this[_0x53bb[2997]][_0x39abx5]){var _0x39abx9=this[_0x53bb[2997]][_0x39abx5][_0x53bb[235]],_0x39abxa=this[_0x53bb[2997]][_0x39abx5][_0x53bb[236]],_0x39abx12=this[_0x53bb[2994]][_0x39abx5][_0x53bb[1562]];this[_0x53bb[2994]][_0x39abx5][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[189];this[_0x53bb[2994]][_0x39abx5][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](_0x39abx9-_0x39abx12[_0x53bb[117]]/2),Math[_0x53bb[488]](_0x39abxa-_0x39abx12[_0x53bb[119]]/2),_0x39abx12[_0x53bb[117]],_0x39abx12[_0x53bb[119]]);this[_0x53bb[2994]][_0x39abx5][_0x53bb[258]]();this[_0x53bb[1525]][_0x39abx5-1]=_0x39abx4[_0x39abx5-1]}else {this[_0x53bb[2994]][_0x39abx5][_0x53bb[515]](),this[_0x53bb[2994]][_0x39abx5]=null}}}}};mxEdgeHandler[_0x53bb[202]][_0x53bb[2932]]=function(){if(this[_0x53bb[3014]]){var _0x39abx2=mxConstants[_0x53bb[3029]],_0x39abx2= new mxRectangle(Math[_0x53bb[488]](this[_0x53bb[685]][_0x53bb[235]]-_0x39abx2/2),Math[_0x53bb[488]](this[_0x53bb[685]][_0x53bb[236]]-_0x39abx2/2),_0x39abx2,_0x39abx2);this[_0x53bb[2972]][_0x53bb[1562]]=_0x39abx2;this[_0x53bb[2972]][_0x53bb[258]]()}else {this[_0x53bb[253]][_0x53bb[1525]]=this[_0x53bb[2997]],this[_0x53bb[253]][_0x53bb[258]]()}};mxEdgeHandler[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[2885]]&&(this[_0x53bb[2885]][_0x53bb[515]](),this[_0x53bb[2885]]=null);null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null);null!=this[_0x53bb[2972]]&&(this[_0x53bb[2972]][_0x53bb[515]](),this[_0x53bb[2972]]=null);null!=this[_0x53bb[2886]]&&(this[_0x53bb[2886]][_0x53bb[515]](),this[_0x53bb[2886]]=null);if(null!=this[_0x53bb[2994]]){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[2994]][_0x53bb[67]];_0x39abx2++){null!=this[_0x53bb[2994]][_0x39abx2]&&(this[_0x53bb[2994]][_0x39abx2][_0x53bb[515]](),this[_0x53bb[2994]][_0x39abx2]=null)}}};function mxElbowEdgeHandler(_0x39abx2){mxEdgeHandler[_0x53bb[239]](this,_0x39abx2)}mxUtils[_0x53bb[1284]](mxElbowEdgeHandler,mxEdgeHandler);mxElbowEdgeHandler[_0x53bb[202]]= new mxEdgeHandler;mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[196]]=mxElbowEdgeHandler;mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3031]]= !0;mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3032]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[3033]:_0x53bb[110];mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3001]]=function(){var _0x39abx2=[],_0x39abx3=this[_0x53bb[3009]](0);this[_0x53bb[3002]](_0x39abx3);_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3011]];mxEvent[_0x53bb[2733]](_0x39abx3[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);_0x39abx2[_0x53bb[207]](_0x39abx3);mxClient[_0x53bb[754]]&&_0x39abx3[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130]);_0x39abx2[_0x53bb[207]](this[_0x53bb[3034]]());this[_0x53bb[1525]][_0x53bb[207]]( new mxPoint(0,0));_0x39abx3=this[_0x53bb[3009]](2);this[_0x53bb[3002]](_0x39abx3);_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3011]];mxEvent[_0x53bb[2733]](_0x39abx3[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);_0x39abx2[_0x53bb[207]](_0x39abx3);mxClient[_0x53bb[754]]&&_0x39abx3[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130]);return _0x39abx2};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3034]]=function(){var _0x39abx2=this[_0x53bb[3009]]();this[_0x53bb[3002]](_0x39abx2);var _0x39abx3=this[_0x53bb[3035]]();_0x39abx2[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=_0x39abx3;_0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx2){!mxEvent[_0x53bb[721]](_0x39abx2)&&this[_0x53bb[3031]]&&(this[_0x53bb[1179]][_0x53bb[854]](this[_0x53bb[724]][_0x53bb[246]],_0x39abx2),mxEvent[_0x53bb[722]](_0x39abx2))});mxEvent[_0x53bb[2733]](_0x39abx2[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]],null,null,null,_0x39abx3);this[_0x53bb[1179]][_0x53bb[2662]](this[_0x53bb[724]][_0x53bb[246]])||(_0x39abx2[_0x53bb[252]][_0x53bb[124]][_0x53bb[495]]=_0x53bb[130]);return _0x39abx2};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3035]]=function(){return this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2294]]]==mxEdgeStyle[_0x53bb[2570]]||this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2294]]]==mxConstants[_0x53bb[3036]]||(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2294]]]==mxEdgeStyle[_0x53bb[2568]]||this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2294]]]==mxConstants[_0x53bb[3037]])&&this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2231]]]==mxConstants[_0x53bb[2232]]?_0x53bb[3038]:_0x53bb[3039]};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[2597]]=function(_0x39abx2){var _0x39abx3=null;if(null!=this[_0x53bb[2994]]&&null!=this[_0x53bb[2994]][1]&&(_0x39abx2==this[_0x53bb[2994]][1][_0x53bb[252]]||_0x39abx2[_0x53bb[265]]==this[_0x53bb[2994]][1][_0x53bb[252]])){_0x39abx3=this[_0x53bb[3032]],_0x39abx3=mxResources[_0x53bb[203]](_0x39abx3)||_0x39abx3};return _0x39abx3};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[2196]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[518]](),_0x39abx5=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[512]](),_0x39abx9=this[_0x53bb[724]][_0x53bb[2078]];_0x39abx3&&(_0x39abx2[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[235]]),_0x39abx2[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx2[_0x53bb[236]]));_0x39abx2[_0x53bb[235]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[235]]/_0x39abx4-_0x39abx5[_0x53bb[235]]-_0x39abx9[_0x53bb[235]]);_0x39abx2[_0x53bb[236]]=Math[_0x53bb[488]](_0x39abx2[_0x53bb[236]]/_0x39abx4-_0x39abx5[_0x53bb[236]]-_0x39abx9[_0x53bb[236]])};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3030]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1721]](this[_0x53bb[724]][_0x53bb[246]])[_0x53bb[1525]],_0x39abx4=null!=_0x39abx4?_0x39abx4[0]:null,_0x39abx4=null==_0x39abx4? new mxPoint(_0x39abx2[_0x53bb[235]]+(_0x39abx3[_0x53bb[235]]-_0x39abx2[_0x53bb[235]])/2,_0x39abx2[_0x53bb[236]]+(_0x39abx3[_0x53bb[236]]-_0x39abx2[_0x53bb[236]])/2): new mxPoint(this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]]*(_0x39abx4[_0x53bb[235]]+this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]][_0x53bb[235]]+this[_0x53bb[724]][_0x53bb[2078]][_0x53bb[235]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]]*(_0x39abx4[_0x53bb[236]]+this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]][_0x53bb[236]]+this[_0x53bb[724]][_0x53bb[2078]][_0x53bb[236]])),_0x39abx5=this[_0x53bb[2994]][1][_0x53bb[1562]],_0x39abx9=_0x39abx5[_0x53bb[117]],_0x39abx5=_0x39abx5[_0x53bb[119]];null==this[_0x53bb[2959]]&&(_0x39abx5=_0x39abx9=mxConstants[_0x53bb[2974]]);var _0x39abxa= new mxRectangle(Math[_0x53bb[488]](_0x39abx4[_0x53bb[235]]-_0x39abx9/2),Math[_0x53bb[488]](_0x39abx4[_0x53bb[236]]-_0x39abx5/2),_0x39abx9,_0x39abx5);null==this[_0x53bb[2959]]&&(_0x53bb[188]!=this[_0x53bb[2972]][_0x53bb[252]][_0x53bb[124]][_0x53bb[187]]&&mxUtils[_0x53bb[1825]](_0x39abxa,this[_0x53bb[2972]][_0x53bb[1562]]))&&(_0x39abx9+=3,_0x39abx5+=3,_0x39abxa= new mxRectangle(Math[_0x53bb[488]](_0x39abx4[_0x53bb[235]]-_0x39abx9/2),Math[_0x53bb[488]](_0x39abx4[_0x53bb[236]]-_0x39abx5/2),_0x39abx9,_0x39abx5));this[_0x53bb[2994]][1][_0x53bb[1562]]=_0x39abxa;this[_0x53bb[2994]][1][_0x53bb[258]]()};function mxEdgeSegmentHandler(_0x39abx2){mxEdgeHandler[_0x53bb[239]](this,_0x39abx2)}mxUtils[_0x53bb[1284]](mxEdgeSegmentHandler,mxEdgeHandler);mxEdgeSegmentHandler[_0x53bb[202]]= new mxElbowEdgeHandler;mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[196]]=mxEdgeSegmentHandler;mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[3018]]=function(_0x39abx2){if(this[_0x53bb[729]]||this[_0x53bb[3013]]){return mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3018]][_0x53bb[183]](this,arguments)};this[_0x53bb[2196]](_0x39abx2,!1);var _0x39abx3=this[_0x53bb[724]][_0x53bb[439]],_0x39abx4=_0x39abx3[0][_0x53bb[238]]();this[_0x53bb[2196]](_0x39abx4,!1);for(var _0x39abx5=[],_0x39abx9=1;_0x39abx9<_0x39abx3[_0x53bb[67]];_0x39abx9++){var _0x39abxa=_0x39abx3[_0x39abx9][_0x53bb[238]]();this[_0x53bb[2196]](_0x39abxa,!1);_0x39abx9==this[_0x53bb[1983]]&&(_0x39abx4[_0x53bb[235]]==_0x39abxa[_0x53bb[235]]?(_0x39abx4[_0x53bb[235]]=_0x39abx2[_0x53bb[235]],_0x39abxa[_0x53bb[235]]=_0x39abx2[_0x53bb[235]]):(_0x39abx4[_0x53bb[236]]=_0x39abx2[_0x53bb[236]],_0x39abxa[_0x53bb[236]]=_0x39abx2[_0x53bb[236]]));_0x39abx9<_0x39abx3[_0x53bb[67]]-1&&_0x39abx5[_0x53bb[207]](_0x39abxa);_0x39abx4=_0x39abxa};if(1==_0x39abx5[_0x53bb[67]]){if(_0x39abx4=this[_0x53bb[724]][_0x53bb[441]],_0x39abx9=this[_0x53bb[724]][_0x53bb[2089]](!0),_0x39abxa=this[_0x53bb[724]][_0x53bb[2089]](!1),null!=_0x39abxa&null!=_0x39abx9){var _0x39abx12=this[_0x53bb[724]][_0x53bb[2078]][_0x53bb[235]],_0x39abx13=this[_0x53bb[724]][_0x53bb[2078]][_0x53bb[236]];mxUtils[_0x53bb[442]](_0x39abxa,_0x39abx5[0][_0x53bb[235]]+_0x39abx12,_0x39abx5[0][_0x53bb[236]]+_0x39abx13)?_0x39abx3[1][_0x53bb[236]]==_0x39abx3[2][_0x53bb[236]]?_0x39abx5[0][_0x53bb[236]]=_0x39abx4[_0x53bb[2228]](_0x39abx9)-_0x39abx13:_0x39abx5[0][_0x53bb[235]]=_0x39abx4[_0x53bb[2230]](_0x39abx9)-_0x39abx12:mxUtils[_0x53bb[442]](_0x39abx9,_0x39abx5[0][_0x53bb[235]]+_0x39abx12,_0x39abx5[0][_0x53bb[236]]+_0x39abx13)&&(_0x39abx3[1][_0x53bb[236]]==_0x39abx3[0][_0x53bb[236]]?_0x39abx5[0][_0x53bb[236]]=_0x39abx4[_0x53bb[2228]](_0x39abxa)-_0x39abx13:_0x39abx5[0][_0x53bb[235]]=_0x39abx4[_0x53bb[2230]](_0x39abxa)-_0x39abx12)}}else {0==_0x39abx5[_0x53bb[67]]&&(_0x39abx5=[_0x39abx2])};return _0x39abx5};mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[3001]]=function(){var _0x39abx2=[],_0x39abx3=this[_0x53bb[3009]](0);this[_0x53bb[3002]](_0x39abx3);_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3011]];mxEvent[_0x53bb[2733]](_0x39abx3[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);_0x39abx2[_0x53bb[207]](_0x39abx3);mxClient[_0x53bb[754]]&&_0x39abx3[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130]);var _0x39abx4=this[_0x53bb[724]][_0x53bb[439]];if(this[_0x53bb[1179]][_0x53bb[2662]](this[_0x53bb[724]][_0x53bb[246]])){null==this[_0x53bb[1525]]&&(this[_0x53bb[1525]]=[]);for(var _0x39abx5=0;_0x39abx5<_0x39abx4[_0x53bb[67]]-1;_0x39abx5++){_0x39abx3=this[_0x53bb[3034]](),_0x39abx2[_0x53bb[207]](_0x39abx3),_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=0==_0x39abx4[_0x39abx5][_0x53bb[235]]-_0x39abx4[_0x39abx5+1][_0x53bb[235]]?_0x53bb[3039]:_0x53bb[3038],this[_0x53bb[1525]][_0x53bb[207]]( new mxPoint(0,0)),mxClient[_0x53bb[754]]&&_0x39abx3[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130])}};_0x39abx3=this[_0x53bb[3009]](_0x39abx4[_0x53bb[67]]);this[_0x53bb[3002]](_0x39abx3);_0x39abx3[_0x53bb[252]][_0x53bb[124]][_0x53bb[270]]=mxConstants[_0x53bb[3011]];mxEvent[_0x53bb[2733]](_0x39abx3[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);_0x39abx2[_0x53bb[207]](_0x39abx3);mxClient[_0x53bb[754]]&&_0x39abx3[_0x53bb[252]][_0x53bb[57]](_0x53bb[1377],_0x53bb[130]);return _0x39abx2};mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[258]]=function(){this[_0x53bb[802]]();mxEdgeHandler[_0x53bb[202]][_0x53bb[258]][_0x53bb[183]](this,arguments)};mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[802]]=function(){if(null!=this[_0x53bb[2994]]){for(var _0x39abx2=0;_0x39abx2<this[_0x53bb[2994]][_0x53bb[67]];_0x39abx2++){null!=this[_0x53bb[2994]][_0x39abx2]&&(this[_0x53bb[2994]][_0x39abx2][_0x53bb[515]](),this[_0x53bb[2994]][_0x39abx2]=null)};this[_0x53bb[2994]]=this[_0x53bb[3001]]()}};mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[3030]]=function(_0x39abx2,_0x39abx3){if(this[_0x53bb[1179]][_0x53bb[2662]](this[_0x53bb[724]][_0x53bb[246]])){var _0x39abx4=mxConstants[_0x53bb[2974]],_0x39abx5=this[_0x53bb[724]][_0x53bb[439]];if(null!=_0x39abx5&&1<_0x39abx5[_0x53bb[67]]){for(var _0x39abx9=0;_0x39abx9<this[_0x53bb[724]][_0x53bb[439]][_0x53bb[67]]-1;_0x39abx9++){if(null!=this[_0x53bb[2994]][_0x39abx9+1]){_0x39abx2=_0x39abx5[_0x39abx9];_0x39abx3=_0x39abx5[_0x39abx9+1];var _0x39abxa= new mxPoint(_0x39abx2[_0x53bb[235]]+(_0x39abx3[_0x53bb[235]]-_0x39abx2[_0x53bb[235]])/2,_0x39abx2[_0x53bb[236]]+(_0x39abx3[_0x53bb[236]]-_0x39abx2[_0x53bb[236]])/2);this[_0x53bb[2994]][_0x39abx9+1][_0x53bb[1562]]= new mxRectangle(Math[_0x53bb[488]](_0x39abxa[_0x53bb[235]]-_0x39abx4/2),Math[_0x53bb[488]](_0x39abxa[_0x53bb[236]]-_0x39abx4/2),_0x39abx4,_0x39abx4);this[_0x53bb[2994]][_0x39abx9+1][_0x53bb[258]]()}}}}};mxEdgeSegmentHandler[_0x53bb[202]][_0x53bb[3023]]=function(_0x39abx2,_0x39abx3){_0x39abx3=[];var _0x39abx4=this[_0x53bb[2997]];if(1<_0x39abx4[_0x53bb[67]]){for(var _0x39abx5=_0x39abx4[0],_0x39abx9=_0x39abx4[1],_0x39abxa=2;_0x39abxa<_0x39abx4[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx4[_0x39abxa];if((Math[_0x53bb[488]](_0x39abx5[_0x53bb[235]])!=Math[_0x53bb[488]](_0x39abx9[_0x53bb[235]])||Math[_0x53bb[488]](_0x39abx9[_0x53bb[235]])!=Math[_0x53bb[488]](_0x39abx12[_0x53bb[235]]))&&(Math[_0x53bb[488]](_0x39abx5[_0x53bb[236]])!=Math[_0x53bb[488]](_0x39abx9[_0x53bb[236]])||Math[_0x53bb[488]](_0x39abx9[_0x53bb[236]])!=Math[_0x53bb[488]](_0x39abx12[_0x53bb[236]]))){_0x39abx5=_0x39abx9,_0x39abx9=_0x39abx9[_0x53bb[238]](),this[_0x53bb[2196]](_0x39abx9,!1),_0x39abx3[_0x53bb[207]](_0x39abx9)};_0x39abx9=_0x39abx12}};mxElbowEdgeHandler[_0x53bb[202]][_0x53bb[3023]][_0x53bb[183]](this,arguments)};function mxKeyHandler(_0x39abx2,_0x39abx3){null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[772]]=_0x39abx3||document[_0x53bb[158]],this[_0x53bb[3040]]=[],this[_0x53bb[3041]]=[],this[_0x53bb[3042]]=[],this[_0x53bb[3043]]=[],mxEvent[_0x53bb[169]](this[_0x53bb[772]],_0x53bb[2123],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[3044]](_0x39abx2)})),mxClient[_0x53bb[80]]&&mxEvent[_0x53bb[169]](window,_0x53bb[2428],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[515]]()})))}mxKeyHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[772]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[3040]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[3041]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[3042]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[3043]]=null;mxKeyHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxKeyHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxKeyHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxKeyHandler[_0x53bb[202]][_0x53bb[3045]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3040]][_0x39abx2]=_0x39abx3};mxKeyHandler[_0x53bb[202]][_0x53bb[3046]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3041]][_0x39abx2]=_0x39abx3};mxKeyHandler[_0x53bb[202]][_0x53bb[3047]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3042]][_0x39abx2]=_0x39abx3};mxKeyHandler[_0x53bb[202]][_0x53bb[3048]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3043]][_0x39abx2]=_0x39abx3};mxKeyHandler[_0x53bb[202]][_0x53bb[775]]=function(_0x39abx2){return mxEvent[_0x53bb[775]](_0x39abx2)};mxKeyHandler[_0x53bb[202]][_0x53bb[3049]]=function(_0x39abx2){return null!=_0x39abx2?this[_0x53bb[775]](_0x39abx2)?mxEvent[_0x53bb[774]](_0x39abx2)?this[_0x53bb[3043]][_0x39abx2[_0x53bb[2124]]]:this[_0x53bb[3042]][_0x39abx2[_0x53bb[2124]]]:mxEvent[_0x53bb[774]](_0x39abx2)?this[_0x53bb[3041]][_0x39abx2[_0x53bb[2124]]]:this[_0x53bb[3040]][_0x39abx2[_0x53bb[2124]]]:null};mxKeyHandler[_0x53bb[202]][_0x53bb[3050]]=function(_0x39abx2){_0x39abx2=mxEvent[_0x53bb[728]](_0x39abx2);if(_0x39abx2==this[_0x53bb[772]]||_0x39abx2[_0x53bb[265]]==this[_0x53bb[772]]||null!=this[_0x53bb[1179]][_0x53bb[2347]]&&_0x39abx2==this[_0x53bb[1179]][_0x53bb[2347]][_0x53bb[126]]){return !0};for(;null!=_0x39abx2;){if(_0x39abx2==this[_0x53bb[1179]][_0x53bb[526]]){return !0};_0x39abx2=_0x39abx2[_0x53bb[265]]};return !1};mxKeyHandler[_0x53bb[202]][_0x53bb[3044]]=function(_0x39abx2){if(this[_0x53bb[1179]][_0x53bb[994]]()&&!mxEvent[_0x53bb[721]](_0x39abx2)&&this[_0x53bb[3050]](_0x39abx2)&&this[_0x53bb[994]]()){if(27==_0x39abx2[_0x53bb[2124]]){this[_0x53bb[859]](_0x39abx2)}else {if(!this[_0x53bb[1179]][_0x53bb[2203]]()){var _0x39abx3=this[_0x53bb[3049]](_0x39abx2);null!=_0x39abx3&&(_0x39abx3(_0x39abx2),mxEvent[_0x53bb[722]](_0x39abx2))}}}};mxKeyHandler[_0x53bb[202]][_0x53bb[859]]=function(_0x39abx2){this[_0x53bb[1179]][_0x53bb[2608]]()&&this[_0x53bb[1179]][_0x53bb[859]](_0x39abx2)};mxKeyHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[772]]=null};function mxTooltipHandler(_0x39abx2,_0x39abx3){null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[1140]]=_0x39abx3||500,this[_0x53bb[1179]][_0x53bb[1133]](this))}mxTooltipHandler[_0x53bb[202]][_0x53bb[931]]=10005;mxTooltipHandler[_0x53bb[202]][_0x53bb[1179]]=null;mxTooltipHandler[_0x53bb[202]][_0x53bb[1140]]=null;mxTooltipHandler[_0x53bb[202]][_0x53bb[3051]]= !1;mxTooltipHandler[_0x53bb[202]][_0x53bb[984]]= !0;mxTooltipHandler[_0x53bb[202]][_0x53bb[994]]=function(){return this[_0x53bb[984]]};mxTooltipHandler[_0x53bb[202]][_0x53bb[995]]=function(_0x39abx2){this[_0x53bb[984]]=_0x39abx2};mxTooltipHandler[_0x53bb[202]][_0x53bb[2277]]=function(){return this[_0x53bb[3051]]};mxTooltipHandler[_0x53bb[202]][_0x53bb[3052]]=function(_0x39abx2){this[_0x53bb[3051]]=_0x39abx2};mxTooltipHandler[_0x53bb[202]][_0x53bb[176]]=function(){null!=document[_0x53bb[112]]&&(this[_0x53bb[485]]=document[_0x53bb[55]](_0x53bb[485]),this[_0x53bb[485]][_0x53bb[926]]=_0x53bb[3053],this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188],this[_0x53bb[485]][_0x53bb[124]][_0x53bb[931]]=this[_0x53bb[931]],document[_0x53bb[112]][_0x53bb[62]](this[_0x53bb[485]]),mxEvent[_0x53bb[169]](this[_0x53bb[485]],_0x53bb[751],mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[3054]]()})))};mxTooltipHandler[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[862]](_0x39abx3,!1);this[_0x53bb[3054]]()};mxTooltipHandler[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){if(_0x39abx3[_0x53bb[730]]()!=this[_0x53bb[1217]]||_0x39abx3[_0x53bb[732]]()!=this[_0x53bb[1218]]){this[_0x53bb[862]](_0x39abx3,!0),(this[_0x53bb[2277]]()||_0x39abx3[_0x53bb[248]]()!=this[_0x53bb[724]]||_0x39abx3[_0x53bb[728]]()!=this[_0x53bb[252]]&&(!this[_0x53bb[3055]]||null!=_0x39abx3[_0x53bb[248]]()&&this[_0x53bb[3055]]==(_0x39abx3[_0x53bb[729]](_0x39abx3[_0x53bb[248]]()[_0x53bb[253]])||!_0x39abx3[_0x53bb[729]](_0x39abx3[_0x53bb[248]]()[_0x53bb[963]]))))&&this[_0x53bb[3054]]()};this[_0x53bb[1217]]=_0x39abx3[_0x53bb[730]]();this[_0x53bb[1218]]=_0x39abx3[_0x53bb[732]]()};mxTooltipHandler[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[862]](_0x39abx3,!0);this[_0x53bb[3054]]()};mxTooltipHandler[_0x53bb[202]][_0x53bb[3056]]=function(){null!=this[_0x53bb[1123]]&&(window[_0x53bb[2924]](this[_0x53bb[1123]]),this[_0x53bb[1123]]=null)};mxTooltipHandler[_0x53bb[202]][_0x53bb[862]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3056]]();if(_0x39abx3&&this[_0x53bb[994]]()&&null!=_0x39abx2[_0x53bb[248]]()&&(null==this[_0x53bb[485]]||_0x53bb[188]==this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]])){var _0x39abx4=_0x39abx2[_0x53bb[248]](),_0x39abx5=_0x39abx2[_0x53bb[728]](),_0x39abx9=_0x39abx2[_0x53bb[730]](),_0x39abxa=_0x39abx2[_0x53bb[732]](),_0x39abx12=_0x39abx2[_0x53bb[729]](_0x39abx4[_0x53bb[253]])||_0x39abx2[_0x53bb[729]](_0x39abx4[_0x53bb[963]]);this[_0x53bb[1123]]=window[_0x53bb[261]](mxUtils[_0x53bb[885]](this,function(){if(!this[_0x53bb[1179]][_0x53bb[2203]]()&&!this[_0x53bb[1179]][_0x53bb[2316]][_0x53bb[1031]]()){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[2595]](_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa);this[_0x53bb[539]](_0x39abx2,_0x39abx9,_0x39abxa);this[_0x53bb[724]]=_0x39abx4;this[_0x53bb[252]]=_0x39abx5;this[_0x53bb[3055]]=_0x39abx12}}),this[_0x53bb[1140]])}};mxTooltipHandler[_0x53bb[202]][_0x53bb[801]]=function(){this[_0x53bb[3056]]();this[_0x53bb[3054]]()};mxTooltipHandler[_0x53bb[202]][_0x53bb[3054]]=function(){null!=this[_0x53bb[485]]&&(this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[188])};mxTooltipHandler[_0x53bb[202]][_0x53bb[539]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){null==this[_0x53bb[485]]&&this[_0x53bb[176]]();var _0x39abx5=mxUtils[_0x53bb[444]]();this[_0x53bb[485]][_0x53bb[124]][_0x53bb[361]]=_0x39abx3+_0x39abx5[_0x53bb[235]]+_0x53bb[168];this[_0x53bb[485]][_0x53bb[124]][_0x53bb[125]]=_0x39abx4+mxConstants[_0x53bb[560]]+_0x39abx5[_0x53bb[236]]+_0x53bb[168];mxUtils[_0x53bb[1331]](_0x39abx2)?(this[_0x53bb[485]][_0x53bb[339]]=_0x53bb[110],this[_0x53bb[485]][_0x53bb[62]](_0x39abx2)):this[_0x53bb[485]][_0x53bb[339]]=_0x39abx2[_0x53bb[230]](/\n/g,_0x53bb[545]);this[_0x53bb[485]][_0x53bb[124]][_0x53bb[187]]=_0x53bb[110];mxUtils[_0x53bb[933]](this[_0x53bb[485]])}};mxTooltipHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[1148]](this);mxEvent[_0x53bb[762]](this[_0x53bb[485]]);null!=this[_0x53bb[485]]&&null!=this[_0x53bb[485]][_0x53bb[265]]&&this[_0x53bb[485]][_0x53bb[265]][_0x53bb[266]](this[_0x53bb[485]]);this[_0x53bb[485]]=null};function mxCellTracker(_0x39abx2,_0x39abx3,_0x39abx4){mxCellMarker[_0x53bb[239]](this,_0x39abx2,_0x39abx3);this[_0x53bb[1179]][_0x53bb[1133]](this);null!=_0x39abx4&&(this[_0x53bb[736]]=_0x39abx4);mxClient[_0x53bb[80]]&&mxEvent[_0x53bb[169]](window,_0x53bb[2428],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[515]]()}))}mxUtils[_0x53bb[1284]](mxCellTracker,mxCellMarker);mxCellTracker[_0x53bb[202]][_0x53bb[787]]=function(_0x39abx2,_0x39abx3){};mxCellTracker[_0x53bb[202]][_0x53bb[788]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[994]]()&&this[_0x53bb[2871]](_0x39abx3)};mxCellTracker[_0x53bb[202]][_0x53bb[789]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[862]]()};mxCellTracker[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[2717]]||(this[_0x53bb[2717]]= !0,this[_0x53bb[1179]][_0x53bb[1148]](this),mxCellMarker[_0x53bb[202]][_0x53bb[515]][_0x53bb[183]](this))};function mxCellHighlight(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){null!=_0x39abx2&&(this[_0x53bb[1179]]=_0x39abx2,this[_0x53bb[2943]]=null!=_0x39abx3?_0x39abx3:mxConstants[_0x53bb[2854]],this[_0x53bb[610]]=null!=_0x39abx4?_0x39abx4:mxConstants[_0x53bb[3057]],this[_0x53bb[648]]=null!=_0x39abx5?_0x39abx5:!1,this[_0x53bb[3058]]=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[2950]]()}),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE,this[_0x53bb[3058]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.TRANSLATE,this[_0x53bb[3058]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x53bb[3058]]),this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,this[_0x53bb[3058]]),this[_0x53bb[2877]]=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[801]]()}),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.DOWN,this[_0x53bb[2877]]),this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[169]](mxEvent.UP,this[_0x53bb[2877]]))}mxCellHighlight[_0x53bb[202]][_0x53bb[3059]]= !1;mxCellHighlight[_0x53bb[202]][_0x53bb[1179]]= !0;mxCellHighlight[_0x53bb[202]][_0x53bb[724]]=null;mxCellHighlight[_0x53bb[202]][_0x53bb[657]]=2;mxCellHighlight[_0x53bb[202]][_0x53bb[2877]]=null;mxCellHighlight[_0x53bb[202]][_0x53bb[2828]]=function(_0x39abx2){this[_0x53bb[2943]]=_0x39abx2;null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[1336]]=_0x39abx2)};mxCellHighlight[_0x53bb[202]][_0x53bb[3060]]=function(){this[_0x53bb[253]]=this[_0x53bb[2156]]();this[_0x53bb[2950]]();!this[_0x53bb[3059]]&&this[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[285]]!=this[_0x53bb[253]][_0x53bb[252]]&&this[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[950]](this[_0x53bb[253]][_0x53bb[252]],this[_0x53bb[253]][_0x53bb[252]][_0x53bb[265]][_0x53bb[285]])};mxCellHighlight[_0x53bb[202]][_0x53bb[2156]]=function(){var _0x39abx2=null,_0x39abx2=this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[250]](this[_0x53bb[724]][_0x53bb[246]])? new mxPolyline(this[_0x53bb[724]][_0x53bb[439]],this[_0x53bb[2943]],this[_0x53bb[610]]): new mxRectangleShape( new mxRectangle,null,this[_0x53bb[2943]],this[_0x53bb[610]]);_0x39abx2[_0x53bb[507]]=this[_0x53bb[1179]][_0x53bb[507]]!=mxConstants[_0x53bb[508]]?mxConstants[_0x53bb[1523]]:mxConstants[_0x53bb[508]];_0x39abx2[_0x53bb[176]](this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[1524]]());mxEvent[_0x53bb[2733]](_0x39abx2[_0x53bb[252]],this[_0x53bb[1179]],this[_0x53bb[724]]);_0x39abx2[_0x53bb[1564]]=0;_0x39abx2[_0x53bb[1229]]= !1;_0x39abx2[_0x53bb[1522]]=this[_0x53bb[648]];return _0x39abx2};mxCellHighlight[_0x53bb[202]][_0x53bb[2950]]=function(){if(null!=this[_0x53bb[724]]&&null!=this[_0x53bb[253]]){var _0x39abx2=0;this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[250]](this[_0x53bb[724]][_0x53bb[246]])?this[_0x53bb[253]][_0x53bb[1525]]=this[_0x53bb[724]][_0x53bb[439]]:(this[_0x53bb[253]][_0x53bb[1562]]= new mxRectangle(this[_0x53bb[724]][_0x53bb[235]]-this[_0x53bb[657]],this[_0x53bb[724]][_0x53bb[236]]-this[_0x53bb[657]],this[_0x53bb[724]][_0x53bb[117]]+2*this[_0x53bb[657]],this[_0x53bb[724]][_0x53bb[119]]+2*this[_0x53bb[657]]),_0x39abx2=Number(this[_0x53bb[724]][_0x53bb[124]][mxConstants[_0x53bb[2278]]]||_0x53bb[468]));null!=this[_0x53bb[724]][_0x53bb[253]]&&this[_0x53bb[253]][_0x53bb[1609]](this[_0x53bb[724]][_0x53bb[253]][_0x53bb[1610]]());0!=_0x39abx2&&(this[_0x53bb[253]][_0x53bb[603]]=_0x39abx2);this[_0x53bb[253]][_0x53bb[258]]()}};mxCellHighlight[_0x53bb[202]][_0x53bb[801]]=function(){this[_0x53bb[1016]](null)};mxCellHighlight[_0x53bb[202]][_0x53bb[1016]]=function(_0x39abx2){this[_0x53bb[724]]!=_0x39abx2&&(null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null),this[_0x53bb[724]]=_0x39abx2,null!=this[_0x53bb[724]]&&this[_0x53bb[3060]]())};mxCellHighlight[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[3058]]);this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[3058]]);this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[745]](this[_0x53bb[2877]]);this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[745]](this[_0x53bb[2877]]);null!=this[_0x53bb[253]]&&(this[_0x53bb[253]][_0x53bb[515]](),this[_0x53bb[253]]=null)};function mxDefaultKeyHandler(_0x39abx2){if(null!=_0x39abx2){this[_0x53bb[3061]]=_0x39abx2;this[_0x53bb[2458]]= new mxKeyHandler(_0x39abx2[_0x53bb[1179]]);var _0x39abx3=this[_0x53bb[2458]][_0x53bb[859]];this[_0x53bb[2458]][_0x53bb[859]]=function(_0x39abx4){_0x39abx3[_0x53bb[183]](this,arguments);_0x39abx2[_0x53bb[3062]]();_0x39abx2[_0x53bb[746]]( new mxEventObject(mxEvent.ESCAPE,_0x53bb[763],_0x39abx4))}}}mxDefaultKeyHandler[_0x53bb[202]][_0x53bb[3061]]=null;mxDefaultKeyHandler[_0x53bb[202]][_0x53bb[2458]]=null;mxDefaultKeyHandler[_0x53bb[202]][_0x53bb[3063]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3061]][_0x53bb[350]](_0x39abx3)});_0x39abx4?this[_0x53bb[2458]][_0x53bb[3047]](_0x39abx2,_0x39abx5):this[_0x53bb[2458]][_0x53bb[3045]](_0x39abx2,_0x39abx5)};mxDefaultKeyHandler[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[2458]][_0x53bb[515]]();this[_0x53bb[2458]]=null};function mxDefaultPopupMenu(_0x39abx2){this[_0x53bb[3064]]=_0x39abx2}mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[88]]=null;mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[3064]]=null;mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[3065]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){if(null!=this[_0x53bb[3064]]){var _0x39abx9=this[_0x53bb[3066]](_0x39abx2,_0x39abx4,_0x39abx5);this[_0x53bb[3067]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,this[_0x53bb[3064]][_0x53bb[285]],null)}};mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[3067]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12){for(var _0x39abx13=!1;null!=_0x39abxa;){if(_0x53bb[99]==_0x39abxa[_0x53bb[301]]){var _0x39abx14=_0x39abxa[_0x53bb[284]](_0x53bb[3068]);if(null==_0x39abx14||_0x39abx9[_0x39abx14]){var _0x39abx14=_0x39abxa[_0x53bb[284]](_0x53bb[3069]),_0x39abx14=mxResources[_0x53bb[203]](_0x39abx14)||_0x39abx14,_0x39abx15=mxUtils[_0x53bb[1545]](mxUtils[_0x53bb[329]](_0x39abxa)),_0x39abx16=_0x39abxa[_0x53bb[284]](_0x53bb[892]),_0x39abx17=_0x39abxa[_0x53bb[284]](_0x53bb[2916]),_0x39abx18=_0x39abxa[_0x53bb[284]](_0x53bb[3070]);_0x39abx13&&(_0x39abx3[_0x53bb[1051]](_0x39abx12),_0x39abx13= !1);null!=_0x39abx17&&this[_0x53bb[88]]&&(_0x39abx17=this[_0x53bb[88]]+_0x39abx17);_0x39abx14=this[_0x53bb[3071]](_0x39abx3,_0x39abx2,_0x39abx14,_0x39abx17,_0x39abx15,_0x39abx16,_0x39abx4,_0x39abx12,_0x39abx18);this[_0x53bb[3067]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa[_0x53bb[285]],_0x39abx14)}}else {_0x53bb[3072]==_0x39abxa[_0x53bb[301]]&&(_0x39abx13= !0)};_0x39abxa=_0x39abxa[_0x53bb[287]]}};mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[3071]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa,_0x39abx12,_0x39abx13,_0x39abx14){return _0x39abx2[_0x53bb[1025]](_0x39abx4,_0x39abx5,function(_0x39abx2){_0x53bb[279]== typeof _0x39abx9&&_0x39abx9[_0x53bb[239]](_0x39abx3,_0x39abx3,_0x39abx12,_0x39abx2);null!=_0x39abxa&&_0x39abx3[_0x53bb[350]](_0x39abxa,_0x39abx12,_0x39abx2)},_0x39abx13,_0x39abx14)};mxDefaultPopupMenu[_0x53bb[202]][_0x53bb[3066]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[1179]][_0x53bb[502]](),_0x39abx9=_0x39abx5[_0x53bb[262]](_0x39abx3),_0x39abxa=[];_0x39abxa[_0x53bb[3073]]=null==_0x39abx3;_0x39abxa[_0x53bb[3074]]=1<_0x39abx2[_0x53bb[1179]][_0x53bb[2694]]();_0x39abxa[_0x53bb[3075]]=_0x39abx5[_0x53bb[501]]()!=_0x39abx5[_0x53bb[1197]](_0x39abx2[_0x53bb[1179]][_0x53bb[902]]());_0x39abxa[_0x53bb[246]]=null!=_0x39abx3;_0x39abx5=null!=_0x39abx3&&1==_0x39abx2[_0x53bb[1179]][_0x53bb[2694]]();_0x39abxa[_0x53bb[3076]]=_0x39abx5&&0<_0x39abx9;_0x39abxa[_0x53bb[3077]]=_0x39abx5&&_0x39abx2[_0x53bb[1179]][_0x53bb[2516]](_0x39abx3,!1);_0x39abxa[_0x53bb[3078]]=_0x39abx5&&_0x39abx2[_0x53bb[1179]][_0x53bb[2516]](_0x39abx3,!0);_0x39abxa[_0x53bb[3079]]=_0x39abx5&&_0x39abx2[_0x53bb[1179]][_0x53bb[2553]](_0x39abx3);_0x39abxa[_0x53bb[3080]]=_0x39abxa[_0x53bb[3079]]&&0==_0x39abx9;_0x39abxa[_0x53bb[687]]=_0x39abx5&&_0x39abx2[_0x53bb[1179]][_0x53bb[1730]](_0x39abx3);_0x39abx9=this[_0x53bb[3064]][_0x53bb[64]](_0x53bb[3081]);for(_0x39abx5=0;_0x39abx5<_0x39abx9[_0x53bb[67]];_0x39abx5++){var _0x39abx12=mxUtils[_0x53bb[1545]](mxUtils[_0x53bb[329]](_0x39abx9[_0x39abx5])),_0x39abx13=_0x39abx9[_0x39abx5][_0x53bb[284]](_0x53bb[298]);null!=_0x39abx13&&_0x53bb[279]== typeof _0x39abx12&&(_0x39abxa[_0x39abx13]=_0x39abx12(_0x39abx2,_0x39abx3,_0x39abx4))};return _0x39abxa};function mxDefaultToolbar(_0x39abx2,_0x39abx3){this[_0x53bb[3061]]=_0x39abx3;null!=_0x39abx2&&null!=_0x39abx3&&this[_0x53bb[176]](_0x39abx2)}mxDefaultToolbar[_0x53bb[202]][_0x53bb[3061]]=null;mxDefaultToolbar[_0x53bb[202]][_0x53bb[3082]]=null;mxDefaultToolbar[_0x53bb[202]][_0x53bb[2877]]=null;mxDefaultToolbar[_0x53bb[202]][_0x53bb[657]]=4;mxDefaultToolbar[_0x53bb[202]][_0x53bb[2804]]= !1;mxDefaultToolbar[_0x53bb[202]][_0x53bb[176]]=function(_0x39abx2){null!=_0x39abx2&&(this[_0x53bb[3082]]= new mxToolbar(_0x39abx2),this[_0x53bb[3082]][_0x53bb[169]](mxEvent.SELECT,mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){var _0x39abx5=_0x39abx4[_0x53bb[720]](_0x53bb[279]);this[_0x53bb[3061]][_0x53bb[3083]]=null!=_0x39abx5?mxUtils[_0x53bb[885]](this,function(){_0x39abx5[_0x53bb[183]](this,arguments);this[_0x53bb[3082]][_0x53bb[1050]]()}):null})),this[_0x53bb[2877]]=mxUtils[_0x53bb[885]](this,function(){null!=this[_0x53bb[3082]]&&this[_0x53bb[3082]][_0x53bb[1050]](!0)}),this[_0x53bb[3061]][_0x53bb[1179]][_0x53bb[169]](mxEvent.DOUBLE_CLICK,this[_0x53bb[2877]]),this[_0x53bb[3061]][_0x53bb[169]](mxEvent.ESCAPE,this[_0x53bb[2877]]))};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1025]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=mxUtils[_0x53bb[885]](this,function(){null!=_0x39abx4&&0<_0x39abx4[_0x53bb[67]]&&this[_0x53bb[3061]][_0x53bb[350]](_0x39abx4)});return this[_0x53bb[3082]][_0x53bb[1025]](_0x39abx2,_0x39abx3,_0x39abx9,_0x39abx5)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1051]]=function(_0x39abx2){_0x39abx2=_0x39abx2||mxClient[_0x53bb[88]]+_0x53bb[3084];this[_0x53bb[3082]][_0x53bb[1051]](_0x39abx2)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[970]]=function(){return this[_0x53bb[3082]][_0x53bb[970]]()};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1038]]=function(_0x39abx2){return this[_0x53bb[3082]][_0x53bb[1038]](_0x39abx2)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[3085]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3061]][_0x53bb[350]](_0x39abx4)});this[_0x53bb[972]](_0x39abx2,_0x39abx3,_0x39abx5)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[972]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return this[_0x53bb[3082]][_0x53bb[972]](_0x39abx2,_0x39abx3,_0x39abx4)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1048]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){var _0x39abxa=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3061]][_0x53bb[3086]](_0x39abx4);null!=_0x39abx9&&_0x39abx9(this[_0x53bb[3061]])});return this[_0x53bb[3082]][_0x53bb[1042]](_0x39abx2,_0x39abx3,_0x39abxa,_0x39abx5)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[3087]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9,_0x39abxa){var _0x39abx12=function(){return _0x53bb[279]== typeof _0x39abx4?_0x39abx4():null!=_0x39abx4?_0x39abx4[_0x53bb[238]]():null},_0x39abx13=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){_0x53bb[279]== typeof _0x39abx9?_0x39abx9(this[_0x53bb[3061]],_0x39abx12(),_0x39abx2,_0x39abx3):this[_0x53bb[1008]](_0x39abx12(),_0x39abx2,_0x39abx3);this[_0x53bb[3082]][_0x53bb[1050]]();mxEvent[_0x53bb[722]](_0x39abx2)});_0x39abx2=this[_0x53bb[3082]][_0x53bb[1048]](_0x39abx2,_0x39abx3,_0x39abx13,_0x39abx5,null,_0x39abxa);this[_0x53bb[3088]](_0x39abx2,function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx13(_0x39abx3,_0x39abx4)});return _0x39abx2};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1008]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[3061]][_0x53bb[1179]],_0x39abx9=_0x39abx5[_0x53bb[502]]();if(null==_0x39abx4||_0x39abx9[_0x53bb[250]](_0x39abx4)||!this[_0x53bb[2804]]||!_0x39abx5[_0x53bb[2565]](_0x39abx4)){for(;null!=_0x39abx4&&!_0x39abx5[_0x53bb[2685]](_0x39abx4,[_0x39abx2],_0x39abx3);){_0x39abx4=_0x39abx9[_0x53bb[1197]](_0x39abx4)};this[_0x53bb[1937]](_0x39abx2,_0x39abx3,_0x39abx4)}else {this[_0x53bb[807]](_0x39abx2,_0x39abx3,_0x39abx4)}};mxDefaultToolbar[_0x53bb[202]][_0x53bb[1937]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[3061]][_0x53bb[1179]];if(_0x39abx5[_0x53bb[2621]](_0x39abx2)){var _0x39abx9=mxEvent[_0x53bb[731]](_0x39abx3),_0x39abxa=mxEvent[_0x53bb[733]](_0x39abx3),_0x39abx9=mxUtils[_0x53bb[2196]](_0x39abx5[_0x53bb[526]],_0x39abx9,_0x39abxa);return _0x39abx5[_0x53bb[2655]]()&&_0x39abx5[_0x53bb[2686]](_0x39abx4,[_0x39abx2],_0x39abx3)?_0x39abx5[_0x53bb[853]](_0x39abx4,[_0x39abx2],null,_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]]):this[_0x53bb[3061]][_0x53bb[817]](_0x39abx4,_0x39abx2,_0x39abx9[_0x53bb[235]],_0x39abx9[_0x53bb[236]])};return null};mxDefaultToolbar[_0x53bb[202]][_0x53bb[807]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=this[_0x53bb[3061]][_0x53bb[1179]];var _0x39abx5=_0x39abx3[_0x53bb[502]]();if(null!=_0x39abx4&&_0x39abx3[_0x53bb[2565]](_0x39abx2)&&_0x39abx3[_0x53bb[2581]](null,_0x39abx4,_0x39abx2)){var _0x39abx9=null;_0x39abx5[_0x53bb[473]]();try{var _0x39abxa=_0x39abx5[_0x53bb[1721]](_0x39abx4),_0x39abx12=_0x39abx5[_0x53bb[1721]](_0x39abx2)[_0x53bb[238]]();_0x39abx12[_0x53bb[235]]=_0x39abxa[_0x53bb[235]]+(_0x39abxa[_0x53bb[117]]-_0x39abx12[_0x53bb[117]])/2;_0x39abx12[_0x53bb[236]]=_0x39abxa[_0x53bb[236]]+(_0x39abxa[_0x53bb[119]]-_0x39abx12[_0x53bb[119]])/2;var _0x39abx13=this[_0x53bb[657]]*_0x39abx3[_0x53bb[1020]],_0x39abx14=20*_0x39abx5[_0x53bb[1962]](_0x39abx4,!0);this[_0x53bb[3061]][_0x53bb[3089]]?_0x39abx12[_0x53bb[235]]+=(_0x39abx12[_0x53bb[117]]+_0x39abxa[_0x53bb[117]])/2+_0x39abx13+_0x39abx14:_0x39abx12[_0x53bb[236]]+=(_0x39abx12[_0x53bb[119]]+_0x39abxa[_0x53bb[119]])/2+_0x39abx13+_0x39abx14;_0x39abx2[_0x53bb[1724]](_0x39abx12);var _0x39abx15=_0x39abx5[_0x53bb[1197]](_0x39abx4);_0x39abx3[_0x53bb[2103]](_0x39abx2,_0x39abx15);_0x39abx3[_0x53bb[2509]](_0x39abx2);_0x39abx9=this[_0x53bb[3061]][_0x53bb[2503]](_0x39abx4,_0x39abx2);if(null==_0x39abx5[_0x53bb[1721]](_0x39abx9)){var _0x39abx16= new mxGeometry;_0x39abx16[_0x53bb[1500]]= !0;_0x39abx5[_0x53bb[1724]](_0x39abx9,_0x39abx16)};_0x39abx3[_0x53bb[2504]](_0x39abx9,_0x39abx15,_0x39abx4,_0x39abx2)}finally{_0x39abx5[_0x53bb[476]]()};_0x39abx3[_0x53bb[904]]([_0x39abx2,_0x39abx9]);_0x39abx3[_0x53bb[2564]](_0x39abx2)}};mxDefaultToolbar[_0x53bb[202]][_0x53bb[3088]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=document[_0x53bb[55]](_0x53bb[466]);_0x39abx4[_0x53bb[57]](_0x53bb[390],_0x39abx2[_0x53bb[284]](_0x53bb[390]));var _0x39abx5=mxUtils[_0x53bb[885]](this,function(_0x39abx9){_0x39abx4[_0x53bb[124]][_0x53bb[117]]=2*_0x39abx2[_0x53bb[359]]+_0x53bb[168];_0x39abx4[_0x53bb[124]][_0x53bb[119]]=2*_0x39abx2[_0x53bb[167]]+_0x53bb[168];mxUtils[_0x53bb[3090]](_0x39abx2,this[_0x53bb[3061]][_0x53bb[1179]],_0x39abx3,_0x39abx4);mxEvent[_0x53bb[745]](_0x39abx4,_0x53bb[219],_0x39abx5)});mxClient[_0x53bb[80]]?_0x39abx5():mxEvent[_0x53bb[169]](_0x39abx4,_0x53bb[219],_0x39abx5)};mxDefaultToolbar[_0x53bb[202]][_0x53bb[515]]=function(){null!=this[_0x53bb[2877]]&&(this[_0x53bb[3061]][_0x53bb[1179]][_0x53bb[745]](_0x53bb[760],this[_0x53bb[2877]]),this[_0x53bb[3061]][_0x53bb[745]](_0x53bb[859],this[_0x53bb[2877]]),this[_0x53bb[2877]]=null);null!=this[_0x53bb[3082]]&&(this[_0x53bb[3082]][_0x53bb[515]](),this[_0x53bb[3082]]=null)};function mxEditor(_0x39abx2){this[_0x53bb[3091]]=[];this[_0x53bb[3092]]();if(null!=document[_0x53bb[112]]){this[_0x53bb[3093]]=[];this[_0x53bb[3094]]= new mxDefaultPopupMenu;this[_0x53bb[3095]]= new mxUndoManager;this[_0x53bb[1179]]=this[_0x53bb[3096]]();this[_0x53bb[3082]]=this[_0x53bb[3097]]();this[_0x53bb[3098]]= new mxDefaultKeyHandler(this);this[_0x53bb[3099]](_0x39abx2);this[_0x53bb[1179]][_0x53bb[2180]]=this[_0x53bb[3100]];!mxClient[_0x53bb[3101]]&&null!=this[_0x53bb[1056]]&&(this[_0x53bb[812]]=this[_0x53bb[3102]]());if(null!=this[_0x53bb[1987]]){this[_0x53bb[1987]]()};mxClient[_0x53bb[80]]&&mxEvent[_0x53bb[169]](window,_0x53bb[2428],mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[515]]()}))}}mxLoadResources&&mxResources[_0x53bb[99]](mxClient[_0x53bb[86]]+_0x53bb[3103]);mxEditor[_0x53bb[202]]= new mxEventSource;mxEditor[_0x53bb[202]][_0x53bb[196]]=mxEditor;mxEditor[_0x53bb[202]][_0x53bb[3104]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[3105]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3106]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[3107]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3108]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[3109]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3110]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[716]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3111]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[3112]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3113]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2719]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[3114]]=_0x53bb[130]!=mxClient[_0x53bb[90]]?_0x53bb[2136]:_0x53bb[110];mxEditor[_0x53bb[202]][_0x53bb[2136]]=null;mxEditor[_0x53bb[202]][_0x53bb[1179]]=null;mxEditor[_0x53bb[202]][_0x53bb[2720]]=null;mxEditor[_0x53bb[202]][_0x53bb[3082]]=null;mxEditor[_0x53bb[202]][_0x53bb[812]]=null;mxEditor[_0x53bb[202]][_0x53bb[879]]=null;mxEditor[_0x53bb[202]][_0x53bb[3094]]=null;mxEditor[_0x53bb[202]][_0x53bb[3095]]=null;mxEditor[_0x53bb[202]][_0x53bb[3098]]=null;mxEditor[_0x53bb[202]][_0x53bb[3091]]=null;mxEditor[_0x53bb[202]][_0x53bb[3115]]=_0x53bb[1061];mxEditor[_0x53bb[202]][_0x53bb[3116]]= !1;mxEditor[_0x53bb[202]][_0x53bb[1157]]= !0;mxEditor[_0x53bb[202]][_0x53bb[3083]]=null;mxEditor[_0x53bb[202]][_0x53bb[3117]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3118]]=null;mxEditor[_0x53bb[202]][_0x53bb[2075]]=null;mxEditor[_0x53bb[202]][_0x53bb[3119]]=null;mxEditor[_0x53bb[202]][_0x53bb[3120]]=null;mxEditor[_0x53bb[202]][_0x53bb[3121]]=null;mxEditor[_0x53bb[202]][_0x53bb[3122]]=null;mxEditor[_0x53bb[202]][_0x53bb[1069]]=_0x53bb[336];mxEditor[_0x53bb[202]][_0x53bb[3123]]=_0x53bb[338];mxEditor[_0x53bb[202]][_0x53bb[1070]]= !0;mxEditor[_0x53bb[202]][_0x53bb[3124]]=null;mxEditor[_0x53bb[202]][_0x53bb[3125]]=null;mxEditor[_0x53bb[202]][_0x53bb[1056]]=null;mxEditor[_0x53bb[202]][_0x53bb[1058]]=null;mxEditor[_0x53bb[202]][_0x53bb[1057]]=null;mxEditor[_0x53bb[202]][_0x53bb[3089]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3126]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3127]]=0;mxEditor[_0x53bb[202]][_0x53bb[3128]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3129]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3093]]=null;mxEditor[_0x53bb[202]][_0x53bb[3130]]=0;mxEditor[_0x53bb[202]][_0x53bb[3100]]=_0x53bb[604];mxEditor[_0x53bb[202]][_0x53bb[3112]]=null;mxEditor[_0x53bb[202]][_0x53bb[3131]]=null;mxEditor[_0x53bb[202]][_0x53bb[3132]]=20;mxEditor[_0x53bb[202]][_0x53bb[2719]]=null;mxEditor[_0x53bb[202]][_0x53bb[3133]]=null;mxEditor[_0x53bb[202]][_0x53bb[3134]]=null;mxEditor[_0x53bb[202]][_0x53bb[3135]]=300;mxEditor[_0x53bb[202]][_0x53bb[3136]]=260;mxEditor[_0x53bb[202]][_0x53bb[3137]]=240;mxEditor[_0x53bb[202]][_0x53bb[3138]]=null;mxEditor[_0x53bb[202]][_0x53bb[3139]]= !1;mxEditor[_0x53bb[202]][_0x53bb[3140]]= !1;mxEditor[_0x53bb[202]][_0x53bb[2113]]= !1;mxEditor[_0x53bb[202]][_0x53bb[2133]]=function(){return this[_0x53bb[2113]]};mxEditor[_0x53bb[202]][_0x53bb[2128]]=function(_0x39abx2){this[_0x53bb[2113]]=_0x39abx2};mxEditor[_0x53bb[202]][_0x53bb[3092]]=function(){this[_0x53bb[3071]](_0x53bb[815],function(_0x39abx2){_0x39abx2[_0x53bb[815]]()});this[_0x53bb[3071]](_0x53bb[540],function(_0x39abx2){( new mxPrintPreview(_0x39abx2[_0x53bb[1179]],1))[_0x53bb[392]]()});this[_0x53bb[3071]](_0x53bb[539],function(_0x39abx2){mxUtils[_0x53bb[539]](_0x39abx2[_0x53bb[1179]],null,10,10)});this[_0x53bb[3071]](_0x53bb[3141],function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[3142]]();if(null==_0x39abx3||mxClient[_0x53bb[3101]]){_0x39abx2[_0x53bb[350]](_0x53bb[539])}else {var _0x39abx4=mxUtils[_0x53bb[3143]](_0x39abx2[_0x53bb[1179]],1),_0x39abx4=mxUtils[_0x53bb[875]](_0x39abx4,_0x53bb[192]);mxUtils[_0x53bb[894]](_0x39abx3,_0x39abx2[_0x53bb[3123]]+_0x53bb[226]+encodeURIComponent(_0x39abx4),document,_0x53bb[3144])}});this[_0x53bb[3071]](_0x53bb[802],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[802]]()});this[_0x53bb[3071]](_0x53bb[3145],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&mxClipboard[_0x53bb[3145]](_0x39abx2[_0x53bb[1179]])});this[_0x53bb[3071]](_0x53bb[149],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&mxClipboard[_0x53bb[149]](_0x39abx2[_0x53bb[1179]])});this[_0x53bb[3071]](_0x53bb[3146],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&mxClipboard[_0x53bb[3146]](_0x39abx2[_0x53bb[1179]])});this[_0x53bb[3071]](_0x53bb[3147],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[842]]()});this[_0x53bb[3071]](_0x53bb[1504],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2450]](_0x39abx2[_0x53bb[844]]())});this[_0x53bb[3071]](_0x53bb[3148],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[904]](_0x39abx2[_0x53bb[1179]][_0x53bb[845]]())});this[_0x53bb[3071]](_0x53bb[1997],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[846]]()});this[_0x53bb[3071]](_0x53bb[824],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[824]]()});this[_0x53bb[3071]](_0x53bb[825],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[825]]()});this[_0x53bb[3071]](_0x53bb[2558],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[2558]]()});this[_0x53bb[3071]](_0x53bb[2559],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[2559]]()});this[_0x53bb[3071]](_0x53bb[3149],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[2560]]()});this[_0x53bb[3071]](_0x53bb[933],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[933]]()});this[_0x53bb[3071]](_0x53bb[3150],function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[3150]](_0x39abx3)});this[_0x53bb[3071]](_0x53bb[2705],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2705]]()});this[_0x53bb[3071]](_0x53bb[3151],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2440]]()});this[_0x53bb[3071]](_0x53bb[2706],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2706]]()});this[_0x53bb[3071]](_0x53bb[2708],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2708]]()});this[_0x53bb[3071]](_0x53bb[1061],function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2453]](_0x39abx3)&&_0x39abx2[_0x53bb[1179]][_0x53bb[2451]](_0x39abx3)});this[_0x53bb[3071]](_0x53bb[3152],function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[840]](!0)});this[_0x53bb[3071]](_0x53bb[3153],function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[840]](!1)});this[_0x53bb[3071]](_0x53bb[2552],function(_0x39abx2,_0x39abx3){_0x39abx2[_0x53bb[1179]][_0x53bb[2552]](_0x39abx3)});this[_0x53bb[3071]](_0x53bb[2554],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[2554]]()});this[_0x53bb[3071]](_0x53bb[2442],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[2442]]()});this[_0x53bb[3071]](_0x53bb[3154],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2702]]()});this[_0x53bb[3071]](_0x53bb[3155],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2700]]()});this[_0x53bb[3071]](_0x53bb[3156],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2703]]()});this[_0x53bb[3071]](_0x53bb[3157],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2704]]()});this[_0x53bb[3071]](_0x53bb[2514],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[847]](!0)});this[_0x53bb[3071]](_0x53bb[3158],function(_0x39abx2){if(_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()){var _0x39abx3=_0x39abx2[_0x53bb[1179]][_0x53bb[1728]]();_0x39abx2[_0x53bb[1179]][_0x53bb[847]](!0,!1,_0x39abx3)}});this[_0x53bb[3071]](_0x53bb[3159],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[847]](!1)});this[_0x53bb[3071]](_0x53bb[3160],function(_0x39abx2){if(_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()){var _0x39abx3=_0x39abx2[_0x53bb[1179]][_0x53bb[1728]]();_0x39abx2[_0x53bb[1179]][_0x53bb[847]](!1,!1,_0x39abx3)}});this[_0x53bb[3071]](_0x53bb[1447],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_BOLD)});this[_0x53bb[3071]](_0x53bb[1449],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_ITALIC)});this[_0x53bb[3071]](_0x53bb[355],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_UNDERLINE)});this[_0x53bb[3071]](_0x53bb[639],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_SHADOW)});this[_0x53bb[3071]](_0x53bb[3161],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_LEFT)});this[_0x53bb[3071]](_0x53bb[3162],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_CENTER)});this[_0x53bb[3071]](_0x53bb[3163],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_RIGHT)});this[_0x53bb[3071]](_0x53bb[3164],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_TOP)});this[_0x53bb[3071]](_0x53bb[3165],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_MIDDLE)});this[_0x53bb[3071]](_0x53bb[3166],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[849]](mxConstants.ALIGN_BOTTOM)});this[_0x53bb[3071]](_0x53bb[3167],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT)});this[_0x53bb[3071]](_0x53bb[3168],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER)});this[_0x53bb[3071]](_0x53bb[3169],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_RIGHT)});this[_0x53bb[3071]](_0x53bb[3170],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_TOP)});this[_0x53bb[3071]](_0x53bb[3171],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)});this[_0x53bb[3071]](_0x53bb[3172],function(_0x39abx2){_0x39abx2[_0x53bb[1179]][_0x53bb[994]]()&&_0x39abx2[_0x53bb[1179]][_0x53bb[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_BOTTOM)});this[_0x53bb[3071]](_0x53bb[499],function(_0x39abx2){var _0x39abx3=100*_0x39abx2[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx3=parseFloat(mxUtils[_0x53bb[3173]](mxResources[_0x53bb[203]](_0x39abx2[_0x53bb[3104]])||_0x39abx2[_0x53bb[3104]],_0x39abx3))/100;isNaN(_0x39abx3)||_0x39abx2[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[2262]](_0x39abx3)});this[_0x53bb[3071]](_0x53bb[3174],function(_0x39abx2){null!=_0x39abx2[_0x53bb[3112]]?_0x39abx2[_0x53bb[3112]][_0x53bb[175]](!_0x39abx2[_0x53bb[3112]][_0x53bb[174]]()):_0x39abx2[_0x53bb[3175]]()});this[_0x53bb[3071]](_0x53bb[3176],function(_0x39abx2){null!=_0x39abx2[_0x53bb[2719]]?_0x39abx2[_0x53bb[2719]][_0x53bb[175]](!_0x39abx2[_0x53bb[2719]][_0x53bb[174]]()):_0x39abx2[_0x53bb[3177]]()});this[_0x53bb[3071]](_0x53bb[3178],function(_0x39abx2){null==_0x39abx2[_0x53bb[2136]]?_0x39abx2[_0x53bb[3179]]():_0x39abx2[_0x53bb[2136]][_0x53bb[175]](!_0x39abx2[_0x53bb[2136]][_0x53bb[174]]())});this[_0x53bb[3071]](_0x53bb[3180],function(_0x39abx2){mxLog[_0x53bb[175]](!mxLog[_0x53bb[174]]())})};mxEditor[_0x53bb[202]][_0x53bb[3102]]=function(){var _0x39abx2=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[746]]( new mxEventObject(mxEvent.SESSION,_0x53bb[812],_0x39abx2))});return this[_0x53bb[807]](this[_0x53bb[1056]],this[_0x53bb[1057]],this[_0x53bb[1058]],_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3099]]=function(_0x39abx2){null!=_0x39abx2&&(( new mxCodec(_0x39abx2[_0x53bb[295]]))[_0x53bb[1093]](_0x39abx2,this),this[_0x53bb[3181]]())};mxEditor[_0x53bb[202]][_0x53bb[3182]]=function(){document[_0x53bb[3183]]=_0x53bb[3184]};mxEditor[_0x53bb[202]][_0x53bb[3181]]=function(){this[_0x53bb[1184]]=( new Date)[_0x53bb[178]]();this[_0x53bb[3095]][_0x53bb[200]]();this[_0x53bb[1183]]=0;this[_0x53bb[2128]](!1)};mxEditor[_0x53bb[202]][_0x53bb[3071]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3091]][_0x39abx2]=_0x39abx3};mxEditor[_0x53bb[202]][_0x53bb[350]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[3091]][_0x39abx2];if(null!=_0x39abx5){try{var _0x39abx9=arguments;_0x39abx9[0]=this;_0x39abx5[_0x53bb[183]](this,_0x39abx9)}catch(f){throw mxUtils[_0x53bb[267]](_0x53bb[3185]+_0x39abx2+_0x53bb[3186]+f[_0x53bb[281]],280,!0),f}}else {mxUtils[_0x53bb[267]](_0x53bb[3187]+_0x39abx2,280,!0)}};mxEditor[_0x53bb[202]][_0x53bb[3188]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[3118]][_0x39abx2]=_0x39abx3};mxEditor[_0x53bb[202]][_0x53bb[3189]]=function(_0x39abx2){return this[_0x53bb[3118]][_0x39abx2]};mxEditor[_0x53bb[202]][_0x53bb[3096]]=function(){var _0x39abx2= new mxGraph(null,null,this[_0x53bb[2720]]);_0x39abx2[_0x53bb[2673]](!0);_0x39abx2[_0x53bb[2674]](!0);this[_0x53bb[3190]](_0x39abx2);this[_0x53bb[3191]](_0x39abx2);this[_0x53bb[3192]](_0x39abx2);this[_0x53bb[3193]](_0x39abx2);this[_0x53bb[3194]](_0x39abx2);_0x39abx2[_0x53bb[2316]][_0x53bb[1033]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4,_0x39abx5){return this[_0x53bb[3195]](_0x39abx2,_0x39abx4,_0x39abx5)});_0x39abx2[_0x53bb[2433]][_0x53bb[1033]]=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx4){return this[_0x53bb[2503]](_0x39abx2,_0x39abx4)});this[_0x53bb[3196]](_0x39abx2);this[_0x53bb[3197]](_0x39abx2);return _0x39abx2};mxEditor[_0x53bb[202]][_0x53bb[3196]]=function(_0x39abx2){_0x39abx2= new mxSwimlaneManager(_0x39abx2,!1);_0x39abx2[_0x53bb[1737]]=mxUtils[_0x53bb[885]](this,function(){return this[_0x53bb[3089]]});_0x39abx2[_0x53bb[994]]=mxUtils[_0x53bb[885]](this,function(){return this[_0x53bb[3128]]});return _0x39abx2};mxEditor[_0x53bb[202]][_0x53bb[3197]]=function(_0x39abx2){var _0x39abx3= new mxLayoutManager(_0x39abx2),_0x39abx4=this;_0x39abx3[_0x53bb[2754]]=function(_0x39abx3){var _0x39abx9=null,_0x39abxa=_0x39abx4[_0x53bb[1179]][_0x53bb[502]]();if(null!=_0x39abxa[_0x53bb[1197]](_0x39abx3)){if(_0x39abx4[_0x53bb[3129]]&&_0x39abx2[_0x53bb[1730]](_0x39abx3)){null==_0x39abx4[_0x53bb[3198]]&&(_0x39abx4[_0x53bb[3198]]=_0x39abx4[_0x53bb[3199]]()),_0x39abx9=_0x39abx4[_0x53bb[3198]]}else {if(_0x39abx4[_0x53bb[3126]]&&(_0x39abx2[_0x53bb[2553]](_0x39abx3)||null==_0x39abxa[_0x53bb[1197]](_0x39abxa[_0x53bb[1197]](_0x39abx3)))){null==_0x39abx4[_0x53bb[3200]]&&(_0x39abx4[_0x53bb[3200]]=_0x39abx4[_0x53bb[3201]]()),_0x39abx9=_0x39abx4[_0x53bb[3200]]}}};return _0x39abx9};return _0x39abx3};mxEditor[_0x53bb[202]][_0x53bb[3202]]=function(_0x39abx2){null==this[_0x53bb[1179]][_0x53bb[526]]&&(this[_0x53bb[1179]][_0x53bb[176]](_0x39abx2),this[_0x53bb[3203]]= new mxRubberband(this[_0x53bb[1179]]),this[_0x53bb[1157]]&&mxEvent[_0x53bb[1157]](_0x39abx2),mxClient[_0x53bb[496]]&& new mxDivResizer(_0x39abx2))};mxEditor[_0x53bb[202]][_0x53bb[3190]]=function(_0x39abx2){_0x39abx2[_0x53bb[169]](mxEvent.DOUBLE_CLICK,mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx4[_0x53bb[720]](_0x53bb[246]);null!=_0x39abx5&&(_0x39abx2[_0x53bb[994]]()&&null!=this[_0x53bb[3115]])&&(this[_0x53bb[350]](this[_0x53bb[3115]],_0x39abx5),_0x39abx4[_0x53bb[722]]())}))};mxEditor[_0x53bb[202]][_0x53bb[3191]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){var _0x39abx9=_0x39abx3[_0x53bb[720]](_0x53bb[1061]);this[_0x53bb[3095]][_0x53bb[1114]](_0x39abx9)});_0x39abx2[_0x53bb[502]]()[_0x53bb[169]](mxEvent.UNDO,_0x39abx3);_0x39abx2[_0x53bb[249]]()[_0x53bb[169]](mxEvent.UNDO,_0x39abx3);_0x39abx3=function(_0x39abx3,_0x39abx5){var _0x39abx9=_0x39abx5[_0x53bb[720]](_0x53bb[1061])[_0x53bb[1065]];_0x39abx2[_0x53bb[904]](_0x39abx2[_0x53bb[2436]](_0x39abx9))};this[_0x53bb[3095]][_0x53bb[169]](mxEvent.UNDO,_0x39abx3);this[_0x53bb[3095]][_0x53bb[169]](mxEvent.REDO,_0x39abx3)};mxEditor[_0x53bb[202]][_0x53bb[3192]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx2){this[_0x53bb[746]]( new mxEventObject(mxEvent.ROOT))});_0x39abx2[_0x53bb[249]]()[_0x53bb[169]](mxEvent.DOWN,_0x39abx3);_0x39abx2[_0x53bb[249]]()[_0x53bb[169]](mxEvent.UP,_0x39abx3)};mxEditor[_0x53bb[202]][_0x53bb[3193]]=function(_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[885]](this,function(_0x39abx3,_0x39abx5){this[_0x53bb[2128]](!0);!0==this[_0x53bb[3140]]&&_0x39abx2[_0x53bb[2585]]();for(var _0x39abx9=_0x39abx5[_0x53bb[720]](_0x53bb[1061])[_0x53bb[1065]],_0x39abxa=0;_0x39abxa<_0x39abx9[_0x53bb[67]];_0x39abxa++){var _0x39abx12=_0x39abx9[_0x39abxa];if(_0x39abx12 instanceof mxRootChange||_0x39abx12 instanceof mxValueChange&&_0x39abx12[_0x53bb[246]]==this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[813]]||_0x39abx12 instanceof mxCellAttributeChange&&_0x39abx12[_0x53bb[246]]==this[_0x53bb[1179]][_0x53bb[251]][_0x53bb[813]]){this[_0x53bb[746]]( new mxEventObject(mxEvent.ROOT));break}}});_0x39abx2[_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,_0x39abx3)};mxEditor[_0x53bb[202]][_0x53bb[3194]]=function(_0x39abx2){var _0x39abx3=this;_0x39abx2[_0x53bb[1133]]({mouseDown:function(_0x39abx2,_0x39abx5){if(null!=_0x39abx3[_0x53bb[3083]]&&!_0x39abx5[_0x53bb[737]]()&&(_0x39abx3[_0x53bb[3117]]||null==_0x39abx5[_0x53bb[248]]())){_0x39abx3[_0x53bb[1179]][_0x53bb[2440]](),_0x39abx3[_0x53bb[3083]](_0x39abx5[_0x53bb[727]](),_0x39abx5[_0x53bb[736]]()),this[_0x53bb[1142]]= !0,_0x39abx5[_0x53bb[722]]()}},mouseMove:function(_0x39abx2,_0x39abx3){this[_0x53bb[1142]]&&_0x39abx3[_0x53bb[722]]()},mouseUp:function(_0x39abx2,_0x39abx3){this[_0x53bb[1142]]&&(this[_0x53bb[1142]]= !1,_0x39abx3[_0x53bb[722]]())}})};mxEditor[_0x53bb[202]][_0x53bb[3201]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[1020]],_0x39abx3= new mxStackLayout(this[_0x53bb[1179]],!this[_0x53bb[3089]],this[_0x53bb[3127]],2*_0x39abx2,2*_0x39abx2);_0x39abx3[_0x53bb[1713]]=function(_0x39abx2){return !_0x39abx3[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)};return _0x39abx3};mxEditor[_0x53bb[202]][_0x53bb[3199]]=function(){return new mxCompactTreeLayout(this[_0x53bb[1179]],this[_0x53bb[3089]])};mxEditor[_0x53bb[202]][_0x53bb[3097]]=function(){return new mxDefaultToolbar(null,this)};mxEditor[_0x53bb[202]][_0x53bb[3204]]=function(_0x39abx2){this[_0x53bb[3082]][_0x53bb[176]](_0x39abx2);mxClient[_0x53bb[496]]&& new mxDivResizer(_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3205]]=function(_0x39abx2){null==this[_0x53bb[879]]&&(this[_0x53bb[879]]=_0x39abx2,this[_0x53bb[169]](mxEvent.SAVE,mxUtils[_0x53bb[885]](this,function(){var _0x39abx2=( new Date)[_0x53bb[3206]]();this[_0x53bb[3207]]((mxResources[_0x53bb[203]](this[_0x53bb[3106]])||this[_0x53bb[3106]])+_0x53bb[3186]+_0x39abx2)})),this[_0x53bb[169]](mxEvent.OPEN,mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3207]]((mxResources[_0x53bb[203]](this[_0x53bb[3108]])||this[_0x53bb[3108]])+_0x53bb[3186]+this[_0x53bb[3122]])})),mxClient[_0x53bb[496]]&& new mxDivResizer(_0x39abx2))};mxEditor[_0x53bb[202]][_0x53bb[3207]]=function(_0x39abx2){null!=this[_0x53bb[879]]&&null!=_0x39abx2&&(this[_0x53bb[879]][_0x53bb[339]]=_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3208]]=function(_0x39abx2){this[_0x53bb[169]](mxEvent.ROOT,mxUtils[_0x53bb[885]](this,function(_0x39abx3){_0x39abx2[_0x53bb[339]]=this[_0x53bb[3209]]()}));mxClient[_0x53bb[496]]&& new mxDivResizer(_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3210]]=function(_0x39abx2,_0x39abx3){null!=_0x39abx2&&( new mxCompactTreeLayout(this[_0x53bb[1179]],_0x39abx3))[_0x53bb[350]](_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3209]]=function(){for(var _0x39abx2=_0x53bb[110],_0x39abx3=this[_0x53bb[1179]],_0x39abx4=_0x39abx3[_0x53bb[2534]]();null!=_0x39abx4&&null!=_0x39abx3[_0x53bb[502]]()[_0x53bb[1197]](_0x39abx3[_0x53bb[502]]()[_0x53bb[1197]](_0x39abx4));){_0x39abx3[_0x53bb[2553]](_0x39abx4)&&(_0x39abx2=_0x53bb[3211]+_0x39abx3[_0x53bb[2454]](_0x39abx4)+_0x39abx2),_0x39abx4=_0x39abx3[_0x53bb[502]]()[_0x53bb[1197]](_0x39abx4)};return this[_0x53bb[3212]]()+_0x39abx2};mxEditor[_0x53bb[202]][_0x53bb[3212]]=function(){var _0x39abx2=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]]();return this[_0x53bb[1179]][_0x53bb[2454]](_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[824]]=function(){this[_0x53bb[3095]][_0x53bb[824]]()};mxEditor[_0x53bb[202]][_0x53bb[825]]=function(){this[_0x53bb[3095]][_0x53bb[825]]()};mxEditor[_0x53bb[202]][_0x53bb[844]]=function(){var _0x39abx2=null!=this[_0x53bb[3121]]?this[_0x53bb[3121]]:this[_0x53bb[1179]][_0x53bb[1020]];return this[_0x53bb[1179]][_0x53bb[844]](this[_0x53bb[3213]](),_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3213]]=function(){return this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1978]](this[_0x53bb[3120]])};mxEditor[_0x53bb[202]][_0x53bb[392]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[219]](_0x39abx2)[_0x53bb[875]]();this[_0x53bb[3214]](_0x39abx3[_0x53bb[158]]);this[_0x53bb[3122]]=_0x39abx2;this[_0x53bb[746]]( new mxEventObject(mxEvent.OPEN,_0x53bb[3122],_0x39abx2))}};mxEditor[_0x53bb[202]][_0x53bb[3214]]=function(_0x39abx2){( new mxCodec(_0x39abx2[_0x53bb[295]]))[_0x53bb[1093]](_0x39abx2,this[_0x53bb[1179]][_0x53bb[502]]());this[_0x53bb[3181]]()};mxEditor[_0x53bb[202]][_0x53bb[815]]=function(_0x39abx2,_0x39abx3){_0x39abx2=_0x39abx2||this[_0x53bb[3215]]();if(null!=_0x39abx2&&0<_0x39abx2[_0x53bb[67]]){var _0x39abx4=this[_0x53bb[3216]](_0x39abx3);this[_0x53bb[3217]](_0x39abx2,_0x39abx4);this[_0x53bb[2128]](!1)};this[_0x53bb[746]]( new mxEventObject(mxEvent.SAVE,_0x53bb[863],_0x39abx2))};mxEditor[_0x53bb[202]][_0x53bb[3217]]=function(_0x39abx2,_0x39abx3){this[_0x53bb[1070]]&&(_0x39abx3=encodeURIComponent(_0x39abx3));mxUtils[_0x53bb[814]](_0x39abx2,this[_0x53bb[3123]]+_0x53bb[226]+_0x39abx3,mxUtils[_0x53bb[885]](this,function(_0x39abx4){this[_0x53bb[746]]( new mxEventObject(mxEvent.POST,_0x53bb[870],_0x39abx4,_0x53bb[863],_0x39abx2,_0x53bb[410],_0x39abx3))}))};mxEditor[_0x53bb[202]][_0x53bb[3216]]=function(_0x39abx2){_0x39abx2=null!=_0x39abx2?_0x39abx2:this[_0x53bb[1069]];var _0x39abx3=( new mxCodec)[_0x53bb[514]](this[_0x53bb[1179]][_0x53bb[502]]());return mxUtils[_0x53bb[875]](_0x39abx3,_0x39abx2)};mxEditor[_0x53bb[202]][_0x53bb[3215]]=function(){return this[_0x53bb[3124]]};mxEditor[_0x53bb[202]][_0x53bb[3142]]=function(){return this[_0x53bb[3125]]};mxEditor[_0x53bb[202]][_0x53bb[807]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){var _0x39abx9=null;mxClient[_0x53bb[3101]]||(_0x39abx9= new mxSession(this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx2,_0x39abx3,_0x39abx4),_0x39abx9[_0x53bb[169]](mxEvent.RECEIVE,mxUtils[_0x53bb[885]](this,function(_0x39abx2,_0x39abx3){null!=_0x39abx3[_0x53bb[720]](_0x53bb[252])[_0x53bb[284]](_0x53bb[1088])&&this[_0x53bb[3181]]()})),_0x39abx9[_0x53bb[169]](mxEvent.DISCONNECT,_0x39abx5),_0x39abx9[_0x53bb[169]](mxEvent.CONNECT,_0x39abx5),_0x39abx9[_0x53bb[169]](mxEvent.NOTIFY,_0x39abx5),_0x39abx9[_0x53bb[169]](mxEvent.GET,_0x39abx5),_0x39abx9[_0x53bb[861]]());return _0x39abx9};mxEditor[_0x53bb[202]][_0x53bb[3218]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=this[_0x53bb[1179]][_0x53bb[2434]]()[_0x53bb[2054]][_0x39abx3];this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[2434]]()[_0x53bb[2074]](_0x39abx3,this[_0x53bb[1179]][_0x53bb[2434]]()[_0x53bb[2054]][_0x39abx2]);this[_0x53bb[1179]][_0x53bb[2434]]()[_0x53bb[2074]](_0x39abx2,_0x39abx4);this[_0x53bb[1179]][_0x53bb[802]]()};mxEditor[_0x53bb[202]][_0x53bb[3150]]=function(_0x39abx2){_0x39abx2=_0x39abx2||this[_0x53bb[1179]][_0x53bb[2452]]();null==_0x39abx2&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[2534]](),null==_0x39abx2&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]]()));if(null!=_0x39abx2){this[_0x53bb[1179]][_0x53bb[2126]](!0);var _0x39abx3=mxUtils[_0x53bb[445]](this[_0x53bb[1179]][_0x53bb[526]]),_0x39abx4=_0x39abx3[_0x53bb[235]]+10,_0x39abx3=_0x39abx3[_0x53bb[236]];if(null!=this[_0x53bb[716]]&&!this[_0x53bb[3139]]){_0x39abx4=this[_0x53bb[716]][_0x53bb[730]](),_0x39abx3=this[_0x53bb[716]][_0x53bb[732]]()}else {var _0x39abx5=this[_0x53bb[1179]][_0x53bb[2555]](_0x39abx2);null!=_0x39abx5&&(_0x39abx4+=_0x39abx5[_0x53bb[235]]+Math[_0x53bb[243]](200,_0x39abx5[_0x53bb[117]]),_0x39abx3+=_0x39abx5[_0x53bb[236]])};this[_0x53bb[3062]]();_0x39abx2=this[_0x53bb[3219]](_0x39abx2);null!=_0x39abx2&&(this[_0x53bb[716]]= new mxWindow(mxResources[_0x53bb[203]](this[_0x53bb[3110]])||this[_0x53bb[3110]],_0x39abx2,_0x39abx4,_0x39abx3,this[_0x53bb[3137]],this[_0x53bb[3138]],!1),this[_0x53bb[716]][_0x53bb[175]](!0))}};mxEditor[_0x53bb[202]][_0x53bb[3220]]=function(){return null!=this[_0x53bb[716]]};mxEditor[_0x53bb[202]][_0x53bb[3219]]=function(_0x39abx2){var _0x39abx3=this[_0x53bb[1179]][_0x53bb[502]](),_0x39abx4=_0x39abx3[_0x53bb[433]](_0x39abx2);if(mxUtils[_0x53bb[1331]](_0x39abx4)){var _0x39abx5= new mxForm(_0x53bb[716]);_0x39abx5[_0x53bb[961]](_0x53bb[3222],_0x39abx2[_0x53bb[1103]]())[_0x53bb[57]](_0x53bb[3221],_0x53bb[128]);var _0x39abx9=null,_0x39abxa=null,_0x39abx12=null,_0x39abx13=null,_0x39abx14=null;_0x39abx3[_0x53bb[1193]](_0x39abx2)&&(_0x39abx9=_0x39abx3[_0x53bb[1721]](_0x39abx2),null!=_0x39abx9&&(_0x39abxa=_0x39abx5[_0x53bb[961]](_0x53bb[125],_0x39abx9[_0x53bb[236]]),_0x39abx12=_0x39abx5[_0x53bb[961]](_0x53bb[361],_0x39abx9[_0x53bb[235]]),_0x39abx13=_0x39abx5[_0x53bb[961]](_0x53bb[117],_0x39abx9[_0x53bb[117]]),_0x39abx14=_0x39abx5[_0x53bb[961]](_0x53bb[119],_0x39abx9[_0x53bb[119]])));for(var _0x39abx15=_0x39abx3[_0x53bb[474]](_0x39abx2),_0x39abx16=_0x39abx5[_0x53bb[961]](_0x53bb[3223],_0x39abx15||_0x53bb[110]),_0x39abx17=_0x39abx4[_0x53bb[320]],_0x39abx18=[],_0x39abx4=0;_0x39abx4<_0x39abx17[_0x53bb[67]];_0x39abx4++){_0x39abx18[_0x39abx4]=_0x39abx5[_0x53bb[968]](_0x39abx17[_0x39abx4][_0x53bb[301]],_0x39abx17[_0x39abx4][_0x53bb[318]],_0x53bb[685]==_0x39abx17[_0x39abx4][_0x53bb[301]]?4:2)};_0x39abx4=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3062]]();_0x39abx3[_0x53bb[473]]();try{null!=_0x39abx9&&(_0x39abx9=_0x39abx9[_0x53bb[238]](),_0x39abx9[_0x53bb[235]]=parseFloat(_0x39abx12[_0x53bb[131]]),_0x39abx9[_0x53bb[236]]=parseFloat(_0x39abxa[_0x53bb[131]]),_0x39abx9[_0x53bb[117]]=parseFloat(_0x39abx13[_0x53bb[131]]),_0x39abx9[_0x53bb[119]]=parseFloat(_0x39abx14[_0x53bb[131]]),_0x39abx3[_0x53bb[1724]](_0x39abx2,_0x39abx9));0<_0x39abx16[_0x53bb[131]][_0x53bb[67]]?_0x39abx3[_0x53bb[475]](_0x39abx2,_0x39abx16[_0x53bb[131]]):_0x39abx3[_0x53bb[475]](_0x39abx2,null);for(var _0x39abx4=0;_0x39abx4<_0x39abx17[_0x53bb[67]];_0x39abx4++){var _0x39abx5= new mxCellAttributeChange(_0x39abx2,_0x39abx17[_0x39abx4][_0x53bb[301]],_0x39abx18[_0x39abx4][_0x53bb[131]]);_0x39abx3[_0x53bb[350]](_0x39abx5)};this[_0x53bb[1179]][_0x53bb[2455]](_0x39abx2)&&this[_0x53bb[1179]][_0x53bb[858]](_0x39abx2)}finally{_0x39abx3[_0x53bb[476]]()}});_0x39abx15=mxUtils[_0x53bb[885]](this,function(){this[_0x53bb[3062]]()});_0x39abx5[_0x53bb[956]](_0x39abx4,_0x39abx15);return _0x39abx5[_0x53bb[116]]};return null};mxEditor[_0x53bb[202]][_0x53bb[3062]]=function(){null!=this[_0x53bb[716]]&&(this[_0x53bb[716]][_0x53bb[515]](),this[_0x53bb[716]]=null)};mxEditor[_0x53bb[202]][_0x53bb[3175]]=function(){if(null==this[_0x53bb[3112]]){var _0x39abx2=document[_0x53bb[55]](_0x53bb[485]);_0x39abx2[_0x53bb[124]][_0x53bb[549]]=_0x53bb[952];_0x39abx2[_0x53bb[124]][_0x53bb[357]]=_0x53bb[550];var _0x39abx3=document[_0x53bb[112]][_0x53bb[159]],_0x39abx3= new mxWindow(mxResources[_0x53bb[203]](this[_0x53bb[3111]])||this[_0x53bb[3111]],_0x39abx2,_0x39abx3-220,this[_0x53bb[3132]],200);_0x39abx3[_0x53bb[164]](!0);_0x39abx3[_0x53bb[165]]= !1;var _0x39abx4=mxUtils[_0x53bb[885]](this,function(_0x39abx3){mxEvent[_0x53bb[762]](_0x39abx2);_0x39abx2[_0x53bb[339]]=_0x53bb[110];this[_0x53bb[3224]](_0x39abx2)});this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[169]](mxEvent.CHANGE,_0x39abx4);this[_0x53bb[1179]][_0x53bb[2435]]()[_0x53bb[169]](mxEvent.CHANGE,_0x39abx4);this[_0x53bb[1179]][_0x53bb[169]](mxEvent.ROOT,_0x39abx4);null!=this[_0x53bb[3131]]&&_0x39abx3[_0x53bb[951]](this[_0x53bb[3131]]);this[_0x53bb[3112]]=_0x39abx3;this[_0x53bb[3224]](_0x39abx2)};this[_0x53bb[3112]][_0x53bb[175]](!0)};mxEditor[_0x53bb[202]][_0x53bb[3225]]=function(_0x39abx2){null!=this[_0x53bb[3112]]&&(_0x39abx2=this[_0x53bb[3112]][_0x53bb[905]],mxEvent[_0x53bb[762]](_0x39abx2),_0x39abx2[_0x53bb[339]]=_0x53bb[110],this[_0x53bb[3224]](_0x39abx2))};mxEditor[_0x53bb[202]][_0x53bb[3224]]=function(_0x39abx2){};mxEditor[_0x53bb[202]][_0x53bb[3177]]=function(_0x39abx2){if(null==this[_0x53bb[2719]]){var _0x39abx3=document[_0x53bb[55]](_0x53bb[389]);_0x39abx3[_0x53bb[57]](_0x53bb[390],mxResources[_0x53bb[203]](_0x53bb[3134])||this[_0x53bb[3134]]);_0x39abx3[_0x53bb[57]](_0x53bb[119],_0x53bb[118]);_0x39abx3[_0x53bb[57]](_0x53bb[117],_0x53bb[118]);_0x39abx3[_0x53bb[57]](_0x53bb[3226],_0x53bb[468]);_0x39abx3[_0x53bb[124]][_0x53bb[1028]]=_0x53bb[1391];_0x39abx2=document[_0x53bb[112]][_0x53bb[159]];var _0x39abx4=document[_0x53bb[112]][_0x53bb[157]]||document[_0x53bb[158]][_0x53bb[157]],_0x39abx5= new mxWindow(mxResources[_0x53bb[203]](this[_0x53bb[3113]])||this[_0x53bb[3113]],_0x39abx3,(_0x39abx2-this[_0x53bb[3135]])/2,(_0x39abx4-this[_0x53bb[3136]])/3,this[_0x53bb[3135]],this[_0x53bb[3136]]);_0x39abx5[_0x53bb[161]](!0);_0x39abx5[_0x53bb[164]](!0);_0x39abx5[_0x53bb[165]]= !1;_0x39abx5[_0x53bb[163]](!0);null!=this[_0x53bb[3133]]&&_0x39abx5[_0x53bb[951]](this[_0x53bb[3133]]);mxClient[_0x53bb[133]]&&(_0x39abx2=function(_0x39abx2){_0x39abx3[_0x53bb[57]](_0x53bb[119],_0x39abx5[_0x53bb[485]][_0x53bb[167]]-26+_0x53bb[168])},_0x39abx5[_0x53bb[169]](mxEvent.RESIZE_END,_0x39abx2),_0x39abx5[_0x53bb[169]](mxEvent.MAXIMIZE,_0x39abx2),_0x39abx5[_0x53bb[169]](mxEvent.NORMALIZE,_0x39abx2),_0x39abx5[_0x53bb[169]](mxEvent.SHOW,_0x39abx2));this[_0x53bb[2719]]=_0x39abx5};this[_0x53bb[2719]][_0x53bb[175]](!0)};mxEditor[_0x53bb[202]][_0x53bb[3179]]=function(){if(null==this[_0x53bb[2136]]){var _0x39abx2=document[_0x53bb[55]](_0x53bb[485]);_0x39abx2[_0x53bb[124]][_0x53bb[277]]=_0x53bb[188];_0x39abx2[_0x53bb[124]][_0x53bb[117]]=_0x53bb[118];_0x39abx2[_0x53bb[124]][_0x53bb[119]]=_0x53bb[118];_0x39abx2[_0x53bb[124]][_0x53bb[1537]]=_0x53bb[1391];_0x39abx2[_0x53bb[124]][_0x53bb[270]]=_0x53bb[582];var _0x39abx3= new mxWindow(mxResources[_0x53bb[203]](this[_0x53bb[3114]])||this[_0x53bb[3114]],_0x39abx2,600,480,200,200,!1),_0x39abx4= new mxOutline(this[_0x53bb[1179]],_0x39abx2);_0x39abx3[_0x53bb[164]](!0);_0x39abx3[_0x53bb[163]](!0);_0x39abx3[_0x53bb[165]]= !1;_0x39abx3[_0x53bb[169]](mxEvent.RESIZE_END,function(){_0x39abx4[_0x53bb[2729]]()});this[_0x53bb[2136]]=_0x39abx3;this[_0x53bb[2136]][_0x53bb[2136]]=_0x39abx4};this[_0x53bb[2136]][_0x53bb[175]](!0);this[_0x53bb[2136]][_0x53bb[2136]][_0x53bb[2729]](!0)};mxEditor[_0x53bb[202]][_0x53bb[3086]]=function(_0x39abx2){_0x53bb[804]==_0x39abx2?(this[_0x53bb[1179]][_0x53bb[2316]][_0x53bb[2840]]= !1,this[_0x53bb[1179]][_0x53bb[1995]](!1)):_0x53bb[807]==_0x39abx2?(this[_0x53bb[1179]][_0x53bb[2316]][_0x53bb[2840]]= !1,this[_0x53bb[1179]][_0x53bb[1995]](!0)):_0x53bb[796]==_0x39abx2&&(this[_0x53bb[1179]][_0x53bb[2316]][_0x53bb[2840]]= !0,this[_0x53bb[1179]][_0x53bb[1995]](!1))};mxEditor[_0x53bb[202]][_0x53bb[3195]]=function(_0x39abx2,_0x39abx3,_0x39abx4){this[_0x53bb[3094]][_0x53bb[3065]](this,_0x39abx2,_0x39abx3,_0x39abx4)};mxEditor[_0x53bb[202]][_0x53bb[2503]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(null!=this[_0x53bb[2075]]){_0x39abx4=this[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[1978]](this[_0x53bb[2075]])}else {_0x39abx4= new mxCell(_0x53bb[110]);_0x39abx4[_0x53bb[1994]](!0);var _0x39abx5= new mxGeometry;_0x39abx5[_0x53bb[1500]]= !0;_0x39abx4[_0x53bb[1724]](_0x39abx5)};_0x39abx5=this[_0x53bb[2291]]();null!=_0x39abx5&&_0x39abx4[_0x53bb[475]](_0x39abx5);return _0x39abx4};mxEditor[_0x53bb[202]][_0x53bb[2291]]=function(){return this[_0x53bb[3119]]};mxEditor[_0x53bb[202]][_0x53bb[3227]]=function(_0x39abx2){return null!=this[_0x53bb[3093]]&&0<this[_0x53bb[3093]][_0x53bb[67]]&&this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx2)?this[_0x53bb[3093]][this[_0x53bb[3130]]++ %this[_0x53bb[3093]][_0x53bb[67]]]:null};mxEditor[_0x53bb[202]][_0x53bb[3228]]=function(_0x39abx2){if(null!=this[_0x53bb[3100]]){var _0x39abx3=this[_0x53bb[3227]](_0x39abx2);null!=_0x39abx3&&_0x39abx2[_0x53bb[475]](_0x39abx2[_0x53bb[474]]()+_0x53bb[471]+this[_0x53bb[3100]]+_0x53bb[226]+_0x39abx3)}};mxEditor[_0x53bb[202]][_0x53bb[817]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){for(var _0x39abx9=this[_0x53bb[1179]][_0x53bb[502]]();null!=_0x39abx2&&!this[_0x53bb[1179]][_0x53bb[2685]](_0x39abx2);){_0x39abx2=_0x39abx9[_0x53bb[1197]](_0x39abx2)};_0x39abx2=null!=_0x39abx2?_0x39abx2:this[_0x53bb[1179]][_0x53bb[2461]](_0x39abx4,_0x39abx5);var _0x39abxa=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[255]],_0x39abx12=_0x39abx9[_0x53bb[1721]](_0x39abx3),_0x39abx13=_0x39abx9[_0x53bb[1721]](_0x39abx2);if(this[_0x53bb[1179]][_0x53bb[1730]](_0x39abx3)&&!this[_0x53bb[1179]][_0x53bb[2412]]){_0x39abx2=null}else {if(null==_0x39abx2&&this[_0x53bb[3116]]){return null};if(null!=_0x39abx2&&null!=_0x39abx13){var _0x39abx14=this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[248]](_0x39abx2);if(null!=_0x39abx14){if(_0x39abx4-=_0x39abx14[_0x53bb[2078]][_0x53bb[235]]*_0x39abxa,_0x39abx5-=_0x39abx14[_0x53bb[2078]][_0x53bb[236]]*_0x39abxa,this[_0x53bb[1179]][_0x53bb[3229]]){var _0x39abx13=_0x39abx12[_0x53bb[117]],_0x39abx15=_0x39abx12[_0x53bb[119]],_0x39abx16=_0x39abx14[_0x53bb[235]]+_0x39abx14[_0x53bb[117]];_0x39abx4+_0x39abx13>_0x39abx16&&(_0x39abx4-=_0x39abx4+_0x39abx13-_0x39abx16);_0x39abx16=_0x39abx14[_0x53bb[236]]+_0x39abx14[_0x53bb[119]];_0x39abx5+_0x39abx15>_0x39abx16&&(_0x39abx5-=_0x39abx5+_0x39abx15-_0x39abx16)}}else {null!=_0x39abx13&&(_0x39abx4-=_0x39abx13[_0x53bb[235]]*_0x39abxa,_0x39abx5-=_0x39abx13[_0x53bb[236]]*_0x39abxa)}}};_0x39abx12=_0x39abx12[_0x53bb[238]]();_0x39abx12[_0x53bb[235]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx4/_0x39abxa-this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]][_0x53bb[235]]-this[_0x53bb[1179]][_0x53bb[1020]]/2);_0x39abx12[_0x53bb[236]]=this[_0x53bb[1179]][_0x53bb[1021]](_0x39abx5/_0x39abxa-this[_0x53bb[1179]][_0x53bb[249]]()[_0x53bb[513]][_0x53bb[236]]-this[_0x53bb[1179]][_0x53bb[1020]]/2);_0x39abx3[_0x53bb[1724]](_0x39abx12);null==_0x39abx2&&(_0x39abx2=this[_0x53bb[1179]][_0x53bb[902]]());this[_0x53bb[3228]](_0x39abx3);this[_0x53bb[746]]( new mxEventObject(mxEvent.BEFORE_ADD_VERTEX,_0x53bb[1988],_0x39abx3,_0x53bb[1101],_0x39abx2));_0x39abx9[_0x53bb[473]]();try{_0x39abx3=this[_0x53bb[1179]][_0x53bb[2103]](_0x39abx3,_0x39abx2),null!=_0x39abx3&&(this[_0x53bb[1179]][_0x53bb[2509]](_0x39abx3),this[_0x53bb[746]]( new mxEventObject(mxEvent.ADD_VERTEX,_0x53bb[1988],_0x39abx3)))}finally{_0x39abx9[_0x53bb[476]]()};null!=_0x39abx3&&(this[_0x53bb[1179]][_0x53bb[2450]](_0x39abx3),this[_0x53bb[1179]][_0x53bb[2564]](_0x39abx3),this[_0x53bb[746]]( new mxEventObject(mxEvent.AFTER_ADD_VERTEX,_0x53bb[1988],_0x39abx3)));return _0x39abx3};mxEditor[_0x53bb[202]][_0x53bb[515]]=function(){this[_0x53bb[2717]]||(this[_0x53bb[2717]]= !0,null!=this[_0x53bb[3112]]&&this[_0x53bb[3112]][_0x53bb[515]](),null!=this[_0x53bb[2136]]&&this[_0x53bb[2136]][_0x53bb[515]](),null!=this[_0x53bb[716]]&&this[_0x53bb[716]][_0x53bb[515]](),null!=this[_0x53bb[3098]]&&this[_0x53bb[3098]][_0x53bb[515]](),null!=this[_0x53bb[3203]]&&this[_0x53bb[3203]][_0x53bb[515]](),null!=this[_0x53bb[3082]]&&this[_0x53bb[3082]][_0x53bb[515]](),null!=this[_0x53bb[1179]]&&this[_0x53bb[1179]][_0x53bb[515]](),this[_0x53bb[3118]]=this[_0x53bb[879]]=null)};var mxCodecRegistry={codecs:[],aliases:[],register:function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[718]]();mxCodecRegistry[_0x53bb[3230]][_0x39abx3]=_0x39abx2;var _0x39abx4=mxUtils[_0x53bb[197]](_0x39abx2[_0x53bb[3231]][_0x53bb[196]]);_0x39abx4!=_0x39abx3&&mxCodecRegistry[_0x53bb[3232]](_0x39abx4,_0x39abx3)};return _0x39abx2},addAlias:function(_0x39abx2,_0x39abx3){mxCodecRegistry[_0x53bb[3233]][_0x39abx2]=_0x39abx3},getCodec:function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2){var _0x39abx3=mxUtils[_0x53bb[197]](_0x39abx2),_0x39abx4=mxCodecRegistry[_0x53bb[3233]][_0x39abx3];null!=_0x39abx4&&(_0x39abx3=_0x39abx4);_0x39abx3=mxCodecRegistry[_0x53bb[3230]][_0x39abx3];if(null==_0x39abx3){try{_0x39abx3= new mxObjectCodec( new _0x39abx2),mxCodecRegistry[_0x53bb[3234]](_0x39abx3)}catch(d){}}};return _0x39abx3}};function mxCodec(_0x39abx2){this[_0x53bb[395]]=_0x39abx2||mxUtils[_0x53bb[306]]();this[_0x53bb[68]]=[]}mxCodec[_0x53bb[202]][_0x53bb[395]]=null;mxCodec[_0x53bb[202]][_0x53bb[68]]=null;mxCodec[_0x53bb[202]][_0x53bb[3235]]= !1;mxCodec[_0x53bb[202]][_0x53bb[1104]]=function(_0x39abx2,_0x39abx3){return this[_0x53bb[68]][_0x39abx2]=_0x39abx3};mxCodec[_0x53bb[202]][_0x53bb[3236]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[68]][_0x39abx2],null==_0x39abx3&&(_0x39abx3=this[_0x53bb[1060]](_0x39abx2),null==_0x39abx3&&(_0x39abx2=this[_0x53bb[1362]](_0x39abx2),null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[1093]](_0x39abx2)))));return _0x39abx3};mxCodec[_0x53bb[202]][_0x53bb[1060]]=function(_0x39abx2){return null};mxCodec[_0x53bb[202]][_0x53bb[1362]]=function(_0x39abx2,_0x39abx3){return mxUtils[_0x53bb[290]](this[_0x53bb[395]][_0x53bb[158]],null!=_0x39abx3?_0x39abx3:_0x53bb[1363],_0x39abx2)};mxCodec[_0x53bb[202]][_0x53bb[1103]]=function(_0x39abx2){var _0x39abx3=null;null!=_0x39abx2&&(_0x39abx3=this[_0x53bb[3237]](_0x39abx2),null==_0x39abx3&&_0x39abx2 instanceof mxCell&&(_0x39abx3=_0x39abx2[_0x53bb[1103]](),null==_0x39abx3&&(_0x39abx3=mxCellPath[_0x53bb[385]](_0x39abx2),0==_0x39abx3[_0x53bb[67]]&&(_0x39abx3=_0x53bb[813]))));return _0x39abx3};mxCodec[_0x53bb[202]][_0x53bb[3237]]=function(_0x39abx2){return null};mxCodec[_0x53bb[202]][_0x53bb[514]]=function(_0x39abx2){var _0x39abx3=null;if(null!=_0x39abx2&&null!=_0x39abx2[_0x53bb[196]]){var _0x39abx4=mxCodecRegistry[_0x53bb[3238]](_0x39abx2[_0x53bb[196]]);null!=_0x39abx4?_0x39abx3=_0x39abx4[_0x53bb[514]](this,_0x39abx2):mxUtils[_0x53bb[1331]](_0x39abx2)?_0x39abx3=mxClient[_0x53bb[80]]?_0x39abx2[_0x53bb[511]](!0):this[_0x53bb[395]][_0x53bb[3239]](_0x39abx2,!0):mxLog[_0x53bb[283]](_0x53bb[3240]+mxUtils[_0x53bb[197]](_0x39abx2[_0x53bb[196]]))};return _0x39abx3};mxCodec[_0x53bb[202]][_0x53bb[1093]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=null;if(null!=_0x39abx2&&_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[289]]){var _0x39abx5=null;try{_0x39abx5=eval(_0x39abx2[_0x53bb[301]])}catch(e){};try{var _0x39abxa=mxCodecRegistry[_0x53bb[3238]](_0x39abx5);null!=_0x39abxa?_0x39abx4=_0x39abxa[_0x53bb[1093]](this,_0x39abx2,_0x39abx3):(_0x39abx4=_0x39abx2[_0x53bb[511]](!0),_0x39abx4[_0x53bb[1390]](_0x53bb[3069]))}catch(g){mxLog[_0x53bb[143]](_0x53bb[3241]+_0x39abx2[_0x53bb[301]]+_0x53bb[3186]+g[_0x53bb[281]])}};return _0x39abx4};mxCodec[_0x53bb[202]][_0x53bb[3242]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3[_0x53bb[62]](this[_0x53bb[514]](_0x39abx2));if(null==_0x39abx4||_0x39abx4){_0x39abx4=_0x39abx2[_0x53bb[262]]();for(var _0x39abx5=0;_0x39abx5<_0x39abx4;_0x39abx5++){this[_0x53bb[3242]](_0x39abx2[_0x53bb[263]](_0x39abx5),_0x39abx3)}}};mxCodec[_0x53bb[202]][_0x53bb[3243]]=function(_0x39abx2){return null!=_0x39abx2&&_0x53bb[279]== typeof _0x39abx2[_0x53bb[3243]]?_0x39abx2[_0x53bb[3243]]():!1};mxCodec[_0x53bb[202]][_0x53bb[3244]]=function(_0x39abx2,_0x39abx3){_0x39abx3=null!=_0x39abx3?_0x39abx3:!0;var _0x39abx4=null;if(null!=_0x39abx2&&_0x39abx2[_0x53bb[288]]==mxConstants[_0x53bb[289]]){_0x39abx4=mxCodecRegistry[_0x53bb[3238]](_0x39abx2[_0x53bb[301]]);if(!this[_0x53bb[3243]](_0x39abx4)){for(var _0x39abx5=_0x39abx2[_0x53bb[285]];null!=_0x39abx5&&!this[_0x53bb[3243]](_0x39abx4);){_0x39abx4=mxCodecRegistry[_0x53bb[3238]](_0x39abx5[_0x53bb[301]]),_0x39abx5=_0x39abx5[_0x53bb[287]]}};this[_0x53bb[3243]](_0x39abx4)||(_0x39abx4=mxCodecRegistry[_0x53bb[3238]](mxCell));_0x39abx4=_0x39abx4[_0x53bb[1093]](this,_0x39abx2);_0x39abx3&&this[_0x53bb[3245]](_0x39abx4)};return _0x39abx4};mxCodec[_0x53bb[202]][_0x53bb[3245]]=function(_0x39abx2){var _0x39abx3=_0x39abx2[_0x53bb[1101]],_0x39abx4=_0x39abx2[_0x53bb[1709]](!0),_0x39abx5=_0x39abx2[_0x53bb[1709]](!1);_0x39abx2[_0x53bb[1957]](null,!1);_0x39abx2[_0x53bb[1957]](null,!0);_0x39abx2[_0x53bb[1101]]=null;null!=_0x39abx3&&_0x39abx3[_0x53bb[1937]](_0x39abx2);null!=_0x39abx4&&_0x39abx4[_0x53bb[1960]](_0x39abx2,!0);null!=_0x39abx5&&_0x39abx5[_0x53bb[1960]](_0x39abx2,!1)};mxCodec[_0x53bb[202]][_0x53bb[57]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null!=_0x39abx3&&null!=_0x39abx4&&_0x39abx2[_0x53bb[57]](_0x39abx3,_0x39abx4)};function mxObjectCodec(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){this[_0x53bb[3231]]=_0x39abx2;this[_0x53bb[3246]]=null!=_0x39abx3?_0x39abx3:[];this[_0x53bb[3247]]=null!=_0x39abx4?_0x39abx4:[];this[_0x53bb[3248]]=null!=_0x39abx5?_0x39abx5:[];this[_0x53bb[3249]]={};for(var _0x39abx9 in this[_0x53bb[3248]]){this[_0x53bb[3249]][this[_0x53bb[3248]][_0x39abx9]]=_0x39abx9}}mxObjectCodec[_0x53bb[202]][_0x53bb[3231]]=null;mxObjectCodec[_0x53bb[202]][_0x53bb[3246]]=null;mxObjectCodec[_0x53bb[202]][_0x53bb[3247]]=null;mxObjectCodec[_0x53bb[202]][_0x53bb[3248]]=null;mxObjectCodec[_0x53bb[202]][_0x53bb[3249]]=null;mxObjectCodec[_0x53bb[202]][_0x53bb[718]]=function(){return mxUtils[_0x53bb[197]](this[_0x53bb[3231]][_0x53bb[196]])};mxObjectCodec[_0x53bb[202]][_0x53bb[3250]]=function(){return new this[_0x53bb[3231]][_0x53bb[196]]};mxObjectCodec[_0x53bb[202]][_0x53bb[3251]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[3249]][_0x39abx2];null!=_0x39abx3&&(_0x39abx2=_0x39abx3)};return _0x39abx2};mxObjectCodec[_0x53bb[202]][_0x53bb[3252]]=function(_0x39abx2){if(null!=_0x39abx2){var _0x39abx3=this[_0x53bb[3248]][_0x39abx2];null!=_0x39abx3&&(_0x39abx2=_0x39abx3)};return _0x39abx2};mxObjectCodec[_0x53bb[202]][_0x53bb[3253]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return _0x39abx3==mxObjectIdentity[_0x53bb[195]]||0<=mxUtils[_0x53bb[2]](this[_0x53bb[3246]],_0x39abx3)};mxObjectCodec[_0x53bb[202]][_0x53bb[3254]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){return 0<=mxUtils[_0x53bb[2]](this[_0x53bb[3247]],_0x39abx3)};mxObjectCodec[_0x53bb[202]][_0x53bb[514]]=function(_0x39abx2,_0x39abx3){var _0x39abx4=_0x39abx2[_0x53bb[395]][_0x53bb[55]](this[_0x53bb[718]]());_0x39abx3=this[_0x53bb[3255]](_0x39abx2,_0x39abx3,_0x39abx4);this[_0x53bb[3256]](_0x39abx2,_0x39abx3,_0x39abx4);return this[_0x53bb[3257]](_0x39abx2,_0x39abx3,_0x39abx4)};mxObjectCodec[_0x53bb[202]][_0x53bb[3256]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2[_0x53bb[57]](_0x39abx4,_0x53bb[1363],_0x39abx2[_0x53bb[1103]](_0x39abx3));for(var _0x39abx5 in _0x39abx3){var _0x39abx9=_0x39abx5,_0x39abxa=_0x39abx3[_0x39abx9];null!=_0x39abxa&&!this[_0x53bb[3253]](_0x39abx3,_0x39abx9,_0x39abxa,!0)&&(mxUtils[_0x53bb[1946]](_0x39abx9)&&(_0x39abx9=null),this[_0x53bb[3258]](_0x39abx2,_0x39abx3,_0x39abx9,_0x39abxa,_0x39abx4))}};mxObjectCodec[_0x53bb[202]][_0x53bb[3258]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){if(null!=_0x39abx5){if(this[_0x53bb[3254]](_0x39abx3,_0x39abx4,_0x39abx5,!0)){var _0x39abxa=_0x39abx2[_0x53bb[1103]](_0x39abx5);if(null==_0x39abxa){mxLog[_0x53bb[283]](_0x53bb[3259]+this[_0x53bb[718]]()+_0x53bb[87]+_0x39abx4+_0x53bb[226]+_0x39abx5);return};_0x39abx5=_0x39abxa};_0x39abxa=this[_0x53bb[3231]][_0x39abx4];if(null==_0x39abx4||_0x39abx2[_0x53bb[3235]]||_0x39abxa!=_0x39abx5){_0x39abx4=this[_0x53bb[3252]](_0x39abx4),this[_0x53bb[3260]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)}}};mxObjectCodec[_0x53bb[202]][_0x53bb[3260]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x53bb[194]!= typeof _0x39abx5?this[_0x53bb[3261]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9):this[_0x53bb[3262]](_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9)};mxObjectCodec[_0x53bb[202]][_0x53bb[3261]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx5=this[_0x53bb[3263]](_0x39abx5);null==_0x39abx4?(_0x39abx3=_0x39abx2[_0x53bb[395]][_0x53bb[55]](_0x53bb[99]),_0x53bb[279]== typeof _0x39abx5?_0x39abx3[_0x53bb[62]](_0x39abx2[_0x53bb[395]][_0x53bb[344]](_0x39abx5)):_0x39abx2[_0x53bb[57]](_0x39abx3,_0x53bb[131],_0x39abx5),_0x39abx9[_0x53bb[62]](_0x39abx3)):_0x53bb[279]!= typeof _0x39abx5&&_0x39abx2[_0x53bb[57]](_0x39abx9,_0x39abx4,_0x39abx5)};mxObjectCodec[_0x53bb[202]][_0x53bb[3262]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5,_0x39abx9){_0x39abx2=_0x39abx2[_0x53bb[514]](_0x39abx5);null!=_0x39abx2?(null!=_0x39abx4&&_0x39abx2[_0x53bb[57]](_0x53bb[3069],_0x39abx4),_0x39abx9[_0x53bb[62]](_0x39abx2)):mxLog[_0x53bb[283]](_0x53bb[3264]+this[_0x53bb[718]]()+_0x53bb[87]+_0x39abx4+_0x53bb[3186]+_0x39abx5)};mxObjectCodec[_0x53bb[202]][_0x53bb[3263]]=function(_0x39abx2){if(_0x53bb[82]== typeof _0x39abx2[_0x53bb[67]]&&(!0==_0x39abx2||!1==_0x39abx2)){_0x39abx2=!0==_0x39abx2?_0x53bb[500]:_0x53bb[468]};return _0x39abx2};mxObjectCodec[_0x53bb[202]][_0x53bb[3265]]=function(_0x39abx2){mxUtils[_0x53bb[1946]](_0x39abx2)&&(_0x39abx2=parseFloat(_0x39abx2));return _0x39abx2};mxObjectCodec[_0x53bb[202]][_0x53bb[3255]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx3};mxObjectCodec[_0x53bb[202]][_0x53bb[3257]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx4};mxObjectCodec[_0x53bb[202]][_0x53bb[1093]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx3[_0x53bb[284]](_0x53bb[1363]),_0x39abx9=_0x39abx2[_0x53bb[68]][_0x39abx5];null==_0x39abx9&&(_0x39abx9=_0x39abx4||this[_0x53bb[3250]](),null!=_0x39abx5&&_0x39abx2[_0x53bb[1104]](_0x39abx5,_0x39abx9));_0x39abx3=this[_0x53bb[3266]](_0x39abx2,_0x39abx3,_0x39abx9);this[_0x53bb[3267]](_0x39abx2,_0x39abx3,_0x39abx9);return this[_0x53bb[3268]](_0x39abx2,_0x39abx3,_0x39abx9)};mxObjectCodec[_0x53bb[202]][_0x53bb[3267]]=function(_0x39abx2,_0x39abx3,_0x39abx4){null!=_0x39abx3&&(this[_0x53bb[3269]](_0x39abx2,_0x39abx3,_0x39abx4),this[_0x53bb[3270]](_0x39abx2,_0x39abx3,_0x39abx4))};mxObjectCodec[_0x53bb[202]][_0x53bb[3269]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx3=_0x39abx3[_0x53bb[320]];if(null!=_0x39abx3){for(var _0x39abx5=0;_0x39abx5<_0x39abx3[_0x53bb[67]];_0x39abx5++){this[_0x53bb[3271]](_0x39abx2,_0x39abx3[_0x39abx5],_0x39abx4)}}};mxObjectCodec[_0x53bb[202]][_0x53bb[3271]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=_0x39abx3[_0x53bb[301]];if(_0x53bb[3069]!=_0x39abx5&&_0x53bb[1363]!=_0x39abx5){_0x39abx3=this[_0x53bb[3265]](_0x39abx3[_0x53bb[318]]);var _0x39abx9=this[_0x53bb[3251]](_0x39abx5);if(this[_0x53bb[3254]](_0x39abx4,_0x39abx9,_0x39abx3,!1)){_0x39abx2=_0x39abx2[_0x53bb[3236]](_0x39abx3);if(null==_0x39abx2){mxLog[_0x53bb[283]](_0x53bb[3272]+this[_0x53bb[718]]()+_0x53bb[87]+_0x39abx5+_0x53bb[226]+_0x39abx3);return};_0x39abx3=_0x39abx2};this[_0x53bb[3253]](_0x39abx4,_0x39abx5,_0x39abx3,!1)||(_0x39abx4[_0x39abx5]=_0x39abx3)}};mxObjectCodec[_0x53bb[202]][_0x53bb[3270]]=function(_0x39abx2,_0x39abx3,_0x39abx4){for(_0x39abx3=_0x39abx3[_0x53bb[285]];null!=_0x39abx3;){var _0x39abx5=_0x39abx3[_0x53bb[287]];_0x39abx3[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&!this[_0x53bb[3273]](_0x39abx2,_0x39abx3,_0x39abx4)&&this[_0x53bb[3274]](_0x39abx2,_0x39abx3,_0x39abx4);_0x39abx3=_0x39abx5}};mxObjectCodec[_0x53bb[202]][_0x53bb[3274]]=function(_0x39abx2,_0x39abx3,_0x39abx4){var _0x39abx5=this[_0x53bb[3251]](_0x39abx3[_0x53bb[284]](_0x53bb[3069]));if(null==_0x39abx5||!this[_0x53bb[3253]](_0x39abx4,_0x39abx5,_0x39abx3,!1)){var _0x39abx9=this[_0x53bb[3275]](_0x39abx4,_0x39abx5,_0x39abx3),_0x39abxa=null;_0x53bb[99]==_0x39abx3[_0x53bb[301]]?(_0x39abxa=_0x39abx3[_0x53bb[284]](_0x53bb[131]),null==_0x39abxa&&(_0x39abxa=mxUtils[_0x53bb[1545]](mxUtils[_0x53bb[329]](_0x39abx3)))):_0x39abxa=_0x39abx2[_0x53bb[1093]](_0x39abx3,_0x39abx9);this[_0x53bb[3276]](_0x39abx4,_0x39abx5,_0x39abxa,_0x39abx9)}};mxObjectCodec[_0x53bb[202]][_0x53bb[3275]]=function(_0x39abx2,_0x39abx3,_0x39abx4){_0x39abx2=_0x39abx2[_0x39abx3];_0x39abx2 instanceof Array&&0<_0x39abx2[_0x53bb[67]]&&(_0x39abx2=null);return _0x39abx2};mxObjectCodec[_0x53bb[202]][_0x53bb[3276]]=function(_0x39abx2,_0x39abx3,_0x39abx4,_0x39abx5){null!=_0x39abx4&&_0x39abx4!=_0x39abx5&&(null!=_0x39abx3&&0<_0x39abx3[_0x53bb[67]]?_0x39abx2[_0x39abx3]=_0x39abx4:_0x39abx2[_0x53bb[207]](_0x39abx4))};mxObjectCodec[_0x53bb[202]][_0x53bb[3273]]=function(_0x39abx2,_0x39abx3,_0x39abx4){if(_0x53bb[3277]==_0x39abx3[_0x53bb[301]]){_0x39abx3=_0x39abx3[_0x53bb[284]](_0x53bb[298]);if(null!=_0x39abx3){try{var _0x39abx5=mxUtils[_0x53bb[219]](_0x39abx3)[_0x53bb[874]]();null!=_0x39abx5&&_0x39abx2[_0x53bb[1093]](_0x39abx5,_0x39abx4)}catch(e){}};return !0};return !1};mxObjectCodec[_0x53bb[202]][_0x53bb[3266]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx3};mxObjectCodec[_0x53bb[202]][_0x53bb[3268]]=function(_0x39abx2,_0x39abx3,_0x39abx4){return _0x39abx4};mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxCell,[_0x53bb[1954],_0x53bb[1842],_0x53bb[1211],_0x53bb[1991]],[_0x53bb[1101],_0x53bb[1097],_0x53bb[772]]);_0x39abx2[_0x53bb[3243]]=function(){return !0};_0x39abx2[_0x53bb[3253]]=function(_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9){return mxObjectCodec[_0x53bb[202]][_0x53bb[3253]][_0x53bb[183]](this,arguments)||_0x39abx9&&_0x53bb[131]==_0x39abx4&&_0x39abx5[_0x53bb[288]]==mxConstants[_0x53bb[289]]};_0x39abx2[_0x53bb[3257]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx4[_0x53bb[131]]&&_0x39abx4[_0x53bb[131]][_0x53bb[288]]==mxConstants[_0x53bb[289]]){var _0x39abx9=_0x39abx5;_0x39abx5=mxClient[_0x53bb[80]]?_0x39abx4[_0x53bb[131]][_0x53bb[511]](!0):_0x39abx2[_0x53bb[395]][_0x53bb[3239]](_0x39abx4[_0x53bb[131]],!0);_0x39abx5[_0x53bb[62]](_0x39abx9);_0x39abx2=_0x39abx9[_0x53bb[284]](_0x53bb[1363]);_0x39abx5[_0x53bb[57]](_0x53bb[1363],_0x39abx2);_0x39abx9[_0x53bb[1390]](_0x53bb[1363])};return _0x39abx5};_0x39abx2[_0x53bb[3266]]=function(_0x39abx2,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx4,_0x39abxa=this[_0x53bb[718]]();_0x39abx4[_0x53bb[301]]!=_0x39abxa?(_0x39abx9=_0x39abx4[_0x53bb[64]](_0x39abxa)[0],null!=_0x39abx9&&_0x39abx9[_0x53bb[265]]==_0x39abx4?(mxUtils[_0x53bb[3278]](_0x39abx9,!0),mxUtils[_0x53bb[3278]](_0x39abx9,!1),_0x39abx9[_0x53bb[265]][_0x53bb[266]](_0x39abx9)):_0x39abx9=null,_0x39abx5[_0x53bb[131]]=_0x39abx4[_0x53bb[511]](!0),_0x39abx4=_0x39abx5[_0x53bb[131]][_0x53bb[284]](_0x53bb[1363]),null!=_0x39abx4&&(_0x39abx5[_0x53bb[1945]](_0x39abx4),_0x39abx5[_0x53bb[131]][_0x53bb[1390]](_0x53bb[1363]))):_0x39abx5[_0x53bb[1945]](_0x39abx4[_0x53bb[284]](_0x53bb[1363]));if(null!=_0x39abx9){for(_0x39abx4=0;_0x39abx4<this[_0x53bb[3247]][_0x53bb[67]];_0x39abx4++){var _0x39abxa=this[_0x53bb[3247]][_0x39abx4],_0x39abx12=_0x39abx9[_0x53bb[284]](_0x39abxa);if(null!=_0x39abx12){_0x39abx9[_0x53bb[1390]](_0x39abxa);var _0x39abx13=_0x39abx2[_0x53bb[68]][_0x39abx12]||_0x39abx2[_0x53bb[1060]](_0x39abx12);null==_0x39abx13&&(_0x39abx12=_0x39abx2[_0x53bb[1362]](_0x39abx12),null!=_0x39abx12&&(_0x39abx13=(mxCodecRegistry[_0x53bb[3230]][_0x39abx12[_0x53bb[301]]]||this)[_0x53bb[1093]](_0x39abx2,_0x39abx12)));_0x39abx5[_0x39abxa]=_0x39abx13}}};return _0x39abx9};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxGraphModel);_0x39abx2[_0x53bb[3256]]=function(_0x39abx2,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx2[_0x53bb[395]][_0x53bb[55]](_0x53bb[813]);_0x39abx2[_0x53bb[3242]](_0x39abx4[_0x53bb[501]](),_0x39abx9);_0x39abx5[_0x53bb[62]](_0x39abx9)};_0x39abx2[_0x53bb[3274]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x53bb[813]==_0x39abx4[_0x53bb[301]]?this[_0x53bb[3279]](_0x39abx2,_0x39abx4,_0x39abx5):mxObjectCodec[_0x53bb[202]][_0x53bb[3274]][_0x53bb[183]](this,arguments)};_0x39abx2[_0x53bb[3279]]=function(_0x39abx2,_0x39abx4,_0x39abx5){var _0x39abx9=null;for(_0x39abx4=_0x39abx4[_0x53bb[285]];null!=_0x39abx4;){var _0x39abxa=_0x39abx2[_0x53bb[3244]](_0x39abx4);null!=_0x39abxa&&null==_0x39abxa[_0x53bb[1197]]()&&(_0x39abx9=_0x39abxa);_0x39abx4=_0x39abx4[_0x53bb[287]]};null!=_0x39abx9&&_0x39abx5[_0x53bb[1927]](_0x39abx9)};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxRootChange,[_0x53bb[251],_0x53bb[257],_0x53bb[813]]);_0x39abx2[_0x53bb[3257]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx2[_0x53bb[3242]](_0x39abx4[_0x53bb[813]],_0x39abx5);return _0x39abx5};_0x39abx2[_0x53bb[3266]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx4[_0x53bb[285]]&&_0x39abx4[_0x53bb[285]][_0x53bb[288]]==mxConstants[_0x53bb[289]]){_0x39abx4=_0x39abx4[_0x53bb[511]](!0);var _0x39abx9=_0x39abx4[_0x53bb[285]];_0x39abx5[_0x53bb[813]]=_0x39abx2[_0x53bb[3244]](_0x39abx9,!1);_0x39abx5=_0x39abx9[_0x53bb[287]];_0x39abx9[_0x53bb[265]][_0x53bb[266]](_0x39abx9);for(_0x39abx9=_0x39abx5;null!=_0x39abx9;){_0x39abx5=_0x39abx9[_0x53bb[287]],_0x39abx2[_0x53bb[3244]](_0x39abx9),_0x39abx9[_0x53bb[265]][_0x53bb[266]](_0x39abx9),_0x39abx9=_0x39abx5}};return _0x39abx4};_0x39abx2[_0x53bb[3268]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx5[_0x53bb[257]]=_0x39abx5[_0x53bb[813]];return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxChildChange,[_0x53bb[251],_0x53bb[247],_0x53bb[1982]],[_0x53bb[1101],_0x53bb[257]]);_0x39abx2[_0x53bb[3254]]=function(_0x39abx2,_0x39abx4,_0x39abx5,_0x39abx9){return _0x53bb[247]==_0x39abx4&&(null!=_0x39abx2[_0x53bb[257]]|| !_0x39abx9)?!0:0<=mxUtils[_0x53bb[2]](this[_0x53bb[3247]],_0x39abx4)};_0x39abx2[_0x53bb[3257]]=function(_0x39abx2,_0x39abx4,_0x39abx5){this[_0x53bb[3254]](_0x39abx4,_0x53bb[247],_0x39abx4[_0x53bb[247]],!0)?_0x39abx5[_0x53bb[57]](_0x53bb[247],_0x39abx2[_0x53bb[1103]](_0x39abx4[_0x53bb[247]])):_0x39abx2[_0x53bb[3242]](_0x39abx4[_0x53bb[247]],_0x39abx5);return _0x39abx5};_0x39abx2[_0x53bb[3266]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx4[_0x53bb[285]]&&_0x39abx4[_0x53bb[285]][_0x53bb[288]]==mxConstants[_0x53bb[289]]){_0x39abx4=_0x39abx4[_0x53bb[511]](!0);var _0x39abx9=_0x39abx4[_0x53bb[285]];_0x39abx5[_0x53bb[247]]=_0x39abx2[_0x53bb[3244]](_0x39abx9,!1);_0x39abx5=_0x39abx9[_0x53bb[287]];_0x39abx9[_0x53bb[265]][_0x53bb[266]](_0x39abx9);for(_0x39abx9=_0x39abx5;null!=_0x39abx9;){_0x39abx5=_0x39abx9[_0x53bb[287]];if(_0x39abx9[_0x53bb[288]]==mxConstants[_0x53bb[289]]){var _0x39abxa=_0x39abx9[_0x53bb[284]](_0x53bb[1363]);null==_0x39abx2[_0x53bb[1060]](_0x39abxa)&&_0x39abx2[_0x53bb[3244]](_0x39abx9)};_0x39abx9[_0x53bb[265]][_0x53bb[266]](_0x39abx9);_0x39abx9=_0x39abx5}}else {_0x39abx9=_0x39abx4[_0x53bb[284]](_0x53bb[247]),_0x39abx5[_0x53bb[247]]=_0x39abx2[_0x53bb[3236]](_0x39abx9)};return _0x39abx4};_0x39abx2[_0x53bb[3268]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx5[_0x53bb[247]][_0x53bb[1101]]=_0x39abx5[_0x53bb[257]];_0x39abx5[_0x53bb[257]]=_0x39abx5[_0x53bb[1101]];_0x39abx5[_0x53bb[1982]]=_0x39abx5[_0x53bb[1983]];return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxTerminalChange,[_0x53bb[251],_0x53bb[257]],[_0x53bb[246],_0x53bb[1984]]);_0x39abx2[_0x53bb[3268]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx5[_0x53bb[257]]=_0x39abx5[_0x53bb[1984]];return _0x39abx5};return _0x39abx2}());var mxGenericChangeCodec=function(_0x39abx2,_0x39abx3){var _0x39abx4= new mxObjectCodec(_0x39abx2,[_0x53bb[251],_0x53bb[257]],[_0x53bb[246]]);_0x39abx4[_0x53bb[3268]]=function(_0x39abx2,_0x39abx4,_0x39abxa){mxUtils[_0x53bb[1331]](_0x39abxa[_0x53bb[246]])&&(_0x39abxa[_0x53bb[246]]=_0x39abx2[_0x53bb[3244]](_0x39abxa[_0x53bb[246]],!1));_0x39abxa[_0x53bb[257]]=_0x39abxa[_0x39abx3];return _0x39abxa};return _0x39abx4};mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxValueChange,_0x53bb[131]));mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxStyleChange,_0x53bb[124]));mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxGeometryChange,_0x53bb[256]));mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxCollapseChange,_0x53bb[1985]));mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxVisibleChange,_0x53bb[189]));mxCodecRegistry[_0x53bb[3234]](mxGenericChangeCodec( new mxCellAttributeChange,_0x53bb[131]));mxCodecRegistry[_0x53bb[3234]](function(){return new mxObjectCodec( new mxGraph,_0x53bb[3280][_0x53bb[224]](_0x53bb[185]))}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxGraphView);_0x39abx2[_0x53bb[514]]=function(_0x39abx2,_0x39abx4){return this[_0x53bb[3242]](_0x39abx2,_0x39abx4,_0x39abx4[_0x53bb[1179]][_0x53bb[502]]()[_0x53bb[501]]())};_0x39abx2[_0x53bb[3242]]=function(_0x39abx2,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx4[_0x53bb[1179]][_0x53bb[502]](),_0x39abxa=_0x39abx4[_0x53bb[248]](_0x39abx5),_0x39abx12=_0x39abx9[_0x53bb[1197]](_0x39abx5);if(null==_0x39abx12||null!=_0x39abxa){var _0x39abx13=_0x39abx9[_0x53bb[262]](_0x39abx5),_0x39abx14=_0x39abx4[_0x53bb[1179]][_0x53bb[1198]](_0x39abx5),_0x39abx15=null;_0x39abx12==_0x39abx9[_0x53bb[501]]()?_0x39abx15=_0x53bb[3281]:null==_0x39abx12?_0x39abx15=_0x53bb[1179]:_0x39abx9[_0x53bb[250]](_0x39abx5)?_0x39abx15=_0x53bb[1989]:0<_0x39abx13&&null!=_0x39abx14?_0x39abx15=_0x53bb[1504]:_0x39abx9[_0x53bb[1193]](_0x39abx5)&&(_0x39abx15=_0x53bb[1988]);if(null!=_0x39abx15){var _0x39abx16=_0x39abx2[_0x53bb[395]][_0x53bb[55]](_0x39abx15);null!=_0x39abx4[_0x53bb[1179]][_0x53bb[2183]](_0x39abx5)&&(_0x39abx16[_0x53bb[57]](_0x53bb[685],_0x39abx4[_0x53bb[1179]][_0x53bb[2183]](_0x39abx5)),_0x39abx4[_0x53bb[1179]][_0x53bb[2186]](_0x39abx5)&&_0x39abx16[_0x53bb[57]](_0x53bb[1428],!0));if(null==_0x39abx12){var _0x39abx17=_0x39abx4[_0x53bb[517]]();null!=_0x39abx17&&(_0x39abx16[_0x53bb[57]](_0x53bb[235],Math[_0x53bb[488]](_0x39abx17[_0x53bb[235]])),_0x39abx16[_0x53bb[57]](_0x53bb[236],Math[_0x53bb[488]](_0x39abx17[_0x53bb[236]])),_0x39abx16[_0x53bb[57]](_0x53bb[117],Math[_0x53bb[488]](_0x39abx17[_0x53bb[117]])),_0x39abx16[_0x53bb[57]](_0x53bb[119],Math[_0x53bb[488]](_0x39abx17[_0x53bb[119]])));_0x39abx16[_0x53bb[57]](_0x53bb[255],_0x39abx4[_0x53bb[255]])}else {if(null!=_0x39abxa&&null!=_0x39abx14){for(_0x39abx17 in _0x39abxa[_0x53bb[124]]){_0x39abx12=_0x39abxa[_0x53bb[124]][_0x39abx17],_0x53bb[279]== typeof _0x39abx12&&_0x53bb[194]== typeof _0x39abx12&&(_0x39abx12=mxStyleRegistry[_0x53bb[718]](_0x39abx12)),null!=_0x39abx12&&(_0x53bb[279]!= typeof _0x39abx12&&_0x53bb[194]!= typeof _0x39abx12)&&_0x39abx16[_0x53bb[57]](_0x39abx17,_0x39abx12)};_0x39abx12=_0x39abxa[_0x53bb[439]];if(null!=_0x39abx12&&0<_0x39abx12[_0x53bb[67]]){_0x39abx14=Math[_0x53bb[488]](_0x39abx12[0][_0x53bb[235]])+_0x53bb[537]+Math[_0x53bb[488]](_0x39abx12[0][_0x53bb[236]]);for(_0x39abx17=1;_0x39abx17<_0x39abx12[_0x53bb[67]];_0x39abx17++){_0x39abx14+=_0x53bb[185]+Math[_0x53bb[488]](_0x39abx12[_0x39abx17][_0x53bb[235]])+_0x53bb[537]+Math[_0x53bb[488]](_0x39abx12[_0x39abx17][_0x53bb[236]])};_0x39abx16[_0x53bb[57]](_0x53bb[1525],_0x39abx14)}else {_0x39abx16[_0x53bb[57]](_0x53bb[235],Math[_0x53bb[488]](_0x39abxa[_0x53bb[235]])),_0x39abx16[_0x53bb[57]](_0x53bb[236],Math[_0x53bb[488]](_0x39abxa[_0x53bb[236]])),_0x39abx16[_0x53bb[57]](_0x53bb[117],Math[_0x53bb[488]](_0x39abxa[_0x53bb[117]])),_0x39abx16[_0x53bb[57]](_0x53bb[119],Math[_0x53bb[488]](_0x39abxa[_0x53bb[119]]))};_0x39abx17=_0x39abxa[_0x53bb[2079]];null!=_0x39abx17&&(0!=_0x39abx17[_0x53bb[235]]&&_0x39abx16[_0x53bb[57]](_0x53bb[1126],Math[_0x53bb[488]](_0x39abx17[_0x53bb[235]])),0!=_0x39abx17[_0x53bb[236]]&&_0x39abx16[_0x53bb[57]](_0x53bb[1125],Math[_0x53bb[488]](_0x39abx17[_0x53bb[236]])))}};for(_0x39abx17=0;_0x39abx17<_0x39abx13;_0x39abx17++){_0x39abxa=this[_0x53bb[3242]](_0x39abx2,_0x39abx4,_0x39abx9[_0x53bb[263]](_0x39abx5,_0x39abx17)),null!=_0x39abxa&&_0x39abx16[_0x53bb[62]](_0x39abxa)}}};return _0x39abx16};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxStylesheet);_0x39abx2[_0x53bb[514]]=function(_0x39abx2,_0x39abx4){var _0x39abx5=_0x39abx2[_0x53bb[395]][_0x53bb[55]](this[_0x53bb[718]]()),_0x39abx9;for(_0x39abx9 in _0x39abx4[_0x53bb[2054]]){var _0x39abxa=_0x39abx4[_0x53bb[2054]][_0x39abx9],_0x39abx12=_0x39abx2[_0x53bb[395]][_0x53bb[55]](_0x53bb[99]);if(null!=_0x39abx9){_0x39abx12[_0x53bb[57]](_0x53bb[3069],_0x39abx9);for(var _0x39abx13 in _0x39abxa){var _0x39abx14=this[_0x53bb[3282]](_0x39abx13,_0x39abxa[_0x39abx13]);if(null!=_0x39abx14){var _0x39abx15=_0x39abx2[_0x53bb[395]][_0x53bb[55]](_0x53bb[99]);_0x39abx15[_0x53bb[57]](_0x53bb[131],_0x39abx14);_0x39abx15[_0x53bb[57]](_0x53bb[3069],_0x39abx13);_0x39abx12[_0x53bb[62]](_0x39abx15)}};0<_0x39abx12[_0x53bb[271]][_0x53bb[67]]&&_0x39abx5[_0x53bb[62]](_0x39abx12)}};return _0x39abx5};_0x39abx2[_0x53bb[3282]]=function(_0x39abx2,_0x39abx4){var _0x39abx5= typeof _0x39abx4;_0x53bb[279]==_0x39abx5?_0x39abx4=mxStyleRegistry[_0x53bb[718]](style[j]):_0x53bb[194]==_0x39abx5&&(_0x39abx4=null);return _0x39abx4};_0x39abx2[_0x53bb[1093]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx5=_0x39abx5|| new this[_0x53bb[3231]][_0x53bb[196]];var _0x39abx9=_0x39abx4[_0x53bb[284]](_0x53bb[1363]);null!=_0x39abx9&&(_0x39abx2[_0x53bb[68]][_0x39abx9]=_0x39abx5);for(_0x39abx4=_0x39abx4[_0x53bb[285]];null!=_0x39abx4;){if(!this[_0x53bb[3273]](_0x39abx2,_0x39abx4,_0x39abx5)&&_0x53bb[99]==_0x39abx4[_0x53bb[301]]&&(_0x39abx9=_0x39abx4[_0x53bb[284]](_0x53bb[3069]),null!=_0x39abx9)){var _0x39abxa=_0x39abx4[_0x53bb[284]](_0x53bb[1284]),_0x39abx12=null!=_0x39abxa?mxUtils[_0x53bb[238]](_0x39abx5[_0x53bb[2054]][_0x39abxa]):null;null==_0x39abx12&&(null!=_0x39abxa&&mxLog[_0x53bb[283]](_0x53bb[3283]+_0x39abxa+_0x53bb[3284]),_0x39abx12={});for(_0x39abxa=_0x39abx4[_0x53bb[285]];null!=_0x39abxa;){if(_0x39abxa[_0x53bb[288]]==mxConstants[_0x53bb[289]]){var _0x39abx13=_0x39abxa[_0x53bb[284]](_0x53bb[3069]);if(_0x53bb[99]==_0x39abxa[_0x53bb[301]]){var _0x39abx14=mxUtils[_0x53bb[329]](_0x39abxa),_0x39abx15=null;null!=_0x39abx14&&0<_0x39abx14[_0x53bb[67]]?_0x39abx15=mxUtils[_0x53bb[1545]](_0x39abx14):(_0x39abx15=_0x39abxa[_0x53bb[284]](_0x53bb[131]),mxUtils[_0x53bb[1946]](_0x39abx15)&&(_0x39abx15=parseFloat(_0x39abx15)));null!=_0x39abx15&&(_0x39abx12[_0x39abx13]=_0x39abx15)}else {_0x53bb[205]==_0x39abxa[_0x53bb[301]]&& delete _0x39abx12[_0x39abx13]}};_0x39abxa=_0x39abxa[_0x53bb[287]]};_0x39abx5[_0x53bb[2074]](_0x39abx9,_0x39abx12)};_0x39abx4=_0x39abx4[_0x53bb[287]]};return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxDefaultKeyHandler);_0x39abx2[_0x53bb[514]]=function(_0x39abx2,_0x39abx4){return null};_0x39abx2[_0x53bb[1093]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx5){for(_0x39abx4=_0x39abx4[_0x53bb[285]];null!=_0x39abx4;){if(!this[_0x53bb[3273]](_0x39abx2,_0x39abx4,_0x39abx5)&&_0x53bb[99]==_0x39abx4[_0x53bb[301]]){var _0x39abx9=_0x39abx4[_0x53bb[284]](_0x53bb[3069]),_0x39abxa=_0x39abx4[_0x53bb[284]](_0x53bb[892]),_0x39abx12=_0x39abx4[_0x53bb[284]](_0x53bb[2207]);_0x39abx5[_0x53bb[3063]](_0x39abx9,_0x39abxa,_0x39abx12)};_0x39abx4=_0x39abx4[_0x53bb[287]]}};return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxDefaultToolbar);_0x39abx2[_0x53bb[514]]=function(_0x39abx2,_0x39abx4){return null};_0x39abx2[_0x53bb[1093]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(null!=_0x39abx5){var _0x39abx9=_0x39abx5[_0x53bb[3061]];for(_0x39abx4=_0x39abx4[_0x53bb[285]];null!=_0x39abx4;){if(_0x39abx4[_0x53bb[288]]==mxConstants[_0x53bb[289]]&&!this[_0x53bb[3273]](_0x39abx2,_0x39abx4,_0x39abx5)){if(_0x53bb[3072]==_0x39abx4[_0x53bb[301]]){_0x39abx5[_0x53bb[1051]]()}else {if(_0x53bb[345]==_0x39abx4[_0x53bb[301]]){_0x39abx5[_0x53bb[3082]][_0x53bb[1052]]()}else {if(_0x53bb[1054]==_0x39abx4[_0x53bb[301]]){_0x39abx5[_0x53bb[3082]][_0x53bb[1053]]()}else {if(_0x53bb[99]==_0x39abx4[_0x53bb[301]]){var _0x39abxa=_0x39abx4[_0x53bb[284]](_0x53bb[3069]),_0x39abxa=mxResources[_0x53bb[203]](_0x39abxa)||_0x39abxa,_0x39abx12=_0x39abx4[_0x53bb[284]](_0x53bb[2916]),_0x39abx13=_0x39abx4[_0x53bb[284]](_0x53bb[3285]),_0x39abx14=_0x39abx4[_0x53bb[284]](_0x53bb[892]),_0x39abx15=_0x39abx4[_0x53bb[284]](_0x53bb[3286]),_0x39abx16=_0x39abx4[_0x53bb[284]](_0x53bb[3231]),_0x39abx17=_0x53bb[468]!=_0x39abx4[_0x53bb[284]](_0x53bb[3287]),_0x39abx18=mxUtils[_0x53bb[329]](_0x39abx4),_0x39abx19=null;if(null!=_0x39abx14){_0x39abx19=_0x39abx5[_0x53bb[1025]](_0x39abxa,_0x39abx12,_0x39abx14,_0x39abx13)}else {if(null!=_0x39abx15){var _0x39abx1a=mxUtils[_0x53bb[1545]](_0x39abx18),_0x39abx19=_0x39abx5[_0x53bb[1048]](_0x39abxa,_0x39abx12,_0x39abx15,_0x39abx13,_0x39abx1a)}else {if(null!=_0x39abx16||null!=_0x39abx18&&0<_0x39abx18[_0x53bb[67]]){_0x39abx19=_0x39abx9[_0x53bb[3118]][_0x39abx16],_0x39abx16=_0x39abx4[_0x53bb[284]](_0x53bb[124]),null!=_0x39abx19&&null!=_0x39abx16&&(_0x39abx19=_0x39abx19[_0x53bb[238]](),_0x39abx19[_0x53bb[475]](_0x39abx16)),_0x39abx16=null,null!=_0x39abx18&&0<_0x39abx18[_0x53bb[67]]&&(_0x39abx16=mxUtils[_0x53bb[1545]](_0x39abx18)),_0x39abx19=_0x39abx5[_0x53bb[3087]](_0x39abxa,_0x39abx12,_0x39abx19,_0x39abx13,_0x39abx16,_0x39abx17)}else {if(_0x39abx13=mxUtils[_0x53bb[1540]](_0x39abx4),0<_0x39abx13[_0x53bb[67]]){if(null==_0x39abx12){_0x39abx16=_0x39abx5[_0x53bb[1038]](_0x39abxa);for(_0x39abxa=0;_0x39abxa<_0x39abx13[_0x53bb[67]];_0x39abxa++){_0x39abx17=_0x39abx13[_0x39abxa],_0x53bb[3072]==_0x39abx17[_0x53bb[301]]?_0x39abx5[_0x53bb[972]](_0x39abx16,_0x53bb[3288]):_0x53bb[99]==_0x39abx17[_0x53bb[301]]&&(_0x39abx12=_0x39abx17[_0x53bb[284]](_0x53bb[3069]),_0x39abx17=_0x39abx17[_0x53bb[284]](_0x53bb[892]),_0x39abx5[_0x53bb[3085]](_0x39abx16,_0x39abx12,_0x39abx17))}}else {var _0x39abx1b=null,_0x39abx1c=_0x39abx5[_0x53bb[3087]](_0x39abxa,_0x39abx12,function(){var _0x39abx2=_0x39abx9[_0x53bb[3118]][_0x39abx1b[_0x53bb[131]]];if(null!=_0x39abx2){var _0x39abx2=_0x39abx2[_0x53bb[238]](),_0x39abx3=_0x39abx1b[_0x53bb[1040]][_0x39abx1b[_0x53bb[1039]]][_0x53bb[3289]];null!=_0x39abx3&&_0x39abx2[_0x53bb[475]](_0x39abx3);return _0x39abx2};mxLog[_0x53bb[283]](_0x53bb[3290]+_0x39abx2+_0x53bb[3291]);return null},null,null,_0x39abx17),_0x39abx1b=_0x39abx5[_0x53bb[970]]();mxEvent[_0x53bb[169]](_0x39abx1b,_0x53bb[826],function(){_0x39abx5[_0x53bb[3082]][_0x53bb[1047]](_0x39abx1c,function(_0x39abx2){_0x39abx2=mxUtils[_0x53bb[2196]](_0x39abx9[_0x53bb[1179]][_0x53bb[526]],mxEvent[_0x53bb[731]](_0x39abx2),mxEvent[_0x53bb[733]](_0x39abx2));return _0x39abx9[_0x53bb[817]](null,_0x39abx1a(),_0x39abx2[_0x53bb[235]],_0x39abx2[_0x53bb[236]])});_0x39abx5[_0x53bb[3082]][_0x53bb[1023]]= !1});for(_0x39abxa=0;_0x39abxa<_0x39abx13[_0x53bb[67]];_0x39abxa++){_0x39abx17=_0x39abx13[_0x39abxa],_0x53bb[3072]==_0x39abx17[_0x53bb[301]]?_0x39abx5[_0x53bb[972]](_0x39abx1b,_0x53bb[3288]):_0x53bb[99]==_0x39abx17[_0x53bb[301]]&&(_0x39abx12=_0x39abx17[_0x53bb[284]](_0x53bb[3069]),_0x39abx18=_0x39abx17[_0x53bb[284]](_0x53bb[3231]),_0x39abx5[_0x53bb[972]](_0x39abx1b,_0x39abx12,_0x39abx18||_0x39abx16)[_0x53bb[3289]]=_0x39abx17[_0x53bb[284]](_0x53bb[124]))}}}}}};null!=_0x39abx19&&(_0x39abx16=_0x39abx4[_0x53bb[284]](_0x53bb[1363]),null!=_0x39abx16&&0<_0x39abx16[_0x53bb[67]]&&_0x39abx19[_0x53bb[57]](_0x53bb[1363],_0x39abx16))}}}}};_0x39abx4=_0x39abx4[_0x53bb[287]]}};return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxDefaultPopupMenu);_0x39abx2[_0x53bb[514]]=function(_0x39abx2,_0x39abx4){return null};_0x39abx2[_0x53bb[1093]]=function(_0x39abx2,_0x39abx4,_0x39abx5){var _0x39abx9=_0x39abx4[_0x53bb[64]](_0x53bb[3277])[0];null!=_0x39abx9?this[_0x53bb[3273]](_0x39abx2,_0x39abx9,_0x39abx5):null!=_0x39abx5&&(_0x39abx5[_0x53bb[3064]]=_0x39abx4);return _0x39abx5};return _0x39abx2}());mxCodecRegistry[_0x53bb[3234]](function(){var _0x39abx2= new mxObjectCodec( new mxEditor,_0x53bb[3292][_0x53bb[224]](_0x53bb[185]));_0x39abx2[_0x53bb[3268]]=function(_0x39abx2,_0x39abx4,_0x39abx5){_0x39abx2=_0x39abx4[_0x53bb[284]](_0x53bb[2075]);null!=_0x39abx2&&(_0x39abx4[_0x53bb[1390]](_0x53bb[2075]),_0x39abx5[_0x53bb[2075]]=_0x39abx5[_0x53bb[3118]][_0x39abx2]);_0x39abx2=_0x39abx4[_0x53bb[284]](_0x53bb[3120]);null!=_0x39abx2&&(_0x39abx4[_0x53bb[1390]](_0x53bb[3120]),_0x39abx5[_0x53bb[3120]]=_0x39abx5[_0x53bb[3118]][_0x39abx2]);return _0x39abx5};_0x39abx2[_0x53bb[3274]]=function(_0x39abx2,_0x39abx4,_0x39abx5){if(_0x53bb[3293]==_0x39abx4[_0x53bb[301]]){if(_0x53bb[3118]==_0x39abx4[_0x53bb[284]](_0x53bb[3069])){this[_0x53bb[3294]](_0x39abx2,_0x39abx4,_0x39abx5);return}}else {if(_0x53bb[3295]==_0x39abx4[_0x53bb[301]]){this[_0x53bb[3296]](_0x39abx2,_0x39abx4,_0x39abx5);return}};mxObjectCodec[_0x53bb[202]][_0x53bb[3274]][_0x53bb[183]](this,arguments)};_0x39abx2[_0x53bb[3296]]=function(_0x39abx2,_0x39abx4,_0x39abx5){for(_0x39abx2=_0x39abx4[_0x53bb[285]];null!=_0x39abx2;){if(_0x53bb[99]==_0x39abx2[_0x53bb[301]]){_0x39abx4=_0x39abx2[_0x53bb[284]](_0x53bb[3069]);var _0x39abx9=_0x39abx2[_0x53bb[284]](_0x53bb[980]),_0x39abxa=_0x39abx2[_0x53bb[284]](_0x53bb[124]),_0x39abx12=null;if(null!=_0x39abx9){_0x39abx12=document[_0x53bb[1362]](_0x39abx9),null!=_0x39abx12&&null!=_0x39abxa&&(_0x39abx12[_0x53bb[124]][_0x53bb[103]]+=_0x53bb[471]+_0x39abxa)}else {var _0x39abx9=parseInt(_0x39abx2[_0x53bb[284]](_0x53bb[235])),_0x39abx13=parseInt(_0x39abx2[_0x53bb[284]](_0x53bb[236])),_0x39abx14=_0x39abx2[_0x53bb[284]](_0x53bb[117]),_0x39abx15=_0x39abx2[_0x53bb[284]](_0x53bb[119]),_0x39abx12=document[_0x53bb[55]](_0x53bb[485]);_0x39abx12[_0x53bb[124]][_0x53bb[103]]=_0x39abxa;( new mxWindow(mxResources[_0x53bb[203]](_0x39abx4)||_0x39abx4,_0x39abx12,_0x39abx9,_0x39abx13,_0x39abx14,_0x39abx15,!1,!0))[_0x53bb[175]](!0)};_0x53bb[1179]==_0x39abx4?_0x39abx5[_0x53bb[3202]](_0x39abx12):_0x53bb[3082]==_0x39abx4?_0x39abx5[_0x53bb[3204]](_0x39abx12):_0x53bb[924]==_0x39abx4?_0x39abx5[_0x53bb[3208]](_0x39abx12):_0x53bb[879]==_0x39abx4?_0x39abx5[_0x53bb[3205]](_0x39abx12):_0x53bb[201]==_0x39abx4&&_0x39abx5[_0x53bb[3297]](_0x39abx12)}else {_0x53bb[3298]==_0x39abx2[_0x53bb[301]]?mxResources[_0x53bb[99]](_0x39abx2[_0x53bb[284]](_0x53bb[3299])):_0x53bb[94]==_0x39abx2[_0x53bb[301]]&&mxClient[_0x53bb[54]](_0x53bb[94],_0x39abx2[_0x53bb[284]](_0x53bb[298]))};_0x39abx2=_0x39abx2[_0x53bb[287]]}};_0x39abx2[_0x53bb[3294]]=function(_0x39abx2,_0x39abx4,_0x39abx5){null==_0x39abx5[_0x53bb[3118]]&&(_0x39abx5[_0x53bb[3118]]=[]);_0x39abx4=mxUtils[_0x53bb[1540]](_0x39abx4);for(var _0x39abx9=0;_0x39abx9<_0x39abx4[_0x53bb[67]];_0x39abx9++){for(var _0x39abxa=_0x39abx4[_0x39abx9][_0x53bb[284]](_0x53bb[3069]),_0x39abx12=_0x39abx4[_0x39abx9][_0x53bb[285]];null!=_0x39abx12&&1!=_0x39abx12[_0x53bb[288]];){_0x39abx12=_0x39abx12[_0x53bb[287]]};null!=_0x39abx12&&(_0x39abx5[_0x53bb[3118]][_0x39abxa]=_0x39abx2[_0x53bb[3244]](_0x39abx12))}};return _0x39abx2}()) \ No newline at end of file +var _0x285e=["\x32\x2E\x30\x2E\x30\x2E\x30","\x4D\x53\x49\x45","\x69\x6E\x64\x65\x78\x4F\x66","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x4D\x53\x49\x45\x20\x36","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x76","\x6F","\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F","\x4F\x70\x65\x72\x61\x2F","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x34\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x33\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x32\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x31\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x30\x2E","\x50\x72\x65\x73\x74\x6F\x2F\x31\x2E","\x41\x70\x70\x6C\x65\x57\x65\x62\x4B\x69\x74\x2F","\x43\x68\x72\x6F\x6D\x65\x2F","\x46\x69\x72\x65\x66\x6F\x78\x2F","\x46\x69\x72\x65\x66\x6F\x78\x2F\x31\x2E","\x46\x69\x72\x65\x66\x6F\x78\x2F\x32\x2E","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F\x31\x2E","\x49\x63\x65\x77\x65\x61\x73\x65\x6C\x2F\x32\x2E","\x53\x65\x61\x4D\x6F\x6E\x6B\x65\x79\x2F","\x53\x65\x61\x4D\x6F\x6E\x6B\x65\x79\x2F\x31\x2E","\x49\x63\x65\x61\x70\x65\x2F","\x49\x63\x65\x61\x70\x65\x2F\x31\x2E","\x53\x65\x61\x6D\x6F\x6E\x6B\x65\x79\x2F","\x47\x61\x6C\x65\x6F\x6E\x2F","\x45\x70\x69\x70\x68\x61\x6E\x79\x2F","\x47\x65\x63\x6B\x6F\x2F","\x43\x61\x6D\x69\x6E\x6F\x2F\x31\x2E","\x45\x70\x69\x70\x68\x61\x6E\x79\x2F\x32\x2E","\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F\x32\x2E","\x4D\x49\x43\x52\x4F\x53\x4F\x46\x54\x20\x49\x4E\x54\x45\x52\x4E\x45\x54\x20\x45\x58\x50\x4C\x4F\x52\x45\x52","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x61\x70\x70\x4E\x61\x6D\x65","\x4D\x41\x43\x49\x4E\x54\x4F\x53\x48","\x49\x50\x41\x44","\x49\x50\x4F\x44","\x49\x50\x48\x4F\x4E\x45","\x41\x4E\x44\x52\x4F\x49\x44","\x68\x74\x74\x70\x3A\x2F\x2F","\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x68\x74\x74\x70\x73\x3A\x2F\x2F","\x49\x53\x5F\x56\x4D\x4C","\x49\x53\x5F\x53\x56\x47","\x49\x53\x5F\x49\x45\x36","\x3C\x6C\x69\x6E\x6B\x20\x72\x65\x6C\x3D\x22","\x22\x20\x68\x72\x65\x66\x3D\x22","\x22\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x22\x49\x53\x4F\x2D\x38\x38\x35\x39\x2D\x31\x22\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x2F\x3E","\x77\x72\x69\x74\x65","\x6C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x61\x72\x73\x65\x74","\x49\x53\x4F\x2D\x38\x38\x35\x39\x2D\x31","\x74\x79\x70\x65","\x74\x65\x78\x74\x2F\x63\x73\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x68\x65\x61\x64","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x73\x42\x79\x54\x61\x67\x4E\x61\x6D\x65","\x3C\x73\x63\x72\x69\x70\x74\x20\x73\x72\x63\x3D\x22","\x22\x3E\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E","\x6C\x65\x6E\x67\x74\x68","\x6F\x62\x6A\x65\x63\x74\x73","\x6D\x78\x4C\x69\x73\x74\x65\x6E\x65\x72\x4C\x69\x73\x74","\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x4F\x50","\x49\x53\x5F\x4F\x54","\x43\x53\x53\x5F\x50\x52\x45\x46\x49\x58","\x4F","\x49\x53\x5F\x53\x46","\x49\x53\x5F\x47\x43","\x57\x65\x62\x6B\x69\x74","\x49\x53\x5F\x4D\x54","\x4D\x6F\x7A","\x49\x53\x5F\x49\x45","\x6D\x73","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x2E\x74\x78\x74","\x2F","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x62\x61\x73\x65\x50\x61\x74\x68","\x2E","\x69\x6D\x61\x67\x65\x42\x61\x73\x65\x50\x61\x74\x68","\x2F\x69\x6D\x61\x67\x65\x73","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x75\x73\x65\x72\x4C\x61\x6E\x67\x75\x61\x67\x65","\x64\x65\x66\x61\x75\x6C\x74\x4C\x61\x6E\x67\x75\x61\x67\x65","\x65\x6E","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x63\x73\x73\x2F\x63\x6F\x6D\x6D\x6F\x6E\x2E\x63\x73\x73","\x6C\x61\x6E\x67\x75\x61\x67\x65\x73","\x75\x72\x6E\x3A\x73\x63\x68\x65\x6D\x61\x73\x2D\x6D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2D\x63\x6F\x6D\x3A\x76\x6D\x6C","\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C","\x61\x64\x64","\x6E\x61\x6D\x65\x73\x70\x61\x63\x65\x73","\x75\x72\x6E\x3A\x73\x63\x68\x65\x6D\x61\x73\x2D\x6D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2D\x63\x6F\x6D\x3A\x6F\x66\x66\x69\x63\x65\x3A\x6F\x66\x66\x69\x63\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65\x53\x68\x65\x65\x74","\x63\x73\x73\x54\x65\x78\x74","\x76\x5C\x3A\x2A\x7B\x62\x65\x68\x61\x76\x69\x6F\x72\x3A\x75\x72\x6C\x28\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C\x29\x7D\x6F\x5C\x3A\x2A\x7B\x62\x65\x68\x61\x76\x69\x6F\x72\x3A\x75\x72\x6C\x28\x23\x64\x65\x66\x61\x75\x6C\x74\x23\x56\x4D\x4C\x29\x7D","\x2F\x63\x73\x73\x2F\x65\x78\x70\x6C\x6F\x72\x65\x72\x2E\x63\x73\x73","\x6F\x6E\x75\x6E\x6C\x6F\x61\x64","\x64\x69\x73\x70\x6F\x73\x65","\x61\x74\x74\x61\x63\x68\x45\x76\x65\x6E\x74","\x43\x6F\x6E\x73\x6F\x6C\x65","","\x77\x69\x6E\x64\x6F\x77","\x62\x6F\x64\x79","\x63\x6F\x6E\x73\x6F\x6C\x65\x4E\x61\x6D\x65","\x20\x2D\x20\x6D\x78\x47\x72\x61\x70\x68\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x74\x61\x62\x6C\x65","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x74\x62\x6F\x64\x79","\x74\x72","\x74\x64","\x76\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x73\x74\x79\x6C\x65","\x74\x6F\x70","\x74\x65\x78\x74\x61\x72\x65\x61","\x72\x65\x61\x64\x4F\x6E\x6C\x79","\x74\x72\x75\x65","\x72\x65\x73\x69\x7A\x65","\x6E\x6F\x6E\x65","\x76\x61\x6C\x75\x65","\x62\x75\x66\x66\x65\x72","\x49\x53\x5F\x4E\x53","\x42\x61\x63\x6B\x43\x6F\x6D\x70\x61\x74","\x63\x6F\x6D\x70\x61\x74\x4D\x6F\x64\x65","\x39\x39\x25","\x33\x30\x70\x78","\x49\x6E\x66\x6F","\x69\x6E\x66\x6F","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x44\x4F\x4D","\x67\x65\x74\x49\x6E\x6E\x65\x72\x48\x74\x6D\x6C","\x64\x65\x62\x75\x67","\x54\x72\x61\x63\x65","\x54\x52\x41\x43\x45","\x54\x72\x61\x63\x69\x6E\x67\x20\x65\x6E\x61\x62\x6C\x65\x64","\x54\x72\x61\x63\x69\x6E\x67\x20\x64\x69\x73\x61\x62\x6C\x65\x64","\x43\x6F\x70\x79","\x63\x6F\x70\x79","\x61\x6C\x65\x72\x74","\x53\x68\x6F\x77","\x70\x6F\x70\x75\x70","\x43\x6C\x65\x61\x72","\x6E\x75\x6D\x62\x65\x72","\x69\x6E\x6E\x65\x72\x57\x69\x64\x74\x68","\x69\x6E\x6E\x65\x72\x48\x65\x69\x67\x68\x74","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x6D\x61\x78","\x73\x65\x74\x4D\x61\x78\x69\x6D\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x53\x63\x72\x6F\x6C\x6C\x61\x62\x6C\x65","\x73\x65\x74\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x43\x6C\x6F\x73\x61\x62\x6C\x65","\x64\x65\x73\x74\x72\x6F\x79\x4F\x6E\x43\x6C\x6F\x73\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x78","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x39\x32\x70\x78","\x77\x72\x69\x74\x65\x6C\x6E","\x62\x75\x74\x74\x6F\x6E","\x63\x6C\x69\x63\x6B","\x69\x73\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x56\x69\x73\x69\x62\x6C\x65","\x69\x6E\x69\x74","\x45\x6E\x74\x65\x72\x69\x6E\x67\x20","\x67\x65\x74\x54\x69\x6D\x65","\x20\x28","\x20\x6D\x73\x29","\x4C\x65\x61\x76\x69\x6E\x67\x20","\x44\x45\x42\x55\x47","\x61\x70\x70\x6C\x79","\x57\x41\x52\x4E","\x20","\x50\x72\x65\x73\x74\x6F\x2F\x32\x2E\x35","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x68\x69\x64\x64\x65\x6E","\x76\x69\x73\x69\x62\x6C\x65","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x0A","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x49\x64","\x6F\x62\x6A\x65\x63\x74","\x46\x49\x45\x4C\x44\x5F\x4E\x41\x4D\x45","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x67\x65\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E\x4E\x61\x6D\x65","\x23","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x6C\x65\x61\x72","\x6D\x61\x70","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x65\x74","\x70\x75\x74","\x72\x65\x6D\x6F\x76\x65","\x67\x65\x74\x4B\x65\x79\x73","\x70\x75\x73\x68","\x67\x65\x74\x56\x61\x6C\x75\x65\x73","\x76\x69\x73\x69\x74","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x2D","\x6C\x6F\x61\x64\x53\x70\x65\x63\x69\x61\x6C\x42\x75\x6E\x64\x6C\x65","\x5F","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x4E\x4F\x4E\x45","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x6C\x6F\x61\x64","\x69\x73\x52\x65\x61\x64\x79","\x67\x65\x74\x54\x65\x78\x74","\x70\x61\x72\x73\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x42\x75\x6E\x64\x6C\x65","\x73\x70\x6C\x69\x74","\x63\x68\x61\x72\x41\x74","\x3D","\x63\x68\x61\x72\x43\x6F\x64\x65\x41\x74","\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x45\x6E\x63\x6F\x64\x65\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x7B","\x7D","\x6A\x6F\x69\x6E","\x78","\x79","\x65\x71\x75\x61\x6C\x73","\x63\x6C\x6F\x6E\x65","\x63\x61\x6C\x6C","\x73\x65\x74\x52\x65\x63\x74","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x6D\x69\x6E","\x67\x72\x6F\x77","\x67\x65\x74\x50\x6F\x69\x6E\x74","\x63\x65\x6C\x6C","\x63\x68\x69\x6C\x64","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x69\x73\x45\x64\x67\x65","\x6D\x6F\x64\x65\x6C","\x6E\x6F\x64\x65","\x73\x68\x61\x70\x65","\x73\x65\x74\x4F\x70\x61\x63\x69\x74\x79","\x73\x63\x61\x6C\x65","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x72\x65\x76\x69\x6F\x75\x73","\x72\x65\x64\x72\x61\x77","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x61\x73\x63\x61\x64\x65\x4F\x70\x61\x63\x69\x74\x79","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x67\x65\x74\x45\x64\x67\x65\x73","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x65\x72\x72\x6F\x72","\x63\x6C\x6F\x73\x65","\x2F\x65\x72\x72\x6F\x72\x2E\x67\x69\x66","\x63\x75\x72\x73\x6F\x72","\x63\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x72\x65\x6D\x6F\x76\x65\x43\x75\x72\x73\x6F\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x53\x74\x79\x6C\x65","\x67\x65\x74\x43\x6F\x6D\x70\x75\x74\x65\x64\x53\x74\x79\x6C\x65","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x53\x74\x79\x6C\x65","\x73\x63\x72\x6F\x6C\x6C","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x66\x75\x6E\x63\x74\x69\x6F\x6E","\x76\x61\x72\x20\x5F\x6D\x78\x4A\x61\x76\x61\x53\x63\x72\x69\x70\x74\x45\x78\x70\x72\x65\x73\x73\x69\x6F\x6E\x3D","\x6D\x65\x73\x73\x61\x67\x65","\x20\x77\x68\x69\x6C\x65\x20\x65\x76\x61\x6C\x75\x61\x74\x69\x6E\x67\x20","\x77\x61\x72\x6E","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x66\x69\x6E\x64\x4E\x6F\x64\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x66\x69\x6E\x64\x4E\x6F\x64\x65\x42\x79\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x2F\x2F\x2A\x5B\x40","\x3D\x27","\x27\x5D","\x73\x65\x6C\x65\x63\x74\x53\x69\x6E\x67\x6C\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x69\x74\x65\x72\x61\x74\x65\x4E\x65\x78\x74","\x65\x76\x61\x6C\x75\x61\x74\x65","\x6E\x61\x6D\x65","\x28","\x73\x70\x6C\x69\x63\x65","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x69\x6D\x70\x6C\x65\x6D\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x41\x63\x74\x69\x76\x65\x58\x4F\x62\x6A\x65\x63\x74","\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x58\x4D\x4C\x44\x4F\x4D","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x61\x73\x79\x6E\x63","\x66\x61\x6C\x73\x65","\x6C\x6F\x61\x64\x58\x4D\x4C","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x70\x61\x72\x73\x65\x46\x72\x6F\x6D\x53\x74\x72\x69\x6E\x67","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x65\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x72\x65\x6D\x6F\x76\x65\x41\x6C\x6C\x52\x61\x6E\x67\x65\x73","\x20\x20","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x54\x45\x58\x54","\x6E\x6F\x64\x65\x56\x61\x6C\x75\x65","\x3C","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x3D\x22","\x22","\x3E\x0A","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x3C\x2F","\x2F\x3E\x0A","\x70\x72\x65\x76\x69\x6F\x75\x73\x53\x69\x62\x6C\x69\x6E\x67","\x67\x65\x74\x54\x65\x78\x74\x43\x6F\x6E\x74\x65\x6E\x74","\x74\x72\x69\x6D","\x26\x61\x6D\x70\x3B","\x26\x71\x75\x6F\x74\x3B","\x26\x23\x33\x39\x3B","\x26\x6C\x74\x3B","\x26\x67\x74\x3B","\x26\x23\x78\x61\x3B","\x74\x61\x67\x55\x72\x6E","\x78\x6D\x6C","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x73\x65\x72\x69\x61\x6C\x69\x7A\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x3E","\x6F\x75\x74\x65\x72\x48\x54\x4D\x4C","\x2F\x3E","\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x4E\x6F\x64\x65","\x62\x72","\x70","\x66\x69\x6C\x74\x65\x72","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x41\x6C\x70\x68\x61\x49\x6D\x61\x67\x65\x4C\x6F\x61\x64\x65\x72\x28\x73\x72\x63\x3D\x27","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66\x27\x2C\x20\x73\x69\x7A\x69\x6E\x67\x4D\x65\x74\x68\x6F\x64\x3D\x27\x73\x63\x61\x6C\x65\x27\x29","\x65\x78\x65\x63\x75\x74\x65","\x73\x70\x61\x6E","\x63\x6F\x6C\x6F\x72","\x62\x6C\x75\x65","\x74\x65\x78\x74\x44\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x70\x6F\x69\x6E\x74\x65\x72","\x70\x61\x64\x64\x69\x6E\x67\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x55\x6E\x69\x76\x65\x72\x73\x61\x6C\x58\x50\x43\x6F\x6E\x6E\x65\x63\x74","\x65\x6E\x61\x62\x6C\x65\x50\x72\x69\x76\x69\x6C\x65\x67\x65","\x50\x72\x69\x76\x69\x6C\x65\x67\x65\x4D\x61\x6E\x61\x67\x65\x72","\x73\x65\x63\x75\x72\x69\x74\x79","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x72\x65\x61\x64\x20\x66\x69\x6C\x65\x20\x64\x65\x6E\x69\x65\x64\x2E","\x6E\x73\x49\x4C\x6F\x63\x61\x6C\x46\x69\x6C\x65","\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x73","\x63\x72\x65\x61\x74\x65\x49\x6E\x73\x74\x61\x6E\x63\x65","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x66\x69\x6C\x65\x2F\x6C\x6F\x63\x61\x6C\x3B\x31","\x63\x6C\x61\x73\x73\x65\x73","\x69\x6E\x69\x74\x57\x69\x74\x68\x50\x61\x74\x68","\x65\x78\x69\x73\x74\x73","\x46\x69\x6C\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x2E","\x6E\x73\x49\x46\x69\x6C\x65\x49\x6E\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x66\x69\x6C\x65\x2D\x69\x6E\x70\x75\x74\x2D\x73\x74\x72\x65\x61\x6D\x3B\x31","\x6E\x73\x49\x53\x63\x72\x69\x70\x74\x61\x62\x6C\x65\x49\x6E\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x73\x63\x72\x69\x70\x74\x61\x62\x6C\x65\x69\x6E\x70\x75\x74\x73\x74\x72\x65\x61\x6D\x3B\x31","\x61\x76\x61\x69\x6C\x61\x62\x6C\x65","\x72\x65\x61\x64","\x53\x63\x72\x69\x70\x74\x69\x6E\x67\x2E\x46\x69\x6C\x65\x53\x79\x73\x74\x65\x6D\x4F\x62\x6A\x65\x63\x74","\x72\x65\x61\x64\x41\x6C\x6C","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x77\x72\x69\x74\x65\x20\x66\x69\x6C\x65\x20\x64\x65\x6E\x69\x65\x64\x2E","\x63\x72\x65\x61\x74\x65","\x6E\x73\x49\x46\x69\x6C\x65\x4F\x75\x74\x70\x75\x74\x53\x74\x72\x65\x61\x6D","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x6E\x65\x74\x77\x6F\x72\x6B\x2F\x66\x69\x6C\x65\x2D\x6F\x75\x74\x70\x75\x74\x2D\x73\x74\x72\x65\x61\x6D\x3B\x31","\x66\x6C\x75\x73\x68","\x69\x66\x72\x61\x6D\x65","\x73\x72\x63","\x63\x6F\x6E\x74\x65\x6E\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6F\x70\x65\x6E","\x66\x6F\x63\x75\x73","\x50\x65\x72\x6D\x69\x73\x73\x69\x6F\x6E\x20\x74\x6F\x20\x73\x61\x76\x65\x20\x64\x6F\x63\x75\x6D\x65\x6E\x74\x20\x64\x65\x6E\x69\x65\x64\x2E","\x64\x6F\x63\x75\x6D\x65\x6E\x74","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x69\x6E\x64\x6F\x77","\x53\x61\x76\x65\x41\x73","\x65\x78\x65\x63\x43\x6F\x6D\x6D\x61\x6E\x64","\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x44\x61\x74\x61","\x54\x65\x78\x74","\x73\x65\x74\x44\x61\x74\x61","\x6E\x73\x49\x43\x6C\x69\x70\x62\x6F\x61\x72\x64","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x77\x69\x64\x67\x65\x74\x2F\x63\x6C\x69\x70\x62\x6F\x61\x72\x64\x3B\x31","\x6E\x73\x49\x54\x72\x61\x6E\x73\x66\x65\x72\x61\x62\x6C\x65","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x77\x69\x64\x67\x65\x74\x2F\x74\x72\x61\x6E\x73\x66\x65\x72\x61\x62\x6C\x65\x3B\x31","\x74\x65\x78\x74\x2F\x75\x6E\x69\x63\x6F\x64\x65","\x61\x64\x64\x44\x61\x74\x61\x46\x6C\x61\x76\x6F\x72","\x6E\x73\x49\x53\x75\x70\x70\x6F\x72\x74\x73\x53\x74\x72\x69\x6E\x67","\x40\x6D\x6F\x7A\x69\x6C\x6C\x61\x2E\x6F\x72\x67\x2F\x73\x75\x70\x70\x6F\x72\x74\x73\x2D\x73\x74\x72\x69\x6E\x67\x3B\x31","\x64\x61\x74\x61","\x73\x65\x74\x54\x72\x61\x6E\x73\x66\x65\x72\x44\x61\x74\x61","\x6B\x47\x6C\x6F\x62\x61\x6C\x43\x6C\x69\x70\x62\x6F\x61\x72\x64","\x47\x45\x54","\x73\x65\x6E\x64","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x6F\x6E\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x6E\x67\x65","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x20\x3D\x20\x5B\x6E\x75\x6C\x6C\x5D\x0A","\x20\x3D\x3E\x20\x5B\x46\x75\x6E\x63\x74\x69\x6F\x6E\x5D\x0A","\x20\x3D\x3E\x20\x5B","\x5D\x0A","\x20\x3D\x20","\x50\x49","\x61\x62\x73","\x63\x6F\x73","\x73\x69\x6E","\x73\x71\x72\x74","\x61\x74\x61\x6E\x32","\x63\x65\x69\x6C","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x67\x65\x74\x56\x61\x6C\x75\x65","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x4E\x4F\x4E\x45","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x4E\x4F\x52\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x57\x45\x53\x54","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x53\x4F\x55\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x45\x41\x53\x54","\x61\x62\x73\x6F\x6C\x75\x74\x65\x50\x6F\x69\x6E\x74\x73","\x70\x74\x53\x65\x67\x44\x69\x73\x74\x53\x71","\x76\x69\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x73","\x6F\x66\x66\x73\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x53\x63\x72\x6F\x6C\x6C\x4F\x72\x69\x67\x69\x6E","\x67\x65\x74\x4F\x66\x66\x73\x65\x74","\x5E\x5B","\x5C\x73","\x5D\x2B","\x67","\x5B","\x5D\x2B\x24","\x72\x74\x72\x69\x6D","\x6C\x74\x72\x69\x6D","\x30\x78","\x30\x58","\x61\x6E\x69\x6D\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x73","\x66\x61\x64\x65\x4F\x75\x74","\x69\x73\x56\x6D\x6C","\x61\x6C\x70\x68\x61\x28\x6F\x70\x61\x63\x69\x74\x79\x3D","\x29","\x6F\x70\x61\x63\x69\x74\x79","\x43\x53\x53\x31\x43\x6F\x6D\x70\x61\x74","\x56\x4D\x4C\x5F\x50\x52\x45\x46\x49\x58","\x3A\x69\x6D\x61\x67\x65","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30","\x63\x6F\x6D\x70\x61\x72\x65","\x73\x6F\x72\x74","\x3B","\x69\x6E\x64\x65\x78\x4F\x66\x53\x74\x79\x6C\x65\x6E\x61\x6D\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x65\x74\x53\x74\x79\x6C\x65\x46\x6C\x61\x67","\x3D\x30","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x64\x69\x76","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x72\x6F\x75\x6E\x64","\x6C\x69\x6E\x65\x48\x65\x69\x67\x68\x74","\x4C\x49\x4E\x45\x5F\x48\x45\x49\x47\x48\x54","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x7A\x6F\x6F\x6D","\x31","\x67\x65\x74\x52\x6F\x6F\x74","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x69\x73\x45\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x64\x72\x61\x77\x50\x61\x6E\x65","\x6F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74\x4E\x53","\x63\x61\x6E\x76\x61\x73","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x67\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x65\x6E\x63\x6F\x64\x65","\x64\x65\x73\x74\x72\x6F\x79","\x50\x41\x47\x45\x5F\x46\x4F\x52\x4D\x41\x54\x5F\x41\x34\x5F\x50\x4F\x52\x54\x52\x41\x49\x54","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x63\x61\x6C\x65","\x66\x6C\x6F\x6F\x72","\x3C\x68\x74\x6D\x6C\x3E\x3C\x68\x65\x61\x64\x3E","\x62\x61\x73\x65","\x3C\x73\x74\x79\x6C\x65\x3E","\x73\x74\x79\x6C\x65\x53\x68\x65\x65\x74\x73","\x3C\x2F\x73\x74\x79\x6C\x65\x3E\x3C\x2F\x68\x65\x61\x64\x3E","\x3C\x62\x6F\x64\x79\x3E","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x3C\x2F\x62\x6F\x64\x79\x3E","\x3C\x68\x74\x6D\x6C\x3E","\x44\x49\x56","\x3C\x68\x74\x6D\x6C","\x3C\x68\x65\x61\x64\x3E","\x67\x65\x74\x4F\x75\x74\x65\x72\x48\x74\x6D\x6C","\x3C\x2F\x68\x65\x61\x64\x3E","\x3C\x2F\x68\x74\x6D\x6C\x3E","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x68\x6F\x77","\x70\x72\x69\x6E\x74","\x36\x33\x36\x70\x78","\x34\x36\x30\x70\x78","\x70\x72\x65","\x26\x6E\x62\x73\x70\x3B","\x3C\x62\x72\x3E","\x50\x6F\x70\x75\x70\x20\x57\x69\x6E\x64\x6F\x77","\x3C\x70\x72\x65\x3E","\x3C\x2F\x70\x72\x65","\x70\x61\x64\x64\x69\x6E\x67","\x32\x30\x70\x78","\x65\x72\x72\x6F\x72\x49\x6D\x61\x67\x65","\x76\x61\x6C\x69\x67\x6E","\x62\x6F\x74\x74\x6F\x6D","\x6D\x69\x64\x64\x6C\x65","\xA0","\x65\x72\x72\x6F\x72\x52\x65\x73\x6F\x75\x72\x63\x65","\x66\x6C\x6F\x61\x74\x3A\x72\x69\x67\x68\x74","\x63\x6C\x6F\x73\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x72\x61\x67\x4F\x66\x66\x73\x65\x74","\x54\x4F\x4F\x4C\x54\x49\x50\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4F\x46\x46\x53\x45\x54","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74\x73","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x46\x6F\x72\x45\x76\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x45\x6C\x65\x6D\x65\x6E\x74","\x65\x78\x61\x63\x74","\x66\x61\x73\x74\x65\x72","\x66\x61\x73\x74\x65\x73\x74","\x73\x76\x67","\x76\x6D\x6C","\x6D\x69\x78\x65\x64\x48\x74\x6D\x6C","\x70\x72\x65\x66\x65\x72\x48\x74\x6D\x6C","\x73\x74\x72\x69\x63\x74\x48\x74\x6D\x6C","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x32\x30\x30\x30\x2F\x73\x76\x67","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x6C\x69\x6E\x6B","\x67\x72\x61\x79","\x23\x30\x30\x46\x46\x30\x30","\x23\x46\x46\x30\x30\x30\x30","\x6D\x6F\x76\x65","\x64\x65\x66\x61\x75\x6C\x74","\x23\x30\x30\x30\x30\x46\x46","\x23\x30\x30\x39\x39\x46\x46","\x62\x6C\x61\x63\x6B","\x79\x65\x6C\x6C\x6F\x77","\x23\x30\x30\x46\x46\x46\x46","\x23\x30\x30\x33\x33\x46\x46","\x41\x72\x69\x61\x6C\x2C\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x50\x6F\x72\x74","\x74\x61\x72\x67\x65\x74\x50\x6F\x72\x74","\x70\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C","\x65\x78\x69\x74\x58","\x65\x78\x69\x74\x59","\x65\x78\x69\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x65\x6E\x74\x72\x79\x58","\x65\x6E\x74\x72\x79\x59","\x65\x6E\x74\x72\x79\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x66\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74\x44\x69\x72\x65\x63\x74\x69\x6F\x6E","\x73\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x73\x65\x70\x61\x72\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x73\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x61\x6C\x69\x67\x6E","\x6C\x61\x62\x65\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x65\x72\x74\x69\x63\x61\x6C\x4C\x61\x62\x65\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x6D\x61\x67\x65\x41\x73\x70\x65\x63\x74","\x69\x6D\x61\x67\x65\x41\x6C\x69\x67\x6E","\x69\x6D\x61\x67\x65\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x67\x6C\x61\x73\x73","\x69\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65\x57\x69\x64\x74\x68","\x69\x6D\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x69\x6D\x61\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x69\x6D\x61\x67\x65\x42\x6F\x72\x64\x65\x72","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x6E\x6F\x4C\x61\x62\x65\x6C","\x6E\x6F\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x61\x62\x65\x6C\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x6C\x61\x62\x65\x6C\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x6C\x61\x62\x65\x6C\x50\x61\x64\x64\x69\x6E\x67","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x68\x61\x70\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x49\x6D\x61\x67\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x47\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x70\x61\x63\x69\x6E\x67","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x57\x69\x64\x74\x68","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x48\x65\x69\x67\x68\x74","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x44\x69\x72\x65\x63\x74\x69\x6F\x6E","\x73\x68\x61\x64\x6F\x77","\x73\x65\x67\x6D\x65\x6E\x74","\x65\x6E\x64\x41\x72\x72\x6F\x77","\x73\x74\x61\x72\x74\x41\x72\x72\x6F\x77","\x65\x6E\x64\x53\x69\x7A\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x69\x6E\x65","\x65\x6E\x64\x46\x69\x6C\x6C","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x64\x61\x73\x68\x65\x64","\x64\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x61\x72\x63\x53\x69\x7A\x65","\x73\x6D\x6F\x6F\x74\x68","\x73\x6F\x75\x72\x63\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x70\x65\x72\x69\x6D\x65\x74\x65\x72\x53\x70\x61\x63\x69\x6E\x67","\x73\x70\x61\x63\x69\x6E\x67","\x73\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x73\x70\x61\x63\x69\x6E\x67\x4C\x65\x66\x74","\x73\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x73\x70\x61\x63\x69\x6E\x67\x52\x69\x67\x68\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x65\x6C\x62\x6F\x77","\x66\x6F\x6E\x74\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x66\x6F\x6C\x64\x61\x62\x6C\x65","\x65\x64\x69\x74\x61\x62\x6C\x65","\x62\x65\x6E\x64\x61\x62\x6C\x65","\x6D\x6F\x76\x61\x62\x6C\x65","\x72\x65\x73\x69\x7A\x61\x62\x6C\x65","\x63\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x64\x65\x6C\x65\x74\x61\x62\x6C\x65","\x65\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x6F\x6F\x70\x53\x74\x79\x6C\x65","\x72\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x58","\x72\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x59","\x72\x65\x63\x74\x61\x6E\x67\x6C\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x64\x6F\x75\x62\x6C\x65\x45\x6C\x6C\x69\x70\x73\x65","\x72\x68\x6F\x6D\x62\x75\x73","\x6C\x69\x6E\x65","\x61\x72\x72\x6F\x77","\x6C\x61\x62\x65\x6C","\x63\x79\x6C\x69\x6E\x64\x65\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x61\x63\x74\x6F\x72","\x63\x6C\x6F\x75\x64","\x74\x72\x69\x61\x6E\x67\x6C\x65","\x68\x65\x78\x61\x67\x6F\x6E","\x63\x6C\x61\x73\x73\x69\x63","\x62\x6C\x6F\x63\x6B","\x6F\x76\x61\x6C","\x64\x69\x61\x6D\x6F\x6E\x64","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x63\x65\x6E\x74\x65\x72","\x72\x69\x67\x68\x74","\x6E\x6F\x72\x74\x68","\x73\x6F\x75\x74\x68","\x65\x61\x73\x74","\x77\x65\x73\x74","\x76\x65\x72\x74\x69\x63\x61\x6C","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x6F\x6F\x70\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x73\x69\x64\x65\x54\x6F\x53\x69\x64\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x74\x6F\x70\x54\x6F\x42\x6F\x74\x74\x6F\x6D\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x65\x6C\x6C\x69\x70\x73\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x65\x63\x74\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x72\x68\x6F\x6D\x62\x75\x73\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x74\x72\x69\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x63\x6F\x6E\x73\x75\x6D\x65\x64","\x67\x65\x74\x4E\x61\x6D\x65","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x63\x6F\x6E\x73\x75\x6D\x65","\x65\x76\x74","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x69\x73\x53\x6F\x75\x72\x63\x65","\x67\x65\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x59","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x72\x65\x74\x75\x72\x6E\x56\x61\x6C\x75\x65","\x73\x65\x74\x45\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x65\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x65\x76\x65\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x65\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x67\x65\x74\x45\x76\x65\x6E\x74\x53\x6F\x75\x72\x63\x65","\x72\x65\x6D\x6F\x76\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x6F\x6E","\x66","\x72\x65\x6D\x6F\x76\x65\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x64\x65\x74\x61\x63\x68\x45\x76\x65\x6E\x74","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x75\x63\x68\x73\x74\x61\x72\x74","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x72\x65\x6C\x65\x61\x73\x65","\x65\x76\x65\x6E\x74","\x64\x65\x74\x61\x69\x6C","\x77\x68\x65\x65\x6C\x44\x65\x6C\x74\x61","\x6D\x6F\x75\x73\x65\x77\x68\x65\x65\x6C","\x44\x4F\x4D\x4D\x6F\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x72\x65\x74\x75\x72\x6E\x20\x66\x61\x6C\x73\x65\x3B","\x73\x72\x63\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x61\x72\x67\x65\x74","\x69\x73\x52\x69\x67\x68\x74\x4D\x6F\x75\x73\x65\x42\x75\x74\x74\x6F\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x73\x68\x69\x66\x74\x4B\x65\x79","\x61\x6C\x74\x4B\x65\x79","\x63\x74\x72\x6C\x4B\x65\x79","\x6D\x65\x74\x61\x4B\x65\x79","\x74\x6F\x75\x63\x68\x65\x73","\x63\x68\x61\x6E\x67\x65\x64\x54\x6F\x75\x63\x68\x65\x73","\x63\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x4D\x61\x69\x6E\x45\x76\x65\x6E\x74","\x63\x6C\x69\x65\x6E\x74\x59","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x63\x61\x6E\x63\x65\x6C\x42\x75\x62\x62\x6C\x65","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x63\x74\x69\x76\x61\x74\x65","\x72\x65\x73\x69\x7A\x65\x53\x74\x61\x72\x74","\x72\x65\x73\x69\x7A\x65\x45\x6E\x64","\x6D\x6F\x76\x65\x53\x74\x61\x72\x74","\x6D\x6F\x76\x65\x45\x6E\x64","\x70\x61\x6E\x53\x74\x61\x72\x74","\x70\x61\x6E","\x70\x61\x6E\x45\x6E\x64","\x6D\x69\x6E\x69\x6D\x69\x7A\x65","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x6D\x61\x78\x69\x6D\x69\x7A\x65","\x68\x69\x64\x65","\x72\x65\x66\x72\x65\x73\x68","\x73\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74","\x66\x69\x72\x65\x64","\x72\x65\x63\x65\x69\x76\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x75\x73\x70\x65\x6E\x64","\x72\x65\x73\x75\x6D\x65","\x6D\x61\x72\x6B","\x73\x65\x73\x73\x69\x6F\x6E","\x72\x6F\x6F\x74","\x70\x6F\x73\x74","\x73\x61\x76\x65","\x62\x65\x66\x6F\x72\x65\x41\x64\x64\x56\x65\x72\x74\x65\x78","\x61\x64\x64\x56\x65\x72\x74\x65\x78","\x61\x66\x74\x65\x72\x41\x64\x64\x56\x65\x72\x74\x65\x78","\x64\x6F\x6E\x65","\x65\x78\x65\x63\x75\x74\x65\x64","\x73\x74\x61\x72\x74\x45\x64\x69\x74","\x65\x6E\x64\x45\x64\x69\x74","\x62\x65\x66\x6F\x72\x65\x55\x6E\x64\x6F","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x68\x61\x6E\x67\x65","\x6E\x6F\x74\x69\x66\x79","\x6C\x61\x79\x6F\x75\x74\x43\x65\x6C\x6C\x73","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x75\x70","\x64\x6F\x77\x6E","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x41\x64\x64\x65\x64","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x4D\x6F\x76\x65\x64","\x72\x65\x73\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x65\x64","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x54\x6F\x67\x67\x6C\x65\x64","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x4F\x72\x64\x65\x72\x65\x64","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x52\x65\x6D\x6F\x76\x65\x64","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x63\x65\x6C\x6C\x73\x46\x6F\x6C\x64\x65\x64","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67","\x61\x64\x64\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x4F\x76\x65\x72\x6C\x61\x79","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x73\x63\x61\x70\x65","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B","\x73\x74\x61\x72\x74","\x72\x65\x73\x65\x74","\x75\x72\x6C","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x74\x68\x6F\x64","\x50\x4F\x53\x54","\x75\x73\x65\x72\x6E\x61\x6D\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x62\x69\x6E\x61\x72\x79","\x72\x65\x71\x75\x65\x73\x74","\x69\x73\x42\x69\x6E\x61\x72\x79","\x73\x65\x74\x42\x69\x6E\x61\x72\x79","\x72\x65\x73\x70\x6F\x6E\x73\x65\x54\x65\x78\x74","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x58\x6D\x6C","\x72\x65\x73\x70\x6F\x6E\x73\x65\x58\x4D\x4C","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73","\x58\x4D\x4C\x48\x74\x74\x70\x52\x65\x71\x75\x65\x73\x74","\x6F\x76\x65\x72\x72\x69\x64\x65\x4D\x69\x6D\x65\x54\x79\x70\x65","\x74\x65\x78\x74\x2F\x70\x6C\x61\x69\x6E\x3B\x20\x63\x68\x61\x72\x73\x65\x74\x3D\x78\x2D\x75\x73\x65\x72\x2D\x64\x65\x66\x69\x6E\x65\x64","\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x58\x4D\x4C\x48\x54\x54\x50","\x6F\x6E\x72\x65\x61\x64\x79\x73\x74\x61\x74\x65\x63\x68\x61\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72\x73","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x66\x6F\x72\x6D","\x61\x63\x74\x69\x6F\x6E","\x26","\x73\x75\x62\x6D\x69\x74","\x63\x65\x6C\x6C\x73","\x69\x6E\x73\x65\x72\x74\x43\x6F\x75\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x67\x65\x74\x45\x78\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x53\x54\x45\x50\x53\x49\x5A\x45","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x6F\x6E\x74\x65\x6E\x74","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x61\x78\x69\x6D\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x69\x6E\x69\x6D\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x6C\x6F\x73\x65\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x4D\x69\x6E\x69\x6D\x69\x7A\x61\x62\x6C\x65","\x73\x65\x74\x54\x69\x74\x6C\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x4D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x70\x6C\x61\x63\x65\x43\x68\x69\x6C\x64","\x63\x6C\x6F\x73\x65\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x6F\x73\x65\x2E\x67\x69\x66","\x6D\x69\x6E\x69\x6D\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6D\x69\x6E\x69\x6D\x69\x7A\x65\x2E\x67\x69\x66","\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6E\x6F\x72\x6D\x61\x6C\x69\x7A\x65\x2E\x67\x69\x66","\x6D\x61\x78\x69\x6D\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x6D\x61\x78\x69\x6D\x69\x7A\x65\x2E\x67\x69\x66","\x72\x65\x73\x69\x7A\x65\x49\x6D\x61\x67\x65","\x2F\x72\x65\x73\x69\x7A\x65\x2E\x67\x69\x66","\x6D\x69\x6E\x69\x6D\x75\x6D\x53\x69\x7A\x65","\x74\x69\x74\x6C\x65","\x6D\x78\x57\x69\x6E\x64\x6F\x77","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x54\x69\x74\x6C\x65","\x50\x61\x6E\x65","\x63\x6F\x6E\x74\x65\x6E\x74\x57\x72\x61\x70\x70\x65\x72","\x61\x63\x74\x69\x76\x65\x57\x69\x6E\x64\x6F\x77","\x7A\x49\x6E\x64\x65\x78","\x70\x72\x65\x76\x69\x6F\x75\x73\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x69\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x32\x70\x78","\x6E\x77\x2D\x72\x65\x73\x69\x7A\x65","\x73\x65\x74\x53\x69\x7A\x65","\x72\x65\x6D\x6F\x76\x65\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x67\x65\x74\x4D\x69\x6E\x69\x6D\x75\x6D\x53\x69\x7A\x65","\x4D\x69\x6E\x69\x6D\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E\x52\x69\x67\x68\x74","\x31\x70\x78","\x4E\x6F\x72\x6D\x61\x6C\x69\x7A\x65","\x4D\x61\x78\x69\x6D\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x30\x70\x78","\x73\x65\x74\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x63\x6C\x6F\x73\x65\x49\x6D\x67","\x43\x6C\x6F\x73\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x73\x65\x74\x49\x6D\x61\x67\x65","\x34\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x2D\x32\x70\x78","\x67\x65\x74\x54\x61\x62\x6C\x65","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E\x73","\x6F\x6B","\x4F\x4B","\x63\x61\x6E\x63\x65\x6C","\x43\x61\x6E\x63\x65\x6C","\x61\x64\x64\x54\x65\x78\x74","\x69\x6E\x70\x75\x74","\x74\x65\x78\x74","\x61\x64\x64\x46\x69\x65\x6C\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x62\x6F\x78","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x63\x68\x65\x63\x6B\x65\x64","\x61\x64\x64\x54\x65\x78\x74\x61\x72\x65\x61","\x72\x6F\x77\x73","\x61\x64\x64\x43\x6F\x6D\x62\x6F","\x6D\x75\x6C\x74\x69\x70\x6C\x65","\x61\x64\x64\x4F\x70\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x65\x73\x69\x7A\x65\x57\x69\x64\x74\x68","\x72\x65\x73\x69\x7A\x65\x48\x65\x69\x67\x68\x74","\x68\x61\x6E\x64\x6C\x69\x6E\x67\x52\x65\x73\x69\x7A\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x57\x69\x64\x74\x68","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x65\x6C\x65\x6D\x65\x6E\x74","\x64\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74","\x70\x72\x65\x76\x69\x65\x77\x45\x6C\x65\x6D\x65\x6E\x74","\x65\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x63\x75\x72\x72\x65\x6E\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x63\x75\x72\x72\x65\x6E\x74\x50\x6F\x69\x6E\x74","\x63\x75\x72\x72\x65\x6E\x74\x47\x75\x69\x64\x65","\x63\x75\x72\x72\x65\x6E\x74\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74\x5A\x49\x6E\x64\x65\x78","\x64\x72\x61\x67\x45\x6C\x65\x6D\x65\x6E\x74\x4F\x70\x61\x63\x69\x74\x79","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x73\x74\x61\x72\x74\x44\x72\x61\x67","\x6D\x6F\x75\x73\x65\x55\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x74\x6F\x70\x44\x72\x61\x67","\x67\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x73\x45\x76\x65\x6E\x74","\x64\x72\x61\x67\x45\x78\x69\x74","\x64\x72\x61\x67\x45\x6E\x74\x65\x72","\x64\x72\x61\x67\x4F\x76\x65\x72","\x64\x72\x6F\x70","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x67\x65\x74\x47\x75\x69\x64\x65\x53\x74\x61\x74\x65\x73","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x61\x75\x74\x6F\x45\x78\x74\x65\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x50\x6F\x69\x6E\x74\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x68\x69\x67\x68\x6C\x69\x67\x68\x74","\x33","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x6E\x61\x70","\x70\x72\x65\x76\x69\x65\x77\x4F\x66\x66\x73\x65\x74","\x6E\x6F\x52\x65\x73\x65\x74","\x75\x70\x64\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x4D\x6F\x64\x65","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x6F\x64\x65","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x49\x74\x65\x6D","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x6D\x65\x6E\x75","\x63\x75\x72\x72\x65\x6E\x74\x49\x6D\x67","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6D\x62\x6F\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x78\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6D\x62\x6F","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x43\x6F\x6D\x62\x6F","\x73\x65\x6C\x65\x63\x74\x65\x64\x49\x6E\x64\x65\x78","\x6F\x70\x74\x69\x6F\x6E\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x53\x77\x69\x74\x63\x68\x4D\x6F\x64\x65","\x69\x6E\x69\x74\x69\x61\x6C\x43\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x61\x6C\x74\x49\x63\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x4D\x6F\x64\x65","\x64\x65\x66\x61\x75\x6C\x74\x4D\x6F\x64\x65","\x73\x65\x6C\x65\x63\x74\x4D\x6F\x64\x65","\x61\x64\x64\x4D\x6F\x64\x65","\x64\x65\x66\x61\x75\x6C\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x72\x65\x73\x65\x74\x4D\x6F\x64\x65","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x61\x64\x64\x42\x72\x65\x61\x6B","\x61\x64\x64\x4C\x69\x6E\x65","\x68\x72","\x36\x70\x78","\x75\x72\x6C\x49\x6E\x69\x74","\x75\x72\x6C\x50\x6F\x6C\x6C","\x75\x72\x6C\x4E\x6F\x74\x69\x66\x79","\x63\x6F\x64\x65\x63","\x6C\x6F\x6F\x6B\x75\x70","\x65\x64\x69\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x73\x75\x73\x70\x65\x6E\x64\x65\x64","\x3C\x65\x64\x69\x74\x3E","\x63\x68\x61\x6E\x67\x65\x73","\x75\x6E\x64\x6F\x6E\x65","\x65\x6E\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65\x73","\x3C\x2F\x65\x64\x69\x74\x3E","\x6C\x69\x6E\x65\x66\x65\x65\x64","\x65\x73\x63\x61\x70\x65\x50\x6F\x73\x74\x44\x61\x74\x61","\x73\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74\x52\x65\x6D\x6F\x74\x65\x43\x68\x61\x6E\x67\x65\x73","\x73\x65\x6E\x74","\x72\x65\x63\x65\x69\x76\x65\x64","\x70\x6F\x6C\x6C\x69\x6E\x67","\x70\x6F\x6C\x6C","\x73\x74\x6F\x70","\x72\x65\x61\x73\x6F\x6E","\x6D\x78\x53\x65\x73\x73\x69\x6F\x6E\x2E\x6E\x6F\x74\x69\x66\x79\x3A\x20","\x20\x78\x6D\x6C\x3D","\x3C\x6D\x65\x73\x73\x61\x67\x65\x3E\x3C\x64\x65\x6C\x74\x61\x3E","\x3C\x2F\x64\x65\x6C\x74\x61\x3E\x3C\x2F\x6D\x65\x73\x73\x61\x67\x65\x3E","\x78\x6D\x6C\x3D","\x69\x73\x56\x61\x6C\x69\x64\x52\x65\x73\x70\x6F\x6E\x73\x65","\x49\x6E\x76\x61\x6C\x69\x64\x20\x72\x65\x73\x70\x6F\x6E\x73\x65\x3A\x20","\x52\x65\x73\x70\x6F\x6E\x73\x65\x20\x6E\x6F\x74\x20\x72\x65\x61\x64\x79","\x54\x72\x61\x6E\x73\x6D\x69\x73\x73\x69\x6F\x6E\x20\x65\x72\x72\x6F\x72","\x3C\x3F\x70\x68\x70","\x6E\x61\x6D\x65\x73\x70\x61\x63\x65","\x70\x72\x65\x66\x69\x78","\x70\x72\x6F\x63\x65\x73\x73\x53\x74\x61\x74\x65","\x64\x65\x6C\x74\x61","\x70\x72\x6F\x63\x65\x73\x73\x44\x65\x6C\x74\x61","\x64\x65\x63\x6F\x64\x65","\x70\x72\x6F\x63\x65\x73\x73\x45\x64\x69\x74","\x64\x65\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65\x73","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74","\x73\x6F\x75\x72\x63\x65","\x64\x65\x63\x6F\x64\x65\x43\x68\x61\x6E\x67\x65","\x6D\x78\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x6D\x78\x43\x68\x69\x6C\x64\x43\x68\x61\x6E\x67\x65","\x70\x61\x72\x65\x6E\x74","\x63\x65\x6C\x6C\x52\x65\x6D\x6F\x76\x65\x64","\x67\x65\x74\x49\x64","\x70\x75\x74\x4F\x62\x6A\x65\x63\x74","\x73\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74","\x72\x65\x64\x6F\x6E\x65","\x69\x73\x45\x6D\x70\x74\x79","\x69\x73\x53\x69\x67\x6E\x69\x66\x69\x63\x61\x6E\x74","\x64\x69\x65","\x68\x69\x73\x74\x6F\x72\x79","\x69\x6E\x64\x65\x78\x4F\x66\x4E\x65\x78\x74\x41\x64\x64","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x73\x68\x69\x66\x74","\x64\x61\x74\x61\x3A\x69\x6D\x61\x67\x65","\x69\x73\x52\x65\x6C\x61\x74\x69\x76\x65\x55\x72\x6C","\x70\x72\x6F\x74\x6F\x63\x6F\x6C","\x2F\x2F","\x68\x6F\x73\x74","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x74\x68\x72\x65\x61\x64","\x61\x63\x74\x69\x76\x65","\x64\x79","\x64\x78","\x74\x30\x79","\x74\x30\x78","\x74\x64\x79","\x74\x64\x78","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x4D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x70\x61\x6E\x47\x72\x61\x70\x68","\x70\x61\x6E\x44\x78","\x70\x61\x6E\x44\x79","\x67\x65\x74\x44\x78","\x67\x65\x74\x44\x79","\x64\x65\x6C\x61\x79","\x73\x65\x74\x49\x6E\x74\x65\x72\x76\x61\x6C","\x69\x73\x41\x63\x74\x69\x76\x65","\x70\x61\x6E\x54\x6F","\x68\x61\x6E\x64\x6C\x65\x4D\x6F\x75\x73\x65\x4F\x75\x74","\x64\x61\x6D\x70\x65\x72","\x63\x6C\x65\x61\x72\x49\x6E\x74\x65\x72\x76\x61\x6C","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65\x4D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x2F\x73\x75\x62\x6D\x65\x6E\x75\x2E\x67\x69\x66","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x6F\x70\x75\x70","\x69\x74\x65\x6D\x43\x6F\x75\x6E\x74","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x6C\x61\x62\x65\x6C\x73","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x64\x69\x73\x61\x62\x6C\x65\x43\x6F\x6E\x74\x65\x78\x74\x4D\x65\x6E\x75","\x69\x73\x4C\x65\x66\x74\x4D\x6F\x75\x73\x65\x42\x75\x74\x74\x6F\x6E","\x77\x69\x6C\x6C\x41\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x49\x74\x65\x6D\x73","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x63\x6F\x6E","\x20\x64\x69\x73\x61\x62\x6C\x65\x64","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x72\x65\x61\x74\x65\x53\x75\x62\x6D\x65\x6E\x75","\x65\x76\x65\x6E\x74\x52\x65\x63\x65\x69\x76\x65\x72","\x61\x63\x74\x69\x76\x65\x52\x6F\x77","\x68\x69\x64\x65\x53\x75\x62\x6D\x65\x6E\x75","\x73\x68\x6F\x77\x53\x75\x62\x6D\x65\x6E\x75","\x6D\x78\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75\x49\x74\x65\x6D\x48\x6F\x76\x65\x72","\x30\x20\x30\x20\x30\x20\x30\x70\x78","\x63\x6F\x6C\x53\x70\x61\x6E","\x32","\x73\x68\x6F\x77\x4D\x65\x6E\x75","\x63\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x73\x65\x74\x47\x72\x61\x70\x68","\x67\x72\x61\x70\x68","\x61\x75\x74\x6F\x53\x61\x76\x65\x44\x65\x6C\x61\x79","\x61\x75\x74\x6F\x53\x61\x76\x65\x54\x68\x72\x6F\x74\x74\x6C\x65","\x61\x75\x74\x6F\x53\x61\x76\x65\x54\x68\x72\x65\x73\x68\x6F\x6C\x64","\x69\x67\x6E\x6F\x72\x65\x64\x43\x68\x61\x6E\x67\x65\x73","\x6C\x61\x73\x74\x53\x6E\x61\x70\x73\x68\x6F\x74","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x75\x70\x64\x61\x74\x65\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x73\x74\x6F\x70\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x73\x74\x65\x70\x73","\x65\x61\x73\x65","\x73\x74\x65\x70","\x61\x6E\x69\x6D\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x44\x65\x6C\x74\x61","\x69\x73\x56\x65\x72\x74\x65\x78","\x6D\x6F\x76\x65\x53\x74\x61\x74\x65","\x73\x74\x6F\x70\x52\x65\x63\x75\x72\x73\x69\x6F\x6E","\x67\x65\x74\x4F\x72\x69\x67\x69\x6E\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x69\x6D\x61\x67\x65\x73","\x61\x6C\x74","\x70\x75\x74\x49\x6D\x61\x67\x65","\x67\x65\x74\x49\x6D\x61\x67\x65","\x66\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x6E\x63\x6C\x75\x64\x65\x4F\x76\x65\x72\x6C\x61\x79\x73","\x64\x72\x61\x77\x53\x74\x61\x74\x65","\x64\x72\x61\x77\x43\x65\x6C\x6C\x53\x74\x61\x74\x65","\x76\x69\x73\x69\x74\x53\x74\x61\x74\x65\x73\x52\x65\x63\x75\x72\x73\x69\x76\x65","\x64\x72\x61\x77\x4F\x76\x65\x72\x6C\x61\x79\x73","\x70\x61\x69\x6E\x74","\x72\x65\x73\x74\x6F\x72\x65","\x6F\x76\x65\x72\x6C\x61\x79\x73","\x63\x6F\x6E\x76\x65\x72\x74\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x72\x6C\x43\x6F\x6E\x76\x65\x72\x74\x65\x72","\x73\x74\x61\x74\x65\x73","\x70\x61\x74\x68","\x72\x6F\x74\x61\x74\x65\x48\x74\x6D\x6C","\x6C\x61\x73\x74\x58","\x6C\x61\x73\x74\x59","\x6D\x6F\x76\x65\x4F\x70","\x4D","\x6C\x69\x6E\x65\x4F\x70","\x4C","\x71\x75\x61\x64\x4F\x70","\x51","\x63\x75\x72\x76\x65\x4F\x70","\x43","\x63\x6C\x6F\x73\x65\x4F\x70","\x5A","\x70\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x33\x20\x33","\x66\x6C\x61\x74","\x6D\x69\x74\x65\x72","\x23\x30\x30\x30\x30\x30\x30","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x50\x41\x43\x49\x54\x59","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x46\x46\x53\x45\x54\x5F\x58","\x53\x48\x41\x44\x4F\x57\x5F\x4F\x46\x46\x53\x45\x54\x5F\x59","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4F\x70","\x72\x6F\x74\x61\x74\x65\x50\x6F\x69\x6E\x74","\x70\x6F\x70","\x73\x65\x74\x41\x6C\x70\x68\x61","\x61\x6C\x70\x68\x61","\x73\x65\x74\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x47\x72\x61\x64\x69\x65\x6E\x74","\x66\x69\x6C\x6C\x41\x6C\x70\x68\x61","\x67\x72\x61\x64\x69\x65\x6E\x74\x41\x6C\x70\x68\x61","\x73\x65\x74\x53\x74\x72\x6F\x6B\x65\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x53\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x65\x74\x44\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x73\x65\x74\x4C\x69\x6E\x65\x43\x61\x70","\x6C\x69\x6E\x65\x43\x61\x70","\x73\x65\x74\x4C\x69\x6E\x65\x4A\x6F\x69\x6E","\x6C\x69\x6E\x65\x4A\x6F\x69\x6E","\x73\x65\x74\x4D\x69\x74\x65\x72\x4C\x69\x6D\x69\x74","\x6D\x69\x74\x65\x72\x4C\x69\x6D\x69\x74","\x73\x65\x74\x46\x6F\x6E\x74\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x42\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x46\x6F\x6E\x74\x53\x69\x7A\x65","\x73\x65\x74\x46\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x73\x65\x74\x46\x6F\x6E\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x43\x6F\x6C\x6F\x72","\x73\x68\x61\x64\x6F\x77\x43\x6F\x6C\x6F\x72","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x41\x6C\x70\x68\x61","\x73\x68\x61\x64\x6F\x77\x41\x6C\x70\x68\x61","\x73\x65\x74\x53\x68\x61\x64\x6F\x77\x4F\x66\x66\x73\x65\x74","\x73\x68\x61\x64\x6F\x77\x44\x78","\x73\x68\x61\x64\x6F\x77\x44\x79","\x62\x65\x67\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x71\x75\x61\x64\x54\x6F","\x63\x75\x72\x76\x65\x54\x6F","\x61\x72\x63\x54\x6F","\x61\x72\x63\x54\x6F\x43\x75\x72\x76\x65\x73","\x65\x6E\x64","\x77\x72\x69\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x73","\x65\x78\x74\x65\x6E\x64","\x74\x65\x78\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6D\x70\x72\x65\x73\x73\x65\x64","\x66\x6F\x6E\x74\x66\x61\x6D\x69\x6C\x79","\x66\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x73\x69\x7A\x65","\x73\x68\x61\x64\x6F\x77\x63\x6F\x6C\x6F\x72","\x73\x68\x61\x64\x6F\x77\x61\x6C\x70\x68\x61","\x73\x68\x61\x64\x6F\x77\x6F\x66\x66\x73\x65\x74","\x74\x6F\x46\x69\x78\x65\x64","\x72\x6F\x74\x61\x74\x65","\x74\x68\x65\x74\x61","\x63\x78","\x63\x79","\x66\x69\x6C\x6C\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x64\x69\x65\x6E\x74","\x63\x31","\x63\x32","\x77","\x68","\x61\x6C\x70\x68\x61\x31","\x61\x6C\x70\x68\x61\x32","\x73\x74\x72\x6F\x6B\x65\x63\x6F\x6C\x6F\x72","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x64\x61\x73\x68\x70\x61\x74\x74\x65\x72\x6E","\x70\x61\x74\x74\x65\x72\x6E","\x6C\x69\x6E\x65\x63\x61\x70","\x63\x61\x70","\x6C\x69\x6E\x65\x6A\x6F\x69\x6E","\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74","\x6C\x69\x6D\x69\x74","\x66\x6F\x6E\x74\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x62\x6F\x72\x64\x65\x72\x63\x6F\x6C\x6F\x72","\x66\x6F\x6E\x74\x73\x74\x79\x6C\x65","\x72\x65\x63\x74","\x72\x6F\x75\x6E\x64\x72\x65\x63\x74","\x63\x6F\x6E\x76\x65\x72\x74","\x61\x73\x70\x65\x63\x74","\x71\x75\x61\x64","\x78\x31","\x79\x31","\x78\x32","\x79\x32","\x63\x75\x72\x76\x65","\x78\x33","\x79\x33","\x69\x73\x4E\x6F\x64\x65","\x73\x74\x72","\x77\x72\x61\x70","\x66\x69\x6C\x6C","\x63\x6C\x69\x70","\x73\x74\x72\x6F\x6B\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x66\x69\x6C\x6C\x73\x74\x72\x6F\x6B\x65","\x67\x72\x61\x64\x69\x65\x6E\x74\x73","\x64\x65\x66\x73","\x73\x74\x79\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x61\x74\x63\x68\x48\x74\x6D\x6C\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x66\x6F\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x72\x6F\x6B\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x72\x65\x66\x43\x6F\x75\x6E\x74","\x62\x6C\x6F\x63\x6B\x49\x6D\x61\x67\x65\x50\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x73\x76\x67\x7B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A","\x3B\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A","\x3B\x66\x69\x6C\x6C\x3A\x6E\x6F\x6E\x65\x3B\x73\x74\x72\x6F\x6B\x65\x2D\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74\x3A\x31\x30\x7D","\x4E\x53\x5F\x53\x56\x47","\x78\x6D\x6C\x6E\x73","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x64\x69\x65\x6E\x74\x49\x64","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x53\x4F\x55\x54\x48","\x73","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x45\x41\x53\x54","\x65","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4E\x4F\x52\x54\x48","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x57\x45\x53\x54","\x6D\x78\x2D\x67\x72\x61\x64\x69\x65\x6E\x74\x2D","\x67\x65\x74\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x69\x64","\x63\x72\x65\x61\x74\x65\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74","\x6C\x69\x6E\x65\x61\x72\x47\x72\x61\x64\x69\x65\x6E\x74","\x30\x25","\x3B\x73\x74\x6F\x70\x2D\x6F\x70\x61\x63\x69\x74\x79\x3A","\x6F\x66\x66\x73\x65\x74","\x73\x74\x6F\x70\x2D\x63\x6F\x6C\x6F\x72\x3A","\x61\x64\x64\x4E\x6F\x64\x65","\x64","\x75\x70\x64\x61\x74\x65\x46\x69\x6C\x6C","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77","\x63\x72\x65\x61\x74\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x70\x6F\x69\x6E\x74\x65\x72\x2D\x65\x76\x65\x6E\x74\x73","\x61\x6C\x6C","\x66\x69\x6C\x6C\x2D\x6F\x70\x61\x63\x69\x74\x79","\x75\x72\x6C\x28\x23","\x73\x74\x72\x6F\x6B\x65\x2D\x6F\x70\x61\x63\x69\x74\x79","\x73\x74\x72\x6F\x6B\x65\x2D\x77\x69\x64\x74\x68","\x75\x70\x64\x61\x74\x65\x53\x74\x72\x6F\x6B\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x73\x74\x72\x6F\x6B\x65\x2D\x64\x61\x73\x68\x61\x72\x72\x61\x79","\x63\x72\x65\x61\x74\x65\x44\x61\x73\x68\x50\x61\x74\x74\x65\x72\x6E","\x73\x74\x72\x6F\x6B\x65\x2D\x6C\x69\x6E\x65\x6A\x6F\x69\x6E","\x62\x75\x74\x74","\x73\x74\x72\x6F\x6B\x65\x2D\x6C\x69\x6E\x65\x63\x61\x70","\x73\x74\x72\x6F\x6B\x65\x2D\x6D\x69\x74\x65\x72\x6C\x69\x6D\x69\x74","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x68\x69\x74\x65","\x29\x73\x63\x61\x6C\x65\x28","\x29\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x72\x6F\x74\x61\x74\x65\x28","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x43\x78","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x43\x79","\x72\x78","\x72\x79","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x53","\x78\x6C\x69\x6E\x6B\x3A\x68\x72\x65\x66","\x70\x72\x65\x73\x65\x72\x76\x65\x41\x73\x70\x65\x63\x74\x52\x61\x74\x69\x6F","\x73\x63\x61\x6C\x65\x28","\x70\x6F\x69\x6E\x74\x65\x72\x2D\x65\x76\x65\x6E\x74\x73\x3A\x6E\x6F\x6E\x65","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A","\x70\x78\x3B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A","\x3B\x63\x6F\x6C\x6F\x72\x3A","\x3B\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A","\x70\x78\x3B","\x46\x4F\x4E\x54\x5F\x42\x4F\x4C\x44","\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74\x3A\x62\x6F\x6C\x64\x3B","\x46\x4F\x4E\x54\x5F\x49\x54\x41\x4C\x49\x43","\x66\x6F\x6E\x74\x2D\x73\x74\x79\x6C\x65\x3A\x69\x74\x61\x6C\x69\x63\x3B","\x46\x4F\x4E\x54\x5F\x55\x4E\x44\x45\x52\x4C\x49\x4E\x45","\x66\x6F\x6E\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E\x3A\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65\x3B","\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x63\x65\x6E\x74\x65\x72\x3B","\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A\x72\x69\x67\x68\x74\x3B","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x2D\x63\x6F\x6C\x6F\x72\x3A","\x62\x6F\x72\x64\x65\x72\x3A\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20","\x26\x61\x6D\x70\x3B\x67\x74\x3B","\x26\x61\x6D\x70\x3B\x6C\x74\x3B","\x3C\x64\x69\x76\x20\x78\x6D\x6C\x6E\x73\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C\x22\x20\x73\x74\x79\x6C\x65\x3D\x22\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B","\x22\x3E","\x3C\x2F\x64\x69\x76\x3E","\x3C\x68\x72\x20\x2F\x3E","\x3C\x62\x72\x20\x2F\x3E","\x3C\x64\x69\x76\x20\x78\x6D\x6C\x6E\x73\x3D\x22\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x77\x33\x2E\x6F\x72\x67\x2F\x31\x39\x39\x39\x2F\x78\x68\x74\x6D\x6C\x22\x20\x73\x74\x79\x6C\x65\x3D\x22","\x68\x74\x6D\x6C","\x76\x65\x72\x74\x69\x63\x61\x6C\x2D\x61\x6C\x69\x67\x6E\x3A\x74\x6F\x70\x3B","\x6F\x76\x65\x72\x66\x6C\x6F\x77\x3A\x68\x69\x64\x64\x65\x6E\x3B","\x6D\x61\x78\x2D\x68\x65\x69\x67\x68\x74\x3A","\x77\x69\x64\x74\x68\x3A","\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x6E\x6F\x72\x6D\x61\x6C\x3B","\x77\x68\x69\x74\x65\x2D\x73\x70\x61\x63\x65\x3A\x6E\x6F\x77\x72\x61\x70\x3B","\x66\x6F\x72\x65\x69\x67\x6E\x4F\x62\x6A\x65\x63\x74","\x70\x6C\x61\x69\x6E\x54\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x43\x6C\x69\x70","\x6D\x78\x2D\x63\x6C\x69\x70\x2D","\x63\x6C\x69\x70\x50\x61\x74\x68","\x63\x6C\x69\x70\x2D\x70\x61\x74\x68","\x75\x70\x64\x61\x74\x65\x46\x6F\x6E\x74","\x74\x65\x78\x74\x2D\x61\x6E\x63\x68\x6F\x72","\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65","\x61\x64\x64\x54\x65\x78\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x2D\x77\x65\x69\x67\x68\x74","\x62\x6F\x6C\x64","\x66\x6F\x6E\x74\x2D\x73\x74\x79\x6C\x65","\x69\x74\x61\x6C\x69\x63","\x74\x65\x78\x74\x2D\x64\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x67\x65\x74\x42\x42\x6F\x78","\x66\x6F\x6E\x74\x57\x65\x69\x67\x68\x74","\x3C\x62\x72\x2F\x3E","\x6D\x6F\x64","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28\x30\x2E\x35\x2C\x20\x30\x2E\x35\x29","\x6D","\x6C","\x63","\x72\x6F\x74\x61\x74\x65\x64\x48\x74\x6D\x6C\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x76\x6D\x6C\x53\x63\x61\x6C\x65","\x20\x65","\x63\x6F\x6F\x72\x64\x73\x69\x7A\x65","\x73\x74\x72\x6F\x6B\x65\x77\x65\x69\x67\x68\x74","\x73\x74\x72\x6F\x6B\x65\x64","\x63\x72\x65\x61\x74\x65\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x46\x69\x6C\x6C","\x63\x72\x65\x61\x74\x65\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x46\x69\x6C\x6C","\x66\x69\x6C\x6C\x65\x64","\x3A\x66\x69\x6C\x6C","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x74\x69\x6C\x65","\x63\x6F\x6C\x6F\x72\x32","\x66\x6C\x69\x70","\x61\x6E\x67\x6C\x65","\x4F\x46\x46\x49\x43\x45\x5F\x50\x52\x45\x46\x49\x58","\x3A\x6F\x70\x61\x63\x69\x74\x79\x32","\x3A\x73\x74\x72\x6F\x6B\x65","\x65\x6E\x64\x63\x61\x70","\x6A\x6F\x69\x6E\x73\x74\x79\x6C\x65","\x31\x30","\x64\x61\x73\x68\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x6D\x6C\x44\x61\x73\x68\x53\x74\x79\x6C\x65","\x64\x61\x73\x68","\x30\x20\x32","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77\x53\x74\x72\x6F\x6B\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x64\x6F\x77\x46\x69\x6C\x6C","\x3A\x73\x68\x61\x70\x65","\x63\x20","\x63\x72\x65\x61\x74\x65\x52\x65\x63\x74","\x3A\x72\x65\x63\x74","\x3A\x72\x6F\x75\x6E\x64\x72\x65\x63\x74","\x61\x72\x63\x73\x69\x7A\x65","\x3A\x6F\x76\x61\x6C","\x61\x74\x6D\x6F\x73\x74","\x69\x67\x6E\x6F\x72\x65","\x66\x72\x61\x6D\x65","\x31\x38\x30","\x66\x6F\x6E\x74\x44\x65\x63\x6F\x72\x61\x74\x69\x6F\x6E","\x3A\x67\x72\x6F\x75\x70","\x72\x65\x6C\x61\x74\x69\x76\x65","\x67\x65\x74\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74\x41\x73\x50\x6F\x69\x6E\x74","\x6E\x6F\x72\x6D\x61\x6C","\x6D\x61\x78\x48\x65\x69\x67\x68\x74","\x67\x72\x6F\x75\x70","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x4D\x61\x74\x72\x69\x78\x28\x4D\x31\x31\x3D","\x2C\x20\x4D\x31\x32\x3D","\x2C\x20\x4D\x32\x31\x3D","\x2C\x20\x4D\x32\x32\x3D","\x2C\x20\x73\x69\x7A\x69\x6E\x67\x4D\x65\x74\x68\x6F\x64\x3D\x27\x61\x75\x74\x6F\x20\x65\x78\x70\x61\x6E\x64\x27\x29","\x3A\x70\x61\x74\x68","\x74\x65\x78\x74\x70\x61\x74\x68\x6F\x6B","\x6D\x20","\x20\x6C\x20","\x3A\x74\x65\x78\x74\x70\x61\x74\x68","\x76\x2D\x74\x65\x78\x74\x2D\x61\x6C\x69\x67\x6E\x3A","\x73\x74\x72\x69\x6E\x67","\x73\x65\x74\x53\x74\x61\x74\x65\x73","\x67\x75\x69\x64\x65\x58","\x67\x75\x69\x64\x65\x59","\x67\x65\x74\x47\x75\x69\x64\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x63\x72\x65\x61\x74\x65\x47\x75\x69\x64\x65\x53\x68\x61\x70\x65","\x69\x73\x44\x61\x73\x68\x65\x64","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x70\x6F\x69\x6E\x74\x73","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x64\x65\x73\x63","\x70\x61\x72\x73\x65\x44\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E","\x70\x61\x72\x73\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x63\x61\x6C\x69\x7A\x65\x64","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x77\x30","\x68\x30","\x62\x67\x4E\x6F\x64\x65","\x66\x67\x4E\x6F\x64\x65","\x66\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x76\x61\x72\x69\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x70\x61\x72\x73\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x65\x76\x61\x6C\x75\x61\x74\x65\x54\x65\x78\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x65\x76\x61\x6C\x75\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x6F\x63\x61\x6C\x69\x7A\x65\x64","\x65\x76\x61\x6C","\x64\x72\x61\x77\x53\x68\x61\x70\x65","\x64\x72\x61\x77\x43\x68\x69\x6C\x64\x72\x65\x6E","\x63\x6F\x6D\x70\x75\x74\x65\x41\x73\x70\x65\x63\x74","\x69\x6E\x68\x65\x72\x69\x74","\x67\x65\x74\x4E\x75\x6D\x62\x65\x72","\x64\x72\x61\x77\x4E\x6F\x64\x65","\x66\x69\x78\x65\x64","\x61\x72\x63","\x78\x2D\x61\x78\x69\x73\x2D\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x6C\x61\x72\x67\x65\x2D\x61\x72\x63\x2D\x66\x6C\x61\x67","\x73\x77\x65\x65\x70\x2D\x66\x6C\x61\x67","\x52\x45\x43\x54\x41\x4E\x47\x4C\x45\x5F\x52\x4F\x55\x4E\x44\x49\x4E\x47\x5F\x46\x41\x43\x54\x4F\x52","\x61\x6C\x69\x67\x6E\x2D\x73\x68\x61\x70\x65","\x69\x6E\x63\x6C\x75\x64\x65\x2D\x73\x68\x61\x70\x65","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C","\x62\x6F\x75\x6E\x64\x73","\x62\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x73\x76\x67\x53\x74\x72\x6F\x6B\x65\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x73\x74\x65\x6E\x63\x69\x6C\x50\x6F\x69\x6E\x74\x65\x72\x45\x76\x65\x6E\x74\x73","\x69\x73\x50\x61\x72\x73\x65\x56\x6D\x6C","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x67\x65\x74\x53\x76\x67\x53\x63\x72\x65\x65\x6E\x4F\x66\x66\x73\x65\x74","\x63\x72\x65\x61\x74\x65\x53\x76\x67","\x63\x72\x65\x61\x74\x65\x48\x74\x6D\x6C","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x75\x70\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x73\x46\x72\x6F\x6D\x50\x6F\x69\x6E\x74\x73","\x63\x68\x65\x63\x6B\x42\x6F\x75\x6E\x64\x73","\x72\x65\x64\x72\x61\x77\x48\x74\x6D\x6C\x53\x68\x61\x70\x65","\x72\x65\x64\x72\x61\x77\x53\x68\x61\x70\x65","\x75\x70\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C\x47\x72\x6F\x75\x70","\x63\x72\x65\x61\x74\x65\x43\x61\x6E\x76\x61\x73","\x68\x61\x73\x43\x68\x69\x6C\x64\x4E\x6F\x64\x65\x73","\x6C\x61\x73\x74\x43\x68\x69\x6C\x64","\x62\x65\x66\x6F\x72\x65\x65\x6E\x64","\x69\x6E\x73\x65\x72\x74\x41\x64\x6A\x61\x63\x65\x6E\x74\x48\x54\x4D\x4C","\x61\x64\x64\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x46\x69\x6C\x74\x65\x72","\x64\x65\x73\x74\x72\x6F\x79\x43\x61\x6E\x76\x61\x73","\x75\x70\x64\x61\x74\x65\x56\x6D\x6C\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x78\x52\x65\x66\x43\x6F\x75\x6E\x74","\x6F\x6C\x64\x47\x72\x61\x64\x69\x65\x6E\x74\x73","\x72\x65\x6C\x65\x61\x73\x65\x53\x76\x67\x47\x72\x61\x64\x69\x65\x6E\x74\x73","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x75\x70\x64\x61\x74\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x43\x61\x6E\x76\x61\x73","\x70\x61\x69\x6E\x74\x53\x74\x65\x6E\x63\x69\x6C\x53\x68\x61\x70\x65","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x67\x65\x74\x47\x72\x61\x64\x69\x65\x6E\x74\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x64\x64\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x63\x74\x61\x6E\x67\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x70\x61\x69\x6E\x74\x47\x6C\x61\x73\x73\x45\x66\x66\x65\x63\x74","\x23\x66\x66\x66\x66\x66\x66","\x69\x73\x52\x6F\x75\x6E\x64\x65\x64","\x73\x74\x65\x6E\x63\x69\x6C\x46\x6C\x69\x70\x48","\x73\x74\x65\x6E\x63\x69\x6C\x46\x6C\x69\x70\x56","\x73\x65\x74\x43\x75\x72\x73\x6F\x72","\x67\x65\x74\x43\x75\x72\x73\x6F\x72","\x63\x72\x65\x61\x74\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x61\x75\x67\x6D\x65\x6E\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x67\x65\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x67\x65\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x67\x65\x74\x54\x65\x78\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x76\x65\x72\x74\x69\x63\x61\x6C\x54\x65\x78\x74\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28\x27","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66\x27\x29","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x6D\x61\x72\x6B\x65\x72\x73","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x46\x69\x6C\x74\x65\x72\x73","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x43\x6F\x6C\x6F\x72\x73","\x62\x6F\x72\x64\x65\x72\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x73\x6F\x6C\x69\x64","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x64\x72\x6F\x70\x53\x68\x61\x64\x6F\x77\x20\x28\x4F\x66\x66\x58\x3D\x27","\x27\x2C\x20\x4F\x66\x66\x59\x3D\x27","\x27\x2C\x20\x43\x6F\x6C\x6F\x72\x3D\x27","\x27\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x67\x72\x61\x64\x69\x65\x6E\x74\x28\x73\x74\x61\x72\x74\x43\x6F\x6C\x6F\x72\x53\x74\x72\x3D\x27","\x27\x2C\x20\x65\x6E\x64\x43\x6F\x6C\x6F\x72\x53\x74\x72\x3D\x27","\x27\x2C\x20\x67\x72\x61\x64\x69\x65\x6E\x74\x54\x79\x70\x65\x3D\x27","\x70\x61\x69\x6E\x74\x4C\x69\x6E\x65","\x61\x72\x72\x6F\x77\x57\x69\x64\x74\x68","\x41\x52\x52\x4F\x57\x5F\x57\x49\x44\x54\x48","\x41\x52\x52\x4F\x57\x5F\x53\x50\x41\x43\x49\x4E\x47","\x41\x52\x52\x4F\x57\x5F\x53\x49\x5A\x45","\x44\x45\x46\x41\x55\x4C\x54\x5F\x46\x4F\x4E\x54\x53\x54\x59\x4C\x45","\x63\x6C\x69\x70\x70\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x4C\x65\x66\x74","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x52\x69\x67\x68\x74","\x72\x65\x70\x6C\x61\x63\x65\x4C\x69\x6E\x65\x66\x65\x65\x64\x73","\x69\x67\x6E\x6F\x72\x65\x43\x6C\x69\x70\x70\x65\x64\x53\x74\x72\x69\x6E\x67\x53\x69\x7A\x65","\x69\x67\x6E\x6F\x72\x65\x53\x74\x72\x69\x6E\x67\x53\x69\x7A\x65","\x74\x65\x78\x74\x44\x69\x76","\x75\x70\x64\x61\x74\x65\x53\x69\x7A\x65","\x6D\x61\x72\x67\x69\x6E","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x75\x70\x64\x61\x74\x65\x56\x61\x6C\x75\x65","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x46\x69\x6C\x74\x65\x72","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x4F\x72\x69\x67\x69\x6E","\x25\x20","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x25\x2C","\x25\x29\x73\x63\x61\x6C\x65\x28","\x29\x20\x72\x6F\x74\x61\x74\x65\x28","\x64\x65\x67\x29","\x30\x25\x20\x30\x25","\x25\x29","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20","\x3C\x64\x69\x76\x20\x73\x74\x79\x6C\x65\x3D\x22\x7A\x6F\x6F\x6D\x3A\x31\x3B","\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B\x3B\x5F\x64\x69\x73\x70\x6C\x61\x79\x3A\x69\x6E\x6C\x69\x6E\x65\x3B\x70\x61\x64\x64\x69\x6E\x67\x2D\x62\x6F\x74\x74\x6F\x6D\x3A\x31\x70\x78\x3B\x70\x61\x64\x64\x69\x6E\x67\x2D\x72\x69\x67\x68\x74\x3A\x31\x70\x78\x3B\x6C\x69\x6E\x65\x2D\x68\x65\x69\x67\x68\x74\x3A","\x75\x70\x64\x61\x74\x65\x4D\x61\x72\x67\x69\x6E","\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x70\x72\x65\x73\x65\x72\x76\x65\x49\x6D\x61\x67\x65\x41\x73\x70\x65\x63\x74","\x69\x6D\x61\x67\x65\x46\x6C\x69\x70\x48","\x69\x6D\x61\x67\x65\x46\x6C\x69\x70\x56","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x72\x6F\x74\x61\x74\x69\x6F\x6E\x3D\x32\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x6D\x69\x72\x72\x6F\x72\x3D\x31\x29","\x70\x72\x6F\x67\x69\x64\x3A\x44\x58\x49\x6D\x61\x67\x65\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x2E\x4D\x69\x63\x72\x6F\x73\x6F\x66\x74\x2E\x42\x61\x73\x69\x63\x49\x6D\x61\x67\x65\x28\x72\x6F\x74\x61\x74\x69\x6F\x6E\x3D\x32\x2C\x20\x6D\x69\x72\x72\x6F\x72\x3D\x31\x29","\x69\x6D\x61\x67\x65\x53\x69\x7A\x65","\x44\x45\x46\x41\x55\x4C\x54\x5F\x49\x4D\x41\x47\x45\x53\x49\x5A\x45","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x69\x7A\x65","\x69\x6E\x64\x69\x63\x61\x74\x6F\x72","\x70\x61\x69\x6E\x74\x49\x6D\x61\x67\x65","\x70\x61\x69\x6E\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72","\x67\x65\x74\x49\x6D\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x53\x54\x59\x4C\x45\x5F\x43\x55\x52\x56\x45\x44","\x70\x61\x69\x6E\x74\x43\x75\x72\x76\x65\x64\x4C\x69\x6E\x65","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x53\x49\x5A\x45","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x53\x49\x5A\x45","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x46\x49\x4C\x4C","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x46\x49\x4C\x4C","\x70\x61\x69\x6E\x74\x52\x6F\x75\x6E\x64\x65\x64\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x70\x61\x69\x6E\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x70\x61\x69\x6E\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x75\x73\x65\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78","\x6D\x6F\x76\x65\x43\x65\x6C\x6C","\x67\x65\x74\x47\x72\x61\x70\x68","\x67\x65\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x72\x61\x76\x65\x72\x73\x65","\x67\x65\x74\x45\x64\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x41\x74","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x69\x73\x56\x65\x72\x74\x65\x78\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x56\x65\x72\x74\x65\x78\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x45\x64\x67\x65\x49\x67\x6E\x6F\x72\x65\x64","\x73\x65\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x4F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x4F\x66\x66\x73\x65\x74","\x69\x73\x41\x6E\x63\x65\x73\x74\x6F\x72","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x65\x74\x45\x64\x67\x65\x50\x6F\x69\x6E\x74\x73","\x73\x65\x74\x52\x65\x6C\x61\x74\x69\x76\x65","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x65\x74\x56\x65\x72\x74\x65\x78\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x67\x65\x74\x56\x65\x72\x74\x65\x78\x42\x6F\x75\x6E\x64\x73","\x61\x72\x72\x61\x6E\x67\x65\x47\x72\x6F\x75\x70\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x56\x65\x72\x74\x69\x63\x65\x73","\x67\x65\x74\x42\x6F\x75\x6E\x64\x69\x6E\x67\x42\x6F\x78\x46\x72\x6F\x6D\x47\x65\x6F\x6D\x65\x74\x72\x79","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x67\x65\x74\x53\x74\x61\x72\x74\x53\x69\x7A\x65","\x78\x30","\x79\x30","\x6B\x65\x65\x70\x46\x69\x72\x73\x74\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x72\x65\x73\x69\x7A\x65\x50\x61\x72\x65\x6E\x74","\x72\x65\x73\x69\x7A\x65\x4C\x61\x73\x74","\x69\x73\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x67\x65\x74\x49\x6E\x64\x65\x78","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x53\x69\x7A\x65","\x69\x73\x4C\x61\x79\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x72\x65\x73\x69\x7A\x65\x56\x65\x72\x74\x69\x63\x65\x73","\x69\x6E\x76\x65\x72\x74","\x67\x72\x6F\x75\x70\x50\x61\x64\x64\x69\x6E\x67","\x70\x61\x72\x65\x6E\x74\x73\x43\x68\x61\x6E\x67\x65\x64","\x6D\x6F\x76\x65\x54\x72\x65\x65","\x6C\x65\x76\x65\x6C\x44\x69\x73\x74\x61\x6E\x63\x65","\x6E\x6F\x64\x65\x44\x69\x73\x74\x61\x6E\x63\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73","\x70\x72\x65\x66\x48\x6F\x7A\x45\x64\x67\x65\x53\x65\x70","\x70\x72\x65\x66\x56\x65\x72\x74\x45\x64\x67\x65\x4F\x66\x66","\x6D\x69\x6E\x45\x64\x67\x65\x4A\x65\x74\x74\x79","\x63\x68\x61\x6E\x6E\x65\x6C\x42\x75\x66\x66\x65\x72","\x65\x64\x67\x65\x52\x6F\x75\x74\x69\x6E\x67","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x73","\x66\x69\x6E\x64\x54\x72\x65\x65\x52\x6F\x6F\x74\x73","\x64\x66\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x4C\x61\x79\x6F\x75\x74","\x6D\x6F\x76\x65\x4E\x6F\x64\x65","\x61\x64\x6A\x75\x73\x74\x50\x61\x72\x65\x6E\x74\x73","\x6C\x6F\x63\x61\x6C\x45\x64\x67\x65\x50\x72\x6F\x63\x65\x73\x73\x69\x6E\x67","\x6E\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x4E\x6F\x64\x65","\x61\x74\x74\x61\x63\x68\x50\x61\x72\x65\x6E\x74","\x6C\x61\x79\x6F\x75\x74\x4C\x65\x61\x66","\x6F\x66\x66\x73\x65\x74\x58","\x6F\x66\x66\x73\x65\x74\x59","\x75\x70\x70\x65\x72\x48\x65\x61\x64","\x63\x6F\x6E\x74\x6F\x75\x72","\x63\x72\x65\x61\x74\x65\x4C\x69\x6E\x65","\x6C\x6F\x77\x65\x72\x48\x65\x61\x64","\x75\x70\x70\x65\x72\x54\x61\x69\x6C","\x6C\x6F\x77\x65\x72\x54\x61\x69\x6C","\x6D\x65\x72\x67\x65","\x62\x72\x69\x64\x67\x65","\x73\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x70\x72\x6F\x63\x65\x73\x73\x4E\x6F\x64\x65\x4F\x75\x74\x67\x6F\x69\x6E\x67","\x67\x65\x74\x45\x64\x67\x65\x73\x42\x65\x74\x77\x65\x65\x6E","\x77\x65\x69\x67\x68\x74\x65\x64\x56\x61\x6C\x75\x65","\x6E\x75\x64\x67\x65","\x76\x69\x73\x69\x74\x65\x64","\x72\x61\x6E\x6B\x49\x6E\x64\x65\x78","\x75\x73\x65\x49\x6E\x70\x75\x74\x4F\x72\x69\x67\x69\x6E","\x64\x69\x73\x61\x62\x6C\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x66\x6F\x72\x63\x65\x43\x6F\x6E\x73\x74\x61\x6E\x74","\x66\x6F\x72\x63\x65\x43\x6F\x6E\x73\x74\x61\x6E\x74\x53\x71\x75\x61\x72\x65\x64","\x6D\x69\x6E\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74","\x6D\x61\x78\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74","\x6D\x69\x6E\x44\x69\x73\x74\x61\x6E\x63\x65\x4C\x69\x6D\x69\x74\x53\x71\x75\x61\x72\x65\x64","\x69\x6E\x69\x74\x69\x61\x6C\x54\x65\x6D\x70","\x74\x65\x6D\x70\x65\x72\x61\x74\x75\x72\x65","\x6D\x61\x78\x49\x74\x65\x72\x61\x74\x69\x6F\x6E\x73","\x69\x74\x65\x72\x61\x74\x69\x6F\x6E","\x61\x6C\x6C\x6F\x77\x65\x64\x54\x6F\x52\x75\x6E","\x76\x65\x72\x74\x65\x78\x41\x72\x72\x61\x79","\x67\x65\x74\x42\x6F\x75\x6E\x64\x73","\x69\x6E\x64\x69\x63\x65\x73","\x64\x69\x73\x70\x58","\x64\x69\x73\x70\x59","\x63\x65\x6C\x6C\x4C\x6F\x63\x61\x74\x69\x6F\x6E","\x69\x73\x4D\x6F\x76\x65\x61\x62\x6C\x65","\x6E\x65\x69\x67\x68\x62\x6F\x75\x72\x73","\x72\x61\x64\x69\x75\x73","\x72\x61\x64\x69\x75\x73\x53\x71\x75\x61\x72\x65\x64","\x67\x65\x74\x4F\x70\x70\x6F\x73\x69\x74\x65\x73","\x72\x65\x73\x65\x74\x45\x64\x67\x65","\x63\x61\x6C\x63\x52\x65\x70\x75\x6C\x73\x69\x6F\x6E","\x63\x61\x6C\x63\x41\x74\x74\x72\x61\x63\x74\x69\x6F\x6E","\x63\x61\x6C\x63\x50\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x72\x65\x64\x75\x63\x65\x54\x65\x6D\x70\x65\x72\x61\x74\x75\x72\x65","\x72\x61\x6E\x64\x6F\x6D","\x6D\x6F\x76\x65\x43\x69\x72\x63\x6C\x65","\x67\x65\x74\x52\x61\x64\x69\x75\x73","\x63\x69\x72\x63\x6C\x65","\x66\x69\x6E\x64\x50\x61\x72\x61\x6C\x6C\x65\x6C\x73","\x67\x65\x74\x45\x64\x67\x65\x49\x64","\x72\x6F\x75\x74\x65","\x6C\x61\x79\x6F\x75\x74\x73","\x6D\x61\x73\x74\x65\x72","\x70\x6C\x61\x63\x65\x4C\x61\x62\x65\x6C\x73","\x61\x76\x6F\x69\x64","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x74\x65\x6D\x70","\x6D\x61\x78\x52\x61\x6E\x6B","\x6D\x69\x6E\x52\x61\x6E\x6B","\x6E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x70\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x4E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x65\x6E\x65\x72\x61\x6C\x50\x75\x72\x70\x6F\x73\x65\x56\x61\x72\x69\x61\x62\x6C\x65","\x73\x65\x74\x47\x65\x6E\x65\x72\x61\x6C\x50\x75\x72\x70\x6F\x73\x65\x56\x61\x72\x69\x61\x62\x6C\x65","\x73\x65\x74\x58","\x73\x65\x74\x59","\x63\x6F\x6E\x6E\x65\x63\x74\x73\x41\x73\x54\x61\x72\x67\x65\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x73\x41\x73\x53\x6F\x75\x72\x63\x65","\x68\x61\x73\x68\x43\x6F\x64\x65","\x67\x65\x74\x52\x61\x6E\x6B\x56\x61\x6C\x75\x65","\x67\x65\x74\x43\x6F\x72\x65\x43\x65\x6C\x6C","\x65\x64\x67\x65\x73","\x69\x73\x52\x65\x76\x65\x72\x73\x65\x64","\x74\x69\x67\x68\x74\x65\x6E\x54\x6F\x53\x6F\x75\x72\x63\x65","\x72\x6F\x6F\x74\x73","\x76\x65\x72\x74\x65\x78\x4D\x61\x70\x70\x65\x72","\x65\x64\x67\x65\x4D\x61\x70\x70\x65\x72","\x53\x4F\x55\x52\x43\x45\x53\x43\x41\x4E\x53\x54\x41\x52\x54\x52\x41\x4E\x4B","\x63\x72\x65\x61\x74\x65\x49\x6E\x74\x65\x72\x6E\x61\x6C\x43\x65\x6C\x6C\x73","\x72\x61\x6E\x6B\x73","\x64\x66\x73\x43\x6F\x75\x6E\x74","\x69\x6E\x69\x74\x69\x61\x6C\x52\x61\x6E\x6B","\x73\x6C\x69\x63\x65","\x66\x69\x78\x52\x61\x6E\x6B\x73","\x65\x78\x74\x65\x6E\x64\x65\x64\x44\x66\x73","\x6E\x65\x73\x74\x65\x64\x42\x65\x73\x74\x52\x61\x6E\x6B\x73","\x63\x75\x72\x72\x65\x6E\x74\x42\x65\x73\x74\x43\x72\x6F\x73\x73\x69\x6E\x67\x73","\x69\x74\x65\x72\x61\x74\x69\x6F\x6E\x73\x57\x69\x74\x68\x6F\x75\x74\x49\x6D\x70\x72\x6F\x76\x65\x6D\x65\x6E\x74","\x6D\x61\x78\x4E\x6F\x49\x6D\x70\x72\x6F\x76\x65\x6D\x65\x6E\x74\x49\x74\x65\x72\x61\x74\x69\x6F\x6E\x73","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x43\x72\x6F\x73\x73\x69\x6E\x67\x73","\x77\x65\x69\x67\x68\x74\x65\x64\x4D\x65\x64\x69\x61\x6E","\x74\x72\x61\x6E\x73\x70\x6F\x73\x65","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x52\x61\x6E\x6B\x43\x72\x6F\x73\x73\x69\x6E\x67","\x6D\x65\x64\x69\x61\x6E\x52\x61\x6E\x6B","\x6D\x65\x64\x69\x61\x6E\x56\x61\x6C\x75\x65","\x6C\x65\x6E\x74\x68","\x67\x65\x74\x49\x6E\x63\x6F\x6D\x69\x6E\x67\x45\x64\x67\x65\x73","\x69\x6E\x74\x72\x61\x43\x65\x6C\x6C\x53\x70\x61\x63\x69\x6E\x67","\x69\x6E\x74\x65\x72\x52\x61\x6E\x6B\x43\x65\x6C\x6C\x53\x70\x61\x63\x69\x6E\x67","\x6F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x69\x6E\x69\x74\x69\x61\x6C\x58","\x70\x61\x72\x61\x6C\x6C\x65\x6C\x45\x64\x67\x65\x53\x70\x61\x63\x69\x6E\x67","\x6A\x65\x74\x74\x79\x50\x6F\x73\x69\x74\x69\x6F\x6E\x73","\x6C\x69\x6D\x69\x74\x58","\x63\x75\x72\x72\x65\x6E\x74\x58\x44\x65\x6C\x74\x61","\x77\x69\x64\x65\x73\x74\x52\x61\x6E\x6B","\x72\x61\x6E\x6B\x54\x6F\x70\x59","\x72\x61\x6E\x6B\x42\x6F\x74\x74\x6F\x6D\x59","\x77\x69\x64\x65\x73\x74\x52\x61\x6E\x6B\x56\x61\x6C\x75\x65","\x72\x61\x6E\x6B\x57\x69\x64\x74\x68\x73","\x72\x61\x6E\x6B\x59","\x66\x69\x6E\x65\x54\x75\x6E\x69\x6E\x67","\x50\x4F\x4C\x59\x4C\x49\x4E\x45","\x6E\x65\x78\x74\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x61\x63\x68\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x4C\x61\x79\x65\x72\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x43\x61\x63\x68\x65","\x70\x72\x69\x6E\x74\x53\x74\x61\x74\x75\x73","\x3D\x3D\x3D\x3D\x3D\x3D\x43\x6F\x6F\x72\x64\x20\x61\x73\x73\x69\x67\x6E\x6D\x65\x6E\x74\x20\x64\x65\x62\x75\x67\x3D\x3D\x3D\x3D\x3D\x3D\x3D","\x52\x61\x6E\x6B\x20","\x20\x3A\x20","\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D\x3D","\x69\x6E\x69\x74\x69\x61\x6C\x43\x6F\x6F\x72\x64\x73","\x6D\x69\x6E\x4E\x6F\x64\x65","\x6D\x65\x64\x69\x61\x6E\x50\x6F\x73","\x6D\x69\x6E\x50\x61\x74\x68","\x73\x65\x74\x43\x65\x6C\x6C\x4C\x6F\x63\x61\x74\x69\x6F\x6E\x73","\x6D\x65\x64\x69\x61\x6E\x58\x56\x61\x6C\x75\x65","\x72\x61\x6E\x6B\x4D\x65\x64\x69\x61\x6E\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x64\x57\x65\x69\x67\x68\x74\x65\x64\x56\x61\x6C\x75\x65","\x63\x61\x6C\x63\x75\x6C\x61\x74\x65\x57\x69\x64\x65\x73\x74\x52\x61\x6E\x6B","\x72\x61\x6E\x6B\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x65\x64\x67\x65\x2E\x65\x64\x67\x65\x73\x20\x69\x73\x20\x6E\x75\x6C\x6C","\x41\x74\x20\x6C\x65\x61\x73\x74\x20\x6F\x6E\x65\x20\x63\x65\x6C\x6C\x20\x68\x61\x73\x20\x6E\x6F\x20\x62\x6F\x75\x6E\x64\x73","\x72\x65\x70\x6F\x73\x69\x74\x69\x6F\x6E\x56\x61\x6C\x69\x64","\x4D\x41\x58\x5F\x56\x41\x4C\x55\x45","\x4F\x52\x54\x48\x4F\x47\x4F\x4E\x41\x4C","\x43\x55\x52\x56\x45","\x73\x65\x74\x45\x64\x67\x65\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x73\x50\x6F\x72\x74","\x70\x72\x6F\x63\x65\x73\x73\x52\x65\x76\x65\x72\x73\x65\x64\x45\x64\x67\x65","\x64\x65\x74\x65\x72\x6D\x69\x6E\x69\x73\x74\x69\x63","\x6D\x6F\x76\x65\x50\x61\x72\x65\x6E\x74","\x70\x61\x72\x65\x6E\x74\x42\x6F\x72\x64\x65\x72","\x69\x6E\x74\x65\x72\x48\x69\x65\x72\x61\x72\x63\x68\x79\x53\x70\x61\x63\x69\x6E\x67","\x74\x72\x61\x76\x65\x72\x73\x65\x41\x6E\x63\x65\x73\x74\x6F\x72\x73","\x65\x64\x67\x65\x73\x43\x61\x63\x68\x65","\x72\x75\x6E","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x66\x69\x6E\x64\x52\x6F\x6F\x74\x73","\x63\x6F\x6E\x63\x61\x74","\x69\x73\x56\x61\x6C\x69\x64\x41\x6E\x63\x65\x73\x74\x6F\x72","\x66\x69\x6C\x74\x65\x72\x44\x65\x73\x63\x65\x6E\x64\x61\x6E\x74\x73","\x63\x79\x63\x6C\x65\x53\x74\x61\x67\x65","\x6C\x61\x79\x65\x72\x69\x6E\x67\x53\x74\x61\x67\x65","\x63\x72\x6F\x73\x73\x69\x6E\x67\x53\x74\x61\x67\x65","\x70\x6C\x61\x63\x65\x6D\x65\x6E\x74\x53\x74\x61\x67\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x64\x69\x74","\x73\x65\x74\x52\x6F\x6F\x74","\x6D\x61\x69\x6E\x74\x61\x69\x6E\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74","\x63\x72\x65\x61\x74\x65\x49\x64\x73","\x70\x6F\x73\x74\x66\x69\x78","\x6E\x65\x78\x74\x49\x64","\x75\x70\x64\x61\x74\x65\x4C\x65\x76\x65\x6C","\x65\x6E\x64\x69\x6E\x67\x55\x70\x64\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x52\x6F\x6F\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x49\x64\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x49\x64\x73","\x69\x6E\x73\x65\x72\x74","\x66\x69\x6C\x74\x65\x72\x43\x65\x6C\x6C\x73","\x67\x65\x74\x44\x65\x73\x63\x65\x6E\x64\x61\x6E\x74\x73","\x72\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65\x64","\x63\x65\x6C\x6C\x41\x64\x64\x65\x64","\x69\x73\x52\x6F\x6F\x74","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74\x73","\x63\x72\x65\x61\x74\x65\x49\x64","\x73\x65\x74\x49\x64","\x69\x73\x4E\x75\x6D\x65\x72\x69\x63","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x4E\x65\x61\x72\x65\x73\x74\x43\x6F\x6D\x6D\x6F\x6E\x41\x6E\x63\x65\x73\x74\x6F\x72","\x67\x65\x74\x4F\x72\x69\x67\x69\x6E","\x50\x41\x54\x48\x5F\x53\x45\x50\x41\x52\x41\x54\x4F\x52","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x50\x61\x74\x68","\x70\x61\x72\x65\x6E\x74\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x43\x68\x69\x6C\x64\x72\x65\x6E","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x43\x68\x69\x6C\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x74\x65\x72\x6D\x69\x6E\x61\x6C\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x69\x6E\x73\x65\x72\x74\x45\x64\x67\x65","\x72\x65\x6D\x6F\x76\x65\x45\x64\x67\x65","\x67\x65\x74\x44\x69\x72\x65\x63\x74\x65\x64\x45\x64\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x4F\x75\x74\x67\x6F\x69\x6E\x67\x45\x64\x67\x65\x73","\x67\x65\x74\x54\x6F\x70\x6D\x6F\x73\x74\x43\x65\x6C\x6C\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x76\x61\x6C\x75\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x76\x61\x6C\x75\x65\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x6F\x6D\x65\x74\x72\x79\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x73\x74\x79\x6C\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x69\x73\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x73\x65\x74\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x76\x69\x73\x69\x62\x6C\x65\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C\x43\x68\x61\x6E\x67\x65\x64","\x6D\x65\x72\x67\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x6D\x65\x72\x67\x65\x43\x68\x69\x6C\x64\x72\x65\x6E\x49\x6D\x70\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74\x73","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x49\x6D\x70\x6C","\x72\x65\x73\x74\x6F\x72\x65\x43\x6C\x6F\x6E\x65","\x63\x65\x6C\x6C\x43\x6C\x6F\x6E\x65\x64","\x70\x72\x65\x76\x69\x6F\x75\x73\x49\x6E\x64\x65\x78","\x69\x6E\x64\x65\x78","\x74\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x61\x74\x74\x72\x69\x62\x75\x74\x65","\x6F\x6E\x49\x6E\x69\x74","\x76\x65\x72\x74\x65\x78","\x65\x64\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x6D\x78\x54\x72\x61\x6E\x73\x69\x65\x6E\x74","\x69\x64\x20\x76\x61\x6C\x75\x65\x20\x70\x61\x72\x65\x6E\x74\x20\x73\x6F\x75\x72\x63\x65\x20\x74\x61\x72\x67\x65\x74\x20\x63\x68\x69\x6C\x64\x72\x65\x6E\x20\x65\x64\x67\x65\x73","\x73\x65\x74\x56\x65\x72\x74\x65\x78","\x73\x65\x74\x45\x64\x67\x65","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x50\x61\x72\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x49\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x6C\x6F\x6E\x65\x56\x61\x6C\x75\x65","\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x43\x4F\x4E\x54\x52\x4F\x4C\x5F\x50\x4F\x49\x4E\x54\x53","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x73\x6F\x75\x72\x63\x65\x50\x6F\x69\x6E\x74","\x74\x61\x72\x67\x65\x74\x50\x6F\x69\x6E\x74","\x73\x77\x61\x70","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x74\x61\x6E","\x70\x6F\x77","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x50\x72\x69\x6E\x74\x65\x72\x2D\x66\x72\x69\x65\x6E\x64\x6C\x79\x20\x76\x65\x72\x73\x69\x6F\x6E","\x70\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x61\x75\x74\x6F\x4F\x72\x69\x67\x69\x6E","\x70\x72\x69\x6E\x74\x4F\x76\x65\x72\x6C\x61\x79\x73","\x77\x6E\x64","\x70\x61\x67\x65\x43\x6F\x75\x6E\x74","\x67\x65\x74\x57\x69\x6E\x64\x6F\x77","\x67\x65\x74\x44\x6F\x63\x74\x79\x70\x65","\x3C\x6D\x65\x74\x61\x20\x68\x74\x74\x70\x2D\x65\x71\x75\x69\x76\x3D\x22\x58\x2D\x55\x41\x2D\x43\x6F\x6D\x70\x61\x74\x69\x62\x6C\x65\x22\x20\x63\x6F\x6E\x74\x65\x6E\x74\x3D\x22\x49\x45\x3D\x38\x22\x3E","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x4F\x76\x65\x72\x6C\x61\x79","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x77\x72\x69\x74\x65\x48\x65\x61\x64","\x3C\x62\x6F\x64\x79\x20\x63\x6C\x61\x73\x73\x3D\x22\x6D\x78\x50\x61\x67\x65\x22\x3E","\x63\x72\x65\x61\x74\x65\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x41\x66\x74\x65\x72","\x61\x6C\x77\x61\x79\x73","\x6D\x78\x50\x61\x67\x65\x42\x72\x65\x61\x6B","\x67\x65\x74\x43\x6F\x76\x65\x72\x50\x61\x67\x65\x73","\x67\x65\x74\x41\x70\x70\x65\x6E\x64\x69\x63\x65\x73","\x61\x64\x64\x47\x72\x61\x70\x68\x46\x72\x61\x67\x6D\x65\x6E\x74","\x72\x65\x6E\x64\x65\x72\x50\x61\x67\x65","\x6D\x78\x50\x61\x67\x65\x2D","\x3C\x74\x69\x74\x6C\x65\x3E","\x3C\x2F\x74\x69\x74\x6C\x65\x3E","\x3C\x73\x74\x79\x6C\x65\x20\x74\x79\x70\x65\x3D\x22\x74\x65\x78\x74\x2F\x63\x73\x73\x22\x3E","\x40\x6D\x65\x64\x69\x61\x20\x70\x72\x69\x6E\x74\x20\x7B","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x7B\x20\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x6E\x6F\x6E\x65\x3B\x20\x7D","\x20\x20\x68\x72\x2E\x6D\x78\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x20\x7B\x20\x64\x69\x73\x70\x6C\x61\x79\x3A\x20\x6E\x6F\x6E\x65\x3B\x20\x7D","\x40\x6D\x65\x64\x69\x61\x20\x73\x63\x72\x65\x65\x6E\x20\x7B","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x7B\x20\x70\x6F\x73\x69\x74\x69\x6F\x6E\x3A\x20\x66\x69\x78\x65\x64\x3B\x20\x72\x69\x67\x68\x74\x3A\x20\x31\x30\x70\x78\x3B\x20\x74\x6F\x70\x3A\x20\x31\x30\x70\x78\x3B\x66\x6F\x6E\x74\x2D\x66\x61\x6D\x69\x6C\x79\x3A\x20\x41\x72\x69\x61\x6C\x3B\x20\x66\x6F\x6E\x74\x2D\x73\x69\x7A\x65\x3A\x31\x30\x70\x74\x3B\x20\x62\x6F\x72\x64\x65\x72\x3A\x20\x73\x6F\x6C\x69\x64\x20\x31\x70\x78\x20\x64\x61\x72\x6B\x67\x72\x61\x79\x3B\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x77\x68\x69\x74\x65\x3B\x20\x62\x6F\x72\x64\x65\x72\x2D\x63\x6F\x6C\x6C\x61\x70\x73\x65\x3A\x63\x6F\x6C\x6C\x61\x70\x73\x65\x3B\x20\x7D","\x20\x20\x74\x61\x62\x6C\x65\x2E\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72\x20\x74\x64\x20\x7B\x20\x62\x6F\x72\x64\x65\x72\x3A\x20\x73\x6F\x6C\x69\x64\x20\x31\x70\x78\x20\x67\x72\x61\x79\x3B\x20\x70\x61\x64\x64\x69\x6E\x67\x3A\x34\x70\x78\x3B\x20\x7D","\x20\x20\x62\x6F\x64\x79\x2E\x6D\x78\x50\x61\x67\x65\x20\x7B\x20\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x3A\x20\x67\x72\x61\x79\x3B\x20\x7D","\x3C\x2F\x73\x74\x79\x6C\x65\x3E","\x6D\x78\x50\x61\x67\x65\x53\x65\x6C\x65\x63\x74\x6F\x72","\x61","\x23\x6D\x78\x50\x61\x67\x65\x2D","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x49\x6E\x73\x69\x64\x65","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x73\x74\x79\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x70\x75\x74\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x70\x75\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x53\x48\x41\x50\x45","\x53\x48\x41\x50\x45\x5F\x52\x45\x43\x54\x41\x4E\x47\x4C\x45","\x53\x54\x59\x4C\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x52\x65\x63\x74\x61\x6E\x67\x6C\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x53\x54\x59\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x43\x33\x44\x39\x46\x46","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x36\x34\x38\x32\x42\x39","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x43\x4F\x4C\x4F\x52","\x23\x37\x37\x34\x34\x30\x30","\x53\x48\x41\x50\x45\x5F\x43\x4F\x4E\x4E\x45\x43\x54\x4F\x52","\x23\x34\x34\x36\x32\x39\x39","\x64\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78","\x70\x75\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x74\x79\x6C\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6F\x72\x69\x67\x69\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65\x4F\x66\x66\x73\x65\x74","\x69\x6E\x76\x61\x6C\x69\x64","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x64\x65\x72","\x6F\x72\x64\x65\x72\x43\x68\x61\x6E\x67\x65\x64","\x76\x69\x73\x69\x62\x6C\x65\x53\x6F\x75\x72\x63\x65\x53\x74\x61\x74\x65","\x76\x69\x73\x69\x62\x6C\x65\x54\x61\x72\x67\x65\x74\x53\x74\x61\x74\x65","\x74\x65\x72\x6D\x69\x6E\x61\x6C\x44\x69\x73\x74\x61\x6E\x63\x65","\x73\x65\x67\x6D\x65\x6E\x74\x73","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x42\x6F\x75\x6E\x64\x73","\x73\x65\x74\x41\x62\x73\x6F\x6C\x75\x74\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x73\x65\x74\x56\x69\x73\x69\x62\x6C\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x64\x6F\x6E\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x69\x73\x53\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x69\x6E\x67\x6C\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x68\x61\x6E\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x74\x43\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x73","\x67\x65\x74\x46\x69\x72\x73\x74\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x61\x64\x64\x43\x65\x6C\x6C","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x61\x64\x64\x65\x64","\x72\x65\x6D\x6F\x76\x65\x64","\x6D\x78\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x68\x61\x6E\x67\x65\x2E\x65\x78\x65\x63\x75\x74\x65","\x65\x6E\x74\x65\x72","\x6C\x65\x61\x76\x65","\x65\x64\x69\x74\x69\x6E\x67\x43\x65\x6C\x6C","\x74\x72\x69\x67\x67\x65\x72","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x61\x75\x74\x6F\x53\x69\x7A\x65","\x65\x6D\x70\x74\x79\x4C\x61\x62\x65\x6C\x54\x65\x78\x74","\x74\x65\x78\x74\x4E\x6F\x64\x65","\x6D\x78\x43\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x63\x6F\x6C\x73","\x32\x30","\x34","\x62\x6C\x75\x72","\x66\x6F\x63\x75\x73\x4C\x6F\x73\x74","\x6B\x65\x79\x64\x6F\x77\x6E","\x6B\x65\x79\x43\x6F\x64\x65","\x69\x73\x45\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x73\x74\x6F\x70\x45\x64\x69\x74\x69\x6E\x67","\x63\x6C\x65\x61\x72\x4F\x6E\x43\x68\x61\x6E\x67\x65","\x73\x65\x74\x4D\x6F\x64\x69\x66\x69\x65\x64","\x6B\x65\x79\x70\x72\x65\x73\x73","\x69\x73\x4C\x61\x62\x65\x6C\x43\x6C\x69\x70\x70\x65\x64","\x69\x73\x57\x72\x61\x70\x70\x69\x6E\x67","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x69\x73\x4D\x6F\x64\x69\x66\x69\x65\x64","\x69\x73\x49\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x69\x73\x48\x69\x64\x65\x4C\x61\x62\x65\x6C","\x6F\x75\x74\x6C\x69\x6E\x65","\x67\x65\x74\x45\x64\x69\x74\x6F\x72\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x56\x61\x6C\x75\x65","\x67\x65\x74\x45\x6D\x70\x74\x79\x4C\x61\x62\x65\x6C\x54\x65\x78\x74","\x63\x72\x65\x61\x74\x65\x54\x65\x78\x74\x44\x69\x76","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x56\x61\x6C\x75\x65","\x67\x65\x74\x45\x64\x69\x74\x69\x6E\x67\x56\x61\x6C\x75\x65","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x54\x4F\x50","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x52\x49\x47\x48\x54","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x42\x4F\x54\x54\x4F\x4D","\x53\x54\x59\x4C\x45\x5F\x53\x50\x41\x43\x49\x4E\x47\x5F\x4C\x45\x46\x54","\x67\x65\x74\x45\x64\x69\x74\x69\x6E\x67\x43\x65\x6C\x6C","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x64\x65\x66\x61\x75\x6C\x74\x54\x65\x78\x74\x53\x68\x61\x70\x65","\x6C\x65\x67\x61\x63\x79\x43\x6F\x6E\x74\x72\x6F\x6C\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x72\x65\x67\x69\x73\x74\x65\x72\x53\x68\x61\x70\x65","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65","\x63\x72\x65\x61\x74\x65\x53\x68\x61\x70\x65","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x53\x68\x61\x70\x65","\x6F\x72\x64\x65\x72\x65\x64","\x6B\x65\x65\x70\x45\x64\x67\x65\x73\x49\x6E\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x66\x69\x72\x73\x74\x45\x64\x67\x65","\x69\x6E\x73\x65\x72\x74\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x69\x6E\x73\x74\x61\x6C\x6C\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x67\x65\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x53\x74\x61\x74\x65\x49\x6E\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x69\x6E\x64\x50\x72\x65\x76\x69\x6F\x75\x73\x53\x74\x61\x74\x65\x49\x6E\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x72\x64\x65\x72","\x6F\x72\x64\x65\x72\x45\x64\x67\x65","\x6B\x65\x65\x70\x45\x64\x67\x65\x73\x49\x6E\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x53\x68\x61\x70\x65\x43\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65\x53\x68\x61\x70\x65","\x67\x65\x74\x53\x68\x61\x70\x65","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x53\x68\x61\x70\x65","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x47\x72\x61\x64\x69\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x67\x65\x74\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x49\x6D\x61\x67\x65","\x70\x6F\x73\x74\x43\x6F\x6E\x66\x69\x67\x75\x72\x65\x53\x68\x61\x70\x65","\x72\x65\x73\x6F\x6C\x76\x65\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x49\x6E\x64\x69\x63\x61\x74\x6F\x72\x43\x6F\x6C\x6F\x72\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x6E\x64\x69\x63\x61\x74\x65\x64","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x67\x65\x74\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x54\x59\x4C\x45","\x53\x54\x59\x4C\x45\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x42\x41\x43\x4B\x47\x52\x4F\x55\x4E\x44\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x42\x4F\x52\x44\x45\x52\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x4F\x56\x45\x52\x46\x4C\x4F\x57","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x41\x44\x44\x49\x4E\x47","\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x65\x4C\x61\x62\x65\x6C","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x69\x73\x4C\x61\x62\x65\x6C\x45\x76\x65\x6E\x74","\x49\x4D\x47","\x4E\x4F\x5F\x46\x4F","\x67\x65\x74\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x6F\x76\x65\x72\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x74\x72\x6F\x6C","\x67\x65\x74\x46\x6F\x6C\x64\x69\x6E\x67\x49\x6D\x61\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6E\x74\x72\x6F\x6C","\x69\x6E\x69\x74\x43\x6F\x6E\x74\x72\x6F\x6C","\x44\x49\x41\x4C\x45\x43\x54\x5F\x50\x52\x45\x46\x45\x52\x48\x54\x4D\x4C","\x69\x6E\x6E\x65\x72\x4E\x6F\x64\x65","\x69\x73\x53\x68\x61\x70\x65\x45\x76\x65\x6E\x74","\x67\x65\x73\x74\x75\x72\x65\x73\x74\x61\x72\x74","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x54\x69\x6D\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x67\x65\x73\x74\x75\x72\x65\x45\x6E\x61\x62\x6C\x65\x64","\x68\x61\x6E\x64\x6C\x65\x47\x65\x73\x74\x75\x72\x65","\x72\x65\x64\x72\x61\x77\x4C\x61\x62\x65\x6C","\x67\x65\x74\x4C\x61\x62\x65\x6C\x42\x6F\x75\x6E\x64\x73","\x69\x73\x43\x6C\x69\x70\x70\x69\x6E\x67","\x67\x65\x74\x54\x65\x78\x74\x53\x63\x61\x6C\x65","\x72\x6F\x74\x61\x74\x65\x4C\x61\x62\x65\x6C\x42\x6F\x75\x6E\x64\x73","\x72\x65\x64\x72\x61\x77\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x72\x65\x64\x72\x61\x77\x43\x6F\x6E\x74\x72\x6F\x6C","\x67\x65\x74\x43\x6F\x6E\x74\x72\x6F\x6C\x42\x6F\x75\x6E\x64\x73","\x65\x71\x75\x61\x6C\x45\x6E\x74\x72\x69\x65\x73","\x65\x71\x75\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x67\x65\x74\x50\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x67\x65\x74\x52\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x59","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D\x43\x6F\x6E\x74\x72\x6F\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x52\x6F\x75\x74\x69\x6E\x67\x43\x65\x6E\x74\x65\x72\x58","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x6F\x72\x74\x68\x42\x75\x66\x66\x65\x72","\x44\x49\x52\x45\x43\x54\x49\x4F\x4E\x5F\x4D\x41\x53\x4B\x5F\x41\x4C\x4C","\x6C\x69\x6D\x69\x74\x73","\x76\x65\x72\x74\x65\x78\x53\x65\x70\x65\x72\x61\x74\x69\x6F\x6E\x73","\x72\x65\x76\x65\x72\x73\x65\x50\x6F\x72\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x72\x6F\x75\x74\x65\x50\x61\x74\x74\x65\x72\x6E\x73","\x77\x61\x79\x50\x6F\x69\x6E\x74\x73\x31","\x64\x69\x72\x56\x65\x63\x74\x6F\x72\x73","\x54\x41\x52\x47\x45\x54\x5F\x4D\x41\x53\x4B","\x53\x4F\x55\x52\x43\x45\x5F\x4D\x41\x53\x4B","\x53\x49\x44\x45\x5F\x4D\x41\x53\x4B","\x43\x45\x4E\x54\x45\x52\x5F\x4D\x41\x53\x4B","\x76\x61\x6C\x75\x65\x73","\x70\x75\x74\x56\x61\x6C\x75\x65","\x67\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x45\x4D\x50\x54\x59\x5F\x50\x4F\x49\x4E\x54","\x75\x70\x64\x61\x74\x69\x6E\x67\x44\x6F\x63\x75\x6D\x65\x6E\x74\x52\x65\x73\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x69\x6E\x67\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x61\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x63\x61\x70\x74\x75\x72\x65\x44\x6F\x63\x75\x6D\x65\x6E\x74\x47\x65\x73\x74\x75\x72\x65","\x6F\x70\x74\x69\x6D\x69\x7A\x65\x56\x6D\x6C\x52\x65\x66\x6C\x6F\x77\x73","\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x73\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x73\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x53\x63\x61\x6C\x65","\x70\x72\x65\x76\x69\x6F\x75\x73\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x65\x74\x53\x63\x61\x6C\x65","\x69\x6E\x76\x61\x6C\x69\x64\x61\x74\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x72\x65\x6D\x6F\x76\x65\x53\x74\x61\x74\x65","\x6D\x78\x47\x72\x61\x70\x68\x56\x69\x65\x77\x2E\x76\x61\x6C\x69\x64\x61\x74\x65","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x76\x61\x6C\x69\x64\x61\x74\x65\x50\x6F\x69\x6E\x74\x73","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x75\x70\x64\x61\x74\x65\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x4F\x66\x66\x73\x65\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x4F\x66\x66\x73\x65\x74\x46\x6F\x72\x43\x65\x6C\x6C","\x75\x70\x64\x61\x74\x65\x46\x69\x78\x65\x64\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x46\x6C\x6F\x61\x74\x69\x6E\x67\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x4F\x66\x66\x73\x65\x74","\x63\x68\x69\x6C\x64\x4D\x6F\x76\x65\x64","\x69\x73\x52\x65\x6E\x64\x65\x72\x69\x6E\x67","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x46\x69\x78\x65\x64\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x72\x74","\x64\x65\x66\x61\x75\x6C\x74\x4C\x6F\x6F\x70\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x69\x73\x41\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x75\x70\x64\x61\x74\x65\x46\x6C\x6F\x61\x74\x69\x6E\x67\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x74\x4E\x65\x78\x74\x50\x6F\x69\x6E\x74","\x69\x73\x4F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x53\x4F\x55\x52\x43\x45\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x53\x54\x59\x4C\x45\x5F\x54\x41\x52\x47\x45\x54\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52\x5F\x53\x50\x41\x43\x49\x4E\x47","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x53\x4F\x55\x52\x43\x45\x5F\x50\x4F\x52\x54","\x53\x54\x59\x4C\x45\x5F\x54\x41\x52\x47\x45\x54\x5F\x50\x4F\x52\x54","\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x55\x54\x49\x4E\x47\x5F\x43\x45\x4E\x54\x45\x52\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x55\x54\x49\x4E\x47\x5F\x43\x45\x4E\x54\x45\x52\x5F\x59","\x67\x65\x74\x52\x65\x6C\x61\x74\x69\x76\x65\x50\x6F\x69\x6E\x74","\x72\x65\x6C\x61\x74\x69\x76\x65\x43\x63\x77","\x73\x65\x74\x52\x65\x6E\x64\x65\x72\x69\x6E\x67","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x45\x76\x61\x6C","\x67\x65\x74\x53\x74\x61\x74\x65\x73","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x61\x74\x65\x73","\x69\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x63\x72\x6F\x6C\x6C\x45\x76\x65\x6E\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x6F\x76\x65\x48\x61\x6E\x64\x6C\x65\x72","\x65\x6E\x64\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x48\x74\x6D\x6C\x50\x61\x6E\x65","\x75\x70\x64\x61\x74\x65\x48\x74\x6D\x6C\x43\x61\x6E\x76\x61\x73\x53\x69\x7A\x65","\x63\x72\x65\x61\x74\x65\x56\x6D\x6C\x50\x61\x6E\x65","\x63\x6F\x6F\x72\x64\x6F\x72\x69\x67\x69\x6E","\x30\x2C\x30","\x73\x74\x61\x74\x69\x63","\x69\x73\x55\x70","\x67\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65\x46\x6F\x72\x52\x6F\x6F\x74","\x55\x50","\x44\x4F\x57\x4E","\x6D\x6F\x75\x73\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x72\x65\x6E\x64\x65\x72\x48\x69\x6E\x74","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x45\x58\x41\x43\x54","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x46\x41\x53\x54\x45\x53\x54","\x52\x45\x4E\x44\x45\x52\x49\x4E\x47\x5F\x48\x49\x4E\x54\x5F\x46\x41\x53\x54\x45\x52","\x44\x49\x41\x4C\x45\x43\x54\x5F\x4D\x49\x58\x45\x44\x48\x54\x4D\x4C","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x69\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x72\x65\x61\x74\x65\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x73\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x70\x68\x56\x69\x65\x77","\x67\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x2F\x67\x72\x61\x70\x68","\x45\x4D\x50\x54\x59\x5F\x41\x52\x52\x41\x59","\x63\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x70\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x54\x69\x6D\x65\x6F\x75\x74","\x64\x6F\x75\x62\x6C\x65\x54\x61\x70\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x59","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x64\x65\x66\x61\x75\x6C\x74\x4F\x76\x65\x72\x6C\x61\x70","\x64\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x65\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x65\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x65\x78\x70\x6F\x72\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x6D\x70\x6F\x72\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x63\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x65\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x76\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x64\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x63\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x74\x69\x6D\x65\x72\x41\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x67\x6E\x6F\x72\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x78\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x53\x69\x7A\x65","\x6D\x69\x6E\x69\x6D\x75\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x6D\x61\x78\x69\x6D\x75\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x72\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x61\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x54\x6F\x50\x72\x65\x66\x65\x72\x72\x65\x64\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x46\x61\x63\x74\x6F\x72","\x6B\x65\x65\x70\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x56\x69\x73\x69\x62\x6C\x65\x4F\x6E\x5A\x6F\x6F\x6D","\x63\x65\x6E\x74\x65\x72\x5A\x6F\x6F\x6D","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x52\x65\x73\x69\x7A\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x4D\x6F\x76\x65","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x61\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x4C\x6F\x6F\x70","\x6D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x61\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x63\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x68\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x49\x6D\x61\x67\x65","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66","\x65\x78\x70\x61\x6E\x64\x65\x64\x49\x6D\x61\x67\x65","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66","\x77\x61\x72\x6E\x69\x6E\x67\x49\x6D\x61\x67\x65","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73\x2F\x77\x61\x72\x6E\x69\x6E\x67\x2E\x67\x69\x66","\x61\x6C\x72\x65\x61\x64\x79\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x61\x6C\x72\x65\x61\x64\x79\x43\x6F\x6E\x6E\x65\x63\x74\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x45\x78\x70\x61\x6E\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x2D\x65\x78\x70\x61\x6E\x64","\x63\x72\x65\x61\x74\x65\x43\x65\x6C\x6C\x45\x64\x69\x74\x6F\x72","\x75\x6E\x6C\x6F\x61\x64","\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x3C\x76\x3A\x67\x72\x6F\x75\x70\x20\x73\x74\x79\x6C\x65\x3D\x22\x44\x49\x53\x50\x4C\x41\x59\x3A\x20\x6E\x6F\x6E\x65\x3B\x22\x3E\x3C\x2F\x76\x3A\x67\x72\x6F\x75\x70\x3E","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x70\x72\x6F\x63\x65\x73\x73\x43\x68\x61\x6E\x67\x65","\x67\x65\x74\x52\x65\x6D\x6F\x76\x65\x64\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x72\x65\x6D\x6F\x76\x65\x53\x74\x61\x74\x65\x46\x6F\x72\x43\x65\x6C\x6C","\x68\x6F\x6D\x65","\x61\x64\x64\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x63\x6C\x65\x61\x72\x43\x65\x6C\x6C\x4F\x76\x65\x72\x6C\x61\x79\x73","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","\x3C\x66\x6F\x6E\x74\x20\x63\x6F\x6C\x6F\x72\x3D\x72\x65\x64\x3E","\x3C\x2F\x66\x6F\x6E\x74\x3E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x69\x73\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x65\x6C\x6C\x53\x69\x7A\x65\x55\x70\x64\x61\x74\x65\x64","\x68\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x41\x74","\x69\x73\x54\x6F\x67\x67\x6C\x65\x45\x76\x65\x6E\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x50\x61\x6E\x6E\x69\x6E\x67\x4D\x61\x6E\x61\x67\x65\x72","\x67\x65\x74\x42\x6F\x72\x64\x65\x72\x53\x69\x7A\x65\x73","\x74\x68\x69\x6E","\x6D\x65\x64\x69\x75\x6D","\x74\x68\x69\x63\x6B","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x70\x61\x64\x64\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x67\x65\x74\x50\x72\x65\x66\x65\x72\x72\x65\x64\x50\x61\x67\x65\x53\x69\x7A\x65","\x67\x65\x74\x42\x6F\x72\x64\x65\x72","\x64\x6F\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x73\x74\x50\x72\x6F\x63\x65\x73\x73\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x67\x65\x74\x49\x6D\x61\x67\x65\x46\x72\x6F\x6D\x42\x75\x6E\x64\x6C\x65\x73","\x64\x61\x74\x61\x3A\x69\x6D\x61\x67\x65\x2F","\x3B\x62\x61\x73\x65\x36\x34\x2C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x61\x64\x64\x49\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65","\x72\x65\x6D\x6F\x76\x65\x49\x6D\x61\x67\x65\x42\x75\x6E\x64\x6C\x65","\x62\x61\x63\x6B","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x47\x72\x6F\x75\x70","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x65\x74\x42\x6F\x75\x6E\x64\x73\x46\x6F\x72\x47\x72\x6F\x75\x70","\x61\x64\x64\x41\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65","\x61\x64\x64\x45\x64\x67\x65","\x69\x73\x41\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74","\x65\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64","\x67\x65\x74\x44\x65\x6C\x65\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x6E\x63\x6C\x75\x64\x65\x45\x64\x67\x65\x73","\x6E\x65\x77\x45\x64\x67\x65","\x67\x65\x74\x46\x6F\x6C\x64\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x72\x65\x63\x75\x72\x73\x65","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x73\x77\x61\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x41\x6C\x74\x65\x72\x6E\x61\x74\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x50\x72\x65\x66\x65\x72\x72\x65\x64\x53\x69\x7A\x65\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x41\x6C\x6C\x45\x64\x67\x65\x73","\x69\x67\x6E\x6F\x72\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x53\x48\x41\x50\x45\x5F\x4C\x41\x42\x45\x4C","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45\x5F\x57\x49\x44\x54\x48","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45\x5F\x48\x45\x49\x47\x48\x54","\x67\x65\x74\x53\x69\x7A\x65\x46\x6F\x72\x53\x74\x72\x69\x6E\x67","\x72\x65\x73\x69\x7A\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4E\x65\x67\x61\x74\x69\x76\x65\x43\x6F\x6F\x72\x64\x69\x6E\x61\x74\x65\x73","\x69\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x69\x73\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x64\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x47\x72\x61\x70\x68","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x43\x65\x6C\x6C\x43\x6F\x6E\x74\x61\x69\x6E\x6D\x65\x6E\x74\x41\x72\x65\x61","\x67\x65\x74\x43\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x67\x65\x74\x4D\x61\x78\x69\x6D\x75\x6D\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x70","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x58","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x59","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x59","\x53\x54\x59\x4C\x45\x5F\x45\x58\x49\x54\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x54\x52\x59\x5F\x50\x45\x52\x49\x4D\x45\x54\x45\x52","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x70\x6F\x69\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x46\x4C\x49\x50\x48","\x53\x54\x59\x4C\x45\x5F\x46\x4C\x49\x50\x56","\x69\x73\x50\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x46\x6F\x72\x50\x6F\x72\x74","\x69\x73\x43\x65\x6C\x6C\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x67\x65\x74\x43\x65\x6C\x6C\x42\x6F\x75\x6E\x64\x73","\x73\x68\x69\x66\x74\x50\x72\x65\x76\x69\x65\x77\x31","\x73\x68\x69\x66\x74\x50\x72\x65\x76\x69\x65\x77\x32","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x7A\x6F\x6F\x6D\x41\x63\x74\x75\x61\x6C","\x7A\x6F\x6F\x6D\x54\x6F","\x73\x63\x72\x6F\x6C\x6C\x52\x65\x63\x74\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x7A\x6F\x6F\x6D\x54\x6F\x52\x65\x63\x74","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x4F\x52\x54\x48\x4F\x47\x4F\x4E\x41\x4C","\x53\x65\x67\x6D\x65\x6E\x74\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x45\x6C\x62\x6F\x77\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x53\x69\x64\x65\x54\x6F\x53\x69\x64\x65","\x54\x6F\x70\x54\x6F\x42\x6F\x74\x74\x6F\x6D","\x45\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x4F\x72\x74\x68\x43\x6F\x6E\x6E\x65\x63\x74\x6F\x72","\x69\x73\x4C\x6F\x6F\x70","\x69\x73\x43\x6C\x6F\x6E\x65\x45\x76\x65\x6E\x74","\x49\x53\x5F\x4D\x41\x43","\x69\x73\x4D\x65\x74\x61\x44\x6F\x77\x6E","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x65\x64\x45\x76\x65\x6E\x74","\x69\x73\x46\x6F\x72\x63\x65\x4D\x61\x72\x71\x75\x65\x65\x45\x76\x65\x6E\x74","\x76\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x41\x6C\x65\x72\x74","\x69\x73\x45\x64\x67\x65\x56\x61\x6C\x69\x64","\x69\x73\x56\x61\x6C\x69\x64\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x63\x68\x65\x63\x6B","\x76\x61\x6C\x69\x64\x61\x74\x65\x45\x64\x67\x65","\x76\x61\x6C\x69\x64\x61\x74\x65\x47\x72\x61\x70\x68","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x61\x74\x74\x72","\x63\x6F\x75\x6E\x74\x45\x72\x72\x6F\x72","\x73\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x74\x6F\x53\x74\x72\x69\x6E\x67","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x73\x65\x74\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C\x73","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x4E\x6F\x64\x65","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","\x67\x65\x74\x43\x75\x72\x73\x6F\x72\x46\x6F\x72\x43\x65\x6C\x6C","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x47\x52\x41\x44\x49\x45\x4E\x54\x43\x4F\x4C\x4F\x52","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x53\x48\x41\x50\x45","\x53\x54\x59\x4C\x45\x5F\x49\x4E\x44\x49\x43\x41\x54\x4F\x52\x5F\x49\x4D\x41\x47\x45","\x73\x65\x74\x42\x6F\x72\x64\x65\x72","\x53\x48\x41\x50\x45\x5F\x53\x57\x49\x4D\x4C\x41\x4E\x45","\x69\x73\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x65\x74\x52\x65\x73\x69\x7A\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x73\x45\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x73\x63\x61\x70\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x49\x6E\x76\x6F\x6B\x65\x73\x53\x74\x6F\x70\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x73\x65\x74\x45\x6E\x74\x65\x72\x53\x74\x6F\x70\x73\x43\x65\x6C\x6C\x45\x64\x69\x74\x69\x6E\x67","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x69\x73\x43\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x73\x65\x74\x43\x65\x6C\x6C\x73\x4C\x6F\x63\x6B\x65\x64","\x67\x65\x74\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x43\x65\x6C\x6C\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x43\x4C\x4F\x4E\x45\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x43\x6C\x6F\x6E\x65\x61\x62\x6C\x65","\x63\x61\x6E\x45\x78\x70\x6F\x72\x74\x43\x65\x6C\x6C","\x63\x61\x6E\x49\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x73\x53\x65\x6C\x65\x63\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x44\x45\x4C\x45\x54\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x44\x65\x6C\x65\x74\x61\x62\x6C\x65","\x69\x73\x4C\x61\x62\x65\x6C\x4D\x6F\x76\x61\x62\x6C\x65","\x67\x65\x74\x4D\x6F\x76\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x43\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x4D\x4F\x56\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x50\x6F\x72\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x73\x65\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x69\x73\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x56\x65\x72\x74\x65\x78\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x73\x65\x74\x45\x64\x67\x65\x4C\x61\x62\x65\x6C\x73\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x73\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4E\x65\x73\x74\x69\x6E\x67","\x73\x65\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x69\x73\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x6C\x6F\x6E\x65\x49\x6E\x76\x61\x6C\x69\x64\x45\x64\x67\x65\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x4D\x6F\x76\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x65\x6C\x6C\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x52\x45\x53\x49\x5A\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x52\x65\x73\x69\x7A\x61\x62\x6C\x65","\x69\x73\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74\x4D\x6F\x76\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x42\x65\x6E\x64\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x42\x45\x4E\x44\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x42\x65\x6E\x64\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x45\x44\x49\x54\x41\x42\x4C\x45","\x73\x65\x74\x43\x65\x6C\x6C\x73\x45\x64\x69\x74\x61\x62\x6C\x65","\x69\x73\x43\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x73\x44\x69\x73\x63\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x69\x73\x56\x61\x6C\x69\x64\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x53\x54\x59\x4C\x45\x5F\x41\x55\x54\x4F\x53\x49\x5A\x45","\x73\x65\x74\x41\x75\x74\x6F\x53\x69\x7A\x65\x43\x65\x6C\x6C\x73","\x69\x73\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73","\x73\x65\x74\x45\x78\x74\x65\x6E\x64\x50\x61\x72\x65\x6E\x74\x73\x4F\x6E\x41\x64\x64","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x73\x65\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x69\x73\x41\x6C\x6C\x6F\x77\x4F\x76\x65\x72\x6C\x61\x70\x50\x61\x72\x65\x6E\x74","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4C\x44\x41\x42\x4C\x45","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x68\x69\x74\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x43\x6F\x6E\x74\x65\x6E\x74","\x67\x65\x74\x50\x6F\x69\x6E\x74\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x73","\x67\x65\x74\x43\x65\x6C\x6C\x73\x42\x65\x79\x6F\x6E\x64","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x52\x65\x67\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x4E\x65\x78\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x50\x72\x65\x76\x69\x6F\x75\x73\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x50\x61\x72\x65\x6E\x74\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x43\x68\x69\x6C\x64\x43\x65\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x6C\x61\x73\x74\x54\x6F\x75\x63\x68\x58","\x6C\x61\x73\x74\x4D\x6F\x75\x73\x65\x58","\x6C\x61\x73\x74\x4D\x6F\x75\x73\x65\x59","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x64\x65\x73\x74\x72\x6F\x79\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70","\x68\x65\x6C\x70","\x67\x72\x61\x70\x68\x52\x65\x6E\x64\x65\x72\x48\x69\x6E\x74","\x73\x68\x6F\x77\x56\x69\x65\x77\x70\x6F\x72\x74","\x73\x69\x7A\x65\x72\x53\x69\x7A\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x68\x61\x70\x65\x2D\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x6F\x70\x74\x69\x6D\x69\x7A\x65\x53\x70\x65\x65\x64","\x69\x6D\x61\x67\x65\x2D\x72\x65\x6E\x64\x65\x72\x69\x6E\x67","\x75\x70\x64\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x75\x70\x64\x61\x74\x65","\x70\x61\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x66\x72\x65\x73\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x72\x64\x65\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x73\x69\x7A\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x7A\x65\x72","\x73\x65\x74\x5A\x6F\x6F\x6D\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x53\x6F\x75\x72\x63\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x53\x69\x7A\x65","\x67\x65\x74\x4F\x75\x74\x6C\x69\x6E\x65\x4F\x66\x66\x73\x65\x74","\x73\x74\x61\x72\x74\x58","\x73\x74\x61\x72\x74\x59","\x64\x78\x30","\x64\x79\x30","\x6E","\x76\x61\x6C\x69\x64\x4E\x65\x69\x67\x68\x62\x6F\x72\x73","\x74\x79\x70\x65\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x4E\x65\x69\x67\x68\x62\x6F\x72\x73\x41\x6C\x6C\x6F\x77\x65\x64","\x63\x68\x65\x63\x6B\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x63\x68\x65\x63\x6B\x4E\x65\x69\x67\x68\x62\x6F\x72\x73","\x63\x68\x65\x63\x6B\x54\x79\x70\x65","\x75\x6E\x64\x6F\x48\x61\x6E\x64\x6C\x65\x72","\x62\x75\x62\x62\x6C\x69\x6E\x67","\x69\x73\x42\x75\x62\x62\x6C\x69\x6E\x67","\x73\x65\x74\x42\x75\x62\x62\x6C\x69\x6E\x67","\x67\x65\x74\x4C\x61\x79\x6F\x75\x74","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x72\x65\x73\x69\x7A\x65\x48\x61\x6E\x64\x6C\x65\x72","\x66\x6F\x6C\x64\x48\x61\x6E\x64\x6C\x65\x72","\x73\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x73\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x69\x73\x43\x65\x6C\x6C\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x53\x68\x69\x66\x74\x61\x62\x6C\x65","\x69\x73\x53\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x73\x65\x74\x53\x68\x69\x66\x74\x52\x69\x67\x68\x74\x77\x61\x72\x64\x73","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x73\x65\x74\x53\x68\x69\x66\x74\x44\x6F\x77\x6E\x77\x61\x72\x64\x73","\x63\x65\x6C\x6C\x52\x65\x73\x69\x7A\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C\x73\x54\x6F\x53\x68\x69\x66\x74","\x73\x68\x69\x66\x74\x43\x65\x6C\x6C","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x61\x64\x64\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x41\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x52\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x65\x74\x41\x64\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x52\x65\x73\x69\x7A\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65\x49\x67\x6E\x6F\x72\x65\x64","\x69\x73\x43\x65\x6C\x6C\x48\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x41\x64\x64\x65\x64","\x72\x65\x73\x69\x7A\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x6F\x6C\x64\x42\x6F\x75\x6E\x64\x73","\x6F\x6C\x64\x53\x74\x61\x74\x65\x73","\x6F\x6C\x64\x53\x63\x61\x6C\x65","\x64\x65\x6C\x74\x61\x73","\x63\x6F\x75\x6E\x74","\x58","\x59","\x61\x64\x64\x45\x64\x67\x65\x73","\x72\x65\x73\x6F\x6C\x76\x65","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x53\x74\x61\x74\x65","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65\x53\x74\x61\x74\x65","\x75\x70\x64\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x68\x61\x70\x65","\x6D\x61\x78\x43\x65\x6C\x6C\x73","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65","\x63\x75\x72\x72\x65\x6E\x74\x44\x78","\x63\x75\x72\x72\x65\x6E\x74\x44\x79","\x75\x70\x64\x61\x74\x65\x43\x75\x72\x73\x6F\x72","\x73\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x6F\x6E\x6E\x65\x63\x74\x4F\x6E\x44\x72\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x4F\x6E\x4D\x6F\x76\x65","\x70\x72\x65\x76\x69\x65\x77\x43\x6F\x6C\x6F\x72","\x68\x74\x6D\x6C\x50\x72\x65\x76\x69\x65\x77","\x73\x63\x61\x6C\x65\x47\x72\x69\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6C\x6F\x6E\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x4D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x4D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x73\x65\x74\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x65\x6C\x6C\x57\x61\x73\x43\x6C\x69\x63\x6B\x65\x64","\x53\x45\x4C\x45\x43\x54","\x66\x69\x72\x73\x74","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x68\x61\x70\x65","\x70\x42\x6F\x75\x6E\x64\x73","\x75\x73\x65\x47\x75\x69\x64\x65\x73\x46\x6F\x72\x45\x76\x65\x6E\x74","\x73\x65\x74\x48\x69\x67\x68\x6C\x69\x67\x68\x74\x43\x6F\x6C\x6F\x72","\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x54\x41\x52\x47\x45\x54\x5F\x43\x4F\x4C\x4F\x52","\x43\x55\x52\x53\x4F\x52\x5F\x4D\x4F\x56\x41\x42\x4C\x45\x5F\x45\x44\x47\x45","\x43\x55\x52\x53\x4F\x52\x5F\x4D\x4F\x56\x41\x42\x4C\x45\x5F\x56\x45\x52\x54\x45\x58","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x64\x65\x73\x74\x72\x6F\x79\x53\x68\x61\x70\x65\x73","\x67\x75\x69\x64\x65\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x74\x72\x69\x67\x67\x65\x72\x58","\x74\x72\x69\x67\x67\x65\x72\x59","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x63\x6C\x65\x61\x72\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4F\x6E\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x70\x72\x65\x76\x69\x65\x77\x45\x6E\x61\x62\x6C\x65\x64","\x75\x73\x65\x47\x72\x69\x64","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x70\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x76\x61\x6C\x69\x64\x43\x6F\x6C\x6F\x72","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x69\x6E\x76\x61\x6C\x69\x64\x43\x6F\x6C\x6F\x72","\x44\x45\x46\x41\x55\x4C\x54\x5F\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x68\x6F\x74\x73\x70\x6F\x74","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x68\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x43\x6F\x6C\x6F\x72","\x76\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x6D\x61\x72\x6B\x65\x64\x53\x74\x61\x74\x65","\x73\x65\x74\x48\x6F\x74\x73\x70\x6F\x74","\x67\x65\x74\x48\x6F\x74\x73\x70\x6F\x74","\x73\x65\x74\x48\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x48\x6F\x74\x73\x70\x6F\x74\x45\x6E\x61\x62\x6C\x65\x64","\x68\x61\x73\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x4D\x61\x72\x6B\x65\x64\x53\x74\x61\x74\x65","\x75\x6E\x6D\x61\x72\x6B","\x70\x72\x6F\x63\x65\x73\x73","\x69\x73\x56\x61\x6C\x69\x64\x53\x74\x61\x74\x65","\x67\x65\x74\x4D\x61\x72\x6B\x65\x72\x43\x6F\x6C\x6F\x72","\x6D\x61\x72\x6B\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65\x54\x6F\x4D\x61\x72\x6B","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73\x48\x6F\x74\x73\x70\x6F\x74","\x72\x65\x73\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x68\x61\x6E\x64\x6C\x65\x72\x73","\x6D\x61\x78\x48\x61\x6E\x64\x6C\x65\x72\x73","\x6D\x6F\x76\x65\x49\x63\x6F\x6E\x46\x72\x6F\x6E\x74","\x6D\x6F\x76\x65\x49\x63\x6F\x6E\x42\x61\x63\x6B","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x6D\x61\x72\x6B\x65\x72","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x48\x61\x6E\x64\x6C\x65\x72","\x77\x61\x79\x70\x6F\x69\x6E\x74\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x45\x6E\x61\x62\x6C\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x44\x65\x6C\x61\x79","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x49\x6E\x50\x72\x6F\x67\x72\x65\x73\x73","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x56\x61\x6C\x69\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x69\x6E\x69\x74\x69\x61\x6C\x54\x6F\x75\x63\x68\x58","\x69\x6E\x69\x74\x69\x61\x6C\x54\x6F\x75\x63\x68\x59","\x69\x67\x6E\x6F\x72\x65\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x63\x6F\x6E\x4F\x66\x66\x73\x65\x74","\x65\x64\x67\x65\x53\x74\x61\x74\x65","\x64\x72\x69\x6C\x6C\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E\x43\x6F\x75\x6E\x74\x65\x72","\x6D\x6F\x76\x65\x50\x72\x65\x76\x69\x65\x77\x41\x77\x61\x79","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x63\x6F\x6E\x53\x74\x61\x74\x65","\x69\x63\x6F\x6E\x73","\x72\x65\x64\x72\x61\x77\x49\x63\x6F\x6E\x73","\x64\x65\x73\x74\x72\x6F\x79\x49\x63\x6F\x6E\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x69\x73\x4D\x6F\x76\x65\x49\x63\x6F\x6E\x54\x6F\x46\x72\x6F\x6E\x74\x46\x6F\x72\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x49\x63\x6F\x6E\x73","\x43\x55\x52\x53\x4F\x52\x5F\x43\x4F\x4E\x4E\x45\x43\x54","\x63\x75\x72\x72\x65\x6E\x74\x53\x74\x61\x74\x65","\x69\x63\x6F\x6E","\x67\x65\x74\x49\x63\x6F\x6E\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x69\x73\x53\x74\x61\x72\x74\x45\x76\x65\x6E\x74","\x63\x75\x72\x72\x65\x6E\x74\x46\x6F\x63\x75\x73","\x63\x75\x72\x72\x65\x6E\x74\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x73\x6F\x75\x72\x63\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x77\x61\x79\x70\x6F\x69\x6E\x74\x73","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x73\x65\x6C\x65\x63\x74\x65\x64\x49\x63\x6F\x6E","\x69\x73\x49\x6D\x6D\x65\x64\x69\x61\x74\x65\x43\x6F\x6E\x6E\x65\x63\x74\x53\x6F\x75\x72\x63\x65","\x75\x70\x64\x61\x74\x65\x43\x75\x72\x72\x65\x6E\x74\x53\x74\x61\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x54\x61\x72\x67\x65\x74\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x67\x65\x74\x53\x6F\x75\x72\x63\x65\x50\x65\x72\x69\x6D\x65\x74\x65\x72\x50\x6F\x69\x6E\x74","\x64\x72\x61\x77\x50\x72\x65\x76\x69\x65\x77","\x75\x70\x64\x61\x74\x65\x49\x63\x6F\x6E\x73","\x69\x73\x53\x74\x6F\x70\x45\x76\x65\x6E\x74","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x45\x64\x67\x65\x57\x69\x64\x74\x68","\x67\x65\x74\x45\x64\x67\x65\x43\x6F\x6C\x6F\x72","\x49\x4E\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x63\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x41\x6C\x69\x67\x6E\x6D\x65\x6E\x74\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x70\x6F\x69\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x70\x6F\x69\x6E\x74\x2E\x67\x69\x66","\x68\x69\x67\x68\x6C\x69\x67\x68\x74\x43\x6F\x6C\x6F\x72","\x66\x6F\x63\x75\x73\x49\x63\x6F\x6E\x73","\x66\x6F\x63\x75\x73\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x66\x6F\x63\x75\x73\x50\x6F\x69\x6E\x74\x73","\x63\x75\x72\x72\x65\x6E\x74\x46\x6F\x63\x75\x73\x41\x72\x65\x61","\x67\x65\x74\x49\x6D\x61\x67\x65\x46\x6F\x72\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74","\x69\x73\x45\x76\x65\x6E\x74\x49\x67\x6E\x6F\x72\x65\x64","\x72\x65\x70\x61\x69\x6E\x74","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x73\x68\x61\x72\x65\x64\x44\x69\x76","\x63\x75\x72\x72\x65\x6E\x74\x58","\x63\x75\x72\x72\x65\x6E\x74\x59","\x64\x72\x61\x67\x48\x61\x6E\x64\x6C\x65\x72","\x6D\x78\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x61\x6C\x6C\x6F\x77\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73\x43\x68\x65\x63\x6B","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x52\x61\x73\x74\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x42\x6F\x75\x6E\x64\x73","\x63\x72\x65\x61\x74\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x53\x68\x61\x70\x65","\x73\x69\x7A\x65\x72\x73","\x6E\x2D\x72\x65\x73\x69\x7A\x65","\x6E\x65\x2D\x72\x65\x73\x69\x7A\x65","\x77\x2D\x72\x65\x73\x69\x7A\x65","\x65\x2D\x72\x65\x73\x69\x7A\x65","\x73\x77\x2D\x72\x65\x73\x69\x7A\x65","\x73\x2D\x72\x65\x73\x69\x7A\x65","\x73\x65\x2D\x72\x65\x73\x69\x7A\x65","\x6C\x61\x62\x65\x6C\x53\x68\x61\x70\x65","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x53\x68\x61\x70\x65","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6C\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x53\x74\x72\x6F\x6B\x65\x57\x69\x64\x74\x68","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x44\x61\x73\x68\x65\x64","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x44\x41\x53\x48\x45\x44","\x63\x72\x65\x61\x74\x65\x53\x69\x7A\x65\x72\x53\x68\x61\x70\x65","\x69\x73\x53\x69\x7A\x65\x72\x56\x69\x73\x69\x62\x6C\x65","\x52\x4F\x54\x41\x54\x49\x4F\x4E\x5F\x48\x41\x4E\x44\x4C\x45","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45","\x70\x72\x65\x76\x69\x65\x77","\x63\x75\x72\x72\x65\x6E\x74\x41\x6C\x70\x68\x61","\x61\x74\x61\x6E","\x75\x6E\x69\x6F\x6E","\x72\x6F\x74\x61\x74\x65\x43\x65\x6C\x6C","\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x62\x65\x6E\x64\x73","\x72\x65\x6D\x6F\x76\x65\x45\x6E\x61\x62\x6C\x65\x64","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x61\x62\x73\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x50\x6F\x69\x6E\x74\x73","\x69\x73\x41\x64\x64\x50\x6F\x69\x6E\x74\x45\x76\x65\x6E\x74","\x61\x64\x64\x50\x6F\x69\x6E\x74","\x63\x72\x65\x61\x74\x65\x42\x65\x6E\x64\x73","\x69\x6E\x69\x74\x42\x65\x6E\x64","\x43\x55\x52\x53\x4F\x52\x5F\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45","\x69\x73\x52\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74\x45\x76\x65\x6E\x74","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x44\x41\x53\x48\x45\x44","\x69\x73\x48\x61\x6E\x64\x6C\x65\x56\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x53\x68\x61\x70\x65","\x69\x73\x48\x61\x6E\x64\x6C\x65\x45\x6E\x61\x62\x6C\x65\x64","\x43\x55\x52\x53\x4F\x52\x5F\x42\x45\x4E\x44\x5F\x48\x41\x4E\x44\x4C\x45","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x73\x54\x61\x72\x67\x65\x74","\x69\x73\x4C\x61\x62\x65\x6C","\x63\x6C\x6F\x6E\x65\x50\x72\x65\x76\x69\x65\x77\x53\x74\x61\x74\x65","\x67\x65\x74\x53\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x54\x65\x72\x6D\x69\x6E\x61\x6C\x53\x74\x61\x74\x65","\x67\x65\x74\x50\x72\x65\x76\x69\x65\x77\x50\x6F\x69\x6E\x74\x73","\x75\x70\x64\x61\x74\x65\x50\x72\x65\x76\x69\x65\x77\x53\x74\x61\x74\x65","\x73\x65\x74\x50\x72\x65\x76\x69\x65\x77\x43\x6F\x6C\x6F\x72","\x6D\x6F\x76\x65\x4C\x61\x62\x65\x6C","\x63\x68\x61\x6E\x67\x65\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x63\x68\x61\x6E\x67\x65\x50\x6F\x69\x6E\x74\x73","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x66\x69\x6E\x64\x4E\x65\x61\x72\x65\x73\x74\x53\x65\x67\x6D\x65\x6E\x74","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x69\x6C\x6C\x43\x6F\x6C\x6F\x72","\x4C\x4F\x43\x4B\x45\x44\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x72\x65\x64\x72\x61\x77\x49\x6E\x6E\x65\x72\x42\x65\x6E\x64\x73","\x66\x6C\x69\x70\x45\x6E\x61\x62\x6C\x65\x64","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B\x4F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x6F\x75\x62\x6C\x65\x43\x6C\x69\x63\x6B\x4F\x72\x69\x65\x6E\x74\x61\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x56\x69\x72\x74\x75\x61\x6C\x42\x65\x6E\x64","\x67\x65\x74\x43\x75\x72\x73\x6F\x72\x46\x6F\x72\x42\x65\x6E\x64","\x45\x44\x47\x45\x53\x54\x59\x4C\x45\x5F\x54\x4F\x50\x54\x4F\x42\x4F\x54\x54\x4F\x4D","\x45\x44\x47\x45\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x72\x6F\x77\x2D\x72\x65\x73\x69\x7A\x65","\x63\x6F\x6C\x2D\x72\x65\x73\x69\x7A\x65","\x6E\x6F\x72\x6D\x61\x6C\x4B\x65\x79\x73","\x73\x68\x69\x66\x74\x4B\x65\x79\x73","\x63\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79\x73","\x63\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79\x73","\x6B\x65\x79\x44\x6F\x77\x6E","\x62\x69\x6E\x64\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x67\x65\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x69\x73\x47\x72\x61\x70\x68\x45\x76\x65\x6E\x74","\x68\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x73\x65\x74\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x6D\x78\x54\x6F\x6F\x6C\x74\x69\x70","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x73\x74\x61\x74\x65\x53\x6F\x75\x72\x63\x65","\x72\x65\x73\x65\x74\x54\x69\x6D\x65\x72","\x48\x49\x47\x48\x4C\x49\x47\x48\x54\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x72\x65\x70\x61\x69\x6E\x74\x48\x61\x6E\x64\x6C\x65\x72","\x6B\x65\x65\x70\x4F\x6E\x54\x6F\x70","\x64\x72\x61\x77\x48\x69\x67\x68\x6C\x69\x67\x68\x74","\x65\x64\x69\x74\x6F\x72","\x68\x69\x64\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x62\x69\x6E\x64\x41\x63\x74\x69\x6F\x6E","\x63\x6F\x6E\x66\x69\x67","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75","\x63\x72\x65\x61\x74\x65\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x73","\x61\x64\x64\x49\x74\x65\x6D\x73","\x69\x66","\x61\x73","\x69\x63\x6F\x6E\x43\x6C\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x73\x65\x70\x61\x72\x61\x74\x6F\x72","\x6E\x6F\x63\x65\x6C\x6C","\x6E\x63\x65\x6C\x6C\x73","\x6E\x6F\x74\x52\x6F\x6F\x74","\x6E\x6F\x6E\x45\x6D\x70\x74\x79","\x65\x78\x70\x61\x6E\x64\x61\x62\x6C\x65","\x63\x6F\x6C\x6C\x61\x70\x73\x61\x62\x6C\x65","\x76\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x65\x6D\x70\x74\x79\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x74\x6F\x6F\x6C\x62\x61\x72","\x69\x6E\x73\x65\x72\x74\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x2F\x73\x65\x70\x61\x72\x61\x74\x6F\x72\x2E\x67\x69\x66","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x4F\x70\x74\x69\x6F\x6E","\x73\x65\x74\x4D\x6F\x64\x65","\x61\x64\x64\x50\x72\x6F\x74\x6F\x74\x79\x70\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E\x73","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x56\x61\x6C\x75\x65\x73","\x70\x6F\x70\x75\x70\x48\x61\x6E\x64\x6C\x65\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x47\x72\x61\x70\x68","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x6B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x61\x6D\x65","\x49\x53\x5F\x4C\x4F\x43\x41\x4C","\x63\x72\x65\x61\x74\x65\x53\x65\x73\x73\x69\x6F\x6E","\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73\x2F\x65\x64\x69\x74\x6F\x72","\x61\x73\x6B\x5A\x6F\x6F\x6D\x52\x65\x73\x6F\x75\x72\x63\x65","\x61\x73\x6B\x5A\x6F\x6F\x6D","\x6C\x61\x73\x74\x53\x61\x76\x65\x64\x52\x65\x73\x6F\x75\x72\x63\x65","\x6C\x61\x73\x74\x53\x61\x76\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x46\x69\x6C\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x46\x69\x6C\x65","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x74\x61\x73\x6B\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x74\x61\x73\x6B\x73","\x68\x65\x6C\x70\x52\x65\x73\x6F\x75\x72\x63\x65","\x6F\x75\x74\x6C\x69\x6E\x65\x52\x65\x73\x6F\x75\x72\x63\x65","\x64\x62\x6C\x43\x6C\x69\x63\x6B\x41\x63\x74\x69\x6F\x6E","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x52\x65\x71\x75\x69\x72\x65\x64","\x66\x6F\x72\x63\x65\x64\x49\x6E\x73\x65\x72\x74\x69\x6E\x67","\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x64\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x64\x65\x66\x61\x75\x6C\x74\x47\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x42\x6F\x72\x64\x65\x72\x53\x69\x7A\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x6F\x73\x74\x50\x61\x72\x61\x6D\x65\x74\x65\x72\x4E\x61\x6D\x65","\x75\x72\x6C\x50\x6F\x73\x74","\x75\x72\x6C\x49\x6D\x61\x67\x65","\x6C\x61\x79\x6F\x75\x74\x44\x69\x61\x67\x72\x61\x6D","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x53\x70\x61\x63\x69\x6E\x67","\x6D\x61\x69\x6E\x74\x61\x69\x6E\x53\x77\x69\x6D\x6C\x61\x6E\x65\x73","\x6C\x61\x79\x6F\x75\x74\x53\x77\x69\x6D\x6C\x61\x6E\x65\x73","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x49\x6E\x64\x65\x78","\x74\x61\x73\x6B\x73\x57\x69\x6E\x64\x6F\x77\x49\x6D\x61\x67\x65","\x74\x61\x73\x6B\x73\x54\x6F\x70","\x68\x65\x6C\x70\x57\x69\x6E\x64\x6F\x77\x49\x6D\x61\x67\x65","\x75\x72\x6C\x48\x65\x6C\x70","\x68\x65\x6C\x70\x57\x69\x64\x74\x68","\x68\x65\x6C\x70\x48\x65\x69\x67\x68\x74","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x57\x69\x64\x74\x68","\x70\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x48\x65\x69\x67\x68\x74","\x6D\x6F\x76\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x44\x69\x61\x6C\x6F\x67","\x76\x61\x6C\x69\x64\x61\x74\x69\x6E\x67","\x65\x78\x70\x6F\x72\x74\x49\x6D\x61\x67\x65","\x67\x65\x74\x55\x72\x6C\x49\x6D\x61\x67\x65","\x67\x65\x74\x56\x69\x65\x77\x58\x6D\x6C","\x5F\x62\x6C\x61\x6E\x6B","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x75\x6E\x67\x72\x6F\x75\x70","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x73\x68\x6F\x77\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x73\x65\x6C\x65\x63\x74\x4E\x6F\x6E\x65","\x74\x6F\x42\x61\x63\x6B","\x74\x6F\x46\x72\x6F\x6E\x74","\x73\x65\x6C\x65\x63\x74\x50\x72\x65\x76\x69\x6F\x75\x73","\x73\x65\x6C\x65\x63\x74\x4E\x65\x78\x74","\x73\x65\x6C\x65\x63\x74\x50\x61\x72\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x68\x69\x6C\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65\x41\x6C\x6C","\x65\x78\x70\x61\x6E\x64","\x65\x78\x70\x61\x6E\x64\x41\x6C\x6C","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x4C\x65\x66\x74","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x43\x65\x6E\x74\x65\x72","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x52\x69\x67\x68\x74","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x54\x6F\x70","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x4D\x69\x64\x64\x6C\x65","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73\x42\x6F\x74\x74\x6F\x6D","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x4C\x65\x66\x74","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x43\x65\x6E\x74\x65\x72","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x52\x69\x67\x68\x74","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x54\x6F\x70","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x4D\x69\x64\x64\x6C\x65","\x61\x6C\x69\x67\x6E\x46\x6F\x6E\x74\x42\x6F\x74\x74\x6F\x6D","\x70\x72\x6F\x6D\x70\x74","\x74\x6F\x67\x67\x6C\x65\x54\x61\x73\x6B\x73","\x73\x68\x6F\x77\x54\x61\x73\x6B\x73","\x74\x6F\x67\x67\x6C\x65\x48\x65\x6C\x70","\x73\x68\x6F\x77\x48\x65\x6C\x70","\x74\x6F\x67\x67\x6C\x65\x4F\x75\x74\x6C\x69\x6E\x65","\x73\x68\x6F\x77\x4F\x75\x74\x6C\x69\x6E\x65","\x74\x6F\x67\x67\x6C\x65\x43\x6F\x6E\x73\x6F\x6C\x65","\x72\x65\x73\x65\x74\x48\x69\x73\x74\x6F\x72\x79","\x72\x65\x73\x65\x74\x46\x69\x72\x73\x74\x54\x69\x6D\x65","\x63\x6F\x6F\x6B\x69\x65","\x6D\x78\x67\x72\x61\x70\x68\x3D\x73\x65\x65\x6E\x3B\x20\x65\x78\x70\x69\x72\x65\x73\x3D\x46\x72\x69\x2C\x20\x32\x37\x20\x4A\x75\x6C\x20\x32\x30\x30\x31\x20\x30\x32\x3A\x34\x37\x3A\x31\x31\x20\x55\x54\x43\x3B\x20\x70\x61\x74\x68\x3D\x2F","\x43\x61\x6E\x6E\x6F\x74\x20\x65\x78\x65\x63\x75\x74\x65\x20","\x3A\x20","\x43\x61\x6E\x6E\x6F\x74\x20\x66\x69\x6E\x64\x20\x61\x63\x74\x69\x6F\x6E\x20","\x61\x64\x64\x54\x65\x6D\x70\x6C\x61\x74\x65","\x67\x65\x74\x54\x65\x6D\x70\x6C\x61\x74\x65","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x62\x6C\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x55\x6E\x64\x6F\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x44\x72\x69\x6C\x6C\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x48\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x73\x74\x61\x6C\x6C\x49\x6E\x73\x65\x72\x74\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x63\x72\x65\x61\x74\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x4C\x61\x79\x6F\x75\x74\x4D\x61\x6E\x61\x67\x65\x72","\x73\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x61\x79\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x53\x77\x69\x6D\x6C\x61\x6E\x65\x4C\x61\x79\x6F\x75\x74","\x64\x69\x61\x67\x72\x61\x6D\x4C\x61\x79\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x44\x69\x61\x67\x72\x61\x6D\x4C\x61\x79\x6F\x75\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x72\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x73\x65\x74\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x74\x6F\x4C\x6F\x63\x61\x6C\x65\x53\x74\x72\x69\x6E\x67","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x54\x69\x74\x6C\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x74\x54\x69\x74\x6C\x65","\x74\x72\x65\x65\x4C\x61\x79\x6F\x75\x74","\x20\x3E\x20","\x67\x65\x74\x52\x6F\x6F\x74\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70","\x72\x65\x61\x64\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x55\x72\x6C\x50\x6F\x73\x74","\x77\x72\x69\x74\x65\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x70\x6F\x73\x74\x44\x69\x61\x67\x72\x61\x6D","\x73\x77\x61\x70\x53\x74\x79\x6C\x65\x73","\x63\x72\x65\x61\x74\x65\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73","\x69\x73\x50\x72\x6F\x70\x65\x72\x74\x69\x65\x73\x56\x69\x73\x69\x62\x6C\x65","\x72\x65\x61\x64\x6F\x6E\x6C\x79","\x49\x44","\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x61\x73\x6B\x73","\x72\x65\x66\x72\x65\x73\x68\x54\x61\x73\x6B\x73","\x66\x72\x61\x6D\x65\x42\x6F\x72\x64\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x43\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x79\x63\x6C\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x65\x64\x4D\x6F\x76\x69\x6E\x67","\x63\x6F\x64\x65\x63\x73","\x74\x65\x6D\x70\x6C\x61\x74\x65","\x61\x64\x64\x41\x6C\x69\x61\x73","\x61\x6C\x69\x61\x73\x65\x73","\x72\x65\x67\x69\x73\x74\x65\x72","\x65\x6E\x63\x6F\x64\x65\x44\x65\x66\x61\x75\x6C\x74\x73","\x67\x65\x74\x4F\x62\x6A\x65\x63\x74","\x72\x65\x66\x65\x72\x65\x6E\x63\x65","\x67\x65\x74\x43\x6F\x64\x65\x63","\x69\x6D\x70\x6F\x72\x74\x4E\x6F\x64\x65","\x6D\x78\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x63\x6F\x64\x65\x63\x20\x66\x6F\x72\x20","\x43\x61\x6E\x6E\x6F\x74\x20\x64\x65\x63\x6F\x64\x65\x20","\x65\x6E\x63\x6F\x64\x65\x43\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x64\x65\x63","\x64\x65\x63\x6F\x64\x65\x43\x65\x6C\x6C","\x69\x6E\x73\x65\x72\x74\x49\x6E\x74\x6F\x47\x72\x61\x70\x68","\x65\x78\x63\x6C\x75\x64\x65","\x69\x64\x72\x65\x66\x73","\x6D\x61\x70\x70\x69\x6E\x67","\x72\x65\x76\x65\x72\x73\x65","\x63\x6C\x6F\x6E\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x67\x65\x74\x46\x69\x65\x6C\x64\x4E\x61\x6D\x65","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65\x4E\x61\x6D\x65","\x69\x73\x45\x78\x63\x6C\x75\x64\x65\x64","\x69\x73\x52\x65\x66\x65\x72\x65\x6E\x63\x65","\x62\x65\x66\x6F\x72\x65\x45\x6E\x63\x6F\x64\x65","\x65\x6E\x63\x6F\x64\x65\x4F\x62\x6A\x65\x63\x74","\x61\x66\x74\x65\x72\x45\x6E\x63\x6F\x64\x65","\x65\x6E\x63\x6F\x64\x65\x56\x61\x6C\x75\x65","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x49\x44\x20\x66\x6F\x72\x20","\x77\x72\x69\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x72\x69\x74\x65\x50\x72\x69\x6D\x69\x74\x69\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x77\x72\x69\x74\x65\x43\x6F\x6D\x70\x6C\x65\x78\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x58\x6D\x6C","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x65\x6E\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x6E\x6F\x64\x65\x20\x66\x6F\x72\x20","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x46\x72\x6F\x6D\x58\x6D\x6C","\x62\x65\x66\x6F\x72\x65\x44\x65\x63\x6F\x64\x65","\x64\x65\x63\x6F\x64\x65\x4E\x6F\x64\x65","\x61\x66\x74\x65\x72\x44\x65\x63\x6F\x64\x65","\x64\x65\x63\x6F\x64\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x64\x65\x63\x6F\x64\x65\x43\x68\x69\x6C\x64\x72\x65\x6E","\x64\x65\x63\x6F\x64\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6D\x78\x4F\x62\x6A\x65\x63\x74\x43\x6F\x64\x65\x63\x2E\x64\x65\x63\x6F\x64\x65\x3A\x20\x4E\x6F\x20\x6F\x62\x6A\x65\x63\x74\x20\x66\x6F\x72\x20","\x70\x72\x6F\x63\x65\x73\x73\x49\x6E\x63\x6C\x75\x64\x65","\x64\x65\x63\x6F\x64\x65\x43\x68\x69\x6C\x64","\x67\x65\x74\x46\x69\x65\x6C\x64\x54\x65\x6D\x70\x6C\x61\x74\x65","\x61\x64\x64\x4F\x62\x6A\x65\x63\x74\x56\x61\x6C\x75\x65","\x69\x6E\x63\x6C\x75\x64\x65","\x72\x65\x6D\x6F\x76\x65\x57\x68\x69\x74\x65\x73\x70\x61\x63\x65","\x64\x65\x63\x6F\x64\x65\x52\x6F\x6F\x74","\x67\x72\x61\x70\x68\x4C\x69\x73\x74\x65\x6E\x65\x72\x73\x20\x65\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72\x73\x20\x76\x69\x65\x77\x20\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72\x20\x65\x64\x69\x74\x6F\x72\x20\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x6C\x61\x79\x65\x72","\x67\x65\x74\x53\x74\x72\x69\x6E\x67\x56\x61\x6C\x75\x65","\x6D\x78\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74\x43\x6F\x64\x65\x63\x2E\x64\x65\x63\x6F\x64\x65\x3A\x20\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74\x20","\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64\x20\x74\x6F\x20\x65\x78\x74\x65\x6E\x64","\x70\x72\x65\x73\x73\x65\x64\x49\x63\x6F\x6E","\x6D\x6F\x64\x65","\x74\x6F\x67\x67\x6C\x65","\x2D\x2D\x2D","\x63\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x54\x65\x6D\x70\x6C\x61\x74\x65\x20","\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x6D\x6F\x64\x69\x66\x69\x65\x64\x20\x6C\x61\x73\x74\x53\x6E\x61\x70\x73\x68\x6F\x74\x20\x69\x67\x6E\x6F\x72\x65\x64\x43\x68\x61\x6E\x67\x65\x73\x20\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72\x20\x67\x72\x61\x70\x68\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72\x20\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x41\x72\x72\x61\x79","\x64\x65\x63\x6F\x64\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x73","\x75\x69","\x64\x65\x63\x6F\x64\x65\x55\x69","\x73\x65\x74\x4D\x61\x70\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x72\x65\x73\x6F\x75\x72\x63\x65","\x62\x61\x73\x65\x6E\x61\x6D\x65"];var mxClient={VERSION:_0x285e[0],IS_IE:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[1]),IS_IE6:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[4]),IS_QUIRKS:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[1])&&(null==document[_0x285e[5]]||5==document[_0x285e[5]]),VML_PREFIX:_0x285e[6],OFFICE_PREFIX:_0x285e[7],IS_NS:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[8])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[1]),IS_OP:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[9]),IS_OT:0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[10])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[11])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[12])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[13])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[14])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[15]),IS_SF:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[16])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[17]),IS_GC:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[17]),IS_MT:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[18])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[19])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[20])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[21])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[22])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[23])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[24])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[25])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[26])&&0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[27]),IS_SVG:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[18])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[21])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[28])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[26])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[29])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[30])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[16])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[31])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[9]),NO_FO:0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[19])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[22])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[20])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[23])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[25])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[27])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[32])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[33])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[9])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[1])||0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[34]),IS_VML:_0x285e[35]==navigator[_0x285e[37]][_0x285e[36]](),IS_MAC:0<navigator[_0x285e[3]][_0x285e[36]]()[_0x285e[2]](_0x285e[38]),IS_TOUCH:0<navigator[_0x285e[3]][_0x285e[36]]()[_0x285e[2]](_0x285e[39])||0<navigator[_0x285e[3]][_0x285e[36]]()[_0x285e[2]](_0x285e[40])||0<navigator[_0x285e[3]][_0x285e[36]]()[_0x285e[2]](_0x285e[41])||0<navigator[_0x285e[3]][_0x285e[36]]()[_0x285e[2]](_0x285e[42]),IS_LOCAL:0>document[_0x285e[45]][_0x285e[44]][_0x285e[2]](_0x285e[43])&&0>document[_0x285e[45]][_0x285e[44]][_0x285e[2]](_0x285e[46]),isBrowserSupported:function(){return mxClient[_0x285e[47]]||mxClient[_0x285e[48]]},link:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=_0x4fa0x4||document;if(mxClient[_0x285e[49]]){_0x4fa0x4[_0x285e[53]](_0x285e[50]+_0x4fa0x2+_0x285e[51]+_0x4fa0x3+_0x285e[52])}else {var _0x4fa0x5=_0x4fa0x4[_0x285e[55]](_0x285e[54]);_0x4fa0x5[_0x285e[57]](_0x285e[56],_0x4fa0x2);_0x4fa0x5[_0x285e[57]](_0x285e[44],_0x4fa0x3);_0x4fa0x5[_0x285e[57]](_0x285e[58],_0x285e[59]);_0x4fa0x5[_0x285e[57]](_0x285e[60],_0x285e[61]);_0x4fa0x4[_0x285e[64]](_0x285e[63])[0][_0x285e[62]](_0x4fa0x5)}},include:function(_0x4fa0x2){document[_0x285e[53]](_0x285e[65]+_0x4fa0x2+_0x285e[66])},dispose:function(){for(var _0x4fa0x2=0;_0x4fa0x2<mxEvent[_0x285e[68]][_0x285e[67]];_0x4fa0x2++){null!=mxEvent[_0x285e[68]][_0x4fa0x2][_0x285e[69]]&&mxEvent[_0x285e[70]](mxEvent[_0x285e[68]][_0x4fa0x2])}}};mxClient[_0x285e[71]]&&mxClient[_0x285e[72]]?mxClient[_0x285e[73]]=_0x285e[74]:mxClient[_0x285e[75]]||mxClient[_0x285e[76]]?mxClient[_0x285e[73]]=_0x285e[77]:mxClient[_0x285e[78]]?mxClient[_0x285e[73]]=_0x285e[79]:mxClient[_0x285e[80]]&&9<=document[_0x285e[5]]&&(mxClient[_0x285e[73]]=_0x285e[81]);_0x285e[82]== typeof mxLoadResources&&(mxLoadResources= !0);_0x285e[82]== typeof mxResourceExtension&&(mxResourceExtension=_0x285e[83]);_0x285e[82]== typeof mxLoadStylesheets&&(mxLoadStylesheets= !0);_0x285e[82]!= typeof mxBasePath&&0<mxBasePath[_0x285e[67]]?(_0x285e[84]==mxBasePath[_0x285e[85]](mxBasePath[_0x285e[67]]-1)&&(mxBasePath=mxBasePath[_0x285e[85]](0,mxBasePath[_0x285e[67]]-1)),mxClient[_0x285e[86]]=mxBasePath):mxClient[_0x285e[86]]=_0x285e[87];_0x285e[82]!= typeof mxImageBasePath&&0<mxImageBasePath[_0x285e[67]]?(_0x285e[84]==mxImageBasePath[_0x285e[85]](mxImageBasePath[_0x285e[67]]-1)&&(mxImageBasePath=mxImageBasePath[_0x285e[85]](0,mxImageBasePath[_0x285e[67]]-1)),mxClient[_0x285e[88]]=mxImageBasePath):mxClient[_0x285e[88]]=mxClient[_0x285e[86]]+_0x285e[89];mxClient[_0x285e[90]]=_0x285e[82]!= typeof mxLanguage?mxLanguage:mxClient[_0x285e[80]]?navigator[_0x285e[91]]:navigator[_0x285e[90]];mxClient[_0x285e[92]]=_0x285e[82]!= typeof mxDefaultLanguage?mxDefaultLanguage:_0x285e[93];mxLoadStylesheets&&mxClient[_0x285e[54]](_0x285e[94],mxClient[_0x285e[86]]+_0x285e[95]);_0x285e[82]!= typeof mxLanguages&&(mxClient[_0x285e[96]]=mxLanguages);if(mxClient[_0x285e[80]]){if(9<=document[_0x285e[5]]){mxClient[_0x285e[47]]= !1,mxClient[_0x285e[48]]= !0}else {8==document[_0x285e[5]]?(document[_0x285e[100]][_0x285e[99]](mxClient.VML_PREFIX,_0x285e[97],_0x285e[98]),document[_0x285e[100]][_0x285e[99]](mxClient.OFFICE_PREFIX,_0x285e[101],_0x285e[98])):(document[_0x285e[100]][_0x285e[99]](mxClient.VML_PREFIX,_0x285e[97]),document[_0x285e[100]][_0x285e[99]](mxClient.OFFICE_PREFIX,_0x285e[101]));var ss=document[_0x285e[102]]();ss[_0x285e[103]]=_0x285e[104];mxLoadStylesheets&&mxClient[_0x285e[54]](_0x285e[94],mxClient[_0x285e[86]]+_0x285e[105])};window[_0x285e[108]](_0x285e[106],mxClient[_0x285e[107]])};var mxLog={consoleName:_0x285e[109],TRACE:!1,DEBUG:!0,WARN:!0,buffer:_0x285e[110],init:function(){if(null==mxLog[_0x285e[111]]&&null!=document[_0x285e[112]]){var _0x4fa0x2=mxLog[_0x285e[113]]+_0x285e[114]+mxClient[_0x285e[115]],_0x4fa0x3=document[_0x285e[55]](_0x285e[116]);_0x4fa0x3[_0x285e[57]](_0x285e[117],_0x285e[118]);_0x4fa0x3[_0x285e[57]](_0x285e[119],_0x285e[118]);var _0x4fa0x4=document[_0x285e[55]](_0x285e[120]),_0x4fa0x5=document[_0x285e[55]](_0x285e[121]),_0x4fa0x9=document[_0x285e[55]](_0x285e[122]);_0x4fa0x9[_0x285e[124]][_0x285e[123]]=_0x285e[125];mxLog[_0x285e[126]]=document[_0x285e[55]](_0x285e[126]);mxLog[_0x285e[126]][_0x285e[57]](_0x285e[127],_0x285e[128]);mxLog[_0x285e[126]][_0x285e[124]][_0x285e[119]]=_0x285e[118];mxLog[_0x285e[126]][_0x285e[124]][_0x285e[129]]=_0x285e[130];mxLog[_0x285e[126]][_0x285e[131]]=mxLog[_0x285e[132]];mxLog[_0x285e[126]][_0x285e[124]][_0x285e[117]]=mxClient[_0x285e[133]]&&_0x285e[134]!=document[_0x285e[135]]?_0x285e[136]:_0x285e[118];_0x4fa0x9[_0x285e[62]](mxLog[_0x285e[126]]);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x5=document[_0x285e[55]](_0x285e[121]);mxLog[_0x285e[122]]=document[_0x285e[55]](_0x285e[122]);mxLog[_0x285e[122]][_0x285e[124]][_0x285e[123]]=_0x285e[125];mxLog[_0x285e[122]][_0x285e[57]](_0x285e[119],_0x285e[137]);_0x4fa0x5[_0x285e[62]](mxLog[_0x285e[122]]);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x3[_0x285e[62]](_0x4fa0x4);mxLog[_0x285e[140]](_0x285e[138],function(_0x4fa0x2){mxLog[_0x285e[139]]()});mxLog[_0x285e[140]](_0x285e[141],function(_0x4fa0x2){_0x4fa0x2=mxUtils[_0x285e[142]](document[_0x285e[112]]);mxLog[_0x285e[143]](_0x4fa0x2)});mxLog[_0x285e[140]](_0x285e[144],function(_0x4fa0x2){mxLog[_0x285e[145]]=!mxLog[_0x285e[145]];mxLog[_0x285e[145]]?mxLog[_0x285e[143]](_0x285e[146]):mxLog[_0x285e[143]](_0x285e[147])});mxLog[_0x285e[140]](_0x285e[148],function(_0x4fa0x2){try{mxUtils[_0x285e[149]](mxLog[_0x285e[126]][_0x285e[131]])}catch(_0x4fa0x3){mxUtils[_0x285e[150]](_0x4fa0x3)}});mxLog[_0x285e[140]](_0x285e[151],function(_0x4fa0x2){try{mxUtils[_0x285e[152]](mxLog[_0x285e[126]][_0x285e[131]])}catch(_0x4fa0x3){mxUtils[_0x285e[150]](_0x4fa0x3)}});mxLog[_0x285e[140]](_0x285e[153],function(_0x4fa0x2){mxLog[_0x285e[126]][_0x285e[131]]=_0x285e[110]});_0x4fa0x5=_0x4fa0x4=0;_0x285e[154]=== typeof window[_0x285e[155]]?(_0x4fa0x4=window[_0x285e[156]],_0x4fa0x5=window[_0x285e[155]]):(_0x4fa0x4=document[_0x285e[158]][_0x285e[157]]||document[_0x285e[112]][_0x285e[157]],_0x4fa0x5=document[_0x285e[112]][_0x285e[159]]);mxLog[_0x285e[111]]= new mxWindow(_0x4fa0x2,_0x4fa0x3,Math[_0x285e[160]](0,_0x4fa0x5-320),Math[_0x285e[160]](0,_0x4fa0x4-210),300,160);mxLog[_0x285e[111]][_0x285e[161]](!0);mxLog[_0x285e[111]][_0x285e[162]](!1);mxLog[_0x285e[111]][_0x285e[163]](!0);mxLog[_0x285e[111]][_0x285e[164]](!0);mxLog[_0x285e[111]][_0x285e[165]]= !1;if((mxClient[_0x285e[133]]||mxClient[_0x285e[80]])&&!mxClient[_0x285e[76]]&&!mxClient[_0x285e[75]]&&_0x285e[134]!=document[_0x285e[135]]){var _0x4fa0xa=mxLog[_0x285e[111]][_0x285e[166]](),_0x4fa0x2=function(_0x4fa0x2,_0x4fa0x3){mxLog[_0x285e[126]][_0x285e[124]][_0x285e[119]]=Math[_0x285e[160]](0,_0x4fa0xa[_0x285e[167]]-70)+_0x285e[168]};mxLog[_0x285e[111]][_0x285e[169]](mxEvent.RESIZE_END,_0x4fa0x2);mxLog[_0x285e[111]][_0x285e[169]](mxEvent.MAXIMIZE,_0x4fa0x2);mxLog[_0x285e[111]][_0x285e[169]](mxEvent.NORMALIZE,_0x4fa0x2);mxLog[_0x285e[126]][_0x285e[124]][_0x285e[119]]=_0x285e[170]}}},info:function(){mxLog[_0x285e[171]](mxUtils.toString(navigator))},addButton:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[172]);mxUtils[_0x285e[53]](_0x4fa0x4,_0x4fa0x2);mxEvent[_0x285e[169]](_0x4fa0x4,_0x285e[173],_0x4fa0x3);mxLog[_0x285e[122]][_0x285e[62]](_0x4fa0x4)},isVisible:function(){return null!=mxLog[_0x285e[111]]?mxLog[_0x285e[111]][_0x285e[174]]():!1},show:function(){mxLog[_0x285e[175]](!0)},setVisible:function(_0x4fa0x2){null==mxLog[_0x285e[111]]&&mxLog[_0x285e[176]]();null!=mxLog[_0x285e[111]]&&mxLog[_0x285e[111]][_0x285e[175]](_0x4fa0x2)},enter:function(_0x4fa0x2){if(mxLog[_0x285e[145]]){return mxLog[_0x285e[171]](_0x285e[177]+_0x4fa0x2),( new Date)[_0x285e[178]]()}},leave:function(_0x4fa0x2,_0x4fa0x3){if(mxLog[_0x285e[145]]){var _0x4fa0x4=0!=_0x4fa0x3?_0x285e[179]+(( new Date)[_0x285e[178]]()-_0x4fa0x3)+_0x285e[180]:_0x285e[110];mxLog[_0x285e[171]](_0x285e[181]+_0x4fa0x2+_0x4fa0x4)}},debug:function(){mxLog[_0x285e[182]]&&mxLog[_0x285e[171]][_0x285e[183]](this,arguments)},warn:function(){mxLog[_0x285e[184]]&&mxLog[_0x285e[171]][_0x285e[183]](this,arguments)},write:function(){for(var _0x4fa0x2=_0x285e[110],_0x4fa0x3=0;_0x4fa0x3<arguments[_0x285e[67]];_0x4fa0x3++){_0x4fa0x2+=arguments[_0x4fa0x3],_0x4fa0x3<arguments[_0x285e[67]]-1&&(_0x4fa0x2+=_0x285e[185])};null!=mxLog[_0x285e[126]]?(mxLog[_0x285e[126]][_0x285e[131]]+=_0x4fa0x2,0<=navigator[_0x285e[3]][_0x285e[2]](_0x285e[186])&&(mxLog[_0x285e[126]][_0x285e[124]][_0x285e[187]]=_0x285e[188],mxLog[_0x285e[126]][_0x285e[124]][_0x285e[187]]=_0x285e[189]),mxLog[_0x285e[126]][_0x285e[190]]=mxLog[_0x285e[126]][_0x285e[191]]):mxLog[_0x285e[132]]+=_0x4fa0x2},writeln:function(){for(var _0x4fa0x2=_0x285e[110],_0x4fa0x3=0;_0x4fa0x3<arguments[_0x285e[67]];_0x4fa0x3++){_0x4fa0x2+=arguments[_0x4fa0x3],_0x4fa0x3<arguments[_0x285e[67]]-1&&(_0x4fa0x2+=_0x285e[185])};mxLog[_0x285e[53]](_0x4fa0x2+_0x285e[192])}},mxObjectIdentity={FIELD_NAME:_0x285e[193],counter:0,get:function(_0x4fa0x2){if(_0x285e[194]== typeof _0x4fa0x2&&null==_0x4fa0x2[mxObjectIdentity[_0x285e[195]]]){var _0x4fa0x3=mxUtils[_0x285e[197]](_0x4fa0x2[_0x285e[196]]);_0x4fa0x2[mxObjectIdentity[_0x285e[195]]]=_0x4fa0x3+_0x285e[198]+mxObjectIdentity[_0x285e[199]]++};return _0x4fa0x2[mxObjectIdentity[_0x285e[195]]]},clear:function(_0x4fa0x2){_0x285e[194]== typeof _0x4fa0x2&& delete _0x4fa0x2[mxObjectIdentity[_0x285e[195]]]}};function mxDictionary(){this[_0x285e[200]]()}mxDictionary[_0x285e[202]][_0x285e[201]]=null;mxDictionary[_0x285e[202]][_0x285e[200]]=function(){this[_0x285e[201]]={}};mxDictionary[_0x285e[202]][_0x285e[203]]=function(_0x4fa0x2){_0x4fa0x2=mxObjectIdentity[_0x285e[203]](_0x4fa0x2);return this[_0x285e[201]][_0x4fa0x2]};mxDictionary[_0x285e[202]][_0x285e[204]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxObjectIdentity[_0x285e[203]](_0x4fa0x2),_0x4fa0x5=this[_0x285e[201]][_0x4fa0x4];this[_0x285e[201]][_0x4fa0x4]=_0x4fa0x3;return _0x4fa0x5};mxDictionary[_0x285e[202]][_0x285e[205]]=function(_0x4fa0x2){_0x4fa0x2=mxObjectIdentity[_0x285e[203]](_0x4fa0x2);var _0x4fa0x3=this[_0x285e[201]][_0x4fa0x2];delete this[_0x285e[201]][_0x4fa0x2];return _0x4fa0x3};mxDictionary[_0x285e[202]][_0x285e[206]]=function(){var _0x4fa0x2=[],_0x4fa0x3;for(_0x4fa0x3 in this[_0x285e[201]]){_0x4fa0x2[_0x285e[207]](_0x4fa0x3)};return _0x4fa0x2};mxDictionary[_0x285e[202]][_0x285e[208]]=function(){var _0x4fa0x2=[],_0x4fa0x3;for(_0x4fa0x3 in this[_0x285e[201]]){_0x4fa0x2[_0x285e[207]](this[_0x285e[201]][_0x4fa0x3])};return _0x4fa0x2};mxDictionary[_0x285e[202]][_0x285e[209]]=function(_0x4fa0x2){for(var _0x4fa0x3 in this[_0x285e[201]]){_0x4fa0x2(_0x4fa0x3,this[_0x285e[201]][_0x4fa0x3])}};var mxResources={resources:[],extension:mxResourceExtension,resourcesEncoded:!1,loadDefaultBundle:!0,loadSpecialBundle:!0,isLanguageSupported:function(_0x4fa0x2){return null!=mxClient[_0x285e[96]]?0<=mxUtils[_0x285e[2]](mxClient[_0x285e[96]],_0x4fa0x2):!0},getDefaultBundle:function(_0x4fa0x2,_0x4fa0x3){return mxResources[_0x285e[210]]||!mxResources[_0x285e[211]](_0x4fa0x3)?_0x4fa0x2+mxResources[_0x285e[212]]:null},getSpecialBundle:function(_0x4fa0x2,_0x4fa0x3){if(null==mxClient[_0x285e[96]]||!this[_0x285e[211]](_0x4fa0x3)){var _0x4fa0x4=_0x4fa0x3[_0x285e[2]](_0x285e[213]);0<_0x4fa0x4&&(_0x4fa0x3=_0x4fa0x3[_0x285e[85]](0,_0x4fa0x4))};return mxResources[_0x285e[214]]&&mxResources[_0x285e[211]](_0x4fa0x3)&&_0x4fa0x3!=mxClient[_0x285e[92]]?_0x4fa0x2+_0x285e[215]+_0x4fa0x3+mxResources[_0x285e[212]]:null},add:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:mxClient[_0x285e[90]][_0x285e[216]]();if(_0x4fa0x3!=mxConstants[_0x285e[217]]){var _0x4fa0x4=mxResources[_0x285e[218]](_0x4fa0x2,_0x4fa0x3);if(null!=_0x4fa0x4){try{var _0x4fa0x5=mxUtils[_0x285e[219]](_0x4fa0x4);_0x4fa0x5[_0x285e[220]]()&&mxResources[_0x285e[222]](_0x4fa0x5[_0x285e[221]]())}catch(e){}};_0x4fa0x4=mxResources[_0x285e[223]](_0x4fa0x2,_0x4fa0x3);if(null!=_0x4fa0x4){try{_0x4fa0x5=mxUtils[_0x285e[219]](_0x4fa0x4),_0x4fa0x5[_0x285e[220]]()&&mxResources[_0x285e[222]](_0x4fa0x5[_0x285e[221]]())}catch(f){}}}},parse:function(_0x4fa0x2){if(null!=_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[224]](_0x285e[192]);for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){if(_0x285e[198]!=_0x4fa0x2[_0x4fa0x3][_0x285e[225]](0)){var _0x4fa0x4=_0x4fa0x2[_0x4fa0x3][_0x285e[2]](_0x285e[226]);if(0<_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x4fa0x3][_0x285e[85]](0,_0x4fa0x4),_0x4fa0x9=_0x4fa0x2[_0x4fa0x3][_0x285e[67]];13==_0x4fa0x2[_0x4fa0x3][_0x285e[227]](_0x4fa0x9-1)&&_0x4fa0x9--;_0x4fa0x4=_0x4fa0x2[_0x4fa0x3][_0x285e[85]](_0x4fa0x4+1,_0x4fa0x9);this[_0x285e[228]]?(_0x4fa0x4=_0x4fa0x4[_0x285e[230]](/\\(?=u[a-fA-F\d]{4})/g,_0x285e[229]),mxResources[_0x285e[231]][_0x4fa0x5]=unescape(_0x4fa0x4)):mxResources[_0x285e[231]][_0x4fa0x5]=_0x4fa0x4}}}}},get:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=mxResources[_0x285e[231]][_0x4fa0x2];null==_0x4fa0x2&&(_0x4fa0x2=_0x4fa0x4);if(null!=_0x4fa0x2&&null!=_0x4fa0x3){_0x4fa0x4=[];for(var _0x4fa0x5=null,_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x2[_0x285e[225]](_0x4fa0x9);_0x285e[232]==_0x4fa0xa?_0x4fa0x5=_0x285e[110]:null!=_0x4fa0x5&&_0x285e[233]==_0x4fa0xa?(_0x4fa0x5=parseInt(_0x4fa0x5)-1,0<=_0x4fa0x5&&_0x4fa0x5<_0x4fa0x3[_0x285e[67]]&&_0x4fa0x4[_0x285e[207]](_0x4fa0x3[_0x4fa0x5]),_0x4fa0x5=null):null!=_0x4fa0x5?_0x4fa0x5+=_0x4fa0xa:_0x4fa0x4[_0x285e[207]](_0x4fa0xa)};_0x4fa0x2=_0x4fa0x4[_0x285e[234]](_0x285e[110])};return _0x4fa0x2}};function mxPoint(_0x4fa0x2,_0x4fa0x3){this[_0x285e[235]]=null!=_0x4fa0x2?_0x4fa0x2:0;this[_0x285e[236]]=null!=_0x4fa0x3?_0x4fa0x3:0}mxPoint[_0x285e[202]][_0x285e[235]]=null;mxPoint[_0x285e[202]][_0x285e[236]]=null;mxPoint[_0x285e[202]][_0x285e[237]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[235]]==this[_0x285e[235]]&&_0x4fa0x2[_0x285e[236]]==this[_0x285e[236]]};mxPoint[_0x285e[202]][_0x285e[238]]=function(){return mxUtils[_0x285e[238]](this)};function mxRectangle(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxPoint[_0x285e[239]](this,_0x4fa0x2,_0x4fa0x3);this[_0x285e[117]]=null!=_0x4fa0x4?_0x4fa0x4:0;this[_0x285e[119]]=null!=_0x4fa0x5?_0x4fa0x5:0}mxRectangle[_0x285e[202]]= new mxPoint;mxRectangle[_0x285e[202]][_0x285e[196]]=mxRectangle;mxRectangle[_0x285e[202]][_0x285e[117]]=null;mxRectangle[_0x285e[202]][_0x285e[119]]=null;mxRectangle[_0x285e[202]][_0x285e[240]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[235]]=_0x4fa0x2;this[_0x285e[236]]=_0x4fa0x3;this[_0x285e[117]]=_0x4fa0x4;this[_0x285e[119]]=_0x4fa0x5};mxRectangle[_0x285e[202]][_0x285e[241]]=function(){return this[_0x285e[235]]+this[_0x285e[117]]/2};mxRectangle[_0x285e[202]][_0x285e[242]]=function(){return this[_0x285e[236]]+this[_0x285e[119]]/2};mxRectangle[_0x285e[202]][_0x285e[99]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=Math[_0x285e[243]](this[_0x285e[235]],_0x4fa0x2[_0x285e[235]]),_0x4fa0x4=Math[_0x285e[243]](this[_0x285e[236]],_0x4fa0x2[_0x285e[236]]),_0x4fa0x5=Math[_0x285e[160]](this[_0x285e[235]]+this[_0x285e[117]],_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]);_0x4fa0x2=Math[_0x285e[160]](this[_0x285e[236]]+this[_0x285e[119]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]);this[_0x285e[235]]=_0x4fa0x3;this[_0x285e[236]]=_0x4fa0x4;this[_0x285e[117]]=_0x4fa0x5-_0x4fa0x3;this[_0x285e[119]]=_0x4fa0x2-_0x4fa0x4}};mxRectangle[_0x285e[202]][_0x285e[244]]=function(_0x4fa0x2){this[_0x285e[235]]-=_0x4fa0x2;this[_0x285e[236]]-=_0x4fa0x2;this[_0x285e[117]]+=2*_0x4fa0x2;this[_0x285e[119]]+=2*_0x4fa0x2};mxRectangle[_0x285e[202]][_0x285e[245]]=function(){return new mxPoint(this[_0x285e[235]],this[_0x285e[236]])};mxRectangle[_0x285e[202]][_0x285e[237]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[235]]==this[_0x285e[235]]&&_0x4fa0x2[_0x285e[236]]==this[_0x285e[236]]&&_0x4fa0x2[_0x285e[117]]==this[_0x285e[117]]&&_0x4fa0x2[_0x285e[119]]==this[_0x285e[119]]};var mxEffects={animateChanges:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=0,_0x4fa0x9=function(){for(var _0x4fa0x12=!1,_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x3[_0x285e[67]];_0x4fa0x13++){var _0x4fa0x14=_0x4fa0x3[_0x4fa0x13];if(_0x4fa0x14 instanceof mxGeometryChange||_0x4fa0x14 instanceof mxTerminalChange||_0x4fa0x14 instanceof mxValueChange||_0x4fa0x14 instanceof mxChildChange||_0x4fa0x14 instanceof mxStyleChange){var _0x4fa0x15=_0x4fa0x2[_0x285e[249]]()[_0x285e[248]](_0x4fa0x14[_0x285e[246]]||_0x4fa0x14[_0x285e[247]],!1);if(null!=_0x4fa0x15){if(_0x4fa0x12= !0,_0x4fa0x14[_0x285e[196]]!=mxGeometryChange||_0x4fa0x2[_0x285e[251]][_0x285e[250]](_0x4fa0x14[_0x285e[246]])){mxUtils[_0x285e[254]](_0x4fa0x15[_0x285e[253]][_0x285e[252]],100*_0x4fa0x5/10)}else {var _0x4fa0x16=_0x4fa0x2[_0x285e[249]]()[_0x285e[255]],_0x4fa0x17=(_0x4fa0x14[_0x285e[256]][_0x285e[235]]-_0x4fa0x14[_0x285e[257]][_0x285e[235]])*_0x4fa0x16,_0x4fa0x18=(_0x4fa0x14[_0x285e[256]][_0x285e[236]]-_0x4fa0x14[_0x285e[257]][_0x285e[236]])*_0x4fa0x16,_0x4fa0x19=(_0x4fa0x14[_0x285e[256]][_0x285e[117]]-_0x4fa0x14[_0x285e[257]][_0x285e[117]])*_0x4fa0x16,_0x4fa0x16=(_0x4fa0x14[_0x285e[256]][_0x285e[119]]-_0x4fa0x14[_0x285e[257]][_0x285e[119]])*_0x4fa0x16;0==_0x4fa0x5?(_0x4fa0x15[_0x285e[235]]-=_0x4fa0x17,_0x4fa0x15[_0x285e[236]]-=_0x4fa0x18,_0x4fa0x15[_0x285e[117]]-=_0x4fa0x19,_0x4fa0x15[_0x285e[119]]-=_0x4fa0x16):(_0x4fa0x15[_0x285e[235]]+=_0x4fa0x17/10,_0x4fa0x15[_0x285e[236]]+=_0x4fa0x18/10,_0x4fa0x15[_0x285e[117]]+=_0x4fa0x19/10,_0x4fa0x15[_0x285e[119]]+=_0x4fa0x16/10);_0x4fa0x2[_0x285e[259]][_0x285e[258]](_0x4fa0x15);mxEffects[_0x285e[260]](_0x4fa0x2,_0x4fa0x14[_0x285e[246]],100*_0x4fa0x5/10)}}}};10>_0x4fa0x5&&_0x4fa0x12?(_0x4fa0x5++,window[_0x285e[261]](_0x4fa0x9,_0x4fa0xa)):null!=_0x4fa0x4&&_0x4fa0x4()},_0x4fa0xa=30;_0x4fa0x9()},cascadeOpacity:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[251]][_0x285e[262]](_0x4fa0x3),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x2[_0x285e[251]][_0x285e[263]](_0x4fa0x3,_0x4fa0x9),_0x4fa0x12=_0x4fa0x2[_0x285e[249]]()[_0x285e[248]](_0x4fa0xa);null!=_0x4fa0x12&&(mxUtils[_0x285e[254]](_0x4fa0x12[_0x285e[253]][_0x285e[252]],_0x4fa0x4),mxEffects[_0x285e[260]](_0x4fa0x2,_0x4fa0xa,_0x4fa0x4))};_0x4fa0x3=_0x4fa0x2[_0x285e[251]][_0x285e[264]](_0x4fa0x3);if(null!=_0x4fa0x3){for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){_0x4fa0x5=_0x4fa0x2[_0x285e[249]]()[_0x285e[248]](_0x4fa0x3[_0x4fa0x9]),null!=_0x4fa0x5&&mxUtils[_0x285e[254]](_0x4fa0x5[_0x285e[253]][_0x285e[252]],_0x4fa0x4)}}},fadeOut:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x5=_0x4fa0x5||40;_0x4fa0x9=_0x4fa0x9||30;var _0x4fa0x12=_0x4fa0x3||100;mxUtils[_0x285e[254]](_0x4fa0x2,_0x4fa0x12);if(_0x4fa0xa||null==_0x4fa0xa){var _0x4fa0x13=function(){_0x4fa0x12=Math[_0x285e[160]](_0x4fa0x12-_0x4fa0x5,0);mxUtils[_0x285e[254]](_0x4fa0x2,_0x4fa0x12);0<_0x4fa0x12?window[_0x285e[261]](_0x4fa0x13,_0x4fa0x9):(_0x4fa0x2[_0x285e[124]][_0x285e[187]]=_0x285e[188],_0x4fa0x4&&_0x4fa0x2[_0x285e[265]]&&_0x4fa0x2[_0x285e[265]][_0x285e[266]](_0x4fa0x2))};window[_0x285e[261]](_0x4fa0x13,_0x4fa0x9)}else {_0x4fa0x2[_0x285e[124]][_0x285e[187]]=_0x285e[188],_0x4fa0x4&&_0x4fa0x2[_0x285e[265]]&&_0x4fa0x2[_0x285e[265]][_0x285e[266]](_0x4fa0x2)}}},mxUtils={errorResource:_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[267]:_0x285e[110],closeResource:_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[268]:_0x285e[110],errorImage:mxClient[_0x285e[88]]+_0x285e[269],removeCursors:function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[124]]&&(_0x4fa0x2[_0x285e[124]][_0x285e[270]]=_0x285e[110]);_0x4fa0x2=_0x4fa0x2[_0x285e[271]];if(null!=_0x4fa0x2){for(var _0x4fa0x3=_0x4fa0x2[_0x285e[67]],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3;_0x4fa0x4+=1){mxUtils[_0x285e[272]](_0x4fa0x2[_0x4fa0x4])}}},getCurrentStyle:function(){return mxClient[_0x285e[80]]?function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[273]]:null}:function(_0x4fa0x2){return null!=_0x4fa0x2?window[_0x285e[274]](_0x4fa0x2,_0x285e[110]):null}}(),hasScrollbars:function(_0x4fa0x2){_0x4fa0x2=mxUtils[_0x285e[275]](_0x4fa0x2);return null!=_0x4fa0x2&&(_0x285e[276]==_0x4fa0x2[_0x285e[277]]||_0x285e[278]==_0x4fa0x2[_0x285e[277]])},bind:function(_0x4fa0x2,_0x4fa0x3){return function(){return _0x4fa0x3[_0x285e[183]](_0x4fa0x2,arguments)}},eval:function(_0x4fa0x2){var _0x4fa0x3=null;if(0<=_0x4fa0x2[_0x285e[2]](_0x285e[279])){try{eval(_0x285e[280]+_0x4fa0x2),_0x4fa0x3=_mxJavaScriptExpression,_mxJavaScriptExpression=null}catch(c){mxLog[_0x285e[283]](c[_0x285e[281]]+_0x285e[282]+_0x4fa0x2)}}else {try{_0x4fa0x3=eval(_0x4fa0x2)}catch(d){mxLog[_0x285e[283]](d[_0x285e[281]]+_0x285e[282]+_0x4fa0x2)}};return _0x4fa0x3},findNode:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[284]](_0x4fa0x3);if(null!=_0x4fa0x5&&_0x4fa0x5==_0x4fa0x4){return _0x4fa0x2};for(_0x4fa0x2=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x2;){_0x4fa0x5=mxUtils[_0x285e[286]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);if(null!=_0x4fa0x5){return _0x4fa0x5};_0x4fa0x2=_0x4fa0x2[_0x285e[287]]};return null},findNodeByAttribute:function(){return 9<=document[_0x285e[5]]?function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=null;if(null!=_0x4fa0x2){if(_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[289]]&&_0x4fa0x2[_0x285e[284]](_0x4fa0x3)==_0x4fa0x4){_0x4fa0x5=_0x4fa0x2}else {for(_0x4fa0x2=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x2&&null==_0x4fa0x5;){_0x4fa0x5=mxUtils[_0x285e[290]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4),_0x4fa0x2=_0x4fa0x2[_0x285e[287]]}}};return _0x4fa0x5}:mxClient[_0x285e[80]]?function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null==_0x4fa0x2?null:_0x4fa0x2[_0x285e[295]][_0x285e[294]](_0x285e[291]+_0x4fa0x3+_0x285e[292]+_0x4fa0x4+_0x285e[293])}:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null==_0x4fa0x2?null:_0x4fa0x2[_0x285e[295]][_0x285e[297]](_0x285e[291]+_0x4fa0x3+_0x285e[292]+_0x4fa0x4+_0x285e[293],_0x4fa0x2[_0x285e[295]],null,XPathResult.ANY_TYPE,null)[_0x285e[296]]()}}(),getFunctionName:function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2){if(null!=_0x4fa0x2[_0x285e[298]]){_0x4fa0x3=_0x4fa0x2[_0x285e[298]]}else {_0x4fa0x2=_0x4fa0x2.toString();for(_0x4fa0x3=9;_0x285e[185]==_0x4fa0x2[_0x285e[225]](_0x4fa0x3);){_0x4fa0x3++};var _0x4fa0x4=_0x4fa0x2[_0x285e[2]](_0x285e[299],_0x4fa0x3),_0x4fa0x3=_0x4fa0x2[_0x285e[85]](_0x4fa0x3,_0x4fa0x4)}};return _0x4fa0x3},indexOf:function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){if(_0x4fa0x2[_0x4fa0x4]==_0x4fa0x3){return _0x4fa0x4}}};return -1},remove:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(_0x285e[194]== typeof _0x4fa0x3){for(var _0x4fa0x5=mxUtils[_0x285e[2]](_0x4fa0x3,_0x4fa0x2);0<=_0x4fa0x5;){_0x4fa0x3[_0x285e[300]](_0x4fa0x5,1),_0x4fa0x4=_0x4fa0x2,_0x4fa0x5=mxUtils[_0x285e[2]](_0x4fa0x3,_0x4fa0x2)}};for(var _0x4fa0x9 in _0x4fa0x3){_0x4fa0x3[_0x4fa0x9]==_0x4fa0x2&&( delete _0x4fa0x3[_0x4fa0x9],_0x4fa0x4=_0x4fa0x2)};return _0x4fa0x4},isNode:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return null!=_0x4fa0x2&&!isNaN(_0x4fa0x2[_0x285e[288]])&&(null==_0x4fa0x3||_0x4fa0x2[_0x285e[301]][_0x285e[216]]()==_0x4fa0x3[_0x285e[216]]())?null==_0x4fa0x4||_0x4fa0x2[_0x285e[284]](_0x4fa0x4)==_0x4fa0x5:!1},getChildNodes:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3||mxConstants[_0x285e[289]];for(var _0x4fa0x4=[],_0x4fa0x5=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x5;){_0x4fa0x5[_0x285e[288]]==_0x4fa0x3&&_0x4fa0x4[_0x285e[207]](_0x4fa0x5),_0x4fa0x5=_0x4fa0x5[_0x285e[287]]};return _0x4fa0x4},createXmlDocument:function(){var _0x4fa0x2=null;document[_0x285e[302]]&&document[_0x285e[302]][_0x285e[303]]?_0x4fa0x2=document[_0x285e[302]][_0x285e[303]](_0x285e[110],_0x285e[110],null):window[_0x285e[304]]&&(_0x4fa0x2= new ActiveXObject(_0x285e[305]));return _0x4fa0x2},parseXml:function(){return mxClient[_0x285e[80]]&&(_0x285e[82]=== typeof document[_0x285e[5]]||9>document[_0x285e[5]])?function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[306]]();_0x4fa0x3[_0x285e[307]]=_0x285e[308];_0x4fa0x3[_0x285e[309]](_0x4fa0x2);return _0x4fa0x3}:function(_0x4fa0x2){return ( new DOMParser)[_0x285e[311]](_0x4fa0x2,_0x285e[310])}}(),clearSelection:function(){if(document[_0x285e[312]]){return function(){document[_0x285e[312]][_0x285e[313]]()}};if(window[_0x285e[314]]){return function(){window[_0x285e[314]]()[_0x285e[315]]()}}}(),getPrettyXml:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=[];if(null!=_0x4fa0x2){if(_0x4fa0x3=_0x4fa0x3||_0x285e[316],_0x4fa0x4=_0x4fa0x4||_0x285e[110],_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[317]]){_0x4fa0x5[_0x285e[207]](_0x4fa0x2[_0x285e[318]])}else {_0x4fa0x5[_0x285e[207]](_0x4fa0x4+_0x285e[319]+_0x4fa0x2[_0x285e[301]]);var _0x4fa0x9=_0x4fa0x2[_0x285e[320]];if(null!=_0x4fa0x9){for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=mxUtils[_0x285e[321]](_0x4fa0x9[_0x4fa0xa][_0x285e[318]]);_0x4fa0x5[_0x285e[207]](_0x285e[185]+_0x4fa0x9[_0x4fa0xa][_0x285e[301]]+_0x285e[322]+_0x4fa0x12+_0x285e[323])}};_0x4fa0x9=_0x4fa0x2[_0x285e[285]];if(null!=_0x4fa0x9){for(_0x4fa0x5[_0x285e[207]](_0x285e[324]);null!=_0x4fa0x9;){_0x4fa0x5[_0x285e[207]](mxUtils[_0x285e[325]](_0x4fa0x9,_0x4fa0x3,_0x4fa0x4+_0x4fa0x3)),_0x4fa0x9=_0x4fa0x9[_0x285e[287]]};_0x4fa0x5[_0x285e[207]](_0x4fa0x4+_0x285e[326]+_0x4fa0x2[_0x285e[301]]+_0x285e[324])}else {_0x4fa0x5[_0x285e[207]](_0x285e[327])}}};return _0x4fa0x5[_0x285e[234]](_0x285e[110])},removeWhitespace:function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=_0x4fa0x3?_0x4fa0x2[_0x285e[328]]:_0x4fa0x2[_0x285e[287]];null!=_0x4fa0x4&&_0x4fa0x4[_0x285e[288]]==mxConstants[_0x285e[317]];){var _0x4fa0x5=_0x4fa0x3?_0x4fa0x4[_0x285e[328]]:_0x4fa0x4[_0x285e[287]],_0x4fa0x9=mxUtils[_0x285e[329]](_0x4fa0x4);0==mxUtils[_0x285e[330]](_0x4fa0x9)[_0x285e[67]]&&_0x4fa0x4[_0x285e[265]][_0x285e[266]](_0x4fa0x4);_0x4fa0x4=_0x4fa0x5}},htmlEntities:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=(_0x4fa0x2||_0x285e[110])[_0x285e[230]](/&/g,_0x285e[331]);_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/"/g,_0x285e[332]);_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/\'/g,_0x285e[333]);_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/</g,_0x285e[334]);_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/>/g,_0x285e[335]);if(null==_0x4fa0x3||_0x4fa0x3){_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/\n/g,_0x285e[336])};return _0x4fa0x2},isVml:function(_0x4fa0x2){return null!=_0x4fa0x2&&_0x285e[97]==_0x4fa0x2[_0x285e[337]]},getXml:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x285e[110];null!=_0x4fa0x2&&(_0x4fa0x4=_0x4fa0x2[_0x285e[338]],_0x4fa0x4=null==_0x4fa0x4?_0x4fa0x2[_0x285e[339]]?_0x4fa0x2[_0x285e[339]]:( new XMLSerializer)[_0x285e[340]](_0x4fa0x2):_0x4fa0x4[_0x285e[230]](/\r\n\t[\t]*/g,_0x285e[110])[_0x285e[230]](/>\r\n/g,_0x285e[341])[_0x285e[230]](/\r\n/g,_0x285e[192]));return _0x4fa0x4=_0x4fa0x4[_0x285e[230]](/\n/g,_0x4fa0x3||_0x285e[336])},getTextContent:function(_0x4fa0x2){var _0x4fa0x3=_0x285e[110];null!=_0x4fa0x2&&(null!=_0x4fa0x2[_0x285e[285]]&&(_0x4fa0x2=_0x4fa0x2[_0x285e[285]]),_0x4fa0x3=_0x4fa0x2[_0x285e[318]]||_0x285e[110]);return _0x4fa0x3},getInnerHtml:function(){return mxClient[_0x285e[80]]?function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[339]]:_0x285e[110]}:function(_0x4fa0x2){return null!=_0x4fa0x2?( new XMLSerializer)[_0x285e[340]](_0x4fa0x2):_0x285e[110]}}(),getOuterHtml:function(){return mxClient[_0x285e[80]]?function(_0x4fa0x2){if(null!=_0x4fa0x2){if(null!=_0x4fa0x2[_0x285e[342]]){return _0x4fa0x2[_0x285e[342]]};var _0x4fa0x3=[];_0x4fa0x3[_0x285e[207]](_0x285e[319]+_0x4fa0x2[_0x285e[301]]);var _0x4fa0x4=_0x4fa0x2[_0x285e[320]];if(null!=_0x4fa0x4){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=_0x4fa0x4[_0x4fa0x5][_0x285e[318]];null!=_0x4fa0x9&&0<_0x4fa0x9[_0x285e[67]]&&(_0x4fa0x3[_0x285e[207]](_0x285e[185]),_0x4fa0x3[_0x285e[207]](_0x4fa0x4[_0x4fa0x5][_0x285e[301]]),_0x4fa0x3[_0x285e[207]](_0x285e[322]),_0x4fa0x3[_0x285e[207]](_0x4fa0x9),_0x4fa0x3[_0x285e[207]](_0x285e[323]))}};0==_0x4fa0x2[_0x285e[339]][_0x285e[67]]?_0x4fa0x3[_0x285e[207]](_0x285e[343]):(_0x4fa0x3[_0x285e[207]](_0x285e[341]),_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x285e[339]]),_0x4fa0x3[_0x285e[207]](_0x285e[326]+_0x4fa0x2[_0x285e[301]]+_0x285e[341]));return _0x4fa0x3[_0x285e[234]](_0x285e[110])};return _0x285e[110]}:function(_0x4fa0x2){return null!=_0x4fa0x2?( new XMLSerializer)[_0x285e[340]](_0x4fa0x2):_0x285e[110]}}(),write:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[295]][_0x285e[344]](_0x4fa0x3);null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[62]](_0x4fa0x4);return _0x4fa0x4},writeln:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[295]][_0x285e[344]](_0x4fa0x3);null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[62]](_0x4fa0x4),_0x4fa0x2[_0x285e[62]](document[_0x285e[55]](_0x285e[345])));return _0x4fa0x4},br:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3||1;for(var _0x4fa0x4=null,_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3;_0x4fa0x5++){null!=_0x4fa0x2&&(_0x4fa0x4=_0x4fa0x2[_0x285e[295]][_0x285e[55]](_0x285e[345]),_0x4fa0x2[_0x285e[62]](_0x4fa0x4))};return _0x4fa0x4},button:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:document;_0x4fa0x4=_0x4fa0x4[_0x285e[55]](_0x285e[172]);mxUtils[_0x285e[53]](_0x4fa0x4,_0x4fa0x2);mxEvent[_0x285e[169]](_0x4fa0x4,_0x285e[173],function(_0x4fa0x2){_0x4fa0x3(_0x4fa0x2)});return _0x4fa0x4},para:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[346]);mxUtils[_0x285e[53]](_0x4fa0x4,_0x4fa0x3);null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[62]](_0x4fa0x4);return _0x4fa0x4},addTransparentBackgroundFilter:function(_0x4fa0x2){_0x4fa0x2[_0x285e[124]][_0x285e[347]]+=_0x285e[348]+mxClient[_0x285e[88]]+_0x285e[349]},linkAction:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return mxUtils[_0x285e[54]](_0x4fa0x2,_0x4fa0x3,function(){_0x4fa0x4[_0x285e[350]](_0x4fa0x5)},_0x4fa0x9)},linkInvoke:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){return mxUtils[_0x285e[54]](_0x4fa0x2,_0x4fa0x3,function(){_0x4fa0x4[_0x4fa0x5](_0x4fa0x9)},_0x4fa0xa)},link:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=document[_0x285e[55]](_0x285e[351]);_0x4fa0x9[_0x285e[124]][_0x285e[352]]=_0x285e[353];_0x4fa0x9[_0x285e[124]][_0x285e[354]]=_0x285e[355];_0x4fa0x9[_0x285e[124]][_0x285e[270]]=_0x285e[356];null!=_0x4fa0x5&&(_0x4fa0x9[_0x285e[124]][_0x285e[357]]=_0x4fa0x5+_0x285e[168]);mxEvent[_0x285e[169]](_0x4fa0x9,_0x285e[173],_0x4fa0x4);mxUtils[_0x285e[53]](_0x4fa0x9,_0x4fa0x3);null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[62]](_0x4fa0x9);return _0x4fa0x9},fit:function(_0x4fa0x2){var _0x4fa0x3=parseInt(_0x4fa0x2[_0x285e[358]]),_0x4fa0x4=parseInt(_0x4fa0x2[_0x285e[359]]),_0x4fa0x5=document[_0x285e[112]],_0x4fa0x9=document[_0x285e[158]],_0x4fa0xa=(_0x4fa0x5[_0x285e[360]]||_0x4fa0x9[_0x285e[360]])+(_0x4fa0x5[_0x285e[159]]||_0x4fa0x9[_0x285e[159]]);_0x4fa0x3+_0x4fa0x4>_0x4fa0xa&&(_0x4fa0x2[_0x285e[124]][_0x285e[361]]=Math[_0x285e[160]](_0x4fa0x5[_0x285e[360]]||_0x4fa0x9[_0x285e[360]],_0x4fa0xa-_0x4fa0x4)+_0x285e[168]);_0x4fa0x3=parseInt(_0x4fa0x2[_0x285e[362]]);_0x4fa0x4=parseInt(_0x4fa0x2[_0x285e[167]]);_0x4fa0xa=(_0x4fa0x5[_0x285e[190]]||_0x4fa0x9[_0x285e[190]])+Math[_0x285e[160]](_0x4fa0x5[_0x285e[157]]||0,_0x4fa0x9[_0x285e[157]]);_0x4fa0x3+_0x4fa0x4>_0x4fa0xa&&(_0x4fa0x2[_0x285e[124]][_0x285e[125]]=Math[_0x285e[160]](_0x4fa0x5[_0x285e[190]]||_0x4fa0x9[_0x285e[190]],_0x4fa0xa-_0x4fa0x4)+_0x285e[168])},open:function(_0x4fa0x2){if(mxClient[_0x285e[133]]){try{netscape[_0x285e[366]][_0x285e[365]][_0x285e[364]](_0x285e[363])}catch(b){return mxUtils[_0x285e[150]](_0x285e[367]),_0x285e[110]};var _0x4fa0x4=Components[_0x285e[372]][_0x285e[371]][_0x285e[370]](Components[_0x285e[369]][_0x285e[368]]);_0x4fa0x4[_0x285e[373]](_0x4fa0x2);if(!_0x4fa0x4[_0x285e[374]]()){return mxUtils[_0x285e[150]](_0x285e[375]),_0x285e[110]};_0x4fa0x2=Components[_0x285e[372]][_0x285e[377]][_0x285e[370]](Components[_0x285e[369]][_0x285e[376]]);_0x4fa0x2[_0x285e[176]](_0x4fa0x4,1,4,null);_0x4fa0x4=Components[_0x285e[372]][_0x285e[379]][_0x285e[370]](Components[_0x285e[369]][_0x285e[378]]);_0x4fa0x4[_0x285e[176]](_0x4fa0x2);return _0x4fa0x4[_0x285e[381]](_0x4fa0x4[_0x285e[380]]())};_0x4fa0x4=( new ActiveXObject(_0x285e[382])).OpenTextFile(_0x4fa0x2,1);_0x4fa0x2=_0x4fa0x4[_0x285e[383]]();_0x4fa0x4[_0x285e[268]]();return _0x4fa0x2},save:function(_0x4fa0x2,_0x4fa0x3){if(mxClient[_0x285e[133]]){try{netscape[_0x285e[366]][_0x285e[365]][_0x285e[364]](_0x285e[363])}catch(c){mxUtils[_0x285e[150]](_0x285e[384]);return};var _0x4fa0x5=Components[_0x285e[372]][_0x285e[371]][_0x285e[370]](Components[_0x285e[369]][_0x285e[368]]);_0x4fa0x5[_0x285e[373]](_0x4fa0x2);_0x4fa0x5[_0x285e[374]]()||_0x4fa0x5[_0x285e[385]](0,420);var _0x4fa0x9=Components[_0x285e[372]][_0x285e[387]][_0x285e[370]](Components[_0x285e[369]][_0x285e[386]]);_0x4fa0x9[_0x285e[176]](_0x4fa0x5,34,4,null);_0x4fa0x9[_0x285e[53]](_0x4fa0x3,_0x4fa0x3[_0x285e[67]]);_0x4fa0x9[_0x285e[388]]();_0x4fa0x9[_0x285e[268]]()}else {_0x4fa0x5=( new ActiveXObject(_0x285e[382])).CreateTextFile(_0x4fa0x2,!0),_0x4fa0x5.Write(_0x4fa0x3),_0x4fa0x5.Close()}},saveAs:function(_0x4fa0x2){var _0x4fa0x3=document[_0x285e[55]](_0x285e[389]);_0x4fa0x3[_0x285e[57]](_0x285e[390],_0x285e[110]);_0x4fa0x3[_0x285e[124]][_0x285e[187]]=_0x285e[188];document[_0x285e[112]][_0x285e[62]](_0x4fa0x3);try{if(mxClient[_0x285e[133]]){var _0x4fa0x4=_0x4fa0x3[_0x285e[391]];_0x4fa0x4[_0x285e[392]]();_0x4fa0x4[_0x285e[53]](_0x4fa0x2);_0x4fa0x4[_0x285e[268]]();try{netscape[_0x285e[366]][_0x285e[365]][_0x285e[364]](_0x285e[363]),_0x4fa0x3[_0x285e[393]](),saveDocument(_0x4fa0x4)}catch(d){mxUtils[_0x285e[150]](_0x285e[394])}}else {_0x4fa0x4=_0x4fa0x3[_0x285e[396]][_0x285e[395]],_0x4fa0x4[_0x285e[53]](_0x4fa0x2),_0x4fa0x4[_0x285e[398]](_0x285e[397],!1,document[_0x285e[45]])}}finally{document[_0x285e[112]][_0x285e[266]](_0x4fa0x3)}},copy:function(_0x4fa0x2){if(window[_0x285e[399]]){window[_0x285e[399]][_0x285e[401]](_0x285e[400],_0x4fa0x2)}else {netscape[_0x285e[366]][_0x285e[365]][_0x285e[364]](_0x285e[363]);var _0x4fa0x3=Components[_0x285e[372]][_0x285e[403]][_0x285e[370]](Components[_0x285e[369]][_0x285e[402]]);if(_0x4fa0x3){var _0x4fa0x4=Components[_0x285e[372]][_0x285e[405]][_0x285e[370]](Components[_0x285e[369]][_0x285e[404]]);if(_0x4fa0x4){_0x4fa0x4[_0x285e[407]](_0x285e[406]);var _0x4fa0x5=Components[_0x285e[372]][_0x285e[409]][_0x285e[370]](Components[_0x285e[369]][_0x285e[408]]);_0x4fa0x5[_0x285e[410]]=_0x4fa0x2;_0x4fa0x4[_0x285e[411]](_0x285e[406],_0x4fa0x5,2*_0x4fa0x2[_0x285e[67]]);_0x4fa0x3[_0x285e[401]](_0x4fa0x4,null,Components[_0x285e[369]][_0x285e[402]][_0x285e[412]])}}}},load:function(_0x4fa0x2){_0x4fa0x2= new mxXmlRequest(_0x4fa0x2,null,_0x285e[413],!1);_0x4fa0x2[_0x285e[414]]();return _0x4fa0x2},get:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return ( new mxXmlRequest(_0x4fa0x2,null,_0x285e[413]))[_0x285e[414]](_0x4fa0x3,_0x4fa0x4)},post:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return ( new mxXmlRequest(_0x4fa0x2,_0x4fa0x3))[_0x285e[414]](_0x4fa0x4,_0x4fa0x5)},submit:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return ( new mxXmlRequest(_0x4fa0x2,_0x4fa0x3))[_0x285e[415]](_0x4fa0x4,_0x4fa0x5)},loadInto:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxClient[_0x285e[80]]?_0x4fa0x3[_0x285e[416]]=function(){4==_0x4fa0x3[_0x285e[417]]&&_0x4fa0x4()}:_0x4fa0x3[_0x285e[418]](_0x285e[219],_0x4fa0x4,!1);_0x4fa0x3[_0x285e[219]](_0x4fa0x2)},getValue:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2[_0x4fa0x3]:null;null==_0x4fa0x2&&(_0x4fa0x2=_0x4fa0x4);return _0x4fa0x2},getNumber:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2[_0x4fa0x3]:null;null==_0x4fa0x2&&(_0x4fa0x2=_0x4fa0x4||0);return Number(_0x4fa0x2)},getColor:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2[_0x4fa0x3]:null;null==_0x4fa0x2?_0x4fa0x2=_0x4fa0x4:_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);return _0x4fa0x2},clone:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;var _0x4fa0x5=null;if(null!=_0x4fa0x2&&_0x285e[279]== typeof _0x4fa0x2[_0x285e[196]]){var _0x4fa0x5= new _0x4fa0x2[_0x285e[196]],_0x4fa0x9;for(_0x4fa0x9 in _0x4fa0x2){if(_0x4fa0x9!=mxObjectIdentity[_0x285e[195]]&&(null==_0x4fa0x3||0>mxUtils[_0x285e[2]](_0x4fa0x3,_0x4fa0x9))){_0x4fa0x5[_0x4fa0x9]=!_0x4fa0x4&&_0x285e[194]== typeof _0x4fa0x2[_0x4fa0x9]?mxUtils[_0x285e[238]](_0x4fa0x2[_0x4fa0x9]):_0x4fa0x2[_0x4fa0x9]}}};return _0x4fa0x5},equalPoints:function(_0x4fa0x2,_0x4fa0x3){if(null==_0x4fa0x2&&null!=_0x4fa0x3||null!=_0x4fa0x2&&null==_0x4fa0x3||null!=_0x4fa0x2&&null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[67]]!=_0x4fa0x3[_0x285e[67]]){return !1};if(null!=_0x4fa0x2&&null!=_0x4fa0x3){for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){if(_0x4fa0x2[_0x4fa0x4]==_0x4fa0x3[_0x4fa0x4]||null!=_0x4fa0x2[_0x4fa0x4]&&!_0x4fa0x2[_0x4fa0x4][_0x285e[237]](_0x4fa0x3[_0x4fa0x4])){return !1}}};return !0},equalEntries:function(_0x4fa0x2,_0x4fa0x3){if(null==_0x4fa0x2&&null!=_0x4fa0x3||null!=_0x4fa0x2&&null==_0x4fa0x3||null!=_0x4fa0x2&&null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[67]]!=_0x4fa0x3[_0x285e[67]]){return !1};if(null!=_0x4fa0x2&&null!=_0x4fa0x3){for(var _0x4fa0x4 in _0x4fa0x2){if(_0x4fa0x2[_0x4fa0x4]!=_0x4fa0x3[_0x4fa0x4]){return !1}}};return !0},extend:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=function(){};_0x4fa0x4[_0x285e[202]]=_0x4fa0x3[_0x285e[202]];_0x4fa0x2[_0x285e[202]]= new _0x4fa0x4;_0x4fa0x2[_0x285e[202]][_0x285e[196]]=_0x4fa0x2},toString:function(_0x4fa0x2){var _0x4fa0x3=_0x285e[110],_0x4fa0x4;for(_0x4fa0x4 in _0x4fa0x2){try{if(null==_0x4fa0x2[_0x4fa0x4]){_0x4fa0x3+=_0x4fa0x4+_0x285e[419]}else {if(_0x285e[279]== typeof _0x4fa0x2[_0x4fa0x4]){_0x4fa0x3+=_0x4fa0x4+_0x285e[420]}else {if(_0x285e[194]== typeof _0x4fa0x2[_0x4fa0x4]){var _0x4fa0x5=mxUtils[_0x285e[197]](_0x4fa0x2[_0x4fa0x4][_0x285e[196]]),_0x4fa0x3=_0x4fa0x3+(_0x4fa0x4+_0x285e[421]+_0x4fa0x5+_0x285e[422])}else {_0x4fa0x3+=_0x4fa0x4+_0x285e[423]+_0x4fa0x2[_0x4fa0x4]+_0x285e[192]}}}}catch(e){_0x4fa0x3+=_0x4fa0x4+_0x285e[226]+e[_0x285e[281]]}};return _0x4fa0x3},toRadians:function(_0x4fa0x2){return Math[_0x285e[424]]*_0x4fa0x2/180},arcToCurves:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){_0x4fa0x13-=_0x4fa0x2;_0x4fa0x14-=_0x4fa0x3;if(0===_0x4fa0x4||0===_0x4fa0x5){return _0x4fa0x18};_0x4fa0x4=Math[_0x285e[425]](_0x4fa0x4);_0x4fa0x5=Math[_0x285e[425]](_0x4fa0x5);var _0x4fa0x15=-_0x4fa0x13/2,_0x4fa0x16=-_0x4fa0x14/2,_0x4fa0x17=Math[_0x285e[426]](_0x4fa0x9*Math[_0x285e[424]]/180),_0x4fa0x18=Math[_0x285e[427]](_0x4fa0x9*Math[_0x285e[424]]/180);_0x4fa0x9=_0x4fa0x17*_0x4fa0x15+_0x4fa0x18*_0x4fa0x16;var _0x4fa0x15=-1*_0x4fa0x18*_0x4fa0x15+_0x4fa0x17*_0x4fa0x16,_0x4fa0x16=_0x4fa0x9*_0x4fa0x9,_0x4fa0x19=_0x4fa0x15*_0x4fa0x15,_0x4fa0x1a=_0x4fa0x4*_0x4fa0x4,_0x4fa0x1b=_0x4fa0x5*_0x4fa0x5,_0x4fa0x1c=_0x4fa0x16/_0x4fa0x1a+_0x4fa0x19/_0x4fa0x1b;1<_0x4fa0x1c?(_0x4fa0x4*=Math[_0x285e[428]](_0x4fa0x1c),_0x4fa0x5*=Math[_0x285e[428]](_0x4fa0x1c),_0x4fa0xa=0):(_0x4fa0x1c=1,_0x4fa0xa===_0x4fa0x12&&(_0x4fa0x1c= -1),_0x4fa0xa=_0x4fa0x1c*Math[_0x285e[428]]((_0x4fa0x1a*_0x4fa0x1b-_0x4fa0x1a*_0x4fa0x19-_0x4fa0x1b*_0x4fa0x16)/(_0x4fa0x1a*_0x4fa0x19+_0x4fa0x1b*_0x4fa0x16)));_0x4fa0x16=_0x4fa0xa*_0x4fa0x4*_0x4fa0x15/_0x4fa0x5;_0x4fa0x19=-1*_0x4fa0xa*_0x4fa0x5*_0x4fa0x9/_0x4fa0x4;_0x4fa0x13=_0x4fa0x17*_0x4fa0x16-_0x4fa0x18*_0x4fa0x19+_0x4fa0x13/2;_0x4fa0x14=_0x4fa0x18*_0x4fa0x16+_0x4fa0x17*_0x4fa0x19+_0x4fa0x14/2;_0x4fa0x1a=Math[_0x285e[429]]((_0x4fa0x15-_0x4fa0x19)/_0x4fa0x5,(_0x4fa0x9-_0x4fa0x16)/_0x4fa0x4)-Math[_0x285e[429]](0,1);_0x4fa0xa=0<=_0x4fa0x1a?_0x4fa0x1a:2*Math[_0x285e[424]]+_0x4fa0x1a;_0x4fa0x1a=Math[_0x285e[429]]((-_0x4fa0x15-_0x4fa0x19)/_0x4fa0x5,(-_0x4fa0x9-_0x4fa0x16)/_0x4fa0x4)-Math[_0x285e[429]]((_0x4fa0x15-_0x4fa0x19)/_0x4fa0x5,(_0x4fa0x9-_0x4fa0x16)/_0x4fa0x4);_0x4fa0x9=0<=_0x4fa0x1a?_0x4fa0x1a:2*Math[_0x285e[424]]+_0x4fa0x1a;0==_0x4fa0x12&&0<_0x4fa0x9?_0x4fa0x9-=2*Math[_0x285e[424]]:0!=_0x4fa0x12&&0>_0x4fa0x9&&(_0x4fa0x9+=2*Math[_0x285e[424]]);_0x4fa0x12=2*_0x4fa0x9/Math[_0x285e[424]];_0x4fa0x12=Math[_0x285e[430]](0>_0x4fa0x12?-1*_0x4fa0x12:_0x4fa0x12);_0x4fa0x9/=_0x4fa0x12;_0x4fa0x15=8/3*Math[_0x285e[427]](_0x4fa0x9/4)*Math[_0x285e[427]](_0x4fa0x9/4)/Math[_0x285e[427]](_0x4fa0x9/2);_0x4fa0x16=_0x4fa0x17*_0x4fa0x4;_0x4fa0x17*=_0x4fa0x5;_0x4fa0x4*=_0x4fa0x18;_0x4fa0x5*=_0x4fa0x18;for(var _0x4fa0x1d=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0x1e=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x19=-_0x4fa0x15*(_0x4fa0x16*_0x4fa0x1e+_0x4fa0x5*_0x4fa0x1d),_0x4fa0x1a=-_0x4fa0x15*(_0x4fa0x4*_0x4fa0x1e-_0x4fa0x17*_0x4fa0x1d),_0x4fa0x1c=_0x4fa0x1b=0,_0x4fa0x18=[],_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x12;++_0x4fa0x1f){_0x4fa0xa+=_0x4fa0x9;var _0x4fa0x1d=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0x1e=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x1b=_0x4fa0x16*_0x4fa0x1d-_0x4fa0x5*_0x4fa0x1e+_0x4fa0x13,_0x4fa0x1c=_0x4fa0x4*_0x4fa0x1d+_0x4fa0x17*_0x4fa0x1e+_0x4fa0x14,_0x4fa0x20=-_0x4fa0x15*(_0x4fa0x16*_0x4fa0x1e+_0x4fa0x5*_0x4fa0x1d),_0x4fa0x1d=-_0x4fa0x15*(_0x4fa0x4*_0x4fa0x1e-_0x4fa0x17*_0x4fa0x1d),_0x4fa0x1e=6*_0x4fa0x1f;_0x4fa0x18[_0x4fa0x1e]=Number(_0x4fa0x19+_0x4fa0x2);_0x4fa0x18[_0x4fa0x1e+1]=Number(_0x4fa0x1a+_0x4fa0x3);_0x4fa0x18[_0x4fa0x1e+2]=Number(_0x4fa0x1b-_0x4fa0x20+_0x4fa0x2);_0x4fa0x18[_0x4fa0x1e+3]=Number(_0x4fa0x1c-_0x4fa0x1d+_0x4fa0x3);_0x4fa0x18[_0x4fa0x1e+4]=Number(_0x4fa0x1b+_0x4fa0x2);_0x4fa0x18[_0x4fa0x1e+5]=Number(_0x4fa0x1c+_0x4fa0x3);_0x4fa0x19=_0x4fa0x1b+_0x4fa0x20;_0x4fa0x1a=_0x4fa0x1c+_0x4fa0x1d};return _0x4fa0x18},getBoundingBox:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(null!=_0x4fa0x2&&null!=_0x4fa0x3&&0!=_0x4fa0x3){var _0x4fa0x5=mxUtils[_0x285e[431]](_0x4fa0x3),_0x4fa0x4=Math[_0x285e[426]](_0x4fa0x5),_0x4fa0x9=Math[_0x285e[427]](_0x4fa0x5),_0x4fa0xa= new mxPoint(_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]/2,_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]/2),_0x4fa0x12= new mxPoint(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]),_0x4fa0x5= new mxPoint(_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]],_0x4fa0x2[_0x285e[236]]),_0x4fa0x13= new mxPoint(_0x4fa0x5[_0x285e[235]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]),_0x4fa0x14= new mxPoint(_0x4fa0x2[_0x285e[235]],_0x4fa0x13[_0x285e[236]]),_0x4fa0x12=mxUtils[_0x285e[432]](_0x4fa0x12,_0x4fa0x4,_0x4fa0x9,_0x4fa0xa),_0x4fa0x5=mxUtils[_0x285e[432]](_0x4fa0x5,_0x4fa0x4,_0x4fa0x9,_0x4fa0xa),_0x4fa0x13=mxUtils[_0x285e[432]](_0x4fa0x13,_0x4fa0x4,_0x4fa0x9,_0x4fa0xa),_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x4,_0x4fa0x9,_0x4fa0xa),_0x4fa0x4= new mxRectangle(_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],0,0);_0x4fa0x4[_0x285e[99]]( new mxRectangle(_0x4fa0x5[_0x285e[235]],_0x4fa0x5[_0x285e[236]],0,0));_0x4fa0x4[_0x285e[99]]( new mxRectangle(_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],0,0));_0x4fa0x4[_0x285e[99]]( new mxRectangle(_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]],0,0))};return _0x4fa0x4},getRotatedPoint:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5: new mxPoint;var _0x4fa0x9=_0x4fa0x2[_0x285e[235]]-_0x4fa0x5[_0x285e[235]];_0x4fa0x2=_0x4fa0x2[_0x285e[236]]-_0x4fa0x5[_0x285e[236]];return new mxPoint(_0x4fa0x9*_0x4fa0x3-_0x4fa0x2*_0x4fa0x4+_0x4fa0x5[_0x285e[235]],_0x4fa0x2*_0x4fa0x3+_0x4fa0x9*_0x4fa0x4+_0x4fa0x5[_0x285e[236]])},getPortConstraints:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_PORT_CONSTRAINT,null);if(null==_0x4fa0x2){return _0x4fa0x5};_0x4fa0x5=_0x4fa0x2.toString();_0x4fa0x2=mxConstants[_0x285e[434]];0<=_0x4fa0x5[_0x285e[2]](mxConstants.DIRECTION_NORTH)&&(_0x4fa0x2|=mxConstants[_0x285e[435]]);0<=_0x4fa0x5[_0x285e[2]](mxConstants.DIRECTION_WEST)&&(_0x4fa0x2|=mxConstants[_0x285e[436]]);0<=_0x4fa0x5[_0x285e[2]](mxConstants.DIRECTION_SOUTH)&&(_0x4fa0x2|=mxConstants[_0x285e[437]]);0<=_0x4fa0x5[_0x285e[2]](mxConstants.DIRECTION_EAST)&&(_0x4fa0x2|=mxConstants[_0x285e[438]]);return _0x4fa0x2},reversePortConstraints:function(_0x4fa0x2){var _0x4fa0x3=0,_0x4fa0x3=(_0x4fa0x2&mxConstants[_0x285e[436]])<<3,_0x4fa0x3=_0x4fa0x3|(_0x4fa0x2&mxConstants[_0x285e[435]])<<1,_0x4fa0x3=_0x4fa0x3|(_0x4fa0x2&mxConstants[_0x285e[437]])>>1;return _0x4fa0x3|=(_0x4fa0x2&mxConstants[_0x285e[438]])>>3},findNearestSegment:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=-1;if(0<_0x4fa0x2[_0x285e[439]][_0x285e[67]]){for(var _0x4fa0x9=_0x4fa0x2[_0x285e[439]][0],_0x4fa0xa=null,_0x4fa0x12=1;_0x4fa0x12<_0x4fa0x2[_0x285e[439]][_0x285e[67]];_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x2[_0x285e[439]][_0x4fa0x12],_0x4fa0x9=mxUtils[_0x285e[440]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x3,_0x4fa0x4);if(null==_0x4fa0xa||_0x4fa0x9<_0x4fa0xa){_0x4fa0xa=_0x4fa0x9,_0x4fa0x5=_0x4fa0x12-1};_0x4fa0x9=_0x4fa0x13}};return _0x4fa0x5},rectangleIntersectsSegment:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[236]],_0x4fa0x9=_0x4fa0x2[_0x285e[235]],_0x4fa0xa=_0x4fa0x5+_0x4fa0x2[_0x285e[119]],_0x4fa0x12=_0x4fa0x9+_0x4fa0x2[_0x285e[117]];_0x4fa0x2=_0x4fa0x3[_0x285e[235]];var _0x4fa0x13=_0x4fa0x4[_0x285e[235]];_0x4fa0x3[_0x285e[235]]>_0x4fa0x4[_0x285e[235]]&&(_0x4fa0x2=_0x4fa0x4[_0x285e[235]],_0x4fa0x13=_0x4fa0x3[_0x285e[235]]);_0x4fa0x13>_0x4fa0x12&&(_0x4fa0x13=_0x4fa0x12);_0x4fa0x2<_0x4fa0x9&&(_0x4fa0x2=_0x4fa0x9);if(_0x4fa0x2>_0x4fa0x13){return !1};var _0x4fa0x9=_0x4fa0x3[_0x285e[236]],_0x4fa0x12=_0x4fa0x4[_0x285e[236]],_0x4fa0x14=_0x4fa0x4[_0x285e[235]]-_0x4fa0x3[_0x285e[235]];1E-7<Math[_0x285e[425]](_0x4fa0x14)&&(_0x4fa0x4=(_0x4fa0x4[_0x285e[236]]-_0x4fa0x3[_0x285e[236]])/_0x4fa0x14,_0x4fa0x3=_0x4fa0x3[_0x285e[236]]-_0x4fa0x4*_0x4fa0x3[_0x285e[235]],_0x4fa0x9=_0x4fa0x4*_0x4fa0x2+_0x4fa0x3,_0x4fa0x12=_0x4fa0x4*_0x4fa0x13+_0x4fa0x3);_0x4fa0x9>_0x4fa0x12&&(_0x4fa0x3=_0x4fa0x12,_0x4fa0x12=_0x4fa0x9,_0x4fa0x9=_0x4fa0x3);_0x4fa0x12>_0x4fa0xa&&(_0x4fa0x12=_0x4fa0xa);_0x4fa0x9<_0x4fa0x5&&(_0x4fa0x9=_0x4fa0x5);return _0x4fa0x9>_0x4fa0x12?!1:!0},contains:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x2[_0x285e[235]]<=_0x4fa0x3&&_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]>=_0x4fa0x3&&_0x4fa0x2[_0x285e[236]]<=_0x4fa0x4&&_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]>=_0x4fa0x4},intersects:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[117]],_0x4fa0x5=_0x4fa0x2[_0x285e[119]],_0x4fa0x9=_0x4fa0x3[_0x285e[117]],_0x4fa0xa=_0x4fa0x3[_0x285e[119]];if(0>=_0x4fa0x9||0>=_0x4fa0xa||0>=_0x4fa0x4||0>=_0x4fa0x5){return !1};var _0x4fa0x12=_0x4fa0x2[_0x285e[235]],_0x4fa0x13=_0x4fa0x2[_0x285e[236]],_0x4fa0x14=_0x4fa0x3[_0x285e[235]],_0x4fa0x15=_0x4fa0x3[_0x285e[236]],_0x4fa0x9=_0x4fa0x9+_0x4fa0x14,_0x4fa0xa=_0x4fa0xa+_0x4fa0x15,_0x4fa0x4=_0x4fa0x4+_0x4fa0x12,_0x4fa0x5=_0x4fa0x5+_0x4fa0x13;return (_0x4fa0x9<_0x4fa0x14||_0x4fa0x9>_0x4fa0x12)&&(_0x4fa0xa<_0x4fa0x15||_0x4fa0xa>_0x4fa0x13)&&(_0x4fa0x4<_0x4fa0x12||_0x4fa0x4>_0x4fa0x14)&&(_0x4fa0x5<_0x4fa0x13||_0x4fa0x5>_0x4fa0x15)},intersectsHotspot:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:1;_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:0;_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:0;if(0<_0x4fa0x5){var _0x4fa0x12=_0x4fa0x2[_0x285e[241]](),_0x4fa0x13=_0x4fa0x2[_0x285e[242]](),_0x4fa0x14=_0x4fa0x2[_0x285e[117]],_0x4fa0x15=_0x4fa0x2[_0x285e[119]],_0x4fa0x16=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_STARTSIZE)*_0x4fa0x2[_0x285e[441]][_0x285e[255]];0<_0x4fa0x16&&(mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_HORIZONTAL,!0)?(_0x4fa0x13=_0x4fa0x2[_0x285e[236]]+_0x4fa0x16/2,_0x4fa0x15=_0x4fa0x16):(_0x4fa0x12=_0x4fa0x2[_0x285e[235]]+_0x4fa0x16/2,_0x4fa0x14=_0x4fa0x16));_0x4fa0x14=Math[_0x285e[160]](_0x4fa0x9,_0x4fa0x14*_0x4fa0x5);_0x4fa0x15=Math[_0x285e[160]](_0x4fa0x9,_0x4fa0x15*_0x4fa0x5);0<_0x4fa0xa&&(_0x4fa0x14=Math[_0x285e[243]](_0x4fa0x14,_0x4fa0xa),_0x4fa0x15=Math[_0x285e[243]](_0x4fa0x15,_0x4fa0xa));_0x4fa0x5= new mxRectangle(_0x4fa0x12-_0x4fa0x14/2,_0x4fa0x13-_0x4fa0x15/2,_0x4fa0x14,_0x4fa0x15);_0x4fa0x12=mxUtils[_0x285e[431]](mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION)||0);0!=_0x4fa0x12&&(_0x4fa0x9=Math[_0x285e[426]](-_0x4fa0x12),_0x4fa0xa=Math[_0x285e[427]](-_0x4fa0x12),_0x4fa0x12= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]()),_0x4fa0x2=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x3,_0x4fa0x4),_0x4fa0x9,_0x4fa0xa,_0x4fa0x12),_0x4fa0x3=_0x4fa0x2[_0x285e[235]],_0x4fa0x4=_0x4fa0x2[_0x285e[236]]);return mxUtils[_0x285e[442]](_0x4fa0x5,_0x4fa0x3,_0x4fa0x4)};return !0},getOffset:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=0,_0x4fa0x5=0;if(null!=_0x4fa0x3&&_0x4fa0x3){var _0x4fa0x9=document[_0x285e[112]],_0x4fa0xa=document[_0x285e[158]],_0x4fa0x4=_0x4fa0x4+(_0x4fa0x9[_0x285e[360]]||_0x4fa0xa[_0x285e[360]]),_0x4fa0x5=_0x4fa0x5+(_0x4fa0x9[_0x285e[190]]||_0x4fa0xa[_0x285e[190]])};for(;_0x4fa0x2[_0x285e[443]];){_0x4fa0x4+=_0x4fa0x2[_0x285e[358]],_0x4fa0x5+=_0x4fa0x2[_0x285e[362]],_0x4fa0x2=_0x4fa0x2[_0x285e[443]]};return new mxPoint(_0x4fa0x4,_0x4fa0x5)},getScrollOrigin:function(_0x4fa0x2){for(var _0x4fa0x3=document[_0x285e[112]],_0x4fa0x4=document[_0x285e[158]],_0x4fa0x5= new mxPoint(_0x4fa0x3[_0x285e[360]]||_0x4fa0x4[_0x285e[360]],_0x4fa0x3[_0x285e[190]]||_0x4fa0x4[_0x285e[190]]);null!=_0x4fa0x2&&_0x4fa0x2!=_0x4fa0x3&&_0x4fa0x2!=_0x4fa0x4;){!isNaN(_0x4fa0x2[_0x285e[360]])&&!isNaN(_0x4fa0x2[_0x285e[190]])&&(_0x4fa0x5[_0x285e[235]]+=_0x4fa0x2[_0x285e[360]],_0x4fa0x5[_0x285e[236]]+=_0x4fa0x2[_0x285e[190]]),_0x4fa0x2=_0x4fa0x2[_0x285e[265]]};return _0x4fa0x5},convertPoint:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=mxUtils[_0x285e[444]](_0x4fa0x2);_0x4fa0x2=mxUtils[_0x285e[445]](_0x4fa0x2);_0x4fa0x2[_0x285e[235]]-=_0x4fa0x5[_0x285e[235]];_0x4fa0x2[_0x285e[236]]-=_0x4fa0x5[_0x285e[236]];return new mxPoint(_0x4fa0x3-_0x4fa0x2[_0x285e[235]],_0x4fa0x4-_0x4fa0x2[_0x285e[236]])},ltrim:function(_0x4fa0x2,_0x4fa0x3){return _0x4fa0x2[_0x285e[230]](RegExp(_0x285e[446]+(_0x4fa0x3||_0x285e[447])+_0x285e[448],_0x285e[449]),_0x285e[110])},rtrim:function(_0x4fa0x2,_0x4fa0x3){return _0x4fa0x2[_0x285e[230]](RegExp(_0x285e[450]+(_0x4fa0x3||_0x285e[447])+_0x285e[451],_0x285e[449]),_0x285e[110])},trim:function(_0x4fa0x2,_0x4fa0x3){return mxUtils[_0x285e[453]](mxUtils[_0x285e[452]](_0x4fa0x2,_0x4fa0x3),_0x4fa0x3)},isNumeric:function(_0x4fa0x2){return null!=_0x4fa0x2&&(null==_0x4fa0x2[_0x285e[67]]||0<_0x4fa0x2[_0x285e[67]]&&0>_0x4fa0x2[_0x285e[2]](_0x285e[454])&&0>_0x4fa0x2[_0x285e[2]](_0x285e[455]))&&!isNaN(_0x4fa0x2)},mod:function(_0x4fa0x2,_0x4fa0x3){return (_0x4fa0x2%_0x4fa0x3+_0x4fa0x3)%_0x4fa0x3},intersection:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){var _0x4fa0x14=(_0x4fa0x13-_0x4fa0xa)*(_0x4fa0x4-_0x4fa0x2)-(_0x4fa0x12-_0x4fa0x9)*(_0x4fa0x5-_0x4fa0x3);_0x4fa0x12=((_0x4fa0x12-_0x4fa0x9)*(_0x4fa0x3-_0x4fa0xa)-(_0x4fa0x13-_0x4fa0xa)*(_0x4fa0x2-_0x4fa0x9))/_0x4fa0x14;_0x4fa0x9=((_0x4fa0x4-_0x4fa0x2)*(_0x4fa0x3-_0x4fa0xa)-(_0x4fa0x5-_0x4fa0x3)*(_0x4fa0x2-_0x4fa0x9))/_0x4fa0x14;return 0<=_0x4fa0x12&&1>=_0x4fa0x12&&0<=_0x4fa0x9&&1>=_0x4fa0x9? new mxPoint(_0x4fa0x2+_0x4fa0x12*(_0x4fa0x4-_0x4fa0x2),_0x4fa0x3+_0x4fa0x12*(_0x4fa0x5-_0x4fa0x3)):null},ptSegDistSq:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x4-=_0x4fa0x2;_0x4fa0x5-=_0x4fa0x3;_0x4fa0x9-=_0x4fa0x2;_0x4fa0xa-=_0x4fa0x3;0>=_0x4fa0x9*_0x4fa0x4+_0x4fa0xa*_0x4fa0x5?_0x4fa0x4=0:(_0x4fa0x9=_0x4fa0x4-_0x4fa0x9,_0x4fa0xa=_0x4fa0x5-_0x4fa0xa,_0x4fa0x2=_0x4fa0x9*_0x4fa0x4+_0x4fa0xa*_0x4fa0x5,_0x4fa0x4=0>=_0x4fa0x2?0:_0x4fa0x2*_0x4fa0x2/(_0x4fa0x4*_0x4fa0x4+_0x4fa0x5*_0x4fa0x5));_0x4fa0x9=_0x4fa0x9*_0x4fa0x9+_0x4fa0xa*_0x4fa0xa-_0x4fa0x4;0>_0x4fa0x9&&(_0x4fa0x9=0);return _0x4fa0x9},relativeCcw:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x4-=_0x4fa0x2;_0x4fa0x5-=_0x4fa0x3;_0x4fa0x9-=_0x4fa0x2;_0x4fa0xa-=_0x4fa0x3;_0x4fa0x2=_0x4fa0x9*_0x4fa0x5-_0x4fa0xa*_0x4fa0x4;0==_0x4fa0x2&&(_0x4fa0x2=_0x4fa0x9*_0x4fa0x4+_0x4fa0xa*_0x4fa0x5,0<_0x4fa0x2&&(_0x4fa0x2=(_0x4fa0x9-_0x4fa0x4)*_0x4fa0x4+(_0x4fa0xa-_0x4fa0x5)*_0x4fa0x5,0>_0x4fa0x2&&(_0x4fa0x2=0)));return 0>_0x4fa0x2?-1:0<_0x4fa0x2?1:0},animateChanges:function(_0x4fa0x2,_0x4fa0x3){mxEffects[_0x285e[456]][_0x285e[183]](this,arguments)},cascadeOpacity:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxEffects[_0x285e[260]][_0x285e[183]](this,arguments)},fadeOut:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){mxEffects[_0x285e[457]][_0x285e[183]](this,arguments)},setOpacity:function(_0x4fa0x2,_0x4fa0x3){mxUtils[_0x285e[458]](_0x4fa0x2)?_0x4fa0x2[_0x285e[124]][_0x285e[347]]=100<=_0x4fa0x3?null:_0x285e[459]+_0x4fa0x3/5+_0x285e[460]:mxClient[_0x285e[80]]&&(_0x285e[82]=== typeof document[_0x285e[5]]||9>document[_0x285e[5]])?_0x4fa0x2[_0x285e[124]][_0x285e[347]]=100<=_0x4fa0x3?null:_0x285e[459]+_0x4fa0x3+_0x285e[460]:_0x4fa0x2[_0x285e[124]][_0x285e[461]]=_0x4fa0x3/100},createImage:function(_0x4fa0x2){var _0x4fa0x3=null;mxClient[_0x285e[49]]&&_0x285e[462]!=document[_0x285e[135]]?(_0x4fa0x3=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[464]),_0x4fa0x3[_0x285e[57]](_0x285e[390],_0x4fa0x2),_0x4fa0x3[_0x285e[124]][_0x285e[465]]=_0x285e[130]):(_0x4fa0x3=document[_0x285e[55]](_0x285e[466]),_0x4fa0x3[_0x285e[57]](_0x285e[390],_0x4fa0x2),_0x4fa0x3[_0x285e[57]](_0x285e[467],_0x285e[468]));return _0x4fa0x3},sortCells:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;var _0x4fa0x4= new mxDictionary;_0x4fa0x2[_0x285e[470]](function(_0x4fa0x2,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x4[_0x285e[203]](_0x4fa0x2);null==_0x4fa0xa&&(_0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2)[_0x285e[224]](mxCellPath.PATH_SEPARATOR),_0x4fa0x4[_0x285e[204]](_0x4fa0x2,_0x4fa0xa));var _0x4fa0x12=_0x4fa0x4[_0x285e[203]](_0x4fa0x9);null==_0x4fa0x12&&(_0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0x9)[_0x285e[224]](mxCellPath.PATH_SEPARATOR),_0x4fa0x4[_0x285e[204]](_0x4fa0x9,_0x4fa0x12));_0x4fa0xa=mxCellPath[_0x285e[469]](_0x4fa0xa,_0x4fa0x12);return 0==_0x4fa0xa?0:0<_0x4fa0xa==_0x4fa0x3?1:-1});return _0x4fa0x2},getStylename:function(_0x4fa0x2){return null!=_0x4fa0x2&&(_0x4fa0x2=_0x4fa0x2[_0x285e[224]](_0x285e[471])[0],0>_0x4fa0x2[_0x285e[2]](_0x285e[226]))?_0x4fa0x2:_0x285e[110]},getStylenames:function(_0x4fa0x2){var _0x4fa0x3=[];if(null!=_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[224]](_0x285e[471]);for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){0>_0x4fa0x2[_0x4fa0x4][_0x285e[2]](_0x285e[226])&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])}};return _0x4fa0x3},indexOfStylename:function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){for(var _0x4fa0x4=_0x4fa0x2[_0x285e[224]](_0x285e[471]),_0x4fa0x5=0,_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4[_0x285e[67]];_0x4fa0x9++){if(_0x4fa0x4[_0x4fa0x9]==_0x4fa0x3){return _0x4fa0x5};_0x4fa0x5+=_0x4fa0x4[_0x4fa0x9][_0x285e[67]]+1}};return -1},addStylename:function(_0x4fa0x2,_0x4fa0x3){0>mxUtils[_0x285e[472]](_0x4fa0x2,_0x4fa0x3)&&(null==_0x4fa0x2?_0x4fa0x2=_0x285e[110]:0<_0x4fa0x2[_0x285e[67]]&&_0x285e[471]!=_0x4fa0x2[_0x285e[225]](_0x4fa0x2[_0x285e[67]]-1)&&(_0x4fa0x2+=_0x285e[471]),_0x4fa0x2+=_0x4fa0x3);return _0x4fa0x2},removeStylename:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=[];if(null!=_0x4fa0x2){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[224]](_0x285e[471]),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5[_0x285e[67]];_0x4fa0x9++){_0x4fa0x5[_0x4fa0x9]!=_0x4fa0x3&&_0x4fa0x4[_0x285e[207]](_0x4fa0x5[_0x4fa0x9])}};return _0x4fa0x4[_0x285e[234]](_0x285e[471])},removeAllStylenames:function(_0x4fa0x2){var _0x4fa0x3=[];if(null!=_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[224]](_0x285e[471]);for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){0<=_0x4fa0x2[_0x4fa0x4][_0x285e[2]](_0x285e[226])&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])}};return _0x4fa0x3[_0x285e[234]](_0x285e[471])},setCellStyles:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]){_0x4fa0x2[_0x285e[473]]();try{for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){if(null!=_0x4fa0x3[_0x4fa0x9]){var _0x4fa0xa=mxUtils[_0x285e[475]](_0x4fa0x2[_0x285e[474]](_0x4fa0x3[_0x4fa0x9]),_0x4fa0x4,_0x4fa0x5);_0x4fa0x2[_0x285e[475]](_0x4fa0x3[_0x4fa0x9],_0x4fa0xa)}}}finally{_0x4fa0x2[_0x285e[476]]()}}},setStyle:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=null!=_0x4fa0x4&&(_0x285e[82]== typeof _0x4fa0x4[_0x285e[67]]||0<_0x4fa0x4[_0x285e[67]]);if(null==_0x4fa0x2||0==_0x4fa0x2[_0x285e[67]]){_0x4fa0x5&&(_0x4fa0x2=_0x4fa0x3+_0x285e[226]+_0x4fa0x4)}else {var _0x4fa0x9=_0x4fa0x2[_0x285e[2]](_0x4fa0x3+_0x285e[226]);0>_0x4fa0x9?_0x4fa0x5&&(_0x4fa0x5=_0x285e[471]==_0x4fa0x2[_0x285e[225]](_0x4fa0x2[_0x285e[67]]-1)?_0x285e[110]:_0x285e[471],_0x4fa0x2=_0x4fa0x2+_0x4fa0x5+_0x4fa0x3+_0x285e[226]+_0x4fa0x4):(_0x4fa0x3=_0x4fa0x5?_0x4fa0x3+_0x285e[226]+_0x4fa0x4:_0x285e[110],_0x4fa0x4=_0x4fa0x2[_0x285e[2]](_0x285e[471],_0x4fa0x9),_0x4fa0x5||_0x4fa0x4++,_0x4fa0x2=_0x4fa0x2[_0x285e[85]](0,_0x4fa0x9)+_0x4fa0x3+(_0x4fa0x4>_0x4fa0x9?_0x4fa0x2[_0x285e[85]](_0x4fa0x4):_0x285e[110]))};return _0x4fa0x2},setCellStyleFlags:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]){_0x4fa0x2[_0x285e[473]]();try{for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[67]];_0x4fa0xa++){if(null!=_0x4fa0x3[_0x4fa0xa]){var _0x4fa0x12=mxUtils[_0x285e[477]](_0x4fa0x2[_0x285e[474]](_0x4fa0x3[_0x4fa0xa]),_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[475]](_0x4fa0x3[_0x4fa0xa],_0x4fa0x12)}}}finally{_0x4fa0x2[_0x285e[476]]()}}},setStyleFlag:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null==_0x4fa0x2||0==_0x4fa0x2[_0x285e[67]]){_0x4fa0x2=_0x4fa0x5||null==_0x4fa0x5?_0x4fa0x3+_0x285e[226]+_0x4fa0x4:_0x4fa0x3+_0x285e[478]}else {var _0x4fa0x9=_0x4fa0x2[_0x285e[2]](_0x4fa0x3+_0x285e[226]);if(0>_0x4fa0x9){_0x4fa0x9=_0x285e[471]==_0x4fa0x2[_0x285e[225]](_0x4fa0x2[_0x285e[67]]-1)?_0x285e[110]:_0x285e[471],_0x4fa0x2=_0x4fa0x5||null==_0x4fa0x5?_0x4fa0x2+_0x4fa0x9+_0x4fa0x3+_0x285e[226]+_0x4fa0x4:_0x4fa0x2+_0x4fa0x9+_0x4fa0x3+_0x285e[478]}else {var _0x4fa0xa=_0x4fa0x2[_0x285e[2]](_0x285e[471],_0x4fa0x9),_0x4fa0x12=_0x285e[110],_0x4fa0x12=0>_0x4fa0xa?_0x4fa0x2[_0x285e[85]](_0x4fa0x9+_0x4fa0x3[_0x285e[67]]+1):_0x4fa0x2[_0x285e[85]](_0x4fa0x9+_0x4fa0x3[_0x285e[67]]+1,_0x4fa0xa),_0x4fa0x12=null==_0x4fa0x5?parseInt(_0x4fa0x12)^_0x4fa0x4:_0x4fa0x5?parseInt(_0x4fa0x12)|_0x4fa0x4:parseInt(_0x4fa0x12)& ~_0x4fa0x4;_0x4fa0x2=_0x4fa0x2[_0x285e[85]](0,_0x4fa0x9)+_0x4fa0x3+_0x285e[226]+_0x4fa0x12+(0<=_0x4fa0xa?_0x4fa0x2[_0x285e[85]](_0x4fa0xa):_0x285e[110])}};return _0x4fa0x2},getAlignmentAsPoint:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=0,_0x4fa0x5=0;_0x4fa0x2==mxConstants[_0x285e[479]]?_0x4fa0x4= -0.5:_0x4fa0x2==mxConstants[_0x285e[480]]&&(_0x4fa0x4= -1);_0x4fa0x3==mxConstants[_0x285e[481]]?_0x4fa0x5= -0.5:_0x4fa0x3==mxConstants[_0x285e[482]]&&(_0x4fa0x5= -1);return new mxPoint(_0x4fa0x4,_0x4fa0x5)},getSizeForString:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:mxConstants[_0x285e[483]];_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:mxConstants[_0x285e[484]];var _0x4fa0x5=document[_0x285e[55]](_0x285e[485]);_0x4fa0x5[_0x285e[124]][_0x285e[486]]=_0x4fa0x4;_0x4fa0x5[_0x285e[124]][_0x285e[487]]=Math[_0x285e[488]](_0x4fa0x3)+_0x285e[168];_0x4fa0x5[_0x285e[124]][_0x285e[489]]=Math[_0x285e[488]](_0x4fa0x3*mxConstants[_0x285e[490]])+_0x285e[168];_0x4fa0x5[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x5[_0x285e[124]][_0x285e[493]]=_0x285e[494];_0x4fa0x5[_0x285e[124]][_0x285e[187]]=_0x285e[188];_0x4fa0x5[_0x285e[124]][_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498];_0x4fa0x5[_0x285e[124]][_0x285e[499]]=_0x285e[500];_0x4fa0x5[_0x285e[339]]=_0x4fa0x2;document[_0x285e[112]][_0x285e[62]](_0x4fa0x5);_0x4fa0x2= new mxRectangle(0,0,_0x4fa0x5[_0x285e[359]],_0x4fa0x5[_0x285e[167]]);document[_0x285e[112]][_0x285e[266]](_0x4fa0x5);return _0x4fa0x2},getViewXml:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:0;_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:0;_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:1;null==_0x4fa0x4&&(_0x4fa0x4=[_0x4fa0x2[_0x285e[502]]()[_0x285e[501]]()]);var _0x4fa0xa=_0x4fa0x2[_0x285e[249]](),_0x4fa0x12=null,_0x4fa0x13=_0x4fa0xa[_0x285e[503]]();_0x4fa0xa[_0x285e[504]](!1);var _0x4fa0x14=_0x4fa0xa[_0x285e[505]],_0x4fa0x15=_0x4fa0xa[_0x285e[506]];_0x4fa0x2[_0x285e[507]]==mxConstants[_0x285e[508]]?(_0x4fa0xa[_0x285e[505]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449]),_0x4fa0xa[_0x285e[510]][_0x285e[62]](_0x4fa0xa[_0x285e[505]]),_0x4fa0xa[_0x285e[506]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449])):(_0x4fa0xa[_0x285e[505]]=_0x4fa0xa[_0x285e[505]][_0x285e[511]](!1),_0x4fa0xa[_0x285e[510]][_0x285e[62]](_0x4fa0xa[_0x285e[505]]),_0x4fa0xa[_0x285e[506]]=_0x4fa0xa[_0x285e[506]][_0x285e[511]](!1));_0x4fa0xa[_0x285e[510]][_0x285e[62]](_0x4fa0xa[_0x285e[506]]);var _0x4fa0x16=_0x4fa0xa[_0x285e[512]]();_0x4fa0xa[_0x285e[513]]= new mxPoint(_0x4fa0x5,_0x4fa0x9);_0x4fa0x3= new mxTemporaryCellStates(_0x4fa0x2[_0x285e[249]](),_0x4fa0x3,_0x4fa0x4);try{_0x4fa0x12=( new mxCodec)[_0x285e[514]](_0x4fa0x2[_0x285e[249]]())}finally{_0x4fa0x3[_0x285e[515]](),_0x4fa0xa[_0x285e[513]]=_0x4fa0x16,_0x4fa0xa[_0x285e[510]][_0x285e[266]](_0x4fa0xa[_0x285e[505]]),_0x4fa0xa[_0x285e[510]][_0x285e[266]](_0x4fa0xa[_0x285e[506]]),_0x4fa0xa[_0x285e[505]]=_0x4fa0x14,_0x4fa0xa[_0x285e[506]]=_0x4fa0x15,_0x4fa0xa[_0x285e[504]](_0x4fa0x13)};return _0x4fa0x12},getScaleForPageCount:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(1>_0x4fa0x2){return 1};_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:mxConstants[_0x285e[516]];_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:0;var _0x4fa0x9=_0x4fa0x4[_0x285e[117]]-2*_0x4fa0x5;_0x4fa0x4=_0x4fa0x4[_0x285e[119]]-2*_0x4fa0x5;_0x4fa0x5=_0x4fa0x3[_0x285e[517]]()[_0x285e[238]]();_0x4fa0x3=_0x4fa0x3[_0x285e[249]]()[_0x285e[518]]();_0x4fa0x5[_0x285e[117]]/=_0x4fa0x3;_0x4fa0x5[_0x285e[119]]/=_0x4fa0x3;_0x4fa0x3=_0x4fa0x5[_0x285e[117]];_0x4fa0x4=_0x4fa0x3/_0x4fa0x5[_0x285e[119]]/(_0x4fa0x9/_0x4fa0x4);_0x4fa0x5=Math[_0x285e[428]](_0x4fa0x2);var _0x4fa0xa=Math[_0x285e[428]](_0x4fa0x4);_0x4fa0x4=_0x4fa0x5*_0x4fa0xa;_0x4fa0x5/=_0x4fa0xa;if(1>_0x4fa0x4&&_0x4fa0x5>_0x4fa0x2){var _0x4fa0x12=_0x4fa0x5/_0x4fa0x2;_0x4fa0x5=_0x4fa0x2;_0x4fa0x4/=_0x4fa0x12};1>_0x4fa0x5&&_0x4fa0x4>_0x4fa0x2&&(_0x4fa0x12=_0x4fa0x4/_0x4fa0x2,_0x4fa0x4=_0x4fa0x2,_0x4fa0x5/=_0x4fa0x12);_0x4fa0x12=Math[_0x285e[430]](_0x4fa0x4)*Math[_0x285e[430]](_0x4fa0x5);for(_0x4fa0xa=0;_0x4fa0x12>_0x4fa0x2;){var _0x4fa0x12=Math[_0x285e[519]](_0x4fa0x4)/_0x4fa0x4,_0x4fa0x13=Math[_0x285e[519]](_0x4fa0x5)/_0x4fa0x5;1==_0x4fa0x12&&(_0x4fa0x12=Math[_0x285e[519]](_0x4fa0x4-1)/_0x4fa0x4);1==_0x4fa0x13&&(_0x4fa0x13=Math[_0x285e[519]](_0x4fa0x5-1)/_0x4fa0x5);_0x4fa0x12=_0x4fa0x12>_0x4fa0x13?_0x4fa0x12:_0x4fa0x13;_0x4fa0x4*=_0x4fa0x12;_0x4fa0x5*=_0x4fa0x12;_0x4fa0x12=Math[_0x285e[430]](_0x4fa0x4)*Math[_0x285e[430]](_0x4fa0x5);_0x4fa0xa++;if(10<_0x4fa0xa){break}};return 0.99999*(_0x4fa0x9*_0x4fa0x4/_0x4fa0x3)},show:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:0;null==_0x4fa0x3?_0x4fa0x3=window[_0x285e[392]]()[_0x285e[395]]:_0x4fa0x3[_0x285e[392]]();var _0x4fa0x9=_0x4fa0x2[_0x285e[517]]();_0x4fa0x4=-_0x4fa0x9[_0x285e[235]]+_0x4fa0x4;_0x4fa0x5=-_0x4fa0x9[_0x285e[236]]+_0x4fa0x5;if(mxClient[_0x285e[80]]){for(var _0x4fa0x9=_0x285e[520],_0x4fa0xa=document[_0x285e[64]](_0x285e[521]),_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){_0x4fa0x9+=_0x4fa0xa[_0x4fa0x12][_0x285e[342]]};_0x4fa0x9+=_0x285e[522];for(_0x4fa0x12=0;_0x4fa0x12<document[_0x285e[523]][_0x285e[67]];_0x4fa0x12++){try{_0x4fa0x9+=document[_0x285e[523]](_0x4fa0x12)[_0x285e[103]]}catch(h){}};_0x4fa0x9+=_0x285e[524];_0x4fa0x9+=_0x285e[525];_0x4fa0x9+=_0x4fa0x2[_0x285e[526]][_0x285e[339]];_0x4fa0x9+=_0x285e[527];_0x4fa0x9+=_0x285e[528];_0x4fa0x3[_0x285e[171]](_0x4fa0x9);_0x4fa0x3[_0x285e[268]]();_0x4fa0x2=_0x4fa0x3[_0x285e[112]][_0x285e[64]](_0x285e[529])[0];null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492],_0x4fa0x2[_0x285e[124]][_0x285e[361]]=_0x4fa0x4+_0x285e[168],_0x4fa0x2[_0x285e[124]][_0x285e[125]]=_0x4fa0x5+_0x285e[168])}else {_0x4fa0x3[_0x285e[171]](_0x285e[530]);_0x4fa0x3[_0x285e[171]](_0x285e[531]);_0x4fa0xa=document[_0x285e[64]](_0x285e[521]);for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){_0x4fa0x3[_0x285e[171]](mxUtils[_0x285e[532]](_0x4fa0xa[_0x4fa0x12]))};_0x4fa0xa=document[_0x285e[64]](_0x285e[54]);for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){_0x4fa0x3[_0x285e[171]](mxUtils[_0x285e[532]](_0x4fa0xa[_0x4fa0x12]))};_0x4fa0xa=document[_0x285e[64]](_0x285e[124]);for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){_0x4fa0x3[_0x285e[171]](mxUtils[_0x285e[532]](_0x4fa0xa[_0x4fa0x12]))};_0x4fa0x3[_0x285e[171]](_0x285e[533]);_0x4fa0x3[_0x285e[171]](_0x285e[534]);_0x4fa0x3[_0x285e[268]]();null==_0x4fa0x3[_0x285e[112]]&&_0x4fa0x3[_0x285e[158]][_0x285e[62]](_0x4fa0x3[_0x285e[55]](_0x285e[112]));_0x4fa0x3[_0x285e[112]][_0x285e[124]][_0x285e[277]]=_0x285e[278];for(_0x4fa0x2=_0x4fa0x2[_0x285e[526]][_0x285e[285]];null!=_0x4fa0x2;){_0x4fa0x12=_0x4fa0x2[_0x285e[511]](!0),_0x4fa0x3[_0x285e[112]][_0x285e[62]](_0x4fa0x12),_0x4fa0x2=_0x4fa0x2[_0x285e[287]]};_0x4fa0x2=_0x4fa0x3[_0x285e[64]](_0x285e[449])[0];null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[57]](_0x285e[535],_0x285e[536]+_0x4fa0x4+_0x285e[537]+_0x4fa0x5+_0x285e[460]),_0x4fa0x4=_0x4fa0x2[_0x285e[538]],_0x4fa0x4[_0x285e[57]](_0x285e[117],_0x4fa0x9[_0x285e[117]]+Math[_0x285e[160]](_0x4fa0x9[_0x285e[235]],0)+3),_0x4fa0x4[_0x285e[57]](_0x285e[119],_0x4fa0x9[_0x285e[119]]+Math[_0x285e[160]](_0x4fa0x9[_0x285e[236]],0)+3))};mxUtils[_0x285e[272]](_0x4fa0x3[_0x285e[112]]);return _0x4fa0x3},printScreen:function(_0x4fa0x2){var _0x4fa0x3=window[_0x285e[392]]();mxUtils[_0x285e[539]](_0x4fa0x2,_0x4fa0x3[_0x285e[395]]);_0x4fa0x2=function(){_0x4fa0x3[_0x285e[393]]();_0x4fa0x3[_0x285e[540]]();_0x4fa0x3[_0x285e[268]]()};mxClient[_0x285e[76]]?_0x4fa0x3[_0x285e[261]](_0x4fa0x2,500):_0x4fa0x2()},popup:function(_0x4fa0x2,_0x4fa0x3){if(_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[485]);_0x4fa0x4[_0x285e[124]][_0x285e[277]]=_0x285e[276];_0x4fa0x4[_0x285e[124]][_0x285e[117]]=_0x285e[541];_0x4fa0x4[_0x285e[124]][_0x285e[119]]=_0x285e[542];var _0x4fa0x5=document[_0x285e[55]](_0x285e[543]);_0x4fa0x5[_0x285e[339]]=mxUtils[_0x285e[321]](_0x4fa0x2,!1)[_0x285e[230]](/\n/g,_0x285e[545])[_0x285e[230]](/ /g,_0x285e[544]);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x4= new mxWindow(_0x285e[546],_0x4fa0x4,document[_0x285e[112]][_0x285e[159]]/2-320,(document[_0x285e[112]][_0x285e[157]]||document[_0x285e[158]][_0x285e[157]])/2-240,640,480,!1,!0);_0x4fa0x4[_0x285e[164]](!0);_0x4fa0x4[_0x285e[175]](!0)}else {mxClient[_0x285e[133]]?(_0x4fa0x4=window[_0x285e[392]](),_0x4fa0x4[_0x285e[395]][_0x285e[171]](_0x285e[547]+mxUtils[_0x285e[321]](_0x4fa0x2)+_0x285e[548]),_0x4fa0x4[_0x285e[395]][_0x285e[268]]()):(_0x4fa0x4=window[_0x285e[392]](),_0x4fa0x5=_0x4fa0x4[_0x285e[395]][_0x285e[55]](_0x285e[543]),_0x4fa0x5[_0x285e[339]]=mxUtils[_0x285e[321]](_0x4fa0x2,!1)[_0x285e[230]](/\n/g,_0x285e[545])[_0x285e[230]](/ /g,_0x285e[544]),_0x4fa0x4[_0x285e[395]][_0x285e[112]][_0x285e[62]](_0x4fa0x5))}},alert:function(_0x4fa0x2){alert(_0x4fa0x2)},prompt:function(_0x4fa0x2,_0x4fa0x3){return prompt(_0x4fa0x2,_0x4fa0x3)},confirm:function(_0x4fa0x2){return confirm(_0x4fa0x2)},error:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=document[_0x285e[55]](_0x285e[485]);_0x4fa0x9[_0x285e[124]][_0x285e[549]]=_0x285e[550];var _0x4fa0xa=document[_0x285e[55]](_0x285e[466]);_0x4fa0xa[_0x285e[57]](_0x285e[390],_0x4fa0x5||mxUtils[_0x285e[551]]);_0x4fa0xa[_0x285e[57]](_0x285e[552],_0x285e[553]);_0x4fa0xa[_0x285e[124]][_0x285e[123]]=_0x285e[554];_0x4fa0x9[_0x285e[62]](_0x4fa0xa);_0x4fa0x9[_0x285e[62]](document[_0x285e[344]](_0x285e[555]));_0x4fa0x9[_0x285e[62]](document[_0x285e[344]](_0x285e[555]));_0x4fa0x9[_0x285e[62]](document[_0x285e[344]](_0x285e[555]));mxUtils[_0x285e[53]](_0x4fa0x9,_0x4fa0x2);_0x4fa0x2=document[_0x285e[112]][_0x285e[159]];_0x4fa0x5=document[_0x285e[112]][_0x285e[157]]||document[_0x285e[158]][_0x285e[157]];var _0x4fa0x12= new mxWindow(mxResources[_0x285e[203]](mxUtils[_0x285e[556]])||mxUtils[_0x285e[556]],_0x4fa0x9,(_0x4fa0x2-_0x4fa0x3)/2,_0x4fa0x5/4,_0x4fa0x3,null,!1,!0);_0x4fa0x4&&(mxUtils[_0x285e[345]](_0x4fa0x9),_0x4fa0x3=document[_0x285e[55]](_0x285e[346]),_0x4fa0x4=document[_0x285e[55]](_0x285e[172]),mxClient[_0x285e[80]]?_0x4fa0x4[_0x285e[124]][_0x285e[103]]=_0x285e[557]:_0x4fa0x4[_0x285e[57]](_0x285e[124],_0x285e[557]),mxEvent[_0x285e[169]](_0x4fa0x4,_0x285e[173],function(_0x4fa0x2){_0x4fa0x12[_0x285e[515]]()}),mxUtils[_0x285e[53]](_0x4fa0x4,mxResources[_0x285e[203]](mxUtils[_0x285e[558]])||mxUtils[_0x285e[558]]),_0x4fa0x3[_0x285e[62]](_0x4fa0x4),_0x4fa0x9[_0x285e[62]](_0x4fa0x3),mxUtils[_0x285e[345]](_0x4fa0x9),_0x4fa0x12[_0x285e[164]](!0));_0x4fa0x12[_0x285e[175]](!0);return _0x4fa0x12},makeDraggable:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15){_0x4fa0x2= new mxDragSource(_0x4fa0x2,_0x4fa0x4);_0x4fa0x2[_0x285e[559]]= new mxPoint(null!=_0x4fa0x9?_0x4fa0x9:0,null!=_0x4fa0xa?_0x4fa0xa:mxConstants[_0x285e[560]]);_0x4fa0x2[_0x285e[561]]=_0x4fa0x12;_0x4fa0x2[_0x285e[562]](!1);null!=_0x4fa0x14&&(_0x4fa0x2[_0x285e[563]]=_0x4fa0x14);null!=_0x4fa0x15&&(_0x4fa0x2[_0x285e[564]]=_0x4fa0x15);_0x4fa0x2[_0x285e[565]]=function(_0x4fa0x2){return _0x285e[279]== typeof _0x4fa0x3?_0x4fa0x3(_0x4fa0x2):_0x4fa0x3};null!=_0x4fa0x5&&(_0x4fa0x2[_0x285e[566]]=function(){return _0x4fa0x5[_0x285e[511]](!0)},_0x4fa0x13&&(_0x4fa0x2[_0x285e[567]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x5[_0x285e[511]](!0),_0x4fa0x4=parseInt(_0x4fa0x3[_0x285e[124]][_0x285e[117]]),_0x4fa0x9=parseInt(_0x4fa0x3[_0x285e[124]][_0x285e[119]]);_0x4fa0x3[_0x285e[124]][_0x285e[117]]=Math[_0x285e[488]](_0x4fa0x4*_0x4fa0x2[_0x285e[441]][_0x285e[255]])+_0x285e[168];_0x4fa0x3[_0x285e[124]][_0x285e[119]]=Math[_0x285e[488]](_0x4fa0x9*_0x4fa0x2[_0x285e[441]][_0x285e[255]])+_0x285e[168];return _0x4fa0x3}));return _0x4fa0x2}},mxConstants={DEFAULT_HOTSPOT:0.3,MIN_HOTSPOT_SIZE:8,MAX_HOTSPOT_SIZE:0,RENDERING_HINT_EXACT:_0x285e[568],RENDERING_HINT_FASTER:_0x285e[569],RENDERING_HINT_FASTEST:_0x285e[570],DIALECT_SVG:_0x285e[571],DIALECT_VML:_0x285e[572],DIALECT_MIXEDHTML:_0x285e[573],DIALECT_PREFERHTML:_0x285e[574],DIALECT_STRICTHTML:_0x285e[575],NS_SVG:_0x285e[576],NS_XHTML:_0x285e[577],NS_XLINK:_0x285e[578],SHADOWCOLOR:_0x285e[579],SHADOW_OFFSET_X:2,SHADOW_OFFSET_Y:3,SHADOW_OPACITY:1,NODETYPE_ELEMENT:1,NODETYPE_ATTRIBUTE:2,NODETYPE_TEXT:3,NODETYPE_CDATA:4,NODETYPE_ENTITY_REFERENCE:5,NODETYPE_ENTITY:6,NODETYPE_PROCESSING_INSTRUCTION:7,NODETYPE_COMMENT:8,NODETYPE_DOCUMENT:9,NODETYPE_DOCUMENTTYPE:10,NODETYPE_DOCUMENT_FRAGMENT:11,NODETYPE_NOTATION:12,TOOLTIP_VERTICAL_OFFSET:16,DEFAULT_VALID_COLOR:_0x285e[580],DEFAULT_INVALID_COLOR:_0x285e[581],HIGHLIGHT_STROKEWIDTH:3,CURSOR_MOVABLE_VERTEX:_0x285e[582],CURSOR_MOVABLE_EDGE:_0x285e[582],CURSOR_LABEL_HANDLE:_0x285e[583],CURSOR_BEND_HANDLE:_0x285e[356],CURSOR_CONNECT:_0x285e[356],HIGHLIGHT_COLOR:_0x285e[580],CONNECT_TARGET_COLOR:_0x285e[584],INVALID_CONNECT_TARGET_COLOR:_0x285e[581],DROP_TARGET_COLOR:_0x285e[584],VALID_COLOR:_0x285e[580],INVALID_COLOR:_0x285e[581],EDGE_SELECTION_COLOR:_0x285e[580],VERTEX_SELECTION_COLOR:_0x285e[580],VERTEX_SELECTION_STROKEWIDTH:1,EDGE_SELECTION_STROKEWIDTH:1,VERTEX_SELECTION_DASHED:!0,EDGE_SELECTION_DASHED:!0,GUIDE_COLOR:_0x285e[581],GUIDE_STROKEWIDTH:1,OUTLINE_COLOR:_0x285e[585],OUTLINE_STROKEWIDTH:mxClient[_0x285e[80]]?2:3,HANDLE_SIZE:7,LABEL_HANDLE_SIZE:4,HANDLE_FILLCOLOR:_0x285e[580],HANDLE_STROKECOLOR:_0x285e[586],LABEL_HANDLE_FILLCOLOR:_0x285e[587],CONNECT_HANDLE_FILLCOLOR:_0x285e[584],LOCKED_HANDLE_FILLCOLOR:_0x285e[581],OUTLINE_HANDLE_FILLCOLOR:_0x285e[588],OUTLINE_HANDLE_STROKECOLOR:_0x285e[589],DEFAULT_FONTFAMILY:_0x285e[590],DEFAULT_FONTSIZE:11,LINE_HEIGHT:1.2,DEFAULT_FONTSTYLE:0,DEFAULT_STARTSIZE:40,DEFAULT_MARKERSIZE:6,DEFAULT_IMAGESIZE:24,ENTITY_SEGMENT:30,RECTANGLE_ROUNDING_FACTOR:0.15,LINE_ARCSIZE:20,ARROW_SPACING:10,ARROW_WIDTH:30,ARROW_SIZE:30,PAGE_FORMAT_A4_PORTRAIT: new mxRectangle(0,0,826,1169),PAGE_FORMAT_A4_LANDSCAPE: new mxRectangle(0,0,1169,826),PAGE_FORMAT_LETTER_PORTRAIT: new mxRectangle(0,0,850,1100),PAGE_FORMAT_LETTER_LANDSCAPE: new mxRectangle(0,0,1100,850),NONE:_0x285e[130],STYLE_PERIMETER:_0x285e[591],STYLE_SOURCE_PORT:_0x285e[592],STYLE_TARGET_PORT:_0x285e[593],STYLE_PORT_CONSTRAINT:_0x285e[594],STYLE_OPACITY:_0x285e[461],STYLE_TEXT_OPACITY:_0x285e[595],STYLE_OVERFLOW:_0x285e[277],STYLE_ORTHOGONAL:_0x285e[596],STYLE_EXIT_X:_0x285e[597],STYLE_EXIT_Y:_0x285e[598],STYLE_EXIT_PERIMETER:_0x285e[599],STYLE_ENTRY_X:_0x285e[600],STYLE_ENTRY_Y:_0x285e[601],STYLE_ENTRY_PERIMETER:_0x285e[602],STYLE_WHITE_SPACE:_0x285e[493],STYLE_ROTATION:_0x285e[603],STYLE_FILLCOLOR:_0x285e[604],STYLE_SWIMLANE_FILLCOLOR:_0x285e[605],STYLE_GRADIENTCOLOR:_0x285e[606],STYLE_GRADIENT_DIRECTION:_0x285e[607],STYLE_STROKECOLOR:_0x285e[608],STYLE_SEPARATORCOLOR:_0x285e[609],STYLE_STROKEWIDTH:_0x285e[610],STYLE_ALIGN:_0x285e[611],STYLE_VERTICAL_ALIGN:_0x285e[123],STYLE_LABEL_POSITION:_0x285e[612],STYLE_VERTICAL_LABEL_POSITION:_0x285e[613],STYLE_IMAGE_ASPECT:_0x285e[614],STYLE_IMAGE_ALIGN:_0x285e[615],STYLE_IMAGE_VERTICAL_ALIGN:_0x285e[616],STYLE_GLASS:_0x285e[617],STYLE_IMAGE:_0x285e[618],STYLE_IMAGE_WIDTH:_0x285e[619],STYLE_IMAGE_HEIGHT:_0x285e[620],STYLE_IMAGE_BACKGROUND:_0x285e[621],STYLE_IMAGE_BORDER:_0x285e[622],STYLE_FLIPH:_0x285e[623],STYLE_FLIPV:_0x285e[624],STYLE_NOLABEL:_0x285e[625],STYLE_NOEDGESTYLE:_0x285e[626],STYLE_LABEL_BACKGROUNDCOLOR:_0x285e[627],STYLE_LABEL_BORDERCOLOR:_0x285e[628],STYLE_LABEL_PADDING:_0x285e[629],STYLE_INDICATOR_SHAPE:_0x285e[630],STYLE_INDICATOR_IMAGE:_0x285e[631],STYLE_INDICATOR_COLOR:_0x285e[632],STYLE_INDICATOR_STROKECOLOR:_0x285e[633],STYLE_INDICATOR_GRADIENTCOLOR:_0x285e[634],STYLE_INDICATOR_SPACING:_0x285e[635],STYLE_INDICATOR_WIDTH:_0x285e[636],STYLE_INDICATOR_HEIGHT:_0x285e[637],STYLE_INDICATOR_DIRECTION:_0x285e[638],STYLE_SHADOW:_0x285e[639],STYLE_SEGMENT:_0x285e[640],STYLE_ENDARROW:_0x285e[641],STYLE_STARTARROW:_0x285e[642],STYLE_ENDSIZE:_0x285e[643],STYLE_STARTSIZE:_0x285e[644],STYLE_SWIMLANE_LINE:_0x285e[645],STYLE_ENDFILL:_0x285e[646],STYLE_STARTFILL:_0x285e[647],STYLE_DASHED:_0x285e[648],STYLE_DASH_PATTERN:_0x285e[649],STYLE_ROUNDED:_0x285e[650],STYLE_CURVED:_0x285e[651],STYLE_ARCSIZE:_0x285e[652],STYLE_SMOOTH:_0x285e[653],STYLE_SOURCE_PERIMETER_SPACING:_0x285e[654],STYLE_TARGET_PERIMETER_SPACING:_0x285e[655],STYLE_PERIMETER_SPACING:_0x285e[656],STYLE_SPACING:_0x285e[657],STYLE_SPACING_TOP:_0x285e[658],STYLE_SPACING_LEFT:_0x285e[659],STYLE_SPACING_BOTTOM:_0x285e[660],STYLE_SPACING_RIGHT:_0x285e[661],STYLE_HORIZONTAL:_0x285e[662],STYLE_DIRECTION:_0x285e[663],STYLE_ELBOW:_0x285e[664],STYLE_FONTCOLOR:_0x285e[665],STYLE_FONTFAMILY:_0x285e[486],STYLE_FONTSIZE:_0x285e[487],STYLE_FONTSTYLE:_0x285e[666],STYLE_AUTOSIZE:_0x285e[667],STYLE_FOLDABLE:_0x285e[668],STYLE_EDITABLE:_0x285e[669],STYLE_BENDABLE:_0x285e[670],STYLE_MOVABLE:_0x285e[671],STYLE_RESIZABLE:_0x285e[672],STYLE_CLONEABLE:_0x285e[673],STYLE_DELETABLE:_0x285e[674],STYLE_SHAPE:_0x285e[253],STYLE_EDGE:_0x285e[675],STYLE_LOOP:_0x285e[676],STYLE_ROUTING_CENTER_X:_0x285e[677],STYLE_ROUTING_CENTER_Y:_0x285e[678],FONT_BOLD:1,FONT_ITALIC:2,FONT_UNDERLINE:4,FONT_SHADOW:8,SHAPE_RECTANGLE:_0x285e[679],SHAPE_ELLIPSE:_0x285e[680],SHAPE_DOUBLE_ELLIPSE:_0x285e[681],SHAPE_RHOMBUS:_0x285e[682],SHAPE_LINE:_0x285e[683],SHAPE_IMAGE:_0x285e[618],SHAPE_ARROW:_0x285e[684],SHAPE_LABEL:_0x285e[685],SHAPE_CYLINDER:_0x285e[686],SHAPE_SWIMLANE:_0x285e[687],SHAPE_CONNECTOR:_0x285e[688],SHAPE_ACTOR:_0x285e[689],SHAPE_CLOUD:_0x285e[690],SHAPE_TRIANGLE:_0x285e[691],SHAPE_HEXAGON:_0x285e[692],ARROW_CLASSIC:_0x285e[693],ARROW_BLOCK:_0x285e[694],ARROW_OPEN:_0x285e[392],ARROW_OVAL:_0x285e[695],ARROW_DIAMOND:_0x285e[696],ARROW_DIAMOND_THIN:_0x285e[697],ALIGN_LEFT:_0x285e[361],ALIGN_CENTER:_0x285e[698],ALIGN_RIGHT:_0x285e[699],ALIGN_TOP:_0x285e[125],ALIGN_MIDDLE:_0x285e[554],ALIGN_BOTTOM:_0x285e[553],DIRECTION_NORTH:_0x285e[700],DIRECTION_SOUTH:_0x285e[701],DIRECTION_EAST:_0x285e[702],DIRECTION_WEST:_0x285e[703],DIRECTION_MASK_NONE:0,DIRECTION_MASK_WEST:1,DIRECTION_MASK_NORTH:2,DIRECTION_MASK_SOUTH:4,DIRECTION_MASK_EAST:8,DIRECTION_MASK_ALL:15,ELBOW_VERTICAL:_0x285e[704],ELBOW_HORIZONTAL:_0x285e[662],EDGESTYLE_ELBOW:_0x285e[705],EDGESTYLE_ENTITY_RELATION:_0x285e[706],EDGESTYLE_LOOP:_0x285e[707],EDGESTYLE_SIDETOSIDE:_0x285e[708],EDGESTYLE_TOPTOBOTTOM:_0x285e[709],EDGESTYLE_ORTHOGONAL:_0x285e[710],EDGESTYLE_SEGMENT:_0x285e[711],PERIMETER_ELLIPSE:_0x285e[712],PERIMETER_RECTANGLE:_0x285e[713],PERIMETER_RHOMBUS:_0x285e[714],PERIMETER_TRIANGLE:_0x285e[715]};function mxEventObject(_0x4fa0x2){this[_0x285e[298]]=_0x4fa0x2;this[_0x285e[716]]=[];for(var _0x4fa0x3=1;_0x4fa0x3<arguments[_0x285e[67]];_0x4fa0x3+=2){null!=arguments[_0x4fa0x3+1]&&(this[_0x285e[716]][arguments[_0x4fa0x3]]=arguments[_0x4fa0x3+1])}}mxEventObject[_0x285e[202]][_0x285e[298]]=null;mxEventObject[_0x285e[202]][_0x285e[716]]=null;mxEventObject[_0x285e[202]][_0x285e[717]]= !1;mxEventObject[_0x285e[202]][_0x285e[718]]=function(){return this[_0x285e[298]]};mxEventObject[_0x285e[202]][_0x285e[719]]=function(){return this[_0x285e[716]]};mxEventObject[_0x285e[202]][_0x285e[720]]=function(_0x4fa0x2){return this[_0x285e[716]][_0x4fa0x2]};mxEventObject[_0x285e[202]][_0x285e[721]]=function(){return this[_0x285e[717]]};mxEventObject[_0x285e[202]][_0x285e[722]]=function(){this[_0x285e[717]]= !0};function mxMouseEvent(_0x4fa0x2,_0x4fa0x3){this[_0x285e[723]]=_0x4fa0x2;this[_0x285e[724]]=_0x4fa0x3}mxMouseEvent[_0x285e[202]][_0x285e[717]]= !1;mxMouseEvent[_0x285e[202]][_0x285e[723]]=null;mxMouseEvent[_0x285e[202]][_0x285e[725]]=null;mxMouseEvent[_0x285e[202]][_0x285e[726]]=null;mxMouseEvent[_0x285e[202]][_0x285e[724]]=null;mxMouseEvent[_0x285e[202]][_0x285e[727]]=function(){return this[_0x285e[723]]};mxMouseEvent[_0x285e[202]][_0x285e[728]]=function(){return mxEvent[_0x285e[728]](this[_0x285e[723]])};mxMouseEvent[_0x285e[202]][_0x285e[729]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[728]]();null!=_0x4fa0x3;){if(_0x4fa0x3==_0x4fa0x2[_0x285e[252]]){return !0};_0x4fa0x3=_0x4fa0x3[_0x285e[265]]}};return !1};mxMouseEvent[_0x285e[202]][_0x285e[730]]=function(){return mxEvent[_0x285e[731]](this[_0x285e[727]]())};mxMouseEvent[_0x285e[202]][_0x285e[732]]=function(){return mxEvent[_0x285e[733]](this[_0x285e[727]]())};mxMouseEvent[_0x285e[202]][_0x285e[734]]=function(){return this[_0x285e[725]]};mxMouseEvent[_0x285e[202]][_0x285e[735]]=function(){return this[_0x285e[726]]};mxMouseEvent[_0x285e[202]][_0x285e[248]]=function(){return this[_0x285e[724]]};mxMouseEvent[_0x285e[202]][_0x285e[736]]=function(){var _0x4fa0x2=this[_0x285e[248]]();return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[246]]:null};mxMouseEvent[_0x285e[202]][_0x285e[737]]=function(){return mxEvent[_0x285e[737]](this[_0x285e[727]]())};mxMouseEvent[_0x285e[202]][_0x285e[721]]=function(){return this[_0x285e[717]]};mxMouseEvent[_0x285e[202]][_0x285e[722]]=function(_0x4fa0x2){(null!=_0x4fa0x2?_0x4fa0x2:1)&&this[_0x285e[723]][_0x285e[738]]&&this[_0x285e[723]][_0x285e[738]]();this[_0x285e[723]][_0x285e[739]]= !1;this[_0x285e[717]]= !0};function mxEventSource(_0x4fa0x2){this[_0x285e[740]](_0x4fa0x2)}mxEventSource[_0x285e[202]][_0x285e[741]]=null;mxEventSource[_0x285e[202]][_0x285e[742]]= !0;mxEventSource[_0x285e[202]][_0x285e[743]]=null;mxEventSource[_0x285e[202]][_0x285e[503]]=function(){return this[_0x285e[742]]};mxEventSource[_0x285e[202]][_0x285e[504]]=function(_0x4fa0x2){this[_0x285e[742]]=_0x4fa0x2};mxEventSource[_0x285e[202]][_0x285e[744]]=function(){return this[_0x285e[743]]};mxEventSource[_0x285e[202]][_0x285e[740]]=function(_0x4fa0x2){this[_0x285e[743]]=_0x4fa0x2};mxEventSource[_0x285e[202]][_0x285e[169]]=function(_0x4fa0x2,_0x4fa0x3){null==this[_0x285e[741]]&&(this[_0x285e[741]]=[]);this[_0x285e[741]][_0x285e[207]](_0x4fa0x2);this[_0x285e[741]][_0x285e[207]](_0x4fa0x3)};mxEventSource[_0x285e[202]][_0x285e[745]]=function(_0x4fa0x2){if(null!=this[_0x285e[741]]){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[741]][_0x285e[67]];){this[_0x285e[741]][_0x4fa0x3+1]==_0x4fa0x2?this[_0x285e[741]][_0x285e[300]](_0x4fa0x3,2):_0x4fa0x3+=2}}};mxEventSource[_0x285e[202]][_0x285e[746]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[741]]&&this[_0x285e[503]]()){null==_0x4fa0x2&&(_0x4fa0x2= new mxEventObject);null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[744]]());null==_0x4fa0x3&&(_0x4fa0x3=this);for(var _0x4fa0x4=[_0x4fa0x3,_0x4fa0x2],_0x4fa0x5=0;_0x4fa0x5<this[_0x285e[741]][_0x285e[67]];_0x4fa0x5+=2){var _0x4fa0x9=this[_0x285e[741]][_0x4fa0x5];(null==_0x4fa0x9||_0x4fa0x9==_0x4fa0x2[_0x285e[718]]())&&this[_0x285e[741]][_0x4fa0x5+1][_0x285e[183]](this,_0x4fa0x4)}}};var mxEvent={objects:[],addListener:function(){var _0x4fa0x2=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){null==_0x4fa0x2[_0x285e[69]]&&(_0x4fa0x2[_0x285e[69]]=[],mxEvent[_0x285e[68]][_0x285e[207]](_0x4fa0x2));_0x4fa0x2[_0x285e[69]][_0x285e[207]]({name:_0x4fa0x4,f:_0x4fa0x5})};return window[_0x285e[418]]?function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3[_0x285e[418]](_0x4fa0x4,_0x4fa0x5,!1);_0x4fa0x2(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}:function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3[_0x285e[108]](_0x285e[747]+_0x4fa0x4,_0x4fa0x5);_0x4fa0x2(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}}(),removeListener:function(){var _0x4fa0x2=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x2[_0x285e[69]]){_0x4fa0x4=_0x4fa0x2[_0x285e[69]][_0x285e[67]];for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4;_0x4fa0x9++){if(_0x4fa0x2[_0x285e[69]][_0x4fa0x9][_0x285e[748]]==_0x4fa0x5){_0x4fa0x2[_0x285e[69]][_0x285e[300]](_0x4fa0x9,1);break}};0==_0x4fa0x2[_0x285e[69]][_0x285e[67]]&&(_0x4fa0x2[_0x285e[69]]=null)}};return window[_0x285e[749]]?function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3[_0x285e[749]](_0x4fa0x4,_0x4fa0x5,!1);_0x4fa0x2(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}:function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3[_0x285e[750]](_0x285e[747]+_0x4fa0x4,_0x4fa0x5);_0x4fa0x2(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}}(),removeAllListeners:function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[69]];if(null!=_0x4fa0x3){for(;0<_0x4fa0x3[_0x285e[67]];){var _0x4fa0x4=_0x4fa0x3[0];mxEvent[_0x285e[745]](_0x4fa0x2,_0x4fa0x4[_0x285e[298]],_0x4fa0x4[_0x285e[748]])}}},addGestureListeners:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){null!=_0x4fa0x3&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[751],_0x4fa0x3);null!=_0x4fa0x4&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[752],_0x4fa0x4);null!=_0x4fa0x5&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[753],_0x4fa0x5);mxClient[_0x285e[754]]&&(null!=_0x4fa0x3&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[755],_0x4fa0x3),null!=_0x4fa0x4&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[756],_0x4fa0x4),null!=_0x4fa0x5&&mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[757],_0x4fa0x5))},removeGestureListeners:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){null!=_0x4fa0x3&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[751],_0x4fa0x3);null!=_0x4fa0x4&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[752],_0x4fa0x4);null!=_0x4fa0x5&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[753],_0x4fa0x5);mxClient[_0x285e[754]]&&(null!=_0x4fa0x3&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[755],_0x4fa0x3),null!=_0x4fa0x4&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[756],_0x4fa0x4),null!=_0x4fa0x5&&mxEvent[_0x285e[745]](_0x4fa0x2,_0x285e[757],_0x4fa0x5))},redirectMouseEvents:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){var _0x4fa0x13=function(_0x4fa0x2){return _0x285e[279]== typeof _0x4fa0x4?_0x4fa0x4(_0x4fa0x2):_0x4fa0x4};mxEvent[_0x285e[759]](_0x4fa0x2,function(_0x4fa0x2){null!=_0x4fa0x5?_0x4fa0x5(_0x4fa0x2):mxEvent[_0x285e[721]](_0x4fa0x2)||_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x2,_0x4fa0x13(_0x4fa0x2)))},function(_0x4fa0x2){null!=_0x4fa0x9?_0x4fa0x9(_0x4fa0x2):mxEvent[_0x285e[721]](_0x4fa0x2)||_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x2,_0x4fa0x13(_0x4fa0x2)))},function(_0x4fa0x2){null!=_0x4fa0xa?_0x4fa0xa(_0x4fa0x2):mxEvent[_0x285e[721]](_0x4fa0x2)||_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x2,_0x4fa0x13(_0x4fa0x2)))});mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[760],function(_0x4fa0x2){if(null!=_0x4fa0x12){_0x4fa0x12(_0x4fa0x2)}else {if(!mxEvent[_0x285e[721]](_0x4fa0x2)){var _0x4fa0x4=_0x4fa0x13(_0x4fa0x2);_0x4fa0x3[_0x285e[761]](_0x4fa0x2,null!=_0x4fa0x4?_0x4fa0x4[_0x285e[246]]:null)}}})},release:function(_0x4fa0x2){if(null!=_0x4fa0x2&&(mxEvent[_0x285e[70]](_0x4fa0x2),_0x4fa0x2=_0x4fa0x2[_0x285e[271]],null!=_0x4fa0x2)){for(var _0x4fa0x3=_0x4fa0x2[_0x285e[67]],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3;_0x4fa0x4+=1){mxEvent[_0x285e[762]](_0x4fa0x2[_0x4fa0x4])}}},addMouseWheelListener:function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=function(_0x4fa0x3){null==_0x4fa0x3&&(_0x4fa0x3=window[_0x285e[763]]);var _0x4fa0x5=0,_0x4fa0x5=mxClient[_0x285e[133]]&&!mxClient[_0x285e[75]]&&!mxClient[_0x285e[76]]?-_0x4fa0x3[_0x285e[764]]/2:_0x4fa0x3[_0x285e[765]]/120;0!=_0x4fa0x5&&_0x4fa0x2(_0x4fa0x3,0<_0x4fa0x5)};mxClient[_0x285e[133]]?mxEvent[_0x285e[169]](window,mxClient[_0x285e[75]]||mxClient[_0x285e[76]]?_0x285e[766]:_0x285e[767],_0x4fa0x3):mxEvent[_0x285e[169]](document,_0x285e[766],_0x4fa0x3)}},disableContextMenu:function(){return mxClient[_0x285e[80]]&&(_0x285e[82]=== typeof document[_0x285e[5]]||9>document[_0x285e[5]])?function(_0x4fa0x2){mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[768],function(){return !1})}:function(_0x4fa0x2){_0x4fa0x2[_0x285e[57]](_0x285e[769],_0x285e[770])}}(),getSource:function(_0x4fa0x2){return null!=_0x4fa0x2[_0x285e[771]]?_0x4fa0x2[_0x285e[771]]:_0x4fa0x2[_0x285e[772]]},isConsumed:function(_0x4fa0x2){return null!=_0x4fa0x2[_0x285e[721]]&&_0x4fa0x2[_0x285e[721]]},isLeftMouseButton:function(_0x4fa0x2){return _0x4fa0x2[_0x285e[172]]==(mxClient[_0x285e[80]]&&(_0x285e[82]=== typeof document[_0x285e[5]]||9>document[_0x285e[5]])?1:0)},isRightMouseButton:function(_0x4fa0x2){return 2==_0x4fa0x2[_0x285e[172]]},isPopupTrigger:function(_0x4fa0x2){return mxEvent[_0x285e[773]](_0x4fa0x2)||mxEvent[_0x285e[774]](_0x4fa0x2)&&!mxEvent[_0x285e[775]](_0x4fa0x2)},isShiftDown:function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[776]]:!1},isAltDown:function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[777]]:!1},isControlDown:function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[778]]:!1},isMetaDown:function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[779]]:!1},getMainEvent:function(_0x4fa0x2){(_0x285e[755]==_0x4fa0x2[_0x285e[60]]||_0x285e[756]==_0x4fa0x2[_0x285e[60]])&&null!=_0x4fa0x2[_0x285e[780]]&&null!=_0x4fa0x2[_0x285e[780]][0]?_0x4fa0x2=_0x4fa0x2[_0x285e[780]][0]:_0x285e[757]==_0x4fa0x2[_0x285e[60]]&&(null!=_0x4fa0x2[_0x285e[781]]&&null!=_0x4fa0x2[_0x285e[781]][0])&&(_0x4fa0x2=_0x4fa0x2[_0x285e[781]][0]);return _0x4fa0x2},getClientX:function(_0x4fa0x2){return mxEvent[_0x285e[783]](_0x4fa0x2)[_0x285e[782]]},getClientY:function(_0x4fa0x2){return mxEvent[_0x285e[783]](_0x4fa0x2)[_0x285e[784]]},consume:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;if(null!=_0x4fa0x3?_0x4fa0x3:1){_0x4fa0x2[_0x285e[738]]?(_0x4fa0x4&&_0x4fa0x2[_0x285e[785]](),_0x4fa0x2[_0x285e[738]]()):_0x4fa0x4&&(_0x4fa0x2[_0x285e[786]]= !0)};_0x4fa0x2[_0x285e[721]]= !0;_0x4fa0x2[_0x285e[739]]= !1},LABEL_HANDLE:-1,ROTATION_HANDLE:-2,MOUSE_DOWN:_0x285e[787],MOUSE_MOVE:_0x285e[788],MOUSE_UP:_0x285e[789],ACTIVATE:_0x285e[790],RESIZE_START:_0x285e[791],RESIZE:_0x285e[129],RESIZE_END:_0x285e[792],MOVE_START:_0x285e[793],MOVE:_0x285e[582],MOVE_END:_0x285e[794],PAN_START:_0x285e[795],PAN:_0x285e[796],PAN_END:_0x285e[797],MINIMIZE:_0x285e[798],NORMALIZE:_0x285e[799],MAXIMIZE:_0x285e[800],HIDE:_0x285e[801],SHOW:_0x285e[539],CLOSE:_0x285e[268],DESTROY:_0x285e[515],REFRESH:_0x285e[802],SIZE:_0x285e[803],SELECT:_0x285e[804],FIRED:_0x285e[805],GET:_0x285e[203],RECEIVE:_0x285e[806],CONNECT:_0x285e[807],DISCONNECT:_0x285e[808],SUSPEND:_0x285e[809],RESUME:_0x285e[810],MARK:_0x285e[811],SESSION:_0x285e[812],ROOT:_0x285e[813],POST:_0x285e[814],OPEN:_0x285e[392],SAVE:_0x285e[815],BEFORE_ADD_VERTEX:_0x285e[816],ADD_VERTEX:_0x285e[817],AFTER_ADD_VERTEX:_0x285e[818],DONE:_0x285e[819],EXECUTE:_0x285e[350],EXECUTED:_0x285e[820],BEGIN_UPDATE:_0x285e[473],START_EDIT:_0x285e[821],END_UPDATE:_0x285e[476],END_EDIT:_0x285e[822],BEFORE_UNDO:_0x285e[823],UNDO:_0x285e[824],REDO:_0x285e[825],CHANGE:_0x285e[826],NOTIFY:_0x285e[827],LAYOUT_CELLS:_0x285e[828],CLICK:_0x285e[173],SCALE:_0x285e[255],TRANSLATE:_0x285e[513],SCALE_AND_TRANSLATE:_0x285e[829],UP:_0x285e[830],DOWN:_0x285e[831],ADD:_0x285e[99],REMOVE:_0x285e[205],CLEAR:_0x285e[200],ADD_CELLS:_0x285e[832],CELLS_ADDED:_0x285e[833],MOVE_CELLS:_0x285e[834],CELLS_MOVED:_0x285e[835],RESIZE_CELLS:_0x285e[836],CELLS_RESIZED:_0x285e[837],TOGGLE_CELLS:_0x285e[838],CELLS_TOGGLED:_0x285e[839],ORDER_CELLS:_0x285e[840],CELLS_ORDERED:_0x285e[841],REMOVE_CELLS:_0x285e[842],CELLS_REMOVED:_0x285e[843],GROUP_CELLS:_0x285e[844],UNGROUP_CELLS:_0x285e[845],REMOVE_CELLS_FROM_PARENT:_0x285e[846],FOLD_CELLS:_0x285e[847],CELLS_FOLDED:_0x285e[848],ALIGN_CELLS:_0x285e[849],LABEL_CHANGED:_0x285e[850],CONNECT_CELL:_0x285e[851],CELL_CONNECTED:_0x285e[852],SPLIT_EDGE:_0x285e[853],FLIP_EDGE:_0x285e[854],START_EDITING:_0x285e[855],ADD_OVERLAY:_0x285e[856],REMOVE_OVERLAY:_0x285e[857],UPDATE_CELL_SIZE:_0x285e[858],ESCAPE:_0x285e[859],CLICK:_0x285e[173],DOUBLE_CLICK:_0x285e[860],START:_0x285e[861],RESET:_0x285e[862]};function mxXmlRequest(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[863]]=_0x4fa0x2;this[_0x285e[864]]=_0x4fa0x3;this[_0x285e[865]]=_0x4fa0x4||_0x285e[866];this[_0x285e[307]]=null!=_0x4fa0x5?_0x4fa0x5:!0;this[_0x285e[867]]=_0x4fa0x9;this[_0x285e[868]]=_0x4fa0xa}mxXmlRequest[_0x285e[202]][_0x285e[863]]=null;mxXmlRequest[_0x285e[202]][_0x285e[864]]=null;mxXmlRequest[_0x285e[202]][_0x285e[865]]=null;mxXmlRequest[_0x285e[202]][_0x285e[307]]=null;mxXmlRequest[_0x285e[202]][_0x285e[869]]= !1;mxXmlRequest[_0x285e[202]][_0x285e[867]]=null;mxXmlRequest[_0x285e[202]][_0x285e[868]]=null;mxXmlRequest[_0x285e[202]][_0x285e[870]]=null;mxXmlRequest[_0x285e[202]][_0x285e[871]]=function(){return this[_0x285e[869]]};mxXmlRequest[_0x285e[202]][_0x285e[872]]=function(_0x4fa0x2){this[_0x285e[869]]=_0x4fa0x2};mxXmlRequest[_0x285e[202]][_0x285e[221]]=function(){return this[_0x285e[870]][_0x285e[873]]};mxXmlRequest[_0x285e[202]][_0x285e[220]]=function(){return 4==this[_0x285e[870]][_0x285e[417]]};mxXmlRequest[_0x285e[202]][_0x285e[874]]=function(){var _0x4fa0x2=this[_0x285e[875]]();return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[158]]:null};mxXmlRequest[_0x285e[202]][_0x285e[875]]=function(){var _0x4fa0x2=this[_0x285e[870]][_0x285e[876]];if(9<=document[_0x285e[5]]||null==_0x4fa0x2||null==_0x4fa0x2[_0x285e[158]]){_0x4fa0x2=mxUtils[_0x285e[877]](this[_0x285e[870]][_0x285e[873]])};return _0x4fa0x2};mxXmlRequest[_0x285e[202]][_0x285e[221]]=function(){return this[_0x285e[870]][_0x285e[873]]};mxXmlRequest[_0x285e[202]][_0x285e[878]]=function(){return this[_0x285e[870]][_0x285e[879]]};mxXmlRequest[_0x285e[202]][_0x285e[385]]=function(){if(window[_0x285e[880]]){return function(){var _0x4fa0x2= new XMLHttpRequest;this[_0x285e[871]]()&&_0x4fa0x2[_0x285e[881]]&&_0x4fa0x2[_0x285e[881]](_0x285e[882]);return _0x4fa0x2}};if(_0x285e[82]!= typeof ActiveXObject){return function(){return new ActiveXObject(_0x285e[883])}}}();mxXmlRequest[_0x285e[202]][_0x285e[414]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[870]]=this[_0x285e[385]]();null!=this[_0x285e[870]]&&(null!=_0x4fa0x2&&(this[_0x285e[870]][_0x285e[416]]=mxUtils[_0x285e[885]](this,function(){this[_0x285e[220]]()&&(_0x4fa0x2(this),this[_0x285e[884]]=null)})),this[_0x285e[870]][_0x285e[392]](this[_0x285e[865]],this[_0x285e[863]],this[_0x285e[307]],this[_0x285e[867]],this[_0x285e[868]]),this[_0x285e[886]](this[_0x285e[870]],this[_0x285e[864]]),this[_0x285e[870]][_0x285e[414]](this[_0x285e[864]]))};mxXmlRequest[_0x285e[202]][_0x285e[886]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[889]](_0x285e[887],_0x285e[888])};mxXmlRequest[_0x285e[202]][_0x285e[415]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=_0x4fa0x2||document;var _0x4fa0x4=null;_0x4fa0x2==document&&(_0x4fa0x4=window[_0x285e[890]],window[_0x285e[890]]=null);var _0x4fa0x5=_0x4fa0x2[_0x285e[55]](_0x285e[891]);_0x4fa0x5[_0x285e[57]](_0x285e[865],this[_0x285e[865]]);_0x4fa0x5[_0x285e[57]](_0x285e[892],this[_0x285e[863]]);null!=_0x4fa0x3&&_0x4fa0x5[_0x285e[57]](_0x285e[772],_0x4fa0x3);_0x4fa0x5[_0x285e[124]][_0x285e[495]]=_0x285e[130];_0x4fa0x5[_0x285e[124]][_0x285e[187]]=_0x285e[188];for(var _0x4fa0x9=0<this[_0x285e[864]][_0x285e[2]](_0x285e[893])?this[_0x285e[864]][_0x285e[224]](_0x285e[893]):this[_0x285e[864]][_0x285e[224]](),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x9[_0x4fa0xa][_0x285e[2]](_0x285e[226]);if(0<_0x4fa0x12){var _0x4fa0x13=_0x4fa0x9[_0x4fa0xa][_0x285e[85]](0,_0x4fa0x12),_0x4fa0x14=_0x4fa0x9[_0x4fa0xa][_0x285e[85]](_0x4fa0x12+1),_0x4fa0x12=_0x4fa0x2[_0x285e[55]](_0x285e[126]);_0x4fa0x12[_0x285e[57]](_0x285e[298],_0x4fa0x13);_0x4fa0x14=_0x4fa0x14[_0x285e[230]](/\n/g,_0x285e[336]);_0x4fa0x13=_0x4fa0x2[_0x285e[344]](_0x4fa0x14);_0x4fa0x12[_0x285e[62]](_0x4fa0x13);_0x4fa0x5[_0x285e[62]](_0x4fa0x12)}};_0x4fa0x2[_0x285e[112]][_0x285e[62]](_0x4fa0x5);_0x4fa0x5[_0x285e[894]]();_0x4fa0x2[_0x285e[112]][_0x285e[266]](_0x4fa0x5);null!=_0x4fa0x4&&(window[_0x285e[890]]=_0x4fa0x4)};var mxClipboard={STEPSIZE:10,insertCount:1,cells:null,isEmpty:function(){return null==mxClipboard[_0x285e[895]]},cut:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=mxClipboard[_0x285e[149]](_0x4fa0x2,_0x4fa0x3);mxClipboard[_0x285e[896]]=0;mxClipboard[_0x285e[842]](_0x4fa0x2,_0x4fa0x3);return _0x4fa0x3},removeCells:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[842]](_0x4fa0x3)},copy:function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3||_0x4fa0x2[_0x285e[897]]();var _0x4fa0x4=_0x4fa0x2[_0x285e[898]](_0x4fa0x3);mxClipboard[_0x285e[896]]=1;mxClipboard[_0x285e[895]]=_0x4fa0x2[_0x285e[899]](_0x4fa0x4);return _0x4fa0x4},paste:function(_0x4fa0x2){if(null!=mxClipboard[_0x285e[895]]){var _0x4fa0x3=_0x4fa0x2[_0x285e[900]](mxClipboard[_0x285e[895]]),_0x4fa0x4=mxClipboard[_0x285e[896]]*mxClipboard[_0x285e[901]],_0x4fa0x5=_0x4fa0x2[_0x285e[902]](),_0x4fa0x3=_0x4fa0x2[_0x285e[903]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x4,_0x4fa0x5);mxClipboard[_0x285e[896]]++;_0x4fa0x2[_0x285e[904]](_0x4fa0x3)}}};function mxWindow(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15){null!=_0x4fa0x3&&(_0x4fa0x12=null!=_0x4fa0x12?_0x4fa0x12:!0,this[_0x285e[905]]=_0x4fa0x3,this[_0x285e[176]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x15),this[_0x285e[906]](),this[_0x285e[907]](),this[_0x285e[908]](),this[_0x285e[909]](_0x4fa0x12),this[_0x285e[910]](_0x4fa0x2),(null==_0x4fa0x13||_0x4fa0x13)&&this[_0x285e[911]](),null!=_0x4fa0x14&&null!=_0x4fa0x14[_0x285e[265]]?_0x4fa0x14[_0x285e[265]][_0x285e[912]](this[_0x285e[485]],_0x4fa0x14):document[_0x285e[112]][_0x285e[62]](this[_0x285e[485]]))}mxWindow[_0x285e[202]]= new mxEventSource;mxWindow[_0x285e[202]][_0x285e[196]]=mxWindow;mxWindow[_0x285e[202]][_0x285e[913]]=mxClient[_0x285e[88]]+_0x285e[914];mxWindow[_0x285e[202]][_0x285e[915]]=mxClient[_0x285e[88]]+_0x285e[916];mxWindow[_0x285e[202]][_0x285e[917]]=mxClient[_0x285e[88]]+_0x285e[918];mxWindow[_0x285e[202]][_0x285e[919]]=mxClient[_0x285e[88]]+_0x285e[920];mxWindow[_0x285e[202]][_0x285e[921]]=mxClient[_0x285e[88]]+_0x285e[922];mxWindow[_0x285e[202]][_0x285e[189]]= !1;mxWindow[_0x285e[202]][_0x285e[905]]= !1;mxWindow[_0x285e[202]][_0x285e[923]]= new mxRectangle(0,0,50,40);mxWindow[_0x285e[202]][_0x285e[924]]= !1;mxWindow[_0x285e[202]][_0x285e[905]]= !1;mxWindow[_0x285e[202]][_0x285e[165]]= !0;mxWindow[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:_0x285e[925];this[_0x285e[485]]=document[_0x285e[55]](_0x285e[485]);this[_0x285e[485]][_0x285e[926]]=_0x4fa0x9;this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168];this[_0x285e[116]]=document[_0x285e[55]](_0x285e[116]);this[_0x285e[116]][_0x285e[926]]=_0x4fa0x9;null!=_0x4fa0x4&&(mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=_0x4fa0x4+_0x285e[168]),this[_0x285e[116]][_0x285e[124]][_0x285e[117]]=_0x4fa0x4+_0x285e[168]);null!=_0x4fa0x5&&(mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0x5+_0x285e[168]),this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=_0x4fa0x5+_0x285e[168]);_0x4fa0x2=document[_0x285e[55]](_0x285e[120]);_0x4fa0x3=document[_0x285e[55]](_0x285e[121]);this[_0x285e[924]]=document[_0x285e[55]](_0x285e[122]);this[_0x285e[924]][_0x285e[926]]=_0x4fa0x9+_0x285e[927];_0x4fa0x3[_0x285e[62]](this[_0x285e[924]]);_0x4fa0x2[_0x285e[62]](_0x4fa0x3);_0x4fa0x3=document[_0x285e[55]](_0x285e[121]);this[_0x285e[122]]=document[_0x285e[55]](_0x285e[122]);this[_0x285e[122]][_0x285e[926]]=_0x4fa0x9+_0x285e[928];this[_0x285e[929]]=document[_0x285e[55]](_0x285e[485]);this[_0x285e[929]][_0x285e[926]]=_0x4fa0x9+_0x285e[928];this[_0x285e[929]][_0x285e[124]][_0x285e[117]]=_0x285e[118];this[_0x285e[929]][_0x285e[62]](this[_0x285e[905]]);if(mxClient[_0x285e[80]]||_0x285e[529]!=this[_0x285e[905]][_0x285e[301]][_0x285e[36]]()){this[_0x285e[929]][_0x285e[124]][_0x285e[119]]=_0x285e[118]};this[_0x285e[122]][_0x285e[62]](this[_0x285e[929]]);_0x4fa0x3[_0x285e[62]](this[_0x285e[122]]);_0x4fa0x2[_0x285e[62]](_0x4fa0x3);this[_0x285e[116]][_0x285e[62]](_0x4fa0x2);this[_0x285e[485]][_0x285e[62]](this[_0x285e[116]]);_0x4fa0x9=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[790]]()});mxEvent[_0x285e[169]](this[_0x285e[924]],_0x285e[751],_0x4fa0x9);mxEvent[_0x285e[169]](this[_0x285e[116]],_0x285e[751],_0x4fa0x9);mxClient[_0x285e[754]]&&(mxEvent[_0x285e[169]](this[_0x285e[924]],_0x285e[755],_0x4fa0x9),mxEvent[_0x285e[169]](this[_0x285e[116]],_0x285e[755],_0x4fa0x9));this[_0x285e[801]]()};mxWindow[_0x285e[202]][_0x285e[910]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[924]][_0x285e[285]];null!=_0x4fa0x3;){var _0x4fa0x4=_0x4fa0x3[_0x285e[287]];_0x4fa0x3[_0x285e[288]]==mxConstants[_0x285e[317]]&&_0x4fa0x3[_0x285e[265]][_0x285e[266]](_0x4fa0x3);_0x4fa0x3=_0x4fa0x4};mxUtils[_0x285e[53]](this[_0x285e[924]],_0x4fa0x2||_0x285e[110])};mxWindow[_0x285e[202]][_0x285e[162]]=function(_0x4fa0x2){0>navigator[_0x285e[3]][_0x285e[2]](_0x285e[186])&&(this[_0x285e[929]][_0x285e[124]][_0x285e[277]]=_0x4fa0x2?_0x285e[278]:_0x285e[188])};mxWindow[_0x285e[202]][_0x285e[790]]=function(){if(mxWindow[_0x285e[930]]!=this){var _0x4fa0x2=mxUtils[_0x285e[275]](this[_0x285e[166]]()),_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2[_0x285e[931]]:3;if(mxWindow[_0x285e[930]]){var _0x4fa0x3=mxWindow[_0x285e[930]][_0x285e[166]]();null!=_0x4fa0x3&&null!=_0x4fa0x3[_0x285e[124]]&&(_0x4fa0x3[_0x285e[124]][_0x285e[931]]=_0x4fa0x2)};_0x4fa0x3=mxWindow[_0x285e[930]];this[_0x285e[166]]()[_0x285e[124]][_0x285e[931]]=parseInt(_0x4fa0x2)+1;mxWindow[_0x285e[930]]=this;this[_0x285e[746]]( new mxEventObject(mxEvent.ACTIVATE,_0x285e[932],_0x4fa0x3))}};mxWindow[_0x285e[202]][_0x285e[166]]=function(){return this[_0x285e[485]]};mxWindow[_0x285e[202]][_0x285e[933]]=function(){mxUtils[_0x285e[933]](this[_0x285e[485]])};mxWindow[_0x285e[202]][_0x285e[934]]=function(){return null!=this[_0x285e[129]]?_0x285e[130]!=this[_0x285e[129]][_0x285e[124]][_0x285e[495]]:!1};mxWindow[_0x285e[202]][_0x285e[163]]=function(_0x4fa0x2){_0x4fa0x2?null==this[_0x285e[129]]?(this[_0x285e[129]]=document[_0x285e[55]](_0x285e[466]),this[_0x285e[129]][_0x285e[124]][_0x285e[491]]=_0x285e[492],this[_0x285e[129]][_0x285e[124]][_0x285e[553]]=_0x285e[935],this[_0x285e[129]][_0x285e[124]][_0x285e[699]]=_0x285e[935],this[_0x285e[129]][_0x285e[57]](_0x285e[390],mxClient[_0x285e[88]]+_0x285e[922]),this[_0x285e[129]][_0x285e[124]][_0x285e[270]]=_0x285e[936],mxEvent[_0x285e[759]](this[_0x285e[129]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[790]]();var _0x4fa0x4=mxEvent[_0x285e[731]](_0x4fa0x2),_0x4fa0x5=mxEvent[_0x285e[733]](_0x4fa0x2),_0x4fa0x9=this[_0x285e[485]][_0x285e[359]],_0x4fa0xa=this[_0x285e[485]][_0x285e[167]],_0x4fa0x12=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){var _0x4fa0x3=mxEvent[_0x285e[731]](_0x4fa0x2)-_0x4fa0x4,_0x4fa0x12=mxEvent[_0x285e[733]](_0x4fa0x2)-_0x4fa0x5;this[_0x285e[937]](_0x4fa0x9+_0x4fa0x3,_0x4fa0xa+_0x4fa0x12);this[_0x285e[746]]( new mxEventObject(mxEvent.RESIZE,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)}),_0x4fa0x13=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){mxEvent[_0x285e[938]](document,null,_0x4fa0x12,_0x4fa0x13);this[_0x285e[746]]( new mxEventObject(mxEvent.RESIZE_END,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)});mxEvent[_0x285e[759]](document,null,_0x4fa0x12,_0x4fa0x13);this[_0x285e[746]]( new mxEventObject(mxEvent.RESIZE_START,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)}),null,null),this[_0x285e[485]][_0x285e[62]](this[_0x285e[129]])):this[_0x285e[129]][_0x285e[124]][_0x285e[495]]=_0x285e[497]:null!=this[_0x285e[129]]&&(this[_0x285e[129]][_0x285e[124]][_0x285e[495]]=_0x285e[130])};mxWindow[_0x285e[202]][_0x285e[937]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=Math[_0x285e[160]](this[_0x285e[923]][_0x285e[117]],_0x4fa0x2);_0x4fa0x3=Math[_0x285e[160]](this[_0x285e[923]][_0x285e[119]],_0x4fa0x3);mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=_0x4fa0x2+_0x285e[168],this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168]);this[_0x285e[116]][_0x285e[124]][_0x285e[117]]=_0x4fa0x2+_0x285e[168];this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168];mxClient[_0x285e[80]]||(this[_0x285e[929]][_0x285e[124]][_0x285e[119]]=this[_0x285e[485]][_0x285e[167]]-this[_0x285e[924]][_0x285e[167]]-2+_0x285e[168])};mxWindow[_0x285e[202]][_0x285e[909]]=function(_0x4fa0x2){this[_0x285e[798]][_0x285e[124]][_0x285e[495]]=_0x4fa0x2?_0x285e[110]:_0x285e[130]};mxWindow[_0x285e[202]][_0x285e[939]]=function(){return new mxRectangle(0,0,0,this[_0x285e[924]][_0x285e[167]])};mxWindow[_0x285e[202]][_0x285e[907]]=function(){this[_0x285e[798]]=document[_0x285e[55]](_0x285e[466]);this[_0x285e[798]][_0x285e[57]](_0x285e[390],this[_0x285e[915]]);this[_0x285e[798]][_0x285e[57]](_0x285e[611],_0x285e[699]);this[_0x285e[798]][_0x285e[57]](_0x285e[924],_0x285e[940]);this[_0x285e[798]][_0x285e[124]][_0x285e[270]]=_0x285e[356];this[_0x285e[798]][_0x285e[124]][_0x285e[941]]=_0x285e[942];this[_0x285e[798]][_0x285e[124]][_0x285e[495]]=_0x285e[130];this[_0x285e[924]][_0x285e[62]](this[_0x285e[798]]);var _0x4fa0x2=!1,_0x4fa0x3=null,_0x4fa0x4=null,_0x4fa0x5=mxUtils[_0x285e[885]](this,function(_0x4fa0x5){this[_0x285e[790]]();if(_0x4fa0x2){_0x4fa0x2= !1,this[_0x285e[798]][_0x285e[57]](_0x285e[390],this[_0x285e[915]]),this[_0x285e[798]][_0x285e[57]](_0x285e[924],_0x285e[940]),this[_0x285e[929]][_0x285e[124]][_0x285e[495]]=_0x285e[110],this[_0x285e[800]][_0x285e[124]][_0x285e[495]]=_0x4fa0x3,mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0x4),this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=_0x4fa0x4,null!=this[_0x285e[129]]&&(this[_0x285e[129]][_0x285e[124]][_0x285e[187]]=_0x285e[110]),this[_0x285e[746]]( new mxEventObject(mxEvent.NORMALIZE,_0x285e[763],_0x4fa0x5))}else {_0x4fa0x2= !0;this[_0x285e[798]][_0x285e[57]](_0x285e[390],this[_0x285e[917]]);this[_0x285e[798]][_0x285e[57]](_0x285e[924],_0x285e[943]);this[_0x285e[929]][_0x285e[124]][_0x285e[495]]=_0x285e[130];_0x4fa0x3=this[_0x285e[800]][_0x285e[124]][_0x285e[495]];this[_0x285e[800]][_0x285e[124]][_0x285e[495]]=_0x285e[130];_0x4fa0x4=this[_0x285e[116]][_0x285e[124]][_0x285e[119]];var _0x4fa0xa=this[_0x285e[939]]();0<_0x4fa0xa[_0x285e[119]]&&(mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0xa[_0x285e[119]]+_0x285e[168]),this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=_0x4fa0xa[_0x285e[119]]+_0x285e[168]);0<_0x4fa0xa[_0x285e[117]]&&(mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=_0x4fa0xa[_0x285e[117]]+_0x285e[168]),this[_0x285e[116]][_0x285e[124]][_0x285e[117]]=_0x4fa0xa[_0x285e[117]]+_0x285e[168]);null!=this[_0x285e[129]]&&(this[_0x285e[129]][_0x285e[124]][_0x285e[187]]=_0x285e[188]);this[_0x285e[746]]( new mxEventObject(mxEvent.MINIMIZE,_0x285e[763],_0x4fa0x5))};mxEvent[_0x285e[722]](_0x4fa0x5)});mxEvent[_0x285e[169]](this[_0x285e[798]],_0x285e[751],_0x4fa0x5);mxClient[_0x285e[754]]&&mxEvent[_0x285e[169]](this[_0x285e[798]],_0x285e[755],_0x4fa0x5)};mxWindow[_0x285e[202]][_0x285e[161]]=function(_0x4fa0x2){this[_0x285e[800]][_0x285e[124]][_0x285e[495]]=_0x4fa0x2?_0x285e[110]:_0x285e[130]};mxWindow[_0x285e[202]][_0x285e[906]]=function(){this[_0x285e[800]]=document[_0x285e[55]](_0x285e[466]);this[_0x285e[800]][_0x285e[57]](_0x285e[390],this[_0x285e[919]]);this[_0x285e[800]][_0x285e[57]](_0x285e[611],_0x285e[699]);this[_0x285e[800]][_0x285e[57]](_0x285e[924],_0x285e[944]);this[_0x285e[800]][_0x285e[124]][_0x285e[270]]=_0x285e[583];this[_0x285e[800]][_0x285e[124]][_0x285e[945]]=_0x285e[942];this[_0x285e[800]][_0x285e[124]][_0x285e[270]]=_0x285e[356];this[_0x285e[800]][_0x285e[124]][_0x285e[495]]=_0x285e[130];this[_0x285e[924]][_0x285e[62]](this[_0x285e[800]]);var _0x4fa0x2=!1,_0x4fa0x3=null,_0x4fa0x4=null,_0x4fa0x5=null,_0x4fa0x9=null,_0x4fa0xa=mxUtils[_0x285e[885]](this,function(_0x4fa0xa){this[_0x285e[790]]();if(_0x285e[130]!=this[_0x285e[800]][_0x285e[124]][_0x285e[495]]){if(_0x4fa0x2){_0x4fa0x2= !1;this[_0x285e[800]][_0x285e[57]](_0x285e[390],this[_0x285e[919]]);this[_0x285e[800]][_0x285e[57]](_0x285e[924],_0x285e[944]);this[_0x285e[929]][_0x285e[124]][_0x285e[495]]=_0x285e[110];this[_0x285e[798]][_0x285e[124]][_0x285e[187]]=_0x285e[110];this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x3+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x4+_0x285e[168];if(!mxClient[_0x285e[80]]&&(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0x5,this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=_0x4fa0x9,_0x4fa0x13=mxUtils[_0x285e[275]](this[_0x285e[929]]),_0x285e[278]==_0x4fa0x13[_0x285e[277]]||null!=this[_0x285e[129]])){this[_0x285e[929]][_0x285e[124]][_0x285e[119]]=this[_0x285e[485]][_0x285e[167]]-this[_0x285e[924]][_0x285e[167]]-2+_0x285e[168]};this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=_0x4fa0x5;this[_0x285e[116]][_0x285e[124]][_0x285e[117]]=_0x4fa0x9;null!=this[_0x285e[129]]&&(this[_0x285e[129]][_0x285e[124]][_0x285e[187]]=_0x285e[110]);this[_0x285e[746]]( new mxEventObject(mxEvent.NORMALIZE,_0x285e[763],_0x4fa0xa))}else {_0x4fa0x2= !0;this[_0x285e[800]][_0x285e[57]](_0x285e[390],this[_0x285e[917]]);this[_0x285e[800]][_0x285e[57]](_0x285e[924],_0x285e[943]);this[_0x285e[929]][_0x285e[124]][_0x285e[495]]=_0x285e[110];this[_0x285e[798]][_0x285e[124]][_0x285e[187]]=_0x285e[188];_0x4fa0x3=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[361]]);_0x4fa0x4=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[125]]);_0x4fa0x5=this[_0x285e[116]][_0x285e[124]][_0x285e[119]];_0x4fa0x9=this[_0x285e[116]][_0x285e[124]][_0x285e[117]];this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x285e[946];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x285e[946];mxClient[_0x285e[80]]||(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=document[_0x285e[112]][_0x285e[157]]-2+_0x285e[168],this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=document[_0x285e[112]][_0x285e[159]]-2+_0x285e[168]);this[_0x285e[116]][_0x285e[124]][_0x285e[117]]=document[_0x285e[112]][_0x285e[159]]-2+_0x285e[168];this[_0x285e[116]][_0x285e[124]][_0x285e[119]]=document[_0x285e[112]][_0x285e[157]]-2+_0x285e[168];null!=this[_0x285e[129]]&&(this[_0x285e[129]][_0x285e[124]][_0x285e[187]]=_0x285e[188]);if(!mxClient[_0x285e[80]]){var _0x4fa0x13=mxUtils[_0x285e[275]](this[_0x285e[929]]);if(_0x285e[278]==_0x4fa0x13[_0x285e[277]]||null!=this[_0x285e[129]]){this[_0x285e[929]][_0x285e[124]][_0x285e[119]]=this[_0x285e[485]][_0x285e[167]]-this[_0x285e[924]][_0x285e[167]]-2+_0x285e[168]}};this[_0x285e[746]]( new mxEventObject(mxEvent.MAXIMIZE,_0x285e[763],_0x4fa0xa))};mxEvent[_0x285e[722]](_0x4fa0xa)}});mxEvent[_0x285e[759]](this[_0x285e[800]],_0x4fa0xa);mxEvent[_0x285e[169]](this[_0x285e[924]],_0x285e[760],_0x4fa0xa)};mxWindow[_0x285e[202]][_0x285e[911]]=function(){this[_0x285e[924]][_0x285e[124]][_0x285e[270]]=_0x285e[582];mxEvent[_0x285e[759]](this[_0x285e[924]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){var _0x4fa0x3=mxEvent[_0x285e[731]](_0x4fa0x2),_0x4fa0x4=mxEvent[_0x285e[733]](_0x4fa0x2),_0x4fa0x5=this[_0x285e[730]](),_0x4fa0x9=this[_0x285e[732]](),_0x4fa0xa=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){var _0x4fa0xa=mxEvent[_0x285e[731]](_0x4fa0x2)-_0x4fa0x3,_0x4fa0x12=mxEvent[_0x285e[733]](_0x4fa0x2)-_0x4fa0x4;this[_0x285e[947]](_0x4fa0x5+_0x4fa0xa,_0x4fa0x9+_0x4fa0x12);this[_0x285e[746]]( new mxEventObject(mxEvent.MOVE,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)}),_0x4fa0x12=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){mxEvent[_0x285e[938]](document,null,_0x4fa0xa,_0x4fa0x12);this[_0x285e[746]]( new mxEventObject(mxEvent.MOVE_END,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)});mxEvent[_0x285e[759]](document,null,_0x4fa0xa,_0x4fa0x12);this[_0x285e[746]]( new mxEventObject(mxEvent.MOVE_START,_0x285e[763],_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x2)}))};mxWindow[_0x285e[202]][_0x285e[947]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168]};mxWindow[_0x285e[202]][_0x285e[730]]=function(){return parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[361]])};mxWindow[_0x285e[202]][_0x285e[732]]=function(){return parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[125]])};mxWindow[_0x285e[202]][_0x285e[908]]=function(){this[_0x285e[948]]=document[_0x285e[55]](_0x285e[466]);this[_0x285e[948]][_0x285e[57]](_0x285e[390],this[_0x285e[913]]);this[_0x285e[948]][_0x285e[57]](_0x285e[611],_0x285e[699]);this[_0x285e[948]][_0x285e[57]](_0x285e[924],_0x285e[949]);this[_0x285e[948]][_0x285e[124]][_0x285e[945]]=_0x285e[935];this[_0x285e[948]][_0x285e[124]][_0x285e[270]]=_0x285e[356];this[_0x285e[948]][_0x285e[124]][_0x285e[495]]=_0x285e[130];this[_0x285e[924]][_0x285e[950]](this[_0x285e[948]],this[_0x285e[924]][_0x285e[285]]);mxEvent[_0x285e[759]](this[_0x285e[948]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[746]]( new mxEventObject(mxEvent.CLOSE,_0x285e[763],_0x4fa0x2));this[_0x285e[165]]?this[_0x285e[515]]():this[_0x285e[175]](!1);mxEvent[_0x285e[722]](_0x4fa0x2)}))};mxWindow[_0x285e[202]][_0x285e[951]]=function(_0x4fa0x2){this[_0x285e[618]]=document[_0x285e[55]](_0x285e[466]);this[_0x285e[618]][_0x285e[57]](_0x285e[390],_0x4fa0x2);this[_0x285e[618]][_0x285e[57]](_0x285e[611],_0x285e[361]);this[_0x285e[618]][_0x285e[124]][_0x285e[941]]=_0x285e[952];this[_0x285e[618]][_0x285e[124]][_0x285e[945]]=_0x285e[946];this[_0x285e[618]][_0x285e[124]][_0x285e[953]]=_0x285e[954];this[_0x285e[924]][_0x285e[950]](this[_0x285e[618]],this[_0x285e[924]][_0x285e[285]])};mxWindow[_0x285e[202]][_0x285e[164]]=function(_0x4fa0x2){this[_0x285e[948]][_0x285e[124]][_0x285e[495]]=_0x4fa0x2?_0x285e[110]:_0x285e[130]};mxWindow[_0x285e[202]][_0x285e[174]]=function(){return null!=this[_0x285e[485]]?_0x285e[188]!=this[_0x285e[485]][_0x285e[124]][_0x285e[187]]:!1};mxWindow[_0x285e[202]][_0x285e[175]]=function(_0x4fa0x2){null!=this[_0x285e[485]]&&this[_0x285e[174]]()!=_0x4fa0x2&&(_0x4fa0x2?this[_0x285e[539]]():this[_0x285e[801]]())};mxWindow[_0x285e[202]][_0x285e[539]]=function(){this[_0x285e[485]][_0x285e[124]][_0x285e[187]]=_0x285e[110];this[_0x285e[790]]();var _0x4fa0x2=mxUtils[_0x285e[275]](this[_0x285e[929]]);if(!mxClient[_0x285e[80]]&&(_0x285e[278]==_0x4fa0x2[_0x285e[277]]||null!=this[_0x285e[129]])){this[_0x285e[929]][_0x285e[124]][_0x285e[119]]=this[_0x285e[485]][_0x285e[167]]-this[_0x285e[924]][_0x285e[167]]-2+_0x285e[168]};this[_0x285e[746]]( new mxEventObject(mxEvent.SHOW))};mxWindow[_0x285e[202]][_0x285e[801]]=function(){this[_0x285e[485]][_0x285e[124]][_0x285e[187]]=_0x285e[188];this[_0x285e[746]]( new mxEventObject(mxEvent.HIDE))};mxWindow[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[746]]( new mxEventObject(mxEvent.DESTROY));null!=this[_0x285e[485]]&&(mxEvent[_0x285e[762]](this[_0x285e[485]]),this[_0x285e[485]][_0x285e[265]][_0x285e[266]](this[_0x285e[485]]),this[_0x285e[485]]=null);this[_0x285e[929]]=this[_0x285e[905]]=this[_0x285e[924]]=null};function mxForm(_0x4fa0x2){this[_0x285e[116]]=document[_0x285e[55]](_0x285e[116]);this[_0x285e[116]][_0x285e[926]]=_0x4fa0x2;this[_0x285e[112]]=document[_0x285e[55]](_0x285e[120]);this[_0x285e[116]][_0x285e[62]](this[_0x285e[112]])}mxForm[_0x285e[202]][_0x285e[116]]=null;mxForm[_0x285e[202]][_0x285e[112]]= !1;mxForm[_0x285e[202]][_0x285e[955]]=function(){return this[_0x285e[116]]};mxForm[_0x285e[202]][_0x285e[956]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[121]),_0x4fa0x5=document[_0x285e[55]](_0x285e[122]);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);var _0x4fa0x5=document[_0x285e[55]](_0x285e[122]),_0x4fa0x9=document[_0x285e[55]](_0x285e[172]);mxUtils[_0x285e[53]](_0x4fa0x9,mxResources[_0x285e[203]](_0x285e[957])||_0x285e[958]);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);mxEvent[_0x285e[169]](_0x4fa0x9,_0x285e[173],function(){_0x4fa0x2()});_0x4fa0x9=document[_0x285e[55]](_0x285e[172]);mxUtils[_0x285e[53]](_0x4fa0x9,mxResources[_0x285e[203]](_0x285e[959])||_0x285e[960]);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);mxEvent[_0x285e[169]](_0x4fa0x9,_0x285e[173],function(){_0x4fa0x3()});_0x4fa0x4[_0x285e[62]](_0x4fa0x5);this[_0x285e[112]][_0x285e[62]](_0x4fa0x4)};mxForm[_0x285e[202]][_0x285e[961]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[962]);_0x4fa0x4[_0x285e[57]](_0x285e[60],_0x285e[963]);_0x4fa0x4[_0x285e[131]]=_0x4fa0x3;return this[_0x285e[964]](_0x4fa0x2,_0x4fa0x4)};mxForm[_0x285e[202]][_0x285e[965]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[962]);_0x4fa0x4[_0x285e[57]](_0x285e[60],_0x285e[966]);this[_0x285e[964]](_0x4fa0x2,_0x4fa0x4);_0x4fa0x3&&(_0x4fa0x4[_0x285e[967]]= !0);return _0x4fa0x4};mxForm[_0x285e[202]][_0x285e[968]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=document[_0x285e[55]](_0x285e[126]);mxClient[_0x285e[133]]&&_0x4fa0x4--;_0x4fa0x5[_0x285e[57]](_0x285e[969],_0x4fa0x4||2);_0x4fa0x5[_0x285e[131]]=_0x4fa0x3;return this[_0x285e[964]](_0x4fa0x2,_0x4fa0x5)};mxForm[_0x285e[202]][_0x285e[970]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=document[_0x285e[55]](_0x285e[804]);null!=_0x4fa0x4&&_0x4fa0x5[_0x285e[57]](_0x285e[803],_0x4fa0x4);_0x4fa0x3&&_0x4fa0x5[_0x285e[57]](_0x285e[971],_0x285e[128]);return this[_0x285e[964]](_0x4fa0x2,_0x4fa0x5)};mxForm[_0x285e[202]][_0x285e[972]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=document[_0x285e[55]](_0x285e[973]);mxUtils[_0x285e[171]](_0x4fa0x9,_0x4fa0x3);_0x4fa0x9[_0x285e[57]](_0x285e[131],_0x4fa0x4);_0x4fa0x5&&_0x4fa0x9[_0x285e[57]](_0x285e[974],_0x4fa0x5);_0x4fa0x2[_0x285e[62]](_0x4fa0x9)};mxForm[_0x285e[202]][_0x285e[964]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[121]),_0x4fa0x5=document[_0x285e[55]](_0x285e[122]);mxUtils[_0x285e[53]](_0x4fa0x5,_0x4fa0x2);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x5=document[_0x285e[55]](_0x285e[122]);_0x4fa0x5[_0x285e[62]](_0x4fa0x3);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);this[_0x285e[112]][_0x285e[62]](_0x4fa0x4);return _0x4fa0x3};function mxImage(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[390]]=_0x4fa0x2;this[_0x285e[117]]=_0x4fa0x3;this[_0x285e[119]]=_0x4fa0x4}mxImage[_0x285e[202]][_0x285e[390]]=null;mxImage[_0x285e[202]][_0x285e[117]]=null;mxImage[_0x285e[202]][_0x285e[119]]=null;function mxDivResizer(_0x4fa0x2,_0x4fa0x3){if(_0x285e[485]==_0x4fa0x2[_0x285e[301]][_0x285e[216]]()){null==_0x4fa0x3&&(_0x4fa0x3=window);this[_0x285e[485]]=_0x4fa0x2;var _0x4fa0x4=mxUtils[_0x285e[275]](_0x4fa0x2);null!=_0x4fa0x4&&(this[_0x285e[975]]=_0x285e[278]==_0x4fa0x4[_0x285e[117]],this[_0x285e[976]]=_0x285e[278]==_0x4fa0x4[_0x285e[119]]);mxEvent[_0x285e[169]](_0x4fa0x3,_0x285e[129],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[977]]||(this[_0x285e[977]]= !0,this[_0x285e[129]](),this[_0x285e[977]]= !1)}));this[_0x285e[129]]()}}mxDivResizer[_0x285e[202]][_0x285e[975]]= !0;mxDivResizer[_0x285e[202]][_0x285e[976]]= !0;mxDivResizer[_0x285e[202]][_0x285e[977]]= !1;mxDivResizer[_0x285e[202]][_0x285e[129]]=function(){var _0x4fa0x2=this[_0x285e[978]](),_0x4fa0x3=this[_0x285e[979]](),_0x4fa0x4=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[361]]),_0x4fa0x5=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[699]]),_0x4fa0x9=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[125]]),_0x4fa0xa=parseInt(this[_0x285e[485]][_0x285e[124]][_0x285e[553]]);this[_0x285e[975]]&&(!isNaN(_0x4fa0x4)&&!isNaN(_0x4fa0x5)&&0<=_0x4fa0x4&&0<=_0x4fa0x5&&0<_0x4fa0x2-_0x4fa0x5-_0x4fa0x4)&&(this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=_0x4fa0x2-_0x4fa0x5-_0x4fa0x4+_0x285e[168]);this[_0x285e[976]]&&(!isNaN(_0x4fa0x9)&&!isNaN(_0x4fa0xa)&&0<=_0x4fa0x9&&0<=_0x4fa0xa&&0<_0x4fa0x3-_0x4fa0x9-_0x4fa0xa)&&(this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=_0x4fa0x3-_0x4fa0x9-_0x4fa0xa+_0x285e[168])};mxDivResizer[_0x285e[202]][_0x285e[978]]=function(){return document[_0x285e[112]][_0x285e[159]]};mxDivResizer[_0x285e[202]][_0x285e[979]]=function(){return document[_0x285e[112]][_0x285e[157]]};function mxDragSource(_0x4fa0x2,_0x4fa0x3){this[_0x285e[980]]=_0x4fa0x2;this[_0x285e[981]]=_0x4fa0x3;mxEvent[_0x285e[759]](_0x4fa0x2,mxUtils[_0x285e[885]](this,this[_0x285e[787]]))}mxDragSource[_0x285e[202]][_0x285e[980]]=null;mxDragSource[_0x285e[202]][_0x285e[981]]=null;mxDragSource[_0x285e[202]][_0x285e[559]]=null;mxDragSource[_0x285e[202]][_0x285e[982]]=null;mxDragSource[_0x285e[202]][_0x285e[983]]=null;mxDragSource[_0x285e[202]][_0x285e[984]]= !0;mxDragSource[_0x285e[202]][_0x285e[985]]=null;mxDragSource[_0x285e[202]][_0x285e[986]]=null;mxDragSource[_0x285e[202]][_0x285e[987]]=null;mxDragSource[_0x285e[202]][_0x285e[988]]=null;mxDragSource[_0x285e[202]][_0x285e[989]]=null;mxDragSource[_0x285e[202]][_0x285e[561]]= !0;mxDragSource[_0x285e[202]][_0x285e[990]]= !0;mxDragSource[_0x285e[202]][_0x285e[991]]= !0;mxDragSource[_0x285e[202]][_0x285e[563]]= !0;mxDragSource[_0x285e[202]][_0x285e[992]]=100;mxDragSource[_0x285e[202]][_0x285e[993]]=70;mxDragSource[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxDragSource[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxDragSource[_0x285e[202]][_0x285e[996]]=function(){return this[_0x285e[990]]};mxDragSource[_0x285e[202]][_0x285e[562]]=function(_0x4fa0x2){this[_0x285e[990]]=_0x4fa0x2};mxDragSource[_0x285e[202]][_0x285e[997]]=function(){return this[_0x285e[991]]};mxDragSource[_0x285e[202]][_0x285e[998]]=function(_0x4fa0x2){this[_0x285e[991]]=_0x4fa0x2};mxDragSource[_0x285e[202]][_0x285e[565]]=function(_0x4fa0x2){return null};mxDragSource[_0x285e[202]][_0x285e[564]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x2[_0x285e[999]](_0x4fa0x3,_0x4fa0x4)};mxDragSource[_0x285e[202]][_0x285e[566]]=function(_0x4fa0x2){return this[_0x285e[980]][_0x285e[511]](!0)};mxDragSource[_0x285e[202]][_0x285e[567]]=function(_0x4fa0x2){return null};mxDragSource[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2){this[_0x285e[984]]&&(!mxEvent[_0x285e[721]](_0x4fa0x2)&&null==this[_0x285e[1000]])&&(this[_0x285e[1001]](_0x4fa0x2),this[_0x285e[1000]]=mxUtils[_0x285e[885]](this,this[_0x285e[788]]),this[_0x285e[1002]]=mxUtils[_0x285e[885]](this,this[_0x285e[789]]),mxEvent[_0x285e[759]](document,null,this[_0x285e[1000]],this[_0x285e[1002]]),mxEvent[_0x285e[722]](_0x4fa0x2,!0,!1))};mxDragSource[_0x285e[202]][_0x285e[1001]]=function(_0x4fa0x2){this[_0x285e[982]]=this[_0x285e[566]](_0x4fa0x2);this[_0x285e[982]][_0x285e[124]][_0x285e[491]]=_0x285e[492];this[_0x285e[982]][_0x285e[124]][_0x285e[931]]=this[_0x285e[992]];mxUtils[_0x285e[254]](this[_0x285e[982]],this[_0x285e[993]])};mxDragSource[_0x285e[202]][_0x285e[1003]]=function(_0x4fa0x2){null!=this[_0x285e[982]]&&(null!=this[_0x285e[982]][_0x285e[265]]&&this[_0x285e[982]][_0x285e[265]][_0x285e[266]](this[_0x285e[982]]),this[_0x285e[982]]=null)};mxDragSource[_0x285e[202]][_0x285e[1004]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxEvent[_0x285e[731]](_0x4fa0x3),_0x4fa0x5=mxEvent[_0x285e[733]](_0x4fa0x3),_0x4fa0x9=mxUtils[_0x285e[445]](_0x4fa0x2[_0x285e[526]]),_0x4fa0xa=mxUtils[_0x285e[444]]();return _0x4fa0x4>=_0x4fa0x9[_0x285e[235]]-_0x4fa0xa[_0x285e[235]]&&_0x4fa0x5>=_0x4fa0x9[_0x285e[236]]-_0x4fa0xa[_0x285e[236]]&&_0x4fa0x4<=_0x4fa0x9[_0x285e[235]]-_0x4fa0xa[_0x285e[235]]+_0x4fa0x2[_0x285e[526]][_0x285e[359]]&&_0x4fa0x5<=_0x4fa0x9[_0x285e[236]]-_0x4fa0xa[_0x285e[236]]+_0x4fa0x2[_0x285e[526]][_0x285e[167]]};mxDragSource[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[565]](_0x4fa0x2);null!=_0x4fa0x3&&!this[_0x285e[1004]](_0x4fa0x3,_0x4fa0x2)&&(_0x4fa0x3=null);_0x4fa0x3!=this[_0x285e[985]]&&(null!=this[_0x285e[985]]&&this[_0x285e[1005]](this[_0x285e[985]]),this[_0x285e[985]]=_0x4fa0x3,null!=this[_0x285e[985]]&&this[_0x285e[1006]](this[_0x285e[985]]));null!=this[_0x285e[985]]&&this[_0x285e[1007]](this[_0x285e[985]],_0x4fa0x2);if(null!=this[_0x285e[982]]&&(null==this[_0x285e[983]]||_0x285e[189]!=this[_0x285e[983]][_0x285e[124]][_0x285e[187]])){var _0x4fa0x3=mxEvent[_0x285e[731]](_0x4fa0x2),_0x4fa0x4=mxEvent[_0x285e[733]](_0x4fa0x2);null==this[_0x285e[982]][_0x285e[265]]&&document[_0x285e[112]][_0x285e[62]](this[_0x285e[982]]);this[_0x285e[982]][_0x285e[124]][_0x285e[187]]=_0x285e[189];null!=this[_0x285e[559]]&&(_0x4fa0x3+=this[_0x285e[559]][_0x285e[235]],_0x4fa0x4+=this[_0x285e[559]][_0x285e[236]]);_0x4fa0x3+=document[_0x285e[112]][_0x285e[360]]||document[_0x285e[158]][_0x285e[360]];_0x4fa0x4+=document[_0x285e[112]][_0x285e[190]]||document[_0x285e[158]][_0x285e[190]];this[_0x285e[982]][_0x285e[124]][_0x285e[361]]=_0x4fa0x3+_0x285e[168];this[_0x285e[982]][_0x285e[124]][_0x285e[125]]=_0x4fa0x4+_0x285e[168]}else {null!=this[_0x285e[982]]&&(this[_0x285e[982]][_0x285e[124]][_0x285e[187]]=_0x285e[188])};mxEvent[_0x285e[722]](_0x4fa0x2)};mxDragSource[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2){if(null!=this[_0x285e[985]]){if(null!=this[_0x285e[987]]&&(null==this[_0x285e[983]]||_0x285e[188]!=this[_0x285e[983]][_0x285e[124]][_0x285e[187]])){var _0x4fa0x3=this[_0x285e[985]][_0x285e[441]][_0x285e[255]],_0x4fa0x4=this[_0x285e[985]][_0x285e[441]][_0x285e[513]];this[_0x285e[1008]](this[_0x285e[985]],_0x4fa0x2,this[_0x285e[986]],this[_0x285e[987]][_0x285e[235]]/_0x4fa0x3-_0x4fa0x4[_0x285e[235]],this[_0x285e[987]][_0x285e[236]]/_0x4fa0x3-_0x4fa0x4[_0x285e[236]])};this[_0x285e[1005]](this[_0x285e[985]])};this[_0x285e[1003]](_0x4fa0x2);mxEvent[_0x285e[938]](document,null,this[_0x285e[1000]],this[_0x285e[1002]]);this[_0x285e[985]]=this[_0x285e[1002]]=this[_0x285e[1000]]=null;mxEvent[_0x285e[722]](_0x4fa0x2)};mxDragSource[_0x285e[202]][_0x285e[1006]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[1009]]= !0;this[_0x285e[983]]=this[_0x285e[567]](_0x4fa0x2);this[_0x285e[996]]()&&null!=this[_0x285e[983]]&&(this[_0x285e[988]]= new mxGuide(_0x4fa0x2,_0x4fa0x2[_0x285e[1011]][_0x285e[1010]]()));this[_0x285e[563]]&&(this[_0x285e[989]]= new mxCellHighlight(_0x4fa0x2,mxConstants.DROP_TARGET_COLOR))};mxDragSource[_0x285e[202]][_0x285e[1005]]=function(_0x4fa0x2){this[_0x285e[987]]=this[_0x285e[986]]=null;_0x4fa0x2[_0x285e[1009]]= !1;null!=this[_0x285e[983]]&&(null!=this[_0x285e[983]][_0x285e[265]]&&this[_0x285e[983]][_0x285e[265]][_0x285e[266]](this[_0x285e[983]]),this[_0x285e[983]]=null);null!=this[_0x285e[988]]&&(this[_0x285e[988]][_0x285e[515]](),this[_0x285e[988]]=null);null!=this[_0x285e[989]]&&(this[_0x285e[989]][_0x285e[515]](),this[_0x285e[989]]=null)};mxDragSource[_0x285e[202]][_0x285e[1007]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxUtils[_0x285e[445]](_0x4fa0x2[_0x285e[526]]),_0x4fa0x5=mxUtils[_0x285e[444]](_0x4fa0x2[_0x285e[526]]),_0x4fa0x9=mxEvent[_0x285e[731]](_0x4fa0x3)-_0x4fa0x4[_0x285e[235]]+_0x4fa0x5[_0x285e[235]],_0x4fa0x4=mxEvent[_0x285e[733]](_0x4fa0x3)-_0x4fa0x4[_0x285e[236]]+_0x4fa0x5[_0x285e[236]];_0x4fa0x2[_0x285e[1012]]&&(null==this[_0x285e[561]]||this[_0x285e[561]])&&_0x4fa0x2[_0x285e[1014]](_0x4fa0x9,_0x4fa0x4,_0x4fa0x2[_0x285e[1013]]);null!=this[_0x285e[989]]&&_0x4fa0x2[_0x285e[1015]]()&&(this[_0x285e[986]]=this[_0x285e[564]](_0x4fa0x2,_0x4fa0x9,_0x4fa0x4),_0x4fa0x5=_0x4fa0x2[_0x285e[249]]()[_0x285e[248]](this[_0x285e[986]]),this[_0x285e[989]][_0x285e[1016]](_0x4fa0x5));if(null!=this[_0x285e[983]]){null==this[_0x285e[983]][_0x285e[265]]&&(_0x4fa0x2[_0x285e[526]][_0x285e[62]](this[_0x285e[983]]),this[_0x285e[983]][_0x285e[124]][_0x285e[931]]=_0x285e[1017],this[_0x285e[983]][_0x285e[124]][_0x285e[491]]=_0x285e[492]);var _0x4fa0x5=this[_0x285e[997]]()&&_0x4fa0x2[_0x285e[1018]](_0x4fa0x3),_0x4fa0xa=!0;if(null!=this[_0x285e[988]]&&this[_0x285e[988]][_0x285e[1019]](_0x4fa0x3)){var _0x4fa0xa=parseInt(this[_0x285e[983]][_0x285e[124]][_0x285e[117]]),_0x4fa0x12=parseInt(this[_0x285e[983]][_0x285e[124]][_0x285e[119]]),_0x4fa0xa= new mxRectangle(0,0,_0x4fa0xa,_0x4fa0x12),_0x4fa0x4= new mxPoint(_0x4fa0x9,_0x4fa0x4),_0x4fa0x4=this[_0x285e[988]][_0x285e[582]](_0x4fa0xa,_0x4fa0x4,_0x4fa0x5),_0x4fa0xa=!1,_0x4fa0x9=_0x4fa0x4[_0x285e[235]],_0x4fa0x4=_0x4fa0x4[_0x285e[236]]}else {if(_0x4fa0x5){var _0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x12=_0x4fa0x2[_0x285e[441]][_0x285e[513]],_0x4fa0x13=_0x4fa0x2[_0x285e[1020]]/2,_0x4fa0x9=(_0x4fa0x2[_0x285e[1021]](_0x4fa0x9/_0x4fa0x5-_0x4fa0x12[_0x285e[235]]-_0x4fa0x13)+_0x4fa0x12[_0x285e[235]])*_0x4fa0x5,_0x4fa0x4=(_0x4fa0x2[_0x285e[1021]](_0x4fa0x4/_0x4fa0x5-_0x4fa0x12[_0x285e[236]]-_0x4fa0x13)+_0x4fa0x12[_0x285e[236]])*_0x4fa0x5}};null!=this[_0x285e[988]]&&_0x4fa0xa&&this[_0x285e[988]][_0x285e[801]]();null!=this[_0x285e[1022]]&&(_0x4fa0x9+=this[_0x285e[1022]][_0x285e[235]],_0x4fa0x4+=this[_0x285e[1022]][_0x285e[236]]);this[_0x285e[983]][_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](_0x4fa0x9)+_0x285e[168];this[_0x285e[983]][_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](_0x4fa0x4)+_0x285e[168];this[_0x285e[983]][_0x285e[124]][_0x285e[187]]=_0x285e[189]};this[_0x285e[987]]= new mxPoint(_0x4fa0x9,_0x4fa0x4)};mxDragSource[_0x285e[202]][_0x285e[1008]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){this[_0x285e[981]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[526]][_0x285e[393]]()};function mxToolbar(_0x4fa0x2){this[_0x285e[526]]=_0x4fa0x2}mxToolbar[_0x285e[202]]= new mxEventSource;mxToolbar[_0x285e[202]][_0x285e[196]]=mxToolbar;mxToolbar[_0x285e[202]][_0x285e[526]]=null;mxToolbar[_0x285e[202]][_0x285e[984]]= !0;mxToolbar[_0x285e[202]][_0x285e[1023]]= !1;mxToolbar[_0x285e[202]][_0x285e[1024]]= !0;mxToolbar[_0x285e[202]][_0x285e[1025]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=document[_0x285e[55]](null!=_0x4fa0x3?_0x285e[466]:_0x285e[172]),_0x4fa0x13=_0x4fa0x9||(null!=_0x4fa0xa?_0x285e[1026]:_0x285e[1027]);_0x4fa0x12[_0x285e[926]]=_0x4fa0x13;_0x4fa0x12[_0x285e[57]](_0x285e[390],_0x4fa0x3);null!=_0x4fa0x2&&(null!=_0x4fa0x3?_0x4fa0x12[_0x285e[57]](_0x285e[924],_0x4fa0x2):mxUtils[_0x285e[53]](_0x4fa0x12,_0x4fa0x2));this[_0x285e[526]][_0x285e[62]](_0x4fa0x12);null!=_0x4fa0x4&&(mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[173],_0x4fa0x4),mxClient[_0x285e[754]]&&mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[757],_0x4fa0x4));_0x4fa0x2=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){null!=_0x4fa0x5?_0x4fa0x12[_0x285e[57]](_0x285e[390],_0x4fa0x3):_0x4fa0x12[_0x285e[124]][_0x285e[1028]]=_0x285e[110]});mxEvent[_0x285e[759]](_0x4fa0x12,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){null!=_0x4fa0x5?_0x4fa0x12[_0x285e[57]](_0x285e[390],_0x4fa0x5):_0x4fa0x12[_0x285e[124]][_0x285e[1028]]=_0x285e[579];if(null!=_0x4fa0xa){null==this[_0x285e[1029]]&&(this[_0x285e[1029]]= new mxPopupMenu,this[_0x285e[1029]][_0x285e[176]]());var _0x4fa0x3=this[_0x285e[1030]];this[_0x285e[1029]][_0x285e[1031]]()&&this[_0x285e[1029]][_0x285e[1032]]();_0x4fa0x3!=_0x4fa0x12&&(this[_0x285e[1030]]=_0x4fa0x12,this[_0x285e[1029]][_0x285e[1033]]=_0x4fa0xa,_0x4fa0x3= new mxPoint(_0x4fa0x12[_0x285e[358]],_0x4fa0x12[_0x285e[362]]+_0x4fa0x12[_0x285e[167]]),this[_0x285e[1029]][_0x285e[152]](_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],null,_0x4fa0x2),this[_0x285e[1029]][_0x285e[1031]]()&&(_0x4fa0x12[_0x285e[926]]=_0x4fa0x13+_0x285e[1034],this[_0x285e[1029]][_0x285e[1032]]=function(){mxPopupMenu[_0x285e[202]][_0x285e[1032]][_0x285e[183]](this);_0x4fa0x12[_0x285e[926]]=_0x4fa0x13;this[_0x285e[1030]]=null}))}}),null,_0x4fa0x2);mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[1035],_0x4fa0x2);return _0x4fa0x12};mxToolbar[_0x285e[202]][_0x285e[970]]=function(_0x4fa0x2){var _0x4fa0x3=document[_0x285e[55]](_0x285e[485]);_0x4fa0x3[_0x285e[124]][_0x285e[495]]=_0x285e[497];_0x4fa0x3[_0x285e[926]]=_0x285e[1036];var _0x4fa0x4=document[_0x285e[55]](_0x285e[804]);_0x4fa0x4[_0x285e[926]]=_0x4fa0x2||_0x285e[1037];_0x4fa0x3[_0x285e[62]](_0x4fa0x4);this[_0x285e[526]][_0x285e[62]](_0x4fa0x3);return _0x4fa0x4};mxToolbar[_0x285e[202]][_0x285e[1038]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[804]);_0x4fa0x4[_0x285e[926]]=_0x4fa0x3||_0x285e[1037];this[_0x285e[972]](_0x4fa0x4,_0x4fa0x2,null);mxEvent[_0x285e[169]](_0x4fa0x4,_0x285e[826],function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x4[_0x285e[1040]][_0x4fa0x4[_0x285e[1039]]];_0x4fa0x4[_0x285e[1039]]=0;null!=_0x4fa0x3[_0x285e[1041]]&&_0x4fa0x3[_0x285e[1041]](_0x4fa0x2)});this[_0x285e[526]][_0x285e[62]](_0x4fa0x4);return _0x4fa0x4};mxToolbar[_0x285e[202]][_0x285e[972]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=document[_0x285e[55]](_0x285e[973]);mxUtils[_0x285e[171]](_0x4fa0x5,_0x4fa0x3);_0x285e[279]== typeof _0x4fa0x4?_0x4fa0x5[_0x285e[1041]]=_0x4fa0x4:_0x4fa0x5[_0x285e[57]](_0x285e[131],_0x4fa0x4);_0x4fa0x2[_0x285e[62]](_0x4fa0x5);return _0x4fa0x5};mxToolbar[_0x285e[202]][_0x285e[1042]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=document[_0x285e[55]](_0x285e[466]);_0x4fa0xa[_0x285e[1043]]=_0x4fa0x9||_0x285e[1026];_0x4fa0xa[_0x285e[926]]=_0x4fa0xa[_0x285e[1043]];_0x4fa0xa[_0x285e[57]](_0x285e[390],_0x4fa0x3);_0x4fa0xa[_0x285e[1044]]=_0x4fa0x5;null!=_0x4fa0x2&&_0x4fa0xa[_0x285e[57]](_0x285e[924],_0x4fa0x2);mxEvent[_0x285e[169]](_0x4fa0xa,_0x285e[173],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1045]][_0x285e[1044]];null!=_0x4fa0x2?(this[_0x285e[1045]][_0x285e[1044]]=this[_0x285e[1045]][_0x285e[284]](_0x285e[390]),this[_0x285e[1045]][_0x285e[57]](_0x285e[390],_0x4fa0x2)):this[_0x285e[1045]][_0x285e[926]]=this[_0x285e[1045]][_0x285e[1043]];this[_0x285e[1024]]&&(this[_0x285e[1046]]=_0x4fa0xa);this[_0x285e[1045]]=_0x4fa0xa;_0x4fa0x2=_0x4fa0xa[_0x285e[1044]];null!=_0x4fa0x2?(_0x4fa0xa[_0x285e[1044]]=_0x4fa0xa[_0x285e[284]](_0x285e[390]),_0x4fa0xa[_0x285e[57]](_0x285e[390],_0x4fa0x2)):_0x4fa0xa[_0x285e[926]]=_0x4fa0xa[_0x285e[1043]]+_0x285e[1034];this[_0x285e[746]]( new mxEventObject(mxEvent.SELECT));_0x4fa0x4()}));this[_0x285e[526]][_0x285e[62]](_0x4fa0xa);null==this[_0x285e[1046]]&&(this[_0x285e[1046]]=_0x4fa0xa,this[_0x285e[1047]](_0x4fa0xa),_0x4fa0x4());return _0x4fa0xa};mxToolbar[_0x285e[202]][_0x285e[1048]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:!0;var _0x4fa0x12=document[_0x285e[55]](null!=_0x4fa0x3?_0x285e[466]:_0x285e[172]);_0x4fa0x12[_0x285e[1043]]=_0x4fa0x9||_0x285e[1026];_0x4fa0x12[_0x285e[926]]=_0x4fa0x12[_0x285e[1043]];_0x4fa0x12[_0x285e[57]](_0x285e[390],_0x4fa0x3);_0x4fa0x12[_0x285e[1044]]=_0x4fa0x5;null!=_0x4fa0x2&&_0x4fa0x12[_0x285e[57]](_0x285e[924],_0x4fa0x2);this[_0x285e[984]]&&_0x4fa0xa&&(mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[173],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1047]](_0x4fa0x12,_0x4fa0x4);this[_0x285e[1023]]= !1})),mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[760],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1047]](_0x4fa0x12,_0x4fa0x4);this[_0x285e[1023]]= !0})),null==this[_0x285e[1046]]&&(this[_0x285e[1046]]=_0x4fa0x12,this[_0x285e[1049]]=_0x4fa0x4,this[_0x285e[1047]](_0x4fa0x12,_0x4fa0x4)));this[_0x285e[526]][_0x285e[62]](_0x4fa0x12);return _0x4fa0x12};mxToolbar[_0x285e[202]][_0x285e[1047]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1045]]!=_0x4fa0x2){if(null!=this[_0x285e[1045]]){var _0x4fa0x4=this[_0x285e[1045]][_0x285e[1044]];null!=_0x4fa0x4?(this[_0x285e[1045]][_0x285e[1044]]=this[_0x285e[1045]][_0x285e[284]](_0x285e[390]),this[_0x285e[1045]][_0x285e[57]](_0x285e[390],_0x4fa0x4)):this[_0x285e[1045]][_0x285e[926]]=this[_0x285e[1045]][_0x285e[1043]]};this[_0x285e[1045]]=_0x4fa0x2;_0x4fa0x4=this[_0x285e[1045]][_0x285e[1044]];null!=_0x4fa0x4?(this[_0x285e[1045]][_0x285e[1044]]=this[_0x285e[1045]][_0x285e[284]](_0x285e[390]),this[_0x285e[1045]][_0x285e[57]](_0x285e[390],_0x4fa0x4)):this[_0x285e[1045]][_0x285e[926]]=this[_0x285e[1045]][_0x285e[1043]]+_0x285e[1034];this[_0x285e[746]]( new mxEventObject(mxEvent.SELECT,_0x285e[279],_0x4fa0x3))}};mxToolbar[_0x285e[202]][_0x285e[1050]]=function(_0x4fa0x2){(_0x4fa0x2||!this[_0x285e[1023]])&&this[_0x285e[1045]]!=this[_0x285e[1046]]&&this[_0x285e[1047]](this[_0x285e[1046]],this[_0x285e[1049]])};mxToolbar[_0x285e[202]][_0x285e[1051]]=function(_0x4fa0x2){return this[_0x285e[1025]](null,_0x4fa0x2,null)};mxToolbar[_0x285e[202]][_0x285e[1052]]=function(){mxUtils[_0x285e[345]](this[_0x285e[526]])};mxToolbar[_0x285e[202]][_0x285e[1053]]=function(){var _0x4fa0x2=document[_0x285e[55]](_0x285e[1054]);_0x4fa0x2[_0x285e[124]][_0x285e[941]]=_0x285e[1055];_0x4fa0x2[_0x285e[57]](_0x285e[803],_0x285e[500]);this[_0x285e[526]][_0x285e[62]](_0x4fa0x2)};mxToolbar[_0x285e[202]][_0x285e[515]]=function(){mxEvent[_0x285e[762]](this[_0x285e[526]]);this[_0x285e[1045]]=this[_0x285e[1049]]=this[_0x285e[1046]]=this[_0x285e[526]]=null;null!=this[_0x285e[1029]]&&this[_0x285e[1029]][_0x285e[515]]()};function mxSession(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[1056]]=_0x4fa0x3;this[_0x285e[1057]]=_0x4fa0x4;this[_0x285e[1058]]=_0x4fa0x5;null!=_0x4fa0x2&&(this[_0x285e[1059]]= new mxCodec,this[_0x285e[1059]][_0x285e[1060]]=function(_0x4fa0x3){return _0x4fa0x2[_0x285e[736]](_0x4fa0x3)});_0x4fa0x2[_0x285e[169]](mxEvent.NOTIFY,mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x3[_0x285e[720]](_0x285e[1061]);(null!=_0x4fa0x4&&this[_0x285e[143]]||this[_0x285e[1062]]&&!this[_0x285e[1063]])&&this[_0x285e[827]](_0x285e[1064]+this[_0x285e[1067]](_0x4fa0x4[_0x285e[1065]],_0x4fa0x4[_0x285e[1066]])+_0x285e[1068])}))}mxSession[_0x285e[202]]= new mxEventSource;mxSession[_0x285e[202]][_0x285e[196]]=mxSession;mxSession[_0x285e[202]][_0x285e[251]]=null;mxSession[_0x285e[202]][_0x285e[1056]]=null;mxSession[_0x285e[202]][_0x285e[1057]]=null;mxSession[_0x285e[202]][_0x285e[1058]]=null;mxSession[_0x285e[202]][_0x285e[1059]]=null;mxSession[_0x285e[202]][_0x285e[1069]]=_0x285e[336];mxSession[_0x285e[202]][_0x285e[1070]]= !0;mxSession[_0x285e[202]][_0x285e[1071]]= !0;mxSession[_0x285e[202]][_0x285e[1072]]=0;mxSession[_0x285e[202]][_0x285e[1073]]=0;mxSession[_0x285e[202]][_0x285e[143]]= !1;mxSession[_0x285e[202]][_0x285e[1062]]= !1;mxSession[_0x285e[202]][_0x285e[1063]]= !1;mxSession[_0x285e[202]][_0x285e[1074]]= !1;mxSession[_0x285e[202]][_0x285e[861]]=function(){this[_0x285e[143]]?(this[_0x285e[1062]]= !0,this[_0x285e[746]]( new mxEventObject(mxEvent.CONNECT))):this[_0x285e[1062]]||this[_0x285e[203]](this[_0x285e[1056]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1062]]= !0;this[_0x285e[746]]( new mxEventObject(mxEvent.CONNECT));this[_0x285e[1075]]()}))};mxSession[_0x285e[202]][_0x285e[809]]=function(){this[_0x285e[1062]]&&!this[_0x285e[1063]]&&(this[_0x285e[1063]]= !0,this[_0x285e[746]]( new mxEventObject(mxEvent.SUSPEND)))};mxSession[_0x285e[202]][_0x285e[810]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[1062]]&&this[_0x285e[1063]]&&(this[_0x285e[1063]]= !1,this[_0x285e[746]]( new mxEventObject(mxEvent.RESUME)),this[_0x285e[1074]]||this[_0x285e[1075]]())};mxSession[_0x285e[202]][_0x285e[1076]]=function(_0x4fa0x2){this[_0x285e[1062]]&&(this[_0x285e[1062]]= !1);this[_0x285e[746]]( new mxEventObject(mxEvent.DISCONNECT,_0x285e[1077],_0x4fa0x2))};mxSession[_0x285e[202]][_0x285e[1075]]=function(){this[_0x285e[1062]]&&!this[_0x285e[1063]]&&null!=this[_0x285e[1057]]?(this[_0x285e[1074]]= !0,this[_0x285e[203]](this[_0x285e[1057]],mxUtils[_0x285e[885]](this,function(){this[_0x285e[1075]]()}))):this[_0x285e[1074]]= !1};mxSession[_0x285e[202]][_0x285e[827]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]&&(null!=this[_0x285e[1058]]&&(this[_0x285e[143]]?(mxLog[_0x285e[539]](),mxLog[_0x285e[143]](_0x285e[1078]+this[_0x285e[1058]]+_0x285e[1079]+_0x4fa0x2)):(_0x4fa0x2=_0x285e[1080]+_0x4fa0x2+_0x285e[1081],this[_0x285e[1070]]&&(_0x4fa0x2=encodeURIComponent(_0x4fa0x2)),mxUtils[_0x285e[814]](this[_0x285e[1058]],_0x285e[1082]+_0x4fa0x2,_0x4fa0x3,_0x4fa0x4))),this[_0x285e[1072]]+=_0x4fa0x2[_0x285e[67]],this[_0x285e[746]]( new mxEventObject(mxEvent.NOTIFY,_0x285e[863],this[_0x285e[1058]],_0x285e[338],_0x4fa0x2)))};mxSession[_0x285e[202]][_0x285e[203]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(_0x285e[82]!= typeof mxUtils){var _0x4fa0x5=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){null!=_0x4fa0x4?_0x4fa0x4(_0x4fa0x2):this[_0x285e[1076]](_0x4fa0x2)});mxUtils[_0x285e[203]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x4){if(_0x285e[82]!= typeof mxUtils){if(_0x4fa0x4[_0x285e[220]]()&&404!=_0x4fa0x4[_0x285e[878]]()){if(this[_0x285e[1073]]+=_0x4fa0x4[_0x285e[221]]()[_0x285e[67]],this[_0x285e[746]]( new mxEventObject(mxEvent.GET,_0x285e[863],_0x4fa0x2,_0x285e[870],_0x4fa0x4)),this[_0x285e[1083]](_0x4fa0x4)){if(0<_0x4fa0x4[_0x285e[221]]()[_0x285e[67]]){var _0x4fa0xa=_0x4fa0x4[_0x285e[874]]();null==_0x4fa0xa?_0x4fa0x5(_0x285e[1084]+_0x4fa0x4[_0x285e[221]]()):this[_0x285e[806]](_0x4fa0xa)};null!=_0x4fa0x3&&_0x4fa0x3(_0x4fa0x4)}}else {_0x4fa0x5(_0x285e[1085])}}}),function(_0x4fa0x2){_0x4fa0x5(_0x285e[1086])})}};mxSession[_0x285e[202]][_0x285e[1083]]=function(_0x4fa0x2){return 0>_0x4fa0x2[_0x285e[221]]()[_0x285e[2]](_0x285e[1087])};mxSession[_0x285e[202]][_0x285e[1067]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=_0x285e[110],_0x4fa0x5=_0x4fa0x3?-1:1,_0x4fa0x9=_0x4fa0x3?_0x4fa0x2[_0x285e[67]]-1:0;0<=_0x4fa0x9&&_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9+=_0x4fa0x5){var _0x4fa0xa=this[_0x285e[1059]][_0x285e[514]](_0x4fa0x2[_0x4fa0x9]),_0x4fa0x4=_0x4fa0x4+mxUtils[_0x285e[875]](_0x4fa0xa,this[_0x285e[1069]])};return _0x4fa0x4};mxSession[_0x285e[202]][_0x285e[806]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[289]]){var _0x4fa0x3=_0x4fa0x2[_0x285e[284]](_0x285e[1088]);null!=_0x4fa0x3&&(this[_0x285e[251]][_0x285e[1089]]=_0x4fa0x3+_0x285e[213]);for(_0x4fa0x3=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x3;){var _0x4fa0x4=_0x4fa0x3[_0x285e[301]][_0x285e[216]]();_0x285e[724]==_0x4fa0x4?this[_0x285e[1090]](_0x4fa0x3):_0x285e[1091]==_0x4fa0x4&&this[_0x285e[1092]](_0x4fa0x3);_0x4fa0x3=_0x4fa0x3[_0x285e[287]]};this[_0x285e[746]]( new mxEventObject(mxEvent.RECEIVE,_0x285e[252],_0x4fa0x2))}};mxSession[_0x285e[202]][_0x285e[1090]]=function(_0x4fa0x2){( new mxCodec(_0x4fa0x2[_0x285e[295]]))[_0x285e[1093]](_0x4fa0x2[_0x285e[285]],this[_0x285e[251]])};mxSession[_0x285e[202]][_0x285e[1092]]=function(_0x4fa0x2){for(_0x4fa0x2=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x2;){_0x285e[1061]==_0x4fa0x2[_0x285e[301]]&&this[_0x285e[1094]](_0x4fa0x2),_0x4fa0x2=_0x4fa0x2[_0x285e[287]]}};mxSession[_0x285e[202]][_0x285e[1094]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1095]](_0x4fa0x2);if(0<_0x4fa0x2[_0x285e[67]]){var _0x4fa0x3=this[_0x285e[1096]](_0x4fa0x2);this[_0x285e[251]][_0x285e[746]]( new mxEventObject(mxEvent.CHANGE,_0x285e[1061],_0x4fa0x3,_0x285e[1065],_0x4fa0x2));this[_0x285e[251]][_0x285e[746]]( new mxEventObject(mxEvent.UNDO,_0x285e[1061],_0x4fa0x3));this[_0x285e[746]]( new mxEventObject(mxEvent.FIRED,_0x285e[1061],_0x4fa0x3))}};mxSession[_0x285e[202]][_0x285e[1096]]=function(_0x4fa0x2){var _0x4fa0x3= new mxUndoableEdit(this[_0x285e[251]],this[_0x285e[1071]]);_0x4fa0x3[_0x285e[1065]]=_0x4fa0x2;_0x4fa0x3[_0x285e[827]]=function(){_0x4fa0x3[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.CHANGE,_0x285e[1061],_0x4fa0x3,_0x285e[1065],_0x4fa0x3[_0x285e[1065]]));_0x4fa0x3[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.NOTIFY,_0x285e[1061],_0x4fa0x3,_0x285e[1065],_0x4fa0x3[_0x285e[1065]]))};return _0x4fa0x3};mxSession[_0x285e[202]][_0x285e[1095]]=function(_0x4fa0x2){this[_0x285e[1059]][_0x285e[395]]=_0x4fa0x2[_0x285e[295]];var _0x4fa0x3=[];for(_0x4fa0x2=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x2;){var _0x4fa0x4=this[_0x285e[1098]](_0x4fa0x2);null!=_0x4fa0x4&&_0x4fa0x3[_0x285e[207]](_0x4fa0x4);_0x4fa0x2=_0x4fa0x2[_0x285e[287]]};return _0x4fa0x3};mxSession[_0x285e[202]][_0x285e[1098]]=function(_0x4fa0x2){var _0x4fa0x3=null;_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[289]]&&(_0x4fa0x3=_0x285e[1099]==_0x4fa0x2[_0x285e[301]]?( new mxCodec(_0x4fa0x2[_0x285e[295]]))[_0x285e[1093]](_0x4fa0x2):this[_0x285e[1059]][_0x285e[1093]](_0x4fa0x2),null!=_0x4fa0x3&&(_0x4fa0x3[_0x285e[251]]=this[_0x285e[251]],_0x4fa0x3[_0x285e[350]](),_0x285e[1100]==_0x4fa0x2[_0x285e[301]]&&null==_0x4fa0x3[_0x285e[1101]]&&this[_0x285e[1102]](_0x4fa0x3[_0x285e[247]])));return _0x4fa0x3};mxSession[_0x285e[202]][_0x285e[1102]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1059]][_0x285e[1104]](_0x4fa0x2[_0x285e[1103]](),_0x4fa0x2);for(var _0x4fa0x4=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){this[_0x285e[1102]](this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x5))}};function mxUndoableEdit(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1097]]=_0x4fa0x2;this[_0x285e[1065]]=[];this[_0x285e[1105]]=null!=_0x4fa0x3?_0x4fa0x3:!0}mxUndoableEdit[_0x285e[202]][_0x285e[1097]]=null;mxUndoableEdit[_0x285e[202]][_0x285e[1065]]=null;mxUndoableEdit[_0x285e[202]][_0x285e[1105]]=null;mxUndoableEdit[_0x285e[202]][_0x285e[1066]]= !1;mxUndoableEdit[_0x285e[202]][_0x285e[1106]]= !1;mxUndoableEdit[_0x285e[202]][_0x285e[1107]]=function(){return 0==this[_0x285e[1065]][_0x285e[67]]};mxUndoableEdit[_0x285e[202]][_0x285e[1108]]=function(){return this[_0x285e[1105]]};mxUndoableEdit[_0x285e[202]][_0x285e[99]]=function(_0x4fa0x2){this[_0x285e[1065]][_0x285e[207]](_0x4fa0x2)};mxUndoableEdit[_0x285e[202]][_0x285e[827]]=function(){};mxUndoableEdit[_0x285e[202]][_0x285e[1109]]=function(){};mxUndoableEdit[_0x285e[202]][_0x285e[824]]=function(){if(!this[_0x285e[1066]]){this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.START_EDIT));for(var _0x4fa0x2=this[_0x285e[1065]][_0x285e[67]]-1;0<=_0x4fa0x2;_0x4fa0x2--){var _0x4fa0x3=this[_0x285e[1065]][_0x4fa0x2];null!=_0x4fa0x3[_0x285e[350]]?_0x4fa0x3[_0x285e[350]]():null!=_0x4fa0x3[_0x285e[824]]&&_0x4fa0x3[_0x285e[824]]();this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.EXECUTED,_0x285e[826],_0x4fa0x3))};this[_0x285e[1066]]= !0;this[_0x285e[1106]]= !1;this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.END_EDIT))};this[_0x285e[827]]()};mxUndoableEdit[_0x285e[202]][_0x285e[825]]=function(){if(!this[_0x285e[1106]]){this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.START_EDIT));for(var _0x4fa0x2=this[_0x285e[1065]][_0x285e[67]],_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2;_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[1065]][_0x4fa0x3];null!=_0x4fa0x4[_0x285e[350]]?_0x4fa0x4[_0x285e[350]]():null!=_0x4fa0x4[_0x285e[825]]&&_0x4fa0x4[_0x285e[825]]();this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.EXECUTED,_0x285e[826],_0x4fa0x4))};this[_0x285e[1066]]= !1;this[_0x285e[1106]]= !0;this[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.END_EDIT))};this[_0x285e[827]]()};function mxUndoManager(_0x4fa0x2){this[_0x285e[803]]=null!=_0x4fa0x2?_0x4fa0x2:100;this[_0x285e[200]]()}mxUndoManager[_0x285e[202]]= new mxEventSource;mxUndoManager[_0x285e[202]][_0x285e[196]]=mxUndoManager;mxUndoManager[_0x285e[202]][_0x285e[803]]=null;mxUndoManager[_0x285e[202]][_0x285e[1110]]=null;mxUndoManager[_0x285e[202]][_0x285e[1111]]=0;mxUndoManager[_0x285e[202]][_0x285e[1107]]=function(){return 0==this[_0x285e[1110]][_0x285e[67]]};mxUndoManager[_0x285e[202]][_0x285e[200]]=function(){this[_0x285e[1110]]=[];this[_0x285e[1111]]=0;this[_0x285e[746]]( new mxEventObject(mxEvent.CLEAR))};mxUndoManager[_0x285e[202]][_0x285e[1112]]=function(){return 0<this[_0x285e[1111]]};mxUndoManager[_0x285e[202]][_0x285e[824]]=function(){for(;0<this[_0x285e[1111]];){var _0x4fa0x2=this[_0x285e[1110]][--this[_0x285e[1111]]];_0x4fa0x2[_0x285e[824]]();if(_0x4fa0x2[_0x285e[1108]]()){this[_0x285e[746]]( new mxEventObject(mxEvent.UNDO,_0x285e[1061],_0x4fa0x2));break}}};mxUndoManager[_0x285e[202]][_0x285e[1113]]=function(){return this[_0x285e[1111]]<this[_0x285e[1110]][_0x285e[67]]};mxUndoManager[_0x285e[202]][_0x285e[825]]=function(){for(var _0x4fa0x2=this[_0x285e[1110]][_0x285e[67]];this[_0x285e[1111]]<_0x4fa0x2;){var _0x4fa0x3=this[_0x285e[1110]][this[_0x285e[1111]]++];_0x4fa0x3[_0x285e[825]]();if(_0x4fa0x3[_0x285e[1108]]()){this[_0x285e[746]]( new mxEventObject(mxEvent.REDO,_0x285e[1061],_0x4fa0x3));break}}};mxUndoManager[_0x285e[202]][_0x285e[1114]]=function(_0x4fa0x2){this[_0x285e[330]]();0<this[_0x285e[803]]&&this[_0x285e[803]]==this[_0x285e[1110]][_0x285e[67]]&&this[_0x285e[1110]][_0x285e[1115]]();this[_0x285e[1110]][_0x285e[207]](_0x4fa0x2);this[_0x285e[1111]]=this[_0x285e[1110]][_0x285e[67]];this[_0x285e[746]]( new mxEventObject(mxEvent.ADD,_0x285e[1061],_0x4fa0x2))};mxUndoManager[_0x285e[202]][_0x285e[330]]=function(){if(this[_0x285e[1110]][_0x285e[67]]>this[_0x285e[1111]]){for(var _0x4fa0x2=this[_0x285e[1110]][_0x285e[300]](this[_0x285e[1111]],this[_0x285e[1110]][_0x285e[67]]-this[_0x285e[1111]]),_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){_0x4fa0x2[_0x4fa0x3][_0x285e[1109]]()}}};var mxUrlConverter=function(_0x4fa0x2){var _0x4fa0x3=!0,_0x4fa0x4=null,_0x4fa0x5=null;return {isEnabled:function(){return _0x4fa0x3},setEnabled:function(_0x4fa0x2){_0x4fa0x3=_0x4fa0x2},getBaseUrl:function(){return _0x4fa0x4},setBaseUrl:function(_0x4fa0x2){_0x4fa0x4=_0x4fa0x2},getBaseDomain:function(){return _0x4fa0x4},setBaseDomain:function(_0x4fa0x2){_0x4fa0x4=_0x4fa0x2},isRelativeUrl:function(_0x4fa0x2){return _0x285e[43]!=_0x4fa0x2[_0x285e[85]](0,7)&&_0x285e[46]!=_0x4fa0x2[_0x285e[85]](0,8)&&_0x285e[1116]!=_0x4fa0x2[_0x285e[85]](0,10)},convert:function(_0x4fa0x2){if(_0x4fa0x3&&this[_0x285e[1117]](_0x4fa0x2)){if(null==_0x4fa0x4){_0x4fa0x5=location[_0x285e[1118]]+_0x285e[1119]+location[_0x285e[1120]];_0x4fa0x4=_0x4fa0x5+location[_0x285e[1121]];var _0x4fa0xa=_0x4fa0x4[_0x285e[1122]](_0x285e[84]);0<_0x4fa0xa&&(_0x4fa0x4=_0x4fa0x4[_0x285e[85]](0,_0x4fa0xa+1))};_0x4fa0x2=_0x285e[84]==_0x4fa0x2[_0x285e[225]](0)?_0x4fa0x5+_0x4fa0x2:_0x4fa0x4+_0x4fa0x2};return _0x4fa0x2}}};function mxPanningManager(_0x4fa0x2){this[_0x285e[1123]]=null;this[_0x285e[1124]]= !1;this[_0x285e[1125]]=this[_0x285e[1126]]=this[_0x285e[1127]]=this[_0x285e[1128]]=this[_0x285e[1129]]=this[_0x285e[1130]]=0;this[_0x285e[1131]]= !1;this[_0x285e[190]]=this[_0x285e[360]]=0;this[_0x285e[1132]]={mouseDown:function(_0x4fa0x2,_0x4fa0x3){},mouseMove:function(_0x4fa0x2,_0x4fa0x3){},mouseUp:mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1124]]&&this[_0x285e[1076]]()})};_0x4fa0x2[_0x285e[1133]](this[_0x285e[1132]]);mxEvent[_0x285e[169]](document,_0x285e[753],mxUtils[_0x285e[885]](this,function(){this[_0x285e[1124]]&&this[_0x285e[1076]]()}));var _0x4fa0x3=mxUtils[_0x285e[885]](this,function(){this[_0x285e[1131]]=mxUtils[_0x285e[1134]](_0x4fa0x2[_0x285e[526]]);this[_0x285e[360]]=_0x4fa0x2[_0x285e[526]][_0x285e[360]];this[_0x285e[190]]=_0x4fa0x2[_0x285e[526]][_0x285e[190]];return window[_0x285e[1141]](mxUtils[_0x285e[885]](this,function(){this[_0x285e[1130]]-=this[_0x285e[1126]];this[_0x285e[1129]]-=this[_0x285e[1125]];if(this[_0x285e[1131]]){var _0x4fa0x3=-_0x4fa0x2[_0x285e[526]][_0x285e[360]]-Math[_0x285e[430]](this[_0x285e[1126]]),_0x4fa0x5=-_0x4fa0x2[_0x285e[526]][_0x285e[190]]-Math[_0x285e[430]](this[_0x285e[1125]]);_0x4fa0x2[_0x285e[1135]](_0x4fa0x3,_0x4fa0x5);_0x4fa0x2[_0x285e[1136]]=this[_0x285e[360]]-_0x4fa0x2[_0x285e[526]][_0x285e[360]];_0x4fa0x2[_0x285e[1137]]=this[_0x285e[190]]-_0x4fa0x2[_0x285e[526]][_0x285e[190]];_0x4fa0x2[_0x285e[746]]( new mxEventObject(mxEvent.PAN))}else {_0x4fa0x2[_0x285e[1135]](this[_0x285e[1138]](),this[_0x285e[1139]]())}}),this[_0x285e[1140]])});this[_0x285e[1142]]=function(){return active};this[_0x285e[1138]]=function(){return Math[_0x285e[488]](this[_0x285e[1130]])};this[_0x285e[1139]]=function(){return Math[_0x285e[488]](this[_0x285e[1129]])};this[_0x285e[861]]=function(){this[_0x285e[1128]]=_0x4fa0x2[_0x285e[441]][_0x285e[513]][_0x285e[235]];this[_0x285e[1127]]=_0x4fa0x2[_0x285e[441]][_0x285e[513]][_0x285e[236]];this[_0x285e[1124]]= !0};this[_0x285e[1143]]=function(_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1124]]||this[_0x285e[861]]();this[_0x285e[360]]=_0x4fa0x2[_0x285e[526]][_0x285e[360]];this[_0x285e[190]]=_0x4fa0x2[_0x285e[526]][_0x285e[190]];_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:0;var _0x4fa0x12=_0x4fa0x2[_0x285e[526]];this[_0x285e[1126]]=_0x4fa0x4+(null!=_0x4fa0x9?_0x4fa0x9:0)-_0x4fa0x12[_0x285e[360]]-_0x4fa0x12[_0x285e[159]];0>this[_0x285e[1126]]&&Math[_0x285e[425]](this[_0x285e[1126]])<this[_0x285e[467]]?this[_0x285e[1126]]=this[_0x285e[467]]+this[_0x285e[1126]]:this[_0x285e[1126]]=this[_0x285e[1144]]?Math[_0x285e[160]](this[_0x285e[1126]],0):0;0==this[_0x285e[1126]]&&(this[_0x285e[1126]]=_0x4fa0x4-_0x4fa0x12[_0x285e[360]],this[_0x285e[1126]]=0<this[_0x285e[1126]]&&this[_0x285e[1126]]<this[_0x285e[467]]?this[_0x285e[1126]]-this[_0x285e[467]]:this[_0x285e[1144]]?Math[_0x285e[243]](0,this[_0x285e[1126]]):0);this[_0x285e[1125]]=_0x4fa0x5+_0x4fa0xa-_0x4fa0x12[_0x285e[190]]-_0x4fa0x12[_0x285e[157]];0>this[_0x285e[1125]]&&Math[_0x285e[425]](this[_0x285e[1125]])<this[_0x285e[467]]?this[_0x285e[1125]]=this[_0x285e[467]]+this[_0x285e[1125]]:this[_0x285e[1125]]=this[_0x285e[1144]]?Math[_0x285e[160]](this[_0x285e[1125]],0):0;0==this[_0x285e[1125]]&&(this[_0x285e[1125]]=_0x4fa0x5-_0x4fa0x12[_0x285e[190]],this[_0x285e[1125]]=0<this[_0x285e[1125]]&&this[_0x285e[1125]]<this[_0x285e[467]]?this[_0x285e[1125]]-this[_0x285e[467]]:this[_0x285e[1144]]?Math[_0x285e[243]](0,this[_0x285e[1125]]):0);0!=this[_0x285e[1126]]||0!=this[_0x285e[1125]]?(this[_0x285e[1126]]*=this[_0x285e[1145]],this[_0x285e[1125]]*=this[_0x285e[1145]],null==this[_0x285e[1123]]&&(this[_0x285e[1123]]=_0x4fa0x3())):null!=this[_0x285e[1123]]&&(window[_0x285e[1146]](this[_0x285e[1123]]),this[_0x285e[1123]]=null)};this[_0x285e[1076]]=function(){if(this[_0x285e[1124]]){if(this[_0x285e[1124]]= !1,null!=this[_0x285e[1123]]&&(window[_0x285e[1146]](this[_0x285e[1123]]),this[_0x285e[1123]]=null),this[_0x285e[1129]]=this[_0x285e[1130]]=0,this[_0x285e[1131]]){_0x4fa0x2[_0x285e[1136]]=0,_0x4fa0x2[_0x285e[1137]]=0,_0x4fa0x2[_0x285e[746]]( new mxEventObject(mxEvent.PAN))}else {var _0x4fa0x3=_0x4fa0x2[_0x285e[1136]],_0x4fa0x5=_0x4fa0x2[_0x285e[1137]];if(0!=_0x4fa0x3||0!=_0x4fa0x5){_0x4fa0x2[_0x285e[1135]](0,0),_0x4fa0x2[_0x285e[441]][_0x285e[1147]](this[_0x285e[1128]]+_0x4fa0x3/_0x4fa0x2[_0x285e[441]][_0x285e[255]],this[_0x285e[1127]]+_0x4fa0x5/_0x4fa0x2[_0x285e[441]][_0x285e[255]])}}}};this[_0x285e[515]]=function(){_0x4fa0x2[_0x285e[1148]](this[_0x285e[1132]])}}mxPanningManager[_0x285e[202]][_0x285e[1145]]=1/6;mxPanningManager[_0x285e[202]][_0x285e[1140]]=10;mxPanningManager[_0x285e[202]][_0x285e[1144]]= !0;mxPanningManager[_0x285e[202]][_0x285e[467]]=0;function mxPopupMenu(_0x4fa0x2){this[_0x285e[1033]]=_0x4fa0x2;null!=_0x4fa0x2&&this[_0x285e[176]]()}mxPopupMenu[_0x285e[202]]= new mxEventSource;mxPopupMenu[_0x285e[202]][_0x285e[196]]=mxPopupMenu;mxPopupMenu[_0x285e[202]][_0x285e[1149]]=mxClient[_0x285e[88]]+_0x285e[1150];mxPopupMenu[_0x285e[202]][_0x285e[931]]=10006;mxPopupMenu[_0x285e[202]][_0x285e[1033]]=null;mxPopupMenu[_0x285e[202]][_0x285e[1151]]= !1;mxPopupMenu[_0x285e[202]][_0x285e[984]]= !0;mxPopupMenu[_0x285e[202]][_0x285e[1152]]=0;mxPopupMenu[_0x285e[202]][_0x285e[1153]]= !1;mxPopupMenu[_0x285e[202]][_0x285e[1154]]= !1;mxPopupMenu[_0x285e[202]][_0x285e[1155]]= !0;mxPopupMenu[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[116]]=document[_0x285e[55]](_0x285e[116]);this[_0x285e[116]][_0x285e[926]]=_0x285e[1156];this[_0x285e[120]]=document[_0x285e[55]](_0x285e[120]);this[_0x285e[116]][_0x285e[62]](this[_0x285e[120]]);this[_0x285e[485]]=document[_0x285e[55]](_0x285e[485]);this[_0x285e[485]][_0x285e[926]]=_0x285e[1156];this[_0x285e[485]][_0x285e[124]][_0x285e[495]]=_0x285e[497];this[_0x285e[485]][_0x285e[124]][_0x285e[931]]=this[_0x285e[931]];this[_0x285e[485]][_0x285e[62]](this[_0x285e[116]]);mxEvent[_0x285e[1157]](this[_0x285e[485]])};mxPopupMenu[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxPopupMenu[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxPopupMenu[_0x285e[202]][_0x285e[737]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[737]]()||this[_0x285e[1151]]&&mxEvent[_0x285e[1158]](_0x4fa0x2[_0x285e[727]]())};mxPopupMenu[_0x285e[202]][_0x285e[1025]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x5=_0x4fa0x5||this;this[_0x285e[1152]]++;_0x4fa0x5[_0x285e[1159]]&&(_0x4fa0x5[_0x285e[1160]]&&this[_0x285e[1051]](_0x4fa0x5,!0),_0x4fa0x5[_0x285e[1159]]= !1);_0x4fa0x5[_0x285e[1160]]= !0;var _0x4fa0x12=document[_0x285e[55]](_0x285e[121]);_0x4fa0x12[_0x285e[926]]=_0x285e[1161];var _0x4fa0x13=document[_0x285e[55]](_0x285e[122]);_0x4fa0x13[_0x285e[926]]=_0x285e[1162];null!=_0x4fa0x3?(_0x4fa0x9=document[_0x285e[55]](_0x285e[466]),_0x4fa0x9[_0x285e[390]]=_0x4fa0x3,_0x4fa0x13[_0x285e[62]](_0x4fa0x9)):null!=_0x4fa0x9&&(_0x4fa0x3=document[_0x285e[55]](_0x285e[485]),_0x4fa0x3[_0x285e[926]]=_0x4fa0x9,_0x4fa0x13[_0x285e[62]](_0x4fa0x3));_0x4fa0x12[_0x285e[62]](_0x4fa0x13);this[_0x285e[1155]]&&(_0x4fa0x13=document[_0x285e[55]](_0x285e[122]),_0x4fa0x13[_0x285e[926]]=_0x285e[1161]+(null!=_0x4fa0xa&&!_0x4fa0xa?_0x285e[1163]:_0x285e[110]),mxUtils[_0x285e[53]](_0x4fa0x13,_0x4fa0x2),_0x4fa0x13[_0x285e[611]]=_0x285e[361],_0x4fa0x12[_0x285e[62]](_0x4fa0x13),_0x4fa0x2=document[_0x285e[55]](_0x285e[122]),_0x4fa0x2[_0x285e[926]]=_0x285e[1161]+(null!=_0x4fa0xa&&!_0x4fa0xa?_0x285e[1163]:_0x285e[110]),_0x4fa0x2[_0x285e[124]][_0x285e[1164]]=_0x285e[1055],_0x4fa0x2[_0x285e[124]][_0x285e[1165]]=_0x285e[699],_0x4fa0x12[_0x285e[62]](_0x4fa0x2),null==_0x4fa0x5[_0x285e[485]]&&this[_0x285e[1166]](_0x4fa0x5));_0x4fa0x5[_0x285e[120]][_0x285e[62]](_0x4fa0x12);if(null==_0x4fa0xa||_0x4fa0xa){mxEvent[_0x285e[759]](_0x4fa0x12,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1167]]=_0x4fa0x12;_0x4fa0x5[_0x285e[1168]]!=_0x4fa0x12&&_0x4fa0x5[_0x285e[1168]]!=_0x4fa0x5&&(null!=_0x4fa0x5[_0x285e[1168]]&&null!=_0x4fa0x5[_0x285e[1168]][_0x285e[485]][_0x285e[265]]&&this[_0x285e[1169]](_0x4fa0x5),null!=_0x4fa0x12[_0x285e[485]]&&(this[_0x285e[1170]](_0x4fa0x5,_0x4fa0x12),_0x4fa0x5[_0x285e[1168]]=_0x4fa0x12));mxEvent[_0x285e[722]](_0x4fa0x2)}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x5[_0x285e[1168]]!=_0x4fa0x12&&_0x4fa0x5[_0x285e[1168]]!=_0x4fa0x5&&(null!=_0x4fa0x5[_0x285e[1168]]&&null!=_0x4fa0x5[_0x285e[1168]][_0x285e[485]][_0x285e[265]]&&this[_0x285e[1169]](_0x4fa0x5),this[_0x285e[1153]]&&null!=_0x4fa0x12[_0x285e[485]]&&(this[_0x285e[1170]](_0x4fa0x5,_0x4fa0x12),_0x4fa0x5[_0x285e[1168]]=_0x4fa0x12));_0x4fa0x12[_0x285e[926]]=_0x285e[1171]}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1167]]==_0x4fa0x12&&(_0x4fa0x5[_0x285e[1168]]!=_0x4fa0x12&&this[_0x285e[1032]](),null!=_0x4fa0x4&&_0x4fa0x4(_0x4fa0x2));this[_0x285e[1167]]=null;mxEvent[_0x285e[722]](_0x4fa0x2)})),mxEvent[_0x285e[169]](_0x4fa0x12,_0x285e[1035],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x12[_0x285e[926]]=_0x285e[1161]}))};return _0x4fa0x12};mxPopupMenu[_0x285e[202]][_0x285e[1166]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[116]]=document[_0x285e[55]](_0x285e[116]);_0x4fa0x2[_0x285e[116]][_0x285e[926]]=_0x285e[1156];_0x4fa0x2[_0x285e[120]]=document[_0x285e[55]](_0x285e[120]);_0x4fa0x2[_0x285e[116]][_0x285e[62]](_0x4fa0x2[_0x285e[120]]);_0x4fa0x2[_0x285e[485]]=document[_0x285e[55]](_0x285e[485]);_0x4fa0x2[_0x285e[485]][_0x285e[926]]=_0x285e[1156];_0x4fa0x2[_0x285e[485]][_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x2[_0x285e[485]][_0x285e[124]][_0x285e[495]]=_0x285e[497];_0x4fa0x2[_0x285e[485]][_0x285e[124]][_0x285e[931]]=this[_0x285e[931]];_0x4fa0x2[_0x285e[485]][_0x285e[62]](_0x4fa0x2[_0x285e[116]]);var _0x4fa0x3=document[_0x285e[55]](_0x285e[466]);_0x4fa0x3[_0x285e[57]](_0x285e[390],this[_0x285e[1149]]);td=_0x4fa0x2[_0x285e[285]][_0x285e[287]][_0x285e[287]];td[_0x285e[62]](_0x4fa0x3)};mxPopupMenu[_0x285e[202]][_0x285e[1170]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x3[_0x285e[485]]){_0x4fa0x3[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2[_0x285e[485]][_0x285e[358]]+_0x4fa0x3[_0x285e[358]]+_0x4fa0x3[_0x285e[359]]-1+_0x285e[168];_0x4fa0x3[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x2[_0x285e[485]][_0x285e[362]]+_0x4fa0x3[_0x285e[362]]+_0x285e[168];document[_0x285e[112]][_0x285e[62]](_0x4fa0x3[_0x285e[485]]);var _0x4fa0x4=parseInt(_0x4fa0x3[_0x285e[485]][_0x285e[358]]),_0x4fa0x5=parseInt(_0x4fa0x3[_0x285e[485]][_0x285e[359]]),_0x4fa0x9=document[_0x285e[112]],_0x4fa0xa=document[_0x285e[158]];if(_0x4fa0x4+_0x4fa0x5>(_0x4fa0x9[_0x285e[360]]||_0x4fa0xa[_0x285e[360]])+(_0x4fa0x9[_0x285e[159]]||_0x4fa0xa[_0x285e[159]])){_0x4fa0x3[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2[_0x285e[485]][_0x285e[358]]-_0x4fa0x5+(mxClient[_0x285e[80]]?6:-6)+_0x285e[168]};mxUtils[_0x285e[933]](_0x4fa0x3[_0x285e[485]])}};mxPopupMenu[_0x285e[202]][_0x285e[1051]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=_0x4fa0x2||this;if(this[_0x285e[1154]]&& !_0x4fa0x3){_0x4fa0x2[_0x285e[1159]]= !0}else {if(null!=_0x4fa0x2[_0x285e[120]]){_0x4fa0x2[_0x285e[1159]]= !1;var _0x4fa0x4=document[_0x285e[55]](_0x285e[121]),_0x4fa0x5=document[_0x285e[55]](_0x285e[122]);_0x4fa0x5[_0x285e[926]]=_0x285e[1162];_0x4fa0x5[_0x285e[124]][_0x285e[549]]=_0x285e[1172];_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x5=document[_0x285e[55]](_0x285e[122]);_0x4fa0x5[_0x285e[124]][_0x285e[549]]=_0x285e[1172];_0x4fa0x5[_0x285e[57]](_0x285e[1173],_0x285e[1174]);var _0x4fa0x9=document[_0x285e[55]](_0x285e[1054]);_0x4fa0x9[_0x285e[57]](_0x285e[803],_0x285e[500]);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);_0x4fa0x4[_0x285e[62]](_0x4fa0x5);_0x4fa0x2[_0x285e[120]][_0x285e[62]](_0x4fa0x4)}}};mxPopupMenu[_0x285e[202]][_0x285e[152]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=this[_0x285e[485]]&&null!=this[_0x285e[120]]&&null!=this[_0x285e[1033]]){this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168];for(this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168];null!=this[_0x285e[120]][_0x285e[285]];){mxEvent[_0x285e[762]](this[_0x285e[120]][_0x285e[285]]),this[_0x285e[120]][_0x285e[266]](this[_0x285e[120]][_0x285e[285]])};this[_0x285e[1152]]=0;this[_0x285e[1033]](this,_0x4fa0x4,_0x4fa0x5);0<this[_0x285e[1152]]&&(this[_0x285e[1175]](),this[_0x285e[746]]( new mxEventObject(mxEvent.SHOW)))}};mxPopupMenu[_0x285e[202]][_0x285e[1031]]=function(){return null!=this[_0x285e[485]]&&this[_0x285e[485]][_0x285e[265]]==document[_0x285e[112]]};mxPopupMenu[_0x285e[202]][_0x285e[1175]]=function(){9<=document[_0x285e[5]]&&(this[_0x285e[485]][_0x285e[124]][_0x285e[347]]=_0x285e[130]);document[_0x285e[112]][_0x285e[62]](this[_0x285e[485]]);mxUtils[_0x285e[933]](this[_0x285e[485]])};mxPopupMenu[_0x285e[202]][_0x285e[1032]]=function(){null!=this[_0x285e[485]]&&(null!=this[_0x285e[485]][_0x285e[265]]&&this[_0x285e[485]][_0x285e[265]][_0x285e[266]](this[_0x285e[485]]),this[_0x285e[1169]](this),this[_0x285e[1160]]= !1)};mxPopupMenu[_0x285e[202]][_0x285e[1169]]=function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[1168]]&&(this[_0x285e[1169]](_0x4fa0x2[_0x285e[1168]]),null!=_0x4fa0x2[_0x285e[1168]][_0x285e[485]][_0x285e[265]]&&_0x4fa0x2[_0x285e[1168]][_0x285e[485]][_0x285e[265]][_0x285e[266]](_0x4fa0x2[_0x285e[1168]][_0x285e[485]]),_0x4fa0x2[_0x285e[1168]]=null)};mxPopupMenu[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[485]]&&(mxEvent[_0x285e[762]](this[_0x285e[485]]),null!=this[_0x285e[485]][_0x285e[265]]&&this[_0x285e[485]][_0x285e[265]][_0x285e[266]](this[_0x285e[485]]),this[_0x285e[485]]=null)};function mxAutoSaveManager(_0x4fa0x2){this[_0x285e[1176]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){this[_0x285e[994]]()&&this[_0x285e[1177]](_0x4fa0x4[_0x285e[720]](_0x285e[1061])[_0x285e[1065]])});this[_0x285e[1178]](_0x4fa0x2)}mxAutoSaveManager[_0x285e[202]]= new mxEventSource;mxAutoSaveManager[_0x285e[202]][_0x285e[196]]=mxAutoSaveManager;mxAutoSaveManager[_0x285e[202]][_0x285e[1179]]=null;mxAutoSaveManager[_0x285e[202]][_0x285e[1180]]=10;mxAutoSaveManager[_0x285e[202]][_0x285e[1181]]=2;mxAutoSaveManager[_0x285e[202]][_0x285e[1182]]=5;mxAutoSaveManager[_0x285e[202]][_0x285e[1183]]=0;mxAutoSaveManager[_0x285e[202]][_0x285e[1184]]=0;mxAutoSaveManager[_0x285e[202]][_0x285e[984]]= !0;mxAutoSaveManager[_0x285e[202]][_0x285e[1176]]=null;mxAutoSaveManager[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxAutoSaveManager[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxAutoSaveManager[_0x285e[202]][_0x285e[1178]]=function(_0x4fa0x2){null!=this[_0x285e[1179]]&&this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[1176]]);this[_0x285e[1179]]=_0x4fa0x2;null!=this[_0x285e[1179]]&&this[_0x285e[1179]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[1176]])};mxAutoSaveManager[_0x285e[202]][_0x285e[815]]=function(){};mxAutoSaveManager[_0x285e[202]][_0x285e[1177]]=function(_0x4fa0x2){_0x4fa0x2=(( new Date)[_0x285e[178]]()-this[_0x285e[1184]])/1E3;_0x4fa0x2>this[_0x285e[1180]]||this[_0x285e[1183]]>=this[_0x285e[1182]]&&_0x4fa0x2>this[_0x285e[1181]]?(this[_0x285e[815]](),this[_0x285e[862]]()):this[_0x285e[1183]]++};mxAutoSaveManager[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[1184]]=( new Date)[_0x285e[178]]();this[_0x285e[1183]]=0};mxAutoSaveManager[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1178]](null)};function mxAnimation(_0x4fa0x2){this[_0x285e[1140]]=null!=_0x4fa0x2?_0x4fa0x2:20}mxAnimation[_0x285e[202]]= new mxEventSource;mxAnimation[_0x285e[202]][_0x285e[196]]=mxAnimation;mxAnimation[_0x285e[202]][_0x285e[1140]]=null;mxAnimation[_0x285e[202]][_0x285e[1123]]=null;mxAnimation[_0x285e[202]][_0x285e[1185]]=function(){null==this[_0x285e[1123]]&&(this[_0x285e[1123]]=window[_0x285e[1141]](mxUtils[_0x285e[885]](this,this[_0x285e[1186]]),this[_0x285e[1140]]))};mxAnimation[_0x285e[202]][_0x285e[1186]]=function(){this[_0x285e[746]]( new mxEventObject(mxEvent.EXECUTE))};mxAnimation[_0x285e[202]][_0x285e[1187]]=function(){null!=this[_0x285e[1123]]&&(window[_0x285e[1146]](this[_0x285e[1123]]),this[_0x285e[1123]]=null,this[_0x285e[746]]( new mxEventObject(mxEvent.DONE)))};function mxMorphing(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxAnimation[_0x285e[239]](this,_0x4fa0x5);this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[1188]]=null!=_0x4fa0x3?_0x4fa0x3:6;this[_0x285e[1189]]=null!=_0x4fa0x4?_0x4fa0x4:1.5}mxMorphing[_0x285e[202]]= new mxAnimation;mxMorphing[_0x285e[202]][_0x285e[196]]=mxMorphing;mxMorphing[_0x285e[202]][_0x285e[1179]]=null;mxMorphing[_0x285e[202]][_0x285e[1188]]=null;mxMorphing[_0x285e[202]][_0x285e[1190]]=0;mxMorphing[_0x285e[202]][_0x285e[1189]]=null;mxMorphing[_0x285e[202]][_0x285e[895]]=null;mxMorphing[_0x285e[202]][_0x285e[1186]]=function(){var _0x4fa0x2= new mxCellStatePreview(this[_0x285e[1179]]);if(null!=this[_0x285e[895]]){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[895]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[1191]](cells[_0x4fa0x3],_0x4fa0x2,!1)}}else {this[_0x285e[1191]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]](),_0x4fa0x2,!0)};this[_0x285e[539]](_0x4fa0x2);(_0x4fa0x2[_0x285e[1107]]()||this[_0x285e[1190]]++ >=this[_0x285e[1188]])&&this[_0x285e[1187]]()};mxMorphing[_0x285e[202]][_0x285e[539]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[539]]()};mxMorphing[_0x285e[202]][_0x285e[1191]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2),_0x4fa0x9=null;if(null!=_0x4fa0x5&&(_0x4fa0x9=this[_0x285e[1192]](_0x4fa0x5),this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2)&&(0!=_0x4fa0x9[_0x285e[235]]||0!=_0x4fa0x9[_0x285e[236]]))){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[441]][_0x285e[512]](),_0x4fa0x12=this[_0x285e[1179]][_0x285e[441]][_0x285e[518]]();_0x4fa0x9[_0x285e[235]]+=_0x4fa0xa[_0x285e[235]]*_0x4fa0x12;_0x4fa0x9[_0x285e[236]]+=_0x4fa0xa[_0x285e[236]]*_0x4fa0x12;_0x4fa0x3[_0x285e[1194]](_0x4fa0x5,-_0x4fa0x9[_0x285e[235]]/this[_0x285e[1189]],-_0x4fa0x9[_0x285e[236]]/this[_0x285e[1189]])};if(_0x4fa0x4&&!this[_0x285e[1195]](_0x4fa0x5,_0x4fa0x9)){_0x4fa0x5=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[262]](_0x4fa0x2);for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){this[_0x285e[1191]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x3,_0x4fa0x4)}}};mxMorphing[_0x285e[202]][_0x285e[1195]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x3&&(0!=_0x4fa0x3[_0x285e[235]]||0!=_0x4fa0x3[_0x285e[236]])};mxMorphing[_0x285e[202]][_0x285e[1192]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1196]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[512]](),_0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[518]]();_0x4fa0x2= new mxPoint(_0x4fa0x2[_0x285e[235]]/_0x4fa0x5-_0x4fa0x4[_0x285e[235]],_0x4fa0x2[_0x285e[236]]/_0x4fa0x5-_0x4fa0x4[_0x285e[236]]);return new mxPoint((_0x4fa0x3[_0x285e[235]]-_0x4fa0x2[_0x285e[235]])*_0x4fa0x5,(_0x4fa0x3[_0x285e[236]]-_0x4fa0x2[_0x285e[236]])*_0x4fa0x5)};mxMorphing[_0x285e[202]][_0x285e[1196]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[1196]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](_0x4fa0x2)),_0x4fa0x2=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x3[_0x285e[235]]+=_0x4fa0x2[_0x285e[235]],_0x4fa0x3[_0x285e[236]]+=_0x4fa0x2[_0x285e[236]]));null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[1179]][_0x285e[441]][_0x285e[512]](),_0x4fa0x3= new mxPoint(-_0x4fa0x3[_0x285e[235]],-_0x4fa0x3[_0x285e[236]]));return _0x4fa0x3};function mxImageBundle(_0x4fa0x2){this[_0x285e[1199]]=[];this[_0x285e[1200]]=null!=_0x4fa0x2?_0x4fa0x2:!1}mxImageBundle[_0x285e[202]][_0x285e[1199]]=null;mxImageBundle[_0x285e[202]][_0x285e[1199]]=null;mxImageBundle[_0x285e[202]][_0x285e[1201]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[1199]][_0x4fa0x2]={value:_0x4fa0x3,fallback:_0x4fa0x4}};mxImageBundle[_0x285e[202]][_0x285e[1202]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[1199]][_0x4fa0x2],null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[1200]]?_0x4fa0x2[_0x285e[1203]]:_0x4fa0x2[_0x285e[131]]));return _0x4fa0x3};function mxImageExport(){}mxImageExport[_0x285e[202]][_0x285e[1204]]= !1;mxImageExport[_0x285e[202]][_0x285e[1205]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&(this[_0x285e[1207]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[1206]]),this[_0x285e[1204]]&&this[_0x285e[1207]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[1208]]))};mxImageExport[_0x285e[202]][_0x285e[1207]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2){_0x4fa0x4(_0x4fa0x2,_0x4fa0x3);for(var _0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x9=_0x4fa0x5[_0x285e[251]][_0x285e[262]](_0x4fa0x2[_0x285e[246]]),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x5[_0x285e[441]][_0x285e[248]](_0x4fa0x5[_0x285e[251]][_0x285e[263]](_0x4fa0x2[_0x285e[246]],_0x4fa0xa));this[_0x285e[1207]](_0x4fa0x12,_0x4fa0x3,_0x4fa0x4)}}};mxImageExport[_0x285e[202]][_0x285e[1206]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[253]] instanceof mxShape&&(_0x4fa0x3[_0x285e[815]](),_0x4fa0x2[_0x285e[253]][_0x285e[1209]](_0x4fa0x3),_0x4fa0x3[_0x285e[1210]]());null!=_0x4fa0x2[_0x285e[963]]&&(_0x4fa0x3[_0x285e[815]](),_0x4fa0x2[_0x285e[963]][_0x285e[1209]](_0x4fa0x3),_0x4fa0x3[_0x285e[1210]]())};mxImageExport[_0x285e[202]][_0x285e[1208]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2[_0x285e[1211]]&&_0x4fa0x2[_0x285e[1211]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x5){_0x4fa0x5 instanceof mxShape&&_0x4fa0x5[_0x285e[1209]](_0x4fa0x3)})};function mxAbstractCanvas2D(){this[_0x285e[1212]]=this[_0x285e[1213]]();this[_0x285e[862]]()}mxAbstractCanvas2D[_0x285e[202]][_0x285e[724]]=null;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1214]]=null;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1215]]=null;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1216]]= !0;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1217]]=0;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1218]]=0;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1219]]=_0x285e[1220];mxAbstractCanvas2D[_0x285e[202]][_0x285e[1221]]=_0x285e[1222];mxAbstractCanvas2D[_0x285e[202]][_0x285e[1223]]=_0x285e[1224];mxAbstractCanvas2D[_0x285e[202]][_0x285e[1225]]=_0x285e[1226];mxAbstractCanvas2D[_0x285e[202]][_0x285e[1227]]=_0x285e[1228];mxAbstractCanvas2D[_0x285e[202]][_0x285e[1229]]= !1;mxAbstractCanvas2D[_0x285e[202]][_0x285e[1213]]=function(){return new mxUrlConverter};mxAbstractCanvas2D[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[724]]=this[_0x285e[1230]]();this[_0x285e[1214]]=[]};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1230]]=function(){return {dx:0,dy:0,scale:1,alpha:1,fillColor:null,fillAlpha:1,gradientColor:null,gradientAlpha:1,gradientDirection:null,strokeColor:null,strokeWidth:1,dashed:!1,dashPattern:_0x285e[1231],lineCap:_0x285e[1232],lineJoin:_0x285e[1233],miterLimit:10,fontColor:_0x285e[1234],fontBackgroundColor:null,fontBorderColor:null,fontSize:mxConstants[_0x285e[483]],fontFamily:mxConstants[_0x285e[484]],fontStyle:0,shadow:!1,shadowColor:mxConstants[_0x285e[1235]],shadowAlpha:mxConstants[_0x285e[1236]],shadowDx:mxConstants[_0x285e[1237]],shadowDy:mxConstants[_0x285e[1238]],rotation:0,rotationCx:0,rotationCy:0}};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1239]]=function(_0x4fa0x2){return Math[_0x285e[488]](parseFloat(_0x4fa0x2))};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1240]]=function(){if(null!=this[_0x285e[1215]]&&(this[_0x285e[1215]][_0x285e[207]](arguments[0]),2<arguments[_0x285e[67]])){for(var _0x4fa0x2=this[_0x285e[724]],_0x4fa0x3=2;_0x4fa0x3<arguments[_0x285e[67]];_0x4fa0x3+=2){this[_0x285e[1217]]=arguments[_0x4fa0x3-1],this[_0x285e[1218]]=arguments[_0x4fa0x3],this[_0x285e[1215]][_0x285e[207]](this[_0x285e[1239]]((this[_0x285e[1217]]+_0x4fa0x2[_0x285e[1126]])*_0x4fa0x2[_0x285e[255]])),this[_0x285e[1215]][_0x285e[207]](this[_0x285e[1239]]((this[_0x285e[1218]]+_0x4fa0x2[_0x285e[1125]])*_0x4fa0x2[_0x285e[255]]))}}};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1241]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x4*=Math[_0x285e[424]]/180;return mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x2,_0x4fa0x3),Math[_0x285e[426]](_0x4fa0x4),Math[_0x285e[427]](_0x4fa0x4), new mxPoint(_0x4fa0x5,_0x4fa0x9))};mxAbstractCanvas2D[_0x285e[202]][_0x285e[815]]=function(){this[_0x285e[1214]][_0x285e[207]](this[_0x285e[724]]);this[_0x285e[724]]=mxUtils[_0x285e[238]](this[_0x285e[724]])};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1210]]=function(){this[_0x285e[724]]=this[_0x285e[1214]][_0x285e[1242]]()};mxAbstractCanvas2D[_0x285e[202]][_0x285e[255]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[255]]*=_0x4fa0x2;this[_0x285e[724]][_0x285e[610]]*=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[513]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[724]][_0x285e[1126]]+=_0x4fa0x2;this[_0x285e[724]][_0x285e[1125]]+=_0x4fa0x3};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1243]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[1244]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1245]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[604]]=_0x4fa0x2;this[_0x285e[724]][_0x285e[606]]=null};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1246]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){_0x4fa0x4=this[_0x285e[724]];_0x4fa0x4[_0x285e[604]]=_0x4fa0x2;_0x4fa0x4[_0x285e[1247]]=null!=_0x4fa0x13?_0x4fa0x13:1;_0x4fa0x4[_0x285e[606]]=_0x4fa0x3;_0x4fa0x4[_0x285e[1248]]=null!=_0x4fa0x14?_0x4fa0x14:1;_0x4fa0x4[_0x285e[607]]=_0x4fa0x12};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1249]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[608]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1250]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[610]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1251]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[648]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1252]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[649]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1253]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[1254]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1255]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[1256]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1257]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[1258]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1259]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[665]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1260]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[1261]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1262]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[1263]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1264]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[487]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1265]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[486]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1266]]=function(_0x4fa0x2){null==_0x4fa0x2&&(_0x4fa0x2=0);this[_0x285e[724]][_0x285e[666]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1267]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[639]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1268]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);this[_0x285e[724]][_0x285e[1269]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1270]]=function(_0x4fa0x2){this[_0x285e[724]][_0x285e[1271]]=_0x4fa0x2};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1272]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[724]][_0x285e[1273]]=_0x4fa0x2;this[_0x285e[724]][_0x285e[1274]]=_0x4fa0x3};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1275]]=function(){this[_0x285e[1218]]=this[_0x285e[1217]]=0;this[_0x285e[1215]]=[]};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1276]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1240]](this[_0x285e[1219]],_0x4fa0x2,_0x4fa0x3)};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1277]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1240]](this[_0x285e[1221]],_0x4fa0x2,_0x4fa0x3)};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1278]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[1240]](this[_0x285e[1223]],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1279]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1240]](this[_0x285e[1225]],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa)};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1280]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){_0x4fa0x2=mxUtils[_0x285e[1281]](this[_0x285e[1217]],this[_0x285e[1218]],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12);for(_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3+=6){this[_0x285e[1279]](_0x4fa0x2[_0x4fa0x3],_0x4fa0x2[_0x4fa0x3+1],_0x4fa0x2[_0x4fa0x3+2],_0x4fa0x2[_0x4fa0x3+3],_0x4fa0x2[_0x4fa0x3+4],_0x4fa0x2[_0x4fa0x3+5])}};mxAbstractCanvas2D[_0x285e[202]][_0x285e[268]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1240]](this[_0x285e[1227]])};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1282]]=function(){};function mxXmlCanvas2D(_0x4fa0x2){mxAbstractCanvas2D[_0x285e[239]](this);this[_0x285e[813]]=_0x4fa0x2;this[_0x285e[1283]]()}mxUtils[_0x285e[1284]](mxXmlCanvas2D,mxAbstractCanvas2D);mxXmlCanvas2D[_0x285e[202]][_0x285e[1285]]= !0;mxXmlCanvas2D[_0x285e[202]][_0x285e[1286]]= !0;mxXmlCanvas2D[_0x285e[202]][_0x285e[1283]]=function(){var _0x4fa0x2;_0x4fa0x2=this[_0x285e[55]](_0x285e[1287]);_0x4fa0x2[_0x285e[57]](_0x285e[1288],mxConstants.DEFAULT_FONTFAMILY);this[_0x285e[813]][_0x285e[62]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[55]](_0x285e[1289]);_0x4fa0x2[_0x285e[57]](_0x285e[803],mxConstants.DEFAULT_FONTSIZE);this[_0x285e[813]][_0x285e[62]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[55]](_0x285e[1290]);_0x4fa0x2[_0x285e[57]](_0x285e[352],mxConstants.SHADOWCOLOR);this[_0x285e[813]][_0x285e[62]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[55]](_0x285e[1291]);_0x4fa0x2[_0x285e[57]](_0x285e[1244],mxConstants.SHADOW_OPACITY);this[_0x285e[813]][_0x285e[62]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[55]](_0x285e[1292]);_0x4fa0x2[_0x285e[57]](_0x285e[1126],mxConstants.SHADOW_OFFSET_X);_0x4fa0x2[_0x285e[57]](_0x285e[1125],mxConstants.SHADOW_OFFSET_Y);this[_0x285e[813]][_0x285e[62]](_0x4fa0x2)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1239]]=function(_0x4fa0x2){return parseFloat(parseFloat(_0x4fa0x2)[_0x285e[1293]](2))};mxXmlCanvas2D[_0x285e[202]][_0x285e[55]]=function(_0x4fa0x2){return this[_0x285e[813]][_0x285e[295]][_0x285e[55]](_0x4fa0x2)};mxXmlCanvas2D[_0x285e[202]][_0x285e[815]]=function(){this[_0x285e[1286]]&&mxAbstractCanvas2D[_0x285e[202]][_0x285e[815]][_0x285e[183]](this,arguments);this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[815]))};mxXmlCanvas2D[_0x285e[202]][_0x285e[1210]]=function(){this[_0x285e[1286]]&&mxAbstractCanvas2D[_0x285e[202]][_0x285e[1210]][_0x285e[183]](this,arguments);this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[1210]))};mxXmlCanvas2D[_0x285e[202]][_0x285e[255]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[255]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1243]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[255]);_0x4fa0x3[_0x285e[57]](_0x285e[255],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[513]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[55]](_0x285e[513]);_0x4fa0x4[_0x285e[57]](_0x285e[1126],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x4[_0x285e[57]](_0x285e[1125],this[_0x285e[1239]](_0x4fa0x3));this[_0x285e[813]][_0x285e[62]](_0x4fa0x4)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1294]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=this[_0x285e[55]](_0x285e[1294]);if(0!=_0x4fa0x2||_0x4fa0x3||_0x4fa0x4){_0x4fa0xa[_0x285e[57]](_0x285e[1295],this[_0x285e[1239]](_0x4fa0x2)),_0x4fa0xa[_0x285e[57]](_0x285e[623],_0x4fa0x3?_0x285e[500]:_0x285e[468]),_0x4fa0xa[_0x285e[57]](_0x285e[624],_0x4fa0x4?_0x285e[500]:_0x285e[468]),_0x4fa0xa[_0x285e[57]](_0x285e[1296],this[_0x285e[1239]](_0x4fa0x5)),_0x4fa0xa[_0x285e[57]](_0x285e[1297],this[_0x285e[1239]](_0x4fa0x9)),this[_0x285e[813]][_0x285e[62]](_0x4fa0xa)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1243]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1244]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1243]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1244]);_0x4fa0x3[_0x285e[57]](_0x285e[1244],this[_0x285e[1239]](_0x4fa0x2));this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1245]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[604]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1245]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1298]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1246]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){mxAbstractCanvas2D[_0x285e[202]][_0x285e[1246]][_0x285e[183]](this,arguments);var _0x4fa0x15=this[_0x285e[55]](_0x285e[1299]);_0x4fa0x15[_0x285e[57]](_0x285e[1300],_0x4fa0x2);_0x4fa0x15[_0x285e[57]](_0x285e[1301],_0x4fa0x3);_0x4fa0x15[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x15[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x5));_0x4fa0x15[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x9));_0x4fa0x15[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0xa));null!=_0x4fa0x12&&_0x4fa0x15[_0x285e[57]](_0x285e[663],_0x4fa0x12);null!=_0x4fa0x13&&_0x4fa0x15[_0x285e[57]](_0x285e[1304],_0x4fa0x13);null!=_0x4fa0x14&&_0x4fa0x15[_0x285e[57]](_0x285e[1305],_0x4fa0x14);this[_0x285e[813]][_0x285e[62]](_0x4fa0x15)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1249]]=function(_0x4fa0x2){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[608]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1249]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1306]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1250]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[610]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1250]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1307]);_0x4fa0x3[_0x285e[57]](_0x285e[117],this[_0x285e[1239]](_0x4fa0x2));this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1251]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[648]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1251]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[648]);_0x4fa0x3[_0x285e[57]](_0x285e[648],_0x4fa0x2?_0x285e[500]:_0x285e[468]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1252]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[649]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1252]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1308]);_0x4fa0x3[_0x285e[57]](_0x285e[1309],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1253]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1254]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1253]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1310]);_0x4fa0x3[_0x285e[57]](_0x285e[1311],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1255]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1256]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1255]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1312]);_0x4fa0x3[_0x285e[57]](_0x285e[234],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1257]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1258]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1257]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1313]);_0x4fa0x3[_0x285e[57]](_0x285e[1314],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1259]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[665]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1259]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1315]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1260]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1261]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1260]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1316]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1262]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1263]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1262]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1317]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1264]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[487]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1264]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1289]);_0x4fa0x3[_0x285e[57]](_0x285e[803],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1265]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[486]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1265]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1287]);_0x4fa0x3[_0x285e[57]](_0x285e[1288],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1266]]=function(_0x4fa0x2){if(this[_0x285e[1285]]){null==_0x4fa0x2&&(_0x4fa0x2=0);if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[666]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1266]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1318]);_0x4fa0x3[_0x285e[57]](_0x285e[124],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1267]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[639]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1267]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[639]);_0x4fa0x3[_0x285e[57]](_0x285e[984],_0x4fa0x2?_0x285e[500]:_0x285e[468]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1268]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){_0x4fa0x2==mxConstants[_0x285e[217]]&&(_0x4fa0x2=null);if(this[_0x285e[724]][_0x285e[1269]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1268]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1290]);_0x4fa0x3[_0x285e[57]](_0x285e[352],null!=_0x4fa0x2?_0x4fa0x2:mxConstants[_0x285e[217]]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1270]]=function(_0x4fa0x2){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1271]]==_0x4fa0x2){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1270]][_0x285e[183]](this,arguments)};var _0x4fa0x3=this[_0x285e[55]](_0x285e[1291]);_0x4fa0x3[_0x285e[57]](_0x285e[1244],_0x4fa0x2);this[_0x285e[813]][_0x285e[62]](_0x4fa0x3)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1272]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1286]]){if(this[_0x285e[724]][_0x285e[1273]]==_0x4fa0x2&&this[_0x285e[724]][_0x285e[1274]]==_0x4fa0x3){return};mxAbstractCanvas2D[_0x285e[202]][_0x285e[1272]][_0x285e[183]](this,arguments)};var _0x4fa0x4=this[_0x285e[55]](_0x285e[1292]);_0x4fa0x4[_0x285e[57]](_0x285e[1126],_0x4fa0x2);_0x4fa0x4[_0x285e[57]](_0x285e[1125],_0x4fa0x3);this[_0x285e[813]][_0x285e[62]](_0x4fa0x4)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1319]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[55]](_0x285e[1319]);_0x4fa0x9[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x9[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x9[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x9[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0x5));this[_0x285e[813]][_0x285e[62]](_0x4fa0x9)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1320]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=this[_0x285e[55]](_0x285e[1320]);_0x4fa0x12[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x12[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x12[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x12[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0x5));_0x4fa0x12[_0x285e[57]](_0x285e[1126],this[_0x285e[1239]](_0x4fa0x9));_0x4fa0x12[_0x285e[57]](_0x285e[1125],this[_0x285e[1239]](_0x4fa0xa));this[_0x285e[813]][_0x285e[62]](_0x4fa0x12)};mxXmlCanvas2D[_0x285e[202]][_0x285e[680]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[55]](_0x285e[680]);_0x4fa0x9[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x9[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x9[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x9[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0x5));this[_0x285e[813]][_0x285e[62]](_0x4fa0x9)};mxXmlCanvas2D[_0x285e[202]][_0x285e[618]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){_0x4fa0x9=this[_0x285e[1212]][_0x285e[1321]](_0x4fa0x9);var _0x4fa0x14=this[_0x285e[55]](_0x285e[618]);_0x4fa0x14[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x14[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x14[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x14[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0x5));_0x4fa0x14[_0x285e[57]](_0x285e[390],_0x4fa0x9);_0x4fa0x14[_0x285e[57]](_0x285e[1322],_0x4fa0xa?_0x285e[500]:_0x285e[468]);_0x4fa0x14[_0x285e[57]](_0x285e[623],_0x4fa0x12?_0x285e[500]:_0x285e[468]);_0x4fa0x14[_0x285e[57]](_0x285e[624],_0x4fa0x13?_0x285e[500]:_0x285e[468]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x14)};mxXmlCanvas2D[_0x285e[202]][_0x285e[1275]]=function(){this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[1275]));this[_0x285e[1218]]=this[_0x285e[1217]]=0};mxXmlCanvas2D[_0x285e[202]][_0x285e[1276]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[55]](_0x285e[582]);_0x4fa0x4[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x4[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));this[_0x285e[813]][_0x285e[62]](_0x4fa0x4);this[_0x285e[1217]]=_0x4fa0x2;this[_0x285e[1218]]=_0x4fa0x3};mxXmlCanvas2D[_0x285e[202]][_0x285e[1277]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[55]](_0x285e[683]);_0x4fa0x4[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x4[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));this[_0x285e[813]][_0x285e[62]](_0x4fa0x4);this[_0x285e[1217]]=_0x4fa0x2;this[_0x285e[1218]]=_0x4fa0x3};mxXmlCanvas2D[_0x285e[202]][_0x285e[1278]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[55]](_0x285e[1323]);_0x4fa0x9[_0x285e[57]](_0x285e[1324],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x9[_0x285e[57]](_0x285e[1325],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x9[_0x285e[57]](_0x285e[1326],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x9[_0x285e[57]](_0x285e[1327],this[_0x285e[1239]](_0x4fa0x5));this[_0x285e[813]][_0x285e[62]](_0x4fa0x9);this[_0x285e[1217]]=_0x4fa0x4;this[_0x285e[1218]]=_0x4fa0x5};mxXmlCanvas2D[_0x285e[202]][_0x285e[1279]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=this[_0x285e[55]](_0x285e[1328]);_0x4fa0x12[_0x285e[57]](_0x285e[1324],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x12[_0x285e[57]](_0x285e[1325],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x12[_0x285e[57]](_0x285e[1326],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x12[_0x285e[57]](_0x285e[1327],this[_0x285e[1239]](_0x4fa0x5));_0x4fa0x12[_0x285e[57]](_0x285e[1329],this[_0x285e[1239]](_0x4fa0x9));_0x4fa0x12[_0x285e[57]](_0x285e[1330],this[_0x285e[1239]](_0x4fa0xa));this[_0x285e[813]][_0x285e[62]](_0x4fa0x12);this[_0x285e[1217]]=_0x4fa0x9;this[_0x285e[1218]]=_0x4fa0xa};mxXmlCanvas2D[_0x285e[202]][_0x285e[268]]=function(){this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[268]))};mxXmlCanvas2D[_0x285e[202]][_0x285e[963]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){if(this[_0x285e[1285]]&&null!=_0x4fa0x9){mxUtils[_0x285e[1331]](_0x4fa0x9)&&(_0x4fa0x9=mxUtils[_0x285e[532]](_0x4fa0x9));var _0x4fa0x18=this[_0x285e[55]](_0x285e[963]);_0x4fa0x18[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2));_0x4fa0x18[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3));_0x4fa0x18[_0x285e[57]](_0x285e[1302],this[_0x285e[1239]](_0x4fa0x4));_0x4fa0x18[_0x285e[57]](_0x285e[1303],this[_0x285e[1239]](_0x4fa0x5));_0x4fa0x18[_0x285e[57]](_0x285e[1332],_0x4fa0x9);null!=_0x4fa0xa&&_0x4fa0x18[_0x285e[57]](_0x285e[611],_0x4fa0xa);null!=_0x4fa0x12&&_0x4fa0x18[_0x285e[57]](_0x285e[552],_0x4fa0x12);_0x4fa0x18[_0x285e[57]](_0x285e[1333],_0x4fa0x13?_0x285e[500]:_0x285e[468]);null==_0x4fa0x14&&(_0x4fa0x14=_0x285e[110]);_0x4fa0x18[_0x285e[57]](_0x285e[1239],_0x4fa0x14);null!=_0x4fa0x15&&_0x4fa0x18[_0x285e[57]](_0x285e[1334],_0x4fa0x15?_0x285e[500]:_0x285e[468]);null!=_0x4fa0x16&&_0x4fa0x18[_0x285e[57]](_0x285e[1335],_0x4fa0x16?_0x285e[500]:_0x285e[468]);null!=_0x4fa0x17&&_0x4fa0x18[_0x285e[57]](_0x285e[603],_0x4fa0x17);this[_0x285e[813]][_0x285e[62]](_0x4fa0x18)}};mxXmlCanvas2D[_0x285e[202]][_0x285e[1336]]=function(){this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[1336]))};mxXmlCanvas2D[_0x285e[202]][_0x285e[1334]]=function(){this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[1334]))};mxXmlCanvas2D[_0x285e[202]][_0x285e[1337]]=function(){this[_0x285e[813]][_0x285e[62]](this[_0x285e[55]](_0x285e[1338]))};function mxSvgCanvas2D(_0x4fa0x2,_0x4fa0x3){mxAbstractCanvas2D[_0x285e[239]](this);this[_0x285e[813]]=_0x4fa0x2;this[_0x285e[1339]]=[];this[_0x285e[1340]]=null;this[_0x285e[1341]]=null!=_0x4fa0x3?_0x4fa0x3:!1;var _0x4fa0x4=null;if(_0x4fa0x2[_0x285e[295]]!=document){for(_0x4fa0x4=_0x4fa0x2;null!=_0x4fa0x4&&_0x285e[571]!=_0x4fa0x4[_0x285e[301]];){_0x4fa0x4=_0x4fa0x4[_0x285e[265]]}};null!=_0x4fa0x4&&(0<_0x4fa0x4[_0x285e[64]](_0x285e[1340])[_0x285e[67]]&&(this[_0x285e[1340]]=_0x4fa0x4[_0x285e[64]](_0x285e[1340])[0]),null==this[_0x285e[1340]]&&(this[_0x285e[1340]]=this[_0x285e[55]](_0x285e[1340]),null!=_0x4fa0x4[_0x285e[285]]?_0x4fa0x4[_0x285e[950]](this[_0x285e[1340]],_0x4fa0x4[_0x285e[285]]):_0x4fa0x4[_0x285e[62]](this[_0x285e[1340]])),this[_0x285e[1341]]&&this[_0x285e[1340]][_0x285e[62]](this[_0x285e[1342]]()))}mxUtils[_0x285e[1284]](mxSvgCanvas2D,mxAbstractCanvas2D);mxSvgCanvas2D[_0x285e[202]][_0x285e[252]]=null;mxSvgCanvas2D[_0x285e[202]][_0x285e[1343]]= !0;mxSvgCanvas2D[_0x285e[202]][_0x285e[1285]]= !0;mxSvgCanvas2D[_0x285e[202]][_0x285e[1344]]= !0;mxSvgCanvas2D[_0x285e[202]][_0x285e[1345]]=0;mxSvgCanvas2D[_0x285e[202]][_0x285e[1346]]=0;mxSvgCanvas2D[_0x285e[202]][_0x285e[1347]]= !1;mxSvgCanvas2D[_0x285e[202]][_0x285e[862]]=function(){mxAbstractCanvas2D[_0x285e[202]][_0x285e[862]][_0x285e[183]](this,arguments);this[_0x285e[1339]]=[]};mxSvgCanvas2D[_0x285e[202]][_0x285e[1342]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[55]](_0x285e[124]);_0x4fa0x2[_0x285e[57]](_0x285e[60],_0x285e[61]);mxUtils[_0x285e[53]](_0x4fa0x2,_0x285e[1348]+mxConstants[_0x285e[484]]+_0x285e[1349]+mxConstants[_0x285e[483]]+_0x285e[1350]);return _0x4fa0x2};mxSvgCanvas2D[_0x285e[202]][_0x285e[55]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[813]][_0x285e[295]][_0x285e[509]]){return this[_0x285e[813]][_0x285e[295]][_0x285e[509]](_0x4fa0x3||mxConstants[_0x285e[1351]],_0x4fa0x2)};var _0x4fa0x4=this[_0x285e[813]][_0x285e[295]][_0x285e[55]](_0x4fa0x2);null!=_0x4fa0x3&&_0x4fa0x4[_0x285e[57]](_0x285e[1352],_0x4fa0x3);return _0x4fa0x4};mxSvgCanvas2D[_0x285e[202]][_0x285e[1353]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x285e[198]==_0x4fa0x2[_0x285e[225]](0)&&(_0x4fa0x2=_0x4fa0x2[_0x285e[85]](1));_0x285e[198]==_0x4fa0x3[_0x285e[225]](0)&&(_0x4fa0x3=_0x4fa0x3[_0x285e[85]](1));_0x4fa0x2=_0x4fa0x2[_0x285e[216]]()+_0x285e[213]+_0x4fa0x4;_0x4fa0x3=_0x4fa0x3[_0x285e[216]]()+_0x285e[213]+_0x4fa0x5;_0x4fa0x4=null;null==_0x4fa0x9||_0x4fa0x9==mxConstants[_0x285e[1354]]?_0x4fa0x4=_0x285e[1355]:_0x4fa0x9==mxConstants[_0x285e[1356]]?_0x4fa0x4=_0x285e[1357]:(_0x4fa0x5=_0x4fa0x2,_0x4fa0x2=_0x4fa0x3,_0x4fa0x3=_0x4fa0x5,_0x4fa0x9==mxConstants[_0x285e[1358]]?_0x4fa0x4=_0x285e[1355]:_0x4fa0x9==mxConstants[_0x285e[1359]]&&(_0x4fa0x4=_0x285e[1357]));return _0x285e[1360]+_0x4fa0x2+_0x285e[213]+_0x4fa0x3+_0x285e[213]+_0x4fa0x4};mxSvgCanvas2D[_0x285e[202]][_0x285e[1361]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=this[_0x285e[1353]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x12=this[_0x285e[1339]][_0x4fa0xa];if(null==_0x4fa0x12){var _0x4fa0x13=this[_0x285e[813]][_0x285e[538]],_0x4fa0x14=0,_0x4fa0x15=_0x4fa0xa+_0x285e[213]+_0x4fa0x14;if(null!=_0x4fa0x13){for(_0x4fa0x12=_0x4fa0x13[_0x285e[295]][_0x285e[1362]](_0x4fa0x15);null!=_0x4fa0x12&&_0x4fa0x12[_0x285e[538]]!=_0x4fa0x13;){_0x4fa0x15=_0x4fa0xa+_0x285e[213]+_0x4fa0x14++,_0x4fa0x12=_0x4fa0x13[_0x285e[295]][_0x285e[1362]](_0x4fa0x15)}}else {_0x4fa0x15=_0x285e[1363]+++this[_0x285e[1346]]};null==_0x4fa0x12&&(_0x4fa0x12=this[_0x285e[1364]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x12[_0x285e[57]](_0x285e[1363],_0x4fa0x15),null!=this[_0x285e[1340]]?this[_0x285e[1340]][_0x285e[62]](_0x4fa0x12):_0x4fa0x13[_0x285e[62]](_0x4fa0x12));this[_0x285e[1339]][_0x4fa0xa]=_0x4fa0x12};return _0x4fa0x12[_0x285e[284]](_0x285e[1363])};mxSvgCanvas2D[_0x285e[202]][_0x285e[1364]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=this[_0x285e[55]](_0x285e[1365]);_0x4fa0xa[_0x285e[57]](_0x285e[1324],_0x285e[1366]);_0x4fa0xa[_0x285e[57]](_0x285e[1325],_0x285e[1366]);_0x4fa0xa[_0x285e[57]](_0x285e[1326],_0x285e[1366]);_0x4fa0xa[_0x285e[57]](_0x285e[1327],_0x285e[1366]);null==_0x4fa0x9||_0x4fa0x9==mxConstants[_0x285e[1354]]?_0x4fa0xa[_0x285e[57]](_0x285e[1327],_0x285e[118]):_0x4fa0x9==mxConstants[_0x285e[1356]]?_0x4fa0xa[_0x285e[57]](_0x285e[1326],_0x285e[118]):_0x4fa0x9==mxConstants[_0x285e[1358]]?_0x4fa0xa[_0x285e[57]](_0x285e[1325],_0x285e[118]):_0x4fa0x9==mxConstants[_0x285e[1359]]&&_0x4fa0xa[_0x285e[57]](_0x285e[1324],_0x285e[118]);_0x4fa0x4=1>_0x4fa0x4?_0x285e[1367]+_0x4fa0x4:_0x285e[110];_0x4fa0x9=this[_0x285e[55]](_0x285e[1076]);_0x4fa0x9[_0x285e[57]](_0x285e[1368],_0x285e[1366]);_0x4fa0x9[_0x285e[57]](_0x285e[124],_0x285e[1369]+_0x4fa0x2+_0x4fa0x4);_0x4fa0xa[_0x285e[62]](_0x4fa0x9);_0x4fa0x4=1>_0x4fa0x5?_0x285e[1367]+_0x4fa0x5:_0x285e[110];_0x4fa0x9=this[_0x285e[55]](_0x285e[1076]);_0x4fa0x9[_0x285e[57]](_0x285e[1368],_0x285e[118]);_0x4fa0x9[_0x285e[57]](_0x285e[124],_0x285e[1369]+_0x4fa0x3+_0x4fa0x4);_0x4fa0xa[_0x285e[62]](_0x4fa0x9);return _0x4fa0xa};mxSvgCanvas2D[_0x285e[202]][_0x285e[1370]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[252]],_0x4fa0x5=this[_0x285e[724]];if(null!=_0x4fa0x4){if(_0x285e[1215]==_0x4fa0x4[_0x285e[301]]){if(null!=this[_0x285e[1215]]&&0<this[_0x285e[1215]][_0x285e[67]]){_0x4fa0x4[_0x285e[57]](_0x285e[1371],this[_0x285e[1215]][_0x285e[234]](_0x285e[185]))}else {return}};_0x4fa0x2&&null!=_0x4fa0x5[_0x285e[604]]?this[_0x285e[1372]]():this[_0x285e[1341]]||(_0x285e[680]==_0x4fa0x4[_0x285e[301]]&&mxClient[_0x285e[133]]&&!mxClient[_0x285e[76]]&&!mxClient[_0x285e[75]]?_0x4fa0x4[_0x285e[57]](_0x285e[1334],_0x285e[1373]):_0x4fa0x4[_0x285e[57]](_0x285e[1334],_0x285e[130]),_0x4fa0x2= !1);_0x4fa0x3&&null!=_0x4fa0x5[_0x285e[608]]?this[_0x285e[1374]]():this[_0x285e[1341]]||_0x4fa0x4[_0x285e[57]](_0x285e[1336],_0x285e[130]);null!=_0x4fa0x5[_0x285e[535]]&&0<_0x4fa0x5[_0x285e[535]][_0x285e[67]]&&_0x4fa0x4[_0x285e[57]](_0x285e[535],_0x4fa0x5[_0x285e[535]]);_0x4fa0x5[_0x285e[639]]&&this[_0x285e[813]][_0x285e[62]](this[_0x285e[1375]](_0x4fa0x4));0<this[_0x285e[1345]]&&!_0x4fa0x2&&this[_0x285e[813]][_0x285e[62]](this[_0x285e[1376]](_0x4fa0x4));this[_0x285e[1229]]&&(_0x285e[1215]!=_0x4fa0x4[_0x285e[301]]||this[_0x285e[1215]][this[_0x285e[1215]][_0x285e[67]]-1]==this[_0x285e[1227]])&&_0x4fa0x4[_0x285e[57]](_0x285e[1377],_0x285e[1378]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x4)}};mxSvgCanvas2D[_0x285e[202]][_0x285e[1372]]=function(){var _0x4fa0x2=this[_0x285e[724]];1>_0x4fa0x2[_0x285e[1244]]&&this[_0x285e[252]][_0x285e[57]](_0x285e[1379],_0x4fa0x2[_0x285e[1244]]);null!=_0x4fa0x2[_0x285e[604]]&&(null!=_0x4fa0x2[_0x285e[606]]?(_0x4fa0x2=this[_0x285e[1361]](_0x4fa0x2[_0x285e[604]],_0x4fa0x2[_0x285e[606]],_0x4fa0x2[_0x285e[1247]],_0x4fa0x2[_0x285e[1248]],_0x4fa0x2[_0x285e[607]]),this[_0x285e[252]][_0x285e[57]](_0x285e[1334],_0x285e[1380]+_0x4fa0x2+_0x285e[460])):this[_0x285e[252]][_0x285e[57]](_0x285e[1334],_0x4fa0x2[_0x285e[604]][_0x285e[216]]()))};mxSvgCanvas2D[_0x285e[202]][_0x285e[1374]]=function(){var _0x4fa0x2=this[_0x285e[724]];this[_0x285e[252]][_0x285e[57]](_0x285e[1336],_0x4fa0x2[_0x285e[608]][_0x285e[216]]());1>_0x4fa0x2[_0x285e[1244]]&&this[_0x285e[252]][_0x285e[57]](_0x285e[1381],_0x4fa0x2[_0x285e[1244]]);var _0x4fa0x3=Math[_0x285e[160]](1,this[_0x285e[1239]](_0x4fa0x2[_0x285e[610]]*_0x4fa0x2[_0x285e[255]]));1!=_0x4fa0x3&&this[_0x285e[252]][_0x285e[57]](_0x285e[1382],_0x4fa0x3);_0x285e[1215]==this[_0x285e[252]][_0x285e[301]]&&this[_0x285e[1383]]();_0x4fa0x2[_0x285e[648]]&&this[_0x285e[252]][_0x285e[57]](_0x285e[1384],this[_0x285e[1385]](_0x4fa0x3))};mxSvgCanvas2D[_0x285e[202]][_0x285e[1383]]=function(){var _0x4fa0x2=this[_0x285e[724]];null!=_0x4fa0x2[_0x285e[1256]]&&_0x285e[1233]!=_0x4fa0x2[_0x285e[1256]]&&this[_0x285e[252]][_0x285e[57]](_0x285e[1386],_0x4fa0x2[_0x285e[1256]]);if(null!=_0x4fa0x2[_0x285e[1254]]){var _0x4fa0x3=_0x4fa0x2[_0x285e[1254]];_0x285e[1232]==_0x4fa0x3&&(_0x4fa0x3=_0x285e[1387]);_0x285e[1387]!=_0x4fa0x3&&this[_0x285e[252]][_0x285e[57]](_0x285e[1388],_0x4fa0x3)};null!=_0x4fa0x2[_0x285e[1258]]&&(!this[_0x285e[1341]]||10!=_0x4fa0x2[_0x285e[1258]])&&this[_0x285e[252]][_0x285e[57]](_0x285e[1389],_0x4fa0x2[_0x285e[1258]])};mxSvgCanvas2D[_0x285e[202]][_0x285e[1385]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[724]][_0x285e[649]][_0x285e[224]](_0x285e[185]),_0x4fa0x4=[];if(0<_0x4fa0x3[_0x285e[67]]){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){_0x4fa0x4[_0x4fa0x5]=Number(_0x4fa0x3[_0x4fa0x5])*_0x4fa0x2}};return _0x4fa0x4[_0x285e[234]](_0x285e[185])};mxSvgCanvas2D[_0x285e[202]][_0x285e[1376]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[511]](!0);var _0x4fa0x3=parseFloat(_0x4fa0x2[_0x285e[284]](_0x285e[1382])||1)+this[_0x285e[1345]];_0x4fa0x2[_0x285e[57]](_0x285e[1377],_0x285e[1336]);_0x4fa0x2[_0x285e[57]](_0x285e[187],_0x285e[188]);_0x4fa0x2[_0x285e[1390]](_0x285e[1384]);_0x4fa0x2[_0x285e[57]](_0x285e[1382],_0x4fa0x3);_0x4fa0x2[_0x285e[57]](_0x285e[1334],_0x285e[130]);_0x4fa0x2[_0x285e[57]](_0x285e[1336],mxClient[_0x285e[71]]?_0x285e[130]:_0x285e[1391]);return _0x4fa0x2};mxSvgCanvas2D[_0x285e[202]][_0x285e[1375]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[511]](!0);var _0x4fa0x3=this[_0x285e[724]];_0x285e[130]!=_0x4fa0x2[_0x285e[284]](_0x285e[1334])&&_0x4fa0x2[_0x285e[57]](_0x285e[1334],_0x4fa0x3[_0x285e[1269]]);_0x285e[130]!=_0x4fa0x2[_0x285e[284]](_0x285e[1336])&&_0x4fa0x2[_0x285e[57]](_0x285e[1336],_0x4fa0x3[_0x285e[1269]]);_0x4fa0x2[_0x285e[57]](_0x285e[535],_0x285e[536]+this[_0x285e[1239]](_0x4fa0x3[_0x285e[1273]]*_0x4fa0x3[_0x285e[255]])+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x3[_0x285e[1274]]*_0x4fa0x3[_0x285e[255]])+_0x285e[460]+(_0x4fa0x3[_0x285e[535]]||_0x285e[110]));_0x4fa0x2[_0x285e[57]](_0x285e[461],_0x4fa0x3[_0x285e[1271]]);return _0x4fa0x2};mxSvgCanvas2D[_0x285e[202]][_0x285e[1294]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(0!=_0x4fa0x2||_0x4fa0x3||_0x4fa0x4){var _0x4fa0xa=this[_0x285e[724]];_0x4fa0x5+=_0x4fa0xa[_0x285e[1126]];_0x4fa0x9+=_0x4fa0xa[_0x285e[1125]];_0x4fa0x5*=_0x4fa0xa[_0x285e[255]];_0x4fa0x9*=_0x4fa0xa[_0x285e[255]];_0x4fa0xa[_0x285e[535]]=_0x4fa0xa[_0x285e[535]]||_0x285e[110];if(_0x4fa0x3&&_0x4fa0x4){_0x4fa0x2+=180}else {if(_0x4fa0x3^_0x4fa0x4){var _0x4fa0x12=_0x4fa0x3?_0x4fa0x5:0,_0x4fa0x13=_0x4fa0x3?-1:1,_0x4fa0x14=_0x4fa0x4?_0x4fa0x9:0,_0x4fa0x15=_0x4fa0x4?-1:1;_0x4fa0xa[_0x285e[535]]+=_0x285e[536]+this[_0x285e[1239]](_0x4fa0x12)+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x14)+_0x285e[1392]+this[_0x285e[1239]](_0x4fa0x13)+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x15)+_0x285e[1393]+this[_0x285e[1239]](-_0x4fa0x12)+_0x285e[537]+this[_0x285e[1239]](-_0x4fa0x14)+_0x285e[460]}};if(_0x4fa0x3?!_0x4fa0x4:_0x4fa0x4){_0x4fa0x2*= -1};0!=_0x4fa0x2&&(_0x4fa0xa[_0x285e[535]]+=_0x285e[1394]+this[_0x285e[1239]](_0x4fa0x2)+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x5)+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x9)+_0x285e[460]);_0x4fa0xa[_0x285e[603]]+=_0x4fa0x2;_0x4fa0xa[_0x285e[1395]]=_0x4fa0x5;_0x4fa0xa[_0x285e[1396]]=_0x4fa0x9}};mxSvgCanvas2D[_0x285e[202]][_0x285e[1275]]=function(){mxAbstractCanvas2D[_0x285e[202]][_0x285e[1275]][_0x285e[183]](this,arguments);this[_0x285e[252]]=this[_0x285e[55]](_0x285e[1215])};mxSvgCanvas2D[_0x285e[202]][_0x285e[1319]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[724]],_0x4fa0xa=this[_0x285e[55]](_0x285e[1319]);_0x4fa0xa[_0x285e[57]](_0x285e[235],this[_0x285e[1239]]((_0x4fa0x2+_0x4fa0x9[_0x285e[1126]])*_0x4fa0x9[_0x285e[255]]));_0x4fa0xa[_0x285e[57]](_0x285e[236],this[_0x285e[1239]]((_0x4fa0x3+_0x4fa0x9[_0x285e[1125]])*_0x4fa0x9[_0x285e[255]]));_0x4fa0xa[_0x285e[57]](_0x285e[117],this[_0x285e[1239]](_0x4fa0x4*_0x4fa0x9[_0x285e[255]]));_0x4fa0xa[_0x285e[57]](_0x285e[119],this[_0x285e[1239]](_0x4fa0x5*_0x4fa0x9[_0x285e[255]]));this[_0x285e[252]]=_0x4fa0xa};mxSvgCanvas2D[_0x285e[202]][_0x285e[1320]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1319]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);0<_0x4fa0x9&&this[_0x285e[252]][_0x285e[57]](_0x285e[1397],this[_0x285e[1239]](_0x4fa0x9*this[_0x285e[724]][_0x285e[255]]));0<_0x4fa0xa&&this[_0x285e[252]][_0x285e[57]](_0x285e[1398],this[_0x285e[1239]](_0x4fa0xa*this[_0x285e[724]][_0x285e[255]]))};mxSvgCanvas2D[_0x285e[202]][_0x285e[680]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[724]],_0x4fa0xa=this[_0x285e[55]](_0x285e[680]);_0x4fa0xa[_0x285e[57]](_0x285e[1296],Math[_0x285e[488]]((_0x4fa0x2+_0x4fa0x4/2+_0x4fa0x9[_0x285e[1126]])*_0x4fa0x9[_0x285e[255]]));_0x4fa0xa[_0x285e[57]](_0x285e[1297],Math[_0x285e[488]]((_0x4fa0x3+_0x4fa0x5/2+_0x4fa0x9[_0x285e[1125]])*_0x4fa0x9[_0x285e[255]]));_0x4fa0xa[_0x285e[57]](_0x285e[1397],_0x4fa0x4/2*_0x4fa0x9[_0x285e[255]]);_0x4fa0xa[_0x285e[57]](_0x285e[1398],_0x4fa0x5/2*_0x4fa0x9[_0x285e[255]]);this[_0x285e[252]]=_0x4fa0xa};mxSvgCanvas2D[_0x285e[202]][_0x285e[618]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){_0x4fa0x9=this[_0x285e[1212]][_0x285e[1321]](_0x4fa0x9);_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:!0;_0x4fa0x12=null!=_0x4fa0x12?_0x4fa0x12:!1;_0x4fa0x13=null!=_0x4fa0x13?_0x4fa0x13:!1;var _0x4fa0x14=this[_0x285e[724]];_0x4fa0x2+=_0x4fa0x14[_0x285e[1126]];_0x4fa0x3+=_0x4fa0x14[_0x285e[1125]];var _0x4fa0x15=this[_0x285e[55]](_0x285e[618]);_0x4fa0x15[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2*_0x4fa0x14[_0x285e[255]]));_0x4fa0x15[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3*_0x4fa0x14[_0x285e[255]]));_0x4fa0x15[_0x285e[57]](_0x285e[117],this[_0x285e[1239]](_0x4fa0x4*_0x4fa0x14[_0x285e[255]]));_0x4fa0x15[_0x285e[57]](_0x285e[119],this[_0x285e[1239]](_0x4fa0x5*_0x4fa0x14[_0x285e[255]]));null==_0x4fa0x15[_0x285e[1399]]?_0x4fa0x15[_0x285e[57]](_0x285e[1400],_0x4fa0x9):_0x4fa0x15[_0x285e[1399]](mxConstants.NS_XLINK,_0x285e[44],_0x4fa0x9);_0x4fa0xa||_0x4fa0x15[_0x285e[57]](_0x285e[1401],_0x285e[130]);1>_0x4fa0x14[_0x285e[1244]]&&_0x4fa0x15[_0x285e[57]](_0x285e[461],_0x4fa0x14[_0x285e[1244]]);_0x4fa0x9=this[_0x285e[724]][_0x285e[535]]||_0x285e[110];if(_0x4fa0x12||_0x4fa0x13){var _0x4fa0x16=_0x4fa0xa=1,_0x4fa0x17=0,_0x4fa0x18=0;_0x4fa0x12&&(_0x4fa0xa= -1,_0x4fa0x17=-_0x4fa0x4-2*_0x4fa0x2);_0x4fa0x13&&(_0x4fa0x16= -1,_0x4fa0x18=-_0x4fa0x5-2*_0x4fa0x3);_0x4fa0x9+=_0x285e[1402]+_0x4fa0xa+_0x285e[537]+_0x4fa0x16+_0x285e[1393]+_0x4fa0x17+_0x285e[537]+_0x4fa0x18+_0x285e[460]};0<_0x4fa0x9[_0x285e[67]]&&_0x4fa0x15[_0x285e[57]](_0x285e[535],_0x4fa0x9);this[_0x285e[813]][_0x285e[62]](_0x4fa0x15);this[_0x285e[1347]]&&(_0x4fa0x15[_0x285e[57]](_0x285e[124],_0x285e[1403]),_0x4fa0x15=this[_0x285e[55]](_0x285e[1319]),_0x4fa0x15[_0x285e[57]](_0x285e[187],_0x285e[188]),_0x4fa0x15[_0x285e[57]](_0x285e[1377],_0x285e[1334]),_0x4fa0x15[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2*_0x4fa0x14[_0x285e[255]])),_0x4fa0x15[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x3*_0x4fa0x14[_0x285e[255]])),_0x4fa0x15[_0x285e[57]](_0x285e[117],this[_0x285e[1239]](_0x4fa0x4*_0x4fa0x14[_0x285e[255]])),_0x4fa0x15[_0x285e[57]](_0x285e[119],this[_0x285e[1239]](_0x4fa0x5*_0x4fa0x14[_0x285e[255]])),this[_0x285e[813]][_0x285e[62]](_0x4fa0x15))};mxSvgCanvas2D[_0x285e[202]][_0x285e[1404]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x4=this[_0x285e[724]];_0x4fa0x5=_0x285e[1405]+Math[_0x285e[488]](_0x4fa0x4[_0x285e[487]])+_0x285e[1406]+_0x4fa0x4[_0x285e[486]]+_0x285e[1407]+_0x4fa0x4[_0x285e[665]]+_0x285e[1408]+Math[_0x285e[488]](_0x4fa0x4[_0x285e[487]]*mxConstants[_0x285e[490]])+_0x285e[1409]+_0x4fa0x5;(_0x4fa0x4[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]&&(_0x4fa0x5+=_0x285e[1411]);(_0x4fa0x4[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]&&(_0x4fa0x5+=_0x285e[1413]);(_0x4fa0x4[_0x285e[666]]&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]]&&(_0x4fa0x5+=_0x285e[1415]);_0x4fa0x3==mxConstants[_0x285e[479]]?_0x4fa0x5+=_0x285e[1416]:_0x4fa0x3==mxConstants[_0x285e[480]]&&(_0x4fa0x5+=_0x285e[1417]);_0x4fa0x3=_0x285e[110];null!=_0x4fa0x4[_0x285e[1261]]&&(_0x4fa0x3+=_0x285e[1418]+_0x4fa0x4[_0x285e[1261]]+_0x285e[471]);null!=_0x4fa0x4[_0x285e[1263]]&&(_0x4fa0x3+=_0x285e[1419]+_0x4fa0x4[_0x285e[1263]]+_0x285e[471]);mxUtils[_0x285e[1331]](_0x4fa0x2)||(_0x4fa0x4=document[_0x285e[55]](_0x285e[126]),_0x4fa0x4[_0x285e[339]]=_0x4fa0x2[_0x285e[230]](/</g,_0x285e[1421])[_0x285e[230]](/>/g,_0x285e[1420])[_0x285e[230]](/</g,_0x285e[334])[_0x285e[230]](/>/g,_0x285e[335]),_0x4fa0x2=_0x4fa0x4[_0x285e[131]],_0x4fa0x9?_0x4fa0x5+=_0x4fa0x3:0<_0x4fa0x3[_0x285e[67]]&&(_0x4fa0x2=_0x285e[1422]+_0x4fa0x3+_0x285e[1423]+_0x4fa0x2+_0x285e[1424]));if(!mxClient[_0x285e[80]]&&document[_0x285e[509]]){return _0x4fa0x9=document[_0x285e[509]](_0x285e[577],_0x285e[485]),_0x4fa0x9[_0x285e[57]](_0x285e[124],_0x4fa0x5),mxUtils[_0x285e[1331]](_0x4fa0x2)?this[_0x285e[813]][_0x285e[295]]!=document?_0x4fa0x9[_0x285e[62]](_0x4fa0x2[_0x285e[511]](!0)):_0x4fa0x9[_0x285e[62]](_0x4fa0x2):_0x4fa0x9[_0x285e[339]]=_0x4fa0x2,_0x4fa0x9};mxUtils[_0x285e[1331]](_0x4fa0x2)&&this[_0x285e[813]][_0x285e[295]]!=document&&(_0x4fa0x2=_0x4fa0x2[_0x285e[342]]);_0x4fa0x2=_0x4fa0x2[_0x285e[230]](/<br>/g,_0x285e[1426])[_0x285e[230]](/<hr>/g,_0x285e[1425]);return mxUtils[_0x285e[877]](_0x285e[1427]+_0x4fa0x5+_0x285e[1423]+_0x4fa0x2+_0x285e[1424])[_0x285e[158]]};mxSvgCanvas2D[_0x285e[202]][_0x285e[963]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){if(this[_0x285e[1285]]&&null!=_0x4fa0x9){_0x4fa0x17=null!=_0x4fa0x17?_0x4fa0x17:0;var _0x4fa0x18=this[_0x285e[724]];_0x4fa0x2+=_0x4fa0x18[_0x285e[1126]];_0x4fa0x3+=_0x4fa0x18[_0x285e[1125]];if(this[_0x285e[1344]]&&_0x285e[1428]==_0x4fa0x14){var _0x4fa0x19=_0x285e[1429];_0x4fa0x16?(_0x4fa0x19+=_0x285e[1430],0<_0x4fa0x5&&(_0x4fa0x19+=_0x285e[1431]+Math[_0x285e[488]](_0x4fa0x5)+_0x285e[1409]),0<_0x4fa0x4&&(_0x4fa0x19+=_0x285e[1432]+Math[_0x285e[488]](_0x4fa0x4)+_0x285e[1409])):_0x4fa0x15&&(_0x4fa0x19+=_0x285e[1432]+Math[_0x285e[488]](_0x4fa0x4)+_0x285e[1409],0<_0x4fa0x5&&(_0x4fa0x19+=_0x285e[1431]+Math[_0x285e[488]](_0x4fa0x5)+_0x285e[1409]));_0x4fa0x13?(!_0x4fa0x16&&0<_0x4fa0x4&&(_0x4fa0x19+=_0x285e[1432]+Math[_0x285e[488]](_0x4fa0x4)+_0x285e[1409]),_0x4fa0x19+=_0x285e[1433]):_0x4fa0x19+=_0x285e[1434];_0x4fa0x13=this[_0x285e[55]](_0x285e[449]);1>_0x4fa0x18[_0x285e[1244]]&&_0x4fa0x13[_0x285e[57]](_0x285e[461],_0x4fa0x18[_0x285e[1244]]);_0x4fa0x14=this[_0x285e[55]](_0x285e[1435]);_0x4fa0x14[_0x285e[57]](_0x285e[1377],_0x285e[1378]);_0x4fa0x19=this[_0x285e[1404]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x19,_0x4fa0x15);if(null!=_0x4fa0x19){_0x4fa0x13[_0x285e[62]](_0x4fa0x14);this[_0x285e[813]][_0x285e[62]](_0x4fa0x13);var _0x4fa0x1a=0;if(mxClient[_0x285e[80]]&&!mxClient[_0x285e[48]]){var _0x4fa0x1b=document[_0x285e[55]](_0x285e[485]);_0x4fa0x1b[_0x285e[124]][_0x285e[103]]=_0x4fa0x19[_0x285e[284]](_0x285e[124]);_0x4fa0x1b[_0x285e[124]][_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498];_0x4fa0x1b[_0x285e[124]][_0x285e[187]]=_0x285e[188];_0x4fa0x1b[_0x285e[339]]=mxUtils[_0x285e[1331]](_0x4fa0x9)?_0x4fa0x9[_0x285e[342]]:_0x4fa0x9;document[_0x285e[112]][_0x285e[62]](_0x4fa0x1b);_0x4fa0x1a=_0x4fa0x1b[_0x285e[359]];_0x4fa0x5=mxClient[_0x285e[496]]&&0<_0x4fa0x5&&_0x4fa0x16?Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x1b[_0x285e[167]]+2):_0x4fa0x1b[_0x285e[167]];_0x4fa0x1b[_0x285e[265]][_0x285e[266]](_0x4fa0x1b);_0x4fa0x14[_0x285e[62]](_0x4fa0x19)}else {this[_0x285e[813]][_0x285e[295]]!=document?(_0x4fa0x19[_0x285e[124]][_0x285e[187]]=_0x285e[188],document[_0x285e[112]][_0x285e[62]](_0x4fa0x19),_0x4fa0x1a=_0x4fa0x19[_0x285e[359]],_0x4fa0x5=_0x4fa0x19[_0x285e[167]],_0x4fa0x14[_0x285e[62]](_0x4fa0x19),_0x4fa0x19[_0x285e[124]][_0x285e[187]]=_0x285e[110]):(_0x4fa0x14[_0x285e[62]](_0x4fa0x19),_0x4fa0x1a=_0x4fa0x19[_0x285e[359]],_0x4fa0x5=_0x4fa0x19[_0x285e[167]])};_0x4fa0x4=_0x4fa0x15?Math[_0x285e[160]](_0x4fa0x4,_0x4fa0x1a):_0x4fa0x1a;1>_0x4fa0x18[_0x285e[1244]]&&_0x4fa0x13[_0x285e[57]](_0x285e[461],_0x4fa0x18[_0x285e[1244]]);_0x4fa0x15=_0x4fa0x9=0;_0x4fa0xa==mxConstants[_0x285e[479]]?_0x4fa0x9-=_0x4fa0x4/2:_0x4fa0xa==mxConstants[_0x285e[480]]&&(_0x4fa0x9-=_0x4fa0x4);_0x4fa0x2+=_0x4fa0x9;_0x4fa0x12==mxConstants[_0x285e[481]]?_0x4fa0x15-=_0x4fa0x5/2:_0x4fa0x12==mxConstants[_0x285e[482]]&&(_0x4fa0x15-=_0x4fa0x5);_0x4fa0x3+=_0x4fa0x15;_0x4fa0xa=1!=_0x4fa0x18[_0x285e[255]]?_0x285e[1402]+_0x4fa0x18[_0x285e[255]]+_0x285e[460]:_0x285e[110];0!=_0x4fa0x18[_0x285e[603]]&&this[_0x285e[1216]]?(_0x4fa0xa+=_0x285e[1394]+_0x4fa0x18[_0x285e[603]]+_0x285e[537]+_0x4fa0x4/2+_0x285e[537]+_0x4fa0x5/2+_0x285e[460],_0x4fa0x3=this[_0x285e[1241]]((_0x4fa0x2+_0x4fa0x4/2)*_0x4fa0x18[_0x285e[255]],(_0x4fa0x3+_0x4fa0x5/2)*_0x4fa0x18[_0x285e[255]],_0x4fa0x18[_0x285e[603]],_0x4fa0x18[_0x285e[1395]],_0x4fa0x18[_0x285e[1396]]),_0x4fa0x2=_0x4fa0x3[_0x285e[235]]-_0x4fa0x4*_0x4fa0x18[_0x285e[255]]/2,_0x4fa0x3=_0x4fa0x3[_0x285e[236]]-_0x4fa0x5*_0x4fa0x18[_0x285e[255]]/2):(_0x4fa0x2*=_0x4fa0x18[_0x285e[255]],_0x4fa0x3*=_0x4fa0x18[_0x285e[255]]);0!=_0x4fa0x17&&(_0x4fa0xa+=_0x285e[1394]+_0x4fa0x17+_0x285e[537]+-_0x4fa0x9+_0x285e[537]+-_0x4fa0x15+_0x285e[460]);_0x4fa0x13[_0x285e[57]](_0x285e[535],_0x285e[536]+Math[_0x285e[488]](_0x4fa0x2)+_0x285e[537]+Math[_0x285e[488]](_0x4fa0x3)+_0x285e[460]+_0x4fa0xa);_0x4fa0x14[_0x285e[57]](_0x285e[117],Math[_0x285e[488]](Math[_0x285e[160]](1,_0x4fa0x4)));_0x4fa0x14[_0x285e[57]](_0x285e[119],Math[_0x285e[488]](Math[_0x285e[160]](1,_0x4fa0x5)))}}else {this[_0x285e[1436]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17)}}};mxSvgCanvas2D[_0x285e[202]][_0x285e[1437]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2=Math[_0x285e[488]](_0x4fa0x2);_0x4fa0x3=Math[_0x285e[488]](_0x4fa0x3);_0x4fa0x4=Math[_0x285e[488]](_0x4fa0x4);_0x4fa0x5=Math[_0x285e[488]](_0x4fa0x5);for(var _0x4fa0x9=_0x285e[1438]+_0x4fa0x2+_0x285e[213]+_0x4fa0x3+_0x285e[213]+_0x4fa0x4+_0x285e[213]+_0x4fa0x5,_0x4fa0xa=0,_0x4fa0x12=_0x4fa0x9+_0x285e[213]+_0x4fa0xa;null!=document[_0x285e[1362]](_0x4fa0x12);){_0x4fa0x12=_0x4fa0x9+_0x285e[213]+ ++_0x4fa0xa};clip=this[_0x285e[55]](_0x285e[1439]);clip[_0x285e[57]](_0x285e[1363],_0x4fa0x12);_0x4fa0x9=this[_0x285e[55]](_0x285e[1319]);_0x4fa0x9[_0x285e[57]](_0x285e[235],_0x4fa0x2);_0x4fa0x9[_0x285e[57]](_0x285e[236],_0x4fa0x3);_0x4fa0x9[_0x285e[57]](_0x285e[117],_0x4fa0x4);_0x4fa0x9[_0x285e[57]](_0x285e[119],_0x4fa0x5);clip[_0x285e[62]](_0x4fa0x9);return clip};mxSvgCanvas2D[_0x285e[202]][_0x285e[1436]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16){_0x4fa0x16=null!=_0x4fa0x16?_0x4fa0x16:0;_0x4fa0x13=this[_0x285e[724]];var _0x4fa0x17=Math[_0x285e[488]](_0x4fa0x13[_0x285e[487]]),_0x4fa0x18=this[_0x285e[55]](_0x285e[449]),_0x4fa0x19=_0x4fa0x13[_0x285e[535]]||_0x285e[110];0!=_0x4fa0x16&&(_0x4fa0x19+=_0x285e[1394]+_0x4fa0x16+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x2*_0x4fa0x13[_0x285e[255]])+_0x285e[537]+this[_0x285e[1239]](_0x4fa0x3*_0x4fa0x13[_0x285e[255]])+_0x285e[460]);if(_0x4fa0x15&&0<_0x4fa0x4&&0<_0x4fa0x5){var _0x4fa0x1a=_0x4fa0x2;_0x4fa0x16=_0x4fa0x3;_0x4fa0xa==mxConstants[_0x285e[479]]?_0x4fa0x1a-=_0x4fa0x4/2:_0x4fa0xa==mxConstants[_0x285e[480]]&&(_0x4fa0x1a-=_0x4fa0x4);_0x4fa0x12==mxConstants[_0x285e[481]]?_0x4fa0x16-=_0x4fa0x5/2:_0x4fa0x12==mxConstants[_0x285e[482]]&&(_0x4fa0x16-=_0x4fa0x5);_0x4fa0x16=this[_0x285e[1437]](_0x4fa0x1a*_0x4fa0x13[_0x285e[255]]-2,_0x4fa0x16*_0x4fa0x13[_0x285e[255]]-2,_0x4fa0x4*_0x4fa0x13[_0x285e[255]]+4,_0x4fa0x5*_0x4fa0x13[_0x285e[255]]+4);null!=this[_0x285e[1340]]?this[_0x285e[1340]][_0x285e[62]](_0x4fa0x16):this[_0x285e[813]][_0x285e[62]](_0x4fa0x16);_0x4fa0x18[_0x285e[57]](_0x285e[1440],_0x285e[1380]+_0x4fa0x16[_0x285e[284]](_0x285e[1363])+_0x285e[460])};this[_0x285e[1441]](_0x4fa0x18,_0x4fa0xa);_0x4fa0x16=_0x4fa0xa==mxConstants[_0x285e[480]]?_0x285e[1282]:_0x4fa0xa==mxConstants[_0x285e[479]]?_0x285e[554]:_0x285e[861];_0x285e[861]!=_0x4fa0x16&&_0x4fa0x18[_0x285e[57]](_0x285e[1442],_0x4fa0x16);(!this[_0x285e[1341]]||_0x4fa0x17!=mxConstants[_0x285e[483]])&&_0x4fa0x18[_0x285e[57]](_0x285e[1443],Math[_0x285e[488]](_0x4fa0x17*_0x4fa0x13[_0x285e[255]])+_0x285e[168]);0<_0x4fa0x19[_0x285e[67]]&&_0x4fa0x18[_0x285e[57]](_0x285e[535],_0x4fa0x19);1>_0x4fa0x13[_0x285e[1244]]&&_0x4fa0x18[_0x285e[57]](_0x285e[461],_0x4fa0x13[_0x285e[1244]]);var _0x4fa0x19=_0x4fa0x9[_0x285e[224]](_0x285e[192]),_0x4fa0x1a=Math[_0x285e[488]](_0x4fa0x17*mxConstants[_0x285e[490]]),_0x4fa0x1b=_0x4fa0x17+(_0x4fa0x19[_0x285e[67]]-1)*_0x4fa0x1a;_0x4fa0x16=_0x4fa0x3+_0x4fa0x17-1;_0x4fa0x12==mxConstants[_0x285e[481]]?(_0x4fa0x5=(this[_0x285e[1343]]&&_0x4fa0x15&&0<_0x4fa0x5?Math[_0x285e[243]](_0x4fa0x1b,_0x4fa0x5):_0x4fa0x1b)/2,_0x4fa0x16-=_0x4fa0x5+1):_0x4fa0x12==mxConstants[_0x285e[482]]&&(_0x4fa0x5=this[_0x285e[1343]]&&_0x4fa0x15&&0<_0x4fa0x5?Math[_0x285e[243]](_0x4fa0x1b,_0x4fa0x5):_0x4fa0x1b,_0x4fa0x16-=_0x4fa0x5+2);for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x19[_0x285e[67]];_0x4fa0x5++){0<_0x4fa0x19[_0x4fa0x5][_0x285e[67]]&&0<mxUtils[_0x285e[330]](_0x4fa0x19[_0x4fa0x5])[_0x285e[67]]&&(_0x4fa0x15=this[_0x285e[55]](_0x285e[963]),_0x4fa0x15[_0x285e[57]](_0x285e[235],this[_0x285e[1239]](_0x4fa0x2*_0x4fa0x13[_0x285e[255]])),_0x4fa0x15[_0x285e[57]](_0x285e[236],this[_0x285e[1239]](_0x4fa0x16*_0x4fa0x13[_0x285e[255]])),mxUtils[_0x285e[53]](_0x4fa0x15,_0x4fa0x19[_0x4fa0x5]),_0x4fa0x18[_0x285e[62]](_0x4fa0x15)),_0x4fa0x16+=_0x4fa0x1a};this[_0x285e[813]][_0x285e[62]](_0x4fa0x18);this[_0x285e[1444]](_0x4fa0x18,_0x4fa0x9,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x1b,_0x4fa0xa,_0x4fa0x12,_0x4fa0x14)};mxSvgCanvas2D[_0x285e[202]][_0x285e[1441]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[724]];_0x4fa0x2[_0x285e[57]](_0x285e[1334],_0x4fa0x3[_0x285e[665]]);(!this[_0x285e[1341]]||_0x4fa0x3[_0x285e[486]]!=mxConstants[_0x285e[484]])&&_0x4fa0x2[_0x285e[57]](_0x285e[1445],_0x4fa0x3[_0x285e[486]]);(_0x4fa0x3[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]&&_0x4fa0x2[_0x285e[57]](_0x285e[1446],_0x285e[1447]);(_0x4fa0x3[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]&&_0x4fa0x2[_0x285e[57]](_0x285e[1448],_0x285e[1449]);(_0x4fa0x3[_0x285e[666]]&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]]&&_0x4fa0x2[_0x285e[57]](_0x285e[1450],_0x285e[355])};mxSvgCanvas2D[_0x285e[202]][_0x285e[1444]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){var _0x4fa0x15=this[_0x285e[724]];if(null!=_0x4fa0x15[_0x285e[1261]]||null!=_0x4fa0x15[_0x285e[1263]]){var _0x4fa0x16=null;_0x4fa0x14?(_0x4fa0x12==mxConstants[_0x285e[479]]?_0x4fa0x4-=_0x4fa0x9/2:_0x4fa0x12==mxConstants[_0x285e[480]]&&(_0x4fa0x4-=_0x4fa0x9),_0x4fa0x13==mxConstants[_0x285e[481]]?_0x4fa0x5-=_0x4fa0xa/2:_0x4fa0x13==mxConstants[_0x285e[482]]&&(_0x4fa0x5-=_0x4fa0xa),_0x4fa0x16= new mxRectangle((_0x4fa0x4+1)*_0x4fa0x15[_0x285e[255]],_0x4fa0x5*_0x4fa0x15[_0x285e[255]],(_0x4fa0x9-2)*_0x4fa0x15[_0x285e[255]],(_0x4fa0xa+2)*_0x4fa0x15[_0x285e[255]])):null!=_0x4fa0x2[_0x285e[1451]]&&this[_0x285e[813]][_0x285e[295]]==document?(_0x4fa0x16=_0x4fa0x2[_0x285e[1451]](),_0x4fa0x3=mxClient[_0x285e[80]]&&mxClient[_0x285e[48]],_0x4fa0x16= new mxRectangle(_0x4fa0x16[_0x285e[235]],_0x4fa0x16[_0x285e[236]]+(_0x4fa0x3?0:1),_0x4fa0x16[_0x285e[117]],_0x4fa0x16[_0x285e[119]]+(_0x4fa0x3?1:0))):(_0x4fa0x16=document[_0x285e[55]](_0x285e[485]),_0x4fa0x16[_0x285e[124]][_0x285e[489]]=Math[_0x285e[488]](_0x4fa0x15[_0x285e[487]]*mxConstants[_0x285e[490]])+_0x285e[168],_0x4fa0x16[_0x285e[124]][_0x285e[487]]=Math[_0x285e[488]](_0x4fa0x15[_0x285e[487]])+_0x285e[168],_0x4fa0x16[_0x285e[124]][_0x285e[486]]=_0x4fa0x15[_0x285e[486]],_0x4fa0x16[_0x285e[124]][_0x285e[493]]=_0x285e[494],_0x4fa0x16[_0x285e[124]][_0x285e[491]]=_0x285e[492],_0x4fa0x16[_0x285e[124]][_0x285e[187]]=_0x285e[188],_0x4fa0x16[_0x285e[124]][_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498],_0x4fa0x16[_0x285e[124]][_0x285e[499]]=_0x285e[500],(_0x4fa0x15[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]&&(_0x4fa0x16[_0x285e[124]][_0x285e[1452]]=_0x285e[1447]),(_0x4fa0x15[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]&&(_0x4fa0x16[_0x285e[124]][_0x285e[666]]=_0x285e[1449]),_0x4fa0x3=mxUtils[_0x285e[321]](_0x4fa0x3,!1),_0x4fa0x16[_0x285e[339]]=_0x4fa0x3[_0x285e[230]](/\n/g,_0x285e[1453]),document[_0x285e[112]][_0x285e[62]](_0x4fa0x16),_0x4fa0x9=_0x4fa0x16[_0x285e[359]],_0x4fa0xa=_0x4fa0x16[_0x285e[167]],_0x4fa0x16[_0x285e[265]][_0x285e[266]](_0x4fa0x16),_0x4fa0x12==mxConstants[_0x285e[479]]?_0x4fa0x4-=_0x4fa0x9/2:_0x4fa0x12==mxConstants[_0x285e[480]]&&(_0x4fa0x4-=_0x4fa0x9),_0x4fa0x13==mxConstants[_0x285e[481]]?_0x4fa0x5-=_0x4fa0xa/2:_0x4fa0x13==mxConstants[_0x285e[482]]&&(_0x4fa0x5-=_0x4fa0xa),_0x4fa0x16= new mxRectangle((_0x4fa0x4+1)*_0x4fa0x15[_0x285e[255]],(_0x4fa0x5+2)*_0x4fa0x15[_0x285e[255]],_0x4fa0x9*_0x4fa0x15[_0x285e[255]],(_0x4fa0xa+1)*_0x4fa0x15[_0x285e[255]]));null!=_0x4fa0x16&&(_0x4fa0x3=this[_0x285e[55]](_0x285e[1319]),_0x4fa0x3[_0x285e[57]](_0x285e[1334],_0x4fa0x15[_0x285e[1261]]||_0x285e[130]),_0x4fa0x3[_0x285e[57]](_0x285e[1336],_0x4fa0x15[_0x285e[1263]]||_0x285e[130]),_0x4fa0x3[_0x285e[57]](_0x285e[235],Math[_0x285e[519]](_0x4fa0x16[_0x285e[235]]-1)),_0x4fa0x3[_0x285e[57]](_0x285e[236],Math[_0x285e[519]](_0x4fa0x16[_0x285e[236]]-1)),_0x4fa0x3[_0x285e[57]](_0x285e[117],Math[_0x285e[430]](_0x4fa0x16[_0x285e[117]]+2)),_0x4fa0x3[_0x285e[57]](_0x285e[119],Math[_0x285e[430]](_0x4fa0x16[_0x285e[119]])),_0x4fa0x15=null!=_0x4fa0x15[_0x285e[1263]]?Math[_0x285e[160]](1,this[_0x285e[1239]](_0x4fa0x15[_0x285e[255]])):0,_0x4fa0x3[_0x285e[57]](_0x285e[1382],_0x4fa0x15),this[_0x285e[813]][_0x285e[295]]==document&&1==mxUtils[_0x285e[1454]](_0x4fa0x15,2)&&_0x4fa0x3[_0x285e[57]](_0x285e[535],_0x285e[1455]),_0x4fa0x2[_0x285e[950]](_0x4fa0x3,_0x4fa0x2[_0x285e[285]]))}};mxSvgCanvas2D[_0x285e[202]][_0x285e[1336]]=function(){this[_0x285e[1370]](!1,!0)};mxSvgCanvas2D[_0x285e[202]][_0x285e[1334]]=function(){this[_0x285e[1370]](!0,!1)};mxSvgCanvas2D[_0x285e[202]][_0x285e[1337]]=function(){this[_0x285e[1370]](!0,!0)};var mxVmlCanvas2D=function(_0x4fa0x2){mxAbstractCanvas2D[_0x285e[239]](this);this[_0x285e[813]]=_0x4fa0x2};mxUtils[_0x285e[1284]](mxVmlCanvas2D,mxAbstractCanvas2D);mxVmlCanvas2D[_0x285e[202]][_0x285e[252]]=null;mxVmlCanvas2D[_0x285e[202]][_0x285e[1285]]= !0;mxVmlCanvas2D[_0x285e[202]][_0x285e[1219]]=_0x285e[1456];mxVmlCanvas2D[_0x285e[202]][_0x285e[1221]]=_0x285e[1457];mxVmlCanvas2D[_0x285e[202]][_0x285e[1225]]=_0x285e[1458];mxVmlCanvas2D[_0x285e[202]][_0x285e[1227]]=_0x285e[235];mxVmlCanvas2D[_0x285e[202]][_0x285e[1459]]=_0x285e[110];mxVmlCanvas2D[_0x285e[202]][_0x285e[1460]]=1;mxVmlCanvas2D[_0x285e[202]][_0x285e[1370]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[252]],_0x4fa0x5=this[_0x285e[724]];if(null!=_0x4fa0x4){if(_0x285e[253]==_0x4fa0x4[_0x285e[301]]){if(null!=this[_0x285e[1215]]&&0<this[_0x285e[1215]][_0x285e[67]]){_0x4fa0x4[_0x285e[1215]]=this[_0x285e[1215]][_0x285e[234]](_0x285e[185])+_0x285e[1461],_0x4fa0x4[_0x285e[124]][_0x285e[117]]=this[_0x285e[813]][_0x285e[124]][_0x285e[117]],_0x4fa0x4[_0x285e[124]][_0x285e[119]]=this[_0x285e[813]][_0x285e[124]][_0x285e[119]],_0x4fa0x4[_0x285e[1462]]=parseInt(_0x4fa0x4[_0x285e[124]][_0x285e[117]])+_0x285e[185]+parseInt(_0x4fa0x4[_0x285e[124]][_0x285e[119]])}else {return}};_0x4fa0x4[_0x285e[1463]]=this[_0x285e[1239]](Math[_0x285e[160]](1,_0x4fa0x5[_0x285e[610]]*_0x4fa0x5[_0x285e[255]]/this[_0x285e[1460]]))+_0x285e[168];_0x4fa0x5[_0x285e[639]]&&this[_0x285e[813]][_0x285e[62]](this[_0x285e[1375]](_0x4fa0x4,_0x4fa0x2&&null!=_0x4fa0x5[_0x285e[604]],_0x4fa0x3&&null!=_0x4fa0x5[_0x285e[608]]));_0x4fa0x3&&null!=_0x4fa0x5[_0x285e[608]]?(_0x4fa0x4[_0x285e[1464]]=_0x285e[128],_0x4fa0x4[_0x285e[1306]]=_0x4fa0x5[_0x285e[608]]):_0x4fa0x4[_0x285e[1464]]=_0x285e[308];_0x4fa0x4[_0x285e[62]](this[_0x285e[1465]]());_0x4fa0x2&&null!=_0x4fa0x5[_0x285e[604]]?_0x4fa0x4[_0x285e[62]](this[_0x285e[1466]]()):this[_0x285e[1229]]&&(_0x285e[253]!=_0x4fa0x4[_0x285e[301]]||this[_0x285e[1215]][this[_0x285e[1215]][_0x285e[67]]-1]==this[_0x285e[1227]])?_0x4fa0x4[_0x285e[62]](this[_0x285e[1467]]()):_0x4fa0x4[_0x285e[1468]]=_0x285e[308];this[_0x285e[813]][_0x285e[62]](_0x4fa0x4)}};mxVmlCanvas2D[_0x285e[202]][_0x285e[1467]]=function(){var _0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1469]);_0x4fa0x2[_0x285e[390]]=mxClient[_0x285e[88]]+_0x285e[1470];_0x4fa0x2[_0x285e[60]]=_0x285e[1471];return _0x4fa0x2};mxVmlCanvas2D[_0x285e[202]][_0x285e[1466]]=function(){var _0x4fa0x2=this[_0x285e[724]],_0x4fa0x3=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1469]);_0x4fa0x3[_0x285e[352]]=_0x4fa0x2[_0x285e[604]];if(null!=_0x4fa0x2[_0x285e[606]]){_0x4fa0x3[_0x285e[60]]=_0x285e[1299];_0x4fa0x3[_0x285e[865]]=_0x285e[130];_0x4fa0x3[_0x285e[1472]]=_0x4fa0x2[_0x285e[606]];var _0x4fa0x4=180-_0x4fa0x2[_0x285e[603]],_0x4fa0x4=_0x4fa0x2[_0x285e[607]]==mxConstants[_0x285e[1359]]?_0x4fa0x4-(90+(_0x285e[235]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]?180:0)):_0x4fa0x2[_0x285e[607]]==mxConstants[_0x285e[1356]]?_0x4fa0x4+(90+(_0x285e[235]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]?180:0)):_0x4fa0x2[_0x285e[607]]==mxConstants[_0x285e[1358]]?_0x4fa0x4-(180+(_0x285e[236]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]?-180:0)):_0x4fa0x4+(_0x285e[236]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]?-180:0);if(_0x285e[235]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]||_0x285e[236]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]){_0x4fa0x4*= -1};_0x4fa0x3[_0x285e[1474]]=mxUtils[_0x285e[1454]](_0x4fa0x4,360);_0x4fa0x3[_0x285e[461]]=100*_0x4fa0x2[_0x285e[1244]]*_0x4fa0x2[_0x285e[1247]]+_0x285e[229];_0x4fa0x3[_0x285e[57]](mxClient[_0x285e[1475]]+_0x285e[1476],100*_0x4fa0x2[_0x285e[1244]]*_0x4fa0x2[_0x285e[1248]]+_0x285e[229])}else {1>_0x4fa0x2[_0x285e[1244]]&&(_0x4fa0x3[_0x285e[461]]=100*_0x4fa0x2[_0x285e[1244]]+_0x285e[229])};return _0x4fa0x3};mxVmlCanvas2D[_0x285e[202]][_0x285e[1465]]=function(){var _0x4fa0x2=this[_0x285e[724]],_0x4fa0x3=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1477]);_0x4fa0x3[_0x285e[1478]]=_0x4fa0x2[_0x285e[1254]]||_0x285e[1232];_0x4fa0x3[_0x285e[1479]]=_0x4fa0x2[_0x285e[1256]]||_0x285e[1233];_0x4fa0x3[_0x285e[1313]]=_0x4fa0x2[_0x285e[1258]]||_0x285e[1480];1>_0x4fa0x2[_0x285e[1244]]&&(_0x4fa0x3[_0x285e[461]]=100*_0x4fa0x2[_0x285e[1244]]+_0x285e[229]);_0x4fa0x2[_0x285e[648]]&&(_0x4fa0x3[_0x285e[1481]]=this[_0x285e[1482]]());return _0x4fa0x3};mxVmlCanvas2D[_0x285e[202]][_0x285e[1482]]=function(){var _0x4fa0x2=_0x285e[1483];if(null!=this[_0x285e[724]][_0x285e[649]]){var _0x4fa0x3=this[_0x285e[724]][_0x285e[649]][_0x285e[224]](_0x285e[185]);0<_0x4fa0x3[_0x285e[67]]&&1==_0x4fa0x3[0]&&(_0x4fa0x2=_0x285e[1484])};return _0x4fa0x2};mxVmlCanvas2D[_0x285e[202]][_0x285e[1375]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[724]],_0x4fa0x9=-_0x4fa0x5[_0x285e[603]]*(Math[_0x285e[424]]/180),_0x4fa0xa=Math[_0x285e[426]](_0x4fa0x9),_0x4fa0x9=Math[_0x285e[427]](_0x4fa0x9),_0x4fa0x12=_0x4fa0x5[_0x285e[1273]]*_0x4fa0x5[_0x285e[255]],_0x4fa0x13=_0x4fa0x5[_0x285e[1274]]*_0x4fa0x5[_0x285e[255]];_0x285e[235]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]?_0x4fa0x12*= -1:_0x285e[236]==this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]&&(_0x4fa0x13*= -1);var _0x4fa0x14=_0x4fa0x2[_0x285e[511]](!0);_0x4fa0x14[_0x285e[124]][_0x285e[945]]=Math[_0x285e[488]](_0x4fa0x12*_0x4fa0xa-_0x4fa0x13*_0x4fa0x9)+_0x285e[168];_0x4fa0x14[_0x285e[124]][_0x285e[953]]=Math[_0x285e[488]](_0x4fa0x12*_0x4fa0x9+_0x4fa0x13*_0x4fa0xa)+_0x285e[168];8==document[_0x285e[5]]&&(_0x4fa0x14[_0x285e[1463]]=_0x4fa0x2[_0x285e[1463]],_0x285e[253]==_0x4fa0x2[_0x285e[301]]&&(_0x4fa0x14[_0x285e[1215]]=this[_0x285e[1215]][_0x285e[234]](_0x285e[185])+_0x285e[1461],_0x4fa0x14[_0x285e[124]][_0x285e[117]]=this[_0x285e[813]][_0x285e[124]][_0x285e[117]],_0x4fa0x14[_0x285e[124]][_0x285e[119]]=this[_0x285e[813]][_0x285e[124]][_0x285e[119]],_0x4fa0x14[_0x285e[1462]]=parseInt(_0x4fa0x2[_0x285e[124]][_0x285e[117]])+_0x285e[185]+parseInt(_0x4fa0x2[_0x285e[124]][_0x285e[119]])));_0x4fa0x4?(_0x4fa0x14[_0x285e[1306]]=_0x4fa0x5[_0x285e[1269]],_0x4fa0x14[_0x285e[62]](this[_0x285e[1485]]())):_0x4fa0x14[_0x285e[1464]]=_0x285e[308];_0x4fa0x3?_0x4fa0x14[_0x285e[62]](this[_0x285e[1486]]()):_0x4fa0x14[_0x285e[1468]]=_0x285e[308];return _0x4fa0x14};mxVmlCanvas2D[_0x285e[202]][_0x285e[1486]]=function(){var _0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1469]);_0x4fa0x2[_0x285e[352]]=this[_0x285e[724]][_0x285e[1269]];_0x4fa0x2[_0x285e[461]]=100*this[_0x285e[724]][_0x285e[1244]]*this[_0x285e[724]][_0x285e[1271]]+_0x285e[229];return _0x4fa0x2};mxVmlCanvas2D[_0x285e[202]][_0x285e[1485]]=function(){var _0x4fa0x2=this[_0x285e[1465]]();_0x4fa0x2[_0x285e[461]]=100*this[_0x285e[724]][_0x285e[1244]]*this[_0x285e[724]][_0x285e[1271]]+_0x285e[229];return _0x4fa0x2};mxVmlCanvas2D[_0x285e[202]][_0x285e[1294]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x3&&_0x4fa0x4?_0x4fa0x2+=180:_0x4fa0x3?this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]=_0x285e[235]:_0x4fa0x4&&(this[_0x285e[813]][_0x285e[124]][_0x285e[1473]]=_0x285e[236]);if(_0x4fa0x3?!_0x4fa0x4:_0x4fa0x4){_0x4fa0x2*= -1};this[_0x285e[813]][_0x285e[124]][_0x285e[603]]=_0x4fa0x2;this[_0x285e[724]][_0x285e[603]]+=_0x4fa0x2;this[_0x285e[724]][_0x285e[1395]]=_0x4fa0x5;this[_0x285e[724]][_0x285e[1396]]=_0x4fa0x9};mxVmlCanvas2D[_0x285e[202]][_0x285e[1275]]=function(){mxAbstractCanvas2D[_0x285e[202]][_0x285e[1275]][_0x285e[183]](this,arguments);this[_0x285e[252]]=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1487]);this[_0x285e[252]][_0x285e[124]][_0x285e[491]]=_0x285e[492]};mxVmlCanvas2D[_0x285e[202]][_0x285e[1278]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[724]],_0x4fa0xa=(this[_0x285e[1217]]+_0x4fa0x9[_0x285e[1126]])*_0x4fa0x9[_0x285e[255]],_0x4fa0x12=(this[_0x285e[1218]]+_0x4fa0x9[_0x285e[1125]])*_0x4fa0x9[_0x285e[255]];_0x4fa0x2=(_0x4fa0x2+_0x4fa0x9[_0x285e[1126]])*_0x4fa0x9[_0x285e[255]];_0x4fa0x3=(_0x4fa0x3+_0x4fa0x9[_0x285e[1125]])*_0x4fa0x9[_0x285e[255]];_0x4fa0x4=(_0x4fa0x4+_0x4fa0x9[_0x285e[1126]])*_0x4fa0x9[_0x285e[255]];_0x4fa0x5=(_0x4fa0x5+_0x4fa0x9[_0x285e[1125]])*_0x4fa0x9[_0x285e[255]];var _0x4fa0x12=_0x4fa0x12+2/3*(_0x4fa0x3-_0x4fa0x12),_0x4fa0x13=_0x4fa0x4+2/3*(_0x4fa0x2-_0x4fa0x4);_0x4fa0x3=_0x4fa0x5+2/3*(_0x4fa0x3-_0x4fa0x5);this[_0x285e[1215]][_0x285e[207]](_0x285e[1488]+this[_0x285e[1239]](_0x4fa0xa+2/3*(_0x4fa0x2-_0x4fa0xa))+_0x285e[185]+this[_0x285e[1239]](_0x4fa0x12)+_0x285e[185]+this[_0x285e[1239]](_0x4fa0x13)+_0x285e[185]+this[_0x285e[1239]](_0x4fa0x3)+_0x285e[185]+this[_0x285e[1239]](_0x4fa0x4)+_0x285e[185]+this[_0x285e[1239]](_0x4fa0x5));this[_0x285e[1217]]=_0x4fa0x4/_0x4fa0x9[_0x285e[255]]-_0x4fa0x9[_0x285e[1126]];this[_0x285e[1218]]=_0x4fa0x5/_0x4fa0x9[_0x285e[255]]-_0x4fa0x9[_0x285e[1125]]};mxVmlCanvas2D[_0x285e[202]][_0x285e[1489]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=this[_0x285e[724]];_0x4fa0x2=document[_0x285e[55]](_0x4fa0x2);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x2[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]]((_0x4fa0x3+_0x4fa0xa[_0x285e[1126]])*_0x4fa0xa[_0x285e[255]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]]((_0x4fa0x4+_0x4fa0xa[_0x285e[1125]])*_0x4fa0xa[_0x285e[255]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[117]]=this[_0x285e[1239]](_0x4fa0x5*_0x4fa0xa[_0x285e[255]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=this[_0x285e[1239]](_0x4fa0x9*_0x4fa0xa[_0x285e[255]])+_0x285e[168];return _0x4fa0x2};mxVmlCanvas2D[_0x285e[202]][_0x285e[1319]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[252]]=this[_0x285e[1489]](mxClient[_0x285e[463]]+_0x285e[1490],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)};mxVmlCanvas2D[_0x285e[202]][_0x285e[1320]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[252]]=this[_0x285e[1489]](mxClient[_0x285e[463]]+_0x285e[1491],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);this[_0x285e[252]][_0x285e[57]](_0x285e[1492],Math[_0x285e[160]](100*_0x4fa0x9/_0x4fa0x4,100*_0x4fa0xa/_0x4fa0x5)+_0x285e[229])};mxVmlCanvas2D[_0x285e[202]][_0x285e[680]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[252]]=this[_0x285e[1489]](mxClient[_0x285e[463]]+_0x285e[1493],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)};mxVmlCanvas2D[_0x285e[202]][_0x285e[618]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){var _0x4fa0x14=null;_0x4fa0xa?(_0x4fa0x14=this[_0x285e[1489]](mxClient[_0x285e[463]]+_0x285e[1490],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5),_0x4fa0x14[_0x285e[1464]]=_0x285e[308],_0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1469]),_0x4fa0x2[_0x285e[1322]]=_0x4fa0xa?_0x285e[1494]:_0x285e[1495],_0x4fa0x2[_0x285e[1294]]=_0x285e[128],_0x4fa0x2[_0x285e[60]]=_0x285e[1496],_0x4fa0x2[_0x285e[390]]=_0x4fa0x9,_0x4fa0x14[_0x285e[62]](_0x4fa0x2)):(_0x4fa0x14=this[_0x285e[1489]](mxClient[_0x285e[463]]+_0x285e[464],_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5),_0x4fa0x14[_0x285e[390]]=_0x4fa0x9);_0x4fa0x12&&_0x4fa0x13?_0x4fa0x14[_0x285e[124]][_0x285e[603]]=_0x285e[1497]:_0x4fa0x12?_0x4fa0x14[_0x285e[124]][_0x285e[1473]]=_0x285e[235]:_0x4fa0x13&&(_0x4fa0x14[_0x285e[124]][_0x285e[1473]]=_0x285e[236]);1>this[_0x285e[724]][_0x285e[1244]]&&(_0x4fa0x14[_0x285e[124]][_0x285e[347]]+=_0x285e[459]+100*this[_0x285e[724]][_0x285e[1244]]+_0x285e[460]);this[_0x285e[813]][_0x285e[62]](_0x4fa0x14)};mxVmlCanvas2D[_0x285e[202]][_0x285e[1404]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=document[_0x285e[55]](_0x285e[485]);var _0x4fa0x9=this[_0x285e[724]],_0x4fa0xa=_0x285e[110];null!=_0x4fa0x9[_0x285e[1261]]&&(_0x4fa0xa+=_0x285e[1418]+_0x4fa0x9[_0x285e[1261]]+_0x285e[471]);null!=_0x4fa0x9[_0x285e[1263]]&&(_0x4fa0xa+=_0x285e[1419]+_0x4fa0x9[_0x285e[1263]]+_0x285e[471]);mxUtils[_0x285e[1331]](_0x4fa0x2)?_0x4fa0x4[_0x285e[62]](_0x4fa0x2):0<_0x4fa0xa[_0x285e[67]]&&!_0x4fa0x5?(_0x4fa0x5=document[_0x285e[55]](_0x285e[485]),_0x4fa0x5[_0x285e[124]][_0x285e[103]]=_0x4fa0xa,_0x4fa0x5[_0x285e[124]][_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498],_0x4fa0x5[_0x285e[124]][_0x285e[499]]=_0x285e[500],_0x4fa0x5[_0x285e[339]]=_0x4fa0x2,_0x4fa0x4[_0x285e[62]](_0x4fa0x5)):(_0x4fa0x4[_0x285e[124]][_0x285e[103]]=_0x4fa0xa,_0x4fa0x4[_0x285e[339]]=_0x4fa0x2);_0x4fa0x2=_0x4fa0x4[_0x285e[124]];_0x4fa0x2[_0x285e[487]]=Math[_0x285e[488]](_0x4fa0x9[_0x285e[487]]/this[_0x285e[1460]])+_0x285e[168];_0x4fa0x2[_0x285e[486]]=_0x4fa0x9[_0x285e[486]];_0x4fa0x2[_0x285e[352]]=_0x4fa0x9[_0x285e[665]];_0x4fa0x2[_0x285e[123]]=_0x285e[125];_0x4fa0x2[_0x285e[1165]]=_0x4fa0x3||_0x285e[361];_0x4fa0x2[_0x285e[489]]=Math[_0x285e[488]](_0x4fa0x9[_0x285e[487]]*mxConstants[_0x285e[490]]/this[_0x285e[1460]])+_0x285e[168];(_0x4fa0x9[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]&&(_0x4fa0x2[_0x285e[1452]]=_0x285e[1447]);(_0x4fa0x9[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]&&(_0x4fa0x2[_0x285e[666]]=_0x285e[1449]);(_0x4fa0x9[_0x285e[666]]&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]]&&(_0x4fa0x2[_0x285e[1498]]=_0x285e[355]);return _0x4fa0x4};mxVmlCanvas2D[_0x285e[202]][_0x285e[963]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){if(this[_0x285e[1285]]&&null!=_0x4fa0x9){var _0x4fa0x18=this[_0x285e[724]];if(_0x285e[1428]==_0x4fa0x14){null!=_0x4fa0x18[_0x285e[603]]&&(_0x4fa0x3=this[_0x285e[1241]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x18[_0x285e[603]],_0x4fa0x18[_0x285e[1395]],_0x4fa0x18[_0x285e[1396]]),_0x4fa0x2=_0x4fa0x3[_0x285e[235]],_0x4fa0x3=_0x4fa0x3[_0x285e[236]]);8==document[_0x285e[5]]?(_0x4fa0x2+=_0x4fa0x18[_0x285e[1126]],_0x4fa0x3+=_0x4fa0x18[_0x285e[1125]]):(_0x4fa0x2*=_0x4fa0x18[_0x285e[255]],_0x4fa0x3*=_0x4fa0x18[_0x285e[255]]);_0x4fa0x14=8==document[_0x285e[5]]?document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1499]):document[_0x285e[55]](_0x285e[485]);_0x4fa0x14[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x14[_0x285e[124]][_0x285e[495]]=_0x285e[497];_0x4fa0x14[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]](_0x4fa0x2)+_0x285e[168];_0x4fa0x14[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]](_0x4fa0x3)+_0x285e[168];_0x4fa0x14[_0x285e[124]][_0x285e[499]]=_0x4fa0x18[_0x285e[255]];var _0x4fa0x19=document[_0x285e[55]](_0x285e[485]);_0x4fa0x19[_0x285e[124]][_0x285e[491]]=_0x285e[1500];_0x4fa0x19[_0x285e[124]][_0x285e[495]]=_0x285e[497];var _0x4fa0x1a=mxUtils[_0x285e[1501]](_0x4fa0xa,_0x4fa0x12),_0x4fa0x1b=_0x4fa0x1a[_0x285e[235]],_0x4fa0x1a=_0x4fa0x1a[_0x285e[236]];_0x4fa0x9=this[_0x285e[1404]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x15);_0x4fa0xa=document[_0x285e[55]](_0x285e[485]);_0x4fa0x13?(!_0x4fa0x16&&0<_0x4fa0x4&&(_0x4fa0x9[_0x285e[124]][_0x285e[117]]=Math[_0x285e[488]](_0x4fa0x4)+_0x285e[168]),_0x4fa0x9[_0x285e[124]][_0x285e[493]]=_0x285e[1502]):_0x4fa0x9[_0x285e[124]][_0x285e[493]]=_0x285e[494];_0x4fa0x13=_0x4fa0x18[_0x285e[603]]+(_0x4fa0x17||0);this[_0x285e[1216]]&&0!=_0x4fa0x13?(_0x4fa0xa[_0x285e[124]][_0x285e[495]]=_0x285e[497],_0x4fa0xa[_0x285e[124]][_0x285e[499]]=_0x285e[500],_0x4fa0xa[_0x285e[62]](_0x4fa0x9),8==document[_0x285e[5]]&&_0x285e[529]!=this[_0x285e[813]][_0x285e[301]]?(_0x4fa0x19[_0x285e[62]](_0x4fa0xa),_0x4fa0x14[_0x285e[62]](_0x4fa0x19)):_0x4fa0x14[_0x285e[62]](_0x4fa0xa)):8==document[_0x285e[5]]?(_0x4fa0x19[_0x285e[62]](_0x4fa0x9),_0x4fa0x14[_0x285e[62]](_0x4fa0x19)):(_0x4fa0x9[_0x285e[124]][_0x285e[495]]=_0x285e[497],_0x4fa0x14[_0x285e[62]](_0x4fa0x9));_0x285e[529]!=this[_0x285e[813]][_0x285e[301]]?(_0x4fa0x17=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1490]),_0x4fa0x17[_0x285e[1464]]=_0x285e[308],_0x4fa0x17[_0x285e[1468]]=_0x285e[308],_0x4fa0x17[_0x285e[62]](_0x4fa0x14),this[_0x285e[813]][_0x285e[62]](_0x4fa0x17)):this[_0x285e[813]][_0x285e[62]](_0x4fa0x14);_0x4fa0x16?(_0x4fa0x9[_0x285e[124]][_0x285e[277]]=_0x285e[188],0<_0x4fa0x4&&(_0x4fa0x9[_0x285e[124]][_0x285e[117]]=Math[_0x285e[488]](_0x4fa0x4)+_0x285e[168]),0<_0x4fa0x5&&8==document[_0x285e[5]]&&(_0x4fa0x9[_0x285e[124]][_0x285e[1503]]=Math[_0x285e[488]](_0x4fa0x5)+_0x285e[168])):_0x4fa0x15&&(_0x4fa0x9[_0x285e[124]][_0x285e[117]]=_0x4fa0x4+_0x285e[168],0<_0x4fa0x5&&(_0x4fa0x9[_0x285e[124]][_0x285e[1503]]=Math[_0x285e[488]](_0x4fa0x5)+_0x285e[168]));if(this[_0x285e[1216]]&&0!=_0x4fa0x13){_0x4fa0x4=_0x4fa0x13*(Math[_0x285e[424]]/180);_0x4fa0x13=parseFloat(parseFloat(Math[_0x285e[426]](_0x4fa0x4))[_0x285e[1293]](8));_0x4fa0x17=parseFloat(parseFloat(Math[_0x285e[427]](-_0x4fa0x4))[_0x285e[1293]](8));_0x4fa0x4%=2*Math[_0x285e[424]];0>_0x4fa0x4&&(_0x4fa0x4+=2*Math[_0x285e[424]]);_0x4fa0x4%=Math[_0x285e[424]];_0x4fa0x4>Math[_0x285e[424]]/2&&(_0x4fa0x4=Math[_0x285e[424]]-_0x4fa0x4);_0x4fa0x12=Math[_0x285e[426]](_0x4fa0x4);var _0x4fa0x1c=Math[_0x285e[427]](_0x4fa0x4);8==document[_0x285e[5]]&&(_0x4fa0x9[_0x285e[124]][_0x285e[495]]=_0x285e[498],_0x4fa0xa[_0x285e[124]][_0x285e[495]]=_0x285e[498],_0x4fa0x19[_0x285e[124]][_0x285e[495]]=_0x285e[498]);_0x4fa0x9[_0x285e[124]][_0x285e[187]]=_0x285e[188];document[_0x285e[112]][_0x285e[62]](_0x4fa0x9);_0x4fa0x4=_0x4fa0x9[_0x285e[359]];_0x4fa0x19=_0x4fa0x9[_0x285e[167]];if(mxClient[_0x285e[496]]&&(_0x4fa0x16||_0x4fa0x15)&&_0x4fa0x19>_0x4fa0x5){_0x4fa0x19=_0x4fa0x5,_0x4fa0x9[_0x285e[124]][_0x285e[119]]=_0x4fa0x19+_0x285e[168]};_0x4fa0x5=_0x4fa0x19;_0x4fa0x16=(_0x4fa0x5-_0x4fa0x5*_0x4fa0x12+_0x4fa0x4* -_0x4fa0x1c)/2-_0x4fa0x17*_0x4fa0x4*(_0x4fa0x1b+0.5)+_0x4fa0x13*_0x4fa0x5*(_0x4fa0x1a+0.5);_0x4fa0x15=(_0x4fa0x4-_0x4fa0x4*_0x4fa0x12+_0x4fa0x5* -_0x4fa0x1c)/2+_0x4fa0x13*_0x4fa0x4*(_0x4fa0x1b+0.5)+_0x4fa0x17*_0x4fa0x5*(_0x4fa0x1a+0.5);_0x285e[1504]==_0x4fa0x14[_0x285e[301]]&&_0x285e[529]==this[_0x285e[813]][_0x285e[301]]?(_0x4fa0x1b=document[_0x285e[55]](_0x285e[485]),_0x4fa0x1b[_0x285e[124]][_0x285e[495]]=_0x285e[498],_0x4fa0x1b[_0x285e[124]][_0x285e[491]]=_0x285e[492],_0x4fa0x1b[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]](_0x4fa0x2+(_0x4fa0x15-_0x4fa0x4/2)*_0x4fa0x18[_0x285e[255]])+_0x285e[168],_0x4fa0x1b[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]](_0x4fa0x3+(_0x4fa0x16-_0x4fa0x5/2)*_0x4fa0x18[_0x285e[255]])+_0x285e[168],_0x4fa0x14[_0x285e[265]][_0x285e[62]](_0x4fa0x1b),_0x4fa0x1b[_0x285e[62]](_0x4fa0x14)):(_0x4fa0x18=8==document[_0x285e[5]]?1:_0x4fa0x18[_0x285e[255]],_0x4fa0x14[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]](_0x4fa0x2+(_0x4fa0x15-_0x4fa0x4/2)*_0x4fa0x18)+_0x285e[168],_0x4fa0x14[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]](_0x4fa0x3+(_0x4fa0x16-_0x4fa0x5/2)*_0x4fa0x18)+_0x285e[168]);_0x4fa0xa[_0x285e[124]][_0x285e[347]]=_0x285e[1505]+_0x4fa0x13+_0x285e[1506]+_0x4fa0x17+_0x285e[1507]+-_0x4fa0x17+_0x285e[1508]+_0x4fa0x13+_0x285e[1509];_0x4fa0xa[_0x285e[124]][_0x285e[1028]]=this[_0x285e[1459]];1>this[_0x285e[724]][_0x285e[1244]]&&(_0x4fa0xa[_0x285e[124]][_0x285e[347]]+=_0x285e[459]+100*this[_0x285e[724]][_0x285e[1244]]+_0x285e[460]);_0x4fa0x9[_0x285e[124]][_0x285e[187]]=_0x285e[110];_0x4fa0xa[_0x285e[62]](_0x4fa0x9)}else {8!=document[_0x285e[5]]?(_0x4fa0x9[_0x285e[124]][_0x285e[123]]=_0x285e[125],1>this[_0x285e[724]][_0x285e[1244]]&&(_0x4fa0x14[_0x285e[124]][_0x285e[347]]=_0x285e[459]+100*this[_0x285e[724]][_0x285e[1244]]+_0x285e[460]),_0x4fa0x18=_0x4fa0x9[_0x285e[265]],_0x4fa0x9[_0x285e[124]][_0x285e[187]]=_0x285e[188],document[_0x285e[112]][_0x285e[62]](_0x4fa0x9),_0x4fa0x4=_0x4fa0x9[_0x285e[359]],_0x4fa0x19=_0x4fa0x9[_0x285e[167]],mxClient[_0x285e[496]]&&(_0x4fa0x16&&_0x4fa0x19>_0x4fa0x5)&&(_0x4fa0x19=_0x4fa0x5,_0x4fa0x9[_0x285e[124]][_0x285e[119]]=_0x4fa0x19+_0x285e[168]),_0x4fa0x5=_0x4fa0x19,_0x4fa0x9[_0x285e[124]][_0x285e[187]]=_0x285e[110],_0x4fa0x18[_0x285e[62]](_0x4fa0x9),_0x4fa0x14[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]](_0x4fa0x2+_0x4fa0x4*_0x4fa0x1b*this[_0x285e[724]][_0x285e[255]])+_0x285e[168],_0x4fa0x14[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]](_0x4fa0x3+_0x4fa0x5*_0x4fa0x1a*this[_0x285e[724]][_0x285e[255]])+_0x285e[168]):(1>this[_0x285e[724]][_0x285e[1244]]&&(_0x4fa0x9[_0x285e[124]][_0x285e[347]]=_0x285e[459]+100*this[_0x285e[724]][_0x285e[1244]]+_0x285e[460]),_0x4fa0x19[_0x285e[124]][_0x285e[361]]=100*_0x4fa0x1b+_0x285e[229],_0x4fa0x19[_0x285e[124]][_0x285e[125]]=100*_0x4fa0x1a+_0x285e[229])}}else {this[_0x285e[1436]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,mxUtils[_0x285e[321]](_0x4fa0x9,!1),_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17)}}};mxVmlCanvas2D[_0x285e[202]][_0x285e[1436]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){_0x4fa0x5=this[_0x285e[724]];_0x4fa0x2=(_0x4fa0x2+_0x4fa0x5[_0x285e[1126]])*_0x4fa0x5[_0x285e[255]];_0x4fa0x3=(_0x4fa0x3+_0x4fa0x5[_0x285e[1125]])*_0x4fa0x5[_0x285e[255]];_0x4fa0x4=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1487]);_0x4fa0x4[_0x285e[124]][_0x285e[117]]=_0x285e[942];_0x4fa0x4[_0x285e[124]][_0x285e[119]]=_0x285e[942];_0x4fa0x4[_0x285e[1464]]=_0x285e[308];_0x4fa0x15=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1469]);_0x4fa0x15[_0x285e[352]]=_0x4fa0x5[_0x285e[665]];_0x4fa0x15[_0x285e[461]]=100*_0x4fa0x5[_0x285e[1244]]+_0x285e[229];_0x4fa0x4[_0x285e[62]](_0x4fa0x15);_0x4fa0x15=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1510]);_0x4fa0x15[_0x285e[1511]]=_0x285e[128];_0x4fa0x15[_0x285e[6]]=_0x285e[1512]+this[_0x285e[1239]](0)+_0x285e[185]+this[_0x285e[1239]](0)+_0x285e[1513]+this[_0x285e[1239]](1)+_0x285e[185]+this[_0x285e[1239]](0);_0x4fa0x4[_0x285e[62]](_0x4fa0x15);_0x4fa0x15=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1514]);_0x4fa0x15[_0x285e[124]][_0x285e[103]]=_0x285e[1515]+_0x4fa0xa;_0x4fa0x15[_0x285e[124]][_0x285e[611]]=_0x4fa0xa;_0x4fa0x15[_0x285e[124]][_0x285e[486]]=_0x4fa0x5[_0x285e[486]];_0x4fa0x15[_0x285e[1516]]=_0x4fa0x9;_0x4fa0x15[_0x285e[747]]=_0x285e[128];_0x4fa0xa=Math[_0x285e[488]](_0x4fa0x5[_0x285e[487]]*_0x4fa0x5[_0x285e[255]]/this[_0x285e[1460]]);_0x4fa0x15[_0x285e[124]][_0x285e[487]]=_0x4fa0xa+_0x285e[168];(_0x4fa0x5[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]&&(_0x4fa0x15[_0x285e[124]][_0x285e[1452]]=_0x285e[1447]);(_0x4fa0x5[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]&&(_0x4fa0x15[_0x285e[124]][_0x285e[666]]=_0x285e[1449]);(_0x4fa0x5[_0x285e[666]]&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]]&&(_0x4fa0x15[_0x285e[124]][_0x285e[354]]=_0x285e[355]);_0x4fa0x9=_0x4fa0x9[_0x285e[224]](_0x285e[192]);_0x4fa0x5=_0x4fa0xa+(_0x4fa0x9[_0x285e[67]]-1)*_0x4fa0xa*mxConstants[_0x285e[490]];_0x4fa0xa=_0x4fa0x9=0;_0x4fa0x12==mxConstants[_0x285e[482]]?_0x4fa0xa=-_0x4fa0x5/2:_0x4fa0x12!=mxConstants[_0x285e[481]]&&(_0x4fa0xa=_0x4fa0x5/2);null!=_0x4fa0x17&&(_0x4fa0x4[_0x285e[124]][_0x285e[603]]=_0x4fa0x17,_0x4fa0x12=_0x4fa0x17*(Math[_0x285e[424]]/180),_0x4fa0x9=Math[_0x285e[427]](_0x4fa0x12)*_0x4fa0xa,_0x4fa0xa*=Math[_0x285e[426]](_0x4fa0x12));_0x4fa0x4[_0x285e[62]](_0x4fa0x15);_0x4fa0x4[_0x285e[124]][_0x285e[361]]=this[_0x285e[1239]](_0x4fa0x2-_0x4fa0x9)+_0x285e[168];_0x4fa0x4[_0x285e[124]][_0x285e[125]]=this[_0x285e[1239]](_0x4fa0x3+_0x4fa0xa)+_0x285e[168];this[_0x285e[813]][_0x285e[62]](_0x4fa0x4)};mxVmlCanvas2D[_0x285e[202]][_0x285e[1336]]=function(){this[_0x285e[1370]](!1,!0)};mxVmlCanvas2D[_0x285e[202]][_0x285e[1334]]=function(){this[_0x285e[1370]](!0,!1)};mxVmlCanvas2D[_0x285e[202]][_0x285e[1337]]=function(){this[_0x285e[1370]](!0,!0)};function mxGuide(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[1517]](_0x4fa0x3)}mxGuide[_0x285e[202]][_0x285e[1179]]=null;mxGuide[_0x285e[202]][_0x285e[1214]]=null;mxGuide[_0x285e[202]][_0x285e[662]]= !0;mxGuide[_0x285e[202]][_0x285e[704]]= !0;mxGuide[_0x285e[202]][_0x285e[1518]]=null;mxGuide[_0x285e[202]][_0x285e[1519]]=null;mxGuide[_0x285e[202]][_0x285e[1517]]=function(_0x4fa0x2){this[_0x285e[1214]]=_0x4fa0x2};mxGuide[_0x285e[202]][_0x285e[1019]]=function(_0x4fa0x2){return !0};mxGuide[_0x285e[202]][_0x285e[1520]]=function(){return this[_0x285e[1179]][_0x285e[1020]]*this[_0x285e[1179]][_0x285e[441]][_0x285e[255]]/2};mxGuide[_0x285e[202]][_0x285e[1521]]=function(_0x4fa0x2){_0x4fa0x2= new mxPolyline([],mxConstants.GUIDE_COLOR,mxConstants.GUIDE_STROKEWIDTH);_0x4fa0x2[_0x285e[1522]]= !0;return _0x4fa0x2};mxGuide[_0x285e[202]][_0x285e[582]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=this[_0x285e[1214]]&&(this[_0x285e[662]]||this[_0x285e[704]])&&null!=_0x4fa0x2&&null!=_0x4fa0x3){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]],_0x4fa0x9=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0xa=_0x4fa0x3[_0x285e[235]],_0x4fa0x12=_0x4fa0x3[_0x285e[236]],_0x4fa0x13=!1,_0x4fa0x14=!1,_0x4fa0x15=this[_0x285e[1520]](),_0x4fa0x16=_0x4fa0x15,_0x4fa0x17=_0x4fa0x15,_0x4fa0x15=_0x4fa0x2[_0x285e[238]]();_0x4fa0x15[_0x285e[235]]+=_0x4fa0x3[_0x285e[235]];_0x4fa0x15[_0x285e[236]]+=_0x4fa0x3[_0x285e[236]];var _0x4fa0x18=_0x4fa0x15[_0x285e[235]],_0x4fa0x19=_0x4fa0x15[_0x285e[235]]+_0x4fa0x15[_0x285e[117]],_0x4fa0x1a=_0x4fa0x15[_0x285e[241]](),_0x4fa0x1b=_0x4fa0x15[_0x285e[236]],_0x4fa0x1c=_0x4fa0x15[_0x285e[236]]+_0x4fa0x15[_0x285e[119]],_0x4fa0x1d=_0x4fa0x15[_0x285e[242]]();_0x4fa0x3=function(_0x4fa0x3){_0x4fa0x3+=this[_0x285e[1179]][_0x285e[1136]];var _0x4fa0x4=!1;Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1a)<_0x4fa0x16?(_0x4fa0xa=_0x4fa0x3-_0x4fa0x2[_0x285e[241]](),_0x4fa0x16=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1a),_0x4fa0x4= !0):Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x18)<_0x4fa0x16?(_0x4fa0xa=_0x4fa0x3-_0x4fa0x2[_0x285e[235]],_0x4fa0x16=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x18),_0x4fa0x4= !0):Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x19)<_0x4fa0x16&&(_0x4fa0xa=_0x4fa0x3-_0x4fa0x2[_0x285e[235]]-_0x4fa0x2[_0x285e[117]],_0x4fa0x16=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x19),_0x4fa0x4= !0);if(_0x4fa0x4){null==this[_0x285e[1518]]&&(this[_0x285e[1518]]=this[_0x285e[1521]](!0),this[_0x285e[1518]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]],this[_0x285e[1518]][_0x285e[1229]]= !1,this[_0x285e[1518]][_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()));var _0x4fa0x5=this[_0x285e[1179]][_0x285e[526]];_0x4fa0x3-=this[_0x285e[1179]][_0x285e[1136]];this[_0x285e[1518]][_0x285e[1525]]=[ new mxPoint(_0x4fa0x3,-this[_0x285e[1179]][_0x285e[1137]]), new mxPoint(_0x4fa0x3,_0x4fa0x5[_0x285e[191]]-3-this[_0x285e[1179]][_0x285e[1137]])]};_0x4fa0x13=_0x4fa0x13||_0x4fa0x4};for(var _0x4fa0x15=function(_0x4fa0x3){_0x4fa0x3+=this[_0x285e[1179]][_0x285e[1137]];var _0x4fa0x4=!1;Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1d)<_0x4fa0x17?(_0x4fa0x12=_0x4fa0x3-_0x4fa0x2[_0x285e[242]](),_0x4fa0x17=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1d),_0x4fa0x4= !0):Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1b)<_0x4fa0x17?(_0x4fa0x12=_0x4fa0x3-_0x4fa0x2[_0x285e[236]],_0x4fa0x17=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1b),_0x4fa0x4= !0):Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1c)<_0x4fa0x17&&(_0x4fa0x12=_0x4fa0x3-_0x4fa0x2[_0x285e[236]]-_0x4fa0x2[_0x285e[119]],_0x4fa0x17=Math[_0x285e[425]](_0x4fa0x3-_0x4fa0x1c),_0x4fa0x4= !0);if(_0x4fa0x4){null==this[_0x285e[1519]]&&(this[_0x285e[1519]]=this[_0x285e[1521]](!1),this[_0x285e[1519]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]],this[_0x285e[1519]][_0x285e[1229]]= !1,this[_0x285e[1519]][_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()));var _0x4fa0x5=this[_0x285e[1179]][_0x285e[526]];_0x4fa0x3-=this[_0x285e[1179]][_0x285e[1137]];this[_0x285e[1519]][_0x285e[1525]]=[ new mxPoint(-this[_0x285e[1179]][_0x285e[1136]],_0x4fa0x3), new mxPoint(_0x4fa0x5[_0x285e[1526]]-3-this[_0x285e[1179]][_0x285e[1136]],_0x4fa0x3)]};_0x4fa0x14=_0x4fa0x14||_0x4fa0x4},_0x4fa0x1e=0;_0x4fa0x1e<this[_0x285e[1214]][_0x285e[67]];_0x4fa0x1e++){var _0x4fa0x1f=this[_0x285e[1214]][_0x4fa0x1e];null!=_0x4fa0x1f&&(this[_0x285e[662]]&&(_0x4fa0x3[_0x285e[239]](this,_0x4fa0x1f[_0x285e[241]]()),_0x4fa0x3[_0x285e[239]](this,_0x4fa0x1f[_0x285e[235]]),_0x4fa0x3[_0x285e[239]](this,_0x4fa0x1f[_0x285e[235]]+_0x4fa0x1f[_0x285e[117]])),this[_0x285e[704]]&&(_0x4fa0x15[_0x285e[239]](this,_0x4fa0x1f[_0x285e[242]]()),_0x4fa0x15[_0x285e[239]](this,_0x4fa0x1f[_0x285e[236]]),_0x4fa0x15[_0x285e[239]](this,_0x4fa0x1f[_0x285e[236]]+_0x4fa0x1f[_0x285e[119]])))};!_0x4fa0x13&&null!=this[_0x285e[1518]]?this[_0x285e[1518]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188]:null!=this[_0x285e[1518]]&&(this[_0x285e[1518]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[189],this[_0x285e[1518]][_0x285e[258]]());!_0x4fa0x14&&null!=this[_0x285e[1519]]?this[_0x285e[1519]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188]:null!=this[_0x285e[1519]]&&(this[_0x285e[1519]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[189],this[_0x285e[1519]][_0x285e[258]]());_0x4fa0x4&&(_0x4fa0x13||(_0x4fa0x4=_0x4fa0x2[_0x285e[235]]-(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[235]]/_0x4fa0x9-_0x4fa0x5[_0x285e[235]])+_0x4fa0x5[_0x285e[235]])*_0x4fa0x9,_0x4fa0xa=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0xa/_0x4fa0x9)*_0x4fa0x9-_0x4fa0x4),_0x4fa0x14||(_0x4fa0x5=_0x4fa0x2[_0x285e[236]]-(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[236]]/_0x4fa0x9-_0x4fa0x5[_0x285e[236]])+_0x4fa0x5[_0x285e[236]])*_0x4fa0x9,_0x4fa0x12=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x12/_0x4fa0x9)*_0x4fa0x9-_0x4fa0x5));_0x4fa0x3= new mxPoint(_0x4fa0xa,_0x4fa0x12)};return _0x4fa0x3};mxGuide[_0x285e[202]][_0x285e[801]]=function(){null!=this[_0x285e[1518]]&&(this[_0x285e[1518]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188]);null!=this[_0x285e[1519]]&&(this[_0x285e[1519]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188])};mxGuide[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[1518]]&&(this[_0x285e[1518]][_0x285e[515]](),this[_0x285e[1518]]=null);null!=this[_0x285e[1519]]&&(this[_0x285e[1519]][_0x285e[515]](),this[_0x285e[1519]]=null)};function mxStencil(_0x4fa0x2){this[_0x285e[1527]]=_0x4fa0x2;this[_0x285e[1528]]();this[_0x285e[1529]]()}mxStencil[_0x285e[1530]]= !1;mxStencil[_0x285e[202]][_0x285e[1527]]=null;mxStencil[_0x285e[202]][_0x285e[1531]]=null;mxStencil[_0x285e[202]][_0x285e[1322]]=null;mxStencil[_0x285e[202]][_0x285e[1532]]=null;mxStencil[_0x285e[202]][_0x285e[1533]]=null;mxStencil[_0x285e[202]][_0x285e[1534]]=null;mxStencil[_0x285e[202]][_0x285e[1535]]=null;mxStencil[_0x285e[202]][_0x285e[1307]]=null;mxStencil[_0x285e[202]][_0x285e[1528]]=function(){this[_0x285e[1535]]=this[_0x285e[1527]][_0x285e[64]](_0x285e[1536])[0];this[_0x285e[1534]]=this[_0x285e[1527]][_0x285e[64]](_0x285e[1537])[0];this[_0x285e[1532]]=Number(this[_0x285e[1527]][_0x285e[284]](_0x285e[1302])||100);this[_0x285e[1533]]=Number(this[_0x285e[1527]][_0x285e[284]](_0x285e[1303])||100);var _0x4fa0x2=this[_0x285e[1527]][_0x285e[284]](_0x285e[1322]);this[_0x285e[1322]]=null!=_0x4fa0x2?_0x4fa0x2:_0x285e[1538];_0x4fa0x2=this[_0x285e[1527]][_0x285e[284]](_0x285e[1307]);this[_0x285e[1307]]=null!=_0x4fa0x2?_0x4fa0x2:_0x285e[500]};mxStencil[_0x285e[202]][_0x285e[1529]]=function(){var _0x4fa0x2=this[_0x285e[1527]][_0x285e[64]](_0x285e[1539])[0];if(null!=_0x4fa0x2&&(_0x4fa0x2=mxUtils[_0x285e[1540]](_0x4fa0x2),null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]])){this[_0x285e[1531]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){this[_0x285e[1531]][_0x285e[207]](this[_0x285e[1541]](_0x4fa0x2[_0x4fa0x3]))}}};mxStencil[_0x285e[202]][_0x285e[1541]]=function(_0x4fa0x2){var _0x4fa0x3=Number(_0x4fa0x2[_0x285e[284]](_0x285e[235])),_0x4fa0x4=Number(_0x4fa0x2[_0x285e[284]](_0x285e[236]));_0x4fa0x2=_0x285e[500]==_0x4fa0x2[_0x285e[284]](_0x285e[591]);return new mxConnectionConstraint( new mxPoint(_0x4fa0x3,_0x4fa0x4),_0x4fa0x2)};mxStencil[_0x285e[202]][_0x285e[1542]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=this[_0x285e[1543]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);_0x4fa0x2=_0x4fa0x2[_0x285e[284]](_0x285e[1544]);if(mxStencil[_0x285e[1530]]&&null==_0x4fa0x2||_0x285e[500]==_0x4fa0x2){_0x4fa0x3=mxResources[_0x285e[203]](_0x4fa0x3)};return _0x4fa0x3};mxStencil[_0x285e[202]][_0x285e[1543]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=_0x4fa0x2[_0x285e[284]](_0x4fa0x3);null==_0x4fa0x3&&(_0x4fa0x2=mxUtils[_0x285e[329]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x2=mxUtils[_0x285e[1545]](_0x4fa0x2),_0x285e[279]== typeof _0x4fa0x2&&(_0x4fa0x3=_0x4fa0x2(_0x4fa0x4))));return _0x4fa0x3};mxStencil[_0x285e[202]][_0x285e[1546]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1547]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,this[_0x285e[1534]],!1);this[_0x285e[1547]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,this[_0x285e[1535]],!0)};mxStencil[_0x285e[202]][_0x285e[1547]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){if(null!=_0x4fa0x12){var _0x4fa0x14=mxUtils[_0x285e[433]](_0x4fa0x3[_0x285e[124]],mxConstants.STYLE_DIRECTION,null);_0x4fa0x4=this[_0x285e[1548]](_0x4fa0x3[_0x285e[124]],_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x14);_0x4fa0x5=Math[_0x285e[243]](_0x4fa0x4[_0x285e[117]],_0x4fa0x4[_0x285e[119]]);_0x4fa0x5=_0x285e[1549]==this[_0x285e[1307]]?Number(mxUtils[_0x285e[1550]](_0x4fa0x3[_0x285e[124]],mxConstants.STYLE_STROKEWIDTH,1)):Number(this[_0x285e[1307]])*_0x4fa0x5;_0x4fa0x2[_0x285e[1250]](_0x4fa0x5);for(_0x4fa0x12=_0x4fa0x12[_0x285e[285]];null!=_0x4fa0x12;){_0x4fa0x12[_0x285e[288]]==mxConstants[_0x285e[289]]&&this[_0x285e[1551]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x12,_0x4fa0x4,_0x4fa0x13),_0x4fa0x12=_0x4fa0x12[_0x285e[287]]}}};mxStencil[_0x285e[202]][_0x285e[1548]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x2=_0x4fa0x3;_0x4fa0x3=_0x4fa0x5/this[_0x285e[1532]];var _0x4fa0x12=_0x4fa0x9/this[_0x285e[1533]];if(_0x4fa0xa=_0x285e[700]==_0x4fa0xa||_0x285e[701]==_0x4fa0xa){_0x4fa0x12=_0x4fa0x5/this[_0x285e[1533]];_0x4fa0x3=_0x4fa0x9/this[_0x285e[1532]];var _0x4fa0x13=(_0x4fa0x5-_0x4fa0x9)/2;_0x4fa0x2+=_0x4fa0x13;_0x4fa0x4-=_0x4fa0x13};_0x285e[1552]==this[_0x285e[1322]]&&(_0x4fa0x3=_0x4fa0x12=Math[_0x285e[243]](_0x4fa0x3,_0x4fa0x12),_0x4fa0xa?(_0x4fa0x2+=(_0x4fa0x9-this[_0x285e[1532]]*_0x4fa0x3)/2,_0x4fa0x4+=(_0x4fa0x5-this[_0x285e[1533]]*_0x4fa0x12)/2):(_0x4fa0x2+=(_0x4fa0x5-this[_0x285e[1532]]*_0x4fa0x3)/2,_0x4fa0x4+=(_0x4fa0x9-this[_0x285e[1533]]*_0x4fa0x12)/2));return new mxRectangle(_0x4fa0x2,_0x4fa0x4,_0x4fa0x3,_0x4fa0x12)};mxStencil[_0x285e[202]][_0x285e[1551]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x4[_0x285e[301]],_0x4fa0x12=_0x4fa0x5[_0x285e[235]],_0x4fa0x13=_0x4fa0x5[_0x285e[236]],_0x4fa0x14=_0x4fa0x5[_0x285e[117]],_0x4fa0x15=_0x4fa0x5[_0x285e[119]],_0x4fa0x16=Math[_0x285e[243]](_0x4fa0x14,_0x4fa0x15);if(_0x285e[815]==_0x4fa0xa){_0x4fa0x2[_0x285e[815]]()}else {if(_0x285e[1210]==_0x4fa0xa){_0x4fa0x2[_0x285e[1210]]()}else {if(_0x285e[1215]==_0x4fa0xa){_0x4fa0x2[_0x285e[1275]]();for(_0x4fa0x4=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x4;){_0x4fa0x4[_0x285e[288]]==mxConstants[_0x285e[289]]&&this[_0x285e[1551]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x4=_0x4fa0x4[_0x285e[287]]}}else {if(_0x285e[268]==_0x4fa0xa){_0x4fa0x2[_0x285e[268]]()}else {if(_0x285e[582]==_0x4fa0xa){_0x4fa0x2[_0x285e[1276]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15)}else {if(_0x285e[683]==_0x4fa0xa){_0x4fa0x2[_0x285e[1277]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15)}else {if(_0x285e[1323]==_0x4fa0xa){_0x4fa0x2[_0x285e[1278]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1324]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1325]))*_0x4fa0x15,_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1326]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1327]))*_0x4fa0x15)}else {if(_0x285e[1328]==_0x4fa0xa){_0x4fa0x2[_0x285e[1279]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1324]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1325]))*_0x4fa0x15,_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1326]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1327]))*_0x4fa0x15,_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1329]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[1330]))*_0x4fa0x15)}else {if(_0x285e[1553]==_0x4fa0xa){_0x4fa0x2[_0x285e[1280]](Number(_0x4fa0x4[_0x285e[284]](_0x285e[1397]))*_0x4fa0x14,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1398]))*_0x4fa0x15,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1554])),Number(_0x4fa0x4[_0x285e[284]](_0x285e[1555])),Number(_0x4fa0x4[_0x285e[284]](_0x285e[1556])),_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15)}else {if(_0x285e[1319]==_0x4fa0xa){_0x4fa0x2[_0x285e[1319]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1302]))*_0x4fa0x14,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1303]))*_0x4fa0x15)}else {if(_0x285e[1320]==_0x4fa0xa){_0x4fa0x3=_0x4fa0x4[_0x285e[284]](_0x285e[1492]),0==_0x4fa0x3&&(_0x4fa0x3=100*mxConstants[_0x285e[1557]]),_0x4fa0x16=Number(_0x4fa0x4[_0x285e[284]](_0x285e[1302]))*_0x4fa0x14,_0x4fa0x5=Number(_0x4fa0x4[_0x285e[284]](_0x285e[1303]))*_0x4fa0x15,_0x4fa0x3=Number(_0x4fa0x3)/100,_0x4fa0x3=Math[_0x285e[243]](_0x4fa0x16*_0x4fa0x3,_0x4fa0x5*_0x4fa0x3),_0x4fa0x2[_0x285e[1320]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,_0x4fa0x16,_0x4fa0x5,_0x4fa0x3,_0x4fa0x3)}else {if(_0x285e[680]==_0x4fa0xa){_0x4fa0x2[_0x285e[680]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1302]))*_0x4fa0x14,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1303]))*_0x4fa0x15)}else {if(_0x285e[618]==_0x4fa0xa){_0x4fa0x3=this[_0x285e[1543]](_0x4fa0x4,_0x285e[390],_0x4fa0x3),_0x4fa0x2[_0x285e[618]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1302]))*_0x4fa0x14,Number(_0x4fa0x4[_0x285e[284]](_0x285e[1303]))*_0x4fa0x15,_0x4fa0x3,!1,_0x285e[500]==_0x4fa0x4[_0x285e[284]](_0x285e[623]),_0x285e[500]==_0x4fa0x4[_0x285e[284]](_0x285e[624]))}else {if(_0x285e[963]==_0x4fa0xa){_0x4fa0x16=this[_0x285e[1542]](_0x4fa0x4,_0x285e[1332],_0x4fa0x3);_0x4fa0x5=_0x285e[500]==_0x4fa0x4[_0x285e[284]](_0x285e[704])?-90:0;if(_0x285e[468]==_0x4fa0x4[_0x285e[284]](_0x285e[1558])){var _0x4fa0x17=_0x4fa0x3[_0x285e[603]],_0x4fa0x18=1==mxUtils[_0x285e[433]](_0x4fa0x3[_0x285e[124]],mxConstants.STYLE_FLIPH,0);_0x4fa0x3=1==mxUtils[_0x285e[433]](_0x4fa0x3[_0x285e[124]],mxConstants.STYLE_FLIPV,0);_0x4fa0x5=_0x4fa0x18&&_0x4fa0x3?_0x4fa0x5-_0x4fa0x17:_0x4fa0x18||_0x4fa0x3?_0x4fa0x5+_0x4fa0x17:_0x4fa0x5-_0x4fa0x17};_0x4fa0x5-=_0x4fa0x4[_0x285e[284]](_0x285e[603]);_0x4fa0x2[_0x285e[963]](_0x4fa0x12+Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,0,0,_0x4fa0x16,_0x4fa0x4[_0x285e[284]](_0x285e[611])||_0x285e[361],_0x4fa0x4[_0x285e[284]](_0x285e[552])||_0x285e[125],!1,_0x285e[110],!1,!1,_0x4fa0x5)}else {if(_0x285e[1559]==_0x4fa0xa){_0x4fa0x17=mxStencilRegistry[_0x285e[1560]](_0x4fa0x4[_0x285e[284]](_0x285e[298])),null!=_0x4fa0x17&&(_0x4fa0x12+=Number(_0x4fa0x4[_0x285e[284]](_0x285e[235]))*_0x4fa0x14,_0x4fa0x13+=Number(_0x4fa0x4[_0x285e[284]](_0x285e[236]))*_0x4fa0x15,_0x4fa0x16=Number(_0x4fa0x4[_0x285e[284]](_0x285e[1302]))*_0x4fa0x14,_0x4fa0x5=Number(_0x4fa0x4[_0x285e[284]](_0x285e[1303]))*_0x4fa0x15,_0x4fa0x17[_0x285e[1546]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x12,_0x4fa0x13,_0x4fa0x16,_0x4fa0x5))}else {if(_0x285e[1338]==_0x4fa0xa){_0x4fa0x2[_0x285e[1337]]()}else {if(_0x285e[1334]==_0x4fa0xa){_0x4fa0x2[_0x285e[1334]]()}else {if(_0x285e[1336]==_0x4fa0xa){_0x4fa0x2[_0x285e[1336]]()}else {if(_0x285e[1307]==_0x4fa0xa){_0x4fa0x2[_0x285e[1250]](Number(_0x4fa0x4[_0x285e[284]](_0x285e[117]))*_0x4fa0x16)}else {if(_0x285e[648]==_0x4fa0xa){_0x4fa0x2[_0x285e[1251]](_0x285e[500]==_0x4fa0x4[_0x285e[284]](_0x285e[648]))}else {if(_0x285e[1308]==_0x4fa0xa){if(_0x4fa0x4=_0x4fa0x4[_0x285e[284]](_0x285e[1309]),null!=_0x4fa0x4){_0x4fa0x4=_0x4fa0x4[_0x285e[224]](_0x285e[185]);_0x4fa0x14=[];for(_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x4[_0x285e[67]];_0x4fa0x15++){0<_0x4fa0x4[_0x4fa0x15][_0x285e[67]]&&_0x4fa0x14[_0x285e[207]](Number(_0x4fa0x4[_0x4fa0x15])*_0x4fa0x16)};_0x4fa0x4=_0x4fa0x14[_0x285e[234]](_0x285e[185]);_0x4fa0x2[_0x285e[1252]](_0x4fa0x4)}}else {_0x285e[1306]==_0x4fa0xa?_0x4fa0x2[_0x285e[1249]](_0x4fa0x4[_0x285e[284]](_0x285e[352])):_0x285e[1310]==_0x4fa0xa?_0x4fa0x2[_0x285e[1253]](_0x4fa0x4[_0x285e[284]](_0x285e[1311])):_0x285e[1312]==_0x4fa0xa?_0x4fa0x2[_0x285e[1255]](_0x4fa0x4[_0x285e[284]](_0x285e[234])):_0x285e[1313]==_0x4fa0xa?_0x4fa0x2[_0x285e[1257]](Number(_0x4fa0x4[_0x285e[284]](_0x285e[1314]))):_0x285e[1298]==_0x4fa0xa?_0x4fa0x2[_0x285e[1245]](_0x4fa0x4[_0x285e[284]](_0x285e[352])):_0x285e[1244]==_0x4fa0xa?_0x4fa0x2[_0x285e[1243]](_0x4fa0x4[_0x285e[284]](_0x285e[1244])):_0x285e[1315]==_0x4fa0xa?_0x4fa0x2[_0x285e[1259]](_0x4fa0x4[_0x285e[284]](_0x285e[352])):_0x285e[1318]==_0x4fa0xa?_0x4fa0x2[_0x285e[1266]](_0x4fa0x4[_0x285e[284]](_0x285e[124])):_0x285e[1287]==_0x4fa0xa?_0x4fa0x2[_0x285e[1265]](_0x4fa0x4[_0x285e[284]](_0x285e[1288])):_0x285e[1289]==_0x4fa0xa&&_0x4fa0x2[_0x285e[1264]](Number(_0x4fa0x4[_0x285e[284]](_0x285e[803]))*_0x4fa0x16)}}}}}}}}}}}}}}}}}}}}};_0x4fa0x9&&(_0x285e[1338]==_0x4fa0xa||_0x285e[1334]==_0x4fa0xa||_0x285e[1336]==_0x4fa0xa)&&_0x4fa0x2[_0x285e[1267]](!1)};function mxShape(_0x4fa0x2){this[_0x285e[1561]]=_0x4fa0x2;this[_0x285e[1307]]=1;this[_0x285e[603]]=0;this[_0x285e[461]]=100;this[_0x285e[624]]=this[_0x285e[623]]= !1}mxShape[_0x285e[202]][_0x285e[507]]=null;mxShape[_0x285e[202]][_0x285e[255]]=1;mxShape[_0x285e[202]][_0x285e[1562]]=null;mxShape[_0x285e[202]][_0x285e[1525]]=null;mxShape[_0x285e[202]][_0x285e[252]]=null;mxShape[_0x285e[202]][_0x285e[124]]=null;mxShape[_0x285e[202]][_0x285e[124]]=null;mxShape[_0x285e[202]][_0x285e[1563]]=null;mxShape[_0x285e[202]][_0x285e[1561]]=null;mxShape[_0x285e[202]][_0x285e[1564]]=6;mxShape[_0x285e[202]][_0x285e[1229]]= !0;mxShape[_0x285e[202]][_0x285e[1565]]= !1;mxShape[_0x285e[202]][_0x285e[1460]]=1;mxShape[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2){null==this[_0x285e[252]]&&(this[_0x285e[252]]=this[_0x285e[385]](_0x4fa0x2),null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[62]](this[_0x285e[252]]))};mxShape[_0x285e[202]][_0x285e[1566]]=function(){return !0};mxShape[_0x285e[202]][_0x285e[1567]]=function(){return !1};mxShape[_0x285e[202]][_0x285e[1568]]=function(){return 1==mxUtils[_0x285e[1454]](Math[_0x285e[160]](1,Math[_0x285e[488]](this[_0x285e[1307]]*this[_0x285e[255]])),2)?0.5:0};mxShape[_0x285e[202]][_0x285e[385]]=function(_0x4fa0x2){var _0x4fa0x3=null;return _0x4fa0x3=null!=_0x4fa0x2[_0x285e[538]]?this[_0x285e[1569]](_0x4fa0x2):8==document[_0x285e[5]]||this[_0x285e[507]]==mxConstants[_0x285e[508]]||this[_0x285e[507]]!=mxConstants[_0x285e[1523]]&&this[_0x285e[1567]]()?this[_0x285e[1570]](_0x4fa0x2):this[_0x285e[1571]](_0x4fa0x2)};mxShape[_0x285e[202]][_0x285e[1569]]=function(){return document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449])};mxShape[_0x285e[202]][_0x285e[1571]]=function(){var _0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1499]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1570]]=function(){var _0x4fa0x2=document[_0x285e[55]](_0x285e[485]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1572]]=function(){this[_0x285e[258]]()};mxShape[_0x285e[202]][_0x285e[258]]=function(){this[_0x285e[1573]]();this[_0x285e[1574]]()?(this[_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[110],_0x285e[529]==this[_0x285e[252]][_0x285e[301]]&&this[_0x285e[1567]]()?this[_0x285e[1575]]():this[_0x285e[1576]](),this[_0x285e[1577]]()):(this[_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188],this[_0x285e[1563]]=null)};mxShape[_0x285e[202]][_0x285e[1573]]=function(){var _0x4fa0x2=this[_0x285e[1525]];if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]&&null!=_0x4fa0x2[0]){this[_0x285e[1562]]= new mxRectangle(Number(_0x4fa0x2[0][_0x285e[235]]),Number(_0x4fa0x2[0][_0x285e[236]]),1,1);for(var _0x4fa0x3=1;_0x4fa0x3<this[_0x285e[1525]][_0x285e[67]];_0x4fa0x3++){null!=_0x4fa0x2[_0x4fa0x3]&&this[_0x285e[1562]][_0x285e[99]]( new mxRectangle(Number(_0x4fa0x2[_0x4fa0x3][_0x285e[235]]),Number(_0x4fa0x2[_0x4fa0x3][_0x285e[236]]),1,1))}}};mxShape[_0x285e[202]][_0x285e[1574]]=function(){return null!=this[_0x285e[1562]]&&!isNaN(this[_0x285e[1562]][_0x285e[235]])&&!isNaN(this[_0x285e[1562]][_0x285e[236]])&&!isNaN(this[_0x285e[1562]][_0x285e[117]])&&!isNaN(this[_0x285e[1562]][_0x285e[119]])&&0<this[_0x285e[1562]][_0x285e[117]]&&0<this[_0x285e[1562]][_0x285e[119]]};mxShape[_0x285e[202]][_0x285e[1578]]=function(){var _0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1499]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x2[_0x285e[124]][_0x285e[117]]=this[_0x285e[252]][_0x285e[124]][_0x285e[117]];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=this[_0x285e[252]][_0x285e[124]][_0x285e[119]];return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1576]]=function(){var _0x4fa0x2=this[_0x285e[1579]]();for(_0x4fa0x2[_0x285e[1229]]=this[_0x285e[1229]];this[_0x285e[252]][_0x285e[1580]]();){this[_0x285e[252]][_0x285e[266]](this[_0x285e[252]][_0x285e[1581]])};this[_0x285e[1209]](_0x4fa0x2);this[_0x285e[252]]!=_0x4fa0x2[_0x285e[813]]&&this[_0x285e[252]][_0x285e[1583]](_0x285e[1582],_0x4fa0x2[_0x285e[813]][_0x285e[342]]);_0x285e[529]==this[_0x285e[252]][_0x285e[301]]&&8==document[_0x285e[5]]&&(this[_0x285e[252]][_0x285e[124]][_0x285e[347]]=_0x285e[110],(null==this[_0x285e[1561]]||!this[_0x285e[1565]])&&mxUtils[_0x285e[1584]](this[_0x285e[252]]));this[_0x285e[1585]](_0x4fa0x2)};mxShape[_0x285e[202]][_0x285e[1579]]=function(){var _0x4fa0x2=null,_0x4fa0x3=null;if(null!=this[_0x285e[252]][_0x285e[538]]){_0x4fa0x2= new mxSvgCanvas2D(this[_0x285e[252]],!1),_0x4fa0x2[_0x285e[1345]]=this[_0x285e[1564]],_0x4fa0x2[_0x285e[1347]]=mxClient[_0x285e[133]]&&!mxClient[_0x285e[75]]&&!mxClient[_0x285e[76]],_0x4fa0x3=this[_0x285e[1568]](),0!=_0x4fa0x3?this[_0x285e[252]][_0x285e[57]](_0x285e[535],_0x285e[536]+_0x4fa0x3+_0x285e[537]+_0x4fa0x3+_0x285e[460]):this[_0x285e[252]][_0x285e[1390]](_0x285e[535])}else {this[_0x285e[1586]]();var _0x4fa0x4=Math[_0x285e[160]](1,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[117]])),_0x4fa0x5=Math[_0x285e[160]](1,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[119]])),_0x4fa0x3=8==document[_0x285e[5]]&&this[_0x285e[1566]]()?this[_0x285e[1578]]():this[_0x285e[252]],_0x4fa0x2= new mxVmlCanvas2D(_0x4fa0x3,!1);_0x285e[110]!=_0x4fa0x3[_0x285e[337]]&&(_0x4fa0x3[_0x285e[1462]]=_0x4fa0x4*this[_0x285e[1460]]+_0x285e[537]+_0x4fa0x5*this[_0x285e[1460]],_0x4fa0x2[_0x285e[255]](this[_0x285e[1460]]),_0x4fa0x2[_0x285e[1460]]=this[_0x285e[1460]]);_0x4fa0x3=this[_0x285e[255]];_0x4fa0x2[_0x285e[513]](-Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]]/_0x4fa0x3),-Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]]/_0x4fa0x3))};return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1586]]=function(){this[_0x285e[252]][_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]])+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]])+_0x285e[168];var _0x4fa0x2=Math[_0x285e[160]](1,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[117]])),_0x4fa0x3=Math[_0x285e[160]](1,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[119]]));this[_0x285e[252]][_0x285e[124]][_0x285e[117]]=_0x4fa0x2+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[277]]=_0x285e[189]};mxShape[_0x285e[202]][_0x285e[1585]]=function(_0x4fa0x2){if(_0x4fa0x2 instanceof mxSvgCanvas2D){for(var _0x4fa0x3 in _0x4fa0x2[_0x285e[1339]]){var _0x4fa0x4=_0x4fa0x2[_0x285e[1339]][_0x4fa0x3];_0x4fa0x4[_0x285e[1587]]=(_0x4fa0x4[_0x285e[1587]]||0)+1};this[_0x285e[1589]](this[_0x285e[1588]]);this[_0x285e[1588]]=_0x4fa0x2[_0x285e[1339]]}};mxShape[_0x285e[202]][_0x285e[1209]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[255]],_0x4fa0x4=this[_0x285e[1562]][_0x285e[235]]/_0x4fa0x3,_0x4fa0x5=this[_0x285e[1562]][_0x285e[236]]/_0x4fa0x3,_0x4fa0x9=this[_0x285e[1562]][_0x285e[117]]/_0x4fa0x3,_0x4fa0xa=this[_0x285e[1562]][_0x285e[119]]/_0x4fa0x3;if(this[_0x285e[1590]]()){var _0x4fa0x12=(_0x4fa0x9-_0x4fa0xa)/2,_0x4fa0x4=_0x4fa0x4+_0x4fa0x12,_0x4fa0x5=_0x4fa0x5-_0x4fa0x12,_0x4fa0x12=_0x4fa0x9,_0x4fa0x9=_0x4fa0xa,_0x4fa0xa=_0x4fa0x12};this[_0x285e[1591]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);this[_0x285e[1592]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);if(null!=this[_0x285e[1561]]){this[_0x285e[1593]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa)}else {if(_0x4fa0x2[_0x285e[1250]](this[_0x285e[1307]]),null!=this[_0x285e[1525]]){_0x4fa0x4=[];for(_0x4fa0x5=0;_0x4fa0x5<this[_0x285e[1525]][_0x285e[67]];_0x4fa0x5++){_0x4fa0x4[_0x285e[207]]( new mxPoint(this[_0x285e[1525]][_0x4fa0x5][_0x285e[235]]/_0x4fa0x3,this[_0x285e[1525]][_0x4fa0x5][_0x285e[236]]/_0x4fa0x3))};this[_0x285e[1594]](_0x4fa0x2,_0x4fa0x4)}else {this[_0x285e[1595]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa)}}};mxShape[_0x285e[202]][_0x285e[1592]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=null;null!=this[_0x285e[124]]&&(_0x4fa0xa=this[_0x285e[124]][_0x285e[649]]);_0x4fa0x2[_0x285e[1243]](this[_0x285e[461]]/100);null!=this[_0x285e[1596]]&&_0x4fa0x2[_0x285e[1267]](this[_0x285e[1596]]);null!=this[_0x285e[1522]]&&_0x4fa0x2[_0x285e[1251]](this[_0x285e[1522]]);null!=_0x4fa0xa&&_0x4fa0x2[_0x285e[1252]](_0x4fa0xa);null!=this[_0x285e[1299]]?(_0x4fa0x3=this[_0x285e[1597]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[1246]](this[_0x285e[1334]],this[_0x285e[1299]],_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]],this[_0x285e[607]])):_0x4fa0x2[_0x285e[1245]](this[_0x285e[1334]]);_0x4fa0x2[_0x285e[1249]](this[_0x285e[1336]])};mxShape[_0x285e[202]][_0x285e[1597]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return new mxRectangle(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)};mxShape[_0x285e[202]][_0x285e[1591]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[255]](this[_0x285e[255]]);_0x4fa0x2[_0x285e[1294]](this[_0x285e[1598]](),this[_0x285e[623]],this[_0x285e[624]],_0x4fa0x3+_0x4fa0x5/2,_0x4fa0x4+_0x4fa0x9/2)};mxShape[_0x285e[202]][_0x285e[1593]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){this[_0x285e[1565]]&&(this[_0x285e[507]]==mxConstants[_0x285e[508]]?this[_0x285e[1599]](this[_0x285e[252]],_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9):8!=document[_0x285e[5]]&&this[_0x285e[1600]](this[_0x285e[252]]));this[_0x285e[1561]][_0x285e[1546]](_0x4fa0x2,this,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)};mxShape[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){this[_0x285e[1601]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1267]](!1);this[_0x285e[1602]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)};mxShape[_0x285e[202]][_0x285e[1601]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){};mxShape[_0x285e[202]][_0x285e[1602]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){};mxShape[_0x285e[202]][_0x285e[1594]]=function(_0x4fa0x2,_0x4fa0x3){};mxShape[_0x285e[202]][_0x285e[1603]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x285e[1557]])/100;return Math[_0x285e[243]](_0x4fa0x2*_0x4fa0x4,_0x4fa0x3*_0x4fa0x4)};mxShape[_0x285e[202]][_0x285e[1604]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=Math[_0x285e[430]](this[_0x285e[1307]]/2);_0x4fa0x2[_0x285e[1246]](_0x285e[1605],_0x285e[1605],_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,0.6*_0x4fa0x9,_0x285e[701],0.9,0.1);_0x4fa0x2[_0x285e[1275]]();_0x4fa0xa+=2*_0x4fa0x12;this[_0x285e[1606]]?(_0x4fa0x2[_0x285e[1276]](_0x4fa0x3-_0x4fa0x12+_0x4fa0xa,_0x4fa0x4-_0x4fa0x12),_0x4fa0x2[_0x285e[1278]](_0x4fa0x3-_0x4fa0x12,_0x4fa0x4-_0x4fa0x12,_0x4fa0x3-_0x4fa0x12,_0x4fa0x4-_0x4fa0x12+_0x4fa0xa),_0x4fa0x2[_0x285e[1277]](_0x4fa0x3-_0x4fa0x12,_0x4fa0x4+0.4*_0x4fa0x9),_0x4fa0x2[_0x285e[1278]](_0x4fa0x3+0.5*_0x4fa0x5,_0x4fa0x4+0.7*_0x4fa0x9,_0x4fa0x3+_0x4fa0x5+_0x4fa0x12,_0x4fa0x4+0.4*_0x4fa0x9),_0x4fa0x2[_0x285e[1277]](_0x4fa0x3+_0x4fa0x5+_0x4fa0x12,_0x4fa0x4-_0x4fa0x12+_0x4fa0xa),_0x4fa0x2[_0x285e[1278]](_0x4fa0x3+_0x4fa0x5+_0x4fa0x12,_0x4fa0x4-_0x4fa0x12,_0x4fa0x3+_0x4fa0x5+_0x4fa0x12-_0x4fa0xa,_0x4fa0x4-_0x4fa0x12)):(_0x4fa0x2[_0x285e[1276]](_0x4fa0x3-_0x4fa0x12,_0x4fa0x4-_0x4fa0x12),_0x4fa0x2[_0x285e[1277]](_0x4fa0x3-_0x4fa0x12,_0x4fa0x4+0.4*_0x4fa0x9),_0x4fa0x2[_0x285e[1278]](_0x4fa0x3+0.5*_0x4fa0x5,_0x4fa0x4+0.7*_0x4fa0x9,_0x4fa0x3+_0x4fa0x5+_0x4fa0x12,_0x4fa0x4+0.4*_0x4fa0x9),_0x4fa0x2[_0x285e[1277]](_0x4fa0x3+_0x4fa0x5+_0x4fa0x12,_0x4fa0x4-_0x4fa0x12));_0x4fa0x2[_0x285e[268]]();_0x4fa0x2[_0x285e[1334]]()};mxShape[_0x285e[202]][_0x285e[183]]=function(_0x4fa0x2){this[_0x285e[724]]=_0x4fa0x2;this[_0x285e[124]]=_0x4fa0x2[_0x285e[124]];if(null!=this[_0x285e[124]]){this[_0x285e[1334]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_FILLCOLOR,this[_0x285e[1334]]);this[_0x285e[1299]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_GRADIENTCOLOR,this[_0x285e[1299]]);this[_0x285e[607]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_GRADIENT_DIRECTION,this[_0x285e[607]]);this[_0x285e[461]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_OPACITY,this[_0x285e[461]]);this[_0x285e[1336]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_STROKECOLOR,this[_0x285e[1336]]);this[_0x285e[1307]]=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_STROKEWIDTH,this[_0x285e[1307]]);this[_0x285e[657]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_SPACING,this[_0x285e[657]]);this[_0x285e[644]]=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_STARTSIZE,this[_0x285e[644]]);this[_0x285e[643]]=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_ENDSIZE,this[_0x285e[643]]);this[_0x285e[642]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_STARTARROW,this[_0x285e[642]]);this[_0x285e[641]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ENDARROW,this[_0x285e[641]]);this[_0x285e[603]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ROTATION,this[_0x285e[603]]);this[_0x285e[663]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_DIRECTION,this[_0x285e[663]]);this[_0x285e[623]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_FLIPH,0);this[_0x285e[624]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_FLIPV,0);null!=this[_0x285e[1561]]&&(this[_0x285e[623]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],_0x285e[1607],0)||this[_0x285e[623]],this[_0x285e[624]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],_0x285e[1608],0)||this[_0x285e[624]]);if(_0x285e[700]==this[_0x285e[663]]||_0x285e[701]==this[_0x285e[663]]){_0x4fa0x2=this[_0x285e[623]],this[_0x285e[623]]=this[_0x285e[624]],this[_0x285e[624]]=_0x4fa0x2};this[_0x285e[1596]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_SHADOW,this[_0x285e[1596]]);this[_0x285e[1522]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_DASHED,this[_0x285e[1522]]);this[_0x285e[1606]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ROUNDED,this[_0x285e[1606]]);this[_0x285e[617]]=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_GLASS,this[_0x285e[617]]);_0x285e[130]==this[_0x285e[1334]]&&(this[_0x285e[1334]]=null);_0x285e[130]==this[_0x285e[1299]]&&(this[_0x285e[1299]]=null);_0x285e[130]==this[_0x285e[1336]]&&(this[_0x285e[1336]]=null)}};mxShape[_0x285e[202]][_0x285e[1609]]=function(_0x4fa0x2){null==_0x4fa0x2&&(_0x4fa0x2=_0x285e[110]);this[_0x285e[270]]=_0x4fa0x2;null!=this[_0x285e[252]]&&(this[_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x4fa0x2)};mxShape[_0x285e[202]][_0x285e[1610]]=function(){return this[_0x285e[270]]};mxShape[_0x285e[202]][_0x285e[1577]]=function(){if(null!=this[_0x285e[1562]]){var _0x4fa0x2=this[_0x285e[1611]]();if(null!=_0x4fa0x2){this[_0x285e[1612]](_0x4fa0x2);var _0x4fa0x3=this[_0x285e[1598]]();0!=_0x4fa0x3&&(_0x4fa0x2=mxUtils[_0x285e[1613]](_0x4fa0x2,_0x4fa0x3));_0x4fa0x2[_0x285e[235]]=Math[_0x285e[519]](_0x4fa0x2[_0x285e[235]]);_0x4fa0x2[_0x285e[236]]=Math[_0x285e[519]](_0x4fa0x2[_0x285e[236]]);_0x4fa0x2[_0x285e[117]]=Math[_0x285e[430]](_0x4fa0x2[_0x285e[117]]);_0x4fa0x2[_0x285e[119]]=Math[_0x285e[430]](_0x4fa0x2[_0x285e[119]])};this[_0x285e[1563]]=_0x4fa0x2}};mxShape[_0x285e[202]][_0x285e[1611]]=function(){var _0x4fa0x2=this[_0x285e[1562]][_0x285e[238]]();if(this[_0x285e[1590]]()){var _0x4fa0x3=(_0x4fa0x2[_0x285e[117]]-_0x4fa0x2[_0x285e[119]])/2;_0x4fa0x2[_0x285e[235]]+=_0x4fa0x3;_0x4fa0x2[_0x285e[236]]-=_0x4fa0x3;_0x4fa0x3=_0x4fa0x2[_0x285e[117]];_0x4fa0x2[_0x285e[117]]=_0x4fa0x2[_0x285e[119]];_0x4fa0x2[_0x285e[119]]=_0x4fa0x3};return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1612]]=function(_0x4fa0x2){this[_0x285e[1596]]&&(_0x4fa0x2[_0x285e[117]]+=Math[_0x285e[430]](mxConstants[_0x285e[1237]]*this[_0x285e[255]]),_0x4fa0x2[_0x285e[119]]+=Math[_0x285e[430]](mxConstants[_0x285e[1238]]*this[_0x285e[255]]));var _0x4fa0x3=Math[_0x285e[430]](this[_0x285e[1307]]*this[_0x285e[255]]);_0x4fa0x2[_0x285e[244]](Math[_0x285e[430]](_0x4fa0x3/2))};mxShape[_0x285e[202]][_0x285e[1590]]=function(){return null==this[_0x285e[1561]]&&(_0x285e[700]==this[_0x285e[663]]||_0x285e[701]==this[_0x285e[663]])};mxShape[_0x285e[202]][_0x285e[1614]]=function(){return null!=this[_0x285e[603]]?this[_0x285e[603]]:0};mxShape[_0x285e[202]][_0x285e[1615]]=function(){var _0x4fa0x2=this[_0x285e[1614]]();1!=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_HORIZONTAL,1)&&(_0x4fa0x2+=mxText[_0x285e[202]][_0x285e[1616]]);return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1598]]=function(){var _0x4fa0x2=this[_0x285e[1614]]();null!=this[_0x285e[663]]&&(_0x285e[700]==this[_0x285e[663]]?_0x4fa0x2+=270:_0x285e[703]==this[_0x285e[663]]?_0x4fa0x2+=180:_0x285e[701]==this[_0x285e[663]]&&(_0x4fa0x2+=90));return _0x4fa0x2};mxShape[_0x285e[202]][_0x285e[1599]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[1319]);_0x4fa0x2[_0x285e[57]](_0x285e[235],_0x4fa0x3);_0x4fa0x2[_0x285e[57]](_0x285e[236],_0x4fa0x4);_0x4fa0x2[_0x285e[57]](_0x285e[117],_0x4fa0x5);_0x4fa0x2[_0x285e[57]](_0x285e[119],_0x4fa0x9);_0x4fa0x2[_0x285e[57]](_0x285e[1334],_0x285e[130]);_0x4fa0x2[_0x285e[57]](_0x285e[1336],_0x285e[130]);_0x4fa0x2[_0x285e[57]](_0x285e[1377],_0x285e[1378]);this[_0x285e[252]][_0x285e[62]](_0x4fa0x2)};mxShape[_0x285e[202]][_0x285e[1600]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[124]][_0x285e[1617]]=_0x285e[1618]+mxClient[_0x285e[88]]+_0x285e[1619]};mxShape[_0x285e[202]][_0x285e[1589]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3 in _0x4fa0x2){var _0x4fa0x4=_0x4fa0x2[_0x4fa0x3];_0x4fa0x4[_0x285e[1587]]=(_0x4fa0x4[_0x285e[1587]]||0)-1;0==_0x4fa0x4[_0x285e[1587]]&&null!=_0x4fa0x4[_0x285e[265]]&&_0x4fa0x4[_0x285e[265]][_0x285e[266]](_0x4fa0x4)}}};mxShape[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[252]]&&(mxEvent[_0x285e[762]](this[_0x285e[252]]),null!=this[_0x285e[252]][_0x285e[265]]&&this[_0x285e[252]][_0x285e[265]][_0x285e[266]](this[_0x285e[252]]),this[_0x285e[252]]=null);this[_0x285e[1589]](this[_0x285e[1588]]);this[_0x285e[1588]]=null};var mxStencilRegistry={stencils:[],addStencil:function(_0x4fa0x2,_0x4fa0x3){mxStencilRegistry[_0x285e[1620]][_0x4fa0x2]=_0x4fa0x3},getStencil:function(_0x4fa0x2){return mxStencilRegistry[_0x285e[1620]][_0x4fa0x2]}},mxMarker={markers:[],addMarker:function(_0x4fa0x2,_0x4fa0x3){mxMarker[_0x285e[1621]][_0x4fa0x2]=_0x4fa0x3},createMarker:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15){var _0x4fa0x16=mxMarker[_0x285e[1621]][_0x4fa0x4];return null!=_0x4fa0x16?_0x4fa0x16(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15):null}};(function(){function _0x4fa0x2(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){_0x4fa0x3=1.118*_0x4fa0x12*_0x4fa0x16;_0x4fa0x15=1.118*_0x4fa0x13*_0x4fa0x16;_0x4fa0x12*=_0x4fa0x14+_0x4fa0x16;_0x4fa0x13*=_0x4fa0x14+_0x4fa0x16;var _0x4fa0x18=_0x4fa0xa[_0x285e[238]]();_0x4fa0x18[_0x285e[235]]-=_0x4fa0x3;_0x4fa0x18[_0x285e[236]]-=_0x4fa0x15;_0x4fa0x14=_0x4fa0x9!=mxConstants[_0x285e[1622]]?1:0.75;_0x4fa0xa[_0x285e[235]]+=-_0x4fa0x12*_0x4fa0x14-_0x4fa0x3;_0x4fa0xa[_0x285e[236]]+=-_0x4fa0x13*_0x4fa0x14-_0x4fa0x15;return function(){_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x18[_0x285e[235]],_0x4fa0x18[_0x285e[236]]);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]-_0x4fa0x12-_0x4fa0x13/2,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13+_0x4fa0x12/2);_0x4fa0x9==mxConstants[_0x285e[1622]]&&_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]-3*_0x4fa0x12/4,_0x4fa0x18[_0x285e[236]]-3*_0x4fa0x13/4);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]+_0x4fa0x13/2-_0x4fa0x12,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13-_0x4fa0x12/2);_0x4fa0x2[_0x285e[268]]();_0x4fa0x17?_0x4fa0x2[_0x285e[1337]]():_0x4fa0x2[_0x285e[1336]]()}}function _0x4fa0x3(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){_0x4fa0x15=_0x4fa0x9==mxConstants[_0x285e[1623]]?0.7071:0.9862;_0x4fa0x3=_0x4fa0x12*_0x4fa0x16*_0x4fa0x15;_0x4fa0x15*=_0x4fa0x13*_0x4fa0x16;_0x4fa0x12*=_0x4fa0x14+_0x4fa0x16;_0x4fa0x13*=_0x4fa0x14+_0x4fa0x16;var _0x4fa0x18=_0x4fa0xa[_0x285e[238]]();_0x4fa0x18[_0x285e[235]]-=_0x4fa0x3;_0x4fa0x18[_0x285e[236]]-=_0x4fa0x15;_0x4fa0xa[_0x285e[235]]+=-_0x4fa0x12-_0x4fa0x3;_0x4fa0xa[_0x285e[236]]+=-_0x4fa0x13-_0x4fa0x15;var _0x4fa0x19=_0x4fa0x9==mxConstants[_0x285e[1623]]?2:3.4;return function(){_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x18[_0x285e[235]],_0x4fa0x18[_0x285e[236]]);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]-_0x4fa0x12/2-_0x4fa0x13/_0x4fa0x19,_0x4fa0x18[_0x285e[236]]+_0x4fa0x12/_0x4fa0x19-_0x4fa0x13/2);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]-_0x4fa0x12,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]-_0x4fa0x12/2+_0x4fa0x13/_0x4fa0x19,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13/2-_0x4fa0x12/_0x4fa0x19);_0x4fa0x2[_0x285e[268]]();_0x4fa0x17?_0x4fa0x2[_0x285e[1337]]():_0x4fa0x2[_0x285e[1336]]()}}mxMarker[_0x285e[1624]](_0x285e[693],_0x4fa0x2);mxMarker[_0x285e[1624]](_0x285e[694],_0x4fa0x2);mxMarker[_0x285e[1624]](_0x285e[392],function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){_0x4fa0x3=1.118*_0x4fa0x12*_0x4fa0x16;_0x4fa0x9=1.118*_0x4fa0x13*_0x4fa0x16;_0x4fa0x12*=_0x4fa0x14+_0x4fa0x16;_0x4fa0x13*=_0x4fa0x14+_0x4fa0x16;var _0x4fa0x18=_0x4fa0xa[_0x285e[238]]();_0x4fa0x18[_0x285e[235]]-=_0x4fa0x3;_0x4fa0x18[_0x285e[236]]-=_0x4fa0x9;_0x4fa0xa[_0x285e[235]]+=2* -_0x4fa0x3;_0x4fa0xa[_0x285e[236]]+=2* -_0x4fa0x9;return function(){_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x18[_0x285e[235]]-_0x4fa0x12-_0x4fa0x13/2,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13+_0x4fa0x12/2);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]],_0x4fa0x18[_0x285e[236]]);_0x4fa0x2[_0x285e[1277]](_0x4fa0x18[_0x285e[235]]+_0x4fa0x13/2-_0x4fa0x12,_0x4fa0x18[_0x285e[236]]-_0x4fa0x13-_0x4fa0x12/2);_0x4fa0x2[_0x285e[1336]]()}});mxMarker[_0x285e[1624]](_0x285e[695],function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17){var _0x4fa0x18=_0x4fa0x14/2,_0x4fa0x19=_0x4fa0xa[_0x285e[238]]();_0x4fa0xa[_0x285e[235]]-=_0x4fa0x12*_0x4fa0x18;_0x4fa0xa[_0x285e[236]]-=_0x4fa0x13*_0x4fa0x18;return function(){_0x4fa0x2[_0x285e[680]](_0x4fa0x19[_0x285e[235]]-_0x4fa0x18,_0x4fa0x19[_0x285e[236]]-_0x4fa0x18,_0x4fa0x14,_0x4fa0x14);_0x4fa0x17?_0x4fa0x2[_0x285e[1337]]():_0x4fa0x2[_0x285e[1336]]()}});mxMarker[_0x285e[1624]](_0x285e[696],_0x4fa0x3);mxMarker[_0x285e[1624]](_0x285e[697],_0x4fa0x3)})();function mxActor(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxActor,mxShape);mxActor[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[513]](_0x4fa0x3,_0x4fa0x4);_0x4fa0x2[_0x285e[1275]]();this[_0x285e[1625]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1337]]()};mxActor[_0x285e[202]][_0x285e[1625]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x3=_0x4fa0x5/3;_0x4fa0x2[_0x285e[1276]](0,_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](0,3*_0x4fa0x9/5,0,2*_0x4fa0x9/5,_0x4fa0x5/2,2*_0x4fa0x9/5);_0x4fa0x2[_0x285e[1279]](_0x4fa0x5/2-_0x4fa0x3,2*_0x4fa0x9/5,_0x4fa0x5/2-_0x4fa0x3,0,_0x4fa0x5/2,0);_0x4fa0x2[_0x285e[1279]](_0x4fa0x5/2+_0x4fa0x3,0,_0x4fa0x5/2+_0x4fa0x3,2*_0x4fa0x9/5,_0x4fa0x5/2,2*_0x4fa0x9/5);_0x4fa0x2[_0x285e[1279]](_0x4fa0x5,2*_0x4fa0x9/5,_0x4fa0x5,3*_0x4fa0x9/5,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[268]]()};function mxCloud(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxActor[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxCloud,mxActor);mxCloud[_0x285e[202]][_0x285e[1625]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[1276]](0.25*_0x4fa0x5,0.25*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](0.05*_0x4fa0x5,0.25*_0x4fa0x9,0,0.5*_0x4fa0x9,0.16*_0x4fa0x5,0.55*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](0,0.66*_0x4fa0x9,0.18*_0x4fa0x5,0.9*_0x4fa0x9,0.31*_0x4fa0x5,0.8*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](0.4*_0x4fa0x5,_0x4fa0x9,0.7*_0x4fa0x5,_0x4fa0x9,0.8*_0x4fa0x5,0.8*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](_0x4fa0x5,0.8*_0x4fa0x9,_0x4fa0x5,0.6*_0x4fa0x9,0.875*_0x4fa0x5,0.5*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](_0x4fa0x5,0.3*_0x4fa0x9,0.8*_0x4fa0x5,0.1*_0x4fa0x9,0.625*_0x4fa0x5,0.2*_0x4fa0x9);_0x4fa0x2[_0x285e[1279]](0.5*_0x4fa0x5,0.05*_0x4fa0x9,0.3*_0x4fa0x5,0.05*_0x4fa0x9,0.25*_0x4fa0x5,0.25*_0x4fa0x9);_0x4fa0x2[_0x285e[268]]()};function mxRectangleShape(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxRectangleShape,mxShape);mxRectangleShape[_0x285e[202]][_0x285e[1567]]=function(){return !this[_0x285e[1606]]&&!this[_0x285e[617]]&&0==this[_0x285e[603]]};mxRectangleShape[_0x285e[202]][_0x285e[1601]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(this[_0x285e[1606]]){var _0x4fa0xa=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x285e[1557]])/100,_0x4fa0xa=Math[_0x285e[243]](_0x4fa0x5*_0x4fa0xa,_0x4fa0x9*_0x4fa0xa);_0x4fa0x2[_0x285e[1320]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0xa)}else {_0x4fa0x2[_0x285e[1319]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)};_0x4fa0x2[_0x285e[1337]]()};mxRectangleShape[_0x285e[202]][_0x285e[1602]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){this[_0x285e[617]]&&this[_0x285e[1604]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,this[_0x285e[1603]](_0x4fa0x5+this[_0x285e[1307]],_0x4fa0x9+this[_0x285e[1307]]))};mxRectangleShape[_0x285e[202]][_0x285e[1575]]=function(){this[_0x285e[1626]](this[_0x285e[252]]);this[_0x285e[1627]](this[_0x285e[252]]);this[_0x285e[1628]](this[_0x285e[252]])};mxRectangleShape[_0x285e[202]][_0x285e[1626]]=function(_0x4fa0x2){var _0x4fa0x3=9<=document[_0x285e[5]]?0:Math[_0x285e[430]](this[_0x285e[1307]]*this[_0x285e[255]]);_0x4fa0x2[_0x285e[124]][_0x285e[1629]]=Math[_0x285e[160]](1,_0x4fa0x3)+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[277]]=_0x285e[188];_0x4fa0x2[_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]]-_0x4fa0x3/2)+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]]-_0x4fa0x3/2)+_0x285e[168];_0x285e[462]==document[_0x285e[135]]&&(_0x4fa0x3= -_0x4fa0x3);_0x4fa0x2[_0x285e[124]][_0x285e[117]]=Math[_0x285e[488]](Math[_0x285e[160]](0,this[_0x285e[1562]][_0x285e[117]]+_0x4fa0x3))+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=Math[_0x285e[488]](Math[_0x285e[160]](0,this[_0x285e[1562]][_0x285e[119]]+_0x4fa0x3))+_0x285e[168]};mxRectangleShape[_0x285e[202]][_0x285e[1628]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1336]];null!=_0x4fa0x3&&_0x4fa0x3!=mxConstants[_0x285e[217]]?(_0x4fa0x2[_0x285e[124]][_0x285e[1630]]=_0x4fa0x3,this[_0x285e[1522]]?_0x4fa0x2[_0x285e[124]][_0x285e[465]]=_0x285e[648]:0<this[_0x285e[1307]]&&(_0x4fa0x2[_0x285e[124]][_0x285e[465]]=_0x285e[1631]),_0x4fa0x2[_0x285e[124]][_0x285e[1629]]=Math[_0x285e[160]](1,Math[_0x285e[430]](this[_0x285e[1307]]*this[_0x285e[255]]))+_0x285e[168]):_0x4fa0x2[_0x285e[124]][_0x285e[1629]]=_0x285e[946];_0x4fa0x3=this[_0x285e[1334]];null!=_0x4fa0x3&&_0x4fa0x3!=mxConstants[_0x285e[217]]?(_0x4fa0x2[_0x285e[124]][_0x285e[1028]]=_0x4fa0x3,_0x4fa0x2[_0x285e[124]][_0x285e[1617]]=_0x285e[130]):this[_0x285e[1229]]?_0x4fa0x2[_0x285e[124]][_0x285e[1028]]=_0x285e[1373]:8==document[_0x285e[5]]?mxUtils[_0x285e[1584]](_0x4fa0x2):this[_0x285e[1600]](_0x4fa0x2)};mxRectangleShape[_0x285e[202]][_0x285e[1627]]=function(_0x4fa0x2){var _0x4fa0x3=_0x285e[110];100>this[_0x285e[461]]&&(_0x4fa0x3+=_0x285e[459]+this[_0x285e[461]]+_0x285e[460]);this[_0x285e[1596]]&&(_0x4fa0x3+=_0x285e[1632]+Math[_0x285e[488]](mxConstants[_0x285e[1237]]*this[_0x285e[255]])+_0x285e[1633]+Math[_0x285e[488]](mxConstants[_0x285e[1238]]*this[_0x285e[255]])+_0x285e[1634]+mxConstants[_0x285e[1235]]+_0x285e[1635]);if(this[_0x285e[1299]]){var _0x4fa0x4=this[_0x285e[1334]],_0x4fa0x5=this[_0x285e[1299]],_0x4fa0x9=_0x285e[468],_0x4fa0xa={east:0,south:1,west:2,north:3},_0x4fa0x12=null!=this[_0x285e[663]]?_0x4fa0xa[this[_0x285e[663]]]:0;null!=this[_0x285e[607]]&&(_0x4fa0x12=mxUtils[_0x285e[1454]](_0x4fa0x12+_0x4fa0xa[this[_0x285e[607]]]-1,4));1==_0x4fa0x12?(_0x4fa0x9=_0x285e[500],_0x4fa0xa=_0x4fa0x4,_0x4fa0x4=_0x4fa0x5,_0x4fa0x5=_0x4fa0xa):2==_0x4fa0x12?(_0x4fa0xa=_0x4fa0x4,_0x4fa0x4=_0x4fa0x5,_0x4fa0x5=_0x4fa0xa):3==_0x4fa0x12&&(_0x4fa0x9=_0x285e[500]);_0x4fa0x3+=_0x285e[1636]+_0x4fa0x4+_0x285e[1637]+_0x4fa0x5+_0x285e[1638]+_0x4fa0x9+_0x285e[1635]};_0x4fa0x2[_0x285e[124]][_0x285e[347]]=_0x4fa0x3};function mxEllipse(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxEllipse,mxShape);mxEllipse[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[680]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1337]]()};function mxDoubleEllipse(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxDoubleEllipse,mxShape);mxDoubleEllipse[_0x285e[202]][_0x285e[1460]]=10;mxDoubleEllipse[_0x285e[202]][_0x285e[1601]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[680]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1337]]()};mxDoubleEllipse[_0x285e[202]][_0x285e[1602]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=Math[_0x285e[243]](4,Math[_0x285e[243]](_0x4fa0x5/5,_0x4fa0x9/5));_0x4fa0x5-=2*_0x4fa0xa;_0x4fa0x9-=2*_0x4fa0xa;0<_0x4fa0x5&&0<_0x4fa0x9&&_0x4fa0x2[_0x285e[680]](_0x4fa0x3+_0x4fa0xa,_0x4fa0x4+_0x4fa0xa,_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1336]]()};function mxRhombus(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxRhombus,mxShape);mxRhombus[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x5/2,_0x4fa0x12=_0x4fa0x9/2;_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x3+_0x4fa0xa,_0x4fa0x4);_0x4fa0x2[_0x285e[1277]](_0x4fa0x3+_0x4fa0x5,_0x4fa0x4+_0x4fa0x12);_0x4fa0x2[_0x285e[1277]](_0x4fa0x3+_0x4fa0xa,_0x4fa0x4+_0x4fa0x9);_0x4fa0x2[_0x285e[1277]](_0x4fa0x3,_0x4fa0x4+_0x4fa0x12);_0x4fa0x2[_0x285e[268]]();_0x4fa0x2[_0x285e[1337]]()};function mxPolyline(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxShape[_0x285e[239]](this);this[_0x285e[1525]]=_0x4fa0x2;this[_0x285e[1336]]=_0x4fa0x3;this[_0x285e[1307]]=null!=_0x4fa0x4?_0x4fa0x4:1}mxUtils[_0x285e[1284]](mxPolyline,mxShape);mxPolyline[_0x285e[202]][_0x285e[1614]]=function(){return 0};mxPolyline[_0x285e[202]][_0x285e[1594]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1639]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[1606]])};mxPolyline[_0x285e[202]][_0x285e[1639]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,_0x4fa0x9=_0x4fa0x3[0],_0x4fa0xa=_0x4fa0x3[_0x4fa0x3[_0x285e[67]]-1];_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]]);for(var _0x4fa0x12=1;_0x4fa0x12<_0x4fa0x3[_0x285e[67]]-1;_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x3[_0x4fa0x12],_0x4fa0x14=_0x4fa0x9[_0x285e[235]]-_0x4fa0x13[_0x285e[235]],_0x4fa0x9=_0x4fa0x9[_0x285e[236]]-_0x4fa0x13[_0x285e[236]];if(_0x4fa0x4&&_0x4fa0x12<_0x4fa0x3[_0x285e[67]]-1&&(0!=_0x4fa0x14||0!=_0x4fa0x9)){var _0x4fa0x15=Math[_0x285e[428]](_0x4fa0x14*_0x4fa0x14+_0x4fa0x9*_0x4fa0x9),_0x4fa0x14=_0x4fa0x14*Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x15/2)/_0x4fa0x15,_0x4fa0x9=_0x4fa0x9*Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x15/2)/_0x4fa0x15;_0x4fa0x2[_0x285e[1277]](_0x4fa0x13[_0x285e[235]]+_0x4fa0x14,_0x4fa0x13[_0x285e[236]]+_0x4fa0x9);_0x4fa0x9=_0x4fa0x3[_0x4fa0x12+1];_0x4fa0x14=_0x4fa0x9[_0x285e[235]]-_0x4fa0x13[_0x285e[235]];_0x4fa0x9=_0x4fa0x9[_0x285e[236]]-_0x4fa0x13[_0x285e[236]];_0x4fa0x15=Math[_0x285e[160]](1,Math[_0x285e[428]](_0x4fa0x14*_0x4fa0x14+_0x4fa0x9*_0x4fa0x9));_0x4fa0x14=_0x4fa0x14*Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x15/2)/_0x4fa0x15;_0x4fa0x9=_0x4fa0x9*Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x15/2)/_0x4fa0x15;_0x4fa0x14=_0x4fa0x13[_0x285e[235]]+_0x4fa0x14;_0x4fa0x9=_0x4fa0x13[_0x285e[236]]+_0x4fa0x9;_0x4fa0x2[_0x285e[1278]](_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x14,_0x4fa0x9);_0x4fa0x13= new mxPoint(_0x4fa0x14,_0x4fa0x9)}else {_0x4fa0x2[_0x285e[1277]](_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]])};_0x4fa0x9=_0x4fa0x13};_0x4fa0x2[_0x285e[1277]](_0x4fa0xa[_0x285e[235]],_0x4fa0xa[_0x285e[236]]);_0x4fa0x2[_0x285e[1336]]()};function mxArrow(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){mxShape[_0x285e[239]](this);this[_0x285e[1525]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1;this[_0x285e[1640]]=null!=_0x4fa0x9?_0x4fa0x9:mxConstants[_0x285e[1641]];this[_0x285e[657]]=null!=_0x4fa0xa?_0x4fa0xa:mxConstants[_0x285e[1642]];this[_0x285e[643]]=null!=_0x4fa0x12?_0x4fa0x12:mxConstants[_0x285e[1643]]}mxUtils[_0x285e[1284]](mxArrow,mxShape);mxArrow[_0x285e[202]][_0x285e[1594]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxConstants[_0x285e[1642]],_0x4fa0x5=mxConstants[_0x285e[1641]],_0x4fa0x9=mxConstants[_0x285e[1643]],_0x4fa0xa=_0x4fa0x3[0],_0x4fa0x12=_0x4fa0x3[_0x4fa0x3[_0x285e[67]]-1],_0x4fa0x13=_0x4fa0x12[_0x285e[235]]-_0x4fa0xa[_0x285e[235]],_0x4fa0x14=_0x4fa0x12[_0x285e[236]]-_0x4fa0xa[_0x285e[236]],_0x4fa0x15=Math[_0x285e[428]](_0x4fa0x13*_0x4fa0x13+_0x4fa0x14*_0x4fa0x14),_0x4fa0x16=_0x4fa0x15-2*_0x4fa0x4-_0x4fa0x9,_0x4fa0x13=_0x4fa0x13/_0x4fa0x15,_0x4fa0x14=_0x4fa0x14/_0x4fa0x15,_0x4fa0x15=_0x4fa0x5*_0x4fa0x14/3,_0x4fa0x5=-_0x4fa0x5*_0x4fa0x13/3,_0x4fa0x9=_0x4fa0xa[_0x285e[235]]-_0x4fa0x15/2+_0x4fa0x4*_0x4fa0x13,_0x4fa0xa=_0x4fa0xa[_0x285e[236]]-_0x4fa0x5/2+_0x4fa0x4*_0x4fa0x14,_0x4fa0x17=_0x4fa0x9+_0x4fa0x15,_0x4fa0x18=_0x4fa0xa+_0x4fa0x5,_0x4fa0x19=_0x4fa0x17+_0x4fa0x16*_0x4fa0x13,_0x4fa0x16=_0x4fa0x18+_0x4fa0x16*_0x4fa0x14,_0x4fa0x1a=_0x4fa0x19+_0x4fa0x15,_0x4fa0x1b=_0x4fa0x16+_0x4fa0x5,_0x4fa0x1c=_0x4fa0x1a-3*_0x4fa0x15,_0x4fa0x1d=_0x4fa0x1b-3*_0x4fa0x5;_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x9,_0x4fa0xa);_0x4fa0x2[_0x285e[1277]](_0x4fa0x17,_0x4fa0x18);_0x4fa0x2[_0x285e[1277]](_0x4fa0x19,_0x4fa0x16);_0x4fa0x2[_0x285e[1277]](_0x4fa0x1a,_0x4fa0x1b);_0x4fa0x2[_0x285e[1277]](_0x4fa0x12[_0x285e[235]]-_0x4fa0x4*_0x4fa0x13,_0x4fa0x12[_0x285e[236]]-_0x4fa0x4*_0x4fa0x14);_0x4fa0x2[_0x285e[1277]](_0x4fa0x1c,_0x4fa0x1d);_0x4fa0x2[_0x285e[1277]](_0x4fa0x1c+_0x4fa0x15,_0x4fa0x1d+_0x4fa0x5);_0x4fa0x2[_0x285e[268]]();_0x4fa0x2[_0x285e[1337]]()};function mxText(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,_0x4fa0x16,_0x4fa0x17,_0x4fa0x18,_0x4fa0x19,_0x4fa0x1a,_0x4fa0x1b,_0x4fa0x1c,_0x4fa0x1d,_0x4fa0x1e,_0x4fa0x1f){mxShape[_0x285e[239]](this);this[_0x285e[131]]=_0x4fa0x2;this[_0x285e[1562]]=_0x4fa0x3;this[_0x285e[352]]=null!=_0x4fa0x9?_0x4fa0x9:_0x285e[586];this[_0x285e[611]]=null!=_0x4fa0x4?_0x4fa0x4:_0x285e[110];this[_0x285e[552]]=null!=_0x4fa0x5?_0x4fa0x5:_0x285e[110];this[_0x285e[1288]]=null!=_0x4fa0xa?_0x4fa0xa:mxConstants[_0x285e[484]];this[_0x285e[803]]=null!=_0x4fa0x12?_0x4fa0x12:mxConstants[_0x285e[483]];this[_0x285e[666]]=null!=_0x4fa0x13?_0x4fa0x13:mxConstants[_0x285e[1644]];this[_0x285e[657]]=parseInt(_0x4fa0x14||2);this[_0x285e[658]]=this[_0x285e[657]]+parseInt(_0x4fa0x15||0);this[_0x285e[661]]=this[_0x285e[657]]+parseInt(_0x4fa0x16||0);this[_0x285e[660]]=this[_0x285e[657]]+parseInt(_0x4fa0x17||0);this[_0x285e[659]]=this[_0x285e[657]]+parseInt(_0x4fa0x18||0);this[_0x285e[662]]=null!=_0x4fa0x19?_0x4fa0x19:!0;this[_0x285e[1537]]=_0x4fa0x1a;this[_0x285e[467]]=_0x4fa0x1b;this[_0x285e[1333]]=null!=_0x4fa0x1c?_0x4fa0x1c:!1;this[_0x285e[1645]]=null!=_0x4fa0x1d?_0x4fa0x1d:!1;this[_0x285e[277]]=null!=_0x4fa0x1e?_0x4fa0x1e:_0x285e[189];this[_0x285e[629]]=null!=_0x4fa0x1f?_0x4fa0x1f:0;this[_0x285e[603]]=0}mxUtils[_0x285e[1284]](mxText,mxShape);mxText[_0x285e[202]][_0x285e[1646]]=0;mxText[_0x285e[202]][_0x285e[1647]]=0;mxText[_0x285e[202]][_0x285e[1648]]=0;mxText[_0x285e[202]][_0x285e[1649]]=0;mxText[_0x285e[202]][_0x285e[1650]]= !0;mxText[_0x285e[202]][_0x285e[1616]]= -90;mxText[_0x285e[202]][_0x285e[1651]]= !0;mxText[_0x285e[202]][_0x285e[1652]]= !1;mxText[_0x285e[202]][_0x285e[1566]]=function(){return !1};mxText[_0x285e[202]][_0x285e[1567]]=function(){return 8!=document[_0x285e[5]]};mxText[_0x285e[202]][_0x285e[1568]]=function(){return 0};mxText[_0x285e[202]][_0x285e[1574]]=function(){return null!=this[_0x285e[1562]]&&!isNaN(this[_0x285e[1562]][_0x285e[235]])&&!isNaN(this[_0x285e[1562]][_0x285e[236]])&&!isNaN(this[_0x285e[1562]][_0x285e[117]])&&!isNaN(this[_0x285e[1562]][_0x285e[119]])};mxText[_0x285e[202]][_0x285e[1577]]=function(){var _0x4fa0x2=this[_0x285e[252]];8==document[_0x285e[5]]&&null!=_0x4fa0x2[_0x285e[285]]&&(_0x4fa0x2=_0x4fa0x2[_0x285e[285]],null!=_0x4fa0x2[_0x285e[285]]&&(_0x4fa0x2=_0x4fa0x2[_0x285e[285]]));this[_0x285e[1563]]=this[_0x285e[1562]][_0x285e[238]]();var _0x4fa0x3=this[_0x285e[1615]]();if(!this[_0x285e[1652]]&&null!=_0x4fa0x2&&_0x285e[1334]!=this[_0x285e[277]]&&(!this[_0x285e[1645]]||!this[_0x285e[1651]])){var _0x4fa0x4=null,_0x4fa0x5=null;if(null!=_0x4fa0x2[_0x285e[538]]){if(null!=_0x4fa0x2[_0x285e[285]]&&null!=_0x4fa0x2[_0x285e[285]][_0x285e[285]]&&_0x285e[1435]==_0x4fa0x2[_0x285e[285]][_0x285e[285]][_0x285e[301]]){_0x4fa0x2=_0x4fa0x2[_0x285e[285]][_0x285e[285]],_0x4fa0x4=this[_0x285e[1333]]?this[_0x285e[1562]][_0x285e[117]]:parseInt(_0x4fa0x2[_0x285e[284]](_0x285e[117]))*this[_0x285e[255]],_0x4fa0x5=parseInt(_0x4fa0x2[_0x285e[284]](_0x285e[119]))*this[_0x285e[255]]}else {_0x4fa0x3=_0x4fa0x2[_0x285e[1451]]();if(0==_0x4fa0x3[_0x285e[117]]&&0==_0x4fa0x3[_0x285e[119]]){return};this[_0x285e[1563]]= new mxRectangle(_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]]);_0x4fa0x3=0}}else {_0x4fa0x5=this[_0x285e[724]][_0x285e[441]][_0x285e[1653]],null!=this[_0x285e[359]]&&null!=this[_0x285e[167]]?(_0x4fa0x4=this[_0x285e[1333]]?this[_0x285e[1562]][_0x285e[117]]:this[_0x285e[359]]*this[_0x285e[255]],_0x4fa0x5=this[_0x285e[167]]*this[_0x285e[255]]):null!=_0x4fa0x5?(this[_0x285e[1441]](_0x4fa0x5),this[_0x285e[1654]](_0x4fa0x5),mxUtils[_0x285e[1331]](this[_0x285e[131]])?_0x4fa0x5[_0x285e[339]]=this[_0x285e[131]][_0x285e[342]]:(_0x4fa0x4=this[_0x285e[1650]]?this[_0x285e[131]][_0x285e[230]](/\n/g,_0x285e[1453]):this[_0x285e[131]],_0x4fa0x5[_0x285e[339]]=_0x4fa0x4),_0x4fa0x4=this[_0x285e[1333]]?this[_0x285e[1562]][_0x285e[117]]:_0x4fa0x5[_0x285e[359]]*this[_0x285e[255]],_0x4fa0x5=_0x4fa0x5[_0x285e[167]]*this[_0x285e[255]]):(_0x4fa0x4=this[_0x285e[1333]]?this[_0x285e[1562]][_0x285e[117]]:_0x4fa0x2[_0x285e[359]]*this[_0x285e[255]],_0x4fa0x5=_0x4fa0x2[_0x285e[167]]*this[_0x285e[255]])};null!=_0x4fa0x4&&null!=_0x4fa0x5&&(this[_0x285e[1563]]= new mxRectangle(this[_0x285e[1562]][_0x285e[235]]+this[_0x285e[1655]][_0x285e[235]]*_0x4fa0x4,this[_0x285e[1562]][_0x285e[236]]+this[_0x285e[1655]][_0x285e[236]]*_0x4fa0x5,_0x4fa0x4,_0x4fa0x5))}else {this[_0x285e[1563]][_0x285e[235]]+=this[_0x285e[1655]][_0x285e[235]]*this[_0x285e[1563]][_0x285e[117]],this[_0x285e[1563]][_0x285e[236]]+=this[_0x285e[1655]][_0x285e[236]]*this[_0x285e[1563]][_0x285e[119]]};null!=this[_0x285e[1563]]&&(0!=_0x4fa0x3&&(_0x4fa0x3=mxUtils[_0x285e[1613]](this[_0x285e[1563]],_0x4fa0x3),this[_0x285e[1563]][_0x285e[235]]=_0x4fa0x3[_0x285e[235]],this[_0x285e[1563]][_0x285e[236]]=_0x4fa0x3[_0x285e[236]],mxClient[_0x285e[496]]||(this[_0x285e[1563]][_0x285e[117]]=_0x4fa0x3[_0x285e[117]],this[_0x285e[1563]][_0x285e[119]]=_0x4fa0x3[_0x285e[119]])),this[_0x285e[1563]][_0x285e[235]]=Math[_0x285e[519]](this[_0x285e[1563]][_0x285e[235]]),this[_0x285e[1563]][_0x285e[236]]=Math[_0x285e[519]](this[_0x285e[1563]][_0x285e[236]]),this[_0x285e[1563]][_0x285e[117]]=Math[_0x285e[430]](this[_0x285e[1563]][_0x285e[117]]),this[_0x285e[1563]][_0x285e[119]]=Math[_0x285e[430]](this[_0x285e[1563]][_0x285e[119]]))};mxText[_0x285e[202]][_0x285e[1598]]=function(){return 0};mxText[_0x285e[202]][_0x285e[1615]]=function(){return null!=this[_0x285e[724]]&&null!=this[_0x285e[724]][_0x285e[253]]?this[_0x285e[724]][_0x285e[253]][_0x285e[1615]]():0};mxText[_0x285e[202]][_0x285e[1590]]=function(){return !this[_0x285e[662]]&&null!=this[_0x285e[724]]&&this[_0x285e[724]][_0x285e[441]][_0x285e[1179]][_0x285e[251]][_0x285e[1193]](this[_0x285e[724]][_0x285e[246]])};mxText[_0x285e[202]][_0x285e[1592]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){mxShape[_0x285e[202]][_0x285e[1592]][_0x285e[183]](this,arguments);_0x4fa0x2[_0x285e[1259]](this[_0x285e[352]]);_0x4fa0x2[_0x285e[1260]](this[_0x285e[1537]]);_0x4fa0x2[_0x285e[1262]](this[_0x285e[467]]);_0x4fa0x2[_0x285e[1265]](this[_0x285e[1288]]);_0x4fa0x2[_0x285e[1264]](this[_0x285e[803]]);_0x4fa0x2[_0x285e[1266]](this[_0x285e[666]])};mxText[_0x285e[202]][_0x285e[1586]]=function(){this[_0x285e[252]][_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]])+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]])+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[117]]=_0x285e[942];this[_0x285e[252]][_0x285e[124]][_0x285e[119]]=_0x285e[942];this[_0x285e[252]][_0x285e[124]][_0x285e[277]]=_0x285e[189]};mxText[_0x285e[202]][_0x285e[1209]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[255]],_0x4fa0x4=this[_0x285e[1562]][_0x285e[235]]/_0x4fa0x3,_0x4fa0x5=this[_0x285e[1562]][_0x285e[236]]/_0x4fa0x3,_0x4fa0x9=this[_0x285e[1562]][_0x285e[117]]/_0x4fa0x3,_0x4fa0x3=this[_0x285e[1562]][_0x285e[119]]/_0x4fa0x3;this[_0x285e[1591]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0x3);this[_0x285e[1592]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0x3);var _0x4fa0xa=mxUtils[_0x285e[1331]](this[_0x285e[131]])||this[_0x285e[507]]==mxConstants[_0x285e[1656]],_0x4fa0x12=_0x4fa0xa||_0x4fa0x2 instanceof mxVmlCanvas2D?_0x285e[1428]:_0x285e[110],_0x4fa0x13=this[_0x285e[131]];!_0x4fa0xa&&_0x285e[1428]==_0x4fa0x12&&(_0x4fa0x13=mxUtils[_0x285e[321]](_0x4fa0x13,!1));_0x4fa0x13=!mxUtils[_0x285e[1331]](this[_0x285e[131]])&&this[_0x285e[1650]]&&_0x285e[1428]==_0x4fa0x12?_0x4fa0x13[_0x285e[230]](/\n/g,_0x285e[1453]):_0x4fa0x13;_0x4fa0x2[_0x285e[963]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0x3,_0x4fa0x13,this[_0x285e[611]],this[_0x285e[552]],this[_0x285e[1333]],_0x4fa0x12,_0x285e[1334]==this[_0x285e[277]],this[_0x285e[1645]],this[_0x285e[1615]]())};mxText[_0x285e[202]][_0x285e[1575]]=function(){var _0x4fa0x2=this[_0x285e[252]][_0x285e[124]];_0x4fa0x2[_0x285e[461]]=1>this[_0x285e[461]]?this[_0x285e[461]]:_0x285e[110];_0x4fa0x2[_0x285e[277]]=_0x285e[110];_0x4fa0x2[_0x285e[117]]=_0x285e[110];_0x4fa0x2[_0x285e[119]]=_0x285e[110];this[_0x285e[1441]](this[_0x285e[252]]);this[_0x285e[1654]](this[_0x285e[252]]);this[_0x285e[1657]]();this[_0x285e[167]]=this[_0x285e[359]]=null;null!=mxClient[_0x285e[73]]?this[_0x285e[1658]]():this[_0x285e[1659]]()};mxText[_0x285e[202]][_0x285e[1658]]=function(){var _0x4fa0x2=this[_0x285e[1615]](),_0x4fa0x3=this[_0x285e[252]][_0x285e[124]],_0x4fa0x4=this[_0x285e[1655]][_0x285e[235]],_0x4fa0x5=this[_0x285e[1655]][_0x285e[236]];0!=_0x4fa0x2?(_0x4fa0x3[mxClient[_0x285e[73]]+_0x285e[1660]]=100*-_0x4fa0x4+_0x285e[1661]+100*-_0x4fa0x5+_0x285e[229],_0x4fa0x3[mxClient[_0x285e[73]]+_0x285e[1662]]=_0x285e[536]+100*_0x4fa0x4+_0x285e[1663]+100*_0x4fa0x5+_0x285e[1664]+this[_0x285e[255]]+_0x285e[1665]+_0x4fa0x2+_0x285e[1666]):(_0x4fa0x3[mxClient[_0x285e[73]]+_0x285e[1660]]=_0x285e[1667],_0x4fa0x3[mxClient[_0x285e[73]]+_0x285e[1662]]=_0x285e[1402]+this[_0x285e[255]]+_0x285e[1393]+100*_0x4fa0x4+_0x285e[1663]+100*_0x4fa0x5+_0x285e[1668]);_0x4fa0x3[_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]])+_0x285e[168];_0x4fa0x3[_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]])+_0x285e[168]};mxText[_0x285e[202]][_0x285e[1659]]=function(){var _0x4fa0x2=this[_0x285e[252]][_0x285e[124]],_0x4fa0x3=this[_0x285e[1655]][_0x285e[235]],_0x4fa0x4=this[_0x285e[1655]][_0x285e[236]],_0x4fa0x5=this[_0x285e[255]];_0x4fa0x2[_0x285e[347]]=_0x285e[110];var _0x4fa0x9=0,_0x4fa0xa=0,_0x4fa0x12=null!=this[_0x285e[724]]?this[_0x285e[724]][_0x285e[441]][_0x285e[1653]]:null;if(null!=_0x4fa0x12){_0x4fa0x12[_0x285e[124]][_0x285e[277]]=_0x285e[110];_0x4fa0x12[_0x285e[124]][_0x285e[119]]=_0x285e[110];_0x4fa0x12[_0x285e[124]][_0x285e[117]]=_0x285e[110];this[_0x285e[1441]](_0x4fa0x12);this[_0x285e[1654]](_0x4fa0x12);if(mxUtils[_0x285e[1331]](this[_0x285e[131]])){_0x4fa0x12[_0x285e[339]]=this[_0x285e[131]][_0x285e[342]]}else {var _0x4fa0x13=this[_0x285e[131]];this[_0x285e[507]]!=mxConstants[_0x285e[1656]]&&(_0x4fa0x13=mxUtils[_0x285e[321]](_0x4fa0x13,!1));_0x4fa0x13=this[_0x285e[1650]]?_0x4fa0x13[_0x285e[230]](/\n/g,_0x285e[1453]):_0x4fa0x13;_0x4fa0x12[_0x285e[339]]=_0x4fa0x13};_0x4fa0x9=_0x4fa0x12[_0x285e[359]]+2;_0x4fa0xa=_0x4fa0x12[_0x285e[167]]+2}else {_0x4fa0x9=this[_0x285e[252]][_0x285e[359]],_0x4fa0xa=this[_0x285e[252]][_0x285e[167]]+1};this[_0x285e[359]]=_0x4fa0x9;this[_0x285e[167]]=_0x4fa0xa;_0x4fa0x12=this[_0x285e[1562]][_0x285e[117]]/_0x4fa0x5;_0x4fa0x13=this[_0x285e[1562]][_0x285e[119]]/_0x4fa0x5;mxClient[_0x285e[496]]&&(this[_0x285e[1645]]||_0x285e[1334]==this[_0x285e[277]])&&0<_0x4fa0x13?(_0x4fa0x13=Math[_0x285e[243]](_0x4fa0x13,_0x4fa0xa),_0x4fa0x2[_0x285e[119]]=Math[_0x285e[488]](_0x4fa0x13+1)+_0x285e[168]):_0x4fa0x13=_0x4fa0xa;_0x285e[1334]!=this[_0x285e[277]]&&(mxClient[_0x285e[496]]&&(this[_0x285e[1645]]||this[_0x285e[1333]])&&0<_0x4fa0x12?(_0x4fa0x12=Math[_0x285e[243]](_0x4fa0x12,_0x4fa0x9),_0x4fa0x2[_0x285e[117]]=Math[_0x285e[488]](_0x4fa0x12)+_0x285e[168]):_0x4fa0x12=_0x4fa0x9);var _0x4fa0x13=_0x4fa0x13*_0x4fa0x5,_0x4fa0x12=_0x4fa0x12*_0x4fa0x5,_0x4fa0x9=this[_0x285e[1615]]()*(Math[_0x285e[424]]/180),_0x4fa0xa=parseFloat(parseFloat(Math[_0x285e[426]](_0x4fa0x9))[_0x285e[1293]](8)),_0x4fa0x14=parseFloat(parseFloat(Math[_0x285e[427]](-_0x4fa0x9))[_0x285e[1293]](8)),_0x4fa0x9=_0x4fa0x9%(2*Math[_0x285e[424]]);0>_0x4fa0x9&&(_0x4fa0x9+=2*Math[_0x285e[424]]);_0x4fa0x9%=Math[_0x285e[424]];_0x4fa0x9>Math[_0x285e[424]]/2&&(_0x4fa0x9=Math[_0x285e[424]]-_0x4fa0x9);var _0x4fa0x15=Math[_0x285e[426]](_0x4fa0x9),_0x4fa0x16=Math[_0x285e[427]](-_0x4fa0x9),_0x4fa0x3=_0x4fa0x12* -(_0x4fa0x3+0.5),_0x4fa0x4=_0x4fa0x13* -(_0x4fa0x4+0.5),_0x4fa0x17=(_0x4fa0x13-_0x4fa0x13*_0x4fa0x15+_0x4fa0x12*_0x4fa0x16)/2+_0x4fa0x14*_0x4fa0x3-_0x4fa0xa*_0x4fa0x4;0!=_0x4fa0x9&&(_0x4fa0x2[_0x285e[347]]=_0x285e[1505]+_0x4fa0xa+_0x285e[1506]+_0x4fa0x14+_0x285e[1507]+-_0x4fa0x14+_0x285e[1508]+_0x4fa0xa+_0x285e[1509]);_0x4fa0x2[_0x285e[499]]=_0x4fa0x5;_0x4fa0x2[_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]]+((_0x4fa0x12-_0x4fa0x12*_0x4fa0x15+_0x4fa0x13*_0x4fa0x16)/2-_0x4fa0xa*_0x4fa0x3-_0x4fa0x14*_0x4fa0x4)-_0x4fa0x12/2)+_0x285e[168];_0x4fa0x2[_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]]+_0x4fa0x17-_0x4fa0x13/2)+_0x285e[168]};mxText[_0x285e[202]][_0x285e[1657]]=function(){if(mxUtils[_0x285e[1331]](this[_0x285e[131]])){this[_0x285e[252]][_0x285e[339]]=_0x285e[110],this[_0x285e[252]][_0x285e[62]](this[_0x285e[131]])}else {var _0x4fa0x2=this[_0x285e[131]];this[_0x285e[507]]!=mxConstants[_0x285e[1656]]&&(_0x4fa0x2=mxUtils[_0x285e[321]](_0x4fa0x2,!1));var _0x4fa0x2=this[_0x285e[1650]]?_0x4fa0x2[_0x285e[230]](/\n/g,_0x285e[1453]):_0x4fa0x2,_0x4fa0x3=null!=this[_0x285e[1537]]&&this[_0x285e[1537]]!=mxConstants[_0x285e[217]]?this[_0x285e[1537]]:null,_0x4fa0x4=null!=this[_0x285e[467]]&&this[_0x285e[467]]!=mxConstants[_0x285e[217]]?this[_0x285e[467]]:null;if(null!=_0x4fa0x3||null!=_0x4fa0x4){if(_0x285e[1334]==this[_0x285e[277]]){null!=_0x4fa0x3&&(this[_0x285e[252]][_0x285e[124]][_0x285e[1028]]=_0x4fa0x3),null!=_0x4fa0x4&&(this[_0x285e[252]][_0x285e[124]][_0x285e[467]]=_0x285e[1669]+_0x4fa0x4)}else {var _0x4fa0x5=_0x285e[110];null!=_0x4fa0x3&&(_0x4fa0x5+=_0x285e[1418]+_0x4fa0x3+_0x285e[471]);null!=_0x4fa0x4&&(_0x4fa0x5+=_0x285e[1419]+_0x4fa0x4+_0x285e[471]);_0x4fa0x2=_0x285e[1670]+_0x4fa0x5+_0x285e[1671]+this[_0x285e[252]][_0x285e[124]][_0x285e[489]]+_0x285e[1423]+_0x4fa0x2+_0x285e[1424];this[_0x285e[252]][_0x285e[124]][_0x285e[489]]=_0x285e[110]}};this[_0x285e[252]][_0x285e[339]]=_0x4fa0x2}};mxText[_0x285e[202]][_0x285e[1441]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[124]];_0x4fa0x2[_0x285e[489]]=Math[_0x285e[488]](this[_0x285e[803]]*mxConstants[_0x285e[490]])+_0x285e[168];_0x4fa0x2[_0x285e[487]]=Math[_0x285e[488]](this[_0x285e[803]])+_0x285e[168];_0x4fa0x2[_0x285e[486]]=this[_0x285e[1288]];_0x4fa0x2[_0x285e[123]]=_0x285e[125];_0x4fa0x2[_0x285e[352]]=this[_0x285e[352]];_0x4fa0x2[_0x285e[1452]]=(this[_0x285e[666]]&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]]?_0x285e[1447]:_0x285e[110];_0x4fa0x2[_0x285e[666]]=(this[_0x285e[666]]&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]]?_0x285e[1449]:_0x285e[110];_0x4fa0x2[_0x285e[1498]]=(this[_0x285e[666]]&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]]?_0x285e[355]:_0x285e[110];_0x4fa0x2[_0x285e[1165]]=this[_0x285e[611]]==mxConstants[_0x285e[479]]?_0x285e[698]:this[_0x285e[611]]==mxConstants[_0x285e[480]]?_0x285e[699]:_0x285e[361]};mxText[_0x285e[202]][_0x285e[1654]]=function(_0x4fa0x2){var _0x4fa0x3=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[117]]/this[_0x285e[255]]),_0x4fa0x4=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[119]]/this[_0x285e[255]]);_0x4fa0x2=_0x4fa0x2[_0x285e[124]];this[_0x285e[1645]]?(_0x4fa0x2[_0x285e[277]]=_0x285e[188],0<_0x4fa0x4&&(_0x4fa0x2[_0x285e[1503]]=_0x4fa0x4+_0x285e[168]),0<_0x4fa0x3&&(_0x4fa0x2[_0x285e[117]]=_0x4fa0x3+_0x285e[168])):_0x285e[1334]==this[_0x285e[277]]&&(_0x4fa0x2[_0x285e[117]]=_0x4fa0x3+_0x285e[168],0<_0x4fa0x4&&(_0x4fa0x2[_0x285e[1503]]=_0x4fa0x4+_0x285e[168]));this[_0x285e[1333]]?(!this[_0x285e[1645]]&&0<_0x4fa0x3&&(_0x4fa0x2[_0x285e[117]]=_0x4fa0x3+_0x285e[168]),_0x4fa0x2[_0x285e[493]]=_0x285e[1502]):_0x4fa0x2[_0x285e[493]]=_0x285e[494]};mxText[_0x285e[202]][_0x285e[1672]]=function(){this[_0x285e[1655]]=mxUtils[_0x285e[1501]](this[_0x285e[611]],this[_0x285e[552]])};mxText[_0x285e[202]][_0x285e[1673]]=function(){var _0x4fa0x2=0,_0x4fa0x3=0,_0x4fa0x2=this[_0x285e[611]]==mxConstants[_0x285e[479]]?(this[_0x285e[659]]-this[_0x285e[661]])/2:this[_0x285e[611]]==mxConstants[_0x285e[480]]?-this[_0x285e[661]]-this[_0x285e[1649]]:this[_0x285e[659]]+this[_0x285e[1648]],_0x4fa0x3=this[_0x285e[552]]==mxConstants[_0x285e[481]]?(this[_0x285e[658]]-this[_0x285e[660]])/2:this[_0x285e[552]]==mxConstants[_0x285e[482]]?-this[_0x285e[660]]-this[_0x285e[1647]]:this[_0x285e[658]]+this[_0x285e[1646]];return new mxPoint(_0x4fa0x2,_0x4fa0x3)};function mxTriangle(){mxActor[_0x285e[239]](this)}mxUtils[_0x285e[1284]](mxTriangle,mxActor);mxTriangle[_0x285e[202]][_0x285e[1625]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[1276]](0,0);_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,0.5*_0x4fa0x9);_0x4fa0x2[_0x285e[1277]](0,_0x4fa0x9);_0x4fa0x2[_0x285e[268]]()};function mxHexagon(){mxActor[_0x285e[239]](this)}mxUtils[_0x285e[1284]](mxHexagon,mxActor);mxHexagon[_0x285e[202]][_0x285e[1625]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[1276]](0.25*_0x4fa0x5,0);_0x4fa0x2[_0x285e[1277]](0.75*_0x4fa0x5,0);_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,0.5*_0x4fa0x9);_0x4fa0x2[_0x285e[1277]](0.75*_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1277]](0.25*_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[1277]](0,0.5*_0x4fa0x9);_0x4fa0x2[_0x285e[268]]()};function mxLine(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1336]]=_0x4fa0x3;this[_0x285e[1307]]=null!=_0x4fa0x4?_0x4fa0x4:1}mxUtils[_0x285e[1284]](mxLine,mxShape);mxLine[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x4+=_0x4fa0x9/2;_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x3,_0x4fa0x4);_0x4fa0x2[_0x285e[1277]](_0x4fa0x3+_0x4fa0x5,_0x4fa0x4);_0x4fa0x2[_0x285e[1336]]()};function mxImageShape(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[618]]=_0x4fa0x3;this[_0x285e[1334]]=_0x4fa0x4;this[_0x285e[1336]]=_0x4fa0x5;this[_0x285e[1307]]=null!=_0x4fa0x9?_0x4fa0x9:1;this[_0x285e[639]]= !1}mxUtils[_0x285e[1284]](mxImageShape,mxRectangleShape);mxImageShape[_0x285e[202]][_0x285e[1674]]= !0;mxImageShape[_0x285e[202]][_0x285e[1568]]=function(){return !mxClient[_0x285e[80]]?0.5:0};mxImageShape[_0x285e[202]][_0x285e[183]]=function(_0x4fa0x2){mxShape[_0x285e[202]][_0x285e[183]][_0x285e[183]](this,arguments);this[_0x285e[1299]]=this[_0x285e[1336]]=this[_0x285e[1334]]=null;null!=this[_0x285e[124]]&&(this[_0x285e[1334]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_BACKGROUND),this[_0x285e[1336]]=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_BORDER),this[_0x285e[1674]]=1==mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_ASPECT,1),this[_0x285e[623]]=this[_0x285e[623]]||1==mxUtils[_0x285e[433]](this[_0x285e[124]],_0x285e[1675],0),this[_0x285e[624]]=this[_0x285e[624]]||1==mxUtils[_0x285e[433]](this[_0x285e[124]],_0x285e[1676],0))};mxImageShape[_0x285e[202]][_0x285e[1567]]=function(){return !this[_0x285e[1674]]};mxImageShape[_0x285e[202]][_0x285e[1570]]=function(){var _0x4fa0x2=document[_0x285e[55]](_0x285e[485]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];return _0x4fa0x2};mxImageShape[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=this[_0x285e[618]]){var _0x4fa0xa=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_BACKGROUND,null),_0x4fa0x12=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_BORDER,null);if(null!=_0x4fa0xa||null!=_0x4fa0x12){_0x4fa0x2[_0x285e[1245]](_0x4fa0xa),_0x4fa0x2[_0x285e[1249]](_0x4fa0x12),_0x4fa0x2[_0x285e[1319]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[1337]]()};_0x4fa0x2[_0x285e[618]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,this[_0x285e[618]],this[_0x285e[1674]],!1,!1)}else {mxRectangleShape[_0x285e[202]][_0x285e[1601]][_0x285e[183]](this,arguments)}};mxImageShape[_0x285e[202]][_0x285e[1575]]=function(){this[_0x285e[252]][_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]])+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]])+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[117]]=Math[_0x285e[160]](0,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[117]]))+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[119]]=Math[_0x285e[160]](0,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[119]]))+_0x285e[168];this[_0x285e[252]][_0x285e[124]][_0x285e[1028]]=this[_0x285e[1334]]||_0x285e[110];this[_0x285e[252]][_0x285e[124]][_0x285e[1630]]=this[_0x285e[1336]]||_0x285e[110];this[_0x285e[252]][_0x285e[339]]=_0x285e[110];if(null!=this[_0x285e[618]]){var _0x4fa0x2=document[_0x285e[55]](mxClient[_0x285e[49]]||null==mxClient[_0x285e[73]]&&0!=this[_0x285e[603]]?mxClient[_0x285e[463]]+_0x285e[464]:_0x285e[466]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x2[_0x285e[390]]=this[_0x285e[618]];var _0x4fa0x3=100>this[_0x285e[461]]?_0x285e[459]+this[_0x285e[461]]+_0x285e[460]:_0x285e[110];this[_0x285e[252]][_0x285e[124]][_0x285e[347]]=_0x4fa0x3;this[_0x285e[623]]&&this[_0x285e[624]]?_0x4fa0x3+=_0x285e[1677]:this[_0x285e[623]]?_0x4fa0x3+=_0x285e[1678]:this[_0x285e[624]]&&(_0x4fa0x3+=_0x285e[1679]);_0x4fa0x2[_0x285e[124]][_0x285e[347]]!=_0x4fa0x3&&(_0x4fa0x2[_0x285e[124]][_0x285e[347]]=_0x4fa0x3);_0x285e[618]==_0x4fa0x2[_0x285e[301]]?_0x4fa0x2[_0x285e[124]][_0x285e[603]]=this[_0x285e[603]]:_0x4fa0x2[_0x285e[124]][mxClient[_0x285e[73]]+_0x285e[1662]]=_0x285e[1394]+this[_0x285e[603]]+_0x285e[1666];_0x4fa0x2[_0x285e[124]][_0x285e[117]]=this[_0x285e[252]][_0x285e[124]][_0x285e[117]];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=this[_0x285e[252]][_0x285e[124]][_0x285e[119]];this[_0x285e[252]][_0x285e[124]][_0x285e[1617]]=_0x285e[110];this[_0x285e[252]][_0x285e[62]](_0x4fa0x2)}else {this[_0x285e[1600]](this[_0x285e[252]])}};function mxLabel(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxRectangleShape[_0x285e[239]](this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}mxUtils[_0x285e[1284]](mxLabel,mxRectangleShape);mxLabel[_0x285e[202]][_0x285e[1680]]=mxConstants[_0x285e[1681]];mxLabel[_0x285e[202]][_0x285e[657]]=2;mxLabel[_0x285e[202]][_0x285e[1682]]=10;mxLabel[_0x285e[202]][_0x285e[635]]=2;mxLabel[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2){mxShape[_0x285e[202]][_0x285e[176]][_0x285e[183]](this,arguments);null!=this[_0x285e[632]]&&null!=this[_0x285e[630]]&&(this[_0x285e[1683]]= new this[_0x285e[630]],this[_0x285e[1683]][_0x285e[507]]=this[_0x285e[507]],this[_0x285e[1683]][_0x285e[1562]]=this[_0x285e[1562]],this[_0x285e[1683]][_0x285e[1334]]=this[_0x285e[632]],this[_0x285e[1683]][_0x285e[1336]]=this[_0x285e[632]],this[_0x285e[1683]][_0x285e[1299]]=this[_0x285e[634]],this[_0x285e[1683]][_0x285e[663]]=this[_0x285e[638]],this[_0x285e[1683]][_0x285e[176]](this[_0x285e[252]]))};mxLabel[_0x285e[202]][_0x285e[258]]=function(){null!=this[_0x285e[1683]]&&(this[_0x285e[1683]][_0x285e[1334]]=this[_0x285e[632]],this[_0x285e[1683]][_0x285e[1336]]=this[_0x285e[632]],this[_0x285e[1683]][_0x285e[1299]]=this[_0x285e[634]],this[_0x285e[1683]][_0x285e[663]]=this[_0x285e[638]]);mxShape[_0x285e[202]][_0x285e[258]][_0x285e[183]](this,arguments)};mxLabel[_0x285e[202]][_0x285e[1567]]=function(){return mxRectangleShape[_0x285e[202]][_0x285e[1567]][_0x285e[183]](this,arguments)&&null==this[_0x285e[632]]&&null==this[_0x285e[630]]};mxLabel[_0x285e[202]][_0x285e[1602]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){this[_0x285e[1684]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);this[_0x285e[1685]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9);mxRectangleShape[_0x285e[202]][_0x285e[1602]][_0x285e[183]](this,arguments)};mxLabel[_0x285e[202]][_0x285e[1684]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){null!=this[_0x285e[618]]&&(_0x4fa0x3=this[_0x285e[1686]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[618]](_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]],this[_0x285e[618]],!1,!1,!1))};mxLabel[_0x285e[202]][_0x285e[1686]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),_0x4fa0xa=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x4fa0x12=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_WIDTH,mxConstants.DEFAULT_IMAGESIZE),_0x4fa0x13=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_HEIGHT,mxConstants.DEFAULT_IMAGESIZE),_0x4fa0x14=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_SPACING,this[_0x285e[657]])+5;_0x4fa0x2=_0x4fa0x9==mxConstants[_0x285e[479]]?_0x4fa0x2+(_0x4fa0x4-_0x4fa0x12)/2:_0x4fa0x9==mxConstants[_0x285e[480]]?_0x4fa0x2+(_0x4fa0x4-_0x4fa0x12-_0x4fa0x14):_0x4fa0x2+_0x4fa0x14;_0x4fa0x3=_0x4fa0xa==mxConstants[_0x285e[1687]]?_0x4fa0x3+_0x4fa0x14:_0x4fa0xa==mxConstants[_0x285e[482]]?_0x4fa0x3+(_0x4fa0x5-_0x4fa0x13-_0x4fa0x14):_0x4fa0x3+(_0x4fa0x5-_0x4fa0x13)/2;return new mxRectangle(_0x4fa0x2,_0x4fa0x3,_0x4fa0x12,_0x4fa0x13)};mxLabel[_0x285e[202]][_0x285e[1685]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){null!=this[_0x285e[1683]]?(this[_0x285e[1683]][_0x285e[1562]]=this[_0x285e[1688]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),this[_0x285e[1683]][_0x285e[1209]](_0x4fa0x2)):null!=this[_0x285e[631]]&&(_0x4fa0x3=this[_0x285e[1688]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[618]](_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]],this[_0x285e[631]],!1,!1,!1))};mxLabel[_0x285e[202]][_0x285e[1688]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_ALIGN,mxConstants.ALIGN_LEFT),_0x4fa0xa=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_IMAGE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x4fa0x12=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_INDICATOR_WIDTH,this[_0x285e[1682]]),_0x4fa0x13=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_INDICATOR_HEIGHT,this[_0x285e[1682]]),_0x4fa0x14=this[_0x285e[657]]+5;_0x4fa0x2=_0x4fa0x9==mxConstants[_0x285e[480]]?_0x4fa0x2+(_0x4fa0x4-_0x4fa0x12-_0x4fa0x14):_0x4fa0x9==mxConstants[_0x285e[479]]?_0x4fa0x2+(_0x4fa0x4-_0x4fa0x12)/2:_0x4fa0x2+_0x4fa0x14;_0x4fa0x3=_0x4fa0xa==mxConstants[_0x285e[482]]?_0x4fa0x3+(_0x4fa0x5-_0x4fa0x13-_0x4fa0x14):_0x4fa0xa==mxConstants[_0x285e[1687]]?_0x4fa0x3+_0x4fa0x14:_0x4fa0x3+(_0x4fa0x5-_0x4fa0x13)/2;return new mxRectangle(_0x4fa0x2,_0x4fa0x3,_0x4fa0x12,_0x4fa0x13)};mxLabel[_0x285e[202]][_0x285e[1575]]=function(){for(mxRectangleShape[_0x285e[202]][_0x285e[1575]][_0x285e[183]](this,arguments);this[_0x285e[252]][_0x285e[1580]]();){this[_0x285e[252]][_0x285e[266]](this[_0x285e[252]][_0x285e[1581]])};if(null!=this[_0x285e[618]]){var _0x4fa0x2=document[_0x285e[55]](_0x285e[466]);_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[1500];_0x4fa0x2[_0x285e[57]](_0x285e[467],_0x285e[468]);var _0x4fa0x3=this[_0x285e[1686]](this[_0x285e[1562]][_0x285e[235]],this[_0x285e[1562]][_0x285e[236]],this[_0x285e[1562]][_0x285e[117]],this[_0x285e[1562]][_0x285e[119]]);_0x4fa0x3[_0x285e[235]]-=this[_0x285e[1562]][_0x285e[235]];_0x4fa0x3[_0x285e[236]]-=this[_0x285e[1562]][_0x285e[236]];_0x4fa0x2[_0x285e[124]][_0x285e[361]]=Math[_0x285e[488]](_0x4fa0x3[_0x285e[235]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[125]]=Math[_0x285e[488]](_0x4fa0x3[_0x285e[236]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[117]]=Math[_0x285e[488]](_0x4fa0x3[_0x285e[117]])+_0x285e[168];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=Math[_0x285e[488]](_0x4fa0x3[_0x285e[119]])+_0x285e[168];_0x4fa0x2[_0x285e[390]]=this[_0x285e[618]];this[_0x285e[252]][_0x285e[62]](_0x4fa0x2)}};function mxCylinder(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxCylinder,mxShape);mxCylinder[_0x285e[202]][_0x285e[1503]]=40;mxCylinder[_0x285e[202]][_0x285e[1564]]=0;mxCylinder[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[513]](_0x4fa0x3,_0x4fa0x4);_0x4fa0x2[_0x285e[1275]]();this[_0x285e[1625]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,!1);_0x4fa0x2[_0x285e[1337]]();_0x4fa0x2[_0x285e[1267]](!1);_0x4fa0x2[_0x285e[1275]]();this[_0x285e[1625]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,!0);_0x4fa0x2[_0x285e[1336]]()};mxCylinder[_0x285e[202]][_0x285e[1625]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x3=Math[_0x285e[243]](this[_0x285e[1503]],Math[_0x285e[488]](_0x4fa0x9/5));if(_0x4fa0xa&&null!=this[_0x285e[1334]]||!_0x4fa0xa&&null==this[_0x285e[1334]]){_0x4fa0x2[_0x285e[1276]](0,_0x4fa0x3),_0x4fa0x2[_0x285e[1279]](0,2*_0x4fa0x3,_0x4fa0x5,2*_0x4fa0x3,_0x4fa0x5,_0x4fa0x3),_0x4fa0xa||(_0x4fa0x2[_0x285e[1336]](),_0x4fa0x2[_0x285e[1275]]())};_0x4fa0xa||(_0x4fa0x2[_0x285e[1276]](0,_0x4fa0x3),_0x4fa0x2[_0x285e[1279]](0,-_0x4fa0x3/3,_0x4fa0x5,-_0x4fa0x3/3,_0x4fa0x5,_0x4fa0x3),_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0x9-_0x4fa0x3),_0x4fa0x2[_0x285e[1279]](_0x4fa0x5,_0x4fa0x9+_0x4fa0x3/3,0,_0x4fa0x9+_0x4fa0x3/3,0,_0x4fa0x9-_0x4fa0x3),_0x4fa0x2[_0x285e[268]]())};function mxConnector(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxPolyline[_0x285e[239]](this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)}mxUtils[_0x285e[1284]](mxConnector,mxPolyline);mxConnector[_0x285e[202]][_0x285e[1594]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1689]](_0x4fa0x2,_0x4fa0x3,!0),_0x4fa0x5=this[_0x285e[1689]](_0x4fa0x2,_0x4fa0x3,!1);null==this[_0x285e[124]]||1!=this[_0x285e[124]][mxConstants[_0x285e[1690]]]?this[_0x285e[1639]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[1606]]):this[_0x285e[1691]](_0x4fa0x2,_0x4fa0x3);_0x4fa0x2[_0x285e[1245]](this[_0x285e[1336]]);_0x4fa0x2[_0x285e[1267]](!1);_0x4fa0x2[_0x285e[1251]](!1);null!=_0x4fa0x4&&_0x4fa0x4();null!=_0x4fa0x5&&_0x4fa0x5()};mxConnector[_0x285e[202]][_0x285e[1691]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[1275]]();var _0x4fa0x4=_0x4fa0x3[0],_0x4fa0x5=_0x4fa0x3[_0x285e[67]];_0x4fa0x2[_0x285e[1276]](_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]]);for(_0x4fa0x4=1;_0x4fa0x4<_0x4fa0x5-2;_0x4fa0x4++){var _0x4fa0x9=_0x4fa0x3[_0x4fa0x4],_0x4fa0xa=_0x4fa0x3[_0x4fa0x4+1];_0x4fa0x2[_0x285e[1278]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],(_0x4fa0x9[_0x285e[235]]+_0x4fa0xa[_0x285e[235]])/2,(_0x4fa0x9[_0x285e[236]]+_0x4fa0xa[_0x285e[236]])/2)};_0x4fa0x9=_0x4fa0x3[_0x4fa0x5-2];_0x4fa0xa=_0x4fa0x3[_0x4fa0x5-1];_0x4fa0x2[_0x285e[1278]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0xa[_0x285e[235]],_0x4fa0xa[_0x285e[236]]);_0x4fa0x2[_0x285e[1336]]()};mxConnector[_0x285e[202]][_0x285e[1689]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x3[_0x285e[67]],_0x4fa0x9=_0x4fa0x4?_0x4fa0x3[1]:_0x4fa0x3[_0x4fa0x5-2];_0x4fa0x3=_0x4fa0x4?_0x4fa0x3[0]:_0x4fa0x3[_0x4fa0x5-1];var _0x4fa0x5=_0x4fa0x3[_0x285e[235]]-_0x4fa0x9[_0x285e[235]],_0x4fa0xa=_0x4fa0x3[_0x285e[236]]-_0x4fa0x9[_0x285e[236]],_0x4fa0x12=Math[_0x285e[160]](1,Math[_0x285e[428]](_0x4fa0x5*_0x4fa0x5+_0x4fa0xa*_0x4fa0xa)),_0x4fa0x9=_0x4fa0x5/_0x4fa0x12,_0x4fa0x5=_0x4fa0xa/_0x4fa0x12,_0x4fa0xa=mxUtils[_0x285e[1550]](this[_0x285e[124]],_0x4fa0x4?mxConstants[_0x285e[1692]]:mxConstants[_0x285e[1693]],mxConstants.DEFAULT_MARKERSIZE),_0x4fa0x12=mxUtils[_0x285e[433]](this[_0x285e[124]],_0x4fa0x4?mxConstants[_0x285e[1694]]:mxConstants[_0x285e[1695]]);return mxMarker[_0x285e[1689]](_0x4fa0x2,this,_0x4fa0x12,_0x4fa0x3,_0x4fa0x9,_0x4fa0x5,_0x4fa0xa,_0x4fa0x4,this[_0x285e[1307]],0!=this[_0x285e[124]][_0x4fa0x4?mxConstants[_0x285e[1696]]:mxConstants[_0x285e[1697]]])};mxConnector[_0x285e[202]][_0x285e[1612]]=function(_0x4fa0x2){mxShape[_0x285e[202]][_0x285e[1612]][_0x285e[183]](this,arguments);var _0x4fa0x3=0;mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_STARTARROW,mxConstants.NONE)!=mxConstants[_0x285e[217]]&&(_0x4fa0x3=mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_MARKERSIZE)+1);mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ENDARROW,mxConstants.NONE)!=mxConstants[_0x285e[217]]&&(_0x4fa0x3=Math[_0x285e[160]](_0x4fa0x3,mxUtils[_0x285e[1550]](this[_0x285e[124]],mxConstants.STYLE_ENDSIZE,mxConstants.DEFAULT_MARKERSIZE))+1);_0x4fa0x2[_0x285e[244]](Math[_0x285e[430]](_0x4fa0x3*this[_0x285e[255]]))};function mxSwimlane(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxShape[_0x285e[239]](this);this[_0x285e[1562]]=_0x4fa0x2;this[_0x285e[1334]]=_0x4fa0x3;this[_0x285e[1336]]=_0x4fa0x4;this[_0x285e[1307]]=null!=_0x4fa0x5?_0x4fa0x5:1}mxUtils[_0x285e[1284]](mxSwimlane,mxShape);mxSwimlane[_0x285e[202]][_0x285e[1680]]=16;mxSwimlane[_0x285e[202]][_0x285e[1597]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2=Math[_0x285e[243]](_0x4fa0x9,mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE));return new mxRectangle(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x2)};mxSwimlane[_0x285e[202]][_0x285e[1614]]=function(){var _0x4fa0x2=mxShape[_0x285e[202]][_0x285e[1614]][_0x285e[183]](this,arguments);1!=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_HORIZONTAL,1)&&(_0x4fa0x2+=mxText[_0x285e[202]][_0x285e[1616]]);return _0x4fa0x2};mxSwimlane[_0x285e[202]][_0x285e[1615]]=function(){return this[_0x285e[1614]]()};mxSwimlane[_0x285e[202]][_0x285e[1590]]=function(){return mxShape[_0x285e[202]][_0x285e[1590]][_0x285e[183]](this,arguments)||1!=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_HORIZONTAL,1)};mxSwimlane[_0x285e[202]][_0x285e[1603]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_ARCSIZE,100*mxConstants[_0x285e[1557]])/100;return 3*_0x4fa0x4*_0x4fa0x2};mxSwimlane[_0x285e[202]][_0x285e[1595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=Math[_0x285e[243]](_0x4fa0x9,mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),_0x4fa0x12=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_SWIMLANE_FILLCOLOR,mxConstants.NONE),_0x4fa0x13=1==mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_SWIMLANE_LINE,1),_0x4fa0x14=0;_0x4fa0x2[_0x285e[513]](_0x4fa0x3,_0x4fa0x4);this[_0x285e[1606]]?(_0x4fa0x14=this[_0x285e[1603]](_0x4fa0x5,_0x4fa0x9,_0x4fa0xa),this[_0x285e[1698]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x14,_0x4fa0x12,_0x4fa0x13)):this[_0x285e[1699]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13);_0x4fa0x12=mxUtils[_0x285e[433]](this[_0x285e[124]],mxConstants.STYLE_SEPARATORCOLOR,mxConstants.NONE);this[_0x285e[1700]](_0x4fa0x2,_0x4fa0x5,_0x4fa0xa,_0x4fa0x9,_0x4fa0x12);null!=this[_0x285e[618]]&&(_0x4fa0x9=this[_0x285e[1686]](_0x4fa0x3,_0x4fa0xa,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[618]](_0x4fa0x9[_0x285e[235]]-_0x4fa0x3,_0x4fa0x9[_0x285e[236]]-_0x4fa0x4,_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]],this[_0x285e[618]],!1,!1,!1));this[_0x285e[617]]&&(_0x4fa0x2[_0x285e[1267]](!1),this[_0x285e[1604]](_0x4fa0x2,0,0,_0x4fa0x5,_0x4fa0xa,_0x4fa0x14))};mxSwimlane[_0x285e[202]][_0x285e[1699]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){_0x4fa0x12!=mxConstants[_0x285e[217]]&&(_0x4fa0x2[_0x285e[815]](),_0x4fa0x2[_0x285e[1245]](_0x4fa0x12),_0x4fa0x2[_0x285e[1319]](0,0,_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[1337]](),_0x4fa0x2[_0x285e[1210]](),_0x4fa0x2[_0x285e[1267]](!1));_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](0,_0x4fa0xa);_0x4fa0x2[_0x285e[1277]](0,0);_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,0);_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0xa);_0x4fa0x13&&_0x4fa0x2[_0x285e[268]]();_0x4fa0x2[_0x285e[1337]]();_0x4fa0xa<_0x4fa0x9&&_0x4fa0x12==mxConstants[_0x285e[217]]&&(_0x4fa0x2[_0x285e[1229]]= !1,_0x4fa0x2[_0x285e[1275]](),_0x4fa0x2[_0x285e[1276]](0,_0x4fa0xa),_0x4fa0x2[_0x285e[1277]](0,_0x4fa0x9),_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0x9),_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0xa),_0x4fa0x2[_0x285e[1336]]())};mxSwimlane[_0x285e[202]][_0x285e[1698]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){_0x4fa0x13!=mxConstants[_0x285e[217]]&&(_0x4fa0x2[_0x285e[815]](),_0x4fa0x2[_0x285e[1245]](_0x4fa0x13),_0x4fa0x2[_0x285e[1320]](0,0,_0x4fa0x5,_0x4fa0x9,_0x4fa0x12,_0x4fa0x12),_0x4fa0x2[_0x285e[1337]](),_0x4fa0x2[_0x285e[1210]](),_0x4fa0x2[_0x285e[1267]](!1));_0x4fa0x2[_0x285e[1275]]();_0x4fa0x2[_0x285e[1276]](_0x4fa0x5,_0x4fa0xa);_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0x12);_0x4fa0x2[_0x285e[1278]](_0x4fa0x5,0,_0x4fa0x5-Math[_0x285e[243]](_0x4fa0x5/2,_0x4fa0x12),0);_0x4fa0x2[_0x285e[1277]](Math[_0x285e[243]](_0x4fa0x5/2,_0x4fa0x12),0);_0x4fa0x2[_0x285e[1278]](0,0,0,_0x4fa0x12);_0x4fa0x2[_0x285e[1277]](0,_0x4fa0xa);_0x4fa0x14&&_0x4fa0x2[_0x285e[268]]();_0x4fa0x2[_0x285e[1337]]();_0x4fa0xa<_0x4fa0x9&&_0x4fa0x13==mxConstants[_0x285e[217]]&&(_0x4fa0x2[_0x285e[1229]]= !1,_0x4fa0x2[_0x285e[1275]](),_0x4fa0x2[_0x285e[1276]](0,_0x4fa0xa),_0x4fa0x2[_0x285e[1277]](0,_0x4fa0x9-_0x4fa0x12),_0x4fa0x2[_0x285e[1278]](0,_0x4fa0x9,Math[_0x285e[243]](_0x4fa0x5/2,_0x4fa0x12),_0x4fa0x9),_0x4fa0x2[_0x285e[1277]](_0x4fa0x5-Math[_0x285e[243]](_0x4fa0x5/2,_0x4fa0x12),_0x4fa0x9),_0x4fa0x2[_0x285e[1278]](_0x4fa0x5,_0x4fa0x9,_0x4fa0x5,_0x4fa0x9-_0x4fa0x12),_0x4fa0x2[_0x285e[1277]](_0x4fa0x5,_0x4fa0xa),_0x4fa0x2[_0x285e[1336]]())};mxSwimlane[_0x285e[202]][_0x285e[1700]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x9!=mxConstants[_0x285e[217]]&&(_0x4fa0x2[_0x285e[1249]](_0x4fa0x9),_0x4fa0x2[_0x285e[1251]](!0),_0x4fa0x2[_0x285e[1275]](),_0x4fa0x2[_0x285e[1276]](_0x4fa0x3,_0x4fa0x4),_0x4fa0x2[_0x285e[1277]](_0x4fa0x3,_0x4fa0x5),_0x4fa0x2[_0x285e[1336]](),_0x4fa0x2[_0x285e[1251]](!1))};mxSwimlane[_0x285e[202]][_0x285e[1686]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return new mxRectangle(_0x4fa0x2+_0x4fa0x4-this[_0x285e[1680]],_0x4fa0x3,this[_0x285e[1680]],this[_0x285e[1680]])};function mxGraphLayout(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2}mxGraphLayout[_0x285e[202]][_0x285e[1179]]=null;mxGraphLayout[_0x285e[202]][_0x285e[1701]]= !0;mxGraphLayout[_0x285e[202]][_0x285e[1101]]=null;mxGraphLayout[_0x285e[202]][_0x285e[1702]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){};mxGraphLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){};mxGraphLayout[_0x285e[202]][_0x285e[1703]]=function(){return this[_0x285e[1179]]};mxGraphLayout[_0x285e[202]][_0x285e[1704]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3);_0x4fa0x3=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1179]][_0x285e[1705]](_0x4fa0x3);return null!=_0x4fa0x3?_0x4fa0x3[_0x4fa0x2]:null};mxGraphLayout[_0x285e[1706]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x4&&null!=_0x4fa0x2){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;_0x4fa0x9=_0x4fa0x9||[];var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2);if(null==_0x4fa0x9[_0x4fa0xa]&&(_0x4fa0x9[_0x4fa0xa]=_0x4fa0x2,_0x4fa0x5=_0x4fa0x4(_0x4fa0x2,_0x4fa0x5),null==_0x4fa0x5||_0x4fa0x5)){if(_0x4fa0x5=this[_0x285e[1179]][_0x285e[251]][_0x285e[1707]](_0x4fa0x2),0<_0x4fa0x5){for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5;_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[1179]][_0x285e[251]][_0x285e[1708]](_0x4fa0x2,_0x4fa0xa),_0x4fa0x13=this[_0x285e[1179]][_0x285e[251]][_0x285e[1709]](_0x4fa0x12,!0)==_0x4fa0x2;if(!_0x4fa0x3||_0x4fa0x13){_0x4fa0x13=this[_0x285e[1179]][_0x285e[441]][_0x285e[1710]](_0x4fa0x12,!_0x4fa0x13),this[_0x285e[1706]](_0x4fa0x13,_0x4fa0x3,_0x4fa0x4,_0x4fa0x12,_0x4fa0x9)}}}}}};mxGraphLayout[_0x285e[202]][_0x285e[1711]]=function(_0x4fa0x2){return this[_0x285e[1179]][_0x285e[1712]](_0x4fa0x2)};mxGraphLayout[_0x285e[202]][_0x285e[1713]]=function(_0x4fa0x2){return !this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2)||!this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2)};mxGraphLayout[_0x285e[202]][_0x285e[1715]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();return !_0x4fa0x3[_0x285e[250]](_0x4fa0x2)||!this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2)||null==_0x4fa0x3[_0x285e[1709]](_0x4fa0x2,!0)||null==_0x4fa0x3[_0x285e[1709]](_0x4fa0x2,!1)};mxGraphLayout[_0x285e[202]][_0x285e[1716]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_NOEDGESTYLE,_0x4fa0x3?_0x285e[468]:_0x285e[500],[_0x4fa0x2])};mxGraphLayout[_0x285e[202]][_0x285e[1718]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_ORTHOGONAL,_0x4fa0x3?_0x285e[500]:_0x285e[468],[_0x4fa0x2])};mxGraphLayout[_0x285e[202]][_0x285e[1719]]=function(_0x4fa0x2){var _0x4fa0x3= new mxPoint;if(null!=_0x4fa0x2&&_0x4fa0x2!=this[_0x285e[1101]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]();if(_0x4fa0x4[_0x285e[1720]](this[_0x285e[1101]],_0x4fa0x2)){for(var _0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2);_0x4fa0x2!=this[_0x285e[1101]];){_0x4fa0x3[_0x285e[235]]+=_0x4fa0x5[_0x285e[235]],_0x4fa0x3[_0x285e[236]]+=_0x4fa0x5[_0x285e[236]],_0x4fa0x2=_0x4fa0x4[_0x285e[1197]](_0x4fa0x2),_0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2)}}};return _0x4fa0x3};mxGraphLayout[_0x285e[202]][_0x285e[1722]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[251]],_0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2);null==_0x4fa0x5?(_0x4fa0x5= new mxGeometry,_0x4fa0x5[_0x285e[1723]](!0)):_0x4fa0x5=_0x4fa0x5[_0x285e[238]]();if(null!=this[_0x285e[1101]]&&null!=_0x4fa0x3){for(var _0x4fa0x9=_0x4fa0x4[_0x285e[1197]](_0x4fa0x2),_0x4fa0x9=this[_0x285e[1719]](_0x4fa0x9),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[67]];_0x4fa0xa++){_0x4fa0x3[_0x4fa0xa][_0x285e[235]]-=_0x4fa0x9[_0x285e[235]],_0x4fa0x3[_0x4fa0xa][_0x285e[236]]-=_0x4fa0x9[_0x285e[236]]}};_0x4fa0x5[_0x285e[1525]]=_0x4fa0x3;_0x4fa0x4[_0x285e[1724]](_0x4fa0x2,_0x4fa0x5)}};mxGraphLayout[_0x285e[202]][_0x285e[1725]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2),_0x4fa0xa=null;if(null!=_0x4fa0x9){_0x4fa0xa= new mxRectangle(_0x4fa0x3,_0x4fa0x4,_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]]);if(this[_0x285e[1701]]){var _0x4fa0x12=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);if(null!=_0x4fa0x12&&null!=_0x4fa0x12[_0x285e[963]]&&null!=_0x4fa0x12[_0x285e[963]][_0x285e[1563]]){var _0x4fa0x13=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x14=_0x4fa0x12[_0x285e[963]][_0x285e[1563]];_0x4fa0x12[_0x285e[963]][_0x285e[1563]][_0x285e[235]]<_0x4fa0x12[_0x285e[235]]&&(_0x4fa0x3+=(_0x4fa0x12[_0x285e[235]]-_0x4fa0x14[_0x285e[235]])/_0x4fa0x13,_0x4fa0xa[_0x285e[117]]=_0x4fa0x14[_0x285e[117]]);_0x4fa0x12[_0x285e[963]][_0x285e[1563]][_0x285e[236]]<_0x4fa0x12[_0x285e[236]]&&(_0x4fa0x4+=(_0x4fa0x12[_0x285e[236]]-_0x4fa0x14[_0x285e[236]])/_0x4fa0x13,_0x4fa0xa[_0x285e[119]]=_0x4fa0x14[_0x285e[119]])}};null!=this[_0x285e[1101]]&&(_0x4fa0x12=_0x4fa0x5[_0x285e[1197]](_0x4fa0x2),null!=_0x4fa0x12&&_0x4fa0x12!=this[_0x285e[1101]]&&(_0x4fa0x12=this[_0x285e[1719]](_0x4fa0x12),_0x4fa0x3-=_0x4fa0x12[_0x285e[235]],_0x4fa0x4-=_0x4fa0x12[_0x285e[236]]));if(_0x4fa0x9[_0x285e[235]]!=_0x4fa0x3||_0x4fa0x9[_0x285e[236]]!=_0x4fa0x4){_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0x9[_0x285e[235]]=_0x4fa0x3,_0x4fa0x9[_0x285e[236]]=_0x4fa0x4,_0x4fa0x5[_0x285e[1724]](_0x4fa0x2,_0x4fa0x9)}};return _0x4fa0xa};mxGraphLayout[_0x285e[202]][_0x285e[1726]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1721]](_0x4fa0x2);if(this[_0x285e[1701]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);if(null!=_0x4fa0x4&&null!=_0x4fa0x4[_0x285e[963]]&&null!=_0x4fa0x4[_0x285e[963]][_0x285e[1563]]){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x9=_0x4fa0x4[_0x285e[963]][_0x285e[1563]],_0x4fa0xa=Math[_0x285e[160]](_0x4fa0x4[_0x285e[235]]-_0x4fa0x9[_0x285e[235]],0)/_0x4fa0x5,_0x4fa0x12=Math[_0x285e[160]](_0x4fa0x4[_0x285e[236]]-_0x4fa0x9[_0x285e[236]],0)/_0x4fa0x5,_0x4fa0x13=Math[_0x285e[160]](_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]-(_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]),0)/_0x4fa0x5,_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]-(_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]),0)/_0x4fa0x5,_0x4fa0x3= new mxRectangle(_0x4fa0x3[_0x285e[235]]-_0x4fa0xa,_0x4fa0x3[_0x285e[236]]-_0x4fa0x12,_0x4fa0x3[_0x285e[117]]+_0x4fa0xa+_0x4fa0x13,_0x4fa0x3[_0x285e[119]]+_0x4fa0x12+_0x4fa0x4)}};null!=this[_0x285e[1101]]&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](_0x4fa0x2),_0x4fa0x3=_0x4fa0x3[_0x285e[238]](),null!=_0x4fa0x2&&_0x4fa0x2!=this[_0x285e[1101]]&&(_0x4fa0x2=this[_0x285e[1719]](_0x4fa0x2),_0x4fa0x3[_0x285e[235]]+=_0x4fa0x2[_0x285e[235]],_0x4fa0x3[_0x285e[236]]+=_0x4fa0x2[_0x285e[236]]));return new mxRectangle(_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]])};mxGraphLayout[_0x285e[202]][_0x285e[1727]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]][_0x285e[502]]()[_0x285e[473]]();try{for(var _0x4fa0x4=_0x4fa0x2[_0x285e[67]]-1;0<=_0x4fa0x4;_0x4fa0x4--){var _0x4fa0x5=_0x4fa0x2[_0x4fa0x4],_0x4fa0x9=this[_0x285e[1179]][_0x285e[1728]](_0x4fa0x5),_0x4fa0xa=this[_0x285e[1179]][_0x285e[1729]](_0x4fa0x9),_0x4fa0x12=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x5),_0x4fa0x13=0,_0x4fa0x14=0;if(this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x5)){var _0x4fa0x15=this[_0x285e[1179]][_0x285e[1731]](_0x4fa0x5),_0x4fa0x13=_0x4fa0x15[_0x285e[117]],_0x4fa0x14=_0x4fa0x15[_0x285e[119]]};null!=_0x4fa0xa&&null!=_0x4fa0x12&&(_0x4fa0x12=_0x4fa0x12[_0x285e[238]](),_0x4fa0x12[_0x285e[235]]=_0x4fa0x12[_0x285e[235]]+_0x4fa0xa[_0x285e[235]]-_0x4fa0x3-_0x4fa0x13,_0x4fa0x12[_0x285e[236]]=_0x4fa0x12[_0x285e[236]]+_0x4fa0xa[_0x285e[236]]-_0x4fa0x3-_0x4fa0x14,_0x4fa0x12[_0x285e[117]]=_0x4fa0xa[_0x285e[117]]+2*_0x4fa0x3+_0x4fa0x13,_0x4fa0x12[_0x285e[119]]=_0x4fa0xa[_0x285e[119]]+2*_0x4fa0x3+_0x4fa0x14,this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1724]](_0x4fa0x5,_0x4fa0x12),this[_0x285e[1179]][_0x285e[834]](_0x4fa0x9,_0x4fa0x3+_0x4fa0x13-_0x4fa0xa[_0x285e[235]],_0x4fa0x3+_0x4fa0x14-_0x4fa0xa[_0x285e[236]]))}}finally{this[_0x285e[1179]][_0x285e[502]]()[_0x285e[476]]()}};function mxStackLayout(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[662]]=null!=_0x4fa0x3?_0x4fa0x3:!0;this[_0x285e[657]]=null!=_0x4fa0x4?_0x4fa0x4:0;this[_0x285e[1732]]=null!=_0x4fa0x5?_0x4fa0x5:0;this[_0x285e[1733]]=null!=_0x4fa0x9?_0x4fa0x9:0;this[_0x285e[467]]=null!=_0x4fa0xa?_0x4fa0xa:0}mxStackLayout[_0x285e[202]]= new mxGraphLayout;mxStackLayout[_0x285e[202]][_0x285e[196]]=mxStackLayout;mxStackLayout[_0x285e[202]][_0x285e[662]]=null;mxStackLayout[_0x285e[202]][_0x285e[657]]=null;mxStackLayout[_0x285e[202]][_0x285e[1732]]=null;mxStackLayout[_0x285e[202]][_0x285e[1733]]=null;mxStackLayout[_0x285e[202]][_0x285e[467]]=0;mxStackLayout[_0x285e[202]][_0x285e[1734]]= !1;mxStackLayout[_0x285e[202]][_0x285e[1334]]= !1;mxStackLayout[_0x285e[202]][_0x285e[1735]]= !1;mxStackLayout[_0x285e[202]][_0x285e[1736]]= !1;mxStackLayout[_0x285e[202]][_0x285e[1333]]=null;mxStackLayout[_0x285e[202]][_0x285e[1737]]=function(){return this[_0x285e[662]]};mxStackLayout[_0x285e[202]][_0x285e[1702]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[1197]](_0x4fa0x2),_0x4fa0xa=this[_0x285e[1737]]();if(null!=_0x4fa0x2&&null!=_0x4fa0x9){var _0x4fa0x12=0,_0x4fa0x13=0,_0x4fa0x14=_0x4fa0x5[_0x285e[262]](_0x4fa0x9);_0x4fa0x3=_0x4fa0xa?_0x4fa0x3:_0x4fa0x4;_0x4fa0x12=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x9);null!=_0x4fa0x12&&(_0x4fa0x3-=_0x4fa0xa?_0x4fa0x12[_0x285e[235]]:_0x4fa0x12[_0x285e[236]]);for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0x14;_0x4fa0x12++){if(_0x4fa0x4=_0x4fa0x5[_0x285e[263]](_0x4fa0x9,_0x4fa0x12),_0x4fa0x4!=_0x4fa0x2&&(_0x4fa0x4=_0x4fa0x5[_0x285e[1721]](_0x4fa0x4),null!=_0x4fa0x4)){_0x4fa0x4=_0x4fa0xa?_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]/2:_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]/2;if(_0x4fa0x13<_0x4fa0x3&&_0x4fa0x4>_0x4fa0x3){break};_0x4fa0x13=_0x4fa0x4}};_0x4fa0xa=_0x4fa0x9[_0x285e[1738]](_0x4fa0x2);_0x4fa0xa=Math[_0x285e[160]](0,_0x4fa0x12-(_0x4fa0x12>_0x4fa0xa?1:0));_0x4fa0x5[_0x285e[99]](_0x4fa0x9,_0x4fa0x2,_0x4fa0xa)}};mxStackLayout[_0x285e[202]][_0x285e[1739]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=_0x4fa0x3[_0x285e[1721]](_0x4fa0x2);if(null!=this[_0x285e[1179]][_0x285e[526]]&&(null==_0x4fa0x4&&_0x4fa0x3[_0x285e[1740]](_0x4fa0x2)||_0x4fa0x2==this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1741]])){_0x4fa0x4= new mxRectangle(0,0,this[_0x285e[1179]][_0x285e[526]][_0x285e[359]]-1,this[_0x285e[1179]][_0x285e[526]][_0x285e[167]]-1)};return _0x4fa0x4};mxStackLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1737]](),_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=this[_0x285e[1739]](_0x4fa0x2),_0x4fa0x9=0;null!=_0x4fa0x5&&(_0x4fa0x9=_0x4fa0x3?_0x4fa0x5[_0x285e[119]]:_0x4fa0x5[_0x285e[117]]);var _0x4fa0x9=_0x4fa0x9-(2*this[_0x285e[657]]+2*this[_0x285e[467]]),_0x4fa0xa=this[_0x285e[1732]]+this[_0x285e[467]],_0x4fa0x12=this[_0x285e[1733]]+this[_0x285e[467]];if(this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)){var _0x4fa0x13=this[_0x285e[1179]][_0x285e[1705]](_0x4fa0x2),_0x4fa0x14=mxUtils[_0x285e[433]](_0x4fa0x13,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE),_0x4fa0x13=mxUtils[_0x285e[433]](_0x4fa0x13,mxConstants.STYLE_HORIZONTAL,!0);_0x4fa0x3==_0x4fa0x13&&(_0x4fa0x9-=_0x4fa0x14);_0x4fa0x3?_0x4fa0x12+=_0x4fa0x14:_0x4fa0xa+=_0x4fa0x14};_0x4fa0x4[_0x285e[473]]();try{for(var _0x4fa0x14=0,_0x4fa0x13=null,_0x4fa0x15=_0x4fa0x4[_0x285e[262]](_0x4fa0x2),_0x4fa0x16=0;_0x4fa0x16<_0x4fa0x15;_0x4fa0x16++){var _0x4fa0x17=_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x16);if(!this[_0x285e[1713]](_0x4fa0x17)&&this[_0x285e[1711]](_0x4fa0x17)){var _0x4fa0x18=_0x4fa0x4[_0x285e[1721]](_0x4fa0x17);if(null!=_0x4fa0x18){_0x4fa0x18=_0x4fa0x18[_0x285e[238]]();if(null!=this[_0x285e[1333]]&&null!=_0x4fa0x13&&(_0x4fa0x3&&_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]+_0x4fa0x18[_0x285e[117]]+2*this[_0x285e[657]]>this[_0x285e[1333]]||!_0x4fa0x3&&_0x4fa0x13[_0x285e[236]]+_0x4fa0x13[_0x285e[119]]+_0x4fa0x18[_0x285e[119]]+2*this[_0x285e[657]]>this[_0x285e[1333]])){_0x4fa0x13=null,_0x4fa0x3?_0x4fa0x12+=_0x4fa0x14+this[_0x285e[657]]:_0x4fa0xa+=_0x4fa0x14+this[_0x285e[657]],_0x4fa0x14=0};_0x4fa0x14=Math[_0x285e[160]](_0x4fa0x14,_0x4fa0x3?_0x4fa0x18[_0x285e[119]]:_0x4fa0x18[_0x285e[117]]);null!=_0x4fa0x13?_0x4fa0x3?_0x4fa0x18[_0x285e[235]]=_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]+this[_0x285e[657]]:_0x4fa0x18[_0x285e[236]]=_0x4fa0x13[_0x285e[236]]+_0x4fa0x13[_0x285e[119]]+this[_0x285e[657]]:this[_0x285e[1734]]||(_0x4fa0x3?_0x4fa0x18[_0x285e[235]]=_0x4fa0xa:_0x4fa0x18[_0x285e[236]]=_0x4fa0x12);_0x4fa0x3?_0x4fa0x18[_0x285e[236]]=_0x4fa0x12:_0x4fa0x18[_0x285e[235]]=_0x4fa0xa;this[_0x285e[1334]]&&0<_0x4fa0x9&&(_0x4fa0x3?_0x4fa0x18[_0x285e[119]]=_0x4fa0x9:_0x4fa0x18[_0x285e[117]]=_0x4fa0x9);_0x4fa0x4[_0x285e[1724]](_0x4fa0x17,_0x4fa0x18);_0x4fa0x13=_0x4fa0x18}}};this[_0x285e[1735]]&&null!=_0x4fa0x5&&null!=_0x4fa0x13&&!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x2)?(_0x4fa0x5=_0x4fa0x5[_0x285e[238]](),_0x4fa0x3?_0x4fa0x5[_0x285e[117]]=_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]+this[_0x285e[657]]:_0x4fa0x5[_0x285e[119]]=_0x4fa0x13[_0x285e[236]]+_0x4fa0x13[_0x285e[119]]+this[_0x285e[657]],_0x4fa0x4[_0x285e[1724]](_0x4fa0x2,_0x4fa0x5)):this[_0x285e[1736]]&&(null!=_0x4fa0x5&&null!=_0x4fa0x13)&&(_0x4fa0x3?_0x4fa0x13[_0x285e[117]]=_0x4fa0x5[_0x285e[117]]-_0x4fa0x13[_0x285e[235]]-this[_0x285e[657]]:_0x4fa0x13[_0x285e[119]]=_0x4fa0x5[_0x285e[119]]-_0x4fa0x13[_0x285e[236]]-this[_0x285e[657]])}finally{_0x4fa0x4[_0x285e[476]]()}}};function mxPartitionLayout(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[662]]=null!=_0x4fa0x3?_0x4fa0x3:!0;this[_0x285e[657]]=_0x4fa0x4||0;this[_0x285e[467]]=_0x4fa0x5||0}mxPartitionLayout[_0x285e[202]]= new mxGraphLayout;mxPartitionLayout[_0x285e[202]][_0x285e[196]]=mxPartitionLayout;mxPartitionLayout[_0x285e[202]][_0x285e[662]]=null;mxPartitionLayout[_0x285e[202]][_0x285e[657]]=null;mxPartitionLayout[_0x285e[202]][_0x285e[467]]=null;mxPartitionLayout[_0x285e[202]][_0x285e[1743]]= !0;mxPartitionLayout[_0x285e[202]][_0x285e[1737]]=function(){return this[_0x285e[662]]};mxPartitionLayout[_0x285e[202]][_0x285e[1702]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]();var _0x4fa0x5=_0x4fa0x4[_0x285e[1197]](_0x4fa0x2);if(null!=_0x4fa0x2&&null!=_0x4fa0x5){for(var _0x4fa0x9=0,_0x4fa0xa=0,_0x4fa0x12=_0x4fa0x4[_0x285e[262]](_0x4fa0x5),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x12;_0x4fa0x9++){var _0x4fa0x13=_0x4fa0x4[_0x285e[263]](_0x4fa0x5,_0x4fa0x9),_0x4fa0x13=this[_0x285e[1726]](_0x4fa0x13);if(null!=_0x4fa0x13){_0x4fa0x13=_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]/2;if(_0x4fa0xa<_0x4fa0x3&&_0x4fa0x13>_0x4fa0x3){break};_0x4fa0xa=_0x4fa0x13}};_0x4fa0x3=_0x4fa0x5[_0x285e[1738]](_0x4fa0x2);_0x4fa0x3=Math[_0x285e[160]](0,_0x4fa0x9-(_0x4fa0x9>_0x4fa0x3?1:0));_0x4fa0x4[_0x285e[99]](_0x4fa0x5,_0x4fa0x2,_0x4fa0x3)}};mxPartitionLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1737]](),_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2);if(null!=this[_0x285e[1179]][_0x285e[526]]&&(null==_0x4fa0x5&&_0x4fa0x4[_0x285e[1740]](_0x4fa0x2)||_0x4fa0x2==this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1741]])){_0x4fa0x5= new mxRectangle(0,0,this[_0x285e[1179]][_0x285e[526]][_0x285e[359]]-1,this[_0x285e[1179]][_0x285e[526]][_0x285e[167]]-1)};if(null!=_0x4fa0x5){for(var _0x4fa0x9=[],_0x4fa0xa=_0x4fa0x4[_0x285e[262]](_0x4fa0x2),_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa;_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x12);!this[_0x285e[1713]](_0x4fa0x13)&&this[_0x285e[1711]](_0x4fa0x13)&&_0x4fa0x9[_0x285e[207]](_0x4fa0x13)};_0x4fa0xa=_0x4fa0x9[_0x285e[67]];if(0<_0x4fa0xa){var _0x4fa0x14=this[_0x285e[467]],_0x4fa0x15=this[_0x285e[467]],_0x4fa0x16=_0x4fa0x3?_0x4fa0x5[_0x285e[119]]:_0x4fa0x5[_0x285e[117]],_0x4fa0x16=_0x4fa0x16-2*this[_0x285e[467]];_0x4fa0x2=this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)?this[_0x285e[1179]][_0x285e[1731]](_0x4fa0x2): new mxRectangle;_0x4fa0x16-=_0x4fa0x3?_0x4fa0x2[_0x285e[119]]:_0x4fa0x2[_0x285e[117]];_0x4fa0x14+=_0x4fa0x2[_0x285e[117]];_0x4fa0x15+=_0x4fa0x2[_0x285e[119]];_0x4fa0x2=this[_0x285e[467]]+(_0x4fa0xa-1)*this[_0x285e[657]];_0x4fa0x5=_0x4fa0x3?(_0x4fa0x5[_0x285e[117]]-_0x4fa0x14-_0x4fa0x2)/_0x4fa0xa:(_0x4fa0x5[_0x285e[119]]-_0x4fa0x15-_0x4fa0x2)/_0x4fa0xa;if(0<_0x4fa0x5){_0x4fa0x4[_0x285e[473]]();try{for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa;_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x9[_0x4fa0x12],_0x4fa0x17=_0x4fa0x4[_0x285e[1721]](_0x4fa0x13);null!=_0x4fa0x17&&(_0x4fa0x17=_0x4fa0x17[_0x285e[238]](),_0x4fa0x17[_0x285e[235]]=_0x4fa0x14,_0x4fa0x17[_0x285e[236]]=_0x4fa0x15,_0x4fa0x3?(this[_0x285e[1743]]&&(_0x4fa0x17[_0x285e[117]]=_0x4fa0x5,_0x4fa0x17[_0x285e[119]]=_0x4fa0x16),_0x4fa0x14+=_0x4fa0x5+this[_0x285e[657]]):(this[_0x285e[1743]]&&(_0x4fa0x17[_0x285e[119]]=_0x4fa0x5,_0x4fa0x17[_0x285e[117]]=_0x4fa0x16),_0x4fa0x15+=_0x4fa0x5+this[_0x285e[657]]),_0x4fa0x4[_0x285e[1724]](_0x4fa0x13,_0x4fa0x17))}}finally{_0x4fa0x4[_0x285e[476]]()}}}}};function mxCompactTreeLayout(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[662]]=null!=_0x4fa0x3?_0x4fa0x3:!0;this[_0x285e[1744]]=null!=_0x4fa0x4?_0x4fa0x4:!1}mxCompactTreeLayout[_0x285e[202]]= new mxGraphLayout;mxCompactTreeLayout[_0x285e[202]][_0x285e[196]]=mxCompactTreeLayout;mxCompactTreeLayout[_0x285e[202]][_0x285e[662]]=null;mxCompactTreeLayout[_0x285e[202]][_0x285e[1744]]=null;mxCompactTreeLayout[_0x285e[202]][_0x285e[1735]]= !0;mxCompactTreeLayout[_0x285e[202]][_0x285e[1745]]=10;mxCompactTreeLayout[_0x285e[202]][_0x285e[1746]]=null;mxCompactTreeLayout[_0x285e[202]][_0x285e[1747]]= !1;mxCompactTreeLayout[_0x285e[202]][_0x285e[1748]]=10;mxCompactTreeLayout[_0x285e[202]][_0x285e[1749]]=20;mxCompactTreeLayout[_0x285e[202]][_0x285e[1750]]= !0;mxCompactTreeLayout[_0x285e[202]][_0x285e[1751]]=5;mxCompactTreeLayout[_0x285e[202]][_0x285e[1752]]=4;mxCompactTreeLayout[_0x285e[202]][_0x285e[1753]]=8;mxCompactTreeLayout[_0x285e[202]][_0x285e[1754]]=4;mxCompactTreeLayout[_0x285e[202]][_0x285e[1755]]= !0;mxCompactTreeLayout[_0x285e[202]][_0x285e[1713]]=function(_0x4fa0x2){return mxGraphLayout[_0x285e[202]][_0x285e[1713]][_0x285e[183]](this,arguments)||0==this[_0x285e[1179]][_0x285e[1756]](_0x4fa0x2)[_0x285e[67]]};mxCompactTreeLayout[_0x285e[202]][_0x285e[1737]]=function(){return this[_0x285e[662]]};mxCompactTreeLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1101]]=_0x4fa0x2;var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]();if(null==_0x4fa0x3){if(0<this[_0x285e[1179]][_0x285e[264]](_0x4fa0x2,_0x4fa0x4[_0x285e[1197]](_0x4fa0x2),this[_0x285e[1744]],!this[_0x285e[1744]],!1)[_0x285e[67]]){_0x4fa0x3=_0x4fa0x2}else {var _0x4fa0x5=this[_0x285e[1179]][_0x285e[1757]](_0x4fa0x2,!0,this[_0x285e[1744]]);if(0<_0x4fa0x5[_0x285e[67]]){for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5[_0x285e[67]];_0x4fa0x9++){if(!this[_0x285e[1713]](_0x4fa0x5[_0x4fa0x9])&&0<this[_0x285e[1179]][_0x285e[264]](_0x4fa0x5[_0x4fa0x9],null,this[_0x285e[1744]],!this[_0x285e[1744]],!1)[_0x285e[67]]){_0x4fa0x3=_0x4fa0x5[_0x4fa0x9];break}}}}};if(null!=_0x4fa0x3){this[_0x285e[1746]]=this[_0x285e[1735]]?{}:null;_0x4fa0x4[_0x285e[473]]();try{var _0x4fa0xa=this[_0x285e[1758]](_0x4fa0x3,_0x4fa0x2);if(null!=_0x4fa0xa){this[_0x285e[1759]](_0x4fa0xa);var _0x4fa0x12=this[_0x285e[1179]][_0x285e[1020]],_0x4fa0x5=_0x4fa0x12;if(!this[_0x285e[1747]]){var _0x4fa0x13=this[_0x285e[1726]](_0x4fa0x3);null!=_0x4fa0x13&&(_0x4fa0x12=_0x4fa0x13[_0x285e[235]],_0x4fa0x5=_0x4fa0x13[_0x285e[236]])};_0x4fa0x13=null;_0x4fa0x13=this[_0x285e[1737]]()?this[_0x285e[1760]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x5):this[_0x285e[1761]](_0x4fa0xa,null,_0x4fa0x12,_0x4fa0x5);if(null!=_0x4fa0x13){var _0x4fa0x14=_0x4fa0x9=0;0>_0x4fa0x13[_0x285e[235]]&&(_0x4fa0x9=Math[_0x285e[425]](_0x4fa0x12-_0x4fa0x13[_0x285e[235]]));0>_0x4fa0x13[_0x285e[236]]&&(_0x4fa0x14=Math[_0x285e[425]](_0x4fa0x5-_0x4fa0x13[_0x285e[236]]));(0!=_0x4fa0x9||0!=_0x4fa0x14)&&this[_0x285e[1762]](_0x4fa0xa,_0x4fa0x9,_0x4fa0x14);this[_0x285e[1735]]&&this[_0x285e[1763]]();this[_0x285e[1755]]&&this[_0x285e[1764]](_0x4fa0xa)}}}finally{_0x4fa0x4[_0x285e[476]]()}}};mxCompactTreeLayout[_0x285e[202]][_0x285e[1762]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2[_0x285e[235]]+=_0x4fa0x3;_0x4fa0x2[_0x285e[236]]+=_0x4fa0x4;this[_0x285e[183]](_0x4fa0x2);for(_0x4fa0x2=_0x4fa0x2[_0x285e[247]];null!=_0x4fa0x2;){this[_0x285e[1762]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4),_0x4fa0x2=_0x4fa0x2[_0x285e[1765]]}};mxCompactTreeLayout[_0x285e[202]][_0x285e[1758]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:[];var _0x4fa0x5=mxCellPath[_0x285e[385]](_0x4fa0x2),_0x4fa0x9=null;if(null!=_0x4fa0x2&&null==_0x4fa0x4[_0x4fa0x5]&&!this[_0x285e[1713]](_0x4fa0x2)){_0x4fa0x4[_0x4fa0x5]=_0x4fa0x2;var _0x4fa0x9=this[_0x285e[1766]](_0x4fa0x2),_0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0xa=null;_0x4fa0x2=this[_0x285e[1179]][_0x285e[264]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[1744]],!this[_0x285e[1744]],!1,!0);for(var _0x4fa0x12=this[_0x285e[1179]][_0x285e[249]](),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x2[_0x285e[67]];_0x4fa0x13++){var _0x4fa0x14=_0x4fa0x2[_0x4fa0x13];if(!this[_0x285e[1715]](_0x4fa0x14)){this[_0x285e[1750]]&&this[_0x285e[1722]](_0x4fa0x14,null);this[_0x285e[1755]]&&(this[_0x285e[1716]](_0x4fa0x14,!1),this[_0x285e[1722]](_0x4fa0x14,null));var _0x4fa0x15=_0x4fa0x12[_0x285e[248]](_0x4fa0x14),_0x4fa0x14=null!=_0x4fa0x15?_0x4fa0x15[_0x285e[1710]](this[_0x285e[1744]]):_0x4fa0x12[_0x285e[1710]](_0x4fa0x14,this[_0x285e[1744]]),_0x4fa0x15=this[_0x285e[1758]](_0x4fa0x14,_0x4fa0x3,_0x4fa0x4);null!=_0x4fa0x15&&null!=_0x4fa0x5[_0x285e[1721]](_0x4fa0x14)&&(null==_0x4fa0xa?_0x4fa0x9[_0x285e[247]]=_0x4fa0x15:_0x4fa0xa[_0x285e[1765]]=_0x4fa0x15,_0x4fa0xa=_0x4fa0x15)}}};return _0x4fa0x9};mxCompactTreeLayout[_0x285e[202]][_0x285e[1759]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3=_0x4fa0x2[_0x285e[247]];null!=_0x4fa0x3;){this[_0x285e[1759]](_0x4fa0x3),_0x4fa0x3=_0x4fa0x3[_0x285e[1765]]};null!=_0x4fa0x2[_0x285e[247]]?this[_0x285e[1767]](_0x4fa0x2,this[_0x285e[234]](_0x4fa0x2)):this[_0x285e[1768]](_0x4fa0x2)}};mxCompactTreeLayout[_0x285e[202]][_0x285e[1760]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2[_0x285e[235]]+=_0x4fa0x3+_0x4fa0x2[_0x285e[1769]];_0x4fa0x2[_0x285e[236]]+=_0x4fa0x4+_0x4fa0x2[_0x285e[1770]];_0x4fa0x5=this[_0x285e[183]](_0x4fa0x2,_0x4fa0x5);_0x4fa0x3=_0x4fa0x2[_0x285e[247]];if(null!=_0x4fa0x3){_0x4fa0x5=this[_0x285e[1760]](_0x4fa0x3,_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],_0x4fa0x5);_0x4fa0x4=_0x4fa0x2[_0x285e[236]]+_0x4fa0x3[_0x285e[1770]];for(var _0x4fa0x9=_0x4fa0x3[_0x285e[1765]];null!=_0x4fa0x9;){_0x4fa0x5=this[_0x285e[1760]](_0x4fa0x9,_0x4fa0x2[_0x285e[235]]+_0x4fa0x3[_0x285e[1769]],_0x4fa0x4,_0x4fa0x5),_0x4fa0x4+=_0x4fa0x9[_0x285e[1770]],_0x4fa0x9=_0x4fa0x9[_0x285e[1765]]}};return _0x4fa0x5};mxCompactTreeLayout[_0x285e[202]][_0x285e[1761]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[235]]+=_0x4fa0x4+_0x4fa0x2[_0x285e[1770]];_0x4fa0x2[_0x285e[236]]+=_0x4fa0x5+_0x4fa0x2[_0x285e[1769]];_0x4fa0x9=this[_0x285e[183]](_0x4fa0x2,_0x4fa0x9);_0x4fa0x3=_0x4fa0x2[_0x285e[247]];if(null!=_0x4fa0x3){_0x4fa0x9=this[_0x285e[1761]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],_0x4fa0x9);_0x4fa0x4=_0x4fa0x2[_0x285e[235]]+_0x4fa0x3[_0x285e[1770]];for(_0x4fa0x5=_0x4fa0x3[_0x285e[1765]];null!=_0x4fa0x5;){_0x4fa0x9=this[_0x285e[1761]](_0x4fa0x5,_0x4fa0x2,_0x4fa0x4,_0x4fa0x2[_0x285e[236]]+_0x4fa0x3[_0x285e[1769]],_0x4fa0x9),_0x4fa0x4+=_0x4fa0x5[_0x285e[1770]],_0x4fa0x5=_0x4fa0x5[_0x285e[1765]]}};return _0x4fa0x9};mxCompactTreeLayout[_0x285e[202]][_0x285e[1767]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1749]]+this[_0x285e[1748]],_0x4fa0x5=(_0x4fa0x3-_0x4fa0x2[_0x285e[117]])/2-this[_0x285e[1749]],_0x4fa0x9=_0x4fa0x5+_0x4fa0x2[_0x285e[117]]+2*this[_0x285e[1749]]-_0x4fa0x3;_0x4fa0x2[_0x285e[247]][_0x285e[1769]]=_0x4fa0x4+_0x4fa0x2[_0x285e[119]];_0x4fa0x2[_0x285e[247]][_0x285e[1770]]=_0x4fa0x9;_0x4fa0x2[_0x285e[1772]][_0x285e[1771]]=this[_0x285e[1773]](_0x4fa0x2[_0x285e[119]],0,this[_0x285e[1773]](_0x4fa0x4,_0x4fa0x9,_0x4fa0x2[_0x285e[1772]][_0x285e[1771]]));_0x4fa0x2[_0x285e[1772]][_0x285e[1774]]=this[_0x285e[1773]](_0x4fa0x2[_0x285e[119]],0,this[_0x285e[1773]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x2[_0x285e[1772]][_0x285e[1774]]))};mxCompactTreeLayout[_0x285e[202]][_0x285e[1768]]=function(_0x4fa0x2){var _0x4fa0x3=2*this[_0x285e[1749]];_0x4fa0x2[_0x285e[1772]][_0x285e[1775]]=this[_0x285e[1773]](_0x4fa0x2[_0x285e[119]]+_0x4fa0x3,0);_0x4fa0x2[_0x285e[1772]][_0x285e[1771]]=_0x4fa0x2[_0x285e[1772]][_0x285e[1775]];_0x4fa0x2[_0x285e[1772]][_0x285e[1776]]=this[_0x285e[1773]](0,-_0x4fa0x2[_0x285e[117]]-_0x4fa0x3);_0x4fa0x2[_0x285e[1772]][_0x285e[1774]]=this[_0x285e[1773]](_0x4fa0x2[_0x285e[119]]+_0x4fa0x3,0,_0x4fa0x2[_0x285e[1772]][_0x285e[1776]])};mxCompactTreeLayout[_0x285e[202]][_0x285e[234]]=function(_0x4fa0x2){var _0x4fa0x3=2*this[_0x285e[1749]],_0x4fa0x4=_0x4fa0x2[_0x285e[247]];_0x4fa0x2[_0x285e[1772]]=_0x4fa0x4[_0x285e[1772]];for(var _0x4fa0x5=_0x4fa0x4[_0x285e[117]]+_0x4fa0x3,_0x4fa0x9=_0x4fa0x5,_0x4fa0x4=_0x4fa0x4[_0x285e[1765]];null!=_0x4fa0x4;){var _0x4fa0xa=this[_0x285e[1777]](_0x4fa0x2[_0x285e[1772]],_0x4fa0x4[_0x285e[1772]]);_0x4fa0x4[_0x285e[1770]]=_0x4fa0xa+_0x4fa0x5;_0x4fa0x4[_0x285e[1769]]=0;_0x4fa0x5=_0x4fa0x4[_0x285e[117]]+_0x4fa0x3;_0x4fa0x9+=_0x4fa0xa+_0x4fa0x5;_0x4fa0x4=_0x4fa0x4[_0x285e[1765]]};return _0x4fa0x9};mxCompactTreeLayout[_0x285e[202]][_0x285e[1777]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=0,_0x4fa0x5=0,_0x4fa0x9=0,_0x4fa0xa=_0x4fa0x2[_0x285e[1774]],_0x4fa0x12=_0x4fa0x3[_0x285e[1771]];null!=_0x4fa0x12&&null!=_0x4fa0xa;){var _0x4fa0x13=this[_0x285e[1368]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x12[_0x285e[1126]],_0x4fa0x12[_0x285e[1125]],_0x4fa0xa[_0x285e[1126]],_0x4fa0xa[_0x285e[1125]]),_0x4fa0x5=_0x4fa0x5+_0x4fa0x13,_0x4fa0x9=_0x4fa0x9+_0x4fa0x13;_0x4fa0x4+_0x4fa0x12[_0x285e[1126]]<=_0x4fa0xa[_0x285e[1126]]?(_0x4fa0x4+=_0x4fa0x12[_0x285e[1126]],_0x4fa0x5+=_0x4fa0x12[_0x285e[1125]],_0x4fa0x12=_0x4fa0x12[_0x285e[1765]]):(_0x4fa0x4-=_0x4fa0xa[_0x285e[1126]],_0x4fa0x5-=_0x4fa0xa[_0x285e[1125]],_0x4fa0xa=_0x4fa0xa[_0x285e[1765]])};null!=_0x4fa0x12?(_0x4fa0x4=this[_0x285e[1778]](_0x4fa0x2[_0x285e[1775]],0,0,_0x4fa0x12,_0x4fa0x4,_0x4fa0x5),_0x4fa0x2[_0x285e[1775]]=null!=_0x4fa0x4[_0x285e[1765]]?_0x4fa0x3[_0x285e[1775]]:_0x4fa0x4,_0x4fa0x2[_0x285e[1776]]=_0x4fa0x3[_0x285e[1776]]):(_0x4fa0x4=this[_0x285e[1778]](_0x4fa0x3[_0x285e[1776]],_0x4fa0x4,_0x4fa0x5,_0x4fa0xa,0,0),null==_0x4fa0x4[_0x285e[1765]]&&(_0x4fa0x2[_0x285e[1776]]=_0x4fa0x4));_0x4fa0x2[_0x285e[1774]]=_0x4fa0x3[_0x285e[1774]];return _0x4fa0x9};mxCompactTreeLayout[_0x285e[202]][_0x285e[1368]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=0;if(_0x4fa0x9<=_0x4fa0x2||0>=_0x4fa0x2+_0x4fa0x4){return 0};_0x4fa0x12=0<_0x4fa0x9*_0x4fa0x5-_0x4fa0x4*_0x4fa0xa?0>_0x4fa0x2?_0x4fa0x2*_0x4fa0x5/_0x4fa0x4-_0x4fa0x3:0<_0x4fa0x2?_0x4fa0x2*_0x4fa0xa/_0x4fa0x9-_0x4fa0x3:-_0x4fa0x3:_0x4fa0x9<_0x4fa0x2+_0x4fa0x4?_0x4fa0xa-(_0x4fa0x3+(_0x4fa0x9-_0x4fa0x2)*_0x4fa0x5/_0x4fa0x4):_0x4fa0x9>_0x4fa0x2+_0x4fa0x4?(_0x4fa0x4+_0x4fa0x2)*_0x4fa0xa/_0x4fa0x9-(_0x4fa0x3+_0x4fa0x5):_0x4fa0xa-(_0x4fa0x3+_0x4fa0x5);return 0<_0x4fa0x12?_0x4fa0x12:0};mxCompactTreeLayout[_0x285e[202]][_0x285e[1778]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x3=_0x4fa0x9+_0x4fa0x5[_0x285e[1126]]-_0x4fa0x3;_0x4fa0x9=_0x4fa0x9=0;0==_0x4fa0x5[_0x285e[1126]]?_0x4fa0x9=_0x4fa0x5[_0x285e[1125]]:(_0x4fa0x9=_0x4fa0x3*_0x4fa0x5[_0x285e[1125]],_0x4fa0x9/=_0x4fa0x5[_0x285e[1126]]);_0x4fa0x3=this[_0x285e[1773]](_0x4fa0x3,_0x4fa0x9,_0x4fa0x5[_0x285e[1765]]);_0x4fa0x2[_0x285e[1765]]=this[_0x285e[1773]](0,_0x4fa0xa+_0x4fa0x5[_0x285e[1125]]-_0x4fa0x9-_0x4fa0x4,_0x4fa0x3);return _0x4fa0x3};mxCompactTreeLayout[_0x285e[202]][_0x285e[1766]]=function(_0x4fa0x2){var _0x4fa0x3={};_0x4fa0x3[_0x285e[246]]=_0x4fa0x2;_0x4fa0x3[_0x285e[235]]=0;_0x4fa0x3[_0x285e[236]]=0;_0x4fa0x3[_0x285e[117]]=0;_0x4fa0x3[_0x285e[119]]=0;_0x4fa0x2=this[_0x285e[1726]](_0x4fa0x2);null!=_0x4fa0x2&&(this[_0x285e[1737]]()?(_0x4fa0x3[_0x285e[117]]=_0x4fa0x2[_0x285e[119]],_0x4fa0x3[_0x285e[119]]=_0x4fa0x2[_0x285e[117]]):(_0x4fa0x3[_0x285e[117]]=_0x4fa0x2[_0x285e[117]],_0x4fa0x3[_0x285e[119]]=_0x4fa0x2[_0x285e[119]]));_0x4fa0x3[_0x285e[1769]]=0;_0x4fa0x3[_0x285e[1770]]=0;_0x4fa0x3[_0x285e[1772]]={};return _0x4fa0x3};mxCompactTreeLayout[_0x285e[202]][_0x285e[183]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x2[_0x285e[246]],_0x4fa0x9=_0x4fa0x4[_0x285e[1721]](_0x4fa0x5);null!=_0x4fa0x5&&null!=_0x4fa0x9&&(this[_0x285e[1711]](_0x4fa0x5)&&(_0x4fa0x9=this[_0x285e[1725]](_0x4fa0x5,_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]),this[_0x285e[1735]]&&(_0x4fa0x4=_0x4fa0x4[_0x285e[1197]](_0x4fa0x5),_0x4fa0x5=mxCellPath[_0x285e[385]](_0x4fa0x4),null==this[_0x285e[1746]][_0x4fa0x5]&&(this[_0x285e[1746]][_0x4fa0x5]=_0x4fa0x4))),_0x4fa0x3=null==_0x4fa0x3? new mxRectangle(_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]]): new mxRectangle(Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]],_0x4fa0x9[_0x285e[235]]),Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]],_0x4fa0x9[_0x285e[236]]),Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]),Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]])));return _0x4fa0x3};mxCompactTreeLayout[_0x285e[202]][_0x285e[1773]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5={};_0x4fa0x5[_0x285e[1126]]=_0x4fa0x2;_0x4fa0x5[_0x285e[1125]]=_0x4fa0x3;_0x4fa0x5[_0x285e[1765]]=_0x4fa0x4;return _0x4fa0x5};mxCompactTreeLayout[_0x285e[202]][_0x285e[1763]]=function(){var _0x4fa0x2=[],_0x4fa0x3;for(_0x4fa0x3 in this[_0x285e[1746]]){_0x4fa0x2[_0x285e[207]](this[_0x285e[1746]][_0x4fa0x3])};this[_0x285e[1727]](mxUtils[_0x285e[1779]](_0x4fa0x2,!0),this[_0x285e[1745]])};mxCompactTreeLayout[_0x285e[202]][_0x285e[1764]]=function(_0x4fa0x2){this[_0x285e[1780]](_0x4fa0x2);for(_0x4fa0x2=_0x4fa0x2[_0x285e[247]];null!=_0x4fa0x2;){this[_0x285e[1764]](_0x4fa0x2),_0x4fa0x2=_0x4fa0x2[_0x285e[1765]]}};mxCompactTreeLayout[_0x285e[202]][_0x285e[1780]]=function(_0x4fa0x2){for(var _0x4fa0x3=_0x4fa0x2[_0x285e[247]],_0x4fa0x4=_0x4fa0x2[_0x285e[246]],_0x4fa0x5=0,_0x4fa0x9=[];null!=_0x4fa0x3;){_0x4fa0x5++;var _0x4fa0xa=_0x4fa0x3[_0x285e[235]];this[_0x285e[662]]&&(_0x4fa0xa=_0x4fa0x3[_0x285e[236]]);_0x4fa0x9[_0x285e[207]]( new WeightedCellSorter(_0x4fa0x3,_0x4fa0xa));_0x4fa0x3=_0x4fa0x3[_0x285e[1765]]};_0x4fa0x9[_0x285e[470]](WeightedCellSorter[_0x285e[202]][_0x285e[469]]);var _0x4fa0xa=_0x4fa0x2[_0x285e[117]],_0x4fa0x12=(_0x4fa0x5+1)*this[_0x285e[1751]];_0x4fa0xa>_0x4fa0x12+2*this[_0x285e[1751]]&&(_0x4fa0xa-=2*this[_0x285e[1751]]);_0x4fa0x2=_0x4fa0xa/_0x4fa0x5;_0x4fa0x3=_0x4fa0x2/2;_0x4fa0xa>_0x4fa0x12+2*this[_0x285e[1751]]&&(_0x4fa0x3+=this[_0x285e[1751]]);for(var _0x4fa0xa=this[_0x285e[1753]]-this[_0x285e[1752]],_0x4fa0x12=0,_0x4fa0x13=this[_0x285e[1726]](_0x4fa0x4),_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x9[_0x285e[67]];_0x4fa0x14++){for(var _0x4fa0x15=_0x4fa0x9[_0x4fa0x14][_0x285e[246]][_0x285e[246]],_0x4fa0x16=this[_0x285e[1726]](_0x4fa0x15),_0x4fa0x15=this[_0x285e[1179]][_0x285e[1781]](_0x4fa0x4,_0x4fa0x15,!1),_0x4fa0x17=[],_0x4fa0x18=0,_0x4fa0x19=0,_0x4fa0x1a=0;_0x4fa0x1a<_0x4fa0x15[_0x285e[67]];_0x4fa0x1a++){this[_0x285e[662]]?(_0x4fa0x18=_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]],_0x4fa0x19=_0x4fa0x13[_0x285e[236]]+_0x4fa0x3,_0x4fa0x17[_0x285e[207]]( new mxPoint(_0x4fa0x18,_0x4fa0x19)),_0x4fa0x18=_0x4fa0x13[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]+_0x4fa0xa,_0x4fa0x17[_0x285e[207]]( new mxPoint(_0x4fa0x18,_0x4fa0x19)),_0x4fa0x19=_0x4fa0x16[_0x285e[236]]+_0x4fa0x16[_0x285e[119]]/2):(_0x4fa0x18=_0x4fa0x13[_0x285e[235]]+_0x4fa0x3,_0x4fa0x19=_0x4fa0x13[_0x285e[236]]+_0x4fa0x13[_0x285e[119]],_0x4fa0x17[_0x285e[207]]( new mxPoint(_0x4fa0x18,_0x4fa0x19)),_0x4fa0x19=_0x4fa0x13[_0x285e[236]]+_0x4fa0x13[_0x285e[119]]+_0x4fa0xa,_0x4fa0x17[_0x285e[207]]( new mxPoint(_0x4fa0x18,_0x4fa0x19)),_0x4fa0x18=_0x4fa0x16[_0x285e[235]]+_0x4fa0x16[_0x285e[117]]/2),_0x4fa0x17[_0x285e[207]]( new mxPoint(_0x4fa0x18,_0x4fa0x19)),this[_0x285e[1722]](_0x4fa0x15[_0x4fa0x1a],_0x4fa0x17)};_0x4fa0x14<_0x4fa0x5/2?_0x4fa0xa+=this[_0x285e[1752]]:_0x4fa0x14>_0x4fa0x5/2&&(_0x4fa0xa-=this[_0x285e[1752]]);_0x4fa0x3+=_0x4fa0x2;_0x4fa0x12=Math[_0x285e[160]](_0x4fa0x12,_0x4fa0xa)}};function WeightedCellSorter(_0x4fa0x2,_0x4fa0x3){this[_0x285e[246]]=_0x4fa0x2;this[_0x285e[1782]]=_0x4fa0x3}WeightedCellSorter[_0x285e[202]][_0x285e[1782]]=0;WeightedCellSorter[_0x285e[202]][_0x285e[1783]]= !1;WeightedCellSorter[_0x285e[202]][_0x285e[1784]]= !1;WeightedCellSorter[_0x285e[202]][_0x285e[1785]]=null;WeightedCellSorter[_0x285e[202]][_0x285e[246]]=null;WeightedCellSorter[_0x285e[202]][_0x285e[469]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2&&null!=_0x4fa0x3?_0x4fa0x3[_0x285e[1782]]>_0x4fa0x2[_0x285e[1782]]?1:_0x4fa0x3[_0x285e[1782]]<_0x4fa0x2[_0x285e[1782]]?-1:_0x4fa0x3[_0x285e[1783]]?1:-1:0};function mxFastOrganicLayout(_0x4fa0x2){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2)}mxFastOrganicLayout[_0x285e[202]]= new mxGraphLayout;mxFastOrganicLayout[_0x285e[202]][_0x285e[196]]=mxFastOrganicLayout;mxFastOrganicLayout[_0x285e[202]][_0x285e[1786]]= !0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1750]]= !0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1787]]= !0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1788]]=50;mxFastOrganicLayout[_0x285e[202]][_0x285e[1789]]=0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1790]]=2;mxFastOrganicLayout[_0x285e[202]][_0x285e[1791]]=500;mxFastOrganicLayout[_0x285e[202]][_0x285e[1792]]=4;mxFastOrganicLayout[_0x285e[202]][_0x285e[1793]]=200;mxFastOrganicLayout[_0x285e[202]][_0x285e[1794]]=0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1795]]=0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1796]]=0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1797]]= !0;mxFastOrganicLayout[_0x285e[202]][_0x285e[1713]]=function(_0x4fa0x2){return mxGraphLayout[_0x285e[202]][_0x285e[1713]][_0x285e[183]](this,arguments)||0==this[_0x285e[1179]][_0x285e[1756]](_0x4fa0x2)[_0x285e[67]]};mxFastOrganicLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();this[_0x285e[1798]]=[];for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[1728]](_0x4fa0x2),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){this[_0x285e[1713]](_0x4fa0x4[_0x4fa0x5])||this[_0x285e[1798]][_0x285e[207]](_0x4fa0x4[_0x4fa0x5])};var _0x4fa0x9=this[_0x285e[1786]]?this[_0x285e[1179]][_0x285e[441]][_0x285e[1799]](this[_0x285e[1798]]):null,_0x4fa0xa=this[_0x285e[1798]][_0x285e[67]];this[_0x285e[1800]]=[];this[_0x285e[1801]]=[];this[_0x285e[1802]]=[];this[_0x285e[1803]]=[];this[_0x285e[1804]]=[];this[_0x285e[1805]]=[];this[_0x285e[1806]]=[];this[_0x285e[1807]]=[];0.0010>this[_0x285e[1788]]&&(this[_0x285e[1788]]=0.0010);this[_0x285e[1789]]=this[_0x285e[1788]]*this[_0x285e[1788]];for(_0x4fa0x5=0;_0x4fa0x5<this[_0x285e[1798]][_0x285e[67]];_0x4fa0x5++){var _0x4fa0x12=this[_0x285e[1798]][_0x4fa0x5];this[_0x285e[1803]][_0x4fa0x5]=[];var _0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x12);this[_0x285e[1800]][_0x4fa0x13]=_0x4fa0x5;var _0x4fa0x14=this[_0x285e[1726]](_0x4fa0x12),_0x4fa0x15=_0x4fa0x14[_0x285e[117]],_0x4fa0x16=_0x4fa0x14[_0x285e[119]],_0x4fa0x17=_0x4fa0x14[_0x285e[235]],_0x4fa0x18=_0x4fa0x14[_0x285e[236]];this[_0x285e[1803]][_0x4fa0x5][0]=_0x4fa0x17+_0x4fa0x15/2;this[_0x285e[1803]][_0x4fa0x5][1]=_0x4fa0x18+_0x4fa0x16/2;this[_0x285e[1806]][_0x4fa0x5]=Math[_0x285e[243]](_0x4fa0x15,_0x4fa0x16);this[_0x285e[1807]][_0x4fa0x5]=this[_0x285e[1806]][_0x4fa0x5]*this[_0x285e[1806]][_0x4fa0x5]};_0x4fa0x3[_0x285e[473]]();try{for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0xa;_0x4fa0x5++){this[_0x285e[1801]][_0x4fa0x5]=0;this[_0x285e[1802]][_0x4fa0x5]=0;this[_0x285e[1804]][_0x4fa0x5]=this[_0x285e[1711]](this[_0x285e[1798]][_0x4fa0x5]);var _0x4fa0x19=this[_0x285e[1179]][_0x285e[1756]](this[_0x285e[1798]][_0x4fa0x5],_0x4fa0x2),_0x4fa0x4=this[_0x285e[1179]][_0x285e[1808]](_0x4fa0x19,this[_0x285e[1798]][_0x4fa0x5]);this[_0x285e[1805]][_0x4fa0x5]=[];for(_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x4[_0x285e[67]];_0x4fa0x15++){this[_0x285e[1750]]&&this[_0x285e[1179]][_0x285e[1809]](_0x4fa0x19[_0x4fa0x15]);this[_0x285e[1787]]&&this[_0x285e[1716]](_0x4fa0x19[_0x4fa0x15],!1);var _0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x4[_0x4fa0x15]),_0x4fa0x1a=this[_0x285e[1800]][_0x4fa0x13];this[_0x285e[1805]][_0x4fa0x5][_0x4fa0x15]=null!=_0x4fa0x1a?_0x4fa0x1a:_0x4fa0x5}};this[_0x285e[1794]]=this[_0x285e[1793]];0==this[_0x285e[1795]]&&(this[_0x285e[1795]]=20*Math[_0x285e[428]](_0x4fa0xa));for(this[_0x285e[1796]]=0;this[_0x285e[1796]]<this[_0x285e[1795]];this[_0x285e[1796]]++){if(!this[_0x285e[1797]]){return};this[_0x285e[1810]]();this[_0x285e[1811]]();this[_0x285e[1812]]();this[_0x285e[1813]]()};_0x4fa0x2=_0x4fa0x4=null;for(_0x4fa0x5=0;_0x4fa0x5<this[_0x285e[1798]][_0x285e[67]];_0x4fa0x5++){_0x4fa0x12=this[_0x285e[1798]][_0x4fa0x5],this[_0x285e[1711]](_0x4fa0x12)&&(_0x4fa0x14=this[_0x285e[1726]](_0x4fa0x12),null!=_0x4fa0x14&&(this[_0x285e[1803]][_0x4fa0x5][0]-=_0x4fa0x14[_0x285e[117]]/2,this[_0x285e[1803]][_0x4fa0x5][1]-=_0x4fa0x14[_0x285e[119]]/2,_0x4fa0x17=this[_0x285e[1179]][_0x285e[1021]](this[_0x285e[1803]][_0x4fa0x5][0]),_0x4fa0x18=this[_0x285e[1179]][_0x285e[1021]](this[_0x285e[1803]][_0x4fa0x5][1]),this[_0x285e[1725]](_0x4fa0x12,_0x4fa0x17,_0x4fa0x18),_0x4fa0x4=null==_0x4fa0x4?_0x4fa0x17:Math[_0x285e[243]](_0x4fa0x4,_0x4fa0x17),_0x4fa0x2=null==_0x4fa0x2?_0x4fa0x18:Math[_0x285e[243]](_0x4fa0x2,_0x4fa0x18)))};_0x4fa0x5=-(_0x4fa0x4||0)+1;_0x4fa0x12=-(_0x4fa0x2||0)+1;null!=_0x4fa0x9&&(_0x4fa0x5+=_0x4fa0x9[_0x285e[235]],_0x4fa0x12+=_0x4fa0x9[_0x285e[236]]);this[_0x285e[1179]][_0x285e[834]](this[_0x285e[1798]],_0x4fa0x5,_0x4fa0x12)}finally{_0x4fa0x3[_0x285e[476]]()}};mxFastOrganicLayout[_0x285e[202]][_0x285e[1812]]=function(){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[1798]][_0x285e[67]];_0x4fa0x2++){if(this[_0x285e[1804]][_0x4fa0x2]){var _0x4fa0x3=Math[_0x285e[428]](this[_0x285e[1801]][_0x4fa0x2]*this[_0x285e[1801]][_0x4fa0x2]+this[_0x285e[1802]][_0x4fa0x2]*this[_0x285e[1802]][_0x4fa0x2]);0.0010>_0x4fa0x3&&(_0x4fa0x3=0.0010);var _0x4fa0x4=this[_0x285e[1801]][_0x4fa0x2]/_0x4fa0x3*Math[_0x285e[243]](_0x4fa0x3,this[_0x285e[1794]]),_0x4fa0x3=this[_0x285e[1802]][_0x4fa0x2]/_0x4fa0x3*Math[_0x285e[243]](_0x4fa0x3,this[_0x285e[1794]]);this[_0x285e[1801]][_0x4fa0x2]=0;this[_0x285e[1802]][_0x4fa0x2]=0;this[_0x285e[1803]][_0x4fa0x2][0]+=_0x4fa0x4;this[_0x285e[1803]][_0x4fa0x2][1]+=_0x4fa0x3}}};mxFastOrganicLayout[_0x285e[202]][_0x285e[1811]]=function(){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[1798]][_0x285e[67]];_0x4fa0x2++){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1805]][_0x4fa0x2][_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[1805]][_0x4fa0x2][_0x4fa0x3];if(_0x4fa0x2!=_0x4fa0x4&&this[_0x285e[1804]][_0x4fa0x2]&&this[_0x285e[1804]][_0x4fa0x4]){var _0x4fa0x5=this[_0x285e[1803]][_0x4fa0x2][0]-this[_0x285e[1803]][_0x4fa0x4][0],_0x4fa0x9=this[_0x285e[1803]][_0x4fa0x2][1]-this[_0x285e[1803]][_0x4fa0x4][1],_0x4fa0xa=_0x4fa0x5*_0x4fa0x5+_0x4fa0x9*_0x4fa0x9-this[_0x285e[1807]][_0x4fa0x2]-this[_0x285e[1807]][_0x4fa0x4];_0x4fa0xa<this[_0x285e[1792]]&&(_0x4fa0xa=this[_0x285e[1792]]);var _0x4fa0x12=Math[_0x285e[428]](_0x4fa0xa),_0x4fa0xa=_0x4fa0xa/this[_0x285e[1788]],_0x4fa0x5=_0x4fa0x5/_0x4fa0x12*_0x4fa0xa,_0x4fa0x9=_0x4fa0x9/_0x4fa0x12*_0x4fa0xa;this[_0x285e[1801]][_0x4fa0x2]-=_0x4fa0x5;this[_0x285e[1802]][_0x4fa0x2]-=_0x4fa0x9;this[_0x285e[1801]][_0x4fa0x4]+=_0x4fa0x5;this[_0x285e[1802]][_0x4fa0x4]+=_0x4fa0x9}}}};mxFastOrganicLayout[_0x285e[202]][_0x285e[1810]]=function(){for(var _0x4fa0x2=this[_0x285e[1798]][_0x285e[67]],_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2;_0x4fa0x3++){for(var _0x4fa0x4=_0x4fa0x3;_0x4fa0x4<_0x4fa0x2;_0x4fa0x4++){if(!this[_0x285e[1797]]){return};if(_0x4fa0x4!=_0x4fa0x3&&this[_0x285e[1804]][_0x4fa0x3]&&this[_0x285e[1804]][_0x4fa0x4]){var _0x4fa0x5=this[_0x285e[1803]][_0x4fa0x3][0]-this[_0x285e[1803]][_0x4fa0x4][0],_0x4fa0x9=this[_0x285e[1803]][_0x4fa0x3][1]-this[_0x285e[1803]][_0x4fa0x4][1];0==_0x4fa0x5&&(_0x4fa0x5=0.01+Math[_0x285e[1814]]());0==_0x4fa0x9&&(_0x4fa0x9=0.01+Math[_0x285e[1814]]());var _0x4fa0xa=Math[_0x285e[428]](_0x4fa0x5*_0x4fa0x5+_0x4fa0x9*_0x4fa0x9),_0x4fa0x12=_0x4fa0xa-this[_0x285e[1806]][_0x4fa0x3]-this[_0x285e[1806]][_0x4fa0x4];_0x4fa0x12>this[_0x285e[1791]]||(_0x4fa0x12<this[_0x285e[1790]]&&(_0x4fa0x12=this[_0x285e[1790]]),_0x4fa0x12=this[_0x285e[1789]]/_0x4fa0x12,_0x4fa0x5=_0x4fa0x5/_0x4fa0xa*_0x4fa0x12,_0x4fa0x9=_0x4fa0x9/_0x4fa0xa*_0x4fa0x12,this[_0x285e[1801]][_0x4fa0x3]+=_0x4fa0x5,this[_0x285e[1802]][_0x4fa0x3]+=_0x4fa0x9,this[_0x285e[1801]][_0x4fa0x4]-=_0x4fa0x5,this[_0x285e[1802]][_0x4fa0x4]-=_0x4fa0x9)}}}};mxFastOrganicLayout[_0x285e[202]][_0x285e[1813]]=function(){this[_0x285e[1794]]=this[_0x285e[1793]]*(1-this[_0x285e[1796]]/this[_0x285e[1795]])};function mxCircleLayout(_0x4fa0x2,_0x4fa0x3){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[1806]]=null!=_0x4fa0x3?_0x4fa0x3:100}mxCircleLayout[_0x285e[202]]= new mxGraphLayout;mxCircleLayout[_0x285e[202]][_0x285e[196]]=mxCircleLayout;mxCircleLayout[_0x285e[202]][_0x285e[1806]]=null;mxCircleLayout[_0x285e[202]][_0x285e[1815]]= !1;mxCircleLayout[_0x285e[202]][_0x285e[1732]]=0;mxCircleLayout[_0x285e[202]][_0x285e[1733]]=0;mxCircleLayout[_0x285e[202]][_0x285e[1750]]= !0;mxCircleLayout[_0x285e[202]][_0x285e[1787]]= !0;mxCircleLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=0,_0x4fa0x5=null,_0x4fa0x9=null,_0x4fa0xa=[],_0x4fa0x12=_0x4fa0x3[_0x285e[262]](_0x4fa0x2),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x12;_0x4fa0x13++){var _0x4fa0x14=_0x4fa0x3[_0x285e[263]](_0x4fa0x2,_0x4fa0x13);if(this[_0x285e[1713]](_0x4fa0x14)){this[_0x285e[1715]](_0x4fa0x14)||(this[_0x285e[1750]]&&this[_0x285e[1179]][_0x285e[1809]](_0x4fa0x14),this[_0x285e[1787]]&&this[_0x285e[1716]](_0x4fa0x14,!1))}else {_0x4fa0xa[_0x285e[207]](_0x4fa0x14);var _0x4fa0x15=this[_0x285e[1726]](_0x4fa0x14),_0x4fa0x5=null==_0x4fa0x5?_0x4fa0x15[_0x285e[236]]:Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x15[_0x285e[236]]),_0x4fa0x9=null==_0x4fa0x9?_0x4fa0x15[_0x285e[235]]:Math[_0x285e[243]](_0x4fa0x9,_0x4fa0x15[_0x285e[235]]),_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x4,Math[_0x285e[160]](_0x4fa0x15[_0x285e[117]],_0x4fa0x15[_0x285e[119]]))}};var _0x4fa0x16=this[_0x285e[1816]](_0x4fa0xa[_0x285e[67]],_0x4fa0x4);this[_0x285e[1815]]&&(_0x4fa0x9=this[_0x285e[1732]],_0x4fa0x5=this[_0x285e[1733]]);this[_0x285e[1817]](_0x4fa0xa,_0x4fa0x16,_0x4fa0x9,_0x4fa0x5)}finally{_0x4fa0x3[_0x285e[476]]()}};mxCircleLayout[_0x285e[202]][_0x285e[1816]]=function(_0x4fa0x2,_0x4fa0x3){return Math[_0x285e[160]](_0x4fa0x2*_0x4fa0x3/Math[_0x285e[424]],this[_0x285e[1806]])};mxCircleLayout[_0x285e[202]][_0x285e[1817]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){for(var _0x4fa0x9=_0x4fa0x2[_0x285e[67]],_0x4fa0xa=2*Math[_0x285e[424]]/_0x4fa0x9,_0x4fa0x12=0;_0x4fa0x12<_0x4fa0x9;_0x4fa0x12++){this[_0x285e[1711]](_0x4fa0x2[_0x4fa0x12])&&this[_0x285e[1725]](_0x4fa0x2[_0x4fa0x12],_0x4fa0x4+_0x4fa0x3+_0x4fa0x3*Math[_0x285e[427]](_0x4fa0x12*_0x4fa0xa),_0x4fa0x5+_0x4fa0x3+_0x4fa0x3*Math[_0x285e[426]](_0x4fa0x12*_0x4fa0xa))}};function mxParallelEdgeLayout(_0x4fa0x2){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2)}mxParallelEdgeLayout[_0x285e[202]]= new mxGraphLayout;mxParallelEdgeLayout[_0x285e[202]][_0x285e[196]]=mxParallelEdgeLayout;mxParallelEdgeLayout[_0x285e[202]][_0x285e[657]]=20;mxParallelEdgeLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1818]](_0x4fa0x2);this[_0x285e[1179]][_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x3 in _0x4fa0x2){var _0x4fa0x4=_0x4fa0x2[_0x4fa0x3];1<_0x4fa0x4[_0x285e[67]]&&this[_0x285e[1759]](_0x4fa0x4)}}finally{this[_0x285e[1179]][_0x285e[251]][_0x285e[476]]()}};mxParallelEdgeLayout[_0x285e[202]][_0x285e[1818]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=[],_0x4fa0x5=_0x4fa0x3[_0x285e[262]](_0x4fa0x2),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x3[_0x285e[263]](_0x4fa0x2,_0x4fa0x9);if(!this[_0x285e[1715]](_0x4fa0xa)){var _0x4fa0x12=this[_0x285e[1819]](_0x4fa0xa);null!=_0x4fa0x12&&(null==_0x4fa0x4[_0x4fa0x12]&&(_0x4fa0x4[_0x4fa0x12]=[]),_0x4fa0x4[_0x4fa0x12][_0x285e[207]](_0x4fa0xa))}};return _0x4fa0x4};mxParallelEdgeLayout[_0x285e[202]][_0x285e[1819]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[249]](),_0x4fa0x4=_0x4fa0x3[_0x285e[248]](_0x4fa0x2),_0x4fa0x5=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[1710]](!0):_0x4fa0x3[_0x285e[1710]](_0x4fa0x2,!0);_0x4fa0x2=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[1710]](!1):_0x4fa0x3[_0x285e[1710]](_0x4fa0x2,!1);return null!=_0x4fa0x5&&null!=_0x4fa0x2?(_0x4fa0x5=mxCellPath[_0x285e[385]](_0x4fa0x5),_0x4fa0x2=mxCellPath[_0x285e[385]](_0x4fa0x2),_0x4fa0x5>_0x4fa0x2?_0x4fa0x2+_0x285e[213]+_0x4fa0x5:_0x4fa0x5+_0x285e[213]+_0x4fa0x2):null};mxParallelEdgeLayout[_0x285e[202]][_0x285e[1759]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[0],_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x4[_0x285e[1709]](_0x4fa0x3,!0)),_0x4fa0x9=_0x4fa0x4[_0x285e[1721]](_0x4fa0x4[_0x285e[1709]](_0x4fa0x3,!1));if(_0x4fa0x5==_0x4fa0x9){for(var _0x4fa0x3=_0x4fa0x5[_0x285e[235]]+_0x4fa0x5[_0x285e[117]]+this[_0x285e[657]],_0x4fa0x4=_0x4fa0x5[_0x285e[236]]+_0x4fa0x5[_0x285e[119]]/2,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){this[_0x285e[1820]](_0x4fa0x2[_0x4fa0xa],_0x4fa0x3,_0x4fa0x4),_0x4fa0x3+=this[_0x285e[657]]}}else {if(null!=_0x4fa0x5&&null!=_0x4fa0x9){for(var _0x4fa0x3=_0x4fa0x5[_0x285e[235]]+_0x4fa0x5[_0x285e[117]]/2,_0x4fa0x4=_0x4fa0x5[_0x285e[236]]+_0x4fa0x5[_0x285e[119]]/2,_0x4fa0xa=_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]/2-_0x4fa0x3,_0x4fa0x12=_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]/2-_0x4fa0x4,_0x4fa0x9=Math[_0x285e[428]](_0x4fa0xa*_0x4fa0xa+_0x4fa0x12*_0x4fa0x12),_0x4fa0x5=_0x4fa0x12*this[_0x285e[657]]/_0x4fa0x9,_0x4fa0x9=_0x4fa0xa*this[_0x285e[657]]/_0x4fa0x9,_0x4fa0x3=_0x4fa0x3+_0x4fa0xa/2+_0x4fa0x5*(_0x4fa0x2[_0x285e[67]]-1)/2,_0x4fa0x4=_0x4fa0x4+_0x4fa0x12/2-_0x4fa0x9*(_0x4fa0x2[_0x285e[67]]-1)/2,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){this[_0x285e[1820]](_0x4fa0x2[_0x4fa0xa],_0x4fa0x3,_0x4fa0x4),_0x4fa0x3-=_0x4fa0x5,_0x4fa0x4+=_0x4fa0x9}}}};mxParallelEdgeLayout[_0x285e[202]][_0x285e[1820]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[1179]][_0x285e[1712]](_0x4fa0x2)&&this[_0x285e[1722]](_0x4fa0x2,[ new mxPoint(_0x4fa0x3,_0x4fa0x4)])};function mxCompositeLayout(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[1821]]=_0x4fa0x3;this[_0x285e[1822]]=_0x4fa0x4}mxCompositeLayout[_0x285e[202]]= new mxGraphLayout;mxCompositeLayout[_0x285e[202]][_0x285e[196]]=mxCompositeLayout;mxCompositeLayout[_0x285e[202]][_0x285e[1821]]=null;mxCompositeLayout[_0x285e[202]][_0x285e[1822]]=null;mxCompositeLayout[_0x285e[202]][_0x285e[1702]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null!=this[_0x285e[1822]]?this[_0x285e[1822]][_0x285e[582]][_0x285e[183]](this[_0x285e[1822]],arguments):this[_0x285e[1821]][0][_0x285e[582]][_0x285e[183]](this[_0x285e[1821]][0],arguments)};mxCompositeLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<this[_0x285e[1821]][_0x285e[67]];_0x4fa0x4++){this[_0x285e[1821]][_0x4fa0x4][_0x285e[350]][_0x285e[183]](this[_0x285e[1821]][_0x4fa0x4],arguments)}}finally{_0x4fa0x3[_0x285e[476]]()}};function mxEdgeLabelLayout(_0x4fa0x2,_0x4fa0x3){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2)}mxEdgeLabelLayout[_0x285e[202]]= new mxGraphLayout;mxEdgeLabelLayout[_0x285e[202]][_0x285e[196]]=mxEdgeLabelLayout;mxEdgeLabelLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[1179]][_0x285e[441]],_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=[],_0x4fa0x9=[],_0x4fa0xa=_0x4fa0x4[_0x285e[262]](_0x4fa0x2),_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa;_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x12),_0x4fa0x14=_0x4fa0x3[_0x285e[248]](_0x4fa0x13);null!=_0x4fa0x14&&(this[_0x285e[1713]](_0x4fa0x13)?this[_0x285e[1715]](_0x4fa0x13)||_0x4fa0x5[_0x285e[207]](_0x4fa0x14):_0x4fa0x9[_0x285e[207]](_0x4fa0x14))};this[_0x285e[1823]](_0x4fa0x9,_0x4fa0x5)};mxEdgeLabelLayout[_0x285e[202]][_0x285e[1823]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x4[_0x285e[473]]();try{for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=_0x4fa0x3[_0x4fa0x5];if(null!=_0x4fa0x9&&null!=_0x4fa0x9[_0x285e[963]]&&null!=_0x4fa0x9[_0x285e[963]][_0x285e[1563]]){for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x2[_0x4fa0xa];null!=_0x4fa0x12&&this[_0x285e[1824]](_0x4fa0x9,_0x4fa0x12)}}}}finally{_0x4fa0x4[_0x285e[476]]()}};mxEdgeLabelLayout[_0x285e[202]][_0x285e[1824]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x2[_0x285e[963]][_0x285e[1563]];if(mxUtils[_0x285e[1825]](_0x4fa0x5,_0x4fa0x3)){var _0x4fa0x9=-_0x4fa0x5[_0x285e[236]]-_0x4fa0x5[_0x285e[119]]+_0x4fa0x3[_0x285e[236]],_0x4fa0xa=-_0x4fa0x5[_0x285e[236]]+_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x9=Math[_0x285e[425]](_0x4fa0x9)<Math[_0x285e[425]](_0x4fa0xa)?_0x4fa0x9:_0x4fa0xa,_0x4fa0xa=-_0x4fa0x5[_0x285e[235]]-_0x4fa0x5[_0x285e[117]]+_0x4fa0x3[_0x285e[235]],_0x4fa0x5=-_0x4fa0x5[_0x285e[235]]+_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x5=Math[_0x285e[425]](_0x4fa0xa)<Math[_0x285e[425]](_0x4fa0x5)?_0x4fa0xa:_0x4fa0x5;Math[_0x285e[425]](_0x4fa0x5)<Math[_0x285e[425]](_0x4fa0x9)?_0x4fa0x9=0:_0x4fa0x5=0;_0x4fa0xa=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2[_0x285e[246]]);null!=_0x4fa0xa&&(_0x4fa0xa=_0x4fa0xa[_0x285e[238]](),null!=_0x4fa0xa[_0x285e[1368]]?(_0x4fa0xa[_0x285e[1368]][_0x285e[235]]+=_0x4fa0x5,_0x4fa0xa[_0x285e[1368]][_0x285e[236]]+=_0x4fa0x9):_0x4fa0xa[_0x285e[1368]]= new mxPoint(_0x4fa0x5,_0x4fa0x9),_0x4fa0x4[_0x285e[1724]](_0x4fa0x2[_0x285e[246]],_0x4fa0xa))}};function mxGraphAbstractHierarchyCell(){this[_0x285e[235]]=[];this[_0x285e[236]]=[];this[_0x285e[1826]]=[]}mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1827]]= -1;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1828]]= -1;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[235]]=null;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[236]]=null;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[117]]=0;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[119]]=0;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1829]]=null;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1830]]=null;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1826]]=null;mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1831]]=function(_0x4fa0x2){return null};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1832]]=function(_0x4fa0x2){return null};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[250]]=function(){return !1};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1193]]=function(){return !1};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1833]]=function(_0x4fa0x2){return null};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1834]]=function(_0x4fa0x2,_0x4fa0x3){return null};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1835]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1193]]()?this[_0x285e[235]][0]=_0x4fa0x3:this[_0x285e[250]]()&&(this[_0x285e[235]][_0x4fa0x2-this[_0x285e[1828]]-1]=_0x4fa0x3)};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[730]]=function(_0x4fa0x2){return this[_0x285e[1193]]()?this[_0x285e[235]][0]:this[_0x285e[250]]()?this[_0x285e[235]][_0x4fa0x2-this[_0x285e[1828]]-1]:0};mxGraphAbstractHierarchyCell[_0x285e[202]][_0x285e[1836]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1193]]()?this[_0x285e[236]][0]=_0x4fa0x3:this[_0x285e[250]]()&&(this[_0x285e[236]][_0x4fa0x2-this[_0x285e[1828]]-1]=_0x4fa0x3)};function mxGraphHierarchyNode(_0x4fa0x2){mxGraphAbstractHierarchyCell[_0x285e[183]](this,arguments);this[_0x285e[246]]=_0x4fa0x2}mxGraphHierarchyNode[_0x285e[202]]= new mxGraphAbstractHierarchyCell;mxGraphHierarchyNode[_0x285e[202]][_0x285e[196]]=mxGraphHierarchyNode;mxGraphHierarchyNode[_0x285e[202]][_0x285e[246]]=null;mxGraphHierarchyNode[_0x285e[202]][_0x285e[1837]]=[];mxGraphHierarchyNode[_0x285e[202]][_0x285e[1838]]=[];mxGraphHierarchyNode[_0x285e[202]][_0x285e[1839]]= !1;mxGraphHierarchyNode[_0x285e[202]][_0x285e[1840]]=function(_0x4fa0x2){return this[_0x285e[1827]]};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1831]]=function(_0x4fa0x2){if(null==this[_0x285e[1829]]){this[_0x285e[1829]]=[];this[_0x285e[1829]][0]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1837]][_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[1837]][_0x4fa0x3];-1==_0x4fa0x4[_0x285e[1827]]||_0x4fa0x4[_0x285e[1827]]==_0x4fa0x2+1?this[_0x285e[1829]][0][_0x285e[207]](_0x4fa0x4[_0x285e[1097]]):this[_0x285e[1829]][0][_0x285e[207]](_0x4fa0x4)}};return this[_0x285e[1829]][0]};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1832]]=function(_0x4fa0x2){if(null==this[_0x285e[1830]]){this[_0x285e[1830]]=[];this[_0x285e[1830]][0]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1838]][_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[1838]][_0x4fa0x3];-1==_0x4fa0x4[_0x285e[1828]]||_0x4fa0x4[_0x285e[1828]]==_0x4fa0x2-1?this[_0x285e[1830]][0][_0x285e[207]](_0x4fa0x4[_0x285e[772]]):this[_0x285e[1830]][0][_0x285e[207]](_0x4fa0x4)}};return this[_0x285e[1830]][0]};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1193]]=function(){return !0};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1833]]=function(_0x4fa0x2){return this[_0x285e[1826]][0]};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1834]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1826]][0]=_0x4fa0x3};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1720]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&null!=this[_0x285e[1839]]&&null!=_0x4fa0x2[_0x285e[1839]]&&this[_0x285e[1839]][_0x285e[67]]<_0x4fa0x2[_0x285e[1839]][_0x285e[67]]){if(this[_0x285e[1839]]==_0x4fa0x2[_0x285e[1839]]){return !0};if(null==this[_0x285e[1839]]||null==this[_0x285e[1839]]){return !1};for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1839]][_0x285e[67]];_0x4fa0x3++){if(this[_0x285e[1839]][_0x4fa0x3]!=_0x4fa0x2[_0x285e[1839]][_0x4fa0x3]){return !1}};return !0};return !1};mxGraphHierarchyNode[_0x285e[202]][_0x285e[1841]]=function(){return this[_0x285e[246]]};function mxGraphHierarchyEdge(_0x4fa0x2){mxGraphAbstractHierarchyCell[_0x285e[183]](this,arguments);this[_0x285e[1842]]=_0x4fa0x2}mxGraphHierarchyEdge[_0x285e[202]]= new mxGraphAbstractHierarchyCell;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[196]]=mxGraphHierarchyEdge;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1842]]=null;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1097]]=null;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[772]]=null;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1843]]= !1;mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1744]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1097]];this[_0x285e[1097]]=this[_0x285e[772]];this[_0x285e[772]]=_0x4fa0x2;this[_0x285e[1843]]=!this[_0x285e[1843]]};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1831]]=function(_0x4fa0x2){if(null==this[_0x285e[1829]]){this[_0x285e[1829]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1826]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[1829]][_0x4fa0x3]=[],_0x4fa0x3==this[_0x285e[1826]][_0x285e[67]]-1?this[_0x285e[1829]][_0x4fa0x3][_0x285e[207]](this[_0x285e[1097]]):this[_0x285e[1829]][_0x4fa0x3][_0x285e[207]](this)}};return this[_0x285e[1829]][_0x4fa0x2-this[_0x285e[1828]]-1]};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1832]]=function(_0x4fa0x2){if(null==this[_0x285e[1830]]){this[_0x285e[1830]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1826]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[1830]][_0x4fa0x3]=[],0==_0x4fa0x3?this[_0x285e[1830]][_0x4fa0x3][_0x285e[207]](this[_0x285e[772]]):this[_0x285e[1830]][_0x4fa0x3][_0x285e[207]](this)}};return this[_0x285e[1830]][_0x4fa0x2-this[_0x285e[1828]]-1]};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[250]]=function(){return !0};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1833]]=function(_0x4fa0x2){return this[_0x285e[1826]][_0x4fa0x2-this[_0x285e[1828]]-1]};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1834]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1826]][_0x4fa0x2-this[_0x285e[1828]]-1]=_0x4fa0x3};mxGraphHierarchyEdge[_0x285e[202]][_0x285e[1841]]=function(){return null!=this[_0x285e[1842]]&&0<this[_0x285e[1842]][_0x285e[67]]?this[_0x285e[1842]][0]:null};function mxGraphHierarchyModel(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2[_0x285e[1703]]();this[_0x285e[1844]]=_0x4fa0x9;this[_0x285e[1845]]=_0x4fa0x4;this[_0x285e[1101]]=_0x4fa0x5;this[_0x285e[1846]]={};this[_0x285e[1847]]={};this[_0x285e[1827]]=0;_0x4fa0x4=[];null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[1179]][_0x285e[1728]](_0x4fa0x5));this[_0x285e[1827]]=this[_0x285e[1848]];this[_0x285e[1849]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){_0x4fa0x9=_0x4fa0x4[_0x4fa0x5][_0x285e[1838]];for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x9[_0x4fa0xa],_0x4fa0x13=_0x4fa0x12[_0x285e[1842]];if(null!=_0x4fa0x13&&0<_0x4fa0x13[_0x285e[67]]){var _0x4fa0x13=_0x4fa0x13[0],_0x4fa0x14=_0x4fa0x2[_0x285e[1710]](_0x4fa0x13,!1),_0x4fa0x14=mxCellPath[_0x285e[385]](_0x4fa0x14),_0x4fa0x14=this[_0x285e[1846]][_0x4fa0x14];_0x4fa0x4[_0x4fa0x5]==_0x4fa0x14&&(_0x4fa0x14=_0x4fa0x2[_0x285e[1710]](_0x4fa0x13,!0),_0x4fa0x14=mxCellPath[_0x285e[385]](_0x4fa0x14),_0x4fa0x14=this[_0x285e[1846]][_0x4fa0x14]);null!=_0x4fa0x14&&_0x4fa0x4[_0x4fa0x5]!=_0x4fa0x14&&(_0x4fa0x12[_0x285e[772]]=_0x4fa0x14,0==_0x4fa0x14[_0x285e[1837]][_0x285e[67]]&&(_0x4fa0x14[_0x285e[1837]]=[]),0>mxUtils[_0x285e[2]](_0x4fa0x14[_0x285e[1837]],_0x4fa0x12)&&_0x4fa0x14[_0x285e[1837]][_0x285e[207]](_0x4fa0x12))}};_0x4fa0x4[_0x4fa0x5][_0x285e[1826]][0]=1}}mxGraphHierarchyModel[_0x285e[202]][_0x285e[1827]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1846]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1847]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1850]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1845]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1101]]=null;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1851]]=0;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1848]]=1E8;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1844]]= !1;mxGraphHierarchyModel[_0x285e[202]][_0x285e[1849]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[1703]](),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){_0x4fa0x4[_0x4fa0x9]= new mxGraphHierarchyNode(_0x4fa0x3[_0x4fa0x9]);var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x4fa0x9]);this[_0x285e[1846]][_0x4fa0xa]=_0x4fa0x4[_0x4fa0x9];_0x4fa0xa=_0x4fa0x2[_0x285e[264]](_0x4fa0x3[_0x4fa0x9]);_0x4fa0x4[_0x4fa0x9][_0x285e[1838]]=[];for(var _0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x2[_0x285e[1710]](_0x4fa0xa[_0x4fa0x12],!1);if(_0x4fa0x13!=_0x4fa0x3[_0x4fa0x9]&&_0x4fa0x13!=_0x4fa0x3[_0x4fa0x9]&&_0x4fa0x2[_0x285e[1179]][_0x285e[251]][_0x285e[1193]](_0x4fa0x13)&&!_0x4fa0x2[_0x285e[1713]](_0x4fa0x13)){var _0x4fa0x14=_0x4fa0x2[_0x285e[1781]](_0x4fa0x3[_0x4fa0x9],_0x4fa0x13,!1),_0x4fa0x15=_0x4fa0x2[_0x285e[1781]](_0x4fa0x3[_0x4fa0x9],_0x4fa0x13,!0),_0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x14[0]);if(null!=_0x4fa0x14&&0<_0x4fa0x14[_0x285e[67]]&&null==this[_0x285e[1847]][_0x4fa0x13]&&2*_0x4fa0x15[_0x285e[67]]>=_0x4fa0x14[_0x285e[67]]){for(var _0x4fa0x15= new mxGraphHierarchyEdge(_0x4fa0x14),_0x4fa0x16=0;_0x4fa0x16<_0x4fa0x14[_0x285e[67]];_0x4fa0x16++){var _0x4fa0x17=_0x4fa0x14[_0x4fa0x16],_0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x17);this[_0x285e[1847]][_0x4fa0x13]=_0x4fa0x15;_0x4fa0x5[_0x285e[1809]](_0x4fa0x17);_0x4fa0x2[_0x285e[1787]]&&(_0x4fa0x2[_0x285e[1716]](_0x4fa0x17,!1),_0x4fa0x2[_0x285e[1718]](_0x4fa0x17,!0))};_0x4fa0x15[_0x285e[1097]]=_0x4fa0x4[_0x4fa0x9];0>mxUtils[_0x285e[2]](_0x4fa0x4[_0x4fa0x9][_0x285e[1838]],_0x4fa0x15)&&_0x4fa0x4[_0x4fa0x9][_0x285e[1838]][_0x285e[207]](_0x4fa0x15)}}};_0x4fa0x4[_0x4fa0x9][_0x285e[1826]][0]=0}};mxGraphHierarchyModel[_0x285e[202]][_0x285e[1852]]=function(){var _0x4fa0x2=[];if(null!=this[_0x285e[1845]]){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1845]][_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=mxCellPath[_0x285e[385]](this[_0x285e[1845]][_0x4fa0x3]),_0x4fa0x4=this[_0x285e[1846]][_0x4fa0x4];null!=_0x4fa0x4&&_0x4fa0x2[_0x285e[207]](_0x4fa0x4)}};for(var _0x4fa0x5 in this[_0x285e[1846]]){_0x4fa0x4=this[_0x285e[1846]][_0x4fa0x5],_0x4fa0x4[_0x285e[1826]][0]= -1};for(var _0x4fa0x9=_0x4fa0x2[_0x285e[1853]]();0<_0x4fa0x2[_0x285e[67]];){var _0x4fa0x4=_0x4fa0x2[0],_0x4fa0xa,_0x4fa0x12;_0x4fa0xa=_0x4fa0x4[_0x285e[1837]];_0x4fa0x12=_0x4fa0x4[_0x285e[1838]];for(var _0x4fa0x13=!0,_0x4fa0x14=this[_0x285e[1848]],_0x4fa0x3=0;_0x4fa0x3<_0x4fa0xa[_0x285e[67]];_0x4fa0x3++){var _0x4fa0x15=_0x4fa0xa[_0x4fa0x3];if(5270620==_0x4fa0x15[_0x285e[1826]][0]){_0x4fa0x15=_0x4fa0x15[_0x285e[1097]],_0x4fa0x14=Math[_0x285e[243]](_0x4fa0x14,_0x4fa0x15[_0x285e[1826]][0]-1)}else {_0x4fa0x13= !1;break}};if(_0x4fa0x13){_0x4fa0x4[_0x285e[1826]][0]=_0x4fa0x14;this[_0x285e[1827]]=Math[_0x285e[243]](this[_0x285e[1827]],_0x4fa0x14);if(null!=_0x4fa0x12){for(_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x12[_0x285e[67]];_0x4fa0x3++){_0x4fa0x15=_0x4fa0x12[_0x4fa0x3],_0x4fa0x15[_0x285e[1826]][0]=5270620,_0x4fa0x15=_0x4fa0x15[_0x285e[772]],-1==_0x4fa0x15[_0x285e[1826]][0]&&(_0x4fa0x2[_0x285e[207]](_0x4fa0x15),_0x4fa0x15[_0x285e[1826]][0]= -2)}};_0x4fa0x2[_0x285e[1115]]()}else {if(_0x4fa0x3=_0x4fa0x2[_0x285e[1115]](),_0x4fa0x2[_0x285e[207]](_0x4fa0x4),_0x4fa0x3==_0x4fa0x4&&1==_0x4fa0x2[_0x285e[67]]){break}}};for(_0x4fa0x5 in this[_0x285e[1846]]){_0x4fa0x4=this[_0x285e[1846]][_0x4fa0x5],_0x4fa0x4[_0x285e[1826]][0]-=this[_0x285e[1827]]};for(_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x9[_0x285e[67]];_0x4fa0x3++){_0x4fa0x4=_0x4fa0x9[_0x4fa0x3];_0x4fa0x2=0;_0x4fa0xa=_0x4fa0x4[_0x285e[1838]];for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0xa[_0x285e[67]];_0x4fa0x5++){_0x4fa0x15=_0x4fa0xa[_0x4fa0x5],_0x4fa0x15=_0x4fa0x15[_0x285e[772]],_0x4fa0x4[_0x285e[1826]][0]=Math[_0x285e[160]](_0x4fa0x2,_0x4fa0x15[_0x285e[1826]][0]+1),_0x4fa0x2=_0x4fa0x4[_0x285e[1826]][0]}};this[_0x285e[1827]]=this[_0x285e[1848]]-this[_0x285e[1827]]};mxGraphHierarchyModel[_0x285e[202]][_0x285e[1854]]=function(){var _0x4fa0x2=[];this[_0x285e[1850]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1827]]+1;_0x4fa0x3++){_0x4fa0x2[_0x4fa0x3]=[],this[_0x285e[1850]][_0x4fa0x3]=_0x4fa0x2[_0x4fa0x3]};var _0x4fa0x4=null;if(null!=this[_0x285e[1845]]){for(var _0x4fa0x5=this[_0x285e[1845]],_0x4fa0x4=[],_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x5[_0x285e[67]];_0x4fa0x3++){var _0x4fa0x9=mxCellPath[_0x285e[385]](_0x4fa0x5[_0x4fa0x3]);_0x4fa0x4[_0x4fa0x3]=this[_0x285e[1846]][_0x4fa0x9]}};this[_0x285e[209]](function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0x15){0==_0x4fa0x15&&(0>_0x4fa0x4[_0x285e[1827]]&&0>_0x4fa0x4[_0x285e[1828]])&&(_0x4fa0x2[_0x4fa0x4[_0x285e[1826]][0]][_0x285e[207]](_0x4fa0x4),_0x4fa0x4[_0x285e[1827]]=_0x4fa0x4[_0x285e[1826]][0],_0x4fa0x4[_0x285e[1828]]=_0x4fa0x4[_0x285e[1826]][0],_0x4fa0x4[_0x285e[1826]][0]=_0x4fa0x2[_0x4fa0x4[_0x285e[1827]]][_0x285e[67]]-1);if(null!=_0x4fa0x3&&null!=_0x4fa0x5&&1<_0x4fa0x3[_0x285e[1827]]-_0x4fa0x4[_0x285e[1827]]){_0x4fa0x5[_0x285e[1827]]=_0x4fa0x3[_0x285e[1827]];_0x4fa0x5[_0x285e[1828]]=_0x4fa0x4[_0x285e[1827]];_0x4fa0x5[_0x285e[1826]]=[];_0x4fa0x5[_0x285e[235]]=[];_0x4fa0x5[_0x285e[236]]=[];for(_0x4fa0x3=_0x4fa0x5[_0x285e[1828]]+1;_0x4fa0x3<_0x4fa0x5[_0x285e[1827]];_0x4fa0x3++){_0x4fa0x2[_0x4fa0x3][_0x285e[207]](_0x4fa0x5),_0x4fa0x5[_0x285e[1834]](_0x4fa0x3,_0x4fa0x2[_0x4fa0x3][_0x285e[67]]-1)}}},_0x4fa0x4,!1,null)};mxGraphHierarchyModel[_0x285e[202]][_0x285e[209]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x3){for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x3[_0x4fa0x9];null!=_0x4fa0xa&&(null==_0x4fa0x5&&(_0x4fa0x5={}),_0x4fa0x4?(_0x4fa0xa[_0x285e[1839]]=[],_0x4fa0xa[_0x285e[1839]][0]=this[_0x285e[1851]],_0x4fa0xa[_0x285e[1839]][1]=_0x4fa0x9,this[_0x285e[1855]](null,_0x4fa0xa,null,_0x4fa0x2,_0x4fa0x5,_0x4fa0xa[_0x285e[1839]],_0x4fa0x9,0)):this[_0x285e[1758]](null,_0x4fa0xa,null,_0x4fa0x2,_0x4fa0x5,0))};this[_0x285e[1851]]++}};mxGraphHierarchyModel[_0x285e[202]][_0x285e[1758]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){if(null!=_0x4fa0x3){var _0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]);if(null==_0x4fa0x9[_0x4fa0x12]){_0x4fa0x9[_0x4fa0x12]=_0x4fa0x3;_0x4fa0x5(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0xa,0);_0x4fa0x2=_0x4fa0x3[_0x285e[1838]][_0x285e[1853]]();for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){_0x4fa0x12=_0x4fa0x2[_0x4fa0x4],this[_0x285e[1758]](_0x4fa0x3,_0x4fa0x12[_0x285e[772]],_0x4fa0x12,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa+1)}}else {_0x4fa0x5(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0xa,1)}}};mxGraphHierarchyModel[_0x285e[202]][_0x285e[1855]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13){if(null!=_0x4fa0x3){if(null!=_0x4fa0x2&&(null==_0x4fa0x3[_0x285e[1839]]||_0x4fa0x3[_0x285e[1839]][0]!=_0x4fa0x2[_0x285e[1839]][0])){_0x4fa0xa=_0x4fa0x2[_0x285e[1839]][_0x285e[67]]+1,_0x4fa0x3[_0x285e[1839]]=_0x4fa0x2[_0x285e[1839]][_0x285e[1853]](),_0x4fa0x3[_0x285e[1839]][_0x4fa0xa-1]=_0x4fa0x12};_0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]);if(null==_0x4fa0x9[_0x4fa0x12]){_0x4fa0x9[_0x4fa0x12]=_0x4fa0x3;_0x4fa0x5(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x13,0);_0x4fa0x2=_0x4fa0x3[_0x285e[1838]][_0x285e[1853]]();for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){_0x4fa0x12=_0x4fa0x2[_0x4fa0x4],this[_0x285e[1855]](_0x4fa0x3,_0x4fa0x12[_0x285e[772]],_0x4fa0x12,_0x4fa0x5,_0x4fa0x9,_0x4fa0x3[_0x285e[1839]],_0x4fa0x4,_0x4fa0x13+1)}}else {_0x4fa0x5(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x13,1)}}};function mxHierarchicalLayoutStage(){}mxHierarchicalLayoutStage[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){};function mxMedianHybridCrossingReduction(_0x4fa0x2){this[_0x285e[1759]]=_0x4fa0x2}mxMedianHybridCrossingReduction[_0x285e[202]]= new mxHierarchicalLayoutStage;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[196]]=mxMedianHybridCrossingReduction;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1759]]=null;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1795]]=24;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1856]]=null;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1857]]=0;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1858]]=0;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1859]]=2;mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1759]][_0x285e[502]]();this[_0x285e[1856]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[1850]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[1856]][_0x4fa0x3]=_0x4fa0x2[_0x285e[1850]][_0x4fa0x3][_0x285e[1853]]()};for(var _0x4fa0x4=0,_0x4fa0x5=this[_0x285e[1860]](_0x4fa0x2),_0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1795]]&&_0x4fa0x4<this[_0x285e[1859]];_0x4fa0x3++){this[_0x285e[1861]](_0x4fa0x3,_0x4fa0x2);this[_0x285e[1862]](_0x4fa0x3,_0x4fa0x2);var _0x4fa0x9=this[_0x285e[1860]](_0x4fa0x2);if(_0x4fa0x9<_0x4fa0x5){_0x4fa0x5=_0x4fa0x9;for(_0x4fa0x9=_0x4fa0x4=0;_0x4fa0x9<this[_0x285e[1856]][_0x285e[67]];_0x4fa0x9++){for(var _0x4fa0xa=_0x4fa0x2[_0x285e[1850]][_0x4fa0x9],_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){var _0x4fa0x13=_0x4fa0xa[_0x4fa0x12];this[_0x285e[1856]][_0x4fa0x9][_0x4fa0x13[_0x285e[1833]](_0x4fa0x9)]=_0x4fa0x13}}}else {_0x4fa0x4++;for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[1856]][_0x285e[67]];_0x4fa0x9++){_0x4fa0xa=_0x4fa0x2[_0x285e[1850]][_0x4fa0x9];for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa[_0x285e[67]];_0x4fa0x12++){_0x4fa0x13=_0x4fa0xa[_0x4fa0x12],_0x4fa0x13[_0x285e[1834]](_0x4fa0x9,_0x4fa0x12)}}};if(0==_0x4fa0x5){break}};_0x4fa0x4=[];_0x4fa0x5=[];for(_0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[1827]]+1;_0x4fa0x3++){_0x4fa0x5[_0x4fa0x3]=[],_0x4fa0x4[_0x4fa0x3]=_0x4fa0x5[_0x4fa0x3]};for(_0x4fa0x3=0;_0x4fa0x3<this[_0x285e[1856]][_0x285e[67]];_0x4fa0x3++){for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[1856]][_0x4fa0x3][_0x285e[67]];_0x4fa0x9++){_0x4fa0x5[_0x4fa0x3][_0x285e[207]](this[_0x285e[1856]][_0x4fa0x3][_0x4fa0x9])}};_0x4fa0x2[_0x285e[1850]]=_0x4fa0x4};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1860]]=function(_0x4fa0x2){for(var _0x4fa0x3=_0x4fa0x2[_0x285e[1850]][_0x285e[67]],_0x4fa0x4=0,_0x4fa0x5=1;_0x4fa0x5<_0x4fa0x3;_0x4fa0x5++){_0x4fa0x4+=this[_0x285e[1863]](_0x4fa0x5,_0x4fa0x2)};return _0x4fa0x4};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1863]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=0,_0x4fa0x5=_0x4fa0x3[_0x285e[1850]][_0x4fa0x2],_0x4fa0x9=_0x4fa0x5[_0x285e[67]],_0x4fa0xa=_0x4fa0x3[_0x285e[1850]][_0x4fa0x2-1][_0x285e[67]],_0x4fa0x12=[],_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x9;_0x4fa0x13++){_0x4fa0x12[_0x4fa0x13]=[]};for(_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x5[_0x285e[67]];_0x4fa0x13++){for(var _0x4fa0x14=_0x4fa0x5[_0x4fa0x13],_0x4fa0x15=_0x4fa0x14[_0x285e[1833]](_0x4fa0x2),_0x4fa0x16=_0x4fa0x14[_0x285e[1832]](_0x4fa0x2),_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x16[_0x285e[67]];_0x4fa0x14++){var _0x4fa0x17=_0x4fa0x16[_0x4fa0x14][_0x285e[1833]](_0x4fa0x2-1);_0x4fa0x12[_0x4fa0x15][_0x4fa0x17]=201207}};for(_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x9;_0x4fa0x13++){for(_0x4fa0x14=0;_0x4fa0x14<_0x4fa0xa;_0x4fa0x14++){if(201207==_0x4fa0x12[_0x4fa0x13][_0x4fa0x14]){for(_0x4fa0x5=_0x4fa0x13+1;_0x4fa0x5<_0x4fa0x9;_0x4fa0x5++){for(_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x14;_0x4fa0x15++){201207==_0x4fa0x12[_0x4fa0x5][_0x4fa0x15]&&_0x4fa0x4++}};for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x13;_0x4fa0x5++){for(_0x4fa0x15=_0x4fa0x14+1;_0x4fa0x15<_0x4fa0xa;_0x4fa0x15++){201207==_0x4fa0x12[_0x4fa0x5][_0x4fa0x15]&&_0x4fa0x4++}}}}};return _0x4fa0x4/2};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1862]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=!0,_0x4fa0x5=0;_0x4fa0x4&&10>_0x4fa0x5++;){for(var _0x4fa0x9=1==_0x4fa0x2%2&&1==_0x4fa0x5%2,_0x4fa0x4=!1,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[1850]][_0x285e[67]];_0x4fa0xa++){for(var _0x4fa0x12=_0x4fa0x3[_0x285e[1850]][_0x4fa0xa],_0x4fa0x13=[],_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x12[_0x285e[67]];_0x4fa0x14++){var _0x4fa0x15=_0x4fa0x12[_0x4fa0x14],_0x4fa0x16=_0x4fa0x15[_0x285e[1833]](_0x4fa0xa);0>_0x4fa0x16&&(_0x4fa0x16=_0x4fa0x14);_0x4fa0x13[_0x4fa0x16]=_0x4fa0x15};for(var _0x4fa0x17=_0x4fa0x16=_0x4fa0x15=null,_0x4fa0x18=null,_0x4fa0x19=null,_0x4fa0x1a=null,_0x4fa0x1b=null,_0x4fa0x1c=null,_0x4fa0x1d=null,_0x4fa0x1e=null,_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x12[_0x285e[67]]-1;_0x4fa0x14++){if(0==_0x4fa0x14){for(var _0x4fa0x1d=_0x4fa0x13[_0x4fa0x14],_0x4fa0x15=_0x4fa0x1d[_0x285e[1831]](_0x4fa0xa),_0x4fa0x16=_0x4fa0x1d[_0x285e[1832]](_0x4fa0xa),_0x4fa0x19=[],_0x4fa0x1a=[],_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x15[_0x285e[67]];_0x4fa0x1f++){_0x4fa0x19[_0x4fa0x1f]=_0x4fa0x15[_0x4fa0x1f][_0x285e[1833]](_0x4fa0xa+1)};for(_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x16[_0x285e[67]];_0x4fa0x1f++){_0x4fa0x1a[_0x4fa0x1f]=_0x4fa0x16[_0x4fa0x1f][_0x285e[1833]](_0x4fa0xa-1)}}else {_0x4fa0x15=_0x4fa0x17,_0x4fa0x16=_0x4fa0x18,_0x4fa0x19=_0x4fa0x1b,_0x4fa0x1a=_0x4fa0x1c,_0x4fa0x1d=_0x4fa0x1e};_0x4fa0x1e=_0x4fa0x13[_0x4fa0x14+1];_0x4fa0x17=_0x4fa0x1e[_0x285e[1831]](_0x4fa0xa);_0x4fa0x18=_0x4fa0x1e[_0x285e[1832]](_0x4fa0xa);_0x4fa0x1b=[];_0x4fa0x1c=[];for(_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x17[_0x285e[67]];_0x4fa0x1f++){_0x4fa0x1b[_0x4fa0x1f]=_0x4fa0x17[_0x4fa0x1f][_0x285e[1833]](_0x4fa0xa+1)};for(_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x18[_0x285e[67]];_0x4fa0x1f++){_0x4fa0x1c[_0x4fa0x1f]=_0x4fa0x18[_0x4fa0x1f][_0x285e[1833]](_0x4fa0xa-1)};for(var _0x4fa0x20=0,_0x4fa0x62=0,_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x19[_0x285e[67]];_0x4fa0x1f++){for(var _0x4fa0x63=0;_0x4fa0x63<_0x4fa0x1b[_0x285e[67]];_0x4fa0x63++){_0x4fa0x19[_0x4fa0x1f]>_0x4fa0x1b[_0x4fa0x63]&&_0x4fa0x20++,_0x4fa0x19[_0x4fa0x1f]<_0x4fa0x1b[_0x4fa0x63]&&_0x4fa0x62++}};for(_0x4fa0x1f=0;_0x4fa0x1f<_0x4fa0x1a[_0x285e[67]];_0x4fa0x1f++){for(_0x4fa0x63=0;_0x4fa0x63<_0x4fa0x1c[_0x285e[67]];_0x4fa0x63++){_0x4fa0x1a[_0x4fa0x1f]>_0x4fa0x1c[_0x4fa0x63]&&_0x4fa0x20++,_0x4fa0x1a[_0x4fa0x1f]<_0x4fa0x1c[_0x4fa0x63]&&_0x4fa0x62++}};if(_0x4fa0x62<_0x4fa0x20||_0x4fa0x62==_0x4fa0x20&&_0x4fa0x9){_0x4fa0x17=_0x4fa0x1d[_0x285e[1833]](_0x4fa0xa),_0x4fa0x1d[_0x285e[1834]](_0x4fa0xa,_0x4fa0x1e[_0x285e[1833]](_0x4fa0xa)),_0x4fa0x1e[_0x285e[1834]](_0x4fa0xa,_0x4fa0x17),_0x4fa0x17=_0x4fa0x15,_0x4fa0x18=_0x4fa0x16,_0x4fa0x1b=_0x4fa0x19,_0x4fa0x1c=_0x4fa0x1a,_0x4fa0x1e=_0x4fa0x1d,_0x4fa0x9||(_0x4fa0x4= !0)}}}}};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1861]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=0==_0x4fa0x2%2;if(_0x4fa0x4){for(var _0x4fa0x5=_0x4fa0x3[_0x285e[1827]]-1;0<=_0x4fa0x5;_0x4fa0x5--){this[_0x285e[1864]](_0x4fa0x5,_0x4fa0x4)}}else {for(_0x4fa0x5=1;_0x4fa0x5<_0x4fa0x3[_0x285e[1827]];_0x4fa0x5++){this[_0x285e[1864]](_0x4fa0x5,_0x4fa0x4)}}};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1864]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=this[_0x285e[1856]][_0x4fa0x2][_0x285e[67]],_0x4fa0x5=[],_0x4fa0x9=[],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x4;_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[1856]][_0x4fa0x2][_0x4fa0xa],_0x4fa0x13= new MedianCellSorter;_0x4fa0x13[_0x285e[246]]=_0x4fa0x12;var _0x4fa0x14;_0x4fa0x14=_0x4fa0x3?_0x4fa0x12[_0x285e[1831]](_0x4fa0x2):_0x4fa0x12[_0x285e[1832]](_0x4fa0x2);var _0x4fa0x15;_0x4fa0x15=_0x4fa0x3?_0x4fa0x2+1:_0x4fa0x2-1;null!=_0x4fa0x14&&0!=_0x4fa0x14[_0x285e[67]]?(_0x4fa0x13[_0x285e[1865]]=this[_0x285e[1865]](_0x4fa0x14,_0x4fa0x15),_0x4fa0x5[_0x285e[207]](_0x4fa0x13)):_0x4fa0x9[_0x4fa0x12[_0x285e[1833]](_0x4fa0x2)]= !0};_0x4fa0x5[_0x285e[470]](MedianCellSorter[_0x285e[202]][_0x285e[469]]);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x4;_0x4fa0xa++){null==_0x4fa0x9[_0x4fa0xa]&&(_0x4fa0x12=_0x4fa0x5[_0x285e[1115]]()[_0x285e[246]],_0x4fa0x12[_0x285e[1834]](_0x4fa0x2,_0x4fa0xa))}};mxMedianHybridCrossingReduction[_0x285e[202]][_0x285e[1865]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=[],_0x4fa0x5=0,_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x2[_0x4fa0x9];_0x4fa0x4[_0x4fa0x5++]=_0x4fa0xa[_0x285e[1833]](_0x4fa0x3)};_0x4fa0x4[_0x285e[470]](function(_0x4fa0x2,_0x4fa0x3){return _0x4fa0x2-_0x4fa0x3});if(1==_0x4fa0x5%2){return _0x4fa0x4[Math[_0x285e[519]](_0x4fa0x5/2)]};if(2==_0x4fa0x5){return (_0x4fa0x4[0]+_0x4fa0x4[1])/2};_0x4fa0x9=_0x4fa0x5/2;_0x4fa0xa=_0x4fa0x4[_0x4fa0x9-1]-_0x4fa0x4[0];_0x4fa0x5=_0x4fa0x4[_0x4fa0x5-1]-_0x4fa0x4[_0x4fa0x9];return (_0x4fa0x4[_0x4fa0x9-1]*_0x4fa0x5+_0x4fa0x4[_0x4fa0x9]*_0x4fa0xa)/(_0x4fa0xa+_0x4fa0x5)};function MedianCellSorter(){}MedianCellSorter[_0x285e[202]][_0x285e[1865]]=0;MedianCellSorter[_0x285e[202]][_0x285e[246]]= !1;MedianCellSorter[_0x285e[202]][_0x285e[469]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2&&null!=_0x4fa0x3?_0x4fa0x3[_0x285e[1865]]>_0x4fa0x2[_0x285e[1865]]?-1:_0x4fa0x3[_0x285e[1865]]<_0x4fa0x2[_0x285e[1865]]?1:0:0};function mxMinimumCycleRemover(_0x4fa0x2){this[_0x285e[1759]]=_0x4fa0x2}mxMinimumCycleRemover[_0x285e[202]]= new mxHierarchicalLayoutStage;mxMinimumCycleRemover[_0x285e[202]][_0x285e[196]]=mxMinimumCycleRemover;mxMinimumCycleRemover[_0x285e[202]][_0x285e[1759]]=null;mxMinimumCycleRemover[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1759]][_0x285e[502]](),_0x4fa0x4={},_0x4fa0x5=mxUtils[_0x285e[238]](_0x4fa0x3[_0x285e[1846]],null,!0),_0x4fa0x9=null;if(null!=_0x4fa0x3[_0x285e[1845]]){var _0x4fa0xa=_0x4fa0x3[_0x285e[1845]],_0x4fa0x9=[];for(_0x4fa0x2=0;_0x4fa0x2<_0x4fa0xa[_0x285e[67]];_0x4fa0x2++){var _0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0xa[_0x4fa0x2]);_0x4fa0x9[_0x4fa0x2]=_0x4fa0x3[_0x285e[1846]][_0x4fa0x12]}};_0x4fa0x3[_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){_0x4fa0x3[_0x285e[1720]](_0x4fa0x2)&&(_0x4fa0x9[_0x285e[1744]](),mxUtils[_0x285e[205]](_0x4fa0x9,_0x4fa0x2[_0x285e[1838]]),_0x4fa0x2[_0x285e[1837]][_0x285e[207]](_0x4fa0x9),mxUtils[_0x285e[205]](_0x4fa0x9,_0x4fa0x3[_0x285e[1837]]),_0x4fa0x3[_0x285e[1838]][_0x285e[207]](_0x4fa0x9));_0x4fa0x2=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]);_0x4fa0x4[_0x4fa0x2]=_0x4fa0x3;delete _0x4fa0x5[_0x4fa0x2]},_0x4fa0x9,!0,null);_0x4fa0x9=null;0<_0x4fa0x5[_0x285e[1866]]&&(_0x4fa0x9=mxUtils[_0x285e[238]](_0x4fa0x5,null,!0));_0x4fa0x2=mxUtils[_0x285e[238]](_0x4fa0x4,null,!0);_0x4fa0x3[_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){_0x4fa0x3[_0x285e[1720]](_0x4fa0x2)&&(_0x4fa0x9[_0x285e[1744]](),mxUtils[_0x285e[205]](_0x4fa0x9,_0x4fa0x2[_0x285e[1838]]),_0x4fa0x3[_0x285e[1838]][_0x285e[207]](_0x4fa0x9),_0x4fa0x2[_0x285e[1837]][_0x285e[207]](_0x4fa0x9),mxUtils[_0x285e[205]](_0x4fa0x9,_0x4fa0x3[_0x285e[1837]]));_0x4fa0x2=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]);_0x4fa0x4[_0x4fa0x2]=_0x4fa0x3;delete _0x4fa0x5[_0x4fa0x2]},_0x4fa0x5,!0,_0x4fa0x2);_0x4fa0xa=this[_0x285e[1759]][_0x285e[1703]]();if(null!=_0x4fa0x9&&0<_0x4fa0x9[_0x285e[67]]){_0x4fa0x3=_0x4fa0x3[_0x285e[1845]];for(_0x4fa0x2=0;_0x4fa0x2<_0x4fa0x9[_0x285e[67]];_0x4fa0x2++){_0x4fa0x12=_0x4fa0x9[_0x4fa0x2][_0x285e[246]],0==_0x4fa0xa[_0x285e[1867]](_0x4fa0x12)[_0x285e[67]]&&_0x4fa0x3[_0x285e[207]](_0x4fa0x12)}}};function mxCoordinateAssignment(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[1759]]=_0x4fa0x2;this[_0x285e[1868]]=_0x4fa0x3;this[_0x285e[1869]]=_0x4fa0x4;this[_0x285e[1870]]=_0x4fa0x5;this[_0x285e[1871]]=_0x4fa0x9;this[_0x285e[1872]]=_0x4fa0xa}var mxHierarchicalEdgeStyle={ORTHOGONAL:1,POLYLINE:2,STRAIGHT:3,CURVE:4};mxCoordinateAssignment[_0x285e[202]]= new mxHierarchicalLayoutStage;mxCoordinateAssignment[_0x285e[202]][_0x285e[196]]=mxCoordinateAssignment;mxCoordinateAssignment[_0x285e[202]][_0x285e[1759]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1868]]=30;mxCoordinateAssignment[_0x285e[202]][_0x285e[1869]]=100;mxCoordinateAssignment[_0x285e[202]][_0x285e[1872]]=10;mxCoordinateAssignment[_0x285e[202]][_0x285e[1795]]=8;mxCoordinateAssignment[_0x285e[202]][_0x285e[1751]]=5;mxCoordinateAssignment[_0x285e[202]][_0x285e[1752]]=2;mxCoordinateAssignment[_0x285e[202]][_0x285e[1753]]=12;mxCoordinateAssignment[_0x285e[202]][_0x285e[1754]]=4;mxCoordinateAssignment[_0x285e[202]][_0x285e[1873]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1870]]=mxConstants[_0x285e[1358]];mxCoordinateAssignment[_0x285e[202]][_0x285e[1871]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1874]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1875]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1876]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1877]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1878]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1879]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1880]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1881]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1882]]= !0;mxCoordinateAssignment[_0x285e[202]][_0x285e[675]]=mxHierarchicalEdgeStyle[_0x285e[1883]];mxCoordinateAssignment[_0x285e[202]][_0x285e[1884]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1885]]=null;mxCoordinateAssignment[_0x285e[202]][_0x285e[1745]]=10;mxCoordinateAssignment[_0x285e[202]][_0x285e[1886]]=function(){var _0x4fa0x2=this[_0x285e[1759]][_0x285e[502]]();mxLog[_0x285e[539]]();mxLog[_0x285e[171]](_0x285e[1887]);for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[1850]][_0x285e[67]];_0x4fa0x3++){mxLog[_0x285e[53]](_0x285e[1888],_0x4fa0x3,_0x285e[1889]);for(var _0x4fa0x4=_0x4fa0x2[_0x285e[1850]][_0x4fa0x3],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){mxLog[_0x285e[53]](_0x4fa0x4[_0x4fa0x5][_0x285e[1833]](_0x4fa0x3),_0x285e[316])};mxLog[_0x285e[171]]()};mxLog[_0x285e[171]](_0x285e[1890])};mxCoordinateAssignment[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){this[_0x285e[1873]]=[];_0x4fa0x2=this[_0x285e[1759]][_0x285e[502]]();this[_0x285e[1875]]=0;this[_0x285e[1891]](this[_0x285e[1759]][_0x285e[1703]](),_0x4fa0x2);this[_0x285e[1882]]&&this[_0x285e[1892]](_0x4fa0x2);var _0x4fa0x3=1E8;if(this[_0x285e[1882]]){for(var _0x4fa0x4=0;_0x4fa0x4<this[_0x285e[1795]];_0x4fa0x4++){0!=_0x4fa0x4&&(this[_0x285e[1893]](_0x4fa0x4,_0x4fa0x2),this[_0x285e[1892]](_0x4fa0x2));if(this[_0x285e[1875]]<_0x4fa0x3){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[1850]][_0x285e[67]];_0x4fa0x5++){for(var _0x4fa0x9=_0x4fa0x2[_0x285e[1850]][_0x4fa0x5],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x9[_0x4fa0xa];_0x4fa0x12[_0x285e[1835]](_0x4fa0x5,_0x4fa0x12[_0x285e[1833]](_0x4fa0x5))}};_0x4fa0x3=this[_0x285e[1875]]}else {for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[1850]][_0x285e[67]];_0x4fa0x5++){_0x4fa0x9=_0x4fa0x2[_0x285e[1850]][_0x4fa0x5];for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){_0x4fa0x12=_0x4fa0x9[_0x4fa0xa],_0x4fa0x12[_0x285e[1834]](_0x4fa0x5,_0x4fa0x12[_0x285e[730]](_0x4fa0x5))}}};this[_0x285e[1894]](this[_0x285e[1759]][_0x285e[1703]](),_0x4fa0x2);this[_0x285e[1875]]=0}};this[_0x285e[1895]](this[_0x285e[1759]][_0x285e[1703]](),_0x4fa0x2)};mxCoordinateAssignment[_0x285e[202]][_0x285e[1892]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=[],_0x4fa0x5=[],_0x4fa0x9=0;_0x4fa0x9<=_0x4fa0x2[_0x285e[1827]];_0x4fa0x9++){_0x4fa0x5[_0x4fa0x9]=_0x4fa0x2[_0x285e[1850]][_0x4fa0x9];for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5[_0x4fa0x9][_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x5[_0x4fa0x9][_0x4fa0xa],_0x4fa0x13= new WeightedCellSorter(_0x4fa0x12,_0x4fa0x9);_0x4fa0x13[_0x285e[1785]]=_0x4fa0xa;_0x4fa0x13[_0x285e[1784]]= !0;_0x4fa0x3[_0x285e[207]](_0x4fa0x13);_0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0x12[_0x285e[1841]]());_0x4fa0x4[_0x4fa0x12]=_0x4fa0x13}};_0x4fa0x2=10*_0x4fa0x3[_0x285e[67]];for(_0x4fa0xa=0;0<_0x4fa0x3[_0x285e[67]]&&_0x4fa0xa<=_0x4fa0x2;){var _0x4fa0x13=_0x4fa0x3[_0x285e[1115]](),_0x4fa0x9=_0x4fa0x13[_0x285e[246]],_0x4fa0x14=_0x4fa0x13[_0x285e[1782]],_0x4fa0x15=parseInt(_0x4fa0x13[_0x285e[1785]]),_0x4fa0x12=_0x4fa0x9[_0x285e[1831]](_0x4fa0x14),_0x4fa0x16=_0x4fa0x9[_0x285e[1832]](_0x4fa0x14),_0x4fa0x17=_0x4fa0x12[_0x285e[67]],_0x4fa0x18=_0x4fa0x16[_0x285e[67]],_0x4fa0x19=this[_0x285e[1896]](_0x4fa0x12,_0x4fa0x14+1),_0x4fa0x1a=this[_0x285e[1896]](_0x4fa0x16,_0x4fa0x14-1),_0x4fa0x1b=_0x4fa0x17+_0x4fa0x18,_0x4fa0x1c=_0x4fa0x9[_0x285e[1833]](_0x4fa0x14),_0x4fa0x1d=_0x4fa0x1c;0<_0x4fa0x1b&&(_0x4fa0x1d=(_0x4fa0x19*_0x4fa0x17+_0x4fa0x1a*_0x4fa0x18)/_0x4fa0x1b);_0x4fa0x17= !1;_0x4fa0x1d<_0x4fa0x1c-1?0==_0x4fa0x15?(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1d),_0x4fa0x17= !0):(_0x4fa0x15=_0x4fa0x5[_0x4fa0x14][_0x4fa0x15-1],_0x4fa0x1c=_0x4fa0x15[_0x285e[1833]](_0x4fa0x14),_0x4fa0x1c=_0x4fa0x1c+_0x4fa0x15[_0x285e[117]]/2+this[_0x285e[1868]]+_0x4fa0x9[_0x285e[117]]/2,_0x4fa0x1c<_0x4fa0x1d?(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1d),_0x4fa0x17= !0):_0x4fa0x1c<_0x4fa0x9[_0x285e[1833]](_0x4fa0x14)-1&&(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1c),_0x4fa0x17= !0)):_0x4fa0x1d>_0x4fa0x1c+1&&(_0x4fa0x15==_0x4fa0x5[_0x4fa0x14][_0x285e[67]]-1?(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1d),_0x4fa0x17= !0):(_0x4fa0x15=_0x4fa0x5[_0x4fa0x14][_0x4fa0x15+1],_0x4fa0x1c=_0x4fa0x15[_0x285e[1833]](_0x4fa0x14),_0x4fa0x1c=_0x4fa0x1c-_0x4fa0x15[_0x285e[117]]/2-this[_0x285e[1868]]-_0x4fa0x9[_0x285e[117]]/2,_0x4fa0x1c>_0x4fa0x1d?(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1d),_0x4fa0x17= !0):_0x4fa0x1c>_0x4fa0x9[_0x285e[1833]](_0x4fa0x14)+1&&(_0x4fa0x9[_0x285e[1834]](_0x4fa0x14,_0x4fa0x1c),_0x4fa0x17= !0)));if(_0x4fa0x17){for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x12[_0x285e[67]];_0x4fa0x9++){_0x4fa0x14=_0x4fa0x12[_0x4fa0x9],_0x4fa0x14=mxCellPath[_0x285e[385]](_0x4fa0x14[_0x285e[1841]]()),_0x4fa0x14=_0x4fa0x4[_0x4fa0x14],null!=_0x4fa0x14&&!1==_0x4fa0x14[_0x285e[1784]]&&(_0x4fa0x14[_0x285e[1784]]= !0,_0x4fa0x3[_0x285e[207]](_0x4fa0x14))};for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x16[_0x285e[67]];_0x4fa0x9++){_0x4fa0x14=_0x4fa0x16[_0x4fa0x9],_0x4fa0x14=mxCellPath[_0x285e[385]](_0x4fa0x14[_0x285e[1841]]()),_0x4fa0x14=_0x4fa0x4[_0x4fa0x14],null!=_0x4fa0x14&&!1==_0x4fa0x14[_0x285e[1784]]&&(_0x4fa0x14[_0x285e[1784]]= !0,_0x4fa0x3[_0x285e[207]](_0x4fa0x14))}};_0x4fa0x13[_0x285e[1784]]= !1;_0x4fa0xa++}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1893]]=function(_0x4fa0x2,_0x4fa0x3){if(0==_0x4fa0x2%2){for(var _0x4fa0x4=_0x4fa0x3[_0x285e[1827]];0<_0x4fa0x4;_0x4fa0x4--){this[_0x285e[1897]](_0x4fa0x4-1,_0x4fa0x3,_0x4fa0x4)}}else {for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3[_0x285e[1827]]-1;_0x4fa0x4++){this[_0x285e[1897]](_0x4fa0x4+1,_0x4fa0x3,_0x4fa0x4)}}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1897]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=_0x4fa0x3[_0x285e[1850]][_0x4fa0x2];for(var _0x4fa0x5=[],_0x4fa0x9=[],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x3[_0x4fa0xa];_0x4fa0x5[_0x4fa0xa]= new WeightedCellSorter;_0x4fa0x5[_0x4fa0xa][_0x285e[246]]=_0x4fa0x12;_0x4fa0x5[_0x4fa0xa][_0x285e[1785]]=_0x4fa0xa;var _0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x12[_0x285e[1841]]());_0x4fa0x9[_0x4fa0x13]=_0x4fa0x5[_0x4fa0xa];var _0x4fa0x14=null,_0x4fa0x14=_0x4fa0x4<_0x4fa0x2?_0x4fa0x12[_0x285e[1832]](_0x4fa0x2):_0x4fa0x12[_0x285e[1831]](_0x4fa0x2);_0x4fa0x5[_0x4fa0xa][_0x285e[1782]]=this[_0x285e[1898]](_0x4fa0x12,_0x4fa0x14)};_0x4fa0x5[_0x285e[470]](WeightedCellSorter[_0x285e[202]][_0x285e[469]]);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5[_0x285e[67]];_0x4fa0xa++){_0x4fa0x13=0;_0x4fa0x12=_0x4fa0x5[_0x4fa0xa][_0x285e[246]];_0x4fa0x13=0;_0x4fa0x14=_0x4fa0x4<_0x4fa0x2?_0x4fa0x12[_0x285e[1832]](_0x4fa0x2)[_0x285e[1853]]():_0x4fa0x12[_0x285e[1831]](_0x4fa0x2)[_0x285e[1853]]();null!=_0x4fa0x14&&(_0x4fa0x13=_0x4fa0x14[_0x285e[67]],_0x4fa0x13=0<_0x4fa0x13?this[_0x285e[1896]](_0x4fa0x14,_0x4fa0x4):_0x4fa0x12[_0x285e[1833]](_0x4fa0x2));for(var _0x4fa0x15=0,_0x4fa0x14=-1E8,_0x4fa0x16=_0x4fa0x5[_0x4fa0xa][_0x285e[1785]]-1;0<=_0x4fa0x16;){var _0x4fa0x17=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x4fa0x16][_0x285e[1841]]()),_0x4fa0x17=_0x4fa0x9[_0x4fa0x17];if(null!=_0x4fa0x17){var _0x4fa0x18=_0x4fa0x17[_0x285e[246]];_0x4fa0x17[_0x285e[1784]]?(_0x4fa0x14=_0x4fa0x18[_0x285e[1833]](_0x4fa0x2)+_0x4fa0x18[_0x285e[117]]/2+this[_0x285e[1868]]+_0x4fa0x15+_0x4fa0x12[_0x285e[117]]/2,_0x4fa0x16= -1):(_0x4fa0x15+=_0x4fa0x18[_0x285e[117]]+this[_0x285e[1868]],_0x4fa0x16--)}};_0x4fa0x15=0;_0x4fa0x18=1E8;for(_0x4fa0x16=_0x4fa0x5[_0x4fa0xa][_0x285e[1785]]+1;_0x4fa0x16<_0x4fa0x5[_0x285e[67]];){if(_0x4fa0x17=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x4fa0x16][_0x285e[1841]]()),_0x4fa0x17=_0x4fa0x9[_0x4fa0x17],null!=_0x4fa0x17){var _0x4fa0x19=_0x4fa0x17[_0x285e[246]];_0x4fa0x17[_0x285e[1784]]?(_0x4fa0x18=_0x4fa0x19[_0x285e[1833]](_0x4fa0x2)-_0x4fa0x19[_0x285e[117]]/2-this[_0x285e[1868]]-_0x4fa0x15-_0x4fa0x12[_0x285e[117]]/2,_0x4fa0x16=_0x4fa0x5[_0x285e[67]]):(_0x4fa0x15+=_0x4fa0x19[_0x285e[117]]+this[_0x285e[1868]],_0x4fa0x16++)}};_0x4fa0x13>=_0x4fa0x14&&_0x4fa0x13<=_0x4fa0x18?_0x4fa0x12[_0x285e[1834]](_0x4fa0x2,_0x4fa0x13):_0x4fa0x13<_0x4fa0x14?(_0x4fa0x12[_0x285e[1834]](_0x4fa0x2,_0x4fa0x14),this[_0x285e[1875]]+=_0x4fa0x14-_0x4fa0x13):_0x4fa0x13>_0x4fa0x18&&(_0x4fa0x12[_0x285e[1834]](_0x4fa0x2,_0x4fa0x18),this[_0x285e[1875]]+=_0x4fa0x13-_0x4fa0x18);_0x4fa0x5[_0x4fa0xa][_0x285e[1784]]= !0}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1898]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=0,_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=_0x4fa0x3[_0x4fa0x5];_0x4fa0x2[_0x285e[1193]]()&&_0x4fa0x9[_0x285e[1193]]()?_0x4fa0x4++:_0x4fa0x4=_0x4fa0x2[_0x285e[250]]()&&_0x4fa0x9[_0x285e[250]]()?_0x4fa0x4+8:_0x4fa0x4+2};return _0x4fa0x4};mxCoordinateAssignment[_0x285e[202]][_0x285e[1896]]=function(_0x4fa0x2,_0x4fa0x3){if(0==_0x4fa0x2[_0x285e[67]]){return 0};for(var _0x4fa0x4=[],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){_0x4fa0x4[_0x4fa0x5]=_0x4fa0x2[_0x4fa0x5][_0x285e[1833]](_0x4fa0x3)};_0x4fa0x4[_0x285e[470]](function(_0x4fa0x2,_0x4fa0x3){return _0x4fa0x2-_0x4fa0x3});if(1==_0x4fa0x2[_0x285e[67]]%2){return _0x4fa0x4[Math[_0x285e[519]](_0x4fa0x2[_0x285e[67]]/2)]};_0x4fa0x5=_0x4fa0x2[_0x285e[67]]/2;return (_0x4fa0x4[_0x4fa0x5-1]+_0x4fa0x4[_0x4fa0x5])/2};mxCoordinateAssignment[_0x285e[202]][_0x285e[1891]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1899]](_0x4fa0x2,_0x4fa0x3);for(var _0x4fa0x4=this[_0x285e[1876]];0<=_0x4fa0x4;_0x4fa0x4--){_0x4fa0x4<_0x4fa0x3[_0x285e[1827]]&&this[_0x285e[1900]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x3)};for(_0x4fa0x4=this[_0x285e[1876]]+1;_0x4fa0x4<=_0x4fa0x3[_0x285e[1827]];_0x4fa0x4++){0<_0x4fa0x4&&this[_0x285e[1900]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x3)}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1900]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=_0x4fa0x4[_0x285e[1850]][_0x4fa0x2];_0x4fa0x4=0;for(var _0x4fa0x5=this[_0x285e[1871]]+(this[_0x285e[1879]]-this[_0x285e[1880]][_0x4fa0x2])/2,_0x4fa0x9=!1,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x3[_0x4fa0xa];if(_0x4fa0x12[_0x285e[1193]]()){var _0x4fa0x13=this[_0x285e[1759]][_0x285e[1726]](_0x4fa0x12[_0x285e[246]]);null!=_0x4fa0x13?this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?(_0x4fa0x12[_0x285e[117]]=_0x4fa0x13[_0x285e[117]],_0x4fa0x12[_0x285e[119]]=_0x4fa0x13[_0x285e[119]]):(_0x4fa0x12[_0x285e[117]]=_0x4fa0x13[_0x285e[119]],_0x4fa0x12[_0x285e[119]]=_0x4fa0x13[_0x285e[117]]):_0x4fa0x9= !0;_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x4,_0x4fa0x12[_0x285e[119]])}else {_0x4fa0x12[_0x285e[250]]()&&(_0x4fa0x13=1,null!=_0x4fa0x12[_0x285e[1842]]?_0x4fa0x13=_0x4fa0x12[_0x285e[1842]][_0x285e[67]]:mxLog[_0x285e[283]](_0x285e[1901]),_0x4fa0x12[_0x285e[117]]=(_0x4fa0x13-1)*this[_0x285e[1872]])};_0x4fa0x5+=_0x4fa0x12[_0x285e[117]]/2;_0x4fa0x12[_0x285e[1835]](_0x4fa0x2,_0x4fa0x5);_0x4fa0x12[_0x285e[1834]](_0x4fa0x2,_0x4fa0x5);_0x4fa0x5+=_0x4fa0x12[_0x285e[117]]/2;_0x4fa0x5+=this[_0x285e[1868]]};!0==_0x4fa0x9&&mxLog[_0x285e[283]](_0x285e[1902])};mxCoordinateAssignment[_0x285e[202]][_0x285e[1899]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=-this[_0x285e[1869]],_0x4fa0x5=0;this[_0x285e[1880]]=[];this[_0x285e[1881]]=[];for(var _0x4fa0x9=_0x4fa0x3[_0x285e[1827]];0<=_0x4fa0x9;_0x4fa0x9--){for(var _0x4fa0xa=0,_0x4fa0x12=_0x4fa0x3[_0x285e[1850]][_0x4fa0x9],_0x4fa0x13=this[_0x285e[1871]],_0x4fa0x14=!1,_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x12[_0x285e[67]];_0x4fa0x15++){var _0x4fa0x16=_0x4fa0x12[_0x4fa0x15];if(_0x4fa0x16[_0x285e[1193]]()){var _0x4fa0x17=this[_0x285e[1759]][_0x285e[1726]](_0x4fa0x16[_0x285e[246]]);null!=_0x4fa0x17?this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?(_0x4fa0x16[_0x285e[117]]=_0x4fa0x17[_0x285e[117]],_0x4fa0x16[_0x285e[119]]=_0x4fa0x17[_0x285e[119]]):(_0x4fa0x16[_0x285e[117]]=_0x4fa0x17[_0x285e[119]],_0x4fa0x16[_0x285e[119]]=_0x4fa0x17[_0x285e[117]]):_0x4fa0x14= !0;_0x4fa0xa=Math[_0x285e[160]](_0x4fa0xa,_0x4fa0x16[_0x285e[119]])}else {_0x4fa0x16[_0x285e[250]]()&&(_0x4fa0x17=1,null!=_0x4fa0x16[_0x285e[1842]]?_0x4fa0x17=_0x4fa0x16[_0x285e[1842]][_0x285e[67]]:mxLog[_0x285e[283]](_0x285e[1901]),_0x4fa0x16[_0x285e[117]]=(_0x4fa0x17-1)*this[_0x285e[1872]])};_0x4fa0x13+=_0x4fa0x16[_0x285e[117]]/2;_0x4fa0x16[_0x285e[1835]](_0x4fa0x9,_0x4fa0x13);_0x4fa0x16[_0x285e[1834]](_0x4fa0x9,_0x4fa0x13);_0x4fa0x13+=_0x4fa0x16[_0x285e[117]]/2;_0x4fa0x13+=this[_0x285e[1868]];_0x4fa0x13>this[_0x285e[1879]]&&(this[_0x285e[1879]]=_0x4fa0x13,this[_0x285e[1876]]=_0x4fa0x9);this[_0x285e[1880]][_0x4fa0x9]=_0x4fa0x13};!0==_0x4fa0x14&&mxLog[_0x285e[283]](_0x285e[1902]);this[_0x285e[1881]][_0x4fa0x9]=_0x4fa0x4;_0x4fa0x13=_0x4fa0xa/2+_0x4fa0x5/2+this[_0x285e[1869]];_0x4fa0x5=_0x4fa0xa;_0x4fa0x4=this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1359]]?_0x4fa0x4+_0x4fa0x13:_0x4fa0x4-_0x4fa0x13;for(_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x12[_0x285e[67]];_0x4fa0x15++){_0x4fa0x12[_0x4fa0x15][_0x285e[1836]](_0x4fa0x9,_0x4fa0x4)}}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1894]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x3[_0x285e[1847]],_0x4fa0x5;for(_0x4fa0x5 in _0x4fa0x4){var _0x4fa0x9=_0x4fa0x4[_0x4fa0x5];if(!(1>_0x4fa0x9[_0x285e[1827]]-_0x4fa0x9[_0x285e[1828]]-1)){for(var _0x4fa0xa=_0x4fa0x9[_0x285e[1833]](_0x4fa0x9[_0x285e[1828]]+1),_0x4fa0x12=!0,_0x4fa0x13=0,_0x4fa0x14=_0x4fa0x9[_0x285e[1828]]+2;_0x4fa0x14<_0x4fa0x9[_0x285e[1827]];_0x4fa0x14++){var _0x4fa0x15=_0x4fa0x9[_0x285e[1833]](_0x4fa0x14);_0x4fa0xa!=_0x4fa0x15?(_0x4fa0x12= !1,_0x4fa0xa=_0x4fa0x15):_0x4fa0x13++};if(!_0x4fa0x12){for(var _0x4fa0x12=_0x4fa0xa=0,_0x4fa0x15=[],_0x4fa0x16=[],_0x4fa0x17=_0x4fa0x9[_0x285e[1833]](_0x4fa0x9[_0x285e[1828]]+1),_0x4fa0x14=_0x4fa0x9[_0x285e[1828]]+1;_0x4fa0x14<_0x4fa0x9[_0x285e[1827]]-1;_0x4fa0x14++){var _0x4fa0x18=_0x4fa0x9[_0x285e[730]](_0x4fa0x14+1);_0x4fa0x17==_0x4fa0x18?(_0x4fa0x15[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-1]=_0x4fa0x17,_0x4fa0xa++):this[_0x285e[1903]](_0x4fa0x3,_0x4fa0x9,_0x4fa0x14+1,_0x4fa0x17)?(_0x4fa0x15[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-1]=_0x4fa0x17,_0x4fa0xa++):_0x4fa0x17=_0x4fa0x15[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-1]=_0x4fa0x18};_0x4fa0x17=_0x4fa0x9[_0x285e[730]](_0x4fa0x14);for(_0x4fa0x14=_0x4fa0x9[_0x285e[1827]]-1;_0x4fa0x14>_0x4fa0x9[_0x285e[1828]]+1;_0x4fa0x14--){_0x4fa0x18=_0x4fa0x9[_0x285e[730]](_0x4fa0x14-1),_0x4fa0x17==_0x4fa0x18?(_0x4fa0x16[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-2]=_0x4fa0x17,_0x4fa0x12++):this[_0x285e[1903]](_0x4fa0x3,_0x4fa0x9,_0x4fa0x14-1,_0x4fa0x17)?(_0x4fa0x16[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-2]=_0x4fa0x17,_0x4fa0x12++):(_0x4fa0x16[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-2]=_0x4fa0x9[_0x285e[730]](_0x4fa0x14-1),_0x4fa0x17=_0x4fa0x18)};if(_0x4fa0x12>_0x4fa0x13||_0x4fa0xa>_0x4fa0x13){if(_0x4fa0x12>=_0x4fa0xa){for(_0x4fa0x14=_0x4fa0x9[_0x285e[1827]]-2;_0x4fa0x14>_0x4fa0x9[_0x285e[1828]];_0x4fa0x14--){_0x4fa0x9[_0x285e[1835]](_0x4fa0x14,_0x4fa0x16[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-1])}}else {if(_0x4fa0xa>_0x4fa0x12){for(_0x4fa0x14=_0x4fa0x9[_0x285e[1828]]+2;_0x4fa0x14<_0x4fa0x9[_0x285e[1827]];_0x4fa0x14++){_0x4fa0x9[_0x285e[1835]](_0x4fa0x14,_0x4fa0x15[_0x4fa0x14-_0x4fa0x9[_0x285e[1828]]-2])}}}}}}}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1903]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2=_0x4fa0x2[_0x285e[1850]][_0x4fa0x4];for(var _0x4fa0x9=-1,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){if(_0x4fa0x3==_0x4fa0x2[_0x4fa0xa]){_0x4fa0x9=_0x4fa0xa;break}};if(0>_0x4fa0x9){return !1};_0x4fa0xa=_0x4fa0x3[_0x285e[1833]](_0x4fa0x4);if(_0x4fa0x5<_0x4fa0xa){if(0==_0x4fa0x9){return !0};_0x4fa0x2=_0x4fa0x2[_0x4fa0x9-1];_0x4fa0x4=_0x4fa0x2[_0x285e[1833]](_0x4fa0x4);_0x4fa0x4=_0x4fa0x4+_0x4fa0x2[_0x285e[117]]/2+this[_0x285e[1868]]+_0x4fa0x3[_0x285e[117]]/2;if(!(_0x4fa0x4<=_0x4fa0x5)){return !1}}else {if(_0x4fa0x5>_0x4fa0xa){if(_0x4fa0x9==_0x4fa0x2[_0x285e[67]]-1){return !0};_0x4fa0x2=_0x4fa0x2[_0x4fa0x9+1];_0x4fa0x4=_0x4fa0x2[_0x285e[1833]](_0x4fa0x4);_0x4fa0x4=_0x4fa0x4-_0x4fa0x2[_0x285e[117]]/2-this[_0x285e[1868]]-_0x4fa0x3[_0x285e[117]]/2;if(!(_0x4fa0x4>=_0x4fa0x5)){return !1}}};return !0};mxCoordinateAssignment[_0x285e[202]][_0x285e[1895]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1877]]=[];this[_0x285e[1878]]=[];for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3[_0x285e[1850]][_0x285e[67]];_0x4fa0x4++){this[_0x285e[1877]][_0x4fa0x4]=Number[_0x285e[1904]],this[_0x285e[1878]][_0x4fa0x4]=0};_0x4fa0x4=null;this[_0x285e[1759]][_0x285e[1735]]&&(_0x4fa0x4={});var _0x4fa0x5=_0x4fa0x3[_0x285e[1847]],_0x4fa0x9=_0x4fa0x3[_0x285e[1846]],_0x4fa0xa;for(_0x4fa0xa in _0x4fa0x9){var _0x4fa0x12=_0x4fa0x9[_0x4fa0xa];this[_0x285e[1725]](_0x4fa0x12);if(this[_0x285e[1759]][_0x285e[1735]]){var _0x4fa0x12=_0x4fa0x2[_0x285e[251]][_0x285e[1197]](_0x4fa0x12[_0x285e[246]]),_0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x12);null==_0x4fa0x4[_0x4fa0x13]&&(_0x4fa0x4[_0x4fa0x13]=_0x4fa0x12)}};this[_0x285e[1759]][_0x285e[1735]]&&null!=_0x4fa0x4&&this[_0x285e[1763]](_0x4fa0x4);(this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1905]]||this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1883]]||this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1906]])&&this[_0x285e[1764]](_0x4fa0x3);for(_0x4fa0xa in _0x4fa0x5){this[_0x285e[1907]](_0x4fa0x5[_0x4fa0xa])}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1763]]=function(_0x4fa0x2){var _0x4fa0x3=[],_0x4fa0x4;for(_0x4fa0x4 in _0x4fa0x2){_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])};this[_0x285e[1759]][_0x285e[1727]](mxUtils[_0x285e[1779]](_0x4fa0x3,!0),this[_0x285e[1745]])};mxCoordinateAssignment[_0x285e[202]][_0x285e[1764]]=function(_0x4fa0x2){for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[1850]][_0x285e[67]];_0x4fa0x3++){for(var _0x4fa0x4=_0x4fa0x2[_0x285e[1850]][_0x4fa0x3],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=_0x4fa0x4[_0x4fa0x5];if(_0x4fa0x9[_0x285e[1193]]()){for(var _0x4fa0xa=_0x4fa0x9[_0x285e[1832]](_0x4fa0x3),_0x4fa0x12=_0x4fa0x3-1,_0x4fa0x13=0;2>_0x4fa0x13;_0x4fa0x13++){if(-1<_0x4fa0x12&&_0x4fa0x12<_0x4fa0x2[_0x285e[1850]][_0x285e[67]]&&null!=_0x4fa0xa&&0<_0x4fa0xa[_0x285e[67]]){for(var _0x4fa0x14=[],_0x4fa0x15=0;_0x4fa0x15<_0x4fa0xa[_0x285e[67]];_0x4fa0x15++){var _0x4fa0x16= new WeightedCellSorter(_0x4fa0xa[_0x4fa0x15],_0x4fa0xa[_0x4fa0x15][_0x285e[730]](_0x4fa0x12));_0x4fa0x14[_0x285e[207]](_0x4fa0x16)};_0x4fa0x14[_0x285e[470]](WeightedCellSorter[_0x285e[202]][_0x285e[469]]);for(var _0x4fa0x16=_0x4fa0x9[_0x285e[235]][0]-_0x4fa0x9[_0x285e[117]]/2,_0x4fa0x17=_0x4fa0x16+_0x4fa0x9[_0x285e[117]],_0x4fa0x18=_0x4fa0xa=0,_0x4fa0x12=[],_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x14[_0x285e[67]];_0x4fa0x15++){var _0x4fa0x19=_0x4fa0x14[_0x4fa0x15][_0x285e[246]],_0x4fa0x1a;if(_0x4fa0x19[_0x285e[1193]]()){_0x4fa0x1a=0==_0x4fa0x13?_0x4fa0x9[_0x285e[1838]]:_0x4fa0x9[_0x285e[1837]];for(var _0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x1a[_0x285e[67]];_0x4fa0x1b++){if(_0x4fa0x1a[_0x4fa0x1b][_0x285e[1097]]==_0x4fa0x19||_0x4fa0x1a[_0x4fa0x1b][_0x285e[772]]==_0x4fa0x19){_0x4fa0xa+=_0x4fa0x1a[_0x4fa0x1b][_0x285e[1842]][_0x285e[67]],_0x4fa0x18++,_0x4fa0x12[_0x285e[207]](_0x4fa0x1a[_0x4fa0x1b])}}}else {_0x4fa0xa+=_0x4fa0x19[_0x285e[1842]][_0x285e[67]],_0x4fa0x18++,_0x4fa0x12[_0x285e[207]](_0x4fa0x19)}};_0x4fa0x9[_0x285e[117]]>(_0x4fa0xa+1)*this[_0x285e[1751]]+2*this[_0x285e[1751]]&&(_0x4fa0x16+=this[_0x285e[1751]],_0x4fa0x17-=this[_0x285e[1751]]);_0x4fa0x14=(_0x4fa0x17-_0x4fa0x16)/_0x4fa0xa;_0x4fa0x16+=_0x4fa0x14/2;_0x4fa0x17=this[_0x285e[1753]]-this[_0x285e[1752]];for(_0x4fa0x15=_0x4fa0x18=0;_0x4fa0x15<_0x4fa0x12[_0x285e[67]];_0x4fa0x15++){_0x4fa0x19=_0x4fa0x12[_0x4fa0x15][_0x285e[1842]][_0x285e[67]];_0x4fa0x1b=mxCellPath[_0x285e[385]](_0x4fa0x12[_0x4fa0x15][_0x285e[1842]][0]);_0x4fa0x1a=this[_0x285e[1873]][_0x4fa0x1b];null==_0x4fa0x1a&&(_0x4fa0x1a=[],this[_0x285e[1873]][_0x4fa0x1b]=_0x4fa0x1a);_0x4fa0x15<_0x4fa0xa/2?_0x4fa0x17+=this[_0x285e[1752]]:_0x4fa0x15>_0x4fa0xa/2&&(_0x4fa0x17-=this[_0x285e[1752]]);for(_0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x19;_0x4fa0x1b++){_0x4fa0x1a[4*_0x4fa0x1b+2*_0x4fa0x13]=_0x4fa0x16,_0x4fa0x16+=_0x4fa0x14,_0x4fa0x1a[4*_0x4fa0x1b+2*_0x4fa0x13+1]=_0x4fa0x17};_0x4fa0x18=Math[_0x285e[160]](_0x4fa0x18,_0x4fa0x17)}};_0x4fa0xa=_0x4fa0x9[_0x285e[1831]](_0x4fa0x3);_0x4fa0x12=_0x4fa0x3+1}}}}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1907]]=function(_0x4fa0x2){var _0x4fa0x3=0;if(101207!=_0x4fa0x2[_0x285e[1826]][0]){var _0x4fa0x4=_0x4fa0x2[_0x285e[1827]],_0x4fa0x5=_0x4fa0x2[_0x285e[1828]];_0x4fa0x4==_0x4fa0x5&&(_0x4fa0x4=_0x4fa0x2[_0x285e[1097]][_0x285e[1827]],_0x4fa0x5=_0x4fa0x2[_0x285e[772]][_0x285e[1828]]);for(var _0x4fa0x9=0,_0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x285e[1842]][0]),_0x4fa0xa=this[_0x285e[1873]][_0x4fa0xa],_0x4fa0x12=_0x4fa0x2[_0x285e[1843]]?_0x4fa0x2[_0x285e[772]][_0x285e[246]]:_0x4fa0x2[_0x285e[1097]][_0x285e[246]],_0x4fa0x13=this[_0x285e[1759]][_0x285e[1179]],_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x2[_0x285e[1842]][_0x285e[67]];_0x4fa0x14++){var _0x4fa0x15=_0x4fa0x2[_0x285e[1842]][_0x4fa0x14],_0x4fa0x16=this[_0x285e[1759]][_0x285e[1710]](_0x4fa0x15,!0),_0x4fa0x17=_0x4fa0x13[_0x285e[251]][_0x285e[1709]](_0x4fa0x15,!0),_0x4fa0x18=[],_0x4fa0x19=_0x4fa0x2[_0x285e[1843]];_0x4fa0x16!=_0x4fa0x12&&(_0x4fa0x19= !_0x4fa0x19);if(null!=_0x4fa0xa){var _0x4fa0x1a=_0x4fa0x19?2:0,_0x4fa0x1b=_0x4fa0x19?this[_0x285e[1877]][_0x4fa0x5]:this[_0x285e[1878]][_0x4fa0x4],_0x4fa0x1c=_0x4fa0xa[4*_0x4fa0x9+1+_0x4fa0x1a];_0x4fa0x19&&(_0x4fa0x1c= -_0x4fa0x1c);_0x4fa0x1b+=_0x4fa0x1c;_0x4fa0x1a=_0x4fa0xa[4*_0x4fa0x9+_0x4fa0x1a];_0x4fa0x17=_0x4fa0x13[_0x285e[251]][_0x285e[1709]](_0x4fa0x15,!0);this[_0x285e[1759]][_0x285e[1908]](_0x4fa0x17)&&_0x4fa0x13[_0x285e[251]][_0x285e[1197]](_0x4fa0x17)==_0x4fa0x16&&(_0x4fa0x1a=_0x4fa0x13[_0x285e[441]][_0x285e[248]](_0x4fa0x17),_0x4fa0x1a=null!=_0x4fa0x1a?_0x4fa0x1a[_0x285e[235]]:_0x4fa0x16[_0x285e[256]][_0x285e[235]]+_0x4fa0x2[_0x285e[1097]][_0x285e[117]]*_0x4fa0x17[_0x285e[256]][_0x285e[235]]);this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?(_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1a,_0x4fa0x1b)),this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1906]]&&_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1a,_0x4fa0x1b+_0x4fa0x1c))):(_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1b,_0x4fa0x1a)),this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1906]]&&_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1b+_0x4fa0x1c,_0x4fa0x1a)))};_0x4fa0x1a=_0x4fa0x2[_0x285e[235]][_0x285e[67]]-1;_0x4fa0x1b=_0x4fa0x1c= -1;_0x4fa0x16=_0x4fa0x2[_0x285e[1827]]-1;_0x4fa0x19&&(_0x4fa0x1a=0,_0x4fa0x1c=_0x4fa0x2[_0x285e[235]][_0x285e[67]],_0x4fa0x1b=1,_0x4fa0x16=_0x4fa0x2[_0x285e[1828]]+1);for(;_0x4fa0x2[_0x285e[1827]]!=_0x4fa0x2[_0x285e[1828]]&&_0x4fa0x1a!=_0x4fa0x1c;_0x4fa0x1a+=_0x4fa0x1b){var _0x4fa0x17=_0x4fa0x2[_0x285e[235]][_0x4fa0x1a]+_0x4fa0x3,_0x4fa0x1d=(this[_0x285e[1877]][_0x4fa0x16]+this[_0x285e[1878]][_0x4fa0x16+1])/2,_0x4fa0x1e=(this[_0x285e[1877]][_0x4fa0x16-1]+this[_0x285e[1878]][_0x4fa0x16])/2;if(_0x4fa0x19){var _0x4fa0x1f=_0x4fa0x1d,_0x4fa0x1d=_0x4fa0x1e,_0x4fa0x1e=_0x4fa0x1f};this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?(_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x17,_0x4fa0x1d)),_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x17,_0x4fa0x1e))):(_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1d,_0x4fa0x17)),_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1e,_0x4fa0x17)));this[_0x285e[1874]]=Math[_0x285e[160]](this[_0x285e[1874]],_0x4fa0x17);_0x4fa0x16+=_0x4fa0x1b};null!=_0x4fa0xa&&(_0x4fa0x1a=_0x4fa0x19?2:0,_0x4fa0x1b=_0x4fa0x19?this[_0x285e[1878]][_0x4fa0x4]:this[_0x285e[1877]][_0x4fa0x5],_0x4fa0x1c=_0x4fa0xa[4*_0x4fa0x9+3-_0x4fa0x1a],_0x4fa0x19&&(_0x4fa0x1c= -_0x4fa0x1c),_0x4fa0x1b-=_0x4fa0x1c,_0x4fa0x1a=_0x4fa0xa[4*_0x4fa0x9+2-_0x4fa0x1a],_0x4fa0x19=_0x4fa0x13[_0x285e[251]][_0x285e[1709]](_0x4fa0x15,!1),_0x4fa0x16=this[_0x285e[1759]][_0x285e[1710]](_0x4fa0x15,!1),this[_0x285e[1759]][_0x285e[1908]](_0x4fa0x19)&&_0x4fa0x13[_0x285e[251]][_0x285e[1197]](_0x4fa0x19)==_0x4fa0x16&&(_0x4fa0x1a=_0x4fa0x13[_0x285e[441]][_0x285e[248]](_0x4fa0x19),_0x4fa0x1a=null!=_0x4fa0x1a?_0x4fa0x1a[_0x285e[235]]:_0x4fa0x16[_0x285e[256]][_0x285e[235]]+_0x4fa0x2[_0x285e[772]][_0x285e[117]]*_0x4fa0x19[_0x285e[256]][_0x285e[235]]),this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?(this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1906]]&&_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1a,_0x4fa0x1b-_0x4fa0x1c)),_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1a,_0x4fa0x1b))):(this[_0x285e[675]]==mxHierarchicalEdgeStyle[_0x285e[1906]]&&_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1b-_0x4fa0x1c,_0x4fa0x1a)),_0x4fa0x18[_0x285e[207]]( new mxPoint(_0x4fa0x1b,_0x4fa0x1a))));_0x4fa0x2[_0x285e[1843]]&&this[_0x285e[1909]](_0x4fa0x2,_0x4fa0x15);this[_0x285e[1759]][_0x285e[1722]](_0x4fa0x15,_0x4fa0x18);_0x4fa0x3=0==_0x4fa0x3?this[_0x285e[1872]]:0<_0x4fa0x3?-_0x4fa0x3:-_0x4fa0x3+this[_0x285e[1872]];_0x4fa0x9++};_0x4fa0x2[_0x285e[1826]][0]=101207}};mxCoordinateAssignment[_0x285e[202]][_0x285e[1725]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[246]],_0x4fa0x4=_0x4fa0x2[_0x285e[235]][0]-_0x4fa0x2[_0x285e[117]]/2,_0x4fa0x5=_0x4fa0x2[_0x285e[236]][0]-_0x4fa0x2[_0x285e[119]]/2;this[_0x285e[1877]][_0x4fa0x2[_0x285e[1828]]]=Math[_0x285e[243]](this[_0x285e[1877]][_0x4fa0x2[_0x285e[1828]]],_0x4fa0x5);this[_0x285e[1878]][_0x4fa0x2[_0x285e[1828]]]=Math[_0x285e[160]](this[_0x285e[1878]][_0x4fa0x2[_0x285e[1828]]],_0x4fa0x5+_0x4fa0x2[_0x285e[119]]);this[_0x285e[1870]]==mxConstants[_0x285e[1358]]||this[_0x285e[1870]]==mxConstants[_0x285e[1354]]?this[_0x285e[1759]][_0x285e[1725]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5):this[_0x285e[1759]][_0x285e[1725]](_0x4fa0x3,_0x4fa0x5,_0x4fa0x4);this[_0x285e[1874]]=Math[_0x285e[160]](this[_0x285e[1874]],_0x4fa0x4+_0x4fa0x2[_0x285e[117]])};mxCoordinateAssignment[_0x285e[202]][_0x285e[1909]]=function(_0x4fa0x2,_0x4fa0x3){};function WeightedCellSorter(_0x4fa0x2,_0x4fa0x3){this[_0x285e[246]]=_0x4fa0x2;this[_0x285e[1782]]=_0x4fa0x3}WeightedCellSorter[_0x285e[202]][_0x285e[1782]]=0;WeightedCellSorter[_0x285e[202]][_0x285e[1783]]= !1;WeightedCellSorter[_0x285e[202]][_0x285e[1784]]= !1;WeightedCellSorter[_0x285e[202]][_0x285e[1785]]=null;WeightedCellSorter[_0x285e[202]][_0x285e[246]]=null;WeightedCellSorter[_0x285e[202]][_0x285e[469]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2&&null!=_0x4fa0x3?_0x4fa0x3[_0x285e[1782]]>_0x4fa0x2[_0x285e[1782]]?-1:_0x4fa0x3[_0x285e[1782]]<_0x4fa0x2[_0x285e[1782]]?1:_0x4fa0x3[_0x285e[1783]]?-1:1:0};function mxHierarchicalLayout(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxGraphLayout[_0x285e[239]](this,_0x4fa0x2);this[_0x285e[1870]]=null!=_0x4fa0x3?_0x4fa0x3:mxConstants[_0x285e[1358]];this[_0x285e[1910]]=null!=_0x4fa0x4?_0x4fa0x4:!0}mxHierarchicalLayout[_0x285e[202]]= new mxGraphLayout;mxHierarchicalLayout[_0x285e[202]][_0x285e[196]]=mxHierarchicalLayout;mxHierarchicalLayout[_0x285e[202]][_0x285e[1845]]=null;mxHierarchicalLayout[_0x285e[202]][_0x285e[1735]]= !1;mxHierarchicalLayout[_0x285e[202]][_0x285e[1911]]= !1;mxHierarchicalLayout[_0x285e[202]][_0x285e[1912]]=0;mxHierarchicalLayout[_0x285e[202]][_0x285e[1868]]=30;mxHierarchicalLayout[_0x285e[202]][_0x285e[1869]]=100;mxHierarchicalLayout[_0x285e[202]][_0x285e[1913]]=60;mxHierarchicalLayout[_0x285e[202]][_0x285e[1872]]=10;mxHierarchicalLayout[_0x285e[202]][_0x285e[1870]]=mxConstants[_0x285e[1358]];mxHierarchicalLayout[_0x285e[202]][_0x285e[1882]]= !0;mxHierarchicalLayout[_0x285e[202]][_0x285e[1844]]= !0;mxHierarchicalLayout[_0x285e[202]][_0x285e[1787]]= !0;mxHierarchicalLayout[_0x285e[202]][_0x285e[1914]]= !0;mxHierarchicalLayout[_0x285e[202]][_0x285e[251]]=null;mxHierarchicalLayout[_0x285e[202]][_0x285e[1915]]=null;mxHierarchicalLayout[_0x285e[202]][_0x285e[502]]=function(){return this[_0x285e[251]]};mxHierarchicalLayout[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1101]]=_0x4fa0x2;var _0x4fa0x4=this[_0x285e[1179]][_0x285e[251]];this[_0x285e[1915]]={};if(!(null==_0x4fa0x3&&null==_0x4fa0x2)){if(null!=_0x4fa0x3&&null!=_0x4fa0x2){for(var _0x4fa0x5=[],_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){_0x4fa0x4[_0x285e[1720]](_0x4fa0x2,_0x4fa0x3[_0x4fa0x9])&&_0x4fa0x5[_0x285e[207]](_0x4fa0x3[_0x4fa0x9])};this[_0x285e[1845]]=_0x4fa0x5}else {this[_0x285e[1845]]=_0x4fa0x3};_0x4fa0x4[_0x285e[473]]();try{this[_0x285e[1916]](_0x4fa0x2),this[_0x285e[1735]]&&!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x2)&&this[_0x285e[1179]][_0x285e[1917]]([_0x4fa0x2],this[_0x285e[1912]],this[_0x285e[1911]])}finally{_0x4fa0x4[_0x285e[476]]()}}};mxHierarchicalLayout[_0x285e[202]][_0x285e[1918]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=[];if(null!=_0x4fa0x2&&null!=_0x4fa0x3){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[251]],_0x4fa0x9=null,_0x4fa0xa=-1E5,_0x4fa0x12;for(_0x4fa0x12 in _0x4fa0x3){var _0x4fa0x13=_0x4fa0x3[_0x4fa0x12];if(_0x4fa0x5[_0x285e[1193]](_0x4fa0x13)&&this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x13)){for(var _0x4fa0x14=this[_0x285e[264]](_0x4fa0x13),_0x4fa0x15=0,_0x4fa0x16=0,_0x4fa0x17=0;_0x4fa0x17<_0x4fa0x14[_0x285e[67]];_0x4fa0x17++){this[_0x285e[1710]](_0x4fa0x14[_0x4fa0x17],!0)==_0x4fa0x13?_0x4fa0x15++:_0x4fa0x16++};0==_0x4fa0x16&&0<_0x4fa0x15&&_0x4fa0x4[_0x285e[207]](_0x4fa0x13);_0x4fa0x14=_0x4fa0x15-_0x4fa0x16;_0x4fa0x14>_0x4fa0xa&&(_0x4fa0xa=_0x4fa0x14,_0x4fa0x9=_0x4fa0x13)}};0==_0x4fa0x4[_0x285e[67]]&&null!=_0x4fa0x9&&_0x4fa0x4[_0x285e[207]](_0x4fa0x9)};return _0x4fa0x4};mxHierarchicalLayout[_0x285e[202]][_0x285e[264]]=function(_0x4fa0x2){var _0x4fa0x3=mxCellPath[_0x285e[385]](_0x4fa0x2);if(null!=this[_0x285e[1915]][_0x4fa0x3]){return this[_0x285e[1915]][_0x4fa0x3]};for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[251]],_0x4fa0x5=[],_0x4fa0x9=this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x2),_0x4fa0xa=_0x4fa0x4[_0x285e[262]](_0x4fa0x2),_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa;_0x4fa0x12++){var _0x4fa0x13=_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x12);if(this[_0x285e[1908]](_0x4fa0x13)){_0x4fa0x5=_0x4fa0x5[_0x285e[1919]](_0x4fa0x4[_0x285e[264]](_0x4fa0x13,!0,!0))}else {if(_0x4fa0x9||!this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x13)){_0x4fa0x5=_0x4fa0x5[_0x285e[1919]](_0x4fa0x4[_0x285e[264]](_0x4fa0x13,!0,!0))}}};_0x4fa0x5=_0x4fa0x5[_0x285e[1919]](_0x4fa0x4[_0x285e[264]](_0x4fa0x2,!0,!0));_0x4fa0x4=[];for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0x5[_0x285e[67]];_0x4fa0x12++){_0x4fa0x9=this[_0x285e[1710]](_0x4fa0x5[_0x4fa0x12],!0),_0x4fa0xa=this[_0x285e[1710]](_0x4fa0x5[_0x4fa0x12],!1),(_0x4fa0x9==_0x4fa0xa||_0x4fa0x9!=_0x4fa0xa&&(_0x4fa0xa==_0x4fa0x2&&(null==this[_0x285e[1101]]||this[_0x285e[1179]][_0x285e[1920]](_0x4fa0x9,this[_0x285e[1101]],this[_0x285e[1914]]))||_0x4fa0x9==_0x4fa0x2&&(null==this[_0x285e[1101]]||this[_0x285e[1179]][_0x285e[1920]](_0x4fa0xa,this[_0x285e[1101]],this[_0x285e[1914]]))))&&_0x4fa0x4[_0x285e[207]](_0x4fa0x5[_0x4fa0x12])};return this[_0x285e[1915]][_0x4fa0x3]=_0x4fa0x4};mxHierarchicalLayout[_0x285e[202]][_0x285e[1710]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[1710]](_0x4fa0x3):this[_0x285e[1179]][_0x285e[441]][_0x285e[1710]](_0x4fa0x2,_0x4fa0x3);this[_0x285e[1908]](_0x4fa0x4)&&(_0x4fa0x4=this[_0x285e[1179]][_0x285e[251]][_0x285e[1197]](_0x4fa0x4));return _0x4fa0x4};mxHierarchicalLayout[_0x285e[202]][_0x285e[1916]]=function(_0x4fa0x2){var _0x4fa0x3=[],_0x4fa0x4=[];if(null==this[_0x285e[1845]]&&null!=_0x4fa0x2){var _0x4fa0x5={};this[_0x285e[1921]](_0x4fa0x2,_0x4fa0x5);this[_0x285e[1845]]=[];var _0x4fa0x9=!0,_0x4fa0xa;for(_0x4fa0xa in _0x4fa0x5){if(null!=_0x4fa0x5[_0x4fa0xa]){_0x4fa0x9= !1;break}};for(;!_0x4fa0x9;){for(var _0x4fa0x12=this[_0x285e[1918]](_0x4fa0x2,_0x4fa0x5),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x12[_0x285e[67]];_0x4fa0x9++){var _0x4fa0x13=[];_0x4fa0x3[_0x285e[207]](_0x4fa0x13);this[_0x285e[1706]](_0x4fa0x12[_0x4fa0x9],!0,null,_0x4fa0x4,_0x4fa0x13,_0x4fa0x3,_0x4fa0x5)};for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x12[_0x285e[67]];_0x4fa0x9++){this[_0x285e[1845]][_0x285e[207]](_0x4fa0x12[_0x4fa0x9])};_0x4fa0x9= !0;for(_0x4fa0xa in _0x4fa0x5){if(null!=_0x4fa0x5[_0x4fa0xa]){_0x4fa0x9= !1;break}}}}else {for(_0x4fa0x9=0;_0x4fa0x9<roots[_0x285e[67]];_0x4fa0x9++){_0x4fa0x13=[],_0x4fa0x3[_0x285e[207]](_0x4fa0x13),traverse(roots[_0x285e[203]](_0x4fa0x9),!0,null,_0x4fa0x4,_0x4fa0x13,_0x4fa0x3,null)}};for(_0x4fa0x9=_0x4fa0x4=0;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){_0x4fa0x13=_0x4fa0x3[_0x4fa0x9];_0x4fa0x5=[];for(_0x4fa0xa in _0x4fa0x13){_0x4fa0x5[_0x285e[207]](_0x4fa0x13[_0x4fa0xa])};this[_0x285e[251]]= new mxGraphHierarchyModel(this,_0x4fa0x5,this[_0x285e[1845]],_0x4fa0x2,this[_0x285e[1844]]);this[_0x285e[1922]](_0x4fa0x2);this[_0x285e[1923]]();this[_0x285e[1924]](_0x4fa0x2);_0x4fa0x4=this[_0x285e[1925]](_0x4fa0x4,_0x4fa0x2)}};mxHierarchicalLayout[_0x285e[202]][_0x285e[1921]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[251]];_0x4fa0x4[_0x285e[1193]](_0x4fa0x2)&&(_0x4fa0x2!=this[_0x285e[1101]]&&this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2))&&(_0x4fa0x3[mxCellPath[_0x285e[385]](_0x4fa0x2)]=_0x4fa0x2);if(this[_0x285e[1914]]||_0x4fa0x2==this[_0x285e[1101]]&&this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2)){for(var _0x4fa0x5=_0x4fa0x4[_0x285e[262]](_0x4fa0x2),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x9);this[_0x285e[1908]](_0x4fa0xa)||this[_0x285e[1921]](_0x4fa0xa,_0x4fa0x3)}}};mxHierarchicalLayout[_0x285e[202]][_0x285e[1908]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[256]][_0x285e[1500]]?!0:!1};mxHierarchicalLayout[_0x285e[202]][_0x285e[1781]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;for(var _0x4fa0x5=this[_0x285e[264]](_0x4fa0x2),_0x4fa0x9=[],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[1710]](_0x4fa0x5[_0x4fa0xa],!0),_0x4fa0x13=this[_0x285e[1710]](_0x4fa0x5[_0x4fa0xa],!1);(_0x4fa0x12==_0x4fa0x2&&_0x4fa0x13==_0x4fa0x3||!_0x4fa0x4&&_0x4fa0x12==_0x4fa0x3&&_0x4fa0x13==_0x4fa0x2)&&_0x4fa0x9[_0x285e[207]](_0x4fa0x5[_0x4fa0xa])};return _0x4fa0x9};mxHierarchicalLayout[_0x285e[202]][_0x285e[1706]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){if(null!=_0x4fa0x2&&null!=_0x4fa0x5){var _0x4fa0x13=mxCellPath[_0x285e[385]](_0x4fa0x2);if(null==_0x4fa0x5[_0x4fa0x13]&&(null==_0x4fa0x12||null!=_0x4fa0x12[_0x4fa0x13])){null==_0x4fa0x9[_0x4fa0x13]&&(_0x4fa0x9[_0x4fa0x13]=_0x4fa0x2);null==_0x4fa0x5[_0x4fa0x13]&&(_0x4fa0x5[_0x4fa0x13]=_0x4fa0x2);delete _0x4fa0x12[_0x4fa0x13];var _0x4fa0x14=this[_0x285e[264]](_0x4fa0x2);for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x14[_0x285e[67]];_0x4fa0x4++){if(_0x4fa0x13=this[_0x285e[1710]](_0x4fa0x14[_0x4fa0x4],!0)==_0x4fa0x2,!_0x4fa0x3||_0x4fa0x13){_0x4fa0x13=this[_0x285e[1710]](_0x4fa0x14[_0x4fa0x4],!_0x4fa0x13),_0x4fa0x9=this[_0x285e[1706]](_0x4fa0x13,_0x4fa0x3,_0x4fa0x14[_0x4fa0x4],_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12)}}}else {if(null==_0x4fa0x9[_0x4fa0x13]){for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0xa[_0x285e[67]];_0x4fa0x4++){if(_0x4fa0x2=_0x4fa0xa[_0x4fa0x4],null!=_0x4fa0x2[_0x4fa0x13]){for(_0x4fa0x14 in _0x4fa0x9){_0x4fa0x2[_0x4fa0x14]=_0x4fa0x9[_0x4fa0x14]};_0x4fa0xa[_0x285e[1242]]();return _0x4fa0x2}}}}};return _0x4fa0x9};mxHierarchicalLayout[_0x285e[202]][_0x285e[1922]]=function(_0x4fa0x2){( new mxMinimumCycleRemover(this))[_0x285e[350]](_0x4fa0x2)};mxHierarchicalLayout[_0x285e[202]][_0x285e[1923]]=function(){this[_0x285e[251]][_0x285e[1852]]();this[_0x285e[251]][_0x285e[1854]]()};mxHierarchicalLayout[_0x285e[202]][_0x285e[1924]]=function(_0x4fa0x2){( new mxMedianHybridCrossingReduction(this))[_0x285e[350]](_0x4fa0x2)};mxHierarchicalLayout[_0x285e[202]][_0x285e[1925]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4= new mxCoordinateAssignment(this,this[_0x285e[1868]],this[_0x285e[1869]],this[_0x285e[1870]],_0x4fa0x2,this[_0x285e[1872]]);_0x4fa0x4[_0x285e[1882]]=this[_0x285e[1882]];_0x4fa0x4[_0x285e[350]](_0x4fa0x3);return _0x4fa0x4[_0x285e[1874]]+this[_0x285e[1913]]};function mxGraphModel(_0x4fa0x2){this[_0x285e[1926]]=this[_0x285e[1096]]();null!=_0x4fa0x2?this[_0x285e[1927]](_0x4fa0x2):this[_0x285e[200]]()}mxGraphModel[_0x285e[202]]= new mxEventSource;mxGraphModel[_0x285e[202]][_0x285e[196]]=mxGraphModel;mxGraphModel[_0x285e[202]][_0x285e[813]]=null;mxGraphModel[_0x285e[202]][_0x285e[895]]=null;mxGraphModel[_0x285e[202]][_0x285e[1928]]= !0;mxGraphModel[_0x285e[202]][_0x285e[1929]]= !0;mxGraphModel[_0x285e[202]][_0x285e[1089]]=_0x285e[110];mxGraphModel[_0x285e[202]][_0x285e[1930]]=_0x285e[110];mxGraphModel[_0x285e[202]][_0x285e[1931]]=0;mxGraphModel[_0x285e[202]][_0x285e[1926]]=null;mxGraphModel[_0x285e[202]][_0x285e[1932]]=0;mxGraphModel[_0x285e[202]][_0x285e[1933]]= !1;mxGraphModel[_0x285e[202]][_0x285e[200]]=function(){this[_0x285e[1927]](this[_0x285e[1934]]())};mxGraphModel[_0x285e[202]][_0x285e[1935]]=function(){return this[_0x285e[1929]]};mxGraphModel[_0x285e[202]][_0x285e[1936]]=function(_0x4fa0x2){this[_0x285e[1929]]=_0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[1934]]=function(){var _0x4fa0x2= new mxCell;_0x4fa0x2[_0x285e[1937]]( new mxCell);return _0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[736]]=function(_0x4fa0x2){return null!=this[_0x285e[895]]?this[_0x285e[895]][_0x4fa0x2]:null};mxGraphModel[_0x285e[202]][_0x285e[1938]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(null!=_0x4fa0x2){for(var _0x4fa0x4=[],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){_0x4fa0x3(_0x4fa0x2[_0x4fa0x5])&&_0x4fa0x4[_0x285e[207]](_0x4fa0x2[_0x4fa0x5])}};return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[1939]]=function(_0x4fa0x2){return this[_0x285e[1921]](null,_0x4fa0x2)};mxGraphModel[_0x285e[202]][_0x285e[1921]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=[];_0x4fa0x3=_0x4fa0x3||this[_0x285e[501]]();(null==_0x4fa0x2||_0x4fa0x2(_0x4fa0x3))&&_0x4fa0x4[_0x285e[207]](_0x4fa0x3);for(var _0x4fa0x5=this[_0x285e[262]](_0x4fa0x3),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[263]](_0x4fa0x3,_0x4fa0x9),_0x4fa0x4=_0x4fa0x4[_0x285e[1919]](this[_0x285e[1921]](_0x4fa0x2,_0x4fa0xa))};return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[501]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2||this[_0x285e[813]];if(null!=_0x4fa0x2){for(;null!=_0x4fa0x2;){_0x4fa0x3=_0x4fa0x2,_0x4fa0x2=this[_0x285e[1197]](_0x4fa0x2)}};return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1927]]=function(_0x4fa0x2){this[_0x285e[350]]( new mxRootChange(this,_0x4fa0x2));return _0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[1940]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[813]];this[_0x285e[813]]=_0x4fa0x2;this[_0x285e[1931]]=0;this[_0x285e[895]]=null;this[_0x285e[1941]](_0x4fa0x2);return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1942]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&this[_0x285e[813]]==_0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[1740]]=function(_0x4fa0x2){return this[_0x285e[1942]](this[_0x285e[1197]](_0x4fa0x2))};mxGraphModel[_0x285e[202]][_0x285e[1720]]=function(_0x4fa0x2,_0x4fa0x3){for(;null!=_0x4fa0x3&&_0x4fa0x3!=_0x4fa0x2;){_0x4fa0x3=this[_0x285e[1197]](_0x4fa0x3)};return _0x4fa0x3==_0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[442]]=function(_0x4fa0x2){return this[_0x285e[1720]](this[_0x285e[813]],_0x4fa0x2)};mxGraphModel[_0x285e[202]][_0x285e[1197]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1197]]():null};mxGraphModel[_0x285e[202]][_0x285e[99]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(_0x4fa0x3!=_0x4fa0x2&&null!=_0x4fa0x2&&null!=_0x4fa0x3){null==_0x4fa0x4&&(_0x4fa0x4=this[_0x285e[262]](_0x4fa0x2));var _0x4fa0x5=_0x4fa0x2!=this[_0x285e[1197]](_0x4fa0x3);this[_0x285e[350]]( new mxChildChange(this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4));this[_0x285e[1928]]&&_0x4fa0x5&&this[_0x285e[1943]](_0x4fa0x3)};return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1941]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){null==_0x4fa0x2[_0x285e[1103]]()&&this[_0x285e[1929]]&&_0x4fa0x2[_0x285e[1945]](this[_0x285e[1944]](_0x4fa0x2));if(null!=_0x4fa0x2[_0x285e[1103]]()){var _0x4fa0x3=this[_0x285e[736]](_0x4fa0x2[_0x285e[1103]]());if(_0x4fa0x3!=_0x4fa0x2){for(;null!=_0x4fa0x3;){_0x4fa0x2[_0x285e[1945]](this[_0x285e[1944]](_0x4fa0x2)),_0x4fa0x3=this[_0x285e[736]](_0x4fa0x2[_0x285e[1103]]())};null==this[_0x285e[895]]&&(this[_0x285e[895]]={});this[_0x285e[895]][_0x4fa0x2[_0x285e[1103]]()]=_0x4fa0x2}};mxUtils[_0x285e[1946]](_0x4fa0x2[_0x285e[1103]]())&&(this[_0x285e[1931]]=Math[_0x285e[160]](this[_0x285e[1931]],_0x4fa0x2[_0x285e[1103]]()));for(var _0x4fa0x3=this[_0x285e[262]](_0x4fa0x2),_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3;_0x4fa0x4++){this[_0x285e[1941]](this[_0x285e[263]](_0x4fa0x2,_0x4fa0x4))}}};mxGraphModel[_0x285e[202]][_0x285e[1944]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1931]];this[_0x285e[1931]]++;return this[_0x285e[1089]]+_0x4fa0x2+this[_0x285e[1930]]};mxGraphModel[_0x285e[202]][_0x285e[1943]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3||this[_0x285e[501]](_0x4fa0x2);for(var _0x4fa0x4=this[_0x285e[262]](_0x4fa0x2),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[263]](_0x4fa0x2,_0x4fa0x5);this[_0x285e[1943]](_0x4fa0x9,_0x4fa0x3)};_0x4fa0x9=this[_0x285e[1707]](_0x4fa0x2);_0x4fa0x4=[];for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x9;_0x4fa0x5++){_0x4fa0x4[_0x285e[207]](this[_0x285e[1708]](_0x4fa0x2,_0x4fa0x5))};for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){_0x4fa0x9=_0x4fa0x4[_0x4fa0x5],this[_0x285e[1720]](_0x4fa0x3,_0x4fa0x9)&&this[_0x285e[1947]](_0x4fa0x9,_0x4fa0x3)}};mxGraphModel[_0x285e[202]][_0x285e[1947]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=this[_0x285e[1709]](_0x4fa0x2,!0),_0x4fa0x5=this[_0x285e[1709]](_0x4fa0x2,!1),_0x4fa0x9=null;null!=_0x4fa0x4&&!this[_0x285e[250]](_0x4fa0x4)&&null!=_0x4fa0x4[_0x285e[256]]&&_0x4fa0x4[_0x285e[256]][_0x285e[1500]];){_0x4fa0x4=this[_0x285e[1197]](_0x4fa0x4)};for(;null!=_0x4fa0x5&&!this[_0x285e[250]](_0x4fa0x5)&&null!=_0x4fa0x5[_0x285e[256]]&&_0x4fa0x5[_0x285e[256]][_0x285e[1500]];){_0x4fa0x5=this[_0x285e[1197]](_0x4fa0x5)};if(this[_0x285e[1720]](_0x4fa0x3,_0x4fa0x4)&&this[_0x285e[1720]](_0x4fa0x3,_0x4fa0x5)&&(_0x4fa0x9=_0x4fa0x4==_0x4fa0x5?this[_0x285e[1197]](_0x4fa0x4):this[_0x285e[1948]](_0x4fa0x4,_0x4fa0x5),null!=_0x4fa0x9&&(this[_0x285e[1197]](_0x4fa0x9)!=this[_0x285e[813]]||this[_0x285e[1720]](_0x4fa0x9,_0x4fa0x2))&&this[_0x285e[1197]](_0x4fa0x2)!=_0x4fa0x9)){_0x4fa0x4=this[_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x4){var _0x4fa0xa=this[_0x285e[1949]](this[_0x285e[1197]](_0x4fa0x2)),_0x4fa0x12=this[_0x285e[1949]](_0x4fa0x9),_0x4fa0x5=_0x4fa0x12[_0x285e[235]]-_0x4fa0xa[_0x285e[235]],_0x4fa0xa=_0x4fa0x12[_0x285e[236]]-_0x4fa0xa[_0x285e[236]],_0x4fa0x4=_0x4fa0x4[_0x285e[238]]();_0x4fa0x4[_0x285e[513]](-_0x4fa0x5,-_0x4fa0xa);this[_0x285e[1724]](_0x4fa0x2,_0x4fa0x4)};this[_0x285e[99]](_0x4fa0x9,_0x4fa0x2,this[_0x285e[262]](_0x4fa0x9))}};mxGraphModel[_0x285e[202]][_0x285e[1949]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2?(_0x4fa0x3=this[_0x285e[1949]](this[_0x285e[1197]](_0x4fa0x2)),this[_0x285e[250]](_0x4fa0x2)||(_0x4fa0x2=this[_0x285e[1721]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x3[_0x285e[235]]+=_0x4fa0x2[_0x285e[235]],_0x4fa0x3[_0x285e[236]]+=_0x4fa0x2[_0x285e[236]]))):_0x4fa0x3= new mxPoint;return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1948]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){var _0x4fa0x4=mxCellPath[_0x285e[385]](_0x4fa0x3);if(null!=_0x4fa0x4&&0<_0x4fa0x4[_0x285e[67]]){var _0x4fa0x5=_0x4fa0x2,_0x4fa0x9=mxCellPath[_0x285e[385]](_0x4fa0x5);if(_0x4fa0x4[_0x285e[67]]<_0x4fa0x9[_0x285e[67]]){var _0x4fa0x5=_0x4fa0x3,_0x4fa0xa=_0x4fa0x9,_0x4fa0x9=_0x4fa0x4,_0x4fa0x4=_0x4fa0xa};for(;null!=_0x4fa0x5;){_0x4fa0xa=this[_0x285e[1197]](_0x4fa0x5);if(0==_0x4fa0x4[_0x285e[2]](_0x4fa0x9+mxCellPath[_0x285e[1950]])&&null!=_0x4fa0xa){return _0x4fa0x5};_0x4fa0x9=mxCellPath[_0x285e[1951]](_0x4fa0x9);_0x4fa0x5=_0x4fa0xa}}};return null};mxGraphModel[_0x285e[202]][_0x285e[205]]=function(_0x4fa0x2){_0x4fa0x2==this[_0x285e[813]]?this[_0x285e[1927]](null):null!=this[_0x285e[1197]](_0x4fa0x2)&&this[_0x285e[350]]( new mxChildChange(this,null,_0x4fa0x2));return _0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[1102]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&null!=this[_0x285e[895]]){for(var _0x4fa0x3=this[_0x285e[262]](_0x4fa0x2)-1;0<=_0x4fa0x3;_0x4fa0x3--){this[_0x285e[1102]](this[_0x285e[263]](_0x4fa0x2,_0x4fa0x3))};null!=this[_0x285e[895]]&&null!=_0x4fa0x2[_0x285e[1103]]()&& delete this[_0x285e[895]][_0x4fa0x2[_0x285e[1103]]()]}};mxGraphModel[_0x285e[202]][_0x285e[1952]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1197]](_0x4fa0x2);null!=_0x4fa0x3?(_0x4fa0x3!=_0x4fa0x5||_0x4fa0x5[_0x285e[1738]](_0x4fa0x2)!=_0x4fa0x4)&&_0x4fa0x3[_0x285e[1937]](_0x4fa0x2,_0x4fa0x4):null!=_0x4fa0x5&&(_0x4fa0x4=_0x4fa0x5[_0x285e[1738]](_0x4fa0x2),_0x4fa0x5[_0x285e[205]](_0x4fa0x4));!this[_0x285e[442]](_0x4fa0x5)&&null!=_0x4fa0x3?this[_0x285e[1941]](_0x4fa0x2):null==_0x4fa0x3&&this[_0x285e[1102]](_0x4fa0x2);return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[262]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[262]]():0};mxGraphModel[_0x285e[202]][_0x285e[263]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[263]](_0x4fa0x3):null};mxGraphModel[_0x285e[202]][_0x285e[1953]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1954]]:null};mxGraphModel[_0x285e[202]][_0x285e[1728]]=function(_0x4fa0x2){return this[_0x285e[1955]](_0x4fa0x2,!0,!1)};mxGraphModel[_0x285e[202]][_0x285e[1956]]=function(_0x4fa0x2){return this[_0x285e[1955]](_0x4fa0x2,!1,!0)};mxGraphModel[_0x285e[202]][_0x285e[1955]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;for(var _0x4fa0x5=this[_0x285e[262]](_0x4fa0x2),_0x4fa0x9=[],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5;_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[263]](_0x4fa0x2,_0x4fa0xa);(!_0x4fa0x4&&!_0x4fa0x3||_0x4fa0x4&&this[_0x285e[250]](_0x4fa0x12)||_0x4fa0x3&&this[_0x285e[1193]](_0x4fa0x12))&&_0x4fa0x9[_0x285e[207]](_0x4fa0x12)};return _0x4fa0x9};mxGraphModel[_0x285e[202]][_0x285e[1709]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1709]](_0x4fa0x3):null};mxGraphModel[_0x285e[202]][_0x285e[1957]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x3!=this[_0x285e[1709]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[350]]( new mxTerminalChange(this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4));this[_0x285e[1928]]&&_0x4fa0x5&&this[_0x285e[1947]](_0x4fa0x2,this[_0x285e[501]]());return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1958]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[473]]();try{this[_0x285e[1957]](_0x4fa0x2,_0x4fa0x3,!0),this[_0x285e[1957]](_0x4fa0x2,_0x4fa0x4,!1)}finally{this[_0x285e[476]]()}};mxGraphModel[_0x285e[202]][_0x285e[1959]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1709]](_0x4fa0x2,_0x4fa0x4);null!=_0x4fa0x3?_0x4fa0x3[_0x285e[1960]](_0x4fa0x2,_0x4fa0x4):null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[1961]](_0x4fa0x2,_0x4fa0x4);return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[1707]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1707]]():0};mxGraphModel[_0x285e[202]][_0x285e[1708]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1708]](_0x4fa0x3):null};mxGraphModel[_0x285e[202]][_0x285e[1962]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){for(var _0x4fa0x5=0,_0x4fa0x9=this[_0x285e[1707]](_0x4fa0x2),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[1708]](_0x4fa0x2,_0x4fa0xa);_0x4fa0x12!=_0x4fa0x4&&this[_0x285e[1709]](_0x4fa0x12,_0x4fa0x3)==_0x4fa0x2&&_0x4fa0x5++};return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[1756]]=function(_0x4fa0x2){return this[_0x285e[264]](_0x4fa0x2,!0,!0,!1)};mxGraphModel[_0x285e[202]][_0x285e[1867]]=function(_0x4fa0x2){return this[_0x285e[264]](_0x4fa0x2,!0,!1,!1)};mxGraphModel[_0x285e[202]][_0x285e[1963]]=function(_0x4fa0x2){return this[_0x285e[264]](_0x4fa0x2,!1,!0,!1)};mxGraphModel[_0x285e[202]][_0x285e[264]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;for(var _0x4fa0x9=this[_0x285e[1707]](_0x4fa0x2),_0x4fa0xa=[],_0x4fa0x12=0;_0x4fa0x12<_0x4fa0x9;_0x4fa0x12++){var _0x4fa0x13=this[_0x285e[1708]](_0x4fa0x2,_0x4fa0x12),_0x4fa0x14=this[_0x285e[1709]](_0x4fa0x13,!0),_0x4fa0x15=this[_0x285e[1709]](_0x4fa0x13,!1);(_0x4fa0x5&&_0x4fa0x14==_0x4fa0x15||_0x4fa0x14!=_0x4fa0x15&&(_0x4fa0x3&&_0x4fa0x15==_0x4fa0x2||_0x4fa0x4&&_0x4fa0x14==_0x4fa0x2))&&_0x4fa0xa[_0x285e[207]](_0x4fa0x13)};return _0x4fa0xa};mxGraphModel[_0x285e[202]][_0x285e[1781]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;var _0x4fa0x5=this[_0x285e[1707]](_0x4fa0x2),_0x4fa0x9=this[_0x285e[1707]](_0x4fa0x3),_0x4fa0xa=_0x4fa0x2,_0x4fa0x12=_0x4fa0x5;_0x4fa0x9<_0x4fa0x5&&(_0x4fa0x12=_0x4fa0x9,_0x4fa0xa=_0x4fa0x3);_0x4fa0x5=[];for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x12;_0x4fa0x9++){var _0x4fa0x13=this[_0x285e[1708]](_0x4fa0xa,_0x4fa0x9),_0x4fa0x14=this[_0x285e[1709]](_0x4fa0x13,!0),_0x4fa0x15=this[_0x285e[1709]](_0x4fa0x13,!1),_0x4fa0x16=_0x4fa0x15==_0x4fa0x2&&_0x4fa0x14==_0x4fa0x3;(_0x4fa0x14==_0x4fa0x2&&_0x4fa0x15==_0x4fa0x3||!_0x4fa0x4&&_0x4fa0x16)&&_0x4fa0x5[_0x285e[207]](_0x4fa0x13)};return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[1808]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;var _0x4fa0x9=[];if(null!=_0x4fa0x2){for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[1709]](_0x4fa0x2[_0x4fa0xa],!0),_0x4fa0x13=this[_0x285e[1709]](_0x4fa0x2[_0x4fa0xa],!1);_0x4fa0x12==_0x4fa0x3&&null!=_0x4fa0x13&&_0x4fa0x13!=_0x4fa0x3&&_0x4fa0x5?_0x4fa0x9[_0x285e[207]](_0x4fa0x13):_0x4fa0x13==_0x4fa0x3&&(null!=_0x4fa0x12&&_0x4fa0x12!=_0x4fa0x3&&_0x4fa0x4)&&_0x4fa0x9[_0x285e[207]](_0x4fa0x12)}};return _0x4fa0x9};mxGraphModel[_0x285e[202]][_0x285e[1964]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){for(var _0x4fa0x5=_0x4fa0x2[_0x4fa0x4],_0x4fa0x9=!0,_0x4fa0xa=this[_0x285e[1197]](_0x4fa0x5);null!=_0x4fa0xa;){if(0<=mxUtils[_0x285e[2]](_0x4fa0x2,_0x4fa0xa)){_0x4fa0x9= !1;break};_0x4fa0xa=this[_0x285e[1197]](_0x4fa0xa)};_0x4fa0x9&&_0x4fa0x3[_0x285e[207]](_0x4fa0x5)};return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1193]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1193]]():!1};mxGraphModel[_0x285e[202]][_0x285e[250]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[250]]():!1};mxGraphModel[_0x285e[202]][_0x285e[1965]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1965]]():!1};mxGraphModel[_0x285e[202]][_0x285e[433]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[433]]():null};mxGraphModel[_0x285e[202]][_0x285e[1966]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[350]]( new mxValueChange(this,_0x4fa0x2,_0x4fa0x3));return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1967]]=function(_0x4fa0x2,_0x4fa0x3){return _0x4fa0x2[_0x285e[1968]](_0x4fa0x3)};mxGraphModel[_0x285e[202]][_0x285e[1721]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1721]]():null};mxGraphModel[_0x285e[202]][_0x285e[1724]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3!=this[_0x285e[1721]](_0x4fa0x2)&&this[_0x285e[350]]( new mxGeometryChange(this,_0x4fa0x2,_0x4fa0x3));return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1969]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1721]](_0x4fa0x2);_0x4fa0x2[_0x285e[1724]](_0x4fa0x3);return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[474]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[474]]():null};mxGraphModel[_0x285e[202]][_0x285e[475]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3!=this[_0x285e[474]](_0x4fa0x2)&&this[_0x285e[350]]( new mxStyleChange(this,_0x4fa0x2,_0x4fa0x3));return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1970]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[474]](_0x4fa0x2);_0x4fa0x2[_0x285e[475]](_0x4fa0x3);return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[1971]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1971]]():!1};mxGraphModel[_0x285e[202]][_0x285e[1972]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3!=this[_0x285e[1971]](_0x4fa0x2)&&this[_0x285e[350]]( new mxCollapseChange(this,_0x4fa0x2,_0x4fa0x3));return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1973]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1971]](_0x4fa0x2);_0x4fa0x2[_0x285e[1972]](_0x4fa0x3);return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[174]]=function(_0x4fa0x2){return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[174]]():!1};mxGraphModel[_0x285e[202]][_0x285e[175]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3!=this[_0x285e[174]](_0x4fa0x2)&&this[_0x285e[350]]( new mxVisibleChange(this,_0x4fa0x2,_0x4fa0x3));return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1974]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[174]](_0x4fa0x2);_0x4fa0x2[_0x285e[175]](_0x4fa0x3);return _0x4fa0x4};mxGraphModel[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[350]]();this[_0x285e[473]]();this[_0x285e[1926]][_0x285e[99]](_0x4fa0x2);this[_0x285e[746]]( new mxEventObject(mxEvent.EXECUTE,_0x285e[826],_0x4fa0x2));this[_0x285e[746]]( new mxEventObject(mxEvent.EXECUTED,_0x285e[826],_0x4fa0x2));this[_0x285e[476]]()};mxGraphModel[_0x285e[202]][_0x285e[473]]=function(){this[_0x285e[1932]]++;this[_0x285e[746]]( new mxEventObject(mxEvent.BEGIN_UPDATE));1==this[_0x285e[1932]]&&this[_0x285e[746]]( new mxEventObject(mxEvent.START_EDIT))};mxGraphModel[_0x285e[202]][_0x285e[476]]=function(){this[_0x285e[1932]]--;0==this[_0x285e[1932]]&&this[_0x285e[746]]( new mxEventObject(mxEvent.END_EDIT));if(!this[_0x285e[1933]]){this[_0x285e[1933]]=0==this[_0x285e[1932]];this[_0x285e[746]]( new mxEventObject(mxEvent.END_UPDATE,_0x285e[1061],this[_0x285e[1926]]));try{if(this[_0x285e[1933]]&&!this[_0x285e[1926]][_0x285e[1107]]()){this[_0x285e[746]]( new mxEventObject(mxEvent.BEFORE_UNDO,_0x285e[1061],this[_0x285e[1926]]));var _0x4fa0x2=this[_0x285e[1926]];this[_0x285e[1926]]=this[_0x285e[1096]]();_0x4fa0x2[_0x285e[827]]();this[_0x285e[746]]( new mxEventObject(mxEvent.UNDO,_0x285e[1061],_0x4fa0x2))}}finally{this[_0x285e[1933]]= !1}}};mxGraphModel[_0x285e[202]][_0x285e[1096]]=function(){var _0x4fa0x2= new mxUndoableEdit(this,!0);_0x4fa0x2[_0x285e[827]]=function(){_0x4fa0x2[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.CHANGE,_0x285e[1061],_0x4fa0x2,_0x285e[1065],_0x4fa0x2[_0x285e[1065]]));_0x4fa0x2[_0x285e[1097]][_0x285e[746]]( new mxEventObject(mxEvent.NOTIFY,_0x285e[1061],_0x4fa0x2,_0x285e[1065],_0x4fa0x2[_0x285e[1065]]))};return _0x4fa0x2};mxGraphModel[_0x285e[202]][_0x285e[1975]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;this[_0x285e[473]]();try{var _0x4fa0x5={};this[_0x285e[1976]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);for(var _0x4fa0x9 in _0x4fa0x5){var _0x4fa0xa=_0x4fa0x5[_0x4fa0x9],_0x4fa0x12=this[_0x285e[1709]](_0x4fa0xa,!0);null!=_0x4fa0x12&&(_0x4fa0x12=_0x4fa0x5[mxCellPath[_0x285e[385]](_0x4fa0x12)],this[_0x285e[1957]](_0x4fa0xa,_0x4fa0x12,!0));_0x4fa0x12=this[_0x285e[1709]](_0x4fa0xa,!1);null!=_0x4fa0x12&&(_0x4fa0x12=_0x4fa0x5[mxCellPath[_0x285e[385]](_0x4fa0x12)],this[_0x285e[1957]](_0x4fa0xa,_0x4fa0x12,!1))}}finally{this[_0x285e[476]]()}};mxGraphModel[_0x285e[202]][_0x285e[1976]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[473]]();try{for(var _0x4fa0x9=_0x4fa0x2[_0x285e[262]](),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x2[_0x285e[263]](_0x4fa0xa);if(_0x285e[279]== typeof _0x4fa0x12[_0x285e[1103]]){var _0x4fa0x13=_0x4fa0x12[_0x285e[1103]](),_0x4fa0x14=null!=_0x4fa0x13&&(!this[_0x285e[250]](_0x4fa0x12)|| !_0x4fa0x4)?this[_0x285e[736]](_0x4fa0x13):null;if(null==_0x4fa0x14){var _0x4fa0x15=_0x4fa0x12[_0x285e[238]]();_0x4fa0x15[_0x285e[1945]](_0x4fa0x13);_0x4fa0x15[_0x285e[1957]](_0x4fa0x12[_0x285e[1709]](!0),!0);_0x4fa0x15[_0x285e[1957]](_0x4fa0x12[_0x285e[1709]](!1),!1);_0x4fa0x14=_0x4fa0x3[_0x285e[1937]](_0x4fa0x15);this[_0x285e[1941]](_0x4fa0x14)};_0x4fa0x5[mxCellPath[_0x285e[385]](_0x4fa0x12)]=_0x4fa0x14;this[_0x285e[1976]](_0x4fa0x12,_0x4fa0x14,_0x4fa0x4,_0x4fa0x5)}}}finally{this[_0x285e[476]]()}};mxGraphModel[_0x285e[202]][_0x285e[1977]]=function(_0x4fa0x2){var _0x4fa0x3=[];if(null!=_0x4fa0x2){for(var _0x4fa0x4={},_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[1197]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0x9){var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x9);null==_0x4fa0x4[_0x4fa0xa]&&(_0x4fa0x4[_0x4fa0xa]=_0x4fa0x9,_0x4fa0x3[_0x285e[207]](_0x4fa0x9))}}};return _0x4fa0x3};mxGraphModel[_0x285e[202]][_0x285e[1978]]=function(_0x4fa0x2){return null!=_0x4fa0x2?this[_0x285e[899]]([_0x4fa0x2],!0)[0]:null};mxGraphModel[_0x285e[202]][_0x285e[899]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4={},_0x4fa0x5=[],_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){null!=_0x4fa0x2[_0x4fa0x9]?_0x4fa0x5[_0x285e[207]](this[_0x285e[1979]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x4,_0x4fa0x3)):_0x4fa0x5[_0x285e[207]](null)};for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5[_0x285e[67]];_0x4fa0x9++){null!=_0x4fa0x5[_0x4fa0x9]&&this[_0x285e[1980]](_0x4fa0x5[_0x4fa0x9],_0x4fa0x2[_0x4fa0x9],_0x4fa0x4)};return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[1979]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1981]](_0x4fa0x2);_0x4fa0x3[mxObjectIdentity[_0x285e[203]](_0x4fa0x2)]=_0x4fa0x5;if(_0x4fa0x4){_0x4fa0x4=this[_0x285e[262]](_0x4fa0x2);for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4;_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[1979]](this[_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x3,!0);_0x4fa0x5[_0x285e[1937]](_0x4fa0xa)}};return _0x4fa0x5};mxGraphModel[_0x285e[202]][_0x285e[1981]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[238]]()};mxGraphModel[_0x285e[202]][_0x285e[1980]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1709]](_0x4fa0x3,!0);null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0x4[mxObjectIdentity[_0x285e[203]](_0x4fa0x5)],null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[1960]](_0x4fa0x2,!0));_0x4fa0x5=this[_0x285e[1709]](_0x4fa0x3,!1);null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0x4[mxObjectIdentity[_0x285e[203]](_0x4fa0x5)],null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[1960]](_0x4fa0x2,!1));for(var _0x4fa0x5=this[_0x285e[262]](_0x4fa0x2),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){this[_0x285e[1980]](this[_0x285e[263]](_0x4fa0x2,_0x4fa0x9),this[_0x285e[263]](_0x4fa0x3,_0x4fa0x9),_0x4fa0x4)}};function mxRootChange(_0x4fa0x2,_0x4fa0x3){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[257]]=this[_0x285e[813]]=_0x4fa0x3}mxRootChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[813]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1940]](this[_0x285e[257]])};function mxChildChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[257]]=this[_0x285e[1101]]=_0x4fa0x3;this[_0x285e[247]]=_0x4fa0x4;this[_0x285e[1982]]=this[_0x285e[1983]]=_0x4fa0x5}mxChildChange[_0x285e[202]][_0x285e[350]]=function(){var _0x4fa0x2=this[_0x285e[251]][_0x285e[1197]](this[_0x285e[247]]),_0x4fa0x3=null!=_0x4fa0x2?_0x4fa0x2[_0x285e[1738]](this[_0x285e[247]]):0;null==this[_0x285e[257]]&&this[_0x285e[807]](this[_0x285e[247]],!1);_0x4fa0x2=this[_0x285e[251]][_0x285e[1952]](this[_0x285e[247]],this[_0x285e[257]],this[_0x285e[1982]]);null!=this[_0x285e[257]]&&this[_0x285e[807]](this[_0x285e[247]],!0);this[_0x285e[1101]]=this[_0x285e[257]];this[_0x285e[257]]=_0x4fa0x2;this[_0x285e[1983]]=this[_0x285e[1982]];this[_0x285e[1982]]=_0x4fa0x3};mxChildChange[_0x285e[202]][_0x285e[807]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;var _0x4fa0x4=_0x4fa0x2[_0x285e[1709]](!0),_0x4fa0x5=_0x4fa0x2[_0x285e[1709]](!1);null!=_0x4fa0x4&&(_0x4fa0x3?this[_0x285e[251]][_0x285e[1959]](_0x4fa0x2,_0x4fa0x4,!0):this[_0x285e[251]][_0x285e[1959]](_0x4fa0x2,null,!0));null!=_0x4fa0x5&&(_0x4fa0x3?this[_0x285e[251]][_0x285e[1959]](_0x4fa0x2,_0x4fa0x5,!1):this[_0x285e[251]][_0x285e[1959]](_0x4fa0x2,null,!1));_0x4fa0x2[_0x285e[1957]](_0x4fa0x4,!0);_0x4fa0x2[_0x285e[1957]](_0x4fa0x5,!1);_0x4fa0x4=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2);for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){this[_0x285e[807]](this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x5),_0x4fa0x3)}};function mxTerminalChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[1984]]=_0x4fa0x4;this[_0x285e[1097]]=_0x4fa0x5}mxTerminalChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[1984]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1959]](this[_0x285e[246]],this[_0x285e[257]],this[_0x285e[1097]])};function mxValueChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[131]]=_0x4fa0x4}mxValueChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[131]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1967]](this[_0x285e[246]],this[_0x285e[257]])};function mxStyleChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[124]]=_0x4fa0x4}mxStyleChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[124]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1970]](this[_0x285e[246]],this[_0x285e[257]])};function mxGeometryChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[256]]=_0x4fa0x4}mxGeometryChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[256]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1969]](this[_0x285e[246]],this[_0x285e[257]])};function mxCollapseChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[1985]]=_0x4fa0x4}mxCollapseChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[1985]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1973]](this[_0x285e[246]],this[_0x285e[257]])};function mxVisibleChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[189]]=_0x4fa0x4}mxVisibleChange[_0x285e[202]][_0x285e[350]]=function(){this[_0x285e[189]]=this[_0x285e[257]];this[_0x285e[257]]=this[_0x285e[251]][_0x285e[1974]](this[_0x285e[246]],this[_0x285e[257]])};function mxCellAttributeChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[246]]=_0x4fa0x2;this[_0x285e[1986]]=_0x4fa0x3;this[_0x285e[257]]=this[_0x285e[131]]=_0x4fa0x4}mxCellAttributeChange[_0x285e[202]][_0x285e[350]]=function(){var _0x4fa0x2=this[_0x285e[246]][_0x285e[284]](this[_0x285e[1986]]);null==this[_0x285e[257]]?this[_0x285e[246]][_0x285e[131]][_0x285e[1390]](this[_0x285e[1986]]):this[_0x285e[246]][_0x285e[57]](this[_0x285e[1986]],this[_0x285e[257]]);this[_0x285e[257]]=_0x4fa0x2};function mxCell(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[131]]=_0x4fa0x2;this[_0x285e[1724]](_0x4fa0x3);this[_0x285e[475]](_0x4fa0x4);if(null!=this[_0x285e[1987]]){this[_0x285e[1987]]()}}mxCell[_0x285e[202]][_0x285e[1363]]=null;mxCell[_0x285e[202]][_0x285e[131]]=null;mxCell[_0x285e[202]][_0x285e[256]]=null;mxCell[_0x285e[202]][_0x285e[124]]=null;mxCell[_0x285e[202]][_0x285e[1988]]= !1;mxCell[_0x285e[202]][_0x285e[1989]]= !1;mxCell[_0x285e[202]][_0x285e[1990]]= !0;mxCell[_0x285e[202]][_0x285e[189]]= !0;mxCell[_0x285e[202]][_0x285e[1985]]= !1;mxCell[_0x285e[202]][_0x285e[1101]]=null;mxCell[_0x285e[202]][_0x285e[1097]]=null;mxCell[_0x285e[202]][_0x285e[772]]=null;mxCell[_0x285e[202]][_0x285e[1954]]=null;mxCell[_0x285e[202]][_0x285e[1842]]=null;mxCell[_0x285e[202]][_0x285e[1991]]=_0x285e[1992][_0x285e[224]](_0x285e[185]);mxCell[_0x285e[202]][_0x285e[1103]]=function(){return this[_0x285e[1363]]};mxCell[_0x285e[202]][_0x285e[1945]]=function(_0x4fa0x2){this[_0x285e[1363]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[433]]=function(){return this[_0x285e[131]]};mxCell[_0x285e[202]][_0x285e[1966]]=function(_0x4fa0x2){this[_0x285e[131]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1968]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[433]]();this[_0x285e[1966]](_0x4fa0x2);return _0x4fa0x3};mxCell[_0x285e[202]][_0x285e[1721]]=function(){return this[_0x285e[256]]};mxCell[_0x285e[202]][_0x285e[1724]]=function(_0x4fa0x2){this[_0x285e[256]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[474]]=function(){return this[_0x285e[124]]};mxCell[_0x285e[202]][_0x285e[475]]=function(_0x4fa0x2){this[_0x285e[124]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1193]]=function(){return this[_0x285e[1988]]};mxCell[_0x285e[202]][_0x285e[1993]]=function(_0x4fa0x2){this[_0x285e[1988]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[250]]=function(){return this[_0x285e[1989]]};mxCell[_0x285e[202]][_0x285e[1994]]=function(_0x4fa0x2){this[_0x285e[1989]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1965]]=function(){return this[_0x285e[1990]]};mxCell[_0x285e[202]][_0x285e[1995]]=function(_0x4fa0x2){this[_0x285e[1990]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[174]]=function(){return this[_0x285e[189]]};mxCell[_0x285e[202]][_0x285e[175]]=function(_0x4fa0x2){this[_0x285e[189]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1971]]=function(){return this[_0x285e[1985]]};mxCell[_0x285e[202]][_0x285e[1972]]=function(_0x4fa0x2){this[_0x285e[1985]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1197]]=function(){return this[_0x285e[1101]]};mxCell[_0x285e[202]][_0x285e[1996]]=function(_0x4fa0x2){this[_0x285e[1101]]=_0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1709]]=function(_0x4fa0x2){return _0x4fa0x2?this[_0x285e[1097]]:this[_0x285e[772]]};mxCell[_0x285e[202]][_0x285e[1957]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3?this[_0x285e[1097]]=_0x4fa0x2:this[_0x285e[772]]=_0x4fa0x2;return _0x4fa0x2};mxCell[_0x285e[202]][_0x285e[262]]=function(){return null==this[_0x285e[1954]]?0:this[_0x285e[1954]][_0x285e[67]]};mxCell[_0x285e[202]][_0x285e[1738]]=function(_0x4fa0x2){return mxUtils[_0x285e[2]](this[_0x285e[1954]],_0x4fa0x2)};mxCell[_0x285e[202]][_0x285e[263]]=function(_0x4fa0x2){return null==this[_0x285e[1954]]?null:this[_0x285e[1954]][_0x4fa0x2]};mxCell[_0x285e[202]][_0x285e[1937]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&(null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[262]](),_0x4fa0x2[_0x285e[1197]]()==this&&_0x4fa0x3--),_0x4fa0x2[_0x285e[1997]](),_0x4fa0x2[_0x285e[1996]](this),null==this[_0x285e[1954]]?(this[_0x285e[1954]]=[],this[_0x285e[1954]][_0x285e[207]](_0x4fa0x2)):this[_0x285e[1954]][_0x285e[300]](_0x4fa0x3,0,_0x4fa0x2));return _0x4fa0x2};mxCell[_0x285e[202]][_0x285e[205]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=this[_0x285e[1954]]&&0<=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[263]](_0x4fa0x2),null!=_0x4fa0x3&&(this[_0x285e[1954]][_0x285e[300]](_0x4fa0x2,1),_0x4fa0x3[_0x285e[1996]](null)));return _0x4fa0x3};mxCell[_0x285e[202]][_0x285e[1997]]=function(){if(null!=this[_0x285e[1101]]){var _0x4fa0x2=this[_0x285e[1101]][_0x285e[1738]](this);this[_0x285e[1101]][_0x285e[205]](_0x4fa0x2)}};mxCell[_0x285e[202]][_0x285e[1707]]=function(){return null==this[_0x285e[1842]]?0:this[_0x285e[1842]][_0x285e[67]]};mxCell[_0x285e[202]][_0x285e[1998]]=function(_0x4fa0x2){return mxUtils[_0x285e[2]](this[_0x285e[1842]],_0x4fa0x2)};mxCell[_0x285e[202]][_0x285e[1708]]=function(_0x4fa0x2){return null==this[_0x285e[1842]]?null:this[_0x285e[1842]][_0x4fa0x2]};mxCell[_0x285e[202]][_0x285e[1960]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[1999]](_0x4fa0x3),_0x4fa0x2[_0x285e[1957]](this,_0x4fa0x3),null==this[_0x285e[1842]]||_0x4fa0x2[_0x285e[1709]](!_0x4fa0x3)!=this||0>mxUtils[_0x285e[2]](this[_0x285e[1842]],_0x4fa0x2))){null==this[_0x285e[1842]]&&(this[_0x285e[1842]]=[]),this[_0x285e[1842]][_0x285e[207]](_0x4fa0x2)};return _0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1961]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2){if(_0x4fa0x2[_0x285e[1709]](!_0x4fa0x3)!=this&&null!=this[_0x285e[1842]]){var _0x4fa0x4=this[_0x285e[1998]](_0x4fa0x2);0<=_0x4fa0x4&&this[_0x285e[1842]][_0x285e[300]](_0x4fa0x4,1)};_0x4fa0x2[_0x285e[1957]](null,_0x4fa0x3)};return _0x4fa0x2};mxCell[_0x285e[202]][_0x285e[1999]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1709]](_0x4fa0x2);null!=_0x4fa0x3&&_0x4fa0x3[_0x285e[1961]](this,_0x4fa0x2)};mxCell[_0x285e[202]][_0x285e[284]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[433]]();return (null!=_0x4fa0x4&&_0x4fa0x4[_0x285e[288]]==mxConstants[_0x285e[289]]?_0x4fa0x4[_0x285e[284]](_0x4fa0x2):null)||_0x4fa0x3};mxCell[_0x285e[202]][_0x285e[57]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[433]]();null!=_0x4fa0x4&&_0x4fa0x4[_0x285e[288]]==mxConstants[_0x285e[289]]&&_0x4fa0x4[_0x285e[57]](_0x4fa0x2,_0x4fa0x3)};mxCell[_0x285e[202]][_0x285e[238]]=function(){var _0x4fa0x2=mxUtils[_0x285e[238]](this,this[_0x285e[1991]]);_0x4fa0x2[_0x285e[1966]](this[_0x285e[2000]]());return _0x4fa0x2};mxCell[_0x285e[202]][_0x285e[2000]]=function(){var _0x4fa0x2=this[_0x285e[433]]();null!=_0x4fa0x2&&(_0x285e[279]== typeof _0x4fa0x2[_0x285e[238]]?_0x4fa0x2=_0x4fa0x2[_0x285e[238]]():isNaN(_0x4fa0x2[_0x285e[288]])||(_0x4fa0x2=_0x4fa0x2[_0x285e[511]](!0)));return _0x4fa0x2};function mxGeometry(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxRectangle[_0x285e[239]](this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}mxGeometry[_0x285e[202]]= new mxRectangle;mxGeometry[_0x285e[202]][_0x285e[196]]=mxGeometry;mxGeometry[_0x285e[202]][_0x285e[2001]]= !0;mxGeometry[_0x285e[202]][_0x285e[2002]]=null;mxGeometry[_0x285e[202]][_0x285e[2003]]=null;mxGeometry[_0x285e[202]][_0x285e[2004]]=null;mxGeometry[_0x285e[202]][_0x285e[1525]]=null;mxGeometry[_0x285e[202]][_0x285e[1368]]=null;mxGeometry[_0x285e[202]][_0x285e[1500]]= !1;mxGeometry[_0x285e[202]][_0x285e[2005]]=function(){if(null!=this[_0x285e[2002]]){var _0x4fa0x2= new mxRectangle(this[_0x285e[235]],this[_0x285e[236]],this[_0x285e[117]],this[_0x285e[119]]);this[_0x285e[235]]=this[_0x285e[2002]][_0x285e[235]];this[_0x285e[236]]=this[_0x285e[2002]][_0x285e[236]];this[_0x285e[117]]=this[_0x285e[2002]][_0x285e[117]];this[_0x285e[119]]=this[_0x285e[2002]][_0x285e[119]];this[_0x285e[2002]]=_0x4fa0x2}};mxGeometry[_0x285e[202]][_0x285e[2006]]=function(_0x4fa0x2){return _0x4fa0x2?this[_0x285e[2003]]:this[_0x285e[2004]]};mxGeometry[_0x285e[202]][_0x285e[2007]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3?this[_0x285e[2003]]=_0x4fa0x2:this[_0x285e[2004]]=_0x4fa0x2;return _0x4fa0x2};mxGeometry[_0x285e[202]][_0x285e[513]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[238]]();this[_0x285e[1500]]||(this[_0x285e[235]]+=_0x4fa0x2,this[_0x285e[236]]+=_0x4fa0x3);null!=this[_0x285e[2003]]&&(this[_0x285e[2003]][_0x285e[235]]+=_0x4fa0x2,this[_0x285e[2003]][_0x285e[236]]+=_0x4fa0x3);null!=this[_0x285e[2004]]&&(this[_0x285e[2004]][_0x285e[235]]+=_0x4fa0x2,this[_0x285e[2004]][_0x285e[236]]+=_0x4fa0x3);if(this[_0x285e[2001]]&&null!=this[_0x285e[1525]]){for(var _0x4fa0x4=this[_0x285e[1525]][_0x285e[67]],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[1525]][_0x4fa0x5];null!=_0x4fa0x9&&(_0x4fa0x9[_0x285e[235]]+=_0x4fa0x2,_0x4fa0x9[_0x285e[236]]+=_0x4fa0x3)}}};var mxCellPath={PATH_SEPARATOR:_0x285e[87],create:function(_0x4fa0x2){var _0x4fa0x3=_0x285e[110];if(null!=_0x4fa0x2){for(var _0x4fa0x4=_0x4fa0x2[_0x285e[1197]]();null!=_0x4fa0x4;){_0x4fa0x3=_0x4fa0x4[_0x285e[1738]](_0x4fa0x2)+mxCellPath[_0x285e[1950]]+_0x4fa0x3,_0x4fa0x2=_0x4fa0x4,_0x4fa0x4=_0x4fa0x2[_0x285e[1197]]()}};_0x4fa0x2=_0x4fa0x3[_0x285e[67]];1<_0x4fa0x2&&(_0x4fa0x3=_0x4fa0x3[_0x285e[85]](0,_0x4fa0x2-1));return _0x4fa0x3},getParentPath:function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[1122]](mxCellPath.PATH_SEPARATOR);if(0<=_0x4fa0x3){return _0x4fa0x2[_0x285e[85]](0,_0x4fa0x3)};if(0<_0x4fa0x2[_0x285e[67]]){return _0x285e[110]}};return null},resolve:function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2;if(null!=_0x4fa0x3){for(var _0x4fa0x5=_0x4fa0x3[_0x285e[224]](mxCellPath.PATH_SEPARATOR),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5[_0x285e[67]];_0x4fa0x9++){_0x4fa0x4=_0x4fa0x4[_0x285e[263]](parseInt(_0x4fa0x5[_0x4fa0x9]))}};return _0x4fa0x4},compare:function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=Math[_0x285e[243]](_0x4fa0x2[_0x285e[67]],_0x4fa0x3[_0x285e[67]]),_0x4fa0x5=0,_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4;_0x4fa0x9++){if(_0x4fa0x2[_0x4fa0x9]!=_0x4fa0x3[_0x4fa0x9]){0==_0x4fa0x2[_0x4fa0x9][_0x285e[67]]||0==_0x4fa0x3[_0x4fa0x9][_0x285e[67]]?_0x4fa0x5=_0x4fa0x2[_0x4fa0x9]==_0x4fa0x3[_0x4fa0x9]?0:_0x4fa0x2[_0x4fa0x9]>_0x4fa0x3[_0x4fa0x9]?1:-1:(_0x4fa0x4=parseInt(_0x4fa0x2[_0x4fa0x9]),_0x4fa0x9=parseInt(_0x4fa0x3[_0x4fa0x9]),_0x4fa0x5=_0x4fa0x4==_0x4fa0x9?0:_0x4fa0x4>_0x4fa0x9?1:-1);break}};0==_0x4fa0x5&&(_0x4fa0x4=_0x4fa0x2[_0x285e[67]],_0x4fa0x9=_0x4fa0x3[_0x285e[67]],_0x4fa0x4!=_0x4fa0x9&&(_0x4fa0x5=_0x4fa0x4>_0x4fa0x9?1:-1));return _0x4fa0x5}},mxPerimeter={RectanglePerimeter:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=_0x4fa0x2[_0x285e[241]]();var _0x4fa0x9=_0x4fa0x2[_0x285e[242]](),_0x4fa0xa=Math[_0x285e[429]](_0x4fa0x4[_0x285e[236]]-_0x4fa0x9,_0x4fa0x4[_0x285e[235]]-_0x4fa0x3),_0x4fa0x12= new mxPoint(0,0),_0x4fa0x13=Math[_0x285e[424]],_0x4fa0x14=Math[_0x285e[424]]/2-_0x4fa0xa,_0x4fa0x15=Math[_0x285e[429]](_0x4fa0x2[_0x285e[119]],_0x4fa0x2[_0x285e[117]]);_0x4fa0xa<-_0x4fa0x13+_0x4fa0x15||_0x4fa0xa>_0x4fa0x13-_0x4fa0x15?(_0x4fa0x12[_0x285e[235]]=_0x4fa0x2[_0x285e[235]],_0x4fa0x12[_0x285e[236]]=_0x4fa0x9-_0x4fa0x2[_0x285e[117]]*Math[_0x285e[2008]](_0x4fa0xa)/2):_0x4fa0xa<-_0x4fa0x15?(_0x4fa0x12[_0x285e[236]]=_0x4fa0x2[_0x285e[236]],_0x4fa0x12[_0x285e[235]]=_0x4fa0x3-_0x4fa0x2[_0x285e[119]]*Math[_0x285e[2008]](_0x4fa0x14)/2):_0x4fa0xa<_0x4fa0x15?(_0x4fa0x12[_0x285e[235]]=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]],_0x4fa0x12[_0x285e[236]]=_0x4fa0x9+_0x4fa0x2[_0x285e[117]]*Math[_0x285e[2008]](_0x4fa0xa)/2):(_0x4fa0x12[_0x285e[236]]=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]],_0x4fa0x12[_0x285e[235]]=_0x4fa0x3+_0x4fa0x2[_0x285e[119]]*Math[_0x285e[2008]](_0x4fa0x14)/2);_0x4fa0x5&&(_0x4fa0x4[_0x285e[235]]>=_0x4fa0x2[_0x285e[235]]&&_0x4fa0x4[_0x285e[235]]<=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]?_0x4fa0x12[_0x285e[235]]=_0x4fa0x4[_0x285e[235]]:_0x4fa0x4[_0x285e[236]]>=_0x4fa0x2[_0x285e[236]]&&_0x4fa0x4[_0x285e[236]]<=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]&&(_0x4fa0x12[_0x285e[236]]=_0x4fa0x4[_0x285e[236]]),_0x4fa0x4[_0x285e[235]]<_0x4fa0x2[_0x285e[235]]?_0x4fa0x12[_0x285e[235]]=_0x4fa0x2[_0x285e[235]]:_0x4fa0x4[_0x285e[235]]>_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]&&(_0x4fa0x12[_0x285e[235]]=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]),_0x4fa0x4[_0x285e[236]]<_0x4fa0x2[_0x285e[236]]?_0x4fa0x12[_0x285e[236]]=_0x4fa0x2[_0x285e[236]]:_0x4fa0x4[_0x285e[236]]>_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]&&(_0x4fa0x12[_0x285e[236]]=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]));return _0x4fa0x12},EllipsePerimeter:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[235]],_0x4fa0xa=_0x4fa0x2[_0x285e[236]],_0x4fa0x12=_0x4fa0x2[_0x285e[117]]/2,_0x4fa0x13=_0x4fa0x2[_0x285e[119]]/2,_0x4fa0x14=_0x4fa0x9+_0x4fa0x12,_0x4fa0x15=_0x4fa0xa+_0x4fa0x13;_0x4fa0x3=_0x4fa0x4[_0x285e[235]];_0x4fa0x4=_0x4fa0x4[_0x285e[236]];var _0x4fa0x16=parseInt(_0x4fa0x3-_0x4fa0x14),_0x4fa0x17=parseInt(_0x4fa0x4-_0x4fa0x15);if(0==_0x4fa0x16&&0!=_0x4fa0x17){return new mxPoint(_0x4fa0x14,_0x4fa0x15+_0x4fa0x13*_0x4fa0x17/Math[_0x285e[425]](_0x4fa0x17))};if(0==_0x4fa0x16&&0==_0x4fa0x17){return new mxPoint(_0x4fa0x3,_0x4fa0x4)};if(_0x4fa0x5){if(_0x4fa0x4>=_0x4fa0xa&&_0x4fa0x4<=_0x4fa0xa+_0x4fa0x2[_0x285e[119]]){return _0x4fa0x2=_0x4fa0x4-_0x4fa0x15,_0x4fa0x2=Math[_0x285e[428]](_0x4fa0x12*_0x4fa0x12*(1-_0x4fa0x2*_0x4fa0x2/(_0x4fa0x13*_0x4fa0x13)))||0,_0x4fa0x3<=_0x4fa0x9&&(_0x4fa0x2= -_0x4fa0x2), new mxPoint(_0x4fa0x14+_0x4fa0x2,_0x4fa0x4)};if(_0x4fa0x3>=_0x4fa0x9&&_0x4fa0x3<=_0x4fa0x9+_0x4fa0x2[_0x285e[117]]){return _0x4fa0x2=_0x4fa0x3-_0x4fa0x14,_0x4fa0x2=Math[_0x285e[428]](_0x4fa0x13*_0x4fa0x13*(1-_0x4fa0x2*_0x4fa0x2/(_0x4fa0x12*_0x4fa0x12)))||0,_0x4fa0x4<=_0x4fa0xa&&(_0x4fa0x2= -_0x4fa0x2), new mxPoint(_0x4fa0x3,_0x4fa0x15+_0x4fa0x2)}};_0x4fa0x9=_0x4fa0x17/_0x4fa0x16;_0x4fa0x15-=_0x4fa0x9*_0x4fa0x14;_0x4fa0xa=_0x4fa0x12*_0x4fa0x12*_0x4fa0x9*_0x4fa0x9+_0x4fa0x13*_0x4fa0x13;_0x4fa0x2=-2*_0x4fa0x14*_0x4fa0xa;_0x4fa0x13=Math[_0x285e[428]](_0x4fa0x2*_0x4fa0x2-4*_0x4fa0xa*(_0x4fa0x12*_0x4fa0x12*_0x4fa0x9*_0x4fa0x9*_0x4fa0x14*_0x4fa0x14+_0x4fa0x13*_0x4fa0x13*_0x4fa0x14*_0x4fa0x14-_0x4fa0x12*_0x4fa0x12*_0x4fa0x13*_0x4fa0x13));_0x4fa0x12=(-_0x4fa0x2+_0x4fa0x13)/(2*_0x4fa0xa);_0x4fa0x13=(-_0x4fa0x2-_0x4fa0x13)/(2*_0x4fa0xa);_0x4fa0x14=_0x4fa0x9*_0x4fa0x12+_0x4fa0x15;_0x4fa0x15=_0x4fa0x9*_0x4fa0x13+_0x4fa0x15;_0x4fa0x9=Math[_0x285e[428]](Math[_0x285e[2009]](_0x4fa0x12-_0x4fa0x3,2)+Math[_0x285e[2009]](_0x4fa0x14-_0x4fa0x4,2));_0x4fa0x3=Math[_0x285e[428]](Math[_0x285e[2009]](_0x4fa0x13-_0x4fa0x3,2)+Math[_0x285e[2009]](_0x4fa0x15-_0x4fa0x4,2));_0x4fa0xa=_0x4fa0x4=0;_0x4fa0x9<_0x4fa0x3?(_0x4fa0x4=_0x4fa0x12,_0x4fa0xa=_0x4fa0x14):(_0x4fa0x4=_0x4fa0x13,_0x4fa0xa=_0x4fa0x15);return new mxPoint(_0x4fa0x4,_0x4fa0xa)},RhombusPerimeter:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=_0x4fa0x2[_0x285e[235]];var _0x4fa0x9=_0x4fa0x2[_0x285e[236]],_0x4fa0xa=_0x4fa0x2[_0x285e[117]];_0x4fa0x2=_0x4fa0x2[_0x285e[119]];var _0x4fa0x12=_0x4fa0x3+_0x4fa0xa/2,_0x4fa0x13=_0x4fa0x9+_0x4fa0x2/2,_0x4fa0x14=_0x4fa0x4[_0x285e[235]];_0x4fa0x4=_0x4fa0x4[_0x285e[236]];if(_0x4fa0x12==_0x4fa0x14){return _0x4fa0x13>_0x4fa0x4? new mxPoint(_0x4fa0x12,_0x4fa0x9): new mxPoint(_0x4fa0x12,_0x4fa0x9+_0x4fa0x2)};if(_0x4fa0x13==_0x4fa0x4){return _0x4fa0x12>_0x4fa0x14? new mxPoint(_0x4fa0x3,_0x4fa0x13): new mxPoint(_0x4fa0x3+_0x4fa0xa,_0x4fa0x13)};var _0x4fa0x15=_0x4fa0x12,_0x4fa0x16=_0x4fa0x13;_0x4fa0x5&&(_0x4fa0x14>=_0x4fa0x3&&_0x4fa0x14<=_0x4fa0x3+_0x4fa0xa?_0x4fa0x15=_0x4fa0x14:_0x4fa0x4>=_0x4fa0x9&&_0x4fa0x4<=_0x4fa0x9+_0x4fa0x2&&(_0x4fa0x16=_0x4fa0x4));return _0x4fa0x14<_0x4fa0x12?_0x4fa0x4<_0x4fa0x13?mxUtils[_0x285e[2010]](_0x4fa0x14,_0x4fa0x4,_0x4fa0x15,_0x4fa0x16,_0x4fa0x12,_0x4fa0x9,_0x4fa0x3,_0x4fa0x13):mxUtils[_0x285e[2010]](_0x4fa0x14,_0x4fa0x4,_0x4fa0x15,_0x4fa0x16,_0x4fa0x12,_0x4fa0x9+_0x4fa0x2,_0x4fa0x3,_0x4fa0x13):_0x4fa0x4<_0x4fa0x13?mxUtils[_0x285e[2010]](_0x4fa0x14,_0x4fa0x4,_0x4fa0x15,_0x4fa0x16,_0x4fa0x12,_0x4fa0x9,_0x4fa0x3+_0x4fa0xa,_0x4fa0x13):mxUtils[_0x285e[2010]](_0x4fa0x14,_0x4fa0x4,_0x4fa0x15,_0x4fa0x16,_0x4fa0x12,_0x4fa0x9+_0x4fa0x2,_0x4fa0x3+_0x4fa0xa,_0x4fa0x13)},TrianglePerimeter:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]][mxConstants[_0x285e[2011]]]:null;var _0x4fa0x9=_0x4fa0x3==mxConstants[_0x285e[1358]]||_0x4fa0x3==mxConstants[_0x285e[1354]],_0x4fa0xa=_0x4fa0x2[_0x285e[235]],_0x4fa0x12=_0x4fa0x2[_0x285e[236]],_0x4fa0x13=_0x4fa0x2[_0x285e[117]];_0x4fa0x2=_0x4fa0x2[_0x285e[119]];var _0x4fa0x14=_0x4fa0xa+_0x4fa0x13/2,_0x4fa0x15=_0x4fa0x12+_0x4fa0x2/2,_0x4fa0x16= new mxPoint(_0x4fa0xa,_0x4fa0x12),_0x4fa0x17= new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x15),_0x4fa0x18= new mxPoint(_0x4fa0xa,_0x4fa0x12+_0x4fa0x2);_0x4fa0x3==mxConstants[_0x285e[1358]]?(_0x4fa0x16=_0x4fa0x18,_0x4fa0x17= new mxPoint(_0x4fa0x14,_0x4fa0x12),_0x4fa0x18= new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x12+_0x4fa0x2)):_0x4fa0x3==mxConstants[_0x285e[1354]]?(_0x4fa0x17= new mxPoint(_0x4fa0x14,_0x4fa0x12+_0x4fa0x2),_0x4fa0x18= new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x12)):_0x4fa0x3==mxConstants[_0x285e[1359]]&&(_0x4fa0x16= new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x12),_0x4fa0x17= new mxPoint(_0x4fa0xa,_0x4fa0x15),_0x4fa0x18= new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x12+_0x4fa0x2));var _0x4fa0x19=_0x4fa0x4[_0x285e[235]]-_0x4fa0x14,_0x4fa0x1a=_0x4fa0x4[_0x285e[236]]-_0x4fa0x15,_0x4fa0x19=_0x4fa0x9?Math[_0x285e[429]](_0x4fa0x19,_0x4fa0x1a):Math[_0x285e[429]](_0x4fa0x1a,_0x4fa0x19),_0x4fa0x1b=_0x4fa0x9?Math[_0x285e[429]](_0x4fa0x13,_0x4fa0x2):Math[_0x285e[429]](_0x4fa0x2,_0x4fa0x13),_0x4fa0x1a=!1,_0x4fa0x1a=_0x4fa0x3==mxConstants[_0x285e[1358]]||_0x4fa0x3==mxConstants[_0x285e[1359]]?_0x4fa0x19>-_0x4fa0x1b&&_0x4fa0x19<_0x4fa0x1b:_0x4fa0x19<-Math[_0x285e[424]]+_0x4fa0x1b||_0x4fa0x19>Math[_0x285e[424]]-_0x4fa0x1b,_0x4fa0x1b=null;_0x4fa0x1a?_0x4fa0x1b=_0x4fa0x5&&(_0x4fa0x9&&_0x4fa0x4[_0x285e[235]]>=_0x4fa0x16[_0x285e[235]]&&_0x4fa0x4[_0x285e[235]]<=_0x4fa0x18[_0x285e[235]]||!_0x4fa0x9&&_0x4fa0x4[_0x285e[236]]>=_0x4fa0x16[_0x285e[236]]&&_0x4fa0x4[_0x285e[236]]<=_0x4fa0x18[_0x285e[236]])?_0x4fa0x9? new mxPoint(_0x4fa0x4[_0x285e[235]],_0x4fa0x16[_0x285e[236]]): new mxPoint(_0x4fa0x16[_0x285e[235]],_0x4fa0x4[_0x285e[236]]):_0x4fa0x3==mxConstants[_0x285e[1358]]? new mxPoint(_0x4fa0xa+_0x4fa0x13/2+_0x4fa0x2*Math[_0x285e[2008]](_0x4fa0x19)/2,_0x4fa0x12+_0x4fa0x2):_0x4fa0x3==mxConstants[_0x285e[1354]]? new mxPoint(_0x4fa0xa+_0x4fa0x13/2-_0x4fa0x2*Math[_0x285e[2008]](_0x4fa0x19)/2,_0x4fa0x12):_0x4fa0x3==mxConstants[_0x285e[1359]]? new mxPoint(_0x4fa0xa+_0x4fa0x13,_0x4fa0x12+_0x4fa0x2/2+_0x4fa0x13*Math[_0x285e[2008]](_0x4fa0x19)/2): new mxPoint(_0x4fa0xa,_0x4fa0x12+_0x4fa0x2/2-_0x4fa0x13*Math[_0x285e[2008]](_0x4fa0x19)/2):(_0x4fa0x5&&(_0x4fa0x5= new mxPoint(_0x4fa0x14,_0x4fa0x15),_0x4fa0x4[_0x285e[236]]>=_0x4fa0x12&&_0x4fa0x4[_0x285e[236]]<=_0x4fa0x12+_0x4fa0x2?(_0x4fa0x5[_0x285e[235]]=_0x4fa0x9?_0x4fa0x14:_0x4fa0x3==mxConstants[_0x285e[1359]]?_0x4fa0xa+_0x4fa0x13:_0x4fa0xa,_0x4fa0x5[_0x285e[236]]=_0x4fa0x4[_0x285e[236]]):_0x4fa0x4[_0x285e[235]]>=_0x4fa0xa&&_0x4fa0x4[_0x285e[235]]<=_0x4fa0xa+_0x4fa0x13&&(_0x4fa0x5[_0x285e[235]]=_0x4fa0x4[_0x285e[235]],_0x4fa0x5[_0x285e[236]]=!_0x4fa0x9?_0x4fa0x15:_0x4fa0x3==mxConstants[_0x285e[1358]]?_0x4fa0x12+_0x4fa0x2:_0x4fa0x12),_0x4fa0x14=_0x4fa0x5[_0x285e[235]],_0x4fa0x15=_0x4fa0x5[_0x285e[236]]),_0x4fa0x1b=_0x4fa0x9&&_0x4fa0x4[_0x285e[235]]<=_0x4fa0xa+_0x4fa0x13/2||!_0x4fa0x9&&_0x4fa0x4[_0x285e[236]]<=_0x4fa0x12+_0x4fa0x2/2?mxUtils[_0x285e[2010]](_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]],_0x4fa0x14,_0x4fa0x15,_0x4fa0x16[_0x285e[235]],_0x4fa0x16[_0x285e[236]],_0x4fa0x17[_0x285e[235]],_0x4fa0x17[_0x285e[236]]):mxUtils[_0x285e[2010]](_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]],_0x4fa0x14,_0x4fa0x15,_0x4fa0x17[_0x285e[235]],_0x4fa0x17[_0x285e[236]],_0x4fa0x18[_0x285e[235]],_0x4fa0x18[_0x285e[236]]));null==_0x4fa0x1b&&(_0x4fa0x1b= new mxPoint(_0x4fa0x14,_0x4fa0x15));return _0x4fa0x1b}};function mxPrintPreview(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[255]]=null!=_0x4fa0x3?_0x4fa0x3:1/_0x4fa0x2[_0x285e[2012]];this[_0x285e[467]]=null!=_0x4fa0x5?_0x4fa0x5:0;this[_0x285e[2013]]=null!=_0x4fa0x4?_0x4fa0x4:_0x4fa0x2[_0x285e[2013]];this[_0x285e[924]]=null!=_0x4fa0x13?_0x4fa0x13:_0x285e[2014];this[_0x285e[1732]]=null!=_0x4fa0x9?_0x4fa0x9:0;this[_0x285e[1733]]=null!=_0x4fa0xa?_0x4fa0xa:0;this[_0x285e[1630]]=_0x4fa0x12;this[_0x285e[2015]]=null!=_0x4fa0x14?_0x4fa0x14:!0}mxPrintPreview[_0x285e[202]][_0x285e[1179]]=null;mxPrintPreview[_0x285e[202]][_0x285e[2013]]=null;mxPrintPreview[_0x285e[202]][_0x285e[255]]=null;mxPrintPreview[_0x285e[202]][_0x285e[467]]=0;mxPrintPreview[_0x285e[202]][_0x285e[1732]]=0;mxPrintPreview[_0x285e[202]][_0x285e[1733]]=0;mxPrintPreview[_0x285e[202]][_0x285e[2016]]= !0;mxPrintPreview[_0x285e[202]][_0x285e[2017]]= !1;mxPrintPreview[_0x285e[202]][_0x285e[1630]]=null;mxPrintPreview[_0x285e[202]][_0x285e[924]]=null;mxPrintPreview[_0x285e[202]][_0x285e[2015]]=null;mxPrintPreview[_0x285e[202]][_0x285e[2018]]=null;mxPrintPreview[_0x285e[202]][_0x285e[2019]]=0;mxPrintPreview[_0x285e[202]][_0x285e[2020]]=function(){return this[_0x285e[2018]]};mxPrintPreview[_0x285e[202]][_0x285e[2021]]=function(){var _0x4fa0x2=_0x285e[110];8==document[_0x285e[5]]&&(_0x4fa0x2=_0x285e[2022]);return _0x4fa0x2};mxPrintPreview[_0x285e[202]][_0x285e[392]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[259]][_0x285e[2023]],_0x4fa0x4=null;try{this[_0x285e[2017]]&&(this[_0x285e[1179]][_0x285e[259]][_0x285e[2023]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[176]](_0x4fa0x2[_0x285e[441]][_0x285e[2024]]())});if(null==this[_0x285e[2018]]){this[_0x285e[2018]]=window[_0x285e[392]]();var _0x4fa0x5=this[_0x285e[2018]][_0x285e[395]],_0x4fa0x9=this[_0x285e[2021]]();null!=_0x4fa0x9&&0<_0x4fa0x9[_0x285e[67]]&&_0x4fa0x5[_0x285e[171]](_0x4fa0x9);_0x4fa0x5[_0x285e[171]](_0x285e[528]);_0x4fa0x5[_0x285e[171]](_0x285e[531]);this[_0x285e[2025]](_0x4fa0x5,_0x4fa0x2);_0x4fa0x5[_0x285e[171]](_0x285e[533]);_0x4fa0x5[_0x285e[171]](_0x285e[2026]);mxClient[_0x285e[54]](_0x285e[94],mxClient[_0x285e[86]]+_0x285e[95],_0x4fa0x5);mxClient[_0x285e[47]]&&(_0x4fa0x5[_0x285e[100]][_0x285e[99]](_0x285e[6],_0x285e[97]),_0x4fa0x5[_0x285e[100]][_0x285e[99]](_0x285e[7],_0x285e[101]),_0x4fa0x5[_0x285e[102]]()[_0x285e[103]]=_0x285e[104],mxClient[_0x285e[54]](_0x285e[94],mxClient[_0x285e[86]]+_0x285e[105],_0x4fa0x5));var _0x4fa0xa=this[_0x285e[1179]][_0x285e[517]]()[_0x285e[238]](),_0x4fa0x12=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[518]](),_0x4fa0x13=_0x4fa0x12/this[_0x285e[255]],_0x4fa0x14=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[512]]();this[_0x285e[2016]]||(this[_0x285e[1732]]=-_0x4fa0x14[_0x285e[235]]*this[_0x285e[255]],this[_0x285e[1733]]=-_0x4fa0x14[_0x285e[236]]*this[_0x285e[255]],_0x4fa0xa[_0x285e[117]]+=_0x4fa0xa[_0x285e[235]],_0x4fa0xa[_0x285e[119]]+=_0x4fa0xa[_0x285e[236]],_0x4fa0xa[_0x285e[235]]=0,this[_0x285e[467]]=_0x4fa0xa[_0x285e[236]]=0);_0x4fa0xa[_0x285e[117]]/=_0x4fa0x13;_0x4fa0xa[_0x285e[119]]/=_0x4fa0x13;var _0x4fa0x15=this[_0x285e[2013]][_0x285e[117]]-2*this[_0x285e[467]],_0x4fa0x16=this[_0x285e[2013]][_0x285e[119]]-2*this[_0x285e[467]],_0x4fa0x17=Math[_0x285e[160]](1,Math[_0x285e[430]]((_0x4fa0xa[_0x285e[117]]+this[_0x285e[1732]])/_0x4fa0x15)),_0x4fa0x18=Math[_0x285e[160]](1,Math[_0x285e[430]]((_0x4fa0xa[_0x285e[119]]+this[_0x285e[1733]])/_0x4fa0x16));this[_0x285e[2019]]=_0x4fa0x17*_0x4fa0x18;var _0x4fa0x19=mxUtils[_0x285e[885]](this,function(){if(this[_0x285e[2015]]&&(1<_0x4fa0x18||1<_0x4fa0x17)){var _0x4fa0x2=this[_0x285e[2027]](_0x4fa0x18,_0x4fa0x17);_0x4fa0x5[_0x285e[112]][_0x285e[62]](_0x4fa0x2);if(mxClient[_0x285e[80]]){_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[492];var _0x4fa0x3=function(){_0x4fa0x2[_0x285e[124]][_0x285e[125]]=_0x4fa0x5[_0x285e[112]][_0x285e[190]]+10+_0x285e[168]};mxEvent[_0x285e[169]](this[_0x285e[2018]],_0x285e[276],function(_0x4fa0x2){_0x4fa0x3()});mxEvent[_0x285e[169]](this[_0x285e[2018]],_0x285e[129],function(_0x4fa0x2){_0x4fa0x3()})}}});_0x4fa0x2=function(_0x4fa0x2,_0x4fa0x3){null!=this[_0x285e[1630]]&&(_0x4fa0x2[_0x285e[124]][_0x285e[1630]]=this[_0x285e[1630]],_0x4fa0x2[_0x285e[124]][_0x285e[465]]=_0x285e[1631],_0x4fa0x2[_0x285e[124]][_0x285e[1629]]=_0x285e[942]);_0x4fa0x2[_0x285e[124]][_0x285e[1537]]=_0x285e[1391];_0x4fa0x3&&(_0x4fa0x2[_0x285e[124]][_0x285e[2028]]=_0x285e[2029]);mxClient[_0x285e[80]]?(_0x4fa0x5[_0x285e[171]](_0x4fa0x2[_0x285e[342]]),_0x4fa0x2[_0x285e[265]][_0x285e[266]](_0x4fa0x2)):(_0x4fa0x2[_0x285e[265]][_0x285e[266]](_0x4fa0x2),_0x4fa0x5[_0x285e[112]][_0x285e[62]](_0x4fa0x2));if(_0x4fa0x3){var _0x4fa0x4=_0x4fa0x5[_0x285e[55]](_0x285e[1054]);_0x4fa0x4[_0x285e[926]]=_0x285e[2030];_0x4fa0x5[_0x285e[112]][_0x285e[62]](_0x4fa0x4)}};var _0x4fa0x1a=this[_0x285e[2031]](this[_0x285e[2013]][_0x285e[117]],this[_0x285e[2013]][_0x285e[119]]);if(null!=_0x4fa0x1a){for(var _0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x1a[_0x285e[67]];_0x4fa0x1b++){_0x4fa0x2(_0x4fa0x1a[_0x4fa0x1b],!0)}};for(var _0x4fa0x1c=this[_0x285e[2032]](this[_0x285e[2013]][_0x285e[117]],this[_0x285e[2013]][_0x285e[119]]),_0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x18;_0x4fa0x1b++){for(var _0x4fa0x1d=_0x4fa0x1b*_0x4fa0x16/this[_0x285e[255]]-this[_0x285e[1733]]/this[_0x285e[255]]+(_0x4fa0xa[_0x285e[236]]-_0x4fa0x14[_0x285e[236]]*_0x4fa0x12)/_0x4fa0x12,_0x4fa0x1a=0;_0x4fa0x1a<_0x4fa0x17;_0x4fa0x1a++){if(null==this[_0x285e[2018]]){return null};var _0x4fa0x1e=_0x4fa0x1a*_0x4fa0x15/this[_0x285e[255]]-this[_0x285e[1732]]/this[_0x285e[255]]+(_0x4fa0xa[_0x285e[235]]-_0x4fa0x14[_0x285e[235]]*_0x4fa0x12)/_0x4fa0x12,_0x4fa0x1f=_0x4fa0x1b*_0x4fa0x17+_0x4fa0x1a+1,_0x4fa0x4=this[_0x285e[2034]](this[_0x285e[2013]][_0x285e[117]],this[_0x285e[2013]][_0x285e[119]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2033]](-_0x4fa0x1e,-_0x4fa0x1d,this[_0x285e[255]],_0x4fa0x1f,_0x4fa0x2)}));_0x4fa0x4[_0x285e[57]](_0x285e[1363],_0x285e[2035]+_0x4fa0x1f);_0x4fa0x2(_0x4fa0x4,null!=_0x4fa0x1c||_0x4fa0x1b<_0x4fa0x18-1||_0x4fa0x1a<_0x4fa0x17-1)}};if(null!=_0x4fa0x1c){for(_0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x1c[_0x285e[67]];_0x4fa0x1b++){_0x4fa0x2(_0x4fa0x1c[_0x4fa0x1b],_0x4fa0x1b<_0x4fa0x1c[_0x285e[67]])}};_0x4fa0x5[_0x285e[171]](_0x285e[527]);_0x4fa0x5[_0x285e[171]](_0x285e[534]);_0x4fa0x5[_0x285e[268]]();_0x4fa0x19();mxEvent[_0x285e[762]](_0x4fa0x5[_0x285e[112]])};this[_0x285e[2018]][_0x285e[393]]()}catch(y){null!=_0x4fa0x4&&null!=_0x4fa0x4[_0x285e[265]]&&_0x4fa0x4[_0x285e[265]][_0x285e[266]](_0x4fa0x4)}finally{this[_0x285e[1179]][_0x285e[259]][_0x285e[2023]]=_0x4fa0x3};return this[_0x285e[2018]]};mxPrintPreview[_0x285e[202]][_0x285e[2025]]=function(_0x4fa0x2,_0x4fa0x3){null!=this[_0x285e[924]]&&_0x4fa0x2[_0x285e[171]](_0x285e[2036]+this[_0x285e[924]]+_0x285e[2037]);_0x4fa0x2[_0x285e[171]](_0x285e[2038]);_0x4fa0x2[_0x285e[171]](_0x285e[2039]);_0x4fa0x2[_0x285e[171]](_0x285e[2040]);_0x4fa0x2[_0x285e[171]](_0x285e[2041]);_0x4fa0x2[_0x285e[171]](_0x285e[233]);_0x4fa0x2[_0x285e[171]](_0x285e[2042]);_0x4fa0x2[_0x285e[171]](_0x285e[2043]);_0x4fa0x2[_0x285e[171]](_0x285e[2044]);_0x4fa0x2[_0x285e[171]](_0x285e[2045]);_0x4fa0x2[_0x285e[171]](_0x285e[233]);null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[171]](_0x4fa0x3);_0x4fa0x2[_0x285e[171]](_0x285e[2046])};mxPrintPreview[_0x285e[202]][_0x285e[2027]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[2018]][_0x285e[395]],_0x4fa0x5=_0x4fa0x4[_0x285e[55]](_0x285e[116]);_0x4fa0x5[_0x285e[926]]=_0x285e[2047];_0x4fa0x5[_0x285e[57]](_0x285e[467],_0x285e[468]);for(var _0x4fa0x9=_0x4fa0x4[_0x285e[55]](_0x285e[120]),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2;_0x4fa0xa++){for(var _0x4fa0x12=_0x4fa0x4[_0x285e[55]](_0x285e[121]),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x3;_0x4fa0x13++){var _0x4fa0x14=_0x4fa0xa*_0x4fa0x3+_0x4fa0x13+1,_0x4fa0x15=_0x4fa0x4[_0x285e[55]](_0x285e[122]);if(!mxClient[_0x285e[133]]||mxClient[_0x285e[75]]||mxClient[_0x285e[76]]){var _0x4fa0x16=_0x4fa0x4[_0x285e[55]](_0x285e[2048]);_0x4fa0x16[_0x285e[57]](_0x285e[44],_0x285e[2049]+_0x4fa0x14);mxUtils[_0x285e[53]](_0x4fa0x16,_0x4fa0x14,_0x4fa0x4);_0x4fa0x15[_0x285e[62]](_0x4fa0x16)}else {mxUtils[_0x285e[53]](_0x4fa0x15,_0x4fa0x14,_0x4fa0x4)};_0x4fa0x12[_0x285e[62]](_0x4fa0x15)};_0x4fa0x9[_0x285e[62]](_0x4fa0x12)};_0x4fa0x5[_0x285e[62]](_0x4fa0x9);return _0x4fa0x5};mxPrintPreview[_0x285e[202]][_0x285e[2034]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=document[_0x285e[55]](_0x285e[485]);try{_0x4fa0x5[_0x285e[124]][_0x285e[117]]=_0x4fa0x2+_0x285e[168];_0x4fa0x5[_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168];_0x4fa0x5[_0x285e[124]][_0x285e[277]]=_0x285e[188];_0x4fa0x5[_0x285e[124]][_0x285e[2050]]=_0x285e[1824];_0x4fa0x5[_0x285e[124]][_0x285e[491]]=_0x285e[1500];var _0x4fa0x9=document[_0x285e[55]](_0x285e[485]);_0x4fa0x9[_0x285e[124]][_0x285e[125]]=this[_0x285e[467]]+_0x285e[168];_0x4fa0x9[_0x285e[124]][_0x285e[361]]=this[_0x285e[467]]+_0x285e[168];_0x4fa0x9[_0x285e[124]][_0x285e[117]]=_0x4fa0x2-2*this[_0x285e[467]]+_0x285e[168];_0x4fa0x9[_0x285e[124]][_0x285e[119]]=_0x4fa0x3-2*this[_0x285e[467]]+_0x285e[168];_0x4fa0x9[_0x285e[124]][_0x285e[277]]=_0x285e[188];this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[1523]]&&(_0x4fa0x9[_0x285e[124]][_0x285e[491]]=_0x285e[492]);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);document[_0x285e[112]][_0x285e[62]](_0x4fa0x5);_0x4fa0x4(_0x4fa0x9)}catch(f){throw _0x4fa0x5[_0x285e[265]][_0x285e[266]](_0x4fa0x5),f};return _0x4fa0x5};mxPrintPreview[_0x285e[202]][_0x285e[2033]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]();var _0x4fa0xa=this[_0x285e[1179]][_0x285e[526]];this[_0x285e[1179]][_0x285e[526]]=_0x4fa0x9;var _0x4fa0x12=_0x4fa0x5[_0x285e[2051]](),_0x4fa0x13=_0x4fa0x5[_0x285e[2052]](),_0x4fa0x14=_0x4fa0x5[_0x285e[2024]](),_0x4fa0x15=_0x4fa0x5[_0x285e[1524]]();this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[508]]?_0x4fa0x5[_0x285e[1569]]():this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[1523]]?_0x4fa0x5[_0x285e[1571]]():_0x4fa0x5[_0x285e[1570]]();var _0x4fa0x16=_0x4fa0x5[_0x285e[503]]();_0x4fa0x5[_0x285e[504]](!1);var _0x4fa0x17=this[_0x285e[1179]][_0x285e[994]]();this[_0x285e[1179]][_0x285e[995]](!1);var _0x4fa0x18=_0x4fa0x5[_0x285e[512]]();_0x4fa0x5[_0x285e[513]]= new mxPoint(_0x4fa0x2,_0x4fa0x3);_0x4fa0x2=null;try{var _0x4fa0x19=[this[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]]()];_0x4fa0x2= new mxTemporaryCellStates(_0x4fa0x5,_0x4fa0x4,_0x4fa0x19)}finally{if(mxClient[_0x285e[80]]){_0x4fa0x5[_0x285e[506]][_0x285e[339]]=_0x285e[110]}else {for(_0x4fa0x4=_0x4fa0x9[_0x285e[285]];null!=_0x4fa0x4;){_0x4fa0x19=_0x4fa0x4[_0x285e[287]],_0x4fa0x3=_0x4fa0x4[_0x285e[301]][_0x285e[216]](),_0x285e[571]==_0x4fa0x3?(_0x4fa0x4[_0x285e[57]](_0x285e[117],parseInt(_0x4fa0x9[_0x285e[124]][_0x285e[117]])),_0x4fa0x4[_0x285e[57]](_0x285e[119],parseInt(_0x4fa0x9[_0x285e[124]][_0x285e[119]]))):_0x285e[583]!=_0x4fa0x4[_0x285e[124]][_0x285e[270]]&&_0x285e[116]!=_0x4fa0x3&&_0x4fa0x4[_0x285e[265]][_0x285e[266]](_0x4fa0x4),_0x4fa0x4=_0x4fa0x19}};_0x4fa0x5[_0x285e[506]][_0x285e[265]][_0x285e[266]](_0x4fa0x5[_0x285e[506]]);this[_0x285e[1179]][_0x285e[995]](_0x4fa0x17);this[_0x285e[1179]][_0x285e[526]]=_0x4fa0xa;_0x4fa0x5[_0x285e[510]]=_0x4fa0x12;_0x4fa0x5[_0x285e[2053]]=_0x4fa0x13;_0x4fa0x5[_0x285e[505]]=_0x4fa0x14;_0x4fa0x5[_0x285e[506]]=_0x4fa0x15;_0x4fa0x5[_0x285e[513]]=_0x4fa0x18;_0x4fa0x2[_0x285e[515]]();_0x4fa0x5[_0x285e[504]](_0x4fa0x16)}};mxPrintPreview[_0x285e[202]][_0x285e[2031]]=function(){return null};mxPrintPreview[_0x285e[202]][_0x285e[2032]]=function(){return null};mxPrintPreview[_0x285e[202]][_0x285e[540]]=function(){var _0x4fa0x2=this[_0x285e[392]]();null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[540]]()};mxPrintPreview[_0x285e[202]][_0x285e[268]]=function(){null!=this[_0x285e[2018]]&&(this[_0x285e[2018]][_0x285e[268]](),this[_0x285e[2018]]=null)};function mxStylesheet(){this[_0x285e[2054]]={};this[_0x285e[2056]](this[_0x285e[2055]]());this[_0x285e[2058]](this[_0x285e[2057]]())}mxStylesheet[_0x285e[202]][_0x285e[2055]]=function(){var _0x4fa0x2={};_0x4fa0x2[mxConstants[_0x285e[2059]]]=mxConstants[_0x285e[2060]];_0x4fa0x2[mxConstants[_0x285e[2061]]]=mxPerimeter[_0x285e[2062]];_0x4fa0x2[mxConstants[_0x285e[2063]]]=mxConstants[_0x285e[481]];_0x4fa0x2[mxConstants[_0x285e[2064]]]=mxConstants[_0x285e[479]];_0x4fa0x2[mxConstants[_0x285e[2065]]]=_0x285e[2066];_0x4fa0x2[mxConstants[_0x285e[2067]]]=_0x285e[2068];_0x4fa0x2[mxConstants[_0x285e[2069]]]=_0x285e[2070];return _0x4fa0x2};mxStylesheet[_0x285e[202]][_0x285e[2057]]=function(){var _0x4fa0x2={};_0x4fa0x2[mxConstants[_0x285e[2059]]]=mxConstants[_0x285e[2071]];_0x4fa0x2[mxConstants[_0x285e[1695]]]=mxConstants[_0x285e[1622]];_0x4fa0x2[mxConstants[_0x285e[2063]]]=mxConstants[_0x285e[481]];_0x4fa0x2[mxConstants[_0x285e[2064]]]=mxConstants[_0x285e[479]];_0x4fa0x2[mxConstants[_0x285e[2067]]]=_0x285e[2068];_0x4fa0x2[mxConstants[_0x285e[2069]]]=_0x285e[2072];return _0x4fa0x2};mxStylesheet[_0x285e[202]][_0x285e[2056]]=function(_0x4fa0x2){this[_0x285e[2074]](_0x285e[2073],_0x4fa0x2)};mxStylesheet[_0x285e[202]][_0x285e[2058]]=function(_0x4fa0x2){this[_0x285e[2074]](_0x285e[2075],_0x4fa0x2)};mxStylesheet[_0x285e[202]][_0x285e[2076]]=function(){return this[_0x285e[2054]][_0x285e[2073]]};mxStylesheet[_0x285e[202]][_0x285e[2077]]=function(){return this[_0x285e[2054]][_0x285e[2075]]};mxStylesheet[_0x285e[202]][_0x285e[2074]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2054]][_0x4fa0x2]=_0x4fa0x3};mxStylesheet[_0x285e[202]][_0x285e[1705]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x3;if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[224]](_0x285e[471]),_0x4fa0x4=null!=_0x4fa0x4&&_0x285e[471]!=_0x4fa0x2[_0x285e[225]](0)?mxUtils[_0x285e[238]](_0x4fa0x4):{},_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x5[_0x4fa0x9],_0x4fa0x12=_0x4fa0xa[_0x285e[2]](_0x285e[226]);if(0<=_0x4fa0x12){var _0x4fa0x13=_0x4fa0xa[_0x285e[85]](0,_0x4fa0x12),_0x4fa0xa=_0x4fa0xa[_0x285e[85]](_0x4fa0x12+1);_0x4fa0xa==mxConstants[_0x285e[217]]? delete _0x4fa0x4[_0x4fa0x13]:mxUtils[_0x285e[1946]](_0x4fa0xa)?_0x4fa0x4[_0x4fa0x13]=parseFloat(_0x4fa0xa):_0x4fa0x4[_0x4fa0x13]=_0x4fa0xa}else {if(_0x4fa0xa=this[_0x285e[2054]][_0x4fa0xa],null!=_0x4fa0xa){for(_0x4fa0x13 in _0x4fa0xa){_0x4fa0x4[_0x4fa0x13]=_0x4fa0xa[_0x4fa0x13]}}}}};return _0x4fa0x4};function mxCellState(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[441]]=_0x4fa0x2;this[_0x285e[246]]=_0x4fa0x3;this[_0x285e[124]]=_0x4fa0x4;this[_0x285e[2078]]= new mxPoint;this[_0x285e[2079]]= new mxPoint}mxCellState[_0x285e[202]]= new mxRectangle;mxCellState[_0x285e[202]][_0x285e[196]]=mxCellState;mxCellState[_0x285e[202]][_0x285e[441]]=null;mxCellState[_0x285e[202]][_0x285e[246]]=null;mxCellState[_0x285e[202]][_0x285e[124]]=null;mxCellState[_0x285e[202]][_0x285e[2080]]= !0;mxCellState[_0x285e[202]][_0x285e[2081]]= !1;mxCellState[_0x285e[202]][_0x285e[2082]]= !1;mxCellState[_0x285e[202]][_0x285e[2078]]=null;mxCellState[_0x285e[202]][_0x285e[439]]=null;mxCellState[_0x285e[202]][_0x285e[2079]]=null;mxCellState[_0x285e[202]][_0x285e[2083]]=null;mxCellState[_0x285e[202]][_0x285e[2084]]=null;mxCellState[_0x285e[202]][_0x285e[2085]]=0;mxCellState[_0x285e[202]][_0x285e[67]]=0;mxCellState[_0x285e[202]][_0x285e[2086]]=null;mxCellState[_0x285e[202]][_0x285e[253]]=null;mxCellState[_0x285e[202]][_0x285e[963]]=null;mxCellState[_0x285e[202]][_0x285e[2087]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=_0x4fa0x2||0;_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3: new mxRectangle(this[_0x285e[235]],this[_0x285e[236]],this[_0x285e[117]],this[_0x285e[119]]);if(null!=this[_0x285e[253]]&&null!=this[_0x285e[253]][_0x285e[1561]]){var _0x4fa0x4=this[_0x285e[253]][_0x285e[1561]][_0x285e[1548]](this[_0x285e[124]],_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]],_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]]);_0x4fa0x3[_0x285e[235]]=_0x4fa0x4[_0x285e[235]];_0x4fa0x3[_0x285e[236]]=_0x4fa0x4[_0x285e[236]];_0x4fa0x3[_0x285e[117]]=this[_0x285e[253]][_0x285e[1561]][_0x285e[1532]]*_0x4fa0x4[_0x285e[117]];_0x4fa0x3[_0x285e[119]]=this[_0x285e[253]][_0x285e[1561]][_0x285e[1533]]*_0x4fa0x4[_0x285e[119]]};0!=_0x4fa0x2&&_0x4fa0x3[_0x285e[244]](_0x4fa0x2);return _0x4fa0x3};mxCellState[_0x285e[202]][_0x285e[2088]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3?(null==this[_0x285e[439]]&&(this[_0x285e[439]]=[]),0==this[_0x285e[439]][_0x285e[67]]?this[_0x285e[439]][_0x285e[207]](_0x4fa0x2):this[_0x285e[439]][0]=_0x4fa0x2):null==this[_0x285e[439]]?(this[_0x285e[439]]=[],this[_0x285e[439]][_0x285e[207]](null),this[_0x285e[439]][_0x285e[207]](_0x4fa0x2)):1==this[_0x285e[439]][_0x285e[67]]?this[_0x285e[439]][_0x285e[207]](_0x4fa0x2):this[_0x285e[439]][this[_0x285e[439]][_0x285e[67]]-1]=_0x4fa0x2};mxCellState[_0x285e[202]][_0x285e[1609]]=function(_0x4fa0x2){null!=this[_0x285e[253]]&&this[_0x285e[253]][_0x285e[1609]](_0x4fa0x2);null!=this[_0x285e[963]]&&this[_0x285e[963]][_0x285e[1609]](_0x4fa0x2)};mxCellState[_0x285e[202]][_0x285e[1710]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[2089]](_0x4fa0x2);return null!=_0x4fa0x2?_0x4fa0x2[_0x285e[246]]:null};mxCellState[_0x285e[202]][_0x285e[2089]]=function(_0x4fa0x2){return _0x4fa0x2?this[_0x285e[2083]]:this[_0x285e[2084]]};mxCellState[_0x285e[202]][_0x285e[2090]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3?this[_0x285e[2083]]=_0x4fa0x2:this[_0x285e[2084]]=_0x4fa0x2};mxCellState[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[441]][_0x285e[1179]][_0x285e[259]][_0x285e[515]](this)};mxCellState[_0x285e[202]][_0x285e[238]]=function(){var _0x4fa0x2= new mxCellState(this[_0x285e[441]],this[_0x285e[246]],this[_0x285e[124]]);if(null!=this[_0x285e[439]]){_0x4fa0x2[_0x285e[439]]=[];for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[439]][_0x285e[67]];_0x4fa0x3++){_0x4fa0x2[_0x285e[439]][_0x4fa0x3]=this[_0x285e[439]][_0x4fa0x3][_0x285e[238]]()}};null!=this[_0x285e[2078]]&&(_0x4fa0x2[_0x285e[2078]]=this[_0x285e[2078]][_0x285e[238]]());null!=this[_0x285e[2079]]&&(_0x4fa0x2[_0x285e[2079]]=this[_0x285e[2079]][_0x285e[238]]());null!=this[_0x285e[1563]]&&(_0x4fa0x2[_0x285e[1563]]=this[_0x285e[1563]][_0x285e[238]]());_0x4fa0x2[_0x285e[2085]]=this[_0x285e[2085]];_0x4fa0x2[_0x285e[2086]]=this[_0x285e[2086]];_0x4fa0x2[_0x285e[67]]=this[_0x285e[67]];_0x4fa0x2[_0x285e[235]]=this[_0x285e[235]];_0x4fa0x2[_0x285e[236]]=this[_0x285e[236]];_0x4fa0x2[_0x285e[117]]=this[_0x285e[117]];_0x4fa0x2[_0x285e[119]]=this[_0x285e[119]];return _0x4fa0x2};function mxGraphSelectionModel(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[895]]=[]}mxGraphSelectionModel[_0x285e[202]]= new mxEventSource;mxGraphSelectionModel[_0x285e[202]][_0x285e[196]]=mxGraphSelectionModel;mxGraphSelectionModel[_0x285e[202]][_0x285e[2091]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[819]:_0x285e[110];mxGraphSelectionModel[_0x285e[202]][_0x285e[2092]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2093]:_0x285e[110];mxGraphSelectionModel[_0x285e[202]][_0x285e[1179]]=null;mxGraphSelectionModel[_0x285e[202]][_0x285e[2094]]= !1;mxGraphSelectionModel[_0x285e[202]][_0x285e[2095]]=function(){return this[_0x285e[2094]]};mxGraphSelectionModel[_0x285e[202]][_0x285e[2096]]=function(_0x4fa0x2){this[_0x285e[2094]]=_0x4fa0x2};mxGraphSelectionModel[_0x285e[202]][_0x285e[2097]]=function(_0x4fa0x2){return null!=_0x4fa0x2?0<=mxUtils[_0x285e[2]](this[_0x285e[895]],_0x4fa0x2):!1};mxGraphSelectionModel[_0x285e[202]][_0x285e[1107]]=function(){return 0==this[_0x285e[895]][_0x285e[67]]};mxGraphSelectionModel[_0x285e[202]][_0x285e[200]]=function(){this[_0x285e[2098]](null,this[_0x285e[895]])};mxGraphSelectionModel[_0x285e[202]][_0x285e[2099]]=function(_0x4fa0x2){null!=_0x4fa0x2&&this[_0x285e[2100]]([_0x4fa0x2])};mxGraphSelectionModel[_0x285e[202]][_0x285e[2100]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){this[_0x285e[2094]]&&(_0x4fa0x2=[this[_0x285e[2101]](_0x4fa0x2)]);for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){this[_0x285e[1179]][_0x285e[2102]](_0x4fa0x2[_0x4fa0x4])&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])};this[_0x285e[2098]](_0x4fa0x3,this[_0x285e[895]])}};mxGraphSelectionModel[_0x285e[202]][_0x285e[2101]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){if(this[_0x285e[1179]][_0x285e[2102]](_0x4fa0x2[_0x4fa0x3])){return _0x4fa0x2[_0x4fa0x3]}}};return null};mxGraphSelectionModel[_0x285e[202]][_0x285e[2103]]=function(_0x4fa0x2){null!=_0x4fa0x2&&this[_0x285e[832]]([_0x4fa0x2])};mxGraphSelectionModel[_0x285e[202]][_0x285e[832]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=null;this[_0x285e[2094]]&&(_0x4fa0x3=this[_0x285e[895]],_0x4fa0x2=[this[_0x285e[2101]](_0x4fa0x2)]);for(var _0x4fa0x4=[],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){!this[_0x285e[2097]](_0x4fa0x2[_0x4fa0x5])&&this[_0x285e[1179]][_0x285e[2102]](_0x4fa0x2[_0x4fa0x5])&&_0x4fa0x4[_0x285e[207]](_0x4fa0x2[_0x4fa0x5])};this[_0x285e[2098]](_0x4fa0x4,_0x4fa0x3)}};mxGraphSelectionModel[_0x285e[202]][_0x285e[2104]]=function(_0x4fa0x2){null!=_0x4fa0x2&&this[_0x285e[842]]([_0x4fa0x2])};mxGraphSelectionModel[_0x285e[202]][_0x285e[842]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){this[_0x285e[2097]](_0x4fa0x2[_0x4fa0x4])&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])};this[_0x285e[2098]](null,_0x4fa0x3)}};mxGraphSelectionModel[_0x285e[202]][_0x285e[2098]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]&&null!=_0x4fa0x2[0]||null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]&&null!=_0x4fa0x3[0]){var _0x4fa0x4= new mxSelectionChange(this,_0x4fa0x2,_0x4fa0x3);_0x4fa0x4[_0x285e[350]]();var _0x4fa0x5= new mxUndoableEdit(this,!1);_0x4fa0x5[_0x285e[99]](_0x4fa0x4);this[_0x285e[746]]( new mxEventObject(mxEvent.UNDO,_0x285e[1061],_0x4fa0x5))}};mxGraphSelectionModel[_0x285e[202]][_0x285e[1941]]=function(_0x4fa0x2){null!=_0x4fa0x2&&!this[_0x285e[2097]](_0x4fa0x2)&&this[_0x285e[895]][_0x285e[207]](_0x4fa0x2)};mxGraphSelectionModel[_0x285e[202]][_0x285e[1102]]=function(_0x4fa0x2){null!=_0x4fa0x2&&(_0x4fa0x2=mxUtils[_0x285e[2]](this[_0x285e[895]],_0x4fa0x2),0<=_0x4fa0x2&&this[_0x285e[895]][_0x285e[300]](_0x4fa0x2,1))};function mxSelectionChange(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[2105]]=_0x4fa0x2;this[_0x285e[2106]]=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[1853]]():null;this[_0x285e[2107]]=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[1853]]():null}mxSelectionChange[_0x285e[202]][_0x285e[350]]=function(){var _0x4fa0x2=mxLog[_0x285e[2109]](_0x285e[2108]);window[_0x285e[879]]=mxResources[_0x285e[203]](this[_0x285e[2105]][_0x285e[2092]])||this[_0x285e[2105]][_0x285e[2092]];if(null!=this[_0x285e[2107]]){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[2107]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[2105]][_0x285e[1102]](this[_0x285e[2107]][_0x4fa0x3])}};if(null!=this[_0x285e[2106]]){for(_0x4fa0x3=0;_0x4fa0x3<this[_0x285e[2106]][_0x285e[67]];_0x4fa0x3++){this[_0x285e[2105]][_0x285e[1941]](this[_0x285e[2106]][_0x4fa0x3])}};_0x4fa0x3=this[_0x285e[2106]];this[_0x285e[2106]]=this[_0x285e[2107]];this[_0x285e[2107]]=_0x4fa0x3;window[_0x285e[879]]=mxResources[_0x285e[203]](this[_0x285e[2105]][_0x285e[2091]])||this[_0x285e[2105]][_0x285e[2091]];mxLog[_0x285e[2110]](_0x285e[2108],_0x4fa0x2);this[_0x285e[2105]][_0x285e[746]]( new mxEventObject(mxEvent.CHANGE,_0x285e[2106],this[_0x285e[2106]],_0x285e[2107],this[_0x285e[2107]]))};function mxCellEditor(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2}mxCellEditor[_0x285e[202]][_0x285e[1179]]=null;mxCellEditor[_0x285e[202]][_0x285e[126]]=null;mxCellEditor[_0x285e[202]][_0x285e[2111]]=null;mxCellEditor[_0x285e[202]][_0x285e[2112]]=null;mxCellEditor[_0x285e[202]][_0x285e[2113]]= !1;mxCellEditor[_0x285e[202]][_0x285e[2114]]= !0;mxCellEditor[_0x285e[202]][_0x285e[2115]]=_0x285e[110];mxCellEditor[_0x285e[202]][_0x285e[2116]]=_0x285e[110];mxCellEditor[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[126]]=document[_0x285e[55]](_0x285e[126]);this[_0x285e[126]][_0x285e[926]]=_0x285e[2117];this[_0x285e[126]][_0x285e[124]][_0x285e[491]]=_0x285e[492];this[_0x285e[126]][_0x285e[124]][_0x285e[277]]=_0x285e[189];this[_0x285e[126]][_0x285e[57]](_0x285e[2118],_0x285e[2119]);this[_0x285e[126]][_0x285e[57]](_0x285e[969],_0x285e[2120]);mxClient[_0x285e[133]]&&(this[_0x285e[126]][_0x285e[124]][_0x285e[129]]=_0x285e[130]);mxEvent[_0x285e[169]](this[_0x285e[126]],_0x285e[2121],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2122]]()}));mxEvent[_0x285e[169]](this[_0x285e[126]],_0x285e[2123],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){mxEvent[_0x285e[721]](_0x4fa0x2)||(113==_0x4fa0x2[_0x285e[2124]]||this[_0x285e[1179]][_0x285e[2125]]()&&13==_0x4fa0x2[_0x285e[2124]]&&!mxEvent[_0x285e[775]](_0x4fa0x2)&&!mxEvent[_0x285e[774]](_0x4fa0x2)?(this[_0x285e[1179]][_0x285e[2126]](!1),mxEvent[_0x285e[722]](_0x4fa0x2)):27==_0x4fa0x2[_0x285e[2124]]?(this[_0x285e[1179]][_0x285e[2126]](!0),mxEvent[_0x285e[722]](_0x4fa0x2)):(this[_0x285e[2127]]&&(this[_0x285e[2127]]= !1,this[_0x285e[126]][_0x285e[131]]=_0x285e[110]),this[_0x285e[2128]](!0)))}));mxEvent[_0x285e[169]](this[_0x285e[126]],_0x285e[2129],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2114]]&&!mxEvent[_0x285e[721]](_0x4fa0x2)&&setTimeout(mxUtils[_0x285e[885]](this,function(){this[_0x285e[129]]()}),0)}))};mxCellEditor[_0x285e[202]][_0x285e[129]]=function(){if(null!=this[_0x285e[1653]]){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](this[_0x285e[2111]]),_0x4fa0x3=this[_0x285e[1179]][_0x285e[2130]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4=this[_0x285e[1179]][_0x285e[2131]](_0x4fa0x2[_0x285e[246]]);if(this[_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]])){this[_0x285e[1562]][_0x285e[235]]=_0x4fa0x2[_0x285e[2079]][_0x285e[235]],this[_0x285e[1562]][_0x285e[236]]=_0x4fa0x2[_0x285e[2079]][_0x285e[236]],this[_0x285e[1562]][_0x285e[117]]=0,this[_0x285e[1562]][_0x285e[119]]=0}else {if(null!=this[_0x285e[1562]]){this[_0x285e[1562]][_0x285e[235]]=_0x4fa0x2[_0x285e[235]];this[_0x285e[1562]][_0x285e[236]]=_0x4fa0x2[_0x285e[236]];this[_0x285e[1562]][_0x285e[117]]=_0x4fa0x2[_0x285e[117]];this[_0x285e[1562]][_0x285e[119]]=_0x4fa0x2[_0x285e[119]];var _0x4fa0x5=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);_0x4fa0x5==mxConstants[_0x285e[2132]]?this[_0x285e[1562]][_0x285e[235]]-=_0x4fa0x2[_0x285e[117]]:_0x4fa0x5==mxConstants[_0x285e[480]]&&(this[_0x285e[1562]][_0x285e[235]]+=_0x4fa0x2[_0x285e[117]]);_0x4fa0x5=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);_0x4fa0x5==mxConstants[_0x285e[1687]]?this[_0x285e[1562]][_0x285e[236]]-=_0x4fa0x2[_0x285e[119]]:_0x4fa0x5==mxConstants[_0x285e[482]]&&(this[_0x285e[1562]][_0x285e[236]]+=_0x4fa0x2[_0x285e[119]])}};_0x4fa0x5=this[_0x285e[126]][_0x285e[131]];if(_0x285e[192]==_0x4fa0x5[_0x285e[225]](_0x4fa0x5[_0x285e[67]]-1)||_0x285e[110]==_0x4fa0x5){_0x4fa0x5+=_0x285e[544]};_0x4fa0x5=mxUtils[_0x285e[321]](_0x4fa0x5,!1);_0x4fa0x4?(this[_0x285e[1653]][_0x285e[124]][_0x285e[493]]=_0x285e[1502],this[_0x285e[1653]][_0x285e[124]][_0x285e[117]]=this[_0x285e[1562]][_0x285e[117]]+_0x285e[168]):_0x4fa0x5=_0x4fa0x5[_0x285e[230]](/ /g,_0x285e[544]);_0x4fa0x5=_0x4fa0x5[_0x285e[230]](/\n/g,_0x285e[1453]);this[_0x285e[1653]][_0x285e[339]]=_0x4fa0x5;var _0x4fa0x5=this[_0x285e[1653]][_0x285e[359]]+30,_0x4fa0x9=this[_0x285e[1653]][_0x285e[167]]+16,_0x4fa0x5=Math[_0x285e[160]](_0x4fa0x5,40),_0x4fa0x9=Math[_0x285e[160]](_0x4fa0x9,20);_0x4fa0x3&&(_0x4fa0x5=Math[_0x285e[243]](this[_0x285e[1562]][_0x285e[117]]-4,_0x4fa0x5),_0x4fa0x9=Math[_0x285e[243]](this[_0x285e[1562]][_0x285e[119]],_0x4fa0x9));var _0x4fa0xa=null!=_0x4fa0x2[_0x285e[963]]?_0x4fa0x2[_0x285e[963]][_0x285e[1655]]:null;null==_0x4fa0xa&&(_0x4fa0xa=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),_0x4fa0x2=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE),_0x4fa0xa=mxUtils[_0x285e[1501]](_0x4fa0xa,_0x4fa0x2));if(null!=_0x4fa0xa){if(_0x4fa0x3|| !_0x4fa0x4){this[_0x285e[126]][_0x285e[124]][_0x285e[361]]=Math[_0x285e[160]](0,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[235]]-_0x4fa0xa[_0x285e[235]]*this[_0x285e[1562]][_0x285e[117]]+_0x4fa0xa[_0x285e[235]]*_0x4fa0x5)-3)+_0x285e[168]};this[_0x285e[126]][_0x285e[124]][_0x285e[125]]=Math[_0x285e[160]](0,Math[_0x285e[488]](this[_0x285e[1562]][_0x285e[236]]-_0x4fa0xa[_0x285e[236]]*this[_0x285e[1562]][_0x285e[119]]+_0x4fa0xa[_0x285e[236]]*_0x4fa0x9)+4)+_0x285e[168]};if(_0x4fa0x3|| !_0x4fa0x4){this[_0x285e[126]][_0x285e[124]][_0x285e[117]]=_0x4fa0x5+_0x285e[168]};this[_0x285e[126]][_0x285e[124]][_0x285e[119]]=_0x4fa0x9+_0x285e[168]}};mxCellEditor[_0x285e[202]][_0x285e[2133]]=function(){return this[_0x285e[2113]]};mxCellEditor[_0x285e[202]][_0x285e[2128]]=function(_0x4fa0x2){this[_0x285e[2113]]=_0x4fa0x2};mxCellEditor[_0x285e[202]][_0x285e[2122]]=function(){this[_0x285e[2126]](!this[_0x285e[1179]][_0x285e[2134]]())};mxCellEditor[_0x285e[202]][_0x285e[855]]=function(_0x4fa0x2,_0x4fa0x3){null==this[_0x285e[126]]&&this[_0x285e[176]]();this[_0x285e[2126]](!0);var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);if(null!=_0x4fa0x4){this[_0x285e[2111]]=_0x4fa0x2;this[_0x285e[2112]]=_0x4fa0x3;this[_0x285e[2116]]=null;null!=_0x4fa0x4[_0x285e[963]]&&this[_0x285e[2135]](_0x4fa0x4)&&(this[_0x285e[2116]]=_0x4fa0x4[_0x285e[963]][_0x285e[252]],this[_0x285e[2116]][_0x285e[124]][_0x285e[187]]=_0x285e[188]);var _0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x5=mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE)*_0x4fa0x5,_0x4fa0x9=mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),_0x4fa0xa=mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTCOLOR,_0x285e[586]),_0x4fa0x12=mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),_0x4fa0x13=(mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x285e[1410]])==mxConstants[_0x285e[1410]],_0x4fa0x14=(mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x285e[1412]])==mxConstants[_0x285e[1412]],_0x4fa0x15=(mxUtils[_0x285e[433]](_0x4fa0x4[_0x285e[124]],mxConstants.STYLE_FONTSTYLE,0)&mxConstants[_0x285e[1414]])==mxConstants[_0x285e[1414]];this[_0x285e[126]][_0x285e[124]][_0x285e[487]]=Math[_0x285e[488]](_0x4fa0x5)+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[489]]=Math[_0x285e[488]](_0x4fa0x5*mxConstants[_0x285e[490]])+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[486]]=_0x4fa0x9;this[_0x285e[126]][_0x285e[124]][_0x285e[1165]]=_0x4fa0x12;this[_0x285e[126]][_0x285e[124]][_0x285e[352]]=_0x4fa0xa;this[_0x285e[126]][_0x285e[124]][_0x285e[1452]]=_0x4fa0x13?_0x285e[1447]:_0x285e[1502];this[_0x285e[126]][_0x285e[124]][_0x285e[666]]=_0x4fa0x14?_0x285e[1449]:_0x285e[110];this[_0x285e[126]][_0x285e[124]][_0x285e[354]]=_0x4fa0x15?_0x285e[355]:_0x285e[110];this[_0x285e[126]][_0x285e[124]][_0x285e[277]]=_0x285e[278];this[_0x285e[126]][_0x285e[124]][_0x285e[2136]]=_0x285e[130];this[_0x285e[1562]]=_0x4fa0x5=this[_0x285e[2137]](_0x4fa0x4);this[_0x285e[126]][_0x285e[124]][_0x285e[361]]=_0x4fa0x5[_0x285e[235]]+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[125]]=_0x4fa0x5[_0x285e[236]]+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[117]]=_0x4fa0x5[_0x285e[117]]+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[119]]=_0x4fa0x5[_0x285e[119]]+_0x285e[168];this[_0x285e[126]][_0x285e[124]][_0x285e[931]]=5;_0x4fa0x4=this[_0x285e[2138]](_0x4fa0x4,_0x4fa0x3);null==_0x4fa0x4||0==_0x4fa0x4[_0x285e[67]]?(_0x4fa0x4=this[_0x285e[2139]](),this[_0x285e[2127]]= !0):this[_0x285e[2127]]= !1;this[_0x285e[2128]](!1);this[_0x285e[126]][_0x285e[131]]=_0x4fa0x4;this[_0x285e[1179]][_0x285e[526]][_0x285e[62]](this[_0x285e[126]]);_0x285e[130]!=this[_0x285e[126]][_0x285e[124]][_0x285e[495]]&&(this[_0x285e[2114]]&&(this[_0x285e[1653]]=this[_0x285e[2140]](),document[_0x285e[112]][_0x285e[62]](this[_0x285e[1653]]),this[_0x285e[129]]()),this[_0x285e[126]][_0x285e[393]](),this[_0x285e[126]][_0x285e[804]]())}};mxCellEditor[_0x285e[202]][_0x285e[2140]]=function(){var _0x4fa0x2=document[_0x285e[55]](_0x285e[485]),_0x4fa0x3=_0x4fa0x2[_0x285e[124]];_0x4fa0x3[_0x285e[491]]=_0x285e[492];_0x4fa0x3[_0x285e[493]]=_0x285e[494];_0x4fa0x3[_0x285e[187]]=_0x285e[188];_0x4fa0x3[_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498];_0x4fa0x3[_0x285e[499]]=_0x285e[500];_0x4fa0x3[_0x285e[123]]=_0x285e[125];_0x4fa0x3[_0x285e[489]]=this[_0x285e[126]][_0x285e[124]][_0x285e[489]];_0x4fa0x3[_0x285e[487]]=this[_0x285e[126]][_0x285e[124]][_0x285e[487]];_0x4fa0x3[_0x285e[486]]=this[_0x285e[126]][_0x285e[124]][_0x285e[486]];_0x4fa0x3[_0x285e[1452]]=this[_0x285e[126]][_0x285e[124]][_0x285e[1452]];_0x4fa0x3[_0x285e[1165]]=this[_0x285e[126]][_0x285e[124]][_0x285e[1165]];_0x4fa0x3[_0x285e[666]]=this[_0x285e[126]][_0x285e[124]][_0x285e[666]];_0x4fa0x3[_0x285e[354]]=this[_0x285e[126]][_0x285e[124]][_0x285e[354]];return _0x4fa0x2};mxCellEditor[_0x285e[202]][_0x285e[2126]]=function(_0x4fa0x2){null!=this[_0x285e[2111]]&&(null!=this[_0x285e[2116]]&&(this[_0x285e[2116]][_0x285e[124]][_0x285e[187]]=_0x285e[189],this[_0x285e[2116]]=null),!_0x4fa0x2&&this[_0x285e[2133]]()&&this[_0x285e[1179]][_0x285e[850]](this[_0x285e[2111]],this[_0x285e[2141]](),this[_0x285e[2112]]),null!=this[_0x285e[1653]]&&(document[_0x285e[112]][_0x285e[266]](this[_0x285e[1653]]),this[_0x285e[1653]]=null),this[_0x285e[1562]]=this[_0x285e[2112]]=this[_0x285e[2111]]=null,this[_0x285e[126]][_0x285e[2121]](),this[_0x285e[126]][_0x285e[265]][_0x285e[266]](this[_0x285e[126]]))};mxCellEditor[_0x285e[202]][_0x285e[2138]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[1179]][_0x285e[2142]](_0x4fa0x2[_0x285e[246]],_0x4fa0x3)};mxCellEditor[_0x285e[202]][_0x285e[2141]]=function(){return this[_0x285e[126]][_0x285e[131]][_0x285e[230]](/\r/g,_0x285e[110])};mxCellEditor[_0x285e[202]][_0x285e[2135]]=function(_0x4fa0x2){return !0};mxCellEditor[_0x285e[202]][_0x285e[939]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]];return new mxRectangle(0,0,null==_0x4fa0x2[_0x285e[963]]?30:_0x4fa0x2[_0x285e[963]][_0x285e[803]]*_0x4fa0x3+20,_0x285e[361]==this[_0x285e[126]][_0x285e[124]][_0x285e[1165]]?120:40)};mxCellEditor[_0x285e[202]][_0x285e[2137]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x5=this[_0x285e[939]](_0x4fa0x2),_0x4fa0x9=_0x4fa0x5[_0x285e[117]],_0x4fa0x5=_0x4fa0x5[_0x285e[119]],_0x4fa0xa=parseInt(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2143]]]||2)*_0x4fa0x4,_0x4fa0x12=parseInt(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2144]]]||0)*_0x4fa0x4+_0x4fa0xa,_0x4fa0x13=parseInt(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2145]]]||0)*_0x4fa0x4+_0x4fa0xa,_0x4fa0x14=parseInt(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2146]]]||0)*_0x4fa0x4+_0x4fa0xa,_0x4fa0x4=parseInt(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2147]]]||0)*_0x4fa0x4+_0x4fa0xa,_0x4fa0x13= new mxRectangle(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],Math[_0x285e[160]](_0x4fa0x9,_0x4fa0x2[_0x285e[117]]-_0x4fa0x4-_0x4fa0x13),Math[_0x285e[160]](_0x4fa0x5,_0x4fa0x2[_0x285e[119]]-_0x4fa0x12-_0x4fa0x14));_0x4fa0x3?(_0x4fa0x13[_0x285e[235]]=_0x4fa0x2[_0x285e[2079]][_0x285e[235]],_0x4fa0x13[_0x285e[236]]=_0x4fa0x2[_0x285e[2079]][_0x285e[236]],null!=_0x4fa0x2[_0x285e[963]]&&null!=_0x4fa0x2[_0x285e[963]][_0x285e[1563]]&&(0<_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[235]]&&(_0x4fa0x13[_0x285e[235]]=_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[235]]),0<_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[236]]&&(_0x4fa0x13[_0x285e[236]]=_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[236]]))):null!=_0x4fa0x2[_0x285e[963]]&&null!=_0x4fa0x2[_0x285e[963]][_0x285e[1563]]&&(_0x4fa0x13[_0x285e[235]]=Math[_0x285e[243]](_0x4fa0x13[_0x285e[235]],_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[235]]),_0x4fa0x13[_0x285e[236]]=Math[_0x285e[243]](_0x4fa0x13[_0x285e[236]],_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[236]]));_0x4fa0x13[_0x285e[235]]+=_0x4fa0x4;_0x4fa0x13[_0x285e[236]]+=_0x4fa0x12;null!=_0x4fa0x2[_0x285e[963]]&&null!=_0x4fa0x2[_0x285e[963]][_0x285e[1563]]&&(_0x4fa0x3?(_0x4fa0x13[_0x285e[117]]=Math[_0x285e[160]](_0x4fa0x9,_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[117]]),_0x4fa0x13[_0x285e[119]]=Math[_0x285e[160]](_0x4fa0x5,_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[119]])):(_0x4fa0x13[_0x285e[117]]=Math[_0x285e[160]](_0x4fa0x13[_0x285e[117]],_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[117]]),_0x4fa0x13[_0x285e[119]]=Math[_0x285e[160]](_0x4fa0x13[_0x285e[119]],_0x4fa0x2[_0x285e[963]][_0x285e[1563]][_0x285e[119]])));this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2[_0x285e[246]])&&(_0x4fa0x3=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),_0x4fa0x3==mxConstants[_0x285e[2132]]?_0x4fa0x13[_0x285e[235]]-=_0x4fa0x2[_0x285e[117]]:_0x4fa0x3==mxConstants[_0x285e[480]]&&(_0x4fa0x13[_0x285e[235]]+=_0x4fa0x2[_0x285e[117]]),_0x4fa0x3=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),_0x4fa0x3==mxConstants[_0x285e[1687]]?_0x4fa0x13[_0x285e[236]]-=_0x4fa0x2[_0x285e[119]]:_0x4fa0x3==mxConstants[_0x285e[482]]&&(_0x4fa0x13[_0x285e[236]]+=_0x4fa0x2[_0x285e[119]]));return _0x4fa0x13};mxCellEditor[_0x285e[202]][_0x285e[2139]]=function(_0x4fa0x2){return this[_0x285e[2115]]};mxCellEditor[_0x285e[202]][_0x285e[2148]]=function(){return this[_0x285e[2111]]};mxCellEditor[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[126]]&&(mxEvent[_0x285e[762]](this[_0x285e[126]]),null!=this[_0x285e[126]][_0x285e[265]]&&this[_0x285e[126]][_0x285e[265]][_0x285e[266]](this[_0x285e[126]]),this[_0x285e[126]]=null)};function mxCellRenderer(){}mxCellRenderer[_0x285e[202]][_0x285e[2149]]=mxConnector;mxCellRenderer[_0x285e[202]][_0x285e[2150]]=mxRectangleShape;mxCellRenderer[_0x285e[202]][_0x285e[2151]]=mxText;mxCellRenderer[_0x285e[202]][_0x285e[2152]]= !0;mxCellRenderer[_0x285e[202]][_0x285e[2153]]={};mxCellRenderer[_0x285e[2154]]=function(_0x4fa0x2,_0x4fa0x3){mxCellRenderer[_0x285e[202]][_0x285e[2153]][_0x4fa0x2]=_0x4fa0x3};mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_RECTANGLE,mxRectangleShape);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_HEXAGON,mxHexagon);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_LINE,mxLine);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_IMAGE,mxImageShape);mxCellRenderer[_0x285e[2154]](mxConstants.SHAPE_LABEL,mxLabel);mxCellRenderer[_0x285e[202]][_0x285e[2155]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]();if(null!=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[526]]&&null==_0x4fa0x2[_0x285e[253]]&&_0x4fa0x2[_0x285e[246]]!=_0x4fa0x2[_0x285e[441]][_0x285e[1741]]&&(_0x4fa0x4[_0x285e[1193]](_0x4fa0x2[_0x285e[246]])||_0x4fa0x4[_0x285e[250]](_0x4fa0x2[_0x285e[246]]))){if(this[_0x285e[2156]](_0x4fa0x2),null!=_0x4fa0x2[_0x285e[253]]&&(null==_0x4fa0x3||_0x4fa0x3)){this[_0x285e[2157]](_0x4fa0x2),_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2158]]||_0x4fa0x4[_0x285e[250]](_0x4fa0x2[_0x285e[246]])?_0x4fa0x2[_0x285e[2081]]= !0:_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2159]]&&null!=this[_0x285e[2160]]&&(this[_0x285e[2160]][_0x285e[265]]==_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]]?this[_0x285e[2161]](_0x4fa0x2,this[_0x285e[2160]]):this[_0x285e[2160]]=null),_0x4fa0x2[_0x285e[253]][_0x285e[255]]=_0x4fa0x2[_0x285e[441]][_0x285e[255]],this[_0x285e[2162]](_0x4fa0x2),this[_0x285e[2163]](_0x4fa0x2)}}};mxCellRenderer[_0x285e[202]][_0x285e[2157]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[253]][_0x285e[176]](_0x4fa0x2[_0x285e[441]][_0x285e[2024]]())};mxCellRenderer[_0x285e[202]][_0x285e[2164]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=null,_0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x9=_0x4fa0x5[_0x285e[502]](),_0x4fa0xa=_0x4fa0x2[_0x285e[246]],_0x4fa0x12=_0x4fa0x9[_0x285e[1197]](_0x4fa0xa);null!=_0x4fa0x12&&null==_0x4fa0x4;){_0x4fa0x4=this[_0x285e[2165]](_0x4fa0x5,_0x4fa0x12,_0x4fa0xa,_0x4fa0x3),_0x4fa0xa=_0x4fa0x12,_0x4fa0x12=_0x4fa0x9[_0x285e[1197]](_0x4fa0xa)};return _0x4fa0x4};mxCellRenderer[_0x285e[202]][_0x285e[2165]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null,_0x4fa0xa=_0x4fa0x2[_0x285e[502]]();for(_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x3[_0x285e[1738]](_0x4fa0x4)-1:_0x4fa0xa[_0x285e[262]](_0x4fa0x3)-1;0<=_0x4fa0x4&&null==_0x4fa0x9;_0x4fa0x4--){_0x4fa0x9=this[_0x285e[2165]](_0x4fa0x2,_0x4fa0xa[_0x285e[263]](_0x4fa0x3,_0x4fa0x4),null,_0x4fa0x5)};if(null==_0x4fa0x9&&(_0x4fa0x9=_0x4fa0x2[_0x285e[441]][_0x285e[248]](_0x4fa0x3),null!=_0x4fa0x9&&(null==_0x4fa0x9[_0x285e[253]]||null==_0x4fa0x9[_0x285e[253]][_0x285e[252]]||_0x4fa0x9[_0x285e[253]][_0x285e[252]][_0x285e[265]]!=_0x4fa0x5))){_0x4fa0x9=null};return _0x4fa0x9};mxCellRenderer[_0x285e[202]][_0x285e[2166]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]],_0x4fa0x4=this[_0x285e[2164]](_0x4fa0x2,_0x4fa0x3),_0x4fa0x5=_0x4fa0x3[_0x285e[285]];null!=_0x4fa0x4&&(_0x4fa0x5=_0x4fa0x4[_0x285e[253]][_0x285e[252]],null!=_0x4fa0x4[_0x285e[963]]&&(null!=_0x4fa0x4[_0x285e[963]][_0x285e[252]]&&_0x4fa0x4[_0x285e[963]][_0x285e[252]][_0x285e[265]]==_0x4fa0x3)&&(_0x4fa0x5=_0x4fa0x4[_0x285e[963]][_0x285e[252]]),_0x4fa0x5=_0x4fa0x5[_0x285e[287]]);this[_0x285e[2161]](_0x4fa0x2,_0x4fa0x5)};mxCellRenderer[_0x285e[202]][_0x285e[2167]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]],_0x4fa0x4=_0x4fa0x3[_0x285e[1179]][_0x285e[502]]();if(_0x4fa0x3[_0x285e[1179]][_0x285e[2159]]){if(null==this[_0x285e[2160]]||null==this[_0x285e[2160]][_0x285e[265]]||this[_0x285e[2160]][_0x285e[265]]!=_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]]){this[_0x285e[2160]]=_0x4fa0x2[_0x285e[253]][_0x285e[252]]}}else {if(_0x4fa0x3[_0x285e[1179]][_0x285e[2168]]){var _0x4fa0x5=_0x4fa0x2[_0x285e[253]][_0x285e[252]],_0x4fa0x9=_0x4fa0x5[_0x285e[265]],_0x4fa0x4=_0x4fa0x4[_0x285e[1197]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x3=_0x4fa0x3[_0x285e[248]](_0x4fa0x4),_0x4fa0x9=null!=_0x4fa0x3&&null!=_0x4fa0x3[_0x285e[253]]&&null!=_0x4fa0x3[_0x285e[253]][_0x285e[252]]?_0x4fa0x3[_0x285e[253]][_0x285e[252]][_0x285e[287]]:_0x4fa0x9[_0x285e[285]];null!=_0x4fa0x9&&_0x4fa0x9!=_0x4fa0x5&&this[_0x285e[2161]](_0x4fa0x2,_0x4fa0x9)}}};mxCellRenderer[_0x285e[202]][_0x285e[2161]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[950]](_0x4fa0x2[_0x285e[253]][_0x285e[252]],_0x4fa0x3);null!=_0x4fa0x2[_0x285e[963]]&&(null!=_0x4fa0x2[_0x285e[963]][_0x285e[252]]&&_0x4fa0x2[_0x285e[963]][_0x285e[252]][_0x285e[265]]==_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]])&&_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[950]](_0x4fa0x2[_0x285e[963]][_0x285e[252]],_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[287]])};mxCellRenderer[_0x285e[202]][_0x285e[2156]]=function(_0x4fa0x2){if(null!=_0x4fa0x2[_0x285e[124]]){var _0x4fa0x3=mxStencilRegistry[_0x285e[1560]](_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2059]]]);null!=_0x4fa0x3?_0x4fa0x2[_0x285e[253]]= new mxShape(_0x4fa0x3):(_0x4fa0x3=this[_0x285e[2169]](_0x4fa0x2),_0x4fa0x2[_0x285e[253]]= new _0x4fa0x3);_0x4fa0x2[_0x285e[253]][_0x285e[1525]]=_0x4fa0x2[_0x285e[439]];_0x4fa0x2[_0x285e[253]][_0x285e[1562]]= new mxRectangle(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],_0x4fa0x2[_0x285e[117]],_0x4fa0x2[_0x285e[119]]);_0x4fa0x2[_0x285e[253]][_0x285e[507]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[507]];this[_0x285e[2170]](_0x4fa0x2)}};mxCellRenderer[_0x285e[202]][_0x285e[2171]]=function(_0x4fa0x2){return null!=_0x4fa0x2?mxCellRenderer[_0x285e[202]][_0x285e[2153]][_0x4fa0x2]:null};mxCellRenderer[_0x285e[202]][_0x285e[2169]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[2171]](_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2059]]]);null==_0x4fa0x3&&(_0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]])?this[_0x285e[2149]]:this[_0x285e[2150]]);return _0x4fa0x3};mxCellRenderer[_0x285e[202]][_0x285e[2170]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[253]][_0x285e[183]](_0x4fa0x2);_0x4fa0x2[_0x285e[253]][_0x285e[618]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[1202]](_0x4fa0x2);_0x4fa0x2[_0x285e[253]][_0x285e[630]]=this[_0x285e[2171]](_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2172]](_0x4fa0x2));_0x4fa0x2[_0x285e[253]][_0x285e[632]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2173]](_0x4fa0x2);_0x4fa0x2[_0x285e[253]][_0x285e[634]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2174]](_0x4fa0x2);_0x4fa0x2[_0x285e[253]][_0x285e[638]]=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2175]]];_0x4fa0x2[_0x285e[253]][_0x285e[631]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2176]](_0x4fa0x2);this[_0x285e[2177]](_0x4fa0x2)};mxCellRenderer[_0x285e[202]][_0x285e[2177]]=function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[253]]&&(this[_0x285e[2178]](_0x4fa0x2,_0x285e[632],mxConstants.STYLE_FILLCOLOR),this[_0x285e[2178]](_0x4fa0x2,_0x285e[634],mxConstants.STYLE_GRADIENTCOLOR),this[_0x285e[2178]](_0x4fa0x2,_0x285e[1334],mxConstants.STYLE_FILLCOLOR),this[_0x285e[2178]](_0x4fa0x2,_0x285e[1336],mxConstants.STYLE_STROKECOLOR),this[_0x285e[2178]](_0x4fa0x2,_0x285e[1299],mxConstants.STYLE_GRADIENTCOLOR))};mxCellRenderer[_0x285e[202]][_0x285e[2178]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[253]][_0x4fa0x3],_0x4fa0x9=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0xa=null;_0x285e[1549]==_0x4fa0x5?_0x4fa0xa=_0x4fa0x9[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x285e[246]]):_0x285e[687]==_0x4fa0x5?(_0x4fa0xa=null!=_0x4fa0x9[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x285e[246]],!1)?_0x4fa0x9[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x285e[246]],!1):_0x4fa0x2[_0x285e[246]],_0x4fa0xa=_0x4fa0x9[_0x285e[2179]](_0x4fa0xa),_0x4fa0x4=_0x4fa0x9[_0x285e[2180]]):_0x285e[2181]==_0x4fa0x5&&(_0x4fa0x2[_0x285e[253]][_0x4fa0x3]=_0x4fa0x2[_0x285e[253]][_0x285e[632]]);null!=_0x4fa0xa&&(_0x4fa0x5=_0x4fa0x9[_0x285e[249]]()[_0x285e[248]](_0x4fa0xa),_0x4fa0x2[_0x285e[253]][_0x4fa0x3]=null,null!=_0x4fa0x5&&(_0x4fa0x2[_0x285e[253]][_0x4fa0x3]=null!=_0x4fa0x5[_0x285e[253]]&&_0x285e[632]!=_0x4fa0x3?_0x4fa0x5[_0x285e[253]][_0x4fa0x3]:_0x4fa0x5[_0x285e[124]][_0x4fa0x4]))};mxCellRenderer[_0x285e[202]][_0x285e[2182]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2183]](_0x4fa0x2[_0x285e[246]])};mxCellRenderer[_0x285e[202]][_0x285e[2184]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[441]][_0x285e[1179]];_0x4fa0x4[_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]);if(0<_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2185]]]||null==_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2185]]]){var _0x4fa0x5=_0x4fa0x4[_0x285e[2186]](_0x4fa0x2[_0x285e[246]])||null!=_0x4fa0x3&&mxUtils[_0x285e[1331]](_0x4fa0x3);_0x4fa0x2[_0x285e[963]]= new this[_0x285e[2151]](_0x4fa0x3, new mxRectangle,_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2064]]]||mxConstants[_0x285e[479]],_0x4fa0x4[_0x285e[2187]](_0x4fa0x2),_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2069]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2188]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2185]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2189]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2143]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2144]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2145]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2146]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2147]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2190]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2191]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2192]]],_0x4fa0x4[_0x285e[2131]](_0x4fa0x2[_0x285e[246]])&&_0x4fa0x4[_0x285e[2186]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4[_0x285e[2130]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2193]]],_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2194]]]);_0x4fa0x2[_0x285e[963]][_0x285e[461]]=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_TEXT_OPACITY,100);_0x4fa0x2[_0x285e[963]][_0x285e[507]]=_0x4fa0x5?mxConstants[_0x285e[1656]]:_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[507]];_0x4fa0x2[_0x285e[963]][_0x285e[724]]=_0x4fa0x2;this[_0x285e[2195]](_0x4fa0x2);var _0x4fa0x9=!1,_0x4fa0xa=function(_0x4fa0x3){var _0x4fa0x5=_0x4fa0x2;if(mxClient[_0x285e[754]]||_0x4fa0x9){_0x4fa0x5=mxEvent[_0x285e[731]](_0x4fa0x3),_0x4fa0x3=mxEvent[_0x285e[733]](_0x4fa0x3),_0x4fa0x3=mxUtils[_0x285e[2196]](_0x4fa0x4[_0x285e[526]],_0x4fa0x5,_0x4fa0x3),_0x4fa0x5=_0x4fa0x4[_0x285e[441]][_0x285e[248]](_0x4fa0x4[_0x285e[999]](_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]]))};return _0x4fa0x5};mxEvent[_0x285e[759]](_0x4fa0x2[_0x285e[963]][_0x285e[252]],mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2197]](_0x4fa0x2,_0x4fa0x3)&&(_0x4fa0x4[_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x3,_0x4fa0x2)),_0x4fa0x9=_0x4fa0x4[_0x285e[507]]!=mxConstants[_0x285e[508]]&&_0x285e[2198]==mxEvent[_0x285e[728]](_0x4fa0x3)[_0x285e[301]])}),mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2197]](_0x4fa0x2,_0x4fa0x3)&&_0x4fa0x4[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x3,_0x4fa0xa(_0x4fa0x3)))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2197]](_0x4fa0x2,_0x4fa0x3)&&(_0x4fa0x4[_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x3,_0x4fa0xa(_0x4fa0x3))),_0x4fa0x9= !1)}));mxEvent[_0x285e[169]](_0x4fa0x2[_0x285e[963]][_0x285e[252]],_0x285e[760],mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2197]](_0x4fa0x2,_0x4fa0x3)&&(_0x4fa0x4[_0x285e[761]](_0x4fa0x3,_0x4fa0x2[_0x285e[246]]),mxEvent[_0x285e[722]](_0x4fa0x3))}))}};mxCellRenderer[_0x285e[202]][_0x285e[2195]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]];_0x4fa0x2[_0x285e[963]][_0x285e[507]]!=mxConstants[_0x285e[508]]&&(mxClient[_0x285e[48]]&&mxClient[_0x285e[2199]]?_0x4fa0x2[_0x285e[963]][_0x285e[176]](_0x4fa0x3[_0x285e[526]]):mxUtils[_0x285e[458]](_0x4fa0x2[_0x285e[441]][_0x285e[2024]]())&&(null!=_0x4fa0x2[_0x285e[253]][_0x285e[685]]?_0x4fa0x2[_0x285e[963]][_0x285e[176]](_0x4fa0x2[_0x285e[253]][_0x285e[685]]):_0x4fa0x2[_0x285e[963]][_0x285e[176]](_0x4fa0x2[_0x285e[253]][_0x285e[252]])));null==_0x4fa0x2[_0x285e[963]][_0x285e[252]]&&(_0x4fa0x2[_0x285e[963]][_0x285e[176]](_0x4fa0x2[_0x285e[441]][_0x285e[2024]]()),null!=_0x4fa0x2[_0x285e[253]]&&null!=_0x4fa0x2[_0x285e[963]]&&_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[950]](_0x4fa0x2[_0x285e[963]][_0x285e[252]],_0x4fa0x2[_0x285e[253]][_0x285e[252]][_0x285e[287]]))};mxCellRenderer[_0x285e[202]][_0x285e[2162]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2200]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4=null;if(null!=_0x4fa0x3){for(var _0x4fa0x4= new mxDictionary,_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=null!=_0x4fa0x2[_0x285e[1211]]?_0x4fa0x2[_0x285e[1211]][_0x285e[205]](_0x4fa0x3[_0x4fa0x5]):null;null==_0x4fa0x9&&(_0x4fa0x9= new mxImageShape( new mxRectangle,_0x4fa0x3[_0x4fa0x5][_0x285e[618]][_0x285e[390]]),_0x4fa0x9[_0x285e[507]]=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[507]],_0x4fa0x9[_0x285e[1674]]= !1,_0x4fa0x9[_0x285e[2201]]=_0x4fa0x3[_0x4fa0x5],this[_0x285e[2023]](_0x4fa0x2,_0x4fa0x9),this[_0x285e[2202]](_0x4fa0x2,_0x4fa0x3[_0x4fa0x5],_0x4fa0x9),null!=_0x4fa0x3[_0x4fa0x5][_0x285e[270]]&&(_0x4fa0x9[_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x4fa0x3[_0x4fa0x5][_0x285e[270]]));_0x4fa0x4[_0x285e[204]](_0x4fa0x3[_0x4fa0x5],_0x4fa0x9)}};null!=_0x4fa0x2[_0x285e[1211]]&&_0x4fa0x2[_0x285e[1211]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[515]]()});_0x4fa0x2[_0x285e[1211]]=_0x4fa0x4};mxCellRenderer[_0x285e[202]][_0x285e[2023]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[176]](_0x4fa0x2[_0x285e[441]][_0x285e[1524]]())};mxCellRenderer[_0x285e[202]][_0x285e[2202]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[1179]];mxEvent[_0x285e[169]](_0x4fa0x4[_0x285e[252]],_0x285e[173],function(_0x4fa0x4){_0x4fa0x5[_0x285e[2203]]()&&_0x4fa0x5[_0x285e[2126]](!_0x4fa0x5[_0x285e[2134]]());_0x4fa0x3[_0x285e[746]]( new mxEventObject(mxEvent.CLICK,_0x285e[763],_0x4fa0x4,_0x285e[246],_0x4fa0x2[_0x285e[246]]))});mxEvent[_0x285e[759]](_0x4fa0x4[_0x285e[252]],function(_0x4fa0x2){mxEvent[_0x285e[722]](_0x4fa0x2)},function(_0x4fa0x3){_0x4fa0x5[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x3,_0x4fa0x2))});mxClient[_0x285e[754]]&&mxEvent[_0x285e[169]](_0x4fa0x4[_0x285e[252]],_0x285e[757],function(_0x4fa0x4){_0x4fa0x3[_0x285e[746]]( new mxEventObject(mxEvent.CLICK,_0x285e[763],_0x4fa0x4,_0x285e[246],_0x4fa0x2[_0x285e[246]]))})};mxCellRenderer[_0x285e[202]][_0x285e[2204]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x4=_0x4fa0x3[_0x285e[2205]](_0x4fa0x2);if(_0x4fa0x3[_0x285e[2206]]&&null!=_0x4fa0x4){if(null==_0x4fa0x2[_0x285e[2207]]){var _0x4fa0x5= new mxRectangle(0,0,_0x4fa0x4[_0x285e[117]],_0x4fa0x4[_0x285e[119]]);_0x4fa0x2[_0x285e[2207]]= new mxImageShape(_0x4fa0x5,_0x4fa0x4[_0x285e[390]]);_0x4fa0x2[_0x285e[2207]][_0x285e[1674]]= !1;_0x4fa0x2[_0x285e[2207]][_0x285e[507]]=_0x4fa0x3[_0x285e[507]];this[_0x285e[2208]](_0x4fa0x2,_0x4fa0x2[_0x285e[2207]],!0,function(_0x4fa0x4){if(_0x4fa0x3[_0x285e[994]]()){var _0x4fa0x5=!_0x4fa0x3[_0x285e[1742]](_0x4fa0x2[_0x285e[246]]);_0x4fa0x3[_0x285e[847]](_0x4fa0x5,!1,[_0x4fa0x2[_0x285e[246]]]);mxEvent[_0x285e[722]](_0x4fa0x4)}})}}else {null!=_0x4fa0x2[_0x285e[2207]]&&(_0x4fa0x2[_0x285e[2207]][_0x285e[515]](),_0x4fa0x2[_0x285e[2207]]=null)}};mxCellRenderer[_0x285e[202]][_0x285e[2208]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[441]][_0x285e[1179]];_0x4fa0x9[_0x285e[2186]](_0x4fa0x2[_0x285e[246]])&&mxClient[_0x285e[2199]]&&_0x4fa0x9[_0x285e[507]]==mxConstants[_0x285e[508]]?(_0x4fa0x3[_0x285e[507]]=mxConstants[_0x285e[2209]],_0x4fa0x3[_0x285e[176]](_0x4fa0x9[_0x285e[526]]),_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[931]]=1):_0x4fa0x3[_0x285e[176]](_0x4fa0x2[_0x285e[441]][_0x285e[1524]]());_0x4fa0x3=_0x4fa0x3[_0x285e[2210]]||_0x4fa0x3[_0x285e[252]];_0x4fa0x5&&(_0x4fa0x9[_0x285e[994]]()&&(_0x4fa0x3[_0x285e[124]][_0x285e[270]]=_0x285e[356]),mxEvent[_0x285e[169]](_0x4fa0x3,_0x285e[173],_0x4fa0x5));_0x4fa0x4&&mxEvent[_0x285e[759]](_0x4fa0x3,function(_0x4fa0x3){_0x4fa0x9[_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x3,_0x4fa0x2));mxEvent[_0x285e[722]](_0x4fa0x3)},function(_0x4fa0x3){_0x4fa0x9[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x3,_0x4fa0x2))});return _0x4fa0x3};mxCellRenderer[_0x285e[202]][_0x285e[2211]]=function(_0x4fa0x2,_0x4fa0x3){return !0};mxCellRenderer[_0x285e[202]][_0x285e[2197]]=function(_0x4fa0x2,_0x4fa0x3){return !0};mxCellRenderer[_0x285e[202]][_0x285e[2163]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x4=function(_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2;if(_0x4fa0x3[_0x285e[507]]!=mxConstants[_0x285e[508]]&&_0x285e[2198]==mxEvent[_0x285e[728]](_0x4fa0x4)[_0x285e[301]]||mxClient[_0x285e[754]]){_0x4fa0x5=mxEvent[_0x285e[731]](_0x4fa0x4),_0x4fa0x4=mxEvent[_0x285e[733]](_0x4fa0x4),_0x4fa0x4=mxUtils[_0x285e[2196]](_0x4fa0x3[_0x285e[526]],_0x4fa0x5,_0x4fa0x4),_0x4fa0x5=_0x4fa0x3[_0x285e[441]][_0x285e[248]](_0x4fa0x3[_0x285e[999]](_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]]))};return _0x4fa0x5},_0x4fa0x5=!1;mxEvent[_0x285e[169]](_0x4fa0x2[_0x285e[253]][_0x285e[252]],_0x285e[2212],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x3[_0x285e[2213]]=0;_0x4fa0x5= !0;mxEvent[_0x285e[722]](_0x4fa0x2)}));mxEvent[_0x285e[759]](_0x4fa0x2[_0x285e[253]][_0x285e[252]],mxUtils[_0x285e[885]](this,function(_0x4fa0x4){this[_0x285e[2211]](_0x4fa0x2,_0x4fa0x4)&&!_0x4fa0x5?_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x4,null!=_0x4fa0x2[_0x285e[253]]&&mxEvent[_0x285e[728]](_0x4fa0x4)==_0x4fa0x2[_0x285e[253]][_0x285e[905]]?null:_0x4fa0x2)):_0x4fa0x5&&mxEvent[_0x285e[722]](_0x4fa0x4)}),mxUtils[_0x285e[885]](this,function(_0x4fa0x9){this[_0x285e[2211]](_0x4fa0x2,_0x4fa0x9)&&!_0x4fa0x5?_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x9,null!=_0x4fa0x2[_0x285e[253]]&&mxEvent[_0x285e[728]](_0x4fa0x9)==_0x4fa0x2[_0x285e[253]][_0x285e[905]]?null:_0x4fa0x4(_0x4fa0x9))):_0x4fa0x5&&mxEvent[_0x285e[722]](_0x4fa0x9)}),mxUtils[_0x285e[885]](this,function(_0x4fa0x9){this[_0x285e[2211]](_0x4fa0x2,_0x4fa0x9)&&!_0x4fa0x5?_0x4fa0x3[_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x9,null!=_0x4fa0x2[_0x285e[253]]&&mxEvent[_0x285e[728]](_0x4fa0x9)==_0x4fa0x2[_0x285e[253]][_0x285e[905]]?null:_0x4fa0x4(_0x4fa0x9))):_0x4fa0x5&&mxEvent[_0x285e[722]](_0x4fa0x9)}));var _0x4fa0x9=mxClient[_0x285e[754]]?_0x285e[2214]:_0x285e[760];mxEvent[_0x285e[169]](_0x4fa0x2[_0x285e[253]][_0x285e[252]],_0x4fa0x9,mxUtils[_0x285e[885]](this,function(_0x4fa0x4){_0x4fa0x5= !1;_0x285e[2214]==_0x4fa0x9?(_0x4fa0x3[_0x285e[2213]]=0,_0x4fa0x3[_0x285e[2215]]&&(_0x4fa0x3[_0x285e[2216]](_0x4fa0x2,_0x4fa0x4),mxEvent[_0x285e[722]](_0x4fa0x4))):this[_0x285e[2211]](_0x4fa0x2,_0x4fa0x4)&&(_0x4fa0x3[_0x285e[761]](_0x4fa0x4,null!=_0x4fa0x2[_0x285e[253]]&&mxEvent[_0x285e[728]](_0x4fa0x4)==_0x4fa0x2[_0x285e[253]][_0x285e[905]]?null:_0x4fa0x2[_0x285e[246]]),mxEvent[_0x285e[722]](_0x4fa0x4))}))};mxCellRenderer[_0x285e[202]][_0x285e[2217]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[2182]](_0x4fa0x2);if(null==_0x4fa0x2[_0x285e[963]]&&null!=_0x4fa0x4&&(mxUtils[_0x285e[1331]](_0x4fa0x4)||0<_0x4fa0x4[_0x285e[67]])){this[_0x285e[2184]](_0x4fa0x2,_0x4fa0x4)}else {if(null!=_0x4fa0x2[_0x285e[963]]&&(null==_0x4fa0x4||0==_0x4fa0x4[_0x285e[67]])){_0x4fa0x2[_0x285e[963]][_0x285e[515]](),_0x4fa0x2[_0x285e[963]]=null}};if(null!=_0x4fa0x2[_0x285e[963]]){var _0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x9=_0x4fa0x5[_0x285e[2131]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x5=_0x4fa0x5[_0x285e[2130]](_0x4fa0x2[_0x285e[246]]),_0x4fa0xa=this[_0x285e[2218]](_0x4fa0x2);if(_0x4fa0x3||_0x4fa0x2[_0x285e[963]][_0x285e[131]]!=_0x4fa0x4||_0x4fa0x2[_0x285e[963]][_0x285e[2131]]!=_0x4fa0x9||_0x4fa0x2[_0x285e[963]][_0x285e[2219]]!=_0x4fa0x5||_0x4fa0x2[_0x285e[963]][_0x285e[255]]!=_0x4fa0x2[_0x285e[441]][_0x285e[255]]||!_0x4fa0x2[_0x285e[963]][_0x285e[1562]][_0x285e[237]](_0x4fa0xa)){_0x4fa0x2[_0x285e[963]][_0x285e[131]]=_0x4fa0x4,_0x4fa0x2[_0x285e[963]][_0x285e[1562]]=_0x4fa0xa,_0x4fa0x2[_0x285e[963]][_0x285e[255]]=this[_0x285e[2220]](_0x4fa0x2),_0x4fa0x2[_0x285e[963]][_0x285e[2131]]=_0x4fa0x9,_0x4fa0x2[_0x285e[963]][_0x285e[2219]]=_0x4fa0x5,_0x4fa0x2[_0x285e[963]][_0x285e[258]]()}}};mxCellRenderer[_0x285e[202]][_0x285e[2220]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[441]][_0x285e[255]]};mxCellRenderer[_0x285e[202]][_0x285e[2218]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x4=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x5=_0x4fa0x3[_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x9= new mxRectangle(_0x4fa0x2[_0x285e[2079]][_0x285e[235]],_0x4fa0x2[_0x285e[2079]][_0x285e[236]]);_0x4fa0x2[_0x285e[963]][_0x285e[1672]]();_0x4fa0x5?(_0x4fa0x5=_0x4fa0x2[_0x285e[963]][_0x285e[1673]](),_0x4fa0x9[_0x285e[235]]+=_0x4fa0x5[_0x285e[235]]*_0x4fa0x4,_0x4fa0x9[_0x285e[236]]+=_0x4fa0x5[_0x285e[236]]*_0x4fa0x4,_0x4fa0x3=_0x4fa0x3[_0x285e[1198]](_0x4fa0x2[_0x285e[246]]),null!=_0x4fa0x3&&(_0x4fa0x9[_0x285e[117]]=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[963]][_0x285e[1655]][_0x285e[235]]*_0x4fa0x3[_0x285e[117]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[659]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[661]]*_0x4fa0x4),_0x4fa0x9[_0x285e[119]]=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[963]][_0x285e[1655]][_0x285e[236]]*_0x4fa0x3[_0x285e[119]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[658]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[660]]*_0x4fa0x4))):(_0x4fa0x2[_0x285e[963]][_0x285e[1590]]()&&(_0x4fa0x5=_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[235]]=_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[236]]=_0x4fa0x5),_0x4fa0x9[_0x285e[235]]+=_0x4fa0x2[_0x285e[235]],_0x4fa0x9[_0x285e[236]]+=_0x4fa0x2[_0x285e[236]],_0x4fa0x9[_0x285e[117]]=Math[_0x285e[160]](1,_0x4fa0x2[_0x285e[117]]),_0x4fa0x9[_0x285e[119]]=Math[_0x285e[160]](1,_0x4fa0x2[_0x285e[119]]),_0x4fa0x3[_0x285e[1730]](_0x4fa0x2[_0x285e[246]])&&(_0x4fa0x3=_0x4fa0x3[_0x285e[1731]](_0x4fa0x2[_0x285e[246]]),0<_0x4fa0x3[_0x285e[117]]?(_0x4fa0x5=Math[_0x285e[243]](_0x4fa0x9[_0x285e[117]],_0x4fa0x3[_0x285e[117]]*_0x4fa0x4),_0x4fa0x2[_0x285e[253]][_0x285e[623]]&&(_0x4fa0x9[_0x285e[235]]+=_0x4fa0x9[_0x285e[117]]-_0x4fa0x5),_0x4fa0x9[_0x285e[117]]=_0x4fa0x5):0<_0x4fa0x3[_0x285e[119]]&&(_0x4fa0x5=Math[_0x285e[243]](_0x4fa0x9[_0x285e[119]],_0x4fa0x3[_0x285e[119]]*_0x4fa0x4),_0x4fa0x2[_0x285e[253]][_0x285e[624]]&&(_0x4fa0x9[_0x285e[236]]+=_0x4fa0x9[_0x285e[119]]-_0x4fa0x5),_0x4fa0x9[_0x285e[119]]=_0x4fa0x5)),this[_0x285e[2221]](_0x4fa0x2,_0x4fa0x9));return _0x4fa0x9};mxCellRenderer[_0x285e[202]][_0x285e[2221]]=function(_0x4fa0x2,_0x4fa0x3){if(_0x4fa0x2[_0x285e[963]][_0x285e[1590]]()){var _0x4fa0x4=(_0x4fa0x2[_0x285e[117]]-_0x4fa0x2[_0x285e[119]])/2;_0x4fa0x3[_0x285e[235]]+=_0x4fa0x4;_0x4fa0x3[_0x285e[236]]-=_0x4fa0x4;_0x4fa0x4=_0x4fa0x3[_0x285e[117]];_0x4fa0x3[_0x285e[117]]=_0x4fa0x3[_0x285e[119]];_0x4fa0x3[_0x285e[119]]=_0x4fa0x4};_0x4fa0x3[_0x285e[235]]-=_0x4fa0x2[_0x285e[963]][_0x285e[1655]][_0x285e[235]]*_0x4fa0x3[_0x285e[117]];_0x4fa0x3[_0x285e[236]]-=_0x4fa0x2[_0x285e[963]][_0x285e[1655]][_0x285e[236]]*_0x4fa0x3[_0x285e[119]];if(_0x285e[1334]!=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2193]]]){var _0x4fa0x4=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x5=_0x4fa0x2[_0x285e[963]][_0x285e[1673]]();_0x4fa0x3[_0x285e[235]]+=_0x4fa0x5[_0x285e[235]]*_0x4fa0x4;_0x4fa0x3[_0x285e[236]]+=_0x4fa0x5[_0x285e[236]]*_0x4fa0x4;_0x4fa0x3[_0x285e[117]]=Math[_0x285e[160]](0,_0x4fa0x3[_0x285e[117]]-_0x4fa0x2[_0x285e[963]][_0x285e[659]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[661]]*_0x4fa0x4);_0x4fa0x3[_0x285e[119]]=Math[_0x285e[160]](0,_0x4fa0x3[_0x285e[119]]-_0x4fa0x2[_0x285e[963]][_0x285e[658]]*_0x4fa0x4-_0x4fa0x2[_0x285e[963]][_0x285e[660]]*_0x4fa0x4)};var _0x4fa0x9=_0x4fa0x2[_0x285e[963]][_0x285e[1615]]();if(0!=_0x4fa0x9&&(null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[251]][_0x285e[1193]](_0x4fa0x2[_0x285e[246]]))&&(_0x4fa0x4=_0x4fa0x2[_0x285e[241]](),_0x4fa0x5=_0x4fa0x2[_0x285e[242]](),_0x4fa0x3[_0x285e[235]]!=_0x4fa0x4||_0x4fa0x3[_0x285e[236]]!=_0x4fa0x5)){_0x4fa0x9*=Math[_0x285e[424]]/180,pt=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]]),Math[_0x285e[426]](_0x4fa0x9),Math[_0x285e[427]](_0x4fa0x9), new mxPoint(_0x4fa0x4,_0x4fa0x5)),_0x4fa0x3[_0x285e[235]]=pt[_0x285e[235]],_0x4fa0x3[_0x285e[236]]=pt[_0x285e[236]]}};mxCellRenderer[_0x285e[202]][_0x285e[2222]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2162]](_0x4fa0x2);if(null!=_0x4fa0x2[_0x285e[1211]]){var _0x4fa0x4=mxUtils[_0x285e[1454]](mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION,0),90),_0x4fa0x5=mxUtils[_0x285e[431]](_0x4fa0x4),_0x4fa0x9=Math[_0x285e[426]](_0x4fa0x5),_0x4fa0xa=Math[_0x285e[427]](_0x4fa0x5);_0x4fa0x2[_0x285e[1211]][_0x285e[209]](function(_0x4fa0x5,_0x4fa0x13){var _0x4fa0x14=_0x4fa0x13[_0x285e[2201]][_0x285e[1799]](_0x4fa0x2);if(!_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]])&&null!=_0x4fa0x2[_0x285e[253]]&&0!=_0x4fa0x4){var _0x4fa0x15=_0x4fa0x14[_0x285e[241]](),_0x4fa0x16=_0x4fa0x14[_0x285e[242]](),_0x4fa0x16=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x15,_0x4fa0x16),_0x4fa0x9,_0x4fa0xa, new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]())),_0x4fa0x15=_0x4fa0x16[_0x285e[235]],_0x4fa0x16=_0x4fa0x16[_0x285e[236]];_0x4fa0x14[_0x285e[235]]=Math[_0x285e[488]](_0x4fa0x15-_0x4fa0x14[_0x285e[117]]/2);_0x4fa0x14[_0x285e[236]]=Math[_0x285e[488]](_0x4fa0x16-_0x4fa0x14[_0x285e[119]]/2)};if(_0x4fa0x3||null==_0x4fa0x13[_0x285e[1562]]||_0x4fa0x13[_0x285e[255]]!=_0x4fa0x2[_0x285e[441]][_0x285e[255]]||!_0x4fa0x13[_0x285e[1562]][_0x285e[237]](_0x4fa0x14)){_0x4fa0x13[_0x285e[1562]]=_0x4fa0x14,_0x4fa0x13[_0x285e[255]]=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x13[_0x285e[258]]()}})}};mxCellRenderer[_0x285e[202]][_0x285e[2223]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2[_0x285e[2207]]){var _0x4fa0x4=this[_0x285e[2224]](_0x4fa0x2),_0x4fa0x5=this[_0x285e[2152]]?mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION,0):_0x4fa0x2[_0x285e[253]][_0x285e[1615]](),_0x4fa0x9=_0x4fa0x2[_0x285e[441]][_0x285e[255]];if(_0x4fa0x3||_0x4fa0x2[_0x285e[2207]][_0x285e[255]]!=_0x4fa0x9||!_0x4fa0x2[_0x285e[2207]][_0x285e[1562]][_0x285e[237]](_0x4fa0x4)||_0x4fa0x2[_0x285e[2207]][_0x285e[603]]!=_0x4fa0x5){_0x4fa0x2[_0x285e[2207]][_0x285e[603]]=_0x4fa0x5,_0x4fa0x2[_0x285e[2207]][_0x285e[1562]]=_0x4fa0x4,_0x4fa0x2[_0x285e[2207]][_0x285e[255]]=_0x4fa0x9,_0x4fa0x2[_0x285e[2207]][_0x285e[258]]()}}};mxCellRenderer[_0x285e[202]][_0x285e[2224]]=function(_0x4fa0x2){if(null!=_0x4fa0x2[_0x285e[2207]]){var _0x4fa0x3=_0x4fa0x2[_0x285e[2207]][_0x285e[255]],_0x4fa0x4=_0x4fa0x2[_0x285e[2207]][_0x285e[1562]][_0x285e[117]]/_0x4fa0x3,_0x4fa0x3=_0x4fa0x2[_0x285e[2207]][_0x285e[1562]][_0x285e[119]]/_0x4fa0x3,_0x4fa0x5=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x9=_0x4fa0x2[_0x285e[241]](),_0x4fa0xa=_0x4fa0x2[_0x285e[242]]();if(!_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]])&&(_0x4fa0x9=_0x4fa0x2[_0x285e[235]]+_0x4fa0x4*_0x4fa0x5,_0x4fa0xa=_0x4fa0x2[_0x285e[236]]+_0x4fa0x3*_0x4fa0x5,null!=_0x4fa0x2[_0x285e[253]])){var _0x4fa0x12=_0x4fa0x2[_0x285e[253]][_0x285e[1598]]();if(this[_0x285e[2152]]){_0x4fa0x12=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION,0)}else {if(_0x4fa0x2[_0x285e[253]][_0x285e[1590]]()){var _0x4fa0x13=(_0x4fa0x2[_0x285e[117]]-_0x4fa0x2[_0x285e[119]])/2,_0x4fa0x9=_0x4fa0x9+_0x4fa0x13,_0x4fa0xa=_0x4fa0xa-_0x4fa0x13}};0!=_0x4fa0x12&&(_0x4fa0x13=mxUtils[_0x285e[431]](_0x4fa0x12),_0x4fa0x12=Math[_0x285e[426]](_0x4fa0x13),_0x4fa0x13=Math[_0x285e[427]](_0x4fa0x13),_0x4fa0xa=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x9,_0x4fa0xa),_0x4fa0x12,_0x4fa0x13, new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]())),_0x4fa0x9=_0x4fa0xa[_0x285e[235]],_0x4fa0xa=_0x4fa0xa[_0x285e[236]])};return _0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]), new mxRectangle(Math[_0x285e[488]](_0x4fa0x9-_0x4fa0x4/2*_0x4fa0x5),Math[_0x285e[488]](_0x4fa0xa-_0x4fa0x3/2*_0x4fa0x5),Math[_0x285e[488]](_0x4fa0x4*_0x4fa0x5),Math[_0x285e[488]](_0x4fa0x3*_0x4fa0x5))};return null};mxCellRenderer[_0x285e[202]][_0x285e[258]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2[_0x285e[253]]){var _0x4fa0x5=!1;_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]);reconfigure=null!=_0x4fa0x3?_0x4fa0x3:!1;this[_0x285e[2204]](_0x4fa0x2);if(_0x4fa0x2[_0x285e[2082]]||_0x4fa0x2[_0x285e[2081]]){_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[2158]]?this[_0x285e[2166]](_0x4fa0x2):this[_0x285e[2167]](_0x4fa0x2)};if(_0x4fa0x2[_0x285e[2082]]||!mxUtils[_0x285e[2225]](_0x4fa0x2[_0x285e[253]][_0x285e[124]],_0x4fa0x2[_0x285e[124]])){this[_0x285e[2170]](_0x4fa0x2),_0x4fa0x3= !0};delete _0x4fa0x2[_0x285e[2081]];delete _0x4fa0x2[_0x285e[2082]];if(_0x4fa0x3||null==_0x4fa0x2[_0x285e[253]][_0x285e[1562]]||_0x4fa0x2[_0x285e[253]][_0x285e[255]]!=_0x4fa0x2[_0x285e[441]][_0x285e[255]]||!_0x4fa0x2[_0x285e[253]][_0x285e[1562]][_0x285e[237]](_0x4fa0x2)||!mxUtils[_0x285e[2226]](_0x4fa0x2[_0x285e[253]][_0x285e[1525]],_0x4fa0x2[_0x285e[439]])){_0x4fa0x5= !0,_0x4fa0x2[_0x285e[253]][_0x285e[1525]]=null!=_0x4fa0x2[_0x285e[439]]?_0x4fa0x2[_0x285e[439]][_0x285e[1853]]():null,_0x4fa0x2[_0x285e[253]][_0x285e[1562]]= new mxRectangle(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],_0x4fa0x2[_0x285e[117]],_0x4fa0x2[_0x285e[119]]),_0x4fa0x2[_0x285e[253]][_0x285e[255]]=_0x4fa0x2[_0x285e[441]][_0x285e[255]],null==_0x4fa0x4||_0x4fa0x4?_0x4fa0x2[_0x285e[253]][_0x285e[258]]():_0x4fa0x2[_0x285e[253]][_0x285e[1577]]()};if(null==_0x4fa0x4||_0x4fa0x4){this[_0x285e[2217]](_0x4fa0x2,_0x4fa0x5),this[_0x285e[2222]](_0x4fa0x2,_0x4fa0x5),this[_0x285e[2223]](_0x4fa0x2,_0x4fa0x5)}}};mxCellRenderer[_0x285e[202]][_0x285e[515]]=function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[253]]&&(null!=_0x4fa0x2[_0x285e[963]]&&(_0x4fa0x2[_0x285e[963]][_0x285e[515]](),_0x4fa0x2[_0x285e[963]]=null),null!=_0x4fa0x2[_0x285e[1211]]&&(_0x4fa0x2[_0x285e[1211]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x4){_0x4fa0x4[_0x285e[515]]()}),_0x4fa0x2[_0x285e[1211]]=null),null!=_0x4fa0x2[_0x285e[2207]]&&(_0x4fa0x2[_0x285e[2207]][_0x285e[515]](),_0x4fa0x2[_0x285e[2207]]=null),_0x4fa0x2[_0x285e[253]][_0x285e[515]](),_0x4fa0x2[_0x285e[253]]=null)};var mxEdgeStyle={EntityRelation:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x2[_0x285e[441]],_0x4fa0x12=_0x4fa0xa[_0x285e[1179]];_0x4fa0x5=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_SEGMENT,mxConstants.ENTITY_SEGMENT)*_0x4fa0xa[_0x285e[255]];var _0x4fa0x13=_0x4fa0x2[_0x285e[439]],_0x4fa0x14=_0x4fa0x13[0],_0x4fa0x15=_0x4fa0x13[_0x4fa0x13[_0x285e[67]]-1],_0x4fa0x13=!1;if(null!=_0x4fa0x14){_0x4fa0x3= new mxCellState,_0x4fa0x3[_0x285e[235]]=_0x4fa0x14[_0x285e[235]],_0x4fa0x3[_0x285e[236]]=_0x4fa0x14[_0x285e[236]]}else {if(null!=_0x4fa0x3){var _0x4fa0x16=mxUtils[_0x285e[2227]](_0x4fa0x3,_0x4fa0x2,!0,mxConstants.DIRECTION_MASK_NONE);_0x4fa0x16!=mxConstants[_0x285e[434]]?_0x4fa0x13=_0x4fa0x16==mxConstants[_0x285e[436]]:(_0x4fa0x14=_0x4fa0x12[_0x285e[1198]](_0x4fa0x3[_0x285e[246]]),_0x4fa0x14[_0x285e[1500]]?_0x4fa0x13=0.5>=_0x4fa0x14[_0x285e[235]]:null!=_0x4fa0x4&&(_0x4fa0x13=_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]<_0x4fa0x3[_0x285e[235]]))}else {return}};_0x4fa0x14= !0;null!=_0x4fa0x15?(_0x4fa0x4= new mxCellState,_0x4fa0x4[_0x285e[235]]=_0x4fa0x15[_0x285e[235]],_0x4fa0x4[_0x285e[236]]=_0x4fa0x15[_0x285e[236]]):null!=_0x4fa0x4&&(_0x4fa0x16=mxUtils[_0x285e[2227]](_0x4fa0x4,_0x4fa0x2,!1,mxConstants.DIRECTION_MASK_NONE),_0x4fa0x16!=mxConstants[_0x285e[434]]?_0x4fa0x14=_0x4fa0x16==mxConstants[_0x285e[436]]:(_0x4fa0x2=_0x4fa0x12[_0x285e[1198]](_0x4fa0x4[_0x285e[246]]),_0x4fa0x2[_0x285e[1500]]?_0x4fa0x14=0.5>=_0x4fa0x2[_0x285e[235]]:null!=_0x4fa0x3&&(_0x4fa0x14=_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]]<_0x4fa0x4[_0x285e[235]])));null!=_0x4fa0x3&&null!=_0x4fa0x4&&(_0x4fa0x2=_0x4fa0x13?_0x4fa0x3[_0x285e[235]]:_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x3=_0x4fa0xa[_0x285e[2228]](_0x4fa0x3),_0x4fa0x12=_0x4fa0x14?_0x4fa0x4[_0x285e[235]]:_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]],_0x4fa0x4=_0x4fa0xa[_0x285e[2228]](_0x4fa0x4),_0x4fa0xa= new mxPoint(_0x4fa0x2+(_0x4fa0x13?-_0x4fa0x5:_0x4fa0x5),_0x4fa0x3),_0x4fa0x15= new mxPoint(_0x4fa0x12+(_0x4fa0x14?-_0x4fa0x5:_0x4fa0x5),_0x4fa0x4),_0x4fa0x13==_0x4fa0x14?(_0x4fa0x5=_0x4fa0x13?Math[_0x285e[243]](_0x4fa0x2,_0x4fa0x12)-_0x4fa0x5:Math[_0x285e[160]](_0x4fa0x2,_0x4fa0x12)+_0x4fa0x5,_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x5,_0x4fa0x3)),_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x5,_0x4fa0x4))):(_0x4fa0xa[_0x285e[235]]<_0x4fa0x15[_0x285e[235]]==_0x4fa0x13?(_0x4fa0x5=_0x4fa0x3+(_0x4fa0x4-_0x4fa0x3)/2,_0x4fa0x9[_0x285e[207]](_0x4fa0xa),_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0xa[_0x285e[235]],_0x4fa0x5)),_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x15[_0x285e[235]],_0x4fa0x5))):_0x4fa0x9[_0x285e[207]](_0x4fa0xa),_0x4fa0x9[_0x285e[207]](_0x4fa0x15)))},Loop:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x3){_0x4fa0x4=_0x4fa0x2[_0x285e[441]];var _0x4fa0xa=_0x4fa0x4[_0x285e[1179]];_0x4fa0x5=null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5[0]:null;null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0x4[_0x285e[2229]](_0x4fa0x2,_0x4fa0x5),mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x5[_0x285e[235]],_0x4fa0x5[_0x285e[236]])&&(_0x4fa0x5=null));var _0x4fa0x12=0,_0x4fa0x13=0,_0x4fa0x14=0,_0x4fa0x15=0,_0x4fa0xa=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_SEGMENT,_0x4fa0xa[_0x285e[1020]])*_0x4fa0x4[_0x285e[255]];_0x4fa0x2=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_WEST);_0x4fa0x2==mxConstants[_0x285e[1358]]||_0x4fa0x2==mxConstants[_0x285e[1354]]?(_0x4fa0x12=_0x4fa0x4[_0x285e[2230]](_0x4fa0x3),_0x4fa0x13=_0x4fa0xa):(_0x4fa0x14=_0x4fa0x4[_0x285e[2228]](_0x4fa0x3),_0x4fa0x15=_0x4fa0xa);null==_0x4fa0x5||_0x4fa0x5[_0x285e[235]]<_0x4fa0x3[_0x285e[235]]||_0x4fa0x5[_0x285e[235]]>_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]]?null!=_0x4fa0x5?(_0x4fa0x12=_0x4fa0x5[_0x285e[235]],_0x4fa0x15=Math[_0x285e[160]](Math[_0x285e[425]](_0x4fa0x14-_0x4fa0x5[_0x285e[236]]),_0x4fa0x15)):_0x4fa0x2==mxConstants[_0x285e[1358]]?_0x4fa0x14=_0x4fa0x3[_0x285e[236]]-2*_0x4fa0x13:_0x4fa0x2==mxConstants[_0x285e[1354]]?_0x4fa0x14=_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]]+2*_0x4fa0x13:_0x4fa0x12=_0x4fa0x2==mxConstants[_0x285e[1356]]?_0x4fa0x3[_0x285e[235]]-2*_0x4fa0x15:_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]]+2*_0x4fa0x15:null!=_0x4fa0x5&&(_0x4fa0x12=_0x4fa0x4[_0x285e[2230]](_0x4fa0x3),_0x4fa0x13=Math[_0x285e[160]](Math[_0x285e[425]](_0x4fa0x12-_0x4fa0x5[_0x285e[235]]),_0x4fa0x15),_0x4fa0x14=_0x4fa0x5[_0x285e[236]],_0x4fa0x15=0);_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x12-_0x4fa0x13,_0x4fa0x14-_0x4fa0x15));_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x12+_0x4fa0x13,_0x4fa0x14+_0x4fa0x15))}},ElbowConnector:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5[0]:null,_0x4fa0x12=!1,_0x4fa0x13=!1;if(null!=_0x4fa0x3&&null!=_0x4fa0x4){if(null!=_0x4fa0xa){var _0x4fa0x14=Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]),_0x4fa0x15=Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]),_0x4fa0x13=Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]),_0x4fa0x16=Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]),_0x4fa0xa=_0x4fa0x2[_0x285e[441]][_0x285e[2229]](_0x4fa0x2,_0x4fa0xa),_0x4fa0x12=_0x4fa0xa[_0x285e[236]]<_0x4fa0x13||_0x4fa0xa[_0x285e[236]]>_0x4fa0x16,_0x4fa0x13=_0x4fa0xa[_0x285e[235]]<_0x4fa0x14||_0x4fa0xa[_0x285e[235]]>_0x4fa0x15}else {_0x4fa0x14=Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]),_0x4fa0x15=Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]),_0x4fa0x12=_0x4fa0x14==_0x4fa0x15,_0x4fa0x12||(_0x4fa0x13=Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]),_0x4fa0x16=Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]),_0x4fa0x13=_0x4fa0x13==_0x4fa0x16)}};!_0x4fa0x13&&(_0x4fa0x12||_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2231]]]==mxConstants[_0x285e[2232]])?mxEdgeStyle.TopToBottom(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9):mxEdgeStyle.SideToSide(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)},SideToSide:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x2[_0x285e[441]];_0x4fa0x5=null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5[0]:null;var _0x4fa0x12=_0x4fa0x2[_0x285e[439]],_0x4fa0x13=_0x4fa0x12[0],_0x4fa0x12=_0x4fa0x12[_0x4fa0x12[_0x285e[67]]-1];null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0xa[_0x285e[2229]](_0x4fa0x2,_0x4fa0x5));null!=_0x4fa0x13&&(_0x4fa0x3= new mxCellState,_0x4fa0x3[_0x285e[235]]=_0x4fa0x13[_0x285e[235]],_0x4fa0x3[_0x285e[236]]=_0x4fa0x13[_0x285e[236]]);null!=_0x4fa0x12&&(_0x4fa0x4= new mxCellState,_0x4fa0x4[_0x285e[235]]=_0x4fa0x12[_0x285e[235]],_0x4fa0x4[_0x285e[236]]=_0x4fa0x12[_0x285e[236]]);null!=_0x4fa0x3&&null!=_0x4fa0x4&&(_0x4fa0x2=Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]),_0x4fa0x13=Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]),_0x4fa0x2=null!=_0x4fa0x5?_0x4fa0x5[_0x285e[235]]:_0x4fa0x13+(_0x4fa0x2-_0x4fa0x13)/2,_0x4fa0x13=_0x4fa0xa[_0x285e[2228]](_0x4fa0x3),_0x4fa0xa=_0x4fa0xa[_0x285e[2228]](_0x4fa0x4),null!=_0x4fa0x5&&(_0x4fa0x5[_0x285e[236]]>=_0x4fa0x3[_0x285e[236]]&&_0x4fa0x5[_0x285e[236]]<=_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]]&&(_0x4fa0x13=_0x4fa0x5[_0x285e[236]]),_0x4fa0x5[_0x285e[236]]>=_0x4fa0x4[_0x285e[236]]&&_0x4fa0x5[_0x285e[236]]<=_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]&&(_0x4fa0xa=_0x4fa0x5[_0x285e[236]])),!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x13)&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x13)&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0x13)),!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x2,_0x4fa0xa)&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x2,_0x4fa0xa)&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0xa)),1==_0x4fa0x9[_0x285e[67]]&&(null!=_0x4fa0x5?!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x5[_0x285e[236]])&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x5[_0x285e[236]])&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0x5[_0x285e[236]])):(_0x4fa0xa=Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]),_0x4fa0x3=Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]),_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0xa+(_0x4fa0x3-_0x4fa0xa)/2)))))},TopToBottom:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x2[_0x285e[441]];_0x4fa0x5=null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5[0]:null;var _0x4fa0x12=_0x4fa0x2[_0x285e[439]],_0x4fa0x13=_0x4fa0x12[0],_0x4fa0x12=_0x4fa0x12[_0x4fa0x12[_0x285e[67]]-1];null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0xa[_0x285e[2229]](_0x4fa0x2,_0x4fa0x5));null!=_0x4fa0x13&&(_0x4fa0x3= new mxCellState,_0x4fa0x3[_0x285e[235]]=_0x4fa0x13[_0x285e[235]],_0x4fa0x3[_0x285e[236]]=_0x4fa0x13[_0x285e[236]]);null!=_0x4fa0x12&&(_0x4fa0x4= new mxCellState,_0x4fa0x4[_0x285e[235]]=_0x4fa0x12[_0x285e[235]],_0x4fa0x4[_0x285e[236]]=_0x4fa0x12[_0x285e[236]]);null!=_0x4fa0x3&&null!=_0x4fa0x4&&(_0x4fa0x13=Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]),_0x4fa0x12=Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]],_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]),_0x4fa0x2=_0x4fa0xa[_0x285e[2230]](_0x4fa0x3),null!=_0x4fa0x5&&(_0x4fa0x5[_0x285e[235]]>=_0x4fa0x3[_0x285e[235]]&&_0x4fa0x5[_0x285e[235]]<=_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]])&&(_0x4fa0x2=_0x4fa0x5[_0x285e[235]]),_0x4fa0x13=null!=_0x4fa0x5?_0x4fa0x5[_0x285e[236]]:_0x4fa0x12+(_0x4fa0x13-_0x4fa0x12)/2,!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x13)&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x13)&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0x13)),_0x4fa0x2=null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[235]]>=_0x4fa0x4[_0x285e[235]]&&_0x4fa0x5[_0x285e[235]]<=_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]?_0x4fa0x5[_0x285e[235]]:_0x4fa0xa[_0x285e[2230]](_0x4fa0x4),!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x13)&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x13)&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x2,_0x4fa0x13)),1==_0x4fa0x9[_0x285e[67]]&&(null!=_0x4fa0x5&&1==_0x4fa0x9[_0x285e[67]]?!mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x5[_0x285e[235]],_0x4fa0x13)&&!mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x5[_0x285e[235]],_0x4fa0x13)&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x5[_0x285e[235]],_0x4fa0x13)):(_0x4fa0xa=Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]),_0x4fa0x3=Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]],_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]),_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0xa+(_0x4fa0x3-_0x4fa0xa)/2,_0x4fa0x13)))))},SegmentConnector:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x2[_0x285e[439]],_0x4fa0x12=!0,_0x4fa0x13=null,_0x4fa0x14=_0x4fa0xa[0];null==_0x4fa0x14&&null!=_0x4fa0x3?_0x4fa0x14= new mxPoint(_0x4fa0x2[_0x285e[441]][_0x285e[2230]](_0x4fa0x3),_0x4fa0x2[_0x285e[441]][_0x285e[2228]](_0x4fa0x3)):null!=_0x4fa0x14&&(_0x4fa0x14=_0x4fa0x14[_0x285e[238]]());var _0x4fa0x15=_0x4fa0xa[_0x285e[67]]-1;if(null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]){for(var _0x4fa0x13=_0x4fa0x2[_0x285e[441]][_0x285e[2229]](_0x4fa0x2,_0x4fa0x5[0]),_0x4fa0x16=_0x4fa0x3,_0x4fa0x17=_0x4fa0xa[0],_0x4fa0x18=!1,_0x4fa0x19=!1,_0x4fa0x18=_0x4fa0x13,_0x4fa0x1a=_0x4fa0x5[_0x285e[67]],_0x4fa0x1b=0;2>_0x4fa0x1b;_0x4fa0x1b++){var _0x4fa0x1c=null!=_0x4fa0x17&&_0x4fa0x17[_0x285e[235]]==_0x4fa0x18[_0x285e[235]],_0x4fa0x1d=null!=_0x4fa0x17&&_0x4fa0x17[_0x285e[236]]==_0x4fa0x18[_0x285e[236]],_0x4fa0x1e=null!=_0x4fa0x16&&_0x4fa0x18[_0x285e[236]]>=_0x4fa0x16[_0x285e[236]]&&_0x4fa0x18[_0x285e[236]]<=_0x4fa0x16[_0x285e[236]]+_0x4fa0x16[_0x285e[119]],_0x4fa0x16=null!=_0x4fa0x16&&_0x4fa0x18[_0x285e[235]]>=_0x4fa0x16[_0x285e[235]]&&_0x4fa0x18[_0x285e[235]]<=_0x4fa0x16[_0x285e[235]]+_0x4fa0x16[_0x285e[117]],_0x4fa0x18=_0x4fa0x1d||null==_0x4fa0x17&&_0x4fa0x1e,_0x4fa0x19=_0x4fa0x1c||null==_0x4fa0x17&&_0x4fa0x16;if(null!=_0x4fa0x17&&!_0x4fa0x1d&&!_0x4fa0x1c&&(_0x4fa0x1e||_0x4fa0x16)){_0x4fa0x12=_0x4fa0x1e?!1:!0;break};if(_0x4fa0x19||_0x4fa0x18){_0x4fa0x12=_0x4fa0x18;1==_0x4fa0x1b&&(_0x4fa0x12=0==_0x4fa0x5[_0x285e[67]]%2?_0x4fa0x18:_0x4fa0x19);break};_0x4fa0x16=_0x4fa0x4;_0x4fa0x17=_0x4fa0xa[_0x4fa0x15];_0x4fa0x18=_0x4fa0x2[_0x285e[441]][_0x285e[2229]](_0x4fa0x2,_0x4fa0x5[_0x4fa0x1a-1])};_0x4fa0x12&&(null!=_0x4fa0xa[0]&&_0x4fa0xa[0][_0x285e[236]]!=_0x4fa0x13[_0x285e[236]]||null==_0x4fa0xa[0]&&null!=_0x4fa0x3&&(_0x4fa0x13[_0x285e[236]]<_0x4fa0x3[_0x285e[236]]||_0x4fa0x13[_0x285e[236]]>_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]]))?_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x14[_0x285e[235]],_0x4fa0x13[_0x285e[236]])):!_0x4fa0x12&&(null!=_0x4fa0xa[0]&&_0x4fa0xa[0][_0x285e[235]]!=_0x4fa0x13[_0x285e[235]]||null==_0x4fa0xa[0]&&null!=_0x4fa0x3&&(_0x4fa0x13[_0x285e[235]]<_0x4fa0x3[_0x285e[235]]||_0x4fa0x13[_0x285e[235]]>_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]]))&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x13[_0x285e[235]],_0x4fa0x14[_0x285e[236]]));_0x4fa0x12?_0x4fa0x14[_0x285e[236]]=_0x4fa0x13[_0x285e[236]]:_0x4fa0x14[_0x285e[235]]=_0x4fa0x13[_0x285e[235]];for(_0x4fa0x1b=0;_0x4fa0x1b<_0x4fa0x5[_0x285e[67]];_0x4fa0x1b++){_0x4fa0x12= !_0x4fa0x12,_0x4fa0x13=_0x4fa0x2[_0x285e[441]][_0x285e[2229]](_0x4fa0x2,_0x4fa0x5[_0x4fa0x1b]),_0x4fa0x12?_0x4fa0x14[_0x285e[236]]=_0x4fa0x13[_0x285e[236]]:_0x4fa0x14[_0x285e[235]]=_0x4fa0x13[_0x285e[235]],_0x4fa0x9[_0x285e[207]](_0x4fa0x14[_0x285e[238]]())}}else {_0x4fa0x13=_0x4fa0x14,_0x4fa0x12= !0};_0x4fa0x14=_0x4fa0xa[_0x4fa0x15];null==_0x4fa0x14&&null!=_0x4fa0x4&&(_0x4fa0x14= new mxPoint(_0x4fa0x2[_0x285e[441]][_0x285e[2230]](_0x4fa0x4),_0x4fa0x2[_0x285e[441]][_0x285e[2228]](_0x4fa0x4)));_0x4fa0x12&&(null!=_0x4fa0xa[_0x4fa0x15]&&_0x4fa0xa[_0x4fa0x15][_0x285e[236]]!=_0x4fa0x13[_0x285e[236]]||null==_0x4fa0xa[_0x4fa0x15]&&null!=_0x4fa0x4&&(_0x4fa0x13[_0x285e[236]]<_0x4fa0x4[_0x285e[236]]||_0x4fa0x13[_0x285e[236]]>_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]))?_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x14[_0x285e[235]],_0x4fa0x13[_0x285e[236]])):!_0x4fa0x12&&(null!=_0x4fa0xa[_0x4fa0x15]&&_0x4fa0xa[_0x4fa0x15][_0x285e[235]]!=_0x4fa0x13[_0x285e[235]]||null==_0x4fa0xa[_0x4fa0x15]&&null!=_0x4fa0x4&&(_0x4fa0x13[_0x285e[235]]<_0x4fa0x4[_0x285e[235]]||_0x4fa0x13[_0x285e[235]]>_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]))&&_0x4fa0x9[_0x285e[207]]( new mxPoint(_0x4fa0x13[_0x285e[235]],_0x4fa0x14[_0x285e[236]]));if(null==_0x4fa0xa[0]&&null!=_0x4fa0x3){for(;1<_0x4fa0x9[_0x285e[67]]&&mxUtils[_0x285e[442]](_0x4fa0x3,_0x4fa0x9[1][_0x285e[235]],_0x4fa0x9[1][_0x285e[236]]);){_0x4fa0x9=_0x4fa0x9[_0x285e[300]](1,1)}};if(null==_0x4fa0xa[_0x4fa0x15]&&null!=_0x4fa0x4){for(;1<_0x4fa0x9[_0x285e[67]]&&mxUtils[_0x285e[442]](_0x4fa0x4,_0x4fa0x9[_0x4fa0x9[_0x285e[67]]-1][_0x285e[235]],_0x4fa0x9[_0x4fa0x9[_0x285e[67]]-1][_0x285e[236]]);){_0x4fa0x9=_0x4fa0x9[_0x285e[300]](_0x4fa0x9[_0x285e[67]]-1,1)}}},orthBuffer:10,dirVectors:[[-1,0],[0,-1],[1,0],[0,1],[-1,0],[0,-1],[1,0]],wayPoints1:[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]],routePatterns:[[[513,2308,2081,2562],[513,1090,514,2184,2114,2561],[513,1090,514,2564,2184,2562],[513,2308,2561,1090,514,2568,2308]],[[514,1057,513,2308,2081,2562],[514,2184,2114,2561],[514,2184,2562,1057,513,2564,2184],[514,1057,513,2568,2308,2561]],[[1090,514,1057,513,2308,2081,2562],[2114,2561],[1090,2562,1057,513,2564,2184],[1090,514,1057,513,2308,2561,2568]],[[2081,2562],[1057,513,1090,514,2184,2114,2561],[1057,513,1090,514,2184,2562,2564],[1057,2561,1090,514,2568,2308]]],inlineRoutePatterns:[[null,[2114,2568],null,null],[null,[514,2081,2114,2568],null,null],[null,[2114,2561],null,null],[[2081,2562],[1057,2114,2568],[2184,2562],null]],vertexSeperations:[],limits:[[0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0]],LEFT_MASK:32,TOP_MASK:64,RIGHT_MASK:128,BOTTOM_MASK:256,LEFT:1,TOP:2,RIGHT:4,BOTTOM:8,SIDE_MASK:480,CENTER_MASK:512,SOURCE_MASK:1024,TARGET_MASK:2048,VERTEX_MASK:3072,OrthConnector:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=_0x4fa0x2[_0x285e[441]][_0x285e[1179]],_0x4fa0x12=null==_0x4fa0x3?!1:_0x4fa0xa[_0x285e[502]]()[_0x285e[250]](_0x4fa0x3[_0x285e[246]]),_0x4fa0xa=null==_0x4fa0x4?!1:_0x4fa0xa[_0x285e[502]]()[_0x285e[250]](_0x4fa0x4[_0x285e[246]]);if(null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]||_0x4fa0x12||_0x4fa0xa){mxEdgeStyle.SegmentConnector(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)}else {_0x4fa0x5=_0x4fa0x2[_0x285e[439]];var _0x4fa0x13=_0x4fa0x5[0],_0x4fa0x14=_0x4fa0x5[_0x4fa0x5[_0x285e[67]]-1];_0x4fa0x5=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[235]]:_0x4fa0x13[_0x285e[235]];var _0x4fa0x12=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[236]]:_0x4fa0x13[_0x285e[236]],_0x4fa0x15=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[117]]:1,_0x4fa0x16=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[119]]:1,_0x4fa0x17=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[235]]:_0x4fa0x14[_0x285e[235]],_0x4fa0x18=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[236]]:_0x4fa0x14[_0x285e[236]],_0x4fa0x19=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[117]]:1,_0x4fa0x1a=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[119]]:1,_0x4fa0xa=_0x4fa0x2[_0x285e[441]][_0x285e[255]]*mxEdgeStyle[_0x285e[2233]],_0x4fa0x1b=[mxConstants[_0x285e[2234]],mxConstants[_0x285e[2234]]];null!=_0x4fa0x3&&(_0x4fa0x1b[0]=mxUtils[_0x285e[2227]](_0x4fa0x3,_0x4fa0x2,!0,mxConstants.DIRECTION_MASK_ALL));null!=_0x4fa0x4&&(_0x4fa0x1b[1]=mxUtils[_0x285e[2227]](_0x4fa0x4,_0x4fa0x2,!1,mxConstants.DIRECTION_MASK_ALL));_0x4fa0x2=[0,0];_0x4fa0x5=[[_0x4fa0x5,_0x4fa0x12,_0x4fa0x15,_0x4fa0x16],[_0x4fa0x17,_0x4fa0x18,_0x4fa0x19,_0x4fa0x1a]];for(_0x4fa0x15=0;2>_0x4fa0x15;_0x4fa0x15++){mxEdgeStyle[_0x285e[2235]][_0x4fa0x15][1]=_0x4fa0x5[_0x4fa0x15][0]-_0x4fa0xa,mxEdgeStyle[_0x285e[2235]][_0x4fa0x15][2]=_0x4fa0x5[_0x4fa0x15][1]-_0x4fa0xa,mxEdgeStyle[_0x285e[2235]][_0x4fa0x15][4]=_0x4fa0x5[_0x4fa0x15][0]+_0x4fa0x5[_0x4fa0x15][2]+_0x4fa0xa,mxEdgeStyle[_0x285e[2235]][_0x4fa0x15][8]=_0x4fa0x5[_0x4fa0x15][1]+_0x4fa0x5[_0x4fa0x15][3]+_0x4fa0xa};_0x4fa0x15=_0x4fa0x5[0][0]+_0x4fa0x5[0][2]/2-(_0x4fa0x5[1][0]+_0x4fa0x5[1][2]/2);_0x4fa0x16=_0x4fa0x5[0][1]+_0x4fa0x5[0][3]/2-(_0x4fa0x5[1][1]+_0x4fa0x5[1][3]/2);_0x4fa0x12=0;0>_0x4fa0x15?_0x4fa0x12=0>_0x4fa0x16?2:1:0>=_0x4fa0x16&&(_0x4fa0x12=3,0==_0x4fa0x15&&(_0x4fa0x12=2));_0x4fa0x16=null;null!=_0x4fa0x3&&(_0x4fa0x16=_0x4fa0x13);_0x4fa0x3=[[0.5,0.5],[0.5,0.5]];for(_0x4fa0x15=0;2>_0x4fa0x15;_0x4fa0x15++){null!=_0x4fa0x16&&(_0x4fa0x3[_0x4fa0x15][0]=(_0x4fa0x16[_0x285e[235]]-_0x4fa0x5[_0x4fa0x15][0])/_0x4fa0x5[_0x4fa0x15][2],0.01>_0x4fa0x3[_0x4fa0x15][0]?_0x4fa0x2[_0x4fa0x15]=mxConstants[_0x285e[436]]:0.99<_0x4fa0x3[_0x4fa0x15][0]&&(_0x4fa0x2[_0x4fa0x15]=mxConstants[_0x285e[438]]),_0x4fa0x3[_0x4fa0x15][1]=(_0x4fa0x16[_0x285e[236]]-_0x4fa0x5[_0x4fa0x15][1])/_0x4fa0x5[_0x4fa0x15][3],0.01>_0x4fa0x3[_0x4fa0x15][1]?_0x4fa0x2[_0x4fa0x15]=mxConstants[_0x285e[435]]:0.99<_0x4fa0x3[_0x4fa0x15][1]&&(_0x4fa0x2[_0x4fa0x15]=mxConstants[_0x285e[437]])),_0x4fa0x16=null,null!=_0x4fa0x4&&(_0x4fa0x16=_0x4fa0x14)};_0x4fa0x15=_0x4fa0x5[0][1]-(_0x4fa0x5[1][1]+_0x4fa0x5[1][3]);_0x4fa0x16=_0x4fa0x5[0][0]-(_0x4fa0x5[1][0]+_0x4fa0x5[1][2]);_0x4fa0x17=_0x4fa0x5[1][1]-(_0x4fa0x5[0][1]+_0x4fa0x5[0][3]);_0x4fa0x18=_0x4fa0x5[1][0]-(_0x4fa0x5[0][0]+_0x4fa0x5[0][2]);mxEdgeStyle[_0x285e[2236]][1]=Math[_0x285e[160]](_0x4fa0x16-2*_0x4fa0xa,0);mxEdgeStyle[_0x285e[2236]][2]=Math[_0x285e[160]](_0x4fa0x15-2*_0x4fa0xa,0);mxEdgeStyle[_0x285e[2236]][4]=Math[_0x285e[160]](_0x4fa0x17-2*_0x4fa0xa,0);mxEdgeStyle[_0x285e[2236]][3]=Math[_0x285e[160]](_0x4fa0x18-2*_0x4fa0xa,0);_0x4fa0x4=[];_0x4fa0x13=[];_0x4fa0x14=[];_0x4fa0x13[0]=_0x4fa0x16>=_0x4fa0x18?mxConstants[_0x285e[436]]:mxConstants[_0x285e[438]];_0x4fa0x14[0]=_0x4fa0x15>=_0x4fa0x17?mxConstants[_0x285e[435]]:mxConstants[_0x285e[437]];_0x4fa0x13[1]=mxUtils[_0x285e[2237]](_0x4fa0x13[0]);_0x4fa0x14[1]=mxUtils[_0x285e[2237]](_0x4fa0x14[0]);_0x4fa0x16=_0x4fa0x16>=_0x4fa0x18?_0x4fa0x16:_0x4fa0x18;_0x4fa0x17=_0x4fa0x15>=_0x4fa0x17?_0x4fa0x15:_0x4fa0x17;_0x4fa0x18=[[0,0],[0,0]];_0x4fa0x19= !1;for(_0x4fa0x15=0;2>_0x4fa0x15;_0x4fa0x15++){0==_0x4fa0x2[_0x4fa0x15]&&(0==(_0x4fa0x13[_0x4fa0x15]&_0x4fa0x1b[_0x4fa0x15])&&(_0x4fa0x13[_0x4fa0x15]=mxUtils[_0x285e[2237]](_0x4fa0x13[_0x4fa0x15])),0==(_0x4fa0x14[_0x4fa0x15]&_0x4fa0x1b[_0x4fa0x15])&&(_0x4fa0x14[_0x4fa0x15]=mxUtils[_0x285e[2237]](_0x4fa0x14[_0x4fa0x15])),_0x4fa0x18[_0x4fa0x15][0]=_0x4fa0x14[_0x4fa0x15],_0x4fa0x18[_0x4fa0x15][1]=_0x4fa0x13[_0x4fa0x15])};_0x4fa0x17>2*_0x4fa0xa&&_0x4fa0x16>2*_0x4fa0xa&&(0<(_0x4fa0x13[0]&_0x4fa0x1b[0])&&0<(_0x4fa0x14[1]&_0x4fa0x1b[1])?(_0x4fa0x18[0][0]=_0x4fa0x13[0],_0x4fa0x18[0][1]=_0x4fa0x14[0],_0x4fa0x18[1][0]=_0x4fa0x14[1],_0x4fa0x18[1][1]=_0x4fa0x13[1],_0x4fa0x19= !0):0<(_0x4fa0x14[0]&_0x4fa0x1b[0])&&0<(_0x4fa0x13[1]&_0x4fa0x1b[1])&&(_0x4fa0x18[0][0]=_0x4fa0x14[0],_0x4fa0x18[0][1]=_0x4fa0x13[0],_0x4fa0x18[1][0]=_0x4fa0x13[1],_0x4fa0x18[1][1]=_0x4fa0x14[1],_0x4fa0x19= !0));_0x4fa0x17>2*_0x4fa0xa&&!_0x4fa0x19&&(_0x4fa0x18[0][0]=_0x4fa0x14[0],_0x4fa0x18[0][1]=_0x4fa0x13[0],_0x4fa0x18[1][0]=_0x4fa0x14[1],_0x4fa0x18[1][1]=_0x4fa0x13[1],_0x4fa0x19= !0);_0x4fa0x16>2*_0x4fa0xa&&!_0x4fa0x19&&(_0x4fa0x18[0][0]=_0x4fa0x13[0],_0x4fa0x18[0][1]=_0x4fa0x14[0],_0x4fa0x18[1][0]=_0x4fa0x13[1],_0x4fa0x18[1][1]=_0x4fa0x14[1]);for(_0x4fa0x15=0;2>_0x4fa0x15;_0x4fa0x15++){if(0==_0x4fa0x2[_0x4fa0x15]&&(0==(_0x4fa0x18[_0x4fa0x15][0]&_0x4fa0x1b[_0x4fa0x15])&&(_0x4fa0x18[_0x4fa0x15][0]=_0x4fa0x18[_0x4fa0x15][1]),_0x4fa0x4[_0x4fa0x15]=_0x4fa0x18[_0x4fa0x15][0]&_0x4fa0x1b[_0x4fa0x15],_0x4fa0x4[_0x4fa0x15]|=(_0x4fa0x18[_0x4fa0x15][1]&_0x4fa0x1b[_0x4fa0x15])<<8,_0x4fa0x4[_0x4fa0x15]|=(_0x4fa0x18[1-_0x4fa0x15][_0x4fa0x15]&_0x4fa0x1b[_0x4fa0x15])<<16,_0x4fa0x4[_0x4fa0x15]|=(_0x4fa0x18[1-_0x4fa0x15][1-_0x4fa0x15]&_0x4fa0x1b[_0x4fa0x15])<<24,0==(_0x4fa0x4[_0x4fa0x15]&15)&&(_0x4fa0x4[_0x4fa0x15]<<=8),0==(_0x4fa0x4[_0x4fa0x15]&3840)&&(_0x4fa0x4[_0x4fa0x15]=_0x4fa0x4[_0x4fa0x15]&15|_0x4fa0x4[_0x4fa0x15]>>8),0==(_0x4fa0x4[_0x4fa0x15]&983040)&&(_0x4fa0x4[_0x4fa0x15]=_0x4fa0x4[_0x4fa0x15]&65535|(_0x4fa0x4[_0x4fa0x15]&251658240)>>8),_0x4fa0x2[_0x4fa0x15]=_0x4fa0x4[_0x4fa0x15]&15,_0x4fa0x1b[_0x4fa0x15]==mxConstants[_0x285e[436]]||_0x4fa0x1b[_0x4fa0x15]==mxConstants[_0x285e[435]]||_0x4fa0x1b[_0x4fa0x15]==mxConstants[_0x285e[438]]||_0x4fa0x1b[_0x4fa0x15]==mxConstants[_0x285e[437]])){_0x4fa0x2[_0x4fa0x15]=_0x4fa0x1b[_0x4fa0x15]}};_0x4fa0x15=_0x4fa0x2[0]==mxConstants[_0x285e[438]]?3:_0x4fa0x2[0];_0x4fa0x1b=_0x4fa0x2[1]==mxConstants[_0x285e[438]]?3:_0x4fa0x2[1];_0x4fa0x15-=_0x4fa0x12;_0x4fa0x1b-=_0x4fa0x12;1>_0x4fa0x15&&(_0x4fa0x15+=4);1>_0x4fa0x1b&&(_0x4fa0x1b+=4);_0x4fa0x1b=mxEdgeStyle[_0x285e[2238]][_0x4fa0x15-1][_0x4fa0x1b-1];mxEdgeStyle[_0x285e[2239]][0][0]=_0x4fa0x5[0][0];mxEdgeStyle[_0x285e[2239]][0][1]=_0x4fa0x5[0][1];switch(_0x4fa0x2[0]){case mxConstants[_0x285e[436]]:mxEdgeStyle[_0x285e[2239]][0][0]-=_0x4fa0xa;mxEdgeStyle[_0x285e[2239]][0][1]+=_0x4fa0x3[0][1]*_0x4fa0x5[0][3];break;case mxConstants[_0x285e[437]]:mxEdgeStyle[_0x285e[2239]][0][0]+=_0x4fa0x3[0][0]*_0x4fa0x5[0][2];mxEdgeStyle[_0x285e[2239]][0][1]+=_0x4fa0x5[0][3]+_0x4fa0xa;break;case mxConstants[_0x285e[438]]:mxEdgeStyle[_0x285e[2239]][0][0]+=_0x4fa0x5[0][2]+_0x4fa0xa;mxEdgeStyle[_0x285e[2239]][0][1]+=_0x4fa0x3[0][1]*_0x4fa0x5[0][3];break;case mxConstants[_0x285e[435]]:mxEdgeStyle[_0x285e[2239]][0][0]+=_0x4fa0x3[0][0]*_0x4fa0x5[0][2],mxEdgeStyle[_0x285e[2239]][0][1]-=_0x4fa0xa};_0x4fa0xa=0;_0x4fa0x13=_0x4fa0x4=0<(_0x4fa0x2[0]&(mxConstants[_0x285e[438]]|mxConstants[_0x285e[436]]))?0:1;for(_0x4fa0x15=_0x4fa0x14=0;_0x4fa0x15<_0x4fa0x1b[_0x285e[67]];_0x4fa0x15++){_0x4fa0x14=_0x4fa0x1b[_0x4fa0x15]&15;_0x4fa0x1a=_0x4fa0x14==mxConstants[_0x285e[438]]?3:_0x4fa0x14;_0x4fa0x1a+=_0x4fa0x12;4<_0x4fa0x1a&&(_0x4fa0x1a-=4);_0x4fa0x16=mxEdgeStyle[_0x285e[2240]][_0x4fa0x1a-1];_0x4fa0x14=0<_0x4fa0x1a%2?0:1;_0x4fa0x14!=_0x4fa0x4&&(_0x4fa0xa++,mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][0]=mxEdgeStyle[_0x285e[2239]][_0x4fa0xa-1][0],mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][1]=mxEdgeStyle[_0x285e[2239]][_0x4fa0xa-1][1]);var _0x4fa0x1c=0<(_0x4fa0x1b[_0x4fa0x15]&mxEdgeStyle[_0x285e[2241]]),_0x4fa0x19=0<(_0x4fa0x1b[_0x4fa0x15]&mxEdgeStyle[_0x285e[2242]]),_0x4fa0x17=(_0x4fa0x1b[_0x4fa0x15]&mxEdgeStyle[_0x285e[2243]])>>5,_0x4fa0x17=_0x4fa0x17<<_0x4fa0x12;15<_0x4fa0x17&&(_0x4fa0x17>>=4);_0x4fa0x18=0<(_0x4fa0x1b[_0x4fa0x15]&mxEdgeStyle[_0x285e[2244]]);(_0x4fa0x19||_0x4fa0x1c)&&9>_0x4fa0x17?(_0x4fa0x1a=0,_0x4fa0x19=_0x4fa0x19?0:1,_0x4fa0x1a=_0x4fa0x18&&0==_0x4fa0x14?_0x4fa0x5[_0x4fa0x19][0]+_0x4fa0x3[_0x4fa0x19][0]*_0x4fa0x5[_0x4fa0x19][2]:_0x4fa0x18?_0x4fa0x5[_0x4fa0x19][1]+_0x4fa0x3[_0x4fa0x19][1]*_0x4fa0x5[_0x4fa0x19][3]:mxEdgeStyle[_0x285e[2235]][_0x4fa0x19][_0x4fa0x17],0==_0x4fa0x14?(_0x4fa0x17=(_0x4fa0x1a-mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][0])*_0x4fa0x16[0],0<_0x4fa0x17&&(mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][0]+=_0x4fa0x16[0]*_0x4fa0x17)):(_0x4fa0x17=(_0x4fa0x1a-mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][1])*_0x4fa0x16[1],0<_0x4fa0x17&&(mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][1]+=_0x4fa0x16[1]*_0x4fa0x17))):_0x4fa0x18&&(mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][0]+=_0x4fa0x16[0]*Math[_0x285e[425]](mxEdgeStyle[_0x285e[2236]][_0x4fa0x1a]/2),mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][1]+=_0x4fa0x16[1]*Math[_0x285e[425]](mxEdgeStyle[_0x285e[2236]][_0x4fa0x1a]/2));0<_0x4fa0xa&&mxEdgeStyle[_0x285e[2239]][_0x4fa0xa][_0x4fa0x14]==mxEdgeStyle[_0x285e[2239]][_0x4fa0xa-1][_0x4fa0x14]?_0x4fa0xa--:_0x4fa0x4=_0x4fa0x14};for(_0x4fa0x15=0;_0x4fa0x15<=_0x4fa0xa&& !(_0x4fa0x15==_0x4fa0xa&&((0<(_0x4fa0x2[1]&(mxConstants[_0x285e[438]]|mxConstants[_0x285e[436]]))?0:1)==_0x4fa0x13?0:1)!=(_0x4fa0xa+1)%2);_0x4fa0x15++){_0x4fa0x9[_0x285e[207]]( new mxPoint(mxEdgeStyle[_0x285e[2239]][_0x4fa0x15][0],mxEdgeStyle[_0x285e[2239]][_0x4fa0x15][1]))}}},getRoutePattern:function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[0]==mxConstants[_0x285e[438]]?3:_0x4fa0x2[0];_0x4fa0x2=_0x4fa0x2[1]==mxConstants[_0x285e[438]]?3:_0x4fa0x2[1];_0x4fa0x9-=_0x4fa0x3;_0x4fa0x2-=_0x4fa0x3;1>_0x4fa0x9&&(_0x4fa0x9+=4);1>_0x4fa0x2&&(_0x4fa0x2+=4);_0x4fa0x3=routePatterns[_0x4fa0x9-1][_0x4fa0x2-1];if(0==_0x4fa0x4||0==_0x4fa0x5){null!=inlineRoutePatterns[_0x4fa0x9-1][_0x4fa0x2-1]&&(_0x4fa0x3=inlineRoutePatterns[_0x4fa0x9-1][_0x4fa0x2-1])};return _0x4fa0x3}},mxStyleRegistry={values:[],putValue:function(_0x4fa0x2,_0x4fa0x3){mxStyleRegistry[_0x285e[2245]][_0x4fa0x2]=_0x4fa0x3},getValue:function(_0x4fa0x2){return mxStyleRegistry[_0x285e[2245]][_0x4fa0x2]},getName:function(_0x4fa0x2){for(var _0x4fa0x3 in mxStyleRegistry[_0x285e[2245]]){if(mxStyleRegistry[_0x285e[2245]][_0x4fa0x3]==_0x4fa0x2){return _0x4fa0x3}};return null}};mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_ELBOW,mxEdgeStyle.ElbowConnector);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_ENTITY_RELATION,mxEdgeStyle.EntityRelation);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_LOOP,mxEdgeStyle.Loop);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_SIDETOSIDE,mxEdgeStyle.SideToSide);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_TOPTOBOTTOM,mxEdgeStyle.TopToBottom);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_ORTHOGONAL,mxEdgeStyle.OrthConnector);mxStyleRegistry[_0x285e[2246]](mxConstants.EDGESTYLE_SEGMENT,mxEdgeStyle.SegmentConnector);mxStyleRegistry[_0x285e[2246]](mxConstants.PERIMETER_ELLIPSE,mxPerimeter.EllipsePerimeter);mxStyleRegistry[_0x285e[2246]](mxConstants.PERIMETER_RECTANGLE,mxPerimeter.RectanglePerimeter);mxStyleRegistry[_0x285e[2246]](mxConstants.PERIMETER_RHOMBUS,mxPerimeter.RhombusPerimeter);mxStyleRegistry[_0x285e[2246]](mxConstants.PERIMETER_TRIANGLE,mxPerimeter.TrianglePerimeter);function mxGraphView(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[513]]= new mxPoint;this[_0x285e[2247]]= new mxRectangle;this[_0x285e[1214]]= new mxDictionary}mxGraphView[_0x285e[202]]= new mxEventSource;mxGraphView[_0x285e[202]][_0x285e[196]]=mxGraphView;mxGraphView[_0x285e[202]][_0x285e[2248]]= new mxPoint;mxGraphView[_0x285e[202]][_0x285e[2091]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[819]:_0x285e[110];mxGraphView[_0x285e[202]][_0x285e[2249]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2250]:_0x285e[110];mxGraphView[_0x285e[202]][_0x285e[2251]]= !1;mxGraphView[_0x285e[202]][_0x285e[2252]]= !0;mxGraphView[_0x285e[202]][_0x285e[2253]]= !0;mxGraphView[_0x285e[202]][_0x285e[2254]]= !0;mxGraphView[_0x285e[202]][_0x285e[1179]]=null;mxGraphView[_0x285e[202]][_0x285e[1741]]=null;mxGraphView[_0x285e[202]][_0x285e[2247]]=null;mxGraphView[_0x285e[202]][_0x285e[255]]=1;mxGraphView[_0x285e[202]][_0x285e[513]]=null;mxGraphView[_0x285e[202]][_0x285e[2255]]= !1;mxGraphView[_0x285e[202]][_0x285e[517]]=function(){return this[_0x285e[2247]]};mxGraphView[_0x285e[202]][_0x285e[2256]]=function(_0x4fa0x2){this[_0x285e[2247]]=_0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[1799]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){if(_0x4fa0x4[_0x285e[1193]](_0x4fa0x2[_0x4fa0x5])||_0x4fa0x4[_0x285e[250]](_0x4fa0x2[_0x4fa0x5])){var _0x4fa0x9=this[_0x285e[248]](_0x4fa0x2[_0x4fa0x5]);null!=_0x4fa0x9&&(null==_0x4fa0x3?_0x4fa0x3= new mxRectangle(_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]]):_0x4fa0x3[_0x285e[99]](_0x4fa0x9))}}};return _0x4fa0x3};mxGraphView[_0x285e[202]][_0x285e[2257]]=function(_0x4fa0x2){if(this[_0x285e[1741]]!=_0x4fa0x2){var _0x4fa0x3= new mxCurrentRootChange(this,_0x4fa0x2);_0x4fa0x3[_0x285e[350]]();var _0x4fa0x4= new mxUndoableEdit(this,!1);_0x4fa0x4[_0x285e[99]](_0x4fa0x3);this[_0x285e[746]]( new mxEventObject(mxEvent.UNDO,_0x285e[1061],_0x4fa0x4));this[_0x285e[1179]][_0x285e[2258]]()};return _0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[829]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[255]],_0x4fa0x9= new mxPoint(this[_0x285e[513]][_0x285e[235]],this[_0x285e[513]][_0x285e[236]]);if(this[_0x285e[255]]!=_0x4fa0x2||this[_0x285e[513]][_0x285e[235]]!=_0x4fa0x3||this[_0x285e[513]][_0x285e[236]]!=_0x4fa0x4){this[_0x285e[255]]=_0x4fa0x2,this[_0x285e[513]][_0x285e[235]]=_0x4fa0x3,this[_0x285e[513]][_0x285e[236]]=_0x4fa0x4,this[_0x285e[503]]()&&(this[_0x285e[2259]](),this[_0x285e[1179]][_0x285e[2258]]())};this[_0x285e[746]]( new mxEventObject(mxEvent.SCALE_AND_TRANSLATE,_0x285e[255],_0x4fa0x2,_0x285e[2260],_0x4fa0x5,_0x285e[513],this[_0x285e[513]],_0x285e[2261],_0x4fa0x9))};mxGraphView[_0x285e[202]][_0x285e[518]]=function(){return this[_0x285e[255]]};mxGraphView[_0x285e[202]][_0x285e[2262]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[255]];this[_0x285e[255]]!=_0x4fa0x2&&(this[_0x285e[255]]=_0x4fa0x2,this[_0x285e[503]]()&&(this[_0x285e[2259]](),this[_0x285e[1179]][_0x285e[2258]]()));this[_0x285e[746]]( new mxEventObject(mxEvent.SCALE,_0x285e[255],_0x4fa0x2,_0x285e[2260],_0x4fa0x3))};mxGraphView[_0x285e[202]][_0x285e[512]]=function(){return this[_0x285e[513]]};mxGraphView[_0x285e[202]][_0x285e[1147]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4= new mxPoint(this[_0x285e[513]][_0x285e[235]],this[_0x285e[513]][_0x285e[236]]);if(this[_0x285e[513]][_0x285e[235]]!=_0x4fa0x2||this[_0x285e[513]][_0x285e[236]]!=_0x4fa0x3){this[_0x285e[513]][_0x285e[235]]=_0x4fa0x2,this[_0x285e[513]][_0x285e[236]]=_0x4fa0x3,this[_0x285e[503]]()&&(this[_0x285e[2259]](),this[_0x285e[1179]][_0x285e[2258]]())};this[_0x285e[746]]( new mxEventObject(mxEvent.TRANSLATE,_0x285e[513],this[_0x285e[513]],_0x285e[2261],_0x4fa0x4))};mxGraphView[_0x285e[202]][_0x285e[802]]=function(){null!=this[_0x285e[1741]]&&this[_0x285e[200]]();this[_0x285e[2259]]()};mxGraphView[_0x285e[202]][_0x285e[2259]]=function(){this[_0x285e[2263]]();this[_0x285e[2264]]()};mxGraphView[_0x285e[202]][_0x285e[200]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x2=_0x4fa0x2||_0x4fa0x5[_0x285e[501]]();_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;this[_0x285e[2265]](_0x4fa0x2);if(_0x4fa0x4&&(_0x4fa0x3||_0x4fa0x2!=this[_0x285e[1741]])){_0x4fa0x4=_0x4fa0x5[_0x285e[262]](_0x4fa0x2);for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4;_0x4fa0x9++){this[_0x285e[200]](_0x4fa0x5[_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x3)}}else {this[_0x285e[2263]](_0x4fa0x2)}};mxGraphView[_0x285e[202]][_0x285e[2263]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x2=_0x4fa0x2||_0x4fa0x9[_0x285e[501]]();_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!1;var _0x4fa0xa=this[_0x285e[248]](_0x4fa0x2);null!=_0x4fa0xa&&(_0x4fa0xa[_0x285e[2080]]= !0,_0x4fa0x5&&(_0x4fa0xa[_0x285e[2082]]= !0));if(_0x4fa0x3){for(var _0x4fa0x12=_0x4fa0x9[_0x285e[262]](_0x4fa0x2),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x12;_0x4fa0xa++){var _0x4fa0x13=_0x4fa0x9[_0x285e[263]](_0x4fa0x2,_0x4fa0xa);this[_0x285e[2263]](_0x4fa0x13,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)}};if(_0x4fa0x4){_0x4fa0x5=_0x4fa0x9[_0x285e[1707]](_0x4fa0x2);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5;_0x4fa0xa++){this[_0x285e[2263]](_0x4fa0x9[_0x285e[1708]](_0x4fa0x2,_0x4fa0xa),_0x4fa0x3,_0x4fa0x4)}}};mxGraphView[_0x285e[202]][_0x285e[2264]]=function(_0x4fa0x2){var _0x4fa0x3=mxLog[_0x285e[2109]](_0x285e[2266]);window[_0x285e[879]]=mxResources[_0x285e[203]](this[_0x285e[2249]])||this[_0x285e[2249]];var _0x4fa0x4=null;if(this[_0x285e[2253]]&&null!=this[_0x285e[510]]&&null==this[_0x285e[1653]]&&(8==document[_0x285e[5]]||mxClient[_0x285e[496]])){_0x4fa0x4=this[_0x285e[510]][_0x285e[124]][_0x285e[495]];this[_0x285e[510]][_0x285e[124]][_0x285e[495]]=_0x285e[130];var _0x4fa0x5=document[_0x285e[55]](_0x285e[485]);_0x4fa0x5[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x5[_0x285e[124]][_0x285e[493]]=_0x285e[494];_0x4fa0x5[_0x285e[124]][_0x285e[187]]=_0x285e[188];_0x4fa0x5[_0x285e[124]][_0x285e[495]]=mxClient[_0x285e[496]]?_0x285e[497]:_0x285e[498];_0x4fa0x5[_0x285e[124]][_0x285e[499]]=_0x285e[500];document[_0x285e[112]][_0x285e[62]](_0x4fa0x5);this[_0x285e[1653]]=_0x4fa0x5};_0x4fa0x2=_0x4fa0x2||(null!=this[_0x285e[1741]]?this[_0x285e[1741]]:this[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]]());this[_0x285e[2267]](null,_0x4fa0x2);_0x4fa0x2=this[_0x285e[2268]](null,_0x4fa0x2);null==_0x4fa0x2&&(_0x4fa0x2= new mxRectangle);this[_0x285e[2256]](_0x4fa0x2);this[_0x285e[2269]]();null!=_0x4fa0x4&&(this[_0x285e[510]][_0x285e[124]][_0x285e[495]]=_0x4fa0x4,document[_0x285e[112]][_0x285e[266]](this[_0x285e[1653]]),this[_0x285e[1653]]=null);window[_0x285e[879]]=mxResources[_0x285e[203]](this[_0x285e[2091]])||this[_0x285e[2091]];mxLog[_0x285e[2110]](_0x285e[2266],_0x4fa0x3)};mxGraphView[_0x285e[202]][_0x285e[2270]]=function(_0x4fa0x2){return new mxRectangleShape(_0x4fa0x2,_0x285e[1391],_0x285e[586])};mxGraphView[_0x285e[202]][_0x285e[2269]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[2271]]();if(null!=_0x4fa0x2){if(null==this[_0x285e[1617]]||this[_0x285e[1617]][_0x285e[618]]!=_0x4fa0x2[_0x285e[390]]){null!=this[_0x285e[1617]]&&this[_0x285e[1617]][_0x285e[515]]();var _0x4fa0x3= new mxRectangle(0,0,1,1);this[_0x285e[1617]]= new mxImageShape(_0x4fa0x3,_0x4fa0x2[_0x285e[390]]);this[_0x285e[1617]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]];this[_0x285e[1617]][_0x285e[176]](this[_0x285e[2053]]);this[_0x285e[1617]][_0x285e[258]]()};this[_0x285e[2272]](this[_0x285e[1617]],_0x4fa0x2)}else {null!=this[_0x285e[1617]]&&(this[_0x285e[1617]][_0x285e[515]](),this[_0x285e[1617]]=null)};this[_0x285e[1179]][_0x285e[2273]]?(_0x4fa0x3=this[_0x285e[2274]](),null==this[_0x285e[2275]]?(this[_0x285e[2275]]=this[_0x285e[2270]](_0x4fa0x3),this[_0x285e[2275]][_0x285e[255]]=this[_0x285e[255]],this[_0x285e[2275]][_0x285e[1596]]= !0,this[_0x285e[2275]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]],this[_0x285e[2275]][_0x285e[176]](this[_0x285e[2053]]),this[_0x285e[2275]][_0x285e[258]](),mxEvent[_0x285e[169]](this[_0x285e[2275]][_0x285e[252]],_0x285e[760],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[761]](_0x4fa0x2)})),mxEvent[_0x285e[759]](this[_0x285e[2275]][_0x285e[252]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x2))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){null!=this[_0x285e[1179]][_0x285e[2276]]&&this[_0x285e[1179]][_0x285e[2276]][_0x285e[2277]]()&&this[_0x285e[1179]][_0x285e[2276]][_0x285e[801]]();this[_0x285e[1179]][_0x285e[1009]]&&!mxEvent[_0x285e[721]](_0x4fa0x2)&&this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x2))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x2))}))):(this[_0x285e[2275]][_0x285e[255]]=this[_0x285e[255]],this[_0x285e[2275]][_0x285e[1562]]=_0x4fa0x3,this[_0x285e[2275]][_0x285e[258]]())):null!=this[_0x285e[2275]]&&(this[_0x285e[2275]][_0x285e[515]](),this[_0x285e[2275]]=null)};mxGraphView[_0x285e[202]][_0x285e[2274]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[2013]],_0x4fa0x3=this[_0x285e[255]]*this[_0x285e[1179]][_0x285e[2012]];return new mxRectangle(this[_0x285e[255]]*this[_0x285e[513]][_0x285e[235]],this[_0x285e[255]]*this[_0x285e[513]][_0x285e[236]],_0x4fa0x2[_0x285e[117]]*_0x4fa0x3,_0x4fa0x2[_0x285e[119]]*_0x4fa0x3)};mxGraphView[_0x285e[202]][_0x285e[2272]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[255]]=this[_0x285e[255]];_0x4fa0x2[_0x285e[1562]][_0x285e[235]]=this[_0x285e[255]]*this[_0x285e[513]][_0x285e[235]];_0x4fa0x2[_0x285e[1562]][_0x285e[236]]=this[_0x285e[255]]*this[_0x285e[513]][_0x285e[236]];_0x4fa0x2[_0x285e[1562]][_0x285e[117]]=this[_0x285e[255]]*_0x4fa0x3[_0x285e[117]];_0x4fa0x2[_0x285e[1562]][_0x285e[119]]=this[_0x285e[255]]*_0x4fa0x3[_0x285e[119]];_0x4fa0x2[_0x285e[258]]()};mxGraphView[_0x285e[202]][_0x285e[2267]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=this[_0x285e[248]](_0x4fa0x3,!0);if(null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[2080]]){if(this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x3)){if(_0x4fa0x3!=this[_0x285e[1741]]&&null!=_0x4fa0x2){_0x4fa0x5[_0x285e[2079]][_0x285e[235]]=0;_0x4fa0x5[_0x285e[2079]][_0x285e[236]]=0;_0x4fa0x5[_0x285e[2078]][_0x285e[235]]=_0x4fa0x2[_0x285e[2078]][_0x285e[235]];_0x4fa0x5[_0x285e[2078]][_0x285e[236]]=_0x4fa0x2[_0x285e[2078]][_0x285e[236]];var _0x4fa0x9=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x3);if(null!=_0x4fa0x9){if(!_0x4fa0x4[_0x285e[250]](_0x4fa0x3)){var _0x4fa0xa=_0x4fa0x9[_0x285e[1368]]||this[_0x285e[2248]];_0x4fa0x9[_0x285e[1500]]?(_0x4fa0x5[_0x285e[2078]][_0x285e[235]]+=_0x4fa0x9[_0x285e[235]]*_0x4fa0x2[_0x285e[117]]/this[_0x285e[255]]+_0x4fa0xa[_0x285e[235]],_0x4fa0x5[_0x285e[2078]][_0x285e[236]]+=_0x4fa0x9[_0x285e[236]]*_0x4fa0x2[_0x285e[119]]/this[_0x285e[255]]+_0x4fa0xa[_0x285e[236]]):(_0x4fa0x5[_0x285e[2079]][_0x285e[235]]=this[_0x285e[255]]*_0x4fa0xa[_0x285e[235]],_0x4fa0x5[_0x285e[2079]][_0x285e[236]]=this[_0x285e[255]]*_0x4fa0xa[_0x285e[236]],_0x4fa0x5[_0x285e[2078]][_0x285e[235]]+=_0x4fa0x9[_0x285e[235]],_0x4fa0x5[_0x285e[2078]][_0x285e[236]]+=_0x4fa0x9[_0x285e[236]])};_0x4fa0x5[_0x285e[235]]=this[_0x285e[255]]*(this[_0x285e[513]][_0x285e[235]]+_0x4fa0x5[_0x285e[2078]][_0x285e[235]]);_0x4fa0x5[_0x285e[236]]=this[_0x285e[255]]*(this[_0x285e[513]][_0x285e[236]]+_0x4fa0x5[_0x285e[2078]][_0x285e[236]]);_0x4fa0x5[_0x285e[117]]=this[_0x285e[255]]*_0x4fa0x9[_0x285e[117]];_0x4fa0x5[_0x285e[119]]=this[_0x285e[255]]*_0x4fa0x9[_0x285e[119]];if(_0x4fa0x4[_0x285e[1193]](_0x4fa0x3)){if(_0x4fa0x9[_0x285e[1500]]&&(_0x4fa0xa=mxUtils[_0x285e[431]](_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),0!=_0x4fa0xa)){var _0x4fa0x9=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0xa=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x12= new mxPoint(_0x4fa0x5[_0x285e[241]](),_0x4fa0x5[_0x285e[242]]()),_0x4fa0x13= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]()),_0x4fa0x9=mxUtils[_0x285e[432]](_0x4fa0x12,_0x4fa0x9,_0x4fa0xa,_0x4fa0x13);_0x4fa0x5[_0x285e[235]]=_0x4fa0x9[_0x285e[235]]-_0x4fa0x5[_0x285e[117]]/2;_0x4fa0x5[_0x285e[236]]=_0x4fa0x9[_0x285e[236]]-_0x4fa0x5[_0x285e[119]]/2};this[_0x285e[2279]](_0x4fa0x5)}}}}else {this[_0x285e[2265]](_0x4fa0x3)};_0x4fa0xa=this[_0x285e[1179]][_0x285e[2280]](_0x4fa0x3);null!=_0x4fa0xa&&(_0x4fa0x5[_0x285e[2078]][_0x285e[235]]+=_0x4fa0xa[_0x285e[235]],_0x4fa0x5[_0x285e[2078]][_0x285e[236]]+=_0x4fa0xa[_0x285e[236]])};if(null!=_0x4fa0x5&&(!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x3)||_0x4fa0x3==this[_0x285e[1741]])){_0x4fa0x9=_0x4fa0x4[_0x285e[262]](_0x4fa0x3);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){_0x4fa0x12=_0x4fa0x4[_0x285e[263]](_0x4fa0x3,_0x4fa0xa),this[_0x285e[2267]](_0x4fa0x5,_0x4fa0x12)}}};mxGraphView[_0x285e[202]][_0x285e[2279]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);_0x4fa0x3==mxConstants[_0x285e[2132]]?_0x4fa0x2[_0x285e[2079]][_0x285e[235]]-=_0x4fa0x2[_0x285e[117]]:_0x4fa0x3==mxConstants[_0x285e[480]]&&(_0x4fa0x2[_0x285e[2079]][_0x285e[235]]+=_0x4fa0x2[_0x285e[117]]);_0x4fa0x3=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);_0x4fa0x3==mxConstants[_0x285e[1687]]?_0x4fa0x2[_0x285e[2079]][_0x285e[236]]-=_0x4fa0x2[_0x285e[119]]:_0x4fa0x3==mxConstants[_0x285e[482]]&&(_0x4fa0x2[_0x285e[2079]][_0x285e[236]]+=_0x4fa0x2[_0x285e[119]])};mxGraphView[_0x285e[202]][_0x285e[2268]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=this[_0x285e[248]](_0x4fa0x3),_0x4fa0x9=null;if(null!=_0x4fa0x5){if(_0x4fa0x5[_0x285e[2080]]){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x3);if(null!=_0x4fa0xa&&_0x4fa0x4[_0x285e[250]](_0x4fa0x3)){var _0x4fa0x12=this[_0x285e[248]](this[_0x285e[1710]](_0x4fa0x3,!0));_0x4fa0x5[_0x285e[2090]](_0x4fa0x12,!0);if(null!=_0x4fa0x12&&_0x4fa0x4[_0x285e[250]](_0x4fa0x12[_0x285e[246]])&&!_0x4fa0x4[_0x285e[1720]](_0x4fa0x12[_0x285e[246]],_0x4fa0x3)){var _0x4fa0x13=this[_0x285e[248]](_0x4fa0x4[_0x285e[1197]](_0x4fa0x12[_0x285e[246]]));this[_0x285e[2268]](_0x4fa0x13,_0x4fa0x12[_0x285e[246]])};var _0x4fa0x14=this[_0x285e[248]](this[_0x285e[1710]](_0x4fa0x3,!1));_0x4fa0x5[_0x285e[2090]](_0x4fa0x14,!1);null!=_0x4fa0x14&&(_0x4fa0x4[_0x285e[250]](_0x4fa0x14[_0x285e[246]])&&!_0x4fa0x4[_0x285e[1720]](_0x4fa0x14[_0x285e[246]],_0x4fa0x3))&&(_0x4fa0x13=this[_0x285e[248]](_0x4fa0x4[_0x285e[1197]](_0x4fa0x14[_0x285e[246]])),this[_0x285e[2268]](_0x4fa0x13,_0x4fa0x14[_0x285e[246]]));this[_0x285e[2281]](_0x4fa0x5,_0x4fa0x12,_0x4fa0x14);this[_0x285e[2282]](_0x4fa0x5,_0x4fa0xa[_0x285e[1525]],_0x4fa0x12,_0x4fa0x14);this[_0x285e[2283]](_0x4fa0x5,_0x4fa0x12,_0x4fa0x14);this[_0x285e[2284]](_0x4fa0x5);this[_0x285e[2285]](_0x4fa0x5)}else {null!=_0x4fa0xa&&(_0x4fa0xa[_0x285e[1500]]&&null!=_0x4fa0x2&&_0x4fa0x4[_0x285e[250]](_0x4fa0x2[_0x285e[246]]))&&(_0x4fa0xa=this[_0x285e[245]](_0x4fa0x2,_0x4fa0xa),null!=_0x4fa0xa&&(_0x4fa0x5[_0x285e[235]]=_0x4fa0xa[_0x285e[235]],_0x4fa0x5[_0x285e[236]]=_0x4fa0xa[_0x285e[236]],_0x4fa0xa[_0x285e[235]]=_0x4fa0xa[_0x285e[235]]/this[_0x285e[255]]-this[_0x285e[513]][_0x285e[235]],_0x4fa0xa[_0x285e[236]]=_0x4fa0xa[_0x285e[236]]/this[_0x285e[255]]-this[_0x285e[513]][_0x285e[236]],_0x4fa0x5[_0x285e[2078]]=_0x4fa0xa,this[_0x285e[2286]](_0x4fa0x2,_0x4fa0x5)))};_0x4fa0x5[_0x285e[2080]]= !1;_0x4fa0x3!=this[_0x285e[1741]]&&this[_0x285e[1179]][_0x285e[259]][_0x285e[258]](_0x4fa0x5,!1,this[_0x285e[2287]]())};if(_0x4fa0x4[_0x285e[250]](_0x4fa0x3)||_0x4fa0x4[_0x285e[1193]](_0x4fa0x3)){null!=_0x4fa0x5[_0x285e[253]]&&null!=_0x4fa0x5[_0x285e[253]][_0x285e[1563]]&&(_0x4fa0x9=_0x4fa0x5[_0x285e[253]][_0x285e[1563]][_0x285e[238]]()),null!=_0x4fa0x5[_0x285e[963]]&&!this[_0x285e[1179]][_0x285e[2130]](_0x4fa0x5[_0x285e[246]])&&null!=_0x4fa0x5[_0x285e[963]][_0x285e[1563]]&&(null!=_0x4fa0x9?_0x4fa0x9[_0x285e[99]](_0x4fa0x5[_0x285e[963]][_0x285e[1563]]):_0x4fa0x9=_0x4fa0x5[_0x285e[963]][_0x285e[1563]][_0x285e[238]]())}};if(null!=_0x4fa0x5&&(!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x3)||_0x4fa0x3==this[_0x285e[1741]])){_0x4fa0xa=_0x4fa0x4[_0x285e[262]](_0x4fa0x3);for(_0x4fa0x12=0;_0x4fa0x12<_0x4fa0xa;_0x4fa0x12++){_0x4fa0x13=_0x4fa0x4[_0x285e[263]](_0x4fa0x3,_0x4fa0x12),_0x4fa0x13=this[_0x285e[2268]](_0x4fa0x5,_0x4fa0x13),null!=_0x4fa0x13&&(null==_0x4fa0x9?_0x4fa0x9=_0x4fa0x13:_0x4fa0x9[_0x285e[99]](_0x4fa0x13))}};return _0x4fa0x9};mxGraphView[_0x285e[202]][_0x285e[2286]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x3[_0x285e[246]];if(!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x4)||_0x4fa0x4==this[_0x285e[1741]]){for(var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[262]](_0x4fa0x4),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){this[_0x285e[2267]](_0x4fa0x3,_0x4fa0x5[_0x285e[263]](_0x4fa0x4,_0x4fa0xa))}}};mxGraphView[_0x285e[202]][_0x285e[2281]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[2289]](_0x4fa0x2,_0x4fa0x3,!0,this[_0x285e[1179]][_0x285e[2288]](_0x4fa0x2,_0x4fa0x3,!0));this[_0x285e[2289]](_0x4fa0x2,_0x4fa0x4,!1,this[_0x285e[1179]][_0x285e[2288]](_0x4fa0x2,_0x4fa0x4,!1))};mxGraphView[_0x285e[202]][_0x285e[2289]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;null!=_0x4fa0x5&&(_0x4fa0x9=this[_0x285e[1179]][_0x285e[2290]](_0x4fa0x3,_0x4fa0x5));if(null==_0x4fa0x9&&null==_0x4fa0x3){_0x4fa0x3=this[_0x285e[255]];_0x4fa0x5=this[_0x285e[513]];var _0x4fa0xa=_0x4fa0x2[_0x285e[2078]],_0x4fa0x9=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x2[_0x285e[246]])[_0x285e[2006]](_0x4fa0x4);null!=_0x4fa0x9&&(_0x4fa0x9= new mxPoint(_0x4fa0x3*(_0x4fa0x5[_0x285e[235]]+_0x4fa0x9[_0x285e[235]]+_0x4fa0xa[_0x285e[235]]),_0x4fa0x3*(_0x4fa0x5[_0x285e[236]]+_0x4fa0x9[_0x285e[236]]+_0x4fa0xa[_0x285e[236]])))};_0x4fa0x2[_0x285e[2088]](_0x4fa0x9,_0x4fa0x4)};mxGraphView[_0x285e[202]][_0x285e[2282]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x2){var _0x4fa0x9=[];_0x4fa0x9[_0x285e[207]](_0x4fa0x2[_0x285e[439]][0]);var _0x4fa0xa=this[_0x285e[2291]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);if(null!=_0x4fa0xa){_0x4fa0x4=this[_0x285e[2292]](_0x4fa0x2,_0x4fa0x4,!0),_0x4fa0x5=this[_0x285e[2292]](_0x4fa0x2,_0x4fa0x5,!1),_0x4fa0xa(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x3,_0x4fa0x9)}else {if(null!=_0x4fa0x3){for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x3[_0x285e[67]];_0x4fa0xa++){null!=_0x4fa0x3[_0x4fa0xa]&&(_0x4fa0x5=mxUtils[_0x285e[238]](_0x4fa0x3[_0x4fa0xa]),_0x4fa0x9[_0x285e[207]](this[_0x285e[2229]](_0x4fa0x2,_0x4fa0x5)))}}};_0x4fa0x3=_0x4fa0x2[_0x285e[439]];_0x4fa0x9[_0x285e[207]](_0x4fa0x3[_0x4fa0x3[_0x285e[67]]-1]);_0x4fa0x2[_0x285e[439]]=_0x4fa0x9}};mxGraphView[_0x285e[202]][_0x285e[2229]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[2078]];return new mxPoint(this[_0x285e[255]]*(_0x4fa0x3[_0x285e[235]]+this[_0x285e[513]][_0x285e[235]]+_0x4fa0x4[_0x285e[235]]),this[_0x285e[255]]*(_0x4fa0x3[_0x285e[236]]+this[_0x285e[513]][_0x285e[236]]+_0x4fa0x4[_0x285e[236]]))};mxGraphView[_0x285e[202]][_0x285e[2291]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2=null!=_0x4fa0x4&&_0x4fa0x4==_0x4fa0x5?mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_LOOP,this[_0x285e[1179]][_0x285e[2293]]):!mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_NOEDGESTYLE,!1)?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2294]]]:null;_0x285e[1516]== typeof _0x4fa0x2&&(_0x4fa0x3=mxStyleRegistry[_0x285e[433]](_0x4fa0x2),null==_0x4fa0x3&&this[_0x285e[2295]]()&&(_0x4fa0x3=mxUtils[_0x285e[1545]](_0x4fa0x2)),_0x4fa0x2=_0x4fa0x3);return _0x285e[279]== typeof _0x4fa0x2?_0x4fa0x2:null};mxGraphView[_0x285e[202]][_0x285e[2283]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[439]],_0x4fa0x9=_0x4fa0x5[0];null==_0x4fa0x5[_0x4fa0x5[_0x285e[67]]-1]&&null!=_0x4fa0x4&&this[_0x285e[2296]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x3,!1);null==_0x4fa0x9&&null!=_0x4fa0x3&&this[_0x285e[2296]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,!0)};mxGraphView[_0x285e[202]][_0x285e[2296]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=this[_0x285e[2292]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x5);var _0x4fa0x9=this[_0x285e[2297]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5),_0x4fa0xa=this[_0x285e[1179]][_0x285e[2298]](_0x4fa0x2);_0x4fa0x4=mxUtils[_0x285e[431]](Number(_0x4fa0x3[_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]));var _0x4fa0x12= new mxPoint(_0x4fa0x3[_0x285e[241]](),_0x4fa0x3[_0x285e[242]]());if(0!=_0x4fa0x4){var _0x4fa0x13=Math[_0x285e[426]](-_0x4fa0x4),_0x4fa0x14=Math[_0x285e[427]](-_0x4fa0x4),_0x4fa0x9=mxUtils[_0x285e[432]](_0x4fa0x9,_0x4fa0x13,_0x4fa0x14,_0x4fa0x12)};_0x4fa0x13=parseFloat(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2299]]]||0);_0x4fa0x13+=parseFloat(_0x4fa0x2[_0x285e[124]][_0x4fa0x5?mxConstants[_0x285e[2300]]:mxConstants[_0x285e[2301]]]||0);_0x4fa0x3=this[_0x285e[2302]](_0x4fa0x3,_0x4fa0x9,0==_0x4fa0x4&&_0x4fa0xa,_0x4fa0x13);0!=_0x4fa0x4&&(_0x4fa0x13=Math[_0x285e[426]](_0x4fa0x4),_0x4fa0x14=Math[_0x285e[427]](_0x4fa0x4),_0x4fa0x3=mxUtils[_0x285e[432]](_0x4fa0x3,_0x4fa0x13,_0x4fa0x14,_0x4fa0x12));_0x4fa0x2[_0x285e[2088]](_0x4fa0x3,_0x4fa0x5)};mxGraphView[_0x285e[202]][_0x285e[2292]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],_0x4fa0x4?mxConstants[_0x285e[2303]]:mxConstants[_0x285e[2304]]);null!=_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[248]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[736]](_0x4fa0x2)),null!=_0x4fa0x2&&(_0x4fa0x3=_0x4fa0x2));return _0x4fa0x3};mxGraphView[_0x285e[202]][_0x285e[2302]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;if(null!=_0x4fa0x2){var _0x4fa0xa=this[_0x285e[2305]](_0x4fa0x2);if(null!=_0x4fa0xa&&null!=_0x4fa0x3&&(_0x4fa0x5=this[_0x285e[2087]](_0x4fa0x2,_0x4fa0x5),0<_0x4fa0x5[_0x285e[117]]||0<_0x4fa0x5[_0x285e[119]])){_0x4fa0x9=_0x4fa0xa(_0x4fa0x5,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)};null==_0x4fa0x9&&(_0x4fa0x9=this[_0x285e[245]](_0x4fa0x2))};return _0x4fa0x9};mxGraphView[_0x285e[202]][_0x285e[2230]]=function(_0x4fa0x2){var _0x4fa0x3=null!=_0x4fa0x2[_0x285e[124]]?parseFloat(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2306]]])||0:0;return _0x4fa0x2[_0x285e[241]]()+_0x4fa0x3*_0x4fa0x2[_0x285e[117]]};mxGraphView[_0x285e[202]][_0x285e[2228]]=function(_0x4fa0x2){var _0x4fa0x3=null!=_0x4fa0x2[_0x285e[124]]?parseFloat(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2307]]])||0:0;return _0x4fa0x2[_0x285e[242]]()+_0x4fa0x3*_0x4fa0x2[_0x285e[119]]};mxGraphView[_0x285e[202]][_0x285e[2087]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:0;null!=_0x4fa0x2&&(_0x4fa0x3+=parseFloat(_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2299]]]||0));return _0x4fa0x2[_0x285e[2087]](_0x4fa0x3*this[_0x285e[255]])};mxGraphView[_0x285e[202]][_0x285e[2305]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2061]]];if(_0x285e[1516]== typeof _0x4fa0x2){var _0x4fa0x3=mxStyleRegistry[_0x285e[433]](_0x4fa0x2);null==_0x4fa0x3&&this[_0x285e[2295]]()&&(_0x4fa0x3=mxUtils[_0x285e[1545]](_0x4fa0x2));_0x4fa0x2=_0x4fa0x3};return _0x285e[279]== typeof _0x4fa0x2?_0x4fa0x2:null};mxGraphView[_0x285e[202]][_0x285e[2297]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=_0x4fa0x2[_0x285e[439]];var _0x4fa0x5=null;if(null!=_0x4fa0x2&&(_0x4fa0x4||2<_0x4fa0x2[_0x285e[67]]||null==_0x4fa0x3)){_0x4fa0x5=_0x4fa0x2[_0x285e[67]],_0x4fa0x5=_0x4fa0x2[_0x4fa0x4?Math[_0x285e[243]](1,_0x4fa0x5-1):Math[_0x285e[160]](0,_0x4fa0x5-2)]};null==_0x4fa0x5&&null!=_0x4fa0x3&&(_0x4fa0x5= new mxPoint(_0x4fa0x3[_0x285e[241]](),_0x4fa0x3[_0x285e[242]]()));return _0x4fa0x5};mxGraphView[_0x285e[202]][_0x285e[1710]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x4[_0x285e[1709]](_0x4fa0x2,_0x4fa0x3),_0x4fa0x9=_0x4fa0x5;null!=_0x4fa0x5&&_0x4fa0x5!=this[_0x285e[1741]];){if(!this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x9)||this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x5)){_0x4fa0x9=_0x4fa0x5};_0x4fa0x5=_0x4fa0x4[_0x285e[1197]](_0x4fa0x5)};_0x4fa0x4[_0x285e[1197]](_0x4fa0x9)==_0x4fa0x4[_0x285e[501]]()&&(_0x4fa0x9=null);return _0x4fa0x9};mxGraphView[_0x285e[202]][_0x285e[2284]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[439]];_0x4fa0x2[_0x285e[67]]=0;if(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]){var _0x4fa0x4=_0x4fa0x3[0],_0x4fa0x5=_0x4fa0x3[_0x4fa0x3[_0x285e[67]]-1];if(null==_0x4fa0x4||null==_0x4fa0x5){_0x4fa0x2[_0x285e[246]]!=this[_0x285e[1741]]&&this[_0x285e[200]](_0x4fa0x2[_0x285e[246]],!0)}else {if(_0x4fa0x4[_0x285e[235]]!=_0x4fa0x5[_0x285e[235]]||_0x4fa0x4[_0x285e[236]]!=_0x4fa0x5[_0x285e[236]]){var _0x4fa0x9=_0x4fa0x5[_0x285e[235]]-_0x4fa0x4[_0x285e[235]],_0x4fa0xa=_0x4fa0x5[_0x285e[236]]-_0x4fa0x4[_0x285e[236]];_0x4fa0x2[_0x285e[2085]]=Math[_0x285e[428]](_0x4fa0x9*_0x4fa0x9+_0x4fa0xa*_0x4fa0xa)}else {_0x4fa0x2[_0x285e[2085]]=0};var _0x4fa0x5=0,_0x4fa0x12=[],_0x4fa0xa=_0x4fa0x4;if(null!=_0x4fa0xa){for(var _0x4fa0x4=_0x4fa0xa[_0x285e[235]],_0x4fa0x13=_0x4fa0xa[_0x285e[236]],_0x4fa0x14=_0x4fa0x4,_0x4fa0x15=_0x4fa0x13,_0x4fa0x16=1;_0x4fa0x16<_0x4fa0x3[_0x285e[67]];_0x4fa0x16++){var _0x4fa0x17=_0x4fa0x3[_0x4fa0x16];null!=_0x4fa0x17&&(_0x4fa0x9=_0x4fa0xa[_0x285e[235]]-_0x4fa0x17[_0x285e[235]],_0x4fa0xa=_0x4fa0xa[_0x285e[236]]-_0x4fa0x17[_0x285e[236]],_0x4fa0x9=Math[_0x285e[428]](_0x4fa0x9*_0x4fa0x9+_0x4fa0xa*_0x4fa0xa),_0x4fa0x12[_0x285e[207]](_0x4fa0x9),_0x4fa0x5+=_0x4fa0x9,_0x4fa0xa=_0x4fa0x17,_0x4fa0x4=Math[_0x285e[243]](_0x4fa0xa[_0x285e[235]],_0x4fa0x4),_0x4fa0x13=Math[_0x285e[243]](_0x4fa0xa[_0x285e[236]],_0x4fa0x13),_0x4fa0x14=Math[_0x285e[160]](_0x4fa0xa[_0x285e[235]],_0x4fa0x14),_0x4fa0x15=Math[_0x285e[160]](_0x4fa0xa[_0x285e[236]],_0x4fa0x15))};_0x4fa0x2[_0x285e[67]]=_0x4fa0x5;_0x4fa0x2[_0x285e[2086]]=_0x4fa0x12;_0x4fa0x2[_0x285e[235]]=_0x4fa0x4;_0x4fa0x2[_0x285e[236]]=_0x4fa0x13;_0x4fa0x2[_0x285e[117]]=Math[_0x285e[160]](1,_0x4fa0x14-_0x4fa0x4);_0x4fa0x2[_0x285e[119]]=Math[_0x285e[160]](1,_0x4fa0x15-_0x4fa0x13)}}}};mxGraphView[_0x285e[202]][_0x285e[245]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[241]](),_0x4fa0x5=_0x4fa0x2[_0x285e[242]]();if(null!=_0x4fa0x2[_0x285e[2086]]&&(null==_0x4fa0x3||_0x4fa0x3[_0x285e[1500]])){for(var _0x4fa0x9=_0x4fa0x2[_0x285e[439]][_0x285e[67]],_0x4fa0xa=((null!=_0x4fa0x3?_0x4fa0x3[_0x285e[235]]/2:0)+0.5)*_0x4fa0x2[_0x285e[67]],_0x4fa0x12=_0x4fa0x2[_0x285e[2086]][0],_0x4fa0x13=0,_0x4fa0x14=1;_0x4fa0xa>_0x4fa0x13+_0x4fa0x12&&_0x4fa0x14<_0x4fa0x9-1;){_0x4fa0x13+=_0x4fa0x12,_0x4fa0x12=_0x4fa0x2[_0x285e[2086]][_0x4fa0x14++]};_0x4fa0x9=0==_0x4fa0x12?0:(_0x4fa0xa-_0x4fa0x13)/_0x4fa0x12;_0x4fa0xa=_0x4fa0x2[_0x285e[439]][_0x4fa0x14-1];_0x4fa0x14=_0x4fa0x2[_0x285e[439]][_0x4fa0x14];if(null!=_0x4fa0xa&&null!=_0x4fa0x14){_0x4fa0x13=_0x4fa0x4=_0x4fa0x5=0;if(null!=_0x4fa0x3){var _0x4fa0x5=_0x4fa0x3[_0x285e[236]],_0x4fa0x15=_0x4fa0x3[_0x285e[1368]];null!=_0x4fa0x15&&(_0x4fa0x4=_0x4fa0x15[_0x285e[235]],_0x4fa0x13=_0x4fa0x15[_0x285e[236]])};_0x4fa0x15=_0x4fa0x14[_0x285e[235]]-_0x4fa0xa[_0x285e[235]];_0x4fa0x14=_0x4fa0x14[_0x285e[236]]-_0x4fa0xa[_0x285e[236]];_0x4fa0x4=_0x4fa0xa[_0x285e[235]]+_0x4fa0x15*_0x4fa0x9+((0==_0x4fa0x12?0:_0x4fa0x14/_0x4fa0x12)*_0x4fa0x5+_0x4fa0x4)*this[_0x285e[255]];_0x4fa0x5=_0x4fa0xa[_0x285e[236]]+_0x4fa0x14*_0x4fa0x9-((0==_0x4fa0x12?0:_0x4fa0x15/_0x4fa0x12)*_0x4fa0x5-_0x4fa0x13)*this[_0x285e[255]]}}else {null!=_0x4fa0x3&&(_0x4fa0x15=_0x4fa0x3[_0x285e[1368]],null!=_0x4fa0x15&&(_0x4fa0x4+=_0x4fa0x15[_0x285e[235]],_0x4fa0x5+=_0x4fa0x15[_0x285e[236]]))};return new mxPoint(_0x4fa0x4,_0x4fa0x5)};mxGraphView[_0x285e[202]][_0x285e[2308]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1721]](_0x4fa0x2[_0x285e[246]]);if(null!=_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[439]][_0x285e[67]];if(_0x4fa0x5[_0x285e[1500]]&&1<_0x4fa0x9){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[67]],_0x4fa0xa=_0x4fa0x2[_0x285e[2086]],_0x4fa0x12=_0x4fa0x2[_0x285e[439]][0],_0x4fa0x13=_0x4fa0x2[_0x285e[439]][1],_0x4fa0x14=mxUtils[_0x285e[440]](_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x3,_0x4fa0x4),_0x4fa0x15=0,_0x4fa0x16=0,_0x4fa0x17=0,_0x4fa0x18=2;_0x4fa0x18<_0x4fa0x9;_0x4fa0x18++){_0x4fa0x16+=_0x4fa0xa[_0x4fa0x18-2],_0x4fa0x13=_0x4fa0x2[_0x285e[439]][_0x4fa0x18],_0x4fa0x12=mxUtils[_0x285e[440]](_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x3,_0x4fa0x4),_0x4fa0x12<=_0x4fa0x14&&(_0x4fa0x14=_0x4fa0x12,_0x4fa0x15=_0x4fa0x18-1,_0x4fa0x17=_0x4fa0x16),_0x4fa0x12=_0x4fa0x13};_0x4fa0x9=_0x4fa0xa[_0x4fa0x15];_0x4fa0x12=_0x4fa0x2[_0x285e[439]][_0x4fa0x15];_0x4fa0x13=_0x4fa0x2[_0x285e[439]][_0x4fa0x15+1];_0x4fa0x14=_0x4fa0x13[_0x285e[235]];_0x4fa0xa=_0x4fa0x13[_0x285e[236]];_0x4fa0x2=_0x4fa0x12[_0x285e[235]]-_0x4fa0x14;_0x4fa0x15=_0x4fa0x12[_0x285e[236]]-_0x4fa0xa;_0x4fa0x14=_0x4fa0x3-_0x4fa0x14;_0x4fa0xa=_0x4fa0x4-_0x4fa0xa;_0x4fa0x14=_0x4fa0x2-_0x4fa0x14;_0x4fa0xa=_0x4fa0x15-_0x4fa0xa;_0x4fa0xa=_0x4fa0x14*_0x4fa0x2+_0x4fa0xa*_0x4fa0x15;_0x4fa0x2=Math[_0x285e[428]](0>=_0x4fa0xa?0:_0x4fa0xa*_0x4fa0xa/(_0x4fa0x2*_0x4fa0x2+_0x4fa0x15*_0x4fa0x15));_0x4fa0x2>_0x4fa0x9&&(_0x4fa0x2=_0x4fa0x9);_0x4fa0x9=Math[_0x285e[428]](mxUtils[_0x285e[440]](_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x3,_0x4fa0x4));-1==mxUtils[_0x285e[2309]](_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x13[_0x285e[235]],_0x4fa0x13[_0x285e[236]],_0x4fa0x3,_0x4fa0x4)&&(_0x4fa0x9= -_0x4fa0x9);return new mxPoint(-2*((_0x4fa0x5/2-_0x4fa0x17-_0x4fa0x2)/_0x4fa0x5),_0x4fa0x9/this[_0x285e[255]])}};return new mxPoint};mxGraphView[_0x285e[202]][_0x285e[2285]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[439]];_0x4fa0x2[_0x285e[2079]][_0x285e[235]]=_0x4fa0x2[_0x285e[241]]();_0x4fa0x2[_0x285e[2079]][_0x285e[236]]=_0x4fa0x2[_0x285e[242]]();if(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]&&null!=_0x4fa0x2[_0x285e[2086]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x2[_0x285e[246]]);if(_0x4fa0x4[_0x285e[1500]]){var _0x4fa0x5=this[_0x285e[245]](_0x4fa0x2,_0x4fa0x4);null!=_0x4fa0x5&&(_0x4fa0x2[_0x285e[2079]]=_0x4fa0x5)}else {var _0x4fa0x5=_0x4fa0x3[0],_0x4fa0x9=_0x4fa0x3[_0x4fa0x3[_0x285e[67]]-1];if(null!=_0x4fa0x5&&null!=_0x4fa0x9){var _0x4fa0x3=_0x4fa0x9[_0x285e[235]]-_0x4fa0x5[_0x285e[235]],_0x4fa0xa=_0x4fa0x9[_0x285e[236]]-_0x4fa0x5[_0x285e[236]],_0x4fa0x12=_0x4fa0x9=0,_0x4fa0x4=_0x4fa0x4[_0x285e[1368]];null!=_0x4fa0x4&&(_0x4fa0x9=_0x4fa0x4[_0x285e[235]],_0x4fa0x12=_0x4fa0x4[_0x285e[236]]);_0x4fa0x4=_0x4fa0x5[_0x285e[236]]+_0x4fa0xa/2+_0x4fa0x12*this[_0x285e[255]];_0x4fa0x2[_0x285e[2079]][_0x285e[235]]=_0x4fa0x5[_0x285e[235]]+_0x4fa0x3/2+_0x4fa0x9*this[_0x285e[255]];_0x4fa0x2[_0x285e[2079]][_0x285e[236]]=_0x4fa0x4}}}};mxGraphView[_0x285e[202]][_0x285e[248]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3|| !1;var _0x4fa0x4=null;null!=_0x4fa0x2&&(_0x4fa0x4=this[_0x285e[1214]][_0x285e[203]](_0x4fa0x2),this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2)&&(null==_0x4fa0x4&&_0x4fa0x3&&this[_0x285e[1179]][_0x285e[1714]](_0x4fa0x2)?(_0x4fa0x4=this[_0x285e[1230]](_0x4fa0x2),this[_0x285e[1214]][_0x285e[204]](_0x4fa0x2,_0x4fa0x4)):_0x4fa0x3&&(null!=_0x4fa0x4&&this[_0x285e[2255]])&&(_0x4fa0x4[_0x285e[124]]=this[_0x285e[1179]][_0x285e[1705]](_0x4fa0x2))));return _0x4fa0x4};mxGraphView[_0x285e[202]][_0x285e[2287]]=function(){return this[_0x285e[2254]]};mxGraphView[_0x285e[202]][_0x285e[2310]]=function(_0x4fa0x2){this[_0x285e[2254]]=_0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[2295]]=function(){return this[_0x285e[2251]]};mxGraphView[_0x285e[202]][_0x285e[2311]]=function(_0x4fa0x2){this[_0x285e[2251]]=_0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[2312]]=function(){return this[_0x285e[1214]]};mxGraphView[_0x285e[202]][_0x285e[1517]]=function(_0x4fa0x2){this[_0x285e[1214]]=_0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[2313]]=function(_0x4fa0x2){if(null==_0x4fa0x2){return this[_0x285e[1214]]};for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=this[_0x285e[248]](_0x4fa0x2[_0x4fa0x4]);null!=_0x4fa0x5&&_0x4fa0x3[_0x285e[207]](_0x4fa0x5)};return _0x4fa0x3};mxGraphView[_0x285e[202]][_0x285e[2265]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[1214]][_0x285e[205]](_0x4fa0x2),null!=_0x4fa0x3&&(this[_0x285e[1179]][_0x285e[259]][_0x285e[515]](_0x4fa0x3),_0x4fa0x3[_0x285e[515]]()));return _0x4fa0x3};mxGraphView[_0x285e[202]][_0x285e[1230]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[1705]](_0x4fa0x2);_0x4fa0x2= new mxCellState(this,_0x4fa0x2,_0x4fa0x3);this[_0x285e[1179]][_0x285e[259]][_0x285e[2155]](_0x4fa0x2,this[_0x285e[2287]]());return _0x4fa0x2};mxGraphView[_0x285e[202]][_0x285e[2051]]=function(){return this[_0x285e[510]]};mxGraphView[_0x285e[202]][_0x285e[2052]]=function(){return this[_0x285e[2053]]};mxGraphView[_0x285e[202]][_0x285e[2024]]=function(){return this[_0x285e[505]]};mxGraphView[_0x285e[202]][_0x285e[1524]]=function(){return this[_0x285e[506]]};mxGraphView[_0x285e[202]][_0x285e[2314]]=function(_0x4fa0x2){_0x4fa0x2=mxEvent[_0x285e[728]](_0x4fa0x2);return _0x4fa0x2==this[_0x285e[1179]][_0x285e[526]]||_0x4fa0x2[_0x285e[265]]==this[_0x285e[2053]]||null!=_0x4fa0x2[_0x285e[265]]&&_0x4fa0x2[_0x285e[265]][_0x285e[265]]==this[_0x285e[2053]]||_0x4fa0x2==this[_0x285e[510]][_0x285e[265]]||_0x4fa0x2==this[_0x285e[510]]||_0x4fa0x2==this[_0x285e[2053]]||_0x4fa0x2==this[_0x285e[505]]||_0x4fa0x2==this[_0x285e[506]]};mxGraphView[_0x285e[202]][_0x285e[2315]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[445]](this[_0x285e[1179]][_0x285e[526]]);_0x4fa0x2= new mxPoint(_0x4fa0x2[_0x285e[782]]-_0x4fa0x3[_0x285e[235]],_0x4fa0x2[_0x285e[784]]-_0x4fa0x3[_0x285e[236]]);var _0x4fa0x3=this[_0x285e[1179]][_0x285e[526]][_0x285e[359]],_0x4fa0x4=this[_0x285e[1179]][_0x285e[526]][_0x285e[159]];if(_0x4fa0x3>_0x4fa0x4&&_0x4fa0x2[_0x285e[235]]>_0x4fa0x4+2&&_0x4fa0x2[_0x285e[235]]<=_0x4fa0x3){return !0};_0x4fa0x3=this[_0x285e[1179]][_0x285e[526]][_0x285e[167]];_0x4fa0x4=this[_0x285e[1179]][_0x285e[526]][_0x285e[157]];return _0x4fa0x3>_0x4fa0x4&&_0x4fa0x2[_0x285e[236]]>_0x4fa0x4+2&&_0x4fa0x2[_0x285e[236]]<=_0x4fa0x3?!0:!1};mxGraphView[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[2163]]();var _0x4fa0x2=this[_0x285e[1179]];_0x4fa0x2[_0x285e[507]]==mxConstants[_0x285e[508]]?this[_0x285e[1569]]():_0x4fa0x2[_0x285e[507]]==mxConstants[_0x285e[1523]]?this[_0x285e[1571]]():this[_0x285e[1570]]()};mxGraphView[_0x285e[202]][_0x285e[2163]]=function(){var _0x4fa0x2=this[_0x285e[1179]],_0x4fa0x3=_0x4fa0x2[_0x285e[526]];if(null!=_0x4fa0x3){mxEvent[_0x285e[759]](_0x4fa0x3,mxUtils[_0x285e[885]](this,function(_0x4fa0x3){mxClient[_0x285e[754]]&&_0x4fa0x2[_0x285e[2203]]()&&_0x4fa0x2[_0x285e[2126]](!_0x4fa0x2[_0x285e[2134]]());this[_0x285e[2314]](_0x4fa0x3)&&(!mxClient[_0x285e[80]]&&!mxClient[_0x285e[76]]&&!mxClient[_0x285e[71]]&&!mxClient[_0x285e[75]]||!this[_0x285e[2315]](_0x4fa0x3))&&_0x4fa0x2[_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x3))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2314]](_0x4fa0x3)&&_0x4fa0x2[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x3))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2314]](_0x4fa0x3)&&_0x4fa0x2[_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x3))}));mxEvent[_0x285e[169]](_0x4fa0x3,_0x285e[760],mxUtils[_0x285e[885]](this,function(_0x4fa0x3){_0x4fa0x2[_0x285e[761]](_0x4fa0x3)}));var _0x4fa0x4=function(_0x4fa0x4){var _0x4fa0x9=null;mxClient[_0x285e[754]]&&(_0x4fa0x9=mxEvent[_0x285e[731]](_0x4fa0x4),_0x4fa0x4=mxEvent[_0x285e[733]](_0x4fa0x4),_0x4fa0x4=mxUtils[_0x285e[2196]](_0x4fa0x3,_0x4fa0x9,_0x4fa0x4),_0x4fa0x9=_0x4fa0x2[_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x285e[999]](_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]])));return _0x4fa0x9};_0x4fa0x2[_0x285e[1133]]({mouseDown:function(_0x4fa0x3,_0x4fa0x4){_0x4fa0x2[_0x285e[2316]][_0x285e[1032]]()},mouseMove:function(){},mouseUp:function(){}});this[_0x285e[2317]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3){null!=_0x4fa0x2[_0x285e[2276]]&&_0x4fa0x2[_0x285e[2276]][_0x285e[2277]]()&&_0x4fa0x2[_0x285e[2276]][_0x285e[801]]();this[_0x285e[2252]]&&(_0x4fa0x2[_0x285e[1009]]&&!mxEvent[_0x285e[721]](_0x4fa0x3))&&_0x4fa0x2[_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x3,_0x4fa0x4(_0x4fa0x3)))});this[_0x285e[2318]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3){this[_0x285e[2252]]&&_0x4fa0x2[_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x3))});mxEvent[_0x285e[759]](document,null,this[_0x285e[2317]],this[_0x285e[2318]])}};mxGraphView[_0x285e[202]][_0x285e[1570]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[526]];null!=_0x4fa0x2&&(this[_0x285e[510]]=this[_0x285e[2319]](_0x285e[118],_0x285e[118]),this[_0x285e[2053]]=this[_0x285e[2319]](_0x285e[942],_0x285e[942]),this[_0x285e[505]]=this[_0x285e[2319]](_0x285e[942],_0x285e[942]),this[_0x285e[506]]=this[_0x285e[2319]](_0x285e[942],_0x285e[942]),this[_0x285e[510]][_0x285e[62]](this[_0x285e[2053]]),this[_0x285e[510]][_0x285e[62]](this[_0x285e[505]]),this[_0x285e[510]][_0x285e[62]](this[_0x285e[506]]),_0x4fa0x2[_0x285e[62]](this[_0x285e[510]]),mxClient[_0x285e[496]]&&(_0x4fa0x2=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[517]]();this[_0x285e[2320]](_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]+this[_0x285e[1179]][_0x285e[467]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]+this[_0x285e[1179]][_0x285e[467]])}),mxEvent[_0x285e[169]](window,_0x285e[129],_0x4fa0x2)))};mxGraphView[_0x285e[202]][_0x285e[2320]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[1179]][_0x285e[526]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[526]][_0x285e[167]];this[_0x285e[510]][_0x285e[124]][_0x285e[117]]=this[_0x285e[1179]][_0x285e[526]][_0x285e[359]]<_0x4fa0x2?_0x4fa0x2+_0x285e[168]:_0x285e[118];this[_0x285e[510]][_0x285e[124]][_0x285e[119]]=_0x4fa0x4<_0x4fa0x3?_0x4fa0x3+_0x285e[168]:_0x285e[118]}};mxGraphView[_0x285e[202]][_0x285e[2319]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[529]);null!=_0x4fa0x2&&null!=_0x4fa0x3?(_0x4fa0x4[_0x285e[124]][_0x285e[491]]=_0x285e[492],_0x4fa0x4[_0x285e[124]][_0x285e[361]]=_0x285e[946],_0x4fa0x4[_0x285e[124]][_0x285e[125]]=_0x285e[946],_0x4fa0x4[_0x285e[124]][_0x285e[117]]=_0x4fa0x2,_0x4fa0x4[_0x285e[124]][_0x285e[119]]=_0x4fa0x3):_0x4fa0x4[_0x285e[124]][_0x285e[491]]=_0x285e[1500];return _0x4fa0x4};mxGraphView[_0x285e[202]][_0x285e[1571]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[526]];if(null!=_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[359]],_0x4fa0x4=_0x4fa0x2[_0x285e[167]];this[_0x285e[510]]=this[_0x285e[2321]](_0x4fa0x3,_0x4fa0x4);this[_0x285e[2053]]=this[_0x285e[2321]](_0x4fa0x3,_0x4fa0x4);this[_0x285e[505]]=this[_0x285e[2321]](_0x4fa0x3,_0x4fa0x4);this[_0x285e[506]]=this[_0x285e[2321]](_0x4fa0x3,_0x4fa0x4);this[_0x285e[510]][_0x285e[62]](this[_0x285e[2053]]);this[_0x285e[510]][_0x285e[62]](this[_0x285e[505]]);this[_0x285e[510]][_0x285e[62]](this[_0x285e[506]]);_0x4fa0x2[_0x285e[62]](this[_0x285e[510]])}};mxGraphView[_0x285e[202]][_0x285e[2321]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](mxClient[_0x285e[463]]+_0x285e[1499]);_0x4fa0x4[_0x285e[124]][_0x285e[491]]=_0x285e[492];_0x4fa0x4[_0x285e[124]][_0x285e[361]]=_0x285e[946];_0x4fa0x4[_0x285e[124]][_0x285e[125]]=_0x285e[946];_0x4fa0x4[_0x285e[124]][_0x285e[117]]=_0x4fa0x2+_0x285e[168];_0x4fa0x4[_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168];_0x4fa0x4[_0x285e[57]](_0x285e[1462],_0x4fa0x2+_0x285e[537]+_0x4fa0x3);_0x4fa0x4[_0x285e[57]](_0x285e[2322],_0x285e[2323]);return _0x4fa0x4};mxGraphView[_0x285e[202]][_0x285e[1569]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[526]];this[_0x285e[510]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449]);this[_0x285e[2053]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449]);this[_0x285e[510]][_0x285e[62]](this[_0x285e[2053]]);this[_0x285e[505]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449]);this[_0x285e[510]][_0x285e[62]](this[_0x285e[505]]);this[_0x285e[506]]=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[449]);this[_0x285e[510]][_0x285e[62]](this[_0x285e[506]]);var _0x4fa0x3=document[_0x285e[509]](mxConstants.NS_SVG,_0x285e[571]);_0x4fa0x3[_0x285e[124]][_0x285e[117]]=_0x285e[118];_0x4fa0x3[_0x285e[124]][_0x285e[119]]=_0x285e[118];_0x4fa0x3[_0x285e[124]][_0x285e[495]]=_0x285e[694];_0x4fa0x3[_0x285e[62]](this[_0x285e[510]]);null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[62]](_0x4fa0x3),_0x285e[2324]==mxUtils[_0x285e[275]](_0x4fa0x2)[_0x285e[491]]&&(_0x4fa0x2[_0x285e[124]][_0x285e[491]]=_0x285e[1500]))};mxGraphView[_0x285e[202]][_0x285e[515]]=function(){var _0x4fa0x2=null!=this[_0x285e[510]]?this[_0x285e[510]][_0x285e[538]]:null;null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[510]]);null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[265]]&&(this[_0x285e[200]](this[_0x285e[1741]],!0),mxEvent[_0x285e[938]](document,null,this[_0x285e[2317]],this[_0x285e[2318]]),mxEvent[_0x285e[762]](this[_0x285e[1179]][_0x285e[526]]),_0x4fa0x2[_0x285e[265]][_0x285e[266]](_0x4fa0x2),this[_0x285e[506]]=this[_0x285e[505]]=this[_0x285e[2053]]=this[_0x285e[510]]=this[_0x285e[2318]]=this[_0x285e[2317]]=null)};function mxCurrentRootChange(_0x4fa0x2,_0x4fa0x3){this[_0x285e[441]]=_0x4fa0x2;this[_0x285e[257]]=this[_0x285e[813]]=_0x4fa0x3;this[_0x285e[2325]]=null==_0x4fa0x3;if(!this[_0x285e[2325]]){for(var _0x4fa0x4=this[_0x285e[441]][_0x285e[1741]],_0x4fa0x5=this[_0x285e[441]][_0x285e[1179]][_0x285e[502]]();null!=_0x4fa0x4;){if(_0x4fa0x4==_0x4fa0x3){this[_0x285e[2325]]= !0;break};_0x4fa0x4=_0x4fa0x5[_0x285e[1197]](_0x4fa0x4)}}}mxCurrentRootChange[_0x285e[202]][_0x285e[350]]=function(){var _0x4fa0x2=this[_0x285e[441]][_0x285e[1741]];this[_0x285e[441]][_0x285e[1741]]=this[_0x285e[257]];this[_0x285e[257]]=_0x4fa0x2;_0x4fa0x2=this[_0x285e[441]][_0x285e[1179]][_0x285e[2326]](this[_0x285e[441]][_0x285e[1741]]);null!=_0x4fa0x2&&(this[_0x285e[441]][_0x285e[513]]= new mxPoint(-_0x4fa0x2[_0x285e[235]],-_0x4fa0x2[_0x285e[236]]));this[_0x285e[441]][_0x285e[746]]( new mxEventObject(this[_0x285e[2325]]?mxEvent[_0x285e[2327]]:mxEvent[_0x285e[2328]],_0x285e[813],this[_0x285e[441]][_0x285e[1741]],_0x285e[257],this[_0x285e[257]]));this[_0x285e[2325]]?(this[_0x285e[441]][_0x285e[200]](this[_0x285e[441]][_0x285e[1741]],!0),this[_0x285e[441]][_0x285e[2264]]()):this[_0x285e[441]][_0x285e[802]]();this[_0x285e[2325]]=!this[_0x285e[2325]]};function mxGraph(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[2329]]=null;this[_0x285e[2330]]=_0x4fa0x4;this[_0x285e[507]]=mxClient[_0x285e[48]]?mxConstants[_0x285e[508]]:_0x4fa0x4==mxConstants[_0x285e[2331]]&&mxClient[_0x285e[47]]?mxConstants[_0x285e[1523]]:_0x4fa0x4==mxConstants[_0x285e[2332]]?mxConstants[_0x285e[1656]]:_0x4fa0x4==mxConstants[_0x285e[2333]]?mxConstants[_0x285e[2209]]:mxConstants[_0x285e[2334]];this[_0x285e[251]]=null!=_0x4fa0x3?_0x4fa0x3: new mxGraphModel;this[_0x285e[2335]]=[];this[_0x285e[2336]]=[];this[_0x285e[259]]=this[_0x285e[2337]]();this[_0x285e[2339]](this[_0x285e[2338]]());this[_0x285e[2341]](null!=_0x4fa0x5?_0x4fa0x5:this[_0x285e[2340]]());this[_0x285e[441]]=this[_0x285e[2342]]();this[_0x285e[2343]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1177]](_0x4fa0x3[_0x285e[720]](_0x285e[1061])[_0x285e[1065]])});this[_0x285e[251]][_0x285e[169]](mxEvent.CHANGE,this[_0x285e[2343]]);this[_0x285e[2344]]();null!=_0x4fa0x2&&this[_0x285e[176]](_0x4fa0x2);this[_0x285e[441]][_0x285e[2259]]()}mxLoadResources&&mxResources[_0x285e[99]](mxClient[_0x285e[86]]+_0x285e[2345]);mxGraph[_0x285e[202]]= new mxEventSource;mxGraph[_0x285e[202]][_0x285e[196]]=mxGraph;mxGraph[_0x285e[202]][_0x285e[2346]]=[];mxGraph[_0x285e[202]][_0x285e[2329]]=null;mxGraph[_0x285e[202]][_0x285e[1009]]= !1;mxGraph[_0x285e[202]][_0x285e[251]]=null;mxGraph[_0x285e[202]][_0x285e[441]]=null;mxGraph[_0x285e[202]][_0x285e[94]]=null;mxGraph[_0x285e[202]][_0x285e[2105]]=null;mxGraph[_0x285e[202]][_0x285e[2347]]=null;mxGraph[_0x285e[202]][_0x285e[259]]=null;mxGraph[_0x285e[202]][_0x285e[2335]]=null;mxGraph[_0x285e[202]][_0x285e[2330]]=null;mxGraph[_0x285e[202]][_0x285e[507]]=null;mxGraph[_0x285e[202]][_0x285e[1020]]=10;mxGraph[_0x285e[202]][_0x285e[991]]= !0;mxGraph[_0x285e[202]][_0x285e[2348]]= !0;mxGraph[_0x285e[202]][_0x285e[2349]]= !0;mxGraph[_0x285e[202]][_0x285e[2350]]=700;mxGraph[_0x285e[202]][_0x285e[2351]]=25;mxGraph[_0x285e[202]][_0x285e[2352]]=0;mxGraph[_0x285e[202]][_0x285e[2352]]=0;mxGraph[_0x285e[202]][_0x285e[2213]]=0;mxGraph[_0x285e[202]][_0x285e[2215]]= !0;mxGraph[_0x285e[202]][_0x285e[2353]]=4;mxGraph[_0x285e[202]][_0x285e[2354]]=0.5;mxGraph[_0x285e[202]][_0x285e[2355]]=null;mxGraph[_0x285e[202]][_0x285e[2356]]=null;mxGraph[_0x285e[202]][_0x285e[1617]]=null;mxGraph[_0x285e[202]][_0x285e[2273]]= !1;mxGraph[_0x285e[202]][_0x285e[2357]]= !1;mxGraph[_0x285e[202]][_0x285e[2358]]=_0x285e[579];mxGraph[_0x285e[202]][_0x285e[2359]]= !0;mxGraph[_0x285e[202]][_0x285e[2360]]=20;mxGraph[_0x285e[202]][_0x285e[2361]]= !1;mxGraph[_0x285e[202]][_0x285e[2013]]=mxConstants[_0x285e[516]];mxGraph[_0x285e[202]][_0x285e[2012]]=1.5;mxGraph[_0x285e[202]][_0x285e[984]]= !0;mxGraph[_0x285e[202]][_0x285e[2362]]= !0;mxGraph[_0x285e[202]][_0x285e[2363]]= !0;mxGraph[_0x285e[202]][_0x285e[2364]]= !1;mxGraph[_0x285e[202]][_0x285e[2365]]= !0;mxGraph[_0x285e[202]][_0x285e[2366]]= !0;mxGraph[_0x285e[202]][_0x285e[2367]]= !0;mxGraph[_0x285e[202]][_0x285e[2368]]= !1;mxGraph[_0x285e[202]][_0x285e[2369]]= !0;mxGraph[_0x285e[202]][_0x285e[2206]]= !0;mxGraph[_0x285e[202]][_0x285e[2370]]= !0;mxGraph[_0x285e[202]][_0x285e[2371]]= !0;mxGraph[_0x285e[202]][_0x285e[2372]]= !0;mxGraph[_0x285e[202]][_0x285e[2373]]= !0;mxGraph[_0x285e[202]][_0x285e[2374]]= !1;mxGraph[_0x285e[202]][_0x285e[2375]]= !1;mxGraph[_0x285e[202]][_0x285e[2376]]= !0;mxGraph[_0x285e[202]][_0x285e[2377]]= !0;mxGraph[_0x285e[202]][_0x285e[2378]]= !0;mxGraph[_0x285e[202]][_0x285e[2379]]= !0;mxGraph[_0x285e[202]][_0x285e[2380]]= !0;mxGraph[_0x285e[202]][_0x285e[2381]]= !1;mxGraph[_0x285e[202]][_0x285e[1012]]= !0;mxGraph[_0x285e[202]][_0x285e[2382]]= !1;mxGraph[_0x285e[202]][_0x285e[2383]]= !1;mxGraph[_0x285e[202]][_0x285e[2384]]= !1;mxGraph[_0x285e[202]][_0x285e[1013]]= !0;mxGraph[_0x285e[202]][_0x285e[2385]]=null;mxGraph[_0x285e[202]][_0x285e[2386]]=null;mxGraph[_0x285e[202]][_0x285e[2387]]=null;mxGraph[_0x285e[202]][_0x285e[2388]]=null;mxGraph[_0x285e[202]][_0x285e[2389]]= !1;mxGraph[_0x285e[202]][_0x285e[467]]=0;mxGraph[_0x285e[202]][_0x285e[2158]]= !0;mxGraph[_0x285e[202]][_0x285e[2159]]= !1;mxGraph[_0x285e[202]][_0x285e[2168]]= !0;mxGraph[_0x285e[202]][_0x285e[2390]]= !0;mxGraph[_0x285e[202]][_0x285e[2391]]= !0;mxGraph[_0x285e[202]][_0x285e[2392]]= !0;mxGraph[_0x285e[202]][_0x285e[2393]]= !0;mxGraph[_0x285e[202]][_0x285e[2394]]= !0;mxGraph[_0x285e[202]][_0x285e[2395]]=1.2;mxGraph[_0x285e[202]][_0x285e[2396]]= !1;mxGraph[_0x285e[202]][_0x285e[2397]]= !0;mxGraph[_0x285e[202]][_0x285e[2398]]= !0;mxGraph[_0x285e[202]][_0x285e[2399]]= !1;mxGraph[_0x285e[202]][_0x285e[2400]]= !1;mxGraph[_0x285e[202]][_0x285e[2401]]= !0;mxGraph[_0x285e[202]][_0x285e[2402]]= !1;mxGraph[_0x285e[202]][_0x285e[2293]]=mxEdgeStyle[_0x285e[2403]];mxGraph[_0x285e[202]][_0x285e[2404]]= !0;mxGraph[_0x285e[202]][_0x285e[2405]]= !1;mxGraph[_0x285e[202]][_0x285e[2406]]= !0;mxGraph[_0x285e[202]][_0x285e[2407]]= !1;mxGraph[_0x285e[202]][_0x285e[2408]]= !0;mxGraph[_0x285e[202]][_0x285e[2409]]= !0;mxGraph[_0x285e[202]][_0x285e[2410]]= !1;mxGraph[_0x285e[202]][_0x285e[2411]]= !0;mxGraph[_0x285e[202]][_0x285e[2412]]= !0;mxGraph[_0x285e[202]][_0x285e[2180]]=mxConstants[_0x285e[2065]];mxGraph[_0x285e[202]][_0x285e[2336]]=null;mxGraph[_0x285e[202]][_0x285e[2413]]=0.1;mxGraph[_0x285e[202]][_0x285e[2414]]=8;mxGraph[_0x285e[202]][_0x285e[1136]]=0;mxGraph[_0x285e[202]][_0x285e[1137]]=0;mxGraph[_0x285e[202]][_0x285e[2415]]= new mxImage(mxClient[_0x285e[88]]+_0x285e[2416],9,9);mxGraph[_0x285e[202]][_0x285e[2417]]= new mxImage(mxClient[_0x285e[88]]+_0x285e[2418],9,9);mxGraph[_0x285e[202]][_0x285e[2419]]= new mxImage(_0x285e[2420],16,16);mxGraph[_0x285e[202]][_0x285e[2421]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2422]:_0x285e[110];mxGraph[_0x285e[202]][_0x285e[2423]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2424]:_0x285e[110];mxGraph[_0x285e[202]][_0x285e[2425]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2426]:_0x285e[110];mxGraph[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2){this[_0x285e[526]]=_0x4fa0x2;this[_0x285e[2347]]=this[_0x285e[2427]]();this[_0x285e[441]][_0x285e[176]]();this[_0x285e[2258]]();mxClient[_0x285e[80]]&&(mxEvent[_0x285e[169]](window,_0x285e[2428],mxUtils[_0x285e[885]](this,function(){this[_0x285e[515]]()})),mxEvent[_0x285e[169]](_0x4fa0x2,_0x285e[2429],mxUtils[_0x285e[885]](this,function(){return this[_0x285e[2203]]()})));8==document[_0x285e[5]]&&_0x4fa0x2[_0x285e[1583]](_0x285e[1582],_0x285e[2430])};mxGraph[_0x285e[202]][_0x285e[2344]]=function(_0x4fa0x2){this[_0x285e[2276]]= new mxTooltipHandler(this);this[_0x285e[2276]][_0x285e[995]](!1);this[_0x285e[2316]]= new mxPanningHandler(this);this[_0x285e[2316]][_0x285e[2431]]= !1;this[_0x285e[2432]]= new mxSelectionCellsHandler(this);this[_0x285e[2433]]= new mxConnectionHandler(this);this[_0x285e[2433]][_0x285e[995]](!1);this[_0x285e[1011]]= new mxGraphHandler(this)};mxGraph[_0x285e[202]][_0x285e[2338]]=function(){return new mxGraphSelectionModel(this)};mxGraph[_0x285e[202]][_0x285e[2340]]=function(){return new mxStylesheet};mxGraph[_0x285e[202]][_0x285e[2342]]=function(){return new mxGraphView(this)};mxGraph[_0x285e[202]][_0x285e[2337]]=function(){return new mxCellRenderer};mxGraph[_0x285e[202]][_0x285e[2427]]=function(){return new mxCellEditor(this)};mxGraph[_0x285e[202]][_0x285e[502]]=function(){return this[_0x285e[251]]};mxGraph[_0x285e[202]][_0x285e[249]]=function(){return this[_0x285e[441]]};mxGraph[_0x285e[202]][_0x285e[2434]]=function(){return this[_0x285e[94]]};mxGraph[_0x285e[202]][_0x285e[2341]]=function(_0x4fa0x2){this[_0x285e[94]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2435]]=function(){return this[_0x285e[2105]]};mxGraph[_0x285e[202]][_0x285e[2339]]=function(_0x4fa0x2){this[_0x285e[2105]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2436]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=_0x4fa0x2[_0x4fa0x4];if(_0x4fa0x5[_0x285e[196]]!=mxRootChange){var _0x4fa0x9=null;_0x4fa0x5 instanceof mxChildChange&&null==_0x4fa0x5[_0x285e[257]]?_0x4fa0x9=_0x4fa0x5[_0x285e[247]]:null!=_0x4fa0x5[_0x285e[246]]&&_0x4fa0x5[_0x285e[246]] instanceof mxCell&&(_0x4fa0x9=_0x4fa0x5[_0x285e[246]]);null!=_0x4fa0x9&&0>mxUtils[_0x285e[2]](_0x4fa0x3,_0x4fa0x9)&&_0x4fa0x3[_0x285e[207]](_0x4fa0x9)}};return this[_0x285e[502]]()[_0x285e[1964]](_0x4fa0x3)};mxGraph[_0x285e[202]][_0x285e[1177]]=function(_0x4fa0x2){for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){this[_0x285e[2437]](_0x4fa0x2[_0x4fa0x3])};this[_0x285e[2439]](this[_0x285e[2438]](_0x4fa0x2));this[_0x285e[441]][_0x285e[2264]]();this[_0x285e[2258]]()};mxGraph[_0x285e[202]][_0x285e[2438]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=_0x4fa0x2[_0x4fa0x4];if(_0x4fa0x5 instanceof mxRootChange){break}else {_0x4fa0x5 instanceof mxChildChange?null!=_0x4fa0x5[_0x285e[257]]&&null==_0x4fa0x5[_0x285e[1101]]&&(_0x4fa0x3=_0x4fa0x3[_0x285e[1919]](this[_0x285e[251]][_0x285e[1939]](_0x4fa0x5[_0x285e[247]]))):_0x4fa0x5 instanceof mxVisibleChange&&(_0x4fa0x3=_0x4fa0x3[_0x285e[1919]](this[_0x285e[251]][_0x285e[1939]](_0x4fa0x5[_0x285e[246]])))}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2437]]=function(_0x4fa0x2){if(_0x4fa0x2 instanceof mxRootChange){this[_0x285e[2440]](),this[_0x285e[2441]](_0x4fa0x2[_0x285e[257]]),this[_0x285e[2398]]&&(this[_0x285e[441]][_0x285e[255]]=1,this[_0x285e[441]][_0x285e[513]][_0x285e[235]]=0,this[_0x285e[441]][_0x285e[513]][_0x285e[236]]=0),this[_0x285e[746]]( new mxEventObject(mxEvent.ROOT))}else {if(_0x4fa0x2 instanceof mxChildChange){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x285e[247]]);null!=_0x4fa0x3?this[_0x285e[441]][_0x285e[2263]](_0x4fa0x2[_0x285e[247]],!0,!1,null!=_0x4fa0x2[_0x285e[257]]):(this[_0x285e[2441]](_0x4fa0x2[_0x285e[247]]),this[_0x285e[441]][_0x285e[1741]]==_0x4fa0x2[_0x285e[247]]&&this[_0x285e[2442]]());_0x4fa0x3!=_0x4fa0x2[_0x285e[257]]&&(null!=_0x4fa0x3&&this[_0x285e[441]][_0x285e[2263]](_0x4fa0x3,!1,!1),null!=_0x4fa0x2[_0x285e[257]]&&this[_0x285e[441]][_0x285e[2263]](_0x4fa0x2[_0x285e[257]],!1,!1))}else {_0x4fa0x2 instanceof mxTerminalChange||_0x4fa0x2 instanceof mxGeometryChange?this[_0x285e[441]][_0x285e[2263]](_0x4fa0x2[_0x285e[246]]):_0x4fa0x2 instanceof mxValueChange?this[_0x285e[441]][_0x285e[2263]](_0x4fa0x2[_0x285e[246]],!1,!1):_0x4fa0x2 instanceof mxStyleChange?(this[_0x285e[441]][_0x285e[2263]](_0x4fa0x2[_0x285e[246]],!0,!0,!1),this[_0x285e[441]][_0x285e[2265]](_0x4fa0x2[_0x285e[246]])):null!=_0x4fa0x2[_0x285e[246]]&&_0x4fa0x2[_0x285e[246]] instanceof mxCell&&this[_0x285e[2441]](_0x4fa0x2[_0x285e[246]])}}};mxGraph[_0x285e[202]][_0x285e[2441]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2),_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3;_0x4fa0x4++){this[_0x285e[2441]](this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x4))};this[_0x285e[441]][_0x285e[2265]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2443]]=function(_0x4fa0x2,_0x4fa0x3){null==_0x4fa0x2[_0x285e[1211]]&&(_0x4fa0x2[_0x285e[1211]]=[]);_0x4fa0x2[_0x285e[1211]][_0x285e[207]](_0x4fa0x3);var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);null!=_0x4fa0x4&&this[_0x285e[259]][_0x285e[258]](_0x4fa0x4);this[_0x285e[746]]( new mxEventObject(mxEvent.ADD_OVERLAY,_0x285e[246],_0x4fa0x2,_0x285e[2201],_0x4fa0x3));return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2200]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[1211]]};mxGraph[_0x285e[202]][_0x285e[2444]]=function(_0x4fa0x2,_0x4fa0x3){if(null==_0x4fa0x3){this[_0x285e[2445]](_0x4fa0x2)}else {var _0x4fa0x4=mxUtils[_0x285e[2]](_0x4fa0x2[_0x285e[1211]],_0x4fa0x3);0<=_0x4fa0x4?(_0x4fa0x2[_0x285e[1211]][_0x285e[300]](_0x4fa0x4,1),0==_0x4fa0x2[_0x285e[1211]][_0x285e[67]]&&(_0x4fa0x2[_0x285e[1211]]=null),_0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),null!=_0x4fa0x4&&this[_0x285e[259]][_0x285e[258]](_0x4fa0x4),this[_0x285e[746]]( new mxEventObject(mxEvent.REMOVE_OVERLAY,_0x285e[246],_0x4fa0x2,_0x285e[2201],_0x4fa0x3))):_0x4fa0x3=null};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2445]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[1211]];if(null!=_0x4fa0x3){_0x4fa0x2[_0x285e[1211]]=null;var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);null!=_0x4fa0x4&&this[_0x285e[259]][_0x285e[258]](_0x4fa0x4);for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3[_0x285e[67]];_0x4fa0x4++){this[_0x285e[746]]( new mxEventObject(mxEvent.REMOVE_OVERLAY,_0x285e[246],_0x4fa0x2,_0x285e[2201],_0x4fa0x3[_0x4fa0x4]))}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2446]]=function(_0x4fa0x2){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:this[_0x285e[251]][_0x285e[501]]();this[_0x285e[2445]](_0x4fa0x2);for(var _0x4fa0x3=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2),_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3;_0x4fa0x4++){var _0x4fa0x5=this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[2446]](_0x4fa0x5)}};mxGraph[_0x285e[202]][_0x285e[2447]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]){return _0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:this[_0x285e[2419]],_0x4fa0x3= new mxCellOverlay(_0x4fa0x4,_0x285e[2448]+_0x4fa0x3+_0x285e[2449]),_0x4fa0x5&&_0x4fa0x3[_0x285e[169]](mxEvent.CLICK,mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x4){this[_0x285e[994]]()&&this[_0x285e[2450]](_0x4fa0x2)})),this[_0x285e[2443]](_0x4fa0x2,_0x4fa0x3)};this[_0x285e[2445]](_0x4fa0x2);return null};mxGraph[_0x285e[202]][_0x285e[855]]=function(_0x4fa0x2){this[_0x285e[2451]](null,_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2451]]=function(_0x4fa0x2,_0x4fa0x3){null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[2452]](),null!=_0x4fa0x2&&!this[_0x285e[2453]](_0x4fa0x2)&&(_0x4fa0x2=null));null!=_0x4fa0x2&&(this[_0x285e[746]]( new mxEventObject(mxEvent.START_EDITING,_0x285e[246],_0x4fa0x2,_0x285e[763],_0x4fa0x3)),this[_0x285e[2347]][_0x285e[855]](_0x4fa0x2,_0x4fa0x3))};mxGraph[_0x285e[202]][_0x285e[2142]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[2454]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2126]]=function(_0x4fa0x2){this[_0x285e[2347]][_0x285e[2126]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[850]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[2456]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[2455]](_0x4fa0x2)),this[_0x285e[746]]( new mxEventObject(mxEvent.LABEL_CHANGED,_0x285e[246],_0x4fa0x2,_0x285e[131],_0x4fa0x3,_0x285e[763],_0x4fa0x4))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2456]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[251]][_0x285e[1966]](_0x4fa0x2,_0x4fa0x3),_0x4fa0x4&&this[_0x285e[2457]](_0x4fa0x2,!1)}finally{this[_0x285e[251]][_0x285e[476]]()}};mxGraph[_0x285e[202]][_0x285e[859]]=function(_0x4fa0x2){this[_0x285e[2126]](!0);this[_0x285e[2433]][_0x285e[862]]();this[_0x285e[1011]][_0x285e[862]]();_0x4fa0x2=this[_0x285e[897]]();for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x4fa0x3]);null!=_0x4fa0x4&&null!=_0x4fa0x4[_0x285e[2458]]&&_0x4fa0x4[_0x285e[2458]][_0x285e[862]]()}};mxGraph[_0x285e[202]][_0x285e[173]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[727]](),_0x4fa0x4=_0x4fa0x2[_0x285e[736]](),_0x4fa0x5= new mxEventObject(mxEvent.CLICK,_0x285e[763],_0x4fa0x3,_0x285e[246],_0x4fa0x4);_0x4fa0x2[_0x285e[721]]()&&_0x4fa0x5[_0x285e[722]]();this[_0x285e[746]](_0x4fa0x5);this[_0x285e[994]]()&&(!mxEvent[_0x285e[721]](_0x4fa0x3)&&!_0x4fa0x5[_0x285e[721]]())&&(null!=_0x4fa0x4?this[_0x285e[2459]](_0x4fa0x4,_0x4fa0x3):(_0x4fa0x4=null,this[_0x285e[2460]]()&&(_0x4fa0x4=this[_0x285e[2461]](_0x4fa0x2[_0x285e[734]](),_0x4fa0x2[_0x285e[735]]())),null!=_0x4fa0x4?this[_0x285e[2459]](_0x4fa0x4,_0x4fa0x3):this[_0x285e[2462]](_0x4fa0x3)||this[_0x285e[2440]]()))};mxGraph[_0x285e[202]][_0x285e[761]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4= new mxEventObject(mxEvent.DOUBLE_CLICK,_0x285e[763],_0x4fa0x2,_0x285e[246],_0x4fa0x3);this[_0x285e[746]](_0x4fa0x4);this[_0x285e[994]]()&&(!mxEvent[_0x285e[721]](_0x4fa0x2)&&!_0x4fa0x4[_0x285e[721]]()&&null!=_0x4fa0x3&&this[_0x285e[2453]](_0x4fa0x3))&&this[_0x285e[2451]](_0x4fa0x3,_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1014]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(!this[_0x285e[2382]]&&(this[_0x285e[2384]]||mxUtils[_0x285e[1134]](this[_0x285e[526]]))){var _0x4fa0x9=this[_0x285e[526]];_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:20;if(_0x4fa0x2>=_0x4fa0x9[_0x285e[360]]&&_0x4fa0x3>=_0x4fa0x9[_0x285e[190]]&&_0x4fa0x2<=_0x4fa0x9[_0x285e[360]]+_0x4fa0x9[_0x285e[159]]&&_0x4fa0x3<=_0x4fa0x9[_0x285e[190]]+_0x4fa0x9[_0x285e[157]]){var _0x4fa0xa=_0x4fa0x9[_0x285e[360]]+_0x4fa0x9[_0x285e[159]]-_0x4fa0x2;if(_0x4fa0xa<_0x4fa0x5){if(_0x4fa0x2=_0x4fa0x9[_0x285e[360]],_0x4fa0x9[_0x285e[360]]+=_0x4fa0x5-_0x4fa0xa,_0x4fa0x4&&_0x4fa0x2==_0x4fa0x9[_0x285e[360]]){if(this[_0x285e[507]]==mxConstants[_0x285e[508]]){_0x4fa0x2=this[_0x285e[441]][_0x285e[2024]]()[_0x285e[538]];var _0x4fa0x12=this[_0x285e[526]][_0x285e[1526]]+_0x4fa0x5-_0x4fa0xa}else {_0x4fa0x12=Math[_0x285e[160]](_0x4fa0x9[_0x285e[159]],_0x4fa0x9[_0x285e[1526]])+_0x4fa0x5-_0x4fa0xa,_0x4fa0x2=this[_0x285e[441]][_0x285e[2051]]()};_0x4fa0x2[_0x285e[124]][_0x285e[117]]=_0x4fa0x12+_0x285e[168];_0x4fa0x9[_0x285e[360]]+=_0x4fa0x5-_0x4fa0xa}}else {_0x4fa0xa=_0x4fa0x2-_0x4fa0x9[_0x285e[360]],_0x4fa0xa<_0x4fa0x5&&(_0x4fa0x9[_0x285e[360]]-=_0x4fa0x5-_0x4fa0xa)};_0x4fa0xa=_0x4fa0x9[_0x285e[190]]+_0x4fa0x9[_0x285e[157]]-_0x4fa0x3;_0x4fa0xa<_0x4fa0x5?(_0x4fa0x2=_0x4fa0x9[_0x285e[190]],_0x4fa0x9[_0x285e[190]]+=_0x4fa0x5-_0x4fa0xa,_0x4fa0x2==_0x4fa0x9[_0x285e[190]]&&_0x4fa0x4&&(this[_0x285e[507]]==mxConstants[_0x285e[508]]?(_0x4fa0x2=this[_0x285e[441]][_0x285e[2024]]()[_0x285e[538]],_0x4fa0x3=this[_0x285e[526]][_0x285e[191]]+_0x4fa0x5-_0x4fa0xa):(_0x4fa0x3=Math[_0x285e[160]](_0x4fa0x9[_0x285e[157]],_0x4fa0x9[_0x285e[191]])+_0x4fa0x5-_0x4fa0xa,_0x4fa0x2=this[_0x285e[441]][_0x285e[2051]]()),_0x4fa0x2[_0x285e[124]][_0x285e[119]]=_0x4fa0x3+_0x285e[168],_0x4fa0x9[_0x285e[190]]+=_0x4fa0x5-_0x4fa0xa)):(_0x4fa0xa=_0x4fa0x3-_0x4fa0x9[_0x285e[190]],_0x4fa0xa<_0x4fa0x5&&(_0x4fa0x9[_0x285e[190]]-=_0x4fa0x5-_0x4fa0xa))}}else {this[_0x285e[2383]]&&!this[_0x285e[2316]][_0x285e[1124]]&&(null==this[_0x285e[2463]]&&(this[_0x285e[2463]]=this[_0x285e[2464]]()),this[_0x285e[2463]][_0x285e[1143]](_0x4fa0x2+this[_0x285e[1136]],_0x4fa0x3+this[_0x285e[1137]]))}};mxGraph[_0x285e[202]][_0x285e[2464]]=function(){return new mxPanningManager(this)};mxGraph[_0x285e[202]][_0x285e[2465]]=function(){function _0x4fa0x2(_0x4fa0x2){var _0x4fa0x3=0,_0x4fa0x3=_0x285e[2466]==_0x4fa0x2?2:_0x285e[2467]==_0x4fa0x2?4:_0x285e[2468]==_0x4fa0x2?6:parseInt(_0x4fa0x2);isNaN(_0x4fa0x3)&&(_0x4fa0x3=0);return _0x4fa0x3}var _0x4fa0x3=mxUtils[_0x285e[275]](this[_0x285e[526]]),_0x4fa0x4= new mxRectangle;_0x4fa0x4[_0x285e[235]]=_0x4fa0x2(_0x4fa0x3[_0x285e[2469]])+parseInt(_0x4fa0x3[_0x285e[357]]||0);_0x4fa0x4[_0x285e[236]]=_0x4fa0x2(_0x4fa0x3[_0x285e[2470]])+parseInt(_0x4fa0x3[_0x285e[2471]]||0);_0x4fa0x4[_0x285e[117]]=_0x4fa0x2(_0x4fa0x3[_0x285e[2472]])+parseInt(_0x4fa0x3[_0x285e[1164]]||0);_0x4fa0x4[_0x285e[119]]=_0x4fa0x2(_0x4fa0x3[_0x285e[2473]])+parseInt(_0x4fa0x3[_0x285e[2474]]||0);return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[2475]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=this[_0x285e[441]][_0x285e[255]];var _0x4fa0x5=this[_0x285e[441]][_0x285e[513]],_0x4fa0x9=this[_0x285e[2013]],_0x4fa0xa=_0x4fa0x2*this[_0x285e[2012]],_0x4fa0x9= new mxRectangle(0,0,_0x4fa0x9[_0x285e[117]]*_0x4fa0xa,_0x4fa0x9[_0x285e[119]]*_0x4fa0xa);_0x4fa0x3=this[_0x285e[2357]]?Math[_0x285e[430]](_0x4fa0x3/_0x4fa0x9[_0x285e[117]]):1;_0x4fa0x4=this[_0x285e[2357]]?Math[_0x285e[430]](_0x4fa0x4/_0x4fa0x9[_0x285e[119]]):1;return new mxRectangle(0,0,_0x4fa0x3*_0x4fa0x9[_0x285e[117]]+2+_0x4fa0x5[_0x285e[235]]/_0x4fa0x2,_0x4fa0x4*_0x4fa0x9[_0x285e[119]]+2+_0x4fa0x5[_0x285e[236]]/_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2258]]=function(){var _0x4fa0x2=this[_0x285e[517]]();if(null!=this[_0x285e[526]]){var _0x4fa0x3=this[_0x285e[2476]](),_0x4fa0x4=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]+1+_0x4fa0x3),_0x4fa0x3=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]+1+_0x4fa0x3);null!=this[_0x285e[2387]]&&(_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x4,this[_0x285e[2387]][_0x285e[117]]),_0x4fa0x3=Math[_0x285e[160]](_0x4fa0x3,this[_0x285e[2387]][_0x285e[119]]));this[_0x285e[2389]]&&this[_0x285e[2477]](_0x4fa0x4,_0x4fa0x3);if(this[_0x285e[2361]]||!mxClient[_0x285e[80]]&&this[_0x285e[2273]]){var _0x4fa0x5=this[_0x285e[2475]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x3);null!=_0x4fa0x5&&(_0x4fa0x4=_0x4fa0x5[_0x285e[117]],_0x4fa0x3=_0x4fa0x5[_0x285e[119]])};null!=this[_0x285e[2386]]&&(_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x4,this[_0x285e[2386]][_0x285e[117]]*this[_0x285e[441]][_0x285e[255]]),_0x4fa0x3=Math[_0x285e[160]](_0x4fa0x3,this[_0x285e[2386]][_0x285e[119]]*this[_0x285e[441]][_0x285e[255]]));_0x4fa0x4=Math[_0x285e[430]](_0x4fa0x4-1);_0x4fa0x3=Math[_0x285e[430]](_0x4fa0x3-1);this[_0x285e[507]]==mxConstants[_0x285e[508]]?(_0x4fa0x5=this[_0x285e[441]][_0x285e[2024]]()[_0x285e[538]],_0x4fa0x5[_0x285e[124]][_0x285e[2478]]=Math[_0x285e[160]](1,_0x4fa0x4)+_0x285e[168],_0x4fa0x5[_0x285e[124]][_0x285e[2479]]=Math[_0x285e[160]](1,_0x4fa0x3)+_0x285e[168],_0x4fa0x5[_0x285e[124]][_0x285e[117]]=_0x285e[118],_0x4fa0x5[_0x285e[124]][_0x285e[119]]=_0x285e[118]):mxClient[_0x285e[496]]?this[_0x285e[441]][_0x285e[2320]](Math[_0x285e[160]](1,_0x4fa0x4),Math[_0x285e[160]](1,_0x4fa0x3)):(this[_0x285e[441]][_0x285e[510]][_0x285e[124]][_0x285e[2478]]=Math[_0x285e[160]](1,_0x4fa0x4)+_0x285e[168],this[_0x285e[441]][_0x285e[510]][_0x285e[124]][_0x285e[2479]]=Math[_0x285e[160]](1,_0x4fa0x3)+_0x285e[168]);this[_0x285e[2480]](this[_0x285e[2357]],_0x4fa0x4-1,_0x4fa0x3-1)};this[_0x285e[746]]( new mxEventObject(mxEvent.SIZE,_0x285e[1562],_0x4fa0x2))};mxGraph[_0x285e[202]][_0x285e[2477]]=function(_0x4fa0x2,_0x4fa0x3){if(mxClient[_0x285e[80]]){if(mxClient[_0x285e[496]]){var _0x4fa0x4=this[_0x285e[2465]]();_0x4fa0x2+=Math[_0x285e[160]](2,_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]+1);_0x4fa0x3+=Math[_0x285e[160]](2,_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]+1)}else {9<=document[_0x285e[5]]?(_0x4fa0x2+=3,_0x4fa0x3+=5):(_0x4fa0x2+=1,_0x4fa0x3+=1)}}else {_0x4fa0x3+=1};null!=this[_0x285e[2388]]&&(_0x4fa0x2=Math[_0x285e[243]](this[_0x285e[2388]][_0x285e[117]],_0x4fa0x2),_0x4fa0x3=Math[_0x285e[243]](this[_0x285e[2388]][_0x285e[119]],_0x4fa0x3));this[_0x285e[526]][_0x285e[124]][_0x285e[117]]=Math[_0x285e[430]](_0x4fa0x2)+_0x285e[168];this[_0x285e[526]][_0x285e[124]][_0x285e[119]]=Math[_0x285e[430]](_0x4fa0x3)+_0x285e[168]};mxGraph[_0x285e[202]][_0x285e[2480]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[441]][_0x285e[255]],_0x4fa0x9=this[_0x285e[441]][_0x285e[513]],_0x4fa0xa=this[_0x285e[2013]],_0x4fa0x12=_0x4fa0x5*this[_0x285e[2012]],_0x4fa0x9= new mxRectangle(_0x4fa0x5*_0x4fa0x9[_0x285e[235]],_0x4fa0x5*_0x4fa0x9[_0x285e[236]],_0x4fa0xa[_0x285e[117]]*_0x4fa0x12,_0x4fa0xa[_0x285e[119]]*_0x4fa0x12);_0x4fa0x2=_0x4fa0x2&&Math[_0x285e[243]](_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]])>this[_0x285e[2360]];_0x4fa0x9[_0x285e[235]]=mxUtils[_0x285e[1454]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[117]]);_0x4fa0x9[_0x285e[236]]=mxUtils[_0x285e[1454]](_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[119]]);_0x4fa0xa=_0x4fa0x2?Math[_0x285e[430]]((_0x4fa0x3-_0x4fa0x9[_0x285e[235]])/_0x4fa0x9[_0x285e[117]]):0;_0x4fa0x2=_0x4fa0x2?Math[_0x285e[430]]((_0x4fa0x4-_0x4fa0x9[_0x285e[236]])/_0x4fa0x9[_0x285e[119]]):0;null==this[_0x285e[2481]]&&0<_0x4fa0xa&&(this[_0x285e[2481]]=[]);if(null!=this[_0x285e[2481]]){for(_0x4fa0x12=0;_0x4fa0x12<=_0x4fa0xa;_0x4fa0x12++){var _0x4fa0x13=[ new mxPoint(_0x4fa0x9[_0x285e[235]]+_0x4fa0x12*_0x4fa0x9[_0x285e[117]],1), new mxPoint(_0x4fa0x9[_0x285e[235]]+_0x4fa0x12*_0x4fa0x9[_0x285e[117]],_0x4fa0x4)];null!=this[_0x285e[2481]][_0x4fa0x12]?(this[_0x285e[2481]][_0x4fa0x12][_0x285e[255]]=1,this[_0x285e[2481]][_0x4fa0x12][_0x285e[1525]]=_0x4fa0x13,this[_0x285e[2481]][_0x4fa0x12][_0x285e[258]]()):(_0x4fa0x13= new mxPolyline(_0x4fa0x13,this[_0x285e[2358]],this[_0x285e[255]]),_0x4fa0x13[_0x285e[507]]=this[_0x285e[507]],_0x4fa0x13[_0x285e[1522]]=this[_0x285e[2359]],_0x4fa0x13[_0x285e[255]]=_0x4fa0x5,_0x4fa0x13[_0x285e[176]](this[_0x285e[441]][_0x285e[2053]]),_0x4fa0x13[_0x285e[258]](),this[_0x285e[2481]][_0x4fa0x12]=_0x4fa0x13)};for(_0x4fa0x12=_0x4fa0xa;_0x4fa0x12<this[_0x285e[2481]][_0x285e[67]];_0x4fa0x12++){this[_0x285e[2481]][_0x4fa0x12][_0x285e[515]]()};this[_0x285e[2481]][_0x285e[300]](_0x4fa0xa,this[_0x285e[2481]][_0x285e[67]]-_0x4fa0xa)};null==this[_0x285e[2482]]&&0<_0x4fa0x2&&(this[_0x285e[2482]]=[]);if(null!=this[_0x285e[2482]]){for(_0x4fa0x12=0;_0x4fa0x12<=_0x4fa0x2;_0x4fa0x12++){_0x4fa0x13=[ new mxPoint(1,_0x4fa0x9[_0x285e[236]]+_0x4fa0x12*_0x4fa0x9[_0x285e[119]]), new mxPoint(_0x4fa0x3,_0x4fa0x9[_0x285e[236]]+_0x4fa0x12*_0x4fa0x9[_0x285e[119]])],null!=this[_0x285e[2482]][_0x4fa0x12]?(this[_0x285e[2482]][_0x4fa0x12][_0x285e[255]]=1,this[_0x285e[2482]][_0x4fa0x12][_0x285e[1525]]=_0x4fa0x13,this[_0x285e[2482]][_0x4fa0x12][_0x285e[258]]()):(_0x4fa0x13= new mxPolyline(_0x4fa0x13,this[_0x285e[2358]],_0x4fa0x5),_0x4fa0x13[_0x285e[507]]=this[_0x285e[507]],_0x4fa0x13[_0x285e[1522]]=this[_0x285e[2359]],_0x4fa0x13[_0x285e[255]]=_0x4fa0x5,_0x4fa0x13[_0x285e[176]](this[_0x285e[441]][_0x285e[2053]]),_0x4fa0x13[_0x285e[258]](),this[_0x285e[2482]][_0x4fa0x12]=_0x4fa0x13)};for(_0x4fa0x12=_0x4fa0x2;_0x4fa0x12<this[_0x285e[2482]][_0x285e[67]];_0x4fa0x12++){this[_0x285e[2482]][_0x4fa0x12][_0x285e[515]]()};this[_0x285e[2482]][_0x285e[300]](_0x4fa0x2,this[_0x285e[2482]][_0x285e[67]]-_0x4fa0x2)}};mxGraph[_0x285e[202]][_0x285e[1705]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[474]](_0x4fa0x2),_0x4fa0x4=null,_0x4fa0x4=this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)?this[_0x285e[94]][_0x285e[2077]]():this[_0x285e[94]][_0x285e[2076]]();null!=_0x4fa0x3&&(_0x4fa0x4=this[_0x285e[2483]](this[_0x285e[94]][_0x285e[1705]](_0x4fa0x3,_0x4fa0x4)));null==_0x4fa0x4&&(_0x4fa0x4=mxGraph[_0x285e[202]][_0x285e[2346]]);return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[2483]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[mxConstants[_0x285e[2484]]],_0x4fa0x4=this[_0x285e[2485]](_0x4fa0x3);null!=_0x4fa0x4?_0x4fa0x2[mxConstants[_0x285e[2484]]]=_0x4fa0x4:_0x4fa0x4=_0x4fa0x3;null!=_0x4fa0x4&&_0x285e[2486]==_0x4fa0x4[_0x285e[85]](0,11)&&(_0x4fa0x3=_0x4fa0x4[_0x285e[2]](_0x285e[537]),0<_0x4fa0x3&&(_0x4fa0x4=_0x4fa0x4[_0x285e[85]](0,_0x4fa0x3)+_0x285e[2487]+_0x4fa0x4[_0x285e[85]](_0x4fa0x3+1)),_0x4fa0x2[mxConstants[_0x285e[2484]]]=_0x4fa0x4)};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2488]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=_0x4fa0x3||this[_0x285e[897]]();if(null!=_0x4fa0x3){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3[_0x285e[67]];_0x4fa0x4++){this[_0x285e[251]][_0x285e[475]](_0x4fa0x3[_0x4fa0x4],_0x4fa0x2)}}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2489]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=_0x4fa0x4||this[_0x285e[2452]]();this[_0x285e[2490]](_0x4fa0x2,_0x4fa0x3,[_0x4fa0x4])};mxGraph[_0x285e[202]][_0x285e[2490]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;_0x4fa0x4=_0x4fa0x4||this[_0x285e[897]]();if(null!=_0x4fa0x4&&0<_0x4fa0x4[_0x285e[67]]){var _0x4fa0x5=this[_0x285e[441]][_0x285e[248]](_0x4fa0x4[0]),_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x4[0]);null!=_0x4fa0x5&&(_0x4fa0x3=mxUtils[_0x285e[433]](_0x4fa0x5,_0x4fa0x2,_0x4fa0x3)?0:1,this[_0x285e[1717]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4))}};mxGraph[_0x285e[202]][_0x285e[1717]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=_0x4fa0x4||this[_0x285e[897]]();mxUtils[_0x285e[1717]](this[_0x285e[251]],_0x4fa0x4,_0x4fa0x2,_0x4fa0x3)};mxGraph[_0x285e[202]][_0x285e[2491]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[2492]](_0x4fa0x2,_0x4fa0x3,null,_0x4fa0x4)};mxGraph[_0x285e[202]][_0x285e[2492]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5=_0x4fa0x5||this[_0x285e[897]]();if(null!=_0x4fa0x5&&0<_0x4fa0x5[_0x285e[67]]){if(null==_0x4fa0x4){var _0x4fa0x9=this[_0x285e[441]][_0x285e[248]](_0x4fa0x5[0]),_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x5[0]);null!=_0x4fa0x9&&(_0x4fa0x4=(parseInt(_0x4fa0x9[_0x4fa0x2]||0)&_0x4fa0x3)!=_0x4fa0x3)};mxUtils[_0x285e[2492]](this[_0x285e[251]],_0x4fa0x5,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)}};mxGraph[_0x285e[202]][_0x285e[849]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[897]]());if(null!=_0x4fa0x3&&1<_0x4fa0x3[_0x285e[67]]){if(null==_0x4fa0x4){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[1198]](_0x4fa0x3[_0x4fa0x5]);if(null!=_0x4fa0x9&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x3[_0x4fa0x5])){if(null==_0x4fa0x4){if(_0x4fa0x2==mxConstants[_0x285e[479]]){_0x4fa0x4=_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]/2;break}else {if(_0x4fa0x2==mxConstants[_0x285e[480]]){_0x4fa0x4=_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]}else {if(_0x4fa0x2==mxConstants[_0x285e[1687]]){_0x4fa0x4=_0x4fa0x9[_0x285e[236]]}else {if(_0x4fa0x2==mxConstants[_0x285e[481]]){_0x4fa0x4=_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]/2;break}else {_0x4fa0x4=_0x4fa0x2==mxConstants[_0x285e[482]]?_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]:_0x4fa0x9[_0x285e[235]]}}}}}else {_0x4fa0x4=_0x4fa0x2==mxConstants[_0x285e[480]]?Math[_0x285e[160]](_0x4fa0x4,_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]):_0x4fa0x2==mxConstants[_0x285e[1687]]?Math[_0x285e[243]](_0x4fa0x4,_0x4fa0x9[_0x285e[236]]):_0x4fa0x2==mxConstants[_0x285e[482]]?Math[_0x285e[160]](_0x4fa0x4,_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]):Math[_0x285e[243]](_0x4fa0x4,_0x4fa0x9[_0x285e[235]])}}}};if(null!=_0x4fa0x4){this[_0x285e[251]][_0x285e[473]]();try{for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){_0x4fa0x9=this[_0x285e[1198]](_0x4fa0x3[_0x4fa0x5]),null!=_0x4fa0x9&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x3[_0x4fa0x5])&&(_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0x2==mxConstants[_0x285e[479]]?_0x4fa0x9[_0x285e[235]]=_0x4fa0x4-_0x4fa0x9[_0x285e[117]]/2:_0x4fa0x2==mxConstants[_0x285e[480]]?_0x4fa0x9[_0x285e[235]]=_0x4fa0x4-_0x4fa0x9[_0x285e[117]]:_0x4fa0x2==mxConstants[_0x285e[1687]]?_0x4fa0x9[_0x285e[236]]=_0x4fa0x4:_0x4fa0x2==mxConstants[_0x285e[481]]?_0x4fa0x9[_0x285e[236]]=_0x4fa0x4-_0x4fa0x9[_0x285e[119]]/2:_0x4fa0x2==mxConstants[_0x285e[482]]?_0x4fa0x9[_0x285e[236]]=_0x4fa0x4-_0x4fa0x9[_0x285e[119]]:_0x4fa0x9[_0x285e[235]]=_0x4fa0x4,this[_0x285e[251]][_0x285e[1724]](_0x4fa0x3[_0x4fa0x5],_0x4fa0x9))};this[_0x285e[746]]( new mxEventObject(mxEvent.ALIGN_CELLS,_0x285e[611],_0x4fa0x2,_0x285e[895],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()}}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[854]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&null!=this[_0x285e[2356]]){this[_0x285e[251]][_0x285e[473]]();try{var _0x4fa0x3=this[_0x285e[251]][_0x285e[474]](_0x4fa0x2);null==_0x4fa0x3||0==_0x4fa0x3[_0x285e[67]]?this[_0x285e[251]][_0x285e[475]](_0x4fa0x2,this[_0x285e[2356]]):this[_0x285e[251]][_0x285e[475]](_0x4fa0x2,null);this[_0x285e[1809]](_0x4fa0x2);this[_0x285e[746]]( new mxEventObject(mxEvent.FLIP_EDGE,_0x285e[1989],_0x4fa0x2))}finally{this[_0x285e[251]][_0x285e[476]]()}};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2493]]=function(_0x4fa0x2){this[_0x285e[2336]][_0x285e[207]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2494]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<this[_0x285e[2336]][_0x285e[67]];_0x4fa0x4++){this[_0x285e[2336]][_0x4fa0x4]!=_0x4fa0x2&&_0x4fa0x3[_0x285e[207]](this[_0x285e[2336]][_0x4fa0x4])};this[_0x285e[2336]]=_0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2485]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[2336]][_0x285e[67]];_0x4fa0x3++){var _0x4fa0x4=this[_0x285e[2336]][_0x4fa0x3][_0x285e[1202]](_0x4fa0x2);if(null!=_0x4fa0x4){return _0x4fa0x4}}};return null};mxGraph[_0x285e[202]][_0x285e[840]]=function(_0x4fa0x2,_0x4fa0x3){null==_0x4fa0x3&&(_0x4fa0x3=mxUtils[_0x285e[1779]](this[_0x285e[897]](),!0));this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[841]](_0x4fa0x3,_0x4fa0x2),this[_0x285e[746]]( new mxEventObject(mxEvent.ORDER_CELLS,_0x285e[2495],_0x4fa0x2,_0x285e[895],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[841]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x4]);_0x4fa0x3?this[_0x285e[251]][_0x285e[99]](_0x4fa0x5,_0x4fa0x2[_0x4fa0x4],_0x4fa0x4):this[_0x285e[251]][_0x285e[99]](_0x4fa0x5,_0x4fa0x2[_0x4fa0x4],this[_0x285e[251]][_0x285e[262]](_0x4fa0x5)-1)};this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_ORDERED,_0x285e[2495],_0x4fa0x3,_0x285e[895],_0x4fa0x2))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[844]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null==_0x4fa0x4&&(_0x4fa0x4=mxUtils[_0x285e[1779]](this[_0x285e[897]](),!0));_0x4fa0x4=this[_0x285e[2496]](_0x4fa0x4);null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[2497]](_0x4fa0x4));var _0x4fa0x5=this[_0x285e[2498]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x3);if(0<_0x4fa0x4[_0x285e[67]]&&null!=_0x4fa0x5){var _0x4fa0x9=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2);null==_0x4fa0x9&&(_0x4fa0x9=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x4[0]));this[_0x285e[251]][_0x285e[473]]();try{null==this[_0x285e[1198]](_0x4fa0x2)&&this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2, new mxGeometry);var _0x4fa0xa=this[_0x285e[251]][_0x285e[262]](_0x4fa0x9);this[_0x285e[833]]([_0x4fa0x2],_0x4fa0x9,_0x4fa0xa,null,null,!1);_0x4fa0xa=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2);this[_0x285e[833]](_0x4fa0x4,_0x4fa0x2,_0x4fa0xa,null,null,!1,!1);this[_0x285e[835]](_0x4fa0x4,-_0x4fa0x5[_0x285e[235]],-_0x4fa0x5[_0x285e[236]],!1,!0);this[_0x285e[837]]([_0x4fa0x2],[_0x4fa0x5]);this[_0x285e[746]]( new mxEventObject(mxEvent.GROUP_CELLS,_0x285e[1504],_0x4fa0x2,_0x285e[467],_0x4fa0x3,_0x285e[895],_0x4fa0x4))}finally{this[_0x285e[251]][_0x285e[476]]()}};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2496]]=function(_0x4fa0x2){var _0x4fa0x3=[];if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){var _0x4fa0x4=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[0]);_0x4fa0x3[_0x285e[207]](_0x4fa0x2[0]);for(var _0x4fa0x5=1;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x5])==_0x4fa0x4&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x5])}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2498]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=this[_0x285e[1729]](_0x4fa0x3);null!=_0x4fa0x3&&(this[_0x285e[1730]](_0x4fa0x2)&&(_0x4fa0x2=this[_0x285e[1731]](_0x4fa0x2),_0x4fa0x3[_0x285e[235]]-=_0x4fa0x2[_0x285e[117]],_0x4fa0x3[_0x285e[236]]-=_0x4fa0x2[_0x285e[119]],_0x4fa0x3[_0x285e[117]]+=_0x4fa0x2[_0x285e[117]],_0x4fa0x3[_0x285e[119]]+=_0x4fa0x2[_0x285e[119]]),_0x4fa0x3[_0x285e[235]]-=_0x4fa0x4,_0x4fa0x3[_0x285e[236]]-=_0x4fa0x4,_0x4fa0x3[_0x285e[117]]+=2*_0x4fa0x4,_0x4fa0x3[_0x285e[119]]+=2*_0x4fa0x4);return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2497]]=function(_0x4fa0x2){_0x4fa0x2= new mxCell(_0x285e[110]);_0x4fa0x2[_0x285e[1993]](!0);_0x4fa0x2[_0x285e[1995]](!1);return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[845]]=function(_0x4fa0x2){var _0x4fa0x3=[];if(null==_0x4fa0x2){_0x4fa0x2=this[_0x285e[897]]();for(var _0x4fa0x4=[],_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){0<this[_0x285e[251]][_0x285e[262]](_0x4fa0x2[_0x4fa0x5])&&_0x4fa0x4[_0x285e[207]](_0x4fa0x2[_0x4fa0x5])};_0x4fa0x2=_0x4fa0x4};if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){this[_0x285e[251]][_0x285e[473]]();try{for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0x9&&0<_0x4fa0x9[_0x285e[67]]){var _0x4fa0x9=_0x4fa0x9[_0x285e[1853]](),_0x4fa0xa=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x5]),_0x4fa0x12=this[_0x285e[251]][_0x285e[262]](_0x4fa0xa);this[_0x285e[833]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,null,null,!0);_0x4fa0x3=_0x4fa0x3[_0x285e[1919]](_0x4fa0x9)}};this[_0x285e[843]](this[_0x285e[2499]](_0x4fa0x2));this[_0x285e[746]]( new mxEventObject(mxEvent.UNGROUP_CELLS,_0x285e[895],_0x4fa0x2))}finally{this[_0x285e[251]][_0x285e[476]]()}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[846]]=function(_0x4fa0x2){null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[897]]());this[_0x285e[251]][_0x285e[473]]();try{var _0x4fa0x3=this[_0x285e[902]](),_0x4fa0x4=this[_0x285e[251]][_0x285e[262]](_0x4fa0x3);this[_0x285e[833]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,null,null,!0);this[_0x285e[746]]( new mxEventObject(mxEvent.REMOVE_CELLS_FROM_PARENT,_0x285e[895],_0x4fa0x2))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[1917]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[897]]());_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:0;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[1198]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0x9){var _0x4fa0xa=this[_0x285e[1955]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0xa&&0<_0x4fa0xa[_0x285e[67]]){var _0x4fa0x12=this[_0x285e[1729]](_0x4fa0xa);if(0<_0x4fa0x12[_0x285e[117]]&&0<_0x4fa0x12[_0x285e[119]]){var _0x4fa0x13=this[_0x285e[1730]](_0x4fa0x2[_0x4fa0x5])?this[_0x285e[1731]](_0x4fa0x2[_0x4fa0x5]): new mxRectangle,_0x4fa0x9=_0x4fa0x9[_0x285e[238]]();_0x4fa0x4&&(_0x4fa0x9[_0x285e[235]]+=_0x4fa0x12[_0x285e[235]]-_0x4fa0x13[_0x285e[117]]-_0x4fa0x3,_0x4fa0x9[_0x285e[236]]+=_0x4fa0x12[_0x285e[236]]-_0x4fa0x13[_0x285e[119]]-_0x4fa0x3);_0x4fa0x9[_0x285e[117]]=_0x4fa0x12[_0x285e[117]]+_0x4fa0x13[_0x285e[117]]+2*_0x4fa0x3;_0x4fa0x9[_0x285e[119]]=_0x4fa0x12[_0x285e[119]]+_0x4fa0x13[_0x285e[119]]+2*_0x4fa0x3;this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2[_0x4fa0x5],_0x4fa0x9);this[_0x285e[834]](_0x4fa0xa,-_0x4fa0x12[_0x285e[235]]+_0x4fa0x13[_0x285e[117]]+_0x4fa0x3,-_0x4fa0x12[_0x285e[236]]+_0x4fa0x13[_0x285e[119]]+_0x4fa0x3)}}}}}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[899]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;var _0x4fa0x4=null;if(null!=_0x4fa0x2){for(var _0x4fa0x5={},_0x4fa0x4=[],_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x4fa0x9]);_0x4fa0x5[_0x4fa0xa]=_0x4fa0x2[_0x4fa0x9];_0x4fa0x4[_0x285e[207]](_0x4fa0x2[_0x4fa0x9])};if(0<_0x4fa0x4[_0x285e[67]]){for(var _0x4fa0xa=this[_0x285e[441]][_0x285e[255]],_0x4fa0x12=this[_0x285e[441]][_0x285e[513]],_0x4fa0x4=this[_0x285e[251]][_0x285e[899]](_0x4fa0x2,!0),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){if(!_0x4fa0x3&&this[_0x285e[251]][_0x285e[250]](_0x4fa0x4[_0x4fa0x9])&&null!=this[_0x285e[2500]](_0x4fa0x4[_0x4fa0x9],this[_0x285e[251]][_0x285e[1709]](_0x4fa0x4[_0x4fa0x9],!0),this[_0x285e[251]][_0x285e[1709]](_0x4fa0x4[_0x4fa0x9],!1))){_0x4fa0x4[_0x4fa0x9]=null}else {var _0x4fa0x13=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x4[_0x4fa0x9]);if(null!=_0x4fa0x13){var _0x4fa0x14=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x4fa0x9]),_0x4fa0x15=this[_0x285e[441]][_0x285e[248]](this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x9]));if(null!=_0x4fa0x14&&null!=_0x4fa0x15){var _0x4fa0x16=_0x4fa0x15[_0x285e[2078]][_0x285e[235]],_0x4fa0x15=_0x4fa0x15[_0x285e[2078]][_0x285e[236]];if(this[_0x285e[251]][_0x285e[250]](_0x4fa0x4[_0x4fa0x9])){for(var _0x4fa0x14=_0x4fa0x14[_0x285e[439]],_0x4fa0x17=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x4fa0x9],!0),_0x4fa0x18=mxCellPath[_0x285e[385]](_0x4fa0x17);null!=_0x4fa0x17&&null==_0x4fa0x5[_0x4fa0x18];){_0x4fa0x17=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x17),_0x4fa0x18=mxCellPath[_0x285e[385]](_0x4fa0x17)};null==_0x4fa0x17&&_0x4fa0x13[_0x285e[2007]]( new mxPoint(_0x4fa0x14[0][_0x285e[235]]/_0x4fa0xa-_0x4fa0x12[_0x285e[235]],_0x4fa0x14[0][_0x285e[236]]/_0x4fa0xa-_0x4fa0x12[_0x285e[236]]),!0);_0x4fa0x17=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x4fa0x9],!1);for(_0x4fa0x18=mxCellPath[_0x285e[385]](_0x4fa0x17);null!=_0x4fa0x17&&null==_0x4fa0x5[_0x4fa0x18];){_0x4fa0x17=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x17),_0x4fa0x18=mxCellPath[_0x285e[385]](_0x4fa0x17)};null==_0x4fa0x17&&(_0x4fa0x17=_0x4fa0x14[_0x285e[67]]-1,_0x4fa0x13[_0x285e[2007]]( new mxPoint(_0x4fa0x14[_0x4fa0x17][_0x285e[235]]/_0x4fa0xa-_0x4fa0x12[_0x285e[235]],_0x4fa0x14[_0x4fa0x17][_0x285e[236]]/_0x4fa0xa-_0x4fa0x12[_0x285e[236]]),!1));_0x4fa0x13=_0x4fa0x13[_0x285e[1525]];if(null!=_0x4fa0x13){for(_0x4fa0x14=0;_0x4fa0x14<_0x4fa0x13[_0x285e[67]];_0x4fa0x14++){_0x4fa0x13[_0x4fa0x14][_0x285e[235]]+=_0x4fa0x16,_0x4fa0x13[_0x4fa0x14][_0x285e[236]]+=_0x4fa0x15}}}else {_0x4fa0x13[_0x285e[235]]+=_0x4fa0x16,_0x4fa0x13[_0x285e[236]]+=_0x4fa0x15}}}}}}else {_0x4fa0x4=[]}};return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[2501]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){_0x4fa0x3=this[_0x285e[2502]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14);return this[_0x285e[2103]](_0x4fa0x3,_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2502]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){_0x4fa0x2= new mxGeometry(_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12);_0x4fa0x2[_0x285e[1500]]=null!=_0x4fa0x14?_0x4fa0x14:!1;_0x4fa0x4= new mxCell(_0x4fa0x4,_0x4fa0x2,_0x4fa0x13);_0x4fa0x4[_0x285e[1945]](_0x4fa0x3);_0x4fa0x4[_0x285e[1993]](!0);_0x4fa0x4[_0x285e[1995]](!0);return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[1960]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x3=this[_0x285e[2503]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);return this[_0x285e[2504]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x5,_0x4fa0x9)};mxGraph[_0x285e[202]][_0x285e[2503]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x2= new mxCell(_0x4fa0x4, new mxGeometry,_0x4fa0xa);_0x4fa0x2[_0x285e[1945]](_0x4fa0x3);_0x4fa0x2[_0x285e[1994]](!0);_0x4fa0x2[_0x285e[256]][_0x285e[1500]]= !0;return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2504]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return this[_0x285e[2103]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0x4,_0x4fa0x5)};mxGraph[_0x285e[202]][_0x285e[2103]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return this[_0x285e[832]]([_0x4fa0x2],_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)[0]};mxGraph[_0x285e[202]][_0x285e[832]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[902]]());null==_0x4fa0x4&&(_0x4fa0x4=this[_0x285e[251]][_0x285e[262]](_0x4fa0x3));this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[833]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,!1,!0),this[_0x285e[746]]( new mxEventObject(mxEvent.ADD_CELLS,_0x285e[895],_0x4fa0x2,_0x285e[1101],_0x4fa0x3,_0x285e[1983],_0x4fa0x4,_0x285e[1097],_0x4fa0x5,_0x285e[772],_0x4fa0x9))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[833]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){if(null!=_0x4fa0x2&&null!=_0x4fa0x3&&null!=_0x4fa0x4){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x13=_0x4fa0xa?this[_0x285e[441]][_0x285e[248]](_0x4fa0x3):null,_0x4fa0x14=null!=_0x4fa0x13?_0x4fa0x13[_0x285e[2078]]:null,_0x4fa0x15= new mxPoint(0,0),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x2[_0x285e[67]];_0x4fa0x13++){if(null==_0x4fa0x2[_0x4fa0x13]){_0x4fa0x4--}else {var _0x4fa0x16=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x13]);if(null!=_0x4fa0x14&&_0x4fa0x2[_0x4fa0x13]!=_0x4fa0x3&&_0x4fa0x3!=_0x4fa0x16){var _0x4fa0x17=this[_0x285e[441]][_0x285e[248]](_0x4fa0x16),_0x4fa0x18=null!=_0x4fa0x17?_0x4fa0x17[_0x285e[2078]]:_0x4fa0x15,_0x4fa0x19=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2[_0x4fa0x13]);if(null!=_0x4fa0x19){var _0x4fa0x1a=_0x4fa0x18[_0x285e[235]]-_0x4fa0x14[_0x285e[235]],_0x4fa0x1b=_0x4fa0x18[_0x285e[236]]-_0x4fa0x14[_0x285e[236]],_0x4fa0x19=_0x4fa0x19[_0x285e[238]]();_0x4fa0x19[_0x285e[513]](_0x4fa0x1a,_0x4fa0x1b);!_0x4fa0x19[_0x285e[1500]]&&(this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2[_0x4fa0x13])&&!this[_0x285e[2505]]())&&(_0x4fa0x19[_0x285e[235]]=Math[_0x285e[160]](0,_0x4fa0x19[_0x285e[235]]),_0x4fa0x19[_0x285e[236]]=Math[_0x285e[160]](0,_0x4fa0x19[_0x285e[236]]));this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2[_0x4fa0x13],_0x4fa0x19)}};_0x4fa0x3==_0x4fa0x16&&_0x4fa0x4+_0x4fa0x13>this[_0x285e[251]][_0x285e[262]](_0x4fa0x3)&&_0x4fa0x4--;this[_0x285e[251]][_0x285e[99]](_0x4fa0x3,_0x4fa0x2[_0x4fa0x13],_0x4fa0x4+_0x4fa0x13);this[_0x285e[2506]]()&&this[_0x285e[2507]](_0x4fa0x2[_0x4fa0x13])&&this[_0x285e[2508]](_0x4fa0x2[_0x4fa0x13]);(null==_0x4fa0x12||_0x4fa0x12)&&this[_0x285e[2509]](_0x4fa0x2[_0x4fa0x13]);null!=_0x4fa0x5&&this[_0x285e[852]](_0x4fa0x2[_0x4fa0x13],_0x4fa0x5,!0);null!=_0x4fa0x9&&this[_0x285e[852]](_0x4fa0x2[_0x4fa0x13],_0x4fa0x9,!1)}};this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_ADDED,_0x285e[895],_0x4fa0x2,_0x285e[1101],_0x4fa0x3,_0x285e[1983],_0x4fa0x4,_0x285e[1097],_0x4fa0x5,_0x285e[772],_0x4fa0x9,_0x285e[492],_0x4fa0xa))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[842]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[2510]](this[_0x285e[897]]()));_0x4fa0x3&&(_0x4fa0x2=this[_0x285e[2510]](this[_0x285e[2499]](_0x4fa0x2)));this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[843]](_0x4fa0x2),this[_0x285e[746]]( new mxEventObject(mxEvent.REMOVE_CELLS,_0x285e[895],_0x4fa0x2,_0x285e[2511],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[843]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){var _0x4fa0x3=this[_0x285e[441]][_0x285e[255]],_0x4fa0x4=this[_0x285e[441]][_0x285e[513]];this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x5={},_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x4fa0x9]);_0x4fa0x5[_0x4fa0xa]=_0x4fa0x2[_0x4fa0x9]};for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){for(var _0x4fa0x12=this[_0x285e[1756]](_0x4fa0x2[_0x4fa0x9]),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x12[_0x285e[67]];_0x4fa0x13++){if(_0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x12[_0x4fa0x13]),null==_0x4fa0x5[_0x4fa0xa]){var _0x4fa0x14=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x12[_0x4fa0x13]);if(null!=_0x4fa0x14){var _0x4fa0x15=this[_0x285e[441]][_0x285e[248]](_0x4fa0x12[_0x4fa0x13]);if(null!=_0x4fa0x15){var _0x4fa0x14=_0x4fa0x14[_0x285e[238]](),_0x4fa0x16=_0x4fa0x15[_0x285e[1710]](!0)==_0x4fa0x2[_0x4fa0x9],_0x4fa0x17=_0x4fa0x15[_0x285e[439]],_0x4fa0x18=_0x4fa0x16?0:_0x4fa0x17[_0x285e[67]]-1;_0x4fa0x14[_0x285e[2007]]( new mxPoint(_0x4fa0x17[_0x4fa0x18][_0x285e[235]]/_0x4fa0x3-_0x4fa0x4[_0x285e[235]],_0x4fa0x17[_0x4fa0x18][_0x285e[236]]/_0x4fa0x3-_0x4fa0x4[_0x285e[236]]),_0x4fa0x16);this[_0x285e[251]][_0x285e[1957]](_0x4fa0x12[_0x4fa0x13],null,_0x4fa0x16);this[_0x285e[251]][_0x285e[1724]](_0x4fa0x12[_0x4fa0x13],_0x4fa0x14)}}}};this[_0x285e[251]][_0x285e[205]](_0x4fa0x2[_0x4fa0x9])};this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_REMOVED,_0x285e[895],_0x4fa0x2))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[853]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=_0x4fa0x5||0;_0x4fa0x9=_0x4fa0x9||0;null==_0x4fa0x4&&(_0x4fa0x4=this[_0x285e[899]]([_0x4fa0x2])[0]);var _0x4fa0xa=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2),_0x4fa0x12=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!0);this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[835]](_0x4fa0x3,_0x4fa0x5,_0x4fa0x9,!1,!1),this[_0x285e[833]](_0x4fa0x3,_0x4fa0xa,this[_0x285e[251]][_0x285e[262]](_0x4fa0xa),null,null,!0),this[_0x285e[833]]([_0x4fa0x4],_0x4fa0xa,this[_0x285e[251]][_0x285e[262]](_0x4fa0xa),_0x4fa0x12,_0x4fa0x3[0],!1),this[_0x285e[852]](_0x4fa0x2,_0x4fa0x3[0],!0),this[_0x285e[746]]( new mxEventObject(mxEvent.SPLIT_EDGE,_0x285e[1989],_0x4fa0x2,_0x285e[895],_0x4fa0x3,_0x285e[2512],_0x4fa0x4,_0x285e[1126],_0x4fa0x5,_0x285e[1125],_0x4fa0x9))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[838]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[897]]());_0x4fa0x4&&(_0x4fa0x3=this[_0x285e[2499]](_0x4fa0x3));this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[839]](_0x4fa0x3,_0x4fa0x2),this[_0x285e[746]]( new mxEventObject(mxEvent.TOGGLE_CELLS,_0x285e[539],_0x4fa0x2,_0x285e[895],_0x4fa0x3,_0x285e[2511],_0x4fa0x4))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[839]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){this[_0x285e[251]][_0x285e[175]](_0x4fa0x2[_0x4fa0x4],_0x4fa0x3)}}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[847]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;null==_0x4fa0x4&&(_0x4fa0x4=this[_0x285e[2513]](this[_0x285e[897]](),_0x4fa0x2));this[_0x285e[2126]](!1);this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[848]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x3,_0x4fa0x5),this[_0x285e[746]]( new mxEventObject(mxEvent.FOLD_CELLS,_0x285e[2514],_0x4fa0x2,_0x285e[2515],_0x4fa0x3,_0x285e[895],_0x4fa0x4))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[848]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){if((!_0x4fa0x5||this[_0x285e[2516]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x3))&&_0x4fa0x3!=this[_0x285e[1742]](_0x4fa0x2[_0x4fa0x9])){if(this[_0x285e[251]][_0x285e[1972]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x3),this[_0x285e[2517]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x3),this[_0x285e[2507]](_0x4fa0x2[_0x4fa0x9])&&this[_0x285e[2508]](_0x4fa0x2[_0x4fa0x9]),_0x4fa0x4){var _0x4fa0xa=this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2[_0x4fa0x9]);this[_0x285e[847]](_0x4fa0xa,_0x4fa0x3,_0x4fa0x4)}}};this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_FOLDED,_0x285e[895],_0x4fa0x2,_0x285e[2514],_0x4fa0x3,_0x285e[2515],_0x4fa0x4))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2517]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2){var _0x4fa0x4=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2);null!=_0x4fa0x4&&(_0x4fa0x4=_0x4fa0x4[_0x285e[238]](),this[_0x285e[2518]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x3),_0x4fa0x4[_0x285e[2005]](),this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2,_0x4fa0x4))}};mxGraph[_0x285e[202]][_0x285e[2518]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){_0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);if(null==_0x4fa0x3[_0x285e[2002]]){var _0x4fa0x5=_0x4fa0x3;this[_0x285e[2394]]&&(_0x4fa0x2=this[_0x285e[2519]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x5=_0x4fa0x2,_0x4fa0x2=mxUtils[_0x285e[433]](_0x4fa0x4,mxConstants.STYLE_STARTSIZE),0<_0x4fa0x2&&(_0x4fa0x5[_0x285e[119]]=Math[_0x285e[160]](_0x4fa0x5[_0x285e[119]],_0x4fa0x2))));_0x4fa0x3[_0x285e[2002]]= new mxRectangle(0,0,_0x4fa0x5[_0x285e[117]],_0x4fa0x5[_0x285e[119]])};if(null!=_0x4fa0x3[_0x285e[2002]]){_0x4fa0x3[_0x285e[2002]][_0x285e[235]]=_0x4fa0x3[_0x285e[235]];_0x4fa0x3[_0x285e[2002]][_0x285e[236]]=_0x4fa0x3[_0x285e[236]];var _0x4fa0x9=mxUtils[_0x285e[431]](_0x4fa0x4[mxConstants[_0x285e[2278]]]||_0x285e[468]);0!=_0x4fa0x9&&(_0x4fa0x2=_0x4fa0x3[_0x285e[2002]][_0x285e[241]]()-_0x4fa0x3[_0x285e[241]](),_0x4fa0x4=_0x4fa0x3[_0x285e[2002]][_0x285e[242]]()-_0x4fa0x3[_0x285e[242]](),_0x4fa0x5=Math[_0x285e[426]](_0x4fa0x9),_0x4fa0x9=Math[_0x285e[427]](_0x4fa0x9),_0x4fa0x3[_0x285e[2002]][_0x285e[235]]+=_0x4fa0x5*_0x4fa0x2-_0x4fa0x9*_0x4fa0x4-_0x4fa0x2,_0x4fa0x3[_0x285e[2002]][_0x285e[236]]+=_0x4fa0x9*_0x4fa0x2+_0x4fa0x5*_0x4fa0x4-_0x4fa0x4)}}};mxGraph[_0x285e[202]][_0x285e[2499]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[1853]]();return _0x4fa0x3=_0x4fa0x3[_0x285e[1919]](this[_0x285e[2520]](_0x4fa0x2))};mxGraph[_0x285e[202]][_0x285e[2520]]=function(_0x4fa0x2){var _0x4fa0x3=[];if(null!=_0x4fa0x2){for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){for(var _0x4fa0x5=this[_0x285e[251]][_0x285e[1707]](_0x4fa0x2[_0x4fa0x4]),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){_0x4fa0x3[_0x285e[207]](this[_0x285e[251]][_0x285e[1708]](_0x4fa0x2[_0x4fa0x4],_0x4fa0x9))};_0x4fa0x5=this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2[_0x4fa0x4]);_0x4fa0x3=_0x4fa0x3[_0x285e[1919]](this[_0x285e[2520]](_0x4fa0x5))}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[858]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[2457]](_0x4fa0x2,_0x4fa0x3),this[_0x285e[746]]( new mxEventObject(mxEvent.UPDATE_CELL_SIZE,_0x285e[246],_0x4fa0x2,_0x285e[2521],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2457]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2){this[_0x285e[251]][_0x285e[473]]();try{var _0x4fa0x4=this[_0x285e[2519]](_0x4fa0x2),_0x4fa0x5=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x4&&null!=_0x4fa0x5){var _0x4fa0x9=this[_0x285e[1742]](_0x4fa0x2),_0x4fa0x5=_0x4fa0x5[_0x285e[238]]();if(this[_0x285e[1730]](_0x4fa0x2)){var _0x4fa0xa=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x12=null!=_0x4fa0xa?_0x4fa0xa[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2),_0x4fa0x13=this[_0x285e[251]][_0x285e[474]](_0x4fa0x2);null==_0x4fa0x13&&(_0x4fa0x13=_0x285e[110]);mxUtils[_0x285e[433]](_0x4fa0x12,mxConstants.STYLE_HORIZONTAL,!0)?(_0x4fa0x13=mxUtils[_0x285e[475]](_0x4fa0x13,mxConstants.STYLE_STARTSIZE,_0x4fa0x4[_0x285e[119]]+8),_0x4fa0x9&&(_0x4fa0x5[_0x285e[119]]=_0x4fa0x4[_0x285e[119]]+8),_0x4fa0x5[_0x285e[117]]=_0x4fa0x4[_0x285e[117]]):(_0x4fa0x13=mxUtils[_0x285e[475]](_0x4fa0x13,mxConstants.STYLE_STARTSIZE,_0x4fa0x4[_0x285e[117]]+8),_0x4fa0x9&&(_0x4fa0x5[_0x285e[117]]=_0x4fa0x4[_0x285e[117]]+8),_0x4fa0x5[_0x285e[119]]=_0x4fa0x4[_0x285e[119]]);this[_0x285e[251]][_0x285e[475]](_0x4fa0x2,_0x4fa0x13)}else {_0x4fa0x5[_0x285e[117]]=_0x4fa0x4[_0x285e[117]],_0x4fa0x5[_0x285e[119]]=_0x4fa0x4[_0x285e[119]]};if(!_0x4fa0x3&& !_0x4fa0x9){var _0x4fa0x14=this[_0x285e[441]][_0x285e[1799]](this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2));if(null!=_0x4fa0x14){var _0x4fa0x15=this[_0x285e[441]][_0x285e[513]],_0x4fa0x16=this[_0x285e[441]][_0x285e[255]],_0x4fa0x17=(_0x4fa0x14[_0x285e[236]]+_0x4fa0x14[_0x285e[119]])/_0x4fa0x16-_0x4fa0x5[_0x285e[236]]-_0x4fa0x15[_0x285e[236]];_0x4fa0x5[_0x285e[117]]=Math[_0x285e[160]](_0x4fa0x5[_0x285e[117]],(_0x4fa0x14[_0x285e[235]]+_0x4fa0x14[_0x285e[117]])/_0x4fa0x16-_0x4fa0x5[_0x285e[235]]-_0x4fa0x15[_0x285e[235]]);_0x4fa0x5[_0x285e[119]]=Math[_0x285e[160]](_0x4fa0x5[_0x285e[119]],_0x4fa0x17)}};this[_0x285e[837]]([_0x4fa0x2],[_0x4fa0x5])}}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2519]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2){var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x5=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);if(null!=_0x4fa0x5&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)){var _0x4fa0x9=_0x4fa0x5[mxConstants[_0x285e[2185]]]||mxConstants[_0x285e[483]],_0x4fa0xa=0,_0x4fa0x3=0;if((null!=this[_0x285e[1202]](_0x4fa0x4)||null!=_0x4fa0x5[mxConstants[_0x285e[2484]]])&&_0x4fa0x5[mxConstants[_0x285e[2059]]]==mxConstants[_0x285e[2522]]){_0x4fa0x5[mxConstants[_0x285e[2063]]]==mxConstants[_0x285e[481]]&&(_0x4fa0xa+=parseFloat(_0x4fa0x5[mxConstants[_0x285e[2523]]])||mxLabel[_0x285e[202]][_0x285e[1680]]),_0x4fa0x5[mxConstants[_0x285e[2064]]]!=mxConstants[_0x285e[479]]&&(_0x4fa0x3+=parseFloat(_0x4fa0x5[mxConstants[_0x285e[2524]]])||mxLabel[_0x285e[202]][_0x285e[1680]])};_0x4fa0xa+=2*(_0x4fa0x5[mxConstants[_0x285e[2143]]]||0);_0x4fa0xa+=_0x4fa0x5[mxConstants[_0x285e[2147]]]||0;_0x4fa0xa+=_0x4fa0x5[mxConstants[_0x285e[2145]]]||0;_0x4fa0x3+=2*(_0x4fa0x5[mxConstants[_0x285e[2143]]]||0);_0x4fa0x3+=_0x4fa0x5[mxConstants[_0x285e[2144]]]||0;_0x4fa0x3+=_0x4fa0x5[mxConstants[_0x285e[2146]]]||0;_0x4fa0x4=this[_0x285e[2205]](_0x4fa0x4);null!=_0x4fa0x4&&(_0x4fa0xa+=_0x4fa0x4[_0x285e[117]]+8);_0x4fa0x4=this[_0x285e[2183]](_0x4fa0x2);null!=_0x4fa0x4&&0<_0x4fa0x4[_0x285e[67]]?(this[_0x285e[2186]](_0x4fa0x2)||(_0x4fa0x4=_0x4fa0x4[_0x285e[230]](/\n/g,_0x285e[545])),_0x4fa0x9=mxUtils[_0x285e[2525]](_0x4fa0x4,_0x4fa0x9,_0x4fa0x5[mxConstants[_0x285e[2188]]]),_0x4fa0x2=_0x4fa0x9[_0x285e[117]]+_0x4fa0xa,_0x4fa0x3=_0x4fa0x9[_0x285e[119]]+_0x4fa0x3,mxUtils[_0x285e[433]](_0x4fa0x5,mxConstants.STYLE_HORIZONTAL,!0)||(_0x4fa0x5=_0x4fa0x3,_0x4fa0x3=_0x4fa0x2,_0x4fa0x2=_0x4fa0x5),this[_0x285e[991]]&&(_0x4fa0x2=this[_0x285e[1021]](_0x4fa0x2+this[_0x285e[1020]]/2),_0x4fa0x3=this[_0x285e[1021]](_0x4fa0x3+this[_0x285e[1020]]/2)),_0x4fa0x3= new mxRectangle(0,0,_0x4fa0x2,_0x4fa0x3)):(_0x4fa0x5=4*this[_0x285e[1020]],_0x4fa0x3= new mxRectangle(0,0,_0x4fa0x5,_0x4fa0x5))}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2216]]=function(_0x4fa0x2,_0x4fa0x3){if(0.2<Math[_0x285e[425]](1-_0x4fa0x3[_0x285e[255]])){var _0x4fa0x4=this[_0x285e[441]][_0x285e[255]],_0x4fa0x5=this[_0x285e[441]][_0x285e[513]],_0x4fa0x9=_0x4fa0x2[_0x285e[117]]*_0x4fa0x3[_0x285e[255]],_0x4fa0xa=_0x4fa0x2[_0x285e[119]]*_0x4fa0x3[_0x285e[255]],_0x4fa0x12=_0x4fa0x2[_0x285e[236]]-(_0x4fa0xa-_0x4fa0x2[_0x285e[119]])/2,_0x4fa0x4= new mxRectangle(this[_0x285e[1021]]((_0x4fa0x2[_0x285e[235]]-(_0x4fa0x9-_0x4fa0x2[_0x285e[117]])/2)/_0x4fa0x4)-_0x4fa0x5[_0x285e[235]],this[_0x285e[1021]](_0x4fa0x12/_0x4fa0x4)-_0x4fa0x5[_0x285e[236]],this[_0x285e[1021]](_0x4fa0x9/_0x4fa0x4),this[_0x285e[1021]](_0x4fa0xa/_0x4fa0x4));this[_0x285e[2526]](_0x4fa0x2[_0x285e[246]],_0x4fa0x4)}};mxGraph[_0x285e[202]][_0x285e[2526]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[836]]([_0x4fa0x2],[_0x4fa0x3])[0]};mxGraph[_0x285e[202]][_0x285e[836]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[251]][_0x285e[473]]();try{this[_0x285e[837]](_0x4fa0x2,_0x4fa0x3),this[_0x285e[746]]( new mxEventObject(mxEvent.RESIZE_CELLS,_0x285e[895],_0x4fa0x2,_0x285e[1562],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[837]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[67]]==_0x4fa0x3[_0x285e[67]]){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=_0x4fa0x3[_0x4fa0x4],_0x4fa0x9=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2[_0x4fa0x4]);if(null!=_0x4fa0x9&&(_0x4fa0x9[_0x285e[235]]!=_0x4fa0x5[_0x285e[235]]||_0x4fa0x9[_0x285e[236]]!=_0x4fa0x5[_0x285e[236]]||_0x4fa0x9[_0x285e[117]]!=_0x4fa0x5[_0x285e[117]]||_0x4fa0x9[_0x285e[119]]!=_0x4fa0x5[_0x285e[119]])){_0x4fa0x9=_0x4fa0x9[_0x285e[238]]();if(_0x4fa0x9[_0x285e[1500]]){var _0x4fa0xa=_0x4fa0x9[_0x285e[1368]];null!=_0x4fa0xa&&(_0x4fa0xa[_0x285e[235]]+=_0x4fa0x5[_0x285e[235]]-_0x4fa0x9[_0x285e[235]],_0x4fa0xa[_0x285e[236]]+=_0x4fa0x5[_0x285e[236]]-_0x4fa0x9[_0x285e[236]])}else {_0x4fa0x9[_0x285e[235]]=_0x4fa0x5[_0x285e[235]],_0x4fa0x9[_0x285e[236]]=_0x4fa0x5[_0x285e[236]]};_0x4fa0x9[_0x285e[117]]=_0x4fa0x5[_0x285e[117]];_0x4fa0x9[_0x285e[119]]=_0x4fa0x5[_0x285e[119]];!_0x4fa0x9[_0x285e[1500]]&&(this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2[_0x4fa0x4])&&!this[_0x285e[2505]]())&&(_0x4fa0x9[_0x285e[235]]=Math[_0x285e[160]](0,_0x4fa0x9[_0x285e[235]]),_0x4fa0x9[_0x285e[236]]=Math[_0x285e[160]](0,_0x4fa0x9[_0x285e[236]]));this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2[_0x4fa0x4],_0x4fa0x9);this[_0x285e[2507]](_0x4fa0x2[_0x4fa0x4])&&this[_0x285e[2508]](_0x4fa0x2[_0x4fa0x4])}};this[_0x285e[2399]]&&this[_0x285e[1750]](_0x4fa0x2);this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_RESIZED,_0x285e[895],_0x4fa0x2,_0x285e[1562],_0x4fa0x3))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2508]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2),_0x4fa0x4=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x3);if(null!=_0x4fa0x3&&(null!=_0x4fa0x4&&!this[_0x285e[1742]](_0x4fa0x3))&&(_0x4fa0x2=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x4[_0x285e[117]]<_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]||_0x4fa0x4[_0x285e[119]]<_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]))){_0x4fa0x4=_0x4fa0x4[_0x285e[238]](),_0x4fa0x4[_0x285e[117]]=Math[_0x285e[160]](_0x4fa0x4[_0x285e[117]],_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]),_0x4fa0x4[_0x285e[119]]=Math[_0x285e[160]](_0x4fa0x4[_0x285e[119]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]),this[_0x285e[837]]([_0x4fa0x3],[_0x4fa0x4])}}};mxGraph[_0x285e[202]][_0x285e[903]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return this[_0x285e[834]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,!0,_0x4fa0x5,_0x4fa0x9)};mxGraph[_0x285e[202]][_0x285e[834]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:0;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!1;if(null!=_0x4fa0x2&&(0!=_0x4fa0x3||0!=_0x4fa0x4||_0x4fa0x5||null!=_0x4fa0x9)){this[_0x285e[251]][_0x285e[473]]();try{_0x4fa0x5&&(_0x4fa0x2=this[_0x285e[899]](_0x4fa0x2,this[_0x285e[2527]]()),null==_0x4fa0x9&&(_0x4fa0x9=this[_0x285e[902]]()));var _0x4fa0x12=this[_0x285e[2505]]();null!=_0x4fa0x9&&this[_0x285e[2528]](!0);this[_0x285e[835]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,!_0x4fa0x5&&this[_0x285e[2529]]()&&this[_0x285e[2530]](),null==_0x4fa0x9);this[_0x285e[2528]](_0x4fa0x12);if(null!=_0x4fa0x9){var _0x4fa0x13=this[_0x285e[251]][_0x285e[262]](_0x4fa0x9);this[_0x285e[833]](_0x4fa0x2,_0x4fa0x9,_0x4fa0x13,null,null,!0)};this[_0x285e[746]]( new mxEventObject(mxEvent.MOVE_CELLS,_0x285e[895],_0x4fa0x2,_0x285e[1126],_0x4fa0x3,_0x285e[1125],_0x4fa0x4,_0x285e[238],_0x4fa0x5,_0x285e[772],_0x4fa0x9,_0x285e[763],_0x4fa0xa))}finally{this[_0x285e[251]][_0x285e[476]]()}};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[835]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x2&&(0!=_0x4fa0x3||0!=_0x4fa0x4)){this[_0x285e[251]][_0x285e[473]]();try{_0x4fa0x5&&this[_0x285e[2531]](_0x4fa0x2);for(var _0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2[_0x285e[67]];_0x4fa0xa++){this[_0x285e[2532]](_0x4fa0x2[_0x4fa0xa],_0x4fa0x3,_0x4fa0x4),_0x4fa0x9&&this[_0x285e[2509]](_0x4fa0x2[_0x4fa0xa])};this[_0x285e[2400]]&&this[_0x285e[1750]](_0x4fa0x2);this[_0x285e[746]]( new mxEventObject(mxEvent.CELLS_MOVED,_0x285e[895],_0x4fa0x2,_0x285e[1126],_0x4fa0x4,_0x285e[1125],_0x4fa0x4,_0x285e[808],_0x4fa0x5))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2532]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2);null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0x5[_0x285e[238]](),_0x4fa0x5[_0x285e[513]](_0x4fa0x3,_0x4fa0x4),!_0x4fa0x5[_0x285e[1500]]&&(this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2)&&!this[_0x285e[2505]]())&&(_0x4fa0x5[_0x285e[235]]=Math[_0x285e[160]](0,_0x4fa0x5[_0x285e[235]]),_0x4fa0x5[_0x285e[236]]=Math[_0x285e[160]](0,_0x4fa0x5[_0x285e[236]])),_0x4fa0x5[_0x285e[1500]]&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)&&(null==_0x4fa0x5[_0x285e[1368]]?_0x4fa0x5[_0x285e[1368]]= new mxPoint(_0x4fa0x3,_0x4fa0x4):(_0x4fa0x5[_0x285e[1368]][_0x285e[235]]+=_0x4fa0x3,_0x4fa0x5[_0x285e[1368]][_0x285e[236]]+=_0x4fa0x4)),this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2,_0x4fa0x5))};mxGraph[_0x285e[202]][_0x285e[2533]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2);if(_0x4fa0x3==this[_0x285e[902]]()||_0x4fa0x3==this[_0x285e[2534]]()){return this[_0x285e[2535]]()};if(null!=_0x4fa0x3&&_0x4fa0x3!=this[_0x285e[902]]()){var _0x4fa0x4=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x3);if(null!=_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2=0,_0x4fa0x9=_0x4fa0x4[_0x285e[117]],_0x4fa0x4=_0x4fa0x4[_0x285e[119]];this[_0x285e[1730]](_0x4fa0x3)&&(_0x4fa0x3=this[_0x285e[1731]](_0x4fa0x3),_0x4fa0x2=_0x4fa0x3[_0x285e[117]],_0x4fa0x9-=_0x4fa0x3[_0x285e[117]],_0x4fa0x5=_0x4fa0x3[_0x285e[119]],_0x4fa0x4-=_0x4fa0x3[_0x285e[119]]);return new mxRectangle(_0x4fa0x2,_0x4fa0x5,_0x4fa0x9,_0x4fa0x4)}}};return null};mxGraph[_0x285e[202]][_0x285e[2535]]=function(){return this[_0x285e[2385]]};mxGraph[_0x285e[202]][_0x285e[2509]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2),_0x4fa0x4=this[_0x285e[2536]](_0x4fa0x2)?this[_0x285e[2533]](_0x4fa0x2):this[_0x285e[2535]]();if(null!=_0x4fa0x3&&null!=_0x4fa0x4&&!_0x4fa0x3[_0x285e[1500]]&&(_0x4fa0x3[_0x285e[235]]<_0x4fa0x4[_0x285e[235]]||_0x4fa0x3[_0x285e[236]]<_0x4fa0x4[_0x285e[236]]||_0x4fa0x4[_0x285e[117]]<_0x4fa0x3[_0x285e[235]]+_0x4fa0x3[_0x285e[117]]||_0x4fa0x4[_0x285e[119]]<_0x4fa0x3[_0x285e[236]]+_0x4fa0x3[_0x285e[119]])){_0x4fa0x2=this[_0x285e[2537]](_0x4fa0x2),0<_0x4fa0x4[_0x285e[117]]&&(_0x4fa0x3[_0x285e[235]]=Math[_0x285e[243]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]+_0x4fa0x4[_0x285e[117]]-(1-_0x4fa0x2)*_0x4fa0x3[_0x285e[117]])),0<_0x4fa0x4[_0x285e[119]]&&(_0x4fa0x3[_0x285e[236]]=Math[_0x285e[243]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]+_0x4fa0x4[_0x285e[119]]-(1-_0x4fa0x2)*_0x4fa0x3[_0x285e[119]])),_0x4fa0x3[_0x285e[235]]=Math[_0x285e[160]](_0x4fa0x3[_0x285e[235]],_0x4fa0x4[_0x285e[235]]-_0x4fa0x3[_0x285e[117]]*_0x4fa0x2),_0x4fa0x3[_0x285e[236]]=Math[_0x285e[160]](_0x4fa0x3[_0x285e[236]],_0x4fa0x4[_0x285e[236]]-_0x4fa0x3[_0x285e[119]]*_0x4fa0x2)}}};mxGraph[_0x285e[202]][_0x285e[1750]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){for(var _0x4fa0x3={},_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x4fa0x4]);_0x4fa0x3[_0x4fa0x5]=_0x4fa0x2[_0x4fa0x4]};this[_0x285e[251]][_0x285e[473]]();try{for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x9=this[_0x285e[251]][_0x285e[264]](_0x4fa0x2[_0x4fa0x4]);if(null!=_0x4fa0x9){for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x9[_0x285e[67]];_0x4fa0x5++){var _0x4fa0xa=this[_0x285e[441]][_0x285e[248]](_0x4fa0x9[_0x4fa0x5]),_0x4fa0x12=null!=_0x4fa0xa?_0x4fa0xa[_0x285e[1710]](!0):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x9[_0x4fa0x5],!0),_0x4fa0x13=null!=_0x4fa0xa?_0x4fa0xa[_0x285e[1710]](!1):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x9[_0x4fa0x5],!1),_0x4fa0x14=mxCellPath[_0x285e[385]](_0x4fa0x12),_0x4fa0x15=mxCellPath[_0x285e[385]](_0x4fa0x13);(null==_0x4fa0x3[_0x4fa0x14]||null==_0x4fa0x3[_0x4fa0x15])&&this[_0x285e[1809]](_0x4fa0x9[_0x4fa0x5])}};this[_0x285e[1750]](this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2[_0x4fa0x4]))}}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[1809]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2);null!=_0x4fa0x3&&(null!=_0x4fa0x3[_0x285e[1525]]&&0<_0x4fa0x3[_0x285e[1525]][_0x285e[67]])&&(_0x4fa0x3=_0x4fa0x3[_0x285e[238]](),_0x4fa0x3[_0x285e[1525]]=[],this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2,_0x4fa0x3));return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2538]]=function(_0x4fa0x2,_0x4fa0x3){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[253]]&&null!=_0x4fa0x2[_0x285e[253]][_0x285e[1561]]?_0x4fa0x2[_0x285e[253]][_0x285e[1561]][_0x285e[1531]]:null};mxGraph[_0x285e[202]][_0x285e[2288]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=null;var _0x4fa0x5=_0x4fa0x2[_0x285e[124]][_0x4fa0x4?mxConstants[_0x285e[2539]]:mxConstants[_0x285e[2540]]];if(null!=_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[124]][_0x4fa0x4?mxConstants[_0x285e[2541]]:mxConstants[_0x285e[2542]]];null!=_0x4fa0x9&&(_0x4fa0x3= new mxPoint(parseFloat(_0x4fa0x5),parseFloat(_0x4fa0x9)))};_0x4fa0x5= !1;null!=_0x4fa0x3&&(_0x4fa0x5=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],_0x4fa0x4?mxConstants[_0x285e[2543]]:mxConstants[_0x285e[2544]],!0));return new mxConnectionConstraint(_0x4fa0x3,_0x4fa0x5)};mxGraph[_0x285e[202]][_0x285e[2545]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x5){this[_0x285e[251]][_0x285e[473]]();try{null==_0x4fa0x5||null==_0x4fa0x5[_0x285e[2546]]?(this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2539]]:mxConstants[_0x285e[2540]],null,[_0x4fa0x2]),this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2541]]:mxConstants[_0x285e[2542]],null,[_0x4fa0x2]),this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2543]]:mxConstants[_0x285e[2544]],null,[_0x4fa0x2])):null!=_0x4fa0x5[_0x285e[2546]]&&(this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2539]]:mxConstants[_0x285e[2540]],_0x4fa0x5[_0x285e[2546]][_0x285e[235]],[_0x4fa0x2]),this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2541]]:mxConstants[_0x285e[2542]],_0x4fa0x5[_0x285e[2546]][_0x285e[236]],[_0x4fa0x2]),_0x4fa0x5[_0x285e[591]]?this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2543]]:mxConstants[_0x285e[2544]],null,[_0x4fa0x2]):this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2543]]:mxConstants[_0x285e[2544]],_0x285e[468],[_0x4fa0x2]))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2290]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(null!=_0x4fa0x2){var _0x4fa0x5=this[_0x285e[441]][_0x285e[2087]](_0x4fa0x2),_0x4fa0x9= new mxPoint(_0x4fa0x5[_0x285e[241]](),_0x4fa0x5[_0x285e[242]]()),_0x4fa0xa=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2011]]],_0x4fa0x12=0;if(null!=_0x4fa0xa&&(_0x285e[700]==_0x4fa0xa?_0x4fa0x12+=270:_0x285e[703]==_0x4fa0xa?_0x4fa0x12+=180:_0x285e[701]==_0x4fa0xa&&(_0x4fa0x12+=90),_0x285e[700]==_0x4fa0xa||_0x285e[701]==_0x4fa0xa)){_0x4fa0x5[_0x285e[235]]+=_0x4fa0x5[_0x285e[117]]/2-_0x4fa0x5[_0x285e[119]]/2;_0x4fa0x5[_0x285e[236]]+=_0x4fa0x5[_0x285e[119]]/2-_0x4fa0x5[_0x285e[117]]/2;var _0x4fa0x13=_0x4fa0x5[_0x285e[117]];_0x4fa0x5[_0x285e[117]]=_0x4fa0x5[_0x285e[119]];_0x4fa0x5[_0x285e[119]]=_0x4fa0x13};if(null!=_0x4fa0x3[_0x285e[2546]]){var _0x4fa0x14=_0x4fa0x4=1,_0x4fa0x15=0,_0x4fa0x16=0;if(this[_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2[_0x285e[246]])){var _0x4fa0x17=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2547]]],_0x4fa0x18=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2548]]];null!=_0x4fa0x2[_0x285e[253]][_0x285e[1561]]&&(_0x4fa0x17=1==mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],_0x285e[1607],0)||_0x4fa0x17,_0x4fa0x18=1==mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],_0x285e[1608],0)||_0x4fa0x18);if(_0x285e[700]==_0x4fa0xa||_0x285e[701]==_0x4fa0xa){_0x4fa0x13=_0x4fa0x17,_0x4fa0x17=_0x4fa0x18,_0x4fa0x18=_0x4fa0x13};_0x4fa0x17&&(_0x4fa0x4= -1,_0x4fa0x15=-_0x4fa0x5[_0x285e[117]]);_0x4fa0x18&&(_0x4fa0x14= -1,_0x4fa0x16=-_0x4fa0x5[_0x285e[119]])};_0x4fa0x4= new mxPoint(_0x4fa0x5[_0x285e[235]]+_0x4fa0x3[_0x285e[2546]][_0x285e[235]]*_0x4fa0x5[_0x285e[117]]*_0x4fa0x4-_0x4fa0x15,_0x4fa0x5[_0x285e[236]]+_0x4fa0x3[_0x285e[2546]][_0x285e[236]]*_0x4fa0x5[_0x285e[119]]*_0x4fa0x14-_0x4fa0x16)};_0x4fa0xa=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2278]]]||0;_0x4fa0x3[_0x285e[591]]?(0!=_0x4fa0x12&&null!=_0x4fa0x4&&(_0x4fa0x13=_0x4fa0x5=0,90==_0x4fa0x12?_0x4fa0x13=1:180==_0x4fa0x12?_0x4fa0x5= -1:270==_0x4fa0xa&&(_0x4fa0x13= -1),_0x4fa0x4=mxUtils[_0x285e[432]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x13,_0x4fa0x9)),null!=_0x4fa0x4&&_0x4fa0x3[_0x285e[591]]&&(_0x4fa0x4=this[_0x285e[441]][_0x285e[2302]](_0x4fa0x2,_0x4fa0x4,!1))):_0x4fa0xa+=_0x4fa0x12;0!=_0x4fa0xa&&null!=_0x4fa0x4&&(_0x4fa0x12=mxUtils[_0x285e[431]](_0x4fa0xa),_0x4fa0x5=Math[_0x285e[426]](_0x4fa0x12),_0x4fa0x13=Math[_0x285e[427]](_0x4fa0x12),_0x4fa0x4=mxUtils[_0x285e[432]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x13,_0x4fa0x9))};return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[851]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[251]][_0x285e[473]]();try{var _0x4fa0x9=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[852]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);this[_0x285e[746]]( new mxEventObject(mxEvent.CONNECT_CELL,_0x285e[1989],_0x4fa0x2,_0x285e[1984],_0x4fa0x3,_0x285e[1097],_0x4fa0x4,_0x285e[257],_0x4fa0x9))}finally{this[_0x285e[251]][_0x285e[476]]()};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[852]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x2){this[_0x285e[251]][_0x285e[473]]();try{var _0x4fa0x9=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[2545]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5);this[_0x285e[2549]]()&&(_0x4fa0x5=null,this[_0x285e[1908]](_0x4fa0x3)&&(_0x4fa0x5=_0x4fa0x3[_0x285e[1103]](),_0x4fa0x3=this[_0x285e[2550]](_0x4fa0x3,_0x4fa0x4)),this[_0x285e[1717]](_0x4fa0x4?mxConstants[_0x285e[2303]]:mxConstants[_0x285e[2304]],_0x4fa0x5,[_0x4fa0x2]));this[_0x285e[251]][_0x285e[1957]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);this[_0x285e[2401]]&&this[_0x285e[1809]](_0x4fa0x2);this[_0x285e[746]]( new mxEventObject(mxEvent.CELL_CONNECTED,_0x285e[1989],_0x4fa0x2,_0x285e[1984],_0x4fa0x3,_0x285e[1097],_0x4fa0x4,_0x285e[257],_0x4fa0x9))}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2531]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){this[_0x285e[251]][_0x285e[473]]();try{for(var _0x4fa0x3=this[_0x285e[441]][_0x285e[255]],_0x4fa0x4=this[_0x285e[441]][_0x285e[513]],_0x4fa0x5={},_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x4fa0x9]);_0x4fa0x5[_0x4fa0xa]=_0x4fa0x2[_0x4fa0x9]};for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){if(this[_0x285e[251]][_0x285e[250]](_0x4fa0x2[_0x4fa0x9])){var _0x4fa0x12=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2[_0x4fa0x9]);if(null!=_0x4fa0x12){var _0x4fa0x13=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x4fa0x9]),_0x4fa0x14=this[_0x285e[441]][_0x285e[248]](this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2[_0x4fa0x9]));if(null!=_0x4fa0x13&&null!=_0x4fa0x14){var _0x4fa0x12=_0x4fa0x12[_0x285e[238]](),_0x4fa0x15=-_0x4fa0x14[_0x285e[2078]][_0x285e[235]],_0x4fa0x16=-_0x4fa0x14[_0x285e[2078]][_0x285e[236]],_0x4fa0x17=_0x4fa0x13[_0x285e[439]],_0x4fa0x18=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x4fa0x9],!0);if(null!=_0x4fa0x18&&this[_0x285e[2551]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x18,!0)){for(var _0x4fa0x19=mxCellPath[_0x285e[385]](_0x4fa0x18);null!=_0x4fa0x18&&null==_0x4fa0x5[_0x4fa0x19];){_0x4fa0x18=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x18),_0x4fa0x19=mxCellPath[_0x285e[385]](_0x4fa0x18)};null==_0x4fa0x18&&(_0x4fa0x12[_0x285e[2007]]( new mxPoint(_0x4fa0x17[0][_0x285e[235]]/_0x4fa0x3-_0x4fa0x4[_0x285e[235]]+_0x4fa0x15,_0x4fa0x17[0][_0x285e[236]]/_0x4fa0x3-_0x4fa0x4[_0x285e[236]]+_0x4fa0x16),!0),this[_0x285e[251]][_0x285e[1957]](_0x4fa0x2[_0x4fa0x9],null,!0))};var _0x4fa0x1a=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2[_0x4fa0x9],!1);if(null!=_0x4fa0x1a&&this[_0x285e[2551]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x1a,!1)){for(var _0x4fa0x1b=mxCellPath[_0x285e[385]](_0x4fa0x1a);null!=_0x4fa0x1a&&null==_0x4fa0x5[_0x4fa0x1b];){_0x4fa0x1a=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x1a),_0x4fa0x1b=mxCellPath[_0x285e[385]](_0x4fa0x1a)};if(null==_0x4fa0x1a){var _0x4fa0x1c=_0x4fa0x17[_0x285e[67]]-1;_0x4fa0x12[_0x285e[2007]]( new mxPoint(_0x4fa0x17[_0x4fa0x1c][_0x285e[235]]/_0x4fa0x3-_0x4fa0x4[_0x285e[235]]+_0x4fa0x15,_0x4fa0x17[_0x4fa0x1c][_0x285e[236]]/_0x4fa0x3-_0x4fa0x4[_0x285e[236]]+_0x4fa0x16),!1);this[_0x285e[251]][_0x285e[1957]](_0x4fa0x2[_0x4fa0x9],null,!1)}};this[_0x285e[251]][_0x285e[1724]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x12)}}}}}finally{this[_0x285e[251]][_0x285e[476]]()}}};mxGraph[_0x285e[202]][_0x285e[2534]]=function(){return this[_0x285e[441]][_0x285e[1741]]};mxGraph[_0x285e[202]][_0x285e[2326]]=function(_0x4fa0x2){return null};mxGraph[_0x285e[202]][_0x285e[1908]]=function(_0x4fa0x2){return !1};mxGraph[_0x285e[202]][_0x285e[2550]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2280]]=function(_0x4fa0x2){return null};mxGraph[_0x285e[202]][_0x285e[2552]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2||this[_0x285e[2452]]();null!=_0x4fa0x2&&this[_0x285e[2553]](_0x4fa0x2)&&(this[_0x285e[441]][_0x285e[2257]](_0x4fa0x2),this[_0x285e[2440]]())};mxGraph[_0x285e[202]][_0x285e[2554]]=function(){var _0x4fa0x2=this[_0x285e[251]][_0x285e[501]](),_0x4fa0x3=this[_0x285e[2534]]();if(null!=_0x4fa0x3){for(var _0x4fa0x4=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x3);_0x4fa0x4!=_0x4fa0x2&&!this[_0x285e[2553]](_0x4fa0x4)&&this[_0x285e[251]][_0x285e[1197]](_0x4fa0x4)!=_0x4fa0x2;){_0x4fa0x4=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x4)};_0x4fa0x4==_0x4fa0x2||this[_0x285e[251]][_0x285e[1197]](_0x4fa0x4)==_0x4fa0x2?this[_0x285e[441]][_0x285e[2257]](null):this[_0x285e[441]][_0x285e[2257]](_0x4fa0x4);null!=this[_0x285e[441]][_0x285e[248]](_0x4fa0x3)&&this[_0x285e[2450]](_0x4fa0x3)}};mxGraph[_0x285e[202]][_0x285e[2442]]=function(){var _0x4fa0x2=this[_0x285e[2534]]();null!=_0x4fa0x2&&(this[_0x285e[441]][_0x285e[2257]](null),null!=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2)&&this[_0x285e[2450]](_0x4fa0x2))};mxGraph[_0x285e[202]][_0x285e[2553]]=function(_0x4fa0x2){return null!=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[517]]=function(){return this[_0x285e[441]][_0x285e[517]]()};mxGraph[_0x285e[202]][_0x285e[2555]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=[_0x4fa0x2];_0x4fa0x3&&(_0x4fa0x5=_0x4fa0x5[_0x285e[1919]](this[_0x285e[251]][_0x285e[264]](_0x4fa0x2)));_0x4fa0x5=this[_0x285e[441]][_0x285e[1799]](_0x4fa0x5);if(_0x4fa0x4){_0x4fa0x4=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2);for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4;_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[2555]](this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x3,!0);null!=_0x4fa0x5?_0x4fa0x5[_0x285e[99]](_0x4fa0xa):_0x4fa0x5=_0x4fa0xa}};return _0x4fa0x5};mxGraph[_0x285e[202]][_0x285e[1729]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;var _0x4fa0x4=null;if(null!=_0x4fa0x2){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){if(_0x4fa0x3||this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2[_0x4fa0x5])){var _0x4fa0x9=this[_0x285e[1198]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0x9){var _0x4fa0xa=_0x4fa0x9[_0x285e[1525]];if(null!=_0x4fa0xa&&0<_0x4fa0xa[_0x285e[67]]){for(var _0x4fa0x12= new mxRectangle(_0x4fa0xa[0][_0x285e[235]],_0x4fa0xa[0][_0x285e[236]],0,0),_0x4fa0x13=function(_0x4fa0x2){null!=_0x4fa0x2&&_0x4fa0x12[_0x285e[99]]( new mxRectangle(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],0,0))},_0x4fa0x14=1;_0x4fa0x14<_0x4fa0xa[_0x285e[67]];_0x4fa0x14++){_0x4fa0x13(_0x4fa0xa[_0x4fa0x14])};_0x4fa0x13(_0x4fa0x9[_0x285e[2006]](!0));_0x4fa0x13(_0x4fa0x9[_0x285e[2006]](!1))};null==_0x4fa0x4?_0x4fa0x4= new mxRectangle(_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]]):_0x4fa0x4[_0x285e[99]](_0x4fa0x9)}}}};return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[802]]=function(_0x4fa0x2){this[_0x285e[441]][_0x285e[200]](_0x4fa0x2,null==_0x4fa0x2);this[_0x285e[441]][_0x285e[2264]]();this[_0x285e[2258]]();this[_0x285e[746]]( new mxEventObject(mxEvent.REFRESH))};mxGraph[_0x285e[202]][_0x285e[1021]]=function(_0x4fa0x2){this[_0x285e[991]]&&(_0x4fa0x2=Math[_0x285e[488]](_0x4fa0x2/this[_0x285e[1020]])*this[_0x285e[1020]]);return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[1135]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[2365]]&&mxUtils[_0x285e[1134]](this[_0x285e[526]])){this[_0x285e[526]][_0x285e[360]]= -_0x4fa0x2,this[_0x285e[526]][_0x285e[190]]= -_0x4fa0x3}else {var _0x4fa0x4=this[_0x285e[441]][_0x285e[2051]]();if(this[_0x285e[507]]==mxConstants[_0x285e[508]]){if(0==_0x4fa0x2&&0==_0x4fa0x3){if(mxClient[_0x285e[80]]?_0x4fa0x4[_0x285e[57]](_0x285e[535],_0x285e[536]+_0x4fa0x2+_0x285e[537]+_0x4fa0x3+_0x285e[460]):_0x4fa0x4[_0x285e[1390]](_0x285e[535]),null!=this[_0x285e[2556]]){for(var _0x4fa0x5=this[_0x285e[2556]][_0x285e[285]];null!=_0x4fa0x5;){var _0x4fa0x9=_0x4fa0x5[_0x285e[287]];this[_0x285e[526]][_0x285e[62]](_0x4fa0x5);_0x4fa0x5=_0x4fa0x9};this[_0x285e[2556]][_0x285e[265]][_0x285e[266]](this[_0x285e[2556]]);this[_0x285e[2556]]=null;this[_0x285e[526]][_0x285e[62]](_0x4fa0x4[_0x285e[265]]);for(_0x4fa0x5=this[_0x285e[2557]][_0x285e[285]];null!=_0x4fa0x5;){_0x4fa0x9=_0x4fa0x5[_0x285e[287]],this[_0x285e[526]][_0x285e[62]](_0x4fa0x5),_0x4fa0x5=_0x4fa0x9};this[_0x285e[2557]][_0x285e[265]][_0x285e[266]](this[_0x285e[2557]]);this[_0x285e[2557]]=null}}else {_0x4fa0x4[_0x285e[57]](_0x285e[535],_0x285e[536]+_0x4fa0x2+_0x285e[537]+_0x4fa0x3+_0x285e[460]);if(null==this[_0x285e[2556]]){this[_0x285e[2556]]=document[_0x285e[55]](_0x285e[485]);this[_0x285e[2556]][_0x285e[124]][_0x285e[491]]=_0x285e[492];this[_0x285e[2556]][_0x285e[124]][_0x285e[277]]=_0x285e[189];this[_0x285e[2557]]=document[_0x285e[55]](_0x285e[485]);this[_0x285e[2557]][_0x285e[124]][_0x285e[491]]=_0x285e[492];this[_0x285e[2557]][_0x285e[124]][_0x285e[277]]=_0x285e[189];for(var _0x4fa0xa=this[_0x285e[2556]],_0x4fa0x5=this[_0x285e[526]][_0x285e[285]];null!=_0x4fa0x5;){_0x4fa0x9=_0x4fa0x5[_0x285e[287]],_0x4fa0x5!=_0x4fa0x4[_0x285e[265]]?_0x4fa0xa[_0x285e[62]](_0x4fa0x5):_0x4fa0xa=this[_0x285e[2557]],_0x4fa0x5=_0x4fa0x9};this[_0x285e[526]][_0x285e[950]](this[_0x285e[2556]],_0x4fa0x4[_0x285e[265]]);this[_0x285e[526]][_0x285e[62]](this[_0x285e[2557]])};this[_0x285e[2556]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168];this[_0x285e[2556]][_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168];this[_0x285e[2557]][_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168];this[_0x285e[2557]][_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168]}}else {_0x4fa0x4[_0x285e[124]][_0x285e[361]]=_0x4fa0x2+_0x285e[168],_0x4fa0x4[_0x285e[124]][_0x285e[125]]=_0x4fa0x3+_0x285e[168]};this[_0x285e[1136]]=_0x4fa0x2;this[_0x285e[1137]]=_0x4fa0x3;this[_0x285e[746]]( new mxEventObject(mxEvent.PAN))}};mxGraph[_0x285e[202]][_0x285e[2558]]=function(){this[_0x285e[499]](this[_0x285e[2395]])};mxGraph[_0x285e[202]][_0x285e[2559]]=function(){this[_0x285e[499]](1/this[_0x285e[2395]])};mxGraph[_0x285e[202]][_0x285e[2560]]=function(){1==this[_0x285e[441]][_0x285e[255]]?this[_0x285e[441]][_0x285e[1147]](0,0):(this[_0x285e[441]][_0x285e[513]][_0x285e[235]]=0,this[_0x285e[441]][_0x285e[513]][_0x285e[236]]=0,this[_0x285e[441]][_0x285e[2262]](1))};mxGraph[_0x285e[202]][_0x285e[2561]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[499]](_0x4fa0x2/this[_0x285e[441]][_0x285e[255]],_0x4fa0x3)};mxGraph[_0x285e[202]][_0x285e[499]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:this[_0x285e[2397]];var _0x4fa0x4=this[_0x285e[441]][_0x285e[255]]*_0x4fa0x2,_0x4fa0x5=this[_0x285e[441]][_0x285e[248]](this[_0x285e[2452]]());if(this[_0x285e[2396]]&&null!=_0x4fa0x5){_0x4fa0x5= new mxRectangle(_0x4fa0x5[_0x285e[235]]*_0x4fa0x2,_0x4fa0x5[_0x285e[236]]*_0x4fa0x2,_0x4fa0x5[_0x285e[117]]*_0x4fa0x2,_0x4fa0x5[_0x285e[119]]*_0x4fa0x2),this[_0x285e[441]][_0x285e[255]]=_0x4fa0x4,this[_0x285e[2562]](_0x4fa0x5)||(this[_0x285e[441]][_0x285e[2259]](),this[_0x285e[441]][_0x285e[2262]](_0x4fa0x4))}else {if(_0x4fa0x3&&!mxUtils[_0x285e[1134]](this[_0x285e[526]])){var _0x4fa0x5=this[_0x285e[526]][_0x285e[359]],_0x4fa0x9=this[_0x285e[526]][_0x285e[167]];if(1<_0x4fa0x2){var _0x4fa0xa=(_0x4fa0x2-1)/(2*_0x4fa0x4),_0x4fa0x5=_0x4fa0x5* -_0x4fa0xa,_0x4fa0x9=_0x4fa0x9* -_0x4fa0xa}else {_0x4fa0xa=(1/_0x4fa0x2-1)/(2*this[_0x285e[441]][_0x285e[255]]),_0x4fa0x5*=_0x4fa0xa,_0x4fa0x9*=_0x4fa0xa};this[_0x285e[441]][_0x285e[829]](_0x4fa0x4,this[_0x285e[441]][_0x285e[513]][_0x285e[235]]+_0x4fa0x5,this[_0x285e[441]][_0x285e[513]][_0x285e[236]]+_0x4fa0x9)}else {this[_0x285e[441]][_0x285e[2262]](_0x4fa0x4),mxUtils[_0x285e[1134]](this[_0x285e[526]])&&(_0x4fa0x9=_0x4fa0x5=0,_0x4fa0x3&&(_0x4fa0x5=this[_0x285e[526]][_0x285e[359]]*(_0x4fa0x2-1)/2,_0x4fa0x9=this[_0x285e[526]][_0x285e[167]]*(_0x4fa0x2-1)/2),this[_0x285e[526]][_0x285e[360]]=Math[_0x285e[488]](this[_0x285e[526]][_0x285e[360]]*_0x4fa0x2+_0x4fa0x5),this[_0x285e[526]][_0x285e[190]]=Math[_0x285e[488]](this[_0x285e[526]][_0x285e[190]]*_0x4fa0x2+_0x4fa0x9))}}};mxGraph[_0x285e[202]][_0x285e[2563]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[526]][_0x285e[159]]/_0x4fa0x2[_0x285e[117]]/(this[_0x285e[526]][_0x285e[157]]/_0x4fa0x2[_0x285e[119]]);_0x4fa0x2[_0x285e[235]]=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[235]]);_0x4fa0x2[_0x285e[236]]=Math[_0x285e[160]](0,_0x4fa0x2[_0x285e[236]]);var _0x4fa0x4=Math[_0x285e[243]](this[_0x285e[526]][_0x285e[1526]],_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]),_0x4fa0x5=Math[_0x285e[243]](this[_0x285e[526]][_0x285e[191]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]);_0x4fa0x2[_0x285e[117]]=_0x4fa0x4-_0x4fa0x2[_0x285e[235]];_0x4fa0x2[_0x285e[119]]=_0x4fa0x5-_0x4fa0x2[_0x285e[236]];1>_0x4fa0x3?(_0x4fa0x3=_0x4fa0x2[_0x285e[119]]/_0x4fa0x3,_0x4fa0x4=(_0x4fa0x3-_0x4fa0x2[_0x285e[119]])/2,_0x4fa0x2[_0x285e[119]]=_0x4fa0x3,_0x4fa0x3=Math[_0x285e[243]](_0x4fa0x2[_0x285e[236]],_0x4fa0x4),_0x4fa0x2[_0x285e[236]]-=_0x4fa0x3,_0x4fa0x5=Math[_0x285e[243]](this[_0x285e[526]][_0x285e[191]],_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]),_0x4fa0x2[_0x285e[119]]=_0x4fa0x5-_0x4fa0x2[_0x285e[236]]):(_0x4fa0x3*=_0x4fa0x2[_0x285e[117]],_0x4fa0x4=(_0x4fa0x3-_0x4fa0x2[_0x285e[117]])/2,_0x4fa0x2[_0x285e[117]]=_0x4fa0x3,_0x4fa0x3=Math[_0x285e[243]](_0x4fa0x2[_0x285e[235]],_0x4fa0x4),_0x4fa0x2[_0x285e[235]]-=_0x4fa0x3,_0x4fa0x4=Math[_0x285e[243]](this[_0x285e[526]][_0x285e[1526]],_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]),_0x4fa0x2[_0x285e[117]]=_0x4fa0x4-_0x4fa0x2[_0x285e[235]]);_0x4fa0x3=this[_0x285e[526]][_0x285e[159]]/_0x4fa0x2[_0x285e[117]];_0x4fa0x4=this[_0x285e[441]][_0x285e[255]]*_0x4fa0x3;mxUtils[_0x285e[1134]](this[_0x285e[526]])?(this[_0x285e[441]][_0x285e[2262]](_0x4fa0x4),this[_0x285e[526]][_0x285e[360]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[235]]*_0x4fa0x3),this[_0x285e[526]][_0x285e[190]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[236]]*_0x4fa0x3)):this[_0x285e[441]][_0x285e[829]](_0x4fa0x4,this[_0x285e[441]][_0x285e[513]][_0x285e[235]]-_0x4fa0x2[_0x285e[235]]/this[_0x285e[441]][_0x285e[255]],this[_0x285e[441]][_0x285e[513]][_0x285e[236]]-_0x4fa0x2[_0x285e[236]]/this[_0x285e[441]][_0x285e[255]])};mxGraph[_0x285e[202]][_0x285e[933]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[526]]){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:0;_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;var _0x4fa0x4=this[_0x285e[526]][_0x285e[159]],_0x4fa0x5=this[_0x285e[526]][_0x285e[157]],_0x4fa0x9=this[_0x285e[441]][_0x285e[517]]();_0x4fa0x3&&(null!=_0x4fa0x9[_0x285e[235]]&&null!=_0x4fa0x9[_0x285e[236]])&&(_0x4fa0x9[_0x285e[117]]+=_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[119]]+=_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[235]]=0,_0x4fa0x9[_0x285e[236]]=0);var _0x4fa0xa=this[_0x285e[441]][_0x285e[255]],_0x4fa0x12=_0x4fa0x9[_0x285e[117]]/_0x4fa0xa,_0x4fa0x13=_0x4fa0x9[_0x285e[119]]/_0x4fa0xa;null!=this[_0x285e[1617]]&&(_0x4fa0x12=Math[_0x285e[160]](_0x4fa0x12,this[_0x285e[1617]][_0x285e[117]]-_0x4fa0x9[_0x285e[235]]/_0x4fa0xa),_0x4fa0x13=Math[_0x285e[160]](_0x4fa0x13,this[_0x285e[1617]][_0x285e[119]]-_0x4fa0x9[_0x285e[236]]/_0x4fa0xa));var _0x4fa0x14=_0x4fa0x3?_0x4fa0x2:2*_0x4fa0x2,_0x4fa0x4=Math[_0x285e[519]](100*Math[_0x285e[243]](_0x4fa0x4/(_0x4fa0x12+_0x4fa0x14),_0x4fa0x5/(_0x4fa0x13+_0x4fa0x14)))/100;null!=this[_0x285e[2413]]&&(_0x4fa0x4=Math[_0x285e[160]](_0x4fa0x4,this[_0x285e[2413]]));null!=this[_0x285e[2414]]&&(_0x4fa0x4=Math[_0x285e[243]](_0x4fa0x4,this[_0x285e[2414]]));_0x4fa0x3?this[_0x285e[441]][_0x285e[255]]!=_0x4fa0x4&&this[_0x285e[441]][_0x285e[2262]](_0x4fa0x4):mxUtils[_0x285e[1134]](this[_0x285e[526]])?(this[_0x285e[441]][_0x285e[2262]](_0x4fa0x4),null!=_0x4fa0x9[_0x285e[235]]&&(this[_0x285e[526]][_0x285e[360]]=Math[_0x285e[488]](_0x4fa0x9[_0x285e[235]]/_0x4fa0xa)*_0x4fa0x4-_0x4fa0x2-Math[_0x285e[160]](0,(this[_0x285e[526]][_0x285e[159]]-_0x4fa0x12*_0x4fa0x4)/2)),null!=_0x4fa0x9[_0x285e[236]]&&(this[_0x285e[526]][_0x285e[190]]=Math[_0x285e[488]](_0x4fa0x9[_0x285e[236]]/_0x4fa0xa)*_0x4fa0x4-_0x4fa0x2-Math[_0x285e[160]](0,(this[_0x285e[526]][_0x285e[157]]-_0x4fa0x13*_0x4fa0x4)/2))):this[_0x285e[441]][_0x285e[829]](_0x4fa0x4,null!=_0x4fa0x9[_0x285e[235]]?Math[_0x285e[519]](this[_0x285e[441]][_0x285e[513]][_0x285e[235]]-_0x4fa0x9[_0x285e[235]]/_0x4fa0xa+_0x4fa0x2+1):_0x4fa0x2,null!=_0x4fa0x9[_0x285e[236]]?Math[_0x285e[519]](this[_0x285e[441]][_0x285e[513]][_0x285e[236]]-_0x4fa0x9[_0x285e[236]]/_0x4fa0xa+_0x4fa0x2+1):_0x4fa0x2)};return this[_0x285e[441]][_0x285e[255]]};mxGraph[_0x285e[202]][_0x285e[2564]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=-this[_0x285e[441]][_0x285e[513]][_0x285e[235]],_0x4fa0x5=-this[_0x285e[441]][_0x285e[513]][_0x285e[236]],_0x4fa0x9=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);null!=_0x4fa0x9&&(_0x4fa0x4= new mxRectangle(_0x4fa0x4+_0x4fa0x9[_0x285e[235]],_0x4fa0x5+_0x4fa0x9[_0x285e[236]],_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]]),_0x4fa0x3&&null!=this[_0x285e[526]]&&(_0x4fa0x5=this[_0x285e[526]][_0x285e[159]],_0x4fa0x9=this[_0x285e[526]][_0x285e[157]],_0x4fa0x4[_0x285e[235]]=_0x4fa0x4[_0x285e[241]]()-_0x4fa0x5/2,_0x4fa0x4[_0x285e[117]]=_0x4fa0x5,_0x4fa0x4[_0x285e[236]]=_0x4fa0x4[_0x285e[242]]()-_0x4fa0x9/2,_0x4fa0x4[_0x285e[119]]=_0x4fa0x9),this[_0x285e[2562]](_0x4fa0x4)&&this[_0x285e[441]][_0x285e[1147]](this[_0x285e[441]][_0x285e[513]][_0x285e[235]],this[_0x285e[441]][_0x285e[513]][_0x285e[236]]))};mxGraph[_0x285e[202]][_0x285e[2562]]=function(_0x4fa0x2){var _0x4fa0x3=!1;if(null!=_0x4fa0x2){var _0x4fa0x4=this[_0x285e[526]][_0x285e[359]],_0x4fa0x5=this[_0x285e[526]][_0x285e[167]],_0x4fa0x9=Math[_0x285e[243]](_0x4fa0x4,_0x4fa0x2[_0x285e[117]]),_0x4fa0xa=Math[_0x285e[243]](_0x4fa0x5,_0x4fa0x2[_0x285e[119]]);if(mxUtils[_0x285e[1134]](this[_0x285e[526]])){_0x4fa0x4=this[_0x285e[526]];_0x4fa0x2[_0x285e[235]]+=this[_0x285e[441]][_0x285e[513]][_0x285e[235]];_0x4fa0x2[_0x285e[236]]+=this[_0x285e[441]][_0x285e[513]][_0x285e[236]];var _0x4fa0x12=_0x4fa0x4[_0x285e[360]]-_0x4fa0x2[_0x285e[235]],_0x4fa0x5=Math[_0x285e[160]](_0x4fa0x12-_0x4fa0x4[_0x285e[360]],0);0<_0x4fa0x12?_0x4fa0x4[_0x285e[360]]-=_0x4fa0x12+2:(_0x4fa0x12=_0x4fa0x2[_0x285e[235]]+_0x4fa0x9-_0x4fa0x4[_0x285e[360]]-_0x4fa0x4[_0x285e[159]],0<_0x4fa0x12&&(_0x4fa0x4[_0x285e[360]]+=_0x4fa0x12+2));_0x4fa0x9=_0x4fa0x4[_0x285e[190]]-_0x4fa0x2[_0x285e[236]];_0x4fa0x12=Math[_0x285e[160]](0,_0x4fa0x9-_0x4fa0x4[_0x285e[190]]);0<_0x4fa0x9?_0x4fa0x4[_0x285e[190]]-=_0x4fa0x9+2:(_0x4fa0x9=_0x4fa0x2[_0x285e[236]]+_0x4fa0xa-_0x4fa0x4[_0x285e[190]]-_0x4fa0x4[_0x285e[157]],0<_0x4fa0x9&&(_0x4fa0x4[_0x285e[190]]+=_0x4fa0x9+2));!this[_0x285e[2365]]&&(0!=_0x4fa0x5||0!=_0x4fa0x12)&&this[_0x285e[441]][_0x285e[1147]](_0x4fa0x5,_0x4fa0x12)}else {var _0x4fa0x12=-this[_0x285e[441]][_0x285e[513]][_0x285e[235]],_0x4fa0x13=-this[_0x285e[441]][_0x285e[513]][_0x285e[236]],_0x4fa0x14=this[_0x285e[441]][_0x285e[255]];_0x4fa0x2[_0x285e[235]]+_0x4fa0x9>_0x4fa0x12+_0x4fa0x4&&(this[_0x285e[441]][_0x285e[513]][_0x285e[235]]-=(_0x4fa0x2[_0x285e[235]]+_0x4fa0x9-_0x4fa0x4-_0x4fa0x12)/_0x4fa0x14,_0x4fa0x3= !0);_0x4fa0x2[_0x285e[236]]+_0x4fa0xa>_0x4fa0x13+_0x4fa0x5&&(this[_0x285e[441]][_0x285e[513]][_0x285e[236]]-=(_0x4fa0x2[_0x285e[236]]+_0x4fa0xa-_0x4fa0x5-_0x4fa0x13)/_0x4fa0x14,_0x4fa0x3= !0);_0x4fa0x2[_0x285e[235]]<_0x4fa0x12&&(this[_0x285e[441]][_0x285e[513]][_0x285e[235]]+=(_0x4fa0x12-_0x4fa0x2[_0x285e[235]])/_0x4fa0x14,_0x4fa0x3= !0);_0x4fa0x2[_0x285e[236]]<_0x4fa0x13&&(this[_0x285e[441]][_0x285e[513]][_0x285e[236]]+=(_0x4fa0x13-_0x4fa0x2[_0x285e[236]])/_0x4fa0x14,_0x4fa0x3= !0);_0x4fa0x3&&(this[_0x285e[441]][_0x285e[802]](),null!=this[_0x285e[2432]]&&this[_0x285e[2432]][_0x285e[802]]())}};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[1198]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1714]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[174]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1742]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1971]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2565]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1965]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2298]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2566]]];if(null!=_0x4fa0x3){return _0x4fa0x3};_0x4fa0x2=this[_0x285e[441]][_0x285e[2291]](_0x4fa0x2);return _0x4fa0x2==mxEdgeStyle[_0x285e[2567]]||_0x4fa0x2==mxEdgeStyle[_0x285e[2568]]||_0x4fa0x2==mxEdgeStyle[_0x285e[2569]]||_0x4fa0x2==mxEdgeStyle[_0x285e[2570]]||_0x4fa0x2==mxEdgeStyle[_0x285e[2571]]||_0x4fa0x2==mxEdgeStyle[_0x285e[2572]]};mxGraph[_0x285e[202]][_0x285e[2573]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[2089]](!0);_0x4fa0x2=_0x4fa0x2[_0x285e[2089]](!1);return null!=_0x4fa0x3&&_0x4fa0x3==_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2574]]=function(_0x4fa0x2){return mxEvent[_0x285e[775]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2462]]=function(_0x4fa0x2){return mxClient[_0x285e[2575]]?mxEvent[_0x285e[2576]](_0x4fa0x2):mxEvent[_0x285e[775]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1018]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&!mxEvent[_0x285e[2577]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2578]]=function(_0x4fa0x2){return mxEvent[_0x285e[774]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2579]]=function(_0x4fa0x2){return mxEvent[_0x285e[2577]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2580]]=function(_0x4fa0x2){mxUtils[_0x285e[150]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2581]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null==this[_0x285e[2500]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)};mxGraph[_0x285e[202]][_0x285e[2500]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2&&!this[_0x285e[2530]]()&&(null==_0x4fa0x3||null==_0x4fa0x4)){return _0x285e[110]};if(null!=_0x4fa0x2&&null==this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!0)&&null==this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!1)){return null};if(!this[_0x285e[2402]]&&_0x4fa0x3==_0x4fa0x4&&null!=_0x4fa0x3||!this[_0x285e[2582]](_0x4fa0x3,_0x4fa0x4)){return _0x285e[110]};if(null!=_0x4fa0x3&&null!=_0x4fa0x4){var _0x4fa0x5=_0x285e[110];if(!this[_0x285e[2404]]){var _0x4fa0x9=this[_0x285e[251]][_0x285e[1781]](_0x4fa0x3,_0x4fa0x4,!0);if(1<_0x4fa0x9[_0x285e[67]]||1==_0x4fa0x9[_0x285e[67]]&&_0x4fa0x9[0]!=_0x4fa0x2){_0x4fa0x5+=(mxResources[_0x285e[203]](this[_0x285e[2421]])||this[_0x285e[2421]])+_0x285e[192]}};var _0x4fa0x9=this[_0x285e[251]][_0x285e[1962]](_0x4fa0x3,!0,_0x4fa0x2),_0x4fa0xa=this[_0x285e[251]][_0x285e[1962]](_0x4fa0x4,!1,_0x4fa0x2);if(null!=this[_0x285e[2335]]){for(var _0x4fa0x12=0;_0x4fa0x12<this[_0x285e[2335]][_0x285e[67]];_0x4fa0x12++){var _0x4fa0x13=this[_0x285e[2335]][_0x4fa0x12][_0x285e[2583]](this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x9,_0x4fa0xa);null!=_0x4fa0x13&&(_0x4fa0x5+=_0x4fa0x13)}};_0x4fa0x13=this[_0x285e[2584]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);null!=_0x4fa0x13&&(_0x4fa0x5+=_0x4fa0x13);return 0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5:null};return this[_0x285e[2406]]?null:_0x285e[110]};mxGraph[_0x285e[202]][_0x285e[2584]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null};mxGraph[_0x285e[202]][_0x285e[2585]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:this[_0x285e[251]][_0x285e[501]]();_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:{};for(var _0x4fa0x4=!0,_0x4fa0x5=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x12=_0x4fa0x3;this[_0x285e[2553]](_0x4fa0xa)&&(_0x4fa0x12={});_0x4fa0x12=this[_0x285e[2585]](_0x4fa0xa,_0x4fa0x12);null!=_0x4fa0x12?this[_0x285e[2447]](_0x4fa0xa,_0x4fa0x12[_0x285e[230]](/\n/g,_0x285e[545])):this[_0x285e[2447]](_0x4fa0xa,null);_0x4fa0x4=_0x4fa0x4&&null==_0x4fa0x12};_0x4fa0x5=_0x285e[110];this[_0x285e[1742]](_0x4fa0x2)&&!_0x4fa0x4&&(_0x4fa0x5+=(mxResources[_0x285e[203]](this[_0x285e[2423]])||this[_0x285e[2423]])+_0x285e[192]);_0x4fa0x5=this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)?_0x4fa0x5+(this[_0x285e[2500]](_0x4fa0x2,this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!0),this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!1))||_0x285e[110]):_0x4fa0x5+(this[_0x285e[2586]](_0x4fa0x2)||_0x285e[110]);_0x4fa0x9=this[_0x285e[2587]](_0x4fa0x2,_0x4fa0x3);null!=_0x4fa0x9&&(_0x4fa0x5+=_0x4fa0x9);null==this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2)&&this[_0x285e[441]][_0x285e[2264]]();return 0<_0x4fa0x5[_0x285e[67]]||!_0x4fa0x4?_0x4fa0x5:null};mxGraph[_0x285e[202]][_0x285e[2586]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1962]](_0x4fa0x2,!0),_0x4fa0x4=this[_0x285e[251]][_0x285e[1962]](_0x4fa0x2,!1);_0x4fa0x2=this[_0x285e[251]][_0x285e[433]](_0x4fa0x2);var _0x4fa0x5=_0x285e[110];if(null!=this[_0x285e[2335]]){for(var _0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2335]][_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[2335]][_0x4fa0x9];if(_0x4fa0xa[_0x285e[1097]]&&mxUtils[_0x285e[1331]](_0x4fa0x2,_0x4fa0xa[_0x285e[60]],_0x4fa0xa[_0x285e[2588]],_0x4fa0xa[_0x285e[131]])&&(0==_0x4fa0xa[_0x285e[160]]&&0<_0x4fa0x3||1==_0x4fa0xa[_0x285e[243]]&&0==_0x4fa0x3||1==_0x4fa0xa[_0x285e[160]]&&1<_0x4fa0x3)){_0x4fa0x5+=_0x4fa0xa[_0x285e[2589]]+_0x285e[192]}else {if(!_0x4fa0xa[_0x285e[1097]]&&mxUtils[_0x285e[1331]](_0x4fa0x2,_0x4fa0xa[_0x285e[60]],_0x4fa0xa[_0x285e[2588]],_0x4fa0xa[_0x285e[131]])&&(0==_0x4fa0xa[_0x285e[160]]&&0<_0x4fa0x4||1==_0x4fa0xa[_0x285e[243]]&&0==_0x4fa0x4||1==_0x4fa0xa[_0x285e[160]]&&1<_0x4fa0x4)){_0x4fa0x5+=_0x4fa0xa[_0x285e[2589]]+_0x285e[192]}}}};return 0<_0x4fa0x5[_0x285e[67]]?_0x4fa0x5:null};mxGraph[_0x285e[202]][_0x285e[2587]]=function(_0x4fa0x2,_0x4fa0x3){return null};mxGraph[_0x285e[202]][_0x285e[2271]]=function(){return this[_0x285e[1617]]};mxGraph[_0x285e[202]][_0x285e[2590]]=function(_0x4fa0x2){this[_0x285e[1617]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2205]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&this[_0x285e[2206]]&&!this[_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]])){var _0x4fa0x3=this[_0x285e[1742]](_0x4fa0x2[_0x285e[246]]);if(this[_0x285e[2516]](_0x4fa0x2[_0x285e[246]],!_0x4fa0x3)){return _0x4fa0x3?this[_0x285e[2415]]:this[_0x285e[2417]]}};return null};mxGraph[_0x285e[202]][_0x285e[2454]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[251]][_0x285e[433]](_0x4fa0x2);if(null!=_0x4fa0x2){if(mxUtils[_0x285e[1331]](_0x4fa0x2)){return _0x4fa0x2[_0x285e[301]]};if(_0x285e[279]== typeof _0x4fa0x2[_0x285e[2591]]){return _0x4fa0x2.toString()}};return _0x285e[110]};mxGraph[_0x285e[202]][_0x285e[2183]]=function(_0x4fa0x2){var _0x4fa0x3=_0x285e[110];if(this[_0x285e[2409]]&&null!=_0x4fa0x2){var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);mxUtils[_0x285e[433]](_0x4fa0x4,mxConstants.STYLE_NOLABEL,!1)||(_0x4fa0x3=this[_0x285e[2454]](_0x4fa0x2))};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[2186]]=function(_0x4fa0x2){return this[_0x285e[2592]]()};mxGraph[_0x285e[202]][_0x285e[2592]]=function(){return this[_0x285e[2410]]};mxGraph[_0x285e[202]][_0x285e[2593]]=function(_0x4fa0x2){this[_0x285e[2410]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2131]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return null!=_0x4fa0x2?_0x285e[1333]==_0x4fa0x2[mxConstants[_0x285e[2594]]]:!1};mxGraph[_0x285e[202]][_0x285e[2130]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return null!=_0x4fa0x2?_0x285e[188]==_0x4fa0x2[mxConstants[_0x285e[2193]]]:!1};mxGraph[_0x285e[202]][_0x285e[2595]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;if(null!=_0x4fa0x2){if(null!=_0x4fa0x2[_0x285e[2207]]&&(_0x4fa0x3==_0x4fa0x2[_0x285e[2207]][_0x285e[252]]||_0x4fa0x3[_0x285e[265]]==_0x4fa0x2[_0x285e[2207]][_0x285e[252]])){_0x4fa0x9=this[_0x285e[2425]],_0x4fa0x9=mxResources[_0x285e[203]](_0x4fa0x9)||_0x4fa0x9};null==_0x4fa0x9&&null!=_0x4fa0x2[_0x285e[1211]]&&_0x4fa0x2[_0x285e[1211]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x4){if(null==_0x4fa0x9&&(_0x4fa0x3==_0x4fa0x4[_0x285e[252]]||_0x4fa0x3[_0x285e[265]]==_0x4fa0x4[_0x285e[252]])){_0x4fa0x9=_0x4fa0x4[_0x285e[2201]].toString()}});null==_0x4fa0x9&&(_0x4fa0x4=this[_0x285e[2432]][_0x285e[2596]](_0x4fa0x2[_0x285e[246]]),null!=_0x4fa0x4&&_0x285e[279]== typeof _0x4fa0x4[_0x285e[2597]]&&(_0x4fa0x9=_0x4fa0x4[_0x285e[2597]](_0x4fa0x3)));null==_0x4fa0x9&&(_0x4fa0x9=this[_0x285e[2598]](_0x4fa0x2[_0x285e[246]]))};return _0x4fa0x9};mxGraph[_0x285e[202]][_0x285e[2598]]=function(_0x4fa0x2){var _0x4fa0x3=null;return _0x4fa0x3=null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[2595]]?_0x4fa0x2[_0x285e[2595]]():this[_0x285e[2454]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2599]]=function(_0x4fa0x2){return null};mxGraph[_0x285e[202]][_0x285e[1731]]=function(_0x4fa0x2){var _0x4fa0x3= new mxRectangle,_0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);null!=_0x4fa0x2&&(_0x4fa0x4=parseInt(mxUtils[_0x285e[433]](_0x4fa0x2,mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE)),mxUtils[_0x285e[433]](_0x4fa0x2,mxConstants.STYLE_HORIZONTAL,!0)?_0x4fa0x3[_0x285e[119]]=_0x4fa0x4:_0x4fa0x3[_0x285e[117]]=_0x4fa0x4);return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[1202]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2484]]]:null};mxGraph[_0x285e[202]][_0x285e[2187]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2063]]]||mxConstants[_0x285e[481]]:null};mxGraph[_0x285e[202]][_0x285e[2173]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2600]]]:null};mxGraph[_0x285e[202]][_0x285e[2174]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2601]]]:null};mxGraph[_0x285e[202]][_0x285e[2172]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2602]]]:null};mxGraph[_0x285e[202]][_0x285e[2176]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[124]]?_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2603]]]:null};mxGraph[_0x285e[202]][_0x285e[2476]]=function(){return this[_0x285e[467]]};mxGraph[_0x285e[202]][_0x285e[2604]]=function(_0x4fa0x2){this[_0x285e[467]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[1730]]=function(_0x4fa0x2){if(null!=_0x4fa0x2&&this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2)!=this[_0x285e[251]][_0x285e[501]]()){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);if(null!=_0x4fa0x3&&!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)){return _0x4fa0x3[mxConstants[_0x285e[2059]]]==mxConstants[_0x285e[2605]]}};return !1};mxGraph[_0x285e[202]][_0x285e[2606]]=function(){return this[_0x285e[2389]]};mxGraph[_0x285e[202]][_0x285e[2607]]=function(_0x4fa0x2){this[_0x285e[2389]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxGraph[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2608]]=function(){return this[_0x285e[2362]]};mxGraph[_0x285e[202]][_0x285e[2609]]=function(_0x4fa0x2){this[_0x285e[2362]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2134]]=function(){return this[_0x285e[2363]]};mxGraph[_0x285e[202]][_0x285e[2610]]=function(_0x4fa0x2){this[_0x285e[2363]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2125]]=function(){return this[_0x285e[2364]]};mxGraph[_0x285e[202]][_0x285e[2611]]=function(_0x4fa0x2){this[_0x285e[2364]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2612]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x2);return this[_0x285e[2613]]()||null!=_0x4fa0x3&&this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2)&&_0x4fa0x3[_0x285e[1500]]};mxGraph[_0x285e[202]][_0x285e[2613]]=function(){return this[_0x285e[2368]]};mxGraph[_0x285e[202]][_0x285e[2614]]=function(_0x4fa0x2){this[_0x285e[2368]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2615]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[2616]](_0x4fa0x2)}))};mxGraph[_0x285e[202]][_0x285e[2616]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2617]]()&&0!=_0x4fa0x2[mxConstants[_0x285e[2618]]]};mxGraph[_0x285e[202]][_0x285e[2617]]=function(){return this[_0x285e[2369]]};mxGraph[_0x285e[202]][_0x285e[2619]]=function(_0x4fa0x2){this[_0x285e[2369]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[898]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[2620]](_0x4fa0x2)}))};mxGraph[_0x285e[202]][_0x285e[2620]]=function(_0x4fa0x2){return this[_0x285e[2366]]};mxGraph[_0x285e[202]][_0x285e[900]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[2621]](_0x4fa0x2)}))};mxGraph[_0x285e[202]][_0x285e[2621]]=function(_0x4fa0x2){return this[_0x285e[2367]]};mxGraph[_0x285e[202]][_0x285e[2102]]=function(_0x4fa0x2){return this[_0x285e[2622]]()};mxGraph[_0x285e[202]][_0x285e[2622]]=function(){return this[_0x285e[2379]]};mxGraph[_0x285e[202]][_0x285e[2623]]=function(_0x4fa0x2){this[_0x285e[2379]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2510]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[2624]](_0x4fa0x2)}))};mxGraph[_0x285e[202]][_0x285e[2624]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2625]]()&&0!=_0x4fa0x2[mxConstants[_0x285e[2626]]]};mxGraph[_0x285e[202]][_0x285e[2625]]=function(){return this[_0x285e[2371]]};mxGraph[_0x285e[202]][_0x285e[2627]]=function(_0x4fa0x2){this[_0x285e[2371]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2628]]=function(_0x4fa0x2){return !this[_0x285e[2612]](_0x4fa0x2)&&(this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)&&this[_0x285e[2373]]||this[_0x285e[251]][_0x285e[1193]](_0x4fa0x2)&&this[_0x285e[2374]])};mxGraph[_0x285e[202]][_0x285e[2629]]=function(_0x4fa0x2){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[1712]](_0x4fa0x2)}))};mxGraph[_0x285e[202]][_0x285e[1712]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2630]]()&&!this[_0x285e[2612]](_0x4fa0x2)&&0!=_0x4fa0x3[mxConstants[_0x285e[2631]]]};mxGraph[_0x285e[202]][_0x285e[2630]]=function(){return this[_0x285e[2372]]};mxGraph[_0x285e[202]][_0x285e[2632]]=function(_0x4fa0x2){this[_0x285e[2372]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[997]]=function(){return this[_0x285e[991]]};mxGraph[_0x285e[202]][_0x285e[998]]=function(_0x4fa0x2){this[_0x285e[991]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2549]]=function(){return this[_0x285e[2348]]};mxGraph[_0x285e[202]][_0x285e[2633]]=function(_0x4fa0x2){this[_0x285e[2348]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2634]]=function(){return this[_0x285e[1020]]};mxGraph[_0x285e[202]][_0x285e[2635]]=function(_0x4fa0x2){this[_0x285e[1020]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2636]]=function(){return this[_0x285e[2353]]};mxGraph[_0x285e[202]][_0x285e[2637]]=function(_0x4fa0x2){this[_0x285e[2353]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2638]]=function(){return this[_0x285e[2374]]};mxGraph[_0x285e[202]][_0x285e[2639]]=function(_0x4fa0x2){this[_0x285e[2374]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2640]]=function(){return this[_0x285e[2373]]};mxGraph[_0x285e[202]][_0x285e[2641]]=function(_0x4fa0x2){this[_0x285e[2373]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2642]]=function(){return this[_0x285e[2412]]};mxGraph[_0x285e[202]][_0x285e[2643]]=function(_0x4fa0x2){this[_0x285e[2412]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2460]]=function(){return this[_0x285e[2411]]};mxGraph[_0x285e[202]][_0x285e[2644]]=function(_0x4fa0x2){this[_0x285e[2411]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2645]]=function(){return this[_0x285e[2404]]};mxGraph[_0x285e[202]][_0x285e[2646]]=function(_0x4fa0x2){this[_0x285e[2404]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2647]]=function(){return this[_0x285e[2402]]};mxGraph[_0x285e[202]][_0x285e[2648]]=function(_0x4fa0x2){this[_0x285e[2406]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2530]]=function(){return this[_0x285e[2406]]};mxGraph[_0x285e[202]][_0x285e[2649]]=function(_0x4fa0x2){this[_0x285e[2405]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2650]]=function(){return this[_0x285e[2405]]};mxGraph[_0x285e[202]][_0x285e[2651]]=function(_0x4fa0x2){this[_0x285e[2407]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2527]]=function(){return this[_0x285e[2407]]};mxGraph[_0x285e[202]][_0x285e[2652]]=function(_0x4fa0x2){this[_0x285e[2402]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2529]]=function(){return this[_0x285e[2408]]};mxGraph[_0x285e[202]][_0x285e[2653]]=function(_0x4fa0x2){this[_0x285e[2408]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[1015]]=function(){return this[_0x285e[2375]]};mxGraph[_0x285e[202]][_0x285e[2654]]=function(_0x4fa0x2){this[_0x285e[2375]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2655]]=function(){return this[_0x285e[2376]]};mxGraph[_0x285e[202]][_0x285e[2656]]=function(_0x4fa0x2){this[_0x285e[2376]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2657]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2658]]()&&!this[_0x285e[2612]](_0x4fa0x2)&&0!=_0x4fa0x3[mxConstants[_0x285e[2659]]]};mxGraph[_0x285e[202]][_0x285e[2658]]=function(){return this[_0x285e[2377]]};mxGraph[_0x285e[202]][_0x285e[2660]]=function(_0x4fa0x2){this[_0x285e[2377]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2661]]=function(_0x4fa0x2,_0x4fa0x3){return !0};mxGraph[_0x285e[202]][_0x285e[2662]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2663]]()&&!this[_0x285e[2612]](_0x4fa0x2)&&0!=_0x4fa0x3[mxConstants[_0x285e[2664]]]};mxGraph[_0x285e[202]][_0x285e[2663]]=function(){return this[_0x285e[2378]]};mxGraph[_0x285e[202]][_0x285e[2665]]=function(_0x4fa0x2){this[_0x285e[2378]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2453]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2666]]()&&!this[_0x285e[2612]](_0x4fa0x2)&&0!=_0x4fa0x3[mxConstants[_0x285e[2667]]]};mxGraph[_0x285e[202]][_0x285e[2666]]=function(){return this[_0x285e[2370]]};mxGraph[_0x285e[202]][_0x285e[2668]]=function(_0x4fa0x2){this[_0x285e[2370]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2551]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return this[_0x285e[2669]]()&&!this[_0x285e[2612]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2669]]=function(){return this[_0x285e[2380]]};mxGraph[_0x285e[202]][_0x285e[2670]]=function(_0x4fa0x2){this[_0x285e[2380]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2671]]=function(_0x4fa0x2){return null==_0x4fa0x2&&this[_0x285e[2406]]||null!=_0x4fa0x2&&(!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)||this[_0x285e[2405]])&&this[_0x285e[2565]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2672]]=function(_0x4fa0x2){return this[_0x285e[2671]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2582]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[2671]](_0x4fa0x2)&&this[_0x285e[2672]](_0x4fa0x3)};mxGraph[_0x285e[202]][_0x285e[1995]]=function(_0x4fa0x2){this[_0x285e[2433]][_0x285e[995]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1965]]=function(_0x4fa0x2){return this[_0x285e[2433]][_0x285e[994]]()};mxGraph[_0x285e[202]][_0x285e[2673]]=function(_0x4fa0x2){this[_0x285e[2276]][_0x285e[995]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2674]]=function(_0x4fa0x2){this[_0x285e[2316]][_0x285e[2431]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2203]]=function(_0x4fa0x2){if(null!=this[_0x285e[2347]]){var _0x4fa0x3=this[_0x285e[2347]][_0x285e[2148]]();return null==_0x4fa0x2?null!=_0x4fa0x3:_0x4fa0x2==_0x4fa0x3};return !1};mxGraph[_0x285e[202]][_0x285e[2455]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return this[_0x285e[2675]]()||1==_0x4fa0x2[mxConstants[_0x285e[2676]]]};mxGraph[_0x285e[202]][_0x285e[2675]]=function(){return this[_0x285e[2381]]};mxGraph[_0x285e[202]][_0x285e[2677]]=function(_0x4fa0x2){this[_0x285e[2381]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2507]]=function(_0x4fa0x2){return !this[_0x285e[502]]()[_0x285e[250]](_0x4fa0x2)&&this[_0x285e[2678]]()};mxGraph[_0x285e[202]][_0x285e[2678]]=function(){return this[_0x285e[2392]]};mxGraph[_0x285e[202]][_0x285e[2679]]=function(_0x4fa0x2){this[_0x285e[2392]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2506]]=function(){return this[_0x285e[2393]]};mxGraph[_0x285e[202]][_0x285e[2680]]=function(_0x4fa0x2){this[_0x285e[2393]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2536]]=function(_0x4fa0x2){return this[_0x285e[2681]]()&&!this[_0x285e[502]]()[_0x285e[250]](this[_0x285e[502]]()[_0x285e[1197]](_0x4fa0x2))};mxGraph[_0x285e[202]][_0x285e[2681]]=function(){return this[_0x285e[2391]]};mxGraph[_0x285e[202]][_0x285e[2682]]=function(_0x4fa0x2){this[_0x285e[2391]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2505]]=function(){return this[_0x285e[2390]]};mxGraph[_0x285e[202]][_0x285e[2528]]=function(_0x4fa0x2){this[_0x285e[2390]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2537]]=function(_0x4fa0x2){return this[_0x285e[2683]](_0x4fa0x2)?this[_0x285e[2354]]:0};mxGraph[_0x285e[202]][_0x285e[2683]]=function(_0x4fa0x2){return !1};mxGraph[_0x285e[202]][_0x285e[2513]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[251]][_0x285e[1938]](_0x4fa0x2,mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return this[_0x285e[2516]](_0x4fa0x2,_0x4fa0x3)}))};mxGraph[_0x285e[202]][_0x285e[2516]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2),_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4[_0x285e[124]]:this[_0x285e[1705]](_0x4fa0x2);return 0<this[_0x285e[251]][_0x285e[262]](_0x4fa0x2)&&0!=_0x4fa0x4[mxConstants[_0x285e[2684]]]};mxGraph[_0x285e[202]][_0x285e[2685]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null!=_0x4fa0x2&&(this[_0x285e[2655]]()&&this[_0x285e[2686]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)||!this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)&&(this[_0x285e[1730]](_0x4fa0x2)||0<this[_0x285e[251]][_0x285e[262]](_0x4fa0x2)&&!this[_0x285e[1742]](_0x4fa0x2)))};mxGraph[_0x285e[202]][_0x285e[2686]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return this[_0x285e[251]][_0x285e[250]](_0x4fa0x2)&&null!=_0x4fa0x3&&1==_0x4fa0x3[_0x285e[67]]&&this[_0x285e[2565]](_0x4fa0x3[0])&&null==this[_0x285e[2500]](_0x4fa0x2,this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!0),_0x4fa0x3[0])?(_0x4fa0x4=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!0),_0x4fa0x2=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x2,!1),!this[_0x285e[251]][_0x285e[1720]](_0x4fa0x3[0],_0x4fa0x4)&&!this[_0x285e[251]][_0x285e[1720]](_0x4fa0x3[0],_0x4fa0x2)):!1};mxGraph[_0x285e[202]][_0x285e[564]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(!this[_0x285e[2642]]()){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){if(this[_0x285e[1730]](_0x4fa0x2[_0x4fa0x5])){return null}}};_0x4fa0x5=mxUtils[_0x285e[2196]](this[_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x3),mxEvent[_0x285e[733]](_0x4fa0x3));_0x4fa0x5[_0x285e[235]]-=this[_0x285e[1136]];_0x4fa0x5[_0x285e[236]]-=this[_0x285e[1137]];_0x4fa0x5=this[_0x285e[2461]](_0x4fa0x5[_0x285e[235]],_0x4fa0x5[_0x285e[236]]);if(null==_0x4fa0x4){_0x4fa0x4=_0x4fa0x5}else {if(null!=_0x4fa0x5){for(var _0x4fa0x9=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x5);null!=_0x4fa0x9&&this[_0x285e[1730]](_0x4fa0x9)&&_0x4fa0x9!=_0x4fa0x4;){_0x4fa0x9=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x9)};_0x4fa0x9==_0x4fa0x4&&(_0x4fa0x4=_0x4fa0x5)}};for(;null!=_0x4fa0x4&&!this[_0x285e[2685]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x3)&&!this[_0x285e[251]][_0x285e[1740]](_0x4fa0x4);){_0x4fa0x4=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x4)};return !this[_0x285e[251]][_0x285e[1740]](_0x4fa0x4)&&0>mxUtils[_0x285e[2]](_0x4fa0x2,_0x4fa0x4)?_0x4fa0x4:null};mxGraph[_0x285e[202]][_0x285e[902]]=function(){var _0x4fa0x2=this[_0x285e[2355]];null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[2534]](),null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[251]][_0x285e[501]](),_0x4fa0x2=this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,0)));return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2687]]=function(_0x4fa0x2){this[_0x285e[2355]]=_0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2179]]=function(_0x4fa0x2){for(;null!=_0x4fa0x2&&!this[_0x285e[1730]](_0x4fa0x2);){_0x4fa0x2=this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2)};return _0x4fa0x2};mxGraph[_0x285e[202]][_0x285e[2461]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=_0x4fa0x4||this[_0x285e[902]]();if(null!=_0x4fa0x4){for(var _0x4fa0x5=this[_0x285e[251]][_0x285e[262]](_0x4fa0x4),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[251]][_0x285e[263]](_0x4fa0x4,_0x4fa0x9),_0x4fa0x12=this[_0x285e[2461]](_0x4fa0x2,_0x4fa0x3,_0x4fa0xa);if(null!=_0x4fa0x12){return _0x4fa0x12};if(this[_0x285e[1730]](_0x4fa0xa)&&(_0x4fa0x12=this[_0x285e[441]][_0x285e[248]](_0x4fa0xa),this[_0x285e[1825]](_0x4fa0x12,_0x4fa0x2,_0x4fa0x3))){return _0x4fa0xa}}};return null};mxGraph[_0x285e[202]][_0x285e[999]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:!0;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:this[_0x285e[902]]();if(null!=_0x4fa0x4){for(var _0x4fa0xa=this[_0x285e[251]][_0x285e[262]](_0x4fa0x4)-1;0<=_0x4fa0xa;_0x4fa0xa--){var _0x4fa0x12=this[_0x285e[251]][_0x285e[263]](_0x4fa0x4,_0x4fa0xa),_0x4fa0x13=this[_0x285e[999]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x12,_0x4fa0x5,_0x4fa0x9);if(null!=_0x4fa0x13){return _0x4fa0x13};if(this[_0x285e[1714]](_0x4fa0x12)&&(_0x4fa0x9&&this[_0x285e[251]][_0x285e[250]](_0x4fa0x12)||_0x4fa0x5&&this[_0x285e[251]][_0x285e[1193]](_0x4fa0x12))){if(_0x4fa0x13=this[_0x285e[441]][_0x285e[248]](_0x4fa0x12),this[_0x285e[1825]](_0x4fa0x13,_0x4fa0x2,_0x4fa0x3)){return _0x4fa0x12}}}};return null};mxGraph[_0x285e[202]][_0x285e[1825]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2){var _0x4fa0x5=_0x4fa0x2[_0x285e[439]];if(null!=_0x4fa0x5){_0x4fa0x2=this[_0x285e[2353]]*this[_0x285e[2353]];for(var _0x4fa0x9=_0x4fa0x5[0],_0x4fa0xa=1;_0x4fa0xa<_0x4fa0x5[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x5[_0x4fa0xa];if(mxUtils[_0x285e[440]](_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]],_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x3,_0x4fa0x4)<=_0x4fa0x2){return !0};_0x4fa0x9=_0x4fa0x12}}else {if(_0x4fa0x9=mxUtils[_0x285e[431]](mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION)||0),0!=_0x4fa0x9&&(_0x4fa0x5=Math[_0x285e[426]](-_0x4fa0x9),_0x4fa0x9=Math[_0x285e[427]](-_0x4fa0x9),_0x4fa0xa= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]()),_0x4fa0x9=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x3,_0x4fa0x4),_0x4fa0x5,_0x4fa0x9,_0x4fa0xa),_0x4fa0x3=_0x4fa0x9[_0x285e[235]],_0x4fa0x4=_0x4fa0x9[_0x285e[236]]),mxUtils[_0x285e[442]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)){return !0}}};return !1};mxGraph[_0x285e[202]][_0x285e[2688]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[1731]](_0x4fa0x2);if(null!=_0x4fa0x5){var _0x4fa0x9=this[_0x285e[249]]()[_0x285e[518]]();_0x4fa0x3-=_0x4fa0x5[_0x285e[235]];_0x4fa0x4-=_0x4fa0x5[_0x285e[236]];if(0<_0x4fa0x2[_0x285e[117]]&&0<_0x4fa0x3&&_0x4fa0x3>_0x4fa0x2[_0x285e[117]]*_0x4fa0x9||0<_0x4fa0x2[_0x285e[119]]&&0<_0x4fa0x4&&_0x4fa0x4>_0x4fa0x2[_0x285e[119]]*_0x4fa0x9){return !0}};return !1};mxGraph[_0x285e[202]][_0x285e[1728]]=function(_0x4fa0x2){return this[_0x285e[1955]](_0x4fa0x2,!0,!1)};mxGraph[_0x285e[202]][_0x285e[1956]]=function(_0x4fa0x2){return this[_0x285e[1955]](_0x4fa0x2,!1,!0)};mxGraph[_0x285e[202]][_0x285e[1955]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:this[_0x285e[902]]();_0x4fa0x2=this[_0x285e[251]][_0x285e[1955]](_0x4fa0x2,null!=_0x4fa0x3?_0x4fa0x3:!1,null!=_0x4fa0x4?_0x4fa0x4:!1);_0x4fa0x3=[];for(_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){this[_0x285e[1714]](_0x4fa0x2[_0x4fa0x4])&&_0x4fa0x3[_0x285e[207]](_0x4fa0x2[_0x4fa0x4])};return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[1756]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[264]](_0x4fa0x2,_0x4fa0x3,!0,!0,!1)};mxGraph[_0x285e[202]][_0x285e[1867]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[264]](_0x4fa0x2,_0x4fa0x3,!0,!1,!1)};mxGraph[_0x285e[202]][_0x285e[1963]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[264]](_0x4fa0x2,_0x4fa0x3,!1,!0,!1)};mxGraph[_0x285e[202]][_0x285e[264]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:!0;_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:!1;for(var _0x4fa0x12=[],_0x4fa0x13=this[_0x285e[1742]](_0x4fa0x2),_0x4fa0x14=this[_0x285e[251]][_0x285e[262]](_0x4fa0x2),_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x14;_0x4fa0x15++){var _0x4fa0x16=this[_0x285e[251]][_0x285e[263]](_0x4fa0x2,_0x4fa0x15);if(_0x4fa0x13||!this[_0x285e[1714]](_0x4fa0x16)){_0x4fa0x12=_0x4fa0x12[_0x285e[1919]](this[_0x285e[251]][_0x285e[264]](_0x4fa0x16,_0x4fa0x4,_0x4fa0x5))}};_0x4fa0x12=_0x4fa0x12[_0x285e[1919]](this[_0x285e[251]][_0x285e[264]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5));_0x4fa0x13=[];for(_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x12[_0x285e[67]];_0x4fa0x15++){_0x4fa0x16=this[_0x285e[441]][_0x285e[248]](_0x4fa0x12[_0x4fa0x15]),_0x4fa0x14=null!=_0x4fa0x16?_0x4fa0x16[_0x285e[1710]](!0):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x12[_0x4fa0x15],!0),_0x4fa0x16=null!=_0x4fa0x16?_0x4fa0x16[_0x285e[1710]](!1):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x12[_0x4fa0x15],!1),(_0x4fa0x9&&_0x4fa0x14==_0x4fa0x16||_0x4fa0x14!=_0x4fa0x16&&(_0x4fa0x4&&_0x4fa0x16==_0x4fa0x2&&(null==_0x4fa0x3||this[_0x285e[1920]](_0x4fa0x14,_0x4fa0x3,_0x4fa0xa))||_0x4fa0x5&&_0x4fa0x14==_0x4fa0x2&&(null==_0x4fa0x3||this[_0x285e[1920]](_0x4fa0x16,_0x4fa0x3,_0x4fa0xa))))&&_0x4fa0x13[_0x285e[207]](_0x4fa0x12[_0x4fa0x15])};return _0x4fa0x13};mxGraph[_0x285e[202]][_0x285e[1920]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x4?this[_0x285e[251]][_0x285e[1720]](_0x4fa0x3,_0x4fa0x2):this[_0x285e[251]][_0x285e[1197]](_0x4fa0x2)==_0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[1808]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!0;_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;var _0x4fa0x9=[],_0x4fa0xa={};if(null!=_0x4fa0x2){for(var _0x4fa0x12=0;_0x4fa0x12<_0x4fa0x2[_0x285e[67]];_0x4fa0x12++){var _0x4fa0x13=this[_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x4fa0x12]),_0x4fa0x14=null!=_0x4fa0x13?_0x4fa0x13[_0x285e[1710]](!0):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x2[_0x4fa0x12],!0),_0x4fa0x13=null!=_0x4fa0x13?_0x4fa0x13[_0x285e[1710]](!1):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x2[_0x4fa0x12],!1);if(_0x4fa0x14==_0x4fa0x3&&null!=_0x4fa0x13&&_0x4fa0x13!=_0x4fa0x3&&_0x4fa0x5){var _0x4fa0x15=mxCellPath[_0x285e[385]](_0x4fa0x13);null==_0x4fa0xa[_0x4fa0x15]&&(_0x4fa0xa[_0x4fa0x15]=_0x4fa0x13,_0x4fa0x9[_0x285e[207]](_0x4fa0x13))}else {_0x4fa0x13==_0x4fa0x3&&(null!=_0x4fa0x14&&_0x4fa0x14!=_0x4fa0x3&&_0x4fa0x4)&&(_0x4fa0x15=mxCellPath[_0x285e[385]](_0x4fa0x14),null==_0x4fa0xa[_0x4fa0x15]&&(_0x4fa0xa[_0x4fa0x15]=_0x4fa0x14,_0x4fa0x9[_0x285e[207]](_0x4fa0x14)))}}};return _0x4fa0x9};mxGraph[_0x285e[202]][_0x285e[1781]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;for(var _0x4fa0x5=this[_0x285e[264]](_0x4fa0x2),_0x4fa0x9=[],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[441]][_0x285e[248]](_0x4fa0x5[_0x4fa0xa]),_0x4fa0x13=null!=_0x4fa0x12?_0x4fa0x12[_0x285e[1710]](!0):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x5[_0x4fa0xa],!0),_0x4fa0x12=null!=_0x4fa0x12?_0x4fa0x12[_0x285e[1710]](!1):this[_0x285e[441]][_0x285e[1710]](_0x4fa0x5[_0x4fa0xa],!1);(_0x4fa0x13==_0x4fa0x2&&_0x4fa0x12==_0x4fa0x3||!_0x4fa0x4&&_0x4fa0x13==_0x4fa0x3&&_0x4fa0x12==_0x4fa0x2)&&_0x4fa0x9[_0x285e[207]](_0x4fa0x5[_0x4fa0xa])};return _0x4fa0x9};mxGraph[_0x285e[202]][_0x285e[2689]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxUtils[_0x285e[2196]](this[_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x2),mxEvent[_0x285e[733]](_0x4fa0x2)),_0x4fa0x5=this[_0x285e[441]][_0x285e[255]],_0x4fa0x9=this[_0x285e[441]][_0x285e[513]],_0x4fa0xa=!1!=_0x4fa0x3?this[_0x285e[1020]]/2:0;_0x4fa0x4[_0x285e[235]]=this[_0x285e[1021]](_0x4fa0x4[_0x285e[235]]/_0x4fa0x5-_0x4fa0x9[_0x285e[235]]-_0x4fa0xa);_0x4fa0x4[_0x285e[236]]=this[_0x285e[1021]](_0x4fa0x4[_0x285e[236]]/_0x4fa0x5-_0x4fa0x9[_0x285e[236]]-_0x4fa0xa);return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[2690]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0xa=null!=_0x4fa0xa?_0x4fa0xa:[];if(0<_0x4fa0x4||0<_0x4fa0x5){var _0x4fa0x12=_0x4fa0x2+_0x4fa0x4,_0x4fa0x13=_0x4fa0x3+_0x4fa0x5;_0x4fa0x9=_0x4fa0x9||this[_0x285e[902]]();if(null!=_0x4fa0x9){for(var _0x4fa0x14=this[_0x285e[251]][_0x285e[262]](_0x4fa0x9),_0x4fa0x15=0;_0x4fa0x15<_0x4fa0x14;_0x4fa0x15++){var _0x4fa0x16=this[_0x285e[251]][_0x285e[263]](_0x4fa0x9,_0x4fa0x15),_0x4fa0x17=this[_0x285e[441]][_0x285e[248]](_0x4fa0x16);if(this[_0x285e[1714]](_0x4fa0x16)&&null!=_0x4fa0x17){var _0x4fa0x18=_0x4fa0x17,_0x4fa0x17=mxUtils[_0x285e[433]](_0x4fa0x17[_0x285e[124]],mxConstants.STYLE_ROTATION)||0;0!=_0x4fa0x17&&(_0x4fa0x18=mxUtils[_0x285e[1613]](_0x4fa0x18,_0x4fa0x17));_0x4fa0x18[_0x285e[235]]>=_0x4fa0x2&&_0x4fa0x18[_0x285e[236]]+_0x4fa0x18[_0x285e[119]]<=_0x4fa0x13&&_0x4fa0x18[_0x285e[236]]>=_0x4fa0x3&&_0x4fa0x18[_0x285e[235]]+_0x4fa0x18[_0x285e[117]]<=_0x4fa0x12?_0x4fa0xa[_0x285e[207]](_0x4fa0x16):this[_0x285e[2690]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x16,_0x4fa0xa)}}}};return _0x4fa0xa};mxGraph[_0x285e[202]][_0x285e[2691]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=[];if(_0x4fa0x5||_0x4fa0x9){if(null==_0x4fa0x4&&(_0x4fa0x4=this[_0x285e[902]]()),null!=_0x4fa0x4){for(var _0x4fa0x12=this[_0x285e[251]][_0x285e[262]](_0x4fa0x4),_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x12;_0x4fa0x13++){var _0x4fa0x14=this[_0x285e[251]][_0x285e[263]](_0x4fa0x4,_0x4fa0x13),_0x4fa0x15=this[_0x285e[441]][_0x285e[248]](_0x4fa0x14);this[_0x285e[1714]](_0x4fa0x14)&&null!=_0x4fa0x15&&(!_0x4fa0x5||_0x4fa0x15[_0x285e[235]]>=_0x4fa0x2)&&(!_0x4fa0x9||_0x4fa0x15[_0x285e[236]]>=_0x4fa0x3)&&_0x4fa0xa[_0x285e[207]](_0x4fa0x14)}}};return _0x4fa0xa};mxGraph[_0x285e[202]][_0x285e[1757]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!1;_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4:!1;var _0x4fa0x5=[];if(null!=_0x4fa0x2){for(var _0x4fa0x9=this[_0x285e[502]](),_0x4fa0xa=_0x4fa0x9[_0x285e[262]](_0x4fa0x2),_0x4fa0x12=null,_0x4fa0x13=0,_0x4fa0x14=0;_0x4fa0x14<_0x4fa0xa;_0x4fa0x14++){var _0x4fa0x15=_0x4fa0x9[_0x285e[263]](_0x4fa0x2,_0x4fa0x14);if(this[_0x285e[251]][_0x285e[1193]](_0x4fa0x15)&&this[_0x285e[1714]](_0x4fa0x15)){for(var _0x4fa0x16=this[_0x285e[1756]](_0x4fa0x15,_0x4fa0x3?_0x4fa0x2:null),_0x4fa0x17=0,_0x4fa0x18=0,_0x4fa0x19=0;_0x4fa0x19<_0x4fa0x16[_0x285e[67]];_0x4fa0x19++){this[_0x285e[441]][_0x285e[1710]](_0x4fa0x16[_0x4fa0x19],!0)==_0x4fa0x15?_0x4fa0x17++:_0x4fa0x18++};(_0x4fa0x4&&0==_0x4fa0x17&&0<_0x4fa0x18||!_0x4fa0x4&&0==_0x4fa0x18&&0<_0x4fa0x17)&&_0x4fa0x5[_0x285e[207]](_0x4fa0x15);_0x4fa0x16=_0x4fa0x4?_0x4fa0x18-_0x4fa0x17:_0x4fa0x17-_0x4fa0x18;_0x4fa0x16>_0x4fa0x13&&(_0x4fa0x13=_0x4fa0x16,_0x4fa0x12=_0x4fa0x15)}};0==_0x4fa0x5[_0x285e[67]]&&null!=_0x4fa0x12&&_0x4fa0x5[_0x285e[207]](_0x4fa0x12)};return _0x4fa0x5};mxGraph[_0x285e[202]][_0x285e[1706]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x4&&null!=_0x4fa0x2){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;_0x4fa0x9=_0x4fa0x9||[];var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2);if(null==_0x4fa0x9[_0x4fa0xa]&&(_0x4fa0x9[_0x4fa0xa]=_0x4fa0x2,_0x4fa0x5=_0x4fa0x4(_0x4fa0x2,_0x4fa0x5),null==_0x4fa0x5||_0x4fa0x5)){if(_0x4fa0x5=this[_0x285e[251]][_0x285e[1707]](_0x4fa0x2),0<_0x4fa0x5){for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5;_0x4fa0xa++){var _0x4fa0x12=this[_0x285e[251]][_0x285e[1708]](_0x4fa0x2,_0x4fa0xa),_0x4fa0x13=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x12,!0)==_0x4fa0x2;if(!_0x4fa0x3||_0x4fa0x13){_0x4fa0x13=this[_0x285e[251]][_0x285e[1709]](_0x4fa0x12,!_0x4fa0x13),this[_0x285e[1706]](_0x4fa0x13,_0x4fa0x3,_0x4fa0x4,_0x4fa0x12,_0x4fa0x9)}}}}}};mxGraph[_0x285e[202]][_0x285e[2692]]=function(_0x4fa0x2){return this[_0x285e[2435]]()[_0x285e[2097]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2693]]=function(){return this[_0x285e[2435]]()[_0x285e[1107]]()};mxGraph[_0x285e[202]][_0x285e[2440]]=function(){return this[_0x285e[2435]]()[_0x285e[200]]()};mxGraph[_0x285e[202]][_0x285e[2694]]=function(){return this[_0x285e[2435]]()[_0x285e[895]][_0x285e[67]]};mxGraph[_0x285e[202]][_0x285e[2452]]=function(){return this[_0x285e[2435]]()[_0x285e[895]][0]};mxGraph[_0x285e[202]][_0x285e[897]]=function(){return this[_0x285e[2435]]()[_0x285e[895]][_0x285e[1853]]()};mxGraph[_0x285e[202]][_0x285e[2450]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[2099]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[904]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[2100]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2695]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[2103]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2696]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[832]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2697]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[2104]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2439]]=function(_0x4fa0x2){this[_0x285e[2435]]()[_0x285e[842]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2698]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[2690]](_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],_0x4fa0x2[_0x285e[117]],_0x4fa0x2[_0x285e[119]]);this[_0x285e[2699]](_0x4fa0x4,_0x4fa0x3);return _0x4fa0x4};mxGraph[_0x285e[202]][_0x285e[2700]]=function(){this[_0x285e[2701]](!0)};mxGraph[_0x285e[202]][_0x285e[2702]]=function(){this[_0x285e[2701]]()};mxGraph[_0x285e[202]][_0x285e[2703]]=function(){this[_0x285e[2701]](!1,!0)};mxGraph[_0x285e[202]][_0x285e[2704]]=function(){this[_0x285e[2701]](!1,!1,!0)};mxGraph[_0x285e[202]][_0x285e[2701]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[2105]],_0x4fa0x9=0<_0x4fa0x5[_0x285e[895]][_0x285e[67]]?_0x4fa0x5[_0x285e[895]][0]:null;1<_0x4fa0x5[_0x285e[895]][_0x285e[67]]&&_0x4fa0x5[_0x285e[200]]();var _0x4fa0x5=null!=_0x4fa0x9?this[_0x285e[251]][_0x285e[1197]](_0x4fa0x9):this[_0x285e[902]](),_0x4fa0xa=this[_0x285e[251]][_0x285e[262]](_0x4fa0x5);null==_0x4fa0x9&&0<_0x4fa0xa?(_0x4fa0x2=this[_0x285e[251]][_0x285e[263]](_0x4fa0x5,0),this[_0x285e[2450]](_0x4fa0x2)):(null==_0x4fa0x9||_0x4fa0x3)&&null!=this[_0x285e[441]][_0x285e[248]](_0x4fa0x5)&&null!=this[_0x285e[251]][_0x285e[1721]](_0x4fa0x5)?this[_0x285e[2534]]()!=_0x4fa0x5&&this[_0x285e[2450]](_0x4fa0x5):null!=_0x4fa0x9&&_0x4fa0x4?0<this[_0x285e[251]][_0x285e[262]](_0x4fa0x9)&&(_0x4fa0x2=this[_0x285e[251]][_0x285e[263]](_0x4fa0x9,0),this[_0x285e[2450]](_0x4fa0x2)):0<_0x4fa0xa&&(_0x4fa0x3=_0x4fa0x5[_0x285e[1738]](_0x4fa0x9),_0x4fa0x2?(_0x4fa0x3++,_0x4fa0x2=this[_0x285e[251]][_0x285e[263]](_0x4fa0x5,_0x4fa0x3%_0x4fa0xa)):(_0x4fa0x3--,_0x4fa0x2=this[_0x285e[251]][_0x285e[263]](_0x4fa0x5,0>_0x4fa0x3?_0x4fa0xa-1:_0x4fa0x3)),this[_0x285e[2450]](_0x4fa0x2))};mxGraph[_0x285e[202]][_0x285e[2705]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2||this[_0x285e[902]]();_0x4fa0x2=this[_0x285e[251]][_0x285e[1953]](_0x4fa0x2);null!=_0x4fa0x2&&this[_0x285e[904]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2706]]=function(_0x4fa0x2){this[_0x285e[2707]](!0,!1,_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2708]]=function(_0x4fa0x2){this[_0x285e[2707]](!1,!0,_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2707]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=_0x4fa0x4||this[_0x285e[902]]();var _0x4fa0x5=mxUtils[_0x285e[885]](this,function(_0x4fa0x4){return null!=this[_0x285e[441]][_0x285e[248]](_0x4fa0x4)&&0==this[_0x285e[251]][_0x285e[262]](_0x4fa0x4)&&(this[_0x285e[251]][_0x285e[1193]](_0x4fa0x4)&&_0x4fa0x2||this[_0x285e[251]][_0x285e[250]](_0x4fa0x4)&&_0x4fa0x3)});_0x4fa0x4=this[_0x285e[251]][_0x285e[1921]](_0x4fa0x5,_0x4fa0x4);this[_0x285e[904]](_0x4fa0x4)};mxGraph[_0x285e[202]][_0x285e[2459]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[2692]](_0x4fa0x2);this[_0x285e[2462]](_0x4fa0x3)?_0x4fa0x4?this[_0x285e[2697]](_0x4fa0x2):this[_0x285e[2695]](_0x4fa0x2):(!_0x4fa0x4||1!=this[_0x285e[2694]]())&&this[_0x285e[2450]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2699]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2462]](_0x4fa0x3)?this[_0x285e[2696]](_0x4fa0x2):this[_0x285e[904]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[2709]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(this[_0x285e[251]][_0x285e[250]](_0x4fa0x2[_0x285e[246]])?(_0x4fa0x3=this[_0x285e[441]][_0x285e[2291]](_0x4fa0x2),_0x4fa0x3=this[_0x285e[2573]](_0x4fa0x2)||_0x4fa0x3==mxEdgeStyle[_0x285e[2568]]||_0x4fa0x3==mxEdgeStyle[_0x285e[2569]]||_0x4fa0x3==mxEdgeStyle[_0x285e[2570]]? new mxElbowEdgeHandler(_0x4fa0x2):_0x4fa0x3==mxEdgeStyle[_0x285e[2567]]||_0x4fa0x3==mxEdgeStyle[_0x285e[2572]]? new mxEdgeSegmentHandler(_0x4fa0x2): new mxEdgeHandler(_0x4fa0x2)):_0x4fa0x3= new mxVertexHandler(_0x4fa0x2));return _0x4fa0x3};mxGraph[_0x285e[202]][_0x285e[1133]]=function(_0x4fa0x2){null==this[_0x285e[2329]]&&(this[_0x285e[2329]]=[]);this[_0x285e[2329]][_0x285e[207]](_0x4fa0x2)};mxGraph[_0x285e[202]][_0x285e[1148]]=function(_0x4fa0x2){if(null!=this[_0x285e[2329]]){for(var _0x4fa0x3=0;_0x4fa0x3<this[_0x285e[2329]][_0x285e[67]];_0x4fa0x3++){if(this[_0x285e[2329]][_0x4fa0x3]==_0x4fa0x2){this[_0x285e[2329]][_0x285e[300]](_0x4fa0x3,1);break}}}};mxGraph[_0x285e[202]][_0x285e[2710]]=function(_0x4fa0x2){if(null==_0x4fa0x2[_0x285e[725]]||null==_0x4fa0x2[_0x285e[726]]){var _0x4fa0x3=mxUtils[_0x285e[2196]](this[_0x285e[526]],_0x4fa0x2[_0x285e[730]](),_0x4fa0x2[_0x285e[732]]());_0x4fa0x2[_0x285e[725]]=_0x4fa0x3[_0x285e[235]]-this[_0x285e[1136]];_0x4fa0x2[_0x285e[726]]=_0x4fa0x3[_0x285e[236]]-this[_0x285e[1137]]}};mxGraph[_0x285e[202]][_0x285e[758]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null==_0x4fa0x4&&(_0x4fa0x4=this);this[_0x285e[2710]](_0x4fa0x3);_0x4fa0x2==mxEvent[_0x285e[2711]]&&(this[_0x285e[1009]]= !0);if(mxClient[_0x285e[754]]&&this[_0x285e[2349]]&&_0x4fa0x2==mxEvent[_0x285e[2711]]){var _0x4fa0x5=( new Date)[_0x285e[178]]();_0x4fa0x5-this[_0x285e[2213]]<this[_0x285e[2350]]&&Math[_0x285e[425]](this[_0x285e[2712]]-_0x4fa0x3[_0x285e[730]]())<this[_0x285e[2351]]&&Math[_0x285e[425]](this[_0x285e[2352]]-_0x4fa0x3[_0x285e[732]]())<this[_0x285e[2351]]?(this[_0x285e[2213]]=0,this[_0x285e[761]](_0x4fa0x3[_0x285e[727]](),_0x4fa0x3[_0x285e[736]]()),_0x4fa0x3[_0x285e[727]]()[_0x285e[786]]= !0):(this[_0x285e[2712]]=_0x4fa0x3[_0x285e[730]](),this[_0x285e[2352]]=_0x4fa0x3[_0x285e[732]](),this[_0x285e[2213]]=_0x4fa0x5)};_0x4fa0x5=2!=_0x4fa0x3[_0x285e[727]]()[_0x285e[764]];if(mxClient[_0x285e[80]]&&_0x285e[462]==document[_0x285e[135]]){if(null!=this[_0x285e[2713]]&&Math[_0x285e[425]](this[_0x285e[2713]]-_0x4fa0x3[_0x285e[730]]())>this[_0x285e[2351]]||null!=this[_0x285e[2714]]&&Math[_0x285e[425]](this[_0x285e[2714]]-_0x4fa0x3[_0x285e[732]]())>this[_0x285e[2351]]){_0x4fa0x5= !0};_0x4fa0x2==mxEvent[_0x285e[2715]]&&(this[_0x285e[2713]]=_0x4fa0x3[_0x285e[730]](),this[_0x285e[2714]]=_0x4fa0x3[_0x285e[732]]())};if((_0x4fa0x2!=mxEvent[_0x285e[2715]]||this[_0x285e[1009]])&&_0x4fa0x5){if(_0x4fa0x2==mxEvent[_0x285e[2715]]&&(this[_0x285e[1009]]= !1),!this[_0x285e[2203]]()&&(mxClient[_0x285e[71]]||mxClient[_0x285e[75]]||mxClient[_0x285e[76]]||mxClient[_0x285e[80]]&&mxClient[_0x285e[48]]||_0x4fa0x3[_0x285e[727]]()[_0x285e[772]]!=this[_0x285e[526]])){_0x4fa0x2==mxEvent[_0x285e[2716]]&&(this[_0x285e[1009]]&&this[_0x285e[1012]])&&this[_0x285e[1014]](_0x4fa0x3[_0x285e[734]](),_0x4fa0x3[_0x285e[735]](),this[_0x285e[1013]]);if(null!=this[_0x285e[2329]]){_0x4fa0x4=[_0x4fa0x4,_0x4fa0x3];_0x4fa0x3[_0x285e[727]]()[_0x285e[739]]= !0;for(_0x4fa0x5=0;_0x4fa0x5<this[_0x285e[2329]][_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[2329]][_0x4fa0x5];_0x4fa0x2==mxEvent[_0x285e[2711]]?_0x4fa0x9[_0x285e[787]][_0x285e[183]](_0x4fa0x9,_0x4fa0x4):_0x4fa0x2==mxEvent[_0x285e[2716]]?_0x4fa0x9[_0x285e[788]][_0x285e[183]](_0x4fa0x9,_0x4fa0x4):_0x4fa0x2==mxEvent[_0x285e[2715]]&&_0x4fa0x9[_0x285e[789]][_0x285e[183]](_0x4fa0x9,_0x4fa0x4)}};_0x4fa0x2==mxEvent[_0x285e[2715]]&&this[_0x285e[173]](_0x4fa0x3)}}else {_0x4fa0x2==mxEvent[_0x285e[2715]]&&(this[_0x285e[1009]]= !1)}};mxGraph[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[2717]]||(this[_0x285e[2717]]= !0,null!=this[_0x285e[2276]]&&this[_0x285e[2276]][_0x285e[515]](),null!=this[_0x285e[2432]]&&this[_0x285e[2432]][_0x285e[515]](),null!=this[_0x285e[2316]]&&this[_0x285e[2316]][_0x285e[515]](),null!=this[_0x285e[2433]]&&this[_0x285e[2433]][_0x285e[515]](),null!=this[_0x285e[1011]]&&this[_0x285e[1011]][_0x285e[515]](),null!=this[_0x285e[2347]]&&this[_0x285e[2347]][_0x285e[515]](),null!=this[_0x285e[441]]&&this[_0x285e[441]][_0x285e[515]](),null!=this[_0x285e[251]]&&null!=this[_0x285e[2343]]&&(this[_0x285e[251]][_0x285e[745]](this[_0x285e[2343]]),this[_0x285e[2343]]=null),this[_0x285e[526]]=null)};function mxCellOverlay(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){this[_0x285e[618]]=_0x4fa0x2;this[_0x285e[2718]]=_0x4fa0x3;this[_0x285e[611]]=null!=_0x4fa0x4?_0x4fa0x4:this[_0x285e[611]];this[_0x285e[123]]=null!=_0x4fa0x5?_0x4fa0x5:this[_0x285e[123]];this[_0x285e[1368]]=null!=_0x4fa0x9?_0x4fa0x9: new mxPoint;this[_0x285e[270]]=null!=_0x4fa0xa?_0x4fa0xa:_0x285e[2719]}mxCellOverlay[_0x285e[202]]= new mxEventSource;mxCellOverlay[_0x285e[202]][_0x285e[196]]=mxCellOverlay;mxCellOverlay[_0x285e[202]][_0x285e[618]]=null;mxCellOverlay[_0x285e[202]][_0x285e[2718]]=null;mxCellOverlay[_0x285e[202]][_0x285e[611]]=mxConstants[_0x285e[480]];mxCellOverlay[_0x285e[202]][_0x285e[123]]=mxConstants[_0x285e[482]];mxCellOverlay[_0x285e[202]][_0x285e[1368]]=null;mxCellOverlay[_0x285e[202]][_0x285e[270]]=null;mxCellOverlay[_0x285e[202]][_0x285e[2354]]=0.5;mxCellOverlay[_0x285e[202]][_0x285e[1799]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[441]][_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x4=_0x4fa0x2[_0x285e[441]][_0x285e[255]],_0x4fa0x5=null,_0x4fa0x9=this[_0x285e[618]][_0x285e[117]],_0x4fa0xa=this[_0x285e[618]][_0x285e[119]];_0x4fa0x3?(_0x4fa0x3=_0x4fa0x2[_0x285e[439]],1==_0x4fa0x3[_0x285e[67]]%2?_0x4fa0x5=_0x4fa0x3[Math[_0x285e[519]](_0x4fa0x3[_0x285e[67]]/2)]:(_0x4fa0x5=_0x4fa0x3[_0x285e[67]]/2,_0x4fa0x2=_0x4fa0x3[_0x4fa0x5-1],_0x4fa0x3=_0x4fa0x3[_0x4fa0x5],_0x4fa0x5= new mxPoint(_0x4fa0x2[_0x285e[235]]+(_0x4fa0x3[_0x285e[235]]-_0x4fa0x2[_0x285e[235]])/2,_0x4fa0x2[_0x285e[236]]+(_0x4fa0x3[_0x285e[236]]-_0x4fa0x2[_0x285e[236]])/2))):(_0x4fa0x5= new mxPoint,_0x4fa0x5[_0x285e[235]]=this[_0x285e[611]]==mxConstants[_0x285e[2132]]?_0x4fa0x2[_0x285e[235]]:this[_0x285e[611]]==mxConstants[_0x285e[479]]?_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]/2:_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]],_0x4fa0x5[_0x285e[236]]=this[_0x285e[123]]==mxConstants[_0x285e[1687]]?_0x4fa0x2[_0x285e[236]]:this[_0x285e[123]]==mxConstants[_0x285e[481]]?_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]/2:_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]);return new mxRectangle(Math[_0x285e[488]](_0x4fa0x5[_0x285e[235]]-(_0x4fa0x9*this[_0x285e[2354]]-this[_0x285e[1368]][_0x285e[235]])*_0x4fa0x4),Math[_0x285e[488]](_0x4fa0x5[_0x285e[236]]-(_0x4fa0xa*this[_0x285e[2354]]-this[_0x285e[1368]][_0x285e[236]])*_0x4fa0x4),_0x4fa0x9*_0x4fa0x4,_0x4fa0xa*_0x4fa0x4)};mxCellOverlay[_0x285e[202]][_0x285e[2591]]=function(){return this[_0x285e[2718]]};function mxOutline(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1097]]=_0x4fa0x2;null!=_0x4fa0x3&&this[_0x285e[176]](_0x4fa0x3)}mxOutline[_0x285e[202]][_0x285e[1097]]=null;mxOutline[_0x285e[202]][_0x285e[2136]]=null;mxOutline[_0x285e[202]][_0x285e[2720]]=mxConstants[_0x285e[2333]];mxOutline[_0x285e[202]][_0x285e[984]]= !0;mxOutline[_0x285e[202]][_0x285e[2721]]= !0;mxOutline[_0x285e[202]][_0x285e[467]]=10;mxOutline[_0x285e[202]][_0x285e[2722]]=8;mxOutline[_0x285e[202]][_0x285e[2723]]= !1;mxOutline[_0x285e[202]][_0x285e[2724]]=null;mxOutline[_0x285e[202]][_0x285e[1063]]= !1;mxOutline[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2){this[_0x285e[2136]]= new mxGraph(_0x4fa0x2,this[_0x285e[1097]][_0x285e[502]](),this[_0x285e[2720]],this[_0x285e[1097]][_0x285e[2434]]());this[_0x285e[2136]][_0x285e[2206]]= !1;this[_0x285e[2136]][_0x285e[1012]]= !1;var _0x4fa0x3=this[_0x285e[2136]][_0x285e[1177]];this[_0x285e[2136]][_0x285e[1177]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){!this[_0x285e[1063]]&&null!=this[_0x285e[2136]]&&_0x4fa0x3[_0x285e[183]](this[_0x285e[2136]],arguments)});mxClient[_0x285e[48]]&&(_0x4fa0x2=this[_0x285e[2136]][_0x285e[249]]()[_0x285e[2051]]()[_0x285e[265]],_0x4fa0x2[_0x285e[57]](_0x285e[2725],_0x285e[2726]),_0x4fa0x2[_0x285e[57]](_0x285e[2727],_0x285e[2726]));this[_0x285e[2136]][_0x285e[2409]]= !1;this[_0x285e[2136]][_0x285e[995]](!1);this[_0x285e[2728]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){!this[_0x285e[1063]]&&!this[_0x285e[1124]]&&this[_0x285e[2729]]()});this[_0x285e[1097]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[2728]]);this[_0x285e[2136]][_0x285e[1133]](this);_0x4fa0x2=this[_0x285e[1097]][_0x285e[249]]();_0x4fa0x2[_0x285e[169]](mxEvent.SCALE,this[_0x285e[2728]]);_0x4fa0x2[_0x285e[169]](mxEvent.TRANSLATE,this[_0x285e[2728]]);_0x4fa0x2[_0x285e[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x285e[2728]]);_0x4fa0x2[_0x285e[169]](mxEvent.DOWN,this[_0x285e[2728]]);_0x4fa0x2[_0x285e[169]](mxEvent.UP,this[_0x285e[2728]]);mxEvent[_0x285e[169]](this[_0x285e[1097]][_0x285e[526]],_0x285e[276],this[_0x285e[2728]]);this[_0x285e[2730]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2723]]&&this[_0x285e[2728]][_0x285e[183]](this,arguments)});this[_0x285e[1097]][_0x285e[169]](mxEvent.PAN,this[_0x285e[2730]]);this[_0x285e[2731]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2136]][_0x285e[2341]](this[_0x285e[1097]][_0x285e[2434]]());this[_0x285e[2136]][_0x285e[802]]()});this[_0x285e[1097]][_0x285e[169]](mxEvent.REFRESH,this[_0x285e[2731]]);this[_0x285e[1562]]= new mxRectangle(0,0,0,0);this[_0x285e[2732]]= new mxRectangleShape(this[_0x285e[1562]],null,mxConstants.OUTLINE_COLOR,mxConstants.OUTLINE_STROKEWIDTH);this[_0x285e[2732]][_0x285e[507]]=this[_0x285e[2136]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]];this[_0x285e[2732]][_0x285e[176]](this[_0x285e[2136]][_0x285e[249]]()[_0x285e[1524]]());mxEvent[_0x285e[2733]](this[_0x285e[2732]][_0x285e[252]],this[_0x285e[2136]]);this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[1537]]=_0x285e[110];this[_0x285e[2734]]=this[_0x285e[2735]]();this[_0x285e[2734]][_0x285e[176]](this[_0x285e[2136]][_0x285e[249]]()[_0x285e[1524]]());this[_0x285e[984]]&&(this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x285e[356]);mxEvent[_0x285e[169]](this[_0x285e[2734]][_0x285e[252]],mxClient[_0x285e[754]]?_0x285e[755]:_0x285e[751],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2136]][_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x2))}));this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=this[_0x285e[2721]]?_0x285e[110]:_0x285e[130];this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]];this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x285e[582];this[_0x285e[2729]](!1)};mxOutline[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxOutline[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxOutline[_0x285e[202]][_0x285e[2736]]=function(_0x4fa0x2){this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x4fa0x2?_0x285e[189]:_0x285e[188]};mxOutline[_0x285e[202]][_0x285e[802]]=function(){this[_0x285e[2729]](!0)};mxOutline[_0x285e[202]][_0x285e[2735]]=function(){var _0x4fa0x2=null!=this[_0x285e[2724]]? new mxImageShape( new mxRectangle(0,0,this[_0x285e[2724]][_0x285e[117]],this[_0x285e[2724]][_0x285e[119]]),this[_0x285e[2724]][_0x285e[390]]): new mxRectangleShape( new mxRectangle(0,0,this[_0x285e[2722]],this[_0x285e[2722]]),mxConstants.OUTLINE_HANDLE_FILLCOLOR,mxConstants.OUTLINE_HANDLE_STROKECOLOR);_0x4fa0x2[_0x285e[507]]=this[_0x285e[2136]][_0x285e[507]];return _0x4fa0x2};mxOutline[_0x285e[202]][_0x285e[2737]]=function(){return new mxRectangle(0,0,this[_0x285e[1097]][_0x285e[526]][_0x285e[1526]],this[_0x285e[1097]][_0x285e[526]][_0x285e[191]])};mxOutline[_0x285e[202]][_0x285e[2738]]=function(_0x4fa0x2){return null};mxOutline[_0x285e[202]][_0x285e[2729]]=function(_0x4fa0x2){if(null!=this[_0x285e[1097]]){var _0x4fa0x3=this[_0x285e[1097]][_0x285e[441]][_0x285e[255]],_0x4fa0x4=this[_0x285e[1097]][_0x285e[517]](),_0x4fa0x4= new mxRectangle(_0x4fa0x4[_0x285e[235]]/_0x4fa0x3+this[_0x285e[1097]][_0x285e[1136]],_0x4fa0x4[_0x285e[236]]/_0x4fa0x3+this[_0x285e[1097]][_0x285e[1137]],_0x4fa0x4[_0x285e[117]]/_0x4fa0x3,_0x4fa0x4[_0x285e[119]]/_0x4fa0x3),_0x4fa0x5= new mxRectangle(0,0,this[_0x285e[1097]][_0x285e[526]][_0x285e[159]]/_0x4fa0x3,this[_0x285e[1097]][_0x285e[526]][_0x285e[157]]/_0x4fa0x3),_0x4fa0x9=_0x4fa0x4[_0x285e[238]]();_0x4fa0x9[_0x285e[99]](_0x4fa0x5);var _0x4fa0xa=this[_0x285e[2737]](),_0x4fa0x5=Math[_0x285e[160]](_0x4fa0xa[_0x285e[117]]/_0x4fa0x3,_0x4fa0x9[_0x285e[117]]),_0x4fa0x3=Math[_0x285e[160]](_0x4fa0xa[_0x285e[119]]/_0x4fa0x3,_0x4fa0x9[_0x285e[119]]),_0x4fa0x9=Math[_0x285e[160]](0,this[_0x285e[2136]][_0x285e[526]][_0x285e[159]]-this[_0x285e[467]]),_0x4fa0xa=Math[_0x285e[160]](0,this[_0x285e[2136]][_0x285e[526]][_0x285e[157]]-this[_0x285e[467]]),_0x4fa0x9=Math[_0x285e[243]](_0x4fa0x9/_0x4fa0x5,_0x4fa0xa/_0x4fa0x3);if(0<_0x4fa0x9){this[_0x285e[2136]][_0x285e[249]]()[_0x285e[255]]!=_0x4fa0x9&&(this[_0x285e[2136]][_0x285e[249]]()[_0x285e[255]]=_0x4fa0x9,_0x4fa0x2= !0);_0x4fa0x5=this[_0x285e[2136]][_0x285e[249]]();_0x4fa0x5[_0x285e[1741]]!=this[_0x285e[1097]][_0x285e[249]]()[_0x285e[1741]]&&_0x4fa0x5[_0x285e[2257]](this[_0x285e[1097]][_0x285e[249]]()[_0x285e[1741]]);var _0x4fa0x3=this[_0x285e[1097]][_0x285e[441]][_0x285e[513]],_0x4fa0xa=_0x4fa0x3[_0x285e[235]]+this[_0x285e[1097]][_0x285e[1136]],_0x4fa0x12=_0x4fa0x3[_0x285e[236]]+this[_0x285e[1097]][_0x285e[1137]],_0x4fa0x9=this[_0x285e[2738]](_0x4fa0x9);null!=_0x4fa0x9&&(_0x4fa0xa+=_0x4fa0x9[_0x285e[235]],_0x4fa0x12+=_0x4fa0x9[_0x285e[236]]);0>_0x4fa0x4[_0x285e[235]]&&(_0x4fa0xa-=_0x4fa0x4[_0x285e[235]]);0>_0x4fa0x4[_0x285e[236]]&&(_0x4fa0x12-=_0x4fa0x4[_0x285e[236]]);if(_0x4fa0x5[_0x285e[513]][_0x285e[235]]!=_0x4fa0xa||_0x4fa0x5[_0x285e[513]][_0x285e[236]]!=_0x4fa0x12){_0x4fa0x5[_0x285e[513]][_0x285e[235]]=_0x4fa0xa,_0x4fa0x5[_0x285e[513]][_0x285e[236]]=_0x4fa0x12,_0x4fa0x2= !0};var _0x4fa0x4=_0x4fa0x5[_0x285e[513]],_0x4fa0x9=this[_0x285e[1097]][_0x285e[249]]()[_0x285e[255]],_0x4fa0xa=_0x4fa0x9/_0x4fa0x5[_0x285e[255]],_0x4fa0x12=1/_0x4fa0x5[_0x285e[255]],_0x4fa0x13=this[_0x285e[1097]][_0x285e[526]];this[_0x285e[1562]]= new mxRectangle((_0x4fa0x4[_0x285e[235]]-_0x4fa0x3[_0x285e[235]]-this[_0x285e[1097]][_0x285e[1136]])/_0x4fa0x12,(_0x4fa0x4[_0x285e[236]]-_0x4fa0x3[_0x285e[236]]-this[_0x285e[1097]][_0x285e[1137]])/_0x4fa0x12,_0x4fa0x13[_0x285e[159]]/_0x4fa0xa,_0x4fa0x13[_0x285e[157]]/_0x4fa0xa);this[_0x285e[1562]][_0x285e[235]]+=this[_0x285e[1097]][_0x285e[526]][_0x285e[360]]*_0x4fa0x5[_0x285e[255]]/_0x4fa0x9;this[_0x285e[1562]][_0x285e[236]]+=this[_0x285e[1097]][_0x285e[526]][_0x285e[190]]*_0x4fa0x5[_0x285e[255]]/_0x4fa0x9;_0x4fa0x4=this[_0x285e[2732]][_0x285e[1562]];if(_0x4fa0x4[_0x285e[235]]!=this[_0x285e[1562]][_0x285e[235]]||_0x4fa0x4[_0x285e[236]]!=this[_0x285e[1562]][_0x285e[236]]||_0x4fa0x4[_0x285e[117]]!=this[_0x285e[1562]][_0x285e[117]]||_0x4fa0x4[_0x285e[119]]!=this[_0x285e[1562]][_0x285e[119]]){this[_0x285e[2732]][_0x285e[1562]]=this[_0x285e[1562]],this[_0x285e[2732]][_0x285e[258]]()};_0x4fa0x4=this[_0x285e[2734]][_0x285e[1562]];_0x4fa0x5= new mxRectangle(this[_0x285e[1562]][_0x285e[235]]+this[_0x285e[1562]][_0x285e[117]]-_0x4fa0x4[_0x285e[117]]/2,this[_0x285e[1562]][_0x285e[236]]+this[_0x285e[1562]][_0x285e[119]]-_0x4fa0x4[_0x285e[119]]/2,_0x4fa0x4[_0x285e[117]],_0x4fa0x4[_0x285e[119]]);if(_0x4fa0x4[_0x285e[235]]!=_0x4fa0x5[_0x285e[235]]||_0x4fa0x4[_0x285e[236]]!=_0x4fa0x5[_0x285e[236]]||_0x4fa0x4[_0x285e[117]]!=_0x4fa0x5[_0x285e[117]]||_0x4fa0x4[_0x285e[119]]!=_0x4fa0x5[_0x285e[119]]){this[_0x285e[2734]][_0x285e[1562]]=_0x4fa0x5,_0x285e[188]!=this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[187]]&&this[_0x285e[2734]][_0x285e[258]]()};_0x4fa0x2&&this[_0x285e[2136]][_0x285e[441]][_0x285e[2259]]()}}};mxOutline[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[984]]&&this[_0x285e[2721]]&&(this[_0x285e[499]]=_0x4fa0x3[_0x285e[729]](this[_0x285e[2734]]),this[_0x285e[2739]]=_0x4fa0x3[_0x285e[730]](),this[_0x285e[2740]]=_0x4fa0x3[_0x285e[732]](),this[_0x285e[1124]]= !0,this[_0x285e[1097]][_0x285e[2365]]&&mxUtils[_0x285e[1134]](this[_0x285e[1097]][_0x285e[526]])?(this[_0x285e[2741]]=this[_0x285e[1097]][_0x285e[526]][_0x285e[360]],this[_0x285e[2742]]=this[_0x285e[1097]][_0x285e[526]][_0x285e[190]]):this[_0x285e[2742]]=this[_0x285e[2741]]=0);_0x4fa0x3[_0x285e[722]]()};mxOutline[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1124]]){this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=this[_0x285e[2721]]?_0x285e[110]:_0x285e[130];this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]];var _0x4fa0x4=_0x4fa0x3[_0x285e[730]]()-this[_0x285e[2739]],_0x4fa0x5=_0x4fa0x3[_0x285e[732]]()-this[_0x285e[2740]],_0x4fa0x9=null;if(this[_0x285e[499]]){_0x4fa0x9=this[_0x285e[1097]][_0x285e[526]],_0x4fa0x5=_0x4fa0x4/(_0x4fa0x9[_0x285e[159]]/_0x4fa0x9[_0x285e[157]]),_0x4fa0x9= new mxRectangle(this[_0x285e[1562]][_0x285e[235]],this[_0x285e[1562]][_0x285e[236]],Math[_0x285e[160]](1,this[_0x285e[1562]][_0x285e[117]]+_0x4fa0x4),Math[_0x285e[160]](1,this[_0x285e[1562]][_0x285e[119]]+_0x4fa0x5)),this[_0x285e[2732]][_0x285e[1562]]=_0x4fa0x9,this[_0x285e[2732]][_0x285e[258]]()}else {var _0x4fa0xa=this[_0x285e[2136]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x9= new mxRectangle(this[_0x285e[1562]][_0x285e[235]]+_0x4fa0x4,this[_0x285e[1562]][_0x285e[236]]+_0x4fa0x5,this[_0x285e[1562]][_0x285e[117]],this[_0x285e[1562]][_0x285e[119]]);this[_0x285e[2732]][_0x285e[1562]]=_0x4fa0x9;this[_0x285e[2732]][_0x285e[258]]();_0x4fa0x4=_0x4fa0x4/_0x4fa0xa*this[_0x285e[1097]][_0x285e[249]]()[_0x285e[255]];_0x4fa0x5=_0x4fa0x5/_0x4fa0xa*this[_0x285e[1097]][_0x285e[249]]()[_0x285e[255]];this[_0x285e[1097]][_0x285e[1135]](-_0x4fa0x4-this[_0x285e[2741]],-_0x4fa0x5-this[_0x285e[2742]])};_0x4fa0x4=this[_0x285e[2734]][_0x285e[1562]];this[_0x285e[2734]][_0x285e[1562]]= new mxRectangle(_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]]-_0x4fa0x4[_0x285e[117]]/2,_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]]-_0x4fa0x4[_0x285e[119]]/2,_0x4fa0x4[_0x285e[117]],_0x4fa0x4[_0x285e[119]]);_0x285e[188]!=this[_0x285e[2734]][_0x285e[252]][_0x285e[124]][_0x285e[187]]&&this[_0x285e[2734]][_0x285e[258]]();_0x4fa0x3[_0x285e[722]]()}};mxOutline[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1124]]){var _0x4fa0x4=_0x4fa0x3[_0x285e[730]]()-this[_0x285e[2739]],_0x4fa0x5=_0x4fa0x3[_0x285e[732]]()-this[_0x285e[2740]];if(0<Math[_0x285e[425]](_0x4fa0x4)||0<Math[_0x285e[425]](_0x4fa0x5)){if(this[_0x285e[499]]){var _0x4fa0x5=this[_0x285e[2732]][_0x285e[1562]][_0x285e[117]],_0x4fa0x9=this[_0x285e[1097]][_0x285e[249]]()[_0x285e[255]];this[_0x285e[1097]][_0x285e[2561]](_0x4fa0x9-_0x4fa0x4*_0x4fa0x9/_0x4fa0x5,!1)}else {if(!this[_0x285e[1097]][_0x285e[2365]]||!mxUtils[_0x285e[1134]](this[_0x285e[1097]][_0x285e[526]])){this[_0x285e[1097]][_0x285e[1135]](0,0),_0x4fa0x4/=this[_0x285e[2136]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x5/=this[_0x285e[2136]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x9=this[_0x285e[1097]][_0x285e[249]]()[_0x285e[513]],this[_0x285e[1097]][_0x285e[249]]()[_0x285e[1147]](_0x4fa0x9[_0x285e[235]]-_0x4fa0x4,_0x4fa0x9[_0x285e[236]]-_0x4fa0x5)}};this[_0x285e[2729]]();_0x4fa0x3[_0x285e[722]]()};this[_0x285e[1983]]=null;this[_0x285e[1124]]= !1}};mxOutline[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[1097]]&&(this[_0x285e[1097]][_0x285e[745]](this[_0x285e[2730]]),this[_0x285e[1097]][_0x285e[745]](this[_0x285e[2731]]),this[_0x285e[1097]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[2728]]),this[_0x285e[1097]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[2728]]),mxEvent[_0x285e[169]](this[_0x285e[1097]][_0x285e[526]],_0x285e[276],this[_0x285e[2728]]),this[_0x285e[1097]]=null);null!=this[_0x285e[2136]]&&(this[_0x285e[2136]][_0x285e[1148]](this),this[_0x285e[2136]][_0x285e[515]](),this[_0x285e[2136]]=null);null!=this[_0x285e[2732]]&&(this[_0x285e[2732]][_0x285e[515]](),this[_0x285e[2732]]=null);null!=this[_0x285e[2734]]&&(this[_0x285e[2734]][_0x285e[515]](),this[_0x285e[2734]]=null)};function mxMultiplicity(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15){this[_0x285e[1097]]=_0x4fa0x2;this[_0x285e[60]]=_0x4fa0x3;this[_0x285e[2588]]=_0x4fa0x4;this[_0x285e[131]]=_0x4fa0x5;this[_0x285e[243]]=null!=_0x4fa0x9?_0x4fa0x9:0;this[_0x285e[160]]=null!=_0x4fa0xa?_0x4fa0xa:_0x285e[2743];this[_0x285e[2744]]=_0x4fa0x12;this[_0x285e[2589]]=mxResources[_0x285e[203]](_0x4fa0x13)||_0x4fa0x13;this[_0x285e[2745]]=mxResources[_0x285e[203]](_0x4fa0x14)||_0x4fa0x14;this[_0x285e[2746]]=null!=_0x4fa0x15?_0x4fa0x15:!0}mxMultiplicity[_0x285e[202]][_0x285e[60]]=null;mxMultiplicity[_0x285e[202]][_0x285e[2588]]=null;mxMultiplicity[_0x285e[202]][_0x285e[131]]=null;mxMultiplicity[_0x285e[202]][_0x285e[1097]]=null;mxMultiplicity[_0x285e[202]][_0x285e[243]]=null;mxMultiplicity[_0x285e[202]][_0x285e[160]]=null;mxMultiplicity[_0x285e[202]][_0x285e[2744]]=null;mxMultiplicity[_0x285e[202]][_0x285e[2746]]= !0;mxMultiplicity[_0x285e[202]][_0x285e[2589]]=null;mxMultiplicity[_0x285e[202]][_0x285e[2745]]=null;mxMultiplicity[_0x285e[202]][_0x285e[2583]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=_0x285e[110];if(this[_0x285e[1097]]&&this[_0x285e[2747]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x3)||!this[_0x285e[1097]]&&this[_0x285e[2747]](_0x4fa0x2,_0x4fa0x5,_0x4fa0x3)){if(null!=this[_0x285e[2589]]&&(this[_0x285e[1097]]&&(0==this[_0x285e[160]]||_0x4fa0x9>=this[_0x285e[160]])||!this[_0x285e[1097]]&&(0==this[_0x285e[160]]||_0x4fa0xa>=this[_0x285e[160]]))){_0x4fa0x12+=this[_0x285e[2589]]+_0x285e[192]};null!=this[_0x285e[2744]]&&(null!=this[_0x285e[2745]]&&0<this[_0x285e[2744]][_0x285e[67]])&&(this[_0x285e[2748]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5)||(_0x4fa0x12+=this[_0x285e[2745]]+_0x285e[192]))};return 0<_0x4fa0x12[_0x285e[67]]?_0x4fa0x12:null};mxMultiplicity[_0x285e[202]][_0x285e[2748]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x3=_0x4fa0x2[_0x285e[251]][_0x285e[433]](_0x4fa0x4);_0x4fa0x5=_0x4fa0x2[_0x285e[251]][_0x285e[433]](_0x4fa0x5);_0x4fa0x4=!this[_0x285e[2746]];for(var _0x4fa0x9=this[_0x285e[2744]],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){if(this[_0x285e[1097]]&&this[_0x285e[2749]](_0x4fa0x2,_0x4fa0x5,_0x4fa0x9[_0x4fa0xa])){_0x4fa0x4=this[_0x285e[2746]];break}else {if(!this[_0x285e[1097]]&&this[_0x285e[2749]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9[_0x4fa0xa])){_0x4fa0x4=this[_0x285e[2746]];break}}};return _0x4fa0x4};mxMultiplicity[_0x285e[202]][_0x285e[2747]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=_0x4fa0x2[_0x285e[251]][_0x285e[433]](_0x4fa0x3);return this[_0x285e[2749]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[60]],this[_0x285e[2588]],this[_0x285e[131]])};mxMultiplicity[_0x285e[202]][_0x285e[2749]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return null!=_0x4fa0x3?isNaN(_0x4fa0x3[_0x285e[288]])?_0x4fa0x3==_0x4fa0x4:mxUtils[_0x285e[1331]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9):!1};function mxLayoutManager(_0x4fa0x2){this[_0x285e[2750]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){this[_0x285e[994]]()&&this[_0x285e[823]](_0x4fa0x4[_0x285e[720]](_0x285e[1061]))});this[_0x285e[2317]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){this[_0x285e[994]]()&&this[_0x285e[835]](_0x4fa0x4[_0x285e[720]](_0x285e[895]),_0x4fa0x4[_0x285e[720]](_0x285e[763]))});this[_0x285e[1178]](_0x4fa0x2)}mxLayoutManager[_0x285e[202]]= new mxEventSource;mxLayoutManager[_0x285e[202]][_0x285e[196]]=mxLayoutManager;mxLayoutManager[_0x285e[202]][_0x285e[1179]]=null;mxLayoutManager[_0x285e[202]][_0x285e[2751]]= !0;mxLayoutManager[_0x285e[202]][_0x285e[984]]= !0;mxLayoutManager[_0x285e[202]][_0x285e[2728]]=null;mxLayoutManager[_0x285e[202]][_0x285e[2317]]=null;mxLayoutManager[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxLayoutManager[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxLayoutManager[_0x285e[202]][_0x285e[2752]]=function(){return this[_0x285e[2751]]};mxLayoutManager[_0x285e[202]][_0x285e[2753]]=function(_0x4fa0x2){this[_0x285e[2751]]=_0x4fa0x2};mxLayoutManager[_0x285e[202]][_0x285e[1703]]=function(){return this[_0x285e[1179]]};mxLayoutManager[_0x285e[202]][_0x285e[1178]]=function(_0x4fa0x2){if(null!=this[_0x285e[1179]]){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x3[_0x285e[745]](this[_0x285e[2750]]);this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2317]])};this[_0x285e[1179]]=_0x4fa0x2;null!=this[_0x285e[1179]]&&(_0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x3[_0x285e[169]](mxEvent.BEFORE_UNDO,this[_0x285e[2750]]),this[_0x285e[1179]][_0x285e[169]](mxEvent.MOVE_CELLS,this[_0x285e[2317]]))};mxLayoutManager[_0x285e[202]][_0x285e[2754]]=function(_0x4fa0x2){return null};mxLayoutManager[_0x285e[202]][_0x285e[823]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[2755]](_0x4fa0x2[_0x285e[1065]]);var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]]();if(this[_0x285e[2752]]()){for(var _0x4fa0x4=_0x4fa0x3[_0x285e[1977]](_0x4fa0x2);0<_0x4fa0x4[_0x285e[67]];){_0x4fa0x2=_0x4fa0x2[_0x285e[1919]](_0x4fa0x4),_0x4fa0x4=_0x4fa0x3[_0x285e[1977]](_0x4fa0x4)}};this[_0x285e[828]](mxUtils[_0x285e[1779]](_0x4fa0x2,!1))};mxLayoutManager[_0x285e[202]][_0x285e[835]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x3){for(var _0x4fa0x4=mxUtils[_0x285e[2196]](this[_0x285e[1703]]()[_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x3),mxEvent[_0x285e[733]](_0x4fa0x3)),_0x4fa0x5=this[_0x285e[1703]]()[_0x285e[502]](),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x2[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[2754]](_0x4fa0x5[_0x285e[1197]](_0x4fa0x2[_0x4fa0x9]));null!=_0x4fa0xa&&_0x4fa0xa[_0x285e[1702]](_0x4fa0x2[_0x4fa0x9],_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]])}}};mxLayoutManager[_0x285e[202]][_0x285e[2755]]=function(_0x4fa0x2){for(var _0x4fa0x3=[],_0x4fa0x4={},_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x9=_0x4fa0x2[_0x4fa0x5];if(_0x4fa0x9 instanceof mxRootChange){return []};for(var _0x4fa0x9=this[_0x285e[2756]](_0x4fa0x9),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){if(null!=_0x4fa0x9[_0x4fa0xa]){var _0x4fa0x12=mxCellPath[_0x285e[385]](_0x4fa0x9[_0x4fa0xa]);null==_0x4fa0x4[_0x4fa0x12]&&(_0x4fa0x4[_0x4fa0x12]=_0x4fa0x9[_0x4fa0xa],_0x4fa0x3[_0x285e[207]](_0x4fa0x9[_0x4fa0xa]))}}};return _0x4fa0x3};mxLayoutManager[_0x285e[202]][_0x285e[2756]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]]();return _0x4fa0x2 instanceof mxChildChange?[_0x4fa0x2[_0x285e[247]],_0x4fa0x2[_0x285e[257]],_0x4fa0x3[_0x285e[1197]](_0x4fa0x2[_0x285e[247]])]:_0x4fa0x2 instanceof mxTerminalChange||_0x4fa0x2 instanceof mxGeometryChange?[_0x4fa0x2[_0x285e[246]],_0x4fa0x3[_0x285e[1197]](_0x4fa0x2[_0x285e[246]])]:[]};mxLayoutManager[_0x285e[202]][_0x285e[828]]=function(_0x4fa0x2){if(0<_0x4fa0x2[_0x285e[67]]){var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=null,_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){_0x4fa0x2[_0x4fa0x5]!=_0x4fa0x3[_0x285e[501]]()&&_0x4fa0x2[_0x4fa0x5]!=_0x4fa0x4&&(_0x4fa0x4=_0x4fa0x2[_0x4fa0x5],this[_0x285e[2757]](this[_0x285e[2754]](_0x4fa0x4),_0x4fa0x4))};this[_0x285e[746]]( new mxEventObject(mxEvent.LAYOUT_CELLS,_0x285e[895],_0x4fa0x2))}finally{_0x4fa0x3[_0x285e[476]]()}}};mxLayoutManager[_0x285e[202]][_0x285e[2757]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[350]](_0x4fa0x3)};mxLayoutManager[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1178]](null)};function mxSpaceManager(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[2758]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[994]]()&&this[_0x285e[837]](_0x4fa0x3[_0x285e[720]](_0x285e[895]))});this[_0x285e[2759]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[994]]()&&this[_0x285e[837]](_0x4fa0x3[_0x285e[720]](_0x285e[895]))});this[_0x285e[2760]]=null!=_0x4fa0x3?_0x4fa0x3:!0;this[_0x285e[2761]]=null!=_0x4fa0x4?_0x4fa0x4:!0;this[_0x285e[2392]]=null!=_0x4fa0x5?_0x4fa0x5:!0;this[_0x285e[1178]](_0x4fa0x2)}mxSpaceManager[_0x285e[202]]= new mxEventSource;mxSpaceManager[_0x285e[202]][_0x285e[196]]=mxSpaceManager;mxSpaceManager[_0x285e[202]][_0x285e[1179]]=null;mxSpaceManager[_0x285e[202]][_0x285e[984]]= !0;mxSpaceManager[_0x285e[202]][_0x285e[2760]]= !0;mxSpaceManager[_0x285e[202]][_0x285e[2761]]= !0;mxSpaceManager[_0x285e[202]][_0x285e[2392]]= !0;mxSpaceManager[_0x285e[202]][_0x285e[2758]]=null;mxSpaceManager[_0x285e[202]][_0x285e[2759]]=null;mxSpaceManager[_0x285e[202]][_0x285e[2762]]=function(_0x4fa0x2){return !this[_0x285e[1703]]()[_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2)};mxSpaceManager[_0x285e[202]][_0x285e[2763]]=function(_0x4fa0x2){return this[_0x285e[1703]]()[_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2)&&this[_0x285e[1703]]()[_0x285e[1712]](_0x4fa0x2)};mxSpaceManager[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxSpaceManager[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxSpaceManager[_0x285e[202]][_0x285e[2764]]=function(){return this[_0x285e[2760]]};mxSpaceManager[_0x285e[202]][_0x285e[2765]]=function(_0x4fa0x2){this[_0x285e[2760]]=_0x4fa0x2};mxSpaceManager[_0x285e[202]][_0x285e[2766]]=function(){return this[_0x285e[2761]]};mxSpaceManager[_0x285e[202]][_0x285e[2767]]=function(_0x4fa0x2){this[_0x285e[2761]]=_0x4fa0x2};mxSpaceManager[_0x285e[202]][_0x285e[2678]]=function(){return this[_0x285e[2392]]};mxSpaceManager[_0x285e[202]][_0x285e[2679]]=function(_0x4fa0x2){this[_0x285e[2392]]=_0x4fa0x2};mxSpaceManager[_0x285e[202]][_0x285e[1703]]=function(){return this[_0x285e[1179]]};mxSpaceManager[_0x285e[202]][_0x285e[1178]]=function(_0x4fa0x2){null!=this[_0x285e[1179]]&&(this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2758]]),this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2759]]));this[_0x285e[1179]]=_0x4fa0x2;null!=this[_0x285e[1179]]&&(this[_0x285e[1179]][_0x285e[169]](mxEvent.RESIZE_CELLS,this[_0x285e[2758]]),this[_0x285e[1179]][_0x285e[169]](mxEvent.FOLD_CELLS,this[_0x285e[2759]]))};mxSpaceManager[_0x285e[202]][_0x285e[837]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){if(!this[_0x285e[2762]](_0x4fa0x2[_0x4fa0x4])){this[_0x285e[2768]](_0x4fa0x2[_0x4fa0x4]);break}}}finally{_0x4fa0x3[_0x285e[476]]()}}};mxSpaceManager[_0x285e[202]][_0x285e[2768]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1703]](),_0x4fa0x4=_0x4fa0x3[_0x285e[249]](),_0x4fa0x5=_0x4fa0x3[_0x285e[502]](),_0x4fa0x9=_0x4fa0x4[_0x285e[248]](_0x4fa0x2),_0x4fa0xa=_0x4fa0x4[_0x285e[248]](_0x4fa0x5[_0x285e[1197]](_0x4fa0x2));if(null!=_0x4fa0x9&&null!=_0x4fa0xa){var _0x4fa0x12=this[_0x285e[2769]](_0x4fa0x9),_0x4fa0x13=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x12&&null!=_0x4fa0x13){var _0x4fa0x14=_0x4fa0x4[_0x285e[513]],_0x4fa0x15=_0x4fa0x4[_0x285e[255]],_0x4fa0x4=_0x4fa0x9[_0x285e[235]]-_0x4fa0xa[_0x285e[2078]][_0x285e[235]]-_0x4fa0x14[_0x285e[235]]*_0x4fa0x15,_0x4fa0xa=_0x4fa0x9[_0x285e[236]]-_0x4fa0xa[_0x285e[2078]][_0x285e[236]]-_0x4fa0x14[_0x285e[236]]*_0x4fa0x15,_0x4fa0x14=_0x4fa0x9[_0x285e[235]]+_0x4fa0x9[_0x285e[117]],_0x4fa0x16=_0x4fa0x9[_0x285e[236]]+_0x4fa0x9[_0x285e[119]],_0x4fa0x17=_0x4fa0x9[_0x285e[117]]-_0x4fa0x13[_0x285e[117]]*_0x4fa0x15+_0x4fa0x4-_0x4fa0x13[_0x285e[235]]*_0x4fa0x15,_0x4fa0x18=_0x4fa0x9[_0x285e[119]]-_0x4fa0x13[_0x285e[119]]*_0x4fa0x15+_0x4fa0xa-_0x4fa0x13[_0x285e[236]]*_0x4fa0x15,_0x4fa0x19=1-_0x4fa0x13[_0x285e[117]]*_0x4fa0x15/_0x4fa0x9[_0x285e[117]],_0x4fa0x9=1-_0x4fa0x13[_0x285e[119]]*_0x4fa0x15/_0x4fa0x9[_0x285e[119]];_0x4fa0x5[_0x285e[473]]();try{for(_0x4fa0x13=0;_0x4fa0x13<_0x4fa0x12[_0x285e[67]];_0x4fa0x13++){_0x4fa0x12[_0x4fa0x13]!=_0x4fa0x2&&this[_0x285e[2763]](_0x4fa0x12[_0x4fa0x13])&&this[_0x285e[2770]](_0x4fa0x12[_0x4fa0x13],_0x4fa0x17,_0x4fa0x18,_0x4fa0x4,_0x4fa0xa,_0x4fa0x14,_0x4fa0x16,_0x4fa0x19,_0x4fa0x9,this[_0x285e[2678]]()&&_0x4fa0x3[_0x285e[2507]](_0x4fa0x12[_0x4fa0x13]))}}finally{_0x4fa0x5[_0x285e[476]]()}}}};mxSpaceManager[_0x285e[202]][_0x285e[2770]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15){_0x4fa0x5=this[_0x285e[1703]]();var _0x4fa0x16=_0x4fa0x5[_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);if(null!=_0x4fa0x16){var _0x4fa0x17=_0x4fa0x5[_0x285e[502]](),_0x4fa0x18=_0x4fa0x17[_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x18){_0x4fa0x17[_0x285e[473]]();try{if(this[_0x285e[2764]]()){if(_0x4fa0x16[_0x285e[235]]>=_0x4fa0xa){_0x4fa0x18=_0x4fa0x18[_0x285e[238]](),_0x4fa0x18[_0x285e[513]](-_0x4fa0x3,0)}else {var _0x4fa0x19=Math[_0x285e[160]](0,_0x4fa0x16[_0x285e[235]]-x0),_0x4fa0x18=_0x4fa0x18[_0x285e[238]]();_0x4fa0x18[_0x285e[513]](-_0x4fa0x13*_0x4fa0x19,0)}};if(this[_0x285e[2766]]()){if(_0x4fa0x16[_0x285e[236]]>=_0x4fa0x12){_0x4fa0x18=_0x4fa0x18[_0x285e[238]](),_0x4fa0x18[_0x285e[513]](0,-_0x4fa0x4)}else {var _0x4fa0x1a=Math[_0x285e[160]](0,_0x4fa0x16[_0x285e[236]]-_0x4fa0x9),_0x4fa0x18=_0x4fa0x18[_0x285e[238]]();_0x4fa0x18[_0x285e[513]](0,-_0x4fa0x14*_0x4fa0x1a)}};_0x4fa0x18!=_0x4fa0x17[_0x285e[1721]](_0x4fa0x2)&&(_0x4fa0x17[_0x285e[1724]](_0x4fa0x2,_0x4fa0x18),_0x4fa0x15&&_0x4fa0x5[_0x285e[2508]](_0x4fa0x2))}finally{_0x4fa0x17[_0x285e[476]]()}}}};mxSpaceManager[_0x285e[202]][_0x285e[2769]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1703]](),_0x4fa0x4=_0x4fa0x3[_0x285e[502]]()[_0x285e[1197]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x5=this[_0x285e[2766]](),_0x4fa0x9=this[_0x285e[2764]]();return _0x4fa0x3[_0x285e[2691]](_0x4fa0x2[_0x285e[235]]+(_0x4fa0x5?0:_0x4fa0x2[_0x285e[117]]),_0x4fa0x2[_0x285e[236]]+(_0x4fa0x5&&_0x4fa0x9?0:_0x4fa0x2[_0x285e[119]]),_0x4fa0x4,_0x4fa0x9,_0x4fa0x5)};mxSpaceManager[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1178]](null)};function mxSwimlaneManager(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[662]]=null!=_0x4fa0x3?_0x4fa0x3:!0;this[_0x285e[2771]]=null!=_0x4fa0x4?_0x4fa0x4:!0;this[_0x285e[2772]]=null!=_0x4fa0x5?_0x4fa0x5:!0;this[_0x285e[2773]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[994]]()&&this[_0x285e[2774]]()&&this[_0x285e[833]](_0x4fa0x3[_0x285e[720]](_0x285e[895]))});this[_0x285e[2758]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[994]]()&&this[_0x285e[2775]]()&&this[_0x285e[837]](_0x4fa0x3[_0x285e[720]](_0x285e[895]))});this[_0x285e[1178]](_0x4fa0x2)}mxSwimlaneManager[_0x285e[202]]= new mxEventSource;mxSwimlaneManager[_0x285e[202]][_0x285e[196]]=mxSwimlaneManager;mxSwimlaneManager[_0x285e[202]][_0x285e[1179]]=null;mxSwimlaneManager[_0x285e[202]][_0x285e[984]]= !0;mxSwimlaneManager[_0x285e[202]][_0x285e[662]]= !0;mxSwimlaneManager[_0x285e[202]][_0x285e[2771]]= !0;mxSwimlaneManager[_0x285e[202]][_0x285e[2772]]= !0;mxSwimlaneManager[_0x285e[202]][_0x285e[2773]]=null;mxSwimlaneManager[_0x285e[202]][_0x285e[2758]]=null;mxSwimlaneManager[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxSwimlaneManager[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxSwimlaneManager[_0x285e[202]][_0x285e[1737]]=function(){return this[_0x285e[662]]};mxSwimlaneManager[_0x285e[202]][_0x285e[2776]]=function(_0x4fa0x2){this[_0x285e[662]]=_0x4fa0x2};mxSwimlaneManager[_0x285e[202]][_0x285e[2774]]=function(){return this[_0x285e[2771]]};mxSwimlaneManager[_0x285e[202]][_0x285e[2777]]=function(_0x4fa0x2){this[_0x285e[2771]]=_0x4fa0x2};mxSwimlaneManager[_0x285e[202]][_0x285e[2775]]=function(){return this[_0x285e[2772]]};mxSwimlaneManager[_0x285e[202]][_0x285e[2778]]=function(_0x4fa0x2){this[_0x285e[2772]]=_0x4fa0x2};mxSwimlaneManager[_0x285e[202]][_0x285e[1703]]=function(){return this[_0x285e[1179]]};mxSwimlaneManager[_0x285e[202]][_0x285e[1178]]=function(_0x4fa0x2){null!=this[_0x285e[1179]]&&(this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2773]]),this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2758]]));this[_0x285e[1179]]=_0x4fa0x2;null!=this[_0x285e[1179]]&&(this[_0x285e[1179]][_0x285e[169]](mxEvent.ADD_CELLS,this[_0x285e[2773]]),this[_0x285e[1179]][_0x285e[169]](mxEvent.CELLS_RESIZED,this[_0x285e[2758]]))};mxSwimlaneManager[_0x285e[202]][_0x285e[2779]]=function(_0x4fa0x2){return !this[_0x285e[1703]]()[_0x285e[1730]](_0x4fa0x2)};mxSwimlaneManager[_0x285e[202]][_0x285e[2780]]=function(_0x4fa0x2){if(this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x2);_0x4fa0x2=null!=_0x4fa0x3?_0x4fa0x3[_0x285e[124]]:this[_0x285e[1179]][_0x285e[1705]](_0x4fa0x2);return 1==mxUtils[_0x285e[433]](_0x4fa0x2,mxConstants.STYLE_HORIZONTAL,1)};return !this[_0x285e[1737]]()};mxSwimlaneManager[_0x285e[202]][_0x285e[833]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){this[_0x285e[2779]](_0x4fa0x2[_0x4fa0x4])||this[_0x285e[2781]](_0x4fa0x2[_0x4fa0x4])}}finally{_0x4fa0x3[_0x285e[476]]()}}};mxSwimlaneManager[_0x285e[202]][_0x285e[2781]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]](),_0x4fa0x4=_0x4fa0x3[_0x285e[1197]](_0x4fa0x2),_0x4fa0x5=_0x4fa0x3[_0x285e[262]](_0x4fa0x4),_0x4fa0x9=null,_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x5;_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x3[_0x285e[263]](_0x4fa0x4,_0x4fa0xa);if(_0x4fa0x12!=_0x4fa0x2&&!this[_0x285e[2779]](_0x4fa0x12)&&(_0x4fa0x9=_0x4fa0x3[_0x285e[1721]](_0x4fa0x12),null!=_0x4fa0x9)){break}};null!=_0x4fa0x9&&this[_0x285e[2782]](_0x4fa0x2,_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]])};mxSwimlaneManager[_0x285e[202]][_0x285e[837]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1703]]()[_0x285e[502]]();_0x4fa0x3[_0x285e[473]]();try{for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x2[_0x285e[67]];_0x4fa0x4++){if(!this[_0x285e[2779]](_0x4fa0x2[_0x4fa0x4])){var _0x4fa0x5=_0x4fa0x3[_0x285e[1721]](_0x4fa0x2[_0x4fa0x4]);if(null!=_0x4fa0x5){for(var _0x4fa0x9= new mxRectangle(0,0,_0x4fa0x5[_0x285e[117]],_0x4fa0x5[_0x285e[119]]),_0x4fa0xa=_0x4fa0x2[_0x4fa0x4],_0x4fa0x12=_0x4fa0xa;null!=_0x4fa0x12;){var _0x4fa0xa=_0x4fa0x12,_0x4fa0x12=_0x4fa0x3[_0x285e[1197]](_0x4fa0x12),_0x4fa0x13=this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x12)?this[_0x285e[1179]][_0x285e[1731]](_0x4fa0x12): new mxRectangle;_0x4fa0x9[_0x285e[117]]+=_0x4fa0x13[_0x285e[117]];_0x4fa0x9[_0x285e[119]]+=_0x4fa0x13[_0x285e[119]]};this[_0x285e[2782]](_0x4fa0xa,_0x4fa0x9[_0x285e[117]],_0x4fa0x9[_0x285e[119]])}}}}finally{_0x4fa0x3[_0x285e[476]]()}}};mxSwimlaneManager[_0x285e[202]][_0x285e[2782]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1703]]()[_0x285e[502]]();_0x4fa0x5[_0x285e[473]]();try{if(!this[_0x285e[2779]](_0x4fa0x2)){var _0x4fa0x9=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x9){var _0x4fa0xa=this[_0x285e[2780]](_0x4fa0x2);if(_0x4fa0xa&&_0x4fa0x9[_0x285e[119]]!=_0x4fa0x4||!_0x4fa0xa&&_0x4fa0x9[_0x285e[117]]!=_0x4fa0x3){_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0xa?_0x4fa0x9[_0x285e[119]]=_0x4fa0x4:_0x4fa0x9[_0x285e[117]]=_0x4fa0x3,_0x4fa0x5[_0x285e[1724]](_0x4fa0x2,_0x4fa0x9)}}};var _0x4fa0x12=this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)?this[_0x285e[1179]][_0x285e[1731]](_0x4fa0x2): new mxRectangle;_0x4fa0x3-=_0x4fa0x12[_0x285e[117]];_0x4fa0x4-=_0x4fa0x12[_0x285e[119]];for(var _0x4fa0x13=_0x4fa0x5[_0x285e[262]](_0x4fa0x2),_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x13;_0x4fa0x9++){var _0x4fa0x14=_0x4fa0x5[_0x285e[263]](_0x4fa0x2,_0x4fa0x9);this[_0x285e[2782]](_0x4fa0x14,_0x4fa0x3,_0x4fa0x4)}}finally{_0x4fa0x5[_0x285e[476]]()}};mxSwimlaneManager[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1178]](null)};function mxTemporaryCellStates(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[441]]=_0x4fa0x2;_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:1;this[_0x285e[2783]]=_0x4fa0x2[_0x285e[517]]();this[_0x285e[2784]]=_0x4fa0x2[_0x285e[2312]]();this[_0x285e[2785]]=_0x4fa0x2[_0x285e[518]]();_0x4fa0x2[_0x285e[1517]]( new mxDictionary);_0x4fa0x2[_0x285e[2262]](_0x4fa0x3);if(null!=_0x4fa0x4){_0x4fa0x3=_0x4fa0x2[_0x285e[1230]]( new mxCell);for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){_0x4fa0x2[_0x285e[2267]](_0x4fa0x3,_0x4fa0x4[_0x4fa0x5])};for(var _0x4fa0x9=null,_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]];_0x4fa0x5++){var _0x4fa0xa=_0x4fa0x2[_0x285e[2268]](_0x4fa0x3,_0x4fa0x4[_0x4fa0x5]);null==_0x4fa0x9?_0x4fa0x9=_0x4fa0xa:_0x4fa0x9[_0x285e[99]](_0x4fa0xa)};null==_0x4fa0x9&&(_0x4fa0x9= new mxRectangle);_0x4fa0x2[_0x285e[2256]](_0x4fa0x9)}}mxTemporaryCellStates[_0x285e[202]][_0x285e[441]]=null;mxTemporaryCellStates[_0x285e[202]][_0x285e[2784]]=null;mxTemporaryCellStates[_0x285e[202]][_0x285e[2783]]=null;mxTemporaryCellStates[_0x285e[202]][_0x285e[2785]]=null;mxTemporaryCellStates[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[441]][_0x285e[2262]](this[_0x285e[2785]]);this[_0x285e[441]][_0x285e[1517]](this[_0x285e[2784]]);this[_0x285e[441]][_0x285e[2256]](this[_0x285e[2783]])};function mxCellStatePreview(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[2786]]={}}mxCellStatePreview[_0x285e[202]][_0x285e[1179]]=null;mxCellStatePreview[_0x285e[202]][_0x285e[2786]]=null;mxCellStatePreview[_0x285e[202]][_0x285e[2787]]=0;mxCellStatePreview[_0x285e[202]][_0x285e[1107]]=function(){return 0==this[_0x285e[2787]]};mxCellStatePreview[_0x285e[202]][_0x285e[1194]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5:!0;_0x4fa0x9=null!=_0x4fa0x9?_0x4fa0x9:!0;var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x12=this[_0x285e[2786]][_0x4fa0xa];null==_0x4fa0x12?(_0x4fa0x12= new mxPoint(_0x4fa0x3,_0x4fa0x4),this[_0x285e[2786]][_0x4fa0xa]=_0x4fa0x12,this[_0x285e[2787]]++):_0x4fa0x5?(_0x4fa0x12[_0x285e[2788]]+=_0x4fa0x3,_0x4fa0x12[_0x285e[2789]]+=_0x4fa0x4):(_0x4fa0x12[_0x285e[2788]]=_0x4fa0x3,_0x4fa0x12[_0x285e[2789]]=_0x4fa0x4);_0x4fa0x9&&this[_0x285e[2790]](_0x4fa0x2);return _0x4fa0x12};mxCellStatePreview[_0x285e[202]][_0x285e[539]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=_0x4fa0x3[_0x285e[501]](),_0x4fa0x5;for(_0x4fa0x5 in this[_0x285e[2786]]){var _0x4fa0x9=mxCellPath[_0x285e[2791]](_0x4fa0x4,_0x4fa0x5),_0x4fa0xa=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x9),_0x4fa0x12=this[_0x285e[2786]][_0x4fa0x5],_0x4fa0x9=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3[_0x285e[1197]](_0x4fa0x9));this[_0x285e[2792]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]])};for(_0x4fa0x5 in this[_0x285e[2786]]){_0x4fa0x9=mxCellPath[_0x285e[2791]](_0x4fa0x4,_0x4fa0x5),_0x4fa0xa=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x9),_0x4fa0x12=this[_0x285e[2786]][_0x4fa0x5],_0x4fa0x9=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3[_0x285e[1197]](_0x4fa0x9)),this[_0x285e[2793]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12[_0x285e[235]],_0x4fa0x12[_0x285e[236]],_0x4fa0x2)}};mxCellStatePreview[_0x285e[202]][_0x285e[2792]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x3){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[502]]();if(_0x4fa0x9[_0x285e[1193]](_0x4fa0x3[_0x285e[246]])){_0x4fa0x3[_0x285e[2080]]= !0;this[_0x285e[1179]][_0x285e[441]][_0x285e[2267]](_0x4fa0x2,_0x4fa0x3[_0x285e[246]]);_0x4fa0x2=_0x4fa0x9[_0x285e[1721]](_0x4fa0x3[_0x285e[246]]);var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]);if((0!=_0x4fa0x4||0!=_0x4fa0x5)&&null!=_0x4fa0x2&&(!_0x4fa0x2[_0x285e[1500]]||null!=this[_0x285e[2786]][_0x4fa0xa])){_0x4fa0x3[_0x285e[235]]+=_0x4fa0x4,_0x4fa0x3[_0x285e[236]]+=_0x4fa0x5}};_0x4fa0x2=_0x4fa0x9[_0x285e[262]](_0x4fa0x3[_0x285e[246]]);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2;_0x4fa0xa++){this[_0x285e[2792]](_0x4fa0x3,this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x9[_0x285e[263]](_0x4fa0x3[_0x285e[246]],_0x4fa0xa)),_0x4fa0x4,_0x4fa0x5)}}};mxCellStatePreview[_0x285e[202]][_0x285e[2793]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x3){_0x4fa0x3[_0x285e[2080]]= !0;this[_0x285e[1179]][_0x285e[441]][_0x285e[2268]](_0x4fa0x2,_0x4fa0x3[_0x285e[246]]);var _0x4fa0xa=mxCellPath[_0x285e[385]](_0x4fa0x3[_0x285e[246]]),_0x4fa0x12=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x13=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x3[_0x285e[246]]);if((0!=_0x4fa0x4||0!=_0x4fa0x5)&&null!=_0x4fa0x13&&_0x4fa0x13[_0x285e[1500]]&&_0x4fa0x12[_0x285e[1193]](_0x4fa0x3[_0x285e[246]])&&(null==_0x4fa0x2||_0x4fa0x12[_0x285e[1193]](_0x4fa0x2[_0x285e[246]])||null!=this[_0x285e[2786]][_0x4fa0xa])){_0x4fa0x3[_0x285e[235]]+=_0x4fa0x4,_0x4fa0x3[_0x285e[236]]+=_0x4fa0x5,this[_0x285e[1179]][_0x285e[259]][_0x285e[258]](_0x4fa0x3)};null!=_0x4fa0x9&&_0x4fa0x9(_0x4fa0x3);_0x4fa0x2=_0x4fa0x12[_0x285e[262]](_0x4fa0x3[_0x285e[246]]);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x2;_0x4fa0xa++){this[_0x285e[2793]](_0x4fa0x3,this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x12[_0x285e[263]](_0x4fa0x3[_0x285e[246]],_0x4fa0xa)),_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)}}};mxCellStatePreview[_0x285e[202]][_0x285e[2790]]=function(_0x4fa0x2){for(var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=_0x4fa0x3[_0x285e[1707]](_0x4fa0x2[_0x285e[246]]),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3[_0x285e[1708]](_0x4fa0x2[_0x285e[246]],_0x4fa0x5));null!=_0x4fa0x9&&this[_0x285e[1194]](_0x4fa0x9,0,0)}};function mxConnectionConstraint(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2546]]=_0x4fa0x2;this[_0x285e[591]]=null!=_0x4fa0x3?_0x4fa0x3:!0}mxConnectionConstraint[_0x285e[202]][_0x285e[2546]]=null;mxConnectionConstraint[_0x285e[202]][_0x285e[591]]=null;function mxGraphHandler(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[1179]][_0x285e[1133]](this);this[_0x285e[2730]]=mxUtils[_0x285e[885]](this,function(){this[_0x285e[2794]]()});this[_0x285e[1179]][_0x285e[169]](mxEvent.PAN,this[_0x285e[2730]])}mxGraphHandler[_0x285e[202]][_0x285e[1179]]=null;mxGraphHandler[_0x285e[202]][_0x285e[2795]]=mxClient[_0x285e[80]]?20:50;mxGraphHandler[_0x285e[202]][_0x285e[984]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[2796]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[2797]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[2798]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[990]]= !1;mxGraphHandler[_0x285e[202]][_0x285e[2799]]=null;mxGraphHandler[_0x285e[202]][_0x285e[2800]]=null;mxGraphHandler[_0x285e[202]][_0x285e[2801]]=null;mxGraphHandler[_0x285e[202]][_0x285e[2802]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[2803]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[846]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[2804]]= !1;mxGraphHandler[_0x285e[202]][_0x285e[2805]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[923]]=6;mxGraphHandler[_0x285e[202]][_0x285e[2806]]=_0x285e[586];mxGraphHandler[_0x285e[202]][_0x285e[2807]]= !1;mxGraphHandler[_0x285e[202]][_0x285e[253]]=null;mxGraphHandler[_0x285e[202]][_0x285e[2808]]= !1;mxGraphHandler[_0x285e[202]][_0x285e[2809]]= !0;mxGraphHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxGraphHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[2810]]=function(){return this[_0x285e[2797]]};mxGraphHandler[_0x285e[202]][_0x285e[2811]]=function(_0x4fa0x2){this[_0x285e[2797]]=_0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[2812]]=function(){return this[_0x285e[2798]]};mxGraphHandler[_0x285e[202]][_0x285e[2813]]=function(_0x4fa0x2){this[_0x285e[2798]]=_0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[2814]]=function(){return this[_0x285e[2803]]};mxGraphHandler[_0x285e[202]][_0x285e[2815]]=function(_0x4fa0x2){this[_0x285e[2803]]=_0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[2816]]=function(){return this[_0x285e[846]]};mxGraphHandler[_0x285e[202]][_0x285e[2817]]=function(_0x4fa0x2){this[_0x285e[846]]=_0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[2818]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[736]]()};mxGraphHandler[_0x285e[202]][_0x285e[2819]]=function(_0x4fa0x2){return this[_0x285e[1179]][_0x285e[2692]](_0x4fa0x2)};mxGraphHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[994]]()&&this[_0x285e[1179]][_0x285e[994]]()&&!this[_0x285e[1179]][_0x285e[2579]](_0x4fa0x3[_0x285e[727]]())&&null!=_0x4fa0x3[_0x285e[248]]()){var _0x4fa0x4=this[_0x285e[2818]](_0x4fa0x3);this[_0x285e[246]]=null;this[_0x285e[2820]]=this[_0x285e[2819]](_0x4fa0x4);this[_0x285e[2814]]()&&!this[_0x285e[2820]]&&this[_0x285e[1179]][_0x285e[2459]](_0x4fa0x4,_0x4fa0x3[_0x285e[727]]());if(this[_0x285e[2812]]()){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[251]],_0x4fa0x9=_0x4fa0x5[_0x285e[1721]](_0x4fa0x4);this[_0x285e[1179]][_0x285e[1712]](_0x4fa0x4)&&(!_0x4fa0x5[_0x285e[250]](_0x4fa0x4)||1<this[_0x285e[1179]][_0x285e[2694]]()||null!=_0x4fa0x9[_0x285e[1525]]&&0<_0x4fa0x9[_0x285e[1525]][_0x285e[67]]||null==_0x4fa0x5[_0x285e[1709]](_0x4fa0x4,!0)||null==_0x4fa0x5[_0x285e[1709]](_0x4fa0x4,!1)||this[_0x285e[1179]][_0x285e[2406]]||this[_0x285e[1179]][_0x285e[2574]](_0x4fa0x3[_0x285e[727]]())&&this[_0x285e[1179]][_0x285e[2617]]())&&this[_0x285e[861]](_0x4fa0x4,_0x4fa0x3[_0x285e[730]](),_0x4fa0x3[_0x285e[732]]());this[_0x285e[2821]]= !0;!mxClient[_0x285e[75]]&&!mxClient[_0x285e[76]]||_0x285e[2822]!=_0x4fa0x3[_0x285e[728]]()[_0x285e[301]]?_0x4fa0x3[_0x285e[722]]():mxClient[_0x285e[75]]&&_0x285e[2822]==_0x4fa0x3[_0x285e[728]]()[_0x285e[301]]&&(this[_0x285e[2821]]= !1,this[_0x285e[2823]]=null)}}};mxGraphHandler[_0x285e[202]][_0x285e[1010]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[902]](),_0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){return null!=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x2)&&_0x4fa0x3[_0x285e[1193]](_0x4fa0x2)&&null!=_0x4fa0x3[_0x285e[1721]](_0x4fa0x2)&&!_0x4fa0x3[_0x285e[1721]](_0x4fa0x2)[_0x285e[1500]]});return this[_0x285e[1179]][_0x285e[441]][_0x285e[2313]](_0x4fa0x3[_0x285e[1921]](_0x4fa0x4,_0x4fa0x2))};mxGraphHandler[_0x285e[202]][_0x285e[2690]]=function(_0x4fa0x2){return !this[_0x285e[2820]]&&this[_0x285e[1179]][_0x285e[1712]](_0x4fa0x2)?[_0x4fa0x2]:this[_0x285e[1179]][_0x285e[2629]](this[_0x285e[1179]][_0x285e[897]]())};mxGraphHandler[_0x285e[202]][_0x285e[2824]]=function(_0x4fa0x2){_0x4fa0x2=this[_0x285e[1613]](_0x4fa0x2);null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[244]](-1,-1),_0x4fa0x2[_0x285e[117]]<this[_0x285e[923]]&&(_0x4fa0x2[_0x285e[235]]-=(this[_0x285e[923]]-_0x4fa0x2[_0x285e[117]])/2,_0x4fa0x2[_0x285e[117]]=this[_0x285e[923]]),_0x4fa0x2[_0x285e[119]]<this[_0x285e[923]]&&(_0x4fa0x2[_0x285e[236]]-=(this[_0x285e[923]]-_0x4fa0x2[_0x285e[119]])/2,_0x4fa0x2[_0x285e[119]]=this[_0x285e[923]]));return _0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[1613]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x2[_0x285e[67]];_0x4fa0x5++){if(_0x4fa0x4[_0x285e[1193]](_0x4fa0x2[_0x4fa0x5])||_0x4fa0x4[_0x285e[250]](_0x4fa0x2[_0x4fa0x5])){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x2[_0x4fa0x5]);if(null!=_0x4fa0x9){var _0x4fa0xa=_0x4fa0x9;_0x4fa0x4[_0x285e[1193]](_0x4fa0x2[_0x4fa0x5])&&(null!=_0x4fa0x9[_0x285e[253]]&&null!=_0x4fa0x9[_0x285e[253]][_0x285e[1563]])&&(_0x4fa0xa=_0x4fa0x9[_0x285e[253]][_0x285e[1563]]);null==_0x4fa0x3?_0x4fa0x3= new mxRectangle(_0x4fa0xa[_0x285e[235]],_0x4fa0xa[_0x285e[236]],_0x4fa0xa[_0x285e[117]],_0x4fa0xa[_0x285e[119]]):_0x4fa0x3[_0x285e[99]](_0x4fa0xa)}}}};return _0x4fa0x3};mxGraphHandler[_0x285e[202]][_0x285e[2825]]=function(_0x4fa0x2){_0x4fa0x2= new mxRectangleShape(_0x4fa0x2,null,this[_0x285e[2806]]);_0x4fa0x2[_0x285e[1522]]= !0;this[_0x285e[2807]]?(_0x4fa0x2[_0x285e[507]]=mxConstants[_0x285e[1656]],_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[526]])):(_0x4fa0x2[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]],_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()),_0x4fa0x2[_0x285e[1229]]= !1);return _0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[861]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[246]]=_0x4fa0x2;this[_0x285e[2823]]=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],_0x4fa0x3,_0x4fa0x4);this[_0x285e[895]]=this[_0x285e[2690]](this[_0x285e[246]]);this[_0x285e[1562]]=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1799]](this[_0x285e[895]]);this[_0x285e[2826]]=this[_0x285e[2824]](this[_0x285e[895]]);this[_0x285e[990]]&&(this[_0x285e[2799]]= new mxGuide(this[_0x285e[1179]],this[_0x285e[1010]]()))};mxGraphHandler[_0x285e[202]][_0x285e[2827]]=function(_0x4fa0x2){return null!=this[_0x285e[2799]]?this[_0x285e[2799]][_0x285e[1019]](_0x4fa0x2[_0x285e[727]]()):!0};mxGraphHandler[_0x285e[202]][_0x285e[1021]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[2808]]?this[_0x285e[1179]][_0x285e[441]][_0x285e[255]]:1;_0x4fa0x2[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[235]]/_0x4fa0x3)*_0x4fa0x3;_0x4fa0x2[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[236]]/_0x4fa0x3)*_0x4fa0x3;return _0x4fa0x2};mxGraphHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]];if(!_0x4fa0x3[_0x285e[721]]()&&_0x4fa0x4[_0x285e[1009]]&&null!=this[_0x285e[246]]&&null!=this[_0x285e[2823]]&&null!=this[_0x285e[1562]]){var _0x4fa0x5=mxUtils[_0x285e[2196]](_0x4fa0x4[_0x285e[526]],_0x4fa0x3[_0x285e[730]](),_0x4fa0x3[_0x285e[732]]()),_0x4fa0x9=_0x4fa0x5[_0x285e[235]]-this[_0x285e[2823]][_0x285e[235]],_0x4fa0xa=_0x4fa0x5[_0x285e[236]]-this[_0x285e[2823]][_0x285e[236]],_0x4fa0x5=_0x4fa0x4[_0x285e[2353]];if(null!=this[_0x285e[253]]||Math[_0x285e[425]](_0x4fa0x9)>_0x4fa0x5||Math[_0x285e[425]](_0x4fa0xa)>_0x4fa0x5){null==this[_0x285e[1016]]&&(this[_0x285e[1016]]= new mxCellHighlight(this[_0x285e[1179]],mxConstants.DROP_TARGET_COLOR,3));null==this[_0x285e[253]]&&(this[_0x285e[253]]=this[_0x285e[2825]](this[_0x285e[1562]]));var _0x4fa0x12=_0x4fa0x4[_0x285e[1018]](_0x4fa0x3[_0x285e[727]]()),_0x4fa0x5=!0;if(null!=this[_0x285e[2799]]&&this[_0x285e[2827]](_0x4fa0x3)){_0x4fa0xa=this[_0x285e[2799]][_0x285e[582]](this[_0x285e[1562]], new mxPoint(_0x4fa0x9,_0x4fa0xa),_0x4fa0x12),_0x4fa0x5= !1,_0x4fa0x9=_0x4fa0xa[_0x285e[235]],_0x4fa0xa=_0x4fa0xa[_0x285e[236]]}else {if(_0x4fa0x12){var _0x4fa0x13=_0x4fa0x4[_0x285e[249]]()[_0x285e[513]],_0x4fa0x14=_0x4fa0x4[_0x285e[249]]()[_0x285e[255]],_0x4fa0x12=this[_0x285e[1562]][_0x285e[235]]-(_0x4fa0x4[_0x285e[1021]](this[_0x285e[1562]][_0x285e[235]]/_0x4fa0x14-_0x4fa0x13[_0x285e[235]])+_0x4fa0x13[_0x285e[235]])*_0x4fa0x14,_0x4fa0x13=this[_0x285e[1562]][_0x285e[236]]-(_0x4fa0x4[_0x285e[1021]](this[_0x285e[1562]][_0x285e[236]]/_0x4fa0x14-_0x4fa0x13[_0x285e[236]])+_0x4fa0x13[_0x285e[236]])*_0x4fa0x14,_0x4fa0xa=this[_0x285e[1021]]( new mxPoint(_0x4fa0x9,_0x4fa0xa)),_0x4fa0x9=_0x4fa0xa[_0x285e[235]]-_0x4fa0x12,_0x4fa0xa=_0x4fa0xa[_0x285e[236]]-_0x4fa0x13}};null!=this[_0x285e[2799]]&&_0x4fa0x5&&this[_0x285e[2799]][_0x285e[801]]();_0x4fa0x4[_0x285e[2578]](_0x4fa0x3[_0x285e[727]]())&&(Math[_0x285e[425]](_0x4fa0x9)>Math[_0x285e[425]](_0x4fa0xa)?_0x4fa0xa=0:_0x4fa0x9=0);this[_0x285e[2800]]=_0x4fa0x9;this[_0x285e[2801]]=_0x4fa0xa;this[_0x285e[2794]]();_0x4fa0x5=null;_0x4fa0xa=_0x4fa0x3[_0x285e[736]]();_0x4fa0x4[_0x285e[1015]]()&&this[_0x285e[2796]]&&(_0x4fa0x5=_0x4fa0x4[_0x285e[564]](this[_0x285e[895]],_0x4fa0x3[_0x285e[727]](),_0x4fa0xa));_0x4fa0x12=_0x4fa0x5;for(_0x4fa0x13=_0x4fa0x4[_0x285e[502]]();null!=_0x4fa0x12&&_0x4fa0x12!=this[_0x285e[895]][0];){_0x4fa0x12=_0x4fa0x13[_0x285e[1197]](_0x4fa0x12)};var _0x4fa0x14=_0x4fa0x4[_0x285e[2574]](_0x4fa0x3[_0x285e[727]]())&&_0x4fa0x4[_0x285e[2617]]()&&this[_0x285e[2810]](),_0x4fa0x9=_0x4fa0x4[_0x285e[249]]()[_0x285e[248]](_0x4fa0x5),_0x4fa0x15=!1;null!=_0x4fa0x9&&null==_0x4fa0x12&&(_0x4fa0x13[_0x285e[1197]](this[_0x285e[246]])!=_0x4fa0x5||_0x4fa0x14)?(this[_0x285e[772]]!=_0x4fa0x5&&(this[_0x285e[772]]=_0x4fa0x5,this[_0x285e[2828]](mxConstants.DROP_TARGET_COLOR)),_0x4fa0x15= !0):(this[_0x285e[772]]=null,this[_0x285e[2804]]&&(null!=_0x4fa0xa&&1==this[_0x285e[895]][_0x285e[67]]&&_0x4fa0x4[_0x285e[502]]()[_0x285e[1193]](_0x4fa0xa)&&_0x4fa0x4[_0x285e[2565]](_0x4fa0xa))&&(_0x4fa0x9=_0x4fa0x4[_0x285e[249]]()[_0x285e[248]](_0x4fa0xa),null!=_0x4fa0x9&&(_0x4fa0x4=null==_0x4fa0x4[_0x285e[2500]](null,this[_0x285e[246]],_0x4fa0xa)?mxConstants[_0x285e[2829]]:mxConstants[_0x285e[2830]],this[_0x285e[2828]](_0x4fa0x4),_0x4fa0x15= !0)));null!=_0x4fa0x9&&_0x4fa0x15?this[_0x285e[1016]][_0x285e[1016]](_0x4fa0x9):this[_0x285e[1016]][_0x285e[801]]()};_0x4fa0x3[_0x285e[722]]();mxEvent[_0x285e[722]](_0x4fa0x3[_0x285e[727]]())}else {if((this[_0x285e[2812]]()||this[_0x285e[2810]]())&&this[_0x285e[2802]]&&!_0x4fa0x3[_0x285e[721]]()&&null!=_0x4fa0x3[_0x285e[248]]()&&!_0x4fa0x4[_0x285e[1009]]){_0x4fa0x9=_0x4fa0x4[_0x285e[2599]](_0x4fa0x3[_0x285e[736]]()),null==_0x4fa0x9&&(_0x4fa0x4[_0x285e[994]]()&&_0x4fa0x4[_0x285e[1712]](_0x4fa0x3[_0x285e[736]]()))&&(_0x4fa0x9=_0x4fa0x4[_0x285e[502]]()[_0x285e[250]](_0x4fa0x3[_0x285e[736]]())?mxConstants[_0x285e[2831]]:mxConstants[_0x285e[2832]]),_0x4fa0x3[_0x285e[248]]()[_0x285e[1609]](_0x4fa0x9),_0x4fa0x3[_0x285e[722]]()}}};mxGraphHandler[_0x285e[202]][_0x285e[2794]]=function(){null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](this[_0x285e[2826]][_0x285e[235]]+this[_0x285e[2800]]-this[_0x285e[1179]][_0x285e[1136]]),Math[_0x285e[488]](this[_0x285e[2826]][_0x285e[236]]+this[_0x285e[2801]]-this[_0x285e[1179]][_0x285e[1137]]),this[_0x285e[2826]][_0x285e[117]],this[_0x285e[2826]][_0x285e[119]]),this[_0x285e[253]][_0x285e[258]]())};mxGraphHandler[_0x285e[202]][_0x285e[2828]]=function(_0x4fa0x2){null!=this[_0x285e[1016]]&&this[_0x285e[1016]][_0x285e[2828]](_0x4fa0x2)};mxGraphHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()){var _0x4fa0x4=this[_0x285e[1179]];if(null!=this[_0x285e[246]]&&null!=this[_0x285e[2823]]&&null!=this[_0x285e[253]]&&null!=this[_0x285e[2800]]&&null!=this[_0x285e[2801]]){var _0x4fa0x5=_0x4fa0x4[_0x285e[249]]()[_0x285e[255]],_0x4fa0x9=_0x4fa0x4[_0x285e[2574]](_0x4fa0x3[_0x285e[727]]())&&_0x4fa0x4[_0x285e[2617]]()&&this[_0x285e[2810]](),_0x4fa0xa=this[_0x285e[2800]]/_0x4fa0x5,_0x4fa0x5=this[_0x285e[2801]]/_0x4fa0x5,_0x4fa0x12=_0x4fa0x3[_0x285e[736]]();this[_0x285e[2804]]&&null==this[_0x285e[772]]&&null!=_0x4fa0x12&&_0x4fa0x4[_0x285e[502]]()[_0x285e[1193]](_0x4fa0x12)&&_0x4fa0x4[_0x285e[2565]](_0x4fa0x12)&&_0x4fa0x4[_0x285e[2581]](null,this[_0x285e[246]],_0x4fa0x12)?_0x4fa0x4[_0x285e[2433]][_0x285e[807]](this[_0x285e[246]],_0x4fa0x12,_0x4fa0x3[_0x285e[727]]()):(_0x4fa0x12=this[_0x285e[772]],_0x4fa0x4[_0x285e[2655]]()&&_0x4fa0x4[_0x285e[2686]](_0x4fa0x12,this[_0x285e[895]],_0x4fa0x3[_0x285e[727]]())?_0x4fa0x4[_0x285e[853]](_0x4fa0x12,this[_0x285e[895]],null,_0x4fa0xa,_0x4fa0x5):this[_0x285e[834]](this[_0x285e[895]],_0x4fa0xa,_0x4fa0x5,_0x4fa0x9,this[_0x285e[772]],_0x4fa0x3[_0x285e[727]]()))}else {this[_0x285e[2814]]()&&(this[_0x285e[2820]]&&null!=this[_0x285e[246]])&&this[_0x285e[2833]](_0x4fa0x3)}};this[_0x285e[2821]]&&_0x4fa0x3[_0x285e[722]]();this[_0x285e[862]]()};mxGraphHandler[_0x285e[202]][_0x285e[2833]]=function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[2459]](this[_0x285e[246]],_0x4fa0x2[_0x285e[727]]())};mxGraphHandler[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[2834]]();this[_0x285e[2820]]=this[_0x285e[2821]]= !1;this[_0x285e[772]]=this[_0x285e[246]]=this[_0x285e[2823]]=this[_0x285e[2835]]=this[_0x285e[2801]]=this[_0x285e[2800]]=null};mxGraphHandler[_0x285e[202]][_0x285e[2836]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1193]](_0x4fa0x2)){_0x4fa0x2=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);_0x4fa0x4=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x4),mxEvent[_0x285e[733]](_0x4fa0x4));var _0x4fa0x5=mxUtils[_0x285e[431]](mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION)||0);if(0!=_0x4fa0x5){_0x4fa0x3=Math[_0x285e[426]](-_0x4fa0x5);var _0x4fa0x5=Math[_0x285e[427]](-_0x4fa0x5),_0x4fa0x9= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]());_0x4fa0x4=mxUtils[_0x285e[432]](_0x4fa0x4,_0x4fa0x3,_0x4fa0x5,_0x4fa0x9)};return null!=_0x4fa0x2&&!mxUtils[_0x285e[442]](_0x4fa0x2,_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]])};return !1};mxGraphHandler[_0x285e[202]][_0x285e[834]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){_0x4fa0x5&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[2615]](_0x4fa0x2));null==_0x4fa0x9&&(this[_0x285e[2816]]()&&this[_0x285e[2836]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](this[_0x285e[246]]),_0x4fa0x2,_0x4fa0xa))&&(_0x4fa0x9=this[_0x285e[1179]][_0x285e[902]]());_0x4fa0x2=this[_0x285e[1179]][_0x285e[834]](_0x4fa0x2,_0x4fa0x3-this[_0x285e[1179]][_0x285e[1136]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x4-this[_0x285e[1179]][_0x285e[1137]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);this[_0x285e[2814]]()&&this[_0x285e[2805]]&&this[_0x285e[1179]][_0x285e[2564]](_0x4fa0x2[0]);_0x4fa0x5&&this[_0x285e[1179]][_0x285e[904]](_0x4fa0x2)};mxGraphHandler[_0x285e[202]][_0x285e[2834]]=function(){null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null);null!=this[_0x285e[2799]]&&(this[_0x285e[2799]][_0x285e[515]](),this[_0x285e[2799]]=null);null!=this[_0x285e[1016]]&&(this[_0x285e[1016]][_0x285e[515]](),this[_0x285e[1016]]=null)};mxGraphHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[1148]](this);this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2730]]);this[_0x285e[2834]]()};function mxPanningHandler(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[1033]]=_0x4fa0x3,this[_0x285e[1179]][_0x285e[1133]](this),this[_0x285e[176]]())}mxPanningHandler[_0x285e[202]]= new mxPopupMenu;mxPanningHandler[_0x285e[202]][_0x285e[196]]=mxPanningHandler;mxPanningHandler[_0x285e[202]][_0x285e[1179]]=null;mxPanningHandler[_0x285e[202]][_0x285e[2837]]=null;mxPanningHandler[_0x285e[202]][_0x285e[2838]]=null;mxPanningHandler[_0x285e[202]][_0x285e[2839]]= !0;mxPanningHandler[_0x285e[202]][_0x285e[2840]]= !1;mxPanningHandler[_0x285e[202]][_0x285e[2841]]= !0;mxPanningHandler[_0x285e[202]][_0x285e[2842]]= !0;mxPanningHandler[_0x285e[202]][_0x285e[2843]]= !1;mxPanningHandler[_0x285e[202]][_0x285e[2844]]= !0;mxPanningHandler[_0x285e[202]][_0x285e[2845]]= !1;mxPanningHandler[_0x285e[202]][_0x285e[2431]]= !0;mxPanningHandler[_0x285e[202]][_0x285e[2846]]=function(){return this[_0x285e[2431]]};mxPanningHandler[_0x285e[202]][_0x285e[2847]]=function(_0x4fa0x2){this[_0x285e[2431]]=_0x4fa0x2};mxPanningHandler[_0x285e[202]][_0x285e[176]]=function(){mxPopupMenu[_0x285e[202]][_0x285e[176]][_0x285e[183]](this);mxEvent[_0x285e[169]](this[_0x285e[485]],mxClient[_0x285e[754]]?_0x285e[756]:_0x285e[752],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[2276]][_0x285e[801]]()}))};mxPanningHandler[_0x285e[202]][_0x285e[2848]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[727]]();return this[_0x285e[2840]]&&(this[_0x285e[2843]]||null==_0x4fa0x2[_0x285e[248]]())&&mxEvent[_0x285e[1158]](_0x4fa0x3)||mxEvent[_0x285e[775]](_0x4fa0x3)&&mxEvent[_0x285e[774]](_0x4fa0x3)||this[_0x285e[2839]]&&mxEvent[_0x285e[737]](_0x4fa0x3)};mxPanningHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[994]]()){this[_0x285e[1032]]();this[_0x285e[2741]]=-this[_0x285e[1179]][_0x285e[526]][_0x285e[360]];this[_0x285e[2742]]=-this[_0x285e[1179]][_0x285e[526]][_0x285e[190]];var _0x4fa0x4=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],_0x4fa0x3[_0x285e[730]](),_0x4fa0x3[_0x285e[732]]());this[_0x285e[2837]]=_0x4fa0x4[_0x285e[235]];this[_0x285e[2838]]=_0x4fa0x4[_0x285e[236]];this[_0x285e[2849]]=this[_0x285e[737]](_0x4fa0x3);this[_0x285e[2850]]=this[_0x285e[2846]]()&&this[_0x285e[2848]](_0x4fa0x3);this[_0x285e[2739]]=_0x4fa0x3[_0x285e[730]]();this[_0x285e[2740]]=_0x4fa0x3[_0x285e[732]]();this[_0x285e[2850]]&&this[_0x285e[2851]](_0x4fa0x3)}};mxPanningHandler[_0x285e[202]][_0x285e[2851]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[722]]()};mxPanningHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x3[_0x285e[730]]()-this[_0x285e[2739]],_0x4fa0x5=_0x4fa0x3[_0x285e[732]]()-this[_0x285e[2740]];if(this[_0x285e[1124]]){this[_0x285e[2844]]&&(this[_0x285e[2845]]&&(_0x4fa0x4=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x4),_0x4fa0x5=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x5)),this[_0x285e[1179]][_0x285e[1135]](_0x4fa0x4+this[_0x285e[2741]],_0x4fa0x5+this[_0x285e[2742]])),this[_0x285e[746]]( new mxEventObject(mxEvent.PAN,_0x285e[763],_0x4fa0x3)),_0x4fa0x3[_0x285e[722]]()}else {if(this[_0x285e[2850]]){var _0x4fa0x9=this[_0x285e[1124]];this[_0x285e[1124]]=Math[_0x285e[425]](_0x4fa0x4)>this[_0x285e[1179]][_0x285e[2353]]||Math[_0x285e[425]](_0x4fa0x5)>this[_0x285e[1179]][_0x285e[2353]];!_0x4fa0x9&&this[_0x285e[1124]]&&this[_0x285e[746]]( new mxEventObject(mxEvent.PAN_START,_0x285e[763],_0x4fa0x3))}}};mxPanningHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=Math[_0x285e[425]](_0x4fa0x3[_0x285e[730]]()-this[_0x285e[2739]]),_0x4fa0x5=Math[_0x285e[425]](_0x4fa0x3[_0x285e[732]]()-this[_0x285e[2740]]);if(this[_0x285e[1124]]){if(!this[_0x285e[1179]][_0x285e[2365]]||!mxUtils[_0x285e[1134]](this[_0x285e[1179]][_0x285e[526]])){_0x4fa0x4=_0x4fa0x3[_0x285e[730]]()-this[_0x285e[2739]];_0x4fa0x5=_0x4fa0x3[_0x285e[732]]()-this[_0x285e[2740]];this[_0x285e[2845]]&&(_0x4fa0x4=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x4),_0x4fa0x5=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x5));var _0x4fa0x9=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0xa=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]];this[_0x285e[1179]][_0x285e[1135]](0,0);this[_0x285e[1135]](_0x4fa0xa[_0x285e[235]]+_0x4fa0x4/_0x4fa0x9,_0x4fa0xa[_0x285e[236]]+_0x4fa0x5/_0x4fa0x9)};this[_0x285e[1124]]= !1;this[_0x285e[746]]( new mxEventObject(mxEvent.PAN_END,_0x285e[763],_0x4fa0x3));_0x4fa0x3[_0x285e[722]]()}else {this[_0x285e[2849]]&&(_0x4fa0x4<this[_0x285e[1179]][_0x285e[2353]]&&_0x4fa0x5<this[_0x285e[1179]][_0x285e[2353]])&&(_0x4fa0x4=this[_0x285e[2852]](_0x4fa0x3),this[_0x285e[1179]][_0x285e[994]]()&&this[_0x285e[2841]]&&null!=_0x4fa0x4&&!this[_0x285e[1179]][_0x285e[2692]](_0x4fa0x4)?this[_0x285e[1179]][_0x285e[2450]](_0x4fa0x4):this[_0x285e[2842]]&&null==_0x4fa0x4&&this[_0x285e[1179]][_0x285e[2440]](),this[_0x285e[1179]][_0x285e[2276]][_0x285e[801]](),_0x4fa0x5=mxUtils[_0x285e[444]](),_0x4fa0x5= new mxPoint(_0x4fa0x3[_0x285e[730]]()+_0x4fa0x5[_0x285e[235]],_0x4fa0x3[_0x285e[732]]()+_0x4fa0x5[_0x285e[236]]),this[_0x285e[152]](_0x4fa0x5[_0x285e[235]]+1,_0x4fa0x5[_0x285e[236]]+1,_0x4fa0x4,_0x4fa0x3[_0x285e[727]]()),_0x4fa0x3[_0x285e[722]]())};this[_0x285e[2849]]=this[_0x285e[2850]]= !1};mxPanningHandler[_0x285e[202]][_0x285e[2852]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[736]]()};mxPanningHandler[_0x285e[202]][_0x285e[1135]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1147]](_0x4fa0x2,_0x4fa0x3)};mxPanningHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[1148]](this);mxPopupMenu[_0x285e[202]][_0x285e[515]][_0x285e[183]](this)};function mxCellMarker(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){mxEventSource[_0x285e[239]](this);null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[2853]]=null!=_0x4fa0x3?_0x4fa0x3:mxConstants[_0x285e[2854]],this[_0x285e[2855]]=null!=_0x4fa0x3?_0x4fa0x4:mxConstants[_0x285e[2856]],this[_0x285e[2857]]=null!=_0x4fa0x5?_0x4fa0x5:mxConstants[_0x285e[2858]],this[_0x285e[1016]]= new mxCellHighlight(_0x4fa0x2))}mxUtils[_0x285e[1284]](mxCellMarker,mxEventSource);mxCellMarker[_0x285e[202]][_0x285e[1179]]=null;mxCellMarker[_0x285e[202]][_0x285e[984]]= !0;mxCellMarker[_0x285e[202]][_0x285e[2857]]=mxConstants[_0x285e[2858]];mxCellMarker[_0x285e[202]][_0x285e[2859]]= !1;mxCellMarker[_0x285e[202]][_0x285e[2853]]=null;mxCellMarker[_0x285e[202]][_0x285e[2855]]=null;mxCellMarker[_0x285e[202]][_0x285e[2860]]=null;mxCellMarker[_0x285e[202]][_0x285e[2861]]=null;mxCellMarker[_0x285e[202]][_0x285e[2862]]=null;mxCellMarker[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxCellMarker[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxCellMarker[_0x285e[202]][_0x285e[2863]]=function(_0x4fa0x2){this[_0x285e[2857]]=_0x4fa0x2};mxCellMarker[_0x285e[202]][_0x285e[2864]]=function(){return this[_0x285e[2857]]};mxCellMarker[_0x285e[202]][_0x285e[2865]]=function(_0x4fa0x2){this[_0x285e[2859]]=_0x4fa0x2};mxCellMarker[_0x285e[202]][_0x285e[2866]]=function(){return this[_0x285e[2859]]};mxCellMarker[_0x285e[202]][_0x285e[2867]]=function(){return null!=this[_0x285e[2861]]};mxCellMarker[_0x285e[202]][_0x285e[2868]]=function(){return this[_0x285e[2861]]};mxCellMarker[_0x285e[202]][_0x285e[2869]]=function(){return this[_0x285e[2862]]};mxCellMarker[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[2861]]=null;null!=this[_0x285e[2862]]&&(this[_0x285e[2862]]=null,this[_0x285e[2870]]())};mxCellMarker[_0x285e[202]][_0x285e[2871]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(this[_0x285e[994]]()){var _0x4fa0x3=this[_0x285e[248]](_0x4fa0x2),_0x4fa0x4=null!=_0x4fa0x3?this[_0x285e[2872]](_0x4fa0x3):!1;_0x4fa0x2=this[_0x285e[2873]](_0x4fa0x2[_0x285e[727]](),_0x4fa0x3,_0x4fa0x4);this[_0x285e[2861]]=_0x4fa0x4?_0x4fa0x3:null;if(_0x4fa0x3!=this[_0x285e[2862]]||_0x4fa0x2!=this[_0x285e[2860]]){this[_0x285e[2860]]=_0x4fa0x2,null!=_0x4fa0x3&&null!=this[_0x285e[2860]]?(this[_0x285e[2862]]=_0x4fa0x3,this[_0x285e[811]]()):null!=this[_0x285e[2862]]&&(this[_0x285e[2862]]=null,this[_0x285e[2870]]())}};return _0x4fa0x3};mxCellMarker[_0x285e[202]][_0x285e[2874]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);null!=_0x4fa0x4&&(this[_0x285e[2860]]=null!=_0x4fa0x3?_0x4fa0x3:this[_0x285e[2853]],this[_0x285e[2862]]=_0x4fa0x4,this[_0x285e[811]]())};mxCellMarker[_0x285e[202]][_0x285e[811]]=function(){this[_0x285e[1016]][_0x285e[2828]](this[_0x285e[2860]]);this[_0x285e[1016]][_0x285e[1016]](this[_0x285e[2862]]);this[_0x285e[746]]( new mxEventObject(mxEvent.MARK,_0x285e[724],this[_0x285e[2862]]))};mxCellMarker[_0x285e[202]][_0x285e[2870]]=function(){this[_0x285e[811]]()};mxCellMarker[_0x285e[202]][_0x285e[2872]]=function(_0x4fa0x2){return !0};mxCellMarker[_0x285e[202]][_0x285e[2873]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x4?this[_0x285e[2853]]:this[_0x285e[2855]]};mxCellMarker[_0x285e[202]][_0x285e[248]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[249]]();cell=this[_0x285e[736]](_0x4fa0x2);_0x4fa0x3=this[_0x285e[2875]](_0x4fa0x3[_0x285e[248]](cell));return null!=_0x4fa0x3&&this[_0x285e[1825]](_0x4fa0x3,_0x4fa0x2)?_0x4fa0x3:null};mxCellMarker[_0x285e[202]][_0x285e[736]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[736]]()};mxCellMarker[_0x285e[202]][_0x285e[2875]]=function(_0x4fa0x2){return _0x4fa0x2};mxCellMarker[_0x285e[202]][_0x285e[1825]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[2859]]?mxUtils[_0x285e[2876]](_0x4fa0x2,_0x4fa0x3[_0x285e[734]](),_0x4fa0x3[_0x285e[735]](),this[_0x285e[2857]],mxConstants.MIN_HOTSPOT_SIZE,mxConstants.MAX_HOTSPOT_SIZE):!0};mxCellMarker[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[2877]]);this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[2877]]);this[_0x285e[1016]][_0x285e[515]]()};function mxSelectionCellsHandler(_0x4fa0x2){mxEventSource[_0x285e[239]](this);this[_0x285e[1179]]=_0x4fa0x2;this[_0x285e[2878]]= new mxDictionary;this[_0x285e[1179]][_0x285e[1133]](this);this[_0x285e[2731]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){this[_0x285e[994]]()&&this[_0x285e[802]]()});this[_0x285e[1179]][_0x285e[2435]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.TRANSLATE,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.DOWN,this[_0x285e[2731]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.UP,this[_0x285e[2731]])}mxUtils[_0x285e[1284]](mxSelectionCellsHandler,mxEventSource);mxSelectionCellsHandler[_0x285e[202]][_0x285e[1179]]=null;mxSelectionCellsHandler[_0x285e[202]][_0x285e[984]]= !0;mxSelectionCellsHandler[_0x285e[202]][_0x285e[2731]]=null;mxSelectionCellsHandler[_0x285e[202]][_0x285e[2879]]=100;mxSelectionCellsHandler[_0x285e[202]][_0x285e[2878]]=null;mxSelectionCellsHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxSelectionCellsHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxSelectionCellsHandler[_0x285e[202]][_0x285e[2596]]=function(_0x4fa0x2){return this[_0x285e[2878]][_0x285e[203]](_0x4fa0x2)};mxSelectionCellsHandler[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[2878]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[862]][_0x285e[183]](_0x4fa0x3)})};mxSelectionCellsHandler[_0x285e[202]][_0x285e[802]]=function(){var _0x4fa0x2=this[_0x285e[2878]];this[_0x285e[2878]]= new mxDictionary;for(var _0x4fa0x3=this[_0x285e[1179]][_0x285e[897]](),_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x3[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3[_0x4fa0x4]);if(null!=_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[205]](_0x4fa0x3[_0x4fa0x4]);null!=_0x4fa0x9&&(_0x4fa0x9[_0x285e[724]]!=_0x4fa0x5?(_0x4fa0x9[_0x285e[515]](),_0x4fa0x9=null):_0x4fa0x9[_0x285e[258]]());null==_0x4fa0x9&&(_0x4fa0x9=this[_0x285e[1179]][_0x285e[2709]](_0x4fa0x5),this[_0x285e[746]]( new mxEventObject(mxEvent.ADD,_0x285e[724],_0x4fa0x5)));null!=_0x4fa0x9&&this[_0x285e[2878]][_0x285e[204]](_0x4fa0x3[_0x4fa0x4],_0x4fa0x9)}};_0x4fa0x2[_0x285e[209]](mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[746]]( new mxEventObject(mxEvent.REMOVE,_0x285e[724],_0x4fa0x3[_0x285e[724]]));_0x4fa0x3[_0x285e[515]]()}))};mxSelectionCellsHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1179]][_0x285e[994]]()&&this[_0x285e[994]]()){var _0x4fa0x4=[_0x4fa0x2,_0x4fa0x3];this[_0x285e[2878]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[787]][_0x285e[183]](_0x4fa0x3,_0x4fa0x4)})}};mxSelectionCellsHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1179]][_0x285e[994]]()&&this[_0x285e[994]]()){var _0x4fa0x4=[_0x4fa0x2,_0x4fa0x3];this[_0x285e[2878]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[788]][_0x285e[183]](_0x4fa0x3,_0x4fa0x4)})}};mxSelectionCellsHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1179]][_0x285e[994]]()&&this[_0x285e[994]]()){var _0x4fa0x4=[_0x4fa0x2,_0x4fa0x3];this[_0x285e[2878]][_0x285e[209]](function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3[_0x285e[789]][_0x285e[183]](_0x4fa0x3,_0x4fa0x4)})}};mxSelectionCellsHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[1148]](this);null!=this[_0x285e[2731]]&&(this[_0x285e[1179]][_0x285e[2435]]()[_0x285e[745]](this[_0x285e[2731]]),this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[2731]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[2731]]),this[_0x285e[2731]]=null)};function mxConnectionHandler(_0x4fa0x2,_0x4fa0x3){mxEventSource[_0x285e[239]](this);null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[1033]]=_0x4fa0x3,this[_0x285e[176]]())}mxUtils[_0x285e[1284]](mxConnectionHandler,mxEventSource);mxConnectionHandler[_0x285e[202]][_0x285e[1179]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[1033]]= !0;mxConnectionHandler[_0x285e[202]][_0x285e[2880]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2881]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2882]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2883]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[984]]= !0;mxConnectionHandler[_0x285e[202]][_0x285e[804]]= !0;mxConnectionHandler[_0x285e[202]][_0x285e[2884]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2885]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2886]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[267]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2887]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2888]]= !0;mxConnectionHandler[_0x285e[202]][_0x285e[2889]]=500;mxConnectionHandler[_0x285e[202]][_0x285e[2890]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2891]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2892]]=4;mxConnectionHandler[_0x285e[202]][_0x285e[2893]]=0;mxConnectionHandler[_0x285e[202]][_0x285e[2894]]=0;mxConnectionHandler[_0x285e[202]][_0x285e[2895]]= !1;mxConnectionHandler[_0x285e[202]][_0x285e[2823]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2896]]= new mxPoint(0,mxConstants.TOOLTIP_VERTICAL_OFFSET);mxConnectionHandler[_0x285e[202]][_0x285e[2897]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[1176]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2898]]=null;mxConnectionHandler[_0x285e[202]][_0x285e[2899]]=0;mxConnectionHandler[_0x285e[202]][_0x285e[2900]]=mxClient[_0x285e[47]];mxConnectionHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxConnectionHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxConnectionHandler[_0x285e[202]][_0x285e[2901]]=function(){return this[_0x285e[2884]]};mxConnectionHandler[_0x285e[202]][_0x285e[2902]]=function(_0x4fa0x2){this[_0x285e[2884]]=_0x4fa0x2};mxConnectionHandler[_0x285e[202]][_0x285e[2156]]=function(){var _0x4fa0x2= new mxPolyline([],mxConstants.INVALID_COLOR);_0x4fa0x2[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]];_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]());_0x4fa0x2[_0x285e[1564]]=0;_0x4fa0x2[_0x285e[1229]]= !1;_0x4fa0x2[_0x285e[1522]]= !0;if(this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[508]]){_0x4fa0x2[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130])}else {var _0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x2=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x2),mxEvent[_0x285e[733]](_0x4fa0x2));return this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](this[_0x285e[1179]][_0x285e[999]](_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]))});mxEvent[_0x285e[2733]](_0x4fa0x2[_0x285e[252]],this[_0x285e[1179]],_0x4fa0x3)};return _0x4fa0x2};mxConnectionHandler[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[1179]][_0x285e[1133]](this);this[_0x285e[2885]]=this[_0x285e[1689]]();this[_0x285e[2886]]= new mxConstraintHandler(this[_0x285e[1179]]);this[_0x285e[1176]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){null!=this[_0x285e[2903]]&&(this[_0x285e[2903]]=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](this[_0x285e[2903]][_0x285e[246]]));null!=this[_0x285e[2903]]?this[_0x285e[2905]](this[_0x285e[2904]],this[_0x285e[2903]]):(this[_0x285e[2906]](this[_0x285e[2904]]),this[_0x285e[257]]=null);this[_0x285e[2886]][_0x285e[862]]()});this[_0x285e[1179]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[1176]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE,this[_0x285e[1176]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.TRANSLATE,this[_0x285e[1176]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x285e[1176]]);this[_0x285e[2898]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2906]](this[_0x285e[2904]])});this[_0x285e[1179]][_0x285e[169]](mxEvent.START_EDITING,this[_0x285e[2898]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.DOWN,this[_0x285e[2898]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.UP,this[_0x285e[2898]])};mxConnectionHandler[_0x285e[202]][_0x285e[2907]]=function(_0x4fa0x2){return !0};mxConnectionHandler[_0x285e[202]][_0x285e[1689]]=function(){var _0x4fa0x2= new mxCellMarker(this[_0x285e[1179]]);_0x4fa0x2[_0x285e[2859]]= !0;_0x4fa0x2[_0x285e[736]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=mxCellMarker[_0x285e[202]][_0x285e[736]][_0x285e[183]](_0x4fa0x2,arguments);this[_0x285e[267]]=null;if(!this[_0x285e[2907]](_0x4fa0x4)){return null};null!=_0x4fa0x4?this[_0x285e[2908]]()?null!=this[_0x285e[257]]&&(this[_0x285e[267]]=this[_0x285e[2909]](this[_0x285e[257]][_0x285e[246]],_0x4fa0x4),null!=this[_0x285e[267]]&&0==this[_0x285e[267]][_0x285e[67]]&&(_0x4fa0x4=null,this[_0x285e[2901]]()&&(this[_0x285e[267]]=null))):this[_0x285e[2671]](_0x4fa0x4)||(_0x4fa0x4=null):this[_0x285e[2908]]()&&(!this[_0x285e[2901]]()&&!this[_0x285e[1179]][_0x285e[2406]])&&(this[_0x285e[267]]=_0x285e[110]);return _0x4fa0x4});_0x4fa0x2[_0x285e[2872]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3){return this[_0x285e[2908]]()?null==this[_0x285e[267]]:mxCellMarker[_0x285e[202]][_0x285e[2872]][_0x285e[183]](_0x4fa0x2,arguments)});_0x4fa0x2[_0x285e[2873]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return null==this[_0x285e[2882]]||this[_0x285e[2908]]()?mxCellMarker[_0x285e[202]][_0x285e[2873]][_0x285e[183]](_0x4fa0x2,arguments):null});_0x4fa0x2[_0x285e[1825]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x4){return null!=this[_0x285e[2882]]||this[_0x285e[2908]]()?!0:mxCellMarker[_0x285e[202]][_0x285e[1825]][_0x285e[183]](_0x4fa0x2,arguments)});return _0x4fa0x2};mxConnectionHandler[_0x285e[202]][_0x285e[861]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[257]]=_0x4fa0x2;this[_0x285e[2823]]= new mxPoint(_0x4fa0x3,_0x4fa0x4);this[_0x285e[2897]]=null!=_0x4fa0x5?_0x4fa0x5:this[_0x285e[2910]](null);this[_0x285e[2885]][_0x285e[2860]]=this[_0x285e[2885]][_0x285e[2853]];this[_0x285e[2885]][_0x285e[2862]]=_0x4fa0x2;this[_0x285e[2885]][_0x285e[811]]();this[_0x285e[746]]( new mxEventObject(mxEvent.START,_0x285e[724],this[_0x285e[257]]))};mxConnectionHandler[_0x285e[202]][_0x285e[2908]]=function(){return null!=this[_0x285e[2823]]&&null!=this[_0x285e[253]]};mxConnectionHandler[_0x285e[202]][_0x285e[2671]]=function(_0x4fa0x2){return this[_0x285e[1179]][_0x285e[2671]](_0x4fa0x2)};mxConnectionHandler[_0x285e[202]][_0x285e[2672]]=function(_0x4fa0x2){return !0};mxConnectionHandler[_0x285e[202]][_0x285e[2909]]=function(_0x4fa0x2,_0x4fa0x3){return !this[_0x285e[2672]](_0x4fa0x3)?_0x285e[110]:this[_0x285e[1179]][_0x285e[2500]](null,_0x4fa0x2,_0x4fa0x3)};mxConnectionHandler[_0x285e[202]][_0x285e[2911]]=function(_0x4fa0x2){return this[_0x285e[2882]]};mxConnectionHandler[_0x285e[202]][_0x285e[2912]]=function(_0x4fa0x2){return null!=_0x4fa0x2[_0x285e[963]]&&_0x4fa0x2[_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]?!0:this[_0x285e[2880]]};mxConnectionHandler[_0x285e[202]][_0x285e[2913]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[2911]](_0x4fa0x2);if(null!=_0x4fa0x3&&null!=_0x4fa0x2){this[_0x285e[2903]]=_0x4fa0x2;var _0x4fa0x4=[],_0x4fa0x5= new mxRectangle(0,0,_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]]),_0x4fa0x9= new mxImageShape(_0x4fa0x5,_0x4fa0x3[_0x285e[390]],null,null,0);_0x4fa0x9[_0x285e[1674]]= !1;this[_0x285e[2912]](_0x4fa0x2)?(_0x4fa0x9[_0x285e[507]]=mxConstants[_0x285e[1656]],_0x4fa0x9[_0x285e[176]](this[_0x285e[1179]][_0x285e[526]])):(_0x4fa0x9[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[508]]?mxConstants[_0x285e[508]]:mxConstants[_0x285e[1523]],_0x4fa0x9[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()),this[_0x285e[2881]]&&null!=_0x4fa0x9[_0x285e[252]][_0x285e[328]]&&_0x4fa0x9[_0x285e[252]][_0x285e[265]][_0x285e[950]](_0x4fa0x9[_0x285e[252]],_0x4fa0x9[_0x285e[252]][_0x285e[265]][_0x285e[285]]));_0x4fa0x9[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[2914]];var _0x4fa0xa=mxUtils[_0x285e[885]](this,function(){return null!=this[_0x285e[2915]]?this[_0x285e[2915]]:_0x4fa0x2}),_0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){mxEvent[_0x285e[721]](_0x4fa0x2)||(this[_0x285e[2916]]=_0x4fa0x9,this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x2,_0x4fa0xa())))});mxEvent[_0x285e[2733]](_0x4fa0x9[_0x285e[252]],this[_0x285e[1179]],_0x4fa0xa,_0x4fa0x3);_0x4fa0x4[_0x285e[207]](_0x4fa0x9);this[_0x285e[2905]](_0x4fa0x4,this[_0x285e[2903]]);return _0x4fa0x4};return null};mxConnectionHandler[_0x285e[202]][_0x285e[2905]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=_0x4fa0x2&&null!=_0x4fa0x2[0]&&null!=_0x4fa0x3){var _0x4fa0x4=this[_0x285e[2917]](_0x4fa0x2[0],_0x4fa0x3);_0x4fa0x2[0][_0x285e[1562]][_0x285e[235]]=_0x4fa0x4[_0x285e[235]];_0x4fa0x2[0][_0x285e[1562]][_0x285e[236]]=_0x4fa0x4[_0x285e[236]];_0x4fa0x2[0][_0x285e[258]]()}};mxConnectionHandler[_0x285e[202]][_0x285e[2917]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x5=_0x4fa0x3[_0x285e[241]](),_0x4fa0x9=_0x4fa0x3[_0x285e[242]]();if(this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x3[_0x285e[246]])){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[1731]](_0x4fa0x3[_0x285e[246]]),_0x4fa0x5=0!=_0x4fa0xa[_0x285e[117]]?_0x4fa0x3[_0x285e[235]]+_0x4fa0xa[_0x285e[117]]*_0x4fa0x4/2:_0x4fa0x5,_0x4fa0x9=0!=_0x4fa0xa[_0x285e[119]]?_0x4fa0x3[_0x285e[236]]+_0x4fa0xa[_0x285e[119]]*_0x4fa0x4/2:_0x4fa0x9,_0x4fa0xa=mxUtils[_0x285e[431]](mxUtils[_0x285e[433]](_0x4fa0x3[_0x285e[124]],mxConstants.STYLE_ROTATION)||0);if(0!=_0x4fa0xa){var _0x4fa0x4=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0xa=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x12= new mxPoint(_0x4fa0x3[_0x285e[241]](),_0x4fa0x3[_0x285e[242]]()),_0x4fa0x9=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x5,_0x4fa0x9),_0x4fa0x4,_0x4fa0xa,_0x4fa0x12),_0x4fa0x5=_0x4fa0x9[_0x285e[235]],_0x4fa0x9=_0x4fa0x9[_0x285e[236]]}};return new mxPoint(_0x4fa0x5-_0x4fa0x2[_0x285e[1562]][_0x285e[117]]/2,_0x4fa0x9-_0x4fa0x2[_0x285e[1562]][_0x285e[119]]/2)};mxConnectionHandler[_0x285e[202]][_0x285e[2906]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){this[_0x285e[2903]]=null;for(var _0x4fa0x3=0;_0x4fa0x3<_0x4fa0x2[_0x285e[67]];_0x4fa0x3++){_0x4fa0x2[_0x4fa0x3][_0x285e[515]]()}}};mxConnectionHandler[_0x285e[202]][_0x285e[2918]]=function(_0x4fa0x2){return !this[_0x285e[1179]][_0x285e[2579]](_0x4fa0x2[_0x285e[727]]())&&(null!=this[_0x285e[2886]][_0x285e[2919]]&&null!=this[_0x285e[2886]][_0x285e[2920]]||null!=this[_0x285e[257]]&&null==this[_0x285e[267]]&&(null==this[_0x285e[2904]]||null!=this[_0x285e[2904]]&&null!=this[_0x285e[2916]]))};mxConnectionHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2899]]++;if(this[_0x285e[994]]()&&this[_0x285e[1179]][_0x285e[994]]()&&!_0x4fa0x3[_0x285e[721]]()&&!this[_0x285e[2908]]()&&this[_0x285e[2918]](_0x4fa0x3)){null!=this[_0x285e[2886]][_0x285e[2920]]&&null!=this[_0x285e[2886]][_0x285e[2919]]&&null!=this[_0x285e[2886]][_0x285e[987]]?(this[_0x285e[2921]]=this[_0x285e[2886]][_0x285e[2920]],this[_0x285e[257]]=this[_0x285e[2886]][_0x285e[2919]],this[_0x285e[2823]]=this[_0x285e[2886]][_0x285e[987]][_0x285e[238]]()):this[_0x285e[2823]]= new mxPoint(_0x4fa0x3[_0x285e[734]](),_0x4fa0x3[_0x285e[735]]());this[_0x285e[2897]]=this[_0x285e[2910]](_0x4fa0x3);this[_0x285e[2899]]=1;this[_0x285e[2887]]&&null==this[_0x285e[253]]&&(this[_0x285e[2922]]=null,this[_0x285e[253]]=this[_0x285e[2156]]());if(null==this[_0x285e[257]]&&null!=this[_0x285e[2897]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[2689]](_0x4fa0x3[_0x285e[727]]());this[_0x285e[2897]][_0x285e[246]][_0x285e[256]][_0x285e[2007]](_0x4fa0x4,!0)};this[_0x285e[746]]( new mxEventObject(mxEvent.START,_0x285e[724],this[_0x285e[257]]));_0x4fa0x3[_0x285e[722]]()}else {if(mxClient[_0x285e[754]]&&this[_0x285e[2888]]&&!this[_0x285e[2890]]&&this[_0x285e[994]]()&&this[_0x285e[1179]][_0x285e[994]]()&&!this[_0x285e[2908]]()){this[_0x285e[2890]]= !0;this[_0x285e[2893]]=_0x4fa0x3[_0x285e[730]]();this[_0x285e[2894]]=_0x4fa0x3[_0x285e[732]]();var _0x4fa0x5=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](this[_0x285e[2885]][_0x285e[736]](_0x4fa0x3));this[_0x285e[2923]]&&window[_0x285e[2924]](this[_0x285e[2923]]);this[_0x285e[2923]]=window[_0x285e[261]](mxUtils[_0x285e[885]](this,function(){this[_0x285e[2891]]&&this[_0x285e[2925]](_0x4fa0x3,_0x4fa0x5);this[_0x285e[2891]]=this[_0x285e[2890]]= !1}),this[_0x285e[2889]]);this[_0x285e[2891]]= !0}};this[_0x285e[2926]]=this[_0x285e[2916]];this[_0x285e[2916]]=null};mxConnectionHandler[_0x285e[202]][_0x285e[2925]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x3&&(this[_0x285e[2885]][_0x285e[2860]]=this[_0x285e[2885]][_0x285e[2853]],this[_0x285e[2885]][_0x285e[2862]]=_0x4fa0x3,this[_0x285e[2885]][_0x285e[811]](),this[_0x285e[2823]]= new mxPoint(_0x4fa0x2[_0x285e[734]](),_0x4fa0x2[_0x285e[735]]()),this[_0x285e[2897]]=this[_0x285e[2910]](_0x4fa0x2),this[_0x285e[257]]=_0x4fa0x3,this[_0x285e[746]]( new mxEventObject(mxEvent.START,_0x285e[724],this[_0x285e[257]])))};mxConnectionHandler[_0x285e[202]][_0x285e[2927]]=function(_0x4fa0x2){return !this[_0x285e[1179]][_0x285e[1712]](_0x4fa0x2[_0x285e[246]])};mxConnectionHandler[_0x285e[202]][_0x285e[2910]]=function(_0x4fa0x2){return null};mxConnectionHandler[_0x285e[202]][_0x285e[2928]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[2885]][_0x285e[2871]](_0x4fa0x2);this[_0x285e[2886]][_0x285e[2729]](_0x4fa0x2,null==this[_0x285e[2823]]);this[_0x285e[2915]]=_0x4fa0x3};mxConnectionHandler[_0x285e[202]][_0x285e[2929]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[518]](),_0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[512]]();_0x4fa0x2[_0x285e[235]]=_0x4fa0x2[_0x285e[235]]/_0x4fa0x3-_0x4fa0x4[_0x285e[235]];_0x4fa0x2[_0x285e[236]]=_0x4fa0x2[_0x285e[236]]/_0x4fa0x3-_0x4fa0x4[_0x285e[236]]};mxConnectionHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2891]]&&(this[_0x285e[2891]]=Math[_0x285e[425]](this[_0x285e[2893]]-_0x4fa0x3[_0x285e[730]]())<this[_0x285e[2892]]&&Math[_0x285e[425]](this[_0x285e[2894]]-_0x4fa0x3[_0x285e[732]]())<this[_0x285e[2892]]);if(!_0x4fa0x3[_0x285e[721]]()&&(this[_0x285e[2895]]||null!=this[_0x285e[2823]]||!this[_0x285e[1179]][_0x285e[1009]])){!this[_0x285e[994]]()&&null!=this[_0x285e[2915]]&&(this[_0x285e[2906]](this[_0x285e[2904]]),this[_0x285e[2915]]=null);(null!=this[_0x285e[2823]]||this[_0x285e[994]]()&&this[_0x285e[1179]][_0x285e[994]]())&&this[_0x285e[2928]](_0x4fa0x3);if(null!=this[_0x285e[2823]]){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x4= new mxPoint(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x3[_0x285e[734]]()/_0x4fa0x4)*_0x4fa0x4,this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x3[_0x285e[735]]()/_0x4fa0x4)*_0x4fa0x4),_0x4fa0x5=null,_0x4fa0x9=_0x4fa0x4;null!=this[_0x285e[2886]][_0x285e[2920]]&&(null!=this[_0x285e[2886]][_0x285e[2919]]&&null!=this[_0x285e[2886]][_0x285e[987]])&&(_0x4fa0x5=this[_0x285e[2886]][_0x285e[2920]],_0x4fa0x9=this[_0x285e[2886]][_0x285e[987]][_0x285e[238]]());var _0x4fa0xa=this[_0x285e[2823]];if(null!=this[_0x285e[2926]]){var _0x4fa0x12=this[_0x285e[2926]][_0x285e[1562]][_0x285e[117]],_0x4fa0x13=this[_0x285e[2926]][_0x285e[1562]][_0x285e[119]];null!=this[_0x285e[2915]]&&this[_0x285e[2883]]?(_0x4fa0x12=this[_0x285e[2917]](this[_0x285e[2926]],this[_0x285e[2915]]),this[_0x285e[2926]][_0x285e[1562]][_0x285e[235]]=_0x4fa0x12[_0x285e[235]],this[_0x285e[2926]][_0x285e[1562]][_0x285e[236]]=_0x4fa0x12[_0x285e[236]]):(_0x4fa0x12= new mxRectangle(_0x4fa0x3[_0x285e[734]]()+this[_0x285e[2896]][_0x285e[235]],_0x4fa0x3[_0x285e[735]]()+this[_0x285e[2896]][_0x285e[236]],_0x4fa0x12,_0x4fa0x13),this[_0x285e[2926]][_0x285e[1562]]=_0x4fa0x12);this[_0x285e[2926]][_0x285e[258]]()};if(null!=this[_0x285e[2897]]){this[_0x285e[2897]][_0x285e[439]]=[null,null!=this[_0x285e[2915]]?null:_0x4fa0x9];this[_0x285e[1179]][_0x285e[441]][_0x285e[2289]](this[_0x285e[2897]],this[_0x285e[257]],!0,this[_0x285e[2921]]);null!=this[_0x285e[2915]]&&(null==_0x4fa0x5&&(_0x4fa0x5=this[_0x285e[1179]][_0x285e[2288]](this[_0x285e[2897]],this[_0x285e[257]],!1)),this[_0x285e[2897]][_0x285e[2088]](null,!1),this[_0x285e[1179]][_0x285e[441]][_0x285e[2289]](this[_0x285e[2897]],this[_0x285e[2915]],!1,_0x4fa0x5));_0x4fa0xa=null;if(null!=this[_0x285e[2922]]){_0x4fa0xa=[];for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2922]][_0x285e[67]];_0x4fa0x9++){_0x4fa0x5=this[_0x285e[2922]][_0x4fa0x9][_0x285e[238]](),this[_0x285e[2929]](_0x4fa0x5),_0x4fa0xa[_0x4fa0x9]=_0x4fa0x5}};this[_0x285e[1179]][_0x285e[441]][_0x285e[2282]](this[_0x285e[2897]],_0x4fa0xa,this[_0x285e[257]],this[_0x285e[2915]]);this[_0x285e[1179]][_0x285e[441]][_0x285e[2283]](this[_0x285e[2897]],this[_0x285e[257]],this[_0x285e[2915]]);_0x4fa0x9=this[_0x285e[2897]][_0x285e[439]][this[_0x285e[2897]][_0x285e[439]][_0x285e[67]]-1];_0x4fa0xa=this[_0x285e[2897]][_0x285e[439]][0]}else {null!=this[_0x285e[2915]]&&null==this[_0x285e[2886]][_0x285e[2920]]&&(_0x4fa0x12=this[_0x285e[2930]](this[_0x285e[2915]],_0x4fa0x3),null!=_0x4fa0x12&&(_0x4fa0x9=_0x4fa0x12)),null==this[_0x285e[2921]]&&null!=this[_0x285e[257]]&&(_0x4fa0x12=this[_0x285e[2931]](this[_0x285e[257]],null!=this[_0x285e[2922]]&&0<this[_0x285e[2922]][_0x285e[67]]?this[_0x285e[2922]][0]:_0x4fa0x9,_0x4fa0x3),null!=_0x4fa0x12&&(_0x4fa0xa=_0x4fa0x12))};if(null==this[_0x285e[2915]]&&this[_0x285e[2900]]){_0x4fa0x12=_0x4fa0xa;null!=this[_0x285e[2897]]&&2<this[_0x285e[2897]][_0x285e[439]][_0x285e[67]]&&(_0x4fa0x5=this[_0x285e[2897]][_0x285e[439]][this[_0x285e[2897]][_0x285e[439]][_0x285e[67]]-2],null!=_0x4fa0x5&&(_0x4fa0x12=_0x4fa0x5));_0x4fa0x5=_0x4fa0x9[_0x285e[235]]-_0x4fa0x12[_0x285e[235]];_0x4fa0x12=_0x4fa0x9[_0x285e[236]]-_0x4fa0x12[_0x285e[236]];_0x4fa0x13=Math[_0x285e[428]](_0x4fa0x5*_0x4fa0x5+_0x4fa0x12*_0x4fa0x12);if(0==_0x4fa0x13){return};_0x4fa0x9[_0x285e[235]]-=4*_0x4fa0x5/_0x4fa0x13;_0x4fa0x9[_0x285e[236]]-=4*_0x4fa0x12/_0x4fa0x13};if(null==this[_0x285e[253]]&&(_0x4fa0x5=Math[_0x285e[425]](_0x4fa0x4[_0x285e[235]]-this[_0x285e[2823]][_0x285e[235]]),_0x4fa0x12=Math[_0x285e[425]](_0x4fa0x4[_0x285e[236]]-this[_0x285e[2823]][_0x285e[236]]),_0x4fa0x5>this[_0x285e[1179]][_0x285e[2353]]||_0x4fa0x12>this[_0x285e[1179]][_0x285e[2353]])){this[_0x285e[253]]=this[_0x285e[2156]](),this[_0x285e[2928]](_0x4fa0x3)};null!=this[_0x285e[253]]&&(null!=this[_0x285e[2897]]?this[_0x285e[253]][_0x285e[1525]]=this[_0x285e[2897]][_0x285e[439]]:(_0x4fa0x4=[_0x4fa0xa],null!=this[_0x285e[2922]]&&(_0x4fa0x4=_0x4fa0x4[_0x285e[1919]](this[_0x285e[2922]])),_0x4fa0x4[_0x285e[207]](_0x4fa0x9),this[_0x285e[253]][_0x285e[1525]]=_0x4fa0x4),this[_0x285e[2932]]());mxEvent[_0x285e[722]](_0x4fa0x3[_0x285e[727]]());_0x4fa0x3[_0x285e[722]]()}else {!this[_0x285e[994]]()||!this[_0x285e[1179]][_0x285e[994]]()?this[_0x285e[2886]][_0x285e[862]]():this[_0x285e[257]]!=this[_0x285e[2915]]&&null==this[_0x285e[2897]]?(this[_0x285e[2906]](this[_0x285e[2904]]),this[_0x285e[2904]]=null,null!=this[_0x285e[2915]]&&null==this[_0x285e[267]]&&(this[_0x285e[2904]]=this[_0x285e[2913]](this[_0x285e[2915]]),null==this[_0x285e[2904]]&&(this[_0x285e[2915]][_0x285e[1609]](mxConstants.CURSOR_CONNECT),_0x4fa0x3[_0x285e[722]]())),this[_0x285e[257]]=this[_0x285e[2915]]):this[_0x285e[257]]==this[_0x285e[2915]]&&(null!=this[_0x285e[2915]]&&null==this[_0x285e[2904]]&&!this[_0x285e[1179]][_0x285e[1009]])&&_0x4fa0x3[_0x285e[722]]()};null!=this[_0x285e[2886]][_0x285e[2920]]&&this[_0x285e[2885]][_0x285e[862]]();if(!this[_0x285e[1179]][_0x285e[1009]]&&null!=this[_0x285e[2915]]&&null!=this[_0x285e[2904]]){_0x4fa0x4= !1;_0x4fa0xa=_0x4fa0x3[_0x285e[728]]();for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2904]][_0x285e[67]]&& !_0x4fa0x4;_0x4fa0x9++){_0x4fa0x4=_0x4fa0xa==this[_0x285e[2904]][_0x4fa0x9][_0x285e[252]]||_0x4fa0xa[_0x285e[265]]==this[_0x285e[2904]][_0x4fa0x9][_0x285e[252]]};_0x4fa0x4||this[_0x285e[2933]](this[_0x285e[2915]],this[_0x285e[2904]],_0x4fa0x3)}}else {this[_0x285e[2886]][_0x285e[862]]()}};mxConnectionHandler[_0x285e[202]][_0x285e[2930]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null,_0x4fa0x5=_0x4fa0x2[_0x285e[441]],_0x4fa0x9=_0x4fa0x5[_0x285e[2305]](_0x4fa0x2);if(null!=_0x4fa0x9){var _0x4fa0xa=null!=this[_0x285e[2922]]&&0<this[_0x285e[2922]][_0x285e[67]]?this[_0x285e[2922]][this[_0x285e[2922]][_0x285e[67]]-1]: new mxPoint(this[_0x285e[257]][_0x285e[241]](),this[_0x285e[257]][_0x285e[242]]()),_0x4fa0x5=_0x4fa0x9(_0x4fa0x5[_0x285e[2087]](_0x4fa0x2),this[_0x285e[2897]],_0x4fa0xa,!1);null!=_0x4fa0x5&&(_0x4fa0x4=_0x4fa0x5)}else {_0x4fa0x4= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]())};return _0x4fa0x4};mxConnectionHandler[_0x285e[202]][_0x285e[2931]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x4=null;var _0x4fa0x5=_0x4fa0x2[_0x285e[441]],_0x4fa0x9=_0x4fa0x5[_0x285e[2305]](_0x4fa0x2),_0x4fa0xa= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]());if(null!=_0x4fa0x9){var _0x4fa0x12=mxUtils[_0x285e[433]](_0x4fa0x2[_0x285e[124]],mxConstants.STYLE_ROTATION,0),_0x4fa0x13=-_0x4fa0x12*(Math[_0x285e[424]]/180);0!=_0x4fa0x12&&(_0x4fa0x3=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x3[_0x285e[235]],_0x4fa0x3[_0x285e[236]]),Math[_0x285e[426]](_0x4fa0x13),Math[_0x285e[427]](_0x4fa0x13),_0x4fa0xa));_0x4fa0x2=_0x4fa0x9(_0x4fa0x5[_0x285e[2087]](_0x4fa0x2),_0x4fa0x2,_0x4fa0x3,!1);null!=_0x4fa0x2&&(0!=_0x4fa0x12&&(_0x4fa0x2=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]),Math[_0x285e[426]](-_0x4fa0x13),Math[_0x285e[427]](-_0x4fa0x13),_0x4fa0xa)),_0x4fa0x4=_0x4fa0x2)}else {_0x4fa0x4=_0x4fa0xa};return _0x4fa0x4};mxConnectionHandler[_0x285e[202]][_0x285e[2933]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){};mxConnectionHandler[_0x285e[202]][_0x285e[2934]]=function(_0x4fa0x2){return null!=_0x4fa0x2[_0x285e[248]]()};mxConnectionHandler[_0x285e[202]][_0x285e[2935]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],_0x4fa0x2[_0x285e[730]](),_0x4fa0x2[_0x285e[732]]()),_0x4fa0x4=Math[_0x285e[425]](_0x4fa0x3[_0x285e[235]]-this[_0x285e[2823]][_0x285e[235]]),_0x4fa0x3=Math[_0x285e[425]](_0x4fa0x3[_0x285e[236]]-this[_0x285e[2823]][_0x285e[236]]);if(null!=this[_0x285e[2922]]||1<this[_0x285e[2899]]&&(_0x4fa0x4>this[_0x285e[1179]][_0x285e[2353]]||_0x4fa0x3>this[_0x285e[1179]][_0x285e[2353]])){null==this[_0x285e[2922]]&&(this[_0x285e[2922]]=[]),_0x4fa0x4=this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x3= new mxPoint(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[734]]()/_0x4fa0x4)*_0x4fa0x4,this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[735]]()/_0x4fa0x4)*_0x4fa0x4),this[_0x285e[2922]][_0x285e[207]](_0x4fa0x3)}};mxConnectionHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[2908]]()){if(this[_0x285e[2887]]&&!this[_0x285e[2934]](_0x4fa0x3)){this[_0x285e[2935]](_0x4fa0x3);_0x4fa0x3[_0x285e[722]]();return};if(null==this[_0x285e[267]]){var _0x4fa0x4=null!=this[_0x285e[257]]?this[_0x285e[257]][_0x285e[246]]:null,_0x4fa0x5=null;null!=this[_0x285e[2886]][_0x285e[2920]]&&null!=this[_0x285e[2886]][_0x285e[2919]]&&(_0x4fa0x5=this[_0x285e[2886]][_0x285e[2919]][_0x285e[246]]);null==_0x4fa0x5&&this[_0x285e[2885]][_0x285e[2867]]()&&(_0x4fa0x5=this[_0x285e[2885]][_0x285e[2861]][_0x285e[246]]);this[_0x285e[807]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x3[_0x285e[727]](),_0x4fa0x3[_0x285e[736]]())}else {null!=this[_0x285e[257]]&&(null!=this[_0x285e[2885]][_0x285e[2861]]&&this[_0x285e[257]][_0x285e[246]]==this[_0x285e[2885]][_0x285e[2861]][_0x285e[246]])&&this[_0x285e[1179]][_0x285e[2459]](this[_0x285e[2885]][_0x285e[1097]],evt),0<this[_0x285e[267]][_0x285e[67]]&&this[_0x285e[1179]][_0x285e[2580]](this[_0x285e[267]])};this[_0x285e[2906]](this[_0x285e[2904]]);_0x4fa0x3[_0x285e[722]]()};null!=this[_0x285e[2823]]&&this[_0x285e[862]]();this[_0x285e[2891]]=this[_0x285e[2890]]= !1};mxConnectionHandler[_0x285e[202]][_0x285e[862]]=function(){null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null);this[_0x285e[2906]](this[_0x285e[2904]]);this[_0x285e[2904]]=null;this[_0x285e[2885]][_0x285e[862]]();this[_0x285e[2886]][_0x285e[862]]();this[_0x285e[2921]]=this[_0x285e[267]]=this[_0x285e[257]]=this[_0x285e[2897]]=this[_0x285e[2926]]=null;this[_0x285e[2899]]=0;this[_0x285e[2916]]=this[_0x285e[2823]]=null;this[_0x285e[746]]( new mxEventObject(mxEvent.RESET))};mxConnectionHandler[_0x285e[202]][_0x285e[2932]]=function(){var _0x4fa0x2=null==this[_0x285e[267]];this[_0x285e[253]][_0x285e[1307]]=this[_0x285e[2936]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[2937]](_0x4fa0x2);this[_0x285e[253]][_0x285e[1336]]=_0x4fa0x2;this[_0x285e[253]][_0x285e[258]]()};mxConnectionHandler[_0x285e[202]][_0x285e[2937]]=function(_0x4fa0x2){return _0x4fa0x2?mxConstants[_0x285e[2829]]:mxConstants[_0x285e[2938]]};mxConnectionHandler[_0x285e[202]][_0x285e[2936]]=function(_0x4fa0x2){return _0x4fa0x2?3:1};mxConnectionHandler[_0x285e[202]][_0x285e[807]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x3||this[_0x285e[2901]]()||this[_0x285e[1179]][_0x285e[2406]]){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0xa=null;_0x4fa0x9[_0x285e[473]]();try{if(null!=_0x4fa0x2&&(null==_0x4fa0x3&&this[_0x285e[2901]]())&&(_0x4fa0x3=this[_0x285e[2939]](_0x4fa0x4,_0x4fa0x2),null!=_0x4fa0x3)){_0x4fa0x5=this[_0x285e[1179]][_0x285e[564]]([_0x4fa0x3],_0x4fa0x4,_0x4fa0x5);if(null==_0x4fa0x5||!this[_0x285e[1179]][_0x285e[502]]()[_0x285e[250]](_0x4fa0x5)){var _0x4fa0x12=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x5);if(null!=_0x4fa0x12){var _0x4fa0x13=_0x4fa0x9[_0x285e[1721]](_0x4fa0x3);_0x4fa0x13[_0x285e[235]]-=_0x4fa0x12[_0x285e[2078]][_0x285e[235]];_0x4fa0x13[_0x285e[236]]-=_0x4fa0x12[_0x285e[2078]][_0x285e[236]]}}else {_0x4fa0x5=this[_0x285e[1179]][_0x285e[902]]()};this[_0x285e[1179]][_0x285e[2103]](_0x4fa0x3,_0x4fa0x5)};var _0x4fa0x14=this[_0x285e[1179]][_0x285e[902]]();null!=_0x4fa0x2&&(null!=_0x4fa0x3&&_0x4fa0x9[_0x285e[1197]](_0x4fa0x2)==_0x4fa0x9[_0x285e[1197]](_0x4fa0x3)&&_0x4fa0x9[_0x285e[1197]](_0x4fa0x9[_0x285e[1197]](_0x4fa0x2))!=_0x4fa0x9[_0x285e[501]]())&&(_0x4fa0x14=_0x4fa0x9[_0x285e[1197]](_0x4fa0x2),null!=_0x4fa0x2[_0x285e[256]]&&_0x4fa0x2[_0x285e[256]][_0x285e[1500]]&&(null!=_0x4fa0x3[_0x285e[256]]&&_0x4fa0x3[_0x285e[256]][_0x285e[1500]])&&(_0x4fa0x14=_0x4fa0x9[_0x285e[1197]](_0x4fa0x14)));_0x4fa0x13=_0x4fa0x12=null;null!=this[_0x285e[2897]]&&(_0x4fa0x12=this[_0x285e[2897]][_0x285e[246]][_0x285e[131]],_0x4fa0x13=this[_0x285e[2897]][_0x285e[246]][_0x285e[124]]);_0x4fa0xa=this[_0x285e[1960]](_0x4fa0x14,null,_0x4fa0x12,_0x4fa0x2,_0x4fa0x3,_0x4fa0x13);if(null!=_0x4fa0xa){this[_0x285e[1179]][_0x285e[2545]](_0x4fa0xa,_0x4fa0x2,!0,this[_0x285e[2921]]);this[_0x285e[1179]][_0x285e[2545]](_0x4fa0xa,_0x4fa0x3,!1,this[_0x285e[2886]][_0x285e[2920]]);null!=this[_0x285e[2897]]&&_0x4fa0x9[_0x285e[1724]](_0x4fa0xa,this[_0x285e[2897]][_0x285e[246]][_0x285e[256]]);var _0x4fa0x15=_0x4fa0x9[_0x285e[1721]](_0x4fa0xa);null==_0x4fa0x15&&(_0x4fa0x15= new mxGeometry,_0x4fa0x15[_0x285e[1500]]= !0,_0x4fa0x9[_0x285e[1724]](_0x4fa0xa,_0x4fa0x15));if(null!=this[_0x285e[2922]]&&0<this[_0x285e[2922]][_0x285e[67]]){var _0x4fa0x16=this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x17=this[_0x285e[1179]][_0x285e[441]][_0x285e[513]];_0x4fa0x15[_0x285e[1525]]=[];for(_0x4fa0x2=0;_0x4fa0x2<this[_0x285e[2922]][_0x285e[67]];_0x4fa0x2++){var _0x4fa0x18=this[_0x285e[2922]][_0x4fa0x2];_0x4fa0x15[_0x285e[1525]][_0x285e[207]]( new mxPoint(_0x4fa0x18[_0x285e[235]]/_0x4fa0x16-_0x4fa0x17[_0x285e[235]],_0x4fa0x18[_0x285e[236]]/_0x4fa0x16-_0x4fa0x17[_0x285e[236]]))}};null==_0x4fa0x3&&(_0x4fa0x18=this[_0x285e[1179]][_0x285e[2689]](_0x4fa0x4,!1),_0x4fa0x18[_0x285e[235]]-=this[_0x285e[1179]][_0x285e[1136]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x18[_0x285e[236]]-=this[_0x285e[1179]][_0x285e[1137]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x15[_0x285e[2007]](_0x4fa0x18,!1));this[_0x285e[746]]( new mxEventObject(mxEvent.CONNECT,_0x285e[246],_0x4fa0xa,_0x285e[763],_0x4fa0x4,_0x285e[772],_0x4fa0x5))}}catch(q){mxLog[_0x285e[539]](),mxLog[_0x285e[143]](q[_0x285e[281]])}finally{_0x4fa0x9[_0x285e[476]]()};this[_0x285e[804]]&&this[_0x285e[2707]](_0x4fa0xa,_0x4fa0x3)}};mxConnectionHandler[_0x285e[202]][_0x285e[2707]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1179]][_0x285e[2450]](_0x4fa0x2)};mxConnectionHandler[_0x285e[202]][_0x285e[1960]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){if(null==this[_0x285e[1033]]){return this[_0x285e[1179]][_0x285e[1960]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa)};_0x4fa0x3=this[_0x285e[2503]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);return _0x4fa0x3=this[_0x285e[1179]][_0x285e[2504]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x5,_0x4fa0x9)};mxConnectionHandler[_0x285e[202]][_0x285e[2939]]=function(_0x4fa0x2,_0x4fa0x3){for(var _0x4fa0x4=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x3);null!=_0x4fa0x4&&_0x4fa0x4[_0x285e[1500]];){_0x4fa0x3=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](_0x4fa0x3),_0x4fa0x4=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x3)};var _0x4fa0x5=this[_0x285e[1179]][_0x285e[899]]([_0x4fa0x3])[0],_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1721]](_0x4fa0x5);if(null!=_0x4fa0x4){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[2689]](_0x4fa0x2);_0x4fa0x4[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x9[_0x285e[235]]-_0x4fa0x4[_0x285e[117]]/2)-this[_0x285e[1179]][_0x285e[1136]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];_0x4fa0x4[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x9[_0x285e[236]]-_0x4fa0x4[_0x285e[119]]/2)-this[_0x285e[1179]][_0x285e[1137]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];if(null!=this[_0x285e[2823]]){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x3);if(null!=_0x4fa0xa){var _0x4fa0x12=this[_0x285e[2940]]();Math[_0x285e[425]](this[_0x285e[1179]][_0x285e[1021]](this[_0x285e[2823]][_0x285e[235]])-this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x9[_0x285e[235]]))<=_0x4fa0x12?_0x4fa0x4[_0x285e[235]]=_0x4fa0xa[_0x285e[235]]:Math[_0x285e[425]](this[_0x285e[1179]][_0x285e[1021]](this[_0x285e[2823]][_0x285e[236]])-this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x9[_0x285e[236]]))<=_0x4fa0x12&&(_0x4fa0x4[_0x285e[236]]=_0x4fa0xa[_0x285e[236]])}}};return _0x4fa0x5};mxConnectionHandler[_0x285e[202]][_0x285e[2940]]=function(){return this[_0x285e[1179]][_0x285e[997]]()?this[_0x285e[1179]][_0x285e[1020]]:this[_0x285e[1179]][_0x285e[2353]]};mxConnectionHandler[_0x285e[202]][_0x285e[2503]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;null!=this[_0x285e[1033]]&&(_0x4fa0x9=this[_0x285e[1033]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5));null==_0x4fa0x9&&(_0x4fa0x9= new mxCell(_0x4fa0x2||_0x285e[110]),_0x4fa0x9[_0x285e[1994]](!0),_0x4fa0x9[_0x285e[475]](_0x4fa0x5),_0x4fa0x2= new mxGeometry,_0x4fa0x2[_0x285e[1500]]= !0,_0x4fa0x9[_0x285e[1724]](_0x4fa0x2));return _0x4fa0x9};mxConnectionHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[1148]](this);null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null);null!=this[_0x285e[2885]]&&(this[_0x285e[2885]][_0x285e[515]](),this[_0x285e[2885]]=null);null!=this[_0x285e[2886]]&&(this[_0x285e[2886]][_0x285e[515]](),this[_0x285e[2886]]=null);null!=this[_0x285e[1176]]&&(this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[1176]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[1176]]),this[_0x285e[1176]]=null);null!=this[_0x285e[2898]]&&(this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2898]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[2898]]),this[_0x285e[2898]]=null)};function mxConstraintHandler(_0x4fa0x2){this[_0x285e[1179]]=_0x4fa0x2}mxConstraintHandler[_0x285e[202]][_0x285e[2941]]= new mxImage(mxClient[_0x285e[88]]+_0x285e[2942],5,5);mxConstraintHandler[_0x285e[202]][_0x285e[1179]]=null;mxConstraintHandler[_0x285e[202]][_0x285e[984]]= !0;mxConstraintHandler[_0x285e[202]][_0x285e[2943]]=mxConstants[_0x285e[2854]];mxConstraintHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxConstraintHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxConstraintHandler[_0x285e[202]][_0x285e[862]]=function(){if(null!=this[_0x285e[2944]]){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[2944]][_0x285e[67]];_0x4fa0x2++){this[_0x285e[2944]][_0x4fa0x2][_0x285e[515]]()};this[_0x285e[2944]]=null};null!=this[_0x285e[2945]]&&(this[_0x285e[2945]][_0x285e[515]](),this[_0x285e[2945]]=null);this[_0x285e[2946]]=this[_0x285e[2919]]=this[_0x285e[987]]=this[_0x285e[2947]]=this[_0x285e[2920]]=null};mxConstraintHandler[_0x285e[202]][_0x285e[2636]]=function(){return this[_0x285e[1179]][_0x285e[2636]]()};mxConstraintHandler[_0x285e[202]][_0x285e[2948]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return this[_0x285e[2941]]};mxConstraintHandler[_0x285e[202]][_0x285e[2949]]=function(_0x4fa0x2,_0x4fa0x3){return !1};mxConstraintHandler[_0x285e[202]][_0x285e[2729]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[994]]()&&!this[_0x285e[2949]](_0x4fa0x2)){var _0x4fa0x4=this[_0x285e[2636]](),_0x4fa0x5= new mxRectangle(_0x4fa0x2[_0x285e[734]]()-_0x4fa0x4,_0x4fa0x2[_0x285e[735]]()-_0x4fa0x4,2*_0x4fa0x4,2*_0x4fa0x4),_0x4fa0x9=null!=_0x4fa0x2[_0x285e[736]]()?this[_0x285e[1179]][_0x285e[2565]](_0x4fa0x2[_0x285e[736]]()):!1;if(null==this[_0x285e[2947]]||!mxUtils[_0x285e[1825]](this[_0x285e[2947]],_0x4fa0x5)||null!=_0x4fa0x2[_0x285e[248]]()&&null!=this[_0x285e[2919]]&&_0x4fa0x9){if(this[_0x285e[2947]]=null,_0x4fa0x2[_0x285e[248]]()!=this[_0x285e[2919]]){if(this[_0x285e[2919]]=null,this[_0x285e[1531]]=null!=_0x4fa0x2[_0x285e[248]]()&&_0x4fa0x9?this[_0x285e[1179]][_0x285e[2538]](_0x4fa0x2[_0x285e[248]](),_0x4fa0x3):null,null!=this[_0x285e[1531]]){this[_0x285e[2919]]=_0x4fa0x2[_0x285e[248]]();this[_0x285e[2947]]= new mxRectangle(_0x4fa0x2[_0x285e[248]]()[_0x285e[235]],_0x4fa0x2[_0x285e[248]]()[_0x285e[236]],_0x4fa0x2[_0x285e[248]]()[_0x285e[117]],_0x4fa0x2[_0x285e[248]]()[_0x285e[119]]);if(null!=this[_0x285e[2944]]){for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2944]][_0x285e[67]];_0x4fa0x9++){this[_0x285e[2944]][_0x4fa0x9][_0x285e[515]]()};this[_0x285e[2946]]=this[_0x285e[2944]]=null};this[_0x285e[2944]]=[];this[_0x285e[2946]]=[];for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[1531]][_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[2290]](_0x4fa0x2[_0x285e[248]](),this[_0x285e[1531]][_0x4fa0x9]),_0x4fa0x12=this[_0x285e[2948]](_0x4fa0x2[_0x285e[248]](),this[_0x285e[1531]][_0x4fa0x9],_0x4fa0xa),_0x4fa0x13=_0x4fa0x12[_0x285e[390]],_0x4fa0x12= new mxRectangle(_0x4fa0xa[_0x285e[235]]-_0x4fa0x12[_0x285e[117]]/2,_0x4fa0xa[_0x285e[236]]-_0x4fa0x12[_0x285e[119]]/2,_0x4fa0x12[_0x285e[117]],_0x4fa0x12[_0x285e[119]]),_0x4fa0x12= new mxImageShape(_0x4fa0x12,_0x4fa0x13);_0x4fa0x12[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[2334]]:mxConstants[_0x285e[508]];_0x4fa0x12[_0x285e[1674]]= !1;_0x4fa0x12[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]());null!=_0x4fa0x12[_0x285e[252]][_0x285e[328]]&&_0x4fa0x12[_0x285e[252]][_0x285e[265]][_0x285e[950]](_0x4fa0x12[_0x285e[252]],_0x4fa0x12[_0x285e[252]][_0x285e[265]][_0x285e[285]]);_0x4fa0x13=mxUtils[_0x285e[885]](this,function(){return null!=this[_0x285e[2919]]?this[_0x285e[2919]]:_0x4fa0x2[_0x285e[248]]()});_0x4fa0x12[_0x285e[258]]();mxEvent[_0x285e[2733]](_0x4fa0x12[_0x285e[252]],this[_0x285e[1179]],_0x4fa0x13);this[_0x285e[2947]][_0x285e[99]](_0x4fa0x12[_0x285e[1562]]);this[_0x285e[2944]][_0x285e[207]](_0x4fa0x12);this[_0x285e[2946]][_0x285e[207]](_0x4fa0xa)};this[_0x285e[2947]][_0x285e[244]](_0x4fa0x4)}else {if(null!=this[_0x285e[2944]]){null!=this[_0x285e[2945]]&&(this[_0x285e[2945]][_0x285e[515]](),this[_0x285e[2945]]=null);for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2944]][_0x285e[67]];_0x4fa0x9++){this[_0x285e[2944]][_0x4fa0x9][_0x285e[515]]()};this[_0x285e[2946]]=this[_0x285e[2944]]=null}}}};this[_0x285e[987]]=this[_0x285e[2920]]=null;if(null!=this[_0x285e[2944]]&&null!=this[_0x285e[1531]]&&(null==_0x4fa0x2[_0x285e[248]]()||this[_0x285e[2919]]==_0x4fa0x2[_0x285e[248]]())){for(_0x4fa0x9=0;_0x4fa0x9<this[_0x285e[2944]][_0x285e[67]];_0x4fa0x9++){if(mxUtils[_0x285e[1825]](this[_0x285e[2944]][_0x4fa0x9][_0x285e[1562]],_0x4fa0x5)){this[_0x285e[2920]]=this[_0x285e[1531]][_0x4fa0x9];this[_0x285e[987]]=this[_0x285e[2946]][_0x4fa0x9];_0x4fa0x4=this[_0x285e[2944]][_0x4fa0x9][_0x285e[1562]][_0x285e[238]]();_0x4fa0x4[_0x285e[244]](mxClient[_0x285e[80]]?3:2);mxClient[_0x285e[80]]&&(_0x4fa0x4[_0x285e[117]]-=1,_0x4fa0x4[_0x285e[119]]-=1);null==this[_0x285e[2945]]?(_0x4fa0x4= new mxRectangleShape(_0x4fa0x4,null,this[_0x285e[2943]],3),_0x4fa0x4[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]==mxConstants[_0x285e[508]]?mxConstants[_0x285e[508]]:mxConstants[_0x285e[1523]],_0x4fa0x4[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()),this[_0x285e[2945]]=_0x4fa0x4,_0x4fa0x13=mxUtils[_0x285e[885]](this,function(){return null!=this[_0x285e[2919]]?this[_0x285e[2919]]:_0x4fa0x2[_0x285e[248]]()}),mxEvent[_0x285e[2733]](_0x4fa0x4[_0x285e[252]],this[_0x285e[1179]],_0x4fa0x13)):(this[_0x285e[2945]][_0x285e[1562]]=_0x4fa0x4,this[_0x285e[2945]][_0x285e[258]]());break}}};null==this[_0x285e[2920]]&&null!=this[_0x285e[2945]]&&(this[_0x285e[2945]][_0x285e[515]](),this[_0x285e[2945]]=null)}};mxConstraintHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[862]]()};function mxRubberband(_0x4fa0x2){null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[1179]][_0x285e[1133]](this),this[_0x285e[2730]]=mxUtils[_0x285e[885]](this,function(){this[_0x285e[2950]]()}),this[_0x285e[1179]][_0x285e[169]](mxEvent.PAN,this[_0x285e[2730]]),mxClient[_0x285e[80]]&&mxEvent[_0x285e[169]](window,_0x285e[2428],mxUtils[_0x285e[885]](this,function(){this[_0x285e[515]]()})))}mxRubberband[_0x285e[202]][_0x285e[2951]]=20;mxRubberband[_0x285e[202]][_0x285e[984]]= !0;mxRubberband[_0x285e[202]][_0x285e[485]]=null;mxRubberband[_0x285e[202]][_0x285e[2952]]=null;mxRubberband[_0x285e[202]][_0x285e[2953]]=0;mxRubberband[_0x285e[202]][_0x285e[2954]]=0;mxRubberband[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxRubberband[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxRubberband[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[994]]()&&this[_0x285e[1179]][_0x285e[994]]()&&(this[_0x285e[1179]][_0x285e[2579]](_0x4fa0x3[_0x285e[727]]())||null==_0x4fa0x3[_0x285e[248]]())){var _0x4fa0x4=mxUtils[_0x285e[445]](this[_0x285e[1179]][_0x285e[526]]),_0x4fa0x5=mxUtils[_0x285e[444]](this[_0x285e[1179]][_0x285e[526]]);_0x4fa0x5[_0x285e[235]]-=_0x4fa0x4[_0x285e[235]];_0x4fa0x5[_0x285e[236]]-=_0x4fa0x4[_0x285e[236]];this[_0x285e[861]](_0x4fa0x3[_0x285e[730]]()+_0x4fa0x5[_0x285e[235]],_0x4fa0x3[_0x285e[732]]()+_0x4fa0x5[_0x285e[236]]);if(mxClient[_0x285e[133]]&&!mxClient[_0x285e[75]]&&!mxClient[_0x285e[76]]){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[526]],_0x4fa0xa=function(_0x4fa0x2){_0x4fa0x2= new mxMouseEvent(_0x4fa0x2);var _0x4fa0x3=mxUtils[_0x285e[2196]](_0x4fa0x9,_0x4fa0x2[_0x285e[730]](),_0x4fa0x2[_0x285e[732]]());_0x4fa0x2[_0x285e[725]]=_0x4fa0x3[_0x285e[235]];_0x4fa0x2[_0x285e[726]]=_0x4fa0x3[_0x285e[236]];return _0x4fa0x2};this[_0x285e[2955]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[788]](this[_0x285e[1179]],_0x4fa0xa(_0x4fa0x2))});this[_0x285e[981]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[789]](this[_0x285e[1179]],_0x4fa0xa(_0x4fa0x2))});mxEvent[_0x285e[169]](document,_0x285e[752],this[_0x285e[2955]]);mxEvent[_0x285e[169]](document,_0x285e[753],this[_0x285e[981]])};_0x4fa0x3[_0x285e[722]](!1)}};mxRubberband[_0x285e[202]][_0x285e[861]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2823]]= new mxPoint(_0x4fa0x2,_0x4fa0x3)};mxRubberband[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&null!=this[_0x285e[2823]]){var _0x4fa0x4=mxUtils[_0x285e[444]](this[_0x285e[1179]][_0x285e[526]]),_0x4fa0x5=mxUtils[_0x285e[445]](this[_0x285e[1179]][_0x285e[526]]);_0x4fa0x4[_0x285e[235]]-=_0x4fa0x5[_0x285e[235]];_0x4fa0x4[_0x285e[236]]-=_0x4fa0x5[_0x285e[236]];var _0x4fa0x5=_0x4fa0x3[_0x285e[730]]()+_0x4fa0x4[_0x285e[235]],_0x4fa0x4=_0x4fa0x3[_0x285e[732]]()+_0x4fa0x4[_0x285e[236]],_0x4fa0x9=this[_0x285e[2823]][_0x285e[235]]-_0x4fa0x5,_0x4fa0xa=this[_0x285e[2823]][_0x285e[236]]-_0x4fa0x4,_0x4fa0x12=this[_0x285e[1179]][_0x285e[2353]];if(null!=this[_0x285e[485]]||Math[_0x285e[425]](_0x4fa0x9)>_0x4fa0x12||Math[_0x285e[425]](_0x4fa0xa)>_0x4fa0x12){null==this[_0x285e[485]]&&(this[_0x285e[485]]=this[_0x285e[2156]]()),mxUtils[_0x285e[2440]](),this[_0x285e[2729]](_0x4fa0x5,_0x4fa0x4),_0x4fa0x3[_0x285e[722]]()}}};mxRubberband[_0x285e[202]][_0x285e[2156]]=function(){null==this[_0x285e[2952]]&&(this[_0x285e[2952]]=document[_0x285e[55]](_0x285e[485]),this[_0x285e[2952]][_0x285e[926]]=_0x285e[2956],mxUtils[_0x285e[254]](this[_0x285e[2952]],this[_0x285e[2951]]));this[_0x285e[1179]][_0x285e[526]][_0x285e[62]](this[_0x285e[2952]]);return this[_0x285e[2952]]};mxRubberband[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null!=this[_0x285e[485]];this[_0x285e[862]]();_0x4fa0x4&&(_0x4fa0x4= new mxRectangle(this[_0x285e[235]],this[_0x285e[236]],this[_0x285e[117]],this[_0x285e[119]]),this[_0x285e[1179]][_0x285e[2698]](_0x4fa0x4,_0x4fa0x3[_0x285e[727]]()),_0x4fa0x3[_0x285e[722]]())};mxRubberband[_0x285e[202]][_0x285e[862]]=function(){null!=this[_0x285e[485]]&&this[_0x285e[485]][_0x285e[265]][_0x285e[266]](this[_0x285e[485]]);null!=this[_0x285e[2955]]&&(mxEvent[_0x285e[745]](document,_0x285e[752],this[_0x285e[2955]]),this[_0x285e[2955]]=null);null!=this[_0x285e[981]]&&(mxEvent[_0x285e[745]](document,_0x285e[753],this[_0x285e[981]]),this[_0x285e[981]]=null);this[_0x285e[2954]]=this[_0x285e[2953]]=0;this[_0x285e[485]]=this[_0x285e[2823]]=null};mxRubberband[_0x285e[202]][_0x285e[2729]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[2953]]=_0x4fa0x2;this[_0x285e[2954]]=_0x4fa0x3;this[_0x285e[2950]]()};mxRubberband[_0x285e[202]][_0x285e[2950]]=function(){if(null!=this[_0x285e[485]]){var _0x4fa0x2=this[_0x285e[2953]]-this[_0x285e[1179]][_0x285e[1136]],_0x4fa0x3=this[_0x285e[2954]]-this[_0x285e[1179]][_0x285e[1137]];this[_0x285e[235]]=Math[_0x285e[243]](this[_0x285e[2823]][_0x285e[235]],_0x4fa0x2);this[_0x285e[236]]=Math[_0x285e[243]](this[_0x285e[2823]][_0x285e[236]],_0x4fa0x3);this[_0x285e[117]]=Math[_0x285e[160]](this[_0x285e[2823]][_0x285e[235]],_0x4fa0x2)-this[_0x285e[235]];this[_0x285e[119]]=Math[_0x285e[160]](this[_0x285e[2823]][_0x285e[236]],_0x4fa0x3)-this[_0x285e[236]];_0x4fa0x2=mxClient[_0x285e[47]]?this[_0x285e[1179]][_0x285e[1137]]:0;this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=this[_0x285e[235]]+(mxClient[_0x285e[47]]?this[_0x285e[1179]][_0x285e[1136]]:0)+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=this[_0x285e[236]]+_0x4fa0x2+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[117]]=Math[_0x285e[160]](1,this[_0x285e[117]])+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[119]]=Math[_0x285e[160]](1,this[_0x285e[119]])+_0x285e[168]}};mxRubberband[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[2717]]||(this[_0x285e[2717]]= !0,this[_0x285e[1179]][_0x285e[1148]](this),this[_0x285e[1179]][_0x285e[745]](this[_0x285e[2730]]),this[_0x285e[862]](),null!=this[_0x285e[2952]]&&(this[_0x285e[2952]]=null))};function mxVertexHandler(_0x4fa0x2){null!=_0x4fa0x2&&(this[_0x285e[724]]=_0x4fa0x2,this[_0x285e[176]]())}mxVertexHandler[_0x285e[202]][_0x285e[1179]]=null;mxVertexHandler[_0x285e[202]][_0x285e[724]]=null;mxVertexHandler[_0x285e[202]][_0x285e[2957]]= !1;mxVertexHandler[_0x285e[202]][_0x285e[1983]]=null;mxVertexHandler[_0x285e[202]][_0x285e[2958]]= !0;mxVertexHandler[_0x285e[202]][_0x285e[2959]]=null;mxVertexHandler[_0x285e[202]][_0x285e[2353]]=0;mxVertexHandler[_0x285e[202]][_0x285e[2809]]= !1;mxVertexHandler[_0x285e[202]][_0x285e[2960]]= !0;mxVertexHandler[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[1179]]=this[_0x285e[724]][_0x285e[441]][_0x285e[1179]];this[_0x285e[2961]]=this[_0x285e[2962]](this[_0x285e[724]]);this[_0x285e[1562]]= new mxRectangle(this[_0x285e[2961]][_0x285e[235]],this[_0x285e[2961]][_0x285e[236]],this[_0x285e[2961]][_0x285e[117]],this[_0x285e[2961]][_0x285e[119]]);this[_0x285e[2732]]=this[_0x285e[2963]](this[_0x285e[1562]]);this[_0x285e[2732]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]];this[_0x285e[2732]][_0x285e[1229]]= !1;this[_0x285e[2732]][_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]());this[_0x285e[1179]][_0x285e[1712]](this[_0x285e[724]][_0x285e[246]])&&(this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[2832]]);mxEvent[_0x285e[2733]](this[_0x285e[2732]][_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);if(0>=mxGraphHandler[_0x285e[202]][_0x285e[2795]]||this[_0x285e[1179]][_0x285e[2694]]()<mxGraphHandler[_0x285e[202]][_0x285e[2795]]){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[2657]](this[_0x285e[724]][_0x285e[246]]);this[_0x285e[2964]]=[];if(_0x4fa0x2||this[_0x285e[1179]][_0x285e[2628]](this[_0x285e[724]][_0x285e[246]])&&2<=this[_0x285e[724]][_0x285e[117]]&&2<=this[_0x285e[724]][_0x285e[119]]){var _0x4fa0x3=0;_0x4fa0x2&&(this[_0x285e[2957]]||(this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[936],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2965],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2966],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2967],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2968],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2969],_0x4fa0x3++)),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2970],_0x4fa0x3++))),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2735]](_0x285e[2971],_0x4fa0x3++)));_0x4fa0x2=this[_0x285e[1179]][_0x285e[251]][_0x285e[1721]](this[_0x285e[724]][_0x285e[246]]);null!=_0x4fa0x2&&(!_0x4fa0x2[_0x285e[1500]]&&!this[_0x285e[1179]][_0x285e[1730]](this[_0x285e[724]][_0x285e[246]])&&this[_0x285e[1179]][_0x285e[2628]](this[_0x285e[724]][_0x285e[246]]))&&(this[_0x285e[2972]]=this[_0x285e[2735]](mxConstants.CURSOR_LABEL_HANDLE,mxEvent.LABEL_HANDLE,mxConstants.LABEL_HANDLE_SIZE,mxConstants.LABEL_HANDLE_FILLCOLOR),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2972]]))}else {this[_0x285e[1179]][_0x285e[1712]](this[_0x285e[724]][_0x285e[246]])&&(!this[_0x285e[1179]][_0x285e[2657]](this[_0x285e[724]][_0x285e[246]])&&2>this[_0x285e[724]][_0x285e[117]]&&2>this[_0x285e[724]][_0x285e[119]])&&(this[_0x285e[2972]]=this[_0x285e[2735]](mxConstants.CURSOR_MOVABLE_VERTEX,null,null,mxConstants.LABEL_HANDLE_FILLCOLOR),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2972]]))}};if(this[_0x285e[2809]]&&(0>=mxGraphHandler[_0x285e[202]][_0x285e[2795]]||this[_0x285e[1179]][_0x285e[2694]]()<mxGraphHandler[_0x285e[202]][_0x285e[2795]])){this[_0x285e[2973]]=this[_0x285e[2735]](_0x285e[356],mxEvent.ROTATION_HANDLE,mxConstants[_0x285e[2974]]+3,mxConstants.HANDLE_FILLCOLOR),this[_0x285e[2964]][_0x285e[207]](this[_0x285e[2973]])};this[_0x285e[258]]()};mxVertexHandler[_0x285e[202]][_0x285e[2962]]=function(_0x4fa0x2){return new mxRectangle(Math[_0x285e[488]](_0x4fa0x2[_0x285e[235]]),Math[_0x285e[488]](_0x4fa0x2[_0x285e[236]]),Math[_0x285e[488]](_0x4fa0x2[_0x285e[117]]),Math[_0x285e[488]](_0x4fa0x2[_0x285e[119]]))};mxVertexHandler[_0x285e[202]][_0x285e[2963]]=function(_0x4fa0x2){_0x4fa0x2= new mxRectangleShape(_0x4fa0x2,null,this[_0x285e[2975]]());_0x4fa0x2[_0x285e[1307]]=this[_0x285e[2976]]();_0x4fa0x2[_0x285e[1522]]=this[_0x285e[2977]]();return _0x4fa0x2};mxVertexHandler[_0x285e[202]][_0x285e[2975]]=function(){return mxConstants[_0x285e[2978]]};mxVertexHandler[_0x285e[202]][_0x285e[2976]]=function(){return mxConstants[_0x285e[2979]]};mxVertexHandler[_0x285e[202]][_0x285e[2977]]=function(){return mxConstants[_0x285e[2980]]};mxVertexHandler[_0x285e[202]][_0x285e[2735]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){_0x4fa0x4=_0x4fa0x4||mxConstants[_0x285e[2974]];_0x4fa0x4= new mxRectangle(0,0,_0x4fa0x4,_0x4fa0x4);_0x4fa0x5=this[_0x285e[2981]](_0x4fa0x4,_0x4fa0x3,_0x4fa0x5);_0x4fa0x5[_0x285e[1567]]()&&null!=this[_0x285e[724]][_0x285e[963]]&&this[_0x285e[724]][_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]?(_0x4fa0x5[_0x285e[1562]][_0x285e[119]]-=1,_0x4fa0x5[_0x285e[1562]][_0x285e[117]]-=1,_0x4fa0x5[_0x285e[507]]=mxConstants[_0x285e[1656]],_0x4fa0x5[_0x285e[176]](this[_0x285e[1179]][_0x285e[526]])):(_0x4fa0x5[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[2334]]:mxConstants[_0x285e[508]],_0x4fa0x5[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()));mxEvent[_0x285e[2733]](_0x4fa0x5[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);this[_0x285e[1179]][_0x285e[994]]()&&(_0x4fa0x5[_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x4fa0x2);this[_0x285e[2982]](_0x4fa0x3)||(_0x4fa0x5[_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188]);return _0x4fa0x5};mxVertexHandler[_0x285e[202]][_0x285e[2982]]=function(_0x4fa0x2){return !0};mxVertexHandler[_0x285e[202]][_0x285e[2981]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return null!=this[_0x285e[2959]]?(_0x4fa0x2[_0x285e[117]]=this[_0x285e[2959]][_0x285e[117]],_0x4fa0x2[_0x285e[119]]=this[_0x285e[2959]][_0x285e[119]], new mxImageShape(_0x4fa0x2,this[_0x285e[2959]][_0x285e[390]])):_0x4fa0x3==mxEvent[_0x285e[2983]]? new mxEllipse(_0x4fa0x2,_0x4fa0x4||mxConstants[_0x285e[2984]],mxConstants.HANDLE_STROKECOLOR): new mxRectangleShape(_0x4fa0x2,_0x4fa0x4||mxConstants[_0x285e[2984]],mxConstants.HANDLE_STROKECOLOR)};mxVertexHandler[_0x285e[202]][_0x285e[2985]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null!=_0x4fa0x2&&(_0x4fa0x2[_0x285e[1562]][_0x285e[235]]=Math[_0x285e[488]](_0x4fa0x3-_0x4fa0x2[_0x285e[1562]][_0x285e[117]]/2),_0x4fa0x2[_0x285e[1562]][_0x285e[236]]=Math[_0x285e[488]](_0x4fa0x4-_0x4fa0x2[_0x285e[1562]][_0x285e[119]]/2),_0x4fa0x2[_0x285e[258]]())};mxVertexHandler[_0x285e[202]][_0x285e[2986]]=function(_0x4fa0x2){if(_0x4fa0x2[_0x285e[729]](this[_0x285e[2973]])){return mxEvent[_0x285e[2983]]};if(_0x4fa0x2[_0x285e[729]](this[_0x285e[2972]])){return mxEvent[_0x285e[2987]]};if(null!=this[_0x285e[2964]]){for(var _0x4fa0x3=this[_0x285e[2353]],_0x4fa0x3=this[_0x285e[2958]]&&(mxClient[_0x285e[80]]||0<_0x4fa0x3)? new mxRectangle(_0x4fa0x2[_0x285e[734]]()-_0x4fa0x3,_0x4fa0x2[_0x285e[735]]()-_0x4fa0x3,2*_0x4fa0x3,2*_0x4fa0x3):null,_0x4fa0x4=0;_0x4fa0x4<this[_0x285e[2964]][_0x285e[67]];_0x4fa0x4++){if(_0x4fa0x2[_0x285e[729]](this[_0x285e[2964]][_0x4fa0x4])||null!=_0x4fa0x3&&mxUtils[_0x285e[1825]](this[_0x285e[2964]][_0x4fa0x4][_0x285e[1562]],_0x4fa0x3)){return _0x4fa0x4}}};return null};mxVertexHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[1179]][_0x285e[994]]()&&!this[_0x285e[1179]][_0x285e[2579]](_0x4fa0x3[_0x285e[727]]())&&(0<this[_0x285e[2353]]||_0x4fa0x3[_0x285e[248]]()==this[_0x285e[724]])){var _0x4fa0x4=this[_0x285e[2986]](_0x4fa0x3);null!=_0x4fa0x4&&(this[_0x285e[861]](_0x4fa0x3[_0x285e[730]](),_0x4fa0x3[_0x285e[732]](),_0x4fa0x4),_0x4fa0x3[_0x285e[722]]())}};mxVertexHandler[_0x285e[202]][_0x285e[861]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],_0x4fa0x2,_0x4fa0x3);this[_0x285e[2739]]=_0x4fa0x2[_0x285e[235]];this[_0x285e[2740]]=_0x4fa0x2[_0x285e[236]];this[_0x285e[1983]]=_0x4fa0x4;this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=_0x4fa0x4==mxEvent[_0x285e[2983]]?_0x285e[497]:_0x285e[130];this[_0x285e[2988]]=this[_0x285e[2963]](this[_0x285e[1562]]);!(mxClient[_0x285e[48]]&&0!=Number(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]))&&null!=this[_0x285e[724]][_0x285e[963]]&&this[_0x285e[724]][_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]?(this[_0x285e[2988]][_0x285e[507]]=mxConstants[_0x285e[1656]],this[_0x285e[2988]][_0x285e[176]](this[_0x285e[1179]][_0x285e[526]])):(this[_0x285e[2988]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]],this[_0x285e[2988]][_0x285e[176]](this[_0x285e[1179]][_0x285e[441]][_0x285e[1524]]()))};mxVertexHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&null!=this[_0x285e[1983]]){var _0x4fa0x4= new mxPoint(_0x4fa0x3[_0x285e[734]](),_0x4fa0x3[_0x285e[735]]()),_0x4fa0x5=this[_0x285e[1179]][_0x285e[1018]](_0x4fa0x3[_0x285e[727]]()),_0x4fa0x9=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]];if(this[_0x285e[1983]]==mxEvent[_0x285e[2987]]){_0x4fa0x5&&(_0x4fa0x4[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x4[_0x285e[235]]/_0x4fa0x9)*_0x4fa0x9,_0x4fa0x4[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x4[_0x285e[236]]/_0x4fa0x9)*_0x4fa0x9),this[_0x285e[2985]](this[_0x285e[2964]][this[_0x285e[2964]][_0x285e[67]]-1],_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]])}else {if(this[_0x285e[1983]]==mxEvent[_0x285e[2983]]){var _0x4fa0xa=this[_0x285e[724]][_0x285e[235]]+this[_0x285e[724]][_0x285e[117]]/2-_0x4fa0x4[_0x285e[235]],_0x4fa0x12=this[_0x285e[724]][_0x285e[236]]+this[_0x285e[724]][_0x285e[119]]/2-_0x4fa0x4[_0x285e[236]];this[_0x285e[2989]]=0!=_0x4fa0xa?180*Math[_0x285e[2990]](_0x4fa0x12/_0x4fa0xa)/Math[_0x285e[424]]+90:0>_0x4fa0x12?180:0;0<_0x4fa0xa&&(this[_0x285e[2989]]-=180);this[_0x285e[2960]]&&(_0x4fa0xa=_0x4fa0x4[_0x285e[235]]-this[_0x285e[724]][_0x285e[241]](),_0x4fa0x12=_0x4fa0x4[_0x285e[236]]-this[_0x285e[724]][_0x285e[242]](),_0x4fa0xa=Math[_0x285e[425]](Math[_0x285e[428]](_0x4fa0xa*_0x4fa0xa+_0x4fa0x12*_0x4fa0x12)-this[_0x285e[724]][_0x285e[119]]/2-20),_0x4fa0xa=Math[_0x285e[160]](1,5*Math[_0x285e[243]](3,Math[_0x285e[160]](0,Math[_0x285e[488]](80/Math[_0x285e[425]](_0x4fa0xa))))),this[_0x285e[2989]]=Math[_0x285e[488]](this[_0x285e[2989]]/_0x4fa0xa)*_0x4fa0xa);this[_0x285e[2732]][_0x285e[603]]=this[_0x285e[2989]];this[_0x285e[2732]][_0x285e[258]]()}else {var _0x4fa0x13=mxUtils[_0x285e[431]](this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),_0x4fa0x14=Math[_0x285e[426]](-_0x4fa0x13),_0x4fa0x15=Math[_0x285e[427]](-_0x4fa0x13),_0x4fa0x16= new mxPoint(this[_0x285e[724]][_0x285e[241]](),this[_0x285e[724]][_0x285e[242]]()),_0x4fa0xa=_0x4fa0x4[_0x285e[235]]-this[_0x285e[2739]],_0x4fa0x12=_0x4fa0x4[_0x285e[236]]-this[_0x285e[2740]],_0x4fa0x4=this[_0x285e[1179]][_0x285e[441]][_0x285e[513]],_0x4fa0x17=_0x4fa0x15*_0x4fa0xa+_0x4fa0x14*_0x4fa0x12,_0x4fa0xa=_0x4fa0x14*_0x4fa0xa-_0x4fa0x15*_0x4fa0x12;this[_0x285e[1562]]=this[_0x285e[2991]](this[_0x285e[2961]],_0x4fa0xa,_0x4fa0x17,this[_0x285e[1983]],_0x4fa0x5,_0x4fa0x9,_0x4fa0x4);_0x4fa0x14=Math[_0x285e[426]](_0x4fa0x13);_0x4fa0x15=Math[_0x285e[427]](_0x4fa0x13);_0x4fa0x12= new mxPoint(this[_0x285e[1562]][_0x285e[241]](),this[_0x285e[1562]][_0x285e[242]]());_0x4fa0xa=_0x4fa0x12[_0x285e[235]]-_0x4fa0x16[_0x285e[235]];_0x4fa0x12=_0x4fa0x12[_0x285e[236]]-_0x4fa0x16[_0x285e[236]];_0x4fa0x16=_0x4fa0x15*_0x4fa0xa+_0x4fa0x14*_0x4fa0x12-_0x4fa0x12;this[_0x285e[1562]][_0x285e[235]]+=_0x4fa0x14*_0x4fa0xa-_0x4fa0x15*_0x4fa0x12-_0x4fa0xa;this[_0x285e[1562]][_0x285e[236]]+=_0x4fa0x16;this[_0x285e[2932]]()}};_0x4fa0x3[_0x285e[722]]()}else {null!=this[_0x285e[2986]](_0x4fa0x3)&&_0x4fa0x3[_0x285e[722]](!1)}};mxVertexHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(!_0x4fa0x3[_0x285e[721]]()&&null!=this[_0x285e[1983]]&&null!=this[_0x285e[724]]){var _0x4fa0x4= new mxPoint(_0x4fa0x3[_0x285e[734]](),_0x4fa0x3[_0x285e[735]]());this[_0x285e[1179]][_0x285e[502]]()[_0x285e[473]]();try{if(this[_0x285e[1983]]==mxEvent[_0x285e[2983]]){null!=this[_0x285e[2989]]&&this[_0x285e[2992]](this[_0x285e[724]][_0x285e[246]],this[_0x285e[2989]]-(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||0))}else {var _0x4fa0x5=this[_0x285e[1179]][_0x285e[1018]](_0x4fa0x3[_0x285e[727]]()),_0x4fa0x9=mxUtils[_0x285e[431]](this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),_0x4fa0xa=Math[_0x285e[426]](-_0x4fa0x9),_0x4fa0x12=Math[_0x285e[427]](-_0x4fa0x9),_0x4fa0x13=_0x4fa0x4[_0x285e[235]]-this[_0x285e[2739]],_0x4fa0x14=_0x4fa0x4[_0x285e[236]]-this[_0x285e[2740]],_0x4fa0x4=_0x4fa0x12*_0x4fa0x13+_0x4fa0xa*_0x4fa0x14,_0x4fa0x13=_0x4fa0xa*_0x4fa0x13-_0x4fa0x12*_0x4fa0x14,_0x4fa0x14=_0x4fa0x4,_0x4fa0x15=this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];this[_0x285e[2526]](this[_0x285e[724]][_0x285e[246]],_0x4fa0x13/_0x4fa0x15,_0x4fa0x14/_0x4fa0x15,this[_0x285e[1983]],_0x4fa0x5)}}finally{this[_0x285e[1179]][_0x285e[502]]()[_0x285e[476]]()};this[_0x285e[862]]();_0x4fa0x3[_0x285e[722]]()}};mxVertexHandler[_0x285e[202]][_0x285e[2992]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]();if(_0x4fa0x4[_0x285e[1193]](_0x4fa0x2)){var _0x4fa0x5=_0x4fa0x2==this[_0x285e[724]]?this[_0x285e[724]]:this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x2);null!=_0x4fa0x5&&this[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_ROTATION,(_0x4fa0x5[_0x285e[124]][mxConstants[_0x285e[2278]]]||0)+_0x4fa0x3,[_0x4fa0x2]);if(this[_0x285e[724]][_0x285e[246]]!=_0x4fa0x2&&(_0x4fa0x5=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x2),null!=_0x4fa0x5&&!_0x4fa0x5[_0x285e[1500]])){if(0!=_0x4fa0x3){var _0x4fa0x9=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](_0x4fa0x2),_0x4fa0xa=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x9);if(!_0x4fa0x5[_0x285e[1500]]&&null!=_0x4fa0xa){var _0x4fa0x12=mxUtils[_0x285e[431]](_0x4fa0x3),_0x4fa0x9=Math[_0x285e[426]](_0x4fa0x12),_0x4fa0x12=Math[_0x285e[427]](_0x4fa0x12),_0x4fa0x13= new mxPoint(_0x4fa0x5[_0x285e[241]](),_0x4fa0x5[_0x285e[242]]()),_0x4fa0xa= new mxPoint(_0x4fa0xa[_0x285e[117]]/2,_0x4fa0xa[_0x285e[119]]/2),_0x4fa0x9=mxUtils[_0x285e[432]](_0x4fa0x13,_0x4fa0x9,_0x4fa0x12,_0x4fa0xa),_0x4fa0x5=_0x4fa0x5[_0x285e[238]]();_0x4fa0x5[_0x285e[235]]=_0x4fa0x9[_0x285e[235]]-_0x4fa0x5[_0x285e[117]]/2;_0x4fa0x5[_0x285e[236]]=_0x4fa0x9[_0x285e[236]]-_0x4fa0x5[_0x285e[119]]/2;_0x4fa0x4[_0x285e[1724]](_0x4fa0x2,_0x4fa0x5)}}else {_0x4fa0x5=_0x4fa0x5[_0x285e[238]](),_0x4fa0x5[_0x285e[235]]+=dx,_0x4fa0x5[_0x285e[236]]+=dy,_0x4fa0x4[_0x285e[1724]](_0x4fa0x2,_0x4fa0x5)}};_0x4fa0x5=_0x4fa0x4[_0x285e[262]](_0x4fa0x2);for(_0x4fa0x9=0;_0x4fa0x9<_0x4fa0x5;_0x4fa0x9++){this[_0x285e[2992]](_0x4fa0x4[_0x285e[263]](_0x4fa0x2,_0x4fa0x9),_0x4fa0x3)}}};mxVertexHandler[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[1983]]=this[_0x285e[2989]]=null;null!=this[_0x285e[2988]]&&(this[_0x285e[2988]][_0x285e[515]](),this[_0x285e[2988]]=null);null!=this[_0x285e[2732]]&&(this[_0x285e[2732]][_0x285e[252]][_0x285e[124]][_0x285e[495]]=_0x285e[497],this[_0x285e[2961]]=this[_0x285e[2962]](this[_0x285e[724]]),this[_0x285e[1562]]= new mxRectangle(this[_0x285e[2961]][_0x285e[235]],this[_0x285e[2961]][_0x285e[236]],this[_0x285e[2961]][_0x285e[117]],this[_0x285e[2961]][_0x285e[119]]),this[_0x285e[2932]]())};mxVertexHandler[_0x285e[202]][_0x285e[2526]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=this[_0x285e[1179]][_0x285e[251]][_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0xa){if(_0x4fa0x5==mxEvent[_0x285e[2987]]){_0x4fa0x5=this[_0x285e[1179]][_0x285e[441]][_0x285e[255]],_0x4fa0x3=(this[_0x285e[2972]][_0x285e[1562]][_0x285e[241]]()-this[_0x285e[2739]])/_0x4fa0x5,_0x4fa0x4=(this[_0x285e[2972]][_0x285e[1562]][_0x285e[242]]()-this[_0x285e[2740]])/_0x4fa0x5,_0x4fa0xa=_0x4fa0xa[_0x285e[238]](),null==_0x4fa0xa[_0x285e[1368]]?_0x4fa0xa[_0x285e[1368]]= new mxPoint(_0x4fa0x3,_0x4fa0x4):(_0x4fa0xa[_0x285e[1368]][_0x285e[235]]+=_0x4fa0x3,_0x4fa0xa[_0x285e[1368]][_0x285e[236]]+=_0x4fa0x4),this[_0x285e[1179]][_0x285e[251]][_0x285e[1724]](_0x4fa0x2,_0x4fa0xa)}else {_0x4fa0x5=this[_0x285e[2991]](_0x4fa0xa,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,1, new mxPoint(0,0));var _0x4fa0x12=mxUtils[_0x285e[431]](this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]);if(0!=_0x4fa0x12){_0x4fa0x3=_0x4fa0x5[_0x285e[241]]()-_0x4fa0xa[_0x285e[241]]();_0x4fa0x4=_0x4fa0x5[_0x285e[242]]()-_0x4fa0xa[_0x285e[242]]();_0x4fa0x9=Math[_0x285e[426]](_0x4fa0x12);var _0x4fa0x13=Math[_0x285e[427]](_0x4fa0x12),_0x4fa0x12=_0x4fa0x9*_0x4fa0x3-_0x4fa0x13*_0x4fa0x4-_0x4fa0x3;_0x4fa0x3=_0x4fa0x13*_0x4fa0x3+_0x4fa0x9*_0x4fa0x4-_0x4fa0x4;_0x4fa0x4=_0x4fa0x5[_0x285e[235]]-_0x4fa0xa[_0x285e[235]];var _0x4fa0x14=_0x4fa0x5[_0x285e[236]]-_0x4fa0xa[_0x285e[236]],_0x4fa0x15=_0x4fa0x9*_0x4fa0x4-_0x4fa0x13*_0x4fa0x14;_0x4fa0x9=_0x4fa0x13*_0x4fa0x4+_0x4fa0x9*_0x4fa0x14;_0x4fa0x5[_0x285e[235]]+=_0x4fa0x12;_0x4fa0x5[_0x285e[236]]+=_0x4fa0x3;if(!this[_0x285e[1179]][_0x285e[1742]](_0x4fa0x2)&&(0!=_0x4fa0x12||0!=_0x4fa0x3)){_0x4fa0x4=_0x4fa0xa[_0x285e[235]]-_0x4fa0x5[_0x285e[235]]+_0x4fa0x15,_0x4fa0x14=_0x4fa0xa[_0x285e[236]]-_0x4fa0x5[_0x285e[236]]+_0x4fa0x9,this[_0x285e[2993]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x14)}};this[_0x285e[1179]][_0x285e[2526]](_0x4fa0x2,_0x4fa0x5)}}};mxVertexHandler[_0x285e[202]][_0x285e[2993]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){for(var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[262]](_0x4fa0x2),_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9;_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x5[_0x285e[263]](_0x4fa0x2,_0x4fa0xa);if(_0x4fa0x5[_0x285e[1193]](_0x4fa0x12)){var _0x4fa0x13=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x12);null!=_0x4fa0x13&&!_0x4fa0x13[_0x285e[1500]]&&(_0x4fa0x13=_0x4fa0x13[_0x285e[238]](),_0x4fa0x13[_0x285e[235]]+=_0x4fa0x3,_0x4fa0x13[_0x285e[236]]+=_0x4fa0x4,_0x4fa0x5[_0x285e[1724]](_0x4fa0x12,_0x4fa0x13))}}};mxVertexHandler[_0x285e[202]][_0x285e[2991]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){if(this[_0x285e[2957]]){_0x4fa0x12=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]+_0x4fa0x3;var _0x4fa0x13=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]+_0x4fa0x4;_0x4fa0x9&&(_0x4fa0x12=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x12/_0x4fa0xa)*_0x4fa0xa,_0x4fa0x13=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x13/_0x4fa0xa)*_0x4fa0xa);_0x4fa0xa= new mxRectangle(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]],0,0);_0x4fa0xa[_0x285e[99]]( new mxRectangle(_0x4fa0x12,_0x4fa0x13,0,0));return _0x4fa0xa};var _0x4fa0x13=_0x4fa0x2[_0x285e[235]]-_0x4fa0x12[_0x285e[235]]*_0x4fa0xa,_0x4fa0x14=_0x4fa0x13+_0x4fa0x2[_0x285e[117]],_0x4fa0x15=_0x4fa0x2[_0x285e[236]]-_0x4fa0x12[_0x285e[236]]*_0x4fa0xa;_0x4fa0x2=_0x4fa0x15+_0x4fa0x2[_0x285e[119]];4<_0x4fa0x5?(_0x4fa0x2+=_0x4fa0x4,_0x4fa0x9&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2/_0x4fa0xa)*_0x4fa0xa)):3>_0x4fa0x5&&(_0x4fa0x15+=_0x4fa0x4,_0x4fa0x9&&(_0x4fa0x15=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x15/_0x4fa0xa)*_0x4fa0xa));if(0==_0x4fa0x5||3==_0x4fa0x5||5==_0x4fa0x5){_0x4fa0x13+=_0x4fa0x3,_0x4fa0x9&&(_0x4fa0x13=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x13/_0x4fa0xa)*_0x4fa0xa)}else {if(2==_0x4fa0x5||4==_0x4fa0x5||7==_0x4fa0x5){_0x4fa0x14+=_0x4fa0x3,_0x4fa0x9&&(_0x4fa0x14=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x14/_0x4fa0xa)*_0x4fa0xa)}};_0x4fa0x9=_0x4fa0x14-_0x4fa0x13;_0x4fa0x2-=_0x4fa0x15;0>_0x4fa0x9&&(_0x4fa0x13+=_0x4fa0x9,_0x4fa0x9=Math[_0x285e[425]](_0x4fa0x9));0>_0x4fa0x2&&(_0x4fa0x15+=_0x4fa0x2,_0x4fa0x2=Math[_0x285e[425]](_0x4fa0x2));return new mxRectangle(_0x4fa0x13+_0x4fa0x12[_0x285e[235]]*_0x4fa0xa,_0x4fa0x15+_0x4fa0x12[_0x285e[236]]*_0x4fa0xa,_0x4fa0x9,_0x4fa0x2)};mxVertexHandler[_0x285e[202]][_0x285e[258]]=function(){this[_0x285e[2961]]=this[_0x285e[2962]](this[_0x285e[724]]);this[_0x285e[1562]]= new mxRectangle(this[_0x285e[724]][_0x285e[235]],this[_0x285e[724]][_0x285e[236]],this[_0x285e[724]][_0x285e[117]],this[_0x285e[724]][_0x285e[119]]);var _0x4fa0x2=this[_0x285e[724]];if(null!=this[_0x285e[2964]]){var _0x4fa0x3=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]],_0x4fa0x4=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]];if(this[_0x285e[2957]]){this[_0x285e[2985]](this[_0x285e[2964]][0],_0x4fa0x3,_0x4fa0x4)}else {var _0x4fa0x5=_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]/2,_0x4fa0x9=_0x4fa0x2[_0x285e[236]]+_0x4fa0x2[_0x285e[119]]/2;if(1<this[_0x285e[2964]][_0x285e[67]]){var _0x4fa0xa=mxUtils[_0x285e[431]](_0x4fa0x2[_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),_0x4fa0x12=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0xa=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x13= new mxPoint(_0x4fa0x2[_0x285e[241]](),_0x4fa0x2[_0x285e[242]]()),_0x4fa0x14=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]),_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][0],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x5;_0x4fa0x14[_0x285e[236]]=_0x4fa0x2[_0x285e[236]];_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][1],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x3;_0x4fa0x14[_0x285e[236]]=_0x4fa0x2[_0x285e[236]];_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][2],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x2[_0x285e[235]];_0x4fa0x14[_0x285e[236]]=_0x4fa0x9;_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][3],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x3;_0x4fa0x14[_0x285e[236]]=_0x4fa0x9;_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][4],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x2[_0x285e[235]];_0x4fa0x14[_0x285e[236]]=_0x4fa0x4;_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][5],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x5;_0x4fa0x14[_0x285e[236]]=_0x4fa0x4;_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][6],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);_0x4fa0x14[_0x285e[235]]=_0x4fa0x3;_0x4fa0x14[_0x285e[236]]=_0x4fa0x4;_0x4fa0x14=mxUtils[_0x285e[432]](_0x4fa0x14,_0x4fa0x12,_0x4fa0xa,_0x4fa0x13);this[_0x285e[2985]](this[_0x285e[2964]][7],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]);this[_0x285e[2985]](this[_0x285e[2964]][8],_0x4fa0x5+_0x4fa0x2[_0x285e[2079]][_0x285e[235]],_0x4fa0x9+_0x4fa0x2[_0x285e[2079]][_0x285e[236]])}else {2<=this[_0x285e[724]][_0x285e[117]]&&2<=this[_0x285e[724]][_0x285e[119]]?this[_0x285e[2985]](this[_0x285e[2964]][0],_0x4fa0x5+_0x4fa0x2[_0x285e[2079]][_0x285e[235]],_0x4fa0x9+_0x4fa0x2[_0x285e[2079]][_0x285e[236]]):this[_0x285e[2985]](this[_0x285e[2964]][0],_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]])}}};null!=this[_0x285e[2973]]&&(_0x4fa0xa=mxUtils[_0x285e[431]](this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),_0x4fa0x12=Math[_0x285e[426]](_0x4fa0xa),_0x4fa0xa=Math[_0x285e[427]](_0x4fa0xa),_0x4fa0x13= new mxPoint(this[_0x285e[724]][_0x285e[241]](),this[_0x285e[724]][_0x285e[242]]()),_0x4fa0x14=mxUtils[_0x285e[432]]( new mxPoint(_0x4fa0x2[_0x285e[235]]+_0x4fa0x2[_0x285e[117]]/2,_0x4fa0x2[_0x285e[236]]-16),_0x4fa0x12,_0x4fa0xa,_0x4fa0x13),this[_0x285e[2985]](this[_0x285e[2973]],_0x4fa0x14[_0x285e[235]],_0x4fa0x14[_0x285e[236]]));this[_0x285e[2732]][_0x285e[603]]=Number(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]);this[_0x285e[2932]]()};mxVertexHandler[_0x285e[202]][_0x285e[2932]]=function(){null!=this[_0x285e[2988]]&&(this[_0x285e[2988]][_0x285e[1562]]=this[_0x285e[1562]],this[_0x285e[2988]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]&&(this[_0x285e[2988]][_0x285e[1562]][_0x285e[117]]=Math[_0x285e[160]](0,this[_0x285e[2988]][_0x285e[1562]][_0x285e[117]]-1),this[_0x285e[2988]][_0x285e[1562]][_0x285e[119]]=Math[_0x285e[160]](0,this[_0x285e[2988]][_0x285e[1562]][_0x285e[119]]-1)),this[_0x285e[2988]][_0x285e[603]]=Number(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]),this[_0x285e[2988]][_0x285e[258]]());this[_0x285e[2732]][_0x285e[1562]]=this[_0x285e[1562]];this[_0x285e[2732]][_0x285e[258]]()};mxVertexHandler[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[2988]]&&(this[_0x285e[2988]][_0x285e[515]](),this[_0x285e[2988]]=null);this[_0x285e[2732]][_0x285e[515]]();this[_0x285e[2972]]=this[_0x285e[2732]]=null;if(null!=this[_0x285e[2964]]){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[2964]][_0x285e[67]];_0x4fa0x2++){this[_0x285e[2964]][_0x4fa0x2][_0x285e[515]](),this[_0x285e[2964]][_0x4fa0x2]=null}}};function mxEdgeHandler(_0x4fa0x2){null!=_0x4fa0x2&&(this[_0x285e[724]]=_0x4fa0x2,this[_0x285e[176]]())}mxEdgeHandler[_0x285e[202]][_0x285e[1179]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[724]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2885]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2886]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[267]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[253]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2994]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2972]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2797]]= !0;mxEdgeHandler[_0x285e[202]][_0x285e[2771]]= !1;mxEdgeHandler[_0x285e[202]][_0x285e[2995]]= !1;mxEdgeHandler[_0x285e[202]][_0x285e[574]]= !1;mxEdgeHandler[_0x285e[202]][_0x285e[2958]]= !0;mxEdgeHandler[_0x285e[202]][_0x285e[2996]]= !1;mxEdgeHandler[_0x285e[202]][_0x285e[2959]]=null;mxEdgeHandler[_0x285e[202]][_0x285e[2353]]=0;mxEdgeHandler[_0x285e[202]][_0x285e[176]]=function(){this[_0x285e[1179]]=this[_0x285e[724]][_0x285e[441]][_0x285e[1179]];this[_0x285e[2885]]=this[_0x285e[1689]]();this[_0x285e[2886]]= new mxConstraintHandler(this[_0x285e[1179]]);this[_0x285e[1525]]=[];this[_0x285e[2997]]=this[_0x285e[2998]](this[_0x285e[724]]);this[_0x285e[253]]=this[_0x285e[2963]](this[_0x285e[2997]]);this[_0x285e[253]][_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[2334]]:mxConstants[_0x285e[508]];this[_0x285e[253]][_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]());this[_0x285e[253]][_0x285e[1564]]=0;this[_0x285e[253]][_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[2831]];mxEvent[_0x285e[169]](this[_0x285e[253]][_0x285e[252]],_0x285e[760],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[761]](_0x4fa0x2,this[_0x285e[724]][_0x285e[246]])}));mxEvent[_0x285e[759]](this[_0x285e[253]][_0x285e[252]],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[2771]]&&this[_0x285e[2999]](_0x4fa0x2)?this[_0x285e[3000]](this[_0x285e[724]],_0x4fa0x2):this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x4fa0x2,this[_0x285e[724]]))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){var _0x4fa0x4=this[_0x285e[724]][_0x285e[246]];if(null!=this[_0x285e[1983]]){var _0x4fa0x5=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x2),mxEvent[_0x285e[733]](_0x4fa0x2)),_0x4fa0x4=this[_0x285e[1179]][_0x285e[999]](_0x4fa0x5[_0x285e[235]],_0x4fa0x5[_0x285e[236]]);this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x4)&&this[_0x285e[1179]][_0x285e[2688]](_0x4fa0x4,_0x4fa0x5[_0x285e[235]],_0x4fa0x5[_0x285e[236]])&&(_0x4fa0x4=null)};this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x4fa0x2,this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x4)))}),mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[758]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x4fa0x2,this[_0x285e[724]]))}));this[_0x285e[574]]=null!=this[_0x285e[724]][_0x285e[963]]&&this[_0x285e[724]][_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]];if(!this[_0x285e[574]]){var _0x4fa0x2=this[_0x285e[724]][_0x285e[2089]](!0);null!=_0x4fa0x2&&(this[_0x285e[574]]=null!=_0x4fa0x2[_0x285e[963]]&&_0x4fa0x2[_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]);this[_0x285e[574]]||(_0x4fa0x2=this[_0x285e[724]][_0x285e[2089]](!1),null!=_0x4fa0x2&&(this[_0x285e[574]]=null!=_0x4fa0x2[_0x285e[963]]&&_0x4fa0x2[_0x285e[963]][_0x285e[252]][_0x285e[265]]==this[_0x285e[1179]][_0x285e[526]]))};if(this[_0x285e[1179]][_0x285e[2694]]()<mxGraphHandler[_0x285e[202]][_0x285e[2795]]||0>=mxGraphHandler[_0x285e[202]][_0x285e[2795]]){this[_0x285e[2994]]=this[_0x285e[3001]]()};this[_0x285e[685]]= new mxPoint(this[_0x285e[724]][_0x285e[2079]][_0x285e[235]],this[_0x285e[724]][_0x285e[2079]][_0x285e[236]]);this[_0x285e[2972]]= new mxRectangleShape( new mxRectangle,mxConstants.LABEL_HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR);this[_0x285e[2972]][_0x285e[1229]]= !1;this[_0x285e[3002]](this[_0x285e[2972]]);this[_0x285e[2972]][_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3003]];mxEvent[_0x285e[2733]](this[_0x285e[2972]][_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);this[_0x285e[258]]()};mxEdgeHandler[_0x285e[202]][_0x285e[2999]]=function(_0x4fa0x2){return mxEvent[_0x285e[774]](_0x4fa0x2)};mxEdgeHandler[_0x285e[202]][_0x285e[3004]]=function(_0x4fa0x2){return mxEvent[_0x285e[774]](_0x4fa0x2)};mxEdgeHandler[_0x285e[202]][_0x285e[2998]]=function(_0x4fa0x2){return _0x4fa0x2[_0x285e[439]]};mxEdgeHandler[_0x285e[202]][_0x285e[2963]]=function(_0x4fa0x2){_0x4fa0x2= new mxPolyline(_0x4fa0x2,this[_0x285e[2975]]());_0x4fa0x2[_0x285e[1307]]=this[_0x285e[2976]]();_0x4fa0x2[_0x285e[1522]]=this[_0x285e[2977]]();return _0x4fa0x2};mxEdgeHandler[_0x285e[202]][_0x285e[2975]]=function(){return mxConstants[_0x285e[3005]]};mxEdgeHandler[_0x285e[202]][_0x285e[2976]]=function(){return mxConstants[_0x285e[3006]]};mxEdgeHandler[_0x285e[202]][_0x285e[2977]]=function(){return mxConstants[_0x285e[3007]]};mxEdgeHandler[_0x285e[202]][_0x285e[2907]]=function(_0x4fa0x2){return !0};mxEdgeHandler[_0x285e[202]][_0x285e[1689]]=function(){var _0x4fa0x2= new mxCellMarker(this[_0x285e[1179]]),_0x4fa0x3=this;_0x4fa0x2[_0x285e[736]]=function(_0x4fa0x2){var _0x4fa0x5=mxCellMarker[_0x285e[202]][_0x285e[736]][_0x285e[183]](this,arguments);if(!_0x4fa0x3[_0x285e[2907]](_0x4fa0x5)){return null};var _0x4fa0x9=_0x4fa0x3[_0x285e[1179]][_0x285e[502]]();if(_0x4fa0x5==_0x4fa0x3[_0x285e[724]][_0x285e[246]]||null!=_0x4fa0x5&&!_0x4fa0x3[_0x285e[1179]][_0x285e[2405]]&&_0x4fa0x9[_0x285e[250]](_0x4fa0x5)){_0x4fa0x5=null};return _0x4fa0x5};_0x4fa0x2[_0x285e[2872]]=function(_0x4fa0x2){var _0x4fa0x5=_0x4fa0x3[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x3[_0x285e[1179]][_0x285e[441]][_0x285e[2292]](_0x4fa0x2,_0x4fa0x3[_0x285e[1179]][_0x285e[441]][_0x285e[248]](_0x4fa0x5[_0x285e[1709]](_0x4fa0x3[_0x285e[724]][_0x285e[246]],!_0x4fa0x3[_0x285e[729]])),!_0x4fa0x3[_0x285e[729]]),_0x4fa0x5=null!=_0x4fa0x5?_0x4fa0x5[_0x285e[246]]:null;_0x4fa0x3[_0x285e[267]]=_0x4fa0x3[_0x285e[2909]](_0x4fa0x3[_0x285e[729]]?_0x4fa0x2[_0x285e[246]]:_0x4fa0x5,_0x4fa0x3[_0x285e[729]]?_0x4fa0x5:_0x4fa0x2[_0x285e[246]]);return null==_0x4fa0x3[_0x285e[267]]};return _0x4fa0x2};mxEdgeHandler[_0x285e[202]][_0x285e[2909]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[1179]][_0x285e[2500]](this[_0x285e[724]][_0x285e[246]],_0x4fa0x2,_0x4fa0x3)};mxEdgeHandler[_0x285e[202]][_0x285e[3001]]=function(){for(var _0x4fa0x2=this[_0x285e[724]][_0x285e[246]],_0x4fa0x3=[],_0x4fa0x4=0;_0x4fa0x4<this[_0x285e[2997]][_0x285e[67]];_0x4fa0x4++){if(this[_0x285e[3008]](_0x4fa0x4)){var _0x4fa0x5=_0x4fa0x4==this[_0x285e[2997]][_0x285e[67]]-1;if((_0x4fa0x5=0==_0x4fa0x4||_0x4fa0x5)||this[_0x285e[1179]][_0x285e[2662]](_0x4fa0x2)){var _0x4fa0x9=this[_0x285e[3009]](_0x4fa0x4);this[_0x285e[3002]](_0x4fa0x9);mxClient[_0x285e[754]]&&_0x4fa0x9[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130]);if(this[_0x285e[3010]](_0x4fa0x4)){if(mxClient[_0x285e[754]]){var _0x4fa0xa=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){_0x4fa0x2=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x2),mxEvent[_0x285e[733]](_0x4fa0x2));return this[_0x285e[1179]][_0x285e[441]][_0x285e[248]](this[_0x285e[1179]][_0x285e[999]](_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]]))});mxEvent[_0x285e[2733]](_0x4fa0x9[_0x285e[252]],this[_0x285e[1179]],_0x4fa0xa)}else {_0x4fa0x9[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3011]],mxEvent[_0x285e[2733]](_0x4fa0x9[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]])}};_0x4fa0x3[_0x285e[207]](_0x4fa0x9);_0x4fa0x5||(this[_0x285e[1525]][_0x285e[207]]( new mxPoint(0,0)),_0x4fa0x9[_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188])}}};return _0x4fa0x3};mxEdgeHandler[_0x285e[202]][_0x285e[3010]]=function(_0x4fa0x2){return !0};mxEdgeHandler[_0x285e[202]][_0x285e[3008]]=function(_0x4fa0x2){return !0};mxEdgeHandler[_0x285e[202]][_0x285e[3009]]=function(_0x4fa0x2){if(null!=this[_0x285e[2959]]){return new mxImageShape( new mxRectangle(0,0,this[_0x285e[2959]][_0x285e[117]],this[_0x285e[2959]][_0x285e[119]]),this[_0x285e[2959]][_0x285e[390]])};_0x4fa0x2=mxConstants[_0x285e[2974]];this[_0x285e[574]]&&(_0x4fa0x2-=1);return new mxRectangleShape( new mxRectangle(0,0,_0x4fa0x2,_0x4fa0x2),mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};mxEdgeHandler[_0x285e[202]][_0x285e[3002]]=function(_0x4fa0x2){this[_0x285e[574]]?(_0x4fa0x2[_0x285e[507]]=mxConstants[_0x285e[1656]],_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[526]])):(_0x4fa0x2[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[2334]]:mxConstants[_0x285e[508]],_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]()))};mxEdgeHandler[_0x285e[202]][_0x285e[2986]]=function(_0x4fa0x2){if(null!=this[_0x285e[2994]]){for(var _0x4fa0x3=this[_0x285e[2353]],_0x4fa0x3=this[_0x285e[2958]]&&(mxClient[_0x285e[80]]||0<_0x4fa0x3)? new mxRectangle(_0x4fa0x2[_0x285e[734]]()-_0x4fa0x3,_0x4fa0x2[_0x285e[735]]()-_0x4fa0x3,2*_0x4fa0x3,2*_0x4fa0x3):null,_0x4fa0x4=0;_0x4fa0x4<this[_0x285e[2994]][_0x285e[67]];_0x4fa0x4++){if((_0x4fa0x2[_0x285e[729]](this[_0x285e[2994]][_0x4fa0x4])||null!=_0x4fa0x3&&mxUtils[_0x285e[1825]](this[_0x285e[2994]][_0x4fa0x4][_0x285e[1562]],_0x4fa0x3))&&_0x285e[188]!=this[_0x285e[2994]][_0x4fa0x4][_0x285e[252]][_0x285e[124]][_0x285e[187]]){return _0x4fa0x4}}};if(_0x4fa0x2[_0x285e[729]](this[_0x285e[2972]])&&_0x285e[188]!=this[_0x285e[2972]][_0x285e[252]][_0x285e[124]][_0x285e[187]]||_0x4fa0x2[_0x285e[729]](this[_0x285e[724]][_0x285e[963]])){if(!mxClient[_0x285e[75]]&&!mxClient[_0x285e[76]]||_0x285e[2822]!=_0x4fa0x2[_0x285e[728]]()[_0x285e[301]]){return mxEvent[_0x285e[2987]]}};return null};mxEdgeHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null,_0x4fa0x4=this[_0x285e[2986]](_0x4fa0x3);null!=_0x4fa0x4&&(!_0x4fa0x3[_0x285e[721]]()&&this[_0x285e[1179]][_0x285e[994]]()&&!this[_0x285e[1179]][_0x285e[2579]](_0x4fa0x3[_0x285e[727]]()))&&(this[_0x285e[2995]]&&this[_0x285e[3004]](_0x4fa0x3[_0x285e[727]]())?this[_0x285e[3012]](this[_0x285e[724]],_0x4fa0x4):(_0x4fa0x4!=mxEvent[_0x285e[2987]]||this[_0x285e[1179]][_0x285e[2628]](_0x4fa0x3[_0x285e[736]]()))&&this[_0x285e[861]](_0x4fa0x3[_0x285e[730]](),_0x4fa0x3[_0x285e[732]](),_0x4fa0x4),_0x4fa0x3[_0x285e[722]]())};mxEdgeHandler[_0x285e[202]][_0x285e[861]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[2739]]=_0x4fa0x2;this[_0x285e[2740]]=_0x4fa0x3;this[_0x285e[729]]=null==this[_0x285e[2994]]?!1:0==_0x4fa0x4;this[_0x285e[3013]]=null==this[_0x285e[2994]]?!1:_0x4fa0x4==this[_0x285e[2994]][_0x285e[67]]-1;this[_0x285e[3014]]=_0x4fa0x4==mxEvent[_0x285e[2987]];if(this[_0x285e[729]]||this[_0x285e[3013]]){if(_0x4fa0x2=this[_0x285e[724]][_0x285e[246]],_0x4fa0x3=this[_0x285e[1179]][_0x285e[251]][_0x285e[1709]](_0x4fa0x2,this[_0x285e[729]]),null==_0x4fa0x3&&this[_0x285e[1179]][_0x285e[2661]](_0x4fa0x2,this[_0x285e[729]])||null!=_0x4fa0x3&&this[_0x285e[1179]][_0x285e[2551]](_0x4fa0x2,_0x4fa0x3,this[_0x285e[729]])){this[_0x285e[1983]]=_0x4fa0x4}}else {this[_0x285e[1983]]=_0x4fa0x4}};mxEdgeHandler[_0x285e[202]][_0x285e[3015]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[724]][_0x285e[238]]()};mxEdgeHandler[_0x285e[202]][_0x285e[3016]]=function(){return this[_0x285e[1179]][_0x285e[1020]]*this[_0x285e[1179]][_0x285e[441]][_0x285e[255]]/2};mxEdgeHandler[_0x285e[202]][_0x285e[2689]]=function(_0x4fa0x2){var _0x4fa0x3= new mxPoint(_0x4fa0x2[_0x285e[734]](),_0x4fa0x2[_0x285e[735]]()),_0x4fa0x4=this[_0x285e[3016]](),_0x4fa0x5=this[_0x285e[1179]][_0x285e[249]](),_0x4fa0x9=!1,_0x4fa0xa=!1;if(this[_0x285e[2996]]&&0<_0x4fa0x4){var _0x4fa0x12=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x5=_0x4fa0x2[_0x285e[235]];Math[_0x285e[425]](_0x4fa0x3[_0x285e[235]]-_0x4fa0x5)<_0x4fa0x4&&(_0x4fa0x3[_0x285e[235]]=_0x4fa0x5,_0x4fa0x9= !0);_0x4fa0x2=_0x4fa0x2[_0x285e[236]];Math[_0x285e[425]](_0x4fa0x3[_0x285e[236]]-_0x4fa0x2)<_0x4fa0x4&&(_0x4fa0x3[_0x285e[236]]=_0x4fa0x2,_0x4fa0xa= !0)}},_0x4fa0x13=function(_0x4fa0x2){null!=_0x4fa0x2&&_0x4fa0x12[_0x285e[239]](this, new mxPoint(_0x4fa0x5[_0x285e[2230]](_0x4fa0x2),_0x4fa0x5[_0x285e[2228]](_0x4fa0x2)))};_0x4fa0x13[_0x285e[239]](this,this[_0x285e[724]][_0x285e[2089]](!0));_0x4fa0x13[_0x285e[239]](this,this[_0x285e[724]][_0x285e[2089]](!1));if(null!=this[_0x285e[2997]]){for(_0x4fa0x13=0;_0x4fa0x13<this[_0x285e[2997]];_0x4fa0x13++){_0x4fa0x13!=this[_0x285e[1983]]&&_0x4fa0x12[_0x285e[239]](this,this[_0x285e[2997]][_0x4fa0x13])}}};this[_0x285e[1179]][_0x285e[1018]](_0x4fa0x2[_0x285e[727]]())&&(_0x4fa0x2=_0x4fa0x5[_0x285e[255]],_0x4fa0x13=_0x4fa0x5[_0x285e[513]],_0x4fa0x9||(_0x4fa0x3[_0x285e[235]]=(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x3[_0x285e[235]]/_0x4fa0x2-_0x4fa0x13[_0x285e[235]])+_0x4fa0x13[_0x285e[235]])*_0x4fa0x2),_0x4fa0xa||(_0x4fa0x3[_0x285e[236]]=(this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x3[_0x285e[236]]/_0x4fa0x2-_0x4fa0x13[_0x285e[236]])+_0x4fa0x13[_0x285e[236]])*_0x4fa0x2));return _0x4fa0x3};mxEdgeHandler[_0x285e[202]][_0x285e[3017]]=function(_0x4fa0x2){this[_0x285e[2886]][_0x285e[2729]](_0x4fa0x2,this[_0x285e[729]]);this[_0x285e[2885]][_0x285e[2871]](_0x4fa0x2);_0x4fa0x2=this[_0x285e[2885]][_0x285e[2868]]();var _0x4fa0x3=null;null!=this[_0x285e[2886]][_0x285e[2919]]&&null!=this[_0x285e[2886]][_0x285e[2920]]&&this[_0x285e[2885]][_0x285e[862]]();null!=_0x4fa0x2?_0x4fa0x3=_0x4fa0x2:null!=this[_0x285e[2886]][_0x285e[2920]]&&null!=this[_0x285e[2886]][_0x285e[2919]]&&(_0x4fa0x3=this[_0x285e[2886]][_0x285e[2919]]);return _0x4fa0x3};mxEdgeHandler[_0x285e[202]][_0x285e[3018]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[1198]](this[_0x285e[724]][_0x285e[246]]),_0x4fa0x3=null!=_0x4fa0x3[_0x285e[1525]]?_0x4fa0x3[_0x285e[1525]][_0x285e[1853]]():null;!this[_0x285e[729]]&&!this[_0x285e[3013]]?(this[_0x285e[2196]](_0x4fa0x2,!1),null==_0x4fa0x3?_0x4fa0x3=[_0x4fa0x2]:_0x4fa0x3[this[_0x285e[1983]]-1]=_0x4fa0x2):this[_0x285e[1179]][_0x285e[2401]]&&(_0x4fa0x3=null);return _0x4fa0x3};mxEdgeHandler[_0x285e[202]][_0x285e[3019]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[729]]?_0x4fa0x4:this[_0x285e[724]][_0x285e[2089]](!0),_0x4fa0x9=this[_0x285e[3013]]?_0x4fa0x4:this[_0x285e[724]][_0x285e[2089]](!1),_0x4fa0xa=this[_0x285e[1179]][_0x285e[2288]](_0x4fa0x2,_0x4fa0x5,!0),_0x4fa0x12=this[_0x285e[1179]][_0x285e[2288]](_0x4fa0x2,_0x4fa0x9,!1),_0x4fa0x13=this[_0x285e[2886]][_0x285e[2920]];null==_0x4fa0x13&&(_0x4fa0x13= new mxConnectionConstraint);this[_0x285e[729]]?_0x4fa0xa=_0x4fa0x13:this[_0x285e[3013]]&&(_0x4fa0x12=_0x4fa0x13);(!this[_0x285e[729]]||null!=_0x4fa0x5)&&_0x4fa0x2[_0x285e[441]][_0x285e[2289]](_0x4fa0x2,_0x4fa0x5,!0,_0x4fa0xa);(!this[_0x285e[3013]]||null!=_0x4fa0x9)&&_0x4fa0x2[_0x285e[441]][_0x285e[2289]](_0x4fa0x2,_0x4fa0x9,!1,_0x4fa0x12);if((this[_0x285e[729]]||this[_0x285e[3013]])&&null==_0x4fa0x4){_0x4fa0x2[_0x285e[2088]](_0x4fa0x3,this[_0x285e[729]]),null==this[_0x285e[2885]][_0x285e[2869]]()&&(this[_0x285e[267]]=this[_0x285e[1179]][_0x285e[2406]]?null:_0x285e[110])};_0x4fa0x2[_0x285e[441]][_0x285e[2282]](_0x4fa0x2,this[_0x285e[1525]],_0x4fa0x5,_0x4fa0x9);_0x4fa0x2[_0x285e[441]][_0x285e[2283]](_0x4fa0x2,_0x4fa0x5,_0x4fa0x9)};mxEdgeHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[1983]]&&null!=this[_0x285e[2885]]){var _0x4fa0x4=this[_0x285e[2689]](_0x4fa0x3);if(this[_0x285e[3014]]){this[_0x285e[685]][_0x285e[235]]=_0x4fa0x4[_0x285e[235]],this[_0x285e[685]][_0x285e[236]]=_0x4fa0x4[_0x285e[236]]}else {this[_0x285e[1525]]=this[_0x285e[3018]](_0x4fa0x4);var _0x4fa0x5=this[_0x285e[729]]||this[_0x285e[3013]]?this[_0x285e[3017]](_0x4fa0x3):null,_0x4fa0x9=this[_0x285e[3015]](_0x4fa0x4,null!=_0x4fa0x5?_0x4fa0x5[_0x285e[246]]:null);this[_0x285e[3019]](_0x4fa0x9,_0x4fa0x4,_0x4fa0x5);this[_0x285e[3020]](null==this[_0x285e[267]]?this[_0x285e[2885]][_0x285e[2853]]:this[_0x285e[2885]][_0x285e[2855]]);this[_0x285e[2997]]=_0x4fa0x9[_0x285e[439]];this[_0x285e[1124]]= !0};this[_0x285e[2932]]();mxEvent[_0x285e[722]](_0x4fa0x3[_0x285e[727]]());_0x4fa0x3[_0x285e[722]]()}else {mxClient[_0x285e[80]]&&null!=this[_0x285e[2986]](_0x4fa0x3)&&_0x4fa0x3[_0x285e[722]](!1)}};mxEdgeHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){if(null!=this[_0x285e[1983]]&&null!=this[_0x285e[2885]]){var _0x4fa0x4=this[_0x285e[724]][_0x285e[246]];if(_0x4fa0x3[_0x285e[730]]()!=this[_0x285e[2739]]||_0x4fa0x3[_0x285e[732]]()!=this[_0x285e[2740]]){if(null!=this[_0x285e[267]]){0<this[_0x285e[267]][_0x285e[67]]&&this[_0x285e[1179]][_0x285e[2580]](this[_0x285e[267]])}else {if(this[_0x285e[3014]]){this[_0x285e[3021]](this[_0x285e[724]],this[_0x285e[685]][_0x285e[235]],this[_0x285e[685]][_0x285e[236]])}else {if(this[_0x285e[729]]||this[_0x285e[3013]]){var _0x4fa0x5=null;null!=this[_0x285e[2886]][_0x285e[2920]]&&null!=this[_0x285e[2886]][_0x285e[2919]]&&(_0x4fa0x5=this[_0x285e[2886]][_0x285e[2919]][_0x285e[246]]);null==_0x4fa0x5&&this[_0x285e[2885]][_0x285e[2867]]()&&(_0x4fa0x5=this[_0x285e[2885]][_0x285e[2861]][_0x285e[246]]);if(null!=_0x4fa0x5){_0x4fa0x4=this[_0x285e[807]](_0x4fa0x4,_0x4fa0x5,this[_0x285e[729]],this[_0x285e[1179]][_0x285e[2574]](_0x4fa0x3[_0x285e[727]]())&&this[_0x285e[2797]]&&this[_0x285e[1179]][_0x285e[2617]](),_0x4fa0x3)}else {if(this[_0x285e[1179]][_0x285e[2530]]()){_0x4fa0x5=this[_0x285e[2997]][this[_0x285e[729]]?0:this[_0x285e[2997]][_0x285e[67]]-1];_0x4fa0x5[_0x285e[235]]=_0x4fa0x5[_0x285e[235]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]]-this[_0x285e[1179]][_0x285e[441]][_0x285e[513]][_0x285e[235]];_0x4fa0x5[_0x285e[236]]=_0x4fa0x5[_0x285e[236]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]]-this[_0x285e[1179]][_0x285e[441]][_0x285e[513]][_0x285e[236]];var _0x4fa0x9=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](_0x4fa0x4));null!=_0x4fa0x9&&(_0x4fa0x5[_0x285e[235]]-=_0x4fa0x9[_0x285e[2078]][_0x285e[235]],_0x4fa0x5[_0x285e[236]]-=_0x4fa0x9[_0x285e[2078]][_0x285e[236]]);_0x4fa0x5[_0x285e[235]]-=this[_0x285e[1179]][_0x285e[1136]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];_0x4fa0x5[_0x285e[236]]-=this[_0x285e[1179]][_0x285e[1137]]/this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];this[_0x285e[3022]](_0x4fa0x4,_0x4fa0x5,this[_0x285e[729]])}}}else {this[_0x285e[1124]]?this[_0x285e[3023]](_0x4fa0x4,this[_0x285e[1525]]):(this[_0x285e[1179]][_0x285e[249]]()[_0x285e[2263]](this[_0x285e[724]][_0x285e[246]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[2259]](this[_0x285e[724]][_0x285e[246]]))}}}};null!=this[_0x285e[2885]]&&(this[_0x285e[862]](),_0x4fa0x4!=this[_0x285e[724]][_0x285e[246]]&&this[_0x285e[1179]][_0x285e[2450]](_0x4fa0x4));_0x4fa0x3[_0x285e[722]]()}};mxEdgeHandler[_0x285e[202]][_0x285e[862]]=function(){this[_0x285e[1525]]=this[_0x285e[685]]=this[_0x285e[1983]]=this[_0x285e[267]]=null;this[_0x285e[3013]]=this[_0x285e[729]]=this[_0x285e[3014]]=this[_0x285e[1124]]= !1;this[_0x285e[2885]][_0x285e[862]]();this[_0x285e[2886]][_0x285e[862]]();this[_0x285e[3020]](mxConstants.EDGE_SELECTION_COLOR);this[_0x285e[258]]()};mxEdgeHandler[_0x285e[202]][_0x285e[3020]]=function(_0x4fa0x2){null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[1336]]=_0x4fa0x2)};mxEdgeHandler[_0x285e[202]][_0x285e[2196]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[518]](),_0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[512]]();_0x4fa0x3&&(_0x4fa0x2[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[235]]),_0x4fa0x2[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[236]]));_0x4fa0x2[_0x285e[235]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[235]]/_0x4fa0x4-_0x4fa0x5[_0x285e[235]]);_0x4fa0x2[_0x285e[236]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[236]]/_0x4fa0x4-_0x4fa0x5[_0x285e[236]]);_0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1197]](this[_0x285e[724]][_0x285e[246]]));null!=_0x4fa0x4&&(_0x4fa0x2[_0x285e[235]]-=_0x4fa0x4[_0x285e[2078]][_0x285e[235]],_0x4fa0x2[_0x285e[236]]-=_0x4fa0x4[_0x285e[2078]][_0x285e[236]]);return _0x4fa0x2};mxEdgeHandler[_0x285e[202]][_0x285e[3021]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2[_0x285e[246]]);if(null!=_0x4fa0x9){var _0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0xa=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[2308]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);_0x4fa0x9[_0x285e[235]]=_0x4fa0xa[_0x285e[235]];_0x4fa0x9[_0x285e[236]]=_0x4fa0xa[_0x285e[236]];var _0x4fa0x12=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]];_0x4fa0x9[_0x285e[1368]]= new mxPoint(0,0);_0x4fa0xa=this[_0x285e[1179]][_0x285e[441]][_0x285e[245]](_0x4fa0x2,_0x4fa0x9);_0x4fa0x9[_0x285e[1368]]= new mxPoint((_0x4fa0x3-_0x4fa0xa[_0x285e[235]])/_0x4fa0x12,(_0x4fa0x4-_0x4fa0xa[_0x285e[236]])/_0x4fa0x12);_0x4fa0x5[_0x285e[1724]](_0x4fa0x2[_0x285e[246]],_0x4fa0x9)}};mxEdgeHandler[_0x285e[202]][_0x285e[807]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x9=this[_0x285e[1179]][_0x285e[502]]();var _0x4fa0xa=_0x4fa0x9[_0x285e[1197]](_0x4fa0x2);_0x4fa0x9[_0x285e[473]]();try{if(_0x4fa0x5){var _0x4fa0x12=_0x4fa0x2[_0x285e[238]]();_0x4fa0x9[_0x285e[99]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x9[_0x285e[262]](_0x4fa0xa));var _0x4fa0x13=_0x4fa0x9[_0x285e[1709]](_0x4fa0x2,!_0x4fa0x4);this[_0x285e[1179]][_0x285e[851]](_0x4fa0x12,_0x4fa0x13,!_0x4fa0x4);_0x4fa0x2=_0x4fa0x12};var _0x4fa0x14=this[_0x285e[2886]][_0x285e[2920]];null==_0x4fa0x14&&(_0x4fa0x14= new mxConnectionConstraint);this[_0x285e[1179]][_0x285e[851]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x14)}finally{_0x4fa0x9[_0x285e[476]]()};return _0x4fa0x2};mxEdgeHandler[_0x285e[202]][_0x285e[3022]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2);if(null!=_0x4fa0x9){_0x4fa0x5[_0x285e[473]]();try{_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0x9[_0x285e[2007]](_0x4fa0x3,_0x4fa0x4),_0x4fa0x5[_0x285e[1724]](_0x4fa0x2,_0x4fa0x9),this[_0x285e[1179]][_0x285e[851]](_0x4fa0x2,null,_0x4fa0x4, new mxConnectionConstraint)}finally{_0x4fa0x5[_0x285e[476]]()}}};mxEdgeHandler[_0x285e[202]][_0x285e[3023]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x5=_0x4fa0x4[_0x285e[1721]](_0x4fa0x2);null!=_0x4fa0x5&&(_0x4fa0x5=_0x4fa0x5[_0x285e[238]](),_0x4fa0x5[_0x285e[1525]]=_0x4fa0x3,_0x4fa0x4[_0x285e[1724]](_0x4fa0x2,_0x4fa0x5))};mxEdgeHandler[_0x285e[202]][_0x285e[3000]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=mxUtils[_0x285e[2196]](this[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x3),mxEvent[_0x285e[733]](_0x4fa0x3)),_0x4fa0x5=this[_0x285e[1179]][_0x285e[1018]](_0x4fa0x3);this[_0x285e[2196]](_0x4fa0x4,_0x4fa0x5);this[_0x285e[3024]](_0x4fa0x2,_0x4fa0x4[_0x285e[235]],_0x4fa0x4[_0x285e[236]]);mxEvent[_0x285e[722]](_0x4fa0x3)};mxEdgeHandler[_0x285e[202]][_0x285e[3024]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[1179]][_0x285e[1198]](_0x4fa0x2[_0x285e[246]]);_0x4fa0x3= new mxPoint(_0x4fa0x3,_0x4fa0x4);if(null!=_0x4fa0x5){_0x4fa0x5=_0x4fa0x5[_0x285e[238]]();_0x4fa0x4=this[_0x285e[1179]][_0x285e[441]][_0x285e[513]];var _0x4fa0x9=this[_0x285e[1179]][_0x285e[441]][_0x285e[255]];_0x4fa0x4=mxUtils[_0x285e[3025]](_0x4fa0x2,(_0x4fa0x3[_0x285e[235]]+_0x4fa0x4[_0x285e[235]])*_0x4fa0x9,(_0x4fa0x3[_0x285e[236]]+_0x4fa0x4[_0x285e[236]])*_0x4fa0x9);null==_0x4fa0x5[_0x285e[1525]]?_0x4fa0x5[_0x285e[1525]]=[_0x4fa0x3]:_0x4fa0x5[_0x285e[1525]][_0x285e[300]](_0x4fa0x4,0,_0x4fa0x3);this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1724]](_0x4fa0x2[_0x285e[246]],_0x4fa0x5);this[_0x285e[515]]();this[_0x285e[176]]()}};mxEdgeHandler[_0x285e[202]][_0x285e[3012]]=function(_0x4fa0x2,_0x4fa0x3){if(0<_0x4fa0x3&&_0x4fa0x3<this[_0x285e[2997]][_0x285e[67]]-1){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[1198]](this[_0x285e[724]][_0x285e[246]]);null!=_0x4fa0x4&&null!=_0x4fa0x4[_0x285e[1525]]&&(_0x4fa0x4=_0x4fa0x4[_0x285e[238]](),_0x4fa0x4[_0x285e[1525]][_0x285e[300]](_0x4fa0x3-1,1),this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1724]](_0x4fa0x2[_0x285e[246]],_0x4fa0x4),this[_0x285e[515]](),this[_0x285e[176]]())}};mxEdgeHandler[_0x285e[202]][_0x285e[3026]]=function(_0x4fa0x2){_0x4fa0x2=0==_0x4fa0x2;var _0x4fa0x3=this[_0x285e[724]][_0x285e[246]],_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1709]](_0x4fa0x3,_0x4fa0x2),_0x4fa0x5=mxConstants[_0x285e[2984]];null!=_0x4fa0x4&&!this[_0x285e[1179]][_0x285e[2551]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x2)||null==_0x4fa0x4&&!this[_0x285e[1179]][_0x285e[2661]](_0x4fa0x3,_0x4fa0x2)?_0x4fa0x5=mxConstants[_0x285e[3027]]:null!=_0x4fa0x4&&this[_0x285e[1179]][_0x285e[2551]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x2)&&(_0x4fa0x5=mxConstants[_0x285e[3028]]);return _0x4fa0x5};mxEdgeHandler[_0x285e[202]][_0x285e[258]]=function(){this[_0x285e[2997]]=this[_0x285e[724]][_0x285e[439]][_0x285e[1853]]();var _0x4fa0x2=this[_0x285e[724]][_0x285e[246]],_0x4fa0x3=mxConstants[_0x285e[3029]];this[_0x285e[685]]= new mxPoint(this[_0x285e[724]][_0x285e[2079]][_0x285e[235]],this[_0x285e[724]][_0x285e[2079]][_0x285e[236]]);this[_0x285e[2972]][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](this[_0x285e[685]][_0x285e[235]]-_0x4fa0x3/2),Math[_0x285e[488]](this[_0x285e[685]][_0x285e[236]]-_0x4fa0x3/2),_0x4fa0x3,_0x4fa0x3);this[_0x285e[2972]][_0x285e[258]]();_0x4fa0x3=this[_0x285e[1179]][_0x285e[2183]](_0x4fa0x2);null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]&&this[_0x285e[1179]][_0x285e[2628]](_0x4fa0x2)?this[_0x285e[2972]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[189]:this[_0x285e[2972]][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[188];if(null!=this[_0x285e[2994]]&&0<this[_0x285e[2994]][_0x285e[67]]){var _0x4fa0x4=this[_0x285e[2997]][_0x285e[67]]-1,_0x4fa0x2=this[_0x285e[2997]][0],_0x4fa0x5=this[_0x285e[2997]][0][_0x285e[236]],_0x4fa0x3=this[_0x285e[2994]][0][_0x285e[1562]];this[_0x285e[2994]][0][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](this[_0x285e[2997]][0][_0x285e[235]]-_0x4fa0x3[_0x285e[117]]/2),Math[_0x285e[488]](_0x4fa0x5-_0x4fa0x3[_0x285e[119]]/2),_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]]);this[_0x285e[2994]][0][_0x285e[1334]]=this[_0x285e[3026]](0);this[_0x285e[2994]][0][_0x285e[258]]();var _0x4fa0x5=this[_0x285e[2997]][_0x4fa0x4],_0x4fa0x9=this[_0x285e[2997]][_0x4fa0x4][_0x285e[235]],_0x4fa0x4=this[_0x285e[2997]][_0x4fa0x4][_0x285e[236]],_0x4fa0xa=this[_0x285e[2994]][_0x285e[67]]-1,_0x4fa0x3=this[_0x285e[2994]][_0x4fa0xa][_0x285e[1562]];this[_0x285e[2994]][_0x4fa0xa][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](_0x4fa0x9-_0x4fa0x3[_0x285e[117]]/2),Math[_0x285e[488]](_0x4fa0x4-_0x4fa0x3[_0x285e[119]]/2),_0x4fa0x3[_0x285e[117]],_0x4fa0x3[_0x285e[119]]);this[_0x285e[2994]][_0x4fa0xa][_0x285e[1334]]=this[_0x285e[3026]](_0x4fa0xa);this[_0x285e[2994]][_0x4fa0xa][_0x285e[258]]();this[_0x285e[3030]](_0x4fa0x2,_0x4fa0x5)};this[_0x285e[2932]]()};mxEdgeHandler[_0x285e[202]][_0x285e[3030]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1721]](this[_0x285e[724]][_0x285e[246]])[_0x285e[1525]];if(null!=_0x4fa0x4){null==this[_0x285e[1525]]&&(this[_0x285e[1525]]=[]);for(var _0x4fa0x5=1;_0x4fa0x5<this[_0x285e[2994]][_0x285e[67]]-1;_0x4fa0x5++){if(null!=this[_0x285e[2994]][_0x4fa0x5]){if(null!=this[_0x285e[2997]][_0x4fa0x5]){var _0x4fa0x9=this[_0x285e[2997]][_0x4fa0x5][_0x285e[235]],_0x4fa0xa=this[_0x285e[2997]][_0x4fa0x5][_0x285e[236]],_0x4fa0x12=this[_0x285e[2994]][_0x4fa0x5][_0x285e[1562]];this[_0x285e[2994]][_0x4fa0x5][_0x285e[252]][_0x285e[124]][_0x285e[187]]=_0x285e[189];this[_0x285e[2994]][_0x4fa0x5][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](_0x4fa0x9-_0x4fa0x12[_0x285e[117]]/2),Math[_0x285e[488]](_0x4fa0xa-_0x4fa0x12[_0x285e[119]]/2),_0x4fa0x12[_0x285e[117]],_0x4fa0x12[_0x285e[119]]);this[_0x285e[2994]][_0x4fa0x5][_0x285e[258]]();this[_0x285e[1525]][_0x4fa0x5-1]=_0x4fa0x4[_0x4fa0x5-1]}else {this[_0x285e[2994]][_0x4fa0x5][_0x285e[515]](),this[_0x285e[2994]][_0x4fa0x5]=null}}}}};mxEdgeHandler[_0x285e[202]][_0x285e[2932]]=function(){if(this[_0x285e[3014]]){var _0x4fa0x2=mxConstants[_0x285e[3029]],_0x4fa0x2= new mxRectangle(Math[_0x285e[488]](this[_0x285e[685]][_0x285e[235]]-_0x4fa0x2/2),Math[_0x285e[488]](this[_0x285e[685]][_0x285e[236]]-_0x4fa0x2/2),_0x4fa0x2,_0x4fa0x2);this[_0x285e[2972]][_0x285e[1562]]=_0x4fa0x2;this[_0x285e[2972]][_0x285e[258]]()}else {this[_0x285e[253]][_0x285e[1525]]=this[_0x285e[2997]],this[_0x285e[253]][_0x285e[258]]()}};mxEdgeHandler[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[2885]]&&(this[_0x285e[2885]][_0x285e[515]](),this[_0x285e[2885]]=null);null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null);null!=this[_0x285e[2972]]&&(this[_0x285e[2972]][_0x285e[515]](),this[_0x285e[2972]]=null);null!=this[_0x285e[2886]]&&(this[_0x285e[2886]][_0x285e[515]](),this[_0x285e[2886]]=null);if(null!=this[_0x285e[2994]]){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[2994]][_0x285e[67]];_0x4fa0x2++){null!=this[_0x285e[2994]][_0x4fa0x2]&&(this[_0x285e[2994]][_0x4fa0x2][_0x285e[515]](),this[_0x285e[2994]][_0x4fa0x2]=null)}}};function mxElbowEdgeHandler(_0x4fa0x2){mxEdgeHandler[_0x285e[239]](this,_0x4fa0x2)}mxUtils[_0x285e[1284]](mxElbowEdgeHandler,mxEdgeHandler);mxElbowEdgeHandler[_0x285e[202]]= new mxEdgeHandler;mxElbowEdgeHandler[_0x285e[202]][_0x285e[196]]=mxElbowEdgeHandler;mxElbowEdgeHandler[_0x285e[202]][_0x285e[3031]]= !0;mxElbowEdgeHandler[_0x285e[202]][_0x285e[3032]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[3033]:_0x285e[110];mxElbowEdgeHandler[_0x285e[202]][_0x285e[3001]]=function(){var _0x4fa0x2=[],_0x4fa0x3=this[_0x285e[3009]](0);this[_0x285e[3002]](_0x4fa0x3);_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3011]];mxEvent[_0x285e[2733]](_0x4fa0x3[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);_0x4fa0x2[_0x285e[207]](_0x4fa0x3);mxClient[_0x285e[754]]&&_0x4fa0x3[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130]);_0x4fa0x2[_0x285e[207]](this[_0x285e[3034]]());this[_0x285e[1525]][_0x285e[207]]( new mxPoint(0,0));_0x4fa0x3=this[_0x285e[3009]](2);this[_0x285e[3002]](_0x4fa0x3);_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3011]];mxEvent[_0x285e[2733]](_0x4fa0x3[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);_0x4fa0x2[_0x285e[207]](_0x4fa0x3);mxClient[_0x285e[754]]&&_0x4fa0x3[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130]);return _0x4fa0x2};mxElbowEdgeHandler[_0x285e[202]][_0x285e[3034]]=function(){var _0x4fa0x2=this[_0x285e[3009]]();this[_0x285e[3002]](_0x4fa0x2);var _0x4fa0x3=this[_0x285e[3035]]();_0x4fa0x2[_0x285e[252]][_0x285e[124]][_0x285e[270]]=_0x4fa0x3;_0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){!mxEvent[_0x285e[721]](_0x4fa0x2)&&this[_0x285e[3031]]&&(this[_0x285e[1179]][_0x285e[854]](this[_0x285e[724]][_0x285e[246]],_0x4fa0x2),mxEvent[_0x285e[722]](_0x4fa0x2))});mxEvent[_0x285e[2733]](_0x4fa0x2[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]],null,null,null,_0x4fa0x3);this[_0x285e[1179]][_0x285e[2662]](this[_0x285e[724]][_0x285e[246]])||(_0x4fa0x2[_0x285e[252]][_0x285e[124]][_0x285e[495]]=_0x285e[130]);return _0x4fa0x2};mxElbowEdgeHandler[_0x285e[202]][_0x285e[3035]]=function(){return this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2294]]]==mxEdgeStyle[_0x285e[2570]]||this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2294]]]==mxConstants[_0x285e[3036]]||(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2294]]]==mxEdgeStyle[_0x285e[2568]]||this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2294]]]==mxConstants[_0x285e[3037]])&&this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2231]]]==mxConstants[_0x285e[2232]]?_0x285e[3038]:_0x285e[3039]};mxElbowEdgeHandler[_0x285e[202]][_0x285e[2597]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=this[_0x285e[2994]]&&null!=this[_0x285e[2994]][1]&&(_0x4fa0x2==this[_0x285e[2994]][1][_0x285e[252]]||_0x4fa0x2[_0x285e[265]]==this[_0x285e[2994]][1][_0x285e[252]])){_0x4fa0x3=this[_0x285e[3032]],_0x4fa0x3=mxResources[_0x285e[203]](_0x4fa0x3)||_0x4fa0x3};return _0x4fa0x3};mxElbowEdgeHandler[_0x285e[202]][_0x285e[2196]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[518]](),_0x4fa0x5=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[512]](),_0x4fa0x9=this[_0x285e[724]][_0x285e[2078]];_0x4fa0x3&&(_0x4fa0x2[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[235]]),_0x4fa0x2[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x2[_0x285e[236]]));_0x4fa0x2[_0x285e[235]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[235]]/_0x4fa0x4-_0x4fa0x5[_0x285e[235]]-_0x4fa0x9[_0x285e[235]]);_0x4fa0x2[_0x285e[236]]=Math[_0x285e[488]](_0x4fa0x2[_0x285e[236]]/_0x4fa0x4-_0x4fa0x5[_0x285e[236]]-_0x4fa0x9[_0x285e[236]])};mxElbowEdgeHandler[_0x285e[202]][_0x285e[3030]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1721]](this[_0x285e[724]][_0x285e[246]])[_0x285e[1525]],_0x4fa0x4=null!=_0x4fa0x4?_0x4fa0x4[0]:null,_0x4fa0x4=null==_0x4fa0x4? new mxPoint(_0x4fa0x2[_0x285e[235]]+(_0x4fa0x3[_0x285e[235]]-_0x4fa0x2[_0x285e[235]])/2,_0x4fa0x2[_0x285e[236]]+(_0x4fa0x3[_0x285e[236]]-_0x4fa0x2[_0x285e[236]])/2): new mxPoint(this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]]*(_0x4fa0x4[_0x285e[235]]+this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]][_0x285e[235]]+this[_0x285e[724]][_0x285e[2078]][_0x285e[235]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]]*(_0x4fa0x4[_0x285e[236]]+this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]][_0x285e[236]]+this[_0x285e[724]][_0x285e[2078]][_0x285e[236]])),_0x4fa0x5=this[_0x285e[2994]][1][_0x285e[1562]],_0x4fa0x9=_0x4fa0x5[_0x285e[117]],_0x4fa0x5=_0x4fa0x5[_0x285e[119]];null==this[_0x285e[2959]]&&(_0x4fa0x5=_0x4fa0x9=mxConstants[_0x285e[2974]]);var _0x4fa0xa= new mxRectangle(Math[_0x285e[488]](_0x4fa0x4[_0x285e[235]]-_0x4fa0x9/2),Math[_0x285e[488]](_0x4fa0x4[_0x285e[236]]-_0x4fa0x5/2),_0x4fa0x9,_0x4fa0x5);null==this[_0x285e[2959]]&&(_0x285e[188]!=this[_0x285e[2972]][_0x285e[252]][_0x285e[124]][_0x285e[187]]&&mxUtils[_0x285e[1825]](_0x4fa0xa,this[_0x285e[2972]][_0x285e[1562]]))&&(_0x4fa0x9+=3,_0x4fa0x5+=3,_0x4fa0xa= new mxRectangle(Math[_0x285e[488]](_0x4fa0x4[_0x285e[235]]-_0x4fa0x9/2),Math[_0x285e[488]](_0x4fa0x4[_0x285e[236]]-_0x4fa0x5/2),_0x4fa0x9,_0x4fa0x5));this[_0x285e[2994]][1][_0x285e[1562]]=_0x4fa0xa;this[_0x285e[2994]][1][_0x285e[258]]()};function mxEdgeSegmentHandler(_0x4fa0x2){mxEdgeHandler[_0x285e[239]](this,_0x4fa0x2)}mxUtils[_0x285e[1284]](mxEdgeSegmentHandler,mxEdgeHandler);mxEdgeSegmentHandler[_0x285e[202]]= new mxElbowEdgeHandler;mxEdgeSegmentHandler[_0x285e[202]][_0x285e[196]]=mxEdgeSegmentHandler;mxEdgeSegmentHandler[_0x285e[202]][_0x285e[3018]]=function(_0x4fa0x2){if(this[_0x285e[729]]||this[_0x285e[3013]]){return mxElbowEdgeHandler[_0x285e[202]][_0x285e[3018]][_0x285e[183]](this,arguments)};this[_0x285e[2196]](_0x4fa0x2,!1);var _0x4fa0x3=this[_0x285e[724]][_0x285e[439]],_0x4fa0x4=_0x4fa0x3[0][_0x285e[238]]();this[_0x285e[2196]](_0x4fa0x4,!1);for(var _0x4fa0x5=[],_0x4fa0x9=1;_0x4fa0x9<_0x4fa0x3[_0x285e[67]];_0x4fa0x9++){var _0x4fa0xa=_0x4fa0x3[_0x4fa0x9][_0x285e[238]]();this[_0x285e[2196]](_0x4fa0xa,!1);_0x4fa0x9==this[_0x285e[1983]]&&(_0x4fa0x4[_0x285e[235]]==_0x4fa0xa[_0x285e[235]]?(_0x4fa0x4[_0x285e[235]]=_0x4fa0x2[_0x285e[235]],_0x4fa0xa[_0x285e[235]]=_0x4fa0x2[_0x285e[235]]):(_0x4fa0x4[_0x285e[236]]=_0x4fa0x2[_0x285e[236]],_0x4fa0xa[_0x285e[236]]=_0x4fa0x2[_0x285e[236]]));_0x4fa0x9<_0x4fa0x3[_0x285e[67]]-1&&_0x4fa0x5[_0x285e[207]](_0x4fa0xa);_0x4fa0x4=_0x4fa0xa};if(1==_0x4fa0x5[_0x285e[67]]){if(_0x4fa0x4=this[_0x285e[724]][_0x285e[441]],_0x4fa0x9=this[_0x285e[724]][_0x285e[2089]](!0),_0x4fa0xa=this[_0x285e[724]][_0x285e[2089]](!1),null!=_0x4fa0xa&null!=_0x4fa0x9){var _0x4fa0x12=this[_0x285e[724]][_0x285e[2078]][_0x285e[235]],_0x4fa0x13=this[_0x285e[724]][_0x285e[2078]][_0x285e[236]];mxUtils[_0x285e[442]](_0x4fa0xa,_0x4fa0x5[0][_0x285e[235]]+_0x4fa0x12,_0x4fa0x5[0][_0x285e[236]]+_0x4fa0x13)?_0x4fa0x3[1][_0x285e[236]]==_0x4fa0x3[2][_0x285e[236]]?_0x4fa0x5[0][_0x285e[236]]=_0x4fa0x4[_0x285e[2228]](_0x4fa0x9)-_0x4fa0x13:_0x4fa0x5[0][_0x285e[235]]=_0x4fa0x4[_0x285e[2230]](_0x4fa0x9)-_0x4fa0x12:mxUtils[_0x285e[442]](_0x4fa0x9,_0x4fa0x5[0][_0x285e[235]]+_0x4fa0x12,_0x4fa0x5[0][_0x285e[236]]+_0x4fa0x13)&&(_0x4fa0x3[1][_0x285e[236]]==_0x4fa0x3[0][_0x285e[236]]?_0x4fa0x5[0][_0x285e[236]]=_0x4fa0x4[_0x285e[2228]](_0x4fa0xa)-_0x4fa0x13:_0x4fa0x5[0][_0x285e[235]]=_0x4fa0x4[_0x285e[2230]](_0x4fa0xa)-_0x4fa0x12)}}else {0==_0x4fa0x5[_0x285e[67]]&&(_0x4fa0x5=[_0x4fa0x2])};return _0x4fa0x5};mxEdgeSegmentHandler[_0x285e[202]][_0x285e[3001]]=function(){var _0x4fa0x2=[],_0x4fa0x3=this[_0x285e[3009]](0);this[_0x285e[3002]](_0x4fa0x3);_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3011]];mxEvent[_0x285e[2733]](_0x4fa0x3[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);_0x4fa0x2[_0x285e[207]](_0x4fa0x3);mxClient[_0x285e[754]]&&_0x4fa0x3[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130]);var _0x4fa0x4=this[_0x285e[724]][_0x285e[439]];if(this[_0x285e[1179]][_0x285e[2662]](this[_0x285e[724]][_0x285e[246]])){null==this[_0x285e[1525]]&&(this[_0x285e[1525]]=[]);for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4[_0x285e[67]]-1;_0x4fa0x5++){_0x4fa0x3=this[_0x285e[3034]](),_0x4fa0x2[_0x285e[207]](_0x4fa0x3),_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[270]]=0==_0x4fa0x4[_0x4fa0x5][_0x285e[235]]-_0x4fa0x4[_0x4fa0x5+1][_0x285e[235]]?_0x285e[3039]:_0x285e[3038],this[_0x285e[1525]][_0x285e[207]]( new mxPoint(0,0)),mxClient[_0x285e[754]]&&_0x4fa0x3[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130])}};_0x4fa0x3=this[_0x285e[3009]](_0x4fa0x4[_0x285e[67]]);this[_0x285e[3002]](_0x4fa0x3);_0x4fa0x3[_0x285e[252]][_0x285e[124]][_0x285e[270]]=mxConstants[_0x285e[3011]];mxEvent[_0x285e[2733]](_0x4fa0x3[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);_0x4fa0x2[_0x285e[207]](_0x4fa0x3);mxClient[_0x285e[754]]&&_0x4fa0x3[_0x285e[252]][_0x285e[57]](_0x285e[1377],_0x285e[130]);return _0x4fa0x2};mxEdgeSegmentHandler[_0x285e[202]][_0x285e[258]]=function(){this[_0x285e[802]]();mxEdgeHandler[_0x285e[202]][_0x285e[258]][_0x285e[183]](this,arguments)};mxEdgeSegmentHandler[_0x285e[202]][_0x285e[802]]=function(){if(null!=this[_0x285e[2994]]){for(var _0x4fa0x2=0;_0x4fa0x2<this[_0x285e[2994]][_0x285e[67]];_0x4fa0x2++){null!=this[_0x285e[2994]][_0x4fa0x2]&&(this[_0x285e[2994]][_0x4fa0x2][_0x285e[515]](),this[_0x285e[2994]][_0x4fa0x2]=null)};this[_0x285e[2994]]=this[_0x285e[3001]]()}};mxEdgeSegmentHandler[_0x285e[202]][_0x285e[3030]]=function(_0x4fa0x2,_0x4fa0x3){if(this[_0x285e[1179]][_0x285e[2662]](this[_0x285e[724]][_0x285e[246]])){var _0x4fa0x4=mxConstants[_0x285e[2974]],_0x4fa0x5=this[_0x285e[724]][_0x285e[439]];if(null!=_0x4fa0x5&&1<_0x4fa0x5[_0x285e[67]]){for(var _0x4fa0x9=0;_0x4fa0x9<this[_0x285e[724]][_0x285e[439]][_0x285e[67]]-1;_0x4fa0x9++){if(null!=this[_0x285e[2994]][_0x4fa0x9+1]){_0x4fa0x2=_0x4fa0x5[_0x4fa0x9];_0x4fa0x3=_0x4fa0x5[_0x4fa0x9+1];var _0x4fa0xa= new mxPoint(_0x4fa0x2[_0x285e[235]]+(_0x4fa0x3[_0x285e[235]]-_0x4fa0x2[_0x285e[235]])/2,_0x4fa0x2[_0x285e[236]]+(_0x4fa0x3[_0x285e[236]]-_0x4fa0x2[_0x285e[236]])/2);this[_0x285e[2994]][_0x4fa0x9+1][_0x285e[1562]]= new mxRectangle(Math[_0x285e[488]](_0x4fa0xa[_0x285e[235]]-_0x4fa0x4/2),Math[_0x285e[488]](_0x4fa0xa[_0x285e[236]]-_0x4fa0x4/2),_0x4fa0x4,_0x4fa0x4);this[_0x285e[2994]][_0x4fa0x9+1][_0x285e[258]]()}}}}};mxEdgeSegmentHandler[_0x285e[202]][_0x285e[3023]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=[];var _0x4fa0x4=this[_0x285e[2997]];if(1<_0x4fa0x4[_0x285e[67]]){for(var _0x4fa0x5=_0x4fa0x4[0],_0x4fa0x9=_0x4fa0x4[1],_0x4fa0xa=2;_0x4fa0xa<_0x4fa0x4[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x4[_0x4fa0xa];if((Math[_0x285e[488]](_0x4fa0x5[_0x285e[235]])!=Math[_0x285e[488]](_0x4fa0x9[_0x285e[235]])||Math[_0x285e[488]](_0x4fa0x9[_0x285e[235]])!=Math[_0x285e[488]](_0x4fa0x12[_0x285e[235]]))&&(Math[_0x285e[488]](_0x4fa0x5[_0x285e[236]])!=Math[_0x285e[488]](_0x4fa0x9[_0x285e[236]])||Math[_0x285e[488]](_0x4fa0x9[_0x285e[236]])!=Math[_0x285e[488]](_0x4fa0x12[_0x285e[236]]))){_0x4fa0x5=_0x4fa0x9,_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),this[_0x285e[2196]](_0x4fa0x9,!1),_0x4fa0x3[_0x285e[207]](_0x4fa0x9)};_0x4fa0x9=_0x4fa0x12}};mxElbowEdgeHandler[_0x285e[202]][_0x285e[3023]][_0x285e[183]](this,arguments)};function mxKeyHandler(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[772]]=_0x4fa0x3||document[_0x285e[158]],this[_0x285e[3040]]=[],this[_0x285e[3041]]=[],this[_0x285e[3042]]=[],this[_0x285e[3043]]=[],mxEvent[_0x285e[169]](this[_0x285e[772]],_0x285e[2123],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[3044]](_0x4fa0x2)})),mxClient[_0x285e[80]]&&mxEvent[_0x285e[169]](window,_0x285e[2428],mxUtils[_0x285e[885]](this,function(){this[_0x285e[515]]()})))}mxKeyHandler[_0x285e[202]][_0x285e[1179]]=null;mxKeyHandler[_0x285e[202]][_0x285e[772]]=null;mxKeyHandler[_0x285e[202]][_0x285e[3040]]=null;mxKeyHandler[_0x285e[202]][_0x285e[3041]]=null;mxKeyHandler[_0x285e[202]][_0x285e[3042]]=null;mxKeyHandler[_0x285e[202]][_0x285e[3043]]=null;mxKeyHandler[_0x285e[202]][_0x285e[984]]= !0;mxKeyHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxKeyHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxKeyHandler[_0x285e[202]][_0x285e[3045]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3040]][_0x4fa0x2]=_0x4fa0x3};mxKeyHandler[_0x285e[202]][_0x285e[3046]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3041]][_0x4fa0x2]=_0x4fa0x3};mxKeyHandler[_0x285e[202]][_0x285e[3047]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3042]][_0x4fa0x2]=_0x4fa0x3};mxKeyHandler[_0x285e[202]][_0x285e[3048]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3043]][_0x4fa0x2]=_0x4fa0x3};mxKeyHandler[_0x285e[202]][_0x285e[775]]=function(_0x4fa0x2){return mxEvent[_0x285e[775]](_0x4fa0x2)};mxKeyHandler[_0x285e[202]][_0x285e[3049]]=function(_0x4fa0x2){return null!=_0x4fa0x2?this[_0x285e[775]](_0x4fa0x2)?mxEvent[_0x285e[774]](_0x4fa0x2)?this[_0x285e[3043]][_0x4fa0x2[_0x285e[2124]]]:this[_0x285e[3042]][_0x4fa0x2[_0x285e[2124]]]:mxEvent[_0x285e[774]](_0x4fa0x2)?this[_0x285e[3041]][_0x4fa0x2[_0x285e[2124]]]:this[_0x285e[3040]][_0x4fa0x2[_0x285e[2124]]]:null};mxKeyHandler[_0x285e[202]][_0x285e[3050]]=function(_0x4fa0x2){_0x4fa0x2=mxEvent[_0x285e[728]](_0x4fa0x2);if(_0x4fa0x2==this[_0x285e[772]]||_0x4fa0x2[_0x285e[265]]==this[_0x285e[772]]||null!=this[_0x285e[1179]][_0x285e[2347]]&&_0x4fa0x2==this[_0x285e[1179]][_0x285e[2347]][_0x285e[126]]){return !0};for(;null!=_0x4fa0x2;){if(_0x4fa0x2==this[_0x285e[1179]][_0x285e[526]]){return !0};_0x4fa0x2=_0x4fa0x2[_0x285e[265]]};return !1};mxKeyHandler[_0x285e[202]][_0x285e[3044]]=function(_0x4fa0x2){if(this[_0x285e[1179]][_0x285e[994]]()&&!mxEvent[_0x285e[721]](_0x4fa0x2)&&this[_0x285e[3050]](_0x4fa0x2)&&this[_0x285e[994]]()){if(27==_0x4fa0x2[_0x285e[2124]]){this[_0x285e[859]](_0x4fa0x2)}else {if(!this[_0x285e[1179]][_0x285e[2203]]()){var _0x4fa0x3=this[_0x285e[3049]](_0x4fa0x2);null!=_0x4fa0x3&&(_0x4fa0x3(_0x4fa0x2),mxEvent[_0x285e[722]](_0x4fa0x2))}}}};mxKeyHandler[_0x285e[202]][_0x285e[859]]=function(_0x4fa0x2){this[_0x285e[1179]][_0x285e[2608]]()&&this[_0x285e[1179]][_0x285e[859]](_0x4fa0x2)};mxKeyHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[772]]=null};function mxTooltipHandler(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[1140]]=_0x4fa0x3||500,this[_0x285e[1179]][_0x285e[1133]](this))}mxTooltipHandler[_0x285e[202]][_0x285e[931]]=10005;mxTooltipHandler[_0x285e[202]][_0x285e[1179]]=null;mxTooltipHandler[_0x285e[202]][_0x285e[1140]]=null;mxTooltipHandler[_0x285e[202]][_0x285e[3051]]= !1;mxTooltipHandler[_0x285e[202]][_0x285e[984]]= !0;mxTooltipHandler[_0x285e[202]][_0x285e[994]]=function(){return this[_0x285e[984]]};mxTooltipHandler[_0x285e[202]][_0x285e[995]]=function(_0x4fa0x2){this[_0x285e[984]]=_0x4fa0x2};mxTooltipHandler[_0x285e[202]][_0x285e[2277]]=function(){return this[_0x285e[3051]]};mxTooltipHandler[_0x285e[202]][_0x285e[3052]]=function(_0x4fa0x2){this[_0x285e[3051]]=_0x4fa0x2};mxTooltipHandler[_0x285e[202]][_0x285e[176]]=function(){null!=document[_0x285e[112]]&&(this[_0x285e[485]]=document[_0x285e[55]](_0x285e[485]),this[_0x285e[485]][_0x285e[926]]=_0x285e[3053],this[_0x285e[485]][_0x285e[124]][_0x285e[187]]=_0x285e[188],this[_0x285e[485]][_0x285e[124]][_0x285e[931]]=this[_0x285e[931]],document[_0x285e[112]][_0x285e[62]](this[_0x285e[485]]),mxEvent[_0x285e[169]](this[_0x285e[485]],_0x285e[751],mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[3054]]()})))};mxTooltipHandler[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[862]](_0x4fa0x3,!1);this[_0x285e[3054]]()};mxTooltipHandler[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){if(_0x4fa0x3[_0x285e[730]]()!=this[_0x285e[1217]]||_0x4fa0x3[_0x285e[732]]()!=this[_0x285e[1218]]){this[_0x285e[862]](_0x4fa0x3,!0),(this[_0x285e[2277]]()||_0x4fa0x3[_0x285e[248]]()!=this[_0x285e[724]]||_0x4fa0x3[_0x285e[728]]()!=this[_0x285e[252]]&&(!this[_0x285e[3055]]||null!=_0x4fa0x3[_0x285e[248]]()&&this[_0x285e[3055]]==(_0x4fa0x3[_0x285e[729]](_0x4fa0x3[_0x285e[248]]()[_0x285e[253]])||!_0x4fa0x3[_0x285e[729]](_0x4fa0x3[_0x285e[248]]()[_0x285e[963]]))))&&this[_0x285e[3054]]()};this[_0x285e[1217]]=_0x4fa0x3[_0x285e[730]]();this[_0x285e[1218]]=_0x4fa0x3[_0x285e[732]]()};mxTooltipHandler[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[862]](_0x4fa0x3,!0);this[_0x285e[3054]]()};mxTooltipHandler[_0x285e[202]][_0x285e[3056]]=function(){null!=this[_0x285e[1123]]&&(window[_0x285e[2924]](this[_0x285e[1123]]),this[_0x285e[1123]]=null)};mxTooltipHandler[_0x285e[202]][_0x285e[862]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3056]]();if(_0x4fa0x3&&this[_0x285e[994]]()&&null!=_0x4fa0x2[_0x285e[248]]()&&(null==this[_0x285e[485]]||_0x285e[188]==this[_0x285e[485]][_0x285e[124]][_0x285e[187]])){var _0x4fa0x4=_0x4fa0x2[_0x285e[248]](),_0x4fa0x5=_0x4fa0x2[_0x285e[728]](),_0x4fa0x9=_0x4fa0x2[_0x285e[730]](),_0x4fa0xa=_0x4fa0x2[_0x285e[732]](),_0x4fa0x12=_0x4fa0x2[_0x285e[729]](_0x4fa0x4[_0x285e[253]])||_0x4fa0x2[_0x285e[729]](_0x4fa0x4[_0x285e[963]]);this[_0x285e[1123]]=window[_0x285e[261]](mxUtils[_0x285e[885]](this,function(){if(!this[_0x285e[1179]][_0x285e[2203]]()&&!this[_0x285e[1179]][_0x285e[2316]][_0x285e[1031]]()){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[2595]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa);this[_0x285e[539]](_0x4fa0x2,_0x4fa0x9,_0x4fa0xa);this[_0x285e[724]]=_0x4fa0x4;this[_0x285e[252]]=_0x4fa0x5;this[_0x285e[3055]]=_0x4fa0x12}}),this[_0x285e[1140]])}};mxTooltipHandler[_0x285e[202]][_0x285e[801]]=function(){this[_0x285e[3056]]();this[_0x285e[3054]]()};mxTooltipHandler[_0x285e[202]][_0x285e[3054]]=function(){null!=this[_0x285e[485]]&&(this[_0x285e[485]][_0x285e[124]][_0x285e[187]]=_0x285e[188])};mxTooltipHandler[_0x285e[202]][_0x285e[539]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){null==this[_0x285e[485]]&&this[_0x285e[176]]();var _0x4fa0x5=mxUtils[_0x285e[444]]();this[_0x285e[485]][_0x285e[124]][_0x285e[361]]=_0x4fa0x3+_0x4fa0x5[_0x285e[235]]+_0x285e[168];this[_0x285e[485]][_0x285e[124]][_0x285e[125]]=_0x4fa0x4+mxConstants[_0x285e[560]]+_0x4fa0x5[_0x285e[236]]+_0x285e[168];mxUtils[_0x285e[1331]](_0x4fa0x2)?(this[_0x285e[485]][_0x285e[339]]=_0x285e[110],this[_0x285e[485]][_0x285e[62]](_0x4fa0x2)):this[_0x285e[485]][_0x285e[339]]=_0x4fa0x2[_0x285e[230]](/\n/g,_0x285e[545]);this[_0x285e[485]][_0x285e[124]][_0x285e[187]]=_0x285e[110];mxUtils[_0x285e[933]](this[_0x285e[485]])}};mxTooltipHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[1148]](this);mxEvent[_0x285e[762]](this[_0x285e[485]]);null!=this[_0x285e[485]]&&null!=this[_0x285e[485]][_0x285e[265]]&&this[_0x285e[485]][_0x285e[265]][_0x285e[266]](this[_0x285e[485]]);this[_0x285e[485]]=null};function mxCellTracker(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){mxCellMarker[_0x285e[239]](this,_0x4fa0x2,_0x4fa0x3);this[_0x285e[1179]][_0x285e[1133]](this);null!=_0x4fa0x4&&(this[_0x285e[736]]=_0x4fa0x4);mxClient[_0x285e[80]]&&mxEvent[_0x285e[169]](window,_0x285e[2428],mxUtils[_0x285e[885]](this,function(){this[_0x285e[515]]()}))}mxUtils[_0x285e[1284]](mxCellTracker,mxCellMarker);mxCellTracker[_0x285e[202]][_0x285e[787]]=function(_0x4fa0x2,_0x4fa0x3){};mxCellTracker[_0x285e[202]][_0x285e[788]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[994]]()&&this[_0x285e[2871]](_0x4fa0x3)};mxCellTracker[_0x285e[202]][_0x285e[789]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[862]]()};mxCellTracker[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[2717]]||(this[_0x285e[2717]]= !0,this[_0x285e[1179]][_0x285e[1148]](this),mxCellMarker[_0x285e[202]][_0x285e[515]][_0x285e[183]](this))};function mxCellHighlight(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){null!=_0x4fa0x2&&(this[_0x285e[1179]]=_0x4fa0x2,this[_0x285e[2943]]=null!=_0x4fa0x3?_0x4fa0x3:mxConstants[_0x285e[2854]],this[_0x285e[610]]=null!=_0x4fa0x4?_0x4fa0x4:mxConstants[_0x285e[3057]],this[_0x285e[648]]=null!=_0x4fa0x5?_0x4fa0x5:!1,this[_0x285e[3058]]=mxUtils[_0x285e[885]](this,function(){this[_0x285e[2950]]()}),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE,this[_0x285e[3058]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.TRANSLATE,this[_0x285e[3058]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.SCALE_AND_TRANSLATE,this[_0x285e[3058]]),this[_0x285e[1179]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,this[_0x285e[3058]]),this[_0x285e[2877]]=mxUtils[_0x285e[885]](this,function(){this[_0x285e[801]]()}),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.DOWN,this[_0x285e[2877]]),this[_0x285e[1179]][_0x285e[249]]()[_0x285e[169]](mxEvent.UP,this[_0x285e[2877]]))}mxCellHighlight[_0x285e[202]][_0x285e[3059]]= !1;mxCellHighlight[_0x285e[202]][_0x285e[1179]]= !0;mxCellHighlight[_0x285e[202]][_0x285e[724]]=null;mxCellHighlight[_0x285e[202]][_0x285e[657]]=2;mxCellHighlight[_0x285e[202]][_0x285e[2877]]=null;mxCellHighlight[_0x285e[202]][_0x285e[2828]]=function(_0x4fa0x2){this[_0x285e[2943]]=_0x4fa0x2;null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[1336]]=_0x4fa0x2)};mxCellHighlight[_0x285e[202]][_0x285e[3060]]=function(){this[_0x285e[253]]=this[_0x285e[2156]]();this[_0x285e[2950]]();!this[_0x285e[3059]]&&this[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[285]]!=this[_0x285e[253]][_0x285e[252]]&&this[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[950]](this[_0x285e[253]][_0x285e[252]],this[_0x285e[253]][_0x285e[252]][_0x285e[265]][_0x285e[285]])};mxCellHighlight[_0x285e[202]][_0x285e[2156]]=function(){var _0x4fa0x2=null,_0x4fa0x2=this[_0x285e[1179]][_0x285e[251]][_0x285e[250]](this[_0x285e[724]][_0x285e[246]])? new mxPolyline(this[_0x285e[724]][_0x285e[439]],this[_0x285e[2943]],this[_0x285e[610]]): new mxRectangleShape( new mxRectangle,null,this[_0x285e[2943]],this[_0x285e[610]]);_0x4fa0x2[_0x285e[507]]=this[_0x285e[1179]][_0x285e[507]]!=mxConstants[_0x285e[508]]?mxConstants[_0x285e[1523]]:mxConstants[_0x285e[508]];_0x4fa0x2[_0x285e[176]](this[_0x285e[1179]][_0x285e[249]]()[_0x285e[1524]]());mxEvent[_0x285e[2733]](_0x4fa0x2[_0x285e[252]],this[_0x285e[1179]],this[_0x285e[724]]);_0x4fa0x2[_0x285e[1564]]=0;_0x4fa0x2[_0x285e[1229]]= !1;_0x4fa0x2[_0x285e[1522]]=this[_0x285e[648]];return _0x4fa0x2};mxCellHighlight[_0x285e[202]][_0x285e[2950]]=function(){if(null!=this[_0x285e[724]]&&null!=this[_0x285e[253]]){var _0x4fa0x2=0;this[_0x285e[1179]][_0x285e[251]][_0x285e[250]](this[_0x285e[724]][_0x285e[246]])?this[_0x285e[253]][_0x285e[1525]]=this[_0x285e[724]][_0x285e[439]]:(this[_0x285e[253]][_0x285e[1562]]= new mxRectangle(this[_0x285e[724]][_0x285e[235]]-this[_0x285e[657]],this[_0x285e[724]][_0x285e[236]]-this[_0x285e[657]],this[_0x285e[724]][_0x285e[117]]+2*this[_0x285e[657]],this[_0x285e[724]][_0x285e[119]]+2*this[_0x285e[657]]),_0x4fa0x2=Number(this[_0x285e[724]][_0x285e[124]][mxConstants[_0x285e[2278]]]||_0x285e[468]));null!=this[_0x285e[724]][_0x285e[253]]&&this[_0x285e[253]][_0x285e[1609]](this[_0x285e[724]][_0x285e[253]][_0x285e[1610]]());0!=_0x4fa0x2&&(this[_0x285e[253]][_0x285e[603]]=_0x4fa0x2);this[_0x285e[253]][_0x285e[258]]()}};mxCellHighlight[_0x285e[202]][_0x285e[801]]=function(){this[_0x285e[1016]](null)};mxCellHighlight[_0x285e[202]][_0x285e[1016]]=function(_0x4fa0x2){this[_0x285e[724]]!=_0x4fa0x2&&(null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null),this[_0x285e[724]]=_0x4fa0x2,null!=this[_0x285e[724]]&&this[_0x285e[3060]]())};mxCellHighlight[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[3058]]);this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[3058]]);this[_0x285e[1179]][_0x285e[249]]()[_0x285e[745]](this[_0x285e[2877]]);this[_0x285e[1179]][_0x285e[502]]()[_0x285e[745]](this[_0x285e[2877]]);null!=this[_0x285e[253]]&&(this[_0x285e[253]][_0x285e[515]](),this[_0x285e[253]]=null)};function mxDefaultKeyHandler(_0x4fa0x2){if(null!=_0x4fa0x2){this[_0x285e[3061]]=_0x4fa0x2;this[_0x285e[2458]]= new mxKeyHandler(_0x4fa0x2[_0x285e[1179]]);var _0x4fa0x3=this[_0x285e[2458]][_0x285e[859]];this[_0x285e[2458]][_0x285e[859]]=function(_0x4fa0x4){_0x4fa0x3[_0x285e[183]](this,arguments);_0x4fa0x2[_0x285e[3062]]();_0x4fa0x2[_0x285e[746]]( new mxEventObject(mxEvent.ESCAPE,_0x285e[763],_0x4fa0x4))}}}mxDefaultKeyHandler[_0x285e[202]][_0x285e[3061]]=null;mxDefaultKeyHandler[_0x285e[202]][_0x285e[2458]]=null;mxDefaultKeyHandler[_0x285e[202]][_0x285e[3063]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=mxUtils[_0x285e[885]](this,function(){this[_0x285e[3061]][_0x285e[350]](_0x4fa0x3)});_0x4fa0x4?this[_0x285e[2458]][_0x285e[3047]](_0x4fa0x2,_0x4fa0x5):this[_0x285e[2458]][_0x285e[3045]](_0x4fa0x2,_0x4fa0x5)};mxDefaultKeyHandler[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[2458]][_0x285e[515]]();this[_0x285e[2458]]=null};function mxDefaultPopupMenu(_0x4fa0x2){this[_0x285e[3064]]=_0x4fa0x2}mxDefaultPopupMenu[_0x285e[202]][_0x285e[88]]=null;mxDefaultPopupMenu[_0x285e[202]][_0x285e[3064]]=null;mxDefaultPopupMenu[_0x285e[202]][_0x285e[3065]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){if(null!=this[_0x285e[3064]]){var _0x4fa0x9=this[_0x285e[3066]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5);this[_0x285e[3067]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,this[_0x285e[3064]][_0x285e[285]],null)}};mxDefaultPopupMenu[_0x285e[202]][_0x285e[3067]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12){for(var _0x4fa0x13=!1;null!=_0x4fa0xa;){if(_0x285e[99]==_0x4fa0xa[_0x285e[301]]){var _0x4fa0x14=_0x4fa0xa[_0x285e[284]](_0x285e[3068]);if(null==_0x4fa0x14||_0x4fa0x9[_0x4fa0x14]){var _0x4fa0x14=_0x4fa0xa[_0x285e[284]](_0x285e[3069]),_0x4fa0x14=mxResources[_0x285e[203]](_0x4fa0x14)||_0x4fa0x14,_0x4fa0x15=mxUtils[_0x285e[1545]](mxUtils[_0x285e[329]](_0x4fa0xa)),_0x4fa0x16=_0x4fa0xa[_0x285e[284]](_0x285e[892]),_0x4fa0x17=_0x4fa0xa[_0x285e[284]](_0x285e[2916]),_0x4fa0x18=_0x4fa0xa[_0x285e[284]](_0x285e[3070]);_0x4fa0x13&&(_0x4fa0x3[_0x285e[1051]](_0x4fa0x12),_0x4fa0x13= !1);null!=_0x4fa0x17&&this[_0x285e[88]]&&(_0x4fa0x17=this[_0x285e[88]]+_0x4fa0x17);_0x4fa0x14=this[_0x285e[3071]](_0x4fa0x3,_0x4fa0x2,_0x4fa0x14,_0x4fa0x17,_0x4fa0x15,_0x4fa0x16,_0x4fa0x4,_0x4fa0x12,_0x4fa0x18);this[_0x285e[3067]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa[_0x285e[285]],_0x4fa0x14)}}else {_0x285e[3072]==_0x4fa0xa[_0x285e[301]]&&(_0x4fa0x13= !0)};_0x4fa0xa=_0x4fa0xa[_0x285e[287]]}};mxDefaultPopupMenu[_0x285e[202]][_0x285e[3071]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa,_0x4fa0x12,_0x4fa0x13,_0x4fa0x14){return _0x4fa0x2[_0x285e[1025]](_0x4fa0x4,_0x4fa0x5,function(_0x4fa0x2){_0x285e[279]== typeof _0x4fa0x9&&_0x4fa0x9[_0x285e[239]](_0x4fa0x3,_0x4fa0x3,_0x4fa0x12,_0x4fa0x2);null!=_0x4fa0xa&&_0x4fa0x3[_0x285e[350]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x2)},_0x4fa0x13,_0x4fa0x14)};mxDefaultPopupMenu[_0x285e[202]][_0x285e[3066]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[1179]][_0x285e[502]](),_0x4fa0x9=_0x4fa0x5[_0x285e[262]](_0x4fa0x3),_0x4fa0xa=[];_0x4fa0xa[_0x285e[3073]]=null==_0x4fa0x3;_0x4fa0xa[_0x285e[3074]]=1<_0x4fa0x2[_0x285e[1179]][_0x285e[2694]]();_0x4fa0xa[_0x285e[3075]]=_0x4fa0x5[_0x285e[501]]()!=_0x4fa0x5[_0x285e[1197]](_0x4fa0x2[_0x285e[1179]][_0x285e[902]]());_0x4fa0xa[_0x285e[246]]=null!=_0x4fa0x3;_0x4fa0x5=null!=_0x4fa0x3&&1==_0x4fa0x2[_0x285e[1179]][_0x285e[2694]]();_0x4fa0xa[_0x285e[3076]]=_0x4fa0x5&&0<_0x4fa0x9;_0x4fa0xa[_0x285e[3077]]=_0x4fa0x5&&_0x4fa0x2[_0x285e[1179]][_0x285e[2516]](_0x4fa0x3,!1);_0x4fa0xa[_0x285e[3078]]=_0x4fa0x5&&_0x4fa0x2[_0x285e[1179]][_0x285e[2516]](_0x4fa0x3,!0);_0x4fa0xa[_0x285e[3079]]=_0x4fa0x5&&_0x4fa0x2[_0x285e[1179]][_0x285e[2553]](_0x4fa0x3);_0x4fa0xa[_0x285e[3080]]=_0x4fa0xa[_0x285e[3079]]&&0==_0x4fa0x9;_0x4fa0xa[_0x285e[687]]=_0x4fa0x5&&_0x4fa0x2[_0x285e[1179]][_0x285e[1730]](_0x4fa0x3);_0x4fa0x9=this[_0x285e[3064]][_0x285e[64]](_0x285e[3081]);for(_0x4fa0x5=0;_0x4fa0x5<_0x4fa0x9[_0x285e[67]];_0x4fa0x5++){var _0x4fa0x12=mxUtils[_0x285e[1545]](mxUtils[_0x285e[329]](_0x4fa0x9[_0x4fa0x5])),_0x4fa0x13=_0x4fa0x9[_0x4fa0x5][_0x285e[284]](_0x285e[298]);null!=_0x4fa0x13&&_0x285e[279]== typeof _0x4fa0x12&&(_0x4fa0xa[_0x4fa0x13]=_0x4fa0x12(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4))};return _0x4fa0xa};function mxDefaultToolbar(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3061]]=_0x4fa0x3;null!=_0x4fa0x2&&null!=_0x4fa0x3&&this[_0x285e[176]](_0x4fa0x2)}mxDefaultToolbar[_0x285e[202]][_0x285e[3061]]=null;mxDefaultToolbar[_0x285e[202]][_0x285e[3082]]=null;mxDefaultToolbar[_0x285e[202]][_0x285e[2877]]=null;mxDefaultToolbar[_0x285e[202]][_0x285e[657]]=4;mxDefaultToolbar[_0x285e[202]][_0x285e[2804]]= !1;mxDefaultToolbar[_0x285e[202]][_0x285e[176]]=function(_0x4fa0x2){null!=_0x4fa0x2&&(this[_0x285e[3082]]= new mxToolbar(_0x4fa0x2),this[_0x285e[3082]][_0x285e[169]](mxEvent.SELECT,mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x4[_0x285e[720]](_0x285e[279]);this[_0x285e[3061]][_0x285e[3083]]=null!=_0x4fa0x5?mxUtils[_0x285e[885]](this,function(){_0x4fa0x5[_0x285e[183]](this,arguments);this[_0x285e[3082]][_0x285e[1050]]()}):null})),this[_0x285e[2877]]=mxUtils[_0x285e[885]](this,function(){null!=this[_0x285e[3082]]&&this[_0x285e[3082]][_0x285e[1050]](!0)}),this[_0x285e[3061]][_0x285e[1179]][_0x285e[169]](mxEvent.DOUBLE_CLICK,this[_0x285e[2877]]),this[_0x285e[3061]][_0x285e[169]](mxEvent.ESCAPE,this[_0x285e[2877]]))};mxDefaultToolbar[_0x285e[202]][_0x285e[1025]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=mxUtils[_0x285e[885]](this,function(){null!=_0x4fa0x4&&0<_0x4fa0x4[_0x285e[67]]&&this[_0x285e[3061]][_0x285e[350]](_0x4fa0x4)});return this[_0x285e[3082]][_0x285e[1025]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0x5)};mxDefaultToolbar[_0x285e[202]][_0x285e[1051]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2||mxClient[_0x285e[88]]+_0x285e[3084];this[_0x285e[3082]][_0x285e[1051]](_0x4fa0x2)};mxDefaultToolbar[_0x285e[202]][_0x285e[970]]=function(){return this[_0x285e[3082]][_0x285e[970]]()};mxDefaultToolbar[_0x285e[202]][_0x285e[1038]]=function(_0x4fa0x2){return this[_0x285e[3082]][_0x285e[1038]](_0x4fa0x2)};mxDefaultToolbar[_0x285e[202]][_0x285e[3085]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=mxUtils[_0x285e[885]](this,function(){this[_0x285e[3061]][_0x285e[350]](_0x4fa0x4)});this[_0x285e[972]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x5)};mxDefaultToolbar[_0x285e[202]][_0x285e[972]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return this[_0x285e[3082]][_0x285e[972]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)};mxDefaultToolbar[_0x285e[202]][_0x285e[1048]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){var _0x4fa0xa=mxUtils[_0x285e[885]](this,function(){this[_0x285e[3061]][_0x285e[3086]](_0x4fa0x4);null!=_0x4fa0x9&&_0x4fa0x9(this[_0x285e[3061]])});return this[_0x285e[3082]][_0x285e[1042]](_0x4fa0x2,_0x4fa0x3,_0x4fa0xa,_0x4fa0x5)};mxDefaultToolbar[_0x285e[202]][_0x285e[3087]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9,_0x4fa0xa){var _0x4fa0x12=function(){return _0x285e[279]== typeof _0x4fa0x4?_0x4fa0x4():null!=_0x4fa0x4?_0x4fa0x4[_0x285e[238]]():null},_0x4fa0x13=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){_0x285e[279]== typeof _0x4fa0x9?_0x4fa0x9(this[_0x285e[3061]],_0x4fa0x12(),_0x4fa0x2,_0x4fa0x3):this[_0x285e[1008]](_0x4fa0x12(),_0x4fa0x2,_0x4fa0x3);this[_0x285e[3082]][_0x285e[1050]]();mxEvent[_0x285e[722]](_0x4fa0x2)});_0x4fa0x2=this[_0x285e[3082]][_0x285e[1048]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x13,_0x4fa0x5,null,_0x4fa0xa);this[_0x285e[3088]](_0x4fa0x2,function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x13(_0x4fa0x3,_0x4fa0x4)});return _0x4fa0x2};mxDefaultToolbar[_0x285e[202]][_0x285e[1008]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[3061]][_0x285e[1179]],_0x4fa0x9=_0x4fa0x5[_0x285e[502]]();if(null==_0x4fa0x4||_0x4fa0x9[_0x285e[250]](_0x4fa0x4)||!this[_0x285e[2804]]||!_0x4fa0x5[_0x285e[2565]](_0x4fa0x4)){for(;null!=_0x4fa0x4&&!_0x4fa0x5[_0x285e[2685]](_0x4fa0x4,[_0x4fa0x2],_0x4fa0x3);){_0x4fa0x4=_0x4fa0x9[_0x285e[1197]](_0x4fa0x4)};this[_0x285e[1937]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)}else {this[_0x285e[807]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)}};mxDefaultToolbar[_0x285e[202]][_0x285e[1937]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[3061]][_0x285e[1179]];if(_0x4fa0x5[_0x285e[2621]](_0x4fa0x2)){var _0x4fa0x9=mxEvent[_0x285e[731]](_0x4fa0x3),_0x4fa0xa=mxEvent[_0x285e[733]](_0x4fa0x3),_0x4fa0x9=mxUtils[_0x285e[2196]](_0x4fa0x5[_0x285e[526]],_0x4fa0x9,_0x4fa0xa);return _0x4fa0x5[_0x285e[2655]]()&&_0x4fa0x5[_0x285e[2686]](_0x4fa0x4,[_0x4fa0x2],_0x4fa0x3)?_0x4fa0x5[_0x285e[853]](_0x4fa0x4,[_0x4fa0x2],null,_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]]):this[_0x285e[3061]][_0x285e[817]](_0x4fa0x4,_0x4fa0x2,_0x4fa0x9[_0x285e[235]],_0x4fa0x9[_0x285e[236]])};return null};mxDefaultToolbar[_0x285e[202]][_0x285e[807]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=this[_0x285e[3061]][_0x285e[1179]];var _0x4fa0x5=_0x4fa0x3[_0x285e[502]]();if(null!=_0x4fa0x4&&_0x4fa0x3[_0x285e[2565]](_0x4fa0x2)&&_0x4fa0x3[_0x285e[2581]](null,_0x4fa0x4,_0x4fa0x2)){var _0x4fa0x9=null;_0x4fa0x5[_0x285e[473]]();try{var _0x4fa0xa=_0x4fa0x5[_0x285e[1721]](_0x4fa0x4),_0x4fa0x12=_0x4fa0x5[_0x285e[1721]](_0x4fa0x2)[_0x285e[238]]();_0x4fa0x12[_0x285e[235]]=_0x4fa0xa[_0x285e[235]]+(_0x4fa0xa[_0x285e[117]]-_0x4fa0x12[_0x285e[117]])/2;_0x4fa0x12[_0x285e[236]]=_0x4fa0xa[_0x285e[236]]+(_0x4fa0xa[_0x285e[119]]-_0x4fa0x12[_0x285e[119]])/2;var _0x4fa0x13=this[_0x285e[657]]*_0x4fa0x3[_0x285e[1020]],_0x4fa0x14=20*_0x4fa0x5[_0x285e[1962]](_0x4fa0x4,!0);this[_0x285e[3061]][_0x285e[3089]]?_0x4fa0x12[_0x285e[235]]+=(_0x4fa0x12[_0x285e[117]]+_0x4fa0xa[_0x285e[117]])/2+_0x4fa0x13+_0x4fa0x14:_0x4fa0x12[_0x285e[236]]+=(_0x4fa0x12[_0x285e[119]]+_0x4fa0xa[_0x285e[119]])/2+_0x4fa0x13+_0x4fa0x14;_0x4fa0x2[_0x285e[1724]](_0x4fa0x12);var _0x4fa0x15=_0x4fa0x5[_0x285e[1197]](_0x4fa0x4);_0x4fa0x3[_0x285e[2103]](_0x4fa0x2,_0x4fa0x15);_0x4fa0x3[_0x285e[2509]](_0x4fa0x2);_0x4fa0x9=this[_0x285e[3061]][_0x285e[2503]](_0x4fa0x4,_0x4fa0x2);if(null==_0x4fa0x5[_0x285e[1721]](_0x4fa0x9)){var _0x4fa0x16= new mxGeometry;_0x4fa0x16[_0x285e[1500]]= !0;_0x4fa0x5[_0x285e[1724]](_0x4fa0x9,_0x4fa0x16)};_0x4fa0x3[_0x285e[2504]](_0x4fa0x9,_0x4fa0x15,_0x4fa0x4,_0x4fa0x2)}finally{_0x4fa0x5[_0x285e[476]]()};_0x4fa0x3[_0x285e[904]]([_0x4fa0x2,_0x4fa0x9]);_0x4fa0x3[_0x285e[2564]](_0x4fa0x2)}};mxDefaultToolbar[_0x285e[202]][_0x285e[3088]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=document[_0x285e[55]](_0x285e[466]);_0x4fa0x4[_0x285e[57]](_0x285e[390],_0x4fa0x2[_0x285e[284]](_0x285e[390]));var _0x4fa0x5=mxUtils[_0x285e[885]](this,function(_0x4fa0x9){_0x4fa0x4[_0x285e[124]][_0x285e[117]]=2*_0x4fa0x2[_0x285e[359]]+_0x285e[168];_0x4fa0x4[_0x285e[124]][_0x285e[119]]=2*_0x4fa0x2[_0x285e[167]]+_0x285e[168];mxUtils[_0x285e[3090]](_0x4fa0x2,this[_0x285e[3061]][_0x285e[1179]],_0x4fa0x3,_0x4fa0x4);mxEvent[_0x285e[745]](_0x4fa0x4,_0x285e[219],_0x4fa0x5)});mxClient[_0x285e[80]]?_0x4fa0x5():mxEvent[_0x285e[169]](_0x4fa0x4,_0x285e[219],_0x4fa0x5)};mxDefaultToolbar[_0x285e[202]][_0x285e[515]]=function(){null!=this[_0x285e[2877]]&&(this[_0x285e[3061]][_0x285e[1179]][_0x285e[745]](_0x285e[760],this[_0x285e[2877]]),this[_0x285e[3061]][_0x285e[745]](_0x285e[859],this[_0x285e[2877]]),this[_0x285e[2877]]=null);null!=this[_0x285e[3082]]&&(this[_0x285e[3082]][_0x285e[515]](),this[_0x285e[3082]]=null)};function mxEditor(_0x4fa0x2){this[_0x285e[3091]]=[];this[_0x285e[3092]]();if(null!=document[_0x285e[112]]){this[_0x285e[3093]]=[];this[_0x285e[3094]]= new mxDefaultPopupMenu;this[_0x285e[3095]]= new mxUndoManager;this[_0x285e[1179]]=this[_0x285e[3096]]();this[_0x285e[3082]]=this[_0x285e[3097]]();this[_0x285e[3098]]= new mxDefaultKeyHandler(this);this[_0x285e[3099]](_0x4fa0x2);this[_0x285e[1179]][_0x285e[2180]]=this[_0x285e[3100]];!mxClient[_0x285e[3101]]&&null!=this[_0x285e[1056]]&&(this[_0x285e[812]]=this[_0x285e[3102]]());if(null!=this[_0x285e[1987]]){this[_0x285e[1987]]()};mxClient[_0x285e[80]]&&mxEvent[_0x285e[169]](window,_0x285e[2428],mxUtils[_0x285e[885]](this,function(){this[_0x285e[515]]()}))}}mxLoadResources&&mxResources[_0x285e[99]](mxClient[_0x285e[86]]+_0x285e[3103]);mxEditor[_0x285e[202]]= new mxEventSource;mxEditor[_0x285e[202]][_0x285e[196]]=mxEditor;mxEditor[_0x285e[202]][_0x285e[3104]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[3105]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3106]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[3107]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3108]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[3109]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3110]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[716]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3111]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[3112]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3113]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2719]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[3114]]=_0x285e[130]!=mxClient[_0x285e[90]]?_0x285e[2136]:_0x285e[110];mxEditor[_0x285e[202]][_0x285e[2136]]=null;mxEditor[_0x285e[202]][_0x285e[1179]]=null;mxEditor[_0x285e[202]][_0x285e[2720]]=null;mxEditor[_0x285e[202]][_0x285e[3082]]=null;mxEditor[_0x285e[202]][_0x285e[812]]=null;mxEditor[_0x285e[202]][_0x285e[879]]=null;mxEditor[_0x285e[202]][_0x285e[3094]]=null;mxEditor[_0x285e[202]][_0x285e[3095]]=null;mxEditor[_0x285e[202]][_0x285e[3098]]=null;mxEditor[_0x285e[202]][_0x285e[3091]]=null;mxEditor[_0x285e[202]][_0x285e[3115]]=_0x285e[1061];mxEditor[_0x285e[202]][_0x285e[3116]]= !1;mxEditor[_0x285e[202]][_0x285e[1157]]= !0;mxEditor[_0x285e[202]][_0x285e[3083]]=null;mxEditor[_0x285e[202]][_0x285e[3117]]= !1;mxEditor[_0x285e[202]][_0x285e[3118]]=null;mxEditor[_0x285e[202]][_0x285e[2075]]=null;mxEditor[_0x285e[202]][_0x285e[3119]]=null;mxEditor[_0x285e[202]][_0x285e[3120]]=null;mxEditor[_0x285e[202]][_0x285e[3121]]=null;mxEditor[_0x285e[202]][_0x285e[3122]]=null;mxEditor[_0x285e[202]][_0x285e[1069]]=_0x285e[336];mxEditor[_0x285e[202]][_0x285e[3123]]=_0x285e[338];mxEditor[_0x285e[202]][_0x285e[1070]]= !0;mxEditor[_0x285e[202]][_0x285e[3124]]=null;mxEditor[_0x285e[202]][_0x285e[3125]]=null;mxEditor[_0x285e[202]][_0x285e[1056]]=null;mxEditor[_0x285e[202]][_0x285e[1058]]=null;mxEditor[_0x285e[202]][_0x285e[1057]]=null;mxEditor[_0x285e[202]][_0x285e[3089]]= !1;mxEditor[_0x285e[202]][_0x285e[3126]]= !1;mxEditor[_0x285e[202]][_0x285e[3127]]=0;mxEditor[_0x285e[202]][_0x285e[3128]]= !1;mxEditor[_0x285e[202]][_0x285e[3129]]= !1;mxEditor[_0x285e[202]][_0x285e[3093]]=null;mxEditor[_0x285e[202]][_0x285e[3130]]=0;mxEditor[_0x285e[202]][_0x285e[3100]]=_0x285e[604];mxEditor[_0x285e[202]][_0x285e[3112]]=null;mxEditor[_0x285e[202]][_0x285e[3131]]=null;mxEditor[_0x285e[202]][_0x285e[3132]]=20;mxEditor[_0x285e[202]][_0x285e[2719]]=null;mxEditor[_0x285e[202]][_0x285e[3133]]=null;mxEditor[_0x285e[202]][_0x285e[3134]]=null;mxEditor[_0x285e[202]][_0x285e[3135]]=300;mxEditor[_0x285e[202]][_0x285e[3136]]=260;mxEditor[_0x285e[202]][_0x285e[3137]]=240;mxEditor[_0x285e[202]][_0x285e[3138]]=null;mxEditor[_0x285e[202]][_0x285e[3139]]= !1;mxEditor[_0x285e[202]][_0x285e[3140]]= !1;mxEditor[_0x285e[202]][_0x285e[2113]]= !1;mxEditor[_0x285e[202]][_0x285e[2133]]=function(){return this[_0x285e[2113]]};mxEditor[_0x285e[202]][_0x285e[2128]]=function(_0x4fa0x2){this[_0x285e[2113]]=_0x4fa0x2};mxEditor[_0x285e[202]][_0x285e[3092]]=function(){this[_0x285e[3071]](_0x285e[815],function(_0x4fa0x2){_0x4fa0x2[_0x285e[815]]()});this[_0x285e[3071]](_0x285e[540],function(_0x4fa0x2){( new mxPrintPreview(_0x4fa0x2[_0x285e[1179]],1))[_0x285e[392]]()});this[_0x285e[3071]](_0x285e[539],function(_0x4fa0x2){mxUtils[_0x285e[539]](_0x4fa0x2[_0x285e[1179]],null,10,10)});this[_0x285e[3071]](_0x285e[3141],function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[3142]]();if(null==_0x4fa0x3||mxClient[_0x285e[3101]]){_0x4fa0x2[_0x285e[350]](_0x285e[539])}else {var _0x4fa0x4=mxUtils[_0x285e[3143]](_0x4fa0x2[_0x285e[1179]],1),_0x4fa0x4=mxUtils[_0x285e[875]](_0x4fa0x4,_0x285e[192]);mxUtils[_0x285e[894]](_0x4fa0x3,_0x4fa0x2[_0x285e[3123]]+_0x285e[226]+encodeURIComponent(_0x4fa0x4),document,_0x285e[3144])}});this[_0x285e[3071]](_0x285e[802],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[802]]()});this[_0x285e[3071]](_0x285e[3145],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&mxClipboard[_0x285e[3145]](_0x4fa0x2[_0x285e[1179]])});this[_0x285e[3071]](_0x285e[149],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&mxClipboard[_0x285e[149]](_0x4fa0x2[_0x285e[1179]])});this[_0x285e[3071]](_0x285e[3146],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&mxClipboard[_0x285e[3146]](_0x4fa0x2[_0x285e[1179]])});this[_0x285e[3071]](_0x285e[3147],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[842]]()});this[_0x285e[3071]](_0x285e[1504],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2450]](_0x4fa0x2[_0x285e[844]]())});this[_0x285e[3071]](_0x285e[3148],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[904]](_0x4fa0x2[_0x285e[1179]][_0x285e[845]]())});this[_0x285e[3071]](_0x285e[1997],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[846]]()});this[_0x285e[3071]](_0x285e[824],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[824]]()});this[_0x285e[3071]](_0x285e[825],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[825]]()});this[_0x285e[3071]](_0x285e[2558],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[2558]]()});this[_0x285e[3071]](_0x285e[2559],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[2559]]()});this[_0x285e[3071]](_0x285e[3149],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[2560]]()});this[_0x285e[3071]](_0x285e[933],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[933]]()});this[_0x285e[3071]](_0x285e[3150],function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[3150]](_0x4fa0x3)});this[_0x285e[3071]](_0x285e[2705],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2705]]()});this[_0x285e[3071]](_0x285e[3151],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2440]]()});this[_0x285e[3071]](_0x285e[2706],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2706]]()});this[_0x285e[3071]](_0x285e[2708],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2708]]()});this[_0x285e[3071]](_0x285e[1061],function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2453]](_0x4fa0x3)&&_0x4fa0x2[_0x285e[1179]][_0x285e[2451]](_0x4fa0x3)});this[_0x285e[3071]](_0x285e[3152],function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[840]](!0)});this[_0x285e[3071]](_0x285e[3153],function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[840]](!1)});this[_0x285e[3071]](_0x285e[2552],function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2[_0x285e[1179]][_0x285e[2552]](_0x4fa0x3)});this[_0x285e[3071]](_0x285e[2554],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[2554]]()});this[_0x285e[3071]](_0x285e[2442],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[2442]]()});this[_0x285e[3071]](_0x285e[3154],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2702]]()});this[_0x285e[3071]](_0x285e[3155],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2700]]()});this[_0x285e[3071]](_0x285e[3156],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2703]]()});this[_0x285e[3071]](_0x285e[3157],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2704]]()});this[_0x285e[3071]](_0x285e[2514],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[847]](!0)});this[_0x285e[3071]](_0x285e[3158],function(_0x4fa0x2){if(_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()){var _0x4fa0x3=_0x4fa0x2[_0x285e[1179]][_0x285e[1728]]();_0x4fa0x2[_0x285e[1179]][_0x285e[847]](!0,!1,_0x4fa0x3)}});this[_0x285e[3071]](_0x285e[3159],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[847]](!1)});this[_0x285e[3071]](_0x285e[3160],function(_0x4fa0x2){if(_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()){var _0x4fa0x3=_0x4fa0x2[_0x285e[1179]][_0x285e[1728]]();_0x4fa0x2[_0x285e[1179]][_0x285e[847]](!1,!1,_0x4fa0x3)}});this[_0x285e[3071]](_0x285e[1447],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_BOLD)});this[_0x285e[3071]](_0x285e[1449],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_ITALIC)});this[_0x285e[3071]](_0x285e[355],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_UNDERLINE)});this[_0x285e[3071]](_0x285e[639],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[2491]](mxConstants.STYLE_FONTSTYLE,mxConstants.FONT_SHADOW)});this[_0x285e[3071]](_0x285e[3161],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_LEFT)});this[_0x285e[3071]](_0x285e[3162],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_CENTER)});this[_0x285e[3071]](_0x285e[3163],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_RIGHT)});this[_0x285e[3071]](_0x285e[3164],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_TOP)});this[_0x285e[3071]](_0x285e[3165],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_MIDDLE)});this[_0x285e[3071]](_0x285e[3166],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[849]](mxConstants.ALIGN_BOTTOM)});this[_0x285e[3071]](_0x285e[3167],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT)});this[_0x285e[3071]](_0x285e[3168],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER)});this[_0x285e[3071]](_0x285e[3169],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_ALIGN,mxConstants.ALIGN_RIGHT)});this[_0x285e[3071]](_0x285e[3170],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_TOP)});this[_0x285e[3071]](_0x285e[3171],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)});this[_0x285e[3071]](_0x285e[3172],function(_0x4fa0x2){_0x4fa0x2[_0x285e[1179]][_0x285e[994]]()&&_0x4fa0x2[_0x285e[1179]][_0x285e[1717]](mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_BOTTOM)});this[_0x285e[3071]](_0x285e[499],function(_0x4fa0x2){var _0x4fa0x3=100*_0x4fa0x2[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x3=parseFloat(mxUtils[_0x285e[3173]](mxResources[_0x285e[203]](_0x4fa0x2[_0x285e[3104]])||_0x4fa0x2[_0x285e[3104]],_0x4fa0x3))/100;isNaN(_0x4fa0x3)||_0x4fa0x2[_0x285e[1179]][_0x285e[249]]()[_0x285e[2262]](_0x4fa0x3)});this[_0x285e[3071]](_0x285e[3174],function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[3112]]?_0x4fa0x2[_0x285e[3112]][_0x285e[175]](!_0x4fa0x2[_0x285e[3112]][_0x285e[174]]()):_0x4fa0x2[_0x285e[3175]]()});this[_0x285e[3071]](_0x285e[3176],function(_0x4fa0x2){null!=_0x4fa0x2[_0x285e[2719]]?_0x4fa0x2[_0x285e[2719]][_0x285e[175]](!_0x4fa0x2[_0x285e[2719]][_0x285e[174]]()):_0x4fa0x2[_0x285e[3177]]()});this[_0x285e[3071]](_0x285e[3178],function(_0x4fa0x2){null==_0x4fa0x2[_0x285e[2136]]?_0x4fa0x2[_0x285e[3179]]():_0x4fa0x2[_0x285e[2136]][_0x285e[175]](!_0x4fa0x2[_0x285e[2136]][_0x285e[174]]())});this[_0x285e[3071]](_0x285e[3180],function(_0x4fa0x2){mxLog[_0x285e[175]](!mxLog[_0x285e[174]]())})};mxEditor[_0x285e[202]][_0x285e[3102]]=function(){var _0x4fa0x2=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[746]]( new mxEventObject(mxEvent.SESSION,_0x285e[812],_0x4fa0x2))});return this[_0x285e[807]](this[_0x285e[1056]],this[_0x285e[1057]],this[_0x285e[1058]],_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3099]]=function(_0x4fa0x2){null!=_0x4fa0x2&&(( new mxCodec(_0x4fa0x2[_0x285e[295]]))[_0x285e[1093]](_0x4fa0x2,this),this[_0x285e[3181]]())};mxEditor[_0x285e[202]][_0x285e[3182]]=function(){document[_0x285e[3183]]=_0x285e[3184]};mxEditor[_0x285e[202]][_0x285e[3181]]=function(){this[_0x285e[1184]]=( new Date)[_0x285e[178]]();this[_0x285e[3095]][_0x285e[200]]();this[_0x285e[1183]]=0;this[_0x285e[2128]](!1)};mxEditor[_0x285e[202]][_0x285e[3071]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3091]][_0x4fa0x2]=_0x4fa0x3};mxEditor[_0x285e[202]][_0x285e[350]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[3091]][_0x4fa0x2];if(null!=_0x4fa0x5){try{var _0x4fa0x9=arguments;_0x4fa0x9[0]=this;_0x4fa0x5[_0x285e[183]](this,_0x4fa0x9)}catch(f){throw mxUtils[_0x285e[267]](_0x285e[3185]+_0x4fa0x2+_0x285e[3186]+f[_0x285e[281]],280,!0),f}}else {mxUtils[_0x285e[267]](_0x285e[3187]+_0x4fa0x2,280,!0)}};mxEditor[_0x285e[202]][_0x285e[3188]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[3118]][_0x4fa0x2]=_0x4fa0x3};mxEditor[_0x285e[202]][_0x285e[3189]]=function(_0x4fa0x2){return this[_0x285e[3118]][_0x4fa0x2]};mxEditor[_0x285e[202]][_0x285e[3096]]=function(){var _0x4fa0x2= new mxGraph(null,null,this[_0x285e[2720]]);_0x4fa0x2[_0x285e[2673]](!0);_0x4fa0x2[_0x285e[2674]](!0);this[_0x285e[3190]](_0x4fa0x2);this[_0x285e[3191]](_0x4fa0x2);this[_0x285e[3192]](_0x4fa0x2);this[_0x285e[3193]](_0x4fa0x2);this[_0x285e[3194]](_0x4fa0x2);_0x4fa0x2[_0x285e[2316]][_0x285e[1033]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){return this[_0x285e[3195]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5)});_0x4fa0x2[_0x285e[2433]][_0x285e[1033]]=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x4){return this[_0x285e[2503]](_0x4fa0x2,_0x4fa0x4)});this[_0x285e[3196]](_0x4fa0x2);this[_0x285e[3197]](_0x4fa0x2);return _0x4fa0x2};mxEditor[_0x285e[202]][_0x285e[3196]]=function(_0x4fa0x2){_0x4fa0x2= new mxSwimlaneManager(_0x4fa0x2,!1);_0x4fa0x2[_0x285e[1737]]=mxUtils[_0x285e[885]](this,function(){return this[_0x285e[3089]]});_0x4fa0x2[_0x285e[994]]=mxUtils[_0x285e[885]](this,function(){return this[_0x285e[3128]]});return _0x4fa0x2};mxEditor[_0x285e[202]][_0x285e[3197]]=function(_0x4fa0x2){var _0x4fa0x3= new mxLayoutManager(_0x4fa0x2),_0x4fa0x4=this;_0x4fa0x3[_0x285e[2754]]=function(_0x4fa0x3){var _0x4fa0x9=null,_0x4fa0xa=_0x4fa0x4[_0x285e[1179]][_0x285e[502]]();if(null!=_0x4fa0xa[_0x285e[1197]](_0x4fa0x3)){if(_0x4fa0x4[_0x285e[3129]]&&_0x4fa0x2[_0x285e[1730]](_0x4fa0x3)){null==_0x4fa0x4[_0x285e[3198]]&&(_0x4fa0x4[_0x285e[3198]]=_0x4fa0x4[_0x285e[3199]]()),_0x4fa0x9=_0x4fa0x4[_0x285e[3198]]}else {if(_0x4fa0x4[_0x285e[3126]]&&(_0x4fa0x2[_0x285e[2553]](_0x4fa0x3)||null==_0x4fa0xa[_0x285e[1197]](_0x4fa0xa[_0x285e[1197]](_0x4fa0x3)))){null==_0x4fa0x4[_0x285e[3200]]&&(_0x4fa0x4[_0x285e[3200]]=_0x4fa0x4[_0x285e[3201]]()),_0x4fa0x9=_0x4fa0x4[_0x285e[3200]]}}};return _0x4fa0x9};return _0x4fa0x3};mxEditor[_0x285e[202]][_0x285e[3202]]=function(_0x4fa0x2){null==this[_0x285e[1179]][_0x285e[526]]&&(this[_0x285e[1179]][_0x285e[176]](_0x4fa0x2),this[_0x285e[3203]]= new mxRubberband(this[_0x285e[1179]]),this[_0x285e[1157]]&&mxEvent[_0x285e[1157]](_0x4fa0x2),mxClient[_0x285e[496]]&& new mxDivResizer(_0x4fa0x2))};mxEditor[_0x285e[202]][_0x285e[3190]]=function(_0x4fa0x2){_0x4fa0x2[_0x285e[169]](mxEvent.DOUBLE_CLICK,mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x4[_0x285e[720]](_0x285e[246]);null!=_0x4fa0x5&&(_0x4fa0x2[_0x285e[994]]()&&null!=this[_0x285e[3115]])&&(this[_0x285e[350]](this[_0x285e[3115]],_0x4fa0x5),_0x4fa0x4[_0x285e[722]]())}))};mxEditor[_0x285e[202]][_0x285e[3191]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x9=_0x4fa0x3[_0x285e[720]](_0x285e[1061]);this[_0x285e[3095]][_0x285e[1114]](_0x4fa0x9)});_0x4fa0x2[_0x285e[502]]()[_0x285e[169]](mxEvent.UNDO,_0x4fa0x3);_0x4fa0x2[_0x285e[249]]()[_0x285e[169]](mxEvent.UNDO,_0x4fa0x3);_0x4fa0x3=function(_0x4fa0x3,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x5[_0x285e[720]](_0x285e[1061])[_0x285e[1065]];_0x4fa0x2[_0x285e[904]](_0x4fa0x2[_0x285e[2436]](_0x4fa0x9))};this[_0x285e[3095]][_0x285e[169]](mxEvent.UNDO,_0x4fa0x3);this[_0x285e[3095]][_0x285e[169]](mxEvent.REDO,_0x4fa0x3)};mxEditor[_0x285e[202]][_0x285e[3192]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x2){this[_0x285e[746]]( new mxEventObject(mxEvent.ROOT))});_0x4fa0x2[_0x285e[249]]()[_0x285e[169]](mxEvent.DOWN,_0x4fa0x3);_0x4fa0x2[_0x285e[249]]()[_0x285e[169]](mxEvent.UP,_0x4fa0x3)};mxEditor[_0x285e[202]][_0x285e[3193]]=function(_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[885]](this,function(_0x4fa0x3,_0x4fa0x5){this[_0x285e[2128]](!0);!0==this[_0x285e[3140]]&&_0x4fa0x2[_0x285e[2585]]();for(var _0x4fa0x9=_0x4fa0x5[_0x285e[720]](_0x285e[1061])[_0x285e[1065]],_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x9[_0x285e[67]];_0x4fa0xa++){var _0x4fa0x12=_0x4fa0x9[_0x4fa0xa];if(_0x4fa0x12 instanceof mxRootChange||_0x4fa0x12 instanceof mxValueChange&&_0x4fa0x12[_0x285e[246]]==this[_0x285e[1179]][_0x285e[251]][_0x285e[813]]||_0x4fa0x12 instanceof mxCellAttributeChange&&_0x4fa0x12[_0x285e[246]]==this[_0x285e[1179]][_0x285e[251]][_0x285e[813]]){this[_0x285e[746]]( new mxEventObject(mxEvent.ROOT));break}}});_0x4fa0x2[_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,_0x4fa0x3)};mxEditor[_0x285e[202]][_0x285e[3194]]=function(_0x4fa0x2){var _0x4fa0x3=this;_0x4fa0x2[_0x285e[1133]]({mouseDown:function(_0x4fa0x2,_0x4fa0x5){if(null!=_0x4fa0x3[_0x285e[3083]]&&!_0x4fa0x5[_0x285e[737]]()&&(_0x4fa0x3[_0x285e[3117]]||null==_0x4fa0x5[_0x285e[248]]())){_0x4fa0x3[_0x285e[1179]][_0x285e[2440]](),_0x4fa0x3[_0x285e[3083]](_0x4fa0x5[_0x285e[727]](),_0x4fa0x5[_0x285e[736]]()),this[_0x285e[1142]]= !0,_0x4fa0x5[_0x285e[722]]()}},mouseMove:function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1142]]&&_0x4fa0x3[_0x285e[722]]()},mouseUp:function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1142]]&&(this[_0x285e[1142]]= !1,_0x4fa0x3[_0x285e[722]]())}})};mxEditor[_0x285e[202]][_0x285e[3201]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[1020]],_0x4fa0x3= new mxStackLayout(this[_0x285e[1179]],!this[_0x285e[3089]],this[_0x285e[3127]],2*_0x4fa0x2,2*_0x4fa0x2);_0x4fa0x3[_0x285e[1713]]=function(_0x4fa0x2){return !_0x4fa0x3[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)};return _0x4fa0x3};mxEditor[_0x285e[202]][_0x285e[3199]]=function(){return new mxCompactTreeLayout(this[_0x285e[1179]],this[_0x285e[3089]])};mxEditor[_0x285e[202]][_0x285e[3097]]=function(){return new mxDefaultToolbar(null,this)};mxEditor[_0x285e[202]][_0x285e[3204]]=function(_0x4fa0x2){this[_0x285e[3082]][_0x285e[176]](_0x4fa0x2);mxClient[_0x285e[496]]&& new mxDivResizer(_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3205]]=function(_0x4fa0x2){null==this[_0x285e[879]]&&(this[_0x285e[879]]=_0x4fa0x2,this[_0x285e[169]](mxEvent.SAVE,mxUtils[_0x285e[885]](this,function(){var _0x4fa0x2=( new Date)[_0x285e[3206]]();this[_0x285e[3207]]((mxResources[_0x285e[203]](this[_0x285e[3106]])||this[_0x285e[3106]])+_0x285e[3186]+_0x4fa0x2)})),this[_0x285e[169]](mxEvent.OPEN,mxUtils[_0x285e[885]](this,function(){this[_0x285e[3207]]((mxResources[_0x285e[203]](this[_0x285e[3108]])||this[_0x285e[3108]])+_0x285e[3186]+this[_0x285e[3122]])})),mxClient[_0x285e[496]]&& new mxDivResizer(_0x4fa0x2))};mxEditor[_0x285e[202]][_0x285e[3207]]=function(_0x4fa0x2){null!=this[_0x285e[879]]&&null!=_0x4fa0x2&&(this[_0x285e[879]][_0x285e[339]]=_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3208]]=function(_0x4fa0x2){this[_0x285e[169]](mxEvent.ROOT,mxUtils[_0x285e[885]](this,function(_0x4fa0x3){_0x4fa0x2[_0x285e[339]]=this[_0x285e[3209]]()}));mxClient[_0x285e[496]]&& new mxDivResizer(_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3210]]=function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x2&&( new mxCompactTreeLayout(this[_0x285e[1179]],_0x4fa0x3))[_0x285e[350]](_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3209]]=function(){for(var _0x4fa0x2=_0x285e[110],_0x4fa0x3=this[_0x285e[1179]],_0x4fa0x4=_0x4fa0x3[_0x285e[2534]]();null!=_0x4fa0x4&&null!=_0x4fa0x3[_0x285e[502]]()[_0x285e[1197]](_0x4fa0x3[_0x285e[502]]()[_0x285e[1197]](_0x4fa0x4));){_0x4fa0x3[_0x285e[2553]](_0x4fa0x4)&&(_0x4fa0x2=_0x285e[3211]+_0x4fa0x3[_0x285e[2454]](_0x4fa0x4)+_0x4fa0x2),_0x4fa0x4=_0x4fa0x3[_0x285e[502]]()[_0x285e[1197]](_0x4fa0x4)};return this[_0x285e[3212]]()+_0x4fa0x2};mxEditor[_0x285e[202]][_0x285e[3212]]=function(){var _0x4fa0x2=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]]();return this[_0x285e[1179]][_0x285e[2454]](_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[824]]=function(){this[_0x285e[3095]][_0x285e[824]]()};mxEditor[_0x285e[202]][_0x285e[825]]=function(){this[_0x285e[3095]][_0x285e[825]]()};mxEditor[_0x285e[202]][_0x285e[844]]=function(){var _0x4fa0x2=null!=this[_0x285e[3121]]?this[_0x285e[3121]]:this[_0x285e[1179]][_0x285e[1020]];return this[_0x285e[1179]][_0x285e[844]](this[_0x285e[3213]](),_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3213]]=function(){return this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1978]](this[_0x285e[3120]])};mxEditor[_0x285e[202]][_0x285e[392]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[219]](_0x4fa0x2)[_0x285e[875]]();this[_0x285e[3214]](_0x4fa0x3[_0x285e[158]]);this[_0x285e[3122]]=_0x4fa0x2;this[_0x285e[746]]( new mxEventObject(mxEvent.OPEN,_0x285e[3122],_0x4fa0x2))}};mxEditor[_0x285e[202]][_0x285e[3214]]=function(_0x4fa0x2){( new mxCodec(_0x4fa0x2[_0x285e[295]]))[_0x285e[1093]](_0x4fa0x2,this[_0x285e[1179]][_0x285e[502]]());this[_0x285e[3181]]()};mxEditor[_0x285e[202]][_0x285e[815]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x2=_0x4fa0x2||this[_0x285e[3215]]();if(null!=_0x4fa0x2&&0<_0x4fa0x2[_0x285e[67]]){var _0x4fa0x4=this[_0x285e[3216]](_0x4fa0x3);this[_0x285e[3217]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[2128]](!1)};this[_0x285e[746]]( new mxEventObject(mxEvent.SAVE,_0x285e[863],_0x4fa0x2))};mxEditor[_0x285e[202]][_0x285e[3217]]=function(_0x4fa0x2,_0x4fa0x3){this[_0x285e[1070]]&&(_0x4fa0x3=encodeURIComponent(_0x4fa0x3));mxUtils[_0x285e[814]](_0x4fa0x2,this[_0x285e[3123]]+_0x285e[226]+_0x4fa0x3,mxUtils[_0x285e[885]](this,function(_0x4fa0x4){this[_0x285e[746]]( new mxEventObject(mxEvent.POST,_0x285e[870],_0x4fa0x4,_0x285e[863],_0x4fa0x2,_0x285e[410],_0x4fa0x3))}))};mxEditor[_0x285e[202]][_0x285e[3216]]=function(_0x4fa0x2){_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:this[_0x285e[1069]];var _0x4fa0x3=( new mxCodec)[_0x285e[514]](this[_0x285e[1179]][_0x285e[502]]());return mxUtils[_0x285e[875]](_0x4fa0x3,_0x4fa0x2)};mxEditor[_0x285e[202]][_0x285e[3215]]=function(){return this[_0x285e[3124]]};mxEditor[_0x285e[202]][_0x285e[3142]]=function(){return this[_0x285e[3125]]};mxEditor[_0x285e[202]][_0x285e[807]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;mxClient[_0x285e[3101]]||(_0x4fa0x9= new mxSession(this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x2,_0x4fa0x3,_0x4fa0x4),_0x4fa0x9[_0x285e[169]](mxEvent.RECEIVE,mxUtils[_0x285e[885]](this,function(_0x4fa0x2,_0x4fa0x3){null!=_0x4fa0x3[_0x285e[720]](_0x285e[252])[_0x285e[284]](_0x285e[1088])&&this[_0x285e[3181]]()})),_0x4fa0x9[_0x285e[169]](mxEvent.DISCONNECT,_0x4fa0x5),_0x4fa0x9[_0x285e[169]](mxEvent.CONNECT,_0x4fa0x5),_0x4fa0x9[_0x285e[169]](mxEvent.NOTIFY,_0x4fa0x5),_0x4fa0x9[_0x285e[169]](mxEvent.GET,_0x4fa0x5),_0x4fa0x9[_0x285e[861]]());return _0x4fa0x9};mxEditor[_0x285e[202]][_0x285e[3218]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=this[_0x285e[1179]][_0x285e[2434]]()[_0x285e[2054]][_0x4fa0x3];this[_0x285e[1179]][_0x285e[249]]()[_0x285e[2434]]()[_0x285e[2074]](_0x4fa0x3,this[_0x285e[1179]][_0x285e[2434]]()[_0x285e[2054]][_0x4fa0x2]);this[_0x285e[1179]][_0x285e[2434]]()[_0x285e[2074]](_0x4fa0x2,_0x4fa0x4);this[_0x285e[1179]][_0x285e[802]]()};mxEditor[_0x285e[202]][_0x285e[3150]]=function(_0x4fa0x2){_0x4fa0x2=_0x4fa0x2||this[_0x285e[1179]][_0x285e[2452]]();null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[2534]](),null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]]()));if(null!=_0x4fa0x2){this[_0x285e[1179]][_0x285e[2126]](!0);var _0x4fa0x3=mxUtils[_0x285e[445]](this[_0x285e[1179]][_0x285e[526]]),_0x4fa0x4=_0x4fa0x3[_0x285e[235]]+10,_0x4fa0x3=_0x4fa0x3[_0x285e[236]];if(null!=this[_0x285e[716]]&&!this[_0x285e[3139]]){_0x4fa0x4=this[_0x285e[716]][_0x285e[730]](),_0x4fa0x3=this[_0x285e[716]][_0x285e[732]]()}else {var _0x4fa0x5=this[_0x285e[1179]][_0x285e[2555]](_0x4fa0x2);null!=_0x4fa0x5&&(_0x4fa0x4+=_0x4fa0x5[_0x285e[235]]+Math[_0x285e[243]](200,_0x4fa0x5[_0x285e[117]]),_0x4fa0x3+=_0x4fa0x5[_0x285e[236]])};this[_0x285e[3062]]();_0x4fa0x2=this[_0x285e[3219]](_0x4fa0x2);null!=_0x4fa0x2&&(this[_0x285e[716]]= new mxWindow(mxResources[_0x285e[203]](this[_0x285e[3110]])||this[_0x285e[3110]],_0x4fa0x2,_0x4fa0x4,_0x4fa0x3,this[_0x285e[3137]],this[_0x285e[3138]],!1),this[_0x285e[716]][_0x285e[175]](!0))}};mxEditor[_0x285e[202]][_0x285e[3220]]=function(){return null!=this[_0x285e[716]]};mxEditor[_0x285e[202]][_0x285e[3219]]=function(_0x4fa0x2){var _0x4fa0x3=this[_0x285e[1179]][_0x285e[502]](),_0x4fa0x4=_0x4fa0x3[_0x285e[433]](_0x4fa0x2);if(mxUtils[_0x285e[1331]](_0x4fa0x4)){var _0x4fa0x5= new mxForm(_0x285e[716]);_0x4fa0x5[_0x285e[961]](_0x285e[3222],_0x4fa0x2[_0x285e[1103]]())[_0x285e[57]](_0x285e[3221],_0x285e[128]);var _0x4fa0x9=null,_0x4fa0xa=null,_0x4fa0x12=null,_0x4fa0x13=null,_0x4fa0x14=null;_0x4fa0x3[_0x285e[1193]](_0x4fa0x2)&&(_0x4fa0x9=_0x4fa0x3[_0x285e[1721]](_0x4fa0x2),null!=_0x4fa0x9&&(_0x4fa0xa=_0x4fa0x5[_0x285e[961]](_0x285e[125],_0x4fa0x9[_0x285e[236]]),_0x4fa0x12=_0x4fa0x5[_0x285e[961]](_0x285e[361],_0x4fa0x9[_0x285e[235]]),_0x4fa0x13=_0x4fa0x5[_0x285e[961]](_0x285e[117],_0x4fa0x9[_0x285e[117]]),_0x4fa0x14=_0x4fa0x5[_0x285e[961]](_0x285e[119],_0x4fa0x9[_0x285e[119]])));for(var _0x4fa0x15=_0x4fa0x3[_0x285e[474]](_0x4fa0x2),_0x4fa0x16=_0x4fa0x5[_0x285e[961]](_0x285e[3223],_0x4fa0x15||_0x285e[110]),_0x4fa0x17=_0x4fa0x4[_0x285e[320]],_0x4fa0x18=[],_0x4fa0x4=0;_0x4fa0x4<_0x4fa0x17[_0x285e[67]];_0x4fa0x4++){_0x4fa0x18[_0x4fa0x4]=_0x4fa0x5[_0x285e[968]](_0x4fa0x17[_0x4fa0x4][_0x285e[301]],_0x4fa0x17[_0x4fa0x4][_0x285e[318]],_0x285e[685]==_0x4fa0x17[_0x4fa0x4][_0x285e[301]]?4:2)};_0x4fa0x4=mxUtils[_0x285e[885]](this,function(){this[_0x285e[3062]]();_0x4fa0x3[_0x285e[473]]();try{null!=_0x4fa0x9&&(_0x4fa0x9=_0x4fa0x9[_0x285e[238]](),_0x4fa0x9[_0x285e[235]]=parseFloat(_0x4fa0x12[_0x285e[131]]),_0x4fa0x9[_0x285e[236]]=parseFloat(_0x4fa0xa[_0x285e[131]]),_0x4fa0x9[_0x285e[117]]=parseFloat(_0x4fa0x13[_0x285e[131]]),_0x4fa0x9[_0x285e[119]]=parseFloat(_0x4fa0x14[_0x285e[131]]),_0x4fa0x3[_0x285e[1724]](_0x4fa0x2,_0x4fa0x9));0<_0x4fa0x16[_0x285e[131]][_0x285e[67]]?_0x4fa0x3[_0x285e[475]](_0x4fa0x2,_0x4fa0x16[_0x285e[131]]):_0x4fa0x3[_0x285e[475]](_0x4fa0x2,null);for(var _0x4fa0x4=0;_0x4fa0x4<_0x4fa0x17[_0x285e[67]];_0x4fa0x4++){var _0x4fa0x5= new mxCellAttributeChange(_0x4fa0x2,_0x4fa0x17[_0x4fa0x4][_0x285e[301]],_0x4fa0x18[_0x4fa0x4][_0x285e[131]]);_0x4fa0x3[_0x285e[350]](_0x4fa0x5)};this[_0x285e[1179]][_0x285e[2455]](_0x4fa0x2)&&this[_0x285e[1179]][_0x285e[858]](_0x4fa0x2)}finally{_0x4fa0x3[_0x285e[476]]()}});_0x4fa0x15=mxUtils[_0x285e[885]](this,function(){this[_0x285e[3062]]()});_0x4fa0x5[_0x285e[956]](_0x4fa0x4,_0x4fa0x15);return _0x4fa0x5[_0x285e[116]]};return null};mxEditor[_0x285e[202]][_0x285e[3062]]=function(){null!=this[_0x285e[716]]&&(this[_0x285e[716]][_0x285e[515]](),this[_0x285e[716]]=null)};mxEditor[_0x285e[202]][_0x285e[3175]]=function(){if(null==this[_0x285e[3112]]){var _0x4fa0x2=document[_0x285e[55]](_0x285e[485]);_0x4fa0x2[_0x285e[124]][_0x285e[549]]=_0x285e[952];_0x4fa0x2[_0x285e[124]][_0x285e[357]]=_0x285e[550];var _0x4fa0x3=document[_0x285e[112]][_0x285e[159]],_0x4fa0x3= new mxWindow(mxResources[_0x285e[203]](this[_0x285e[3111]])||this[_0x285e[3111]],_0x4fa0x2,_0x4fa0x3-220,this[_0x285e[3132]],200);_0x4fa0x3[_0x285e[164]](!0);_0x4fa0x3[_0x285e[165]]= !1;var _0x4fa0x4=mxUtils[_0x285e[885]](this,function(_0x4fa0x3){mxEvent[_0x285e[762]](_0x4fa0x2);_0x4fa0x2[_0x285e[339]]=_0x285e[110];this[_0x285e[3224]](_0x4fa0x2)});this[_0x285e[1179]][_0x285e[502]]()[_0x285e[169]](mxEvent.CHANGE,_0x4fa0x4);this[_0x285e[1179]][_0x285e[2435]]()[_0x285e[169]](mxEvent.CHANGE,_0x4fa0x4);this[_0x285e[1179]][_0x285e[169]](mxEvent.ROOT,_0x4fa0x4);null!=this[_0x285e[3131]]&&_0x4fa0x3[_0x285e[951]](this[_0x285e[3131]]);this[_0x285e[3112]]=_0x4fa0x3;this[_0x285e[3224]](_0x4fa0x2)};this[_0x285e[3112]][_0x285e[175]](!0)};mxEditor[_0x285e[202]][_0x285e[3225]]=function(_0x4fa0x2){null!=this[_0x285e[3112]]&&(_0x4fa0x2=this[_0x285e[3112]][_0x285e[905]],mxEvent[_0x285e[762]](_0x4fa0x2),_0x4fa0x2[_0x285e[339]]=_0x285e[110],this[_0x285e[3224]](_0x4fa0x2))};mxEditor[_0x285e[202]][_0x285e[3224]]=function(_0x4fa0x2){};mxEditor[_0x285e[202]][_0x285e[3177]]=function(_0x4fa0x2){if(null==this[_0x285e[2719]]){var _0x4fa0x3=document[_0x285e[55]](_0x285e[389]);_0x4fa0x3[_0x285e[57]](_0x285e[390],mxResources[_0x285e[203]](_0x285e[3134])||this[_0x285e[3134]]);_0x4fa0x3[_0x285e[57]](_0x285e[119],_0x285e[118]);_0x4fa0x3[_0x285e[57]](_0x285e[117],_0x285e[118]);_0x4fa0x3[_0x285e[57]](_0x285e[3226],_0x285e[468]);_0x4fa0x3[_0x285e[124]][_0x285e[1028]]=_0x285e[1391];_0x4fa0x2=document[_0x285e[112]][_0x285e[159]];var _0x4fa0x4=document[_0x285e[112]][_0x285e[157]]||document[_0x285e[158]][_0x285e[157]],_0x4fa0x5= new mxWindow(mxResources[_0x285e[203]](this[_0x285e[3113]])||this[_0x285e[3113]],_0x4fa0x3,(_0x4fa0x2-this[_0x285e[3135]])/2,(_0x4fa0x4-this[_0x285e[3136]])/3,this[_0x285e[3135]],this[_0x285e[3136]]);_0x4fa0x5[_0x285e[161]](!0);_0x4fa0x5[_0x285e[164]](!0);_0x4fa0x5[_0x285e[165]]= !1;_0x4fa0x5[_0x285e[163]](!0);null!=this[_0x285e[3133]]&&_0x4fa0x5[_0x285e[951]](this[_0x285e[3133]]);mxClient[_0x285e[133]]&&(_0x4fa0x2=function(_0x4fa0x2){_0x4fa0x3[_0x285e[57]](_0x285e[119],_0x4fa0x5[_0x285e[485]][_0x285e[167]]-26+_0x285e[168])},_0x4fa0x5[_0x285e[169]](mxEvent.RESIZE_END,_0x4fa0x2),_0x4fa0x5[_0x285e[169]](mxEvent.MAXIMIZE,_0x4fa0x2),_0x4fa0x5[_0x285e[169]](mxEvent.NORMALIZE,_0x4fa0x2),_0x4fa0x5[_0x285e[169]](mxEvent.SHOW,_0x4fa0x2));this[_0x285e[2719]]=_0x4fa0x5};this[_0x285e[2719]][_0x285e[175]](!0)};mxEditor[_0x285e[202]][_0x285e[3179]]=function(){if(null==this[_0x285e[2136]]){var _0x4fa0x2=document[_0x285e[55]](_0x285e[485]);_0x4fa0x2[_0x285e[124]][_0x285e[277]]=_0x285e[188];_0x4fa0x2[_0x285e[124]][_0x285e[117]]=_0x285e[118];_0x4fa0x2[_0x285e[124]][_0x285e[119]]=_0x285e[118];_0x4fa0x2[_0x285e[124]][_0x285e[1537]]=_0x285e[1391];_0x4fa0x2[_0x285e[124]][_0x285e[270]]=_0x285e[582];var _0x4fa0x3= new mxWindow(mxResources[_0x285e[203]](this[_0x285e[3114]])||this[_0x285e[3114]],_0x4fa0x2,600,480,200,200,!1),_0x4fa0x4= new mxOutline(this[_0x285e[1179]],_0x4fa0x2);_0x4fa0x3[_0x285e[164]](!0);_0x4fa0x3[_0x285e[163]](!0);_0x4fa0x3[_0x285e[165]]= !1;_0x4fa0x3[_0x285e[169]](mxEvent.RESIZE_END,function(){_0x4fa0x4[_0x285e[2729]]()});this[_0x285e[2136]]=_0x4fa0x3;this[_0x285e[2136]][_0x285e[2136]]=_0x4fa0x4};this[_0x285e[2136]][_0x285e[175]](!0);this[_0x285e[2136]][_0x285e[2136]][_0x285e[2729]](!0)};mxEditor[_0x285e[202]][_0x285e[3086]]=function(_0x4fa0x2){_0x285e[804]==_0x4fa0x2?(this[_0x285e[1179]][_0x285e[2316]][_0x285e[2840]]= !1,this[_0x285e[1179]][_0x285e[1995]](!1)):_0x285e[807]==_0x4fa0x2?(this[_0x285e[1179]][_0x285e[2316]][_0x285e[2840]]= !1,this[_0x285e[1179]][_0x285e[1995]](!0)):_0x285e[796]==_0x4fa0x2&&(this[_0x285e[1179]][_0x285e[2316]][_0x285e[2840]]= !0,this[_0x285e[1179]][_0x285e[1995]](!1))};mxEditor[_0x285e[202]][_0x285e[3195]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){this[_0x285e[3094]][_0x285e[3065]](this,_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)};mxEditor[_0x285e[202]][_0x285e[2503]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(null!=this[_0x285e[2075]]){_0x4fa0x4=this[_0x285e[1179]][_0x285e[502]]()[_0x285e[1978]](this[_0x285e[2075]])}else {_0x4fa0x4= new mxCell(_0x285e[110]);_0x4fa0x4[_0x285e[1994]](!0);var _0x4fa0x5= new mxGeometry;_0x4fa0x5[_0x285e[1500]]= !0;_0x4fa0x4[_0x285e[1724]](_0x4fa0x5)};_0x4fa0x5=this[_0x285e[2291]]();null!=_0x4fa0x5&&_0x4fa0x4[_0x285e[475]](_0x4fa0x5);return _0x4fa0x4};mxEditor[_0x285e[202]][_0x285e[2291]]=function(){return this[_0x285e[3119]]};mxEditor[_0x285e[202]][_0x285e[3227]]=function(_0x4fa0x2){return null!=this[_0x285e[3093]]&&0<this[_0x285e[3093]][_0x285e[67]]&&this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x2)?this[_0x285e[3093]][this[_0x285e[3130]]++ %this[_0x285e[3093]][_0x285e[67]]]:null};mxEditor[_0x285e[202]][_0x285e[3228]]=function(_0x4fa0x2){if(null!=this[_0x285e[3100]]){var _0x4fa0x3=this[_0x285e[3227]](_0x4fa0x2);null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[475]](_0x4fa0x2[_0x285e[474]]()+_0x285e[471]+this[_0x285e[3100]]+_0x285e[226]+_0x4fa0x3)}};mxEditor[_0x285e[202]][_0x285e[817]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){for(var _0x4fa0x9=this[_0x285e[1179]][_0x285e[502]]();null!=_0x4fa0x2&&!this[_0x285e[1179]][_0x285e[2685]](_0x4fa0x2);){_0x4fa0x2=_0x4fa0x9[_0x285e[1197]](_0x4fa0x2)};_0x4fa0x2=null!=_0x4fa0x2?_0x4fa0x2:this[_0x285e[1179]][_0x285e[2461]](_0x4fa0x4,_0x4fa0x5);var _0x4fa0xa=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[255]],_0x4fa0x12=_0x4fa0x9[_0x285e[1721]](_0x4fa0x3),_0x4fa0x13=_0x4fa0x9[_0x285e[1721]](_0x4fa0x2);if(this[_0x285e[1179]][_0x285e[1730]](_0x4fa0x3)&&!this[_0x285e[1179]][_0x285e[2412]]){_0x4fa0x2=null}else {if(null==_0x4fa0x2&&this[_0x285e[3116]]){return null};if(null!=_0x4fa0x2&&null!=_0x4fa0x13){var _0x4fa0x14=this[_0x285e[1179]][_0x285e[249]]()[_0x285e[248]](_0x4fa0x2);if(null!=_0x4fa0x14){if(_0x4fa0x4-=_0x4fa0x14[_0x285e[2078]][_0x285e[235]]*_0x4fa0xa,_0x4fa0x5-=_0x4fa0x14[_0x285e[2078]][_0x285e[236]]*_0x4fa0xa,this[_0x285e[1179]][_0x285e[3229]]){var _0x4fa0x13=_0x4fa0x12[_0x285e[117]],_0x4fa0x15=_0x4fa0x12[_0x285e[119]],_0x4fa0x16=_0x4fa0x14[_0x285e[235]]+_0x4fa0x14[_0x285e[117]];_0x4fa0x4+_0x4fa0x13>_0x4fa0x16&&(_0x4fa0x4-=_0x4fa0x4+_0x4fa0x13-_0x4fa0x16);_0x4fa0x16=_0x4fa0x14[_0x285e[236]]+_0x4fa0x14[_0x285e[119]];_0x4fa0x5+_0x4fa0x15>_0x4fa0x16&&(_0x4fa0x5-=_0x4fa0x5+_0x4fa0x15-_0x4fa0x16)}}else {null!=_0x4fa0x13&&(_0x4fa0x4-=_0x4fa0x13[_0x285e[235]]*_0x4fa0xa,_0x4fa0x5-=_0x4fa0x13[_0x285e[236]]*_0x4fa0xa)}}};_0x4fa0x12=_0x4fa0x12[_0x285e[238]]();_0x4fa0x12[_0x285e[235]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x4/_0x4fa0xa-this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]][_0x285e[235]]-this[_0x285e[1179]][_0x285e[1020]]/2);_0x4fa0x12[_0x285e[236]]=this[_0x285e[1179]][_0x285e[1021]](_0x4fa0x5/_0x4fa0xa-this[_0x285e[1179]][_0x285e[249]]()[_0x285e[513]][_0x285e[236]]-this[_0x285e[1179]][_0x285e[1020]]/2);_0x4fa0x3[_0x285e[1724]](_0x4fa0x12);null==_0x4fa0x2&&(_0x4fa0x2=this[_0x285e[1179]][_0x285e[902]]());this[_0x285e[3228]](_0x4fa0x3);this[_0x285e[746]]( new mxEventObject(mxEvent.BEFORE_ADD_VERTEX,_0x285e[1988],_0x4fa0x3,_0x285e[1101],_0x4fa0x2));_0x4fa0x9[_0x285e[473]]();try{_0x4fa0x3=this[_0x285e[1179]][_0x285e[2103]](_0x4fa0x3,_0x4fa0x2),null!=_0x4fa0x3&&(this[_0x285e[1179]][_0x285e[2509]](_0x4fa0x3),this[_0x285e[746]]( new mxEventObject(mxEvent.ADD_VERTEX,_0x285e[1988],_0x4fa0x3)))}finally{_0x4fa0x9[_0x285e[476]]()};null!=_0x4fa0x3&&(this[_0x285e[1179]][_0x285e[2450]](_0x4fa0x3),this[_0x285e[1179]][_0x285e[2564]](_0x4fa0x3),this[_0x285e[746]]( new mxEventObject(mxEvent.AFTER_ADD_VERTEX,_0x285e[1988],_0x4fa0x3)));return _0x4fa0x3};mxEditor[_0x285e[202]][_0x285e[515]]=function(){this[_0x285e[2717]]||(this[_0x285e[2717]]= !0,null!=this[_0x285e[3112]]&&this[_0x285e[3112]][_0x285e[515]](),null!=this[_0x285e[2136]]&&this[_0x285e[2136]][_0x285e[515]](),null!=this[_0x285e[716]]&&this[_0x285e[716]][_0x285e[515]](),null!=this[_0x285e[3098]]&&this[_0x285e[3098]][_0x285e[515]](),null!=this[_0x285e[3203]]&&this[_0x285e[3203]][_0x285e[515]](),null!=this[_0x285e[3082]]&&this[_0x285e[3082]][_0x285e[515]](),null!=this[_0x285e[1179]]&&this[_0x285e[1179]][_0x285e[515]](),this[_0x285e[3118]]=this[_0x285e[879]]=null)};var mxCodecRegistry={codecs:[],aliases:[],register:function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[718]]();mxCodecRegistry[_0x285e[3230]][_0x4fa0x3]=_0x4fa0x2;var _0x4fa0x4=mxUtils[_0x285e[197]](_0x4fa0x2[_0x285e[3231]][_0x285e[196]]);_0x4fa0x4!=_0x4fa0x3&&mxCodecRegistry[_0x285e[3232]](_0x4fa0x4,_0x4fa0x3)};return _0x4fa0x2},addAlias:function(_0x4fa0x2,_0x4fa0x3){mxCodecRegistry[_0x285e[3233]][_0x4fa0x2]=_0x4fa0x3},getCodec:function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2){var _0x4fa0x3=mxUtils[_0x285e[197]](_0x4fa0x2),_0x4fa0x4=mxCodecRegistry[_0x285e[3233]][_0x4fa0x3];null!=_0x4fa0x4&&(_0x4fa0x3=_0x4fa0x4);_0x4fa0x3=mxCodecRegistry[_0x285e[3230]][_0x4fa0x3];if(null==_0x4fa0x3){try{_0x4fa0x3= new mxObjectCodec( new _0x4fa0x2),mxCodecRegistry[_0x285e[3234]](_0x4fa0x3)}catch(d){}}};return _0x4fa0x3}};function mxCodec(_0x4fa0x2){this[_0x285e[395]]=_0x4fa0x2||mxUtils[_0x285e[306]]();this[_0x285e[68]]=[]}mxCodec[_0x285e[202]][_0x285e[395]]=null;mxCodec[_0x285e[202]][_0x285e[68]]=null;mxCodec[_0x285e[202]][_0x285e[3235]]= !1;mxCodec[_0x285e[202]][_0x285e[1104]]=function(_0x4fa0x2,_0x4fa0x3){return this[_0x285e[68]][_0x4fa0x2]=_0x4fa0x3};mxCodec[_0x285e[202]][_0x285e[3236]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[68]][_0x4fa0x2],null==_0x4fa0x3&&(_0x4fa0x3=this[_0x285e[1060]](_0x4fa0x2),null==_0x4fa0x3&&(_0x4fa0x2=this[_0x285e[1362]](_0x4fa0x2),null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[1093]](_0x4fa0x2)))));return _0x4fa0x3};mxCodec[_0x285e[202]][_0x285e[1060]]=function(_0x4fa0x2){return null};mxCodec[_0x285e[202]][_0x285e[1362]]=function(_0x4fa0x2,_0x4fa0x3){return mxUtils[_0x285e[290]](this[_0x285e[395]][_0x285e[158]],null!=_0x4fa0x3?_0x4fa0x3:_0x285e[1363],_0x4fa0x2)};mxCodec[_0x285e[202]][_0x285e[1103]]=function(_0x4fa0x2){var _0x4fa0x3=null;null!=_0x4fa0x2&&(_0x4fa0x3=this[_0x285e[3237]](_0x4fa0x2),null==_0x4fa0x3&&_0x4fa0x2 instanceof mxCell&&(_0x4fa0x3=_0x4fa0x2[_0x285e[1103]](),null==_0x4fa0x3&&(_0x4fa0x3=mxCellPath[_0x285e[385]](_0x4fa0x2),0==_0x4fa0x3[_0x285e[67]]&&(_0x4fa0x3=_0x285e[813]))));return _0x4fa0x3};mxCodec[_0x285e[202]][_0x285e[3237]]=function(_0x4fa0x2){return null};mxCodec[_0x285e[202]][_0x285e[514]]=function(_0x4fa0x2){var _0x4fa0x3=null;if(null!=_0x4fa0x2&&null!=_0x4fa0x2[_0x285e[196]]){var _0x4fa0x4=mxCodecRegistry[_0x285e[3238]](_0x4fa0x2[_0x285e[196]]);null!=_0x4fa0x4?_0x4fa0x3=_0x4fa0x4[_0x285e[514]](this,_0x4fa0x2):mxUtils[_0x285e[1331]](_0x4fa0x2)?_0x4fa0x3=mxClient[_0x285e[80]]?_0x4fa0x2[_0x285e[511]](!0):this[_0x285e[395]][_0x285e[3239]](_0x4fa0x2,!0):mxLog[_0x285e[283]](_0x285e[3240]+mxUtils[_0x285e[197]](_0x4fa0x2[_0x285e[196]]))};return _0x4fa0x3};mxCodec[_0x285e[202]][_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=null;if(null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[289]]){var _0x4fa0x5=null;try{_0x4fa0x5=eval(_0x4fa0x2[_0x285e[301]])}catch(e){};try{var _0x4fa0xa=mxCodecRegistry[_0x285e[3238]](_0x4fa0x5);null!=_0x4fa0xa?_0x4fa0x4=_0x4fa0xa[_0x285e[1093]](this,_0x4fa0x2,_0x4fa0x3):(_0x4fa0x4=_0x4fa0x2[_0x285e[511]](!0),_0x4fa0x4[_0x285e[1390]](_0x285e[3069]))}catch(g){mxLog[_0x285e[143]](_0x285e[3241]+_0x4fa0x2[_0x285e[301]]+_0x285e[3186]+g[_0x285e[281]])}};return _0x4fa0x4};mxCodec[_0x285e[202]][_0x285e[3242]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3[_0x285e[62]](this[_0x285e[514]](_0x4fa0x2));if(null==_0x4fa0x4||_0x4fa0x4){_0x4fa0x4=_0x4fa0x2[_0x285e[262]]();for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x4;_0x4fa0x5++){this[_0x285e[3242]](_0x4fa0x2[_0x285e[263]](_0x4fa0x5),_0x4fa0x3)}}};mxCodec[_0x285e[202]][_0x285e[3243]]=function(_0x4fa0x2){return null!=_0x4fa0x2&&_0x285e[279]== typeof _0x4fa0x2[_0x285e[3243]]?_0x4fa0x2[_0x285e[3243]]():!1};mxCodec[_0x285e[202]][_0x285e[3244]]=function(_0x4fa0x2,_0x4fa0x3){_0x4fa0x3=null!=_0x4fa0x3?_0x4fa0x3:!0;var _0x4fa0x4=null;if(null!=_0x4fa0x2&&_0x4fa0x2[_0x285e[288]]==mxConstants[_0x285e[289]]){_0x4fa0x4=mxCodecRegistry[_0x285e[3238]](_0x4fa0x2[_0x285e[301]]);if(!this[_0x285e[3243]](_0x4fa0x4)){for(var _0x4fa0x5=_0x4fa0x2[_0x285e[285]];null!=_0x4fa0x5&&!this[_0x285e[3243]](_0x4fa0x4);){_0x4fa0x4=mxCodecRegistry[_0x285e[3238]](_0x4fa0x5[_0x285e[301]]),_0x4fa0x5=_0x4fa0x5[_0x285e[287]]}};this[_0x285e[3243]](_0x4fa0x4)||(_0x4fa0x4=mxCodecRegistry[_0x285e[3238]](mxCell));_0x4fa0x4=_0x4fa0x4[_0x285e[1093]](this,_0x4fa0x2);_0x4fa0x3&&this[_0x285e[3245]](_0x4fa0x4)};return _0x4fa0x4};mxCodec[_0x285e[202]][_0x285e[3245]]=function(_0x4fa0x2){var _0x4fa0x3=_0x4fa0x2[_0x285e[1101]],_0x4fa0x4=_0x4fa0x2[_0x285e[1709]](!0),_0x4fa0x5=_0x4fa0x2[_0x285e[1709]](!1);_0x4fa0x2[_0x285e[1957]](null,!1);_0x4fa0x2[_0x285e[1957]](null,!0);_0x4fa0x2[_0x285e[1101]]=null;null!=_0x4fa0x3&&_0x4fa0x3[_0x285e[1937]](_0x4fa0x2);null!=_0x4fa0x4&&_0x4fa0x4[_0x285e[1960]](_0x4fa0x2,!0);null!=_0x4fa0x5&&_0x4fa0x5[_0x285e[1960]](_0x4fa0x2,!1)};mxCodec[_0x285e[202]][_0x285e[57]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null!=_0x4fa0x3&&null!=_0x4fa0x4&&_0x4fa0x2[_0x285e[57]](_0x4fa0x3,_0x4fa0x4)};function mxObjectCodec(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){this[_0x285e[3231]]=_0x4fa0x2;this[_0x285e[3246]]=null!=_0x4fa0x3?_0x4fa0x3:[];this[_0x285e[3247]]=null!=_0x4fa0x4?_0x4fa0x4:[];this[_0x285e[3248]]=null!=_0x4fa0x5?_0x4fa0x5:[];this[_0x285e[3249]]={};for(var _0x4fa0x9 in this[_0x285e[3248]]){this[_0x285e[3249]][this[_0x285e[3248]][_0x4fa0x9]]=_0x4fa0x9}}mxObjectCodec[_0x285e[202]][_0x285e[3231]]=null;mxObjectCodec[_0x285e[202]][_0x285e[3246]]=null;mxObjectCodec[_0x285e[202]][_0x285e[3247]]=null;mxObjectCodec[_0x285e[202]][_0x285e[3248]]=null;mxObjectCodec[_0x285e[202]][_0x285e[3249]]=null;mxObjectCodec[_0x285e[202]][_0x285e[718]]=function(){return mxUtils[_0x285e[197]](this[_0x285e[3231]][_0x285e[196]])};mxObjectCodec[_0x285e[202]][_0x285e[3250]]=function(){return new this[_0x285e[3231]][_0x285e[196]]};mxObjectCodec[_0x285e[202]][_0x285e[3251]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[3249]][_0x4fa0x2];null!=_0x4fa0x3&&(_0x4fa0x2=_0x4fa0x3)};return _0x4fa0x2};mxObjectCodec[_0x285e[202]][_0x285e[3252]]=function(_0x4fa0x2){if(null!=_0x4fa0x2){var _0x4fa0x3=this[_0x285e[3248]][_0x4fa0x2];null!=_0x4fa0x3&&(_0x4fa0x2=_0x4fa0x3)};return _0x4fa0x2};mxObjectCodec[_0x285e[202]][_0x285e[3253]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return _0x4fa0x3==mxObjectIdentity[_0x285e[195]]||0<=mxUtils[_0x285e[2]](this[_0x285e[3246]],_0x4fa0x3)};mxObjectCodec[_0x285e[202]][_0x285e[3254]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){return 0<=mxUtils[_0x285e[2]](this[_0x285e[3247]],_0x4fa0x3)};mxObjectCodec[_0x285e[202]][_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4=_0x4fa0x2[_0x285e[395]][_0x285e[55]](this[_0x285e[718]]());_0x4fa0x3=this[_0x285e[3255]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);this[_0x285e[3256]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);return this[_0x285e[3257]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)};mxObjectCodec[_0x285e[202]][_0x285e[3256]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2[_0x285e[57]](_0x4fa0x4,_0x285e[1363],_0x4fa0x2[_0x285e[1103]](_0x4fa0x3));for(var _0x4fa0x5 in _0x4fa0x3){var _0x4fa0x9=_0x4fa0x5,_0x4fa0xa=_0x4fa0x3[_0x4fa0x9];null!=_0x4fa0xa&&!this[_0x285e[3253]](_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,!0)&&(mxUtils[_0x285e[1946]](_0x4fa0x9)&&(_0x4fa0x9=null),this[_0x285e[3258]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9,_0x4fa0xa,_0x4fa0x4))}};mxObjectCodec[_0x285e[202]][_0x285e[3258]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){if(null!=_0x4fa0x5){if(this[_0x285e[3254]](_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,!0)){var _0x4fa0xa=_0x4fa0x2[_0x285e[1103]](_0x4fa0x5);if(null==_0x4fa0xa){mxLog[_0x285e[283]](_0x285e[3259]+this[_0x285e[718]]()+_0x285e[87]+_0x4fa0x4+_0x285e[226]+_0x4fa0x5);return};_0x4fa0x5=_0x4fa0xa};_0x4fa0xa=this[_0x285e[3231]][_0x4fa0x4];if(null==_0x4fa0x4||_0x4fa0x2[_0x285e[3235]]||_0x4fa0xa!=_0x4fa0x5){_0x4fa0x4=this[_0x285e[3252]](_0x4fa0x4),this[_0x285e[3260]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)}}};mxObjectCodec[_0x285e[202]][_0x285e[3260]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x285e[194]!= typeof _0x4fa0x5?this[_0x285e[3261]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9):this[_0x285e[3262]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9)};mxObjectCodec[_0x285e[202]][_0x285e[3261]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x5=this[_0x285e[3263]](_0x4fa0x5);null==_0x4fa0x4?(_0x4fa0x3=_0x4fa0x2[_0x285e[395]][_0x285e[55]](_0x285e[99]),_0x285e[279]== typeof _0x4fa0x5?_0x4fa0x3[_0x285e[62]](_0x4fa0x2[_0x285e[395]][_0x285e[344]](_0x4fa0x5)):_0x4fa0x2[_0x285e[57]](_0x4fa0x3,_0x285e[131],_0x4fa0x5),_0x4fa0x9[_0x285e[62]](_0x4fa0x3)):_0x285e[279]!= typeof _0x4fa0x5&&_0x4fa0x2[_0x285e[57]](_0x4fa0x9,_0x4fa0x4,_0x4fa0x5)};mxObjectCodec[_0x285e[202]][_0x285e[3262]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){_0x4fa0x2=_0x4fa0x2[_0x285e[514]](_0x4fa0x5);null!=_0x4fa0x2?(null!=_0x4fa0x4&&_0x4fa0x2[_0x285e[57]](_0x285e[3069],_0x4fa0x4),_0x4fa0x9[_0x285e[62]](_0x4fa0x2)):mxLog[_0x285e[283]](_0x285e[3264]+this[_0x285e[718]]()+_0x285e[87]+_0x4fa0x4+_0x285e[3186]+_0x4fa0x5)};mxObjectCodec[_0x285e[202]][_0x285e[3263]]=function(_0x4fa0x2){if(_0x285e[82]== typeof _0x4fa0x2[_0x285e[67]]&&(!0==_0x4fa0x2||!1==_0x4fa0x2)){_0x4fa0x2=!0==_0x4fa0x2?_0x285e[500]:_0x285e[468]};return _0x4fa0x2};mxObjectCodec[_0x285e[202]][_0x285e[3265]]=function(_0x4fa0x2){mxUtils[_0x285e[1946]](_0x4fa0x2)&&(_0x4fa0x2=parseFloat(_0x4fa0x2));return _0x4fa0x2};mxObjectCodec[_0x285e[202]][_0x285e[3255]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x3};mxObjectCodec[_0x285e[202]][_0x285e[3257]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x4};mxObjectCodec[_0x285e[202]][_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x3[_0x285e[284]](_0x285e[1363]),_0x4fa0x9=_0x4fa0x2[_0x285e[68]][_0x4fa0x5];null==_0x4fa0x9&&(_0x4fa0x9=_0x4fa0x4||this[_0x285e[3250]](),null!=_0x4fa0x5&&_0x4fa0x2[_0x285e[1104]](_0x4fa0x5,_0x4fa0x9));_0x4fa0x3=this[_0x285e[3266]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9);this[_0x285e[3267]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9);return this[_0x285e[3268]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x9)};mxObjectCodec[_0x285e[202]][_0x285e[3267]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){null!=_0x4fa0x3&&(this[_0x285e[3269]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4),this[_0x285e[3270]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4))};mxObjectCodec[_0x285e[202]][_0x285e[3269]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x3=_0x4fa0x3[_0x285e[320]];if(null!=_0x4fa0x3){for(var _0x4fa0x5=0;_0x4fa0x5<_0x4fa0x3[_0x285e[67]];_0x4fa0x5++){this[_0x285e[3271]](_0x4fa0x2,_0x4fa0x3[_0x4fa0x5],_0x4fa0x4)}}};mxObjectCodec[_0x285e[202]][_0x285e[3271]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x3[_0x285e[301]];if(_0x285e[3069]!=_0x4fa0x5&&_0x285e[1363]!=_0x4fa0x5){_0x4fa0x3=this[_0x285e[3265]](_0x4fa0x3[_0x285e[318]]);var _0x4fa0x9=this[_0x285e[3251]](_0x4fa0x5);if(this[_0x285e[3254]](_0x4fa0x4,_0x4fa0x9,_0x4fa0x3,!1)){_0x4fa0x2=_0x4fa0x2[_0x285e[3236]](_0x4fa0x3);if(null==_0x4fa0x2){mxLog[_0x285e[283]](_0x285e[3272]+this[_0x285e[718]]()+_0x285e[87]+_0x4fa0x5+_0x285e[226]+_0x4fa0x3);return};_0x4fa0x3=_0x4fa0x2};this[_0x285e[3253]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x3,!1)||(_0x4fa0x4[_0x4fa0x5]=_0x4fa0x3)}};mxObjectCodec[_0x285e[202]][_0x285e[3270]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){for(_0x4fa0x3=_0x4fa0x3[_0x285e[285]];null!=_0x4fa0x3;){var _0x4fa0x5=_0x4fa0x3[_0x285e[287]];_0x4fa0x3[_0x285e[288]]==mxConstants[_0x285e[289]]&&!this[_0x285e[3273]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4)&&this[_0x285e[3274]](_0x4fa0x2,_0x4fa0x3,_0x4fa0x4);_0x4fa0x3=_0x4fa0x5}};mxObjectCodec[_0x285e[202]][_0x285e[3274]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){var _0x4fa0x5=this[_0x285e[3251]](_0x4fa0x3[_0x285e[284]](_0x285e[3069]));if(null==_0x4fa0x5||!this[_0x285e[3253]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x3,!1)){var _0x4fa0x9=this[_0x285e[3275]](_0x4fa0x4,_0x4fa0x5,_0x4fa0x3),_0x4fa0xa=null;_0x285e[99]==_0x4fa0x3[_0x285e[301]]?(_0x4fa0xa=_0x4fa0x3[_0x285e[284]](_0x285e[131]),null==_0x4fa0xa&&(_0x4fa0xa=mxUtils[_0x285e[1545]](mxUtils[_0x285e[329]](_0x4fa0x3)))):_0x4fa0xa=_0x4fa0x2[_0x285e[1093]](_0x4fa0x3,_0x4fa0x9);this[_0x285e[3276]](_0x4fa0x4,_0x4fa0x5,_0x4fa0xa,_0x4fa0x9)}};mxObjectCodec[_0x285e[202]][_0x285e[3275]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){_0x4fa0x2=_0x4fa0x2[_0x4fa0x3];_0x4fa0x2 instanceof Array&&0<_0x4fa0x2[_0x285e[67]]&&(_0x4fa0x2=null);return _0x4fa0x2};mxObjectCodec[_0x285e[202]][_0x285e[3276]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4,_0x4fa0x5){null!=_0x4fa0x4&&_0x4fa0x4!=_0x4fa0x5&&(null!=_0x4fa0x3&&0<_0x4fa0x3[_0x285e[67]]?_0x4fa0x2[_0x4fa0x3]=_0x4fa0x4:_0x4fa0x2[_0x285e[207]](_0x4fa0x4))};mxObjectCodec[_0x285e[202]][_0x285e[3273]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){if(_0x285e[3277]==_0x4fa0x3[_0x285e[301]]){_0x4fa0x3=_0x4fa0x3[_0x285e[284]](_0x285e[298]);if(null!=_0x4fa0x3){try{var _0x4fa0x5=mxUtils[_0x285e[219]](_0x4fa0x3)[_0x285e[874]]();null!=_0x4fa0x5&&_0x4fa0x2[_0x285e[1093]](_0x4fa0x5,_0x4fa0x4)}catch(e){}};return !0};return !1};mxObjectCodec[_0x285e[202]][_0x285e[3266]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x3};mxObjectCodec[_0x285e[202]][_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x3,_0x4fa0x4){return _0x4fa0x4};mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxCell,[_0x285e[1954],_0x285e[1842],_0x285e[1211],_0x285e[1991]],[_0x285e[1101],_0x285e[1097],_0x285e[772]]);_0x4fa0x2[_0x285e[3243]]=function(){return !0};_0x4fa0x2[_0x285e[3253]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return mxObjectCodec[_0x285e[202]][_0x285e[3253]][_0x285e[183]](this,arguments)||_0x4fa0x9&&_0x285e[131]==_0x4fa0x4&&_0x4fa0x5[_0x285e[288]]==mxConstants[_0x285e[289]]};_0x4fa0x2[_0x285e[3257]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x4[_0x285e[131]]&&_0x4fa0x4[_0x285e[131]][_0x285e[288]]==mxConstants[_0x285e[289]]){var _0x4fa0x9=_0x4fa0x5;_0x4fa0x5=mxClient[_0x285e[80]]?_0x4fa0x4[_0x285e[131]][_0x285e[511]](!0):_0x4fa0x2[_0x285e[395]][_0x285e[3239]](_0x4fa0x4[_0x285e[131]],!0);_0x4fa0x5[_0x285e[62]](_0x4fa0x9);_0x4fa0x2=_0x4fa0x9[_0x285e[284]](_0x285e[1363]);_0x4fa0x5[_0x285e[57]](_0x285e[1363],_0x4fa0x2);_0x4fa0x9[_0x285e[1390]](_0x285e[1363])};return _0x4fa0x5};_0x4fa0x2[_0x285e[3266]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x4,_0x4fa0xa=this[_0x285e[718]]();_0x4fa0x4[_0x285e[301]]!=_0x4fa0xa?(_0x4fa0x9=_0x4fa0x4[_0x285e[64]](_0x4fa0xa)[0],null!=_0x4fa0x9&&_0x4fa0x9[_0x285e[265]]==_0x4fa0x4?(mxUtils[_0x285e[3278]](_0x4fa0x9,!0),mxUtils[_0x285e[3278]](_0x4fa0x9,!1),_0x4fa0x9[_0x285e[265]][_0x285e[266]](_0x4fa0x9)):_0x4fa0x9=null,_0x4fa0x5[_0x285e[131]]=_0x4fa0x4[_0x285e[511]](!0),_0x4fa0x4=_0x4fa0x5[_0x285e[131]][_0x285e[284]](_0x285e[1363]),null!=_0x4fa0x4&&(_0x4fa0x5[_0x285e[1945]](_0x4fa0x4),_0x4fa0x5[_0x285e[131]][_0x285e[1390]](_0x285e[1363]))):_0x4fa0x5[_0x285e[1945]](_0x4fa0x4[_0x285e[284]](_0x285e[1363]));if(null!=_0x4fa0x9){for(_0x4fa0x4=0;_0x4fa0x4<this[_0x285e[3247]][_0x285e[67]];_0x4fa0x4++){var _0x4fa0xa=this[_0x285e[3247]][_0x4fa0x4],_0x4fa0x12=_0x4fa0x9[_0x285e[284]](_0x4fa0xa);if(null!=_0x4fa0x12){_0x4fa0x9[_0x285e[1390]](_0x4fa0xa);var _0x4fa0x13=_0x4fa0x2[_0x285e[68]][_0x4fa0x12]||_0x4fa0x2[_0x285e[1060]](_0x4fa0x12);null==_0x4fa0x13&&(_0x4fa0x12=_0x4fa0x2[_0x285e[1362]](_0x4fa0x12),null!=_0x4fa0x12&&(_0x4fa0x13=(mxCodecRegistry[_0x285e[3230]][_0x4fa0x12[_0x285e[301]]]||this)[_0x285e[1093]](_0x4fa0x2,_0x4fa0x12)));_0x4fa0x5[_0x4fa0xa]=_0x4fa0x13}}};return _0x4fa0x9};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxGraphModel);_0x4fa0x2[_0x285e[3256]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x2[_0x285e[395]][_0x285e[55]](_0x285e[813]);_0x4fa0x2[_0x285e[3242]](_0x4fa0x4[_0x285e[501]](),_0x4fa0x9);_0x4fa0x5[_0x285e[62]](_0x4fa0x9)};_0x4fa0x2[_0x285e[3274]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x285e[813]==_0x4fa0x4[_0x285e[301]]?this[_0x285e[3279]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5):mxObjectCodec[_0x285e[202]][_0x285e[3274]][_0x285e[183]](this,arguments)};_0x4fa0x2[_0x285e[3279]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=null;for(_0x4fa0x4=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x4;){var _0x4fa0xa=_0x4fa0x2[_0x285e[3244]](_0x4fa0x4);null!=_0x4fa0xa&&null==_0x4fa0xa[_0x285e[1197]]()&&(_0x4fa0x9=_0x4fa0xa);_0x4fa0x4=_0x4fa0x4[_0x285e[287]]};null!=_0x4fa0x9&&_0x4fa0x5[_0x285e[1927]](_0x4fa0x9)};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxRootChange,[_0x285e[251],_0x285e[257],_0x285e[813]]);_0x4fa0x2[_0x285e[3257]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2[_0x285e[3242]](_0x4fa0x4[_0x285e[813]],_0x4fa0x5);return _0x4fa0x5};_0x4fa0x2[_0x285e[3266]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x4[_0x285e[285]]&&_0x4fa0x4[_0x285e[285]][_0x285e[288]]==mxConstants[_0x285e[289]]){_0x4fa0x4=_0x4fa0x4[_0x285e[511]](!0);var _0x4fa0x9=_0x4fa0x4[_0x285e[285]];_0x4fa0x5[_0x285e[813]]=_0x4fa0x2[_0x285e[3244]](_0x4fa0x9,!1);_0x4fa0x5=_0x4fa0x9[_0x285e[287]];_0x4fa0x9[_0x285e[265]][_0x285e[266]](_0x4fa0x9);for(_0x4fa0x9=_0x4fa0x5;null!=_0x4fa0x9;){_0x4fa0x5=_0x4fa0x9[_0x285e[287]],_0x4fa0x2[_0x285e[3244]](_0x4fa0x9),_0x4fa0x9[_0x285e[265]][_0x285e[266]](_0x4fa0x9),_0x4fa0x9=_0x4fa0x5}};return _0x4fa0x4};_0x4fa0x2[_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5[_0x285e[257]]=_0x4fa0x5[_0x285e[813]];return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxChildChange,[_0x285e[251],_0x285e[247],_0x285e[1982]],[_0x285e[1101],_0x285e[257]]);_0x4fa0x2[_0x285e[3254]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5,_0x4fa0x9){return _0x285e[247]==_0x4fa0x4&&(null!=_0x4fa0x2[_0x285e[257]]|| !_0x4fa0x9)?!0:0<=mxUtils[_0x285e[2]](this[_0x285e[3247]],_0x4fa0x4)};_0x4fa0x2[_0x285e[3257]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){this[_0x285e[3254]](_0x4fa0x4,_0x285e[247],_0x4fa0x4[_0x285e[247]],!0)?_0x4fa0x5[_0x285e[57]](_0x285e[247],_0x4fa0x2[_0x285e[1103]](_0x4fa0x4[_0x285e[247]])):_0x4fa0x2[_0x285e[3242]](_0x4fa0x4[_0x285e[247]],_0x4fa0x5);return _0x4fa0x5};_0x4fa0x2[_0x285e[3266]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x4[_0x285e[285]]&&_0x4fa0x4[_0x285e[285]][_0x285e[288]]==mxConstants[_0x285e[289]]){_0x4fa0x4=_0x4fa0x4[_0x285e[511]](!0);var _0x4fa0x9=_0x4fa0x4[_0x285e[285]];_0x4fa0x5[_0x285e[247]]=_0x4fa0x2[_0x285e[3244]](_0x4fa0x9,!1);_0x4fa0x5=_0x4fa0x9[_0x285e[287]];_0x4fa0x9[_0x285e[265]][_0x285e[266]](_0x4fa0x9);for(_0x4fa0x9=_0x4fa0x5;null!=_0x4fa0x9;){_0x4fa0x5=_0x4fa0x9[_0x285e[287]];if(_0x4fa0x9[_0x285e[288]]==mxConstants[_0x285e[289]]){var _0x4fa0xa=_0x4fa0x9[_0x285e[284]](_0x285e[1363]);null==_0x4fa0x2[_0x285e[1060]](_0x4fa0xa)&&_0x4fa0x2[_0x285e[3244]](_0x4fa0x9)};_0x4fa0x9[_0x285e[265]][_0x285e[266]](_0x4fa0x9);_0x4fa0x9=_0x4fa0x5}}else {_0x4fa0x9=_0x4fa0x4[_0x285e[284]](_0x285e[247]),_0x4fa0x5[_0x285e[247]]=_0x4fa0x2[_0x285e[3236]](_0x4fa0x9)};return _0x4fa0x4};_0x4fa0x2[_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5[_0x285e[247]][_0x285e[1101]]=_0x4fa0x5[_0x285e[257]];_0x4fa0x5[_0x285e[257]]=_0x4fa0x5[_0x285e[1101]];_0x4fa0x5[_0x285e[1982]]=_0x4fa0x5[_0x285e[1983]];return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxTerminalChange,[_0x285e[251],_0x285e[257]],[_0x285e[246],_0x285e[1984]]);_0x4fa0x2[_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5[_0x285e[257]]=_0x4fa0x5[_0x285e[1984]];return _0x4fa0x5};return _0x4fa0x2}());var mxGenericChangeCodec=function(_0x4fa0x2,_0x4fa0x3){var _0x4fa0x4= new mxObjectCodec(_0x4fa0x2,[_0x285e[251],_0x285e[257]],[_0x285e[246]]);_0x4fa0x4[_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0xa){mxUtils[_0x285e[1331]](_0x4fa0xa[_0x285e[246]])&&(_0x4fa0xa[_0x285e[246]]=_0x4fa0x2[_0x285e[3244]](_0x4fa0xa[_0x285e[246]],!1));_0x4fa0xa[_0x285e[257]]=_0x4fa0xa[_0x4fa0x3];return _0x4fa0xa};return _0x4fa0x4};mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxValueChange,_0x285e[131]));mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxStyleChange,_0x285e[124]));mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxGeometryChange,_0x285e[256]));mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxCollapseChange,_0x285e[1985]));mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxVisibleChange,_0x285e[189]));mxCodecRegistry[_0x285e[3234]](mxGenericChangeCodec( new mxCellAttributeChange,_0x285e[131]));mxCodecRegistry[_0x285e[3234]](function(){return new mxObjectCodec( new mxGraph,_0x285e[3280][_0x285e[224]](_0x285e[185]))}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxGraphView);_0x4fa0x2[_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x4){return this[_0x285e[3242]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x4[_0x285e[1179]][_0x285e[502]]()[_0x285e[501]]())};_0x4fa0x2[_0x285e[3242]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x4[_0x285e[1179]][_0x285e[502]](),_0x4fa0xa=_0x4fa0x4[_0x285e[248]](_0x4fa0x5),_0x4fa0x12=_0x4fa0x9[_0x285e[1197]](_0x4fa0x5);if(null==_0x4fa0x12||null!=_0x4fa0xa){var _0x4fa0x13=_0x4fa0x9[_0x285e[262]](_0x4fa0x5),_0x4fa0x14=_0x4fa0x4[_0x285e[1179]][_0x285e[1198]](_0x4fa0x5),_0x4fa0x15=null;_0x4fa0x12==_0x4fa0x9[_0x285e[501]]()?_0x4fa0x15=_0x285e[3281]:null==_0x4fa0x12?_0x4fa0x15=_0x285e[1179]:_0x4fa0x9[_0x285e[250]](_0x4fa0x5)?_0x4fa0x15=_0x285e[1989]:0<_0x4fa0x13&&null!=_0x4fa0x14?_0x4fa0x15=_0x285e[1504]:_0x4fa0x9[_0x285e[1193]](_0x4fa0x5)&&(_0x4fa0x15=_0x285e[1988]);if(null!=_0x4fa0x15){var _0x4fa0x16=_0x4fa0x2[_0x285e[395]][_0x285e[55]](_0x4fa0x15);null!=_0x4fa0x4[_0x285e[1179]][_0x285e[2183]](_0x4fa0x5)&&(_0x4fa0x16[_0x285e[57]](_0x285e[685],_0x4fa0x4[_0x285e[1179]][_0x285e[2183]](_0x4fa0x5)),_0x4fa0x4[_0x285e[1179]][_0x285e[2186]](_0x4fa0x5)&&_0x4fa0x16[_0x285e[57]](_0x285e[1428],!0));if(null==_0x4fa0x12){var _0x4fa0x17=_0x4fa0x4[_0x285e[517]]();null!=_0x4fa0x17&&(_0x4fa0x16[_0x285e[57]](_0x285e[235],Math[_0x285e[488]](_0x4fa0x17[_0x285e[235]])),_0x4fa0x16[_0x285e[57]](_0x285e[236],Math[_0x285e[488]](_0x4fa0x17[_0x285e[236]])),_0x4fa0x16[_0x285e[57]](_0x285e[117],Math[_0x285e[488]](_0x4fa0x17[_0x285e[117]])),_0x4fa0x16[_0x285e[57]](_0x285e[119],Math[_0x285e[488]](_0x4fa0x17[_0x285e[119]])));_0x4fa0x16[_0x285e[57]](_0x285e[255],_0x4fa0x4[_0x285e[255]])}else {if(null!=_0x4fa0xa&&null!=_0x4fa0x14){for(_0x4fa0x17 in _0x4fa0xa[_0x285e[124]]){_0x4fa0x12=_0x4fa0xa[_0x285e[124]][_0x4fa0x17],_0x285e[279]== typeof _0x4fa0x12&&_0x285e[194]== typeof _0x4fa0x12&&(_0x4fa0x12=mxStyleRegistry[_0x285e[718]](_0x4fa0x12)),null!=_0x4fa0x12&&(_0x285e[279]!= typeof _0x4fa0x12&&_0x285e[194]!= typeof _0x4fa0x12)&&_0x4fa0x16[_0x285e[57]](_0x4fa0x17,_0x4fa0x12)};_0x4fa0x12=_0x4fa0xa[_0x285e[439]];if(null!=_0x4fa0x12&&0<_0x4fa0x12[_0x285e[67]]){_0x4fa0x14=Math[_0x285e[488]](_0x4fa0x12[0][_0x285e[235]])+_0x285e[537]+Math[_0x285e[488]](_0x4fa0x12[0][_0x285e[236]]);for(_0x4fa0x17=1;_0x4fa0x17<_0x4fa0x12[_0x285e[67]];_0x4fa0x17++){_0x4fa0x14+=_0x285e[185]+Math[_0x285e[488]](_0x4fa0x12[_0x4fa0x17][_0x285e[235]])+_0x285e[537]+Math[_0x285e[488]](_0x4fa0x12[_0x4fa0x17][_0x285e[236]])};_0x4fa0x16[_0x285e[57]](_0x285e[1525],_0x4fa0x14)}else {_0x4fa0x16[_0x285e[57]](_0x285e[235],Math[_0x285e[488]](_0x4fa0xa[_0x285e[235]])),_0x4fa0x16[_0x285e[57]](_0x285e[236],Math[_0x285e[488]](_0x4fa0xa[_0x285e[236]])),_0x4fa0x16[_0x285e[57]](_0x285e[117],Math[_0x285e[488]](_0x4fa0xa[_0x285e[117]])),_0x4fa0x16[_0x285e[57]](_0x285e[119],Math[_0x285e[488]](_0x4fa0xa[_0x285e[119]]))};_0x4fa0x17=_0x4fa0xa[_0x285e[2079]];null!=_0x4fa0x17&&(0!=_0x4fa0x17[_0x285e[235]]&&_0x4fa0x16[_0x285e[57]](_0x285e[1126],Math[_0x285e[488]](_0x4fa0x17[_0x285e[235]])),0!=_0x4fa0x17[_0x285e[236]]&&_0x4fa0x16[_0x285e[57]](_0x285e[1125],Math[_0x285e[488]](_0x4fa0x17[_0x285e[236]])))}};for(_0x4fa0x17=0;_0x4fa0x17<_0x4fa0x13;_0x4fa0x17++){_0x4fa0xa=this[_0x285e[3242]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x9[_0x285e[263]](_0x4fa0x5,_0x4fa0x17)),null!=_0x4fa0xa&&_0x4fa0x16[_0x285e[62]](_0x4fa0xa)}}};return _0x4fa0x16};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxStylesheet);_0x4fa0x2[_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x4){var _0x4fa0x5=_0x4fa0x2[_0x285e[395]][_0x285e[55]](this[_0x285e[718]]()),_0x4fa0x9;for(_0x4fa0x9 in _0x4fa0x4[_0x285e[2054]]){var _0x4fa0xa=_0x4fa0x4[_0x285e[2054]][_0x4fa0x9],_0x4fa0x12=_0x4fa0x2[_0x285e[395]][_0x285e[55]](_0x285e[99]);if(null!=_0x4fa0x9){_0x4fa0x12[_0x285e[57]](_0x285e[3069],_0x4fa0x9);for(var _0x4fa0x13 in _0x4fa0xa){var _0x4fa0x14=this[_0x285e[3282]](_0x4fa0x13,_0x4fa0xa[_0x4fa0x13]);if(null!=_0x4fa0x14){var _0x4fa0x15=_0x4fa0x2[_0x285e[395]][_0x285e[55]](_0x285e[99]);_0x4fa0x15[_0x285e[57]](_0x285e[131],_0x4fa0x14);_0x4fa0x15[_0x285e[57]](_0x285e[3069],_0x4fa0x13);_0x4fa0x12[_0x285e[62]](_0x4fa0x15)}};0<_0x4fa0x12[_0x285e[271]][_0x285e[67]]&&_0x4fa0x5[_0x285e[62]](_0x4fa0x12)}};return _0x4fa0x5};_0x4fa0x2[_0x285e[3282]]=function(_0x4fa0x2,_0x4fa0x4){var _0x4fa0x5= typeof _0x4fa0x4;_0x285e[279]==_0x4fa0x5?_0x4fa0x4=mxStyleRegistry[_0x285e[718]](style[j]):_0x285e[194]==_0x4fa0x5&&(_0x4fa0x4=null);return _0x4fa0x4};_0x4fa0x2[_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x5=_0x4fa0x5|| new this[_0x285e[3231]][_0x285e[196]];var _0x4fa0x9=_0x4fa0x4[_0x285e[284]](_0x285e[1363]);null!=_0x4fa0x9&&(_0x4fa0x2[_0x285e[68]][_0x4fa0x9]=_0x4fa0x5);for(_0x4fa0x4=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x4;){if(!this[_0x285e[3273]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5)&&_0x285e[99]==_0x4fa0x4[_0x285e[301]]&&(_0x4fa0x9=_0x4fa0x4[_0x285e[284]](_0x285e[3069]),null!=_0x4fa0x9)){var _0x4fa0xa=_0x4fa0x4[_0x285e[284]](_0x285e[1284]),_0x4fa0x12=null!=_0x4fa0xa?mxUtils[_0x285e[238]](_0x4fa0x5[_0x285e[2054]][_0x4fa0xa]):null;null==_0x4fa0x12&&(null!=_0x4fa0xa&&mxLog[_0x285e[283]](_0x285e[3283]+_0x4fa0xa+_0x285e[3284]),_0x4fa0x12={});for(_0x4fa0xa=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0xa;){if(_0x4fa0xa[_0x285e[288]]==mxConstants[_0x285e[289]]){var _0x4fa0x13=_0x4fa0xa[_0x285e[284]](_0x285e[3069]);if(_0x285e[99]==_0x4fa0xa[_0x285e[301]]){var _0x4fa0x14=mxUtils[_0x285e[329]](_0x4fa0xa),_0x4fa0x15=null;null!=_0x4fa0x14&&0<_0x4fa0x14[_0x285e[67]]?_0x4fa0x15=mxUtils[_0x285e[1545]](_0x4fa0x14):(_0x4fa0x15=_0x4fa0xa[_0x285e[284]](_0x285e[131]),mxUtils[_0x285e[1946]](_0x4fa0x15)&&(_0x4fa0x15=parseFloat(_0x4fa0x15)));null!=_0x4fa0x15&&(_0x4fa0x12[_0x4fa0x13]=_0x4fa0x15)}else {_0x285e[205]==_0x4fa0xa[_0x285e[301]]&& delete _0x4fa0x12[_0x4fa0x13]}};_0x4fa0xa=_0x4fa0xa[_0x285e[287]]};_0x4fa0x5[_0x285e[2074]](_0x4fa0x9,_0x4fa0x12)};_0x4fa0x4=_0x4fa0x4[_0x285e[287]]};return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxDefaultKeyHandler);_0x4fa0x2[_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x4){return null};_0x4fa0x2[_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x5){for(_0x4fa0x4=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x4;){if(!this[_0x285e[3273]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5)&&_0x285e[99]==_0x4fa0x4[_0x285e[301]]){var _0x4fa0x9=_0x4fa0x4[_0x285e[284]](_0x285e[3069]),_0x4fa0xa=_0x4fa0x4[_0x285e[284]](_0x285e[892]),_0x4fa0x12=_0x4fa0x4[_0x285e[284]](_0x285e[2207]);_0x4fa0x5[_0x285e[3063]](_0x4fa0x9,_0x4fa0xa,_0x4fa0x12)};_0x4fa0x4=_0x4fa0x4[_0x285e[287]]}};return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxDefaultToolbar);_0x4fa0x2[_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x4){return null};_0x4fa0x2[_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(null!=_0x4fa0x5){var _0x4fa0x9=_0x4fa0x5[_0x285e[3061]];for(_0x4fa0x4=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x4;){if(_0x4fa0x4[_0x285e[288]]==mxConstants[_0x285e[289]]&&!this[_0x285e[3273]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5)){if(_0x285e[3072]==_0x4fa0x4[_0x285e[301]]){_0x4fa0x5[_0x285e[1051]]()}else {if(_0x285e[345]==_0x4fa0x4[_0x285e[301]]){_0x4fa0x5[_0x285e[3082]][_0x285e[1052]]()}else {if(_0x285e[1054]==_0x4fa0x4[_0x285e[301]]){_0x4fa0x5[_0x285e[3082]][_0x285e[1053]]()}else {if(_0x285e[99]==_0x4fa0x4[_0x285e[301]]){var _0x4fa0xa=_0x4fa0x4[_0x285e[284]](_0x285e[3069]),_0x4fa0xa=mxResources[_0x285e[203]](_0x4fa0xa)||_0x4fa0xa,_0x4fa0x12=_0x4fa0x4[_0x285e[284]](_0x285e[2916]),_0x4fa0x13=_0x4fa0x4[_0x285e[284]](_0x285e[3285]),_0x4fa0x14=_0x4fa0x4[_0x285e[284]](_0x285e[892]),_0x4fa0x15=_0x4fa0x4[_0x285e[284]](_0x285e[3286]),_0x4fa0x16=_0x4fa0x4[_0x285e[284]](_0x285e[3231]),_0x4fa0x17=_0x285e[468]!=_0x4fa0x4[_0x285e[284]](_0x285e[3287]),_0x4fa0x18=mxUtils[_0x285e[329]](_0x4fa0x4),_0x4fa0x19=null;if(null!=_0x4fa0x14){_0x4fa0x19=_0x4fa0x5[_0x285e[1025]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x14,_0x4fa0x13)}else {if(null!=_0x4fa0x15){var _0x4fa0x1a=mxUtils[_0x285e[1545]](_0x4fa0x18),_0x4fa0x19=_0x4fa0x5[_0x285e[1048]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x15,_0x4fa0x13,_0x4fa0x1a)}else {if(null!=_0x4fa0x16||null!=_0x4fa0x18&&0<_0x4fa0x18[_0x285e[67]]){_0x4fa0x19=_0x4fa0x9[_0x285e[3118]][_0x4fa0x16],_0x4fa0x16=_0x4fa0x4[_0x285e[284]](_0x285e[124]),null!=_0x4fa0x19&&null!=_0x4fa0x16&&(_0x4fa0x19=_0x4fa0x19[_0x285e[238]](),_0x4fa0x19[_0x285e[475]](_0x4fa0x16)),_0x4fa0x16=null,null!=_0x4fa0x18&&0<_0x4fa0x18[_0x285e[67]]&&(_0x4fa0x16=mxUtils[_0x285e[1545]](_0x4fa0x18)),_0x4fa0x19=_0x4fa0x5[_0x285e[3087]](_0x4fa0xa,_0x4fa0x12,_0x4fa0x19,_0x4fa0x13,_0x4fa0x16,_0x4fa0x17)}else {if(_0x4fa0x13=mxUtils[_0x285e[1540]](_0x4fa0x4),0<_0x4fa0x13[_0x285e[67]]){if(null==_0x4fa0x12){_0x4fa0x16=_0x4fa0x5[_0x285e[1038]](_0x4fa0xa);for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x13[_0x285e[67]];_0x4fa0xa++){_0x4fa0x17=_0x4fa0x13[_0x4fa0xa],_0x285e[3072]==_0x4fa0x17[_0x285e[301]]?_0x4fa0x5[_0x285e[972]](_0x4fa0x16,_0x285e[3288]):_0x285e[99]==_0x4fa0x17[_0x285e[301]]&&(_0x4fa0x12=_0x4fa0x17[_0x285e[284]](_0x285e[3069]),_0x4fa0x17=_0x4fa0x17[_0x285e[284]](_0x285e[892]),_0x4fa0x5[_0x285e[3085]](_0x4fa0x16,_0x4fa0x12,_0x4fa0x17))}}else {var _0x4fa0x1b=null,_0x4fa0x1c=_0x4fa0x5[_0x285e[3087]](_0x4fa0xa,_0x4fa0x12,function(){var _0x4fa0x2=_0x4fa0x9[_0x285e[3118]][_0x4fa0x1b[_0x285e[131]]];if(null!=_0x4fa0x2){var _0x4fa0x2=_0x4fa0x2[_0x285e[238]](),_0x4fa0x3=_0x4fa0x1b[_0x285e[1040]][_0x4fa0x1b[_0x285e[1039]]][_0x285e[3289]];null!=_0x4fa0x3&&_0x4fa0x2[_0x285e[475]](_0x4fa0x3);return _0x4fa0x2};mxLog[_0x285e[283]](_0x285e[3290]+_0x4fa0x2+_0x285e[3291]);return null},null,null,_0x4fa0x17),_0x4fa0x1b=_0x4fa0x5[_0x285e[970]]();mxEvent[_0x285e[169]](_0x4fa0x1b,_0x285e[826],function(){_0x4fa0x5[_0x285e[3082]][_0x285e[1047]](_0x4fa0x1c,function(_0x4fa0x2){_0x4fa0x2=mxUtils[_0x285e[2196]](_0x4fa0x9[_0x285e[1179]][_0x285e[526]],mxEvent[_0x285e[731]](_0x4fa0x2),mxEvent[_0x285e[733]](_0x4fa0x2));return _0x4fa0x9[_0x285e[817]](null,_0x4fa0x1a(),_0x4fa0x2[_0x285e[235]],_0x4fa0x2[_0x285e[236]])});_0x4fa0x5[_0x285e[3082]][_0x285e[1023]]= !1});for(_0x4fa0xa=0;_0x4fa0xa<_0x4fa0x13[_0x285e[67]];_0x4fa0xa++){_0x4fa0x17=_0x4fa0x13[_0x4fa0xa],_0x285e[3072]==_0x4fa0x17[_0x285e[301]]?_0x4fa0x5[_0x285e[972]](_0x4fa0x1b,_0x285e[3288]):_0x285e[99]==_0x4fa0x17[_0x285e[301]]&&(_0x4fa0x12=_0x4fa0x17[_0x285e[284]](_0x285e[3069]),_0x4fa0x18=_0x4fa0x17[_0x285e[284]](_0x285e[3231]),_0x4fa0x5[_0x285e[972]](_0x4fa0x1b,_0x4fa0x12,_0x4fa0x18||_0x4fa0x16)[_0x285e[3289]]=_0x4fa0x17[_0x285e[284]](_0x285e[124]))}}}}}};null!=_0x4fa0x19&&(_0x4fa0x16=_0x4fa0x4[_0x285e[284]](_0x285e[1363]),null!=_0x4fa0x16&&0<_0x4fa0x16[_0x285e[67]]&&_0x4fa0x19[_0x285e[57]](_0x285e[1363],_0x4fa0x16))}}}}};_0x4fa0x4=_0x4fa0x4[_0x285e[287]]}};return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxDefaultPopupMenu);_0x4fa0x2[_0x285e[514]]=function(_0x4fa0x2,_0x4fa0x4){return null};_0x4fa0x2[_0x285e[1093]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){var _0x4fa0x9=_0x4fa0x4[_0x285e[64]](_0x285e[3277])[0];null!=_0x4fa0x9?this[_0x285e[3273]](_0x4fa0x2,_0x4fa0x9,_0x4fa0x5):null!=_0x4fa0x5&&(_0x4fa0x5[_0x285e[3064]]=_0x4fa0x4);return _0x4fa0x5};return _0x4fa0x2}());mxCodecRegistry[_0x285e[3234]](function(){var _0x4fa0x2= new mxObjectCodec( new mxEditor,_0x285e[3292][_0x285e[224]](_0x285e[185]));_0x4fa0x2[_0x285e[3268]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){_0x4fa0x2=_0x4fa0x4[_0x285e[284]](_0x285e[2075]);null!=_0x4fa0x2&&(_0x4fa0x4[_0x285e[1390]](_0x285e[2075]),_0x4fa0x5[_0x285e[2075]]=_0x4fa0x5[_0x285e[3118]][_0x4fa0x2]);_0x4fa0x2=_0x4fa0x4[_0x285e[284]](_0x285e[3120]);null!=_0x4fa0x2&&(_0x4fa0x4[_0x285e[1390]](_0x285e[3120]),_0x4fa0x5[_0x285e[3120]]=_0x4fa0x5[_0x285e[3118]][_0x4fa0x2]);return _0x4fa0x5};_0x4fa0x2[_0x285e[3274]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){if(_0x285e[3293]==_0x4fa0x4[_0x285e[301]]){if(_0x285e[3118]==_0x4fa0x4[_0x285e[284]](_0x285e[3069])){this[_0x285e[3294]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5);return}}else {if(_0x285e[3295]==_0x4fa0x4[_0x285e[301]]){this[_0x285e[3296]](_0x4fa0x2,_0x4fa0x4,_0x4fa0x5);return}};mxObjectCodec[_0x285e[202]][_0x285e[3274]][_0x285e[183]](this,arguments)};_0x4fa0x2[_0x285e[3296]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){for(_0x4fa0x2=_0x4fa0x4[_0x285e[285]];null!=_0x4fa0x2;){if(_0x285e[99]==_0x4fa0x2[_0x285e[301]]){_0x4fa0x4=_0x4fa0x2[_0x285e[284]](_0x285e[3069]);var _0x4fa0x9=_0x4fa0x2[_0x285e[284]](_0x285e[980]),_0x4fa0xa=_0x4fa0x2[_0x285e[284]](_0x285e[124]),_0x4fa0x12=null;if(null!=_0x4fa0x9){_0x4fa0x12=document[_0x285e[1362]](_0x4fa0x9),null!=_0x4fa0x12&&null!=_0x4fa0xa&&(_0x4fa0x12[_0x285e[124]][_0x285e[103]]+=_0x285e[471]+_0x4fa0xa)}else {var _0x4fa0x9=parseInt(_0x4fa0x2[_0x285e[284]](_0x285e[235])),_0x4fa0x13=parseInt(_0x4fa0x2[_0x285e[284]](_0x285e[236])),_0x4fa0x14=_0x4fa0x2[_0x285e[284]](_0x285e[117]),_0x4fa0x15=_0x4fa0x2[_0x285e[284]](_0x285e[119]),_0x4fa0x12=document[_0x285e[55]](_0x285e[485]);_0x4fa0x12[_0x285e[124]][_0x285e[103]]=_0x4fa0xa;( new mxWindow(mxResources[_0x285e[203]](_0x4fa0x4)||_0x4fa0x4,_0x4fa0x12,_0x4fa0x9,_0x4fa0x13,_0x4fa0x14,_0x4fa0x15,!1,!0))[_0x285e[175]](!0)};_0x285e[1179]==_0x4fa0x4?_0x4fa0x5[_0x285e[3202]](_0x4fa0x12):_0x285e[3082]==_0x4fa0x4?_0x4fa0x5[_0x285e[3204]](_0x4fa0x12):_0x285e[924]==_0x4fa0x4?_0x4fa0x5[_0x285e[3208]](_0x4fa0x12):_0x285e[879]==_0x4fa0x4?_0x4fa0x5[_0x285e[3205]](_0x4fa0x12):_0x285e[201]==_0x4fa0x4&&_0x4fa0x5[_0x285e[3297]](_0x4fa0x12)}else {_0x285e[3298]==_0x4fa0x2[_0x285e[301]]?mxResources[_0x285e[99]](_0x4fa0x2[_0x285e[284]](_0x285e[3299])):_0x285e[94]==_0x4fa0x2[_0x285e[301]]&&mxClient[_0x285e[54]](_0x285e[94],_0x4fa0x2[_0x285e[284]](_0x285e[298]))};_0x4fa0x2=_0x4fa0x2[_0x285e[287]]}};_0x4fa0x2[_0x285e[3294]]=function(_0x4fa0x2,_0x4fa0x4,_0x4fa0x5){null==_0x4fa0x5[_0x285e[3118]]&&(_0x4fa0x5[_0x285e[3118]]=[]);_0x4fa0x4=mxUtils[_0x285e[1540]](_0x4fa0x4);for(var _0x4fa0x9=0;_0x4fa0x9<_0x4fa0x4[_0x285e[67]];_0x4fa0x9++){for(var _0x4fa0xa=_0x4fa0x4[_0x4fa0x9][_0x285e[284]](_0x285e[3069]),_0x4fa0x12=_0x4fa0x4[_0x4fa0x9][_0x285e[285]];null!=_0x4fa0x12&&1!=_0x4fa0x12[_0x285e[288]];){_0x4fa0x12=_0x4fa0x12[_0x285e[287]]};null!=_0x4fa0x12&&(_0x4fa0x5[_0x285e[3118]][_0x4fa0xa]=_0x4fa0x2[_0x285e[3244]](_0x4fa0x12))}};return _0x4fa0x2}()) \ No newline at end of file diff --git a/public/assets/plugins/square/js/Actions.js b/public/assets/plugins/square/js/Actions.js index bee3310..222f9e1 100644 --- a/public/assets/plugins/square/js/Actions.js +++ b/public/assets/plugins/square/js/Actions.js @@ -1 +1 @@ -var _0xa91e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x61\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x65\x64\x69\x74\x6F\x72","\x67\x72\x61\x70\x68","\x6E\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53","\x73\x61\x76\x65\x41\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2D\x53","\x70\x75\x62\x6C\x69\x73\x68","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x50","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x43\x74\x72\x6C\x2B\x45","\x65\x64\x69\x74\x46\x69\x6C\x65","\x65\x64\x69\x74","\x67\x65\x74","\x62\x69\x6E\x64","\x70\x75\x74","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x70\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E","\x73\x70\x72\x69\x74\x65\x2D\x70\x72\x69\x6E\x74","\x43\x74\x72\x6C\x2B\x50","\x70\x72\x65\x76\x69\x65\x77","\x73\x68\x6F\x77","\x75\x6E\x64\x6F","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x70\x72\x69\x74\x65\x2D\x75\x6E\x64\x6F","\x43\x74\x72\x6C\x2B\x5A","\x72\x65\x64\x6F","\x73\x70\x72\x69\x74\x65\x2D\x72\x65\x64\x6F","\x43\x74\x72\x6C\x2B\x59","\x63\x75\x74","\x73\x70\x72\x69\x74\x65\x2D\x63\x75\x74","\x43\x74\x72\x6C\x2B\x58","\x63\x6F\x70\x79","\x73\x70\x72\x69\x74\x65\x2D\x63\x6F\x70\x79","\x43\x74\x72\x6C\x2B\x43","\x70\x61\x73\x74\x65","\x73\x70\x72\x69\x74\x65\x2D\x70\x61\x73\x74\x65","\x43\x74\x72\x6C\x2B\x56","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x44\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x44","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x56","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x45","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x43\x74\x72\x6C\x2B\x41","\x68\x6F\x6D\x65","\x48\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x55\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x44\x6F\x77\x6E","\x65\x78\x70\x61\x6E\x64","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x45\x6E\x74\x65\x72","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x42\x61\x63\x6B\x73\x70\x61\x63\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x46","\x74\x6F\x42\x61\x63\x6B","\x43\x74\x72\x6C\x2B\x42","\x67\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x43\x74\x72\x6C\x2B\x47","\x75\x6E\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x55","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x70\x72\x6F\x6D\x70\x74","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x77\x72\x61\x70","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x73\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x30","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x20\x28","\x20\x30\x2D\x33\x36\x30\x29","\x74\x69\x6C\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x63\x6C\x6F\x6E\x65","\x78","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x79","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x76\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x65\x61\x73\x74","\x73\x6F\x75\x74\x68","\x77\x65\x73\x74","\x6E\x6F\x72\x74\x68","\x43\x74\x72\x6C\x2B\x52","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x41\x64\x64","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x53\x75\x62\x74\x72\x61\x63\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x66\x69\x74\x50\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x66\x75\x6E\x63\x74","\x70\x61\x67\x65\x56\x69\x65\x77","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x6D\x61\x78","\x72\x6F\x75\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x63\x75\x73\x74\x6F\x6D","\x20\x28\x25\x29","\x67\x65\x74\x53\x63\x61\x6C\x65","\x67\x72\x69\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x47","\x73\x65\x74\x54\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x67\x75\x69\x64\x65\x73","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x73\x63\x61\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x43\x74\x72\x6C\x2B\x51","\x63\x6F\x70\x79\x43\x6F\x6E\x6E\x65\x63\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x68\x65\x6C\x70","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x5F","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D\x2F\x64\x69\x73\x70\x6C\x61\x79\x2F\x58\x4D\x44\x2F\x43\x61\x6C\x6C\x79\x2B\x53\x71\x75\x61\x72\x65","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x46\x31","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x73\x68\x61\x64\x6F\x77","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x29","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x73\x74\x61\x74\x65","\x74\x72\x69\x67\x67\x65\x72\x58","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x74\x72\x69\x67\x67\x65\x72\x59","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x6D\x61\x67\x65","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x75\x72\x6C","\x6F\x6E\x6C\x6F\x61\x64","\x6F\x6E\x65\x72\x72\x6F\x72","\x66\x69\x6C\x65\x4E\x6F\x74\x46\x6F\x75\x6E\x64","\x61\x6C\x65\x72\x74","\x73\x72\x63","\x63\x61\x6C\x6C","\x6C\x61\x62\x65\x6C","\x65\x6E\x61\x62\x6C\x65\x64","\x69\x63\x6F\x6E\x43\x6C\x73","\x73\x68\x6F\x72\x74\x63\x75\x74","\x65\x78\x74\x65\x6E\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64"];_0xa91e[0];function Actions(_0xbe2dx2){this[_0xa91e[1]]=_0xbe2dx2;this[_0xa91e[2]]= new Object();this[_0xa91e[3]]()}Actions[_0xa91e[4]][_0xa91e[3]]=function(){var _0xbe2dx3=this[_0xa91e[1]];var _0xbe2dx4=_0xbe2dx3[_0xa91e[5]];var _0xbe2dx5=_0xbe2dx4[_0xa91e[6]];this[_0xa91e[10]](_0xa91e[7],function(){_0xbe2dx3[_0xa91e[9]]( new NewDialog(_0xbe2dx3)[_0xa91e[8]],300,180,true,true)});this[_0xa91e[10]](_0xa91e[11],function(){_0xbe2dx3[_0xa91e[9]]( new OpenDialog(_0xbe2dx3)[_0xa91e[8]],300,180,true,true)});this[_0xa91e[10]](_0xa91e[12],function(){_0xbe2dx3[_0xa91e[13]](false)},null,null,_0xa91e[14]);this[_0xa91e[10]](_0xa91e[15],function(){_0xbe2dx3[_0xa91e[13]](true)},null,null,_0xa91e[16]);this[_0xa91e[10]](_0xa91e[17],function(){_0xbe2dx3[_0xa91e[18]](false)},null,null,_0xa91e[19]);this[_0xa91e[10]](_0xa91e[20],function(){_0xbe2dx3[_0xa91e[9]]( new VariableDialog(_0xbe2dx3)[_0xa91e[8]],300,180,true,true)});this[_0xa91e[10]](_0xa91e[21],function(){_0xbe2dx3[_0xa91e[9]]( new ImportDialog(_0xbe2dx3)[_0xa91e[8]],300,200,true,true)});this[_0xa91e[10]](_0xa91e[22],function(){_0xbe2dx3[_0xa91e[9]]( new ExportDialog(_0xbe2dx3)[_0xa91e[8]],300,200,true,true)},null,null,_0xa91e[23]);this[_0xa91e[28]](_0xa91e[24], new Action(mxResources[_0xa91e[26]](_0xa91e[25]),mxUtils[_0xa91e[27]](this,function(){this[_0xa91e[1]][_0xa91e[9]]( new EditFileDialog(_0xbe2dx3)[_0xa91e[8]],620,420,true,true)})));this[_0xa91e[10]](_0xa91e[29],function(){_0xbe2dx3[_0xa91e[9]]( new RenameDialog(_0xbe2dx3)[_0xa91e[8]],300,180,true,true)});this[_0xa91e[10]](_0xa91e[30],function(){mxUtils[_0xa91e[31]](_0xbe2dx5)},null,_0xa91e[32],_0xa91e[33]);this[_0xa91e[10]](_0xa91e[34],function(){mxUtils[_0xa91e[35]](_0xbe2dx5,null,10,10)});this[_0xa91e[10]](_0xa91e[36],function(){_0xbe2dx4[_0xa91e[37]][_0xa91e[36]]()},null,_0xa91e[38],_0xa91e[39]);this[_0xa91e[10]](_0xa91e[40],function(){_0xbe2dx4[_0xa91e[37]][_0xa91e[40]]()},null,_0xa91e[41],_0xa91e[42]);this[_0xa91e[10]](_0xa91e[43],function(){mxClipboard[_0xa91e[43]](_0xbe2dx5)},null,_0xa91e[44],_0xa91e[45]);this[_0xa91e[10]](_0xa91e[46],function(){mxClipboard[_0xa91e[46]](_0xbe2dx5)},null,_0xa91e[47],_0xa91e[48]);this[_0xa91e[10]](_0xa91e[49],function(){mxClipboard[_0xa91e[49]](_0xbe2dx5)},false,_0xa91e[50],_0xa91e[51]);this[_0xa91e[10]](_0xa91e[52],function(){_0xbe2dx5[_0xa91e[53]]()},null,null,_0xa91e[54]);this[_0xa91e[10]](_0xa91e[55],function(){var _0xbe2dx6=_0xbe2dx5[_0xa91e[56]];_0xbe2dx5[_0xa91e[59]](_0xbe2dx5[_0xa91e[58]](_0xbe2dx5[_0xa91e[57]](),_0xbe2dx6,_0xbe2dx6,true))},null,null,_0xa91e[60]);this[_0xa91e[10]](_0xa91e[61],function(){_0xbe2dx5[_0xa91e[61]]()},null,null,_0xa91e[62]);this[_0xa91e[10]](_0xa91e[63],function(){_0xbe2dx5[_0xa91e[63]]()},null,null,_0xa91e[64]);this[_0xa91e[10]](_0xa91e[65],function(){_0xbe2dx5[_0xa91e[65]]()},null,null,_0xa91e[66]);this[_0xa91e[10]](_0xa91e[67],function(){_0xbe2dx5[_0xa91e[67]]()},null,null,_0xa91e[68]);this[_0xa91e[10]](_0xa91e[69],function(){_0xbe2dx5[_0xa91e[69]]()},null,null,_0xa91e[70]);this[_0xa91e[10]](_0xa91e[71],function(){_0xbe2dx5[_0xa91e[71]]()},null,null,_0xa91e[72]);this[_0xa91e[10]](_0xa91e[73],function(){_0xbe2dx5[_0xa91e[74]](false)},null,null,_0xa91e[75]);this[_0xa91e[10]](_0xa91e[76],function(){_0xbe2dx5[_0xa91e[74]](true)},null,null,_0xa91e[77]);this[_0xa91e[10]](_0xa91e[78],function(){_0xbe2dx5[_0xa91e[79]](false)},null,null,_0xa91e[80]);this[_0xa91e[10]](_0xa91e[81],function(){_0xbe2dx5[_0xa91e[79]](true)},null,null,_0xa91e[82]);this[_0xa91e[10]](_0xa91e[83],function(){_0xbe2dx5[_0xa91e[85]](_0xbe2dx5[_0xa91e[84]](null,0))},null,null,_0xa91e[86]);this[_0xa91e[10]](_0xa91e[87],function(){_0xbe2dx5[_0xa91e[59]](_0xbe2dx5[_0xa91e[88]]())},null,null,_0xa91e[89]);this[_0xa91e[10]](_0xa91e[90],function(){_0xbe2dx5[_0xa91e[91]]()});this[_0xa91e[10]](_0xa91e[92],function(){var _0xbe2dx7=_0xbe2dx5[_0xa91e[93]]();var _0xbe2dx8=_0xbe2dx5[_0xa91e[94]](_0xbe2dx7);if(_0xbe2dx8==null){_0xbe2dx8=_0xa91e[95]};_0xbe2dx8=mxUtils[_0xa91e[97]](mxResources[_0xa91e[26]](_0xa91e[96]),_0xbe2dx8);if(_0xbe2dx8!=null){_0xbe2dx5[_0xa91e[98]](_0xbe2dx7,_0xbe2dx8)}});this[_0xa91e[10]](_0xa91e[99],function(){var _0xbe2dx7=_0xbe2dx5[_0xa91e[93]]();var _0xbe2dx8=_0xbe2dx5[_0xa91e[94]](_0xbe2dx7);if(_0xbe2dx8!=null){window[_0xa91e[11]](_0xbe2dx8)}});this[_0xa91e[10]](_0xa91e[100],function(){var _0xbe2dx9=_0xbe2dx5[_0xa91e[57]]();if(_0xbe2dx9!=null){_0xbe2dx5[_0xa91e[102]]()[_0xa91e[101]]();try{for(var _0xbe2dxa=0;_0xbe2dxa<_0xbe2dx9[_0xa91e[103]];_0xbe2dxa++){var _0xbe2dx7=_0xbe2dx9[_0xbe2dxa];if(_0xbe2dx5[_0xa91e[102]]()[_0xa91e[104]](_0xbe2dx7)){_0xbe2dx5[_0xa91e[105]]([_0xbe2dx7],20)}else {_0xbe2dx5[_0xa91e[106]](_0xbe2dx7)}}}finally{_0xbe2dx5[_0xa91e[102]]()[_0xa91e[107]]()}}});this[_0xa91e[10]](_0xa91e[108],function(){var _0xbe2dxb=_0xbe2dx5[_0xa91e[110]]()[_0xa91e[109]](_0xbe2dx5[_0xa91e[93]]());var _0xbe2dxc=_0xa91e[111];if(_0xbe2dxb!=null&&_0xbe2dxb[_0xa91e[113]][mxConstants[_0xa91e[112]]]==_0xa91e[111]){_0xbe2dxc=null};_0xbe2dx5[_0xa91e[114]](mxConstants.STYLE_WHITE_SPACE,_0xbe2dxc)});this[_0xa91e[10]](_0xa91e[115],function(){var _0xbe2dxc=_0xa91e[116];var _0xbe2dxb=_0xbe2dx5[_0xa91e[110]]()[_0xa91e[109]](_0xbe2dx5[_0xa91e[93]]());if(_0xbe2dxb!=null){_0xbe2dxc=_0xbe2dxb[_0xa91e[113]][mxConstants[_0xa91e[117]]]||_0xbe2dxc};_0xbe2dxc=mxUtils[_0xa91e[97]](mxResources[_0xa91e[26]](_0xa91e[96])+_0xa91e[118]+mxResources[_0xa91e[26]](_0xa91e[115])+_0xa91e[119],_0xbe2dxc);if(_0xbe2dxc!=null){_0xbe2dx5[_0xa91e[114]](mxConstants.STYLE_ROTATION,_0xbe2dxc)}});this[_0xa91e[10]](_0xa91e[120],function(){var _0xbe2dx9=_0xbe2dx5[_0xa91e[57]]();if(_0xbe2dx9!=null){_0xbe2dx5[_0xa91e[102]]()[_0xa91e[101]]();try{for(var _0xbe2dxa=0;_0xbe2dxa<_0xbe2dx9[_0xa91e[103]];_0xbe2dxa++){var _0xbe2dx7=_0xbe2dx9[_0xbe2dxa];if(_0xbe2dx5[_0xa91e[102]]()[_0xa91e[121]](_0xbe2dx7)&&_0xbe2dx5[_0xa91e[102]]()[_0xa91e[104]](_0xbe2dx7)==0){var _0xbe2dxd=_0xbe2dx5[_0xa91e[122]](_0xbe2dx7);if(_0xbe2dxd!=null){_0xbe2dxd=_0xbe2dxd[_0xa91e[123]]();_0xbe2dxd[_0xa91e[124]]+=_0xbe2dxd[_0xa91e[125]]/2-_0xbe2dxd[_0xa91e[126]]/2;_0xbe2dxd[_0xa91e[127]]+=_0xbe2dxd[_0xa91e[126]]/2-_0xbe2dxd[_0xa91e[125]]/2;var _0xbe2dxe=_0xbe2dxd[_0xa91e[125]];_0xbe2dxd[_0xa91e[125]]=_0xbe2dxd[_0xa91e[126]];_0xbe2dxd[_0xa91e[126]]=_0xbe2dxe;_0xbe2dx5[_0xa91e[102]]()[_0xa91e[128]](_0xbe2dx7,_0xbe2dxd);var _0xbe2dxb=_0xbe2dx5[_0xa91e[129]][_0xa91e[109]](_0xbe2dx7);if(_0xbe2dxb!=null){var _0xbe2dxf=_0xbe2dxb[_0xa91e[113]][mxConstants[_0xa91e[130]]]||_0xa91e[131];if(_0xbe2dxf==_0xa91e[131]){_0xbe2dxf=_0xa91e[132]}else {if(_0xbe2dxf==_0xa91e[132]){_0xbe2dxf=_0xa91e[133]}else {if(_0xbe2dxf==_0xa91e[133]){_0xbe2dxf=_0xa91e[134]}else {if(_0xbe2dxf==_0xa91e[134]){_0xbe2dxf=_0xa91e[131]}}}};_0xbe2dx5[_0xa91e[114]](mxConstants.STYLE_DIRECTION,_0xbe2dxf,[_0xbe2dx7])}}}}}finally{_0xbe2dx5[_0xa91e[102]]()[_0xa91e[107]]()}}},null,null,_0xa91e[135]);this[_0xa91e[10]](_0xa91e[136],function(){_0xbe2dx5[_0xa91e[137]](1)});this[_0xa91e[10]](_0xa91e[138],function(){_0xbe2dx5[_0xa91e[138]]()},null,null,_0xa91e[139]);this[_0xa91e[10]](_0xa91e[140],function(){_0xbe2dx5[_0xa91e[140]]()},null,null,_0xa91e[141]);this[_0xa91e[10]](_0xa91e[142],function(){_0xbe2dx5[_0xa91e[143]]()});this[_0xa91e[10]](_0xa91e[144],mxUtils[_0xa91e[27]](this,function(){if(!_0xbe2dx5[_0xa91e[145]]){this[_0xa91e[26]](_0xa91e[147])[_0xa91e[146]]()};var _0xbe2dx10=_0xbe2dx5[_0xa91e[148]];var _0xbe2dx11=_0xbe2dx5[_0xa91e[149]];var _0xbe2dx12=_0xbe2dx5[_0xa91e[8]][_0xa91e[150]]-20;var _0xbe2dx13=_0xbe2dx5[_0xa91e[8]][_0xa91e[151]]-20;var _0xbe2dx14=Math[_0xa91e[153]](100*Math[_0xa91e[152]](_0xbe2dx12/_0xbe2dx10[_0xa91e[125]]/_0xbe2dx11,_0xbe2dx13/_0xbe2dx10[_0xa91e[126]]/_0xbe2dx11))/100;_0xbe2dx5[_0xa91e[137]](_0xbe2dx14);_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]=Math[_0xa91e[157]](_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[124]]*_0xbe2dx14-Math[_0xa91e[156]](10,(_0xbe2dx5[_0xa91e[8]][_0xa91e[150]]-_0xbe2dx10[_0xa91e[125]]*_0xbe2dx11*_0xbe2dx14)/2));_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]=Math[_0xa91e[157]](_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[127]]*_0xbe2dx14-Math[_0xa91e[156]](10,(_0xbe2dx5[_0xa91e[8]][_0xa91e[151]]-_0xbe2dx10[_0xa91e[126]]*_0xbe2dx11*_0xbe2dx14)/2))}));this[_0xa91e[10]](_0xa91e[159],mxUtils[_0xa91e[27]](this,function(){if(!_0xbe2dx5[_0xa91e[145]]){this[_0xa91e[26]](_0xa91e[147])[_0xa91e[146]]()};var _0xbe2dx10=_0xbe2dx5[_0xa91e[148]];var _0xbe2dx11=_0xbe2dx5[_0xa91e[149]];var _0xbe2dx12=_0xbe2dx5[_0xa91e[8]][_0xa91e[150]]-20;var _0xbe2dx14=Math[_0xa91e[153]](100*_0xbe2dx12/_0xbe2dx10[_0xa91e[125]]/_0xbe2dx11)/100;_0xbe2dx5[_0xa91e[137]](_0xbe2dx14);_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]=Math[_0xa91e[157]](_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[124]]*_0xbe2dx14-Math[_0xa91e[156]](10,(_0xbe2dx5[_0xa91e[8]][_0xa91e[150]]-_0xbe2dx10[_0xa91e[125]]*_0xbe2dx11*_0xbe2dx14)/2));_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]=Math[_0xa91e[157]](_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[127]]*_0xbe2dx14-Math[_0xa91e[156]](10,(_0xbe2dx5[_0xa91e[8]][_0xa91e[151]]-_0xbe2dx10[_0xa91e[126]]*_0xbe2dx11*_0xbe2dx14)/2))}));this[_0xa91e[28]](_0xa91e[160], new Action(mxResources[_0xa91e[26]](_0xa91e[161]),function(){var _0xbe2dxc=mxUtils[_0xa91e[97]](mxResources[_0xa91e[26]](_0xa91e[96])+_0xa91e[162],parseInt(_0xbe2dx5[_0xa91e[110]]()[_0xa91e[163]]()*100));if(_0xbe2dxc!=null&&_0xbe2dxc[_0xa91e[103]]>0&&!isNaN(parseInt(_0xbe2dxc))){_0xbe2dx5[_0xa91e[137]](parseInt(_0xbe2dxc)/100)}}));var _0xbe2dx15=null;_0xbe2dx15=this[_0xa91e[10]](_0xa91e[164],function(){_0xbe2dx5[_0xa91e[166]](!_0xbe2dx5[_0xa91e[165]]());_0xbe2dx4[_0xa91e[167]]()},null,null,_0xa91e[168]);_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[165]]()});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[171],function(){_0xbe2dx5[_0xa91e[173]][_0xa91e[172]]=!_0xbe2dx5[_0xa91e[173]][_0xa91e[172]]});_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[173]][_0xa91e[172]]});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[174],function(){_0xbe2dx5[_0xa91e[176]][_0xa91e[177]](!_0xbe2dx5[_0xa91e[176]][_0xa91e[175]]())});_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[176]][_0xa91e[175]]()});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[178],function(){_0xbe2dx5[_0xa91e[179]]=!_0xbe2dx5[_0xa91e[179]];_0xbe2dx5[_0xa91e[129]][_0xa91e[180]]()});_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[179]]});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[181],function(){_0xbe2dx5[_0xa91e[181]]=!_0xbe2dx5[_0xa91e[181]];_0xbe2dx4[_0xa91e[167]]();if(!_0xbe2dx5[_0xa91e[181]]){var _0xbe2dx16=_0xbe2dx5[_0xa91e[129]][_0xa91e[155]];_0xbe2dx5[_0xa91e[129]][_0xa91e[183]](_0xbe2dx16[_0xa91e[124]]-_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]/_0xbe2dx5[_0xa91e[129]][_0xa91e[182]],_0xbe2dx16[_0xa91e[127]]-_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]/_0xbe2dx5[_0xa91e[129]][_0xa91e[182]]);_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]=0;_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]=0;_0xbe2dx5[_0xa91e[184]]()}else {var _0xbe2dx17=_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[124]];var _0xbe2dx18=_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[127]];_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[124]]=0;_0xbe2dx5[_0xa91e[129]][_0xa91e[155]][_0xa91e[127]]=0;_0xbe2dx5[_0xa91e[184]]();_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]-=Math[_0xa91e[157]](_0xbe2dx17*_0xbe2dx5[_0xa91e[129]][_0xa91e[182]]);_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]-=Math[_0xa91e[157]](_0xbe2dx18*_0xbe2dx5[_0xa91e[129]][_0xa91e[182]])}},!mxClient.IS_TOUCH);_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[8]][_0xa91e[113]][_0xa91e[185]]==_0xa91e[186]});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[147],mxUtils[_0xa91e[27]](this,function(){_0xbe2dx5[_0xa91e[145]]=!_0xbe2dx5[_0xa91e[145]];_0xbe2dx5[_0xa91e[187]]=_0xbe2dx5[_0xa91e[145]];_0xbe2dx5[_0xa91e[188]]=_0xbe2dx5[_0xa91e[187]];_0xbe2dx5[_0xa91e[129]][_0xa91e[189]]();_0xbe2dx5[_0xa91e[184]]();_0xbe2dx4[_0xa91e[167]]();_0xbe2dx4[_0xa91e[191]][_0xa91e[190]]();if(mxUtils[_0xa91e[192]](_0xbe2dx5[_0xa91e[8]])){if(_0xbe2dx5[_0xa91e[145]]){_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]-=20;_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]-=20}else {_0xbe2dx5[_0xa91e[8]][_0xa91e[154]]+=20;_0xbe2dx5[_0xa91e[8]][_0xa91e[158]]+=20}}}));_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[145]]});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[193],function(){_0xbe2dx5[_0xa91e[195]](!_0xbe2dx5[_0xa91e[194]][_0xa91e[175]]())},null,null,_0xa91e[196]);_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[194]][_0xa91e[175]]()});_0xbe2dx15=this[_0xa91e[10]](_0xa91e[197],function(){_0xbe2dx5[_0xa91e[194]][_0xa91e[199]](!_0xbe2dx5[_0xa91e[194]][_0xa91e[198]]())});_0xbe2dx15[_0xa91e[169]](true);_0xbe2dx15[_0xa91e[170]](function(){return _0xbe2dx5[_0xa91e[194]][_0xa91e[198]]()});this[_0xa91e[10]](_0xa91e[200],function(){var _0xbe2dx19=_0xa91e[95];if(mxResources[_0xa91e[202]](mxClient[_0xa91e[201]])){_0xbe2dx19=_0xa91e[203]+mxClient[_0xa91e[201]]};window[_0xa91e[11]](_0xa91e[204])});this[_0xa91e[28]](_0xa91e[205], new Action(mxResources[_0xa91e[26]](_0xa91e[205])+_0xa91e[206],function(){_0xbe2dx3[_0xa91e[9]]( new AboutDialog(_0xbe2dx3)[_0xa91e[8]],320,280,true,true)},null,null,_0xa91e[207]));var _0xbe2dx1a=mxUtils[_0xa91e[27]](this,function(_0xbe2dx1b,_0xbe2dx1c){this[_0xa91e[10]](_0xbe2dx1b,function(){_0xbe2dx5[_0xa91e[208]](mxConstants.STYLE_FONTSTYLE,_0xbe2dx1c)})});_0xbe2dx1a(_0xa91e[209],mxConstants.FONT_BOLD);_0xbe2dx1a(_0xa91e[210],mxConstants.FONT_ITALIC);_0xbe2dx1a(_0xa91e[211],mxConstants.FONT_UNDERLINE);this[_0xa91e[10]](_0xa91e[212],function(){_0xbe2dx5[_0xa91e[213]](mxConstants.STYLE_SHADOW)});this[_0xa91e[10]](_0xa91e[214],function(){_0xbe2dx5[_0xa91e[213]](mxConstants.STYLE_DASHED)});this[_0xa91e[10]](_0xa91e[215],function(){_0xbe2dx5[_0xa91e[213]](mxConstants.STYLE_ROUNDED)});this[_0xa91e[10]](_0xa91e[216],function(){_0xbe2dx5[_0xa91e[213]](mxConstants.STYLE_CURVED)});this[_0xa91e[10]](_0xa91e[113],function(){var _0xbe2dx9=_0xbe2dx5[_0xa91e[57]]();if(_0xbe2dx9!=null&&_0xbe2dx9[_0xa91e[103]]>0){var _0xbe2dx1d=_0xbe2dx5[_0xa91e[102]]();var _0xbe2dx1c=mxUtils[_0xa91e[97]](mxResources[_0xa91e[26]](_0xa91e[96])+_0xa91e[118]+mxResources[_0xa91e[26]](_0xa91e[113])+_0xa91e[217],_0xbe2dx1d[_0xa91e[218]](_0xbe2dx9[0])||_0xa91e[95]);if(_0xbe2dx1c!=null){_0xbe2dx5[_0xa91e[219]](_0xbe2dx1c,_0xbe2dx9)}}});this[_0xa91e[10]](_0xa91e[220],function(){_0xbe2dx5[_0xa91e[221]](_0xbe2dx5[_0xa91e[93]]())});this[_0xa91e[10]](_0xa91e[222],function(){var _0xbe2dx7=_0xbe2dx5[_0xa91e[93]]();if(_0xbe2dx7!=null&&_0xbe2dx5[_0xa91e[102]]()[_0xa91e[223]](_0xbe2dx7)){var _0xbe2dx1e=_0xbe2dx4[_0xa91e[6]][_0xa91e[225]][_0xa91e[224]](_0xbe2dx7);if(_0xbe2dx1e instanceof mxEdgeHandler){var _0xbe2dx16=_0xbe2dx5[_0xa91e[129]][_0xa91e[155]];var _0xbe2dx6=_0xbe2dx5[_0xa91e[129]][_0xa91e[182]];var _0xbe2dx17=_0xbe2dx16[_0xa91e[124]];var _0xbe2dx18=_0xbe2dx16[_0xa91e[127]];var _0xbe2dx1f=_0xbe2dx5[_0xa91e[102]]()[_0xa91e[226]](_0xbe2dx7);var _0xbe2dx20=_0xbe2dx5[_0xa91e[122]](_0xbe2dx1f);if(_0xbe2dx5[_0xa91e[102]]()[_0xa91e[121]](_0xbe2dx1f)&&_0xbe2dx20!=null){_0xbe2dx17+=_0xbe2dx20[_0xa91e[124]];_0xbe2dx18+=_0xbe2dx20[_0xa91e[127]]};_0xbe2dx1e[_0xa91e[231]](_0xbe2dx1e[_0xa91e[227]],_0xbe2dx5[_0xa91e[229]][_0xa91e[228]]/_0xbe2dx6-_0xbe2dx17,_0xbe2dx5[_0xa91e[229]][_0xa91e[230]]/_0xbe2dx6-_0xbe2dx18)}}});this[_0xa91e[10]](_0xa91e[232],function(){var _0xbe2dx21=_0xbe2dx3[_0xa91e[2]][_0xa91e[26]](_0xa91e[232]);if(_0xbe2dx21[_0xa91e[233]]!=null){_0xbe2dx21[_0xa91e[233]][_0xa91e[235]](_0xbe2dx21[_0xa91e[233]][_0xa91e[227]],_0xbe2dx21[_0xa91e[234]])}});this[_0xa91e[10]](_0xa91e[236],function(){function _0xbe2dx22(_0xbe2dxc,_0xbe2dx23,_0xbe2dx24){var _0xbe2dx25=null;var _0xbe2dx9=_0xbe2dx5[_0xa91e[57]]();_0xbe2dx5[_0xa91e[102]]()[_0xa91e[101]]();try{if(_0xbe2dx9[_0xa91e[103]]==0){var _0xbe2dx26=_0xbe2dx5[_0xa91e[237]]();_0xbe2dx9=[_0xbe2dx5[_0xa91e[239]](_0xbe2dx5[_0xa91e[238]](),null,_0xa91e[95],_0xbe2dx26,_0xbe2dx26,_0xbe2dx23,_0xbe2dx24)];_0xbe2dx25=_0xbe2dx9};_0xbe2dx5[_0xa91e[114]](mxConstants.STYLE_IMAGE,_0xbe2dxc,_0xbe2dx9);_0xbe2dx5[_0xa91e[114]](mxConstants.STYLE_SHAPE,_0xa91e[236],_0xbe2dx9);if(_0xbe2dx5[_0xa91e[240]]()==1){if(_0xbe2dx23!=null&&_0xbe2dx24!=null){var _0xbe2dx7=_0xbe2dx9[0];var _0xbe2dxd=_0xbe2dx5[_0xa91e[102]]()[_0xa91e[241]](_0xbe2dx7);if(_0xbe2dxd!=null){_0xbe2dxd=_0xbe2dxd[_0xa91e[123]]();_0xbe2dxd[_0xa91e[125]]=_0xbe2dx23;_0xbe2dxd[_0xa91e[126]]=_0xbe2dx24;_0xbe2dx5[_0xa91e[102]]()[_0xa91e[128]](_0xbe2dx7,_0xbe2dxd)}}}}finally{_0xbe2dx5[_0xa91e[102]]()[_0xa91e[107]]()};if(_0xbe2dx25!=null){_0xbe2dx5[_0xa91e[59]](_0xbe2dx25);_0xbe2dx5[_0xa91e[242]](_0xbe2dx25[0])}}var _0xbe2dxc=_0xa91e[95];var _0xbe2dxb=_0xbe2dx5[_0xa91e[110]]()[_0xa91e[109]](_0xbe2dx5[_0xa91e[93]]());if(_0xbe2dxb!=null){_0xbe2dxc=_0xbe2dxb[_0xa91e[113]][mxConstants[_0xa91e[243]]]||_0xbe2dxc};_0xbe2dxc=mxUtils[_0xa91e[97]](mxResources[_0xa91e[26]](_0xa91e[96])+_0xa91e[118]+mxResources[_0xa91e[26]](_0xa91e[244])+_0xa91e[217],_0xbe2dxc);if(_0xbe2dxc!=null){if(_0xbe2dxc[_0xa91e[103]]>0){var _0xbe2dx27= new Image();_0xbe2dx27[_0xa91e[245]]=function(){_0xbe2dx22(_0xbe2dxc,_0xbe2dx27[_0xa91e[125]],_0xbe2dx27[_0xa91e[126]])};_0xbe2dx27[_0xa91e[246]]=function(){mxUtils[_0xa91e[248]](mxResources[_0xa91e[26]](_0xa91e[247]))};_0xbe2dx27[_0xa91e[249]]=_0xbe2dxc}}})};Actions[_0xa91e[4]][_0xa91e[10]]=function(_0xbe2dx1b,_0xbe2dx28,_0xbe2dx29,_0xbe2dx2a,_0xbe2dx2b){return this[_0xa91e[28]](_0xbe2dx1b, new Action(mxResources[_0xa91e[26]](_0xbe2dx1b),_0xbe2dx28,_0xbe2dx29,_0xbe2dx2a,_0xbe2dx2b))};Actions[_0xa91e[4]][_0xa91e[28]]=function(_0xbe2dx2c,_0xbe2dx15){this[_0xa91e[2]][_0xbe2dx2c]=_0xbe2dx15;return _0xbe2dx15};Actions[_0xa91e[4]][_0xa91e[26]]=function(_0xbe2dx2c){return this[_0xa91e[2]][_0xbe2dx2c]};function Action(_0xbe2dx2e,_0xbe2dx28,_0xbe2dx29,_0xbe2dx2a,_0xbe2dx2b){mxEventSource[_0xa91e[250]](this);this[_0xa91e[251]]=_0xbe2dx2e;this[_0xa91e[146]]=_0xbe2dx28;this[_0xa91e[252]]=(_0xbe2dx29!=null)?_0xbe2dx29:true;this[_0xa91e[253]]=_0xbe2dx2a;this[_0xa91e[254]]=_0xbe2dx2b}mxUtils[_0xa91e[255]](Action,mxEventSource);Action[_0xa91e[4]][_0xa91e[177]]=function(_0xbe2dxc){if(this[_0xa91e[252]]!=_0xbe2dxc){this[_0xa91e[252]]=_0xbe2dxc;this[_0xa91e[257]]( new mxEventObject(_0xa91e[256]))}};Action[_0xa91e[4]][_0xa91e[169]]=function(_0xbe2dxc){this[_0xa91e[258]]=_0xbe2dxc};Action[_0xa91e[4]][_0xa91e[170]]=function(_0xbe2dx28){this[_0xa91e[259]]=_0xbe2dx28};Action[_0xa91e[4]][_0xa91e[260]]=function(){return this[_0xa91e[259]]()} \ No newline at end of file +var _0xfe8e=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x61\x63\x74\x69\x6F\x6E\x73","\x69\x6E\x69\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x65\x64\x69\x74\x6F\x72","\x67\x72\x61\x70\x68","\x6E\x65\x77","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x61\x64\x64\x41\x63\x74\x69\x6F\x6E","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53","\x73\x61\x76\x65\x41\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2D\x53","\x70\x75\x62\x6C\x69\x73\x68","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x50","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x43\x74\x72\x6C\x2B\x45","\x65\x64\x69\x74\x46\x69\x6C\x65","\x65\x64\x69\x74","\x67\x65\x74","\x62\x69\x6E\x64","\x70\x75\x74","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x70\x72\x69\x6E\x74\x53\x63\x72\x65\x65\x6E","\x73\x70\x72\x69\x74\x65\x2D\x70\x72\x69\x6E\x74","\x43\x74\x72\x6C\x2B\x50","\x70\x72\x65\x76\x69\x65\x77","\x73\x68\x6F\x77","\x75\x6E\x64\x6F","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x70\x72\x69\x74\x65\x2D\x75\x6E\x64\x6F","\x43\x74\x72\x6C\x2B\x5A","\x72\x65\x64\x6F","\x73\x70\x72\x69\x74\x65\x2D\x72\x65\x64\x6F","\x43\x74\x72\x6C\x2B\x59","\x63\x75\x74","\x73\x70\x72\x69\x74\x65\x2D\x63\x75\x74","\x43\x74\x72\x6C\x2B\x58","\x63\x6F\x70\x79","\x73\x70\x72\x69\x74\x65\x2D\x63\x6F\x70\x79","\x43\x74\x72\x6C\x2B\x43","\x70\x61\x73\x74\x65","\x73\x70\x72\x69\x74\x65\x2D\x70\x61\x73\x74\x65","\x43\x74\x72\x6C\x2B\x56","\x64\x65\x6C\x65\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x44\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x44","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x56","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x45","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x43\x74\x72\x6C\x2B\x41","\x68\x6F\x6D\x65","\x48\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x55\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x50\x61\x67\x65\x20\x44\x6F\x77\x6E","\x65\x78\x70\x61\x6E\x64","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x45\x6E\x74\x65\x72","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x42\x61\x63\x6B\x73\x70\x61\x63\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x6F\x72\x64\x65\x72\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x46","\x74\x6F\x42\x61\x63\x6B","\x43\x74\x72\x6C\x2B\x42","\x67\x72\x6F\x75\x70","\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x43\x74\x72\x6C\x2B\x47","\x75\x6E\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70\x43\x65\x6C\x6C\x73","\x43\x74\x72\x6C\x2B\x55","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x70\x72\x6F\x6D\x70\x74","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x75\x70\x64\x61\x74\x65\x47\x72\x6F\x75\x70\x42\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x43\x65\x6C\x6C\x53\x69\x7A\x65","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x77\x72\x61\x70","\x53\x54\x59\x4C\x45\x5F\x57\x48\x49\x54\x45\x5F\x53\x50\x41\x43\x45","\x73\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x30","\x53\x54\x59\x4C\x45\x5F\x52\x4F\x54\x41\x54\x49\x4F\x4E","\x20\x28","\x20\x30\x2D\x33\x36\x30\x29","\x74\x69\x6C\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x63\x6C\x6F\x6E\x65","\x78","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x79","\x73\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x76\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x44\x49\x52\x45\x43\x54\x49\x4F\x4E","\x65\x61\x73\x74","\x73\x6F\x75\x74\x68","\x77\x65\x73\x74","\x6E\x6F\x72\x74\x68","\x43\x74\x72\x6C\x2B\x52","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x41\x64\x64","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x53\x75\x62\x74\x72\x61\x63\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x66\x69\x74","\x66\x69\x74\x50\x61\x67\x65","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x66\x75\x6E\x63\x74","\x70\x61\x67\x65\x56\x69\x65\x77","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x6D\x61\x78","\x72\x6F\x75\x6E\x64","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x63\x75\x73\x74\x6F\x6D","\x20\x28\x25\x29","\x67\x65\x74\x53\x63\x61\x6C\x65","\x67\x72\x69\x64","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x43\x74\x72\x6C\x2B\x53\x68\x69\x66\x74\x2B\x47","\x73\x65\x74\x54\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x67\x75\x69\x64\x65\x73","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x72\x65\x76\x61\x6C\x69\x64\x61\x74\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x73\x63\x61\x6C\x65","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x61\x75\x74\x6F","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x76\x61\x6C\x69\x64\x61\x74\x65","\x75\x70\x64\x61\x74\x65","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x43\x74\x72\x6C\x2B\x51","\x63\x6F\x70\x79\x43\x6F\x6E\x6E\x65\x63\x74","\x69\x73\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x68\x65\x6C\x70","\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x73\x4C\x61\x6E\x67\x75\x61\x67\x65\x53\x75\x70\x70\x6F\x72\x74\x65\x64","\x5F","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D\x2F\x64\x69\x73\x70\x6C\x61\x79\x2F\x58\x4D\x44\x2F\x43\x61\x6C\x6C\x79\x2B\x53\x71\x75\x61\x72\x65","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x46\x31","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x46\x6C\x61\x67\x73","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x73\x68\x61\x64\x6F\x77","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x63\x75\x72\x76\x65\x64","\x29","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x73\x74\x61\x74\x65","\x74\x72\x69\x67\x67\x65\x72\x58","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x74\x72\x69\x67\x67\x65\x72\x59","\x61\x64\x64\x50\x6F\x69\x6E\x74\x41\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x72\x65\x6D\x6F\x76\x65\x50\x6F\x69\x6E\x74","\x69\x6D\x61\x67\x65","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x69\x6E\x73\x65\x72\x74\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x65\x74\x47\x65\x6F\x6D\x65\x74\x72\x79","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x53\x54\x59\x4C\x45\x5F\x49\x4D\x41\x47\x45","\x75\x72\x6C","\x6F\x6E\x6C\x6F\x61\x64","\x6F\x6E\x65\x72\x72\x6F\x72","\x66\x69\x6C\x65\x4E\x6F\x74\x46\x6F\x75\x6E\x64","\x61\x6C\x65\x72\x74","\x73\x72\x63","\x63\x61\x6C\x6C","\x6C\x61\x62\x65\x6C","\x65\x6E\x61\x62\x6C\x65\x64","\x69\x63\x6F\x6E\x43\x6C\x73","\x73\x68\x6F\x72\x74\x63\x75\x74","\x65\x78\x74\x65\x6E\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x65\x64\x43\x61\x6C\x6C\x62\x61\x63\x6B","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64"];_0xfe8e[0];function Actions(_0x286dx2){this[_0xfe8e[1]]=_0x286dx2;this[_0xfe8e[2]]= new Object();this[_0xfe8e[3]]()}Actions[_0xfe8e[4]][_0xfe8e[3]]=function(){var _0x286dx3=this[_0xfe8e[1]];var _0x286dx4=_0x286dx3[_0xfe8e[5]];var _0x286dx5=_0x286dx4[_0xfe8e[6]];this[_0xfe8e[10]](_0xfe8e[7],function(){_0x286dx3[_0xfe8e[9]]( new NewDialog(_0x286dx3)[_0xfe8e[8]],300,180,true,true)});this[_0xfe8e[10]](_0xfe8e[11],function(){_0x286dx3[_0xfe8e[9]]( new OpenDialog(_0x286dx3)[_0xfe8e[8]],300,180,true,true)});this[_0xfe8e[10]](_0xfe8e[12],function(){_0x286dx3[_0xfe8e[13]](false)},null,null,_0xfe8e[14]);this[_0xfe8e[10]](_0xfe8e[15],function(){_0x286dx3[_0xfe8e[13]](true)},null,null,_0xfe8e[16]);this[_0xfe8e[10]](_0xfe8e[17],function(){_0x286dx3[_0xfe8e[18]](false)},null,null,_0xfe8e[19]);this[_0xfe8e[10]](_0xfe8e[20],function(){_0x286dx3[_0xfe8e[9]]( new VariableDialog(_0x286dx3)[_0xfe8e[8]],300,180,true,true)});this[_0xfe8e[10]](_0xfe8e[21],function(){_0x286dx3[_0xfe8e[9]]( new ImportDialog(_0x286dx3)[_0xfe8e[8]],300,200,true,true)});this[_0xfe8e[10]](_0xfe8e[22],function(){_0x286dx3[_0xfe8e[9]]( new ExportDialog(_0x286dx3)[_0xfe8e[8]],300,200,true,true)},null,null,_0xfe8e[23]);this[_0xfe8e[28]](_0xfe8e[24], new Action(mxResources[_0xfe8e[26]](_0xfe8e[25]),mxUtils[_0xfe8e[27]](this,function(){this[_0xfe8e[1]][_0xfe8e[9]]( new EditFileDialog(_0x286dx3)[_0xfe8e[8]],620,420,true,true)})));this[_0xfe8e[10]](_0xfe8e[29],function(){_0x286dx3[_0xfe8e[9]]( new RenameDialog(_0x286dx3)[_0xfe8e[8]],300,180,true,true)});this[_0xfe8e[10]](_0xfe8e[30],function(){mxUtils[_0xfe8e[31]](_0x286dx5)},null,_0xfe8e[32],_0xfe8e[33]);this[_0xfe8e[10]](_0xfe8e[34],function(){mxUtils[_0xfe8e[35]](_0x286dx5,null,10,10)});this[_0xfe8e[10]](_0xfe8e[36],function(){_0x286dx4[_0xfe8e[37]][_0xfe8e[36]]()},null,_0xfe8e[38],_0xfe8e[39]);this[_0xfe8e[10]](_0xfe8e[40],function(){_0x286dx4[_0xfe8e[37]][_0xfe8e[40]]()},null,_0xfe8e[41],_0xfe8e[42]);this[_0xfe8e[10]](_0xfe8e[43],function(){mxClipboard[_0xfe8e[43]](_0x286dx5)},null,_0xfe8e[44],_0xfe8e[45]);this[_0xfe8e[10]](_0xfe8e[46],function(){mxClipboard[_0xfe8e[46]](_0x286dx5)},null,_0xfe8e[47],_0xfe8e[48]);this[_0xfe8e[10]](_0xfe8e[49],function(){mxClipboard[_0xfe8e[49]](_0x286dx5)},false,_0xfe8e[50],_0xfe8e[51]);this[_0xfe8e[10]](_0xfe8e[52],function(){_0x286dx5[_0xfe8e[53]]()},null,null,_0xfe8e[54]);this[_0xfe8e[10]](_0xfe8e[55],function(){var _0x286dx6=_0x286dx5[_0xfe8e[56]];_0x286dx5[_0xfe8e[59]](_0x286dx5[_0xfe8e[58]](_0x286dx5[_0xfe8e[57]](),_0x286dx6,_0x286dx6,true))},null,null,_0xfe8e[60]);this[_0xfe8e[10]](_0xfe8e[61],function(){_0x286dx5[_0xfe8e[61]]()},null,null,_0xfe8e[62]);this[_0xfe8e[10]](_0xfe8e[63],function(){_0x286dx5[_0xfe8e[63]]()},null,null,_0xfe8e[64]);this[_0xfe8e[10]](_0xfe8e[65],function(){_0x286dx5[_0xfe8e[65]]()},null,null,_0xfe8e[66]);this[_0xfe8e[10]](_0xfe8e[67],function(){_0x286dx5[_0xfe8e[67]]()},null,null,_0xfe8e[68]);this[_0xfe8e[10]](_0xfe8e[69],function(){_0x286dx5[_0xfe8e[69]]()},null,null,_0xfe8e[70]);this[_0xfe8e[10]](_0xfe8e[71],function(){_0x286dx5[_0xfe8e[71]]()},null,null,_0xfe8e[72]);this[_0xfe8e[10]](_0xfe8e[73],function(){_0x286dx5[_0xfe8e[74]](false)},null,null,_0xfe8e[75]);this[_0xfe8e[10]](_0xfe8e[76],function(){_0x286dx5[_0xfe8e[74]](true)},null,null,_0xfe8e[77]);this[_0xfe8e[10]](_0xfe8e[78],function(){_0x286dx5[_0xfe8e[79]](false)},null,null,_0xfe8e[80]);this[_0xfe8e[10]](_0xfe8e[81],function(){_0x286dx5[_0xfe8e[79]](true)},null,null,_0xfe8e[82]);this[_0xfe8e[10]](_0xfe8e[83],function(){_0x286dx5[_0xfe8e[85]](_0x286dx5[_0xfe8e[84]](null,0))},null,null,_0xfe8e[86]);this[_0xfe8e[10]](_0xfe8e[87],function(){_0x286dx5[_0xfe8e[59]](_0x286dx5[_0xfe8e[88]]())},null,null,_0xfe8e[89]);this[_0xfe8e[10]](_0xfe8e[90],function(){_0x286dx5[_0xfe8e[91]]()});this[_0xfe8e[10]](_0xfe8e[92],function(){var _0x286dx7=_0x286dx5[_0xfe8e[93]]();var _0x286dx8=_0x286dx5[_0xfe8e[94]](_0x286dx7);if(_0x286dx8==null){_0x286dx8=_0xfe8e[95]};_0x286dx8=mxUtils[_0xfe8e[97]](mxResources[_0xfe8e[26]](_0xfe8e[96]),_0x286dx8);if(_0x286dx8!=null){_0x286dx5[_0xfe8e[98]](_0x286dx7,_0x286dx8)}});this[_0xfe8e[10]](_0xfe8e[99],function(){var _0x286dx7=_0x286dx5[_0xfe8e[93]]();var _0x286dx8=_0x286dx5[_0xfe8e[94]](_0x286dx7);if(_0x286dx8!=null){window[_0xfe8e[11]](_0x286dx8)}});this[_0xfe8e[10]](_0xfe8e[100],function(){var _0x286dx9=_0x286dx5[_0xfe8e[57]]();if(_0x286dx9!=null){_0x286dx5[_0xfe8e[102]]()[_0xfe8e[101]]();try{for(var _0x286dxa=0;_0x286dxa<_0x286dx9[_0xfe8e[103]];_0x286dxa++){var _0x286dx7=_0x286dx9[_0x286dxa];if(_0x286dx5[_0xfe8e[102]]()[_0xfe8e[104]](_0x286dx7)){_0x286dx5[_0xfe8e[105]]([_0x286dx7],20)}else {_0x286dx5[_0xfe8e[106]](_0x286dx7)}}}finally{_0x286dx5[_0xfe8e[102]]()[_0xfe8e[107]]()}}});this[_0xfe8e[10]](_0xfe8e[108],function(){var _0x286dxb=_0x286dx5[_0xfe8e[110]]()[_0xfe8e[109]](_0x286dx5[_0xfe8e[93]]());var _0x286dxc=_0xfe8e[111];if(_0x286dxb!=null&&_0x286dxb[_0xfe8e[113]][mxConstants[_0xfe8e[112]]]==_0xfe8e[111]){_0x286dxc=null};_0x286dx5[_0xfe8e[114]](mxConstants.STYLE_WHITE_SPACE,_0x286dxc)});this[_0xfe8e[10]](_0xfe8e[115],function(){var _0x286dxc=_0xfe8e[116];var _0x286dxb=_0x286dx5[_0xfe8e[110]]()[_0xfe8e[109]](_0x286dx5[_0xfe8e[93]]());if(_0x286dxb!=null){_0x286dxc=_0x286dxb[_0xfe8e[113]][mxConstants[_0xfe8e[117]]]||_0x286dxc};_0x286dxc=mxUtils[_0xfe8e[97]](mxResources[_0xfe8e[26]](_0xfe8e[96])+_0xfe8e[118]+mxResources[_0xfe8e[26]](_0xfe8e[115])+_0xfe8e[119],_0x286dxc);if(_0x286dxc!=null){_0x286dx5[_0xfe8e[114]](mxConstants.STYLE_ROTATION,_0x286dxc)}});this[_0xfe8e[10]](_0xfe8e[120],function(){var _0x286dx9=_0x286dx5[_0xfe8e[57]]();if(_0x286dx9!=null){_0x286dx5[_0xfe8e[102]]()[_0xfe8e[101]]();try{for(var _0x286dxa=0;_0x286dxa<_0x286dx9[_0xfe8e[103]];_0x286dxa++){var _0x286dx7=_0x286dx9[_0x286dxa];if(_0x286dx5[_0xfe8e[102]]()[_0xfe8e[121]](_0x286dx7)&&_0x286dx5[_0xfe8e[102]]()[_0xfe8e[104]](_0x286dx7)==0){var _0x286dxd=_0x286dx5[_0xfe8e[122]](_0x286dx7);if(_0x286dxd!=null){_0x286dxd=_0x286dxd[_0xfe8e[123]]();_0x286dxd[_0xfe8e[124]]+=_0x286dxd[_0xfe8e[125]]/2-_0x286dxd[_0xfe8e[126]]/2;_0x286dxd[_0xfe8e[127]]+=_0x286dxd[_0xfe8e[126]]/2-_0x286dxd[_0xfe8e[125]]/2;var _0x286dxe=_0x286dxd[_0xfe8e[125]];_0x286dxd[_0xfe8e[125]]=_0x286dxd[_0xfe8e[126]];_0x286dxd[_0xfe8e[126]]=_0x286dxe;_0x286dx5[_0xfe8e[102]]()[_0xfe8e[128]](_0x286dx7,_0x286dxd);var _0x286dxb=_0x286dx5[_0xfe8e[129]][_0xfe8e[109]](_0x286dx7);if(_0x286dxb!=null){var _0x286dxf=_0x286dxb[_0xfe8e[113]][mxConstants[_0xfe8e[130]]]||_0xfe8e[131];if(_0x286dxf==_0xfe8e[131]){_0x286dxf=_0xfe8e[132]}else {if(_0x286dxf==_0xfe8e[132]){_0x286dxf=_0xfe8e[133]}else {if(_0x286dxf==_0xfe8e[133]){_0x286dxf=_0xfe8e[134]}else {if(_0x286dxf==_0xfe8e[134]){_0x286dxf=_0xfe8e[131]}}}};_0x286dx5[_0xfe8e[114]](mxConstants.STYLE_DIRECTION,_0x286dxf,[_0x286dx7])}}}}}finally{_0x286dx5[_0xfe8e[102]]()[_0xfe8e[107]]()}}},null,null,_0xfe8e[135]);this[_0xfe8e[10]](_0xfe8e[136],function(){_0x286dx5[_0xfe8e[137]](1)});this[_0xfe8e[10]](_0xfe8e[138],function(){_0x286dx5[_0xfe8e[138]]()},null,null,_0xfe8e[139]);this[_0xfe8e[10]](_0xfe8e[140],function(){_0x286dx5[_0xfe8e[140]]()},null,null,_0xfe8e[141]);this[_0xfe8e[10]](_0xfe8e[142],function(){_0x286dx5[_0xfe8e[143]]()});this[_0xfe8e[10]](_0xfe8e[144],mxUtils[_0xfe8e[27]](this,function(){if(!_0x286dx5[_0xfe8e[145]]){this[_0xfe8e[26]](_0xfe8e[147])[_0xfe8e[146]]()};var _0x286dx10=_0x286dx5[_0xfe8e[148]];var _0x286dx11=_0x286dx5[_0xfe8e[149]];var _0x286dx12=_0x286dx5[_0xfe8e[8]][_0xfe8e[150]]-20;var _0x286dx13=_0x286dx5[_0xfe8e[8]][_0xfe8e[151]]-20;var _0x286dx14=Math[_0xfe8e[153]](100*Math[_0xfe8e[152]](_0x286dx12/_0x286dx10[_0xfe8e[125]]/_0x286dx11,_0x286dx13/_0x286dx10[_0xfe8e[126]]/_0x286dx11))/100;_0x286dx5[_0xfe8e[137]](_0x286dx14);_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]=Math[_0xfe8e[157]](_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[124]]*_0x286dx14-Math[_0xfe8e[156]](10,(_0x286dx5[_0xfe8e[8]][_0xfe8e[150]]-_0x286dx10[_0xfe8e[125]]*_0x286dx11*_0x286dx14)/2));_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]=Math[_0xfe8e[157]](_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[127]]*_0x286dx14-Math[_0xfe8e[156]](10,(_0x286dx5[_0xfe8e[8]][_0xfe8e[151]]-_0x286dx10[_0xfe8e[126]]*_0x286dx11*_0x286dx14)/2))}));this[_0xfe8e[10]](_0xfe8e[159],mxUtils[_0xfe8e[27]](this,function(){if(!_0x286dx5[_0xfe8e[145]]){this[_0xfe8e[26]](_0xfe8e[147])[_0xfe8e[146]]()};var _0x286dx10=_0x286dx5[_0xfe8e[148]];var _0x286dx11=_0x286dx5[_0xfe8e[149]];var _0x286dx12=_0x286dx5[_0xfe8e[8]][_0xfe8e[150]]-20;var _0x286dx14=Math[_0xfe8e[153]](100*_0x286dx12/_0x286dx10[_0xfe8e[125]]/_0x286dx11)/100;_0x286dx5[_0xfe8e[137]](_0x286dx14);_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]=Math[_0xfe8e[157]](_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[124]]*_0x286dx14-Math[_0xfe8e[156]](10,(_0x286dx5[_0xfe8e[8]][_0xfe8e[150]]-_0x286dx10[_0xfe8e[125]]*_0x286dx11*_0x286dx14)/2));_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]=Math[_0xfe8e[157]](_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[127]]*_0x286dx14-Math[_0xfe8e[156]](10,(_0x286dx5[_0xfe8e[8]][_0xfe8e[151]]-_0x286dx10[_0xfe8e[126]]*_0x286dx11*_0x286dx14)/2))}));this[_0xfe8e[28]](_0xfe8e[160], new Action(mxResources[_0xfe8e[26]](_0xfe8e[161]),function(){var _0x286dxc=mxUtils[_0xfe8e[97]](mxResources[_0xfe8e[26]](_0xfe8e[96])+_0xfe8e[162],parseInt(_0x286dx5[_0xfe8e[110]]()[_0xfe8e[163]]()*100));if(_0x286dxc!=null&&_0x286dxc[_0xfe8e[103]]>0&&!isNaN(parseInt(_0x286dxc))){_0x286dx5[_0xfe8e[137]](parseInt(_0x286dxc)/100)}}));var _0x286dx15=null;_0x286dx15=this[_0xfe8e[10]](_0xfe8e[164],function(){_0x286dx5[_0xfe8e[166]](!_0x286dx5[_0xfe8e[165]]());_0x286dx4[_0xfe8e[167]]()},null,null,_0xfe8e[168]);_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[165]]()});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[171],function(){_0x286dx5[_0xfe8e[173]][_0xfe8e[172]]=!_0x286dx5[_0xfe8e[173]][_0xfe8e[172]]});_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[173]][_0xfe8e[172]]});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[174],function(){_0x286dx5[_0xfe8e[176]][_0xfe8e[177]](!_0x286dx5[_0xfe8e[176]][_0xfe8e[175]]())});_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[176]][_0xfe8e[175]]()});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[178],function(){_0x286dx5[_0xfe8e[179]]=!_0x286dx5[_0xfe8e[179]];_0x286dx5[_0xfe8e[129]][_0xfe8e[180]]()});_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[179]]});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[181],function(){_0x286dx5[_0xfe8e[181]]=!_0x286dx5[_0xfe8e[181]];_0x286dx4[_0xfe8e[167]]();if(!_0x286dx5[_0xfe8e[181]]){var _0x286dx16=_0x286dx5[_0xfe8e[129]][_0xfe8e[155]];_0x286dx5[_0xfe8e[129]][_0xfe8e[183]](_0x286dx16[_0xfe8e[124]]-_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]/_0x286dx5[_0xfe8e[129]][_0xfe8e[182]],_0x286dx16[_0xfe8e[127]]-_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]/_0x286dx5[_0xfe8e[129]][_0xfe8e[182]]);_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]=0;_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]=0;_0x286dx5[_0xfe8e[184]]()}else {var _0x286dx17=_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[124]];var _0x286dx18=_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[127]];_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[124]]=0;_0x286dx5[_0xfe8e[129]][_0xfe8e[155]][_0xfe8e[127]]=0;_0x286dx5[_0xfe8e[184]]();_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]-=Math[_0xfe8e[157]](_0x286dx17*_0x286dx5[_0xfe8e[129]][_0xfe8e[182]]);_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]-=Math[_0xfe8e[157]](_0x286dx18*_0x286dx5[_0xfe8e[129]][_0xfe8e[182]])}},!mxClient.IS_TOUCH);_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[8]][_0xfe8e[113]][_0xfe8e[185]]==_0xfe8e[186]});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[147],mxUtils[_0xfe8e[27]](this,function(){_0x286dx5[_0xfe8e[145]]=!_0x286dx5[_0xfe8e[145]];_0x286dx5[_0xfe8e[187]]=_0x286dx5[_0xfe8e[145]];_0x286dx5[_0xfe8e[188]]=_0x286dx5[_0xfe8e[187]];_0x286dx5[_0xfe8e[129]][_0xfe8e[189]]();_0x286dx5[_0xfe8e[184]]();_0x286dx4[_0xfe8e[167]]();_0x286dx4[_0xfe8e[191]][_0xfe8e[190]]();if(mxUtils[_0xfe8e[192]](_0x286dx5[_0xfe8e[8]])){if(_0x286dx5[_0xfe8e[145]]){_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]-=20;_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]-=20}else {_0x286dx5[_0xfe8e[8]][_0xfe8e[154]]+=20;_0x286dx5[_0xfe8e[8]][_0xfe8e[158]]+=20}}}));_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[145]]});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[193],function(){_0x286dx5[_0xfe8e[195]](!_0x286dx5[_0xfe8e[194]][_0xfe8e[175]]())},null,null,_0xfe8e[196]);_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[194]][_0xfe8e[175]]()});_0x286dx15=this[_0xfe8e[10]](_0xfe8e[197],function(){_0x286dx5[_0xfe8e[194]][_0xfe8e[199]](!_0x286dx5[_0xfe8e[194]][_0xfe8e[198]]())});_0x286dx15[_0xfe8e[169]](true);_0x286dx15[_0xfe8e[170]](function(){return _0x286dx5[_0xfe8e[194]][_0xfe8e[198]]()});this[_0xfe8e[10]](_0xfe8e[200],function(){var _0x286dx19=_0xfe8e[95];if(mxResources[_0xfe8e[202]](mxClient[_0xfe8e[201]])){_0x286dx19=_0xfe8e[203]+mxClient[_0xfe8e[201]]};window[_0xfe8e[11]](_0xfe8e[204])});this[_0xfe8e[28]](_0xfe8e[205], new Action(mxResources[_0xfe8e[26]](_0xfe8e[205])+_0xfe8e[206],function(){_0x286dx3[_0xfe8e[9]]( new AboutDialog(_0x286dx3)[_0xfe8e[8]],320,280,true,true)},null,null,_0xfe8e[207]));var _0x286dx1a=mxUtils[_0xfe8e[27]](this,function(_0x286dx1b,_0x286dx1c){this[_0xfe8e[10]](_0x286dx1b,function(){_0x286dx5[_0xfe8e[208]](mxConstants.STYLE_FONTSTYLE,_0x286dx1c)})});_0x286dx1a(_0xfe8e[209],mxConstants.FONT_BOLD);_0x286dx1a(_0xfe8e[210],mxConstants.FONT_ITALIC);_0x286dx1a(_0xfe8e[211],mxConstants.FONT_UNDERLINE);this[_0xfe8e[10]](_0xfe8e[212],function(){_0x286dx5[_0xfe8e[213]](mxConstants.STYLE_SHADOW)});this[_0xfe8e[10]](_0xfe8e[214],function(){_0x286dx5[_0xfe8e[213]](mxConstants.STYLE_DASHED)});this[_0xfe8e[10]](_0xfe8e[215],function(){_0x286dx5[_0xfe8e[213]](mxConstants.STYLE_ROUNDED)});this[_0xfe8e[10]](_0xfe8e[216],function(){_0x286dx5[_0xfe8e[213]](mxConstants.STYLE_CURVED)});this[_0xfe8e[10]](_0xfe8e[113],function(){var _0x286dx9=_0x286dx5[_0xfe8e[57]]();if(_0x286dx9!=null&&_0x286dx9[_0xfe8e[103]]>0){var _0x286dx1d=_0x286dx5[_0xfe8e[102]]();var _0x286dx1c=mxUtils[_0xfe8e[97]](mxResources[_0xfe8e[26]](_0xfe8e[96])+_0xfe8e[118]+mxResources[_0xfe8e[26]](_0xfe8e[113])+_0xfe8e[217],_0x286dx1d[_0xfe8e[218]](_0x286dx9[0])||_0xfe8e[95]);if(_0x286dx1c!=null){_0x286dx5[_0xfe8e[219]](_0x286dx1c,_0x286dx9)}}});this[_0xfe8e[10]](_0xfe8e[220],function(){_0x286dx5[_0xfe8e[221]](_0x286dx5[_0xfe8e[93]]())});this[_0xfe8e[10]](_0xfe8e[222],function(){var _0x286dx7=_0x286dx5[_0xfe8e[93]]();if(_0x286dx7!=null&&_0x286dx5[_0xfe8e[102]]()[_0xfe8e[223]](_0x286dx7)){var _0x286dx1e=_0x286dx4[_0xfe8e[6]][_0xfe8e[225]][_0xfe8e[224]](_0x286dx7);if(_0x286dx1e instanceof mxEdgeHandler){var _0x286dx16=_0x286dx5[_0xfe8e[129]][_0xfe8e[155]];var _0x286dx6=_0x286dx5[_0xfe8e[129]][_0xfe8e[182]];var _0x286dx17=_0x286dx16[_0xfe8e[124]];var _0x286dx18=_0x286dx16[_0xfe8e[127]];var _0x286dx1f=_0x286dx5[_0xfe8e[102]]()[_0xfe8e[226]](_0x286dx7);var _0x286dx20=_0x286dx5[_0xfe8e[122]](_0x286dx1f);if(_0x286dx5[_0xfe8e[102]]()[_0xfe8e[121]](_0x286dx1f)&&_0x286dx20!=null){_0x286dx17+=_0x286dx20[_0xfe8e[124]];_0x286dx18+=_0x286dx20[_0xfe8e[127]]};_0x286dx1e[_0xfe8e[231]](_0x286dx1e[_0xfe8e[227]],_0x286dx5[_0xfe8e[229]][_0xfe8e[228]]/_0x286dx6-_0x286dx17,_0x286dx5[_0xfe8e[229]][_0xfe8e[230]]/_0x286dx6-_0x286dx18)}}});this[_0xfe8e[10]](_0xfe8e[232],function(){var _0x286dx21=_0x286dx3[_0xfe8e[2]][_0xfe8e[26]](_0xfe8e[232]);if(_0x286dx21[_0xfe8e[233]]!=null){_0x286dx21[_0xfe8e[233]][_0xfe8e[235]](_0x286dx21[_0xfe8e[233]][_0xfe8e[227]],_0x286dx21[_0xfe8e[234]])}});this[_0xfe8e[10]](_0xfe8e[236],function(){function _0x286dx22(_0x286dxc,_0x286dx23,_0x286dx24){var _0x286dx25=null;var _0x286dx9=_0x286dx5[_0xfe8e[57]]();_0x286dx5[_0xfe8e[102]]()[_0xfe8e[101]]();try{if(_0x286dx9[_0xfe8e[103]]==0){var _0x286dx26=_0x286dx5[_0xfe8e[237]]();_0x286dx9=[_0x286dx5[_0xfe8e[239]](_0x286dx5[_0xfe8e[238]](),null,_0xfe8e[95],_0x286dx26,_0x286dx26,_0x286dx23,_0x286dx24)];_0x286dx25=_0x286dx9};_0x286dx5[_0xfe8e[114]](mxConstants.STYLE_IMAGE,_0x286dxc,_0x286dx9);_0x286dx5[_0xfe8e[114]](mxConstants.STYLE_SHAPE,_0xfe8e[236],_0x286dx9);if(_0x286dx5[_0xfe8e[240]]()==1){if(_0x286dx23!=null&&_0x286dx24!=null){var _0x286dx7=_0x286dx9[0];var _0x286dxd=_0x286dx5[_0xfe8e[102]]()[_0xfe8e[241]](_0x286dx7);if(_0x286dxd!=null){_0x286dxd=_0x286dxd[_0xfe8e[123]]();_0x286dxd[_0xfe8e[125]]=_0x286dx23;_0x286dxd[_0xfe8e[126]]=_0x286dx24;_0x286dx5[_0xfe8e[102]]()[_0xfe8e[128]](_0x286dx7,_0x286dxd)}}}}finally{_0x286dx5[_0xfe8e[102]]()[_0xfe8e[107]]()};if(_0x286dx25!=null){_0x286dx5[_0xfe8e[59]](_0x286dx25);_0x286dx5[_0xfe8e[242]](_0x286dx25[0])}}var _0x286dxc=_0xfe8e[95];var _0x286dxb=_0x286dx5[_0xfe8e[110]]()[_0xfe8e[109]](_0x286dx5[_0xfe8e[93]]());if(_0x286dxb!=null){_0x286dxc=_0x286dxb[_0xfe8e[113]][mxConstants[_0xfe8e[243]]]||_0x286dxc};_0x286dxc=mxUtils[_0xfe8e[97]](mxResources[_0xfe8e[26]](_0xfe8e[96])+_0xfe8e[118]+mxResources[_0xfe8e[26]](_0xfe8e[244])+_0xfe8e[217],_0x286dxc);if(_0x286dxc!=null){if(_0x286dxc[_0xfe8e[103]]>0){var _0x286dx27= new Image();_0x286dx27[_0xfe8e[245]]=function(){_0x286dx22(_0x286dxc,_0x286dx27[_0xfe8e[125]],_0x286dx27[_0xfe8e[126]])};_0x286dx27[_0xfe8e[246]]=function(){mxUtils[_0xfe8e[248]](mxResources[_0xfe8e[26]](_0xfe8e[247]))};_0x286dx27[_0xfe8e[249]]=_0x286dxc}}})};Actions[_0xfe8e[4]][_0xfe8e[10]]=function(_0x286dx1b,_0x286dx28,_0x286dx29,_0x286dx2a,_0x286dx2b){return this[_0xfe8e[28]](_0x286dx1b, new Action(mxResources[_0xfe8e[26]](_0x286dx1b),_0x286dx28,_0x286dx29,_0x286dx2a,_0x286dx2b))};Actions[_0xfe8e[4]][_0xfe8e[28]]=function(_0x286dx2c,_0x286dx15){this[_0xfe8e[2]][_0x286dx2c]=_0x286dx15;return _0x286dx15};Actions[_0xfe8e[4]][_0xfe8e[26]]=function(_0x286dx2c){return this[_0xfe8e[2]][_0x286dx2c]};function Action(_0x286dx2e,_0x286dx28,_0x286dx29,_0x286dx2a,_0x286dx2b){mxEventSource[_0xfe8e[250]](this);this[_0xfe8e[251]]=_0x286dx2e;this[_0xfe8e[146]]=_0x286dx28;this[_0xfe8e[252]]=(_0x286dx29!=null)?_0x286dx29:true;this[_0xfe8e[253]]=_0x286dx2a;this[_0xfe8e[254]]=_0x286dx2b}mxUtils[_0xfe8e[255]](Action,mxEventSource);Action[_0xfe8e[4]][_0xfe8e[177]]=function(_0x286dxc){if(this[_0xfe8e[252]]!=_0x286dxc){this[_0xfe8e[252]]=_0x286dxc;this[_0xfe8e[257]]( new mxEventObject(_0xfe8e[256]))}};Action[_0xfe8e[4]][_0xfe8e[169]]=function(_0x286dxc){this[_0xfe8e[258]]=_0x286dxc};Action[_0xfe8e[4]][_0xfe8e[170]]=function(_0x286dx28){this[_0xfe8e[259]]=_0x286dx28};Action[_0xfe8e[4]][_0xfe8e[260]]=function(){return this[_0xfe8e[259]]()} \ No newline at end of file diff --git a/public/assets/plugins/square/js/Dialogs.js b/public/assets/plugins/square/js/Dialogs.js index ec4c6de..19bf8e1 100644 --- a/public/assets/plugins/square/js/Dialogs.js +++ b/public/assets/plugins/square/js/Dialogs.js @@ -1 +1 @@ -var _0x80f7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x6E\x70\x75\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x79\x70\x65","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x65\x63\x6B\x65\x64","\x47\x45\x54","\x6F\x70\x65\x6E","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x61","\x65\x64\x69\x74\x6F\x72","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x73\x65\x6C\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x2D\x2D\x20\x4E\x6F\x6E\x65\x20\x2D\x2D","\x76\x61\x6C\x75\x65","\x2D\x31","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x45\x61\x63\x68","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x6F\x77\x73","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x73\x65\x6C\x65\x63\x74\x32","\x30","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x66\x61\x74\x68\x65\x72","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x73\x6F\x6E","\x2D","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","","\x50\x4F\x53\x54","\x2F\x61\x70\x69\x2F\x72\x65\x73\x74\x2F\x6C\x69\x73\x74\x2F\x6C\x69\x73\x74","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x52\x4D\x49","\x69\x64","\x6E\x61\x6D\x65","\x6C\x6F\x67","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x62\x6F\x64\x79","\x72\x6F\x75\x6E\x64","\x6D\x61\x78","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x44\x69\x61\x6C\x6F\x67","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x6D\x6F\x64\x61\x6C\x20\x66\x61\x64\x65\x20\x69\x6E\x20\x63\x65\x6E\x74\x65\x72","\x64\x69\x73\x70\x6C\x61\x79","\x73\x74\x79\x6C\x65","\x62\x6C\x6F\x63\x6B","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x31\x32\x70\x78","\x67\x65\x4D\x6F\x64\x61\x6C\x44\x69\x61\x6C\x6F\x67","\x6D\x6F\x64\x61\x6C\x2D\x64\x69\x61\x6C\x6F\x67","\x62\x67","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x6D\x6F\x64\x61\x6C\x2D\x62\x61\x63\x6B\x64\x72\x6F\x70\x20\x66\x61\x64\x65\x20\x69\x6E","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x6E\x44\x69\x61\x6C\x6F\x67\x43\x6C\x6F\x73\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x6C\x6F\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x64\x61\x6C\x2D\x63\x6F\x6E\x74\x65\x6E\x74","\x6D\x6F\x64\x61\x6C\x2D\x68\x65\x61\x64\x65\x72","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79","\x6D\x6F\x64\x61\x6C\x2D\x66\x6F\x6F\x74\x65\x72","\x68\x34","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x69\x6D\x70\x6F\x72\x74","\x67\x65\x74","\x20\x58\x4D\x4C","\x77\x72\x69\x74\x65","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x62\x75\x74\x74\x6F\x6E","\x72\x6F\x77","\x63\x6F\x6C\x2D\x6D\x64\x2D\x31\x32","\x74\x65\x78\x74\x61\x72\x65\x61","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x33\x37\x34\x70\x78","\x66\x69\x6C\x65","\x61\x63\x63\x65\x70\x74","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x63\x68\x61\x6E\x67\x65","\x66\x69\x6C\x65\x73","\x74\x61\x72\x67\x65\x74","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x73\x75\x6C\x74","\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x6F\x72\x6D\x61\x74\x20\x66\x69\x6C\x65","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x62\x69\x6E\x64","\x62\x74\x6E\x20\x62\x6C\x75\x65","\x63\x61\x6E\x63\x65\x6C","\x62\x74\x6E\x20\x64\x65\x66\x61\x75\x6C\x74","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30\x70\x78","\x31\x37\x36","\x31\x35\x31","\x73\x72\x63","\x2F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x62\x72","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x58\x65\x6E\x69\x61\x6C\x61\x62\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x61","\x68\x72\x65\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D\x2F","\x5F\x62\x6C\x61\x6E\x6B","\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D","\x73\x61\x76\x65\x41\x73","\x5F","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x63\x6F\x6C\x2D\x6D\x64\x2D\x34","\x63\x6F\x6C\x2D\x6D\x64\x2D\x38","\x6C\x61\x62\x65\x6C","\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C\x20\x70\x75\x6C\x6C\x2D\x72\x69\x67\x68\x74","\x5F\x63\x6F\x70\x79","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C","\x73\x61\x76\x65","\x6E\x65\x77","\x5F\x6E\x65\x77","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x72\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x50\x55\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6E\x61\x6D\x65\x3D","\x50\x72\x6F\x6A\x65\x63\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x72\x65\x6E\x61\x6D\x65\x64","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x6C\x65\x72\x74","\x65\x64\x69\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x64\x61\x74\x61\x54\x72\x61\x6E\x73\x66\x65\x72","\x64\x72\x61\x67\x6F\x76\x65\x72","\x64\x72\x6F\x70","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D","\x65\x78\x70\x6F\x72\x74","\x66\x6F\x72\x6D\x2D\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x20\x66\x6F\x72\x6D\x2D\x72\x6F\x77\x2D\x73\x65\x70\x65\x72\x61\x74\x65\x64","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70\x20\x6C\x61\x73\x74","\x63\x6F\x6C\x2D\x73\x6D\x2D\x34\x20\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C","\x63\x6F\x6C\x2D\x73\x6D\x2D\x38","\x67\x65\x74\x58\x6D\x6C","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x67\x72\x61\x70\x68","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x20\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x2D\x73\x63\x72\x6F\x6C\x6C","\x20","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70","\x2F\x61\x70\x69\x2F\x61\x67\x65\x6E\x74\x73","\x73\x69\x70\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x71\x75\x65\x75\x65\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x73","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x63\x6F\x6E\x74\x65\x78\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C\x73","\x6D\x61\x69\x6C\x62\x6F\x78","\x25\x6D\x61\x69\x6C\x62\x6F\x78\x25\x40\x25\x63\x6F\x6E\x74\x65\x78\x74\x25","\x6D\x6F\x64\x65\x6C","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x62\x65\x65\x70","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x53\x75\x62\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x6F\x64\x62\x63","\x6F\x64\x62\x63\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x73","\x64\x69\x73\x70\x6C\x61\x79\x5F\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x5F\x69\x64","\x74\x69\x6D\x65\x6F\x75\x74","\x64\x69\x67\x69\x74","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x72\x65\x74\x72\x79","\x6E\x75\x6D\x62\x65\x72","\x6D\x69\x6E","\x73\x70\x65\x65\x64","\x6B\x65\x79","\x71\x75\x65\x72\x79","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x63\x6F\x6D\x6D\x61\x6E\x64","\x6D\x61\x78\x6C\x65\x6E\x67\x74\x68","\x31\x36\x30","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x68\x65\x6C\x70\x5F","\x70","\x68\x65\x6C\x70\x2D\x62\x6C\x6F\x63\x6B","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x72\x65\x66\x72\x65\x73\x68"];_0x80f7[0];function createCheckbox(_0x5e12x2){var _0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[5]](_0x80f7[3],_0x80f7[4]);if(_0x5e12x2){_0x5e12x3[_0x80f7[5]](_0x80f7[6],true)};return _0x5e12x3}function createDropdownFromApi(_0x5e12x5,_0x5e12x2,_0x5e12x6,_0x5e12x7,_0x5e12x8,_0x5e12x9,_0x5e12xa){var _0x5e12xb= new XMLHttpRequest();_0x5e12xb[_0x80f7[8]](_0x80f7[7],_0x5e12x5,false);_0x5e12xb[_0x80f7[14]](_0x80f7[9],_0x80f7[10]+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[11]]);_0x5e12xb[_0x80f7[15]](null);var _0x5e12xc=[];if(_0x5e12xb[_0x80f7[16]]===200){_0x5e12xc=JSON[_0x80f7[18]](_0x5e12xb[_0x80f7[17]])};var _0x5e12x3=document[_0x80f7[2]](_0x80f7[19]);var _0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x80f7[22];_0x5e12xd[_0x80f7[23]]=_0x80f7[24];_0x5e12x3[_0x80f7[25]](_0x5e12xd);_0x5e12xc[_0x80f7[30]][_0x80f7[28]](function(_0x5e12xe){_0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x5e12xe[_0x5e12x6];if(_0x5e12x9&&_0x5e12xa){_0x5e12x9[_0x80f7[28]](function(_0x5e12xf){_0x5e12xa=_0x5e12xa[_0x80f7[27]](_0x80f7[26]+_0x5e12xf+_0x80f7[26],_0x5e12xe[_0x5e12xf])});_0x5e12xd[_0x80f7[23]]=_0x5e12xa;_0x5e12xd[_0x80f7[29]]=(_0x5e12xa==_0x5e12x2)}else {_0x5e12xd[_0x80f7[23]]=_0x5e12xe[_0x5e12x7];_0x5e12xd[_0x80f7[29]]=(_0x5e12xe[_0x5e12x7]==_0x5e12x2)};_0x5e12x3[_0x80f7[25]](_0x5e12xd)});_0x5e12x3[_0x80f7[31]]=_0x80f7[32];return _0x5e12x3}function createGroupedDropdownFromApi(_0x5e12x5,_0x5e12x2,_0x5e12x6,_0x5e12x7,_0x5e12x8,_0x5e12x11){var _0x5e12xb= new XMLHttpRequest();_0x5e12xb[_0x80f7[8]](_0x80f7[7],_0x5e12x5,false);_0x5e12xb[_0x80f7[14]](_0x80f7[9],_0x80f7[10]+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[11]]);_0x5e12xb[_0x80f7[15]](null);var _0x5e12xc=[];if(_0x5e12xb[_0x80f7[16]]===200){_0x5e12xc=JSON[_0x80f7[18]](_0x5e12xb[_0x80f7[17]])};var _0x5e12x3=document[_0x80f7[2]](_0x80f7[19]);var _0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x80f7[22];_0x5e12xd[_0x80f7[23]]=_0x80f7[33];_0x5e12x3[_0x80f7[25]](_0x5e12xd);_0x5e12xc[_0x80f7[30]][_0x80f7[28]](function(_0x5e12xe){_0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[31]]=_0x80f7[34];_0x5e12xd[_0x80f7[21]]=_0x5e12xe[_0x5e12x6][_0x80f7[35]]();_0x5e12xd[_0x80f7[23]]=_0x5e12xe[_0x5e12x7];_0x5e12xd[_0x80f7[29]]=(_0x5e12xe[_0x5e12x7]==_0x5e12x2);_0x5e12x3[_0x80f7[25]](_0x5e12xd);_0x5e12xe[_0x5e12x11][_0x80f7[28]](function(_0x5e12xe){_0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[31]]=_0x80f7[36];_0x5e12xd[_0x80f7[21]]=_0x80f7[37]+_[_0x80f7[38]](_0x5e12xe[_0x5e12x6]);_0x5e12xd[_0x80f7[23]]=_0x5e12xe[_0x5e12x7];_0x5e12xd[_0x80f7[29]]=(_0x5e12xe[_0x5e12x7]==_0x5e12x2);_0x5e12x3[_0x80f7[25]](_0x5e12xd)})});_0x5e12x3[_0x80f7[31]]=_0x80f7[32];return _0x5e12x3}function createDropdownFromArray(_0x5e12x13,_0x5e12x2){var _0x5e12x3=document[_0x80f7[2]](_0x80f7[19]);for(var _0x5e12x14 in _0x5e12x13){var _0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x5e12x13[_0x5e12x14];_0x5e12xd[_0x80f7[23]]=_0x5e12x14;if(_0x5e12x2>0||_0x5e12x2!=_0x80f7[39]){_0x5e12xd[_0x80f7[29]]=(_0x5e12x2===_0x5e12x14)?true:false};_0x5e12x3[_0x80f7[25]](_0x5e12xd)};_0x5e12x3[_0x80f7[31]]=_0x80f7[32];return _0x5e12x3}function createDropdownFromTigerDialList(_0x5e12x2){var _0x5e12x3=document[_0x80f7[2]](_0x80f7[19]);var _0x5e12x13=[];var _0x5e12x16= new XMLHttpRequest();try{_0x5e12x16[_0x80f7[8]](_0x80f7[40],_0x80f7[41],false);_0x5e12x16[_0x80f7[15]](JSON[_0x80f7[42]]({page:1,size:600000}));if(_0x5e12x16[_0x80f7[16]]===200){var _0x5e12xc=JSON[_0x80f7[18]](_0x5e12x16[_0x80f7[17]]);if(_0x5e12xc[_0x80f7[16]]>0){var _0x5e12x17=_0x5e12xc[_0x80f7[17]][_0x80f7[43]][_0x80f7[30]];for(var _0x5e12x18 in _0x5e12x17){_0x5e12x13[_0x5e12x17[_0x5e12x18][_0x80f7[44]]]=_0x5e12x17[_0x5e12x18][_0x80f7[45]]}}}}catch(e){console[_0x80f7[46]](e)};for(var _0x5e12x14 in _0x5e12x13){var _0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x5e12x13[_0x5e12x14];_0x5e12xd[_0x80f7[23]]=_0x5e12x14;if(_0x5e12x2>0||_0x5e12x2!=_0x80f7[39]){_0x5e12xd[_0x80f7[29]]=(_0x5e12x2===_0x5e12x14)?true:false};_0x5e12x3[_0x80f7[25]](_0x5e12xd)};_0x5e12x3[_0x80f7[31]]=_0x80f7[32];return _0x5e12x3}function Dialog(_0x5e12x8,_0x5e12x1a,_0x5e12x1b,_0x5e12x1c,_0x5e12x1d,_0x5e12x1e,_0x5e12x1f){var _0x5e12x20=0;if(mxClient[_0x80f7[47]]&&document[_0x80f7[48]]!=9){_0x5e12x20=60};_0x5e12x1b+=_0x5e12x20;_0x5e12x1c+=_0x5e12x20;var _0x5e12x21=Math[_0x80f7[52]](0,Math[_0x80f7[51]]((document[_0x80f7[50]][_0x80f7[49]]-_0x5e12x1b)/2));var _0x5e12x22=Math[_0x80f7[52]](0,Math[_0x80f7[51]]((Math[_0x80f7[52]](document[_0x80f7[50]][_0x80f7[53]],document[_0x80f7[54]][_0x80f7[53]])-_0x5e12x1c)/3));var _0x5e12x23=_0x5e12x8[_0x80f7[56]](_0x80f7[55]);_0x5e12x23[_0x80f7[31]]=_0x80f7[57];_0x5e12x23[_0x80f7[59]][_0x80f7[58]]=_0x80f7[60];_0x5e12x23[_0x80f7[59]][_0x80f7[61]]=_0x80f7[62];var _0x5e12x24=_0x5e12x8[_0x80f7[56]](_0x80f7[63]);_0x5e12x24[_0x80f7[31]]=_0x80f7[64];_0x5e12x24[_0x80f7[25]](_0x5e12x1a);_0x5e12x23[_0x80f7[25]](_0x5e12x24);if(this[_0x80f7[65]]==null){this[_0x80f7[65]]=_0x5e12x8[_0x80f7[56]](_0x80f7[66]);this[_0x80f7[65]][_0x80f7[31]]=_0x80f7[67];if(mxClient[_0x80f7[68]]){ new mxDivResizer(this[_0x80f7[65]])}};if(_0x5e12x1d){document[_0x80f7[50]][_0x80f7[25]](this[_0x80f7[65]])};document[_0x80f7[50]][_0x80f7[25]](_0x5e12x23);this[_0x80f7[69]]=_0x5e12x1f;this[_0x80f7[70]]=_0x5e12x23}Dialog[_0x80f7[72]][_0x80f7[71]]=function(){if(this[_0x80f7[69]]!=null){this[_0x80f7[69]]();this[_0x80f7[69]]=null};this[_0x80f7[70]][_0x80f7[74]][_0x80f7[73]](this[_0x80f7[70]]);this[_0x80f7[65]][_0x80f7[74]][_0x80f7[73]](this[_0x80f7[65]])};function ImportDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[81])+_0x80f7[83]);var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[88]);var _0x5e12x2e=document[_0x80f7[2]](_0x80f7[89]);_0x5e12x2e[_0x80f7[59]][_0x80f7[90]]=_0x80f7[91];_0x5e12x2e[_0x80f7[59]][_0x80f7[92]]=_0x80f7[93];var _0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[3]]=_0x80f7[94];_0x5e12x3[_0x80f7[5]](_0x80f7[95],_0x80f7[96]);_0x5e12x3[_0x80f7[105]](_0x80f7[97],function _0x5e12x2f(_0x5e12x30){var _0x5e12x31=_0x5e12x30[_0x80f7[99]][_0x80f7[98]][0];console[_0x80f7[46]](_0x5e12x31);if(_0x5e12x31){if(_0x5e12x31[_0x80f7[3]]===_0x80f7[96]){var _0x5e12x32= new FileReader();_0x5e12x32[_0x80f7[100]]=function(_0x5e12x33){var _0x5e12x34=_0x5e12x33[_0x80f7[99]][_0x80f7[101]];mxUtils[_0x80f7[84]](_0x5e12x2e,_0x5e12x34)};_0x5e12x32[_0x80f7[102]](_0x5e12x31)}else {alert(_0x80f7[103])}}else {alert(_0x80f7[104])}},false);_0x5e12x2d[_0x80f7[25]](_0x5e12x3);_0x5e12x2d[_0x80f7[25]](_0x5e12x2e);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[81]),mxUtils[_0x80f7[108]](this,function(_0x5e12x36){var _0x5e12x37=mxUtils[_0x80f7[106]](_0x5e12x2e[_0x80f7[23]]);_0x5e12x8[_0x80f7[13]][_0x80f7[107]](_0x5e12x37[_0x80f7[54]]);_0x5e12x8[_0x80f7[85]]()}));_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function AboutDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[112])+_0x80f7[113]);var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x3a=document[_0x80f7[2]](_0x80f7[114]);_0x5e12x3a[_0x80f7[59]][_0x80f7[115]]=_0x80f7[116];_0x5e12x3a[_0x80f7[5]](_0x80f7[90],_0x80f7[117]);_0x5e12x3a[_0x80f7[5]](_0x80f7[90],_0x80f7[118]);_0x5e12x3a[_0x80f7[5]](_0x80f7[119],IMAGE_PATH+_0x80f7[120]);_0x5e12x28[_0x80f7[25]](_0x5e12x3a);mxUtils[_0x80f7[121]](_0x5e12x28);mxUtils[_0x80f7[84]](_0x5e12x28,_0x80f7[122]+mxClient[_0x80f7[123]]);mxUtils[_0x80f7[121]](_0x5e12x28);var _0x5e12x3b=document[_0x80f7[2]](_0x80f7[124]);_0x5e12x3b[_0x80f7[5]](_0x80f7[125],_0x80f7[126]);_0x5e12x3b[_0x80f7[5]](_0x80f7[99],_0x80f7[127]);mxUtils[_0x80f7[84]](_0x5e12x3b,_0x80f7[128]);_0x5e12x28[_0x80f7[25]](_0x5e12x3b);mxUtils[_0x80f7[121]](_0x5e12x28);mxUtils[_0x80f7[121]](_0x5e12x28);var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[71]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function SaveDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[129]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x3d=_0x80f7[45];var _0x5e12x3e=_0x80f7[130]+_0x5e12x3d;var _0x5e12x2=_0x5e12x8[_0x80f7[13]][_0x80f7[131]]();var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[132]);var _0x5e12x3f=_0x5e12x8[_0x80f7[56]](_0x80f7[133]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[135];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x5e12x3d));_0x5e12x2d[_0x80f7[25]](_0x5e12x40);var _0x5e12x41=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x41[_0x80f7[5]](_0x80f7[23],_0x5e12x2+_0x80f7[136]);_0x5e12x41[_0x80f7[5]](_0x80f7[44],_0x5e12x3e);_0x5e12x41[_0x80f7[31]]=_0x80f7[137];_0x5e12x3f[_0x80f7[25]](_0x5e12x41);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x2c[_0x80f7[25]](_0x5e12x3f);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[138]),function(){_0x5e12x8[_0x80f7[129]](_0x5e12x41[_0x80f7[23]]);_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function NewDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[139]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x3d=_0x80f7[45];var _0x5e12x3e=_0x80f7[130]+_0x5e12x3d;var _0x5e12x2=_0x5e12x8[_0x80f7[13]][_0x80f7[131]]();var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[132]);var _0x5e12x3f=_0x5e12x8[_0x80f7[56]](_0x80f7[133]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[135];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x5e12x3d));_0x5e12x2d[_0x80f7[25]](_0x5e12x40);var _0x5e12x41=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x41[_0x80f7[5]](_0x80f7[23],_0x5e12x2+_0x80f7[140]);_0x5e12x41[_0x80f7[5]](_0x80f7[44],_0x5e12x3e);_0x5e12x41[_0x80f7[31]]=_0x80f7[137];_0x5e12x3f[_0x80f7[25]](_0x5e12x41);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x2c[_0x80f7[25]](_0x5e12x3f);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[139]),function(){_0x5e12x8[_0x80f7[139]](_0x5e12x41[_0x80f7[23]]);_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function VariableDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[141]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x3d=_0x80f7[45];var _0x5e12x3e=_0x80f7[130]+_0x5e12x3d;var _0x5e12x2=_0x5e12x8[_0x80f7[13]][_0x80f7[131]]();var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[132]);var _0x5e12x3f=_0x5e12x8[_0x80f7[56]](_0x80f7[133]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[135];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x5e12x3d));_0x5e12x2d[_0x80f7[25]](_0x5e12x40);var _0x5e12x41=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x41[_0x80f7[5]](_0x80f7[23],_0x80f7[142]);_0x5e12x41[_0x80f7[5]](_0x80f7[44],_0x5e12x3e);_0x5e12x41[_0x80f7[31]]=_0x80f7[137];_0x5e12x3f[_0x80f7[25]](_0x5e12x41);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x2c[_0x80f7[25]](_0x5e12x3f);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[139]),function(){_0x5e12x8[_0x80f7[141]](_0x5e12x41[_0x80f7[23]]);_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function OpenDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[8]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[132]);var _0x5e12x3f=_0x5e12x8[_0x80f7[56]](_0x80f7[133]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[135];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x80f7[45]));_0x5e12x2d[_0x80f7[25]](_0x5e12x40);var _0x5e12xb= new XMLHttpRequest();_0x5e12xb[_0x80f7[8]](_0x80f7[7],_0x80f7[143],false);_0x5e12xb[_0x80f7[14]](_0x80f7[9],_0x80f7[10]+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[11]]);_0x5e12xb[_0x80f7[15]](null);var _0x5e12xc=[];if(_0x5e12xb[_0x80f7[16]]===200){_0x5e12xc=JSON[_0x80f7[18]](_0x5e12xb[_0x80f7[17]])};var _0x5e12x41=document[_0x80f7[2]](_0x80f7[19]);for(var _0x5e12x45=0;_0x5e12x45<_0x5e12xc[_0x80f7[144]];_0x5e12x45++){var _0x5e12xd=document[_0x80f7[2]](_0x80f7[20]);_0x5e12xd[_0x80f7[21]]=_0x5e12xc[_0x5e12x45][_0x80f7[45]];_0x5e12xd[_0x80f7[23]]=_0x5e12xc[_0x5e12x45][_0x80f7[44]];_0x5e12x41[_0x80f7[25]](_0x5e12xd)};_0x5e12x41[_0x80f7[31]]=_0x80f7[137];_0x5e12x3f[_0x80f7[25]](_0x5e12x41);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x2c[_0x80f7[25]](_0x5e12x3f);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[8]),function(){console[_0x80f7[46]](_0x5e12x41);console[_0x80f7[46]](_0x5e12x41[_0x80f7[23]]);window[_0x80f7[8]](_0x80f7[145]+_0x5e12x41[_0x80f7[23]],_0x80f7[127]);_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function RenameDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[146]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[132]);var _0x5e12x3f=_0x5e12x8[_0x80f7[56]](_0x80f7[133]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[135];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x80f7[45]));_0x5e12x2d[_0x80f7[25]](_0x5e12x40);var _0x5e12x3d=_0x5e12x8[_0x80f7[13]][_0x80f7[147]];var _0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[5]](_0x80f7[23],_0x5e12x3d);_0x5e12x3[_0x80f7[31]]=_0x80f7[137];_0x5e12x3f[_0x80f7[25]](_0x5e12x3);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x2c[_0x80f7[25]](_0x5e12x3f);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[138]),function(){var _0x5e12xb= new XMLHttpRequest();_0x5e12xb[_0x80f7[8]](_0x80f7[148],SAVE_URL+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[44]],true);_0x5e12xb[_0x80f7[14]](_0x80f7[149],_0x80f7[150]);_0x5e12xb[_0x80f7[14]](_0x80f7[9],_0x80f7[10]+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[11]]);_0x5e12xb[_0x80f7[15]](_0x80f7[151]+_0x5e12x3[_0x80f7[23]]);_0x5e12xb[_0x80f7[100]]=function(_0x5e12x33){if(_0x5e12xb[_0x80f7[16]]===200){_0x5e12x8[_0x80f7[13]][_0x80f7[153]](_0x80f7[152]);_0x5e12x8[_0x80f7[13]][_0x80f7[147]]=_0x5e12x3[_0x80f7[23]]}else {console[_0x80f7[46]](_0x5e12xb[_0x80f7[17]]);_0x5e12x8[_0x80f7[13]][_0x80f7[153]](JSON[_0x80f7[18]](_0x5e12xb[_0x80f7[17]])[_0x80f7[155]][0][_0x80f7[154]])}};_0x5e12xb[_0x80f7[156]]=function(_0x5e12x33){mxUtils[_0x80f7[158]](_0x5e12xb[_0x80f7[157]])};_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function EditFileDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[77]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[159]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x2c=_0x5e12x8[_0x80f7[56]](_0x80f7[87]);var _0x5e12x2d=_0x5e12x8[_0x80f7[56]](_0x80f7[88]);var _0x5e12x2e=document[_0x80f7[2]](_0x80f7[89]);_0x5e12x2e[_0x80f7[59]][_0x80f7[90]]=_0x80f7[91];_0x5e12x2e[_0x80f7[59]][_0x80f7[92]]=_0x80f7[93];_0x5e12x2e[_0x80f7[23]]=mxUtils[_0x80f7[161]](_0x5e12x8[_0x80f7[13]][_0x80f7[160]]());if(fileSupport){function _0x5e12x48(_0x5e12x30){_0x5e12x30[_0x80f7[162]]();_0x5e12x30[_0x80f7[163]]();if(_0x5e12x30[_0x80f7[164]][_0x80f7[98]][_0x80f7[144]]>0){var _0x5e12x49=_0x5e12x30[_0x80f7[164]][_0x80f7[98]][0];var _0x5e12x4a= new FileReader();_0x5e12x4a[_0x80f7[100]]=function(_0x5e12x33){_0x5e12x2e[_0x80f7[23]]=_0x5e12x33[_0x80f7[99]][_0x80f7[101]]};_0x5e12x4a[_0x80f7[102]](_0x5e12x49)}}function _0x5e12x4b(_0x5e12x30){_0x5e12x30[_0x80f7[162]]();_0x5e12x30[_0x80f7[163]]()}_0x5e12x2e[_0x80f7[105]](_0x80f7[165],_0x5e12x4b,false);_0x5e12x2e[_0x80f7[105]](_0x80f7[166],_0x5e12x48,false)};_0x5e12x2d[_0x80f7[25]](_0x5e12x2e);_0x5e12x2c[_0x80f7[25]](_0x5e12x2d);_0x5e12x28[_0x80f7[25]](_0x5e12x2c);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[138]),function(){var _0x5e12x37=mxUtils[_0x80f7[106]](_0x5e12x2e[_0x80f7[23]]);_0x5e12x8[_0x80f7[13]][_0x80f7[107]](_0x5e12x37[_0x80f7[54]]);_0x5e12x8[_0x80f7[85]]()});_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function ExportDialog(_0x5e12x8){var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[167]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[168])+_0x80f7[83]);var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x4d=_0x5e12x8[_0x80f7[56]](_0x80f7[169]);var _0x5e12x4e=_0x5e12x8[_0x80f7[56]](_0x80f7[170]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[171];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x80f7[147]));var _0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[5]](_0x80f7[23],_0x5e12x8[_0x80f7[13]][_0x80f7[131]]());_0x5e12x3[_0x80f7[31]]=_0x80f7[137];var _0x5e12x23=_0x5e12x8[_0x80f7[56]](_0x80f7[172]);_0x5e12x23[_0x80f7[25]](_0x5e12x3);_0x5e12x4e[_0x80f7[25]](_0x5e12x40);_0x5e12x4e[_0x80f7[25]](_0x5e12x23);_0x5e12x4d[_0x80f7[25]](_0x5e12x4e);_0x5e12x28[_0x80f7[25]](_0x5e12x4d);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[168]),mxUtils[_0x80f7[108]](this,function(_0x5e12x36){_0x5e12x8[_0x80f7[138]](false);var _0x5e12x4f=encodeURIComponent(mxUtils[_0x80f7[173]](_0x5e12x8[_0x80f7[13]][_0x80f7[160]]())); new mxXmlRequest(SAVE_URL+_0x5e12x8[_0x80f7[13]][_0x80f7[12]][_0x80f7[44]]+_0x80f7[175],_0x80f7[176]+_0x5e12x3[_0x80f7[23]],_0x80f7[7])[_0x80f7[174]](document,_0x80f7[127]);_0x5e12x8[_0x80f7[85]]()}));_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26}function GeneralDialog(_0x5e12x8,_0x5e12x51){var _0x5e12x52=_0x5e12x8[_0x80f7[13]][_0x80f7[177]];var _0x5e12x26=_0x5e12x8[_0x80f7[56]](_0x80f7[75]);var _0x5e12x27=_0x5e12x8[_0x80f7[56]](_0x80f7[76]);var _0x5e12x28=_0x5e12x8[_0x80f7[56]](_0x80f7[178]);var _0x5e12x29=_0x5e12x8[_0x80f7[56]](_0x80f7[78]);var _0x5e12x2a=_0x5e12x8[_0x80f7[80]](_0x80f7[79]);mxUtils[_0x80f7[84]](_0x5e12x2a,mxResources[_0x80f7[82]](_0x80f7[159])+_0x80f7[179]+mxResources[_0x80f7[82]](_0x5e12x51[_0x80f7[23]][_0x80f7[180]]));var _0x5e12x2b=mxUtils[_0x80f7[86]](_0x80f7[39],function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x2b[_0x80f7[31]]=_0x80f7[71];_0x5e12x27[_0x80f7[25]](_0x5e12x2b);_0x5e12x27[_0x80f7[25]](_0x5e12x2a);var _0x5e12x53=_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x80f7[144]];var _0x5e12x4d=_0x5e12x8[_0x80f7[56]](_0x80f7[169]);for(var _0x5e12x54=0;_0x5e12x54<_0x5e12x53;_0x5e12x54++){var _0x5e12x3d=_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x5e12x54][_0x80f7[45]];var _0x5e12x3e=_0x80f7[130]+_0x5e12x3d;var _0x5e12x2=_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x5e12x54][_0x80f7[23]];var _0x5e12x4e=_0x5e12x8[_0x80f7[56]]((_0x5e12x54==_0x5e12x53-1)?_0x80f7[170]:_0x80f7[182]);var _0x5e12x40=document[_0x80f7[2]](_0x80f7[134]);_0x5e12x40[_0x80f7[31]]=_0x80f7[171];mxUtils[_0x80f7[84]](_0x5e12x40,mxResources[_0x80f7[82]](_0x5e12x3d));_0x5e12x4e[_0x80f7[25]](_0x5e12x40);var _0x5e12x3;switch(_0x5e12x3d){case _0x80f7[184]:_0x5e12x3=createDropdownFromApi(_0x80f7[183],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8);break;case _0x80f7[186]:_0x5e12x3=createDropdownFromApi(_0x80f7[185],_0x5e12x2,_0x80f7[45],_0x80f7[45],_0x5e12x8);break;case _0x80f7[188]:_0x5e12x3=createDropdownFromApi(_0x80f7[187],_0x5e12x2,_0x80f7[45],_0x80f7[45],_0x5e12x8);break;case _0x80f7[190]:_0x5e12x3=createDropdownFromApi(_0x80f7[189],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8);break;case _0x80f7[192]:_0x5e12x3=createDropdownFromApi(_0x80f7[191],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8);break;case _0x80f7[194]:_0x5e12x3=createDropdownFromApi(_0x80f7[193],_0x5e12x2,_0x80f7[45],_0x80f7[45],_0x5e12x8);break;case _0x80f7[196]:_0x5e12x3=createDropdownFromApi(_0x80f7[195],_0x5e12x2,_0x80f7[196],_0x80f7[44],_0x5e12x8,[_0x80f7[196],_0x80f7[194]],_0x80f7[197]);break;case _0x80f7[198]:_0x5e12x3=createDropdownFromArray(ISPEECHASRMODEL,_0x5e12x2);break;case _0x80f7[199]:_0x5e12x3=createDropdownFromArray(ISPEECHASRLANG,_0x5e12x2);break;case _0x80f7[200]:_0x5e12x3=createDropdownFromArray(ISPEECHBEEP,_0x5e12x2);break;case _0x80f7[201]:_0x5e12x3=createDropdownFromArray(ISPEECHLANG,_0x5e12x2);break;case _0x80f7[202]:_0x5e12x3=createDropdownFromArray(GOOGLETTSLANG,_0x5e12x2);break;case _0x80f7[203]:_0x5e12x3=createDropdownFromTigerDialList(_0x5e12x2);break;case _0x80f7[206]:_0x5e12x3=createGroupedDropdownFromApi(_0x80f7[204],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8,_0x80f7[205]);break;case _0x80f7[207]:_0x5e12x3=createDropdownFromApi(_0x80f7[143],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8);break;case _0x80f7[209]:_0x5e12x3=createDropdownFromApi(_0x80f7[208],_0x5e12x2,_0x80f7[45],_0x80f7[44],_0x5e12x8);break;case _0x80f7[212]:_0x5e12x3=createDropdownFromApi(_0x80f7[210],_0x5e12x2,_0x80f7[211],_0x80f7[44],_0x5e12x8);break;case _0x80f7[213]:;case _0x80f7[214]:;case _0x80f7[215]:;case _0x80f7[216]:;case _0x80f7[17]:;case _0x80f7[217]:;case _0x80f7[220]:_0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[5]](_0x80f7[3],_0x80f7[218]);_0x5e12x3[_0x80f7[5]](_0x80f7[219],0);_0x5e12x3[_0x80f7[5]](_0x80f7[52],1000);_0x5e12x3[_0x80f7[5]](_0x80f7[23],_0x5e12x2);_0x5e12x3[_0x80f7[31]]=_0x80f7[137];break;case _0x80f7[21]:;case _0x80f7[221]:;case _0x80f7[222]:;case _0x80f7[223]:;case _0x80f7[225]:_0x5e12x3=document[_0x80f7[2]](_0x80f7[89]);_0x5e12x3[_0x80f7[224]]=_0x5e12x2;_0x5e12x3[_0x80f7[31]]=_0x80f7[137];break;case _0x80f7[228]:_0x5e12x3=document[_0x80f7[2]](_0x80f7[89]);_0x5e12x3[_0x80f7[224]]=_0x5e12x2;_0x5e12x3[_0x80f7[31]]=_0x80f7[137];_0x5e12x3[_0x80f7[5]](_0x80f7[226],_0x80f7[227]);break;default:_0x5e12x3=document[_0x80f7[2]](_0x80f7[1]);_0x5e12x3[_0x80f7[5]](_0x80f7[23],_0x5e12x2);_0x5e12x3[_0x80f7[31]]=_0x80f7[137];break};_0x5e12x3[_0x80f7[5]](_0x80f7[44],_0x5e12x3e);var _0x5e12x23=_0x5e12x8[_0x80f7[56]](_0x80f7[172]);_0x5e12x23[_0x80f7[25]](_0x5e12x3);if(mxResources[_0x80f7[82]](_0x80f7[229]+_0x5e12x3d)){var _0x5e12x55=_0x5e12x8[_0x80f7[56]](_0x80f7[230]);_0x5e12x55[_0x80f7[31]]=_0x80f7[231];mxUtils[_0x80f7[84]](_0x5e12x55,mxResources[_0x80f7[82]](_0x80f7[229]+_0x5e12x3d));_0x5e12x23[_0x80f7[25]](_0x5e12x55)};_0x5e12x4e[_0x80f7[25]](_0x5e12x23);_0x5e12x4d[_0x80f7[25]](_0x5e12x4e)};_0x5e12x28[_0x80f7[25]](_0x5e12x4d);var _0x5e12x35=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[138]),mxUtils[_0x80f7[108]](this,function(_0x5e12x36){for(var _0x5e12x54=0;_0x5e12x54<_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x80f7[144]];_0x5e12x54++){var _0x5e12x3e=_0x80f7[130]+_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x5e12x54][_0x80f7[45]];var _0x5e12x3d=_0x5e12x51[_0x80f7[23]][_0x80f7[181]][_0x5e12x54][_0x80f7[45]];console[_0x80f7[46]](_0x5e12x3d,document[_0x80f7[232]](_0x5e12x3e)[_0x80f7[23]]);_0x5e12x51[_0x80f7[5]](_0x5e12x3d,document[_0x80f7[232]](_0x5e12x3e)[_0x80f7[23]])};_0x5e12x52[_0x80f7[233]](_0x5e12x51);_0x5e12x8[_0x80f7[85]]()}));_0x5e12x35[_0x80f7[31]]=_0x80f7[109];var _0x5e12x38=mxUtils[_0x80f7[86]](mxResources[_0x80f7[82]](_0x80f7[110]),function(){_0x5e12x8[_0x80f7[85]]()});_0x5e12x38[_0x80f7[31]]=_0x80f7[111];_0x5e12x29[_0x80f7[25]](_0x5e12x35);_0x5e12x29[_0x80f7[25]](_0x5e12x38);_0x5e12x26[_0x80f7[25]](_0x5e12x27);_0x5e12x26[_0x80f7[25]](_0x5e12x28);_0x5e12x26[_0x80f7[25]](_0x5e12x29);this[_0x80f7[70]]=_0x5e12x26} \ No newline at end of file +var _0x2f7a=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x69\x6E\x70\x75\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x74\x79\x70\x65","\x63\x68\x65\x63\x6B\x62\x6F\x78","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x68\x65\x63\x6B\x65\x64","\x47\x45\x54","\x6F\x70\x65\x6E","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x64\x61\x74\x61","\x65\x64\x69\x74\x6F\x72","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x73\x65\x6C\x65\x63\x74","\x6F\x70\x74\x69\x6F\x6E","\x74\x65\x78\x74","\x2D\x2D\x20\x4E\x6F\x6E\x65\x20\x2D\x2D","\x76\x61\x6C\x75\x65","\x2D\x31","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x25","\x72\x65\x70\x6C\x61\x63\x65","\x66\x6F\x72\x45\x61\x63\x68","\x73\x65\x6C\x65\x63\x74\x65\x64","\x72\x6F\x77\x73","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C\x20\x73\x65\x6C\x65\x63\x74\x32","\x30","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x66\x61\x74\x68\x65\x72","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x73\x65\x6C\x65\x63\x74\x2D\x67\x72\x6F\x75\x70\x2D\x73\x6F\x6E","\x2D","\x63\x61\x70\x69\x74\x61\x6C\x69\x7A\x65","","\x50\x4F\x53\x54","\x2F\x61\x70\x69\x2F\x72\x65\x73\x74\x2F\x6C\x69\x73\x74\x2F\x6C\x69\x73\x74","\x73\x74\x72\x69\x6E\x67\x69\x66\x79","\x52\x4D\x49","\x69\x64","\x6E\x61\x6D\x65","\x6C\x6F\x67","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x73\x63\x72\x6F\x6C\x6C\x57\x69\x64\x74\x68","\x62\x6F\x64\x79","\x72\x6F\x75\x6E\x64","\x6D\x61\x78","\x73\x63\x72\x6F\x6C\x6C\x48\x65\x69\x67\x68\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x44\x69\x61\x6C\x6F\x67","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x6D\x6F\x64\x61\x6C\x20\x66\x61\x64\x65\x20\x69\x6E\x20\x63\x65\x6E\x74\x65\x72","\x64\x69\x73\x70\x6C\x61\x79","\x73\x74\x79\x6C\x65","\x62\x6C\x6F\x63\x6B","\x70\x61\x64\x64\x69\x6E\x67\x52\x69\x67\x68\x74","\x31\x32\x70\x78","\x67\x65\x4D\x6F\x64\x61\x6C\x44\x69\x61\x6C\x6F\x67","\x6D\x6F\x64\x61\x6C\x2D\x64\x69\x61\x6C\x6F\x67","\x62\x67","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x6D\x6F\x64\x61\x6C\x2D\x62\x61\x63\x6B\x64\x72\x6F\x70\x20\x66\x61\x64\x65\x20\x69\x6E","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x6E\x44\x69\x61\x6C\x6F\x67\x43\x6C\x6F\x73\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x6C\x6F\x73\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x64\x61\x6C\x2D\x63\x6F\x6E\x74\x65\x6E\x74","\x6D\x6F\x64\x61\x6C\x2D\x68\x65\x61\x64\x65\x72","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79","\x6D\x6F\x64\x61\x6C\x2D\x66\x6F\x6F\x74\x65\x72","\x68\x34","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x69\x6D\x70\x6F\x72\x74","\x67\x65\x74","\x20\x58\x4D\x4C","\x77\x72\x69\x74\x65","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x62\x75\x74\x74\x6F\x6E","\x72\x6F\x77","\x63\x6F\x6C\x2D\x6D\x64\x2D\x31\x32","\x74\x65\x78\x74\x61\x72\x65\x61","\x77\x69\x64\x74\x68","\x31\x30\x30\x25","\x68\x65\x69\x67\x68\x74","\x33\x37\x34\x70\x78","\x66\x69\x6C\x65","\x61\x63\x63\x65\x70\x74","\x74\x65\x78\x74\x2F\x78\x6D\x6C","\x63\x68\x61\x6E\x67\x65","\x66\x69\x6C\x65\x73","\x74\x61\x72\x67\x65\x74","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x73\x75\x6C\x74","\x72\x65\x61\x64\x41\x73\x54\x65\x78\x74","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x6F\x72\x6D\x61\x74\x20\x66\x69\x6C\x65","\x46\x61\x69\x6C\x65\x64\x20\x74\x6F\x20\x6C\x6F\x61\x64\x20\x66\x69\x6C\x65","\x61\x64\x64\x45\x76\x65\x6E\x74\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x62\x69\x6E\x64","\x62\x74\x6E\x20\x62\x6C\x75\x65","\x63\x61\x6E\x63\x65\x6C","\x62\x74\x6E\x20\x64\x65\x66\x61\x75\x6C\x74","\x61\x62\x6F\x75\x74","\x20\x43\x61\x6C\x6C\x79\x20\x53\x71\x75\x61\x72\x65","\x69\x6D\x67","\x62\x6F\x72\x64\x65\x72","\x30\x70\x78","\x31\x37\x36","\x31\x35\x31","\x73\x72\x63","\x2F\x6C\x6F\x67\x6F\x2E\x70\x6E\x67","\x62\x72","\x50\x6F\x77\x65\x72\x65\x64\x20\x62\x79\x20\x58\x65\x6E\x69\x61\x6C\x61\x62\x20","\x56\x45\x52\x53\x49\x4F\x4E","\x61","\x68\x72\x65\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D\x2F","\x5F\x62\x6C\x61\x6E\x6B","\x77\x77\x77\x2E\x63\x61\x6C\x6C\x79\x73\x71\x75\x61\x72\x65\x2E\x63\x6F\x6D","\x73\x61\x76\x65\x41\x73","\x5F","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x63\x6F\x6C\x2D\x6D\x64\x2D\x34","\x63\x6F\x6C\x2D\x6D\x64\x2D\x38","\x6C\x61\x62\x65\x6C","\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C\x20\x70\x75\x6C\x6C\x2D\x72\x69\x67\x68\x74","\x5F\x63\x6F\x70\x79","\x66\x6F\x72\x6D\x2D\x63\x6F\x6E\x74\x72\x6F\x6C","\x73\x61\x76\x65","\x6E\x65\x77","\x5F\x6E\x65\x77","\x76\x61\x72\x69\x61\x62\x6C\x65","\x76\x61\x72\x69\x61\x62\x6C\x65\x20\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x72\x65\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x50\x55\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x6E\x61\x6D\x65\x3D","\x50\x72\x6F\x6A\x65\x63\x74\x20\x73\x75\x63\x63\x65\x73\x73\x66\x75\x6C\x6C\x79\x20\x72\x65\x6E\x61\x6D\x65\x64","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x65\x73\x73\x61\x67\x65","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x6C\x65\x72\x74","\x65\x64\x69\x74","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x73\x74\x6F\x70\x50\x72\x6F\x70\x61\x67\x61\x74\x69\x6F\x6E","\x70\x72\x65\x76\x65\x6E\x74\x44\x65\x66\x61\x75\x6C\x74","\x64\x61\x74\x61\x54\x72\x61\x6E\x73\x66\x65\x72","\x64\x72\x61\x67\x6F\x76\x65\x72","\x64\x72\x6F\x70","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D","\x65\x78\x70\x6F\x72\x74","\x66\x6F\x72\x6D\x2D\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x20\x66\x6F\x72\x6D\x2D\x72\x6F\x77\x2D\x73\x65\x70\x65\x72\x61\x74\x65\x64","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70\x20\x6C\x61\x73\x74","\x63\x6F\x6C\x2D\x73\x6D\x2D\x34\x20\x63\x6F\x6E\x74\x72\x6F\x6C\x2D\x6C\x61\x62\x65\x6C","\x63\x6F\x6C\x2D\x73\x6D\x2D\x38","\x67\x65\x74\x58\x6D\x6C","\x73\x69\x6D\x75\x6C\x61\x74\x65","\x2F\x64\x6F\x77\x6E\x6C\x6F\x61\x64","\x66\x69\x6C\x65\x6E\x61\x6D\x65\x3D","\x67\x72\x61\x70\x68","\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x20\x66\x6F\x72\x6D\x20\x6D\x6F\x64\x61\x6C\x2D\x62\x6F\x64\x79\x2D\x73\x63\x72\x6F\x6C\x6C","\x20","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x61\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x66\x6F\x72\x6D\x2D\x67\x72\x6F\x75\x70","\x2F\x61\x70\x69\x2F\x61\x67\x65\x6E\x74\x73","\x73\x69\x70\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x71\x75\x65\x75\x65\x73","\x71\x75\x65\x75\x65\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x74\x72\x75\x6E\x6B\x73","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x6D\x73\x2F\x61\x63\x63\x6F\x75\x6E\x74\x73","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x63\x6F\x6E\x74\x65\x78\x74\x73","\x63\x6F\x6E\x74\x65\x78\x74","\x2F\x61\x70\x69\x2F\x76\x6F\x69\x63\x65\x2F\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C\x73","\x6D\x61\x69\x6C\x62\x6F\x78","\x25\x6D\x61\x69\x6C\x62\x6F\x78\x25\x40\x25\x63\x6F\x6E\x74\x65\x78\x74\x25","\x6D\x6F\x64\x65\x6C","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x62\x65\x65\x70","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x69\x6E\x74\x65\x72\x76\x61\x6C\x73","\x53\x75\x62\x49\x6E\x74\x65\x72\x76\x61\x6C\x73","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x6F\x64\x62\x63","\x6F\x64\x62\x63\x5F\x69\x64","\x2F\x61\x70\x69\x2F\x73\x6F\x75\x6E\x64\x73","\x64\x69\x73\x70\x6C\x61\x79\x5F\x6E\x61\x6D\x65","\x66\x69\x6C\x65\x5F\x69\x64","\x74\x69\x6D\x65\x6F\x75\x74","\x64\x69\x67\x69\x74","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x72\x65\x74\x72\x79","\x6E\x75\x6D\x62\x65\x72","\x6D\x69\x6E","\x73\x70\x65\x65\x64","\x6B\x65\x79","\x71\x75\x65\x72\x79","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x63\x6F\x6D\x6D\x61\x6E\x64","\x6D\x61\x78\x6C\x65\x6E\x67\x74\x68","\x31\x36\x30","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x68\x65\x6C\x70\x5F","\x70","\x68\x65\x6C\x70\x2D\x62\x6C\x6F\x63\x6B","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x72\x65\x66\x72\x65\x73\x68"];_0x2f7a[0];function createCheckbox(_0x3bfax2){var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[3],_0x2f7a[4]);if(_0x3bfax2){_0x3bfax3[_0x2f7a[5]](_0x2f7a[6],true)};return _0x3bfax3}function createDropdownFromApi(_0x3bfax5,_0x3bfax2,_0x3bfax6,_0x3bfax7,_0x3bfax8,_0x3bfax9,_0x3bfaxa){var _0x3bfaxb= new XMLHttpRequest();_0x3bfaxb[_0x2f7a[8]](_0x2f7a[7],_0x3bfax5,false);_0x3bfaxb[_0x2f7a[14]](_0x2f7a[9],_0x2f7a[10]+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[11]]);_0x3bfaxb[_0x2f7a[15]](null);var _0x3bfaxc=[];if(_0x3bfaxb[_0x2f7a[16]]===200){_0x3bfaxc=JSON[_0x2f7a[18]](_0x3bfaxb[_0x2f7a[17]])};var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[19]);var _0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x2f7a[22];_0x3bfaxd[_0x2f7a[23]]=_0x2f7a[24];_0x3bfax3[_0x2f7a[25]](_0x3bfaxd);_0x3bfaxc[_0x2f7a[30]][_0x2f7a[28]](function(_0x3bfaxe){_0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x3bfaxe[_0x3bfax6];if(_0x3bfax9&&_0x3bfaxa){_0x3bfax9[_0x2f7a[28]](function(_0x3bfaxf){_0x3bfaxa=_0x3bfaxa[_0x2f7a[27]](_0x2f7a[26]+_0x3bfaxf+_0x2f7a[26],_0x3bfaxe[_0x3bfaxf])});_0x3bfaxd[_0x2f7a[23]]=_0x3bfaxa;_0x3bfaxd[_0x2f7a[29]]=(_0x3bfaxa==_0x3bfax2)}else {_0x3bfaxd[_0x2f7a[23]]=_0x3bfaxe[_0x3bfax7];_0x3bfaxd[_0x2f7a[29]]=(_0x3bfaxe[_0x3bfax7]==_0x3bfax2)};_0x3bfax3[_0x2f7a[25]](_0x3bfaxd)});_0x3bfax3[_0x2f7a[31]]=_0x2f7a[32];return _0x3bfax3}function createGroupedDropdownFromApi(_0x3bfax5,_0x3bfax2,_0x3bfax6,_0x3bfax7,_0x3bfax8,_0x3bfax11){var _0x3bfaxb= new XMLHttpRequest();_0x3bfaxb[_0x2f7a[8]](_0x2f7a[7],_0x3bfax5,false);_0x3bfaxb[_0x2f7a[14]](_0x2f7a[9],_0x2f7a[10]+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[11]]);_0x3bfaxb[_0x2f7a[15]](null);var _0x3bfaxc=[];if(_0x3bfaxb[_0x2f7a[16]]===200){_0x3bfaxc=JSON[_0x2f7a[18]](_0x3bfaxb[_0x2f7a[17]])};var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[19]);var _0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x2f7a[22];_0x3bfaxd[_0x2f7a[23]]=_0x2f7a[33];_0x3bfax3[_0x2f7a[25]](_0x3bfaxd);_0x3bfaxc[_0x2f7a[30]][_0x2f7a[28]](function(_0x3bfaxe){_0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[31]]=_0x2f7a[34];_0x3bfaxd[_0x2f7a[21]]=_0x3bfaxe[_0x3bfax6][_0x2f7a[35]]();_0x3bfaxd[_0x2f7a[23]]=_0x3bfaxe[_0x3bfax7];_0x3bfaxd[_0x2f7a[29]]=(_0x3bfaxe[_0x3bfax7]==_0x3bfax2);_0x3bfax3[_0x2f7a[25]](_0x3bfaxd);_0x3bfaxe[_0x3bfax11][_0x2f7a[28]](function(_0x3bfaxe){_0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[31]]=_0x2f7a[36];_0x3bfaxd[_0x2f7a[21]]=_0x2f7a[37]+_[_0x2f7a[38]](_0x3bfaxe[_0x3bfax6]);_0x3bfaxd[_0x2f7a[23]]=_0x3bfaxe[_0x3bfax7];_0x3bfaxd[_0x2f7a[29]]=(_0x3bfaxe[_0x3bfax7]==_0x3bfax2);_0x3bfax3[_0x2f7a[25]](_0x3bfaxd)})});_0x3bfax3[_0x2f7a[31]]=_0x2f7a[32];return _0x3bfax3}function createDropdownFromArray(_0x3bfax13,_0x3bfax2){var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[19]);for(var _0x3bfax14 in _0x3bfax13){var _0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x3bfax13[_0x3bfax14];_0x3bfaxd[_0x2f7a[23]]=_0x3bfax14;if(_0x3bfax2>0||_0x3bfax2!=_0x2f7a[39]){_0x3bfaxd[_0x2f7a[29]]=(_0x3bfax2===_0x3bfax14)?true:false};_0x3bfax3[_0x2f7a[25]](_0x3bfaxd)};_0x3bfax3[_0x2f7a[31]]=_0x2f7a[32];return _0x3bfax3}function createDropdownFromTigerDialList(_0x3bfax2){var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[19]);var _0x3bfax13=[];var _0x3bfax16= new XMLHttpRequest();try{_0x3bfax16[_0x2f7a[8]](_0x2f7a[40],_0x2f7a[41],false);_0x3bfax16[_0x2f7a[15]](JSON[_0x2f7a[42]]({page:1,size:600000}));if(_0x3bfax16[_0x2f7a[16]]===200){var _0x3bfaxc=JSON[_0x2f7a[18]](_0x3bfax16[_0x2f7a[17]]);if(_0x3bfaxc[_0x2f7a[16]]>0){var _0x3bfax17=_0x3bfaxc[_0x2f7a[17]][_0x2f7a[43]][_0x2f7a[30]];for(var _0x3bfax18 in _0x3bfax17){_0x3bfax13[_0x3bfax17[_0x3bfax18][_0x2f7a[44]]]=_0x3bfax17[_0x3bfax18][_0x2f7a[45]]}}}}catch(e){console[_0x2f7a[46]](e)};for(var _0x3bfax14 in _0x3bfax13){var _0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x3bfax13[_0x3bfax14];_0x3bfaxd[_0x2f7a[23]]=_0x3bfax14;if(_0x3bfax2>0||_0x3bfax2!=_0x2f7a[39]){_0x3bfaxd[_0x2f7a[29]]=(_0x3bfax2===_0x3bfax14)?true:false};_0x3bfax3[_0x2f7a[25]](_0x3bfaxd)};_0x3bfax3[_0x2f7a[31]]=_0x2f7a[32];return _0x3bfax3}function Dialog(_0x3bfax8,_0x3bfax1a,_0x3bfax1b,_0x3bfax1c,_0x3bfax1d,_0x3bfax1e,_0x3bfax1f){var _0x3bfax20=0;if(mxClient[_0x2f7a[47]]&&document[_0x2f7a[48]]!=9){_0x3bfax20=60};_0x3bfax1b+=_0x3bfax20;_0x3bfax1c+=_0x3bfax20;var _0x3bfax21=Math[_0x2f7a[52]](0,Math[_0x2f7a[51]]((document[_0x2f7a[50]][_0x2f7a[49]]-_0x3bfax1b)/2));var _0x3bfax22=Math[_0x2f7a[52]](0,Math[_0x2f7a[51]]((Math[_0x2f7a[52]](document[_0x2f7a[50]][_0x2f7a[53]],document[_0x2f7a[54]][_0x2f7a[53]])-_0x3bfax1c)/3));var _0x3bfax23=_0x3bfax8[_0x2f7a[56]](_0x2f7a[55]);_0x3bfax23[_0x2f7a[31]]=_0x2f7a[57];_0x3bfax23[_0x2f7a[59]][_0x2f7a[58]]=_0x2f7a[60];_0x3bfax23[_0x2f7a[59]][_0x2f7a[61]]=_0x2f7a[62];var _0x3bfax24=_0x3bfax8[_0x2f7a[56]](_0x2f7a[63]);_0x3bfax24[_0x2f7a[31]]=_0x2f7a[64];_0x3bfax24[_0x2f7a[25]](_0x3bfax1a);_0x3bfax23[_0x2f7a[25]](_0x3bfax24);if(this[_0x2f7a[65]]==null){this[_0x2f7a[65]]=_0x3bfax8[_0x2f7a[56]](_0x2f7a[66]);this[_0x2f7a[65]][_0x2f7a[31]]=_0x2f7a[67];if(mxClient[_0x2f7a[68]]){ new mxDivResizer(this[_0x2f7a[65]])}};if(_0x3bfax1d){document[_0x2f7a[50]][_0x2f7a[25]](this[_0x2f7a[65]])};document[_0x2f7a[50]][_0x2f7a[25]](_0x3bfax23);this[_0x2f7a[69]]=_0x3bfax1f;this[_0x2f7a[70]]=_0x3bfax23}Dialog[_0x2f7a[72]][_0x2f7a[71]]=function(){if(this[_0x2f7a[69]]!=null){this[_0x2f7a[69]]();this[_0x2f7a[69]]=null};this[_0x2f7a[70]][_0x2f7a[74]][_0x2f7a[73]](this[_0x2f7a[70]]);this[_0x2f7a[65]][_0x2f7a[74]][_0x2f7a[73]](this[_0x2f7a[65]])};function ImportDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[81])+_0x2f7a[83]);var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[88]);var _0x3bfax2e=document[_0x2f7a[2]](_0x2f7a[89]);_0x3bfax2e[_0x2f7a[59]][_0x2f7a[90]]=_0x2f7a[91];_0x3bfax2e[_0x2f7a[59]][_0x2f7a[92]]=_0x2f7a[93];var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[3]]=_0x2f7a[94];_0x3bfax3[_0x2f7a[5]](_0x2f7a[95],_0x2f7a[96]);_0x3bfax3[_0x2f7a[105]](_0x2f7a[97],function _0x3bfax2f(_0x3bfax30){var _0x3bfax31=_0x3bfax30[_0x2f7a[99]][_0x2f7a[98]][0];console[_0x2f7a[46]](_0x3bfax31);if(_0x3bfax31){if(_0x3bfax31[_0x2f7a[3]]===_0x2f7a[96]){var _0x3bfax32= new FileReader();_0x3bfax32[_0x2f7a[100]]=function(_0x3bfax33){var _0x3bfax34=_0x3bfax33[_0x2f7a[99]][_0x2f7a[101]];mxUtils[_0x2f7a[84]](_0x3bfax2e,_0x3bfax34)};_0x3bfax32[_0x2f7a[102]](_0x3bfax31)}else {alert(_0x2f7a[103])}}else {alert(_0x2f7a[104])}},false);_0x3bfax2d[_0x2f7a[25]](_0x3bfax3);_0x3bfax2d[_0x2f7a[25]](_0x3bfax2e);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[81]),mxUtils[_0x2f7a[108]](this,function(_0x3bfax36){var _0x3bfax37=mxUtils[_0x2f7a[106]](_0x3bfax2e[_0x2f7a[23]]);_0x3bfax8[_0x2f7a[13]][_0x2f7a[107]](_0x3bfax37[_0x2f7a[54]]);_0x3bfax8[_0x2f7a[85]]()}));_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function AboutDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[112])+_0x2f7a[113]);var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax3a=document[_0x2f7a[2]](_0x2f7a[114]);_0x3bfax3a[_0x2f7a[59]][_0x2f7a[115]]=_0x2f7a[116];_0x3bfax3a[_0x2f7a[5]](_0x2f7a[90],_0x2f7a[117]);_0x3bfax3a[_0x2f7a[5]](_0x2f7a[90],_0x2f7a[118]);_0x3bfax3a[_0x2f7a[5]](_0x2f7a[119],IMAGE_PATH+_0x2f7a[120]);_0x3bfax28[_0x2f7a[25]](_0x3bfax3a);mxUtils[_0x2f7a[121]](_0x3bfax28);mxUtils[_0x2f7a[84]](_0x3bfax28,_0x2f7a[122]+mxClient[_0x2f7a[123]]);mxUtils[_0x2f7a[121]](_0x3bfax28);var _0x3bfax3b=document[_0x2f7a[2]](_0x2f7a[124]);_0x3bfax3b[_0x2f7a[5]](_0x2f7a[125],_0x2f7a[126]);_0x3bfax3b[_0x2f7a[5]](_0x2f7a[99],_0x2f7a[127]);mxUtils[_0x2f7a[84]](_0x3bfax3b,_0x2f7a[128]);_0x3bfax28[_0x2f7a[25]](_0x3bfax3b);mxUtils[_0x2f7a[121]](_0x3bfax28);mxUtils[_0x2f7a[121]](_0x3bfax28);var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[71]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function SaveDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[129]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax3d=_0x2f7a[45];var _0x3bfax3e=_0x2f7a[130]+_0x3bfax3d;var _0x3bfax2=_0x3bfax8[_0x2f7a[13]][_0x2f7a[131]]();var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[132]);var _0x3bfax3f=_0x3bfax8[_0x2f7a[56]](_0x2f7a[133]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[135];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x3bfax3d));_0x3bfax2d[_0x2f7a[25]](_0x3bfax40);var _0x3bfax41=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[23],_0x3bfax2+_0x2f7a[136]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[44],_0x3bfax3e);_0x3bfax41[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3f[_0x2f7a[25]](_0x3bfax41);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax2c[_0x2f7a[25]](_0x3bfax3f);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[138]),function(){_0x3bfax8[_0x2f7a[129]](_0x3bfax41[_0x2f7a[23]]);_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function NewDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[139]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax3d=_0x2f7a[45];var _0x3bfax3e=_0x2f7a[130]+_0x3bfax3d;var _0x3bfax2=_0x3bfax8[_0x2f7a[13]][_0x2f7a[131]]();var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[132]);var _0x3bfax3f=_0x3bfax8[_0x2f7a[56]](_0x2f7a[133]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[135];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x3bfax3d));_0x3bfax2d[_0x2f7a[25]](_0x3bfax40);var _0x3bfax41=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[23],_0x3bfax2+_0x2f7a[140]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[44],_0x3bfax3e);_0x3bfax41[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3f[_0x2f7a[25]](_0x3bfax41);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax2c[_0x2f7a[25]](_0x3bfax3f);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[139]),function(){_0x3bfax8[_0x2f7a[139]](_0x3bfax41[_0x2f7a[23]]);_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function VariableDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[141]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax3d=_0x2f7a[45];var _0x3bfax3e=_0x2f7a[130]+_0x3bfax3d;var _0x3bfax2=_0x3bfax8[_0x2f7a[13]][_0x2f7a[131]]();var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[132]);var _0x3bfax3f=_0x3bfax8[_0x2f7a[56]](_0x2f7a[133]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[135];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x3bfax3d));_0x3bfax2d[_0x2f7a[25]](_0x3bfax40);var _0x3bfax41=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[23],_0x2f7a[142]);_0x3bfax41[_0x2f7a[5]](_0x2f7a[44],_0x3bfax3e);_0x3bfax41[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3f[_0x2f7a[25]](_0x3bfax41);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax2c[_0x2f7a[25]](_0x3bfax3f);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[139]),function(){_0x3bfax8[_0x2f7a[141]](_0x3bfax41[_0x2f7a[23]]);_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function OpenDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[8]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[132]);var _0x3bfax3f=_0x3bfax8[_0x2f7a[56]](_0x2f7a[133]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[135];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x2f7a[45]));_0x3bfax2d[_0x2f7a[25]](_0x3bfax40);var _0x3bfaxb= new XMLHttpRequest();_0x3bfaxb[_0x2f7a[8]](_0x2f7a[7],_0x2f7a[143],false);_0x3bfaxb[_0x2f7a[14]](_0x2f7a[9],_0x2f7a[10]+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[11]]);_0x3bfaxb[_0x2f7a[15]](null);var _0x3bfaxc=[];if(_0x3bfaxb[_0x2f7a[16]]===200){_0x3bfaxc=JSON[_0x2f7a[18]](_0x3bfaxb[_0x2f7a[17]])};var _0x3bfax41=document[_0x2f7a[2]](_0x2f7a[19]);for(var _0x3bfax45=0;_0x3bfax45<_0x3bfaxc[_0x2f7a[144]];_0x3bfax45++){var _0x3bfaxd=document[_0x2f7a[2]](_0x2f7a[20]);_0x3bfaxd[_0x2f7a[21]]=_0x3bfaxc[_0x3bfax45][_0x2f7a[45]];_0x3bfaxd[_0x2f7a[23]]=_0x3bfaxc[_0x3bfax45][_0x2f7a[44]];_0x3bfax41[_0x2f7a[25]](_0x3bfaxd)};_0x3bfax41[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3f[_0x2f7a[25]](_0x3bfax41);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax2c[_0x2f7a[25]](_0x3bfax3f);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[8]),function(){console[_0x2f7a[46]](_0x3bfax41);console[_0x2f7a[46]](_0x3bfax41[_0x2f7a[23]]);window[_0x2f7a[8]](_0x2f7a[145]+_0x3bfax41[_0x2f7a[23]],_0x2f7a[127]);_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function RenameDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[146]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[132]);var _0x3bfax3f=_0x3bfax8[_0x2f7a[56]](_0x2f7a[133]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[135];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x2f7a[45]));_0x3bfax2d[_0x2f7a[25]](_0x3bfax40);var _0x3bfax3d=_0x3bfax8[_0x2f7a[13]][_0x2f7a[147]];var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[23],_0x3bfax3d);_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3f[_0x2f7a[25]](_0x3bfax3);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax2c[_0x2f7a[25]](_0x3bfax3f);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[138]),function(){var _0x3bfaxb= new XMLHttpRequest();_0x3bfaxb[_0x2f7a[8]](_0x2f7a[148],SAVE_URL+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[44]],true);_0x3bfaxb[_0x2f7a[14]](_0x2f7a[149],_0x2f7a[150]);_0x3bfaxb[_0x2f7a[14]](_0x2f7a[9],_0x2f7a[10]+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[11]]);_0x3bfaxb[_0x2f7a[15]](_0x2f7a[151]+_0x3bfax3[_0x2f7a[23]]);_0x3bfaxb[_0x2f7a[100]]=function(_0x3bfax33){if(_0x3bfaxb[_0x2f7a[16]]===200){_0x3bfax8[_0x2f7a[13]][_0x2f7a[153]](_0x2f7a[152]);_0x3bfax8[_0x2f7a[13]][_0x2f7a[147]]=_0x3bfax3[_0x2f7a[23]]}else {console[_0x2f7a[46]](_0x3bfaxb[_0x2f7a[17]]);_0x3bfax8[_0x2f7a[13]][_0x2f7a[153]](JSON[_0x2f7a[18]](_0x3bfaxb[_0x2f7a[17]])[_0x2f7a[155]][0][_0x2f7a[154]])}};_0x3bfaxb[_0x2f7a[156]]=function(_0x3bfax33){mxUtils[_0x2f7a[158]](_0x3bfaxb[_0x2f7a[157]])};_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function EditFileDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[77]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[159]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax2c=_0x3bfax8[_0x2f7a[56]](_0x2f7a[87]);var _0x3bfax2d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[88]);var _0x3bfax2e=document[_0x2f7a[2]](_0x2f7a[89]);_0x3bfax2e[_0x2f7a[59]][_0x2f7a[90]]=_0x2f7a[91];_0x3bfax2e[_0x2f7a[59]][_0x2f7a[92]]=_0x2f7a[93];_0x3bfax2e[_0x2f7a[23]]=mxUtils[_0x2f7a[161]](_0x3bfax8[_0x2f7a[13]][_0x2f7a[160]]());if(fileSupport){function _0x3bfax48(_0x3bfax30){_0x3bfax30[_0x2f7a[162]]();_0x3bfax30[_0x2f7a[163]]();if(_0x3bfax30[_0x2f7a[164]][_0x2f7a[98]][_0x2f7a[144]]>0){var _0x3bfax49=_0x3bfax30[_0x2f7a[164]][_0x2f7a[98]][0];var _0x3bfax4a= new FileReader();_0x3bfax4a[_0x2f7a[100]]=function(_0x3bfax33){_0x3bfax2e[_0x2f7a[23]]=_0x3bfax33[_0x2f7a[99]][_0x2f7a[101]]};_0x3bfax4a[_0x2f7a[102]](_0x3bfax49)}}function _0x3bfax4b(_0x3bfax30){_0x3bfax30[_0x2f7a[162]]();_0x3bfax30[_0x2f7a[163]]()}_0x3bfax2e[_0x2f7a[105]](_0x2f7a[165],_0x3bfax4b,false);_0x3bfax2e[_0x2f7a[105]](_0x2f7a[166],_0x3bfax48,false)};_0x3bfax2d[_0x2f7a[25]](_0x3bfax2e);_0x3bfax2c[_0x2f7a[25]](_0x3bfax2d);_0x3bfax28[_0x2f7a[25]](_0x3bfax2c);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[138]),function(){var _0x3bfax37=mxUtils[_0x2f7a[106]](_0x3bfax2e[_0x2f7a[23]]);_0x3bfax8[_0x2f7a[13]][_0x2f7a[107]](_0x3bfax37[_0x2f7a[54]]);_0x3bfax8[_0x2f7a[85]]()});_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function ExportDialog(_0x3bfax8){var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[167]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[168])+_0x2f7a[83]);var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax4d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[169]);var _0x3bfax4e=_0x3bfax8[_0x2f7a[56]](_0x2f7a[170]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[171];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x2f7a[147]));var _0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[23],_0x3bfax8[_0x2f7a[13]][_0x2f7a[131]]());_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];var _0x3bfax23=_0x3bfax8[_0x2f7a[56]](_0x2f7a[172]);_0x3bfax23[_0x2f7a[25]](_0x3bfax3);_0x3bfax4e[_0x2f7a[25]](_0x3bfax40);_0x3bfax4e[_0x2f7a[25]](_0x3bfax23);_0x3bfax4d[_0x2f7a[25]](_0x3bfax4e);_0x3bfax28[_0x2f7a[25]](_0x3bfax4d);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[168]),mxUtils[_0x2f7a[108]](this,function(_0x3bfax36){_0x3bfax8[_0x2f7a[138]](false);var _0x3bfax4f=encodeURIComponent(mxUtils[_0x2f7a[173]](_0x3bfax8[_0x2f7a[13]][_0x2f7a[160]]())); new mxXmlRequest(SAVE_URL+_0x3bfax8[_0x2f7a[13]][_0x2f7a[12]][_0x2f7a[44]]+_0x2f7a[175],_0x2f7a[176]+_0x3bfax3[_0x2f7a[23]],_0x2f7a[7])[_0x2f7a[174]](document,_0x2f7a[127]);_0x3bfax8[_0x2f7a[85]]()}));_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26}function GeneralDialog(_0x3bfax8,_0x3bfax51){var _0x3bfax52=_0x3bfax8[_0x2f7a[13]][_0x2f7a[177]];var _0x3bfax26=_0x3bfax8[_0x2f7a[56]](_0x2f7a[75]);var _0x3bfax27=_0x3bfax8[_0x2f7a[56]](_0x2f7a[76]);var _0x3bfax28=_0x3bfax8[_0x2f7a[56]](_0x2f7a[178]);var _0x3bfax29=_0x3bfax8[_0x2f7a[56]](_0x2f7a[78]);var _0x3bfax2a=_0x3bfax8[_0x2f7a[80]](_0x2f7a[79]);mxUtils[_0x2f7a[84]](_0x3bfax2a,mxResources[_0x2f7a[82]](_0x2f7a[159])+_0x2f7a[179]+mxResources[_0x2f7a[82]](_0x3bfax51[_0x2f7a[23]][_0x2f7a[180]]));var _0x3bfax2b=mxUtils[_0x2f7a[86]](_0x2f7a[39],function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax2b[_0x2f7a[31]]=_0x2f7a[71];_0x3bfax27[_0x2f7a[25]](_0x3bfax2b);_0x3bfax27[_0x2f7a[25]](_0x3bfax2a);var _0x3bfax53=_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x2f7a[144]];var _0x3bfax4d=_0x3bfax8[_0x2f7a[56]](_0x2f7a[169]);for(var _0x3bfax54=0;_0x3bfax54<_0x3bfax53;_0x3bfax54++){var _0x3bfax3d=_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x3bfax54][_0x2f7a[45]];var _0x3bfax3e=_0x2f7a[130]+_0x3bfax3d;var _0x3bfax2=_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x3bfax54][_0x2f7a[23]];var _0x3bfax4e=_0x3bfax8[_0x2f7a[56]]((_0x3bfax54==_0x3bfax53-1)?_0x2f7a[170]:_0x2f7a[182]);var _0x3bfax40=document[_0x2f7a[2]](_0x2f7a[134]);_0x3bfax40[_0x2f7a[31]]=_0x2f7a[171];mxUtils[_0x2f7a[84]](_0x3bfax40,mxResources[_0x2f7a[82]](_0x3bfax3d));_0x3bfax4e[_0x2f7a[25]](_0x3bfax40);var _0x3bfax3;switch(_0x3bfax3d){case _0x2f7a[184]:_0x3bfax3=createDropdownFromApi(_0x2f7a[183],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[186]:_0x3bfax3=createDropdownFromApi(_0x2f7a[185],_0x3bfax2,_0x2f7a[45],_0x2f7a[45],_0x3bfax8);break;case _0x2f7a[188]:_0x3bfax3=createDropdownFromApi(_0x2f7a[187],_0x3bfax2,_0x2f7a[45],_0x2f7a[45],_0x3bfax8);break;case _0x2f7a[190]:_0x3bfax3=createDropdownFromApi(_0x2f7a[189],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[192]:_0x3bfax3=createDropdownFromApi(_0x2f7a[191],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[194]:_0x3bfax3=createDropdownFromApi(_0x2f7a[193],_0x3bfax2,_0x2f7a[45],_0x2f7a[45],_0x3bfax8);break;case _0x2f7a[196]:_0x3bfax3=createDropdownFromApi(_0x2f7a[195],_0x3bfax2,_0x2f7a[196],_0x2f7a[44],_0x3bfax8,[_0x2f7a[196],_0x2f7a[194]],_0x2f7a[197]);break;case _0x2f7a[198]:_0x3bfax3=createDropdownFromArray(ISPEECHASRMODEL,_0x3bfax2);break;case _0x2f7a[199]:_0x3bfax3=createDropdownFromArray(ISPEECHASRLANG,_0x3bfax2);break;case _0x2f7a[200]:_0x3bfax3=createDropdownFromArray(ISPEECHBEEP,_0x3bfax2);break;case _0x2f7a[201]:_0x3bfax3=createDropdownFromArray(ISPEECHLANG,_0x3bfax2);break;case _0x2f7a[202]:_0x3bfax3=createDropdownFromArray(GOOGLETTSLANG,_0x3bfax2);break;case _0x2f7a[203]:_0x3bfax3=createDropdownFromTigerDialList(_0x3bfax2);break;case _0x2f7a[206]:_0x3bfax3=createGroupedDropdownFromApi(_0x2f7a[204],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8,_0x2f7a[205]);break;case _0x2f7a[207]:_0x3bfax3=createDropdownFromApi(_0x2f7a[143],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[209]:_0x3bfax3=createDropdownFromApi(_0x2f7a[208],_0x3bfax2,_0x2f7a[45],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[212]:_0x3bfax3=createDropdownFromApi(_0x2f7a[210],_0x3bfax2,_0x2f7a[211],_0x2f7a[44],_0x3bfax8);break;case _0x2f7a[213]:;case _0x2f7a[214]:;case _0x2f7a[215]:;case _0x2f7a[216]:;case _0x2f7a[17]:;case _0x2f7a[217]:;case _0x2f7a[220]:_0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[3],_0x2f7a[218]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[219],0);_0x3bfax3[_0x2f7a[5]](_0x2f7a[52],1000);_0x3bfax3[_0x2f7a[5]](_0x2f7a[23],_0x3bfax2);_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];break;case _0x2f7a[21]:;case _0x2f7a[221]:;case _0x2f7a[222]:;case _0x2f7a[223]:;case _0x2f7a[225]:_0x3bfax3=document[_0x2f7a[2]](_0x2f7a[89]);_0x3bfax3[_0x2f7a[224]]=_0x3bfax2;_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];break;case _0x2f7a[228]:_0x3bfax3=document[_0x2f7a[2]](_0x2f7a[89]);_0x3bfax3[_0x2f7a[224]]=_0x3bfax2;_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];_0x3bfax3[_0x2f7a[5]](_0x2f7a[226],_0x2f7a[227]);break;default:_0x3bfax3=document[_0x2f7a[2]](_0x2f7a[1]);_0x3bfax3[_0x2f7a[5]](_0x2f7a[23],_0x3bfax2);_0x3bfax3[_0x2f7a[31]]=_0x2f7a[137];break};_0x3bfax3[_0x2f7a[5]](_0x2f7a[44],_0x3bfax3e);var _0x3bfax23=_0x3bfax8[_0x2f7a[56]](_0x2f7a[172]);_0x3bfax23[_0x2f7a[25]](_0x3bfax3);if(mxResources[_0x2f7a[82]](_0x2f7a[229]+_0x3bfax3d)){var _0x3bfax55=_0x3bfax8[_0x2f7a[56]](_0x2f7a[230]);_0x3bfax55[_0x2f7a[31]]=_0x2f7a[231];mxUtils[_0x2f7a[84]](_0x3bfax55,mxResources[_0x2f7a[82]](_0x2f7a[229]+_0x3bfax3d));_0x3bfax23[_0x2f7a[25]](_0x3bfax55)};_0x3bfax4e[_0x2f7a[25]](_0x3bfax23);_0x3bfax4d[_0x2f7a[25]](_0x3bfax4e)};_0x3bfax28[_0x2f7a[25]](_0x3bfax4d);var _0x3bfax35=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[138]),mxUtils[_0x2f7a[108]](this,function(_0x3bfax36){for(var _0x3bfax54=0;_0x3bfax54<_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x2f7a[144]];_0x3bfax54++){var _0x3bfax3e=_0x2f7a[130]+_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x3bfax54][_0x2f7a[45]];var _0x3bfax3d=_0x3bfax51[_0x2f7a[23]][_0x2f7a[181]][_0x3bfax54][_0x2f7a[45]];console[_0x2f7a[46]](_0x3bfax3d,document[_0x2f7a[232]](_0x3bfax3e)[_0x2f7a[23]]);_0x3bfax51[_0x2f7a[5]](_0x3bfax3d,document[_0x2f7a[232]](_0x3bfax3e)[_0x2f7a[23]])};_0x3bfax52[_0x2f7a[233]](_0x3bfax51);_0x3bfax8[_0x2f7a[85]]()}));_0x3bfax35[_0x2f7a[31]]=_0x2f7a[109];var _0x3bfax38=mxUtils[_0x2f7a[86]](mxResources[_0x2f7a[82]](_0x2f7a[110]),function(){_0x3bfax8[_0x2f7a[85]]()});_0x3bfax38[_0x2f7a[31]]=_0x2f7a[111];_0x3bfax29[_0x2f7a[25]](_0x3bfax35);_0x3bfax29[_0x2f7a[25]](_0x3bfax38);_0x3bfax26[_0x2f7a[25]](_0x3bfax27);_0x3bfax26[_0x2f7a[25]](_0x3bfax28);_0x3bfax26[_0x2f7a[25]](_0x3bfax29);this[_0x2f7a[70]]=_0x3bfax26} \ No newline at end of file diff --git a/public/assets/plugins/square/js/Editor.js b/public/assets/plugins/square/js/Editor.js index 9b0995e..7f07257 100644 --- a/public/assets/plugins/square/js/Editor.js +++ b/public/assets/plugins/square/js/Editor.js @@ -1 +1 @@ -var _0x690e=["\x49\x53\x5F\x54\x4F\x55\x43\x48","\x73\x74\x6F\x72\x61\x67\x65","\x6C\x6F\x63\x61\x6C","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x46\x69\x6C\x65","\x46\x69\x6C\x65\x52\x65\x61\x64\x65\x72","\x46\x69\x6C\x65\x4C\x69\x73\x74","\x74\x6F\x75\x63\x68","\x31","\x6F\x70\x65\x6E\x65\x72","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x61\x6C\x6C","\x69\x6E\x69\x74","\x69\x6E\x69\x74\x53\x74\x65\x6E\x63\x69\x6C\x52\x65\x67\x69\x73\x74\x72\x79","\x67\x72\x61\x70\x68","\x6F\x75\x74\x6C\x69\x6E\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x74\x61\x74\x75\x73","","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x64\x72\x61\x77\x69\x6E\x67","\x67\x65\x74","\x2E\x78\x6D\x6C","\x67\x65\x74\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x67\x72\x61\x70\x68\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x70\x70\x6C\x79","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x73\x4C\x6F\x73\x74","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E\x64","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x2F\x67\x72\x69\x64\x2E\x67\x69\x66","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x73\x63\x61\x6C\x65","\x76\x69\x65\x77","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x30","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x67\x75\x69\x64\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x66\x6F\x6C\x64","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x78","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x64\x78","\x79","\x64\x79","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x64\x65\x63\x6F\x64\x65","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x65\x6E\x63\x6F\x64\x65","\x72\x6F\x75\x6E\x64","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x6E\x6F\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x74\x79\x6C\x65","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x66\x69\x6C\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x23\x65\x62\x65\x62\x65\x62","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x73\x6F\x6C\x69\x64","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x23\x65\x35\x65\x35\x65\x35","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x31\x70\x78","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x30\x70\x78","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72","\x76\x61\x6C\x69\x64\x61\x74\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x61\x75\x74\x6F","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x6E\x6F\x64\x65","\x49\x53\x5F\x49\x45\x36","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x67\x72\x61\x70\x68\x65\x64\x69\x74\x6F\x72\x2D\x69\x65\x36\x2E\x63\x73\x73","\x6C\x69\x6E\x6B","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x61\x64\x64","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x23\x64\x30\x64\x30\x64\x30","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x39\x39\x63\x63\x66\x66","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x38\x38\x63\x66","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x61\x38\x66\x66","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x63\x65\x65\x37\x66\x66","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x47\x55\x49\x44\x45\x5F\x43\x4F\x4C\x4F\x52","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x23\x63\x30\x63\x30\x63\x30","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x77\x68\x69\x74\x65","\x23\x63\x61\x63\x61\x63\x61","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x6D\x61\x78","\x63\x65\x69\x6C","\x70\x61\x6E\x47\x72\x61\x70\x68","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65","\x73\x72\x63","\x64\x65\x73\x74\x72\x6F\x79","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x72\x65\x64\x72\x61\x77","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x68\x69\x64\x65","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x62\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x69\x6E\x74\x73","\x69\x73\x44\x61\x73\x68\x65\x64","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x61\x64\x64\x50\x69\x70\x65","\x73\x70\x6C\x69\x63\x65","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x72\x65\x6C\x61\x74\x69\x76\x65","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6F\x6E\x73\x75\x6D\x65","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C","\x67\x65\x74\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x65\x64\x69\x74","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x67\x65\x74\x56\x69\x65\x77","\x63\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x74\x61\x74\x65","\x70\x75\x73\x68","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x6C\x69\x62\x72\x61\x72\x69\x65\x73","\x70\x61\x63\x6B\x61\x67\x65\x73","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x67\x65\x74\x42\x61\x73\x65\x6E\x61\x6D\x65\x46\x6F\x72\x53\x74\x65\x6E\x63\x69\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x2E\x6A\x73","\x6C\x6F\x61\x64","\x67\x65\x74\x54\x65\x78\x74","\x2F","\x2E","\x73\x70\x6C\x69\x74","\x6D\x78\x67\x72\x61\x70\x68","\x67\x65\x74\x58\x6D\x6C","\x70\x61\x72\x73\x65\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6E\x61\x6D\x65","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x5F","\x72\x65\x70\x6C\x61\x63\x65","\x61\x64\x64\x53\x74\x65\x6E\x63\x69\x6C","\x77","\x68","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x70\x72\x6F\x64\x75\x63\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x72","\x64\x6F\x6E\x65","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x65\x78\x65\x63\x75\x74\x65","\x73\x65\x74\x44\x61\x74\x61","\x64\x61\x74\x61","\x65\x72\x72\x6F\x72","\x63\x61\x6E\x63\x65\x6C","\x61\x6C\x65\x72\x74"];var useLocalStorage=(mxClient[_0x690e[0]]||urlParams[_0x690e[1]]==_0x690e[2])&& typeof (localStorage)!=_0x690e[3];var fileSupport=window[_0x690e[4]]!=null&&window[_0x690e[5]]!=null&&window[_0x690e[6]]!=null;var touchStyle=mxClient[_0x690e[0]]||urlParams[_0x690e[7]]==_0x690e[8];var counter=0;try{var op=window;while(op[_0x690e[9]]!=null&&!isNaN(op[_0x690e[9]][_0x690e[10]])){op=op[_0x690e[9]]};if(op!=null){op[_0x690e[10]]++;counter=op[_0x690e[10]]}}catch(e){};Editor=function(){mxEventSource[_0x690e[11]](this);this[_0x690e[12]]();this[_0x690e[13]]();this[_0x690e[14]]= new Graph();this[_0x690e[15]]= new mxOutline(this[_0x690e[14]]);this[_0x690e[15]][_0x690e[16]]=true;this[_0x690e[17]]=this[_0x690e[18]]();this[_0x690e[19]]=_0x690e[20];this[_0x690e[21]]=null;this[_0x690e[22]]=function(){return this[_0x690e[21]]||mxResources[_0x690e[24]](_0x690e[23],[counter])+_0x690e[25]};this[_0x690e[26]]=function(){return this[_0x690e[21]]};this[_0x690e[27]]=function(_0x5031x6){this[_0x690e[19]]=_0x5031x6;this[_0x690e[29]]( new mxEventObject(_0x690e[28]))};this[_0x690e[30]]=function(){return this[_0x690e[19]]};this[_0x690e[31]]=false;this[_0x690e[32]]=function(){this[_0x690e[31]]=true};this[_0x690e[14]][_0x690e[36]]()[_0x690e[35]](mxEvent.CHANGE,mxUtils[_0x690e[34]](this,function(){this[_0x690e[32]][_0x690e[33]](this,arguments)}));window[_0x690e[37]]=mxUtils[_0x690e[34]](this,function(){if(this[_0x690e[31]]){return mxResources[_0x690e[24]](_0x690e[38])}});this[_0x690e[14]][_0x690e[39]]=false;this[_0x690e[14]][_0x690e[40]]=true;this[_0x690e[14]][_0x690e[41]]=null};mxUtils[_0x690e[42]](Editor,mxEventSource);Editor[_0x690e[44]][_0x690e[43]]=IMAGE_PATH+_0x690e[45];Editor[_0x690e[44]][_0x690e[46]]=IMAGE_PATH+_0x690e[47];Editor[_0x690e[44]][_0x690e[48]]=function(_0x5031x7){var _0x5031x8= new mxCodec(_0x5031x7[_0x690e[49]]);if(_0x5031x7[_0x690e[50]]==_0x690e[51]){this[_0x690e[14]][_0x690e[53]][_0x690e[52]]=1;this[_0x690e[14]][_0x690e[54]]=_0x5031x7[_0x690e[56]](_0x690e[55])!=_0x690e[57];this[_0x690e[14]][_0x690e[59]][_0x690e[58]]=_0x5031x7[_0x690e[56]](_0x690e[60])!=_0x690e[57];this[_0x690e[14]][_0x690e[62]](_0x5031x7[_0x690e[56]](_0x690e[61])!=_0x690e[57]);this[_0x690e[14]][_0x690e[64]](_0x5031x7[_0x690e[56]](_0x690e[63])!=_0x690e[57]);this[_0x690e[14]][_0x690e[65]]=_0x5031x7[_0x690e[56]](_0x690e[66])!=_0x690e[57];this[_0x690e[14]][_0x690e[40]]=_0x5031x7[_0x690e[56]](_0x690e[40])!=_0x690e[57];if(!this[_0x690e[14]][_0x690e[40]]){this[_0x690e[14]][_0x690e[68]][_0x690e[67]]=0;this[_0x690e[14]][_0x690e[68]][_0x690e[69]]=0;this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[70]]=Number(_0x5031x7[_0x690e[56]](_0x690e[72])||0);this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[73]]=Number(_0x5031x7[_0x690e[56]](_0x690e[74])||0)};this[_0x690e[14]][_0x690e[75]]=_0x5031x7[_0x690e[56]](_0x690e[76])==_0x690e[8];this[_0x690e[14]][_0x690e[77]]=this[_0x690e[14]][_0x690e[75]];this[_0x690e[14]][_0x690e[78]]=this[_0x690e[14]][_0x690e[77]];var _0x5031x9=_0x5031x7[_0x690e[56]](_0x690e[79]);if(_0x5031x9!=null){this[_0x690e[14]][_0x690e[79]]=_0x5031x9}else {this[_0x690e[14]][_0x690e[79]]=1.5};var _0x5031xa=_0x5031x7[_0x690e[56]](_0x690e[80]);var _0x5031xb=_0x5031x7[_0x690e[56]](_0x690e[81]);if(_0x5031xa!=null&&_0x5031xb!=null){this[_0x690e[14]][_0x690e[82]]= new mxRectangle(0,0,parseFloat(_0x5031xa),parseFloat(_0x5031xb));this[_0x690e[15]][_0x690e[15]][_0x690e[82]]=this[_0x690e[14]][_0x690e[82]]};var _0x5031xc=_0x5031x7[_0x690e[56]](_0x690e[41]);if(_0x5031xc!=null&&_0x5031xc[_0x690e[83]]>0){this[_0x690e[14]][_0x690e[41]]=_0x5031xc};_0x5031x8[_0x690e[84]](_0x5031x7,this[_0x690e[14]][_0x690e[36]]());this[_0x690e[85]]()}};Editor[_0x690e[44]][_0x690e[86]]=function(){var _0x5031xd= new mxCodec(mxUtils[_0x690e[87]]());var _0x5031x7=_0x5031xd[_0x690e[88]](this[_0x690e[14]][_0x690e[36]]());if(this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[70]]!=0||this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[73]]!=0){_0x5031x7[_0x690e[90]](_0x690e[72],Math[_0x690e[89]](this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[70]]*100)/100);_0x5031x7[_0x690e[90]](_0x690e[74],Math[_0x690e[89]](this[_0x690e[14]][_0x690e[53]][_0x690e[71]][_0x690e[73]]*100)/100)};_0x5031x7[_0x690e[90]](_0x690e[55],(this[_0x690e[14]][_0x690e[91]]())?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[60],(this[_0x690e[14]][_0x690e[59]][_0x690e[58]])?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[60],(this[_0x690e[14]][_0x690e[59]][_0x690e[58]])?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[61],(this[_0x690e[14]][_0x690e[93]][_0x690e[92]]())?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[63],(this[_0x690e[14]][_0x690e[94]][_0x690e[92]]())?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[66],(this[_0x690e[14]][_0x690e[65]])?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[76],(this[_0x690e[14]][_0x690e[75]])?_0x690e[8]:_0x690e[57]);_0x5031x7[_0x690e[90]](_0x690e[79],this[_0x690e[14]][_0x690e[79]]);_0x5031x7[_0x690e[90]](_0x690e[80],this[_0x690e[14]][_0x690e[82]][_0x690e[95]]);_0x5031x7[_0x690e[90]](_0x690e[81],this[_0x690e[14]][_0x690e[82]][_0x690e[96]]);if(!this[_0x690e[14]][_0x690e[40]]){_0x5031x7[_0x690e[90]](_0x690e[40],_0x690e[57])};if(this[_0x690e[14]][_0x690e[41]]!=null){_0x5031x7[_0x690e[90]](_0x690e[41],this[_0x690e[14]][_0x690e[41]])};return _0x5031x7};Editor[_0x690e[44]][_0x690e[85]]=function(){var _0x5031xe=this[_0x690e[14]];var _0x5031xf=this[_0x690e[15]];if(_0x5031xe[_0x690e[68]]!=null&&_0x5031xf[_0x690e[15]][_0x690e[68]]!=null){if(_0x5031xe[_0x690e[41]]!=null){if(_0x5031xe[_0x690e[41]]==_0x690e[97]){_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[98]]=_0x690e[100]}else {if(_0x5031xe[_0x690e[53]][_0x690e[101]]!=null){_0x5031xe[_0x690e[53]][_0x690e[101]][_0x690e[102]]=_0x5031xe[_0x690e[41]];_0x5031xe[_0x690e[53]][_0x690e[101]][_0x690e[103]]()};_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[98]]=_0x5031xe[_0x690e[41]]}}else {_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[98]]=_0x690e[20]};if(_0x5031xe[_0x690e[75]]){_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[98]]=_0x690e[104];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[105]]=_0x690e[106];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[107]]=_0x690e[108];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[109]]=_0x690e[110];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[111]]=_0x690e[110];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[112]]=_0x690e[113];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[114]]=_0x690e[113]}else {_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[115]]=_0x690e[20]};_0x5031xf[_0x690e[15]][_0x690e[68]][_0x690e[99]][_0x690e[98]]=_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[98]];if(_0x5031xf[_0x690e[15]][_0x690e[75]]!=_0x5031xe[_0x690e[75]]||_0x5031xf[_0x690e[15]][_0x690e[79]]!=_0x5031xe[_0x690e[79]]){_0x5031xf[_0x690e[15]][_0x690e[79]]=_0x5031xe[_0x690e[79]];_0x5031xf[_0x690e[15]][_0x690e[75]]=_0x5031xe[_0x690e[75]];_0x5031xf[_0x690e[15]][_0x690e[53]][_0x690e[116]]()};if(_0x5031xe[_0x690e[40]]&&_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[117]]==_0x690e[118]&& !touchStyle){_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[117]]=_0x690e[119]}else {if(!_0x5031xe[_0x690e[40]]||touchStyle){_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[117]]=_0x690e[118]}};var _0x5031x10=(mxClient[_0x690e[120]]&&document[_0x690e[121]]>=9)?_0x690e[122]+this[_0x690e[46]]+_0x690e[123]:_0x690e[97];_0x5031xe[_0x690e[68]][_0x690e[99]][_0x690e[124]]=(!_0x5031xe[_0x690e[75]]&&_0x5031xe[_0x690e[91]]())?_0x690e[122]+this[_0x690e[43]]+_0x690e[123]:_0x5031x10;if(_0x5031xe[_0x690e[53]][_0x690e[101]]!=null){_0x5031xe[_0x690e[53]][_0x690e[101]][_0x690e[125]][_0x690e[99]][_0x690e[124]]=(this[_0x690e[14]][_0x690e[91]]())?_0x690e[122]+this[_0x690e[43]]+_0x690e[123]:_0x690e[97]}}};Editor[_0x690e[44]][_0x690e[12]]=function(){if(mxClient[_0x690e[126]]){mxClient[_0x690e[129]](_0x690e[127],CSS_PATH+_0x690e[128])};mxResources[_0x690e[130]]=false;mxResources[_0x690e[131]](RESOURCE_BASE);mxConstants[_0x690e[132]]=0.3;var _0x5031x11=mxConnectionHandler[_0x690e[44]][_0x690e[133]];mxConnectionHandler[_0x690e[44]][_0x690e[133]]=function(){var _0x5031x12=_0x5031x11[_0x690e[33]](this,arguments);_0x5031x12[_0x690e[134]]=mxUtils[_0x690e[34]](this,function(_0x5031x13,_0x5031x14){if(this[_0x690e[135]]()){return true};return mxCellMarker[_0x690e[44]][_0x690e[134]][_0x690e[33]](_0x5031x12,arguments)});return _0x5031x12};mxConstants[_0x690e[136]]=_0x690e[137];mxConstants[_0x690e[138]]=_0x690e[139];mxConstants[_0x690e[140]]=_0x690e[141];mxConstants[_0x690e[142]]=_0x690e[143];mxConstants[_0x690e[144]]=_0x690e[143];mxConstants[_0x690e[145]]=_0x690e[139];mxConstants[_0x690e[146]]=_0x690e[143];mxConstants[_0x690e[147]]=_0x690e[148];mxConstants[_0x690e[149]]=_0x690e[143];mxConstants[_0x690e[150]]=_0x690e[143];mxConstants[_0x690e[151]]=_0x690e[148];mxConstants[_0x690e[152]]=_0x690e[141];mxGraph[_0x690e[44]][_0x690e[153]]=_0x690e[154];mxGraph[_0x690e[44]][_0x690e[79]]=1;mxRubberband[_0x690e[44]][_0x690e[155]]=30;mxGraphView[_0x690e[44]][_0x690e[156]]=function(_0x5031x15){return new mxRectangleShape(_0x5031x15,this[_0x690e[14]][_0x690e[41]]||_0x690e[157],_0x690e[158])};mxGraphView[_0x690e[44]][_0x690e[159]]=function(){var _0x5031x16=this[_0x690e[160]]();var _0x5031x17=(_0x5031x16[_0x690e[95]]>0)?_0x5031x16[_0x690e[70]]/this[_0x690e[52]]-this[_0x690e[71]][_0x690e[70]]:0;var _0x5031x18=(_0x5031x16[_0x690e[96]]>0)?_0x5031x16[_0x690e[73]]/this[_0x690e[52]]-this[_0x690e[71]][_0x690e[73]]:0;var _0x5031x19=_0x5031x16[_0x690e[95]]/this[_0x690e[52]];var _0x5031x1a=_0x5031x16[_0x690e[96]]/this[_0x690e[52]];var _0x5031x1b=this[_0x690e[14]][_0x690e[82]];var _0x5031x9=this[_0x690e[14]][_0x690e[79]];var _0x5031xa=_0x5031x1b[_0x690e[95]]*_0x5031x9;var _0x5031xb=_0x5031x1b[_0x690e[96]]*_0x5031x9;var _0x5031x1c=Math[_0x690e[162]](Math[_0x690e[161]](0,_0x5031x17)/_0x5031xa);var _0x5031x1d=Math[_0x690e[162]](Math[_0x690e[161]](0,_0x5031x18)/_0x5031xb);var _0x5031x1e=Math[_0x690e[164]](Math[_0x690e[163]](1,_0x5031x17+_0x5031x19)/_0x5031xa);var _0x5031x1f=Math[_0x690e[164]](Math[_0x690e[163]](1,_0x5031x18+_0x5031x1a)/_0x5031xb);var _0x5031x20=_0x5031x1e-_0x5031x1c;var _0x5031x21=_0x5031x1f-_0x5031x1d;var _0x5031x15= new mxRectangle(this[_0x690e[52]]*(this[_0x690e[71]][_0x690e[70]]+_0x5031x1c*_0x5031xa),this[_0x690e[52]]*(this[_0x690e[71]][_0x690e[73]]+_0x5031x1d*_0x5031xb),this[_0x690e[52]]*_0x5031x20*_0x5031xa,this[_0x690e[52]]*_0x5031x21*_0x5031xb);return _0x5031x15};var _0x5031x22=mxGraph[_0x690e[44]][_0x690e[165]];mxGraph[_0x690e[44]][_0x690e[165]]=function(_0x5031x23,_0x5031x24){_0x5031x22[_0x690e[33]](this,arguments);if((this[_0x690e[166]]!=mxConstants[_0x690e[167]]&&this[_0x690e[53]][_0x690e[101]]!=null)&&(!this[_0x690e[168]]||!mxUtils[_0x690e[169]](this[_0x690e[68]]))){this[_0x690e[53]][_0x690e[101]][_0x690e[125]][_0x690e[99]][_0x690e[170]]=_0x5031x23+_0x690e[171];this[_0x690e[53]][_0x690e[101]][_0x690e[125]][_0x690e[99]][_0x690e[172]]=_0x5031x24+_0x690e[171]}};var _0x5031x25=this;mxGraphView[_0x690e[44]][_0x690e[173]]=function(){var _0x5031xc=this[_0x690e[14]][_0x690e[174]]();if(_0x5031xc!=null){if(this[_0x690e[124]]==null||this[_0x690e[124]][_0x690e[175]]!=_0x5031xc[_0x690e[176]]){if(this[_0x690e[124]]!=null){this[_0x690e[124]][_0x690e[177]]()};var _0x5031x15= new mxRectangle(0,0,1,1);this[_0x690e[124]]= new mxImageShape(_0x5031x15,_0x5031xc[_0x690e[176]]);this[_0x690e[124]][_0x690e[166]]=this[_0x690e[14]][_0x690e[166]];this[_0x690e[124]][_0x690e[12]](this[_0x690e[178]]);this[_0x690e[124]][_0x690e[179]]()};this[_0x690e[180]](this[_0x690e[124]],_0x5031xc)}else {if(this[_0x690e[124]]!=null){this[_0x690e[124]][_0x690e[177]]();this[_0x690e[124]]=null}};if(this[_0x690e[14]][_0x690e[75]]){var _0x5031x15=this[_0x690e[159]]();if(this[_0x690e[101]]==null){this[_0x690e[101]]=this[_0x690e[156]](_0x5031x15);this[_0x690e[101]][_0x690e[52]]=1;this[_0x690e[101]][_0x690e[181]]=true;this[_0x690e[101]][_0x690e[166]]=mxConstants[_0x690e[182]];this[_0x690e[101]][_0x690e[12]](this[_0x690e[14]][_0x690e[68]]);this[_0x690e[14]][_0x690e[68]][_0x690e[184]][_0x690e[99]][_0x690e[183]]=_0x690e[185];this[_0x690e[14]][_0x690e[68]][_0x690e[186]](this[_0x690e[101]][_0x690e[125]],this[_0x690e[14]][_0x690e[68]][_0x690e[184]]);this[_0x690e[101]][_0x690e[179]]();this[_0x690e[101]][_0x690e[125]][_0x690e[187]]=_0x690e[188];this[_0x690e[101]][_0x690e[125]][_0x690e[99]][_0x690e[189]]=_0x690e[190];mxEvent[_0x690e[35]](this[_0x690e[101]][_0x690e[125]],_0x690e[191],mxUtils[_0x690e[34]](this,function(_0x5031x14){this[_0x690e[14]][_0x690e[192]](_0x5031x14)}));mxEvent[_0x690e[198]](this[_0x690e[101]][_0x690e[125]],mxUtils[_0x690e[34]](this,function(_0x5031x14){this[_0x690e[14]][_0x690e[193]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0x5031x14))}),mxUtils[_0x690e[34]](this,function(_0x5031x14){if(this[_0x690e[14]][_0x690e[93]]!=null&&this[_0x690e[14]][_0x690e[93]][_0x690e[194]]()){this[_0x690e[14]][_0x690e[93]][_0x690e[195]]()};if(this[_0x690e[14]][_0x690e[196]]&&!mxEvent[_0x690e[197]](_0x5031x14)){this[_0x690e[14]][_0x690e[193]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0x5031x14))}}),mxUtils[_0x690e[34]](this,function(_0x5031x14){this[_0x690e[14]][_0x690e[193]](mxEvent.MOUSE_UP, new mxMouseEvent(_0x5031x14))}))}else {this[_0x690e[101]][_0x690e[52]]=1;this[_0x690e[101]][_0x690e[199]]=_0x5031x15;this[_0x690e[101]][_0x690e[179]]()};this[_0x690e[101]][_0x690e[125]][_0x690e[99]][_0x690e[124]]=(this[_0x690e[14]][_0x690e[91]]())?_0x690e[122]+_0x5031x25[_0x690e[43]]+_0x690e[123]:_0x690e[97]}else {if(this[_0x690e[101]]!=null){this[_0x690e[101]][_0x690e[177]]();this[_0x690e[101]]=null}}};mxGraph[_0x690e[44]][_0x690e[200]]=function(_0x5031x26,_0x5031x27,_0x5031x28){var _0x5031x29=this[_0x690e[53]][_0x690e[52]];var _0x5031x2a=this[_0x690e[53]][_0x690e[71]];var _0x5031x1b=this[_0x690e[82]];var _0x5031x9=_0x5031x29*this[_0x690e[79]];var _0x5031x2b=this[_0x690e[53]][_0x690e[159]]();_0x5031x27=_0x5031x2b[_0x690e[95]];_0x5031x28=_0x5031x2b[_0x690e[96]];var _0x5031x15= new mxRectangle(_0x5031x29*_0x5031x2a[_0x690e[70]],_0x5031x29*_0x5031x2a[_0x690e[73]],_0x5031x1b[_0x690e[95]]*_0x5031x9,_0x5031x1b[_0x690e[96]]*_0x5031x9);_0x5031x26=_0x5031x26&&Math[_0x690e[161]](_0x5031x15[_0x690e[95]],_0x5031x15[_0x690e[96]])>this[_0x690e[201]];var _0x5031x2c=(_0x5031x26)?Math[_0x690e[164]](_0x5031x27/_0x5031x15[_0x690e[95]])-1:0;var _0x5031x2d=(_0x5031x26)?Math[_0x690e[164]](_0x5031x28/_0x5031x15[_0x690e[96]])-1:0;var _0x5031x2e=_0x5031x2b[_0x690e[70]]+_0x5031x27;var _0x5031x2f=_0x5031x2b[_0x690e[73]]+_0x5031x28;if(this[_0x690e[202]]==null&&_0x5031x2c>0){this[_0x690e[202]]=[]};if(this[_0x690e[202]]!=null){for(var _0x5031x30=0;_0x5031x30<=_0x5031x2c;_0x5031x30++){var _0x5031x31=[ new mxPoint(_0x5031x2b[_0x690e[70]]+(_0x5031x30+1)*_0x5031x15[_0x690e[95]],_0x5031x2b[_0x690e[73]]), new mxPoint(_0x5031x2b[_0x690e[70]]+(_0x5031x30+1)*_0x5031x15[_0x690e[95]],_0x5031x2f)];if(this[_0x690e[202]][_0x5031x30]!=null){this[_0x690e[202]][_0x5031x30][_0x690e[52]]=1;this[_0x690e[202]][_0x5031x30][_0x690e[203]]=_0x5031x31;this[_0x690e[202]][_0x5031x30][_0x690e[179]]()}else {var _0x5031x32= new mxPolyline(_0x5031x31,this[_0x690e[153]],this[_0x690e[52]]);_0x5031x32[_0x690e[166]]=this[_0x690e[166]];_0x5031x32[_0x690e[204]]=this[_0x690e[205]];_0x5031x32[_0x690e[206]]=false;_0x5031x32[_0x690e[52]]=_0x5031x29;_0x5031x32[_0x690e[12]](this[_0x690e[53]][_0x690e[178]]);_0x5031x32[_0x690e[179]]();this[_0x690e[202]][_0x5031x30]=_0x5031x32}};for(var _0x5031x30=_0x5031x2c;_0x5031x30<this[_0x690e[202]][_0x690e[83]];_0x5031x30++){this[_0x690e[202]][_0x5031x30][_0x690e[177]]()};this[_0x690e[202]][_0x690e[207]](_0x5031x2c,this[_0x690e[202]][_0x690e[83]]-_0x5031x2c)};if(this[_0x690e[208]]==null&&_0x5031x2d>0){this[_0x690e[208]]=[]};if(this[_0x690e[208]]!=null){for(var _0x5031x30=0;_0x5031x30<=_0x5031x2d;_0x5031x30++){var _0x5031x31=[ new mxPoint(_0x5031x2b[_0x690e[70]],_0x5031x2b[_0x690e[73]]+(_0x5031x30+1)*_0x5031x15[_0x690e[96]]), new mxPoint(_0x5031x2e,_0x5031x2b[_0x690e[73]]+(_0x5031x30+1)*_0x5031x15[_0x690e[96]])];if(this[_0x690e[208]][_0x5031x30]!=null){this[_0x690e[208]][_0x5031x30][_0x690e[52]]=1;this[_0x690e[208]][_0x5031x30][_0x690e[203]]=_0x5031x31;this[_0x690e[208]][_0x5031x30][_0x690e[179]]()}else {var _0x5031x32= new mxPolyline(_0x5031x31,this[_0x690e[153]],_0x5031x29);_0x5031x32[_0x690e[166]]=this[_0x690e[166]];_0x5031x32[_0x690e[204]]=this[_0x690e[205]];_0x5031x32[_0x690e[206]]=false;_0x5031x32[_0x690e[52]]=_0x5031x29;_0x5031x32[_0x690e[12]](this[_0x690e[53]][_0x690e[178]]);_0x5031x32[_0x690e[179]]();this[_0x690e[208]][_0x5031x30]=_0x5031x32}};for(var _0x5031x30=_0x5031x2d;_0x5031x30<this[_0x690e[208]][_0x690e[83]];_0x5031x30++){this[_0x690e[208]][_0x5031x30][_0x690e[177]]()};this[_0x690e[208]][_0x690e[207]](_0x5031x2d,this[_0x690e[208]][_0x690e[83]]-_0x5031x2d)}};mxEdgeHandler[_0x690e[44]][_0x690e[209]]=true;mxGraphHandler[_0x690e[44]][_0x690e[58]]=true;var _0x5031x33=mxGraphHandler[_0x690e[44]][_0x690e[210]];mxGraphHandler[_0x690e[44]][_0x690e[210]]=function(_0x5031x34,_0x5031x35,_0x5031x14){for(var _0x5031x30=0;_0x5031x30<_0x5031x35[_0x690e[83]];_0x5031x30++){if(this[_0x690e[14]][_0x690e[36]]()[_0x690e[211]](_0x5031x35[_0x5031x30])){var _0x5031x36=this[_0x690e[14]][_0x690e[212]](_0x5031x35[_0x5031x30]);if(_0x5031x36!=null&&_0x5031x36[_0x690e[213]]){return false}}};return _0x5031x33[_0x690e[33]](this,arguments)};mxGuide[_0x690e[44]][_0x690e[214]]=function(_0x5031x14){return !mxEvent[_0x690e[215]](_0x5031x14)};mxPopupMenuAddItem=mxPopupMenu[_0x690e[44]][_0x690e[216]];mxPopupMenu[_0x690e[44]][_0x690e[216]]=function(_0x5031x37,_0x5031x38,_0x5031x39,_0x5031x34,_0x5031x3a,_0x5031x3b){var _0x5031x3c=mxPopupMenuAddItem[_0x690e[33]](this,arguments);if(_0x5031x3b!=null&& !_0x5031x3b){mxEvent[_0x690e[35]](_0x5031x3c,_0x690e[217],function(_0x5031x14){mxEvent[_0x690e[218]](_0x5031x14)})};return _0x5031x3c};var _0x5031x3d=mxGraphHandler[_0x690e[44]][_0x690e[219]];mxGraphHandler[_0x690e[44]][_0x690e[219]]=function(_0x5031x3e){var _0x5031x3f=this[_0x690e[14]][_0x690e[36]]();var _0x5031x40=_0x5031x3f[_0x690e[221]](this[_0x690e[14]][_0x690e[220]]());var _0x5031x41=_0x5031x3d[_0x690e[33]](this,arguments);var _0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x41);if(_0x5031x40==null||(_0x5031x40!=_0x5031x41&&_0x5031x40!=_0x5031x34)){while(!this[_0x690e[14]][_0x690e[222]](_0x5031x41)&&!this[_0x690e[14]][_0x690e[222]](_0x5031x34)&&_0x5031x3f[_0x690e[211]](_0x5031x34)&&!this[_0x690e[14]][_0x690e[223]](_0x5031x34)){_0x5031x41=_0x5031x34;_0x5031x34=this[_0x690e[14]][_0x690e[36]]()[_0x690e[221]](_0x5031x41)}};return _0x5031x41};var _0x5031x42=mxGraphHandler[_0x690e[44]][_0x690e[224]];mxGraphHandler[_0x690e[44]][_0x690e[224]]=function(_0x5031x41){var _0x5031x3c=_0x5031x42[_0x690e[33]](this,arguments);var _0x5031x3f=this[_0x690e[14]][_0x690e[36]]();var _0x5031x40=_0x5031x3f[_0x690e[221]](this[_0x690e[14]][_0x690e[220]]());var _0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x41);if(_0x5031x40==null||(_0x5031x40!=_0x5031x41&&_0x5031x40!=_0x5031x34)){if(!this[_0x690e[14]][_0x690e[222]](_0x5031x41)&&_0x5031x3f[_0x690e[211]](_0x5031x34)&&!this[_0x690e[14]][_0x690e[223]](_0x5031x34)){_0x5031x3c=true}};return _0x5031x3c};mxGraphHandler[_0x690e[44]][_0x690e[225]]=function(_0x5031x3e){var _0x5031x41=_0x5031x3e[_0x690e[226]]();if(_0x5031x41==null){_0x5031x41=this[_0x690e[227]]};var _0x5031x3f=this[_0x690e[14]][_0x690e[36]]();var _0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x41);while(this[_0x690e[14]][_0x690e[222]](_0x5031x41)&&_0x5031x3f[_0x690e[211]](_0x5031x34)&&!this[_0x690e[14]][_0x690e[223]](_0x5031x34)){_0x5031x41=_0x5031x34;_0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x41)};this[_0x690e[14]][_0x690e[229]](_0x5031x41,_0x5031x3e[_0x690e[228]]())};mxPanningHandler[_0x690e[44]][_0x690e[230]]=function(_0x5031x3e){var _0x5031x41=_0x5031x3e[_0x690e[226]]();var _0x5031x3f=this[_0x690e[14]][_0x690e[36]]();var _0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x41);while(_0x5031x3f[_0x690e[211]](_0x5031x34)&&!this[_0x690e[14]][_0x690e[223]](_0x5031x34)){if(this[_0x690e[14]][_0x690e[222]](_0x5031x34)){_0x5031x41=_0x5031x34};_0x5031x34=_0x5031x3f[_0x690e[221]](_0x5031x34)};return _0x5031x41}};Editor[_0x690e[44]][_0x690e[18]]=function(){var _0x5031xe=this[_0x690e[14]];var _0x5031x43= new mxUndoManager();var _0x5031x44=function(_0x5031x45,_0x5031x14){_0x5031x43[_0x690e[233]](_0x5031x14[_0x690e[232]](_0x690e[231]))};_0x5031xe[_0x690e[36]]()[_0x690e[35]](mxEvent.UNDO,_0x5031x44);_0x5031xe[_0x690e[234]]()[_0x690e[35]](mxEvent.UNDO,_0x5031x44);var _0x5031x46=function(_0x5031x45,_0x5031x14){var _0x5031x47=_0x5031xe[_0x690e[236]](_0x5031x14[_0x690e[232]](_0x690e[231])[_0x690e[235]]);var _0x5031x35=[];for(var _0x5031x30=1;_0x5031x30<_0x5031x47[_0x690e[83]];_0x5031x30++){if(_0x5031xe[_0x690e[53]][_0x690e[237]](_0x5031x47[_0x5031x30])!=null){_0x5031x35[_0x690e[238]](_0x5031x47[_0x5031x30])}};_0x5031xe[_0x690e[239]](_0x5031x35)};_0x5031x43[_0x690e[35]](mxEvent.UNDO,_0x5031x46);_0x5031x43[_0x690e[35]](mxEvent.REDO,_0x5031x46);return _0x5031x43};Editor[_0x690e[44]][_0x690e[13]]=function(){mxStencilRegistry[_0x690e[241]](STENCIL_PATH+_0x690e[240])};(function(){mxStencilRegistry[_0x690e[242]]={};mxStencilRegistry[_0x690e[243]]=[];mxStencilRegistry[_0x690e[244]]=function(_0x5031x48){var _0x5031x3c=mxStencilRegistry[_0x690e[245]][_0x5031x48];if(_0x5031x3c==null){var _0x5031x49=mxStencilRegistry[_0x690e[246]](_0x5031x48);if(_0x5031x49!=null){var _0x5031x4a=mxStencilRegistry[_0x690e[242]][_0x5031x49];if(_0x5031x4a!=null){if(mxStencilRegistry[_0x690e[243]][_0x5031x49]==null){mxStencilRegistry[_0x690e[243]][_0x5031x49]=1;for(var _0x5031x30=0;_0x5031x30<_0x5031x4a[_0x690e[83]];_0x5031x30++){var _0x5031x4b=_0x5031x4a[_0x5031x30];if(_0x5031x4b[_0x690e[248]]()[_0x690e[247]](_0x5031x4b[_0x690e[83]]-4,_0x5031x4b[_0x690e[83]])==_0x690e[25]){mxStencilRegistry[_0x690e[241]](_0x5031x4b,null)}else {if(_0x5031x4b[_0x690e[248]]()[_0x690e[247]](_0x5031x4b[_0x690e[83]]-3,_0x5031x4b[_0x690e[83]])==_0x690e[249]){var _0x5031x4c=mxUtils[_0x690e[250]](_0x5031x4b);if(_0x5031x4c!=null){eval[_0x690e[11]](window,_0x5031x4c[_0x690e[251]]())}}else {}}}}}else {mxStencilRegistry[_0x690e[241]](STENCIL_PATH+_0x690e[252]+_0x5031x49+_0x690e[25],null)};_0x5031x3c=mxStencilRegistry[_0x690e[245]][_0x5031x48]}};return _0x5031x3c};mxStencilRegistry[_0x690e[246]]=function(_0x5031x48){var _0x5031x4d=_0x5031x48[_0x690e[254]](_0x690e[253]);var _0x5031x4e=null;if(_0x5031x4d[_0x690e[83]]>0&&_0x5031x4d[0]==_0x690e[255]){_0x5031x4e=_0x5031x4d[1];for(var _0x5031x30=2;_0x5031x30<_0x5031x4d[_0x690e[83]]-1;_0x5031x30++){_0x5031x4e+=_0x690e[252]+_0x5031x4d[_0x5031x30]}};return _0x5031x4e};mxStencilRegistry[_0x690e[241]]=function(_0x5031x4f,_0x5031x50,_0x5031x51){_0x5031x51=(_0x5031x51!=null)?_0x5031x51:false;var _0x5031x52=mxStencilRegistry[_0x690e[243]][_0x5031x4f];if(_0x5031x51||_0x5031x52==null){var _0x5031x53=false;if(_0x5031x52==null){var _0x5031x4c=mxUtils[_0x690e[250]](_0x5031x4f);_0x5031x52=_0x5031x4c[_0x690e[256]]();mxStencilRegistry[_0x690e[243]][_0x5031x4f]=_0x5031x52;_0x5031x53=true};mxStencilRegistry[_0x690e[257]](_0x5031x52,_0x5031x50,_0x5031x53)}};mxStencilRegistry[_0x690e[257]]=function(_0x5031x54,_0x5031x50,_0x5031x53){_0x5031x53=(_0x5031x53!=null)?_0x5031x53:true;var _0x5031x55=_0x5031x54[_0x690e[258]];var _0x5031x56=_0x5031x55[_0x690e[184]];var _0x5031x57=_0x690e[20];var _0x5031x48=_0x5031x55[_0x690e[56]](_0x690e[259]);if(_0x5031x48!=null){_0x5031x57=_0x5031x48+_0x690e[253]};while(_0x5031x56!=null){if(_0x5031x56[_0x690e[260]]==mxConstants[_0x690e[261]]){_0x5031x48=_0x5031x56[_0x690e[56]](_0x690e[259]);if(_0x5031x48!=null){_0x5031x57=_0x5031x57[_0x690e[248]]();var _0x5031x58=_0x5031x48[_0x690e[263]](/ /g,_0x690e[262]);if(_0x5031x53){mxStencilRegistry[_0x690e[264]](_0x5031x57+_0x5031x58[_0x690e[248]](), new mxStencil(_0x5031x56))};if(_0x5031x50!=null){var _0x5031x19=_0x5031x56[_0x690e[56]](_0x690e[265]);var _0x5031x1a=_0x5031x56[_0x690e[56]](_0x690e[266]);_0x5031x19=(_0x5031x19==null)?80:parseInt(_0x5031x19,10);_0x5031x1a=(_0x5031x1a==null)?80:parseInt(_0x5031x1a,10);_0x5031x50(_0x5031x57,_0x5031x58,_0x5031x48,_0x5031x19,_0x5031x1a)}}};_0x5031x56=_0x5031x56[_0x690e[267]]}}})();OpenFile=function(_0x5031x59){this[_0x690e[268]]=null;this[_0x690e[269]]=null;this[_0x690e[270]]=_0x5031x59};OpenFile[_0x690e[44]][_0x690e[271]]=function(_0x5031x6){this[_0x690e[269]]=_0x5031x6;this[_0x690e[272]]()};OpenFile[_0x690e[44]][_0x690e[273]]=function(_0x5031x6,_0x5031x5a){this[_0x690e[274]]=_0x5031x6;this[_0x690e[21]]=_0x5031x5a;this[_0x690e[272]]()};OpenFile[_0x690e[44]][_0x690e[275]]=function(_0x5031x5b){this[_0x690e[276]]();mxUtils[_0x690e[277]](_0x5031x5b)};OpenFile[_0x690e[44]][_0x690e[272]]=function(){if(this[_0x690e[269]]!=null&&this[_0x690e[274]]!=null){this[_0x690e[269]](this[_0x690e[274]],this[_0x690e[21]]);this[_0x690e[276]]()}};OpenFile[_0x690e[44]][_0x690e[276]]=function(){if(this[_0x690e[270]]!=null){this[_0x690e[270]]()}} \ No newline at end of file +var _0x1c04=["\x49\x53\x5F\x54\x4F\x55\x43\x48","\x73\x74\x6F\x72\x61\x67\x65","\x6C\x6F\x63\x61\x6C","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x46\x69\x6C\x65","\x46\x69\x6C\x65\x52\x65\x61\x64\x65\x72","\x46\x69\x6C\x65\x4C\x69\x73\x74","\x74\x6F\x75\x63\x68","\x31","\x6F\x70\x65\x6E\x65\x72","\x63\x6F\x75\x6E\x74\x65\x72","\x63\x61\x6C\x6C","\x69\x6E\x69\x74","\x69\x6E\x69\x74\x53\x74\x65\x6E\x63\x69\x6C\x52\x65\x67\x69\x73\x74\x72\x79","\x67\x72\x61\x70\x68","\x6F\x75\x74\x6C\x69\x6E\x65","\x75\x70\x64\x61\x74\x65\x4F\x6E\x50\x61\x6E","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x63\x72\x65\x61\x74\x65\x55\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x73\x74\x61\x74\x75\x73","","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x64\x72\x61\x77\x69\x6E\x67","\x67\x65\x74","\x2E\x78\x6D\x6C","\x67\x65\x74\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x67\x72\x61\x70\x68\x43\x68\x61\x6E\x67\x65\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x70\x70\x6C\x79","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x6F\x6E\x62\x65\x66\x6F\x72\x65\x75\x6E\x6C\x6F\x61\x64","\x61\x6C\x6C\x43\x68\x61\x6E\x67\x65\x73\x4C\x6F\x73\x74","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x73\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x65\x78\x74\x65\x6E\x64","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x2F\x67\x72\x69\x64\x2E\x67\x69\x66","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x2F\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x2E\x67\x69\x66","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x6D\x78\x47\x72\x61\x70\x68\x4D\x6F\x64\x65\x6C","\x73\x63\x61\x6C\x65","\x76\x69\x65\x77","\x67\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x30","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x67\x75\x69\x64\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x63\x6F\x6E\x6E\x65\x63\x74","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x66\x6F\x6C\x64","\x73\x63\x72\x6F\x6C\x6C\x4C\x65\x66\x74","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x78","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65","\x64\x78","\x79","\x64\x79","\x70\x61\x67\x65\x56\x69\x73\x69\x62\x6C\x65","\x70\x61\x67\x65","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x73\x56\x69\x73\x69\x62\x6C\x65","\x70\x72\x65\x66\x65\x72\x50\x61\x67\x65\x53\x69\x7A\x65","\x70\x61\x67\x65\x53\x63\x61\x6C\x65","\x70\x61\x67\x65\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x48\x65\x69\x67\x68\x74","\x70\x61\x67\x65\x46\x6F\x72\x6D\x61\x74","\x6C\x65\x6E\x67\x74\x68","\x64\x65\x63\x6F\x64\x65","\x75\x70\x64\x61\x74\x65\x47\x72\x61\x70\x68\x43\x6F\x6D\x70\x6F\x6E\x65\x6E\x74\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x65\x6E\x63\x6F\x64\x65","\x72\x6F\x75\x6E\x64","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x6E\x6F\x6E\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x73\x74\x79\x6C\x65","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x66\x69\x6C\x6C","\x72\x65\x63\x6F\x6E\x66\x69\x67\x75\x72\x65","\x23\x65\x62\x65\x62\x65\x62","\x62\x6F\x72\x64\x65\x72\x53\x74\x79\x6C\x65","\x73\x6F\x6C\x69\x64","\x62\x6F\x72\x64\x65\x72\x43\x6F\x6C\x6F\x72","\x23\x65\x35\x65\x35\x65\x35","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70\x57\x69\x64\x74\x68","\x31\x70\x78","\x62\x6F\x72\x64\x65\x72\x4C\x65\x66\x74\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72\x52\x69\x67\x68\x74\x57\x69\x64\x74\x68","\x30\x70\x78","\x62\x6F\x72\x64\x65\x72\x42\x6F\x74\x74\x6F\x6D\x57\x69\x64\x74\x68","\x62\x6F\x72\x64\x65\x72","\x76\x61\x6C\x69\x64\x61\x74\x65","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x61\x75\x74\x6F","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x6E\x6F\x64\x65","\x49\x53\x5F\x49\x45\x36","\x73\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x2F\x67\x72\x61\x70\x68\x65\x64\x69\x74\x6F\x72\x2D\x69\x65\x36\x2E\x63\x73\x73","\x6C\x69\x6E\x6B","\x6C\x6F\x61\x64\x44\x65\x66\x61\x75\x6C\x74\x42\x75\x6E\x64\x6C\x65","\x61\x64\x64","\x44\x45\x46\x41\x55\x4C\x54\x5F\x48\x4F\x54\x53\x50\x4F\x54","\x63\x72\x65\x61\x74\x65\x4D\x61\x72\x6B\x65\x72","\x69\x6E\x74\x65\x72\x73\x65\x63\x74\x73","\x69\x73\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6E\x67","\x53\x48\x41\x44\x4F\x57\x43\x4F\x4C\x4F\x52","\x23\x64\x30\x64\x30\x64\x30","\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x39\x39\x63\x63\x66\x66","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x38\x38\x63\x66","\x56\x45\x52\x54\x45\x58\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x23\x30\x30\x61\x38\x66\x66","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x4F\x55\x54\x4C\x49\x4E\x45\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x43\x4F\x4C\x4F\x52","\x43\x4F\x4E\x4E\x45\x43\x54\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x23\x63\x65\x65\x37\x66\x66","\x45\x44\x47\x45\x5F\x53\x45\x4C\x45\x43\x54\x49\x4F\x4E\x5F\x43\x4F\x4C\x4F\x52","\x44\x45\x46\x41\x55\x4C\x54\x5F\x56\x41\x4C\x49\x44\x5F\x43\x4F\x4C\x4F\x52","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x46\x49\x4C\x4C\x43\x4F\x4C\x4F\x52","\x47\x55\x49\x44\x45\x5F\x43\x4F\x4C\x4F\x52","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x43\x6F\x6C\x6F\x72","\x23\x63\x30\x63\x30\x63\x30","\x64\x65\x66\x61\x75\x6C\x74\x4F\x70\x61\x63\x69\x74\x79","\x63\x72\x65\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x53\x68\x61\x70\x65","\x77\x68\x69\x74\x65","\x23\x63\x61\x63\x61\x63\x61","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65\x42\x6F\x75\x6E\x64\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x6D\x69\x6E","\x66\x6C\x6F\x6F\x72","\x6D\x61\x78","\x63\x65\x69\x6C","\x70\x61\x6E\x47\x72\x61\x70\x68","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x75\x73\x65\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x68\x61\x73\x53\x63\x72\x6F\x6C\x6C\x62\x61\x72\x73","\x6D\x61\x72\x67\x69\x6E\x4C\x65\x66\x74","\x70\x78","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x67\x65\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x6D\x61\x67\x65","\x73\x72\x63","\x64\x65\x73\x74\x72\x6F\x79","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x6E\x65","\x72\x65\x64\x72\x61\x77","\x72\x65\x64\x72\x61\x77\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x69\x73\x53\x68\x61\x64\x6F\x77","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x54\x52\x49\x43\x54\x48\x54\x4D\x4C","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x69\x6E\x73\x65\x72\x74\x42\x65\x66\x6F\x72\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x61\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x64\x62\x6C\x63\x6C\x69\x63\x6B","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x69\x73\x48\x69\x64\x65\x4F\x6E\x48\x6F\x76\x65\x72","\x68\x69\x64\x65","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x62\x6F\x75\x6E\x64\x73","\x75\x70\x64\x61\x74\x65\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x6D\x69\x6E\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x69\x73\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x70\x6F\x69\x6E\x74\x73","\x69\x73\x44\x61\x73\x68\x65\x64","\x70\x61\x67\x65\x42\x72\x65\x61\x6B\x44\x61\x73\x68\x65\x64","\x61\x64\x64\x50\x69\x70\x65","\x73\x70\x6C\x69\x63\x65","\x76\x65\x72\x74\x69\x63\x61\x6C\x50\x61\x67\x65\x42\x72\x65\x61\x6B\x73","\x73\x6E\x61\x70\x54\x6F\x54\x65\x72\x6D\x69\x6E\x61\x6C\x73","\x73\x68\x6F\x75\x6C\x64\x52\x65\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73\x46\x72\x6F\x6D\x50\x61\x72\x65\x6E\x74","\x69\x73\x56\x65\x72\x74\x65\x78","\x67\x65\x74\x43\x65\x6C\x6C\x47\x65\x6F\x6D\x65\x74\x72\x79","\x72\x65\x6C\x61\x74\x69\x76\x65","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x41\x6C\x74\x44\x6F\x77\x6E","\x61\x64\x64\x49\x74\x65\x6D","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6F\x6E\x73\x75\x6D\x65","\x67\x65\x74\x49\x6E\x69\x74\x69\x61\x6C\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x69\x73\x44\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x73\x65\x6C\x65\x63\x74\x44\x65\x6C\x61\x79\x65\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x63\x65\x6C\x6C","\x67\x65\x74\x45\x76\x65\x6E\x74","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x46\x6F\x72\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x65\x6C\x6C\x46\x6F\x72\x50\x6F\x70\x75\x70\x45\x76\x65\x6E\x74","\x65\x64\x69\x74","\x67\x65\x74\x50\x72\x6F\x70\x65\x72\x74\x79","\x75\x6E\x64\x6F\x61\x62\x6C\x65\x45\x64\x69\x74\x48\x61\x70\x70\x65\x6E\x65\x64","\x67\x65\x74\x56\x69\x65\x77","\x63\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x46\x6F\x72\x43\x68\x61\x6E\x67\x65\x73","\x67\x65\x74\x53\x74\x61\x74\x65","\x70\x75\x73\x68","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x6C\x69\x62\x72\x61\x72\x69\x65\x73","\x70\x61\x63\x6B\x61\x67\x65\x73","\x67\x65\x74\x53\x74\x65\x6E\x63\x69\x6C","\x73\x74\x65\x6E\x63\x69\x6C\x73","\x67\x65\x74\x42\x61\x73\x65\x6E\x61\x6D\x65\x46\x6F\x72\x53\x74\x65\x6E\x63\x69\x6C","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x2E\x6A\x73","\x6C\x6F\x61\x64","\x67\x65\x74\x54\x65\x78\x74","\x2F","\x2E","\x73\x70\x6C\x69\x74","\x6D\x78\x67\x72\x61\x70\x68","\x67\x65\x74\x58\x6D\x6C","\x70\x61\x72\x73\x65\x53\x74\x65\x6E\x63\x69\x6C\x53\x65\x74","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x6E\x61\x6D\x65","\x6E\x6F\x64\x65\x54\x79\x70\x65","\x4E\x4F\x44\x45\x54\x59\x50\x45\x5F\x45\x4C\x45\x4D\x45\x4E\x54","\x5F","\x72\x65\x70\x6C\x61\x63\x65","\x61\x64\x64\x53\x74\x65\x6E\x63\x69\x6C","\x77","\x68","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x70\x72\x6F\x64\x75\x63\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65\x72","\x64\x6F\x6E\x65","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x65\x78\x65\x63\x75\x74\x65","\x73\x65\x74\x44\x61\x74\x61","\x64\x61\x74\x61","\x65\x72\x72\x6F\x72","\x63\x61\x6E\x63\x65\x6C","\x61\x6C\x65\x72\x74"];var useLocalStorage=(mxClient[_0x1c04[0]]||urlParams[_0x1c04[1]]==_0x1c04[2])&& typeof (localStorage)!=_0x1c04[3];var fileSupport=window[_0x1c04[4]]!=null&&window[_0x1c04[5]]!=null&&window[_0x1c04[6]]!=null;var touchStyle=mxClient[_0x1c04[0]]||urlParams[_0x1c04[7]]==_0x1c04[8];var counter=0;try{var op=window;while(op[_0x1c04[9]]!=null&&!isNaN(op[_0x1c04[9]][_0x1c04[10]])){op=op[_0x1c04[9]]};if(op!=null){op[_0x1c04[10]]++;counter=op[_0x1c04[10]]}}catch(e){};Editor=function(){mxEventSource[_0x1c04[11]](this);this[_0x1c04[12]]();this[_0x1c04[13]]();this[_0x1c04[14]]= new Graph();this[_0x1c04[15]]= new mxOutline(this[_0x1c04[14]]);this[_0x1c04[15]][_0x1c04[16]]=true;this[_0x1c04[17]]=this[_0x1c04[18]]();this[_0x1c04[19]]=_0x1c04[20];this[_0x1c04[21]]=null;this[_0x1c04[22]]=function(){return this[_0x1c04[21]]||mxResources[_0x1c04[24]](_0x1c04[23],[counter])+_0x1c04[25]};this[_0x1c04[26]]=function(){return this[_0x1c04[21]]};this[_0x1c04[27]]=function(_0xd7dax6){this[_0x1c04[19]]=_0xd7dax6;this[_0x1c04[29]]( new mxEventObject(_0x1c04[28]))};this[_0x1c04[30]]=function(){return this[_0x1c04[19]]};this[_0x1c04[31]]=false;this[_0x1c04[32]]=function(){this[_0x1c04[31]]=true};this[_0x1c04[14]][_0x1c04[36]]()[_0x1c04[35]](mxEvent.CHANGE,mxUtils[_0x1c04[34]](this,function(){this[_0x1c04[32]][_0x1c04[33]](this,arguments)}));window[_0x1c04[37]]=mxUtils[_0x1c04[34]](this,function(){if(this[_0x1c04[31]]){return mxResources[_0x1c04[24]](_0x1c04[38])}});this[_0x1c04[14]][_0x1c04[39]]=false;this[_0x1c04[14]][_0x1c04[40]]=true;this[_0x1c04[14]][_0x1c04[41]]=null};mxUtils[_0x1c04[42]](Editor,mxEventSource);Editor[_0x1c04[44]][_0x1c04[43]]=IMAGE_PATH+_0x1c04[45];Editor[_0x1c04[44]][_0x1c04[46]]=IMAGE_PATH+_0x1c04[47];Editor[_0x1c04[44]][_0x1c04[48]]=function(_0xd7dax7){var _0xd7dax8= new mxCodec(_0xd7dax7[_0x1c04[49]]);if(_0xd7dax7[_0x1c04[50]]==_0x1c04[51]){this[_0x1c04[14]][_0x1c04[53]][_0x1c04[52]]=1;this[_0x1c04[14]][_0x1c04[54]]=_0xd7dax7[_0x1c04[56]](_0x1c04[55])!=_0x1c04[57];this[_0x1c04[14]][_0x1c04[59]][_0x1c04[58]]=_0xd7dax7[_0x1c04[56]](_0x1c04[60])!=_0x1c04[57];this[_0x1c04[14]][_0x1c04[62]](_0xd7dax7[_0x1c04[56]](_0x1c04[61])!=_0x1c04[57]);this[_0x1c04[14]][_0x1c04[64]](_0xd7dax7[_0x1c04[56]](_0x1c04[63])!=_0x1c04[57]);this[_0x1c04[14]][_0x1c04[65]]=_0xd7dax7[_0x1c04[56]](_0x1c04[66])!=_0x1c04[57];this[_0x1c04[14]][_0x1c04[40]]=_0xd7dax7[_0x1c04[56]](_0x1c04[40])!=_0x1c04[57];if(!this[_0x1c04[14]][_0x1c04[40]]){this[_0x1c04[14]][_0x1c04[68]][_0x1c04[67]]=0;this[_0x1c04[14]][_0x1c04[68]][_0x1c04[69]]=0;this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[70]]=Number(_0xd7dax7[_0x1c04[56]](_0x1c04[72])||0);this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[73]]=Number(_0xd7dax7[_0x1c04[56]](_0x1c04[74])||0)};this[_0x1c04[14]][_0x1c04[75]]=_0xd7dax7[_0x1c04[56]](_0x1c04[76])==_0x1c04[8];this[_0x1c04[14]][_0x1c04[77]]=this[_0x1c04[14]][_0x1c04[75]];this[_0x1c04[14]][_0x1c04[78]]=this[_0x1c04[14]][_0x1c04[77]];var _0xd7dax9=_0xd7dax7[_0x1c04[56]](_0x1c04[79]);if(_0xd7dax9!=null){this[_0x1c04[14]][_0x1c04[79]]=_0xd7dax9}else {this[_0x1c04[14]][_0x1c04[79]]=1.5};var _0xd7daxa=_0xd7dax7[_0x1c04[56]](_0x1c04[80]);var _0xd7daxb=_0xd7dax7[_0x1c04[56]](_0x1c04[81]);if(_0xd7daxa!=null&&_0xd7daxb!=null){this[_0x1c04[14]][_0x1c04[82]]= new mxRectangle(0,0,parseFloat(_0xd7daxa),parseFloat(_0xd7daxb));this[_0x1c04[15]][_0x1c04[15]][_0x1c04[82]]=this[_0x1c04[14]][_0x1c04[82]]};var _0xd7daxc=_0xd7dax7[_0x1c04[56]](_0x1c04[41]);if(_0xd7daxc!=null&&_0xd7daxc[_0x1c04[83]]>0){this[_0x1c04[14]][_0x1c04[41]]=_0xd7daxc};_0xd7dax8[_0x1c04[84]](_0xd7dax7,this[_0x1c04[14]][_0x1c04[36]]());this[_0x1c04[85]]()}};Editor[_0x1c04[44]][_0x1c04[86]]=function(){var _0xd7daxd= new mxCodec(mxUtils[_0x1c04[87]]());var _0xd7dax7=_0xd7daxd[_0x1c04[88]](this[_0x1c04[14]][_0x1c04[36]]());if(this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[70]]!=0||this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[73]]!=0){_0xd7dax7[_0x1c04[90]](_0x1c04[72],Math[_0x1c04[89]](this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[70]]*100)/100);_0xd7dax7[_0x1c04[90]](_0x1c04[74],Math[_0x1c04[89]](this[_0x1c04[14]][_0x1c04[53]][_0x1c04[71]][_0x1c04[73]]*100)/100)};_0xd7dax7[_0x1c04[90]](_0x1c04[55],(this[_0x1c04[14]][_0x1c04[91]]())?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[60],(this[_0x1c04[14]][_0x1c04[59]][_0x1c04[58]])?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[60],(this[_0x1c04[14]][_0x1c04[59]][_0x1c04[58]])?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[61],(this[_0x1c04[14]][_0x1c04[93]][_0x1c04[92]]())?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[63],(this[_0x1c04[14]][_0x1c04[94]][_0x1c04[92]]())?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[66],(this[_0x1c04[14]][_0x1c04[65]])?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[76],(this[_0x1c04[14]][_0x1c04[75]])?_0x1c04[8]:_0x1c04[57]);_0xd7dax7[_0x1c04[90]](_0x1c04[79],this[_0x1c04[14]][_0x1c04[79]]);_0xd7dax7[_0x1c04[90]](_0x1c04[80],this[_0x1c04[14]][_0x1c04[82]][_0x1c04[95]]);_0xd7dax7[_0x1c04[90]](_0x1c04[81],this[_0x1c04[14]][_0x1c04[82]][_0x1c04[96]]);if(!this[_0x1c04[14]][_0x1c04[40]]){_0xd7dax7[_0x1c04[90]](_0x1c04[40],_0x1c04[57])};if(this[_0x1c04[14]][_0x1c04[41]]!=null){_0xd7dax7[_0x1c04[90]](_0x1c04[41],this[_0x1c04[14]][_0x1c04[41]])};return _0xd7dax7};Editor[_0x1c04[44]][_0x1c04[85]]=function(){var _0xd7daxe=this[_0x1c04[14]];var _0xd7daxf=this[_0x1c04[15]];if(_0xd7daxe[_0x1c04[68]]!=null&&_0xd7daxf[_0x1c04[15]][_0x1c04[68]]!=null){if(_0xd7daxe[_0x1c04[41]]!=null){if(_0xd7daxe[_0x1c04[41]]==_0x1c04[97]){_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[98]]=_0x1c04[100]}else {if(_0xd7daxe[_0x1c04[53]][_0x1c04[101]]!=null){_0xd7daxe[_0x1c04[53]][_0x1c04[101]][_0x1c04[102]]=_0xd7daxe[_0x1c04[41]];_0xd7daxe[_0x1c04[53]][_0x1c04[101]][_0x1c04[103]]()};_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[98]]=_0xd7daxe[_0x1c04[41]]}}else {_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[98]]=_0x1c04[20]};if(_0xd7daxe[_0x1c04[75]]){_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[98]]=_0x1c04[104];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[105]]=_0x1c04[106];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[107]]=_0x1c04[108];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[109]]=_0x1c04[110];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[111]]=_0x1c04[110];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[112]]=_0x1c04[113];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[114]]=_0x1c04[113]}else {_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[115]]=_0x1c04[20]};_0xd7daxf[_0x1c04[15]][_0x1c04[68]][_0x1c04[99]][_0x1c04[98]]=_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[98]];if(_0xd7daxf[_0x1c04[15]][_0x1c04[75]]!=_0xd7daxe[_0x1c04[75]]||_0xd7daxf[_0x1c04[15]][_0x1c04[79]]!=_0xd7daxe[_0x1c04[79]]){_0xd7daxf[_0x1c04[15]][_0x1c04[79]]=_0xd7daxe[_0x1c04[79]];_0xd7daxf[_0x1c04[15]][_0x1c04[75]]=_0xd7daxe[_0x1c04[75]];_0xd7daxf[_0x1c04[15]][_0x1c04[53]][_0x1c04[116]]()};if(_0xd7daxe[_0x1c04[40]]&&_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[117]]==_0x1c04[118]&& !touchStyle){_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[117]]=_0x1c04[119]}else {if(!_0xd7daxe[_0x1c04[40]]||touchStyle){_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[117]]=_0x1c04[118]}};var _0xd7dax10=(mxClient[_0x1c04[120]]&&document[_0x1c04[121]]>=9)?_0x1c04[122]+this[_0x1c04[46]]+_0x1c04[123]:_0x1c04[97];_0xd7daxe[_0x1c04[68]][_0x1c04[99]][_0x1c04[124]]=(!_0xd7daxe[_0x1c04[75]]&&_0xd7daxe[_0x1c04[91]]())?_0x1c04[122]+this[_0x1c04[43]]+_0x1c04[123]:_0xd7dax10;if(_0xd7daxe[_0x1c04[53]][_0x1c04[101]]!=null){_0xd7daxe[_0x1c04[53]][_0x1c04[101]][_0x1c04[125]][_0x1c04[99]][_0x1c04[124]]=(this[_0x1c04[14]][_0x1c04[91]]())?_0x1c04[122]+this[_0x1c04[43]]+_0x1c04[123]:_0x1c04[97]}}};Editor[_0x1c04[44]][_0x1c04[12]]=function(){if(mxClient[_0x1c04[126]]){mxClient[_0x1c04[129]](_0x1c04[127],CSS_PATH+_0x1c04[128])};mxResources[_0x1c04[130]]=false;mxResources[_0x1c04[131]](RESOURCE_BASE);mxConstants[_0x1c04[132]]=0.3;var _0xd7dax11=mxConnectionHandler[_0x1c04[44]][_0x1c04[133]];mxConnectionHandler[_0x1c04[44]][_0x1c04[133]]=function(){var _0xd7dax12=_0xd7dax11[_0x1c04[33]](this,arguments);_0xd7dax12[_0x1c04[134]]=mxUtils[_0x1c04[34]](this,function(_0xd7dax13,_0xd7dax14){if(this[_0x1c04[135]]()){return true};return mxCellMarker[_0x1c04[44]][_0x1c04[134]][_0x1c04[33]](_0xd7dax12,arguments)});return _0xd7dax12};mxConstants[_0x1c04[136]]=_0x1c04[137];mxConstants[_0x1c04[138]]=_0x1c04[139];mxConstants[_0x1c04[140]]=_0x1c04[141];mxConstants[_0x1c04[142]]=_0x1c04[143];mxConstants[_0x1c04[144]]=_0x1c04[143];mxConstants[_0x1c04[145]]=_0x1c04[139];mxConstants[_0x1c04[146]]=_0x1c04[143];mxConstants[_0x1c04[147]]=_0x1c04[148];mxConstants[_0x1c04[149]]=_0x1c04[143];mxConstants[_0x1c04[150]]=_0x1c04[143];mxConstants[_0x1c04[151]]=_0x1c04[148];mxConstants[_0x1c04[152]]=_0x1c04[141];mxGraph[_0x1c04[44]][_0x1c04[153]]=_0x1c04[154];mxGraph[_0x1c04[44]][_0x1c04[79]]=1;mxRubberband[_0x1c04[44]][_0x1c04[155]]=30;mxGraphView[_0x1c04[44]][_0x1c04[156]]=function(_0xd7dax15){return new mxRectangleShape(_0xd7dax15,this[_0x1c04[14]][_0x1c04[41]]||_0x1c04[157],_0x1c04[158])};mxGraphView[_0x1c04[44]][_0x1c04[159]]=function(){var _0xd7dax16=this[_0x1c04[160]]();var _0xd7dax17=(_0xd7dax16[_0x1c04[95]]>0)?_0xd7dax16[_0x1c04[70]]/this[_0x1c04[52]]-this[_0x1c04[71]][_0x1c04[70]]:0;var _0xd7dax18=(_0xd7dax16[_0x1c04[96]]>0)?_0xd7dax16[_0x1c04[73]]/this[_0x1c04[52]]-this[_0x1c04[71]][_0x1c04[73]]:0;var _0xd7dax19=_0xd7dax16[_0x1c04[95]]/this[_0x1c04[52]];var _0xd7dax1a=_0xd7dax16[_0x1c04[96]]/this[_0x1c04[52]];var _0xd7dax1b=this[_0x1c04[14]][_0x1c04[82]];var _0xd7dax9=this[_0x1c04[14]][_0x1c04[79]];var _0xd7daxa=_0xd7dax1b[_0x1c04[95]]*_0xd7dax9;var _0xd7daxb=_0xd7dax1b[_0x1c04[96]]*_0xd7dax9;var _0xd7dax1c=Math[_0x1c04[162]](Math[_0x1c04[161]](0,_0xd7dax17)/_0xd7daxa);var _0xd7dax1d=Math[_0x1c04[162]](Math[_0x1c04[161]](0,_0xd7dax18)/_0xd7daxb);var _0xd7dax1e=Math[_0x1c04[164]](Math[_0x1c04[163]](1,_0xd7dax17+_0xd7dax19)/_0xd7daxa);var _0xd7dax1f=Math[_0x1c04[164]](Math[_0x1c04[163]](1,_0xd7dax18+_0xd7dax1a)/_0xd7daxb);var _0xd7dax20=_0xd7dax1e-_0xd7dax1c;var _0xd7dax21=_0xd7dax1f-_0xd7dax1d;var _0xd7dax15= new mxRectangle(this[_0x1c04[52]]*(this[_0x1c04[71]][_0x1c04[70]]+_0xd7dax1c*_0xd7daxa),this[_0x1c04[52]]*(this[_0x1c04[71]][_0x1c04[73]]+_0xd7dax1d*_0xd7daxb),this[_0x1c04[52]]*_0xd7dax20*_0xd7daxa,this[_0x1c04[52]]*_0xd7dax21*_0xd7daxb);return _0xd7dax15};var _0xd7dax22=mxGraph[_0x1c04[44]][_0x1c04[165]];mxGraph[_0x1c04[44]][_0x1c04[165]]=function(_0xd7dax23,_0xd7dax24){_0xd7dax22[_0x1c04[33]](this,arguments);if((this[_0x1c04[166]]!=mxConstants[_0x1c04[167]]&&this[_0x1c04[53]][_0x1c04[101]]!=null)&&(!this[_0x1c04[168]]||!mxUtils[_0x1c04[169]](this[_0x1c04[68]]))){this[_0x1c04[53]][_0x1c04[101]][_0x1c04[125]][_0x1c04[99]][_0x1c04[170]]=_0xd7dax23+_0x1c04[171];this[_0x1c04[53]][_0x1c04[101]][_0x1c04[125]][_0x1c04[99]][_0x1c04[172]]=_0xd7dax24+_0x1c04[171]}};var _0xd7dax25=this;mxGraphView[_0x1c04[44]][_0x1c04[173]]=function(){var _0xd7daxc=this[_0x1c04[14]][_0x1c04[174]]();if(_0xd7daxc!=null){if(this[_0x1c04[124]]==null||this[_0x1c04[124]][_0x1c04[175]]!=_0xd7daxc[_0x1c04[176]]){if(this[_0x1c04[124]]!=null){this[_0x1c04[124]][_0x1c04[177]]()};var _0xd7dax15= new mxRectangle(0,0,1,1);this[_0x1c04[124]]= new mxImageShape(_0xd7dax15,_0xd7daxc[_0x1c04[176]]);this[_0x1c04[124]][_0x1c04[166]]=this[_0x1c04[14]][_0x1c04[166]];this[_0x1c04[124]][_0x1c04[12]](this[_0x1c04[178]]);this[_0x1c04[124]][_0x1c04[179]]()};this[_0x1c04[180]](this[_0x1c04[124]],_0xd7daxc)}else {if(this[_0x1c04[124]]!=null){this[_0x1c04[124]][_0x1c04[177]]();this[_0x1c04[124]]=null}};if(this[_0x1c04[14]][_0x1c04[75]]){var _0xd7dax15=this[_0x1c04[159]]();if(this[_0x1c04[101]]==null){this[_0x1c04[101]]=this[_0x1c04[156]](_0xd7dax15);this[_0x1c04[101]][_0x1c04[52]]=1;this[_0x1c04[101]][_0x1c04[181]]=true;this[_0x1c04[101]][_0x1c04[166]]=mxConstants[_0x1c04[182]];this[_0x1c04[101]][_0x1c04[12]](this[_0x1c04[14]][_0x1c04[68]]);this[_0x1c04[14]][_0x1c04[68]][_0x1c04[184]][_0x1c04[99]][_0x1c04[183]]=_0x1c04[185];this[_0x1c04[14]][_0x1c04[68]][_0x1c04[186]](this[_0x1c04[101]][_0x1c04[125]],this[_0x1c04[14]][_0x1c04[68]][_0x1c04[184]]);this[_0x1c04[101]][_0x1c04[179]]();this[_0x1c04[101]][_0x1c04[125]][_0x1c04[187]]=_0x1c04[188];this[_0x1c04[101]][_0x1c04[125]][_0x1c04[99]][_0x1c04[189]]=_0x1c04[190];mxEvent[_0x1c04[35]](this[_0x1c04[101]][_0x1c04[125]],_0x1c04[191],mxUtils[_0x1c04[34]](this,function(_0xd7dax14){this[_0x1c04[14]][_0x1c04[192]](_0xd7dax14)}));mxEvent[_0x1c04[198]](this[_0x1c04[101]][_0x1c04[125]],mxUtils[_0x1c04[34]](this,function(_0xd7dax14){this[_0x1c04[14]][_0x1c04[193]](mxEvent.MOUSE_DOWN, new mxMouseEvent(_0xd7dax14))}),mxUtils[_0x1c04[34]](this,function(_0xd7dax14){if(this[_0x1c04[14]][_0x1c04[93]]!=null&&this[_0x1c04[14]][_0x1c04[93]][_0x1c04[194]]()){this[_0x1c04[14]][_0x1c04[93]][_0x1c04[195]]()};if(this[_0x1c04[14]][_0x1c04[196]]&&!mxEvent[_0x1c04[197]](_0xd7dax14)){this[_0x1c04[14]][_0x1c04[193]](mxEvent.MOUSE_MOVE, new mxMouseEvent(_0xd7dax14))}}),mxUtils[_0x1c04[34]](this,function(_0xd7dax14){this[_0x1c04[14]][_0x1c04[193]](mxEvent.MOUSE_UP, new mxMouseEvent(_0xd7dax14))}))}else {this[_0x1c04[101]][_0x1c04[52]]=1;this[_0x1c04[101]][_0x1c04[199]]=_0xd7dax15;this[_0x1c04[101]][_0x1c04[179]]()};this[_0x1c04[101]][_0x1c04[125]][_0x1c04[99]][_0x1c04[124]]=(this[_0x1c04[14]][_0x1c04[91]]())?_0x1c04[122]+_0xd7dax25[_0x1c04[43]]+_0x1c04[123]:_0x1c04[97]}else {if(this[_0x1c04[101]]!=null){this[_0x1c04[101]][_0x1c04[177]]();this[_0x1c04[101]]=null}}};mxGraph[_0x1c04[44]][_0x1c04[200]]=function(_0xd7dax26,_0xd7dax27,_0xd7dax28){var _0xd7dax29=this[_0x1c04[53]][_0x1c04[52]];var _0xd7dax2a=this[_0x1c04[53]][_0x1c04[71]];var _0xd7dax1b=this[_0x1c04[82]];var _0xd7dax9=_0xd7dax29*this[_0x1c04[79]];var _0xd7dax2b=this[_0x1c04[53]][_0x1c04[159]]();_0xd7dax27=_0xd7dax2b[_0x1c04[95]];_0xd7dax28=_0xd7dax2b[_0x1c04[96]];var _0xd7dax15= new mxRectangle(_0xd7dax29*_0xd7dax2a[_0x1c04[70]],_0xd7dax29*_0xd7dax2a[_0x1c04[73]],_0xd7dax1b[_0x1c04[95]]*_0xd7dax9,_0xd7dax1b[_0x1c04[96]]*_0xd7dax9);_0xd7dax26=_0xd7dax26&&Math[_0x1c04[161]](_0xd7dax15[_0x1c04[95]],_0xd7dax15[_0x1c04[96]])>this[_0x1c04[201]];var _0xd7dax2c=(_0xd7dax26)?Math[_0x1c04[164]](_0xd7dax27/_0xd7dax15[_0x1c04[95]])-1:0;var _0xd7dax2d=(_0xd7dax26)?Math[_0x1c04[164]](_0xd7dax28/_0xd7dax15[_0x1c04[96]])-1:0;var _0xd7dax2e=_0xd7dax2b[_0x1c04[70]]+_0xd7dax27;var _0xd7dax2f=_0xd7dax2b[_0x1c04[73]]+_0xd7dax28;if(this[_0x1c04[202]]==null&&_0xd7dax2c>0){this[_0x1c04[202]]=[]};if(this[_0x1c04[202]]!=null){for(var _0xd7dax30=0;_0xd7dax30<=_0xd7dax2c;_0xd7dax30++){var _0xd7dax31=[ new mxPoint(_0xd7dax2b[_0x1c04[70]]+(_0xd7dax30+1)*_0xd7dax15[_0x1c04[95]],_0xd7dax2b[_0x1c04[73]]), new mxPoint(_0xd7dax2b[_0x1c04[70]]+(_0xd7dax30+1)*_0xd7dax15[_0x1c04[95]],_0xd7dax2f)];if(this[_0x1c04[202]][_0xd7dax30]!=null){this[_0x1c04[202]][_0xd7dax30][_0x1c04[52]]=1;this[_0x1c04[202]][_0xd7dax30][_0x1c04[203]]=_0xd7dax31;this[_0x1c04[202]][_0xd7dax30][_0x1c04[179]]()}else {var _0xd7dax32= new mxPolyline(_0xd7dax31,this[_0x1c04[153]],this[_0x1c04[52]]);_0xd7dax32[_0x1c04[166]]=this[_0x1c04[166]];_0xd7dax32[_0x1c04[204]]=this[_0x1c04[205]];_0xd7dax32[_0x1c04[206]]=false;_0xd7dax32[_0x1c04[52]]=_0xd7dax29;_0xd7dax32[_0x1c04[12]](this[_0x1c04[53]][_0x1c04[178]]);_0xd7dax32[_0x1c04[179]]();this[_0x1c04[202]][_0xd7dax30]=_0xd7dax32}};for(var _0xd7dax30=_0xd7dax2c;_0xd7dax30<this[_0x1c04[202]][_0x1c04[83]];_0xd7dax30++){this[_0x1c04[202]][_0xd7dax30][_0x1c04[177]]()};this[_0x1c04[202]][_0x1c04[207]](_0xd7dax2c,this[_0x1c04[202]][_0x1c04[83]]-_0xd7dax2c)};if(this[_0x1c04[208]]==null&&_0xd7dax2d>0){this[_0x1c04[208]]=[]};if(this[_0x1c04[208]]!=null){for(var _0xd7dax30=0;_0xd7dax30<=_0xd7dax2d;_0xd7dax30++){var _0xd7dax31=[ new mxPoint(_0xd7dax2b[_0x1c04[70]],_0xd7dax2b[_0x1c04[73]]+(_0xd7dax30+1)*_0xd7dax15[_0x1c04[96]]), new mxPoint(_0xd7dax2e,_0xd7dax2b[_0x1c04[73]]+(_0xd7dax30+1)*_0xd7dax15[_0x1c04[96]])];if(this[_0x1c04[208]][_0xd7dax30]!=null){this[_0x1c04[208]][_0xd7dax30][_0x1c04[52]]=1;this[_0x1c04[208]][_0xd7dax30][_0x1c04[203]]=_0xd7dax31;this[_0x1c04[208]][_0xd7dax30][_0x1c04[179]]()}else {var _0xd7dax32= new mxPolyline(_0xd7dax31,this[_0x1c04[153]],_0xd7dax29);_0xd7dax32[_0x1c04[166]]=this[_0x1c04[166]];_0xd7dax32[_0x1c04[204]]=this[_0x1c04[205]];_0xd7dax32[_0x1c04[206]]=false;_0xd7dax32[_0x1c04[52]]=_0xd7dax29;_0xd7dax32[_0x1c04[12]](this[_0x1c04[53]][_0x1c04[178]]);_0xd7dax32[_0x1c04[179]]();this[_0x1c04[208]][_0xd7dax30]=_0xd7dax32}};for(var _0xd7dax30=_0xd7dax2d;_0xd7dax30<this[_0x1c04[208]][_0x1c04[83]];_0xd7dax30++){this[_0x1c04[208]][_0xd7dax30][_0x1c04[177]]()};this[_0x1c04[208]][_0x1c04[207]](_0xd7dax2d,this[_0x1c04[208]][_0x1c04[83]]-_0xd7dax2d)}};mxEdgeHandler[_0x1c04[44]][_0x1c04[209]]=true;mxGraphHandler[_0x1c04[44]][_0x1c04[58]]=true;var _0xd7dax33=mxGraphHandler[_0x1c04[44]][_0x1c04[210]];mxGraphHandler[_0x1c04[44]][_0x1c04[210]]=function(_0xd7dax34,_0xd7dax35,_0xd7dax14){for(var _0xd7dax30=0;_0xd7dax30<_0xd7dax35[_0x1c04[83]];_0xd7dax30++){if(this[_0x1c04[14]][_0x1c04[36]]()[_0x1c04[211]](_0xd7dax35[_0xd7dax30])){var _0xd7dax36=this[_0x1c04[14]][_0x1c04[212]](_0xd7dax35[_0xd7dax30]);if(_0xd7dax36!=null&&_0xd7dax36[_0x1c04[213]]){return false}}};return _0xd7dax33[_0x1c04[33]](this,arguments)};mxGuide[_0x1c04[44]][_0x1c04[214]]=function(_0xd7dax14){return !mxEvent[_0x1c04[215]](_0xd7dax14)};mxPopupMenuAddItem=mxPopupMenu[_0x1c04[44]][_0x1c04[216]];mxPopupMenu[_0x1c04[44]][_0x1c04[216]]=function(_0xd7dax37,_0xd7dax38,_0xd7dax39,_0xd7dax34,_0xd7dax3a,_0xd7dax3b){var _0xd7dax3c=mxPopupMenuAddItem[_0x1c04[33]](this,arguments);if(_0xd7dax3b!=null&& !_0xd7dax3b){mxEvent[_0x1c04[35]](_0xd7dax3c,_0x1c04[217],function(_0xd7dax14){mxEvent[_0x1c04[218]](_0xd7dax14)})};return _0xd7dax3c};var _0xd7dax3d=mxGraphHandler[_0x1c04[44]][_0x1c04[219]];mxGraphHandler[_0x1c04[44]][_0x1c04[219]]=function(_0xd7dax3e){var _0xd7dax3f=this[_0x1c04[14]][_0x1c04[36]]();var _0xd7dax40=_0xd7dax3f[_0x1c04[221]](this[_0x1c04[14]][_0x1c04[220]]());var _0xd7dax41=_0xd7dax3d[_0x1c04[33]](this,arguments);var _0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax41);if(_0xd7dax40==null||(_0xd7dax40!=_0xd7dax41&&_0xd7dax40!=_0xd7dax34)){while(!this[_0x1c04[14]][_0x1c04[222]](_0xd7dax41)&&!this[_0x1c04[14]][_0x1c04[222]](_0xd7dax34)&&_0xd7dax3f[_0x1c04[211]](_0xd7dax34)&&!this[_0x1c04[14]][_0x1c04[223]](_0xd7dax34)){_0xd7dax41=_0xd7dax34;_0xd7dax34=this[_0x1c04[14]][_0x1c04[36]]()[_0x1c04[221]](_0xd7dax41)}};return _0xd7dax41};var _0xd7dax42=mxGraphHandler[_0x1c04[44]][_0x1c04[224]];mxGraphHandler[_0x1c04[44]][_0x1c04[224]]=function(_0xd7dax41){var _0xd7dax3c=_0xd7dax42[_0x1c04[33]](this,arguments);var _0xd7dax3f=this[_0x1c04[14]][_0x1c04[36]]();var _0xd7dax40=_0xd7dax3f[_0x1c04[221]](this[_0x1c04[14]][_0x1c04[220]]());var _0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax41);if(_0xd7dax40==null||(_0xd7dax40!=_0xd7dax41&&_0xd7dax40!=_0xd7dax34)){if(!this[_0x1c04[14]][_0x1c04[222]](_0xd7dax41)&&_0xd7dax3f[_0x1c04[211]](_0xd7dax34)&&!this[_0x1c04[14]][_0x1c04[223]](_0xd7dax34)){_0xd7dax3c=true}};return _0xd7dax3c};mxGraphHandler[_0x1c04[44]][_0x1c04[225]]=function(_0xd7dax3e){var _0xd7dax41=_0xd7dax3e[_0x1c04[226]]();if(_0xd7dax41==null){_0xd7dax41=this[_0x1c04[227]]};var _0xd7dax3f=this[_0x1c04[14]][_0x1c04[36]]();var _0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax41);while(this[_0x1c04[14]][_0x1c04[222]](_0xd7dax41)&&_0xd7dax3f[_0x1c04[211]](_0xd7dax34)&&!this[_0x1c04[14]][_0x1c04[223]](_0xd7dax34)){_0xd7dax41=_0xd7dax34;_0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax41)};this[_0x1c04[14]][_0x1c04[229]](_0xd7dax41,_0xd7dax3e[_0x1c04[228]]())};mxPanningHandler[_0x1c04[44]][_0x1c04[230]]=function(_0xd7dax3e){var _0xd7dax41=_0xd7dax3e[_0x1c04[226]]();var _0xd7dax3f=this[_0x1c04[14]][_0x1c04[36]]();var _0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax41);while(_0xd7dax3f[_0x1c04[211]](_0xd7dax34)&&!this[_0x1c04[14]][_0x1c04[223]](_0xd7dax34)){if(this[_0x1c04[14]][_0x1c04[222]](_0xd7dax34)){_0xd7dax41=_0xd7dax34};_0xd7dax34=_0xd7dax3f[_0x1c04[221]](_0xd7dax34)};return _0xd7dax41}};Editor[_0x1c04[44]][_0x1c04[18]]=function(){var _0xd7daxe=this[_0x1c04[14]];var _0xd7dax43= new mxUndoManager();var _0xd7dax44=function(_0xd7dax45,_0xd7dax14){_0xd7dax43[_0x1c04[233]](_0xd7dax14[_0x1c04[232]](_0x1c04[231]))};_0xd7daxe[_0x1c04[36]]()[_0x1c04[35]](mxEvent.UNDO,_0xd7dax44);_0xd7daxe[_0x1c04[234]]()[_0x1c04[35]](mxEvent.UNDO,_0xd7dax44);var _0xd7dax46=function(_0xd7dax45,_0xd7dax14){var _0xd7dax47=_0xd7daxe[_0x1c04[236]](_0xd7dax14[_0x1c04[232]](_0x1c04[231])[_0x1c04[235]]);var _0xd7dax35=[];for(var _0xd7dax30=1;_0xd7dax30<_0xd7dax47[_0x1c04[83]];_0xd7dax30++){if(_0xd7daxe[_0x1c04[53]][_0x1c04[237]](_0xd7dax47[_0xd7dax30])!=null){_0xd7dax35[_0x1c04[238]](_0xd7dax47[_0xd7dax30])}};_0xd7daxe[_0x1c04[239]](_0xd7dax35)};_0xd7dax43[_0x1c04[35]](mxEvent.UNDO,_0xd7dax46);_0xd7dax43[_0x1c04[35]](mxEvent.REDO,_0xd7dax46);return _0xd7dax43};Editor[_0x1c04[44]][_0x1c04[13]]=function(){mxStencilRegistry[_0x1c04[241]](STENCIL_PATH+_0x1c04[240])};(function(){mxStencilRegistry[_0x1c04[242]]={};mxStencilRegistry[_0x1c04[243]]=[];mxStencilRegistry[_0x1c04[244]]=function(_0xd7dax48){var _0xd7dax3c=mxStencilRegistry[_0x1c04[245]][_0xd7dax48];if(_0xd7dax3c==null){var _0xd7dax49=mxStencilRegistry[_0x1c04[246]](_0xd7dax48);if(_0xd7dax49!=null){var _0xd7dax4a=mxStencilRegistry[_0x1c04[242]][_0xd7dax49];if(_0xd7dax4a!=null){if(mxStencilRegistry[_0x1c04[243]][_0xd7dax49]==null){mxStencilRegistry[_0x1c04[243]][_0xd7dax49]=1;for(var _0xd7dax30=0;_0xd7dax30<_0xd7dax4a[_0x1c04[83]];_0xd7dax30++){var _0xd7dax4b=_0xd7dax4a[_0xd7dax30];if(_0xd7dax4b[_0x1c04[248]]()[_0x1c04[247]](_0xd7dax4b[_0x1c04[83]]-4,_0xd7dax4b[_0x1c04[83]])==_0x1c04[25]){mxStencilRegistry[_0x1c04[241]](_0xd7dax4b,null)}else {if(_0xd7dax4b[_0x1c04[248]]()[_0x1c04[247]](_0xd7dax4b[_0x1c04[83]]-3,_0xd7dax4b[_0x1c04[83]])==_0x1c04[249]){var _0xd7dax4c=mxUtils[_0x1c04[250]](_0xd7dax4b);if(_0xd7dax4c!=null){eval[_0x1c04[11]](window,_0xd7dax4c[_0x1c04[251]]())}}else {}}}}}else {mxStencilRegistry[_0x1c04[241]](STENCIL_PATH+_0x1c04[252]+_0xd7dax49+_0x1c04[25],null)};_0xd7dax3c=mxStencilRegistry[_0x1c04[245]][_0xd7dax48]}};return _0xd7dax3c};mxStencilRegistry[_0x1c04[246]]=function(_0xd7dax48){var _0xd7dax4d=_0xd7dax48[_0x1c04[254]](_0x1c04[253]);var _0xd7dax4e=null;if(_0xd7dax4d[_0x1c04[83]]>0&&_0xd7dax4d[0]==_0x1c04[255]){_0xd7dax4e=_0xd7dax4d[1];for(var _0xd7dax30=2;_0xd7dax30<_0xd7dax4d[_0x1c04[83]]-1;_0xd7dax30++){_0xd7dax4e+=_0x1c04[252]+_0xd7dax4d[_0xd7dax30]}};return _0xd7dax4e};mxStencilRegistry[_0x1c04[241]]=function(_0xd7dax4f,_0xd7dax50,_0xd7dax51){_0xd7dax51=(_0xd7dax51!=null)?_0xd7dax51:false;var _0xd7dax52=mxStencilRegistry[_0x1c04[243]][_0xd7dax4f];if(_0xd7dax51||_0xd7dax52==null){var _0xd7dax53=false;if(_0xd7dax52==null){var _0xd7dax4c=mxUtils[_0x1c04[250]](_0xd7dax4f);_0xd7dax52=_0xd7dax4c[_0x1c04[256]]();mxStencilRegistry[_0x1c04[243]][_0xd7dax4f]=_0xd7dax52;_0xd7dax53=true};mxStencilRegistry[_0x1c04[257]](_0xd7dax52,_0xd7dax50,_0xd7dax53)}};mxStencilRegistry[_0x1c04[257]]=function(_0xd7dax54,_0xd7dax50,_0xd7dax53){_0xd7dax53=(_0xd7dax53!=null)?_0xd7dax53:true;var _0xd7dax55=_0xd7dax54[_0x1c04[258]];var _0xd7dax56=_0xd7dax55[_0x1c04[184]];var _0xd7dax57=_0x1c04[20];var _0xd7dax48=_0xd7dax55[_0x1c04[56]](_0x1c04[259]);if(_0xd7dax48!=null){_0xd7dax57=_0xd7dax48+_0x1c04[253]};while(_0xd7dax56!=null){if(_0xd7dax56[_0x1c04[260]]==mxConstants[_0x1c04[261]]){_0xd7dax48=_0xd7dax56[_0x1c04[56]](_0x1c04[259]);if(_0xd7dax48!=null){_0xd7dax57=_0xd7dax57[_0x1c04[248]]();var _0xd7dax58=_0xd7dax48[_0x1c04[263]](/ /g,_0x1c04[262]);if(_0xd7dax53){mxStencilRegistry[_0x1c04[264]](_0xd7dax57+_0xd7dax58[_0x1c04[248]](), new mxStencil(_0xd7dax56))};if(_0xd7dax50!=null){var _0xd7dax19=_0xd7dax56[_0x1c04[56]](_0x1c04[265]);var _0xd7dax1a=_0xd7dax56[_0x1c04[56]](_0x1c04[266]);_0xd7dax19=(_0xd7dax19==null)?80:parseInt(_0xd7dax19,10);_0xd7dax1a=(_0xd7dax1a==null)?80:parseInt(_0xd7dax1a,10);_0xd7dax50(_0xd7dax57,_0xd7dax58,_0xd7dax48,_0xd7dax19,_0xd7dax1a)}}};_0xd7dax56=_0xd7dax56[_0x1c04[267]]}}})();OpenFile=function(_0xd7dax59){this[_0x1c04[268]]=null;this[_0x1c04[269]]=null;this[_0x1c04[270]]=_0xd7dax59};OpenFile[_0x1c04[44]][_0x1c04[271]]=function(_0xd7dax6){this[_0x1c04[269]]=_0xd7dax6;this[_0x1c04[272]]()};OpenFile[_0x1c04[44]][_0x1c04[273]]=function(_0xd7dax6,_0xd7dax5a){this[_0x1c04[274]]=_0xd7dax6;this[_0x1c04[21]]=_0xd7dax5a;this[_0x1c04[272]]()};OpenFile[_0x1c04[44]][_0x1c04[275]]=function(_0xd7dax5b){this[_0x1c04[276]]();mxUtils[_0x1c04[277]](_0xd7dax5b)};OpenFile[_0x1c04[44]][_0x1c04[272]]=function(){if(this[_0x1c04[269]]!=null&&this[_0x1c04[274]]!=null){this[_0x1c04[269]](this[_0x1c04[274]],this[_0x1c04[21]]);this[_0x1c04[276]]()}};OpenFile[_0x1c04[44]][_0x1c04[276]]=function(){if(this[_0x1c04[270]]!=null){this[_0x1c04[270]]()}} \ No newline at end of file diff --git a/public/assets/plugins/square/js/EditorUi.js b/public/assets/plugins/square/js/EditorUi.js index 57c98e6..7a0d14c 100644 --- a/public/assets/plugins/square/js/EditorUi.js +++ b/public/assets/plugins/square/js/EditorUi.js @@ -1 +1 @@ -var _0xff26=["\x65\x64\x69\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x45\x64\x69\x74\x6F\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x72\x61\x70\x68","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x73\x72\x63","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x6D\x65\x6E\x75\x73","\x63\x72\x65\x61\x74\x65\x44\x69\x76\x73","\x72\x65\x66\x72\x65\x73\x68","\x63\x72\x65\x61\x74\x65\x55\x69","\x65\x76\x65\x6E\x74","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x41\x6C\x6C\x6F\x77\x65\x64","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x62\x69\x6E\x64","\x62\x6F\x64\x79","\x6F\x6E\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x6D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x64\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x69\x6E\x69\x74","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x75\x72\x73\x6F\x72","\x64\x65\x66\x61\x75\x6C\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x66\x6F\x63\x75\x73","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x61\x70\x70\x6C\x79","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x73\x74\x61\x72\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x65\x6E\x64","\x6E","\x63\x72\x65\x61\x74\x65\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x61\x6E\x73\x77\x65\x72","\x68\x61\x6E\x67\x75\x70","\x64\x69\x61\x6C","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x71\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x73\x65\x74","\x6D\x61\x74\x68","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x6D\x65\x6E\x75","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x74\x74\x73","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x72\x65\x63\x6F\x72\x64","\x64\x61\x74\x61\x62\x61\x73\x65","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x67\x6F\x74\x6F\x63","\x67\x6F\x74\x6F\x69\x66","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x67\x6F\x74\x6F\x69\x66\x6D\x75\x6C\x74\x69\x74\x69\x6D\x65","\x76\x73\x77\x69\x74\x63\x68","\x71\x75\x65\x75\x65\x6C\x6F\x67","\x67\x6F\x61\x6C","\x6E\x6F\x6F\x70","\x73\x79\x73\x74\x65\x6D","\x61\x67\x69","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x65\x6C\x6C","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x74\x61\x67\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x73\x6F\x75\x72\x63\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x69\x73\x56\x65\x72\x74\x65\x78","\x6C\x6F\x67","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x63\x6F\x6E\x73\x75\x6D\x65","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x6F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x67\x65\x73\x74\x75\x72\x65\x63\x68\x61\x6E\x67\x65","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x63\x61\x6C\x65\x28","\x73\x63\x61\x6C\x65","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x76\x69\x65\x77","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x7A\x6F\x6F\x6D\x54\x6F\x43\x65\x6E\x74\x65\x72","\x7A\x6F\x6F\x6D","\x76\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x73\x69\x7A\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x75\x70\x64\x61\x74\x65","\x6F\x70\x65\x6E","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6D\x65\x6E\x75\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x74\x6F\x6F\x6C\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x66\x6F\x6F\x74\x65\x72\x48\x65\x69\x67\x68\x74","\x68\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x55\x6E\x64\x6F\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x73\x74\x65","\x67\x65\x74","\x69\x73\x45\x6D\x70\x74\x79","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x74","\x63\x6F\x70\x79","\x6F\x70\x65\x6E\x65\x72","\x6F\x70\x65\x6E\x46\x69\x6C\x65","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x63\x6C\x65\x61\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x4D\x69\x73\x73\x69\x6E\x67\x46\x69\x6C\x65","\x3A\x20","\x6D\x65\x73\x73\x61\x67\x65","\x61\x6C\x65\x72\x74","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x6F\x70\x65\x6E\x53\x74\x72\x69\x6E\x67","\x64\x61\x74\x61","\x6E\x65\x77","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x67\x65\x74\x49\x74\x65\x6D","\x72\x65\x70\x6C\x61\x63\x65","\x63\x6F\x6E\x66\x69\x72\x6D","\x73\x65\x74\x49\x74\x65\x6D","\x73\x61\x76\x65\x64","\x20","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6C\x65\x6E\x67\x74\x68","\x50\x4F\x53\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x73\x74\x61\x74\x75\x73","\x50\x72\x6F\x6A\x65\x63\x74\x20","\x6E\x61\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x20\x69\x73\x20\x6F\x70\x65\x6E\x69\x6E\x67\x20\x69\x6E\x20\x6E\x65\x77\x20\x77\x69\x6E\x64\x6F\x77\x21","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x69\x64","\x5F\x62\x6C\x61\x6E\x6B","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x65\x77\x26\x6E\x61\x6D\x65\x3D","\x73\x65\x6E\x64","\x64\x72\x61\x77\x69\x6E\x67\x54\x6F\x6F\x4C\x61\x72\x67\x65","\x70\x6F\x70\x75\x70","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74","\x73\x61\x76\x65","\x50\x55\x54","\x55\x70\x64\x61\x74\x65\x64\x20\x61\x74\x20","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x20\x28","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x66\x69\x6C\x65","\x73\x61\x76\x65\x41\x73","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x45\x72\x72\x6F\x72\x20\x63\x6C\x6F\x6E\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x63\x6C\x6F\x6E\x65\x64\x26\x6E\x61\x6D\x65\x3D","\x26\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x26\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x76\x61\x6C\x69\x64\x61\x74\x65","\x67\x65\x74\x52\x6F\x6F\x74","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x3C\x62\x72\x3E","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6C\x6F\x63\x6B","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x53\x74\x61\x72\x74\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x0A","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x46\x69\x6E\x61\x6C\x6C\x79\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x66\x69\x6C\x65\x5F\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6E\x6F\x41\x75\x64\x69\x6F\x53\x65\x6C\x65\x63\x74\x65\x64","\x64\x69\x67\x69\x74","\x77\x72\x6F\x6E\x67\x4D\x61\x78\x44\x69\x67\x69\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6E\x6F\x56\x61\x72\x69\x61\x62\x6C\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x77\x72\x6F\x6E\x67\x4D\x69\x6E\x44\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6F\x64\x62\x63\x5F\x69\x64","\x6E\x6F\x44\x61\x74\x61\x62\x61\x73\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x2D\x31","\x6E\x6F\x54\x72\x75\x6E\x6B\x53\x65\x6C\x65\x63\x74\x65\x64","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6E\x6F\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x6F\x6D\x6D\x61\x6E\x64","\x6E\x6F\x43\x6F\x6D\x6D\x61\x6E\x64\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x6E\x6F\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x53\x65\x6C\x65\x63\x74\x65\x64","\x64\x69\x67\x69\x74\x73","\x6E\x6F\x44\x69\x67\x69\x74\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x6E\x75\x6D\x62\x65\x72","\x6E\x6F\x4E\x75\x6D\x62\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x65\x78\x74","\x6E\x6F\x54\x65\x78\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x66\x69\x6C\x65","\x6E\x6F\x46\x69\x6C\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x6E\x6F\x47\x6F\x61\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x70\x68\x6F\x6E\x65","\x6E\x6F\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x73\x69\x70\x5F\x69\x64","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6E\x6F\x51\x75\x65\x75\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x6C\x69\x73\x74\x5F\x69\x64","\x6E\x6F\x4C\x69\x73\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x6E\x6F\x49\x6E\x74\x65\x72\x76\x61\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x61\x69\x6C\x62\x6F\x78","\x6E\x6F\x42\x6F\x78\x4E\x75\x6D\x62\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6E\x6F\x50\x72\x6F\x6A\x65\x63\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x6E\x6F\x41\x63\x63\x6F\x75\x6E\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x6F","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x73\x6D\x73","\x6B\x65\x79","\x6E\x6F\x4B\x65\x79\x53\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x67\x65\x74\x49\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x67\x65\x74\x56\x61\x6C\x75\x65","\x74\x65\x73\x74","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x49\x6E\x76\x61\x6C\x69\x64\x4F\x72\x54\x69\x6D\x65\x6F\x75\x74","\x2C","\x73\x70\x6C\x69\x74","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x41\x6C\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x49\x6E\x76\x61\x6C\x69\x64\x4F\x72\x44\x65\x66\x61\x75\x6C\x74","\x74\x72\x75\x65\x4F\x72\x46\x61\x6C\x73\x65","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x70\x75\x62\x6C\x69\x73\x68","\x50\x75\x62\x6C\x69\x73\x68\x65\x64\x20\x61\x74\x20","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x66\x69\x6C\x65","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x56\x61\x72\x69\x61\x62\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64\x20\x61\x74\x20","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x3A\x20","\x6E\x61\x6D\x65\x3D","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x55\x72\x6C","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x26","\x3D","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x68\x61\x64\x6F\x77","\x74\x69\x6C\x74","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x63\x75\x72\x76\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x72\x6F\x75\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x72\x61\x6E\x67\x65","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x73\x70\x61\x63\x69\x6E\x67","\x6C\x69\x6E\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x6C\x69\x67\x6E","\x67\x65\x74\x53\x74\x61\x74\x65","\x69\x73\x4C\x6F\x6F\x70","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x6D\x61\x78","\x68\x65\x69\x67\x68\x74","\x70\x78","\x74\x6F\x70","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x77\x69\x64\x74\x68","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x64\x69\x73\x70\x6C\x61\x79","\x6E\x6F\x6E\x65","\x68\x73\x70\x6C\x69\x74","\x76\x73\x70\x6C\x69\x74","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x4F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x44\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x46\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x48\x73\x70\x6C\x69\x74","\x67\x65\x56\x73\x70\x6C\x69\x74","\x30\x70\x78","\x72\x69\x67\x68\x74","\x6D\x65\x6E\x75\x62\x61\x72","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x74\x6F\x6F\x6C\x62\x61\x72","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x73\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x6F\x74\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x64\x64\x53\x70\x6C\x69\x74\x48\x61\x6E\x64\x6C\x65\x72","\x61","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D\x20\x67\x65\x53\x74\x61\x74\x75\x73","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x67\x65\x46\x6F\x6F\x74\x65\x72","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x72\x6D","\x66\x6F\x72\x6D","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x78","\x79","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x64\x69\x61\x6C\x6F\x67","\x49\x53\x5F\x56\x4D\x4C","\x63\x6C\x6F\x73\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x61\x6E\x69\x6D\x61\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x65\x78\x65\x63\x75\x74\x65","\x43\x61\x6D\x69\x6E\x6F","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x49\x53\x5F\x4D\x41\x43","\x6D\x65\x74\x61\x4B\x65\x79","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x65\x6E\x61\x62\x6C\x65\x64","\x66\x75\x6E\x63\x74","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x4B\x65\x79","\x65\x73\x63\x61\x70\x65","\x65\x6E\x74\x65\x72","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x65\x78\x70\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x67\x72\x69\x64","\x61\x62\x6F\x75\x74","\x6D\x75\x73\x74\x68\x61\x76\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67\x65\x64\x67\x65","\x70\x75\x73\x68","\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x65\x64\x67\x65"];EditorUi=function(_0xa0c8x1,_0xa0c8x2){this[_0xff26[0]]=_0xa0c8x1|| new Editor();this[_0xff26[1]]=_0xa0c8x2||document[_0xff26[3]](_0xff26[2]);var _0xa0c8x3=_0xa0c8x1[_0xff26[4]];var _0xa0c8x4=this;this[_0xff26[1]][_0xff26[6]][_0xff26[5]]=_0xff26[7]; new Image()[_0xff26[8]]=mxPopupMenu[_0xff26[10]][_0xff26[9]];if(mxConnectionHandler[_0xff26[10]][_0xff26[11]]!=null){ new Image()[_0xff26[8]]=mxConnectionHandler[_0xff26[10]][_0xff26[11]][_0xff26[8]]};this[_0xff26[12]]= new Actions(this);this[_0xff26[13]]= new Menus(this);this[_0xff26[14]]();this[_0xff26[15]]();this[_0xff26[16]]();var _0xa0c8x5=mxUtils[_0xff26[20]](this,function(_0xa0c8x6){if(_0xa0c8x6==null){_0xa0c8x6=window[_0xff26[17]]};if(this[_0xff26[18]](_0xa0c8x6)){return true};return _0xa0c8x3[_0xff26[19]]()});if(this[_0xff26[1]]==document[_0xff26[21]]){this[_0xff26[23]][_0xff26[22]]=_0xa0c8x5;this[_0xff26[23]][_0xff26[24]]=_0xa0c8x5;this[_0xff26[25]][_0xff26[22]]=_0xa0c8x5;this[_0xff26[25]][_0xff26[24]]=_0xa0c8x5;this[_0xff26[26]][_0xff26[22]]=_0xa0c8x5;this[_0xff26[26]][_0xff26[24]]=_0xa0c8x5;this[_0xff26[27]][_0xff26[22]]=_0xa0c8x5;this[_0xff26[27]][_0xff26[24]]=_0xa0c8x5;this[_0xff26[28]][_0xff26[22]]=_0xa0c8x5;this[_0xff26[28]][_0xff26[24]]=_0xa0c8x5};if(mxClient[_0xff26[29]]&&( typeof (document[_0xff26[30]])===_0xff26[31]||document[_0xff26[30]]<9)){mxEvent[_0xff26[33]](this[_0xff26[26]],_0xff26[32],_0xa0c8x5);mxEvent[_0xff26[33]](this[_0xff26[27]],_0xff26[32],_0xa0c8x5)}else {this[_0xff26[26]][_0xff26[34]]=_0xa0c8x5;this[_0xff26[27]][_0xff26[34]]=_0xa0c8x5};_0xa0c8x3[_0xff26[35]](this[_0xff26[26]]);_0xa0c8x3[_0xff26[15]]();_0xa0c8x3[_0xff26[1]][_0xff26[38]](_0xff26[36],_0xff26[37]);_0xa0c8x3[_0xff26[1]][_0xff26[6]][_0xff26[39]]=_0xff26[40];_0xa0c8x3[_0xff26[1]][_0xff26[6]][_0xff26[41]]=_0xff26[42]+_0xa0c8x1[_0xff26[43]]+_0xff26[44];_0xa0c8x3[_0xff26[1]][_0xff26[6]][_0xff26[45]]=_0xff26[46];_0xa0c8x3[_0xff26[1]][_0xff26[47]]();var _0xa0c8x7=_0xa0c8x3[_0xff26[48]];_0xa0c8x3[_0xff26[48]]=function(_0xa0c8x8,_0xa0c8x9,_0xa0c8xa){if(_0xa0c8x8==mxEvent[_0xff26[49]]){this[_0xff26[1]][_0xff26[47]]()};_0xa0c8x7[_0xff26[50]](this,arguments)};this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[52],_0xff26[53],_0xff26[54]],[[1,1],[1,1],[0,0]],[[0,0],[0,0],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[57],_0xff26[58],_0xff26[59],_0xff26[60],_0xff26[61],_0xff26[62],_0xff26[63]],[[1,1],[0,0],[0,1],[0,1],[0,1],[1,1],[0,1]],[[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[64],_0xff26[65]],[[1,1],[1,1]],[[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[66],_0xff26[67],_0xff26[68],_0xff26[69],_0xff26[70],_0xff26[71],_0xff26[72],_0xff26[73],_0xff26[74]],[[1,_0xff26[55]],[1,1],[1,_0xff26[55]],[1,1],[1,1],[1,1],[1,1],[1,1],[1,_0xff26[55]]],[[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[75]],[[1,1]],[[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[76],_0xff26[77]],[[1,1],[1,1]],[[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[78],_0xff26[79],_0xff26[80],_0xff26[81],_0xff26[82]],[[0,0],[1,2],[1,2],[1,2],[1,_0xff26[55]]],[[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[83],_0xff26[84]],[[1,1],[1,1]],[[1,_0xff26[55]],[1,_0xff26[55]]]);this[_0xff26[56]](_0xa0c8x3[_0xff26[51]],[_0xff26[85],_0xff26[86],_0xff26[87],_0xff26[88],_0xff26[89]],[[1,1],[1,1],[0,1],[0,1],[0,1]],[[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]],[1,_0xff26[55]]]);_0xa0c8x3[_0xff26[90]]=function(_0xa0c8x6,_0xa0c8xb){var _0xa0c8xc=[_0xff26[66],_0xff26[79],_0xff26[80],_0xff26[68],_0xff26[74],_0xff26[82]];var _0xa0c8xd= new mxEventObject(mxEvent.DOUBLE_CLICK,_0xff26[17],_0xa0c8x6,_0xff26[91],_0xa0c8xb);this[_0xff26[92]](_0xa0c8xd);if(this[_0xff26[93]]()&&!mxEvent[_0xff26[94]](_0xa0c8x6)&&!_0xa0c8xd[_0xff26[94]]()){if(this[_0xff26[96]]()[_0xff26[95]](_0xa0c8xb)){if(_0xa0c8xc[_0xff26[100]](_0xa0c8xb[_0xff26[99]][_0xff26[98]][_0xff26[97]])>=0){this[_0xff26[101]](_0xa0c8xb)}}else {if(this[_0xff26[96]]()[_0xff26[102]](_0xa0c8xb)){console[_0xff26[103]](_0xa0c8x4);console[_0xff26[103]](_0xa0c8xb);_0xa0c8x4[_0xff26[104]]( new GeneralDialog(_0xa0c8x4,_0xa0c8xb)[_0xff26[1]],320,280,true,true)}};_0xa0c8xd[_0xff26[105]]()}};_0xa0c8x3[_0xff26[107]][_0xff26[106]]=true;_0xa0c8x3[_0xff26[107]][_0xff26[108]]=mxUtils[_0xff26[20]](this,function(_0xa0c8xe,_0xa0c8xb,_0xa0c8x6){this[_0xff26[13]][_0xff26[109]](_0xa0c8xe,_0xa0c8xb,_0xa0c8x6)});_0xa0c8x1[_0xff26[111]][_0xff26[35]](this[_0xff26[110]]);mxEvent[_0xff26[113]](document,mxUtils[_0xff26[20]](this,function(_0xa0c8x6){_0xa0c8x3[_0xff26[107]][_0xff26[112]]()}));if(mxClient[_0xff26[114]]){mxEvent[_0xff26[33]](_0xa0c8x3[_0xff26[1]],_0xff26[115],mxUtils[_0xff26[20]](this,function(_0xa0c8x6){_0xa0c8x3[_0xff26[120]][_0xff26[119]]()[_0xff26[38]](_0xff26[116],_0xff26[117]+_0xa0c8x6[_0xff26[118]]+_0xff26[44]);_0xa0c8x3[_0xff26[120]][_0xff26[122]]()[_0xff26[6]][_0xff26[121]]=_0xff26[7]}));mxEvent[_0xff26[33]](_0xa0c8x3[_0xff26[1]],_0xff26[123],mxUtils[_0xff26[20]](this,function(_0xa0c8x6){_0xa0c8x3[_0xff26[120]][_0xff26[119]]()[_0xff26[124]](_0xff26[116]);_0xa0c8x3[_0xff26[125]]=true;_0xa0c8x3[_0xff26[126]](_0xa0c8x6[_0xff26[118]]);_0xa0c8x3[_0xff26[120]][_0xff26[122]]()[_0xff26[6]][_0xff26[121]]=_0xff26[127]}))};var _0xa0c8xf=this[_0xff26[128]](_0xa0c8x1);this[_0xff26[129]]=function(){return _0xa0c8xf};mxEvent[_0xff26[33]](window,_0xff26[130],mxUtils[_0xff26[20]](this,function(){this[_0xff26[15]]();_0xa0c8x3[_0xff26[131]]();this[_0xff26[0]][_0xff26[111]][_0xff26[132]](false);this[_0xff26[0]][_0xff26[111]][_0xff26[111]][_0xff26[131]]()}));this[_0xff26[35]]();this[_0xff26[133]]()};EditorUi[_0xff26[10]][_0xff26[134]]=(mxClient[_0xff26[114]])?16:8;EditorUi[_0xff26[10]][_0xff26[135]]=33;EditorUi[_0xff26[10]][_0xff26[136]]=36;EditorUi[_0xff26[10]][_0xff26[137]]=28;EditorUi[_0xff26[10]][_0xff26[138]]=204;EditorUi[_0xff26[10]][_0xff26[139]]=190;EditorUi[_0xff26[10]][_0xff26[35]]=function(){this[_0xff26[140]]();this[_0xff26[141]]();var _0xa0c8x10=this[_0xff26[12]][_0xff26[143]](_0xff26[142]);var _0xa0c8x11=function(){_0xa0c8x10[_0xff26[145]](!mxClipboard[_0xff26[144]]())};var _0xa0c8x12=mxClipboard[_0xff26[146]];mxClipboard[_0xff26[146]]=function(){_0xa0c8x12[_0xff26[50]](this,arguments);_0xa0c8x11()};var _0xa0c8x13=mxClipboard[_0xff26[147]];mxClipboard[_0xff26[147]]=function(){_0xa0c8x13[_0xff26[50]](this,arguments);_0xa0c8x11()}};EditorUi[_0xff26[10]][_0xff26[18]]=function(_0xa0c8x6){return false};EditorUi[_0xff26[10]][_0xff26[133]]=function(){try{if(window[_0xff26[148]]!=null&&window[_0xff26[148]][_0xff26[149]]!=null){window[_0xff26[148]][_0xff26[149]][_0xff26[161]](mxUtils[_0xff26[20]](this,function(_0xa0c8x14,_0xa0c8x15){try{var _0xa0c8x16=mxUtils[_0xff26[150]](_0xa0c8x14);this[_0xff26[0]][_0xff26[152]](_0xa0c8x16[_0xff26[151]]);this[_0xff26[0]][_0xff26[153]]=false;this[_0xff26[0]][_0xff26[155]][_0xff26[154]]();if(_0xa0c8x15!=null){this[_0xff26[0]][_0xff26[156]]=_0xa0c8x15}}catch(e){mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[157])+_0xff26[158]+e[_0xff26[159]])}}))}}catch(e){}};EditorUi[_0xff26[10]][_0xff26[162]]=function(_0xa0c8x14,_0xa0c8x15,_0xa0c8x17){try{var _0xa0c8x16=mxUtils[_0xff26[150]](_0xa0c8x14);this[_0xff26[0]][_0xff26[152]](_0xa0c8x16[_0xff26[151]]);this[_0xff26[0]][_0xff26[153]]=false;this[_0xff26[0]][_0xff26[155]][_0xff26[154]]();if(_0xa0c8x15!=null){this[_0xff26[0]][_0xff26[156]]=_0xa0c8x15};if(_0xa0c8x17!=null){this[_0xff26[0]][_0xff26[163]]=_0xa0c8x17}}catch(e){mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[157])+_0xff26[158]+e[_0xff26[159]])}};EditorUi[_0xff26[10]][_0xff26[164]]=function(_0xa0c8x18){var _0xa0c8x1=this[_0xff26[0]];if(_0xa0c8x18!=null){var _0xa0c8x14=mxUtils[_0xff26[166]](this[_0xff26[0]][_0xff26[165]]());try{if(useLocalStorage){if(localStorage[_0xff26[167]](_0xa0c8x18)!=null&&!mxUtils[_0xff26[169]](mxResources[_0xff26[143]](_0xff26[168],[_0xa0c8x18]))){return};localStorage[_0xff26[170]](_0xa0c8x18,_0xa0c8x14);this[_0xff26[0]][_0xff26[173]](mxResources[_0xff26[143]](_0xff26[171])+_0xff26[172]+ new Date())}else {console[_0xff26[103]](_0xa0c8x14[_0xff26[174]]);console[_0xff26[103]](MAX_REQUEST_SIZE);if(_0xa0c8x14[_0xff26[174]]<MAX_REQUEST_SIZE){_0xa0c8x14=encodeURIComponent(_0xa0c8x14);_0xa0c8x18=encodeURIComponent(_0xa0c8x18);var _0xa0c8x19= new XMLHttpRequest();_0xa0c8x19[_0xff26[133]](_0xff26[175],SAVE_URL,true);_0xa0c8x19[_0xff26[178]](_0xff26[176],_0xff26[177]);_0xa0c8x19[_0xff26[178]](_0xff26[179],_0xff26[180]+_0xa0c8x1[_0xff26[163]][_0xff26[181]]);_0xa0c8x19[_0xff26[182]]=function(_0xa0c8x1a){if(_0xa0c8x19[_0xff26[183]]===4){if(_0xa0c8x19[_0xff26[184]]===201){_0xa0c8x1[_0xff26[173]](_0xff26[185]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[186]]+_0xff26[189]);setTimeout(function(){window[_0xff26[133]](_0xff26[190]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[191]],_0xff26[192])},1500)}else {_0xa0c8x1[_0xff26[173]](_0xff26[193]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[194]][0][_0xff26[159]])}}};_0xa0c8x19[_0xff26[195]]=function(_0xa0c8x1a){mxUtils[_0xff26[160]](_0xa0c8x19[_0xff26[196]])};_0xa0c8x19[_0xff26[198]](_0xff26[197]+_0xa0c8x18)}else {mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[199]));mxUtils[_0xff26[200]](_0xa0c8x14);return}};this[_0xff26[0]][_0xff26[156]]=_0xa0c8x18;this[_0xff26[0]][_0xff26[153]]=false}catch(e){this[_0xff26[0]][_0xff26[173]](_0xff26[201])}}else {this[_0xff26[0]][_0xff26[173]](_0xff26[201])}};EditorUi[_0xff26[10]][_0xff26[202]]=function(_0xa0c8x18){var _0xa0c8x1=this[_0xff26[0]];if(_0xa0c8x18!=null){var _0xa0c8x14=mxUtils[_0xff26[166]](this[_0xff26[0]][_0xff26[165]]());try{if(useLocalStorage){if(localStorage[_0xff26[167]](_0xa0c8x18)!=null&&!mxUtils[_0xff26[169]](mxResources[_0xff26[143]](_0xff26[168],[_0xa0c8x18]))){return};localStorage[_0xff26[170]](_0xa0c8x18,_0xa0c8x14);this[_0xff26[0]][_0xff26[173]](mxResources[_0xff26[143]](_0xff26[171])+_0xff26[172]+ new Date())}else {console[_0xff26[103]](_0xa0c8x14[_0xff26[174]]);console[_0xff26[103]](MAX_REQUEST_SIZE);if(_0xa0c8x14[_0xff26[174]]<MAX_REQUEST_SIZE){_0xa0c8x14=encodeURIComponent(_0xa0c8x14);var _0xa0c8x19= new XMLHttpRequest();_0xa0c8x19[_0xff26[133]](_0xff26[203],SAVE_URL+this[_0xff26[0]][_0xff26[163]][_0xff26[191]],true);_0xa0c8x19[_0xff26[178]](_0xff26[176],_0xff26[177]);_0xa0c8x19[_0xff26[178]](_0xff26[179],_0xff26[180]+_0xa0c8x1[_0xff26[163]][_0xff26[181]]);_0xa0c8x19[_0xff26[182]]=function(_0xa0c8x1a){if(_0xa0c8x19[_0xff26[183]]===4){if(_0xa0c8x19[_0xff26[184]]===200){_0xa0c8x1[_0xff26[173]](_0xff26[204]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[205]]+_0xff26[206]+_0xa0c8x19[_0xff26[184]]+_0xff26[172]+_0xa0c8x19[_0xff26[196]]+_0xff26[44])}else {_0xa0c8x1[_0xff26[173]](_0xff26[207]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[194]][0][_0xff26[159]])}}};_0xa0c8x19[_0xff26[195]]=function(_0xa0c8x1a){mxUtils[_0xff26[160]](_0xa0c8x19[_0xff26[196]])};_0xa0c8x19[_0xff26[198]](_0xff26[208]+_0xa0c8x14)}else {mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[199]));mxUtils[_0xff26[200]](_0xa0c8x14);return}};this[_0xff26[0]][_0xff26[156]]=_0xa0c8x18;this[_0xff26[0]][_0xff26[153]]=false}catch(e){this[_0xff26[0]][_0xff26[173]](_0xff26[209])}}else {this[_0xff26[0]][_0xff26[173]](_0xff26[209])}};EditorUi[_0xff26[10]][_0xff26[210]]=function(_0xa0c8x18){var _0xa0c8x1=this[_0xff26[0]];if(_0xa0c8x18!=null){var _0xa0c8x14=mxUtils[_0xff26[166]](this[_0xff26[0]][_0xff26[165]]());try{if(useLocalStorage){if(localStorage[_0xff26[167]](_0xa0c8x18)!=null&&!mxUtils[_0xff26[169]](mxResources[_0xff26[143]](_0xff26[168],[_0xa0c8x18]))){return};localStorage[_0xff26[170]](_0xa0c8x18,_0xa0c8x14);this[_0xff26[0]][_0xff26[173]](mxResources[_0xff26[143]](_0xff26[171])+_0xff26[172]+ new Date())}else {console[_0xff26[103]](_0xa0c8x14[_0xff26[174]]);console[_0xff26[103]](MAX_REQUEST_SIZE);if(_0xa0c8x14[_0xff26[174]]<MAX_REQUEST_SIZE){_0xa0c8x14=encodeURIComponent(_0xa0c8x14);_0xa0c8x18=encodeURIComponent(_0xa0c8x18);var _0xa0c8x19= new XMLHttpRequest();_0xa0c8x19[_0xff26[133]](_0xff26[175],SAVE_URL,true);_0xa0c8x19[_0xff26[178]](_0xff26[176],_0xff26[177]);_0xa0c8x19[_0xff26[178]](_0xff26[179],_0xff26[180]+_0xa0c8x1[_0xff26[163]][_0xff26[181]]);_0xa0c8x19[_0xff26[182]]=function(_0xa0c8x1a){if(_0xa0c8x19[_0xff26[183]]===4){if(_0xa0c8x19[_0xff26[184]]===201){_0xa0c8x1[_0xff26[173]](_0xff26[185]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[186]]+_0xff26[189]);setTimeout(function(){window[_0xff26[133]](_0xff26[211]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[191]],_0xff26[192])},1500)}else {_0xa0c8x1[_0xff26[173]](_0xff26[212]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[194]][0][_0xff26[159]])}}};_0xa0c8x19[_0xff26[195]]=function(_0xa0c8x1a){mxUtils[_0xff26[160]](_0xa0c8x19[_0xff26[196]])};_0xa0c8x19[_0xff26[198]](_0xff26[213]+_0xa0c8x18+_0xff26[214]+_0xa0c8x14+_0xff26[215]+_0xa0c8x14)}else {mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[199]));mxUtils[_0xff26[200]](_0xa0c8x14);return}};this[_0xff26[0]][_0xff26[156]]=_0xa0c8x18;this[_0xff26[0]][_0xff26[153]]=false}catch(e){this[_0xff26[0]][_0xff26[173]](_0xff26[209])}}else {this[_0xff26[0]][_0xff26[173]](_0xff26[209])}};EditorUi[_0xff26[10]][_0xff26[216]]=function(_0xa0c8x1b,_0xa0c8x1c){var _0xa0c8x3=this[_0xff26[0]][_0xff26[4]];for(var _0xa0c8x1b=_0xa0c8x1b!=null?_0xa0c8x1b:_0xa0c8x3[_0xff26[218]][_0xff26[217]](),_0xa0c8x1c=_0xa0c8x1c!=null?_0xa0c8x1c:{},_0xa0c8x1d=true,_0xa0c8x1e=_0xa0c8x3[_0xff26[218]][_0xff26[219]](_0xa0c8x1b),_0xa0c8x1a=0;_0xa0c8x1a<_0xa0c8x1e;_0xa0c8x1a++){var _0xa0c8x1f=_0xa0c8x3[_0xff26[218]][_0xff26[220]](_0xa0c8x1b,_0xa0c8x1a),_0xa0c8x20=_0xa0c8x1c;_0xa0c8x3[_0xff26[221]](_0xa0c8x1f)&&(_0xa0c8x20={});_0xa0c8x20=this[_0xff26[216]](_0xa0c8x1f,_0xa0c8x20);_0xa0c8x20!=null?_0xa0c8x3[_0xff26[223]](_0xa0c8x1f,_0xa0c8x20[_0xff26[168]](/\n/g,_0xff26[222])):_0xa0c8x3[_0xff26[223]](_0xa0c8x1f,null);_0xa0c8x1d=_0xa0c8x1d&&_0xa0c8x20==null};_0xa0c8x1e=_0xff26[224];if(_0xa0c8x3[_0xff26[218]][_0xff26[102]](_0xa0c8x1b)){switch(_0xa0c8x1b[_0xff26[98]][_0xff26[281]]){case _0xff26[52]:_0xa0c8x1e=this[_0xff26[225]](_0xff26[52])?_0xff26[224]:_0xff26[226]+_0xff26[227];break;case _0xff26[53]:_0xa0c8x1e=this[_0xff26[225]](_0xff26[53])?_0xff26[224]:_0xff26[228]+_0xff26[227];break;case _0xff26[67]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[229])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[231])+_0xff26[227];break;case _0xff26[66]:;case _0xff26[68]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[229])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[231])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[232])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[233])+_0xff26[227];break;case _0xff26[74]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[229])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[231])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[234])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[235])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[236])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[237])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[238])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[233])+_0xff26[227];break;case _0xff26[82]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[239])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[235])+_0xff26[227];break;case _0xff26[76]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[240])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[241])+_0xff26[227];break;case _0xff26[60]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[242])!==_0xff26[243])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[244])+_0xff26[227];break;case _0xff26[64]:;case _0xff26[65]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[234])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[235])+_0xff26[227];break;case _0xff26[78]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[245])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[246])+_0xff26[227];break;case _0xff26[86]:;case _0xff26[87]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[247])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[248])+_0xff26[227];break;case _0xff26[79]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[249])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[250])+_0xff26[227];break;case _0xff26[69]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[251])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[252])+_0xff26[227];break;case _0xff26[70]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[253])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[254])+_0xff26[227];break;case _0xff26[71]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[255])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[256])+_0xff26[227];break;case _0xff26[75]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[257])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[258])+_0xff26[227];break;case _0xff26[84]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[259])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[260])+_0xff26[227];break;case _0xff26[60]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[261])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[262])+_0xff26[227];break;case _0xff26[59]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[263])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[262])+_0xff26[227];break;case _0xff26[61]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[264])!==_0xff26[243])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[265])+_0xff26[227];break;case _0xff26[63]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[266])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[267])+_0xff26[227];break;case _0xff26[80]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[268])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[269])+_0xff26[227];break;case _0xff26[81]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[268])!=_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[269])+_0xff26[227];break;case _0xff26[62]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[270])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[271])+_0xff26[227];break;case _0xff26[88]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[272])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[273])+_0xff26[227];break;case _0xff26[278]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[274])>0)?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[275])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[276])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[254])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[277])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[256])+_0xff26[227];break;case _0xff26[72]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[255])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[256])+_0xff26[227];break;case _0xff26[73]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[255])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[256])+_0xff26[227];_0xa0c8x1e+=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[279])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[280])+_0xff26[227];break;case _0xff26[77]:_0xa0c8x1e=(_0xa0c8x1b[_0xff26[98]][_0xff26[230]](_0xff26[279])!==_0xff26[224])?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[280])+_0xff26[227];break}};if(_0xa0c8x3[_0xff26[218]][_0xff26[95]](_0xa0c8x1b)){var _0xa0c8x21=_0xa0c8x3[_0xff26[218]][_0xff26[283]](_0xa0c8x1b[_0xff26[99]][_0xff26[282]]());switch(_0xa0c8x21[_0xff26[98]][_0xff26[281]]){case _0xff26[66]:var _0xa0c8x22=/^[0-9]{1,45}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;_0xa0c8x1e=_0xa0c8x1e+((_0xa0c8x22[_0xff26[285]](String(_0xa0c8x1b[_0xff26[284]]())))?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[286])+_0xff26[227]);break;case _0xff26[68]:var _0xa0c8x22=/^[0-9]{1,45}$|^[-]{1}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;var _0xa0c8x23=String(_0xa0c8x1b[_0xff26[284]]());var _0xa0c8x24=_0xa0c8x23[_0xff26[288]](_0xff26[287]);_0xa0c8x24[_0xff26[290]](function(_0xa0c8x25){_0xa0c8x1e=_0xa0c8x1e+((_0xa0c8x22[_0xff26[285]](_0xa0c8x25))?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[289])+_0xff26[227])});break;case _0xff26[74]:var _0xa0c8x22=/^(x|i|-)$/;var _0xa0c8x23=String(_0xa0c8x1b[_0xff26[284]]());_0xa0c8x1e=_0xa0c8x1e+((_0xa0c8x22[_0xff26[285]](_0xa0c8x23))?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[291])+_0xff26[227]);break;case _0xff26[79]:;case _0xff26[80]:;case _0xff26[81]:var _0xa0c8x22=/^(true){1}$|^(false){1}$/;_0xa0c8x1e=_0xa0c8x1e+((_0xa0c8x22[_0xff26[285]](String(_0xa0c8x1b[_0xff26[284]]())))?_0xff26[224]:mxResources[_0xff26[143]](_0xff26[292])+_0xff26[227]);break}};_0xa0c8x3[_0xff26[293]](_0xa0c8x1b)&&!_0xa0c8x1d&&(_0xa0c8x1e=_0xa0c8x1e+((mxResources[_0xff26[143]](_0xa0c8x3[_0xff26[294]])||_0xa0c8x3[_0xff26[294]])+_0xff26[227]));_0xa0c8x1e=_0xa0c8x3[_0xff26[218]][_0xff26[95]](_0xa0c8x1b)?_0xa0c8x1e+(_0xa0c8x3[_0xff26[296]](_0xa0c8x1b,_0xa0c8x3[_0xff26[218]][_0xff26[295]](_0xa0c8x1b,true),_0xa0c8x3[_0xff26[218]][_0xff26[295]](_0xa0c8x1b,false))||_0xff26[224]):_0xa0c8x1e+(_0xa0c8x3[_0xff26[297]](_0xa0c8x1b)||_0xff26[224]);_0xa0c8x1a=_0xa0c8x3[_0xff26[298]](_0xa0c8x1b,_0xa0c8x1c);_0xa0c8x1a!=null&&(_0xa0c8x1e=_0xa0c8x1e+_0xa0c8x1a);_0xa0c8x3[_0xff26[218]][_0xff26[299]](_0xa0c8x1b)==null&&_0xa0c8x3[_0xff26[120]][_0xff26[216]]();return _0xa0c8x1e[_0xff26[174]]>0||!_0xa0c8x1d?_0xa0c8x1e:null};EditorUi[_0xff26[10]][_0xff26[225]]=function(_0xa0c8x26){var _0xa0c8x3=this[_0xff26[0]][_0xff26[4]];var _0xa0c8x27=_0xa0c8x3[_0xff26[300]]();var _0xa0c8x28=0;_0xa0c8x27[_0xff26[301]][_0xff26[290]](function(_0xa0c8x29){if(_0xa0c8x3[_0xff26[218]][_0xff26[102]](_0xa0c8x29)&&_0xa0c8x29[_0xff26[98]][_0xff26[281]]==_0xa0c8x26){_0xa0c8x28++}});return _0xa0c8x28>1?false:true};EditorUi[_0xff26[10]][_0xff26[302]]=function(_0xa0c8x18){var _0xa0c8x1=this[_0xff26[0]];if(_0xa0c8x18!=null){var _0xa0c8x2a=this[_0xff26[216]]();if(_0xa0c8x2a===null){var _0xa0c8x14=mxUtils[_0xff26[166]](this[_0xff26[0]][_0xff26[165]]());try{if(useLocalStorage){if(localStorage[_0xff26[167]](_0xa0c8x18)!=null&&!mxUtils[_0xff26[169]](mxResources[_0xff26[143]](_0xff26[168],[_0xa0c8x18]))){return};localStorage[_0xff26[170]](_0xa0c8x18,_0xa0c8x14);this[_0xff26[0]][_0xff26[173]](mxResources[_0xff26[143]](_0xff26[171])+_0xff26[172]+ new Date())}else {console[_0xff26[103]](_0xa0c8x14[_0xff26[174]]);console[_0xff26[103]](MAX_REQUEST_SIZE);if(_0xa0c8x14[_0xff26[174]]<MAX_REQUEST_SIZE){_0xa0c8x14=encodeURIComponent(_0xa0c8x14);var _0xa0c8x19= new XMLHttpRequest();_0xa0c8x19[_0xff26[133]](_0xff26[203],SAVE_URL+this[_0xff26[0]][_0xff26[163]][_0xff26[191]],true);_0xa0c8x19[_0xff26[178]](_0xff26[176],_0xff26[177]);_0xa0c8x19[_0xff26[178]](_0xff26[179],_0xff26[180]+_0xa0c8x1[_0xff26[163]][_0xff26[181]]);_0xa0c8x19[_0xff26[182]]=function(_0xa0c8x1a){if(_0xa0c8x19[_0xff26[183]]===4){if(_0xa0c8x19[_0xff26[184]]===200){_0xa0c8x1[_0xff26[173]](_0xff26[303]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[205]]+_0xff26[206]+_0xa0c8x19[_0xff26[184]]+_0xff26[172]+_0xa0c8x19[_0xff26[196]]+_0xff26[44])}else {_0xa0c8x1[_0xff26[173]](_0xff26[207]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[194]][0][_0xff26[159]])}}};_0xa0c8x19[_0xff26[195]]=function(_0xa0c8x1a){mxUtils[_0xff26[160]](_0xa0c8x19[_0xff26[196]])};_0xa0c8x19[_0xff26[198]](_0xff26[208]+_0xa0c8x14+_0xff26[215]+_0xa0c8x14)}else {mxUtils[_0xff26[160]](mxResources[_0xff26[143]](_0xff26[199]));mxUtils[_0xff26[200]](_0xa0c8x14);return}};this[_0xff26[0]][_0xff26[156]]=_0xa0c8x18;this[_0xff26[0]][_0xff26[153]]=false}catch(e){this[_0xff26[0]][_0xff26[173]](_0xff26[304])}}else {_0xa0c8x1[_0xff26[173]](_0xff26[305])}}else {this[_0xff26[0]][_0xff26[173]](_0xff26[304])}};EditorUi[_0xff26[10]][_0xff26[239]]=function(_0xa0c8x18){var _0xa0c8x1=this[_0xff26[0]];if(_0xa0c8x18!=null){try{var _0xa0c8x19= new XMLHttpRequest();_0xa0c8x19[_0xff26[133]](_0xff26[175],VARIABLE_URL,true);_0xa0c8x19[_0xff26[178]](_0xff26[176],_0xff26[177]);_0xa0c8x19[_0xff26[178]](_0xff26[179],_0xff26[180]+_0xa0c8x1[_0xff26[163]][_0xff26[181]]);_0xa0c8x19[_0xff26[182]]=function(_0xa0c8x1a){if(_0xa0c8x19[_0xff26[183]]===4){if(_0xa0c8x19[_0xff26[184]]===201){_0xa0c8x1[_0xff26[173]](_0xff26[306]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[307]]+_0xff26[206]+_0xa0c8x19[_0xff26[184]]+_0xff26[172]+_0xa0c8x19[_0xff26[196]]+_0xff26[44])}else {_0xa0c8x1[_0xff26[173]](_0xff26[308]+JSON[_0xff26[188]](_0xa0c8x19[_0xff26[187]])[_0xff26[194]][0][_0xff26[159]])}}};_0xa0c8x19[_0xff26[195]]=function(_0xa0c8x1a){mxUtils[_0xff26[160]](_0xa0c8x19[_0xff26[196]])};_0xa0c8x19[_0xff26[198]](_0xff26[309]+_0xa0c8x18)}catch(e){this[_0xff26[0]][_0xff26[173]](_0xff26[310])}}else {this[_0xff26[0]][_0xff26[173]](_0xff26[310])}};EditorUi[_0xff26[10]][_0xff26[311]]=function(_0xa0c8x2b){var _0xa0c8x2c=(_0xa0c8x2b!=null)?_0xa0c8x2b:window[_0xff26[313]][_0xff26[312]];var _0xa0c8x2d=(_0xa0c8x2c[_0xff26[100]](_0xff26[314])>0)?1:0;for(var _0xa0c8x2e in urlParams){if(_0xa0c8x2d==0){_0xa0c8x2c+=_0xff26[314]}else {_0xa0c8x2c+=_0xff26[315]};_0xa0c8x2c+=_0xa0c8x2e+_0xff26[316]+urlParams[_0xa0c8x2e];_0xa0c8x2d++};return _0xa0c8x2c};EditorUi[_0xff26[10]][_0xff26[140]]=function(){var _0xa0c8x2f=this[_0xff26[12]][_0xff26[143]](_0xff26[317]);var _0xa0c8x30=this[_0xff26[12]][_0xff26[143]](_0xff26[318]);var _0xa0c8x31=this[_0xff26[0]][_0xff26[155]];var _0xa0c8x32=function(){_0xa0c8x2f[_0xff26[145]](_0xa0c8x31[_0xff26[319]]());_0xa0c8x30[_0xff26[145]](_0xa0c8x31[_0xff26[320]]())};_0xa0c8x31[_0xff26[33]](mxEvent.ADD,_0xa0c8x32);_0xa0c8x31[_0xff26[33]](mxEvent.UNDO,_0xa0c8x32);_0xa0c8x31[_0xff26[33]](mxEvent.REDO,_0xa0c8x32);_0xa0c8x31[_0xff26[33]](mxEvent.CLEAR,_0xa0c8x32);_0xa0c8x32()};EditorUi[_0xff26[10]][_0xff26[141]]=function(){var _0xa0c8x33=mxUtils[_0xff26[20]](this,function(){var _0xa0c8x3=this[_0xff26[0]][_0xff26[4]];var _0xa0c8x34=!_0xa0c8x3[_0xff26[321]]();var _0xa0c8x35=false;var _0xa0c8x36=false;var _0xa0c8x37=_0xa0c8x3[_0xff26[322]]();if(_0xa0c8x37!=null){for(var _0xa0c8x38=0;_0xa0c8x38<_0xa0c8x37[_0xff26[174]];_0xa0c8x38++){var _0xa0c8xb=_0xa0c8x37[_0xa0c8x38];if(_0xa0c8x3[_0xff26[96]]()[_0xff26[95]](_0xa0c8xb)){_0xa0c8x36=true};if(_0xa0c8x3[_0xff26[96]]()[_0xff26[102]](_0xa0c8xb)){_0xa0c8x35=true};if(_0xa0c8x36&&_0xa0c8x35){break}}};var _0xa0c8x39=[_0xff26[146],_0xff26[147],_0xff26[323],_0xff26[324],_0xff26[325],_0xff26[326],_0xff26[6],_0xff26[327],_0xff26[328],_0xff26[329],_0xff26[330],_0xff26[331],_0xff26[332],_0xff26[333],_0xff26[334]];for(var _0xa0c8x38=0;_0xa0c8x38<_0xa0c8x39[_0xff26[174]];_0xa0c8x38++){this[_0xff26[12]][_0xff26[143]](_0xa0c8x39[_0xa0c8x38])[_0xff26[145]](_0xa0c8x34)};this[_0xff26[12]][_0xff26[143]](_0xff26[335])[_0xff26[145]](_0xa0c8x36);this[_0xff26[12]][_0xff26[143]](_0xff26[336])[_0xff26[145]](_0xa0c8x35);this[_0xff26[12]][_0xff26[143]](_0xff26[337])[_0xff26[145]](_0xa0c8x35);this[_0xff26[12]][_0xff26[143]](_0xff26[339])[_0xff26[145]](_0xa0c8x3[_0xff26[338]]()>1);this[_0xff26[12]][_0xff26[143]](_0xff26[341])[_0xff26[145]](_0xa0c8x3[_0xff26[338]]()==1&&_0xa0c8x3[_0xff26[96]]()[_0xff26[219]](_0xa0c8x3[_0xff26[340]]())>0);var _0xa0c8x3a=_0xa0c8x35&&_0xa0c8x3[_0xff26[338]]()==1;this[_0xff26[12]][_0xff26[143]](_0xff26[342])[_0xff26[145]](_0xa0c8x3a&&_0xa0c8x3[_0xff26[96]]()[_0xff26[102]](_0xa0c8x3[_0xff26[96]]()[_0xff26[299]](_0xa0c8x3[_0xff26[340]]())));var _0xa0c8x3b=[_0xff26[343],_0xff26[344],_0xff26[345],_0xff26[346],_0xff26[255],_0xff26[347],_0xff26[348],_0xff26[349],_0xff26[350]];for(var _0xa0c8x38=0;_0xa0c8x38<_0xa0c8x3b[_0xff26[174]];_0xa0c8x38++){this[_0xff26[13]][_0xff26[143]](_0xa0c8x3b[_0xa0c8x38])[_0xff26[145]](_0xa0c8x34)};_0xa0c8x3b=[_0xff26[351],_0xff26[352],_0xff26[353]];for(var _0xa0c8x38=0;_0xa0c8x38<_0xa0c8x3b[_0xff26[174]];_0xa0c8x38++){this[_0xff26[13]][_0xff26[143]](_0xa0c8x3b[_0xa0c8x38])[_0xff26[145]](_0xa0c8x36)};this[_0xff26[12]][_0xff26[143]](_0xff26[354])[_0xff26[145]](_0xa0c8x36);this[_0xff26[13]][_0xff26[143]](_0xff26[355])[_0xff26[145]](_0xa0c8x3[_0xff26[338]]()>1);this[_0xff26[13]][_0xff26[143]](_0xff26[358])[_0xff26[145]](_0xa0c8x35||(_0xa0c8x36&&_0xa0c8x3[_0xff26[357]](_0xa0c8x3[_0xff26[120]][_0xff26[356]](_0xa0c8x3[_0xff26[340]]()))));this[_0xff26[13]][_0xff26[143]](_0xff26[361])[_0xff26[145]](_0xa0c8x3[_0xff26[359]]&&((_0xa0c8x3[_0xff26[120]][_0xff26[360]]!=null)||(_0xa0c8x3[_0xff26[338]]()==1&&_0xa0c8x3[_0xff26[221]](_0xa0c8x3[_0xff26[340]]()))));this[_0xff26[12]][_0xff26[143]](_0xff26[362])[_0xff26[145]](_0xa0c8x3[_0xff26[120]][_0xff26[360]]!=null);this[_0xff26[12]][_0xff26[143]](_0xff26[363])[_0xff26[145]](_0xa0c8x3[_0xff26[120]][_0xff26[360]]!=null);var _0xa0c8x3c=_0xa0c8x3[_0xff26[338]]()==1&&_0xa0c8x3[_0xff26[221]](_0xa0c8x3[_0xff26[340]]());this[_0xff26[12]][_0xff26[143]](_0xff26[364])[_0xff26[145]](_0xa0c8x3c);this[_0xff26[12]][_0xff26[143]](_0xff26[365])[_0xff26[145]](_0xa0c8x3c);this[_0xff26[12]][_0xff26[143]](_0xff26[366])[_0xff26[145]](_0xa0c8x3c);this[_0xff26[12]][_0xff26[143]](_0xff26[367])[_0xff26[145]](_0xa0c8x3[_0xff26[338]]()==1);this[_0xff26[12]][_0xff26[143]](_0xff26[369])[_0xff26[145]](_0xa0c8x3[_0xff26[338]]()==1&&_0xa0c8x3[_0xff26[368]](_0xa0c8x3[_0xff26[340]]())!=null)});this[_0xff26[0]][_0xff26[4]][_0xff26[370]]()[_0xff26[33]](mxEvent.CHANGE,_0xa0c8x33);_0xa0c8x33()};EditorUi[_0xff26[10]][_0xff26[15]]=function(){var _0xa0c8x3d=mxClient[_0xff26[29]]&&(document[_0xff26[30]]==null||document[_0xff26[30]]==5);var _0xa0c8x3e=this[_0xff26[1]][_0xff26[371]];var _0xa0c8x3f=this[_0xff26[1]][_0xff26[372]];if(this[_0xff26[1]]==document[_0xff26[21]]){_0xa0c8x3e=document[_0xff26[21]][_0xff26[371]]||document[_0xff26[151]][_0xff26[371]];_0xa0c8x3f=(_0xa0c8x3d)?document[_0xff26[21]][_0xff26[372]]||document[_0xff26[151]][_0xff26[372]]:document[_0xff26[151]][_0xff26[372]]};var _0xa0c8x40=Math[_0xff26[374]](0,Math[_0xff26[373]](this[_0xff26[138]],_0xa0c8x3e-this[_0xff26[134]]-20));var _0xa0c8x41=Math[_0xff26[374]](0,Math[_0xff26[373]](this[_0xff26[139]],_0xa0c8x3f-this[_0xff26[135]]-this[_0xff26[136]]-this[_0xff26[137]]-this[_0xff26[134]]-1));this[_0xff26[23]][_0xff26[6]][_0xff26[375]]=this[_0xff26[135]]+_0xff26[376];this[_0xff26[25]][_0xff26[6]][_0xff26[377]]=this[_0xff26[135]]+_0xff26[376];this[_0xff26[25]][_0xff26[6]][_0xff26[375]]=this[_0xff26[136]]+_0xff26[376];var _0xa0c8x42=this[_0xff26[135]]+this[_0xff26[136]];if(!mxClient[_0xff26[378]]){_0xa0c8x42+=1};this[_0xff26[27]][_0xff26[6]][_0xff26[377]]=_0xa0c8x42+_0xff26[376];this[_0xff26[27]][_0xff26[6]][_0xff26[379]]=_0xa0c8x40+_0xff26[376];this[_0xff26[110]][_0xff26[6]][_0xff26[379]]=_0xa0c8x40+_0xff26[376];this[_0xff26[110]][_0xff26[6]][_0xff26[375]]=_0xa0c8x41+_0xff26[376];this[_0xff26[110]][_0xff26[6]][_0xff26[380]]=this[_0xff26[137]]+_0xff26[376];this[_0xff26[26]][_0xff26[6]][_0xff26[381]]=(_0xa0c8x40+this[_0xff26[134]])+_0xff26[376];this[_0xff26[26]][_0xff26[6]][_0xff26[377]]=this[_0xff26[27]][_0xff26[6]][_0xff26[377]];this[_0xff26[28]][_0xff26[6]][_0xff26[375]]=this[_0xff26[137]]+_0xff26[376];this[_0xff26[28]][_0xff26[6]][_0xff26[382]]=_0xff26[383];this[_0xff26[384]][_0xff26[6]][_0xff26[377]]=this[_0xff26[27]][_0xff26[6]][_0xff26[377]];this[_0xff26[384]][_0xff26[6]][_0xff26[380]]=this[_0xff26[110]][_0xff26[6]][_0xff26[380]];this[_0xff26[384]][_0xff26[6]][_0xff26[381]]=_0xa0c8x40+_0xff26[376];this[_0xff26[385]][_0xff26[6]][_0xff26[379]]=this[_0xff26[27]][_0xff26[6]][_0xff26[379]];this[_0xff26[385]][_0xff26[6]][_0xff26[380]]=(_0xa0c8x41+this[_0xff26[137]])+_0xff26[376];if(_0xa0c8x3d){this[_0xff26[23]][_0xff26[6]][_0xff26[379]]=_0xa0c8x3e+_0xff26[376];this[_0xff26[25]][_0xff26[6]][_0xff26[379]]=this[_0xff26[23]][_0xff26[6]][_0xff26[379]];var _0xa0c8x43=(_0xa0c8x3f-_0xa0c8x41-this[_0xff26[134]]-this[_0xff26[137]]-this[_0xff26[135]]-this[_0xff26[136]]);this[_0xff26[27]][_0xff26[6]][_0xff26[375]]=_0xa0c8x43+_0xff26[376];this[_0xff26[26]][_0xff26[6]][_0xff26[379]]=(_0xa0c8x3e-_0xa0c8x40-this[_0xff26[134]])+_0xff26[376];var _0xa0c8x44=(_0xa0c8x3f-this[_0xff26[137]]-this[_0xff26[135]]-this[_0xff26[136]]);this[_0xff26[26]][_0xff26[6]][_0xff26[375]]=_0xa0c8x44+_0xff26[376];this[_0xff26[28]][_0xff26[6]][_0xff26[379]]=this[_0xff26[23]][_0xff26[6]][_0xff26[379]];this[_0xff26[384]][_0xff26[6]][_0xff26[375]]=_0xa0c8x44+_0xff26[376]}else {this[_0xff26[27]][_0xff26[6]][_0xff26[380]]=(_0xa0c8x41+this[_0xff26[134]]+this[_0xff26[137]])+_0xff26[376];this[_0xff26[26]][_0xff26[6]][_0xff26[380]]=this[_0xff26[110]][_0xff26[6]][_0xff26[380]]}};EditorUi[_0xff26[10]][_0xff26[14]]=function(){this[_0xff26[23]]=this[_0xff26[387]](_0xff26[386]);this[_0xff26[25]]=this[_0xff26[387]](_0xff26[388]);this[_0xff26[27]]=this[_0xff26[387]](_0xff26[389]);this[_0xff26[110]]=this[_0xff26[387]](_0xff26[390]);this[_0xff26[26]]=this[_0xff26[387]](_0xff26[391]);this[_0xff26[28]]=this[_0xff26[387]](_0xff26[392]);this[_0xff26[384]]=this[_0xff26[387]](_0xff26[393]);this[_0xff26[385]]=this[_0xff26[387]](_0xff26[394]);this[_0xff26[23]][_0xff26[6]][_0xff26[377]]=_0xff26[395];this[_0xff26[23]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[23]][_0xff26[6]][_0xff26[396]]=_0xff26[395];this[_0xff26[25]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[25]][_0xff26[6]][_0xff26[396]]=_0xff26[395];this[_0xff26[27]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[110]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[26]][_0xff26[6]][_0xff26[396]]=_0xff26[395];this[_0xff26[28]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[28]][_0xff26[6]][_0xff26[396]]=_0xff26[395];this[_0xff26[28]][_0xff26[6]][_0xff26[380]]=_0xff26[395];this[_0xff26[385]][_0xff26[6]][_0xff26[381]]=_0xff26[395];this[_0xff26[385]][_0xff26[6]][_0xff26[375]]=this[_0xff26[134]]+_0xff26[376];this[_0xff26[384]][_0xff26[6]][_0xff26[379]]=this[_0xff26[134]]+_0xff26[376]};EditorUi[_0xff26[10]][_0xff26[16]]=function(){this[_0xff26[397]]=this[_0xff26[13]][_0xff26[399]](this[_0xff26[387]](_0xff26[398]));this[_0xff26[23]][_0xff26[400]](this[_0xff26[397]][_0xff26[1]]);this[_0xff26[401]]=this[_0xff26[403]](this[_0xff26[387]](_0xff26[402]));this[_0xff26[25]][_0xff26[400]](this[_0xff26[401]][_0xff26[1]]);this[_0xff26[404]]=this[_0xff26[405]](this[_0xff26[27]]);this[_0xff26[28]][_0xff26[400]](this[_0xff26[406]]());this[_0xff26[407]]=this[_0xff26[408]]();this[_0xff26[0]][_0xff26[33]](_0xff26[409],mxUtils[_0xff26[20]](this,function(){this[_0xff26[411]](this[_0xff26[0]][_0xff26[410]]())}));this[_0xff26[411]](this[_0xff26[0]][_0xff26[410]]());this[_0xff26[397]][_0xff26[1]][_0xff26[400]](this[_0xff26[407]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[23]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[25]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[27]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[110]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[26]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[28]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[384]]);this[_0xff26[1]][_0xff26[400]](this[_0xff26[385]]);this[_0xff26[412]](this[_0xff26[384]],true,0,mxUtils[_0xff26[20]](this,function(_0xa0c8x45){this[_0xff26[138]]=_0xa0c8x45;this[_0xff26[15]]();this[_0xff26[0]][_0xff26[4]][_0xff26[131]]();this[_0xff26[0]][_0xff26[111]][_0xff26[132]](false);this[_0xff26[0]][_0xff26[111]][_0xff26[111]][_0xff26[131]]()}));this[_0xff26[412]](this[_0xff26[385]],false,this[_0xff26[137]],mxUtils[_0xff26[20]](this,function(_0xa0c8x45){this[_0xff26[139]]=_0xa0c8x45;this[_0xff26[15]]();this[_0xff26[0]][_0xff26[111]][_0xff26[132]](false);this[_0xff26[0]][_0xff26[111]][_0xff26[111]][_0xff26[131]]()}))};EditorUi[_0xff26[10]][_0xff26[408]]=function(){var _0xa0c8x2=document[_0xff26[414]](_0xff26[413]);_0xa0c8x2[_0xff26[415]]=_0xff26[416];return _0xa0c8x2};EditorUi[_0xff26[10]][_0xff26[408]]=function(){var _0xa0c8x2=document[_0xff26[414]](_0xff26[413]);_0xa0c8x2[_0xff26[415]]=_0xff26[416];return _0xa0c8x2};EditorUi[_0xff26[10]][_0xff26[411]]=function(_0xa0c8x45){this[_0xff26[407]][_0xff26[417]]=_0xa0c8x45};EditorUi[_0xff26[10]][_0xff26[403]]=function(_0xa0c8x2){return new Toolbar(this,_0xa0c8x2)};EditorUi[_0xff26[10]][_0xff26[405]]=function(_0xa0c8x2){return new Sidebar(this,_0xa0c8x2)};EditorUi[_0xff26[10]][_0xff26[406]]=function(){return this[_0xff26[387]](_0xff26[418])};EditorUi[_0xff26[10]][_0xff26[387]]=function(_0xa0c8x46){var _0xa0c8x47=document[_0xff26[414]](_0xff26[419]);_0xa0c8x47[_0xff26[415]]=_0xa0c8x46;return _0xa0c8x47};EditorUi[_0xff26[10]][_0xff26[420]]=function(_0xa0c8x46){var _0xa0c8x47=document[_0xff26[414]](_0xa0c8x46);return _0xa0c8x47};EditorUi[_0xff26[10]][_0xff26[421]]=function(_0xa0c8x46){var _0xa0c8x47=document[_0xff26[414]](_0xff26[422]);_0xa0c8x47[_0xff26[415]]=_0xa0c8x46;return _0xa0c8x47};EditorUi[_0xff26[10]][_0xff26[412]]=function(_0xa0c8x47,_0xa0c8x48,_0xa0c8x49,_0xa0c8x4a){var _0xa0c8x4b=null;var _0xa0c8x4c=null;function _0xa0c8x4d(){return parseInt(((_0xa0c8x48)?_0xa0c8x47[_0xff26[6]][_0xff26[381]]:_0xa0c8x47[_0xff26[6]][_0xff26[380]]))}function _0xa0c8x4e(_0xa0c8x6){if(_0xa0c8x4b!=null){var _0xa0c8x4f= new mxPoint(mxEvent[_0xff26[423]](_0xa0c8x6),mxEvent[_0xff26[424]](_0xa0c8x6));_0xa0c8x4a(Math[_0xff26[374]](0,_0xa0c8x4c+((_0xa0c8x48)?(_0xa0c8x4f[_0xff26[425]]-_0xa0c8x4b[_0xff26[425]]):(_0xa0c8x4b[_0xff26[426]]-_0xa0c8x4f[_0xff26[426]]))-_0xa0c8x49));mxEvent[_0xff26[105]](_0xa0c8x6)}}function _0xa0c8x50(_0xa0c8x6){_0xa0c8x4e(_0xa0c8x6);_0xa0c8x4b=null;_0xa0c8x4c=null}mxEvent[_0xff26[113]](_0xa0c8x47,function(_0xa0c8x6){_0xa0c8x4b= new mxPoint(mxEvent[_0xff26[423]](_0xa0c8x6),mxEvent[_0xff26[424]](_0xa0c8x6));_0xa0c8x4c=_0xa0c8x4d();mxEvent[_0xff26[105]](_0xa0c8x6)});mxEvent[_0xff26[33]](document,_0xff26[427],_0xa0c8x4e);mxEvent[_0xff26[33]](document,_0xff26[428],_0xa0c8x4e);mxEvent[_0xff26[33]](document,_0xff26[429],_0xa0c8x50);mxEvent[_0xff26[33]](document,_0xff26[430],_0xa0c8x50)};EditorUi[_0xff26[10]][_0xff26[104]]=function(_0xa0c8x47,_0xa0c8x3e,_0xa0c8x3f,_0xa0c8x51,_0xa0c8x52,_0xa0c8x53){this[_0xff26[431]]();this[_0xff26[432]]= new Dialog(this,_0xa0c8x47,_0xa0c8x3e,(mxClient[_0xff26[433]])?_0xa0c8x3f-12:_0xa0c8x3f,_0xa0c8x51,_0xa0c8x52,_0xa0c8x53)};EditorUi[_0xff26[10]][_0xff26[431]]=function(){if(this[_0xff26[432]]!=null){this[_0xff26[432]][_0xff26[434]]();this[_0xff26[432]]=null;this[_0xff26[0]][_0xff26[4]][_0xff26[1]][_0xff26[47]]()}};EditorUi[_0xff26[10]][_0xff26[435]]=function(_0xa0c8x54){if(!_0xa0c8x54&&this[_0xff26[0]][_0xff26[156]]!=null){this[_0xff26[202]](this[_0xff26[0]][_0xff26[436]]())}else {this[_0xff26[104]]( new SaveDialog(this)[_0xff26[1]],300,100,true,true)}};EditorUi[_0xff26[10]][_0xff26[437]]=function(_0xa0c8x54){if(!_0xa0c8x54&&this[_0xff26[0]][_0xff26[156]]!=null){this[_0xff26[302]](this[_0xff26[0]][_0xff26[436]]())}else {}};EditorUi[_0xff26[10]][_0xff26[438]]=function(_0xa0c8x55,_0xa0c8x56,_0xa0c8x57){var _0xa0c8x3=this[_0xff26[0]][_0xff26[4]];var _0xa0c8xb=_0xa0c8x3[_0xff26[340]]();_0xa0c8x56=this[_0xff26[439]]!=null?this[_0xff26[439]]:_0xa0c8x56;_0xa0c8x3[_0xff26[96]]()[_0xff26[440]]();try{_0xa0c8x55[_0xff26[441]](_0xa0c8x3[_0xff26[300]](),_0xa0c8xb)}catch(e){throw e}finally{if(_0xa0c8x56&&navigator[_0xff26[443]][_0xff26[100]](_0xff26[442])<0){var _0xa0c8x58= new mxMorphing(_0xa0c8x3);_0xa0c8x58[_0xff26[33]](mxEvent.DONE,mxUtils[_0xff26[20]](this,function(){_0xa0c8x3[_0xff26[96]]()[_0xff26[444]]()}));_0xa0c8x58[_0xff26[445]]()}else {_0xa0c8x3[_0xff26[96]]()[_0xff26[444]]()}}};EditorUi[_0xff26[10]][_0xff26[128]]=function(_0xa0c8x1){var _0xa0c8x3=this[_0xff26[0]][_0xff26[4]];var _0xa0c8xf= new mxKeyHandler(_0xa0c8x3);_0xa0c8xf[_0xff26[446]]=function(_0xa0c8x6){return mxEvent[_0xff26[446]](_0xa0c8x6)||(mxClient[_0xff26[447]]&&_0xa0c8x6[_0xff26[448]])};function _0xa0c8x59(_0xa0c8x5a){if(!_0xa0c8x3[_0xff26[321]]()){var _0xa0c8x49=0;var _0xa0c8x5b=0;if(_0xa0c8x5a==37){_0xa0c8x49= -1}else {if(_0xa0c8x5a==38){_0xa0c8x5b= -1}else {if(_0xa0c8x5a==39){_0xa0c8x49=1}else {if(_0xa0c8x5a==40){_0xa0c8x5b=1}}}};_0xa0c8x3[_0xff26[449]](_0xa0c8x3[_0xff26[322]](),_0xa0c8x49,_0xa0c8x5b);_0xa0c8x3[_0xff26[450]](_0xa0c8x3[_0xff26[340]]())}}var _0xa0c8x5c=mxUtils[_0xff26[20]](this,function(_0xa0c8x5d,_0xa0c8x5e,_0xa0c8x2e,_0xa0c8x5f){var _0xa0c8x60=this[_0xff26[12]][_0xff26[143]](_0xa0c8x2e);if(_0xa0c8x60!=null){var _0xa0c8x1f=function(){if(_0xa0c8x60[_0xff26[451]]){_0xa0c8x60[_0xff26[452]]()}};if(_0xa0c8x5e){if(_0xa0c8x5f){_0xa0c8xf[_0xff26[453]](_0xa0c8x5d,_0xa0c8x1f)}else {_0xa0c8xf[_0xff26[454]](_0xa0c8x5d,_0xa0c8x1f)}}else {if(_0xa0c8x5f){_0xa0c8xf[_0xff26[455]](_0xa0c8x5d,_0xa0c8x1f)}else {_0xa0c8xf[_0xff26[456]](_0xa0c8x5d,_0xa0c8x1f)}}}});var _0xa0c8x61=this;var _0xa0c8x62=_0xa0c8xf[_0xff26[457]];_0xa0c8xf[_0xff26[457]]=function(_0xa0c8x6){_0xa0c8x61[_0xff26[431]]();_0xa0c8x62[_0xff26[50]](this,arguments)};_0xa0c8xf[_0xff26[458]]=function(){};_0xa0c8xf[_0xff26[456]](8,function(){_0xa0c8x3[_0xff26[459]](true)});_0xa0c8xf[_0xff26[456]](13,function(){_0xa0c8x3[_0xff26[459]](false)});_0xa0c8xf[_0xff26[456]](33,function(){_0xa0c8x3[_0xff26[363]]()});_0xa0c8xf[_0xff26[456]](34,function(){_0xa0c8x3[_0xff26[364]]()});_0xa0c8xf[_0xff26[456]](36,function(){_0xa0c8x3[_0xff26[362]]()});_0xa0c8xf[_0xff26[456]](35,function(){_0xa0c8x3[_0xff26[15]]()});_0xa0c8xf[_0xff26[456]](37,function(){_0xa0c8x59(37)});_0xa0c8xf[_0xff26[456]](38,function(){_0xa0c8x59(38)});_0xa0c8xf[_0xff26[456]](39,function(){_0xa0c8x59(39)});_0xa0c8xf[_0xff26[456]](40,function(){_0xa0c8x59(40)});_0xa0c8xf[_0xff26[456]](113,function(){_0xa0c8x3[_0xff26[101]]()});_0xa0c8x5c(46,false,_0xff26[323]);_0xa0c8x5c(82,true,_0xff26[333]);_0xa0c8x5c(83,true,_0xff26[202]);_0xa0c8x5c(83,true,_0xff26[210],true);_0xa0c8x5c(107,false,_0xff26[460]);_0xa0c8x5c(109,false,_0xff26[461]);_0xa0c8x5c(65,true,_0xff26[462]);_0xa0c8x5c(86,true,_0xff26[463],true);_0xa0c8x5c(69,true,_0xff26[464],true);_0xa0c8x5c(69,true,_0xff26[465]);_0xa0c8x5c(66,true,_0xff26[329]);_0xa0c8x5c(70,true,_0xff26[328]);_0xa0c8x5c(68,true,_0xff26[324]);_0xa0c8x5c(90,true,_0xff26[317]);_0xa0c8x5c(89,true,_0xff26[318]);_0xa0c8x5c(88,true,_0xff26[146]);_0xa0c8x5c(67,true,_0xff26[147]);_0xa0c8x5c(81,true,_0xff26[466]);_0xa0c8x5c(86,true,_0xff26[142]);_0xa0c8x5c(71,true,_0xff26[339]);_0xa0c8x5c(71,true,_0xff26[467],true);_0xa0c8x5c(85,true,_0xff26[341]);_0xa0c8x5c(112,false,_0xff26[468]);_0xa0c8x5c(80,true,_0xff26[302],true);return _0xa0c8xf};EditorUi[_0xff26[10]][_0xff26[56]]=function(_0xa0c8x3,_0xa0c8x37,_0xa0c8x63,_0xa0c8x64){for(var _0xa0c8x38=0;_0xa0c8x38<_0xa0c8x37[_0xff26[174]];_0xa0c8x38++){_0xa0c8x3[_0xff26[471]]( new mxMultiplicity(true,_0xa0c8x37[_0xa0c8x38],null,null,_0xa0c8x63[_0xa0c8x38][0],_0xa0c8x63[_0xa0c8x38][1],null,mxResources[_0xff26[143]](_0xa0c8x37[_0xa0c8x38])+mxResources[_0xff26[143]](_0xff26[469])+_0xa0c8x63[_0xa0c8x38][0]+mxResources[_0xff26[143]](_0xff26[470]),null));_0xa0c8x3[_0xff26[471]]( new mxMultiplicity(false,_0xa0c8x37[_0xa0c8x38],null,null,_0xa0c8x64[_0xa0c8x38][0],_0xa0c8x64[_0xa0c8x38][1],null,mxResources[_0xff26[143]](_0xa0c8x37[_0xa0c8x38])+mxResources[_0xff26[143]](_0xff26[469])+_0xa0c8x64[_0xa0c8x38][0]+mxResources[_0xff26[143]](_0xff26[472]),null))}} \ No newline at end of file +var _0x79fa=["\x65\x64\x69\x74\x6F\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x45\x64\x69\x74\x6F\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x67\x72\x61\x70\x68","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x73\x72\x63","\x73\x75\x62\x6D\x65\x6E\x75\x49\x6D\x61\x67\x65","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x61\x63\x74\x69\x6F\x6E\x73","\x6D\x65\x6E\x75\x73","\x63\x72\x65\x61\x74\x65\x44\x69\x76\x73","\x72\x65\x66\x72\x65\x73\x68","\x63\x72\x65\x61\x74\x65\x55\x69","\x65\x76\x65\x6E\x74","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x41\x6C\x6C\x6F\x77\x65\x64","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x62\x69\x6E\x64","\x62\x6F\x64\x79","\x6F\x6E\x73\x65\x6C\x65\x63\x74\x73\x74\x61\x72\x74","\x6D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x6E\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x74\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x64\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x66\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x49\x53\x5F\x49\x45","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x4D\x6F\x64\x65","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6F\x6E\x63\x6F\x6E\x74\x65\x78\x74\x6D\x65\x6E\x75","\x69\x6E\x69\x74","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x75\x72\x73\x6F\x72","\x64\x65\x66\x61\x75\x6C\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x67\x72\x69\x64\x49\x6D\x61\x67\x65","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x2D\x31\x70\x78\x20\x2D\x31\x70\x78","\x66\x6F\x63\x75\x73","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x61\x70\x70\x6C\x79","\x6D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x73\x74\x61\x72\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x65\x6E\x64","\x6E","\x63\x72\x65\x61\x74\x65\x4D\x75\x6C\x74\x69\x70\x6C\x69\x63\x69\x74\x69\x65\x73","\x61\x6E\x73\x77\x65\x72","\x68\x61\x6E\x67\x75\x70","\x64\x69\x61\x6C","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x71\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x73\x65\x74","\x6D\x61\x74\x68","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x6D\x65\x6E\x75","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x74\x74\x73","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x72\x65\x63\x6F\x72\x64","\x64\x61\x74\x61\x62\x61\x73\x65","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x67\x6F\x74\x6F\x63","\x67\x6F\x74\x6F\x69\x66","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x67\x6F\x74\x6F\x69\x66\x6D\x75\x6C\x74\x69\x74\x69\x6D\x65","\x76\x73\x77\x69\x74\x63\x68","\x71\x75\x65\x75\x65\x6C\x6F\x67","\x67\x6F\x61\x6C","\x6E\x6F\x6F\x70","\x73\x79\x73\x74\x65\x6D","\x61\x67\x69","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x65\x6C\x6C","\x66\x69\x72\x65\x45\x76\x65\x6E\x74","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x74\x61\x67\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x73\x6F\x75\x72\x63\x65","\x69\x6E\x64\x65\x78\x4F\x66","\x73\x74\x61\x72\x74\x45\x64\x69\x74\x69\x6E\x67\x41\x74\x43\x65\x6C\x6C","\x69\x73\x56\x65\x72\x74\x65\x78","\x6C\x6F\x67","\x73\x68\x6F\x77\x44\x69\x61\x6C\x6F\x67","\x63\x6F\x6E\x73\x75\x6D\x65","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x6F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x6F\x75\x74\x6C\x69\x6E\x65","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x67\x65\x73\x74\x75\x72\x65\x63\x68\x61\x6E\x67\x65","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x73\x63\x61\x6C\x65\x28","\x73\x63\x61\x6C\x65","\x67\x65\x74\x44\x72\x61\x77\x50\x61\x6E\x65","\x76\x69\x65\x77","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x73\x74\x75\x72\x65\x65\x6E\x64","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x7A\x6F\x6F\x6D\x54\x6F\x43\x65\x6E\x74\x65\x72","\x7A\x6F\x6F\x6D","\x76\x69\x73\x69\x62\x6C\x65","\x63\x72\x65\x61\x74\x65\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x4B\x65\x79\x48\x61\x6E\x64\x6C\x65\x72","\x72\x65\x73\x69\x7A\x65","\x73\x69\x7A\x65\x44\x69\x64\x43\x68\x61\x6E\x67\x65","\x75\x70\x64\x61\x74\x65","\x6F\x70\x65\x6E","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6D\x65\x6E\x75\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x74\x6F\x6F\x6C\x62\x61\x72\x48\x65\x69\x67\x68\x74","\x66\x6F\x6F\x74\x65\x72\x48\x65\x69\x67\x68\x74","\x68\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x76\x73\x70\x6C\x69\x74\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x64\x64\x55\x6E\x64\x6F\x4C\x69\x73\x74\x65\x6E\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x73\x74\x65","\x67\x65\x74","\x69\x73\x45\x6D\x70\x74\x79","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x74","\x63\x6F\x70\x79","\x6F\x70\x65\x6E\x65\x72","\x6F\x70\x65\x6E\x46\x69\x6C\x65","\x70\x61\x72\x73\x65\x58\x6D\x6C","\x64\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x73\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x6D\x6F\x64\x69\x66\x69\x65\x64","\x63\x6C\x65\x61\x72","\x75\x6E\x64\x6F\x4D\x61\x6E\x61\x67\x65\x72","\x66\x69\x6C\x65\x6E\x61\x6D\x65","\x69\x6E\x76\x61\x6C\x69\x64\x4F\x72\x4D\x69\x73\x73\x69\x6E\x67\x46\x69\x6C\x65","\x3A\x20","\x6D\x65\x73\x73\x61\x67\x65","\x61\x6C\x65\x72\x74","\x73\x65\x74\x43\x6F\x6E\x73\x75\x6D\x65\x72","\x6F\x70\x65\x6E\x53\x74\x72\x69\x6E\x67","\x64\x61\x74\x61","\x6E\x65\x77","\x67\x65\x74\x47\x72\x61\x70\x68\x58\x6D\x6C","\x67\x65\x74\x50\x72\x65\x74\x74\x79\x58\x6D\x6C","\x67\x65\x74\x49\x74\x65\x6D","\x72\x65\x70\x6C\x61\x63\x65","\x63\x6F\x6E\x66\x69\x72\x6D","\x73\x65\x74\x49\x74\x65\x6D","\x73\x61\x76\x65\x64","\x20","\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x6C\x65\x6E\x67\x74\x68","\x50\x4F\x53\x54","\x43\x6F\x6E\x74\x65\x6E\x74\x2D\x54\x79\x70\x65","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x2F\x78\x2D\x77\x77\x77\x2D\x66\x6F\x72\x6D\x2D\x75\x72\x6C\x65\x6E\x63\x6F\x64\x65\x64","\x73\x65\x74\x52\x65\x71\x75\x65\x73\x74\x48\x65\x61\x64\x65\x72","\x41\x75\x74\x68\x6F\x72\x69\x7A\x61\x74\x69\x6F\x6E","\x42\x65\x61\x72\x65\x72\x20","\x74\x6F\x6B\x65\x6E","\x6F\x6E\x6C\x6F\x61\x64","\x72\x65\x61\x64\x79\x53\x74\x61\x74\x65","\x73\x74\x61\x74\x75\x73","\x50\x72\x6F\x6A\x65\x63\x74\x20","\x6E\x61\x6D\x65","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x70\x61\x72\x73\x65","\x20\x69\x73\x20\x6F\x70\x65\x6E\x69\x6E\x67\x20\x69\x6E\x20\x6E\x65\x77\x20\x77\x69\x6E\x64\x6F\x77\x21","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x2F","\x69\x64","\x5F\x62\x6C\x61\x6E\x6B","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x65\x72\x72\x6F\x72\x73","\x6F\x6E\x65\x72\x72\x6F\x72","\x73\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x6E\x65\x77\x26\x6E\x61\x6D\x65\x3D","\x73\x65\x6E\x64","\x64\x72\x61\x77\x69\x6E\x67\x54\x6F\x6F\x4C\x61\x72\x67\x65","\x70\x6F\x70\x75\x70","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74","\x73\x61\x76\x65","\x50\x55\x54","\x55\x70\x64\x61\x74\x65\x64\x20\x61\x74\x20","\x75\x70\x64\x61\x74\x65\x64\x41\x74","\x20\x28","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x45\x72\x72\x6F\x72\x20\x73\x61\x76\x69\x6E\x67\x20\x66\x69\x6C\x65","\x73\x61\x76\x65\x41\x73","\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x76\x69\x65\x77\x2F","\x45\x72\x72\x6F\x72\x20\x63\x6C\x6F\x6E\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x3D\x70\x72\x6F\x6A\x65\x63\x74\x5F\x63\x6C\x6F\x6E\x65\x64\x26\x6E\x61\x6D\x65\x3D","\x26\x70\x72\x65\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x26\x70\x72\x6F\x64\x75\x63\x74\x69\x6F\x6E\x3D","\x76\x61\x6C\x69\x64\x61\x74\x65","\x67\x65\x74\x52\x6F\x6F\x74","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x43\x68\x69\x6C\x64\x43\x6F\x75\x6E\x74","\x67\x65\x74\x43\x68\x69\x6C\x64\x41\x74","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x3C\x62\x72\x3E","\x73\x65\x74\x43\x65\x6C\x6C\x57\x61\x72\x6E\x69\x6E\x67","","\x76\x61\x6C\x69\x64\x61\x74\x65\x42\x6C\x6F\x63\x6B","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x53\x74\x61\x72\x74\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x0A","\x4F\x6E\x6C\x79\x20\x6F\x6E\x65\x20\x46\x69\x6E\x61\x6C\x6C\x79\x20\x62\x6C\x6F\x63\x6B\x20\x69\x73\x20\x61\x6C\x6C\x6F\x77\x65\x64","\x66\x69\x6C\x65\x5F\x69\x64","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6E\x6F\x41\x75\x64\x69\x6F\x53\x65\x6C\x65\x63\x74\x65\x64","\x64\x69\x67\x69\x74","\x77\x72\x6F\x6E\x67\x4D\x61\x78\x44\x69\x67\x69\x74","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6E\x6F\x56\x61\x72\x69\x61\x62\x6C\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x77\x72\x6F\x6E\x67\x4D\x69\x6E\x44\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x76\x61\x72\x69\x61\x62\x6C\x65","\x6F\x64\x62\x63\x5F\x69\x64","\x6E\x6F\x44\x61\x74\x61\x62\x61\x73\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x2D\x31","\x6E\x6F\x54\x72\x75\x6E\x6B\x53\x65\x6C\x65\x63\x74\x65\x64","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x6E\x6F\x45\x78\x74\x65\x6E\x73\x69\x6F\x6E\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x6F\x6D\x6D\x61\x6E\x64","\x6E\x6F\x43\x6F\x6D\x6D\x61\x6E\x64\x53\x65\x6C\x65\x63\x74\x65\x64","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x6E\x6F\x43\x6F\x6E\x64\x69\x74\x69\x6F\x6E\x53\x65\x6C\x65\x63\x74\x65\x64","\x64\x69\x67\x69\x74\x73","\x6E\x6F\x44\x69\x67\x69\x74\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x6E\x75\x6D\x62\x65\x72","\x6E\x6F\x4E\x75\x6D\x62\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x65\x78\x74","\x6E\x6F\x54\x65\x78\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x66\x69\x6C\x65","\x6E\x6F\x46\x69\x6C\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x6E\x6F\x47\x6F\x61\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x70\x68\x6F\x6E\x65","\x6E\x6F\x49\x64\x65\x6E\x74\x69\x66\x69\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x73\x69\x70\x5F\x69\x64","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6E\x6F\x51\x75\x65\x75\x65\x53\x65\x6C\x65\x63\x74\x65\x64","\x6C\x69\x73\x74\x5F\x69\x64","\x6E\x6F\x4C\x69\x73\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x6E\x6F\x49\x6E\x74\x65\x72\x76\x61\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x6D\x61\x69\x6C\x62\x6F\x78","\x6E\x6F\x42\x6F\x78\x4E\x75\x6D\x62\x65\x72\x53\x65\x6C\x65\x63\x74\x65\x64","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6E\x6F\x50\x72\x6F\x6A\x65\x63\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x6E\x6F\x41\x63\x63\x6F\x75\x6E\x74\x53\x65\x6C\x65\x63\x74\x65\x64","\x74\x6F","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x73\x6D\x73","\x6B\x65\x79","\x6E\x6F\x4B\x65\x79\x53\x65\x6C\x65\x63\x74\x65\x64","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x67\x65\x74\x49\x64","\x67\x65\x74\x43\x65\x6C\x6C","\x67\x65\x74\x56\x61\x6C\x75\x65","\x74\x65\x73\x74","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x49\x6E\x76\x61\x6C\x69\x64\x4F\x72\x54\x69\x6D\x65\x6F\x75\x74","\x2C","\x73\x70\x6C\x69\x74","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x41\x6C\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x6E\x75\x6D\x62\x65\x72\x4F\x72\x49\x6E\x76\x61\x6C\x69\x64\x4F\x72\x44\x65\x66\x61\x75\x6C\x74","\x74\x72\x75\x65\x4F\x72\x46\x61\x6C\x73\x65","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6C\x6C\x61\x70\x73\x65\x64","\x63\x6F\x6E\x74\x61\x69\x6E\x73\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72\x73\x52\x65\x73\x6F\x75\x72\x63\x65","\x67\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C","\x67\x65\x74\x45\x64\x67\x65\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x67\x65\x74\x43\x65\x6C\x6C\x56\x61\x6C\x69\x64\x61\x74\x69\x6F\x6E\x45\x72\x72\x6F\x72","\x76\x61\x6C\x69\x64\x61\x74\x65\x43\x65\x6C\x6C","\x67\x65\x74\x50\x61\x72\x65\x6E\x74","\x67\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x50\x61\x72\x65\x6E\x74","\x63\x68\x69\x6C\x64\x72\x65\x6E","\x70\x75\x62\x6C\x69\x73\x68","\x50\x75\x62\x6C\x69\x73\x68\x65\x64\x20\x61\x74\x20","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x66\x69\x6C\x65","\x45\x72\x72\x6F\x72\x20\x70\x75\x62\x6C\x69\x73\x68\x69\x6E\x67\x20\x70\x72\x6F\x6A\x65\x63\x74\x3A\x20","\x56\x61\x72\x69\x61\x62\x6C\x65\x20\x63\x72\x65\x61\x74\x65\x64\x20\x61\x74\x20","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65\x3A\x20","\x6E\x61\x6D\x65\x3D","\x45\x72\x72\x6F\x72\x20\x63\x72\x65\x61\x74\x69\x6E\x67\x20\x76\x61\x72\x69\x61\x62\x6C\x65","\x67\x65\x74\x55\x72\x6C","\x70\x61\x74\x68\x6E\x61\x6D\x65","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x26","\x3D","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x61\x6E\x55\x6E\x64\x6F","\x63\x61\x6E\x52\x65\x64\x6F","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x64\x61\x73\x68\x65\x64","\x72\x6F\x75\x6E\x64\x65\x64","\x73\x68\x61\x64\x6F\x77","\x74\x69\x6C\x74","\x61\x75\x74\x6F\x73\x69\x7A\x65","\x63\x75\x72\x76\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x77\x6F\x72\x64\x57\x72\x61\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x67\x72\x6F\x75\x70","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x66\x6F\x72\x6D\x61\x74","\x61\x72\x72\x61\x6E\x67\x65","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x73\x70\x61\x63\x69\x6E\x67","\x6C\x69\x6E\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x61\x6C\x69\x67\x6E","\x67\x65\x74\x53\x74\x61\x74\x65","\x69\x73\x4C\x6F\x6F\x70","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x63\x75\x72\x72\x65\x6E\x74\x52\x6F\x6F\x74","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x65\x64\x69\x74\x4C\x69\x6E\x6B","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x63\x6C\x69\x65\x6E\x74\x48\x65\x69\x67\x68\x74","\x6D\x69\x6E","\x6D\x61\x78","\x68\x65\x69\x67\x68\x74","\x70\x78","\x74\x6F\x70","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x77\x69\x64\x74\x68","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x64\x69\x73\x70\x6C\x61\x79","\x6E\x6F\x6E\x65","\x68\x73\x70\x6C\x69\x74","\x76\x73\x70\x6C\x69\x74","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x44\x69\x76","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x4F\x75\x74\x6C\x69\x6E\x65\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x44\x69\x61\x67\x72\x61\x6D\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x46\x6F\x6F\x74\x65\x72\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x67\x65\x48\x73\x70\x6C\x69\x74","\x67\x65\x56\x73\x70\x6C\x69\x74","\x30\x70\x78","\x72\x69\x67\x68\x74","\x6D\x65\x6E\x75\x62\x61\x72","\x67\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x74\x6F\x6F\x6C\x62\x61\x72","\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x54\x6F\x6F\x6C\x62\x61\x72","\x73\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x53\x69\x64\x65\x62\x61\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x6F\x74\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x75\x73\x43\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x73\x74\x61\x74\x75\x73\x43\x68\x61\x6E\x67\x65\x64","\x67\x65\x74\x53\x74\x61\x74\x75\x73","\x73\x65\x74\x53\x74\x61\x74\x75\x73\x54\x65\x78\x74","\x61\x64\x64\x53\x70\x6C\x69\x74\x48\x61\x6E\x64\x6C\x65\x72","\x61","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D\x20\x67\x65\x53\x74\x61\x74\x75\x73","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x67\x65\x46\x6F\x6F\x74\x65\x72","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x48\x65\x61\x64\x65\x72","\x63\x72\x65\x61\x74\x65\x46\x6F\x72\x6D","\x66\x6F\x72\x6D","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x78","\x79","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x74\x6F\x75\x63\x68\x6D\x6F\x76\x65","\x6D\x6F\x75\x73\x65\x75\x70","\x74\x6F\x75\x63\x68\x65\x6E\x64","\x68\x69\x64\x65\x44\x69\x61\x6C\x6F\x67","\x64\x69\x61\x6C\x6F\x67","\x49\x53\x5F\x56\x4D\x4C","\x63\x6C\x6F\x73\x65","\x73\x61\x76\x65\x46\x69\x6C\x65","\x67\x65\x74\x4F\x72\x43\x72\x65\x61\x74\x65\x46\x69\x6C\x65\x6E\x61\x6D\x65","\x70\x75\x62\x6C\x69\x73\x68\x46\x69\x6C\x65","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x61\x6E\x69\x6D\x61\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x65\x78\x65\x63\x75\x74\x65","\x43\x61\x6D\x69\x6E\x6F","\x75\x73\x65\x72\x41\x67\x65\x6E\x74","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x41\x6E\x69\x6D\x61\x74\x69\x6F\x6E","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x49\x53\x5F\x4D\x41\x43","\x6D\x65\x74\x61\x4B\x65\x79","\x6D\x6F\x76\x65\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x65\x6E\x61\x62\x6C\x65\x64","\x66\x75\x6E\x63\x74","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x43\x6F\x6E\x74\x72\x6F\x6C\x4B\x65\x79","\x62\x69\x6E\x64\x53\x68\x69\x66\x74\x4B\x65\x79","\x62\x69\x6E\x64\x4B\x65\x79","\x65\x73\x63\x61\x70\x65","\x65\x6E\x74\x65\x72","\x66\x6F\x6C\x64\x43\x65\x6C\x6C\x73","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x65\x78\x70\x6F\x72\x74","\x63\x6F\x6E\x6E\x65\x63\x74","\x67\x72\x69\x64","\x61\x62\x6F\x75\x74","\x6D\x75\x73\x74\x68\x61\x76\x65","\x6F\x75\x74\x67\x6F\x69\x6E\x67\x65\x64\x67\x65","\x70\x75\x73\x68","\x69\x6E\x63\x6F\x6D\x69\x6E\x67\x65\x64\x67\x65"];EditorUi=function(_0x132bx1,_0x132bx2){this[_0x79fa[0]]=_0x132bx1|| new Editor();this[_0x79fa[1]]=_0x132bx2||document[_0x79fa[3]](_0x79fa[2]);var _0x132bx3=_0x132bx1[_0x79fa[4]];var _0x132bx4=this;this[_0x79fa[1]][_0x79fa[6]][_0x79fa[5]]=_0x79fa[7]; new Image()[_0x79fa[8]]=mxPopupMenu[_0x79fa[10]][_0x79fa[9]];if(mxConnectionHandler[_0x79fa[10]][_0x79fa[11]]!=null){ new Image()[_0x79fa[8]]=mxConnectionHandler[_0x79fa[10]][_0x79fa[11]][_0x79fa[8]]};this[_0x79fa[12]]= new Actions(this);this[_0x79fa[13]]= new Menus(this);this[_0x79fa[14]]();this[_0x79fa[15]]();this[_0x79fa[16]]();var _0x132bx5=mxUtils[_0x79fa[20]](this,function(_0x132bx6){if(_0x132bx6==null){_0x132bx6=window[_0x79fa[17]]};if(this[_0x79fa[18]](_0x132bx6)){return true};return _0x132bx3[_0x79fa[19]]()});if(this[_0x79fa[1]]==document[_0x79fa[21]]){this[_0x79fa[23]][_0x79fa[22]]=_0x132bx5;this[_0x79fa[23]][_0x79fa[24]]=_0x132bx5;this[_0x79fa[25]][_0x79fa[22]]=_0x132bx5;this[_0x79fa[25]][_0x79fa[24]]=_0x132bx5;this[_0x79fa[26]][_0x79fa[22]]=_0x132bx5;this[_0x79fa[26]][_0x79fa[24]]=_0x132bx5;this[_0x79fa[27]][_0x79fa[22]]=_0x132bx5;this[_0x79fa[27]][_0x79fa[24]]=_0x132bx5;this[_0x79fa[28]][_0x79fa[22]]=_0x132bx5;this[_0x79fa[28]][_0x79fa[24]]=_0x132bx5};if(mxClient[_0x79fa[29]]&&( typeof (document[_0x79fa[30]])===_0x79fa[31]||document[_0x79fa[30]]<9)){mxEvent[_0x79fa[33]](this[_0x79fa[26]],_0x79fa[32],_0x132bx5);mxEvent[_0x79fa[33]](this[_0x79fa[27]],_0x79fa[32],_0x132bx5)}else {this[_0x79fa[26]][_0x79fa[34]]=_0x132bx5;this[_0x79fa[27]][_0x79fa[34]]=_0x132bx5};_0x132bx3[_0x79fa[35]](this[_0x79fa[26]]);_0x132bx3[_0x79fa[15]]();_0x132bx3[_0x79fa[1]][_0x79fa[38]](_0x79fa[36],_0x79fa[37]);_0x132bx3[_0x79fa[1]][_0x79fa[6]][_0x79fa[39]]=_0x79fa[40];_0x132bx3[_0x79fa[1]][_0x79fa[6]][_0x79fa[41]]=_0x79fa[42]+_0x132bx1[_0x79fa[43]]+_0x79fa[44];_0x132bx3[_0x79fa[1]][_0x79fa[6]][_0x79fa[45]]=_0x79fa[46];_0x132bx3[_0x79fa[1]][_0x79fa[47]]();var _0x132bx7=_0x132bx3[_0x79fa[48]];_0x132bx3[_0x79fa[48]]=function(_0x132bx8,_0x132bx9,_0x132bxa){if(_0x132bx8==mxEvent[_0x79fa[49]]){this[_0x79fa[1]][_0x79fa[47]]()};_0x132bx7[_0x79fa[50]](this,arguments)};this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[52],_0x79fa[53],_0x79fa[54]],[[1,1],[1,1],[0,0]],[[0,0],[0,0],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[57],_0x79fa[58],_0x79fa[59],_0x79fa[60],_0x79fa[61],_0x79fa[62],_0x79fa[63]],[[1,1],[0,0],[0,1],[0,1],[0,1],[1,1],[0,1]],[[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[64],_0x79fa[65]],[[1,1],[1,1]],[[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[66],_0x79fa[67],_0x79fa[68],_0x79fa[69],_0x79fa[70],_0x79fa[71],_0x79fa[72],_0x79fa[73],_0x79fa[74]],[[1,_0x79fa[55]],[1,1],[1,_0x79fa[55]],[1,1],[1,1],[1,1],[1,1],[1,1],[1,_0x79fa[55]]],[[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[75]],[[1,1]],[[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[76],_0x79fa[77]],[[1,1],[1,1]],[[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[78],_0x79fa[79],_0x79fa[80],_0x79fa[81],_0x79fa[82]],[[0,0],[1,2],[1,2],[1,2],[1,_0x79fa[55]]],[[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[83],_0x79fa[84]],[[1,1],[1,1]],[[1,_0x79fa[55]],[1,_0x79fa[55]]]);this[_0x79fa[56]](_0x132bx3[_0x79fa[51]],[_0x79fa[85],_0x79fa[86],_0x79fa[87],_0x79fa[88],_0x79fa[89]],[[1,1],[1,1],[0,1],[0,1],[0,1]],[[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]],[1,_0x79fa[55]]]);_0x132bx3[_0x79fa[90]]=function(_0x132bx6,_0x132bxb){var _0x132bxc=[_0x79fa[66],_0x79fa[79],_0x79fa[80],_0x79fa[68],_0x79fa[74],_0x79fa[82]];var _0x132bxd= new mxEventObject(mxEvent.DOUBLE_CLICK,_0x79fa[17],_0x132bx6,_0x79fa[91],_0x132bxb);this[_0x79fa[92]](_0x132bxd);if(this[_0x79fa[93]]()&&!mxEvent[_0x79fa[94]](_0x132bx6)&&!_0x132bxd[_0x79fa[94]]()){if(this[_0x79fa[96]]()[_0x79fa[95]](_0x132bxb)){if(_0x132bxc[_0x79fa[100]](_0x132bxb[_0x79fa[99]][_0x79fa[98]][_0x79fa[97]])>=0){this[_0x79fa[101]](_0x132bxb)}}else {if(this[_0x79fa[96]]()[_0x79fa[102]](_0x132bxb)){console[_0x79fa[103]](_0x132bx4);console[_0x79fa[103]](_0x132bxb);_0x132bx4[_0x79fa[104]]( new GeneralDialog(_0x132bx4,_0x132bxb)[_0x79fa[1]],320,280,true,true)}};_0x132bxd[_0x79fa[105]]()}};_0x132bx3[_0x79fa[107]][_0x79fa[106]]=true;_0x132bx3[_0x79fa[107]][_0x79fa[108]]=mxUtils[_0x79fa[20]](this,function(_0x132bxe,_0x132bxb,_0x132bx6){this[_0x79fa[13]][_0x79fa[109]](_0x132bxe,_0x132bxb,_0x132bx6)});_0x132bx1[_0x79fa[111]][_0x79fa[35]](this[_0x79fa[110]]);mxEvent[_0x79fa[113]](document,mxUtils[_0x79fa[20]](this,function(_0x132bx6){_0x132bx3[_0x79fa[107]][_0x79fa[112]]()}));if(mxClient[_0x79fa[114]]){mxEvent[_0x79fa[33]](_0x132bx3[_0x79fa[1]],_0x79fa[115],mxUtils[_0x79fa[20]](this,function(_0x132bx6){_0x132bx3[_0x79fa[120]][_0x79fa[119]]()[_0x79fa[38]](_0x79fa[116],_0x79fa[117]+_0x132bx6[_0x79fa[118]]+_0x79fa[44]);_0x132bx3[_0x79fa[120]][_0x79fa[122]]()[_0x79fa[6]][_0x79fa[121]]=_0x79fa[7]}));mxEvent[_0x79fa[33]](_0x132bx3[_0x79fa[1]],_0x79fa[123],mxUtils[_0x79fa[20]](this,function(_0x132bx6){_0x132bx3[_0x79fa[120]][_0x79fa[119]]()[_0x79fa[124]](_0x79fa[116]);_0x132bx3[_0x79fa[125]]=true;_0x132bx3[_0x79fa[126]](_0x132bx6[_0x79fa[118]]);_0x132bx3[_0x79fa[120]][_0x79fa[122]]()[_0x79fa[6]][_0x79fa[121]]=_0x79fa[127]}))};var _0x132bxf=this[_0x79fa[128]](_0x132bx1);this[_0x79fa[129]]=function(){return _0x132bxf};mxEvent[_0x79fa[33]](window,_0x79fa[130],mxUtils[_0x79fa[20]](this,function(){this[_0x79fa[15]]();_0x132bx3[_0x79fa[131]]();this[_0x79fa[0]][_0x79fa[111]][_0x79fa[132]](false);this[_0x79fa[0]][_0x79fa[111]][_0x79fa[111]][_0x79fa[131]]()}));this[_0x79fa[35]]();this[_0x79fa[133]]()};EditorUi[_0x79fa[10]][_0x79fa[134]]=(mxClient[_0x79fa[114]])?16:8;EditorUi[_0x79fa[10]][_0x79fa[135]]=33;EditorUi[_0x79fa[10]][_0x79fa[136]]=36;EditorUi[_0x79fa[10]][_0x79fa[137]]=28;EditorUi[_0x79fa[10]][_0x79fa[138]]=204;EditorUi[_0x79fa[10]][_0x79fa[139]]=190;EditorUi[_0x79fa[10]][_0x79fa[35]]=function(){this[_0x79fa[140]]();this[_0x79fa[141]]();var _0x132bx10=this[_0x79fa[12]][_0x79fa[143]](_0x79fa[142]);var _0x132bx11=function(){_0x132bx10[_0x79fa[145]](!mxClipboard[_0x79fa[144]]())};var _0x132bx12=mxClipboard[_0x79fa[146]];mxClipboard[_0x79fa[146]]=function(){_0x132bx12[_0x79fa[50]](this,arguments);_0x132bx11()};var _0x132bx13=mxClipboard[_0x79fa[147]];mxClipboard[_0x79fa[147]]=function(){_0x132bx13[_0x79fa[50]](this,arguments);_0x132bx11()}};EditorUi[_0x79fa[10]][_0x79fa[18]]=function(_0x132bx6){return false};EditorUi[_0x79fa[10]][_0x79fa[133]]=function(){try{if(window[_0x79fa[148]]!=null&&window[_0x79fa[148]][_0x79fa[149]]!=null){window[_0x79fa[148]][_0x79fa[149]][_0x79fa[161]](mxUtils[_0x79fa[20]](this,function(_0x132bx14,_0x132bx15){try{var _0x132bx16=mxUtils[_0x79fa[150]](_0x132bx14);this[_0x79fa[0]][_0x79fa[152]](_0x132bx16[_0x79fa[151]]);this[_0x79fa[0]][_0x79fa[153]]=false;this[_0x79fa[0]][_0x79fa[155]][_0x79fa[154]]();if(_0x132bx15!=null){this[_0x79fa[0]][_0x79fa[156]]=_0x132bx15}}catch(e){mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[157])+_0x79fa[158]+e[_0x79fa[159]])}}))}}catch(e){}};EditorUi[_0x79fa[10]][_0x79fa[162]]=function(_0x132bx14,_0x132bx15,_0x132bx17){try{var _0x132bx16=mxUtils[_0x79fa[150]](_0x132bx14);this[_0x79fa[0]][_0x79fa[152]](_0x132bx16[_0x79fa[151]]);this[_0x79fa[0]][_0x79fa[153]]=false;this[_0x79fa[0]][_0x79fa[155]][_0x79fa[154]]();if(_0x132bx15!=null){this[_0x79fa[0]][_0x79fa[156]]=_0x132bx15};if(_0x132bx17!=null){this[_0x79fa[0]][_0x79fa[163]]=_0x132bx17}}catch(e){mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[157])+_0x79fa[158]+e[_0x79fa[159]])}};EditorUi[_0x79fa[10]][_0x79fa[164]]=function(_0x132bx18){var _0x132bx1=this[_0x79fa[0]];if(_0x132bx18!=null){var _0x132bx14=mxUtils[_0x79fa[166]](this[_0x79fa[0]][_0x79fa[165]]());try{if(useLocalStorage){if(localStorage[_0x79fa[167]](_0x132bx18)!=null&&!mxUtils[_0x79fa[169]](mxResources[_0x79fa[143]](_0x79fa[168],[_0x132bx18]))){return};localStorage[_0x79fa[170]](_0x132bx18,_0x132bx14);this[_0x79fa[0]][_0x79fa[173]](mxResources[_0x79fa[143]](_0x79fa[171])+_0x79fa[172]+ new Date())}else {console[_0x79fa[103]](_0x132bx14[_0x79fa[174]]);console[_0x79fa[103]](MAX_REQUEST_SIZE);if(_0x132bx14[_0x79fa[174]]<MAX_REQUEST_SIZE){_0x132bx14=encodeURIComponent(_0x132bx14);_0x132bx18=encodeURIComponent(_0x132bx18);var _0x132bx19= new XMLHttpRequest();_0x132bx19[_0x79fa[133]](_0x79fa[175],SAVE_URL,true);_0x132bx19[_0x79fa[178]](_0x79fa[176],_0x79fa[177]);_0x132bx19[_0x79fa[178]](_0x79fa[179],_0x79fa[180]+_0x132bx1[_0x79fa[163]][_0x79fa[181]]);_0x132bx19[_0x79fa[182]]=function(_0x132bx1a){if(_0x132bx19[_0x79fa[183]]===4){if(_0x132bx19[_0x79fa[184]]===201){_0x132bx1[_0x79fa[173]](_0x79fa[185]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[186]]+_0x79fa[189]);setTimeout(function(){window[_0x79fa[133]](_0x79fa[190]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[191]],_0x79fa[192])},1500)}else {_0x132bx1[_0x79fa[173]](_0x79fa[193]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[194]][0][_0x79fa[159]])}}};_0x132bx19[_0x79fa[195]]=function(_0x132bx1a){mxUtils[_0x79fa[160]](_0x132bx19[_0x79fa[196]])};_0x132bx19[_0x79fa[198]](_0x79fa[197]+_0x132bx18)}else {mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[199]));mxUtils[_0x79fa[200]](_0x132bx14);return}};this[_0x79fa[0]][_0x79fa[156]]=_0x132bx18;this[_0x79fa[0]][_0x79fa[153]]=false}catch(e){this[_0x79fa[0]][_0x79fa[173]](_0x79fa[201])}}else {this[_0x79fa[0]][_0x79fa[173]](_0x79fa[201])}};EditorUi[_0x79fa[10]][_0x79fa[202]]=function(_0x132bx18){var _0x132bx1=this[_0x79fa[0]];if(_0x132bx18!=null){var _0x132bx14=mxUtils[_0x79fa[166]](this[_0x79fa[0]][_0x79fa[165]]());try{if(useLocalStorage){if(localStorage[_0x79fa[167]](_0x132bx18)!=null&&!mxUtils[_0x79fa[169]](mxResources[_0x79fa[143]](_0x79fa[168],[_0x132bx18]))){return};localStorage[_0x79fa[170]](_0x132bx18,_0x132bx14);this[_0x79fa[0]][_0x79fa[173]](mxResources[_0x79fa[143]](_0x79fa[171])+_0x79fa[172]+ new Date())}else {console[_0x79fa[103]](_0x132bx14[_0x79fa[174]]);console[_0x79fa[103]](MAX_REQUEST_SIZE);if(_0x132bx14[_0x79fa[174]]<MAX_REQUEST_SIZE){_0x132bx14=encodeURIComponent(_0x132bx14);var _0x132bx19= new XMLHttpRequest();_0x132bx19[_0x79fa[133]](_0x79fa[203],SAVE_URL+this[_0x79fa[0]][_0x79fa[163]][_0x79fa[191]],true);_0x132bx19[_0x79fa[178]](_0x79fa[176],_0x79fa[177]);_0x132bx19[_0x79fa[178]](_0x79fa[179],_0x79fa[180]+_0x132bx1[_0x79fa[163]][_0x79fa[181]]);_0x132bx19[_0x79fa[182]]=function(_0x132bx1a){if(_0x132bx19[_0x79fa[183]]===4){if(_0x132bx19[_0x79fa[184]]===200){_0x132bx1[_0x79fa[173]](_0x79fa[204]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[205]]+_0x79fa[206]+_0x132bx19[_0x79fa[184]]+_0x79fa[172]+_0x132bx19[_0x79fa[196]]+_0x79fa[44])}else {_0x132bx1[_0x79fa[173]](_0x79fa[207]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[194]][0][_0x79fa[159]])}}};_0x132bx19[_0x79fa[195]]=function(_0x132bx1a){mxUtils[_0x79fa[160]](_0x132bx19[_0x79fa[196]])};_0x132bx19[_0x79fa[198]](_0x79fa[208]+_0x132bx14)}else {mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[199]));mxUtils[_0x79fa[200]](_0x132bx14);return}};this[_0x79fa[0]][_0x79fa[156]]=_0x132bx18;this[_0x79fa[0]][_0x79fa[153]]=false}catch(e){this[_0x79fa[0]][_0x79fa[173]](_0x79fa[209])}}else {this[_0x79fa[0]][_0x79fa[173]](_0x79fa[209])}};EditorUi[_0x79fa[10]][_0x79fa[210]]=function(_0x132bx18){var _0x132bx1=this[_0x79fa[0]];if(_0x132bx18!=null){var _0x132bx14=mxUtils[_0x79fa[166]](this[_0x79fa[0]][_0x79fa[165]]());try{if(useLocalStorage){if(localStorage[_0x79fa[167]](_0x132bx18)!=null&&!mxUtils[_0x79fa[169]](mxResources[_0x79fa[143]](_0x79fa[168],[_0x132bx18]))){return};localStorage[_0x79fa[170]](_0x132bx18,_0x132bx14);this[_0x79fa[0]][_0x79fa[173]](mxResources[_0x79fa[143]](_0x79fa[171])+_0x79fa[172]+ new Date())}else {console[_0x79fa[103]](_0x132bx14[_0x79fa[174]]);console[_0x79fa[103]](MAX_REQUEST_SIZE);if(_0x132bx14[_0x79fa[174]]<MAX_REQUEST_SIZE){_0x132bx14=encodeURIComponent(_0x132bx14);_0x132bx18=encodeURIComponent(_0x132bx18);var _0x132bx19= new XMLHttpRequest();_0x132bx19[_0x79fa[133]](_0x79fa[175],SAVE_URL,true);_0x132bx19[_0x79fa[178]](_0x79fa[176],_0x79fa[177]);_0x132bx19[_0x79fa[178]](_0x79fa[179],_0x79fa[180]+_0x132bx1[_0x79fa[163]][_0x79fa[181]]);_0x132bx19[_0x79fa[182]]=function(_0x132bx1a){if(_0x132bx19[_0x79fa[183]]===4){if(_0x132bx19[_0x79fa[184]]===201){_0x132bx1[_0x79fa[173]](_0x79fa[185]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[186]]+_0x79fa[189]);setTimeout(function(){window[_0x79fa[133]](_0x79fa[211]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[191]],_0x79fa[192])},1500)}else {_0x132bx1[_0x79fa[173]](_0x79fa[212]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[194]][0][_0x79fa[159]])}}};_0x132bx19[_0x79fa[195]]=function(_0x132bx1a){mxUtils[_0x79fa[160]](_0x132bx19[_0x79fa[196]])};_0x132bx19[_0x79fa[198]](_0x79fa[213]+_0x132bx18+_0x79fa[214]+_0x132bx14+_0x79fa[215]+_0x132bx14)}else {mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[199]));mxUtils[_0x79fa[200]](_0x132bx14);return}};this[_0x79fa[0]][_0x79fa[156]]=_0x132bx18;this[_0x79fa[0]][_0x79fa[153]]=false}catch(e){this[_0x79fa[0]][_0x79fa[173]](_0x79fa[209])}}else {this[_0x79fa[0]][_0x79fa[173]](_0x79fa[209])}};EditorUi[_0x79fa[10]][_0x79fa[216]]=function(_0x132bx1b,_0x132bx1c){var _0x132bx3=this[_0x79fa[0]][_0x79fa[4]];for(var _0x132bx1b=_0x132bx1b!=null?_0x132bx1b:_0x132bx3[_0x79fa[218]][_0x79fa[217]](),_0x132bx1c=_0x132bx1c!=null?_0x132bx1c:{},_0x132bx1d=true,_0x132bx1e=_0x132bx3[_0x79fa[218]][_0x79fa[219]](_0x132bx1b),_0x132bx1a=0;_0x132bx1a<_0x132bx1e;_0x132bx1a++){var _0x132bx1f=_0x132bx3[_0x79fa[218]][_0x79fa[220]](_0x132bx1b,_0x132bx1a),_0x132bx20=_0x132bx1c;_0x132bx3[_0x79fa[221]](_0x132bx1f)&&(_0x132bx20={});_0x132bx20=this[_0x79fa[216]](_0x132bx1f,_0x132bx20);_0x132bx20!=null?_0x132bx3[_0x79fa[223]](_0x132bx1f,_0x132bx20[_0x79fa[168]](/\n/g,_0x79fa[222])):_0x132bx3[_0x79fa[223]](_0x132bx1f,null);_0x132bx1d=_0x132bx1d&&_0x132bx20==null};_0x132bx1e=_0x79fa[224];if(_0x132bx3[_0x79fa[218]][_0x79fa[102]](_0x132bx1b)){switch(_0x132bx1b[_0x79fa[98]][_0x79fa[281]]){case _0x79fa[52]:_0x132bx1e=this[_0x79fa[225]](_0x79fa[52])?_0x79fa[224]:_0x79fa[226]+_0x79fa[227];break;case _0x79fa[53]:_0x132bx1e=this[_0x79fa[225]](_0x79fa[53])?_0x79fa[224]:_0x79fa[228]+_0x79fa[227];break;case _0x79fa[67]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[229])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[231])+_0x79fa[227];break;case _0x79fa[66]:;case _0x79fa[68]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[229])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[231])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[232])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[233])+_0x79fa[227];break;case _0x79fa[74]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[229])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[231])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[234])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[235])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[236])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[237])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[238])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[233])+_0x79fa[227];break;case _0x79fa[82]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[239])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[235])+_0x79fa[227];break;case _0x79fa[76]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[240])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[241])+_0x79fa[227];break;case _0x79fa[60]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[242])!==_0x79fa[243])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[244])+_0x79fa[227];break;case _0x79fa[64]:;case _0x79fa[65]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[234])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[235])+_0x79fa[227];break;case _0x79fa[78]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[245])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[246])+_0x79fa[227];break;case _0x79fa[86]:;case _0x79fa[87]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[247])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[248])+_0x79fa[227];break;case _0x79fa[79]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[249])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[250])+_0x79fa[227];break;case _0x79fa[69]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[251])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[252])+_0x79fa[227];break;case _0x79fa[70]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[253])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[254])+_0x79fa[227];break;case _0x79fa[71]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[255])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[256])+_0x79fa[227];break;case _0x79fa[75]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[257])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[258])+_0x79fa[227];break;case _0x79fa[84]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[259])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[260])+_0x79fa[227];break;case _0x79fa[60]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[261])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[262])+_0x79fa[227];break;case _0x79fa[59]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[263])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[262])+_0x79fa[227];break;case _0x79fa[61]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[264])!==_0x79fa[243])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[265])+_0x79fa[227];break;case _0x79fa[63]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[266])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[267])+_0x79fa[227];break;case _0x79fa[80]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[268])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[269])+_0x79fa[227];break;case _0x79fa[81]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[268])!=_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[269])+_0x79fa[227];break;case _0x79fa[62]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[270])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[271])+_0x79fa[227];break;case _0x79fa[88]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[272])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[273])+_0x79fa[227];break;case _0x79fa[278]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[274])>0)?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[275])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[276])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[254])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[277])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[256])+_0x79fa[227];break;case _0x79fa[72]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[255])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[256])+_0x79fa[227];break;case _0x79fa[73]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[255])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[256])+_0x79fa[227];_0x132bx1e+=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[279])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[280])+_0x79fa[227];break;case _0x79fa[77]:_0x132bx1e=(_0x132bx1b[_0x79fa[98]][_0x79fa[230]](_0x79fa[279])!==_0x79fa[224])?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[280])+_0x79fa[227];break}};if(_0x132bx3[_0x79fa[218]][_0x79fa[95]](_0x132bx1b)){var _0x132bx21=_0x132bx3[_0x79fa[218]][_0x79fa[283]](_0x132bx1b[_0x79fa[99]][_0x79fa[282]]());switch(_0x132bx21[_0x79fa[98]][_0x79fa[281]]){case _0x79fa[66]:var _0x132bx22=/^[0-9]{1,45}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;_0x132bx1e=_0x132bx1e+((_0x132bx22[_0x79fa[285]](String(_0x132bx1b[_0x79fa[284]]())))?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[286])+_0x79fa[227]);break;case _0x79fa[68]:var _0x132bx22=/^[0-9]{1,45}$|^[-]{1}$|^[i]{1}$|^[t]{1}|^[#]{1}|^[*]{1}$/;var _0x132bx23=String(_0x132bx1b[_0x79fa[284]]());var _0x132bx24=_0x132bx23[_0x79fa[288]](_0x79fa[287]);_0x132bx24[_0x79fa[290]](function(_0x132bx25){_0x132bx1e=_0x132bx1e+((_0x132bx22[_0x79fa[285]](_0x132bx25))?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[289])+_0x79fa[227])});break;case _0x79fa[74]:var _0x132bx22=/^(x|i|-)$/;var _0x132bx23=String(_0x132bx1b[_0x79fa[284]]());_0x132bx1e=_0x132bx1e+((_0x132bx22[_0x79fa[285]](_0x132bx23))?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[291])+_0x79fa[227]);break;case _0x79fa[79]:;case _0x79fa[80]:;case _0x79fa[81]:var _0x132bx22=/^(true){1}$|^(false){1}$/;_0x132bx1e=_0x132bx1e+((_0x132bx22[_0x79fa[285]](String(_0x132bx1b[_0x79fa[284]]())))?_0x79fa[224]:mxResources[_0x79fa[143]](_0x79fa[292])+_0x79fa[227]);break}};_0x132bx3[_0x79fa[293]](_0x132bx1b)&&!_0x132bx1d&&(_0x132bx1e=_0x132bx1e+((mxResources[_0x79fa[143]](_0x132bx3[_0x79fa[294]])||_0x132bx3[_0x79fa[294]])+_0x79fa[227]));_0x132bx1e=_0x132bx3[_0x79fa[218]][_0x79fa[95]](_0x132bx1b)?_0x132bx1e+(_0x132bx3[_0x79fa[296]](_0x132bx1b,_0x132bx3[_0x79fa[218]][_0x79fa[295]](_0x132bx1b,true),_0x132bx3[_0x79fa[218]][_0x79fa[295]](_0x132bx1b,false))||_0x79fa[224]):_0x132bx1e+(_0x132bx3[_0x79fa[297]](_0x132bx1b)||_0x79fa[224]);_0x132bx1a=_0x132bx3[_0x79fa[298]](_0x132bx1b,_0x132bx1c);_0x132bx1a!=null&&(_0x132bx1e=_0x132bx1e+_0x132bx1a);_0x132bx3[_0x79fa[218]][_0x79fa[299]](_0x132bx1b)==null&&_0x132bx3[_0x79fa[120]][_0x79fa[216]]();return _0x132bx1e[_0x79fa[174]]>0||!_0x132bx1d?_0x132bx1e:null};EditorUi[_0x79fa[10]][_0x79fa[225]]=function(_0x132bx26){var _0x132bx3=this[_0x79fa[0]][_0x79fa[4]];var _0x132bx27=_0x132bx3[_0x79fa[300]]();var _0x132bx28=0;_0x132bx27[_0x79fa[301]][_0x79fa[290]](function(_0x132bx29){if(_0x132bx3[_0x79fa[218]][_0x79fa[102]](_0x132bx29)&&_0x132bx29[_0x79fa[98]][_0x79fa[281]]==_0x132bx26){_0x132bx28++}});return _0x132bx28>1?false:true};EditorUi[_0x79fa[10]][_0x79fa[302]]=function(_0x132bx18){var _0x132bx1=this[_0x79fa[0]];if(_0x132bx18!=null){var _0x132bx2a=this[_0x79fa[216]]();if(_0x132bx2a===null){var _0x132bx14=mxUtils[_0x79fa[166]](this[_0x79fa[0]][_0x79fa[165]]());try{if(useLocalStorage){if(localStorage[_0x79fa[167]](_0x132bx18)!=null&&!mxUtils[_0x79fa[169]](mxResources[_0x79fa[143]](_0x79fa[168],[_0x132bx18]))){return};localStorage[_0x79fa[170]](_0x132bx18,_0x132bx14);this[_0x79fa[0]][_0x79fa[173]](mxResources[_0x79fa[143]](_0x79fa[171])+_0x79fa[172]+ new Date())}else {console[_0x79fa[103]](_0x132bx14[_0x79fa[174]]);console[_0x79fa[103]](MAX_REQUEST_SIZE);if(_0x132bx14[_0x79fa[174]]<MAX_REQUEST_SIZE){_0x132bx14=encodeURIComponent(_0x132bx14);var _0x132bx19= new XMLHttpRequest();_0x132bx19[_0x79fa[133]](_0x79fa[203],SAVE_URL+this[_0x79fa[0]][_0x79fa[163]][_0x79fa[191]],true);_0x132bx19[_0x79fa[178]](_0x79fa[176],_0x79fa[177]);_0x132bx19[_0x79fa[178]](_0x79fa[179],_0x79fa[180]+_0x132bx1[_0x79fa[163]][_0x79fa[181]]);_0x132bx19[_0x79fa[182]]=function(_0x132bx1a){if(_0x132bx19[_0x79fa[183]]===4){if(_0x132bx19[_0x79fa[184]]===200){_0x132bx1[_0x79fa[173]](_0x79fa[303]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[205]]+_0x79fa[206]+_0x132bx19[_0x79fa[184]]+_0x79fa[172]+_0x132bx19[_0x79fa[196]]+_0x79fa[44])}else {_0x132bx1[_0x79fa[173]](_0x79fa[207]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[194]][0][_0x79fa[159]])}}};_0x132bx19[_0x79fa[195]]=function(_0x132bx1a){mxUtils[_0x79fa[160]](_0x132bx19[_0x79fa[196]])};_0x132bx19[_0x79fa[198]](_0x79fa[208]+_0x132bx14+_0x79fa[215]+_0x132bx14)}else {mxUtils[_0x79fa[160]](mxResources[_0x79fa[143]](_0x79fa[199]));mxUtils[_0x79fa[200]](_0x132bx14);return}};this[_0x79fa[0]][_0x79fa[156]]=_0x132bx18;this[_0x79fa[0]][_0x79fa[153]]=false}catch(e){this[_0x79fa[0]][_0x79fa[173]](_0x79fa[304])}}else {_0x132bx1[_0x79fa[173]](_0x79fa[305])}}else {this[_0x79fa[0]][_0x79fa[173]](_0x79fa[304])}};EditorUi[_0x79fa[10]][_0x79fa[239]]=function(_0x132bx18){var _0x132bx1=this[_0x79fa[0]];if(_0x132bx18!=null){try{var _0x132bx19= new XMLHttpRequest();_0x132bx19[_0x79fa[133]](_0x79fa[175],VARIABLE_URL,true);_0x132bx19[_0x79fa[178]](_0x79fa[176],_0x79fa[177]);_0x132bx19[_0x79fa[178]](_0x79fa[179],_0x79fa[180]+_0x132bx1[_0x79fa[163]][_0x79fa[181]]);_0x132bx19[_0x79fa[182]]=function(_0x132bx1a){if(_0x132bx19[_0x79fa[183]]===4){if(_0x132bx19[_0x79fa[184]]===201){_0x132bx1[_0x79fa[173]](_0x79fa[306]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[307]]+_0x79fa[206]+_0x132bx19[_0x79fa[184]]+_0x79fa[172]+_0x132bx19[_0x79fa[196]]+_0x79fa[44])}else {_0x132bx1[_0x79fa[173]](_0x79fa[308]+JSON[_0x79fa[188]](_0x132bx19[_0x79fa[187]])[_0x79fa[194]][0][_0x79fa[159]])}}};_0x132bx19[_0x79fa[195]]=function(_0x132bx1a){mxUtils[_0x79fa[160]](_0x132bx19[_0x79fa[196]])};_0x132bx19[_0x79fa[198]](_0x79fa[309]+_0x132bx18)}catch(e){this[_0x79fa[0]][_0x79fa[173]](_0x79fa[310])}}else {this[_0x79fa[0]][_0x79fa[173]](_0x79fa[310])}};EditorUi[_0x79fa[10]][_0x79fa[311]]=function(_0x132bx2b){var _0x132bx2c=(_0x132bx2b!=null)?_0x132bx2b:window[_0x79fa[313]][_0x79fa[312]];var _0x132bx2d=(_0x132bx2c[_0x79fa[100]](_0x79fa[314])>0)?1:0;for(var _0x132bx2e in urlParams){if(_0x132bx2d==0){_0x132bx2c+=_0x79fa[314]}else {_0x132bx2c+=_0x79fa[315]};_0x132bx2c+=_0x132bx2e+_0x79fa[316]+urlParams[_0x132bx2e];_0x132bx2d++};return _0x132bx2c};EditorUi[_0x79fa[10]][_0x79fa[140]]=function(){var _0x132bx2f=this[_0x79fa[12]][_0x79fa[143]](_0x79fa[317]);var _0x132bx30=this[_0x79fa[12]][_0x79fa[143]](_0x79fa[318]);var _0x132bx31=this[_0x79fa[0]][_0x79fa[155]];var _0x132bx32=function(){_0x132bx2f[_0x79fa[145]](_0x132bx31[_0x79fa[319]]());_0x132bx30[_0x79fa[145]](_0x132bx31[_0x79fa[320]]())};_0x132bx31[_0x79fa[33]](mxEvent.ADD,_0x132bx32);_0x132bx31[_0x79fa[33]](mxEvent.UNDO,_0x132bx32);_0x132bx31[_0x79fa[33]](mxEvent.REDO,_0x132bx32);_0x132bx31[_0x79fa[33]](mxEvent.CLEAR,_0x132bx32);_0x132bx32()};EditorUi[_0x79fa[10]][_0x79fa[141]]=function(){var _0x132bx33=mxUtils[_0x79fa[20]](this,function(){var _0x132bx3=this[_0x79fa[0]][_0x79fa[4]];var _0x132bx34=!_0x132bx3[_0x79fa[321]]();var _0x132bx35=false;var _0x132bx36=false;var _0x132bx37=_0x132bx3[_0x79fa[322]]();if(_0x132bx37!=null){for(var _0x132bx38=0;_0x132bx38<_0x132bx37[_0x79fa[174]];_0x132bx38++){var _0x132bxb=_0x132bx37[_0x132bx38];if(_0x132bx3[_0x79fa[96]]()[_0x79fa[95]](_0x132bxb)){_0x132bx36=true};if(_0x132bx3[_0x79fa[96]]()[_0x79fa[102]](_0x132bxb)){_0x132bx35=true};if(_0x132bx36&&_0x132bx35){break}}};var _0x132bx39=[_0x79fa[146],_0x79fa[147],_0x79fa[323],_0x79fa[324],_0x79fa[325],_0x79fa[326],_0x79fa[6],_0x79fa[327],_0x79fa[328],_0x79fa[329],_0x79fa[330],_0x79fa[331],_0x79fa[332],_0x79fa[333],_0x79fa[334]];for(var _0x132bx38=0;_0x132bx38<_0x132bx39[_0x79fa[174]];_0x132bx38++){this[_0x79fa[12]][_0x79fa[143]](_0x132bx39[_0x132bx38])[_0x79fa[145]](_0x132bx34)};this[_0x79fa[12]][_0x79fa[143]](_0x79fa[335])[_0x79fa[145]](_0x132bx36);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[336])[_0x79fa[145]](_0x132bx35);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[337])[_0x79fa[145]](_0x132bx35);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[339])[_0x79fa[145]](_0x132bx3[_0x79fa[338]]()>1);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[341])[_0x79fa[145]](_0x132bx3[_0x79fa[338]]()==1&&_0x132bx3[_0x79fa[96]]()[_0x79fa[219]](_0x132bx3[_0x79fa[340]]())>0);var _0x132bx3a=_0x132bx35&&_0x132bx3[_0x79fa[338]]()==1;this[_0x79fa[12]][_0x79fa[143]](_0x79fa[342])[_0x79fa[145]](_0x132bx3a&&_0x132bx3[_0x79fa[96]]()[_0x79fa[102]](_0x132bx3[_0x79fa[96]]()[_0x79fa[299]](_0x132bx3[_0x79fa[340]]())));var _0x132bx3b=[_0x79fa[343],_0x79fa[344],_0x79fa[345],_0x79fa[346],_0x79fa[255],_0x79fa[347],_0x79fa[348],_0x79fa[349],_0x79fa[350]];for(var _0x132bx38=0;_0x132bx38<_0x132bx3b[_0x79fa[174]];_0x132bx38++){this[_0x79fa[13]][_0x79fa[143]](_0x132bx3b[_0x132bx38])[_0x79fa[145]](_0x132bx34)};_0x132bx3b=[_0x79fa[351],_0x79fa[352],_0x79fa[353]];for(var _0x132bx38=0;_0x132bx38<_0x132bx3b[_0x79fa[174]];_0x132bx38++){this[_0x79fa[13]][_0x79fa[143]](_0x132bx3b[_0x132bx38])[_0x79fa[145]](_0x132bx36)};this[_0x79fa[12]][_0x79fa[143]](_0x79fa[354])[_0x79fa[145]](_0x132bx36);this[_0x79fa[13]][_0x79fa[143]](_0x79fa[355])[_0x79fa[145]](_0x132bx3[_0x79fa[338]]()>1);this[_0x79fa[13]][_0x79fa[143]](_0x79fa[358])[_0x79fa[145]](_0x132bx35||(_0x132bx36&&_0x132bx3[_0x79fa[357]](_0x132bx3[_0x79fa[120]][_0x79fa[356]](_0x132bx3[_0x79fa[340]]()))));this[_0x79fa[13]][_0x79fa[143]](_0x79fa[361])[_0x79fa[145]](_0x132bx3[_0x79fa[359]]&&((_0x132bx3[_0x79fa[120]][_0x79fa[360]]!=null)||(_0x132bx3[_0x79fa[338]]()==1&&_0x132bx3[_0x79fa[221]](_0x132bx3[_0x79fa[340]]()))));this[_0x79fa[12]][_0x79fa[143]](_0x79fa[362])[_0x79fa[145]](_0x132bx3[_0x79fa[120]][_0x79fa[360]]!=null);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[363])[_0x79fa[145]](_0x132bx3[_0x79fa[120]][_0x79fa[360]]!=null);var _0x132bx3c=_0x132bx3[_0x79fa[338]]()==1&&_0x132bx3[_0x79fa[221]](_0x132bx3[_0x79fa[340]]());this[_0x79fa[12]][_0x79fa[143]](_0x79fa[364])[_0x79fa[145]](_0x132bx3c);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[365])[_0x79fa[145]](_0x132bx3c);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[366])[_0x79fa[145]](_0x132bx3c);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[367])[_0x79fa[145]](_0x132bx3[_0x79fa[338]]()==1);this[_0x79fa[12]][_0x79fa[143]](_0x79fa[369])[_0x79fa[145]](_0x132bx3[_0x79fa[338]]()==1&&_0x132bx3[_0x79fa[368]](_0x132bx3[_0x79fa[340]]())!=null)});this[_0x79fa[0]][_0x79fa[4]][_0x79fa[370]]()[_0x79fa[33]](mxEvent.CHANGE,_0x132bx33);_0x132bx33()};EditorUi[_0x79fa[10]][_0x79fa[15]]=function(){var _0x132bx3d=mxClient[_0x79fa[29]]&&(document[_0x79fa[30]]==null||document[_0x79fa[30]]==5);var _0x132bx3e=this[_0x79fa[1]][_0x79fa[371]];var _0x132bx3f=this[_0x79fa[1]][_0x79fa[372]];if(this[_0x79fa[1]]==document[_0x79fa[21]]){_0x132bx3e=document[_0x79fa[21]][_0x79fa[371]]||document[_0x79fa[151]][_0x79fa[371]];_0x132bx3f=(_0x132bx3d)?document[_0x79fa[21]][_0x79fa[372]]||document[_0x79fa[151]][_0x79fa[372]]:document[_0x79fa[151]][_0x79fa[372]]};var _0x132bx40=Math[_0x79fa[374]](0,Math[_0x79fa[373]](this[_0x79fa[138]],_0x132bx3e-this[_0x79fa[134]]-20));var _0x132bx41=Math[_0x79fa[374]](0,Math[_0x79fa[373]](this[_0x79fa[139]],_0x132bx3f-this[_0x79fa[135]]-this[_0x79fa[136]]-this[_0x79fa[137]]-this[_0x79fa[134]]-1));this[_0x79fa[23]][_0x79fa[6]][_0x79fa[375]]=this[_0x79fa[135]]+_0x79fa[376];this[_0x79fa[25]][_0x79fa[6]][_0x79fa[377]]=this[_0x79fa[135]]+_0x79fa[376];this[_0x79fa[25]][_0x79fa[6]][_0x79fa[375]]=this[_0x79fa[136]]+_0x79fa[376];var _0x132bx42=this[_0x79fa[135]]+this[_0x79fa[136]];if(!mxClient[_0x79fa[378]]){_0x132bx42+=1};this[_0x79fa[27]][_0x79fa[6]][_0x79fa[377]]=_0x132bx42+_0x79fa[376];this[_0x79fa[27]][_0x79fa[6]][_0x79fa[379]]=_0x132bx40+_0x79fa[376];this[_0x79fa[110]][_0x79fa[6]][_0x79fa[379]]=_0x132bx40+_0x79fa[376];this[_0x79fa[110]][_0x79fa[6]][_0x79fa[375]]=_0x132bx41+_0x79fa[376];this[_0x79fa[110]][_0x79fa[6]][_0x79fa[380]]=this[_0x79fa[137]]+_0x79fa[376];this[_0x79fa[26]][_0x79fa[6]][_0x79fa[381]]=(_0x132bx40+this[_0x79fa[134]])+_0x79fa[376];this[_0x79fa[26]][_0x79fa[6]][_0x79fa[377]]=this[_0x79fa[27]][_0x79fa[6]][_0x79fa[377]];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[375]]=this[_0x79fa[137]]+_0x79fa[376];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[382]]=_0x79fa[383];this[_0x79fa[384]][_0x79fa[6]][_0x79fa[377]]=this[_0x79fa[27]][_0x79fa[6]][_0x79fa[377]];this[_0x79fa[384]][_0x79fa[6]][_0x79fa[380]]=this[_0x79fa[110]][_0x79fa[6]][_0x79fa[380]];this[_0x79fa[384]][_0x79fa[6]][_0x79fa[381]]=_0x132bx40+_0x79fa[376];this[_0x79fa[385]][_0x79fa[6]][_0x79fa[379]]=this[_0x79fa[27]][_0x79fa[6]][_0x79fa[379]];this[_0x79fa[385]][_0x79fa[6]][_0x79fa[380]]=(_0x132bx41+this[_0x79fa[137]])+_0x79fa[376];if(_0x132bx3d){this[_0x79fa[23]][_0x79fa[6]][_0x79fa[379]]=_0x132bx3e+_0x79fa[376];this[_0x79fa[25]][_0x79fa[6]][_0x79fa[379]]=this[_0x79fa[23]][_0x79fa[6]][_0x79fa[379]];var _0x132bx43=(_0x132bx3f-_0x132bx41-this[_0x79fa[134]]-this[_0x79fa[137]]-this[_0x79fa[135]]-this[_0x79fa[136]]);this[_0x79fa[27]][_0x79fa[6]][_0x79fa[375]]=_0x132bx43+_0x79fa[376];this[_0x79fa[26]][_0x79fa[6]][_0x79fa[379]]=(_0x132bx3e-_0x132bx40-this[_0x79fa[134]])+_0x79fa[376];var _0x132bx44=(_0x132bx3f-this[_0x79fa[137]]-this[_0x79fa[135]]-this[_0x79fa[136]]);this[_0x79fa[26]][_0x79fa[6]][_0x79fa[375]]=_0x132bx44+_0x79fa[376];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[379]]=this[_0x79fa[23]][_0x79fa[6]][_0x79fa[379]];this[_0x79fa[384]][_0x79fa[6]][_0x79fa[375]]=_0x132bx44+_0x79fa[376]}else {this[_0x79fa[27]][_0x79fa[6]][_0x79fa[380]]=(_0x132bx41+this[_0x79fa[134]]+this[_0x79fa[137]])+_0x79fa[376];this[_0x79fa[26]][_0x79fa[6]][_0x79fa[380]]=this[_0x79fa[110]][_0x79fa[6]][_0x79fa[380]]}};EditorUi[_0x79fa[10]][_0x79fa[14]]=function(){this[_0x79fa[23]]=this[_0x79fa[387]](_0x79fa[386]);this[_0x79fa[25]]=this[_0x79fa[387]](_0x79fa[388]);this[_0x79fa[27]]=this[_0x79fa[387]](_0x79fa[389]);this[_0x79fa[110]]=this[_0x79fa[387]](_0x79fa[390]);this[_0x79fa[26]]=this[_0x79fa[387]](_0x79fa[391]);this[_0x79fa[28]]=this[_0x79fa[387]](_0x79fa[392]);this[_0x79fa[384]]=this[_0x79fa[387]](_0x79fa[393]);this[_0x79fa[385]]=this[_0x79fa[387]](_0x79fa[394]);this[_0x79fa[23]][_0x79fa[6]][_0x79fa[377]]=_0x79fa[395];this[_0x79fa[23]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[23]][_0x79fa[6]][_0x79fa[396]]=_0x79fa[395];this[_0x79fa[25]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[25]][_0x79fa[6]][_0x79fa[396]]=_0x79fa[395];this[_0x79fa[27]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[110]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[26]][_0x79fa[6]][_0x79fa[396]]=_0x79fa[395];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[396]]=_0x79fa[395];this[_0x79fa[28]][_0x79fa[6]][_0x79fa[380]]=_0x79fa[395];this[_0x79fa[385]][_0x79fa[6]][_0x79fa[381]]=_0x79fa[395];this[_0x79fa[385]][_0x79fa[6]][_0x79fa[375]]=this[_0x79fa[134]]+_0x79fa[376];this[_0x79fa[384]][_0x79fa[6]][_0x79fa[379]]=this[_0x79fa[134]]+_0x79fa[376]};EditorUi[_0x79fa[10]][_0x79fa[16]]=function(){this[_0x79fa[397]]=this[_0x79fa[13]][_0x79fa[399]](this[_0x79fa[387]](_0x79fa[398]));this[_0x79fa[23]][_0x79fa[400]](this[_0x79fa[397]][_0x79fa[1]]);this[_0x79fa[401]]=this[_0x79fa[403]](this[_0x79fa[387]](_0x79fa[402]));this[_0x79fa[25]][_0x79fa[400]](this[_0x79fa[401]][_0x79fa[1]]);this[_0x79fa[404]]=this[_0x79fa[405]](this[_0x79fa[27]]);this[_0x79fa[28]][_0x79fa[400]](this[_0x79fa[406]]());this[_0x79fa[407]]=this[_0x79fa[408]]();this[_0x79fa[0]][_0x79fa[33]](_0x79fa[409],mxUtils[_0x79fa[20]](this,function(){this[_0x79fa[411]](this[_0x79fa[0]][_0x79fa[410]]())}));this[_0x79fa[411]](this[_0x79fa[0]][_0x79fa[410]]());this[_0x79fa[397]][_0x79fa[1]][_0x79fa[400]](this[_0x79fa[407]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[23]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[25]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[27]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[110]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[26]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[28]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[384]]);this[_0x79fa[1]][_0x79fa[400]](this[_0x79fa[385]]);this[_0x79fa[412]](this[_0x79fa[384]],true,0,mxUtils[_0x79fa[20]](this,function(_0x132bx45){this[_0x79fa[138]]=_0x132bx45;this[_0x79fa[15]]();this[_0x79fa[0]][_0x79fa[4]][_0x79fa[131]]();this[_0x79fa[0]][_0x79fa[111]][_0x79fa[132]](false);this[_0x79fa[0]][_0x79fa[111]][_0x79fa[111]][_0x79fa[131]]()}));this[_0x79fa[412]](this[_0x79fa[385]],false,this[_0x79fa[137]],mxUtils[_0x79fa[20]](this,function(_0x132bx45){this[_0x79fa[139]]=_0x132bx45;this[_0x79fa[15]]();this[_0x79fa[0]][_0x79fa[111]][_0x79fa[132]](false);this[_0x79fa[0]][_0x79fa[111]][_0x79fa[111]][_0x79fa[131]]()}))};EditorUi[_0x79fa[10]][_0x79fa[408]]=function(){var _0x132bx2=document[_0x79fa[414]](_0x79fa[413]);_0x132bx2[_0x79fa[415]]=_0x79fa[416];return _0x132bx2};EditorUi[_0x79fa[10]][_0x79fa[408]]=function(){var _0x132bx2=document[_0x79fa[414]](_0x79fa[413]);_0x132bx2[_0x79fa[415]]=_0x79fa[416];return _0x132bx2};EditorUi[_0x79fa[10]][_0x79fa[411]]=function(_0x132bx45){this[_0x79fa[407]][_0x79fa[417]]=_0x132bx45};EditorUi[_0x79fa[10]][_0x79fa[403]]=function(_0x132bx2){return new Toolbar(this,_0x132bx2)};EditorUi[_0x79fa[10]][_0x79fa[405]]=function(_0x132bx2){return new Sidebar(this,_0x132bx2)};EditorUi[_0x79fa[10]][_0x79fa[406]]=function(){return this[_0x79fa[387]](_0x79fa[418])};EditorUi[_0x79fa[10]][_0x79fa[387]]=function(_0x132bx46){var _0x132bx47=document[_0x79fa[414]](_0x79fa[419]);_0x132bx47[_0x79fa[415]]=_0x132bx46;return _0x132bx47};EditorUi[_0x79fa[10]][_0x79fa[420]]=function(_0x132bx46){var _0x132bx47=document[_0x79fa[414]](_0x132bx46);return _0x132bx47};EditorUi[_0x79fa[10]][_0x79fa[421]]=function(_0x132bx46){var _0x132bx47=document[_0x79fa[414]](_0x79fa[422]);_0x132bx47[_0x79fa[415]]=_0x132bx46;return _0x132bx47};EditorUi[_0x79fa[10]][_0x79fa[412]]=function(_0x132bx47,_0x132bx48,_0x132bx49,_0x132bx4a){var _0x132bx4b=null;var _0x132bx4c=null;function _0x132bx4d(){return parseInt(((_0x132bx48)?_0x132bx47[_0x79fa[6]][_0x79fa[381]]:_0x132bx47[_0x79fa[6]][_0x79fa[380]]))}function _0x132bx4e(_0x132bx6){if(_0x132bx4b!=null){var _0x132bx4f= new mxPoint(mxEvent[_0x79fa[423]](_0x132bx6),mxEvent[_0x79fa[424]](_0x132bx6));_0x132bx4a(Math[_0x79fa[374]](0,_0x132bx4c+((_0x132bx48)?(_0x132bx4f[_0x79fa[425]]-_0x132bx4b[_0x79fa[425]]):(_0x132bx4b[_0x79fa[426]]-_0x132bx4f[_0x79fa[426]]))-_0x132bx49));mxEvent[_0x79fa[105]](_0x132bx6)}}function _0x132bx50(_0x132bx6){_0x132bx4e(_0x132bx6);_0x132bx4b=null;_0x132bx4c=null}mxEvent[_0x79fa[113]](_0x132bx47,function(_0x132bx6){_0x132bx4b= new mxPoint(mxEvent[_0x79fa[423]](_0x132bx6),mxEvent[_0x79fa[424]](_0x132bx6));_0x132bx4c=_0x132bx4d();mxEvent[_0x79fa[105]](_0x132bx6)});mxEvent[_0x79fa[33]](document,_0x79fa[427],_0x132bx4e);mxEvent[_0x79fa[33]](document,_0x79fa[428],_0x132bx4e);mxEvent[_0x79fa[33]](document,_0x79fa[429],_0x132bx50);mxEvent[_0x79fa[33]](document,_0x79fa[430],_0x132bx50)};EditorUi[_0x79fa[10]][_0x79fa[104]]=function(_0x132bx47,_0x132bx3e,_0x132bx3f,_0x132bx51,_0x132bx52,_0x132bx53){this[_0x79fa[431]]();this[_0x79fa[432]]= new Dialog(this,_0x132bx47,_0x132bx3e,(mxClient[_0x79fa[433]])?_0x132bx3f-12:_0x132bx3f,_0x132bx51,_0x132bx52,_0x132bx53)};EditorUi[_0x79fa[10]][_0x79fa[431]]=function(){if(this[_0x79fa[432]]!=null){this[_0x79fa[432]][_0x79fa[434]]();this[_0x79fa[432]]=null;this[_0x79fa[0]][_0x79fa[4]][_0x79fa[1]][_0x79fa[47]]()}};EditorUi[_0x79fa[10]][_0x79fa[435]]=function(_0x132bx54){if(!_0x132bx54&&this[_0x79fa[0]][_0x79fa[156]]!=null){this[_0x79fa[202]](this[_0x79fa[0]][_0x79fa[436]]())}else {this[_0x79fa[104]]( new SaveDialog(this)[_0x79fa[1]],300,100,true,true)}};EditorUi[_0x79fa[10]][_0x79fa[437]]=function(_0x132bx54){if(!_0x132bx54&&this[_0x79fa[0]][_0x79fa[156]]!=null){this[_0x79fa[302]](this[_0x79fa[0]][_0x79fa[436]]())}else {}};EditorUi[_0x79fa[10]][_0x79fa[438]]=function(_0x132bx55,_0x132bx56,_0x132bx57){var _0x132bx3=this[_0x79fa[0]][_0x79fa[4]];var _0x132bxb=_0x132bx3[_0x79fa[340]]();_0x132bx56=this[_0x79fa[439]]!=null?this[_0x79fa[439]]:_0x132bx56;_0x132bx3[_0x79fa[96]]()[_0x79fa[440]]();try{_0x132bx55[_0x79fa[441]](_0x132bx3[_0x79fa[300]](),_0x132bxb)}catch(e){throw e}finally{if(_0x132bx56&&navigator[_0x79fa[443]][_0x79fa[100]](_0x79fa[442])<0){var _0x132bx58= new mxMorphing(_0x132bx3);_0x132bx58[_0x79fa[33]](mxEvent.DONE,mxUtils[_0x79fa[20]](this,function(){_0x132bx3[_0x79fa[96]]()[_0x79fa[444]]()}));_0x132bx58[_0x79fa[445]]()}else {_0x132bx3[_0x79fa[96]]()[_0x79fa[444]]()}}};EditorUi[_0x79fa[10]][_0x79fa[128]]=function(_0x132bx1){var _0x132bx3=this[_0x79fa[0]][_0x79fa[4]];var _0x132bxf= new mxKeyHandler(_0x132bx3);_0x132bxf[_0x79fa[446]]=function(_0x132bx6){return mxEvent[_0x79fa[446]](_0x132bx6)||(mxClient[_0x79fa[447]]&&_0x132bx6[_0x79fa[448]])};function _0x132bx59(_0x132bx5a){if(!_0x132bx3[_0x79fa[321]]()){var _0x132bx49=0;var _0x132bx5b=0;if(_0x132bx5a==37){_0x132bx49= -1}else {if(_0x132bx5a==38){_0x132bx5b= -1}else {if(_0x132bx5a==39){_0x132bx49=1}else {if(_0x132bx5a==40){_0x132bx5b=1}}}};_0x132bx3[_0x79fa[449]](_0x132bx3[_0x79fa[322]](),_0x132bx49,_0x132bx5b);_0x132bx3[_0x79fa[450]](_0x132bx3[_0x79fa[340]]())}}var _0x132bx5c=mxUtils[_0x79fa[20]](this,function(_0x132bx5d,_0x132bx5e,_0x132bx2e,_0x132bx5f){var _0x132bx60=this[_0x79fa[12]][_0x79fa[143]](_0x132bx2e);if(_0x132bx60!=null){var _0x132bx1f=function(){if(_0x132bx60[_0x79fa[451]]){_0x132bx60[_0x79fa[452]]()}};if(_0x132bx5e){if(_0x132bx5f){_0x132bxf[_0x79fa[453]](_0x132bx5d,_0x132bx1f)}else {_0x132bxf[_0x79fa[454]](_0x132bx5d,_0x132bx1f)}}else {if(_0x132bx5f){_0x132bxf[_0x79fa[455]](_0x132bx5d,_0x132bx1f)}else {_0x132bxf[_0x79fa[456]](_0x132bx5d,_0x132bx1f)}}}});var _0x132bx61=this;var _0x132bx62=_0x132bxf[_0x79fa[457]];_0x132bxf[_0x79fa[457]]=function(_0x132bx6){_0x132bx61[_0x79fa[431]]();_0x132bx62[_0x79fa[50]](this,arguments)};_0x132bxf[_0x79fa[458]]=function(){};_0x132bxf[_0x79fa[456]](8,function(){_0x132bx3[_0x79fa[459]](true)});_0x132bxf[_0x79fa[456]](13,function(){_0x132bx3[_0x79fa[459]](false)});_0x132bxf[_0x79fa[456]](33,function(){_0x132bx3[_0x79fa[363]]()});_0x132bxf[_0x79fa[456]](34,function(){_0x132bx3[_0x79fa[364]]()});_0x132bxf[_0x79fa[456]](36,function(){_0x132bx3[_0x79fa[362]]()});_0x132bxf[_0x79fa[456]](35,function(){_0x132bx3[_0x79fa[15]]()});_0x132bxf[_0x79fa[456]](37,function(){_0x132bx59(37)});_0x132bxf[_0x79fa[456]](38,function(){_0x132bx59(38)});_0x132bxf[_0x79fa[456]](39,function(){_0x132bx59(39)});_0x132bxf[_0x79fa[456]](40,function(){_0x132bx59(40)});_0x132bxf[_0x79fa[456]](113,function(){_0x132bx3[_0x79fa[101]]()});_0x132bx5c(46,false,_0x79fa[323]);_0x132bx5c(82,true,_0x79fa[333]);_0x132bx5c(83,true,_0x79fa[202]);_0x132bx5c(83,true,_0x79fa[210],true);_0x132bx5c(107,false,_0x79fa[460]);_0x132bx5c(109,false,_0x79fa[461]);_0x132bx5c(65,true,_0x79fa[462]);_0x132bx5c(86,true,_0x79fa[463],true);_0x132bx5c(69,true,_0x79fa[464],true);_0x132bx5c(69,true,_0x79fa[465]);_0x132bx5c(66,true,_0x79fa[329]);_0x132bx5c(70,true,_0x79fa[328]);_0x132bx5c(68,true,_0x79fa[324]);_0x132bx5c(90,true,_0x79fa[317]);_0x132bx5c(89,true,_0x79fa[318]);_0x132bx5c(88,true,_0x79fa[146]);_0x132bx5c(67,true,_0x79fa[147]);_0x132bx5c(81,true,_0x79fa[466]);_0x132bx5c(86,true,_0x79fa[142]);_0x132bx5c(71,true,_0x79fa[339]);_0x132bx5c(71,true,_0x79fa[467],true);_0x132bx5c(85,true,_0x79fa[341]);_0x132bx5c(112,false,_0x79fa[468]);_0x132bx5c(80,true,_0x79fa[302],true);return _0x132bxf};EditorUi[_0x79fa[10]][_0x79fa[56]]=function(_0x132bx3,_0x132bx37,_0x132bx63,_0x132bx64){for(var _0x132bx38=0;_0x132bx38<_0x132bx37[_0x79fa[174]];_0x132bx38++){_0x132bx3[_0x79fa[471]]( new mxMultiplicity(true,_0x132bx37[_0x132bx38],null,null,_0x132bx63[_0x132bx38][0],_0x132bx63[_0x132bx38][1],null,mxResources[_0x79fa[143]](_0x132bx37[_0x132bx38])+mxResources[_0x79fa[143]](_0x79fa[469])+_0x132bx63[_0x132bx38][0]+mxResources[_0x79fa[143]](_0x79fa[470]),null));_0x132bx3[_0x79fa[471]]( new mxMultiplicity(false,_0x132bx37[_0x132bx38],null,null,_0x132bx64[_0x132bx38][0],_0x132bx64[_0x132bx38][1],null,mxResources[_0x79fa[143]](_0x132bx37[_0x132bx38])+mxResources[_0x79fa[143]](_0x79fa[469])+_0x132bx64[_0x132bx38][0]+mxResources[_0x79fa[143]](_0x79fa[472]),null))}} \ No newline at end of file diff --git a/public/assets/plugins/square/js/Graph.js b/public/assets/plugins/square/js/Graph.js index d6b4bd1..7f8fa1d 100644 --- a/public/assets/plugins/square/js/Graph.js +++ b/public/assets/plugins/square/js/Graph.js @@ -1 +1 @@ -var _0x5f70=["\x63\x61\x6C\x6C","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x61\x70\x70\x6C\x79","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x32","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6C\x6F\x61\x64\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x63\x75\x72\x73\x6F\x72","\x73\x74\x79\x6C\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x76\x69\x65\x77","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x68\x74\x6D\x6C","\x31","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x77\x72\x61\x70","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x61\x63\x74\x69\x76\x65","\x67\x72\x61\x70\x68","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x73\x74\x61\x72\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x6E\x69\x74\x54\x6F\x75\x63\x68","\x65\x78\x74\x65\x6E\x64","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x2F\x64\x65\x66\x61\x75\x6C\x74\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x64\x65\x63\x6F\x64\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x45\x4C\x42\x4F\x57\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x72\x6F\x75\x70","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","","\x69\x73\x56\x65\x72\x74\x65\x78","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x5F","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x67\x65\x74","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x6F\x62\x6A\x65\x63\x74","\x6C\x61\x62\x65\x6C","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x55\x73\x65\x72\x4F\x62\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x6C\x65\x6E\x67\x74\x68","\x6C\x69\x6E\x6B","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x61\x72\x6B\x65\x72","\x66\x69\x72\x73\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x73\x74\x61\x74\x65","\x73\x68\x61\x70\x65","\x6E\x6F\x64\x65","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x78","\x79","\x2F\x74\x6F\x75\x63\x68\x2D\x68\x61\x6E\x64\x6C\x65\x2E\x70\x6E\x67","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x72\x63","\x2F\x74\x6F\x75\x63\x68\x2D\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x69\x6E\x69\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x49\x6D\x67","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x32\x39\x70\x78","\x68\x65\x69\x67\x68\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x74\x69\x74\x6C\x65","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x70\x61\x64\x64\x69\x6E\x67","\x32\x70\x78","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x72\x65\x64\x72\x61\x77\x54\x6F\x6F\x6C\x73","\x72\x65\x64\x72\x61\x77","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x78","\x74\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x2F\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x49\x53\x5F\x49\x45","\x49\x53\x5F\x53\x56\x47","\x64\x69\x76","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x65\x6E\x74\x65\x72","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E"];Graph=function(_0xd536x1,_0xd536x2,_0xd536x3,_0xd536x4){mxGraph[_0x5f70[0]](this,_0xd536x1,_0xd536x2,_0xd536x3,_0xd536x4);this[_0x5f70[1]](true);this[_0x5f70[2]](false);this[_0x5f70[3]](true);this[_0x5f70[4]](!mxClient.IS_TOUCH);this[_0x5f70[5]](false);this[_0x5f70[6]](false);this[_0x5f70[7]]=true;this[_0x5f70[8]]=false;this[_0x5f70[9]]=false;this[_0x5f70[11]][_0x5f70[10]]=true;this[_0x5f70[12]](false);this[_0x5f70[11]][_0x5f70[13]](false);this[_0x5f70[11]][_0x5f70[14]]=function(){return mxConnectionHandler[_0x5f70[16]][_0x5f70[14]][_0x5f70[15]](this,arguments)&&urlParams[_0x5f70[17]]!=_0x5f70[18]};this[_0x5f70[19]]=_0x5f70[20];if(_0xd536x4==null){this[_0x5f70[21]]()};var _0xd536x5= new mxRubberband(this);this[_0x5f70[22]]=function(){return _0xd536x5};this[_0x5f70[29]][_0x5f70[28]](mxEvent.PAN_START,mxUtils[_0x5f70[27]](this,function(){this[_0x5f70[25]][_0x5f70[24]][_0x5f70[23]]=_0x5f70[26]}));this[_0x5f70[29]][_0x5f70[28]](mxEvent.PAN_END,mxUtils[_0x5f70[27]](this,function(){this[_0x5f70[25]][_0x5f70[24]][_0x5f70[23]]=_0x5f70[30]}));this[_0x5f70[31]]=function(_0xd536x6){var _0xd536x7=this[_0x5f70[33]][_0x5f70[32]](_0xd536x6);var _0xd536x8=(_0xd536x7!=null)?_0xd536x7[_0x5f70[24]]:this[_0x5f70[34]](_0xd536x6);return _0xd536x8[_0x5f70[35]]==_0x5f70[36]||_0xd536x8[_0x5f70[37]]==_0x5f70[38]};this[_0x5f70[40]][_0x5f70[39]]=function(_0xd536x7){var _0xd536x9=mxCellRenderer[_0x5f70[16]][_0x5f70[39]][_0x5f70[15]](this,arguments);if(_0xd536x7[_0x5f70[24]][_0x5f70[37]]==_0x5f70[38]&&_0xd536x7[_0x5f70[24]][_0x5f70[35]]!=1){_0xd536x9=mxUtils[_0x5f70[41]](_0xd536x9,false)};return _0xd536x9};this[_0x5f70[42]]=function(_0xd536x6){return false};this[_0x5f70[11]][_0x5f70[43]]=16;var _0xd536xa=this[_0x5f70[11]][_0x5f70[44]];this[_0x5f70[11]][_0x5f70[44]]=function(_0xd536xb,_0xd536x7){if(_0xd536x7==null){if(!this[_0x5f70[46]][_0x5f70[29]][_0x5f70[45]]){_0xd536x5[_0x5f70[49]](_0xd536xb[_0x5f70[47]](),_0xd536xb[_0x5f70[48]]());this[_0x5f70[46]][_0x5f70[29]][_0x5f70[50]]=false}}else {if(tapAndHoldStartsConnection){_0xd536xa[_0x5f70[15]](this,arguments)}else {if(this[_0x5f70[46]][_0x5f70[52]](_0xd536x7[_0x5f70[51]])&&this[_0x5f70[46]][_0x5f70[53]]()>1){this[_0x5f70[46]][_0x5f70[54]](_0xd536x7[_0x5f70[51]])}}}};if(touchStyle){this[_0x5f70[55]]()}};mxUtils[_0x5f70[56]](Graph,mxGraph);Graph[_0x5f70[16]][_0x5f70[57]]=null;Graph[_0x5f70[16]][_0x5f70[58]]=null;Graph[_0x5f70[16]][_0x5f70[21]]=function(){var _0xd536xc=mxUtils[_0x5f70[61]](STYLE_PATH+_0x5f70[60])[_0x5f70[59]]();var _0xd536xd= new mxCodec(_0xd536xc[_0x5f70[62]]);_0xd536xd[_0x5f70[64]](_0xd536xc,this[_0x5f70[63]]())};Graph[_0x5f70[16]][_0x5f70[65]]=function(_0xd536xe){if(_0xd536xe!=null){var _0xd536x7=this[_0x5f70[33]][_0x5f70[32]](_0xd536xe);var _0xd536x8=(_0xd536x7!=null)?_0xd536x7[_0x5f70[24]]:this[_0x5f70[34]](_0xd536xe);if(_0xd536x8!=null){var _0xd536xf=mxUtils[_0x5f70[66]](_0xd536x8,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL);var _0xd536x10=(_0xd536xf==mxConstants[_0x5f70[67]])?mxConstants[_0x5f70[68]]:mxConstants[_0x5f70[67]];this[_0x5f70[69]](mxConstants.STYLE_ELBOW,_0xd536x10,[_0xd536xe])}}};Graph[_0x5f70[16]][_0x5f70[70]]=function(_0xd536x6){if(_0xd536x6!=null&&this[_0x5f70[72]]()[_0x5f70[71]](_0xd536x6)){var _0xd536x11=this[_0x5f70[72]]()[_0x5f70[73]]([_0xd536x6])[0];if(_0xd536x11[_0x5f70[74]]!=null){_0xd536x11[_0x5f70[74]][_0x5f70[75]]=null};var _0xd536x8=_0xd536x11[_0x5f70[76]]();_0xd536x8=mxUtils[_0x5f70[77]](_0xd536x8,mxConstants.STYLE_ENTRY_X,null);_0xd536x8=mxUtils[_0x5f70[77]](_0xd536x8,mxConstants.STYLE_ENTRY_Y,null);_0xd536x8=mxUtils[_0x5f70[77]](_0xd536x8,mxConstants.STYLE_EXIT_X,null);_0xd536x8=mxUtils[_0x5f70[77]](_0xd536x8,mxConstants.STYLE_EXIT_Y,null);_0xd536x11[_0x5f70[77]](_0xd536x8);this[_0x5f70[11]][_0x5f70[78]]=function(_0xd536xb){return this[_0x5f70[46]][_0x5f70[33]][_0x5f70[79]](_0xd536x11)};this[_0x5f70[11]][_0x5f70[80]]=function(){return this[_0x5f70[46]][_0x5f70[73]]([_0xd536x11])[0]}}};Graph[_0x5f70[16]][_0x5f70[81]]=function(_0xd536x6){return this[_0x5f70[82]]&&this[_0x5f70[83]](_0xd536x6)};Graph[_0x5f70[16]][_0x5f70[84]]=function(_0xd536x6){return this[_0x5f70[83]](_0xd536x6)};Graph[_0x5f70[16]][_0x5f70[85]]=function(){var _0xd536x12=mxGraph[_0x5f70[16]][_0x5f70[85]][_0x5f70[15]](this,arguments);_0xd536x12[_0x5f70[77]](_0x5f70[86]);return _0xd536x12};Graph[_0x5f70[16]][_0x5f70[87]]=function(_0xd536x6){var _0xd536x13=_0x5f70[88];if(this[_0x5f70[72]]()[_0x5f70[89]](_0xd536x6)){_0xd536x13+=mxResources[_0x5f70[93]](_0x5f70[90]+_0xd536x6[_0x5f70[92]][_0x5f70[91]])||_0x5f70[88]}else {if(this[_0x5f70[72]]()[_0x5f70[71]](_0xd536x6)){_0xd536x13=mxGraph[_0x5f70[16]][_0x5f70[87]][_0x5f70[15]](this,arguments)}};return _0xd536x13};Graph[_0x5f70[16]][_0x5f70[94]]=function(_0xd536x6){if(_0xd536x6[_0x5f70[92]]!=null&& typeof (_0xd536x6[_0x5f70[92]])==_0x5f70[95]){return _0xd536x6[_0x5f70[92]][_0x5f70[97]](_0x5f70[96])};return mxGraph[_0x5f70[16]][_0x5f70[94]][_0x5f70[15]](this,arguments)};Graph[_0x5f70[16]][_0x5f70[98]]=function(_0xd536x6,_0xd536x10,_0xd536x14){if(_0xd536x6[_0x5f70[92]]!=null&& typeof (_0xd536x6[_0x5f70[92]])==_0x5f70[95]){var _0xd536x15=_0xd536x6[_0x5f70[92]][_0x5f70[99]](true);_0xd536x15[_0x5f70[100]](_0x5f70[96],_0xd536x10);_0xd536x10=_0xd536x15};mxGraph[_0x5f70[16]][_0x5f70[98]][_0x5f70[15]](this,arguments)};Graph[_0x5f70[16]][_0x5f70[101]]=function(_0xd536x6,_0xd536x16){var _0xd536x10=null;if(_0xd536x6[_0x5f70[92]]!=null&& typeof (_0xd536x6[_0x5f70[92]])==_0x5f70[95]){_0xd536x10=_0xd536x6[_0x5f70[92]][_0x5f70[99]](true)}else {var _0xd536x17=mxUtils[_0x5f70[102]]();_0xd536x10=_0xd536x17[_0x5f70[104]](_0x5f70[103]);_0xd536x10[_0x5f70[100]](_0x5f70[96],_0xd536x6[_0x5f70[92]])};if(_0xd536x16!=null&&_0xd536x16[_0x5f70[105]]>0){_0xd536x10[_0x5f70[100]](_0x5f70[106],_0xd536x16)}else {_0xd536x10[_0x5f70[107]](_0x5f70[106])};this[_0x5f70[109]][_0x5f70[108]](_0xd536x6,_0xd536x10)};Graph[_0x5f70[16]][_0x5f70[110]]=function(_0xd536x6){if(_0xd536x6[_0x5f70[92]]!=null&& typeof (_0xd536x6[_0x5f70[92]])==_0x5f70[95]){return _0xd536x6[_0x5f70[92]][_0x5f70[97]](_0x5f70[106])};return null};Graph[_0x5f70[16]][_0x5f70[55]]=function(){this[_0x5f70[11]][_0x5f70[112]][_0x5f70[111]]=function(){return this[_0x5f70[46]][_0x5f70[11]][_0x5f70[113]]!=null};this[_0x5f70[28]](mxEvent.START_EDITING,function(_0xd536x18,_0xd536x19){this[_0x5f70[29]][_0x5f70[114]]()});var _0xd536x1a=false;var _0xd536x1b=null;this[_0x5f70[115]]=function(_0xd536xb){mxGraph[_0x5f70[16]][_0x5f70[115]][_0x5f70[15]](this,arguments);if(_0xd536xb[_0x5f70[32]]()==null){var _0xd536x6=this[_0x5f70[118]](_0xd536xb[_0x5f70[116]],_0xd536xb[_0x5f70[117]]);if(this[_0x5f70[72]]()[_0x5f70[71]](_0xd536x6)){_0xd536xb[_0x5f70[119]]=this[_0x5f70[33]][_0x5f70[32]](_0xd536x6);if(_0xd536xb[_0x5f70[119]]!=null&&_0xd536xb[_0x5f70[119]][_0x5f70[120]]!=null){this[_0x5f70[25]][_0x5f70[24]][_0x5f70[23]]=_0xd536xb[_0x5f70[119]][_0x5f70[120]][_0x5f70[121]][_0x5f70[24]][_0x5f70[23]]}}};if(_0xd536xb[_0x5f70[32]]()==null){this[_0x5f70[25]][_0x5f70[24]][_0x5f70[23]]=_0x5f70[30]}};this[_0x5f70[122]]=function(_0xd536x1c,_0xd536xb,_0xd536x18){if(_0xd536x1c==mxEvent[_0x5f70[123]]){if(!this[_0x5f70[29]][_0x5f70[124]]()){_0xd536x1b=_0xd536xb[_0x5f70[125]]();_0xd536x1a=(_0xd536x1b!=null)?this[_0x5f70[52]](_0xd536x1b):this[_0x5f70[126]]()}else {_0xd536x1a=false;_0xd536x1b=null}}else {if(_0xd536x1c==mxEvent[_0x5f70[127]]){if(_0xd536x1a&&!this[_0x5f70[128]]()){if(!this[_0x5f70[29]][_0x5f70[124]]()){var _0xd536x1d=mxEvent[_0x5f70[130]](_0xd536xb[_0x5f70[129]]());var _0xd536x1e=mxEvent[_0x5f70[131]](_0xd536xb[_0x5f70[129]]());this[_0x5f70[29]][_0x5f70[132]](_0xd536x1d+16,_0xd536x1e,_0xd536x1b,_0xd536xb[_0x5f70[129]]())};_0xd536x1a=false;_0xd536x1b=null;_0xd536xb[_0x5f70[133]]();return};_0xd536x1a=false;_0xd536x1b=null}};mxGraph[_0x5f70[16]][_0x5f70[122]][_0x5f70[15]](this,arguments);if(_0xd536x1c==mxEvent[_0x5f70[134]]&&_0xd536xb[_0x5f70[135]]()){_0xd536x1a=false;_0xd536x1b=null}}};(function(){mxVertexHandler[_0x5f70[16]][_0x5f70[136]]=true;mxText[_0x5f70[16]][_0x5f70[137]]=5;mxText[_0x5f70[16]][_0x5f70[138]]=1;if(touchStyle){mxConstants[_0x5f70[139]]=16;mxConstants[_0x5f70[140]]=7;if(mxClient[_0x5f70[141]]){mxVertexHandler[_0x5f70[16]][_0x5f70[142]]=4;mxEdgeHandler[_0x5f70[16]][_0x5f70[142]]=6;Graph[_0x5f70[16]][_0x5f70[142]]=14;Graph[_0x5f70[16]][_0x5f70[143]]=20;mxPanningHandler[_0x5f70[16]][_0x5f70[144]]=false;mxPanningHandler[_0x5f70[16]][_0x5f70[145]]=true;mxPanningHandler[_0x5f70[16]][_0x5f70[146]]=function(_0xd536xb){var _0xd536x19=_0xd536xb[_0x5f70[129]]();return (this[_0x5f70[145]]&&(this[_0x5f70[147]]||_0xd536xb[_0x5f70[32]]()==null))||(mxEvent[_0x5f70[148]](_0xd536x19)&&mxEvent[_0x5f70[149]](_0xd536x19))||(this[_0x5f70[150]]&&mxEvent[_0x5f70[151]](_0xd536x19))}};var _0xd536x1f=mxGraphHandler[_0x5f70[16]][_0x5f70[152]];mxGraphHandler[_0x5f70[16]][_0x5f70[152]]=function(_0xd536x18,_0xd536xb){_0xd536x1f[_0x5f70[15]](this,arguments);if(this[_0x5f70[46]][_0x5f70[52]](_0xd536xb[_0x5f70[125]]())&&this[_0x5f70[46]][_0x5f70[53]]()>1){this[_0x5f70[153]]=false}};Graph[_0x5f70[16]][_0x5f70[154]]=function(_0xd536x1){this[_0x5f70[155]]= new mxTooltipHandler(this);this[_0x5f70[155]][_0x5f70[156]](false);this[_0x5f70[157]]= new mxSelectionCellsHandler(this);this[_0x5f70[29]]= new mxPanningHandler(this);this[_0x5f70[29]][_0x5f70[158]]=false;this[_0x5f70[11]]= new mxConnectionHandler(this);this[_0x5f70[11]][_0x5f70[156]](false);this[_0x5f70[159]]= new mxGraphHandler(this)};mxConnectionHandler[_0x5f70[16]][_0x5f70[160]]=function(_0xd536xe,_0xd536x20){if(touchStyle&&_0xd536x20!=null){this[_0x5f70[46]][_0x5f70[161]](_0xd536x20)}else {this[_0x5f70[46]][_0x5f70[161]](_0xd536xe)}};var _0xd536x21=mxGraph[_0x5f70[16]][_0x5f70[162]];Graph[_0x5f70[16]][_0x5f70[162]]=function(_0xd536x19,_0xd536x6){if(_0xd536x6==null){var _0xd536x22=mxUtils[_0x5f70[163]](this[_0x5f70[25]],mxEvent[_0x5f70[130]](_0xd536x19),mxEvent[_0x5f70[131]](_0xd536x19));_0xd536x6=this[_0x5f70[118]](_0xd536x22[_0x5f70[164]],_0xd536x22[_0x5f70[165]])};_0xd536x21[_0x5f70[0]](this,_0xd536x19,_0xd536x6)};var _0xd536x23= new mxImage(IMAGE_PATH+_0x5f70[166],16,16);mxVertexHandler[_0x5f70[16]][_0x5f70[167]]=_0xd536x23;mxEdgeHandler[_0x5f70[16]][_0x5f70[167]]=_0xd536x23;mxOutline[_0x5f70[16]][_0x5f70[168]]=_0xd536x23; new Image()[_0x5f70[169]]=_0xd536x23[_0x5f70[169]];var _0xd536x24=IMAGE_PATH+_0x5f70[170];var _0xd536x25=mxVertexHandler[_0x5f70[16]][_0x5f70[171]];mxVertexHandler[_0x5f70[16]][_0x5f70[171]]=function(){_0xd536x25[_0x5f70[15]](this,arguments);if(showConnectorImg&&this[_0x5f70[46]][_0x5f70[11]][_0x5f70[111]]()&&this[_0x5f70[46]][_0x5f70[172]](this[_0x5f70[119]][_0x5f70[51]])&&!this[_0x5f70[46]][_0x5f70[84]](this[_0x5f70[119]][_0x5f70[51]])&&this[_0x5f70[46]][_0x5f70[53]]()==1){this[_0x5f70[173]]=mxUtils[_0x5f70[174]](_0xd536x24);this[_0x5f70[173]][_0x5f70[24]][_0x5f70[23]]=_0x5f70[26];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[175]]=_0x5f70[176];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[177]]=_0x5f70[176];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[178]]=_0x5f70[179];if(!mxClient[_0x5f70[141]]){this[_0x5f70[173]][_0x5f70[100]](_0x5f70[180],mxResources[_0x5f70[93]](_0x5f70[17]));mxEvent[_0x5f70[181]](this[_0x5f70[173]],this[_0x5f70[46]],this[_0x5f70[119]])};this[_0x5f70[173]][_0x5f70[24]][_0x5f70[182]]=_0x5f70[183];mxEvent[_0x5f70[185]](this[_0x5f70[173]],mxUtils[_0x5f70[27]](this,function(_0xd536x19){this[_0x5f70[46]][_0x5f70[29]][_0x5f70[114]]();var _0xd536x22=mxUtils[_0x5f70[163]](this[_0x5f70[46]][_0x5f70[25]],mxEvent[_0x5f70[130]](_0xd536x19),mxEvent[_0x5f70[131]](_0xd536x19));this[_0x5f70[46]][_0x5f70[11]][_0x5f70[49]](this[_0x5f70[119]],_0xd536x22[_0x5f70[164]],_0xd536x22[_0x5f70[165]]);this[_0x5f70[46]][_0x5f70[184]]=true;mxEvent[_0x5f70[133]](_0xd536x19)}));this[_0x5f70[46]][_0x5f70[25]][_0x5f70[186]](this[_0x5f70[173]])};this[_0x5f70[187]]()};var _0xd536x26=mxVertexHandler[_0x5f70[16]][_0x5f70[188]];mxVertexHandler[_0x5f70[16]][_0x5f70[188]]=function(){_0xd536x26[_0x5f70[15]](this);this[_0x5f70[187]]()};mxVertexHandler[_0x5f70[16]][_0x5f70[187]]=function(){if(this[_0x5f70[119]]!=null&&this[_0x5f70[173]]!=null){if(mxVertexHandler[_0x5f70[16]][_0x5f70[189]]){this[_0x5f70[173]][_0x5f70[24]][_0x5f70[190]]=(this[_0x5f70[119]][_0x5f70[164]]+this[_0x5f70[119]][_0x5f70[175]]-this[_0x5f70[173]][_0x5f70[191]]/2)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[193]]=(this[_0x5f70[119]][_0x5f70[165]]-this[_0x5f70[173]][_0x5f70[194]]/2)+_0x5f70[192]}else {this[_0x5f70[173]][_0x5f70[24]][_0x5f70[190]]=(this[_0x5f70[119]][_0x5f70[164]]+this[_0x5f70[119]][_0x5f70[175]]+mxConstants[_0x5f70[139]]/2+4)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[193]]=(this[_0x5f70[119]][_0x5f70[165]]+(this[_0x5f70[119]][_0x5f70[177]]-this[_0x5f70[173]][_0x5f70[194]])/2)+_0x5f70[192]}}};var _0xd536x27=mxVertexHandler[_0x5f70[16]][_0x5f70[195]];mxVertexHandler[_0x5f70[16]][_0x5f70[195]]=function(_0xd536x18,_0xd536xb){_0xd536x27[_0x5f70[15]](this,arguments);if(this[_0x5f70[173]]!=null){this[_0x5f70[173]][_0x5f70[197]][_0x5f70[196]](this[_0x5f70[173]]);this[_0x5f70[173]]=null}}; new Image()[_0x5f70[169]]=_0xd536x24}else {var _0xd536x28= new mxImage(IMAGE_PATH+_0x5f70[198],15,15);mxConnectionHandler[_0x5f70[16]][_0x5f70[199]]=_0xd536x28; new Image()[_0x5f70[169]]=_0xd536x28[_0x5f70[169]];if(urlParams[_0x5f70[17]]==_0x5f70[18]){var _0xd536x28= new mxImage(IMAGE_PATH+_0x5f70[198],15,15);var _0xd536x25=mxVertexHandler[_0x5f70[16]][_0x5f70[171]];mxVertexHandler[_0x5f70[16]][_0x5f70[171]]=function(){_0xd536x25[_0x5f70[15]](this,arguments);if(showConnectorImg&&this[_0x5f70[46]][_0x5f70[11]][_0x5f70[111]]()&&this[_0x5f70[46]][_0x5f70[172]](this[_0x5f70[119]][_0x5f70[51]])&&!this[_0x5f70[46]][_0x5f70[84]](this[_0x5f70[119]][_0x5f70[51]])&&this[_0x5f70[46]][_0x5f70[53]]()==1){if(mxClient[_0x5f70[200]]&&!mxClient[_0x5f70[201]]){this[_0x5f70[173]]=document[_0x5f70[104]](_0x5f70[202]);this[_0x5f70[173]][_0x5f70[24]][_0x5f70[203]]=_0x5f70[204]+_0xd536x28[_0x5f70[169]]+_0x5f70[205];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[206]]=_0x5f70[207];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[208]]=_0x5f70[209];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[175]]=(_0xd536x28[_0x5f70[175]]+4)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[177]]=(_0xd536x28[_0x5f70[177]]+4)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[210]]=(mxClient[_0x5f70[211]])?_0x5f70[212]:_0x5f70[213]}else {this[_0x5f70[173]]=mxUtils[_0x5f70[174]](_0xd536x28[_0x5f70[169]]);this[_0x5f70[173]][_0x5f70[24]][_0x5f70[175]]=_0xd536x28[_0x5f70[175]]+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[177]]=_0xd536x28[_0x5f70[177]]+_0x5f70[192]};this[_0x5f70[173]][_0x5f70[24]][_0x5f70[23]]=_0x5f70[26];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[178]]=_0x5f70[179];this[_0x5f70[173]][_0x5f70[100]](_0x5f70[180],mxResources[_0x5f70[93]](_0x5f70[17]));mxEvent[_0x5f70[181]](this[_0x5f70[173]],this[_0x5f70[46]],this[_0x5f70[119]]);this[_0x5f70[173]][_0x5f70[24]][_0x5f70[182]]=_0x5f70[183];mxEvent[_0x5f70[28]](this[_0x5f70[173]],_0x5f70[214],mxUtils[_0x5f70[27]](this,function(_0xd536x19){this[_0x5f70[46]][_0x5f70[29]][_0x5f70[114]]();var _0xd536x22=mxUtils[_0x5f70[163]](this[_0x5f70[46]][_0x5f70[25]],mxEvent[_0x5f70[130]](_0xd536x19),mxEvent[_0x5f70[131]](_0xd536x19));this[_0x5f70[46]][_0x5f70[11]][_0x5f70[49]](this[_0x5f70[119]],_0xd536x22[_0x5f70[164]],_0xd536x22[_0x5f70[165]]);this[_0x5f70[46]][_0x5f70[184]]=true;mxEvent[_0x5f70[133]](_0xd536x19)}));this[_0x5f70[46]][_0x5f70[25]][_0x5f70[186]](this[_0x5f70[173]])};this[_0x5f70[187]]()};var _0xd536x26=mxVertexHandler[_0x5f70[16]][_0x5f70[188]];mxVertexHandler[_0x5f70[16]][_0x5f70[188]]=function(){_0xd536x26[_0x5f70[15]](this);this[_0x5f70[187]]()};mxVertexHandler[_0x5f70[16]][_0x5f70[187]]=function(){if(this[_0x5f70[119]]!=null&&this[_0x5f70[173]]!=null){if(mxVertexHandler[_0x5f70[16]][_0x5f70[189]]){this[_0x5f70[173]][_0x5f70[24]][_0x5f70[190]]=(this[_0x5f70[119]][_0x5f70[164]]+this[_0x5f70[119]][_0x5f70[175]]-this[_0x5f70[173]][_0x5f70[191]]/2)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[193]]=(this[_0x5f70[119]][_0x5f70[165]]-this[_0x5f70[173]][_0x5f70[194]]/2)+_0x5f70[192]}else {this[_0x5f70[173]][_0x5f70[24]][_0x5f70[190]]=(this[_0x5f70[119]][_0x5f70[164]]+this[_0x5f70[119]][_0x5f70[175]]+mxConstants[_0x5f70[139]]/2+2)+_0x5f70[192];this[_0x5f70[173]][_0x5f70[24]][_0x5f70[193]]=(this[_0x5f70[119]][_0x5f70[165]]+(this[_0x5f70[119]][_0x5f70[177]]-this[_0x5f70[173]][_0x5f70[194]])/2)+_0x5f70[192]}}};var _0xd536x27=mxVertexHandler[_0x5f70[16]][_0x5f70[195]];mxVertexHandler[_0x5f70[16]][_0x5f70[195]]=function(_0xd536x18,_0xd536xb){_0xd536x27[_0x5f70[15]](this,arguments);if(this[_0x5f70[173]]!=null){this[_0x5f70[173]][_0x5f70[197]][_0x5f70[196]](this[_0x5f70[173]]);this[_0x5f70[173]]=null}}}}})() \ No newline at end of file +var _0x8ea8=["\x63\x61\x6C\x6C","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x73\x65\x74\x44\x72\x6F\x70\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x50\x61\x6E\x6E\x69\x6E\x67","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x4C\x6F\x6F\x70\x73","\x73\x65\x74\x4D\x75\x6C\x74\x69\x67\x72\x61\x70\x68","\x61\x6C\x6C\x6F\x77\x41\x75\x74\x6F\x50\x61\x6E\x6E\x69\x6E\x67","\x72\x65\x73\x65\x74\x45\x64\x67\x65\x73\x4F\x6E\x43\x6F\x6E\x6E\x65\x63\x74","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x43\x68\x69\x6C\x64\x72\x65\x6E","\x74\x61\x72\x67\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x41\x6C\x6C\x6F\x77\x44\x61\x6E\x67\x6C\x69\x6E\x67\x45\x64\x67\x65\x73","\x73\x65\x74\x43\x72\x65\x61\x74\x65\x54\x61\x72\x67\x65\x74","\x69\x73\x56\x61\x6C\x69\x64\x53\x6F\x75\x72\x63\x65","\x61\x70\x70\x6C\x79","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x6E\x65\x63\x74","\x32","\x61\x6C\x74\x65\x72\x6E\x61\x74\x65\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6C\x6F\x61\x64\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x67\x65\x74\x52\x75\x62\x62\x65\x72\x62\x61\x6E\x64","\x63\x75\x72\x73\x6F\x72","\x73\x74\x79\x6C\x65","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x65\x66\x61\x75\x6C\x74","\x69\x73\x48\x74\x6D\x6C\x4C\x61\x62\x65\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x76\x69\x65\x77","\x67\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65","\x68\x74\x6D\x6C","\x31","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x77\x72\x61\x70","\x67\x65\x74\x4C\x61\x62\x65\x6C\x56\x61\x6C\x75\x65","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x68\x74\x6D\x6C\x45\x6E\x74\x69\x74\x69\x65\x73","\x69\x73\x43\x65\x6C\x6C\x4C\x6F\x63\x6B\x65\x64","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64\x54\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x74\x61\x70\x41\x6E\x64\x48\x6F\x6C\x64","\x61\x63\x74\x69\x76\x65","\x67\x72\x61\x70\x68","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x73\x74\x61\x72\x74","\x70\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x63\x65\x6C\x6C","\x69\x73\x43\x65\x6C\x6C\x53\x65\x6C\x65\x63\x74\x65\x64","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x69\x6E\x69\x74\x54\x6F\x75\x63\x68","\x65\x78\x74\x65\x6E\x64","\x6D\x69\x6E\x46\x69\x74\x53\x63\x61\x6C\x65","\x6D\x61\x78\x46\x69\x74\x53\x63\x61\x6C\x65","\x67\x65\x74\x44\x6F\x63\x75\x6D\x65\x6E\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x2F\x64\x65\x66\x61\x75\x6C\x74\x2E\x78\x6D\x6C","\x6C\x6F\x61\x64","\x6F\x77\x6E\x65\x72\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x64\x65\x63\x6F\x64\x65","\x66\x6C\x69\x70\x45\x64\x67\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x45\x4C\x42\x4F\x57\x5F\x48\x4F\x52\x49\x5A\x4F\x4E\x54\x41\x4C","\x45\x4C\x42\x4F\x57\x5F\x56\x45\x52\x54\x49\x43\x41\x4C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x69\x73\x45\x64\x67\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x6C\x6F\x6E\x65\x43\x65\x6C\x6C\x73","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x70\x6F\x69\x6E\x74\x73","\x67\x65\x74\x53\x74\x79\x6C\x65","\x73\x65\x74\x53\x74\x79\x6C\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x53\x74\x61\x74\x65","\x63\x72\x65\x61\x74\x65\x53\x74\x61\x74\x65","\x66\x61\x63\x74\x6F\x72\x79\x4D\x65\x74\x68\x6F\x64","\x69\x73\x43\x65\x6C\x6C\x46\x6F\x6C\x64\x61\x62\x6C\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x77\x69\x6D\x6C\x61\x6E\x65","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x63\x72\x65\x61\x74\x65\x47\x72\x6F\x75\x70\x43\x65\x6C\x6C","\x67\x72\x6F\x75\x70","\x67\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x46\x6F\x72\x43\x65\x6C\x6C","","\x69\x73\x56\x65\x72\x74\x65\x78","\x64\x65\x73\x63\x72\x69\x70\x74\x69\x6F\x6E\x5F","\x6E\x6F\x64\x65\x4E\x61\x6D\x65","\x76\x61\x6C\x75\x65","\x67\x65\x74","\x63\x6F\x6E\x76\x65\x72\x74\x56\x61\x6C\x75\x65\x54\x6F\x53\x74\x72\x69\x6E\x67","\x6F\x62\x6A\x65\x63\x74","\x6C\x61\x62\x65\x6C","\x67\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x65\x6C\x6C\x4C\x61\x62\x65\x6C\x43\x68\x61\x6E\x67\x65\x64","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x55\x73\x65\x72\x4F\x62\x6A\x65\x63\x74","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x6C\x65\x6E\x67\x74\x68","\x6C\x69\x6E\x6B","\x72\x65\x6D\x6F\x76\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x73\x65\x74\x56\x61\x6C\x75\x65","\x6D\x6F\x64\x65\x6C","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x6D\x61\x72\x6B\x65\x72","\x66\x69\x72\x73\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x75\x70\x64\x61\x74\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x67\x72\x61\x70\x68\x58","\x67\x72\x61\x70\x68\x59","\x67\x65\x74\x43\x65\x6C\x6C\x41\x74","\x73\x74\x61\x74\x65","\x73\x68\x61\x70\x65","\x6E\x6F\x64\x65","\x66\x69\x72\x65\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74","\x4D\x4F\x55\x53\x45\x5F\x44\x4F\x57\x4E","\x69\x73\x4D\x65\x6E\x75\x53\x68\x6F\x77\x69\x6E\x67","\x67\x65\x74\x43\x65\x6C\x6C","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x4D\x4F\x55\x53\x45\x5F\x55\x50","\x69\x73\x45\x64\x69\x74\x69\x6E\x67","\x67\x65\x74\x45\x76\x65\x6E\x74","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x4D\x4F\x55\x53\x45\x5F\x4D\x4F\x56\x45","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x72\x6F\x74\x61\x74\x69\x6F\x6E\x45\x6E\x61\x62\x6C\x65\x64","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x54\x6F\x70","\x62\x61\x73\x65\x53\x70\x61\x63\x69\x6E\x67\x42\x6F\x74\x74\x6F\x6D","\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x4C\x41\x42\x45\x4C\x5F\x48\x41\x4E\x44\x4C\x45\x5F\x53\x49\x5A\x45","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x67\x72\x69\x64\x53\x69\x7A\x65","\x73\x65\x6C\x65\x63\x74\x4F\x6E\x50\x6F\x70\x75\x70","\x75\x73\x65\x4C\x65\x66\x74\x42\x75\x74\x74\x6F\x6E\x46\x6F\x72\x50\x61\x6E\x6E\x69\x6E\x67","\x69\x73\x50\x61\x6E\x6E\x69\x6E\x67\x54\x72\x69\x67\x67\x65\x72","\x69\x67\x6E\x6F\x72\x65\x43\x65\x6C\x6C","\x69\x73\x43\x6F\x6E\x74\x72\x6F\x6C\x44\x6F\x77\x6E","\x69\x73\x53\x68\x69\x66\x74\x44\x6F\x77\x6E","\x75\x73\x65\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x6D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x64\x65\x6C\x61\x79\x65\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x43\x65\x6C\x6C\x73","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x64\x62\x6C\x43\x6C\x69\x63\x6B","\x63\x6F\x6E\x76\x65\x72\x74\x50\x6F\x69\x6E\x74","\x78","\x79","\x2F\x74\x6F\x75\x63\x68\x2D\x68\x61\x6E\x64\x6C\x65\x2E\x70\x6E\x67","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x69\x7A\x65\x72\x49\x6D\x61\x67\x65","\x73\x72\x63","\x2F\x74\x6F\x75\x63\x68\x2D\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x69\x6E\x69\x74","\x69\x73\x43\x65\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x49\x6D\x67","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x32\x39\x70\x78","\x68\x65\x69\x67\x68\x74","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x74\x69\x74\x6C\x65","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x70\x61\x64\x64\x69\x6E\x67","\x32\x70\x78","\x69\x73\x4D\x6F\x75\x73\x65\x44\x6F\x77\x6E","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x72\x65\x64\x72\x61\x77\x54\x6F\x6F\x6C\x73","\x72\x65\x64\x72\x61\x77","\x73\x69\x6E\x67\x6C\x65\x53\x69\x7A\x65\x72","\x6C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x78","\x74\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x64\x65\x73\x74\x72\x6F\x79","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x2F\x63\x6F\x6E\x6E\x65\x63\x74\x6F\x72\x2E\x70\x6E\x67","\x63\x6F\x6E\x6E\x65\x63\x74\x49\x6D\x61\x67\x65","\x49\x53\x5F\x49\x45","\x49\x53\x5F\x53\x56\x47","\x64\x69\x76","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x63\x65\x6E\x74\x65\x72","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x64\x69\x73\x70\x6C\x61\x79","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x69\x6E\x6C\x69\x6E\x65","\x69\x6E\x6C\x69\x6E\x65\x2D\x62\x6C\x6F\x63\x6B","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E"];Graph=function(_0x7ef0x1,_0x7ef0x2,_0x7ef0x3,_0x7ef0x4){mxGraph[_0x8ea8[0]](this,_0x7ef0x1,_0x7ef0x2,_0x7ef0x3,_0x7ef0x4);this[_0x8ea8[1]](true);this[_0x8ea8[2]](false);this[_0x8ea8[3]](true);this[_0x8ea8[4]](!mxClient.IS_TOUCH);this[_0x8ea8[5]](false);this[_0x8ea8[6]](false);this[_0x8ea8[7]]=true;this[_0x8ea8[8]]=false;this[_0x8ea8[9]]=false;this[_0x8ea8[11]][_0x8ea8[10]]=true;this[_0x8ea8[12]](false);this[_0x8ea8[11]][_0x8ea8[13]](false);this[_0x8ea8[11]][_0x8ea8[14]]=function(){return mxConnectionHandler[_0x8ea8[16]][_0x8ea8[14]][_0x8ea8[15]](this,arguments)&&urlParams[_0x8ea8[17]]!=_0x8ea8[18]};this[_0x8ea8[19]]=_0x8ea8[20];if(_0x7ef0x4==null){this[_0x8ea8[21]]()};var _0x7ef0x5= new mxRubberband(this);this[_0x8ea8[22]]=function(){return _0x7ef0x5};this[_0x8ea8[29]][_0x8ea8[28]](mxEvent.PAN_START,mxUtils[_0x8ea8[27]](this,function(){this[_0x8ea8[25]][_0x8ea8[24]][_0x8ea8[23]]=_0x8ea8[26]}));this[_0x8ea8[29]][_0x8ea8[28]](mxEvent.PAN_END,mxUtils[_0x8ea8[27]](this,function(){this[_0x8ea8[25]][_0x8ea8[24]][_0x8ea8[23]]=_0x8ea8[30]}));this[_0x8ea8[31]]=function(_0x7ef0x6){var _0x7ef0x7=this[_0x8ea8[33]][_0x8ea8[32]](_0x7ef0x6);var _0x7ef0x8=(_0x7ef0x7!=null)?_0x7ef0x7[_0x8ea8[24]]:this[_0x8ea8[34]](_0x7ef0x6);return _0x7ef0x8[_0x8ea8[35]]==_0x8ea8[36]||_0x7ef0x8[_0x8ea8[37]]==_0x8ea8[38]};this[_0x8ea8[40]][_0x8ea8[39]]=function(_0x7ef0x7){var _0x7ef0x9=mxCellRenderer[_0x8ea8[16]][_0x8ea8[39]][_0x8ea8[15]](this,arguments);if(_0x7ef0x7[_0x8ea8[24]][_0x8ea8[37]]==_0x8ea8[38]&&_0x7ef0x7[_0x8ea8[24]][_0x8ea8[35]]!=1){_0x7ef0x9=mxUtils[_0x8ea8[41]](_0x7ef0x9,false)};return _0x7ef0x9};this[_0x8ea8[42]]=function(_0x7ef0x6){return false};this[_0x8ea8[11]][_0x8ea8[43]]=16;var _0x7ef0xa=this[_0x8ea8[11]][_0x8ea8[44]];this[_0x8ea8[11]][_0x8ea8[44]]=function(_0x7ef0xb,_0x7ef0x7){if(_0x7ef0x7==null){if(!this[_0x8ea8[46]][_0x8ea8[29]][_0x8ea8[45]]){_0x7ef0x5[_0x8ea8[49]](_0x7ef0xb[_0x8ea8[47]](),_0x7ef0xb[_0x8ea8[48]]());this[_0x8ea8[46]][_0x8ea8[29]][_0x8ea8[50]]=false}}else {if(tapAndHoldStartsConnection){_0x7ef0xa[_0x8ea8[15]](this,arguments)}else {if(this[_0x8ea8[46]][_0x8ea8[52]](_0x7ef0x7[_0x8ea8[51]])&&this[_0x8ea8[46]][_0x8ea8[53]]()>1){this[_0x8ea8[46]][_0x8ea8[54]](_0x7ef0x7[_0x8ea8[51]])}}}};if(touchStyle){this[_0x8ea8[55]]()}};mxUtils[_0x8ea8[56]](Graph,mxGraph);Graph[_0x8ea8[16]][_0x8ea8[57]]=null;Graph[_0x8ea8[16]][_0x8ea8[58]]=null;Graph[_0x8ea8[16]][_0x8ea8[21]]=function(){var _0x7ef0xc=mxUtils[_0x8ea8[61]](STYLE_PATH+_0x8ea8[60])[_0x8ea8[59]]();var _0x7ef0xd= new mxCodec(_0x7ef0xc[_0x8ea8[62]]);_0x7ef0xd[_0x8ea8[64]](_0x7ef0xc,this[_0x8ea8[63]]())};Graph[_0x8ea8[16]][_0x8ea8[65]]=function(_0x7ef0xe){if(_0x7ef0xe!=null){var _0x7ef0x7=this[_0x8ea8[33]][_0x8ea8[32]](_0x7ef0xe);var _0x7ef0x8=(_0x7ef0x7!=null)?_0x7ef0x7[_0x8ea8[24]]:this[_0x8ea8[34]](_0x7ef0xe);if(_0x7ef0x8!=null){var _0x7ef0xf=mxUtils[_0x8ea8[66]](_0x7ef0x8,mxConstants.STYLE_ELBOW,mxConstants.ELBOW_HORIZONTAL);var _0x7ef0x10=(_0x7ef0xf==mxConstants[_0x8ea8[67]])?mxConstants[_0x8ea8[68]]:mxConstants[_0x8ea8[67]];this[_0x8ea8[69]](mxConstants.STYLE_ELBOW,_0x7ef0x10,[_0x7ef0xe])}}};Graph[_0x8ea8[16]][_0x8ea8[70]]=function(_0x7ef0x6){if(_0x7ef0x6!=null&&this[_0x8ea8[72]]()[_0x8ea8[71]](_0x7ef0x6)){var _0x7ef0x11=this[_0x8ea8[72]]()[_0x8ea8[73]]([_0x7ef0x6])[0];if(_0x7ef0x11[_0x8ea8[74]]!=null){_0x7ef0x11[_0x8ea8[74]][_0x8ea8[75]]=null};var _0x7ef0x8=_0x7ef0x11[_0x8ea8[76]]();_0x7ef0x8=mxUtils[_0x8ea8[77]](_0x7ef0x8,mxConstants.STYLE_ENTRY_X,null);_0x7ef0x8=mxUtils[_0x8ea8[77]](_0x7ef0x8,mxConstants.STYLE_ENTRY_Y,null);_0x7ef0x8=mxUtils[_0x8ea8[77]](_0x7ef0x8,mxConstants.STYLE_EXIT_X,null);_0x7ef0x8=mxUtils[_0x8ea8[77]](_0x7ef0x8,mxConstants.STYLE_EXIT_Y,null);_0x7ef0x11[_0x8ea8[77]](_0x7ef0x8);this[_0x8ea8[11]][_0x8ea8[78]]=function(_0x7ef0xb){return this[_0x8ea8[46]][_0x8ea8[33]][_0x8ea8[79]](_0x7ef0x11)};this[_0x8ea8[11]][_0x8ea8[80]]=function(){return this[_0x8ea8[46]][_0x8ea8[73]]([_0x7ef0x11])[0]}}};Graph[_0x8ea8[16]][_0x8ea8[81]]=function(_0x7ef0x6){return this[_0x8ea8[82]]&&this[_0x8ea8[83]](_0x7ef0x6)};Graph[_0x8ea8[16]][_0x8ea8[84]]=function(_0x7ef0x6){return this[_0x8ea8[83]](_0x7ef0x6)};Graph[_0x8ea8[16]][_0x8ea8[85]]=function(){var _0x7ef0x12=mxGraph[_0x8ea8[16]][_0x8ea8[85]][_0x8ea8[15]](this,arguments);_0x7ef0x12[_0x8ea8[77]](_0x8ea8[86]);return _0x7ef0x12};Graph[_0x8ea8[16]][_0x8ea8[87]]=function(_0x7ef0x6){var _0x7ef0x13=_0x8ea8[88];if(this[_0x8ea8[72]]()[_0x8ea8[89]](_0x7ef0x6)){_0x7ef0x13+=mxResources[_0x8ea8[93]](_0x8ea8[90]+_0x7ef0x6[_0x8ea8[92]][_0x8ea8[91]])||_0x8ea8[88]}else {if(this[_0x8ea8[72]]()[_0x8ea8[71]](_0x7ef0x6)){_0x7ef0x13=mxGraph[_0x8ea8[16]][_0x8ea8[87]][_0x8ea8[15]](this,arguments)}};return _0x7ef0x13};Graph[_0x8ea8[16]][_0x8ea8[94]]=function(_0x7ef0x6){if(_0x7ef0x6[_0x8ea8[92]]!=null&& typeof (_0x7ef0x6[_0x8ea8[92]])==_0x8ea8[95]){return _0x7ef0x6[_0x8ea8[92]][_0x8ea8[97]](_0x8ea8[96])};return mxGraph[_0x8ea8[16]][_0x8ea8[94]][_0x8ea8[15]](this,arguments)};Graph[_0x8ea8[16]][_0x8ea8[98]]=function(_0x7ef0x6,_0x7ef0x10,_0x7ef0x14){if(_0x7ef0x6[_0x8ea8[92]]!=null&& typeof (_0x7ef0x6[_0x8ea8[92]])==_0x8ea8[95]){var _0x7ef0x15=_0x7ef0x6[_0x8ea8[92]][_0x8ea8[99]](true);_0x7ef0x15[_0x8ea8[100]](_0x8ea8[96],_0x7ef0x10);_0x7ef0x10=_0x7ef0x15};mxGraph[_0x8ea8[16]][_0x8ea8[98]][_0x8ea8[15]](this,arguments)};Graph[_0x8ea8[16]][_0x8ea8[101]]=function(_0x7ef0x6,_0x7ef0x16){var _0x7ef0x10=null;if(_0x7ef0x6[_0x8ea8[92]]!=null&& typeof (_0x7ef0x6[_0x8ea8[92]])==_0x8ea8[95]){_0x7ef0x10=_0x7ef0x6[_0x8ea8[92]][_0x8ea8[99]](true)}else {var _0x7ef0x17=mxUtils[_0x8ea8[102]]();_0x7ef0x10=_0x7ef0x17[_0x8ea8[104]](_0x8ea8[103]);_0x7ef0x10[_0x8ea8[100]](_0x8ea8[96],_0x7ef0x6[_0x8ea8[92]])};if(_0x7ef0x16!=null&&_0x7ef0x16[_0x8ea8[105]]>0){_0x7ef0x10[_0x8ea8[100]](_0x8ea8[106],_0x7ef0x16)}else {_0x7ef0x10[_0x8ea8[107]](_0x8ea8[106])};this[_0x8ea8[109]][_0x8ea8[108]](_0x7ef0x6,_0x7ef0x10)};Graph[_0x8ea8[16]][_0x8ea8[110]]=function(_0x7ef0x6){if(_0x7ef0x6[_0x8ea8[92]]!=null&& typeof (_0x7ef0x6[_0x8ea8[92]])==_0x8ea8[95]){return _0x7ef0x6[_0x8ea8[92]][_0x8ea8[97]](_0x8ea8[106])};return null};Graph[_0x8ea8[16]][_0x8ea8[55]]=function(){this[_0x8ea8[11]][_0x8ea8[112]][_0x8ea8[111]]=function(){return this[_0x8ea8[46]][_0x8ea8[11]][_0x8ea8[113]]!=null};this[_0x8ea8[28]](mxEvent.START_EDITING,function(_0x7ef0x18,_0x7ef0x19){this[_0x8ea8[29]][_0x8ea8[114]]()});var _0x7ef0x1a=false;var _0x7ef0x1b=null;this[_0x8ea8[115]]=function(_0x7ef0xb){mxGraph[_0x8ea8[16]][_0x8ea8[115]][_0x8ea8[15]](this,arguments);if(_0x7ef0xb[_0x8ea8[32]]()==null){var _0x7ef0x6=this[_0x8ea8[118]](_0x7ef0xb[_0x8ea8[116]],_0x7ef0xb[_0x8ea8[117]]);if(this[_0x8ea8[72]]()[_0x8ea8[71]](_0x7ef0x6)){_0x7ef0xb[_0x8ea8[119]]=this[_0x8ea8[33]][_0x8ea8[32]](_0x7ef0x6);if(_0x7ef0xb[_0x8ea8[119]]!=null&&_0x7ef0xb[_0x8ea8[119]][_0x8ea8[120]]!=null){this[_0x8ea8[25]][_0x8ea8[24]][_0x8ea8[23]]=_0x7ef0xb[_0x8ea8[119]][_0x8ea8[120]][_0x8ea8[121]][_0x8ea8[24]][_0x8ea8[23]]}}};if(_0x7ef0xb[_0x8ea8[32]]()==null){this[_0x8ea8[25]][_0x8ea8[24]][_0x8ea8[23]]=_0x8ea8[30]}};this[_0x8ea8[122]]=function(_0x7ef0x1c,_0x7ef0xb,_0x7ef0x18){if(_0x7ef0x1c==mxEvent[_0x8ea8[123]]){if(!this[_0x8ea8[29]][_0x8ea8[124]]()){_0x7ef0x1b=_0x7ef0xb[_0x8ea8[125]]();_0x7ef0x1a=(_0x7ef0x1b!=null)?this[_0x8ea8[52]](_0x7ef0x1b):this[_0x8ea8[126]]()}else {_0x7ef0x1a=false;_0x7ef0x1b=null}}else {if(_0x7ef0x1c==mxEvent[_0x8ea8[127]]){if(_0x7ef0x1a&&!this[_0x8ea8[128]]()){if(!this[_0x8ea8[29]][_0x8ea8[124]]()){var _0x7ef0x1d=mxEvent[_0x8ea8[130]](_0x7ef0xb[_0x8ea8[129]]());var _0x7ef0x1e=mxEvent[_0x8ea8[131]](_0x7ef0xb[_0x8ea8[129]]());this[_0x8ea8[29]][_0x8ea8[132]](_0x7ef0x1d+16,_0x7ef0x1e,_0x7ef0x1b,_0x7ef0xb[_0x8ea8[129]]())};_0x7ef0x1a=false;_0x7ef0x1b=null;_0x7ef0xb[_0x8ea8[133]]();return};_0x7ef0x1a=false;_0x7ef0x1b=null}};mxGraph[_0x8ea8[16]][_0x8ea8[122]][_0x8ea8[15]](this,arguments);if(_0x7ef0x1c==mxEvent[_0x8ea8[134]]&&_0x7ef0xb[_0x8ea8[135]]()){_0x7ef0x1a=false;_0x7ef0x1b=null}}};(function(){mxVertexHandler[_0x8ea8[16]][_0x8ea8[136]]=true;mxText[_0x8ea8[16]][_0x8ea8[137]]=5;mxText[_0x8ea8[16]][_0x8ea8[138]]=1;if(touchStyle){mxConstants[_0x8ea8[139]]=16;mxConstants[_0x8ea8[140]]=7;if(mxClient[_0x8ea8[141]]){mxVertexHandler[_0x8ea8[16]][_0x8ea8[142]]=4;mxEdgeHandler[_0x8ea8[16]][_0x8ea8[142]]=6;Graph[_0x8ea8[16]][_0x8ea8[142]]=14;Graph[_0x8ea8[16]][_0x8ea8[143]]=20;mxPanningHandler[_0x8ea8[16]][_0x8ea8[144]]=false;mxPanningHandler[_0x8ea8[16]][_0x8ea8[145]]=true;mxPanningHandler[_0x8ea8[16]][_0x8ea8[146]]=function(_0x7ef0xb){var _0x7ef0x19=_0x7ef0xb[_0x8ea8[129]]();return (this[_0x8ea8[145]]&&(this[_0x8ea8[147]]||_0x7ef0xb[_0x8ea8[32]]()==null))||(mxEvent[_0x8ea8[148]](_0x7ef0x19)&&mxEvent[_0x8ea8[149]](_0x7ef0x19))||(this[_0x8ea8[150]]&&mxEvent[_0x8ea8[151]](_0x7ef0x19))}};var _0x7ef0x1f=mxGraphHandler[_0x8ea8[16]][_0x8ea8[152]];mxGraphHandler[_0x8ea8[16]][_0x8ea8[152]]=function(_0x7ef0x18,_0x7ef0xb){_0x7ef0x1f[_0x8ea8[15]](this,arguments);if(this[_0x8ea8[46]][_0x8ea8[52]](_0x7ef0xb[_0x8ea8[125]]())&&this[_0x8ea8[46]][_0x8ea8[53]]()>1){this[_0x8ea8[153]]=false}};Graph[_0x8ea8[16]][_0x8ea8[154]]=function(_0x7ef0x1){this[_0x8ea8[155]]= new mxTooltipHandler(this);this[_0x8ea8[155]][_0x8ea8[156]](false);this[_0x8ea8[157]]= new mxSelectionCellsHandler(this);this[_0x8ea8[29]]= new mxPanningHandler(this);this[_0x8ea8[29]][_0x8ea8[158]]=false;this[_0x8ea8[11]]= new mxConnectionHandler(this);this[_0x8ea8[11]][_0x8ea8[156]](false);this[_0x8ea8[159]]= new mxGraphHandler(this)};mxConnectionHandler[_0x8ea8[16]][_0x8ea8[160]]=function(_0x7ef0xe,_0x7ef0x20){if(touchStyle&&_0x7ef0x20!=null){this[_0x8ea8[46]][_0x8ea8[161]](_0x7ef0x20)}else {this[_0x8ea8[46]][_0x8ea8[161]](_0x7ef0xe)}};var _0x7ef0x21=mxGraph[_0x8ea8[16]][_0x8ea8[162]];Graph[_0x8ea8[16]][_0x8ea8[162]]=function(_0x7ef0x19,_0x7ef0x6){if(_0x7ef0x6==null){var _0x7ef0x22=mxUtils[_0x8ea8[163]](this[_0x8ea8[25]],mxEvent[_0x8ea8[130]](_0x7ef0x19),mxEvent[_0x8ea8[131]](_0x7ef0x19));_0x7ef0x6=this[_0x8ea8[118]](_0x7ef0x22[_0x8ea8[164]],_0x7ef0x22[_0x8ea8[165]])};_0x7ef0x21[_0x8ea8[0]](this,_0x7ef0x19,_0x7ef0x6)};var _0x7ef0x23= new mxImage(IMAGE_PATH+_0x8ea8[166],16,16);mxVertexHandler[_0x8ea8[16]][_0x8ea8[167]]=_0x7ef0x23;mxEdgeHandler[_0x8ea8[16]][_0x8ea8[167]]=_0x7ef0x23;mxOutline[_0x8ea8[16]][_0x8ea8[168]]=_0x7ef0x23; new Image()[_0x8ea8[169]]=_0x7ef0x23[_0x8ea8[169]];var _0x7ef0x24=IMAGE_PATH+_0x8ea8[170];var _0x7ef0x25=mxVertexHandler[_0x8ea8[16]][_0x8ea8[171]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[171]]=function(){_0x7ef0x25[_0x8ea8[15]](this,arguments);if(showConnectorImg&&this[_0x8ea8[46]][_0x8ea8[11]][_0x8ea8[111]]()&&this[_0x8ea8[46]][_0x8ea8[172]](this[_0x8ea8[119]][_0x8ea8[51]])&&!this[_0x8ea8[46]][_0x8ea8[84]](this[_0x8ea8[119]][_0x8ea8[51]])&&this[_0x8ea8[46]][_0x8ea8[53]]()==1){this[_0x8ea8[173]]=mxUtils[_0x8ea8[174]](_0x7ef0x24);this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[23]]=_0x8ea8[26];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[175]]=_0x8ea8[176];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[177]]=_0x8ea8[176];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[178]]=_0x8ea8[179];if(!mxClient[_0x8ea8[141]]){this[_0x8ea8[173]][_0x8ea8[100]](_0x8ea8[180],mxResources[_0x8ea8[93]](_0x8ea8[17]));mxEvent[_0x8ea8[181]](this[_0x8ea8[173]],this[_0x8ea8[46]],this[_0x8ea8[119]])};this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[182]]=_0x8ea8[183];mxEvent[_0x8ea8[185]](this[_0x8ea8[173]],mxUtils[_0x8ea8[27]](this,function(_0x7ef0x19){this[_0x8ea8[46]][_0x8ea8[29]][_0x8ea8[114]]();var _0x7ef0x22=mxUtils[_0x8ea8[163]](this[_0x8ea8[46]][_0x8ea8[25]],mxEvent[_0x8ea8[130]](_0x7ef0x19),mxEvent[_0x8ea8[131]](_0x7ef0x19));this[_0x8ea8[46]][_0x8ea8[11]][_0x8ea8[49]](this[_0x8ea8[119]],_0x7ef0x22[_0x8ea8[164]],_0x7ef0x22[_0x8ea8[165]]);this[_0x8ea8[46]][_0x8ea8[184]]=true;mxEvent[_0x8ea8[133]](_0x7ef0x19)}));this[_0x8ea8[46]][_0x8ea8[25]][_0x8ea8[186]](this[_0x8ea8[173]])};this[_0x8ea8[187]]()};var _0x7ef0x26=mxVertexHandler[_0x8ea8[16]][_0x8ea8[188]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[188]]=function(){_0x7ef0x26[_0x8ea8[15]](this);this[_0x8ea8[187]]()};mxVertexHandler[_0x8ea8[16]][_0x8ea8[187]]=function(){if(this[_0x8ea8[119]]!=null&&this[_0x8ea8[173]]!=null){if(mxVertexHandler[_0x8ea8[16]][_0x8ea8[189]]){this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[190]]=(this[_0x8ea8[119]][_0x8ea8[164]]+this[_0x8ea8[119]][_0x8ea8[175]]-this[_0x8ea8[173]][_0x8ea8[191]]/2)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[193]]=(this[_0x8ea8[119]][_0x8ea8[165]]-this[_0x8ea8[173]][_0x8ea8[194]]/2)+_0x8ea8[192]}else {this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[190]]=(this[_0x8ea8[119]][_0x8ea8[164]]+this[_0x8ea8[119]][_0x8ea8[175]]+mxConstants[_0x8ea8[139]]/2+4)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[193]]=(this[_0x8ea8[119]][_0x8ea8[165]]+(this[_0x8ea8[119]][_0x8ea8[177]]-this[_0x8ea8[173]][_0x8ea8[194]])/2)+_0x8ea8[192]}}};var _0x7ef0x27=mxVertexHandler[_0x8ea8[16]][_0x8ea8[195]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[195]]=function(_0x7ef0x18,_0x7ef0xb){_0x7ef0x27[_0x8ea8[15]](this,arguments);if(this[_0x8ea8[173]]!=null){this[_0x8ea8[173]][_0x8ea8[197]][_0x8ea8[196]](this[_0x8ea8[173]]);this[_0x8ea8[173]]=null}}; new Image()[_0x8ea8[169]]=_0x7ef0x24}else {var _0x7ef0x28= new mxImage(IMAGE_PATH+_0x8ea8[198],15,15);mxConnectionHandler[_0x8ea8[16]][_0x8ea8[199]]=_0x7ef0x28; new Image()[_0x8ea8[169]]=_0x7ef0x28[_0x8ea8[169]];if(urlParams[_0x8ea8[17]]==_0x8ea8[18]){var _0x7ef0x28= new mxImage(IMAGE_PATH+_0x8ea8[198],15,15);var _0x7ef0x25=mxVertexHandler[_0x8ea8[16]][_0x8ea8[171]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[171]]=function(){_0x7ef0x25[_0x8ea8[15]](this,arguments);if(showConnectorImg&&this[_0x8ea8[46]][_0x8ea8[11]][_0x8ea8[111]]()&&this[_0x8ea8[46]][_0x8ea8[172]](this[_0x8ea8[119]][_0x8ea8[51]])&&!this[_0x8ea8[46]][_0x8ea8[84]](this[_0x8ea8[119]][_0x8ea8[51]])&&this[_0x8ea8[46]][_0x8ea8[53]]()==1){if(mxClient[_0x8ea8[200]]&&!mxClient[_0x8ea8[201]]){this[_0x8ea8[173]]=document[_0x8ea8[104]](_0x8ea8[202]);this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[203]]=_0x8ea8[204]+_0x7ef0x28[_0x8ea8[169]]+_0x8ea8[205];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[206]]=_0x8ea8[207];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[208]]=_0x8ea8[209];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[175]]=(_0x7ef0x28[_0x8ea8[175]]+4)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[177]]=(_0x7ef0x28[_0x8ea8[177]]+4)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[210]]=(mxClient[_0x8ea8[211]])?_0x8ea8[212]:_0x8ea8[213]}else {this[_0x8ea8[173]]=mxUtils[_0x8ea8[174]](_0x7ef0x28[_0x8ea8[169]]);this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[175]]=_0x7ef0x28[_0x8ea8[175]]+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[177]]=_0x7ef0x28[_0x8ea8[177]]+_0x8ea8[192]};this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[23]]=_0x8ea8[26];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[178]]=_0x8ea8[179];this[_0x8ea8[173]][_0x8ea8[100]](_0x8ea8[180],mxResources[_0x8ea8[93]](_0x8ea8[17]));mxEvent[_0x8ea8[181]](this[_0x8ea8[173]],this[_0x8ea8[46]],this[_0x8ea8[119]]);this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[182]]=_0x8ea8[183];mxEvent[_0x8ea8[28]](this[_0x8ea8[173]],_0x8ea8[214],mxUtils[_0x8ea8[27]](this,function(_0x7ef0x19){this[_0x8ea8[46]][_0x8ea8[29]][_0x8ea8[114]]();var _0x7ef0x22=mxUtils[_0x8ea8[163]](this[_0x8ea8[46]][_0x8ea8[25]],mxEvent[_0x8ea8[130]](_0x7ef0x19),mxEvent[_0x8ea8[131]](_0x7ef0x19));this[_0x8ea8[46]][_0x8ea8[11]][_0x8ea8[49]](this[_0x8ea8[119]],_0x7ef0x22[_0x8ea8[164]],_0x7ef0x22[_0x8ea8[165]]);this[_0x8ea8[46]][_0x8ea8[184]]=true;mxEvent[_0x8ea8[133]](_0x7ef0x19)}));this[_0x8ea8[46]][_0x8ea8[25]][_0x8ea8[186]](this[_0x8ea8[173]])};this[_0x8ea8[187]]()};var _0x7ef0x26=mxVertexHandler[_0x8ea8[16]][_0x8ea8[188]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[188]]=function(){_0x7ef0x26[_0x8ea8[15]](this);this[_0x8ea8[187]]()};mxVertexHandler[_0x8ea8[16]][_0x8ea8[187]]=function(){if(this[_0x8ea8[119]]!=null&&this[_0x8ea8[173]]!=null){if(mxVertexHandler[_0x8ea8[16]][_0x8ea8[189]]){this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[190]]=(this[_0x8ea8[119]][_0x8ea8[164]]+this[_0x8ea8[119]][_0x8ea8[175]]-this[_0x8ea8[173]][_0x8ea8[191]]/2)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[193]]=(this[_0x8ea8[119]][_0x8ea8[165]]-this[_0x8ea8[173]][_0x8ea8[194]]/2)+_0x8ea8[192]}else {this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[190]]=(this[_0x8ea8[119]][_0x8ea8[164]]+this[_0x8ea8[119]][_0x8ea8[175]]+mxConstants[_0x8ea8[139]]/2+2)+_0x8ea8[192];this[_0x8ea8[173]][_0x8ea8[24]][_0x8ea8[193]]=(this[_0x8ea8[119]][_0x8ea8[165]]+(this[_0x8ea8[119]][_0x8ea8[177]]-this[_0x8ea8[173]][_0x8ea8[194]])/2)+_0x8ea8[192]}}};var _0x7ef0x27=mxVertexHandler[_0x8ea8[16]][_0x8ea8[195]];mxVertexHandler[_0x8ea8[16]][_0x8ea8[195]]=function(_0x7ef0x18,_0x7ef0xb){_0x7ef0x27[_0x8ea8[15]](this,arguments);if(this[_0x8ea8[173]]!=null){this[_0x8ea8[173]][_0x8ea8[197]][_0x8ea8[196]](this[_0x8ea8[173]]);this[_0x8ea8[173]]=null}}}}})() \ No newline at end of file diff --git a/public/assets/plugins/square/js/Menus.js b/public/assets/plugins/square/js/Menus.js index b299677..58c36db 100644 --- a/public/assets/plugins/square/js/Menus.js +++ b/public/assets/plugins/square/js/Menus.js @@ -1 +1 @@ -var _0xf6ce=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x6D\x65\x6E\x75\x73","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x56\x65\x72\x64\x61\x6E\x61","\x54\x69\x6D\x65\x73\x20\x4E\x65\x77\x20\x52\x6F\x6D\x61\x6E","\x47\x61\x72\x61\x6D\x6F\x6E\x64","\x43\x6F\x6D\x69\x63\x20\x53\x61\x6E\x73\x20\x4D\x53","\x43\x6F\x75\x72\x69\x65\x72\x20\x4E\x65\x77","\x47\x65\x6F\x72\x67\x69\x61","\x4C\x75\x63\x69\x64\x61\x20\x43\x6F\x6E\x73\x6F\x6C\x65","\x54\x61\x68\x6F\x6D\x61","\x6C\x65\x6E\x67\x74\x68","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x73\x74\x79\x6C\x65\x43\x68\x61\x6E\x67\x65","\x73\x74\x79\x6C\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x75\x73\x74\x6F\x6D","\x67\x65\x74","","\x70\x72\x6F\x6D\x70\x74\x43\x68\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x70\x75\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x28\x70\x74\x29","\x31\x32","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x70\x78","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x28\x70\x78\x29","\x31","\x6C\x69\x6E\x65","\x73\x74\x72\x61\x69\x67\x68\x74","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6D\x61\x6E\x75\x61\x6C","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x6D\x61\x74\x69\x63","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x63\x6C\x61\x73\x73\x69\x63","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x6F\x70\x65\x6E\x41\x72\x72\x6F\x77","\x41\x52\x52\x4F\x57\x5F\x4F\x50\x45\x4E","\x62\x6C\x6F\x63\x6B","\x41\x52\x52\x4F\x57\x5F\x42\x4C\x4F\x43\x4B","\x6F\x76\x61\x6C","\x41\x52\x52\x4F\x57\x5F\x4F\x56\x41\x4C","\x64\x69\x61\x6D\x6F\x6E\x64","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44\x5F\x54\x48\x49\x4E","\x6E\x6F\x6E\x65","\x4E\x4F\x4E\x45","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x65\x6E\x64\x46\x69\x6C\x6C","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x61\x64\x64\x49\x74\x65\x6D","\x73\x69\x7A\x65","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x73\x70\x61\x63\x69\x6E\x67","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x68\x61\x64\x6F\x77","\x61\x63\x74\x69\x6F\x6E\x73","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x74\x6F\x70","\x30","\x72\x69\x67\x68\x74","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x67\x6C\x6F\x62\x61\x6C","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x74\x65\x78\x74","\x61\x64\x64\x53\x75\x62\x6D\x65\x6E\x75","\x2D","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D\x73","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x77\x6F\x72\x64\x57\x72\x61\x70","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x28\x25\x29","\x31\x30\x30","\x68\x69\x64\x65","\x6C\x65\x66\x74\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x63\x65\x6E\x74\x65\x72","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x72\x69\x67\x68\x74\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x74\x6F\x70\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x6D\x69\x64\x64\x6C\x65","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x62\x6F\x74\x74\x6F\x6D\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x74\x69\x6C\x74","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x6C\x69\x67\x6E","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x46\x6C\x6F\x77","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x61\x72\x72\x61\x6E\x67\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x76\x69\x65\x77","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x25","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x66\x69\x74\x50\x61\x67\x65","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x66\x69\x6C\x65","\x6E\x65\x77","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x41\x73","\x70\x75\x62\x6C\x69\x73\x68","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x65\x64\x69\x74\x46\x69\x6C\x65","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x65\x64\x69\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x75\x74","\x63\x6F\x70\x79","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x68\x65\x6C\x70","\x61\x62\x6F\x75\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x65\x78\x65\x63\x75\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x20","\x70\x72\x6F\x6D\x70\x74","\x6C\x61\x62\x65\x6C","\x66\x75\x6E\x63\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x6D\x61\x72\x6B","\x61\x64\x64\x53\x68\x6F\x72\x74\x63\x75\x74","\x73\x68\x6F\x72\x74\x63\x75\x74","\x73\x70\x61\x6E","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x79","\x77\x72\x69\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x32\x70\x78\x20\x35\x30\x25","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x69\x73\x45\x64\x67\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x62\x65\x6E\x64\x73","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x69\x76","\x20\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x4D\x65\x6E\x75","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x61\x70\x70\x6C\x79","\x64\x65\x73\x74\x72\x6F\x79","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6C\x69\x63\x6B","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74"];Menus=function(_0x499ax1){this[_0xf6ce[0]]=_0x499ax1;this[_0xf6ce[1]]= new Object();this[_0xf6ce[2]](); new Image()[_0xf6ce[3]]=IMAGE_PATH+_0xf6ce[4]};Menus[_0xf6ce[5]][_0xf6ce[2]]=function(){var _0x499ax2=this[_0xf6ce[0]][_0xf6ce[7]][_0xf6ce[6]];this[_0xf6ce[30]](_0xf6ce[8], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){var _0x499ax5=[_0xf6ce[9],_0xf6ce[10],_0xf6ce[11],_0xf6ce[12],_0xf6ce[13],_0xf6ce[14],_0xf6ce[15],_0xf6ce[16],_0xf6ce[17]];for(var _0x499ax6=0;_0x499ax6<_0x499ax5[_0xf6ce[18]];_0x499ax6++){var _0x499ax7=this[_0xf6ce[20]](_0x499ax3,_0x499ax5[_0x499ax6],[mxConstants[_0xf6ce[19]]],[_0x499ax5[_0x499ax6]],null,_0x499ax4);_0x499ax7[_0xf6ce[23]][_0xf6ce[22]][_0xf6ce[21]][_0xf6ce[8]]=_0x499ax5[_0x499ax6]};_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[25]),_0xf6ce[27],mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[31], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){var _0x499ax8=[6,8,9,10,11,12,14,18,24,36,48,72];for(var _0x499ax6=0;_0x499ax6<_0x499ax8[_0xf6ce[18]];_0x499ax6++){this[_0xf6ce[20]](_0x499ax3,_0x499ax8[_0x499ax6],[mxConstants[_0xf6ce[32]]],[_0x499ax8[_0x499ax6]],null,_0x499ax4)};_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[25]),_0xf6ce[33],_0xf6ce[34],mxConstants.STYLE_FONTSIZE,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[35], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){var _0x499ax8=[1,2,3,4,8,12,16,24];for(var _0x499ax6=0;_0x499ax6<_0x499ax8[_0xf6ce[18]];_0x499ax6++){this[_0xf6ce[20]](_0x499ax3,_0x499ax8[_0x499ax6]+_0xf6ce[36],[mxConstants[_0xf6ce[37]]],[_0x499ax8[_0x499ax6]],null,_0x499ax4)};_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[25]),_0xf6ce[38],_0xf6ce[39],mxConstants.STYLE_STROKEWIDTH,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[40], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[41]),[mxConstants[_0xf6ce[42]]],[null],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[43]),[mxConstants[_0xf6ce[42]]],[_0xf6ce[44]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[45]),[mxConstants[_0xf6ce[42]],mxConstants[_0xf6ce[46]]],[_0xf6ce[47],_0xf6ce[45]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[48]),[mxConstants[_0xf6ce[42]],mxConstants[_0xf6ce[46]]],[_0xf6ce[47],_0xf6ce[48]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[49]),[mxConstants[_0xf6ce[42]]],[_0xf6ce[50]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[51]),[mxConstants[_0xf6ce[42]]],[_0xf6ce[52]],null,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[53], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[54]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[56]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[57]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[58]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[59]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[60]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[61]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[62]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[63]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[64]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[65]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[66]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[67]),[mxConstants[_0xf6ce[55]]],[mxConstants[_0xf6ce[68]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[69]),null,function(){_0x499ax2[_0xf6ce[71]](_0xf6ce[70],true)},_0x499ax4,null,true);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[73]),_0xf6ce[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[74], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[54]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[56]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[57]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[58]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[59]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[60]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[61]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[62]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[63]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[64]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[65]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[66]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[67]),[mxConstants[_0xf6ce[75]]],[mxConstants[_0xf6ce[68]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[69]),null,function(){_0x499ax2[_0xf6ce[71]](_0xf6ce[76],true)},_0x499ax4,null,true);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[73]),_0xf6ce[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[77], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){var _0x499ax9=this[_0xf6ce[0]][_0xf6ce[80]][_0xf6ce[26]](_0xf6ce[79])[_0xf6ce[78]];var _0x499axa=this[_0xf6ce[26]](_0xf6ce[40])[_0xf6ce[78]];if(_0x499ax9||_0x499ax3[_0xf6ce[81]]){this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[82]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SPACING_TOP,_0x499ax4,_0x499ax9);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[84]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SPACING_RIGHT,_0x499ax4,_0x499ax9);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[85]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SPACING_BOTTOM,_0x499ax4,_0x499ax9);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[86]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SPACING_LEFT,_0x499ax4,_0x499ax9);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[87]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SPACING,_0x499ax4,_0x499ax9);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[88]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_PERIMETER_SPACING,_0x499ax4,_0x499ax9)};if(_0x499axa||_0x499ax3[_0xf6ce[81]]){_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[89]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_SOURCE_PERIMETER_SPACING,_0x499ax4,_0x499axa);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[90]),_0xf6ce[38],_0xf6ce[83],mxConstants.STYLE_TARGET_PERIMETER_SPACING,_0x499ax4,_0x499axa)}})));this[_0xf6ce[30]](_0xf6ce[91], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[92]](_0x499ax3,_0xf6ce[21],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[93], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){var _0x499axb=this[_0xf6ce[26]](_0xf6ce[93])[_0xf6ce[78]];_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[94]](_0xf6ce[8],_0x499ax3,_0x499ax4);this[_0xf6ce[94]](_0xf6ce[31],_0x499ax3,_0x499ax4);this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],_0xf6ce[96],_0xf6ce[97],_0xf6ce[98],_0xf6ce[95]],_0x499ax4);this[_0xf6ce[94]](_0xf6ce[100],_0x499ax3,_0x499ax4);this[_0xf6ce[92]](_0x499ax3,_0xf6ce[101],_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[28]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[102]),_0xf6ce[103],_0xf6ce[104],mxConstants.STYLE_TEXT_OPACITY,_0x499ax4,_0x499axb);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[105]),null,function(){_0x499ax2[_0xf6ce[71]](mxConstants.STYLE_NOLABEL,false)},_0x499ax4,null,_0x499axb)})));this[_0xf6ce[30]](_0xf6ce[100], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[106]),[mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[108]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[109]),[mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[110]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[111]),[mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[112]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[113]),[mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[115]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[116]),[mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[117]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[118]),[mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[119]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[94]](_0xf6ce[120],_0x499ax3,_0x499ax4);this[_0xf6ce[94]](_0xf6ce[77],_0x499ax3,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);var _0x499axb=this[_0xf6ce[26]](_0xf6ce[93])[_0xf6ce[78]];_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[48]),null,function(){_0x499ax2[_0xf6ce[71]](mxConstants.STYLE_HORIZONTAL,true)},_0x499ax4,null,_0x499axb)})));this[_0xf6ce[30]](_0xf6ce[120], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[86]),[mxConstants[_0xf6ce[121]],mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[108]],mxConstants[_0xf6ce[112]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[109]),[mxConstants[_0xf6ce[121]],mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[110]],mxConstants[_0xf6ce[110]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[84]),[mxConstants[_0xf6ce[121]],mxConstants[_0xf6ce[107]]],[mxConstants[_0xf6ce[112]],mxConstants[_0xf6ce[108]]],null,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[82]),[mxConstants[_0xf6ce[122]],mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[115]],mxConstants[_0xf6ce[119]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[116]),[mxConstants[_0xf6ce[122]],mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[117]],mxConstants[_0xf6ce[117]]],null,_0x499ax4);this[_0xf6ce[20]](_0x499ax3,mxResources[_0xf6ce[26]](_0xf6ce[85]),[mxConstants[_0xf6ce[122]],mxConstants[_0xf6ce[114]]],[mxConstants[_0xf6ce[119]],mxConstants[_0xf6ce[115]]],null,_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[123], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[124]),null,function(){_0x499ax2[_0xf6ce[71]](mxConstants.STYLE_FLIPH,false)},_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[125]),null,function(){_0x499ax2[_0xf6ce[71]](mxConstants.STYLE_FLIPV,false)},_0x499ax4);this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],_0xf6ce[126],_0xf6ce[127]],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[128], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[106]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_LEFT)},_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[109]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_CENTER)},_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[111]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_RIGHT)},_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[113]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_TOP)},_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[116]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_MIDDLE)},_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[118]),null,function(){_0x499ax2[_0xf6ce[129]](mxConstants.ALIGN_BOTTOM)},_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[130], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[131]),null,mxUtils[_0xf6ce[29]](this,function(){var _0x499axc= new mxHierarchicalLayout(_0x499ax2,mxConstants.DIRECTION_WEST);this[_0xf6ce[0]][_0xf6ce[132]](_0x499axc,true,true)}),_0x499ax4);_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0xf6ce[133]),null,mxUtils[_0xf6ce[29]](this,function(){var _0x499axc= new mxHierarchicalLayout(_0x499ax2,mxConstants.DIRECTION_NORTH);this[_0xf6ce[0]][_0xf6ce[132]](_0x499axc,true,true)}),_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[134], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[135],_0xf6ce[95],_0xf6ce[136],_0xf6ce[137],_0xf6ce[95],_0xf6ce[138],_0xf6ce[139]],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[140], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[141],_0xf6ce[142],_0xf6ce[95]],_0x499ax4);this[_0xf6ce[94]](_0xf6ce[130],_0x499ax3,_0x499ax4);_0x499ax3[_0xf6ce[24]](_0x499ax4);this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],_0xf6ce[143],_0xf6ce[144],_0xf6ce[145]],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[146], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[147]],_0x499ax4);_0x499ax3[_0xf6ce[24]]();var _0x499axd=[0.25,0.5,0.75,1,2,4];for(var _0x499ax6=0;_0x499ax6<_0x499axd[_0xf6ce[18]];_0x499ax6++){(function(_0x499axe){_0x499ax3[_0xf6ce[72]]((_0x499axe*100)+_0xf6ce[148],null,function(){_0x499ax2[_0xf6ce[149]](_0x499axe)},_0x499ax4)})(_0x499axd[_0x499ax6])};this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],_0xf6ce[150],_0xf6ce[151],_0xf6ce[95],_0xf6ce[152],_0xf6ce[153],_0xf6ce[95],_0xf6ce[154],_0xf6ce[155]],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[156], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[157],_0xf6ce[158],_0xf6ce[95],_0xf6ce[159],_0xf6ce[160],_0xf6ce[161],_0xf6ce[95],_0xf6ce[162],_0xf6ce[95],_0xf6ce[163],_0xf6ce[164],_0xf6ce[95],_0xf6ce[165],_0xf6ce[166],_0xf6ce[95],_0xf6ce[167]],_0x499ax4)})));this[_0xf6ce[30]](_0xf6ce[168], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[169],_0xf6ce[170],_0xf6ce[95],_0xf6ce[171],_0xf6ce[172],_0xf6ce[173],_0xf6ce[174],_0xf6ce[95],_0xf6ce[175],_0xf6ce[95],_0xf6ce[176],_0xf6ce[177],_0xf6ce[178]])})));this[_0xf6ce[30]](_0xf6ce[179], new Menu(mxUtils[_0xf6ce[29]](this,function(_0x499ax3,_0x499ax4){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[179],_0xf6ce[95],_0xf6ce[180]])})))};Menus[_0xf6ce[5]][_0xf6ce[30]]=function(_0x499axf,_0x499ax3){this[_0xf6ce[1]][_0x499axf]=_0x499ax3};Menus[_0xf6ce[5]][_0xf6ce[26]]=function(_0x499axf){return this[_0xf6ce[1]][_0x499axf]};Menus[_0xf6ce[5]][_0xf6ce[94]]=function(_0x499axf,_0x499ax3,_0x499ax4){var _0x499axb=this[_0xf6ce[26]](_0x499axf)[_0xf6ce[78]];if(_0x499ax3[_0xf6ce[81]]||_0x499axb){var _0x499ax10=_0x499ax3[_0xf6ce[72]](mxResources[_0xf6ce[26]](_0x499axf),null,null,_0x499ax4,null,_0x499axb);this[_0xf6ce[181]](_0x499axf,_0x499ax3,_0x499ax10)}};Menus[_0xf6ce[5]][_0xf6ce[181]]=function(_0x499axf,_0x499ax11,_0x499ax4){var _0x499ax3=this[_0xf6ce[26]](_0x499axf);if(_0x499ax3!=null&&(_0x499ax11[_0xf6ce[81]]||_0x499ax3[_0xf6ce[78]])){this[_0xf6ce[26]](_0x499axf)[_0xf6ce[182]](_0x499ax11,_0x499ax4)}};Menus[_0xf6ce[5]][_0xf6ce[20]]=function(_0x499ax3,_0x499ax12,_0x499ax13,_0x499ax14,_0x499ax15,_0x499ax4){return _0x499ax3[_0xf6ce[72]](_0x499ax12,null,mxUtils[_0xf6ce[29]](this,function(){var _0x499ax2=this[_0xf6ce[0]][_0xf6ce[7]][_0xf6ce[6]];_0x499ax2[_0xf6ce[184]]()[_0xf6ce[183]]();try{for(var _0x499ax6=0;_0x499ax6<_0x499ax13[_0xf6ce[18]];_0x499ax6++){_0x499ax2[_0xf6ce[185]](_0x499ax13[_0x499ax6],_0x499ax14[_0x499ax6])}}finally{_0x499ax2[_0xf6ce[184]]()[_0xf6ce[186]]()}}),_0x499ax4,_0x499ax15)};Menus[_0xf6ce[5]][_0xf6ce[28]]=function(_0x499ax3,_0x499ax12,_0x499ax16,_0x499ax17,_0x499ax18,_0x499ax4,_0x499axb){return _0x499ax3[_0xf6ce[72]](_0x499ax12,null,mxUtils[_0xf6ce[29]](this,function(){var _0x499ax2=this[_0xf6ce[0]][_0xf6ce[7]][_0xf6ce[6]];var _0x499ax19=_0x499ax17;var _0x499ax1a=_0x499ax2[_0xf6ce[189]]()[_0xf6ce[188]](_0x499ax2[_0xf6ce[187]]());if(_0x499ax1a!=null){_0x499ax19=_0x499ax1a[_0xf6ce[21]][_0x499ax18]||_0x499ax19};_0x499ax19=mxUtils[_0xf6ce[192]](mxResources[_0xf6ce[26]](_0xf6ce[190])+((_0x499ax16[_0xf6ce[18]]>0)?(_0xf6ce[191]+_0x499ax16):_0xf6ce[27]),_0x499ax19);if(_0x499ax19!=null&&_0x499ax19[_0xf6ce[18]]>0){_0x499ax2[_0xf6ce[185]](_0x499ax18,_0x499ax19)}}),_0x499ax4,null,_0x499axb)};Menus[_0xf6ce[5]][_0xf6ce[92]]=function(_0x499ax3,_0x499ax18,_0x499ax4){var _0x499ax1b=this[_0xf6ce[0]][_0xf6ce[80]][_0xf6ce[26]](_0x499ax18);if(_0x499ax1b!=null&&(_0x499ax3[_0xf6ce[81]]||_0x499ax1b[_0xf6ce[78]])){var _0x499ax1c=_0x499ax3[_0xf6ce[72]](_0x499ax1b[_0xf6ce[193]],null,_0x499ax1b[_0xf6ce[194]],_0x499ax4,null,_0x499ax1b[_0xf6ce[78]]);if(_0x499ax1b[_0xf6ce[195]]&&_0x499ax1b[_0xf6ce[196]]()){this[_0xf6ce[197]](_0x499ax1c)};this[_0xf6ce[198]](_0x499ax1c,_0x499ax1b);return _0x499ax1c};return null};Menus[_0xf6ce[5]][_0xf6ce[198]]=function(_0x499ax1c,_0x499ax1b){if(_0x499ax1b[_0xf6ce[199]]!=null){var _0x499ax1d=_0x499ax1c[_0xf6ce[23]][_0xf6ce[22]][_0xf6ce[22]];var _0x499ax1e=document[_0xf6ce[201]](_0xf6ce[200]);_0x499ax1e[_0xf6ce[21]][_0xf6ce[202]]=_0xf6ce[203];mxUtils[_0xf6ce[204]](_0x499ax1e,_0x499ax1b[_0xf6ce[199]]);_0x499ax1d[_0xf6ce[205]](_0x499ax1e)}};Menus[_0xf6ce[5]][_0xf6ce[197]]=function(_0x499ax1c){var _0x499ax1d=_0x499ax1c[_0xf6ce[23]][_0xf6ce[22]];_0x499ax1d[_0xf6ce[21]][_0xf6ce[206]]=_0xf6ce[207]+IMAGE_PATH+_0xf6ce[208];_0x499ax1d[_0xf6ce[21]][_0xf6ce[209]]=_0xf6ce[210];_0x499ax1d[_0xf6ce[21]][_0xf6ce[211]]=_0xf6ce[212]};Menus[_0xf6ce[5]][_0xf6ce[99]]=function(_0x499ax3,_0x499ax13,_0x499ax4){for(var _0x499ax6=0;_0x499ax6<_0x499ax13[_0xf6ce[18]];_0x499ax6++){if(_0x499ax13[_0x499ax6]==_0xf6ce[95]){_0x499ax3[_0xf6ce[24]](_0x499ax4)}else {this[_0xf6ce[92]](_0x499ax3,_0x499ax13[_0x499ax6],_0x499ax4)}}};Menus[_0xf6ce[5]][_0xf6ce[213]]=function(_0x499ax3,_0x499ax1f,_0x499ax20){var _0x499ax2=this[_0xf6ce[0]][_0xf6ce[7]][_0xf6ce[6]];_0x499ax3[_0xf6ce[214]]=true;if(_0x499ax2[_0xf6ce[215]]()){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[169],_0xf6ce[170],_0xf6ce[95],_0xf6ce[173],_0xf6ce[95]])}else {this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[174],_0xf6ce[95],_0xf6ce[171],_0xf6ce[172],_0xf6ce[95],_0xf6ce[175]]);if(_0x499ax2[_0xf6ce[216]]()==1&&_0x499ax2[_0xf6ce[184]]()[_0xf6ce[217]](_0x499ax2[_0xf6ce[187]]())){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[218]])};_0x499ax3[_0xf6ce[24]]()};if(_0x499ax2[_0xf6ce[216]]()>0){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[141],_0xf6ce[142],_0xf6ce[95]]);if(_0x499ax2[_0xf6ce[184]]()[_0xf6ce[217]](_0x499ax2[_0xf6ce[187]]())){var _0x499ax21=false;var _0x499ax1f=_0x499ax2[_0xf6ce[187]]();if(_0x499ax1f!=null&&_0x499ax2[_0xf6ce[184]]()[_0xf6ce[217]](_0x499ax1f)){var _0x499ax22=_0x499ax2[_0xf6ce[220]][_0xf6ce[219]](_0x499ax1f);if(_0x499ax22 instanceof mxEdgeHandler&&_0x499ax22[_0xf6ce[221]]!=null&&_0x499ax22[_0xf6ce[221]][_0xf6ce[18]]>2){var _0x499ax23=_0x499ax22[_0xf6ce[222]]( new mxMouseEvent(_0x499ax20));var _0x499ax24=this[_0xf6ce[0]][_0xf6ce[80]][_0xf6ce[26]](_0xf6ce[223]);_0x499ax24[_0xf6ce[224]]=_0x499ax22;_0x499ax24[_0xf6ce[225]]=_0x499ax23;_0x499ax21=_0x499ax23>0&&_0x499ax23<_0x499ax22[_0xf6ce[221]][_0xf6ce[18]]}};this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],(_0x499ax21)?_0xf6ce[223]:_0xf6ce[226]])}else {if(_0x499ax2[_0xf6ce[216]]()>1){_0x499ax3[_0xf6ce[24]]();this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[143]])}};_0x499ax3[_0xf6ce[24]]();if(_0x499ax2[_0xf6ce[216]]()==1){var _0x499ax25=_0x499ax2[_0xf6ce[227]](_0x499ax2[_0xf6ce[187]]());if(_0x499ax25!=null){this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[228]])}}}else {this[_0xf6ce[99]](_0x499ax3,[_0xf6ce[95],_0xf6ce[176],_0xf6ce[177],_0xf6ce[95],_0xf6ce[178]])}};Menus[_0xf6ce[5]][_0xf6ce[229]]=function(_0x499ax26){var _0x499ax27= new Menubar(this[_0xf6ce[0]],_0x499ax26);var _0x499ax28=[_0xf6ce[156],_0xf6ce[168],_0xf6ce[146],_0xf6ce[91],_0xf6ce[93],_0xf6ce[140],_0xf6ce[179]];for(var _0x499ax6=0;_0x499ax6<_0x499ax28[_0xf6ce[18]];_0x499ax6++){_0x499ax27[_0xf6ce[181]](mxResources[_0xf6ce[26]](_0x499ax28[_0x499ax6]),this[_0xf6ce[26]](_0x499ax28[_0x499ax6])[_0xf6ce[194]])};return _0x499ax27};function Menubar(_0x499ax1,_0x499ax26){this[_0xf6ce[0]]=_0x499ax1;this[_0xf6ce[230]]=_0x499ax26;mxEvent[_0xf6ce[232]](document,mxUtils[_0xf6ce[29]](this,function(_0x499ax20){this[_0xf6ce[231]]()}))}Menubar[_0xf6ce[5]][_0xf6ce[231]]=function(){if(this[_0xf6ce[233]]!=null){this[_0xf6ce[233]][_0xf6ce[231]]()}};Menubar[_0xf6ce[5]][_0xf6ce[181]]=function(_0x499ax12,_0x499ax2a){var _0x499ax2b=document[_0xf6ce[201]](_0xf6ce[234]);_0x499ax2b[_0xf6ce[237]](_0xf6ce[235],_0xf6ce[236]);_0x499ax2b[_0xf6ce[238]]=_0xf6ce[239];mxUtils[_0xf6ce[204]](_0x499ax2b,_0x499ax12);this[_0xf6ce[240]](_0x499ax2b,_0x499ax2a);this[_0xf6ce[230]][_0xf6ce[205]](_0x499ax2b);return _0x499ax2b};Menubar[_0xf6ce[5]][_0xf6ce[240]]=function(_0x499ax2b,_0x499ax2a){if(_0x499ax2a!=null){var _0x499ax2c=true;var _0x499ax2d=mxUtils[_0xf6ce[29]](this,function(_0x499ax20){if(_0x499ax2c&&_0x499ax2b[_0xf6ce[78]]==null||_0x499ax2b[_0xf6ce[78]]){this[_0xf6ce[0]][_0xf6ce[7]][_0xf6ce[6]][_0xf6ce[241]][_0xf6ce[231]]();var _0x499ax3= new mxPopupMenu(_0x499ax2a);_0x499ax3[_0xf6ce[242]][_0xf6ce[238]]+=_0xf6ce[243];_0x499ax3[_0xf6ce[214]]=true;_0x499ax3[_0xf6ce[81]]=true;_0x499ax3[_0xf6ce[244]]=true;_0x499ax3[_0xf6ce[231]]=mxUtils[_0xf6ce[29]](this,function(){mxPopupMenu[_0xf6ce[5]][_0xf6ce[231]][_0xf6ce[245]](_0x499ax3,arguments);_0x499ax3[_0xf6ce[246]]();this[_0xf6ce[233]]=null;this[_0xf6ce[247]]=null});var _0x499ax2e=_0x499ax2b[_0xf6ce[248]]+document[_0xf6ce[251]](_0xf6ce[250])[_0xf6ce[249]]+22;var _0x499ax2f=_0x499ax2b[_0xf6ce[252]]+_0x499ax2b[_0xf6ce[253]]+140;_0x499ax3[_0xf6ce[254]](_0x499ax2e,_0x499ax2f,null,_0x499ax20);this[_0xf6ce[233]]=_0x499ax3;this[_0xf6ce[247]]=_0x499ax2b};_0x499ax2c=true;mxEvent[_0xf6ce[255]](_0x499ax20)});mxEvent[_0xf6ce[257]](_0x499ax2b,_0xf6ce[256],mxUtils[_0xf6ce[29]](this,function(_0x499ax20){if(this[_0xf6ce[233]]!=null&&this[_0xf6ce[247]]!=_0x499ax2b){this[_0xf6ce[231]]();_0x499ax2d(_0x499ax20)}}));mxEvent[_0xf6ce[257]](_0x499ax2b,_0xf6ce[258],mxUtils[_0xf6ce[29]](this,function(){_0x499ax2c=this[_0xf6ce[247]]!=_0x499ax2b}));mxEvent[_0xf6ce[257]](_0x499ax2b,_0xf6ce[259],_0x499ax2d)}};function Menu(_0x499ax2a,_0x499axb){mxEventSource[_0xf6ce[260]](this);this[_0xf6ce[194]]=_0x499ax2a;this[_0xf6ce[78]]=(_0x499axb!=null)?_0x499axb:true}mxUtils[_0xf6ce[261]](Menu,mxEventSource);Menu[_0xf6ce[5]][_0xf6ce[262]]=function(_0x499ax19){if(this[_0xf6ce[78]]!=_0x499ax19){this[_0xf6ce[78]]=_0x499ax19;this[_0xf6ce[264]]( new mxEventObject(_0xf6ce[263]))}};Menu[_0xf6ce[5]][_0xf6ce[182]]=function(_0x499ax3,_0x499ax4){this[_0xf6ce[194]](_0x499ax3,_0x499ax4)} \ No newline at end of file +var _0x9cb4=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x6D\x65\x6E\x75\x73","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x56\x65\x72\x64\x61\x6E\x61","\x54\x69\x6D\x65\x73\x20\x4E\x65\x77\x20\x52\x6F\x6D\x61\x6E","\x47\x61\x72\x61\x6D\x6F\x6E\x64","\x43\x6F\x6D\x69\x63\x20\x53\x61\x6E\x73\x20\x4D\x53","\x43\x6F\x75\x72\x69\x65\x72\x20\x4E\x65\x77","\x47\x65\x6F\x72\x67\x69\x61","\x4C\x75\x63\x69\x64\x61\x20\x43\x6F\x6E\x73\x6F\x6C\x65","\x54\x61\x68\x6F\x6D\x61","\x6C\x65\x6E\x67\x74\x68","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x73\x74\x79\x6C\x65\x43\x68\x61\x6E\x67\x65","\x73\x74\x79\x6C\x65","\x6E\x65\x78\x74\x53\x69\x62\x6C\x69\x6E\x67","\x66\x69\x72\x73\x74\x43\x68\x69\x6C\x64","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x63\x75\x73\x74\x6F\x6D","\x67\x65\x74","","\x70\x72\x6F\x6D\x70\x74\x43\x68\x61\x6E\x67\x65","\x62\x69\x6E\x64","\x70\x75\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x28\x70\x74\x29","\x31\x32","\x6C\x69\x6E\x65\x77\x69\x64\x74\x68","\x70\x78","\x53\x54\x59\x4C\x45\x5F\x53\x54\x52\x4F\x4B\x45\x57\x49\x44\x54\x48","\x28\x70\x78\x29","\x31","\x6C\x69\x6E\x65","\x73\x74\x72\x61\x69\x67\x68\x74","\x53\x54\x59\x4C\x45\x5F\x45\x44\x47\x45","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E","\x65\x6E\x74\x69\x74\x79\x52\x65\x6C\x61\x74\x69\x6F\x6E\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x53\x54\x59\x4C\x45\x5F\x45\x4C\x42\x4F\x57","\x65\x6C\x62\x6F\x77\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x76\x65\x72\x74\x69\x63\x61\x6C","\x6D\x61\x6E\x75\x61\x6C","\x73\x65\x67\x6D\x65\x6E\x74\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x61\x75\x74\x6F\x6D\x61\x74\x69\x63","\x6F\x72\x74\x68\x6F\x67\x6F\x6E\x61\x6C\x45\x64\x67\x65\x53\x74\x79\x6C\x65","\x6C\x69\x6E\x65\x65\x6E\x64","\x63\x6C\x61\x73\x73\x69\x63","\x53\x54\x59\x4C\x45\x5F\x45\x4E\x44\x41\x52\x52\x4F\x57","\x41\x52\x52\x4F\x57\x5F\x43\x4C\x41\x53\x53\x49\x43","\x6F\x70\x65\x6E\x41\x72\x72\x6F\x77","\x41\x52\x52\x4F\x57\x5F\x4F\x50\x45\x4E","\x62\x6C\x6F\x63\x6B","\x41\x52\x52\x4F\x57\x5F\x42\x4C\x4F\x43\x4B","\x6F\x76\x61\x6C","\x41\x52\x52\x4F\x57\x5F\x4F\x56\x41\x4C","\x64\x69\x61\x6D\x6F\x6E\x64","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44","\x64\x69\x61\x6D\x6F\x6E\x64\x54\x68\x69\x6E","\x41\x52\x52\x4F\x57\x5F\x44\x49\x41\x4D\x4F\x4E\x44\x5F\x54\x48\x49\x4E","\x6E\x6F\x6E\x65","\x4E\x4F\x4E\x45","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74","\x65\x6E\x64\x46\x69\x6C\x6C","\x74\x6F\x67\x67\x6C\x65\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x61\x64\x64\x49\x74\x65\x6D","\x73\x69\x7A\x65","\x6C\x69\x6E\x65\x73\x74\x61\x72\x74","\x53\x54\x59\x4C\x45\x5F\x53\x54\x41\x52\x54\x41\x52\x52\x4F\x57","\x73\x74\x61\x72\x74\x46\x69\x6C\x6C","\x73\x70\x61\x63\x69\x6E\x67","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x68\x61\x64\x6F\x77","\x61\x63\x74\x69\x6F\x6E\x73","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x74\x6F\x70","\x30","\x72\x69\x67\x68\x74","\x62\x6F\x74\x74\x6F\x6D","\x6C\x65\x66\x74","\x67\x6C\x6F\x62\x61\x6C","\x70\x65\x72\x69\x6D\x65\x74\x65\x72","\x73\x6F\x75\x72\x63\x65\x53\x70\x61\x63\x69\x6E\x67","\x74\x61\x72\x67\x65\x74\x53\x70\x61\x63\x69\x6E\x67","\x66\x6F\x72\x6D\x61\x74","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D","\x74\x65\x78\x74","\x61\x64\x64\x53\x75\x62\x6D\x65\x6E\x75","\x2D","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x61\x64\x64\x4D\x65\x6E\x75\x49\x74\x65\x6D\x73","\x61\x6C\x69\x67\x6E\x6D\x65\x6E\x74","\x77\x6F\x72\x64\x57\x72\x61\x70","\x74\x65\x78\x74\x4F\x70\x61\x63\x69\x74\x79","\x28\x25\x29","\x31\x30\x30","\x68\x69\x64\x65","\x6C\x65\x66\x74\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x4C\x45\x46\x54","\x63\x65\x6E\x74\x65\x72","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x72\x69\x67\x68\x74\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x74\x6F\x70\x41\x6C\x69\x67\x6E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x41\x4C\x49\x47\x4E","\x41\x4C\x49\x47\x4E\x5F\x54\x4F\x50","\x6D\x69\x64\x64\x6C\x65","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x62\x6F\x74\x74\x6F\x6D\x41\x6C\x69\x67\x6E","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x53\x54\x59\x4C\x45\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x53\x54\x59\x4C\x45\x5F\x56\x45\x52\x54\x49\x43\x41\x4C\x5F\x4C\x41\x42\x45\x4C\x5F\x50\x4F\x53\x49\x54\x49\x4F\x4E","\x64\x69\x72\x65\x63\x74\x69\x6F\x6E","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x74\x69\x6C\x74","\x72\x6F\x74\x61\x74\x69\x6F\x6E","\x61\x6C\x69\x67\x6E","\x61\x6C\x69\x67\x6E\x43\x65\x6C\x6C\x73","\x6C\x61\x79\x6F\x75\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C\x46\x6C\x6F\x77","\x65\x78\x65\x63\x75\x74\x65\x4C\x61\x79\x6F\x75\x74","\x76\x65\x72\x74\x69\x63\x61\x6C\x46\x6C\x6F\x77","\x6E\x61\x76\x69\x67\x61\x74\x69\x6F\x6E","\x68\x6F\x6D\x65","\x65\x78\x69\x74\x47\x72\x6F\x75\x70","\x65\x6E\x74\x65\x72\x47\x72\x6F\x75\x70","\x65\x78\x70\x61\x6E\x64","\x63\x6F\x6C\x6C\x61\x70\x73\x65","\x61\x72\x72\x61\x6E\x67\x65","\x74\x6F\x46\x72\x6F\x6E\x74","\x74\x6F\x42\x61\x63\x6B","\x67\x72\x6F\x75\x70","\x75\x6E\x67\x72\x6F\x75\x70","\x72\x65\x6D\x6F\x76\x65\x46\x72\x6F\x6D\x47\x72\x6F\x75\x70","\x76\x69\x65\x77","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x25","\x7A\x6F\x6F\x6D\x54\x6F","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x66\x69\x74\x57\x69\x6E\x64\x6F\x77","\x63\x75\x73\x74\x6F\x6D\x5A\x6F\x6F\x6D","\x66\x69\x74\x50\x61\x67\x65","\x66\x69\x74\x50\x61\x67\x65\x57\x69\x64\x74\x68","\x66\x69\x6C\x65","\x6E\x65\x77","\x6F\x70\x65\x6E","\x73\x61\x76\x65","\x73\x61\x76\x65\x41\x73","\x70\x75\x62\x6C\x69\x73\x68","\x76\x61\x72\x69\x61\x62\x6C\x65","\x69\x6D\x70\x6F\x72\x74","\x65\x78\x70\x6F\x72\x74","\x65\x64\x69\x74\x46\x69\x6C\x65","\x72\x65\x6E\x61\x6D\x65","\x70\x72\x69\x6E\x74","\x65\x64\x69\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x75\x74","\x63\x6F\x70\x79","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x73\x65\x6C\x65\x63\x74\x56\x65\x72\x74\x69\x63\x65\x73","\x73\x65\x6C\x65\x63\x74\x45\x64\x67\x65\x73","\x73\x65\x6C\x65\x63\x74\x41\x6C\x6C","\x68\x65\x6C\x70","\x61\x62\x6F\x75\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x65\x78\x65\x63\x75\x74\x65","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x65\x6E\x74\x65\x72\x56\x61\x6C\x75\x65","\x20","\x70\x72\x6F\x6D\x70\x74","\x6C\x61\x62\x65\x6C","\x66\x75\x6E\x63\x74","\x74\x6F\x67\x67\x6C\x65\x41\x63\x74\x69\x6F\x6E","\x69\x73\x53\x65\x6C\x65\x63\x74\x65\x64","\x61\x64\x64\x43\x68\x65\x63\x6B\x6D\x61\x72\x6B","\x61\x64\x64\x53\x68\x6F\x72\x74\x63\x75\x74","\x73\x68\x6F\x72\x74\x63\x75\x74","\x73\x70\x61\x6E","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6F\x6C\x6F\x72","\x67\x72\x61\x79","\x77\x72\x69\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x2F\x63\x68\x65\x63\x6B\x6D\x61\x72\x6B\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x32\x70\x78\x20\x35\x30\x25","\x63\x72\x65\x61\x74\x65\x50\x6F\x70\x75\x70\x4D\x65\x6E\x75","\x73\x6D\x61\x72\x74\x53\x65\x70\x61\x72\x61\x74\x6F\x72\x73","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x6F\x75\x6E\x74","\x69\x73\x45\x64\x67\x65","\x73\x65\x74\x41\x73\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x72","\x73\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73\x48\x61\x6E\x64\x6C\x65\x72","\x62\x65\x6E\x64\x73","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x72\x65\x6D\x6F\x76\x65\x57\x61\x79\x70\x6F\x69\x6E\x74","\x68\x61\x6E\x64\x6C\x65\x72","\x69\x6E\x64\x65\x78","\x61\x64\x64\x57\x61\x79\x70\x6F\x69\x6E\x74","\x67\x65\x74\x4C\x69\x6E\x6B\x46\x6F\x72\x43\x65\x6C\x6C","\x6F\x70\x65\x6E\x4C\x69\x6E\x6B","\x63\x72\x65\x61\x74\x65\x4D\x65\x6E\x75\x62\x61\x72","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x49\x74\x65\x6D","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x64\x69\x76","\x20\x67\x65\x4D\x65\x6E\x75\x62\x61\x72\x4D\x65\x6E\x75","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x61\x70\x70\x6C\x79","\x64\x65\x73\x74\x72\x6F\x79","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x63\x6C\x69\x63\x6B","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x66\x69\x72\x65\x45\x76\x65\x6E\x74"];Menus=function(_0x81e4x1){this[_0x9cb4[0]]=_0x81e4x1;this[_0x9cb4[1]]= new Object();this[_0x9cb4[2]](); new Image()[_0x9cb4[3]]=IMAGE_PATH+_0x9cb4[4]};Menus[_0x9cb4[5]][_0x9cb4[2]]=function(){var _0x81e4x2=this[_0x9cb4[0]][_0x9cb4[7]][_0x9cb4[6]];this[_0x9cb4[30]](_0x9cb4[8], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){var _0x81e4x5=[_0x9cb4[9],_0x9cb4[10],_0x9cb4[11],_0x9cb4[12],_0x9cb4[13],_0x9cb4[14],_0x9cb4[15],_0x9cb4[16],_0x9cb4[17]];for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x5[_0x9cb4[18]];_0x81e4x6++){var _0x81e4x7=this[_0x9cb4[20]](_0x81e4x3,_0x81e4x5[_0x81e4x6],[mxConstants[_0x9cb4[19]]],[_0x81e4x5[_0x81e4x6]],null,_0x81e4x4);_0x81e4x7[_0x9cb4[23]][_0x9cb4[22]][_0x9cb4[21]][_0x9cb4[8]]=_0x81e4x5[_0x81e4x6]};_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[25]),_0x9cb4[27],mxConstants.DEFAULT_FONTFAMILY,mxConstants.STYLE_FONTFAMILY,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[31], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){var _0x81e4x8=[6,8,9,10,11,12,14,18,24,36,48,72];for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x8[_0x9cb4[18]];_0x81e4x6++){this[_0x9cb4[20]](_0x81e4x3,_0x81e4x8[_0x81e4x6],[mxConstants[_0x9cb4[32]]],[_0x81e4x8[_0x81e4x6]],null,_0x81e4x4)};_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[25]),_0x9cb4[33],_0x9cb4[34],mxConstants.STYLE_FONTSIZE,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[35], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){var _0x81e4x8=[1,2,3,4,8,12,16,24];for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x8[_0x9cb4[18]];_0x81e4x6++){this[_0x9cb4[20]](_0x81e4x3,_0x81e4x8[_0x81e4x6]+_0x9cb4[36],[mxConstants[_0x9cb4[37]]],[_0x81e4x8[_0x81e4x6]],null,_0x81e4x4)};_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[25]),_0x9cb4[38],_0x9cb4[39],mxConstants.STYLE_STROKEWIDTH,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[40], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[41]),[mxConstants[_0x9cb4[42]]],[null],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[43]),[mxConstants[_0x9cb4[42]]],[_0x9cb4[44]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[45]),[mxConstants[_0x9cb4[42]],mxConstants[_0x9cb4[46]]],[_0x9cb4[47],_0x9cb4[45]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[48]),[mxConstants[_0x9cb4[42]],mxConstants[_0x9cb4[46]]],[_0x9cb4[47],_0x9cb4[48]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[49]),[mxConstants[_0x9cb4[42]]],[_0x9cb4[50]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[51]),[mxConstants[_0x9cb4[42]]],[_0x9cb4[52]],null,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[53], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[54]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[56]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[57]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[58]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[59]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[60]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[61]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[62]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[63]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[64]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[65]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[66]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[67]),[mxConstants[_0x9cb4[55]]],[mxConstants[_0x9cb4[68]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[69]),null,function(){_0x81e4x2[_0x9cb4[71]](_0x9cb4[70],true)},_0x81e4x4,null,true);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[73]),_0x9cb4[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_ENDSIZE,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[74], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[54]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[56]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[57]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[58]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[59]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[60]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[61]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[62]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[63]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[64]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[65]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[66]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[67]),[mxConstants[_0x9cb4[75]]],[mxConstants[_0x9cb4[68]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[69]),null,function(){_0x81e4x2[_0x9cb4[71]](_0x9cb4[76],true)},_0x81e4x4,null,true);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[73]),_0x9cb4[38],mxConstants.DEFAULT_MARKERSIZE,mxConstants.STYLE_STARTSIZE,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[77], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){var _0x81e4x9=this[_0x9cb4[0]][_0x9cb4[80]][_0x9cb4[26]](_0x9cb4[79])[_0x9cb4[78]];var _0x81e4xa=this[_0x9cb4[26]](_0x9cb4[40])[_0x9cb4[78]];if(_0x81e4x9||_0x81e4x3[_0x9cb4[81]]){this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[82]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SPACING_TOP,_0x81e4x4,_0x81e4x9);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[84]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SPACING_RIGHT,_0x81e4x4,_0x81e4x9);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[85]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SPACING_BOTTOM,_0x81e4x4,_0x81e4x9);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[86]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SPACING_LEFT,_0x81e4x4,_0x81e4x9);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[87]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SPACING,_0x81e4x4,_0x81e4x9);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[88]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_PERIMETER_SPACING,_0x81e4x4,_0x81e4x9)};if(_0x81e4xa||_0x81e4x3[_0x9cb4[81]]){_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[89]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_SOURCE_PERIMETER_SPACING,_0x81e4x4,_0x81e4xa);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[90]),_0x9cb4[38],_0x9cb4[83],mxConstants.STYLE_TARGET_PERIMETER_SPACING,_0x81e4x4,_0x81e4xa)}})));this[_0x9cb4[30]](_0x9cb4[91], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[92]](_0x81e4x3,_0x9cb4[21],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[93], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){var _0x81e4xb=this[_0x9cb4[26]](_0x9cb4[93])[_0x9cb4[78]];_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[8],_0x81e4x3,_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[31],_0x81e4x3,_0x81e4x4);this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],_0x9cb4[96],_0x9cb4[97],_0x9cb4[98],_0x9cb4[95]],_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[100],_0x81e4x3,_0x81e4x4);this[_0x9cb4[92]](_0x81e4x3,_0x9cb4[101],_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[28]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[102]),_0x9cb4[103],_0x9cb4[104],mxConstants.STYLE_TEXT_OPACITY,_0x81e4x4,_0x81e4xb);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[105]),null,function(){_0x81e4x2[_0x9cb4[71]](mxConstants.STYLE_NOLABEL,false)},_0x81e4x4,null,_0x81e4xb)})));this[_0x9cb4[30]](_0x9cb4[100], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[106]),[mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[108]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[109]),[mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[110]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[111]),[mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[112]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[113]),[mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[115]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[116]),[mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[117]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[118]),[mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[119]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[120],_0x81e4x3,_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[77],_0x81e4x3,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);var _0x81e4xb=this[_0x9cb4[26]](_0x9cb4[93])[_0x9cb4[78]];_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[48]),null,function(){_0x81e4x2[_0x9cb4[71]](mxConstants.STYLE_HORIZONTAL,true)},_0x81e4x4,null,_0x81e4xb)})));this[_0x9cb4[30]](_0x9cb4[120], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[86]),[mxConstants[_0x9cb4[121]],mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[108]],mxConstants[_0x9cb4[112]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[109]),[mxConstants[_0x9cb4[121]],mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[110]],mxConstants[_0x9cb4[110]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[84]),[mxConstants[_0x9cb4[121]],mxConstants[_0x9cb4[107]]],[mxConstants[_0x9cb4[112]],mxConstants[_0x9cb4[108]]],null,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[82]),[mxConstants[_0x9cb4[122]],mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[115]],mxConstants[_0x9cb4[119]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[116]),[mxConstants[_0x9cb4[122]],mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[117]],mxConstants[_0x9cb4[117]]],null,_0x81e4x4);this[_0x9cb4[20]](_0x81e4x3,mxResources[_0x9cb4[26]](_0x9cb4[85]),[mxConstants[_0x9cb4[122]],mxConstants[_0x9cb4[114]]],[mxConstants[_0x9cb4[119]],mxConstants[_0x9cb4[115]]],null,_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[123], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[124]),null,function(){_0x81e4x2[_0x9cb4[71]](mxConstants.STYLE_FLIPH,false)},_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[125]),null,function(){_0x81e4x2[_0x9cb4[71]](mxConstants.STYLE_FLIPV,false)},_0x81e4x4);this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],_0x9cb4[126],_0x9cb4[127]],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[128], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[106]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_LEFT)},_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[109]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_CENTER)},_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[111]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_RIGHT)},_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[113]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_TOP)},_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[116]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_MIDDLE)},_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[118]),null,function(){_0x81e4x2[_0x9cb4[129]](mxConstants.ALIGN_BOTTOM)},_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[130], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[131]),null,mxUtils[_0x9cb4[29]](this,function(){var _0x81e4xc= new mxHierarchicalLayout(_0x81e4x2,mxConstants.DIRECTION_WEST);this[_0x9cb4[0]][_0x9cb4[132]](_0x81e4xc,true,true)}),_0x81e4x4);_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x9cb4[133]),null,mxUtils[_0x9cb4[29]](this,function(){var _0x81e4xc= new mxHierarchicalLayout(_0x81e4x2,mxConstants.DIRECTION_NORTH);this[_0x9cb4[0]][_0x9cb4[132]](_0x81e4xc,true,true)}),_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[134], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[135],_0x9cb4[95],_0x9cb4[136],_0x9cb4[137],_0x9cb4[95],_0x9cb4[138],_0x9cb4[139]],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[140], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[141],_0x9cb4[142],_0x9cb4[95]],_0x81e4x4);this[_0x9cb4[94]](_0x9cb4[130],_0x81e4x3,_0x81e4x4);_0x81e4x3[_0x9cb4[24]](_0x81e4x4);this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],_0x9cb4[143],_0x9cb4[144],_0x9cb4[145]],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[146], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[147]],_0x81e4x4);_0x81e4x3[_0x9cb4[24]]();var _0x81e4xd=[0.25,0.5,0.75,1,2,4];for(var _0x81e4x6=0;_0x81e4x6<_0x81e4xd[_0x9cb4[18]];_0x81e4x6++){(function(_0x81e4xe){_0x81e4x3[_0x9cb4[72]]((_0x81e4xe*100)+_0x9cb4[148],null,function(){_0x81e4x2[_0x9cb4[149]](_0x81e4xe)},_0x81e4x4)})(_0x81e4xd[_0x81e4x6])};this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],_0x9cb4[150],_0x9cb4[151],_0x9cb4[95],_0x9cb4[152],_0x9cb4[153],_0x9cb4[95],_0x9cb4[154],_0x9cb4[155]],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[156], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[157],_0x9cb4[158],_0x9cb4[95],_0x9cb4[159],_0x9cb4[160],_0x9cb4[161],_0x9cb4[95],_0x9cb4[162],_0x9cb4[95],_0x9cb4[163],_0x9cb4[164],_0x9cb4[95],_0x9cb4[165],_0x9cb4[166],_0x9cb4[95],_0x9cb4[167]],_0x81e4x4)})));this[_0x9cb4[30]](_0x9cb4[168], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[169],_0x9cb4[170],_0x9cb4[95],_0x9cb4[171],_0x9cb4[172],_0x9cb4[173],_0x9cb4[174],_0x9cb4[95],_0x9cb4[175],_0x9cb4[95],_0x9cb4[176],_0x9cb4[177],_0x9cb4[178]])})));this[_0x9cb4[30]](_0x9cb4[179], new Menu(mxUtils[_0x9cb4[29]](this,function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[179],_0x9cb4[95],_0x9cb4[180]])})))};Menus[_0x9cb4[5]][_0x9cb4[30]]=function(_0x81e4xf,_0x81e4x3){this[_0x9cb4[1]][_0x81e4xf]=_0x81e4x3};Menus[_0x9cb4[5]][_0x9cb4[26]]=function(_0x81e4xf){return this[_0x9cb4[1]][_0x81e4xf]};Menus[_0x9cb4[5]][_0x9cb4[94]]=function(_0x81e4xf,_0x81e4x3,_0x81e4x4){var _0x81e4xb=this[_0x9cb4[26]](_0x81e4xf)[_0x9cb4[78]];if(_0x81e4x3[_0x9cb4[81]]||_0x81e4xb){var _0x81e4x10=_0x81e4x3[_0x9cb4[72]](mxResources[_0x9cb4[26]](_0x81e4xf),null,null,_0x81e4x4,null,_0x81e4xb);this[_0x9cb4[181]](_0x81e4xf,_0x81e4x3,_0x81e4x10)}};Menus[_0x9cb4[5]][_0x9cb4[181]]=function(_0x81e4xf,_0x81e4x11,_0x81e4x4){var _0x81e4x3=this[_0x9cb4[26]](_0x81e4xf);if(_0x81e4x3!=null&&(_0x81e4x11[_0x9cb4[81]]||_0x81e4x3[_0x9cb4[78]])){this[_0x9cb4[26]](_0x81e4xf)[_0x9cb4[182]](_0x81e4x11,_0x81e4x4)}};Menus[_0x9cb4[5]][_0x9cb4[20]]=function(_0x81e4x3,_0x81e4x12,_0x81e4x13,_0x81e4x14,_0x81e4x15,_0x81e4x4){return _0x81e4x3[_0x9cb4[72]](_0x81e4x12,null,mxUtils[_0x9cb4[29]](this,function(){var _0x81e4x2=this[_0x9cb4[0]][_0x9cb4[7]][_0x9cb4[6]];_0x81e4x2[_0x9cb4[184]]()[_0x9cb4[183]]();try{for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x13[_0x9cb4[18]];_0x81e4x6++){_0x81e4x2[_0x9cb4[185]](_0x81e4x13[_0x81e4x6],_0x81e4x14[_0x81e4x6])}}finally{_0x81e4x2[_0x9cb4[184]]()[_0x9cb4[186]]()}}),_0x81e4x4,_0x81e4x15)};Menus[_0x9cb4[5]][_0x9cb4[28]]=function(_0x81e4x3,_0x81e4x12,_0x81e4x16,_0x81e4x17,_0x81e4x18,_0x81e4x4,_0x81e4xb){return _0x81e4x3[_0x9cb4[72]](_0x81e4x12,null,mxUtils[_0x9cb4[29]](this,function(){var _0x81e4x2=this[_0x9cb4[0]][_0x9cb4[7]][_0x9cb4[6]];var _0x81e4x19=_0x81e4x17;var _0x81e4x1a=_0x81e4x2[_0x9cb4[189]]()[_0x9cb4[188]](_0x81e4x2[_0x9cb4[187]]());if(_0x81e4x1a!=null){_0x81e4x19=_0x81e4x1a[_0x9cb4[21]][_0x81e4x18]||_0x81e4x19};_0x81e4x19=mxUtils[_0x9cb4[192]](mxResources[_0x9cb4[26]](_0x9cb4[190])+((_0x81e4x16[_0x9cb4[18]]>0)?(_0x9cb4[191]+_0x81e4x16):_0x9cb4[27]),_0x81e4x19);if(_0x81e4x19!=null&&_0x81e4x19[_0x9cb4[18]]>0){_0x81e4x2[_0x9cb4[185]](_0x81e4x18,_0x81e4x19)}}),_0x81e4x4,null,_0x81e4xb)};Menus[_0x9cb4[5]][_0x9cb4[92]]=function(_0x81e4x3,_0x81e4x18,_0x81e4x4){var _0x81e4x1b=this[_0x9cb4[0]][_0x9cb4[80]][_0x9cb4[26]](_0x81e4x18);if(_0x81e4x1b!=null&&(_0x81e4x3[_0x9cb4[81]]||_0x81e4x1b[_0x9cb4[78]])){var _0x81e4x1c=_0x81e4x3[_0x9cb4[72]](_0x81e4x1b[_0x9cb4[193]],null,_0x81e4x1b[_0x9cb4[194]],_0x81e4x4,null,_0x81e4x1b[_0x9cb4[78]]);if(_0x81e4x1b[_0x9cb4[195]]&&_0x81e4x1b[_0x9cb4[196]]()){this[_0x9cb4[197]](_0x81e4x1c)};this[_0x9cb4[198]](_0x81e4x1c,_0x81e4x1b);return _0x81e4x1c};return null};Menus[_0x9cb4[5]][_0x9cb4[198]]=function(_0x81e4x1c,_0x81e4x1b){if(_0x81e4x1b[_0x9cb4[199]]!=null){var _0x81e4x1d=_0x81e4x1c[_0x9cb4[23]][_0x9cb4[22]][_0x9cb4[22]];var _0x81e4x1e=document[_0x9cb4[201]](_0x9cb4[200]);_0x81e4x1e[_0x9cb4[21]][_0x9cb4[202]]=_0x9cb4[203];mxUtils[_0x9cb4[204]](_0x81e4x1e,_0x81e4x1b[_0x9cb4[199]]);_0x81e4x1d[_0x9cb4[205]](_0x81e4x1e)}};Menus[_0x9cb4[5]][_0x9cb4[197]]=function(_0x81e4x1c){var _0x81e4x1d=_0x81e4x1c[_0x9cb4[23]][_0x9cb4[22]];_0x81e4x1d[_0x9cb4[21]][_0x9cb4[206]]=_0x9cb4[207]+IMAGE_PATH+_0x9cb4[208];_0x81e4x1d[_0x9cb4[21]][_0x9cb4[209]]=_0x9cb4[210];_0x81e4x1d[_0x9cb4[21]][_0x9cb4[211]]=_0x9cb4[212]};Menus[_0x9cb4[5]][_0x9cb4[99]]=function(_0x81e4x3,_0x81e4x13,_0x81e4x4){for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x13[_0x9cb4[18]];_0x81e4x6++){if(_0x81e4x13[_0x81e4x6]==_0x9cb4[95]){_0x81e4x3[_0x9cb4[24]](_0x81e4x4)}else {this[_0x9cb4[92]](_0x81e4x3,_0x81e4x13[_0x81e4x6],_0x81e4x4)}}};Menus[_0x9cb4[5]][_0x9cb4[213]]=function(_0x81e4x3,_0x81e4x1f,_0x81e4x20){var _0x81e4x2=this[_0x9cb4[0]][_0x9cb4[7]][_0x9cb4[6]];_0x81e4x3[_0x9cb4[214]]=true;if(_0x81e4x2[_0x9cb4[215]]()){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[169],_0x9cb4[170],_0x9cb4[95],_0x9cb4[173],_0x9cb4[95]])}else {this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[174],_0x9cb4[95],_0x9cb4[171],_0x9cb4[172],_0x9cb4[95],_0x9cb4[175]]);if(_0x81e4x2[_0x9cb4[216]]()==1&&_0x81e4x2[_0x9cb4[184]]()[_0x9cb4[217]](_0x81e4x2[_0x9cb4[187]]())){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[218]])};_0x81e4x3[_0x9cb4[24]]()};if(_0x81e4x2[_0x9cb4[216]]()>0){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[141],_0x9cb4[142],_0x9cb4[95]]);if(_0x81e4x2[_0x9cb4[184]]()[_0x9cb4[217]](_0x81e4x2[_0x9cb4[187]]())){var _0x81e4x21=false;var _0x81e4x1f=_0x81e4x2[_0x9cb4[187]]();if(_0x81e4x1f!=null&&_0x81e4x2[_0x9cb4[184]]()[_0x9cb4[217]](_0x81e4x1f)){var _0x81e4x22=_0x81e4x2[_0x9cb4[220]][_0x9cb4[219]](_0x81e4x1f);if(_0x81e4x22 instanceof mxEdgeHandler&&_0x81e4x22[_0x9cb4[221]]!=null&&_0x81e4x22[_0x9cb4[221]][_0x9cb4[18]]>2){var _0x81e4x23=_0x81e4x22[_0x9cb4[222]]( new mxMouseEvent(_0x81e4x20));var _0x81e4x24=this[_0x9cb4[0]][_0x9cb4[80]][_0x9cb4[26]](_0x9cb4[223]);_0x81e4x24[_0x9cb4[224]]=_0x81e4x22;_0x81e4x24[_0x9cb4[225]]=_0x81e4x23;_0x81e4x21=_0x81e4x23>0&&_0x81e4x23<_0x81e4x22[_0x9cb4[221]][_0x9cb4[18]]}};this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],(_0x81e4x21)?_0x9cb4[223]:_0x9cb4[226]])}else {if(_0x81e4x2[_0x9cb4[216]]()>1){_0x81e4x3[_0x9cb4[24]]();this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[143]])}};_0x81e4x3[_0x9cb4[24]]();if(_0x81e4x2[_0x9cb4[216]]()==1){var _0x81e4x25=_0x81e4x2[_0x9cb4[227]](_0x81e4x2[_0x9cb4[187]]());if(_0x81e4x25!=null){this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[228]])}}}else {this[_0x9cb4[99]](_0x81e4x3,[_0x9cb4[95],_0x9cb4[176],_0x9cb4[177],_0x9cb4[95],_0x9cb4[178]])}};Menus[_0x9cb4[5]][_0x9cb4[229]]=function(_0x81e4x26){var _0x81e4x27= new Menubar(this[_0x9cb4[0]],_0x81e4x26);var _0x81e4x28=[_0x9cb4[156],_0x9cb4[168],_0x9cb4[146],_0x9cb4[91],_0x9cb4[93],_0x9cb4[140],_0x9cb4[179]];for(var _0x81e4x6=0;_0x81e4x6<_0x81e4x28[_0x9cb4[18]];_0x81e4x6++){_0x81e4x27[_0x9cb4[181]](mxResources[_0x9cb4[26]](_0x81e4x28[_0x81e4x6]),this[_0x9cb4[26]](_0x81e4x28[_0x81e4x6])[_0x9cb4[194]])};return _0x81e4x27};function Menubar(_0x81e4x1,_0x81e4x26){this[_0x9cb4[0]]=_0x81e4x1;this[_0x9cb4[230]]=_0x81e4x26;mxEvent[_0x9cb4[232]](document,mxUtils[_0x9cb4[29]](this,function(_0x81e4x20){this[_0x9cb4[231]]()}))}Menubar[_0x9cb4[5]][_0x9cb4[231]]=function(){if(this[_0x9cb4[233]]!=null){this[_0x9cb4[233]][_0x9cb4[231]]()}};Menubar[_0x9cb4[5]][_0x9cb4[181]]=function(_0x81e4x12,_0x81e4x2a){var _0x81e4x2b=document[_0x9cb4[201]](_0x9cb4[234]);_0x81e4x2b[_0x9cb4[237]](_0x9cb4[235],_0x9cb4[236]);_0x81e4x2b[_0x9cb4[238]]=_0x9cb4[239];mxUtils[_0x9cb4[204]](_0x81e4x2b,_0x81e4x12);this[_0x9cb4[240]](_0x81e4x2b,_0x81e4x2a);this[_0x9cb4[230]][_0x9cb4[205]](_0x81e4x2b);return _0x81e4x2b};Menubar[_0x9cb4[5]][_0x9cb4[240]]=function(_0x81e4x2b,_0x81e4x2a){if(_0x81e4x2a!=null){var _0x81e4x2c=true;var _0x81e4x2d=mxUtils[_0x9cb4[29]](this,function(_0x81e4x20){if(_0x81e4x2c&&_0x81e4x2b[_0x9cb4[78]]==null||_0x81e4x2b[_0x9cb4[78]]){this[_0x9cb4[0]][_0x9cb4[7]][_0x9cb4[6]][_0x9cb4[241]][_0x9cb4[231]]();var _0x81e4x3= new mxPopupMenu(_0x81e4x2a);_0x81e4x3[_0x9cb4[242]][_0x9cb4[238]]+=_0x9cb4[243];_0x81e4x3[_0x9cb4[214]]=true;_0x81e4x3[_0x9cb4[81]]=true;_0x81e4x3[_0x9cb4[244]]=true;_0x81e4x3[_0x9cb4[231]]=mxUtils[_0x9cb4[29]](this,function(){mxPopupMenu[_0x9cb4[5]][_0x9cb4[231]][_0x9cb4[245]](_0x81e4x3,arguments);_0x81e4x3[_0x9cb4[246]]();this[_0x9cb4[233]]=null;this[_0x9cb4[247]]=null});var _0x81e4x2e=_0x81e4x2b[_0x9cb4[248]]+document[_0x9cb4[251]](_0x9cb4[250])[_0x9cb4[249]]+22;var _0x81e4x2f=_0x81e4x2b[_0x9cb4[252]]+_0x81e4x2b[_0x9cb4[253]]+140;_0x81e4x3[_0x9cb4[254]](_0x81e4x2e,_0x81e4x2f,null,_0x81e4x20);this[_0x9cb4[233]]=_0x81e4x3;this[_0x9cb4[247]]=_0x81e4x2b};_0x81e4x2c=true;mxEvent[_0x9cb4[255]](_0x81e4x20)});mxEvent[_0x9cb4[257]](_0x81e4x2b,_0x9cb4[256],mxUtils[_0x9cb4[29]](this,function(_0x81e4x20){if(this[_0x9cb4[233]]!=null&&this[_0x9cb4[247]]!=_0x81e4x2b){this[_0x9cb4[231]]();_0x81e4x2d(_0x81e4x20)}}));mxEvent[_0x9cb4[257]](_0x81e4x2b,_0x9cb4[258],mxUtils[_0x9cb4[29]](this,function(){_0x81e4x2c=this[_0x9cb4[247]]!=_0x81e4x2b}));mxEvent[_0x9cb4[257]](_0x81e4x2b,_0x9cb4[259],_0x81e4x2d)}};function Menu(_0x81e4x2a,_0x81e4xb){mxEventSource[_0x9cb4[260]](this);this[_0x9cb4[194]]=_0x81e4x2a;this[_0x9cb4[78]]=(_0x81e4xb!=null)?_0x81e4xb:true}mxUtils[_0x9cb4[261]](Menu,mxEventSource);Menu[_0x9cb4[5]][_0x9cb4[262]]=function(_0x81e4x19){if(this[_0x9cb4[78]]!=_0x81e4x19){this[_0x9cb4[78]]=_0x81e4x19;this[_0x9cb4[264]]( new mxEventObject(_0x9cb4[263]))}};Menu[_0x9cb4[5]][_0x9cb4[182]]=function(_0x81e4x3,_0x81e4x4){this[_0x9cb4[194]](_0x81e4x3,_0x81e4x4)} \ No newline at end of file diff --git a/public/assets/plugins/square/js/Shapes.js b/public/assets/plugins/square/js/Shapes.js index 13f281d..82e31c1 100644 --- a/public/assets/plugins/square/js/Shapes.js +++ b/public/assets/plugins/square/js/Shapes.js @@ -1 +1 @@ -var _0x7b48=["\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x73\x69\x7A\x65","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6D\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x65\x6E\x64","\x63\x6C\x6F\x73\x65","\x63\x75\x62\x65","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x6E\x6F\x74\x65","\x74\x61\x62\x57\x69\x64\x74\x68","\x74\x61\x62\x48\x65\x69\x67\x68\x74","\x74\x61\x62\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x69\x67\x68\x74","\x6C\x65\x66\x74","\x66\x6F\x6C\x64\x65\x72","\x63\x61\x72\x64","\x71\x75\x61\x64\x54\x6F","\x74\x61\x70\x65","\x73\x74\x65\x70","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x65\x67\x69\x6E","\x73\x74\x72\x6F\x6B\x65","\x61\x70\x70\x6C\x79","\x70\x6C\x75\x73","\x64\x6F\x75\x62\x6C\x65","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x6D\x61\x78","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x79\x6D\x62\x6F\x6C","\x41\x6C\x69\x67\x6E","\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x57\x69\x64\x74\x68","\x48\x65\x69\x67\x68\x74","\x53\x70\x61\x63\x69\x6E\x67","\x41\x72\x63\x53\x70\x61\x63\x69\x6E\x67","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x73\x61\x76\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x72\x65\x73\x74\x6F\x72\x65","\x65\x78\x74","\x6D\x65\x73\x73\x61\x67\x65","\x61\x64\x64\x50\x69\x70\x65","\x63\x75\x72\x76\x65\x54\x6F","\x75\x6D\x6C\x41\x63\x74\x6F\x72","\x6C\x6F\x6C\x6C\x69\x70\x6F\x70","\x6A\x65\x74\x74\x79\x57\x69\x64\x74\x68","\x6A\x65\x74\x74\x79\x48\x65\x69\x67\x68\x74","\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74","\x6F\x75\x74\x65\x72\x53\x74\x72\x6F\x6B\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x65\x6E\x64\x53\x74\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x74\x61\x74\x65","\x69\x6E\x69\x74\x53\x68\x61\x70\x65\x73","\x78","\x79","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x73\x68\x61\x70\x65\x73","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x72\x74","\x6C\x69\x6E\x6B","\x64\x61\x73\x68","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x73\x65\x47\x72\x69\x64\x46\x6F\x72\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x69\x6E\x69\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68","\x76\x69\x65\x77","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x73\x72\x63","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x74\x56\x69\x65\x77","\x63\x75\x72\x73\x6F\x72","\x6E\x6F\x64\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x43\x75\x72\x73\x6F\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74","\x72\x65\x64\x72\x61\x77","\x62\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73","\x64\x65\x73\x74\x72\x6F\x79","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x6F\x75\x72\x63\x65","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x76\x65\x6E\x74","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x73\x63\x61\x6C\x65","\x73\x6E\x61\x70","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x70\x70\x6C\x79\x53\x74\x79\x6C\x65","\x72\x65\x73\x65\x74","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x73\x68\x61\x70\x65","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x63\x6F\x73","\x73\x69\x6E","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x50\x6F\x69\x6E\x74","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65\x55\x6E\x72\x6F\x74\x61\x74\x65\x64","\x72\x6F\x75\x6E\x64","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x63\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x61\x6C\x75\x65","\x73\x63\x61\x6C\x65\x46\x61\x63\x74\x6F\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x73\x74\x65\x6E\x63\x69\x6C","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73"];(function(){function _0xb83dx1(){}_0xb83dx1[_0x7b48[0]]= new mxCylinder();_0xb83dx1[_0x7b48[0]][_0x7b48[1]]=_0xb83dx1;_0xb83dx1[_0x7b48[0]][_0x7b48[2]]=20;_0xb83dx1[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx8=Math[_0x7b48[6]](_0xb83dx5,Math[_0x7b48[6]](_0xb83dx6,mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]])));if(_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx8,_0xb83dx6);_0xb83dx2[_0x7b48[8]](_0xb83dx8,_0xb83dx8);_0xb83dx2[_0x7b48[8]](0,0);_0xb83dx2[_0x7b48[7]](_0xb83dx8,_0xb83dx8);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx8);_0xb83dx2[_0x7b48[9]]()}else {_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dx8,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx8);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](_0xb83dx8,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6-_0xb83dx8);_0xb83dx2[_0x7b48[8]](0,0);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[11]]=_0xb83dx1;function _0xb83dx9(){}_0xb83dx9[_0x7b48[0]]= new mxCylinder();_0xb83dx9[_0x7b48[0]][_0x7b48[1]]=_0xb83dx9;_0xb83dx9[_0x7b48[0]][_0x7b48[2]]=30;_0xb83dx9[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx8=Math[_0x7b48[6]](_0xb83dx5,Math[_0x7b48[6]](_0xb83dx6,mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]])));if(_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx5-_0xb83dx8,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dx8,_0xb83dx8);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx8);_0xb83dx2[_0x7b48[9]]()}else {_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dx8,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx8);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,0);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[13]]=_0xb83dx9;function _0xb83dxa(){}_0xb83dxa[_0x7b48[0]]= new mxCylinder();_0xb83dxa[_0x7b48[0]][_0x7b48[1]]=_0xb83dxa;_0xb83dxa[_0x7b48[0]][_0x7b48[14]]=60;_0xb83dxa[_0x7b48[0]][_0x7b48[15]]=20;_0xb83dxa[_0x7b48[0]][_0x7b48[16]]=_0x7b48[17];_0xb83dxa[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dxb=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[14],this[_0x7b48[14]]);var _0xb83dxc=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[15],this[_0x7b48[15]]);var _0xb83dxd=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[16],this[_0x7b48[16]]);var _0xb83dxe=Math[_0x7b48[6]](_0xb83dx5,_0xb83dxb);var _0xb83dxf=Math[_0x7b48[6]](_0xb83dx6,_0xb83dxc);if(_0xb83dx7){if(_0xb83dxd==_0x7b48[18]){_0xb83dx2[_0x7b48[7]](0,_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dxe,_0xb83dxf)}else {_0xb83dx2[_0x7b48[7]](_0xb83dx5-_0xb83dxe,_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dxf)};_0xb83dx2[_0x7b48[9]]()}else {if(_0xb83dxd==_0x7b48[18]){_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dxe,0);_0xb83dx2[_0x7b48[8]](_0xb83dxe,_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dxf)}else {_0xb83dx2[_0x7b48[7]](0,_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dxe,_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dxe,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,0)};_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dxf);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[19]]=_0xb83dxa;function _0xb83dx10(){}_0xb83dx10[_0x7b48[0]]= new mxCylinder();_0xb83dx10[_0x7b48[0]][_0x7b48[1]]=_0xb83dx10;_0xb83dx10[_0x7b48[0]][_0x7b48[2]]=30;_0xb83dx10[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx8=Math[_0x7b48[6]](_0xb83dx5,Math[_0x7b48[6]](_0xb83dx6,mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]])));if(!_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx8,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx8);_0xb83dx2[_0x7b48[8]](_0xb83dx8,0);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[20]]=_0xb83dx10;function _0xb83dx11(){}_0xb83dx11[_0x7b48[0]]= new mxCylinder();_0xb83dx11[_0x7b48[0]][_0x7b48[1]]=_0xb83dx11;_0xb83dx11[_0x7b48[0]][_0x7b48[2]]=0.4;_0xb83dx11[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx8=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]]);var _0xb83dxf=_0xb83dx6*_0xb83dx8;var _0xb83dx12=1.4;if(!_0xb83dx7){_0xb83dx2[_0x7b48[7]](0,_0xb83dxf/2);_0xb83dx2[_0x7b48[21]](_0xb83dx5/4,_0xb83dxf*_0xb83dx12,_0xb83dx5/2,_0xb83dxf/2);_0xb83dx2[_0x7b48[21]](_0xb83dx5*3/4,_0xb83dxf*(1-_0xb83dx12),_0xb83dx5,_0xb83dxf/2);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6-_0xb83dxf/2);_0xb83dx2[_0x7b48[21]](_0xb83dx5*3/4,_0xb83dx6-_0xb83dxf*_0xb83dx12,_0xb83dx5/2,_0xb83dx6-_0xb83dxf/2);_0xb83dx2[_0x7b48[21]](_0xb83dx5/4,_0xb83dx6-_0xb83dxf*(1-_0xb83dx12),0,_0xb83dx6-_0xb83dxf/2);_0xb83dx2[_0x7b48[8]](0,_0xb83dxf/2);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[22]]=_0xb83dx11;function _0xb83dx13(){}_0xb83dx13[_0x7b48[0]]= new mxCylinder();_0xb83dx13[_0x7b48[0]][_0x7b48[1]]=_0xb83dx13;_0xb83dx13[_0x7b48[0]][_0x7b48[2]]=0.2;_0xb83dx13[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx8=_0xb83dx5*mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]]);if(!_0xb83dx7){_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dx8,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6/2);_0xb83dx2[_0x7b48[8]](_0xb83dx5-_0xb83dx8,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[8]](_0xb83dx8,_0xb83dx6/2);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[23]]=_0xb83dx13;function _0xb83dx14(){mxRectangleShape[_0x7b48[24]](this)}mxUtils[_0x7b48[25]](_0xb83dx14,mxRectangleShape);_0xb83dx14[_0x7b48[0]][_0x7b48[26]]=function(){return false};_0xb83dx14[_0x7b48[0]][_0x7b48[27]]=function(_0xb83dx15,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6){var _0xb83dx16=Math[_0x7b48[6]](_0xb83dx5/5,_0xb83dx6/5)+1;_0xb83dx15[_0x7b48[28]]();_0xb83dx15[_0x7b48[7]](_0xb83dx3+_0xb83dx5/2,_0xb83dx4+_0xb83dx16);_0xb83dx15[_0x7b48[8]](_0xb83dx3+_0xb83dx5/2,_0xb83dx4+_0xb83dx6-_0xb83dx16);_0xb83dx15[_0x7b48[7]](_0xb83dx3+_0xb83dx16,_0xb83dx4+_0xb83dx6/2);_0xb83dx15[_0x7b48[8]](_0xb83dx3+_0xb83dx5-_0xb83dx16,_0xb83dx4+_0xb83dx6/2);_0xb83dx15[_0x7b48[9]]();_0xb83dx15[_0x7b48[29]]();mxRectangleShape[_0x7b48[0]][_0x7b48[27]][_0x7b48[30]](this,arguments)};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[31]]=_0xb83dx14;function _0xb83dx17(){mxRectangleShape[_0x7b48[24]](this)}mxUtils[_0x7b48[25]](_0xb83dx17,mxRectangleShape);_0xb83dx17[_0x7b48[0]][_0x7b48[26]]=function(){return false};_0xb83dx17[_0x7b48[0]][_0x7b48[27]]=function(_0xb83dx15,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6){if(this[_0x7b48[4]]!=null){if(this[_0x7b48[4]][_0x7b48[32]]==1){var _0xb83dx18=Math[_0x7b48[34]](2,this[_0x7b48[33]]+1);mxRectangleShape[_0x7b48[0]][_0x7b48[35]][_0x7b48[24]](this,_0xb83dx15,_0xb83dx3+_0xb83dx18,_0xb83dx4+_0xb83dx18,_0xb83dx5-2*_0xb83dx18,_0xb83dx6-2*_0xb83dx18);mxRectangleShape[_0x7b48[0]][_0x7b48[27]][_0x7b48[30]](this,arguments);_0xb83dx3+=_0xb83dx18;_0xb83dx4+=_0xb83dx18;_0xb83dx5-=2*_0xb83dx18;_0xb83dx6-=2*_0xb83dx18};_0xb83dx15[_0x7b48[36]](false);var _0xb83dx19=0;var _0xb83dx1a=null;do{_0xb83dx1a=mxCellRenderer[_0x7b48[0]][_0x7b48[12]][this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19]];if(_0xb83dx1a!=null){var _0xb83dx1b=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[38]];var _0xb83dx1c=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[39]];var _0xb83dx1d=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[40]];var _0xb83dx1e=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[41]];var _0xb83dx1f=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[42]]||0;var _0xb83dx20=this[_0x7b48[4]][_0x7b48[37]+_0xb83dx19+_0x7b48[43]];if(_0xb83dx20!=null){_0xb83dx1f+=this[_0x7b48[44]](_0xb83dx5+this[_0x7b48[33]],_0xb83dx6+this[_0x7b48[33]])*_0xb83dx20};var _0xb83dx21=_0xb83dx3;var _0xb83dx22=_0xb83dx4;if(_0xb83dx1b==mxConstants[_0x7b48[45]]){_0xb83dx21+=(_0xb83dx5-_0xb83dx1d)/2}else {if(_0xb83dx1b==mxConstants[_0x7b48[46]]){_0xb83dx21+=_0xb83dx5-_0xb83dx1d-_0xb83dx1f}else {_0xb83dx21+=_0xb83dx1f}};if(_0xb83dx1c==mxConstants[_0x7b48[47]]){_0xb83dx22+=(_0xb83dx6-_0xb83dx1e)/2}else {if(_0xb83dx1c==mxConstants[_0x7b48[48]]){_0xb83dx22+=_0xb83dx6-_0xb83dx1e-_0xb83dx1f}else {_0xb83dx22+=_0xb83dx1f}};_0xb83dx15[_0x7b48[49]]();var _0xb83dx23= new _0xb83dx1a();_0xb83dx23[_0x7b48[4]]=this[_0x7b48[4]];_0xb83dx1a[_0x7b48[0]][_0x7b48[50]][_0x7b48[24]](_0xb83dx23,_0xb83dx15,_0xb83dx21,_0xb83dx22,_0xb83dx1d,_0xb83dx1e);_0xb83dx15[_0x7b48[51]]()};_0xb83dx19++}while(_0xb83dx1a!=null);}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[52]]=_0xb83dx17;function _0xb83dx24(){}_0xb83dx24[_0x7b48[0]]= new mxCylinder();_0xb83dx24[_0x7b48[0]][_0x7b48[1]]=_0xb83dx24;_0xb83dx24[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){if(_0xb83dx7){_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5/2,_0xb83dx6/2);_0xb83dx2[_0x7b48[8]](_0xb83dx5,0);_0xb83dx2[_0x7b48[9]]()}else {_0xb83dx2[_0x7b48[7]](0,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[10]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[53]]=_0xb83dx24;function _0xb83dx25(){}_0xb83dx25[_0x7b48[0]]= new mxCylinder();_0xb83dx25[_0x7b48[0]][_0x7b48[1]]=_0xb83dx25;_0xb83dx25[_0x7b48[0]][_0x7b48[54]]=true;_0xb83dx25[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx1d=_0xb83dx5/3;var _0xb83dx1e=_0xb83dx6/4;if(!_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[55]](_0xb83dx5/2-_0xb83dx1d,_0xb83dx1e,_0xb83dx5/2-_0xb83dx1d,0,_0xb83dx5/2,0);_0xb83dx2[_0x7b48[55]](_0xb83dx5/2+_0xb83dx1d,0,_0xb83dx5/2+_0xb83dx1d,_0xb83dx1e,_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[8]](_0xb83dx5/2,2*_0xb83dx6/3);_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx6/3);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6/3);_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx6/3);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6/3);_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,2*_0xb83dx6/3);_0xb83dx2[_0x7b48[8]](0,_0xb83dx6);_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,2*_0xb83dx6/3);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[56]]=_0xb83dx25;function _0xb83dx26(){}_0xb83dx26[_0x7b48[0]]= new mxCylinder();_0xb83dx26[_0x7b48[0]][_0x7b48[1]]=_0xb83dx26;_0xb83dx26[_0x7b48[0]][_0x7b48[2]]=10;_0xb83dx26[_0x7b48[0]][_0x7b48[54]]=true;_0xb83dx26[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dx27=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[2],this[_0x7b48[2]]);var _0xb83dx1d=_0xb83dx27*2/3;var _0xb83dx1e=_0xb83dx27;if(!_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[55]](_0xb83dx5/2-_0xb83dx1d,_0xb83dx1e,_0xb83dx5/2-_0xb83dx1d,0,_0xb83dx5/2,0);_0xb83dx2[_0x7b48[55]](_0xb83dx5/2+_0xb83dx1d,0,_0xb83dx5/2+_0xb83dx1d,_0xb83dx1e,_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[7]](_0xb83dx5/2,_0xb83dx1e);_0xb83dx2[_0x7b48[8]](_0xb83dx5/2,_0xb83dx6);_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[57]]=_0xb83dx26;function _0xb83dx28(){}_0xb83dx28[_0x7b48[0]]= new mxCylinder();_0xb83dx28[_0x7b48[0]][_0x7b48[1]]=_0xb83dx28;_0xb83dx28[_0x7b48[0]][_0x7b48[58]]=32;_0xb83dx28[_0x7b48[0]][_0x7b48[59]]=12;_0xb83dx28[_0x7b48[0]][_0x7b48[3]]=function(_0xb83dx2,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6,_0xb83dx7){var _0xb83dxe=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[58],this[_0x7b48[58]]);var _0xb83dxf=mxUtils[_0x7b48[5]](this[_0x7b48[4]],_0x7b48[59],this[_0x7b48[59]]);var _0xb83dx29=_0xb83dxe/2;var _0xb83dx2a=_0xb83dx29+_0xb83dxe/2;var _0xb83dx2b=0.3*_0xb83dx6-_0xb83dxf/2;var _0xb83dx2c=0.7*_0xb83dx6-_0xb83dxf/2;if(_0xb83dx7){_0xb83dx2[_0x7b48[7]](_0xb83dx29,_0xb83dx2b);_0xb83dx2[_0x7b48[8]](_0xb83dx2a,_0xb83dx2b);_0xb83dx2[_0x7b48[8]](_0xb83dx2a,_0xb83dx2b+_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2b+_0xb83dxf);_0xb83dx2[_0x7b48[7]](_0xb83dx29,_0xb83dx2c);_0xb83dx2[_0x7b48[8]](_0xb83dx2a,_0xb83dx2c);_0xb83dx2[_0x7b48[8]](_0xb83dx2a,_0xb83dx2c+_0xb83dxf);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2c+_0xb83dxf);_0xb83dx2[_0x7b48[9]]()}else {_0xb83dx2[_0x7b48[7]](_0xb83dx29,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,0);_0xb83dx2[_0x7b48[8]](_0xb83dx5,_0xb83dx6);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx6);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2c+_0xb83dxf);_0xb83dx2[_0x7b48[8]](0,_0xb83dx2c+_0xb83dxf);_0xb83dx2[_0x7b48[8]](0,_0xb83dx2c);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2c);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2b+_0xb83dxf);_0xb83dx2[_0x7b48[8]](0,_0xb83dx2b+_0xb83dxf);_0xb83dx2[_0x7b48[8]](0,_0xb83dx2b);_0xb83dx2[_0x7b48[8]](_0xb83dx29,_0xb83dx2b);_0xb83dx2[_0x7b48[10]]();_0xb83dx2[_0x7b48[9]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[60]]=_0xb83dx28;function _0xb83dx2d(){}_0xb83dx2d[_0x7b48[0]]= new mxDoubleEllipse();_0xb83dx2d[_0x7b48[0]][_0x7b48[1]]=_0xb83dx2d;_0xb83dx2d[_0x7b48[0]][_0x7b48[61]]=true;_0xb83dx2d[_0x7b48[0]][_0x7b48[50]]=function(_0xb83dx15,_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6){var _0xb83dx18=Math[_0x7b48[6]](4,Math[_0x7b48[6]](_0xb83dx5/5,_0xb83dx6/5));if(_0xb83dx5>0&&_0xb83dx6>0){_0xb83dx15[_0x7b48[62]](_0xb83dx3+_0xb83dx18,_0xb83dx4+_0xb83dx18,_0xb83dx5-2*_0xb83dx18,_0xb83dx6-2*_0xb83dx18);_0xb83dx15[_0x7b48[63]]()};_0xb83dx15[_0x7b48[64]](false);if(this[_0x7b48[61]]){_0xb83dx15[_0x7b48[62]](_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6);_0xb83dx15[_0x7b48[29]]()}};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[65]]=_0xb83dx2d;function _0xb83dx2e(){}_0xb83dx2e[_0x7b48[0]]= new _0xb83dx2d();_0xb83dx2e[_0x7b48[0]][_0x7b48[1]]=_0xb83dx2e;_0xb83dx2e[_0x7b48[0]][_0x7b48[61]]=false;mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[66]]=_0xb83dx2e;var _0xb83dx2f=mxImageExport[_0x7b48[0]][_0x7b48[67]];mxImageExport[_0x7b48[0]][_0x7b48[67]]=function(){_0xb83dx2f[_0x7b48[30]](this,arguments);function _0xb83dx30(_0xb83dx31){return {drawShape:function(_0xb83dx32,_0xb83dx33,_0xb83dx34,_0xb83dx35){var _0xb83dx3=_0xb83dx34[_0x7b48[68]];var _0xb83dx4=_0xb83dx34[_0x7b48[69]];var _0xb83dx5=_0xb83dx34[_0x7b48[70]];var _0xb83dx6=_0xb83dx34[_0x7b48[71]];if(_0xb83dx35){var _0xb83dx18=Math[_0x7b48[6]](4,Math[_0x7b48[6]](_0xb83dx5/5,_0xb83dx6/5));_0xb83dx3+=_0xb83dx18;_0xb83dx4+=_0xb83dx18;_0xb83dx5-=2*_0xb83dx18;_0xb83dx6-=2*_0xb83dx18;if(_0xb83dx5>0&&_0xb83dx6>0){_0xb83dx32[_0x7b48[62]](_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6)};return true}else {_0xb83dx32[_0x7b48[63]]();if(_0xb83dx31){_0xb83dx32[_0x7b48[62]](_0xb83dx3,_0xb83dx4,_0xb83dx5,_0xb83dx6);_0xb83dx32[_0x7b48[29]]()}}}}}this[_0x7b48[72]][_0x7b48[65]]=_0xb83dx30(true);this[_0x7b48[72]][_0x7b48[66]]=_0xb83dx30(false)};function _0xb83dx36(){mxArrow[_0x7b48[24]](this)}mxUtils[_0x7b48[25]](_0xb83dx36,mxArrow);_0xb83dx36[_0x7b48[0]][_0x7b48[73]]=function(_0xb83dx15,_0xb83dx37){var _0xb83dx1d=10;var _0xb83dx38=_0xb83dx37[0];var _0xb83dx39=_0xb83dx37[_0xb83dx37[_0x7b48[74]]-1];var _0xb83dxe=_0xb83dx39[_0x7b48[68]]-_0xb83dx38[_0x7b48[68]];var _0xb83dxf=_0xb83dx39[_0x7b48[69]]-_0xb83dx38[_0x7b48[69]];var _0xb83dx3a=Math[_0x7b48[75]](_0xb83dxe*_0xb83dxe+_0xb83dxf*_0xb83dxf);var _0xb83dx3b=_0xb83dx3a;var _0xb83dx3c=_0xb83dxe/_0xb83dx3a;var _0xb83dx3d=_0xb83dxf/_0xb83dx3a;var _0xb83dx3e=_0xb83dx3b*_0xb83dx3c;var _0xb83dx3f=_0xb83dx3b*_0xb83dx3d;var _0xb83dx40=_0xb83dx1d*_0xb83dx3d/3;var _0xb83dx41=-_0xb83dx1d*_0xb83dx3c/3;var _0xb83dx42=_0xb83dx38[_0x7b48[68]]-_0xb83dx40/2;var _0xb83dx43=_0xb83dx38[_0x7b48[69]]-_0xb83dx41/2;var _0xb83dx44=_0xb83dx42+_0xb83dx40;var _0xb83dx45=_0xb83dx43+_0xb83dx41;var _0xb83dx46=_0xb83dx44+_0xb83dx3e;var _0xb83dx47=_0xb83dx45+_0xb83dx3f;var _0xb83dx48=_0xb83dx46+_0xb83dx40;var _0xb83dx49=_0xb83dx47+_0xb83dx41;var _0xb83dx4a=_0xb83dx48-3*_0xb83dx40;var _0xb83dx4b=_0xb83dx49-3*_0xb83dx41;_0xb83dx15[_0x7b48[28]]();_0xb83dx15[_0x7b48[7]](_0xb83dx44,_0xb83dx45);_0xb83dx15[_0x7b48[8]](_0xb83dx46,_0xb83dx47);_0xb83dx15[_0x7b48[7]](_0xb83dx4a+_0xb83dx40,_0xb83dx4b+_0xb83dx41);_0xb83dx15[_0x7b48[8]](_0xb83dx42,_0xb83dx43);_0xb83dx15[_0x7b48[29]]()};mxCellRenderer[_0x7b48[0]][_0x7b48[12]][_0x7b48[76]]=_0xb83dx36;mxMarker[_0x7b48[78]](_0x7b48[77],function(_0xb83dx32,_0xb83dx1a,_0xb83dx4c,_0xb83dx39,_0xb83dx4d,_0xb83dx4e,_0xb83dx4f,_0xb83dx50,_0xb83dx51,_0xb83dx52){var _0xb83dx3c=_0xb83dx4d*(_0xb83dx4f+_0xb83dx51+1);var _0xb83dx3d=_0xb83dx4e*(_0xb83dx4f+_0xb83dx51+1);return function(){_0xb83dx32[_0x7b48[28]]();_0xb83dx32[_0x7b48[7]](_0xb83dx39[_0x7b48[68]]-_0xb83dx3c/2-_0xb83dx3d/2,_0xb83dx39[_0x7b48[69]]-_0xb83dx3d/2+_0xb83dx3c/2);_0xb83dx32[_0x7b48[8]](_0xb83dx39[_0x7b48[68]]+_0xb83dx3d/2-3*_0xb83dx3c/2,_0xb83dx39[_0x7b48[69]]-3*_0xb83dx3d/2-_0xb83dx3c/2);_0xb83dx32[_0x7b48[29]]()}});var _0xb83dx53=-99;if( typeof (mxVertexHandler)!=_0x7b48[79]){function _0xb83dx54(_0xb83dx33){mxVertexHandler[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx54,mxVertexHandler);_0xb83dx54[_0x7b48[0]][_0x7b48[80]]=false;_0xb83dx54[_0x7b48[0]][_0x7b48[81]]=function(){this[_0x7b48[82]]=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],mxConstants.STYLE_HORIZONTAL,true);var _0xb83dx55=this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]];if(this[_0x7b48[86]]!=null){var _0xb83dx34= new mxRectangle(0,0,this[_0x7b48[86]][_0x7b48[70]],this[_0x7b48[86]][_0x7b48[71]]);this[_0x7b48[87]]= new mxImageShape(_0xb83dx34,this[_0x7b48[86]][_0x7b48[88]])}else {var _0xb83dx4f=10;var _0xb83dx34= new mxRectangle(0,0,_0xb83dx4f,_0xb83dx4f);this[_0x7b48[87]]= new mxRhombus(_0xb83dx34,mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};this[_0x7b48[87]][_0x7b48[89]]=(_0xb83dx55[_0x7b48[89]]!=mxConstants[_0x7b48[90]])?mxConstants[_0x7b48[91]]:mxConstants[_0x7b48[90]];this[_0x7b48[87]][_0x7b48[81]](_0xb83dx55[_0x7b48[93]]()[_0x7b48[92]]());this[_0x7b48[87]][_0x7b48[95]][_0x7b48[4]][_0x7b48[94]]=this[_0x7b48[96]]();mxEvent[_0x7b48[97]](this[_0x7b48[87]][_0x7b48[95]],_0xb83dx55,this[_0x7b48[83]]);mxVertexHandler[_0x7b48[0]][_0x7b48[81]][_0x7b48[30]](this,arguments)};_0xb83dx54[_0x7b48[0]][_0x7b48[96]]=function(){return _0x7b48[98]};_0xb83dx54[_0x7b48[0]][_0x7b48[99]]=function(){mxVertexHandler[_0x7b48[0]][_0x7b48[99]][_0x7b48[30]](this,arguments);var _0xb83dx4f=this[_0x7b48[87]][_0x7b48[100]][_0x7b48[70]];this[_0x7b48[87]][_0x7b48[100]]=this[_0x7b48[101]](_0xb83dx4f);this[_0x7b48[87]][_0x7b48[99]]()};_0xb83dx54[_0x7b48[0]][_0x7b48[102]]=function(){mxVertexHandler[_0x7b48[0]][_0x7b48[102]][_0x7b48[30]](this,arguments);if(this[_0x7b48[87]]!=null){this[_0x7b48[87]][_0x7b48[102]]();this[_0x7b48[87]]=null}};_0xb83dx54[_0x7b48[0]][_0x7b48[103]]=function(_0xb83dx56){if(_0xb83dx56[_0x7b48[104]](this[_0x7b48[87]])){return _0xb83dx53};return mxVertexHandler[_0x7b48[0]][_0x7b48[103]][_0x7b48[30]](this,arguments)};_0xb83dx54[_0x7b48[0]][_0x7b48[105]]=function(_0xb83dx57,_0xb83dx56){if(!_0xb83dx56[_0x7b48[106]]()&&this[_0x7b48[107]]==_0xb83dx53){var _0xb83dx58= new mxPoint(_0xb83dx56[_0x7b48[108]](),_0xb83dx56[_0x7b48[109]]());this[_0x7b48[110]](_0xb83dx58);var _0xb83dx59=this[_0x7b48[84]][_0x7b48[112]](_0xb83dx56[_0x7b48[111]]());var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];if(_0xb83dx59&&this[_0x7b48[80]]){_0xb83dx58[_0x7b48[68]]=this[_0x7b48[84]][_0x7b48[114]](_0xb83dx58[_0x7b48[68]]/_0xb83dx5a)*_0xb83dx5a;_0xb83dx58[_0x7b48[69]]=this[_0x7b48[84]][_0x7b48[114]](_0xb83dx58[_0x7b48[69]]/_0xb83dx5a)*_0xb83dx5a};this[_0x7b48[115]](_0xb83dx58);this[_0x7b48[116]](this[_0x7b48[87]],_0xb83dx58[_0x7b48[68]],_0xb83dx58[_0x7b48[69]]);this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]][_0x7b48[117]][_0x7b48[99]](this[_0x7b48[83]],true);_0xb83dx56[_0x7b48[118]]()}else {mxVertexHandler[_0x7b48[0]][_0x7b48[105]][_0x7b48[30]](this,arguments)}};_0xb83dx54[_0x7b48[0]][_0x7b48[119]]=function(_0xb83dx57,_0xb83dx56){if(!_0xb83dx56[_0x7b48[106]]()&&this[_0x7b48[107]]==_0xb83dx53){this[_0x7b48[120]]();this[_0x7b48[121]]();_0xb83dx56[_0x7b48[118]]()}else {mxVertexHandler[_0x7b48[0]][_0x7b48[119]][_0x7b48[30]](this,arguments)}};_0xb83dx54[_0x7b48[0]][_0x7b48[101]]=function(_0xb83dx4f){var _0xb83dx5b=this[_0x7b48[83]][_0x7b48[123]][_0x7b48[122]]();var _0xb83dx5c=mxUtils[_0x7b48[124]](_0xb83dx5b);var _0xb83dx5d=Math[_0x7b48[125]](_0xb83dx5c);var _0xb83dx5e=Math[_0x7b48[126]](_0xb83dx5c);var _0xb83dx34= new mxRectangle(this[_0x7b48[83]][_0x7b48[68]],this[_0x7b48[83]][_0x7b48[69]],this[_0x7b48[83]][_0x7b48[70]],this[_0x7b48[83]][_0x7b48[71]]);if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[127]]()){var _0xb83dx5f=(_0xb83dx34[_0x7b48[70]]-_0xb83dx34[_0x7b48[71]])/2;_0xb83dx34[_0x7b48[68]]+=_0xb83dx5f;_0xb83dx34[_0x7b48[69]]-=_0xb83dx5f;var _0xb83dx23=_0xb83dx34[_0x7b48[70]];_0xb83dx34[_0x7b48[70]]=_0xb83dx34[_0x7b48[71]];_0xb83dx34[_0x7b48[71]]=_0xb83dx23};var _0xb83dx60=this[_0x7b48[128]](_0xb83dx34);if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[129]]){_0xb83dx60[_0x7b48[68]]=2*_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx60[_0x7b48[68]]};if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[130]]){_0xb83dx60[_0x7b48[69]]=2*_0xb83dx34[_0x7b48[69]]+_0xb83dx34[_0x7b48[71]]-_0xb83dx60[_0x7b48[69]]};_0xb83dx60=mxUtils[_0x7b48[133]](_0xb83dx60,_0xb83dx5d,_0xb83dx5e, new mxPoint(this[_0x7b48[83]][_0x7b48[131]](),this[_0x7b48[83]][_0x7b48[132]]()));return new mxRectangle(_0xb83dx60[_0x7b48[68]]-_0xb83dx4f/2,_0xb83dx60[_0x7b48[69]]-_0xb83dx4f/2,_0xb83dx4f,_0xb83dx4f)};_0xb83dx54[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){return null};_0xb83dx54[_0x7b48[0]][_0x7b48[115]]=function(_0xb83dx58){};_0xb83dx54[_0x7b48[0]][_0x7b48[110]]=function(_0xb83dx58){_0xb83dx58[_0x7b48[68]]=Math[_0x7b48[34]](this[_0x7b48[83]][_0x7b48[68]],Math[_0x7b48[6]](this[_0x7b48[83]][_0x7b48[68]]+this[_0x7b48[83]][_0x7b48[70]],_0xb83dx58[_0x7b48[68]]));_0xb83dx58[_0x7b48[69]]=Math[_0x7b48[34]](this[_0x7b48[83]][_0x7b48[69]],Math[_0x7b48[6]](this[_0x7b48[83]][_0x7b48[69]]+this[_0x7b48[83]][_0x7b48[71]],_0xb83dx58[_0x7b48[69]]))};_0xb83dx54[_0x7b48[0]][_0x7b48[120]]=function(){};function _0xb83dx61(_0xb83dx33){_0xb83dx54[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx61,_0xb83dx54);_0xb83dx61[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];var _0xb83dxb=Math[_0x7b48[6]](_0xb83dx34[_0x7b48[70]],mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[14],60)*_0xb83dx5a);var _0xb83dxc=Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]],mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[15],20)*_0xb83dx5a);var _0xb83dxd=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[16],_0x7b48[17]);var _0xb83dx3=(_0xb83dxd==_0x7b48[18])?_0xb83dx34[_0x7b48[68]]+_0xb83dxb:_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dxb;return new mxPoint(_0xb83dx3,_0xb83dx34[_0x7b48[69]]+_0xb83dxc)};_0xb83dx61[_0x7b48[0]][_0x7b48[115]]=function(_0xb83dx58){var _0xb83dx5b=this[_0x7b48[83]][_0x7b48[123]][_0x7b48[122]]();var _0xb83dx5c=mxUtils[_0x7b48[124]](_0xb83dx5b);var _0xb83dx5d=Math[_0x7b48[125]](-_0xb83dx5c);var _0xb83dx5e=Math[_0x7b48[126]](-_0xb83dx5c);var _0xb83dx34= new mxRectangle(this[_0x7b48[83]][_0x7b48[68]],this[_0x7b48[83]][_0x7b48[69]],this[_0x7b48[83]][_0x7b48[70]],this[_0x7b48[83]][_0x7b48[71]]);if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[127]]()){var _0xb83dx5f=(_0xb83dx34[_0x7b48[70]]-_0xb83dx34[_0x7b48[71]])/2;_0xb83dx34[_0x7b48[68]]+=_0xb83dx5f;_0xb83dx34[_0x7b48[69]]-=_0xb83dx5f;var _0xb83dx23=_0xb83dx34[_0x7b48[70]];_0xb83dx34[_0x7b48[70]]=_0xb83dx34[_0x7b48[71]];_0xb83dx34[_0x7b48[71]]=_0xb83dx23};var _0xb83dx60= new mxPoint(_0xb83dx58[_0x7b48[68]],_0xb83dx58[_0x7b48[69]]);_0xb83dx60=mxUtils[_0x7b48[133]](_0xb83dx60,_0xb83dx5d,_0xb83dx5e, new mxPoint(this[_0x7b48[83]][_0x7b48[131]](),this[_0x7b48[83]][_0x7b48[132]]()));if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[129]]){_0xb83dx60[_0x7b48[68]]=2*_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx60[_0x7b48[68]]};if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[130]]){_0xb83dx60[_0x7b48[69]]=2*_0xb83dx34[_0x7b48[69]]+_0xb83dx34[_0x7b48[71]]-_0xb83dx60[_0x7b48[69]]};var _0xb83dx62=this[_0x7b48[134]](_0xb83dx60,_0xb83dx34);if(_0xb83dx62!=null){if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[129]]){_0xb83dx62[_0x7b48[68]]=2*_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx62[_0x7b48[68]]};if(this[_0x7b48[83]][_0x7b48[123]][_0x7b48[130]]){_0xb83dx62[_0x7b48[69]]=2*_0xb83dx34[_0x7b48[69]]+_0xb83dx34[_0x7b48[71]]-_0xb83dx62[_0x7b48[69]]};_0xb83dx5d=Math[_0x7b48[125]](_0xb83dx5c);_0xb83dx5e=Math[_0x7b48[126]](_0xb83dx5c);_0xb83dx62=mxUtils[_0x7b48[133]](_0xb83dx62,_0xb83dx5d,_0xb83dx5e, new mxPoint(this[_0x7b48[83]][_0x7b48[131]](),this[_0x7b48[83]][_0x7b48[132]]()));_0xb83dx58[_0x7b48[68]]=_0xb83dx62[_0x7b48[68]];_0xb83dx58[_0x7b48[69]]=_0xb83dx62[_0x7b48[69]]}};_0xb83dx61[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx60,_0xb83dx34){var _0xb83dxd=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[16],_0x7b48[17]);var _0xb83dxb=(_0xb83dxd==_0x7b48[18])?_0xb83dx60[_0x7b48[68]]-_0xb83dx34[_0x7b48[68]]:_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx60[_0x7b48[68]];var _0xb83dxc=_0xb83dx60[_0x7b48[69]]-_0xb83dx34[_0x7b48[69]];var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];this[_0x7b48[83]][_0x7b48[4]][_0x7b48[14]]=Math[_0x7b48[135]](Math[_0x7b48[34]](1,_0xb83dxb)/_0xb83dx5a);this[_0x7b48[83]][_0x7b48[4]][_0x7b48[15]]=Math[_0x7b48[135]](Math[_0x7b48[34]](1,_0xb83dxc)/_0xb83dx5a)};_0xb83dx61[_0x7b48[0]][_0x7b48[120]]=function(){var _0xb83dx63=this[_0x7b48[84]][_0x7b48[136]]();_0xb83dx63[_0x7b48[137]]();try{this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]][_0x7b48[139]](_0x7b48[14],this[_0x7b48[83]][_0x7b48[4]][_0x7b48[14]],[this[_0x7b48[83]][_0x7b48[138]]]);this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]][_0x7b48[139]](_0x7b48[15],this[_0x7b48[83]][_0x7b48[4]][_0x7b48[15]],[this[_0x7b48[83]][_0x7b48[138]]])}finally{_0xb83dx63[_0x7b48[140]]()}};function _0xb83dx64(_0xb83dx33){_0xb83dx61[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx64,_0xb83dx61);_0xb83dx64[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];var _0xb83dx65=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]/2,_0xb83dx34[_0x7b48[69]]+Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]],_0xb83dx65*_0xb83dx5a))};_0xb83dx64[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx58,_0xb83dx34){_0xb83dx58[_0x7b48[68]]=_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]/2;startSize=_0xb83dx58[_0x7b48[69]]-_0xb83dx34[_0x7b48[69]];var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];this[_0x7b48[83]][_0x7b48[4]][_0x7b48[141]]=Math[_0x7b48[135]](Math[_0x7b48[34]](1,startSize)/_0xb83dx5a);return _0xb83dx58};_0xb83dx64[_0x7b48[0]][_0x7b48[120]]=function(){this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]][_0x7b48[139]](_0x7b48[141],this[_0x7b48[83]][_0x7b48[4]][_0x7b48[141]],[this[_0x7b48[83]][_0x7b48[138]]])};function _0xb83dx66(_0xb83dx33){_0xb83dx61[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx66,_0xb83dx61);_0xb83dx66[_0x7b48[0]][_0x7b48[142]]=20;_0xb83dx66[_0x7b48[0]][_0x7b48[143]]=1;_0xb83dx66[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];var _0xb83dx67=Math[_0x7b48[6]](_0xb83dx34[_0x7b48[70]],Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]],mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[2],this[_0x7b48[142]])*_0xb83dx5a/this[_0x7b48[143]]));return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx67,_0xb83dx34[_0x7b48[69]]+_0xb83dx67)};_0xb83dx66[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx60,_0xb83dx34){var _0xb83dx4f=Math[_0x7b48[34]](0,Math[_0x7b48[6]](Math[_0x7b48[6]](_0xb83dx34[_0x7b48[70]]/this[_0x7b48[143]],_0xb83dx60[_0x7b48[68]]-_0xb83dx34[_0x7b48[68]]),Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]]/this[_0x7b48[143]],_0xb83dx60[_0x7b48[69]]-_0xb83dx34[_0x7b48[69]])));var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];this[_0x7b48[83]][_0x7b48[4]][_0x7b48[2]]=Math[_0x7b48[135]](Math[_0x7b48[34]](1,_0xb83dx4f)/_0xb83dx5a)*this[_0x7b48[143]];return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx4f,_0xb83dx34[_0x7b48[69]]+_0xb83dx4f)};_0xb83dx66[_0x7b48[0]][_0x7b48[120]]=function(){this[_0x7b48[83]][_0x7b48[85]][_0x7b48[84]][_0x7b48[139]](_0x7b48[2],this[_0x7b48[83]][_0x7b48[4]][_0x7b48[2]],[this[_0x7b48[83]][_0x7b48[138]]])};function _0xb83dx68(_0xb83dx33){_0xb83dx66[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx68,_0xb83dx66);_0xb83dx68[_0x7b48[0]][_0x7b48[142]]=30;_0xb83dx68[_0x7b48[0]][_0x7b48[143]]=2;function _0xb83dx69(_0xb83dx33){_0xb83dx66[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx69,_0xb83dx66);_0xb83dx69[_0x7b48[0]][_0x7b48[142]]=30;_0xb83dx69[_0x7b48[0]][_0x7b48[143]]=1;_0xb83dx69[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];var _0xb83dx67=Math[_0x7b48[6]](_0xb83dx34[_0x7b48[70]],Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]],mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[2],this[_0x7b48[142]])*_0xb83dx5a/this[_0x7b48[143]]));return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx67,_0xb83dx34[_0x7b48[69]]+_0xb83dx67)};_0xb83dx69[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx60,_0xb83dx34){var _0xb83dx4f=Math[_0x7b48[34]](0,Math[_0x7b48[6]](Math[_0x7b48[6]](_0xb83dx34[_0x7b48[70]]/this[_0x7b48[143]],_0xb83dx60[_0x7b48[68]]-_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]),Math[_0x7b48[6]](_0xb83dx34[_0x7b48[71]]/this[_0x7b48[143]],_0xb83dx60[_0x7b48[69]]-_0xb83dx34[_0x7b48[69]])));var _0xb83dx5a=this[_0x7b48[84]][_0x7b48[93]]()[_0x7b48[113]];this[_0x7b48[83]][_0x7b48[4]][_0x7b48[2]]=Math[_0x7b48[135]](Math[_0x7b48[34]](1,_0xb83dx4f)/_0xb83dx5a)*this[_0x7b48[143]];return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]-_0xb83dx4f,_0xb83dx34[_0x7b48[69]]+_0xb83dx4f)};function _0xb83dx6a(_0xb83dx33){_0xb83dx66[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx6a,_0xb83dx66);_0xb83dx6a[_0x7b48[0]][_0x7b48[142]]=0.2;_0xb83dx6a[_0x7b48[0]][_0x7b48[143]]=1;_0xb83dx6a[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx67=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[2],this[_0x7b48[142]]);return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]*_0xb83dx67,_0xb83dx34[_0x7b48[69]]+_0xb83dx34[_0x7b48[71]]/2)};_0xb83dx6a[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx60,_0xb83dx34){var _0xb83dx4f=Math[_0x7b48[6]](1,(_0xb83dx60[_0x7b48[68]]-_0xb83dx34[_0x7b48[68]])/_0xb83dx34[_0x7b48[70]]);this[_0x7b48[83]][_0x7b48[4]][_0x7b48[2]]=_0xb83dx4f;return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx4f*_0xb83dx34[_0x7b48[70]],_0xb83dx34[_0x7b48[69]]+_0xb83dx34[_0x7b48[71]]/2)};function _0xb83dx6b(_0xb83dx33){_0xb83dx66[_0x7b48[24]](this,_0xb83dx33)}mxUtils[_0x7b48[25]](_0xb83dx6b,_0xb83dx66);_0xb83dx6b[_0x7b48[0]][_0x7b48[142]]=0.4;_0xb83dx6b[_0x7b48[0]][_0x7b48[143]]=1;_0xb83dx6b[_0x7b48[0]][_0x7b48[128]]=function(_0xb83dx34){var _0xb83dx67=mxUtils[_0x7b48[5]](this[_0x7b48[83]][_0x7b48[4]],_0x7b48[2],this[_0x7b48[142]]);return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]/2,_0xb83dx34[_0x7b48[69]]+_0xb83dx67*_0xb83dx34[_0x7b48[71]]/2)};_0xb83dx6b[_0x7b48[0]][_0x7b48[134]]=function(_0xb83dx60,_0xb83dx34){var _0xb83dx4f=Math[_0x7b48[34]](0,Math[_0x7b48[6]](1,((_0xb83dx60[_0x7b48[69]]-_0xb83dx34[_0x7b48[69]])/_0xb83dx34[_0x7b48[71]])*2));this[_0x7b48[83]][_0x7b48[4]][_0x7b48[2]]=_0xb83dx4f;return new mxPoint(_0xb83dx34[_0x7b48[68]]+_0xb83dx34[_0x7b48[70]]/2,_0xb83dx34[_0x7b48[69]]+_0xb83dx4f*_0xb83dx34[_0x7b48[71]]/2)};var _0xb83dx6c={"\x73\x77\x69\x6D\x6C\x61\x6E\x65":_0xb83dx64,"\x66\x6F\x6C\x64\x65\x72":_0xb83dx61,"\x63\x75\x62\x65":_0xb83dx66,"\x63\x61\x72\x64":_0xb83dx68,"\x6E\x6F\x74\x65":_0xb83dx69,"\x73\x74\x65\x70":_0xb83dx6a,"\x74\x61\x70\x65":_0xb83dx6b};var _0xb83dx6d=mxGraph[_0x7b48[0]][_0x7b48[144]];mxGraph[_0x7b48[0]][_0x7b48[144]]=function(_0xb83dx33){if(_0xb83dx33!=null){var _0xb83dx6e=_0xb83dx6c[_0xb83dx33[_0x7b48[4]][_0x7b48[123]]];if(_0xb83dx6e!=null){return new _0xb83dx6e(_0xb83dx33)}};return _0xb83dx6d[_0x7b48[30]](this,arguments)}};mxGraph[_0x7b48[0]][_0x7b48[145]]=function(_0xb83dx6f,_0xb83dx50){if(_0xb83dx6f!=null&&_0xb83dx6f[_0x7b48[123]]!=null){if(_0xb83dx6f[_0x7b48[123]][_0x7b48[146]]!=null){if(_0xb83dx6f[_0x7b48[123]][_0x7b48[146]]!=null){return _0xb83dx6f[_0x7b48[123]][_0x7b48[146]][_0x7b48[147]]}}else {if(_0xb83dx6f[_0x7b48[123]][_0x7b48[147]]!=null){return _0xb83dx6f[_0x7b48[123]][_0x7b48[147]]}}};return null};mxRectangleShape[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxLabel[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];mxImageShape[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];mxSwimlane[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];_0xb83dx14[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];_0xb83dx9[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];_0xb83dx10[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];_0xb83dx1[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];_0xb83dxa[_0x7b48[0]][_0x7b48[147]]=mxRectangleShape[_0x7b48[0]][_0x7b48[147]];mxCylinder[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.15,0.05),false), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.85,0.05),false), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.3),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.7),true), new mxConnectionConstraint( new mxPoint(0.15,0.95),false), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.85,0.95),false)];_0xb83dx25[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.1),false), new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.75,0.1),false), new mxConnectionConstraint( new mxPoint(0,1/3),false), new mxConnectionConstraint( new mxPoint(0,1),false), new mxConnectionConstraint( new mxPoint(1,1/3),false), new mxConnectionConstraint( new mxPoint(1,1),false), new mxConnectionConstraint( new mxPoint(0.5,0.5),false)];_0xb83dx28[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxActor[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.25,0.2),false), new mxConnectionConstraint( new mxPoint(0.1,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.75,0.25),false), new mxConnectionConstraint( new mxPoint(0.9,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];_0xb83dx11[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.35),false), new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.65),false), new mxConnectionConstraint( new mxPoint(1,0.35),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.65),false), new mxConnectionConstraint( new mxPoint(0.25,1),false), new mxConnectionConstraint( new mxPoint(0.75,0),false)];_0xb83dx13[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true), new mxConnectionConstraint( new mxPoint(0.1,0.25),false), new mxConnectionConstraint( new mxPoint(0.2,0.5),false), new mxConnectionConstraint( new mxPoint(0.1,0.75),false), new mxConnectionConstraint( new mxPoint(0.9,0.25),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(0.9,0.75),false)];mxLine[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0.25,0.5),false), new mxConnectionConstraint( new mxPoint(0.75,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.5),false)];_0xb83dx26[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.5,1),false)];mxEllipse[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0,0),true), new mxConnectionConstraint( new mxPoint(1,0),true), new mxConnectionConstraint( new mxPoint(0,1),true), new mxConnectionConstraint( new mxPoint(1,1),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5))];mxDoubleEllipse[_0x7b48[0]][_0x7b48[147]]=mxEllipse[_0x7b48[0]][_0x7b48[147]];mxRhombus[_0x7b48[0]][_0x7b48[147]]=mxEllipse[_0x7b48[0]][_0x7b48[147]];mxTriangle[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(1,0.5),true)];mxHexagon[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.375,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.625,0),true), new mxConnectionConstraint( new mxPoint(0.125,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0.125,0.75),false), new mxConnectionConstraint( new mxPoint(0.875,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(0.875,0.75),false), new mxConnectionConstraint( new mxPoint(0.375,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.625,1),true)];mxCloud[_0x7b48[0]][_0x7b48[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.25),false), new mxConnectionConstraint( new mxPoint(0.4,0.1),false), new mxConnectionConstraint( new mxPoint(0.16,0.55),false), new mxConnectionConstraint( new mxPoint(0.07,0.4),false), new mxConnectionConstraint( new mxPoint(0.31,0.8),false), new mxConnectionConstraint( new mxPoint(0.13,0.77),false), new mxConnectionConstraint( new mxPoint(0.8,0.8),false), new mxConnectionConstraint( new mxPoint(0.55,0.95),false), new mxConnectionConstraint( new mxPoint(0.875,0.5),false), new mxConnectionConstraint( new mxPoint(0.96,0.7),false), new mxConnectionConstraint( new mxPoint(0.625,0.2),false), new mxConnectionConstraint( new mxPoint(0.88,0.25),false)];mxArrow[_0x7b48[0]][_0x7b48[147]]=null})() \ No newline at end of file +var _0x116e=["\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x63\x6F\x6E\x73\x74\x72\x75\x63\x74\x6F\x72","\x73\x69\x7A\x65","\x72\x65\x64\x72\x61\x77\x50\x61\x74\x68","\x73\x74\x79\x6C\x65","\x67\x65\x74\x56\x61\x6C\x75\x65","\x6D\x69\x6E","\x6D\x6F\x76\x65\x54\x6F","\x6C\x69\x6E\x65\x54\x6F","\x65\x6E\x64","\x63\x6C\x6F\x73\x65","\x63\x75\x62\x65","\x64\x65\x66\x61\x75\x6C\x74\x53\x68\x61\x70\x65\x73","\x6E\x6F\x74\x65","\x74\x61\x62\x57\x69\x64\x74\x68","\x74\x61\x62\x48\x65\x69\x67\x68\x74","\x74\x61\x62\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x72\x69\x67\x68\x74","\x6C\x65\x66\x74","\x66\x6F\x6C\x64\x65\x72","\x63\x61\x72\x64","\x71\x75\x61\x64\x54\x6F","\x74\x61\x70\x65","\x73\x74\x65\x70","\x63\x61\x6C\x6C","\x65\x78\x74\x65\x6E\x64","\x69\x73\x48\x74\x6D\x6C\x41\x6C\x6C\x6F\x77\x65\x64","\x70\x61\x69\x6E\x74\x46\x6F\x72\x65\x67\x72\x6F\x75\x6E\x64","\x62\x65\x67\x69\x6E","\x73\x74\x72\x6F\x6B\x65","\x61\x70\x70\x6C\x79","\x70\x6C\x75\x73","\x64\x6F\x75\x62\x6C\x65","\x73\x74\x72\x6F\x6B\x65\x77\x69\x64\x74\x68","\x6D\x61\x78","\x70\x61\x69\x6E\x74\x42\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x73\x65\x74\x44\x61\x73\x68\x65\x64","\x73\x79\x6D\x62\x6F\x6C","\x41\x6C\x69\x67\x6E","\x56\x65\x72\x74\x69\x63\x61\x6C\x41\x6C\x69\x67\x6E","\x57\x69\x64\x74\x68","\x48\x65\x69\x67\x68\x74","\x53\x70\x61\x63\x69\x6E\x67","\x41\x72\x63\x53\x70\x61\x63\x69\x6E\x67","\x67\x65\x74\x41\x72\x63\x53\x69\x7A\x65","\x41\x4C\x49\x47\x4E\x5F\x43\x45\x4E\x54\x45\x52","\x41\x4C\x49\x47\x4E\x5F\x52\x49\x47\x48\x54","\x41\x4C\x49\x47\x4E\x5F\x4D\x49\x44\x44\x4C\x45","\x41\x4C\x49\x47\x4E\x5F\x42\x4F\x54\x54\x4F\x4D","\x73\x61\x76\x65","\x70\x61\x69\x6E\x74\x56\x65\x72\x74\x65\x78\x53\x68\x61\x70\x65","\x72\x65\x73\x74\x6F\x72\x65","\x65\x78\x74","\x6D\x65\x73\x73\x61\x67\x65","\x61\x64\x64\x50\x69\x70\x65","\x63\x75\x72\x76\x65\x54\x6F","\x75\x6D\x6C\x41\x63\x74\x6F\x72","\x6C\x6F\x6C\x6C\x69\x70\x6F\x70","\x6A\x65\x74\x74\x79\x57\x69\x64\x74\x68","\x6A\x65\x74\x74\x79\x48\x65\x69\x67\x68\x74","\x63\x6F\x6D\x70\x6F\x6E\x65\x6E\x74","\x6F\x75\x74\x65\x72\x53\x74\x72\x6F\x6B\x65","\x65\x6C\x6C\x69\x70\x73\x65","\x66\x69\x6C\x6C\x41\x6E\x64\x53\x74\x72\x6F\x6B\x65","\x73\x65\x74\x53\x68\x61\x64\x6F\x77","\x65\x6E\x64\x53\x74\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x74\x61\x74\x65","\x69\x6E\x69\x74\x53\x68\x61\x70\x65\x73","\x78","\x79","\x77\x69\x64\x74\x68","\x68\x65\x69\x67\x68\x74","\x73\x68\x61\x70\x65\x73","\x70\x61\x69\x6E\x74\x45\x64\x67\x65\x53\x68\x61\x70\x65","\x6C\x65\x6E\x67\x74\x68","\x73\x71\x72\x74","\x6C\x69\x6E\x6B","\x64\x61\x73\x68","\x61\x64\x64\x4D\x61\x72\x6B\x65\x72","\x75\x6E\x64\x65\x66\x69\x6E\x65\x64","\x75\x73\x65\x47\x72\x69\x64\x46\x6F\x72\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x69\x6E\x69\x74","\x68\x6F\x72\x69\x7A\x6F\x6E\x74\x61\x6C","\x73\x74\x61\x74\x65","\x67\x72\x61\x70\x68","\x76\x69\x65\x77","\x68\x61\x6E\x64\x6C\x65\x49\x6D\x61\x67\x65","\x73\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65","\x73\x72\x63","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x44\x49\x41\x4C\x45\x43\x54\x5F\x56\x4D\x4C","\x67\x65\x74\x4F\x76\x65\x72\x6C\x61\x79\x50\x61\x6E\x65","\x67\x65\x74\x56\x69\x65\x77","\x63\x75\x72\x73\x6F\x72","\x6E\x6F\x64\x65","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x43\x75\x72\x73\x6F\x72","\x72\x65\x64\x69\x72\x65\x63\x74\x4D\x6F\x75\x73\x65\x45\x76\x65\x6E\x74\x73","\x64\x65\x66\x61\x75\x6C\x74","\x72\x65\x64\x72\x61\x77","\x62\x6F\x75\x6E\x64\x73","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x42\x6F\x75\x6E\x64\x73","\x64\x65\x73\x74\x72\x6F\x79","\x67\x65\x74\x48\x61\x6E\x64\x6C\x65\x46\x6F\x72\x45\x76\x65\x6E\x74","\x69\x73\x53\x6F\x75\x72\x63\x65","\x6D\x6F\x75\x73\x65\x4D\x6F\x76\x65","\x69\x73\x43\x6F\x6E\x73\x75\x6D\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74\x47\x72\x61\x70\x68\x58","\x67\x65\x74\x47\x72\x61\x70\x68\x59","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x50\x6F\x69\x6E\x74","\x67\x65\x74\x45\x76\x65\x6E\x74","\x69\x73\x47\x72\x69\x64\x45\x6E\x61\x62\x6C\x65\x64\x45\x76\x65\x6E\x74","\x73\x63\x61\x6C\x65","\x73\x6E\x61\x70","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65","\x6D\x6F\x76\x65\x53\x69\x7A\x65\x72\x54\x6F","\x63\x65\x6C\x6C\x52\x65\x6E\x64\x65\x72\x65\x72","\x63\x6F\x6E\x73\x75\x6D\x65","\x6D\x6F\x75\x73\x65\x55\x70","\x61\x70\x70\x6C\x79\x53\x74\x79\x6C\x65","\x72\x65\x73\x65\x74","\x67\x65\x74\x53\x68\x61\x70\x65\x52\x6F\x74\x61\x74\x69\x6F\x6E","\x73\x68\x61\x70\x65","\x74\x6F\x52\x61\x64\x69\x61\x6E\x73","\x63\x6F\x73","\x73\x69\x6E","\x69\x73\x50\x61\x69\x6E\x74\x42\x6F\x75\x6E\x64\x73\x49\x6E\x76\x65\x72\x74\x65\x64","\x67\x65\x74\x53\x70\x65\x63\x69\x61\x6C\x48\x61\x6E\x64\x6C\x65\x50\x6F\x69\x6E\x74","\x66\x6C\x69\x70\x48","\x66\x6C\x69\x70\x56","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x58","\x67\x65\x74\x43\x65\x6E\x74\x65\x72\x59","\x67\x65\x74\x52\x6F\x74\x61\x74\x65\x64\x50\x6F\x69\x6E\x74","\x75\x70\x64\x61\x74\x65\x53\x74\x79\x6C\x65\x55\x6E\x72\x6F\x74\x61\x74\x65\x64","\x72\x6F\x75\x6E\x64","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x62\x65\x67\x69\x6E\x55\x70\x64\x61\x74\x65","\x63\x65\x6C\x6C","\x73\x65\x74\x43\x65\x6C\x6C\x53\x74\x79\x6C\x65\x73","\x65\x6E\x64\x55\x70\x64\x61\x74\x65","\x73\x74\x61\x72\x74\x53\x69\x7A\x65","\x64\x65\x66\x61\x75\x6C\x74\x56\x61\x6C\x75\x65","\x73\x63\x61\x6C\x65\x46\x61\x63\x74\x6F\x72","\x63\x72\x65\x61\x74\x65\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x41\x6C\x6C\x43\x6F\x6E\x6E\x65\x63\x74\x69\x6F\x6E\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73","\x73\x74\x65\x6E\x63\x69\x6C","\x63\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x73"];(function(){function _0x53d3x1(){}_0x53d3x1[_0x116e[0]]= new mxCylinder();_0x53d3x1[_0x116e[0]][_0x116e[1]]=_0x53d3x1;_0x53d3x1[_0x116e[0]][_0x116e[2]]=20;_0x53d3x1[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x8=Math[_0x116e[6]](_0x53d3x5,Math[_0x116e[6]](_0x53d3x6,mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]])));if(_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x8,_0x53d3x6);_0x53d3x2[_0x116e[8]](_0x53d3x8,_0x53d3x8);_0x53d3x2[_0x116e[8]](0,0);_0x53d3x2[_0x116e[7]](_0x53d3x8,_0x53d3x8);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x8);_0x53d3x2[_0x116e[9]]()}else {_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3x8,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x8);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](_0x53d3x8,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6-_0x53d3x8);_0x53d3x2[_0x116e[8]](0,0);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[11]]=_0x53d3x1;function _0x53d3x9(){}_0x53d3x9[_0x116e[0]]= new mxCylinder();_0x53d3x9[_0x116e[0]][_0x116e[1]]=_0x53d3x9;_0x53d3x9[_0x116e[0]][_0x116e[2]]=30;_0x53d3x9[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x8=Math[_0x116e[6]](_0x53d3x5,Math[_0x116e[6]](_0x53d3x6,mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]])));if(_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x5-_0x53d3x8,0);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3x8,_0x53d3x8);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x8);_0x53d3x2[_0x116e[9]]()}else {_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3x8,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x8);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,0);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[13]]=_0x53d3x9;function _0x53d3xa(){}_0x53d3xa[_0x116e[0]]= new mxCylinder();_0x53d3xa[_0x116e[0]][_0x116e[1]]=_0x53d3xa;_0x53d3xa[_0x116e[0]][_0x116e[14]]=60;_0x53d3xa[_0x116e[0]][_0x116e[15]]=20;_0x53d3xa[_0x116e[0]][_0x116e[16]]=_0x116e[17];_0x53d3xa[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3xb=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[14],this[_0x116e[14]]);var _0x53d3xc=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[15],this[_0x116e[15]]);var _0x53d3xd=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[16],this[_0x116e[16]]);var _0x53d3xe=Math[_0x116e[6]](_0x53d3x5,_0x53d3xb);var _0x53d3xf=Math[_0x116e[6]](_0x53d3x6,_0x53d3xc);if(_0x53d3x7){if(_0x53d3xd==_0x116e[18]){_0x53d3x2[_0x116e[7]](0,_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3xe,_0x53d3xf)}else {_0x53d3x2[_0x116e[7]](_0x53d3x5-_0x53d3xe,_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3xf)};_0x53d3x2[_0x116e[9]]()}else {if(_0x53d3xd==_0x116e[18]){_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3xe,0);_0x53d3x2[_0x116e[8]](_0x53d3xe,_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3xf)}else {_0x53d3x2[_0x116e[7]](0,_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3xe,_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3xe,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,0)};_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3xf);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[19]]=_0x53d3xa;function _0x53d3x10(){}_0x53d3x10[_0x116e[0]]= new mxCylinder();_0x53d3x10[_0x116e[0]][_0x116e[1]]=_0x53d3x10;_0x53d3x10[_0x116e[0]][_0x116e[2]]=30;_0x53d3x10[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x8=Math[_0x116e[6]](_0x53d3x5,Math[_0x116e[6]](_0x53d3x6,mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]])));if(!_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x8,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x8);_0x53d3x2[_0x116e[8]](_0x53d3x8,0);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[20]]=_0x53d3x10;function _0x53d3x11(){}_0x53d3x11[_0x116e[0]]= new mxCylinder();_0x53d3x11[_0x116e[0]][_0x116e[1]]=_0x53d3x11;_0x53d3x11[_0x116e[0]][_0x116e[2]]=0.4;_0x53d3x11[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x8=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]]);var _0x53d3xf=_0x53d3x6*_0x53d3x8;var _0x53d3x12=1.4;if(!_0x53d3x7){_0x53d3x2[_0x116e[7]](0,_0x53d3xf/2);_0x53d3x2[_0x116e[21]](_0x53d3x5/4,_0x53d3xf*_0x53d3x12,_0x53d3x5/2,_0x53d3xf/2);_0x53d3x2[_0x116e[21]](_0x53d3x5*3/4,_0x53d3xf*(1-_0x53d3x12),_0x53d3x5,_0x53d3xf/2);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6-_0x53d3xf/2);_0x53d3x2[_0x116e[21]](_0x53d3x5*3/4,_0x53d3x6-_0x53d3xf*_0x53d3x12,_0x53d3x5/2,_0x53d3x6-_0x53d3xf/2);_0x53d3x2[_0x116e[21]](_0x53d3x5/4,_0x53d3x6-_0x53d3xf*(1-_0x53d3x12),0,_0x53d3x6-_0x53d3xf/2);_0x53d3x2[_0x116e[8]](0,_0x53d3xf/2);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[22]]=_0x53d3x11;function _0x53d3x13(){}_0x53d3x13[_0x116e[0]]= new mxCylinder();_0x53d3x13[_0x116e[0]][_0x116e[1]]=_0x53d3x13;_0x53d3x13[_0x116e[0]][_0x116e[2]]=0.2;_0x53d3x13[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x8=_0x53d3x5*mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]]);if(!_0x53d3x7){_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3x8,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6/2);_0x53d3x2[_0x116e[8]](_0x53d3x5-_0x53d3x8,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[8]](_0x53d3x8,_0x53d3x6/2);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[23]]=_0x53d3x13;function _0x53d3x14(){mxRectangleShape[_0x116e[24]](this)}mxUtils[_0x116e[25]](_0x53d3x14,mxRectangleShape);_0x53d3x14[_0x116e[0]][_0x116e[26]]=function(){return false};_0x53d3x14[_0x116e[0]][_0x116e[27]]=function(_0x53d3x15,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6){var _0x53d3x16=Math[_0x116e[6]](_0x53d3x5/5,_0x53d3x6/5)+1;_0x53d3x15[_0x116e[28]]();_0x53d3x15[_0x116e[7]](_0x53d3x3+_0x53d3x5/2,_0x53d3x4+_0x53d3x16);_0x53d3x15[_0x116e[8]](_0x53d3x3+_0x53d3x5/2,_0x53d3x4+_0x53d3x6-_0x53d3x16);_0x53d3x15[_0x116e[7]](_0x53d3x3+_0x53d3x16,_0x53d3x4+_0x53d3x6/2);_0x53d3x15[_0x116e[8]](_0x53d3x3+_0x53d3x5-_0x53d3x16,_0x53d3x4+_0x53d3x6/2);_0x53d3x15[_0x116e[9]]();_0x53d3x15[_0x116e[29]]();mxRectangleShape[_0x116e[0]][_0x116e[27]][_0x116e[30]](this,arguments)};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[31]]=_0x53d3x14;function _0x53d3x17(){mxRectangleShape[_0x116e[24]](this)}mxUtils[_0x116e[25]](_0x53d3x17,mxRectangleShape);_0x53d3x17[_0x116e[0]][_0x116e[26]]=function(){return false};_0x53d3x17[_0x116e[0]][_0x116e[27]]=function(_0x53d3x15,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6){if(this[_0x116e[4]]!=null){if(this[_0x116e[4]][_0x116e[32]]==1){var _0x53d3x18=Math[_0x116e[34]](2,this[_0x116e[33]]+1);mxRectangleShape[_0x116e[0]][_0x116e[35]][_0x116e[24]](this,_0x53d3x15,_0x53d3x3+_0x53d3x18,_0x53d3x4+_0x53d3x18,_0x53d3x5-2*_0x53d3x18,_0x53d3x6-2*_0x53d3x18);mxRectangleShape[_0x116e[0]][_0x116e[27]][_0x116e[30]](this,arguments);_0x53d3x3+=_0x53d3x18;_0x53d3x4+=_0x53d3x18;_0x53d3x5-=2*_0x53d3x18;_0x53d3x6-=2*_0x53d3x18};_0x53d3x15[_0x116e[36]](false);var _0x53d3x19=0;var _0x53d3x1a=null;do{_0x53d3x1a=mxCellRenderer[_0x116e[0]][_0x116e[12]][this[_0x116e[4]][_0x116e[37]+_0x53d3x19]];if(_0x53d3x1a!=null){var _0x53d3x1b=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[38]];var _0x53d3x1c=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[39]];var _0x53d3x1d=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[40]];var _0x53d3x1e=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[41]];var _0x53d3x1f=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[42]]||0;var _0x53d3x20=this[_0x116e[4]][_0x116e[37]+_0x53d3x19+_0x116e[43]];if(_0x53d3x20!=null){_0x53d3x1f+=this[_0x116e[44]](_0x53d3x5+this[_0x116e[33]],_0x53d3x6+this[_0x116e[33]])*_0x53d3x20};var _0x53d3x21=_0x53d3x3;var _0x53d3x22=_0x53d3x4;if(_0x53d3x1b==mxConstants[_0x116e[45]]){_0x53d3x21+=(_0x53d3x5-_0x53d3x1d)/2}else {if(_0x53d3x1b==mxConstants[_0x116e[46]]){_0x53d3x21+=_0x53d3x5-_0x53d3x1d-_0x53d3x1f}else {_0x53d3x21+=_0x53d3x1f}};if(_0x53d3x1c==mxConstants[_0x116e[47]]){_0x53d3x22+=(_0x53d3x6-_0x53d3x1e)/2}else {if(_0x53d3x1c==mxConstants[_0x116e[48]]){_0x53d3x22+=_0x53d3x6-_0x53d3x1e-_0x53d3x1f}else {_0x53d3x22+=_0x53d3x1f}};_0x53d3x15[_0x116e[49]]();var _0x53d3x23= new _0x53d3x1a();_0x53d3x23[_0x116e[4]]=this[_0x116e[4]];_0x53d3x1a[_0x116e[0]][_0x116e[50]][_0x116e[24]](_0x53d3x23,_0x53d3x15,_0x53d3x21,_0x53d3x22,_0x53d3x1d,_0x53d3x1e);_0x53d3x15[_0x116e[51]]()};_0x53d3x19++}while(_0x53d3x1a!=null);}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[52]]=_0x53d3x17;function _0x53d3x24(){}_0x53d3x24[_0x116e[0]]= new mxCylinder();_0x53d3x24[_0x116e[0]][_0x116e[1]]=_0x53d3x24;_0x53d3x24[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){if(_0x53d3x7){_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3x5/2,_0x53d3x6/2);_0x53d3x2[_0x116e[8]](_0x53d3x5,0);_0x53d3x2[_0x116e[9]]()}else {_0x53d3x2[_0x116e[7]](0,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[10]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[53]]=_0x53d3x24;function _0x53d3x25(){}_0x53d3x25[_0x116e[0]]= new mxCylinder();_0x53d3x25[_0x116e[0]][_0x116e[1]]=_0x53d3x25;_0x53d3x25[_0x116e[0]][_0x116e[54]]=true;_0x53d3x25[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x1d=_0x53d3x5/3;var _0x53d3x1e=_0x53d3x6/4;if(!_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[55]](_0x53d3x5/2-_0x53d3x1d,_0x53d3x1e,_0x53d3x5/2-_0x53d3x1d,0,_0x53d3x5/2,0);_0x53d3x2[_0x116e[55]](_0x53d3x5/2+_0x53d3x1d,0,_0x53d3x5/2+_0x53d3x1d,_0x53d3x1e,_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[8]](_0x53d3x5/2,2*_0x53d3x6/3);_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x6/3);_0x53d3x2[_0x116e[8]](0,_0x53d3x6/3);_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x6/3);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6/3);_0x53d3x2[_0x116e[7]](_0x53d3x5/2,2*_0x53d3x6/3);_0x53d3x2[_0x116e[8]](0,_0x53d3x6);_0x53d3x2[_0x116e[7]](_0x53d3x5/2,2*_0x53d3x6/3);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[56]]=_0x53d3x25;function _0x53d3x26(){}_0x53d3x26[_0x116e[0]]= new mxCylinder();_0x53d3x26[_0x116e[0]][_0x116e[1]]=_0x53d3x26;_0x53d3x26[_0x116e[0]][_0x116e[2]]=10;_0x53d3x26[_0x116e[0]][_0x116e[54]]=true;_0x53d3x26[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3x27=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[2],this[_0x116e[2]]);var _0x53d3x1d=_0x53d3x27*2/3;var _0x53d3x1e=_0x53d3x27;if(!_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[55]](_0x53d3x5/2-_0x53d3x1d,_0x53d3x1e,_0x53d3x5/2-_0x53d3x1d,0,_0x53d3x5/2,0);_0x53d3x2[_0x116e[55]](_0x53d3x5/2+_0x53d3x1d,0,_0x53d3x5/2+_0x53d3x1d,_0x53d3x1e,_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[7]](_0x53d3x5/2,_0x53d3x1e);_0x53d3x2[_0x116e[8]](_0x53d3x5/2,_0x53d3x6);_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[57]]=_0x53d3x26;function _0x53d3x28(){}_0x53d3x28[_0x116e[0]]= new mxCylinder();_0x53d3x28[_0x116e[0]][_0x116e[1]]=_0x53d3x28;_0x53d3x28[_0x116e[0]][_0x116e[58]]=32;_0x53d3x28[_0x116e[0]][_0x116e[59]]=12;_0x53d3x28[_0x116e[0]][_0x116e[3]]=function(_0x53d3x2,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6,_0x53d3x7){var _0x53d3xe=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[58],this[_0x116e[58]]);var _0x53d3xf=mxUtils[_0x116e[5]](this[_0x116e[4]],_0x116e[59],this[_0x116e[59]]);var _0x53d3x29=_0x53d3xe/2;var _0x53d3x2a=_0x53d3x29+_0x53d3xe/2;var _0x53d3x2b=0.3*_0x53d3x6-_0x53d3xf/2;var _0x53d3x2c=0.7*_0x53d3x6-_0x53d3xf/2;if(_0x53d3x7){_0x53d3x2[_0x116e[7]](_0x53d3x29,_0x53d3x2b);_0x53d3x2[_0x116e[8]](_0x53d3x2a,_0x53d3x2b);_0x53d3x2[_0x116e[8]](_0x53d3x2a,_0x53d3x2b+_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2b+_0x53d3xf);_0x53d3x2[_0x116e[7]](_0x53d3x29,_0x53d3x2c);_0x53d3x2[_0x116e[8]](_0x53d3x2a,_0x53d3x2c);_0x53d3x2[_0x116e[8]](_0x53d3x2a,_0x53d3x2c+_0x53d3xf);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2c+_0x53d3xf);_0x53d3x2[_0x116e[9]]()}else {_0x53d3x2[_0x116e[7]](_0x53d3x29,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,0);_0x53d3x2[_0x116e[8]](_0x53d3x5,_0x53d3x6);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x6);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2c+_0x53d3xf);_0x53d3x2[_0x116e[8]](0,_0x53d3x2c+_0x53d3xf);_0x53d3x2[_0x116e[8]](0,_0x53d3x2c);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2c);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2b+_0x53d3xf);_0x53d3x2[_0x116e[8]](0,_0x53d3x2b+_0x53d3xf);_0x53d3x2[_0x116e[8]](0,_0x53d3x2b);_0x53d3x2[_0x116e[8]](_0x53d3x29,_0x53d3x2b);_0x53d3x2[_0x116e[10]]();_0x53d3x2[_0x116e[9]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[60]]=_0x53d3x28;function _0x53d3x2d(){}_0x53d3x2d[_0x116e[0]]= new mxDoubleEllipse();_0x53d3x2d[_0x116e[0]][_0x116e[1]]=_0x53d3x2d;_0x53d3x2d[_0x116e[0]][_0x116e[61]]=true;_0x53d3x2d[_0x116e[0]][_0x116e[50]]=function(_0x53d3x15,_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6){var _0x53d3x18=Math[_0x116e[6]](4,Math[_0x116e[6]](_0x53d3x5/5,_0x53d3x6/5));if(_0x53d3x5>0&&_0x53d3x6>0){_0x53d3x15[_0x116e[62]](_0x53d3x3+_0x53d3x18,_0x53d3x4+_0x53d3x18,_0x53d3x5-2*_0x53d3x18,_0x53d3x6-2*_0x53d3x18);_0x53d3x15[_0x116e[63]]()};_0x53d3x15[_0x116e[64]](false);if(this[_0x116e[61]]){_0x53d3x15[_0x116e[62]](_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6);_0x53d3x15[_0x116e[29]]()}};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[65]]=_0x53d3x2d;function _0x53d3x2e(){}_0x53d3x2e[_0x116e[0]]= new _0x53d3x2d();_0x53d3x2e[_0x116e[0]][_0x116e[1]]=_0x53d3x2e;_0x53d3x2e[_0x116e[0]][_0x116e[61]]=false;mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[66]]=_0x53d3x2e;var _0x53d3x2f=mxImageExport[_0x116e[0]][_0x116e[67]];mxImageExport[_0x116e[0]][_0x116e[67]]=function(){_0x53d3x2f[_0x116e[30]](this,arguments);function _0x53d3x30(_0x53d3x31){return {drawShape:function(_0x53d3x32,_0x53d3x33,_0x53d3x34,_0x53d3x35){var _0x53d3x3=_0x53d3x34[_0x116e[68]];var _0x53d3x4=_0x53d3x34[_0x116e[69]];var _0x53d3x5=_0x53d3x34[_0x116e[70]];var _0x53d3x6=_0x53d3x34[_0x116e[71]];if(_0x53d3x35){var _0x53d3x18=Math[_0x116e[6]](4,Math[_0x116e[6]](_0x53d3x5/5,_0x53d3x6/5));_0x53d3x3+=_0x53d3x18;_0x53d3x4+=_0x53d3x18;_0x53d3x5-=2*_0x53d3x18;_0x53d3x6-=2*_0x53d3x18;if(_0x53d3x5>0&&_0x53d3x6>0){_0x53d3x32[_0x116e[62]](_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6)};return true}else {_0x53d3x32[_0x116e[63]]();if(_0x53d3x31){_0x53d3x32[_0x116e[62]](_0x53d3x3,_0x53d3x4,_0x53d3x5,_0x53d3x6);_0x53d3x32[_0x116e[29]]()}}}}}this[_0x116e[72]][_0x116e[65]]=_0x53d3x30(true);this[_0x116e[72]][_0x116e[66]]=_0x53d3x30(false)};function _0x53d3x36(){mxArrow[_0x116e[24]](this)}mxUtils[_0x116e[25]](_0x53d3x36,mxArrow);_0x53d3x36[_0x116e[0]][_0x116e[73]]=function(_0x53d3x15,_0x53d3x37){var _0x53d3x1d=10;var _0x53d3x38=_0x53d3x37[0];var _0x53d3x39=_0x53d3x37[_0x53d3x37[_0x116e[74]]-1];var _0x53d3xe=_0x53d3x39[_0x116e[68]]-_0x53d3x38[_0x116e[68]];var _0x53d3xf=_0x53d3x39[_0x116e[69]]-_0x53d3x38[_0x116e[69]];var _0x53d3x3a=Math[_0x116e[75]](_0x53d3xe*_0x53d3xe+_0x53d3xf*_0x53d3xf);var _0x53d3x3b=_0x53d3x3a;var _0x53d3x3c=_0x53d3xe/_0x53d3x3a;var _0x53d3x3d=_0x53d3xf/_0x53d3x3a;var _0x53d3x3e=_0x53d3x3b*_0x53d3x3c;var _0x53d3x3f=_0x53d3x3b*_0x53d3x3d;var _0x53d3x40=_0x53d3x1d*_0x53d3x3d/3;var _0x53d3x41=-_0x53d3x1d*_0x53d3x3c/3;var _0x53d3x42=_0x53d3x38[_0x116e[68]]-_0x53d3x40/2;var _0x53d3x43=_0x53d3x38[_0x116e[69]]-_0x53d3x41/2;var _0x53d3x44=_0x53d3x42+_0x53d3x40;var _0x53d3x45=_0x53d3x43+_0x53d3x41;var _0x53d3x46=_0x53d3x44+_0x53d3x3e;var _0x53d3x47=_0x53d3x45+_0x53d3x3f;var _0x53d3x48=_0x53d3x46+_0x53d3x40;var _0x53d3x49=_0x53d3x47+_0x53d3x41;var _0x53d3x4a=_0x53d3x48-3*_0x53d3x40;var _0x53d3x4b=_0x53d3x49-3*_0x53d3x41;_0x53d3x15[_0x116e[28]]();_0x53d3x15[_0x116e[7]](_0x53d3x44,_0x53d3x45);_0x53d3x15[_0x116e[8]](_0x53d3x46,_0x53d3x47);_0x53d3x15[_0x116e[7]](_0x53d3x4a+_0x53d3x40,_0x53d3x4b+_0x53d3x41);_0x53d3x15[_0x116e[8]](_0x53d3x42,_0x53d3x43);_0x53d3x15[_0x116e[29]]()};mxCellRenderer[_0x116e[0]][_0x116e[12]][_0x116e[76]]=_0x53d3x36;mxMarker[_0x116e[78]](_0x116e[77],function(_0x53d3x32,_0x53d3x1a,_0x53d3x4c,_0x53d3x39,_0x53d3x4d,_0x53d3x4e,_0x53d3x4f,_0x53d3x50,_0x53d3x51,_0x53d3x52){var _0x53d3x3c=_0x53d3x4d*(_0x53d3x4f+_0x53d3x51+1);var _0x53d3x3d=_0x53d3x4e*(_0x53d3x4f+_0x53d3x51+1);return function(){_0x53d3x32[_0x116e[28]]();_0x53d3x32[_0x116e[7]](_0x53d3x39[_0x116e[68]]-_0x53d3x3c/2-_0x53d3x3d/2,_0x53d3x39[_0x116e[69]]-_0x53d3x3d/2+_0x53d3x3c/2);_0x53d3x32[_0x116e[8]](_0x53d3x39[_0x116e[68]]+_0x53d3x3d/2-3*_0x53d3x3c/2,_0x53d3x39[_0x116e[69]]-3*_0x53d3x3d/2-_0x53d3x3c/2);_0x53d3x32[_0x116e[29]]()}});var _0x53d3x53=-99;if( typeof (mxVertexHandler)!=_0x116e[79]){function _0x53d3x54(_0x53d3x33){mxVertexHandler[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x54,mxVertexHandler);_0x53d3x54[_0x116e[0]][_0x116e[80]]=false;_0x53d3x54[_0x116e[0]][_0x116e[81]]=function(){this[_0x116e[82]]=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],mxConstants.STYLE_HORIZONTAL,true);var _0x53d3x55=this[_0x116e[83]][_0x116e[85]][_0x116e[84]];if(this[_0x116e[86]]!=null){var _0x53d3x34= new mxRectangle(0,0,this[_0x116e[86]][_0x116e[70]],this[_0x116e[86]][_0x116e[71]]);this[_0x116e[87]]= new mxImageShape(_0x53d3x34,this[_0x116e[86]][_0x116e[88]])}else {var _0x53d3x4f=10;var _0x53d3x34= new mxRectangle(0,0,_0x53d3x4f,_0x53d3x4f);this[_0x116e[87]]= new mxRhombus(_0x53d3x34,mxConstants.HANDLE_FILLCOLOR,mxConstants.HANDLE_STROKECOLOR)};this[_0x116e[87]][_0x116e[89]]=(_0x53d3x55[_0x116e[89]]!=mxConstants[_0x116e[90]])?mxConstants[_0x116e[91]]:mxConstants[_0x116e[90]];this[_0x116e[87]][_0x116e[81]](_0x53d3x55[_0x116e[93]]()[_0x116e[92]]());this[_0x116e[87]][_0x116e[95]][_0x116e[4]][_0x116e[94]]=this[_0x116e[96]]();mxEvent[_0x116e[97]](this[_0x116e[87]][_0x116e[95]],_0x53d3x55,this[_0x116e[83]]);mxVertexHandler[_0x116e[0]][_0x116e[81]][_0x116e[30]](this,arguments)};_0x53d3x54[_0x116e[0]][_0x116e[96]]=function(){return _0x116e[98]};_0x53d3x54[_0x116e[0]][_0x116e[99]]=function(){mxVertexHandler[_0x116e[0]][_0x116e[99]][_0x116e[30]](this,arguments);var _0x53d3x4f=this[_0x116e[87]][_0x116e[100]][_0x116e[70]];this[_0x116e[87]][_0x116e[100]]=this[_0x116e[101]](_0x53d3x4f);this[_0x116e[87]][_0x116e[99]]()};_0x53d3x54[_0x116e[0]][_0x116e[102]]=function(){mxVertexHandler[_0x116e[0]][_0x116e[102]][_0x116e[30]](this,arguments);if(this[_0x116e[87]]!=null){this[_0x116e[87]][_0x116e[102]]();this[_0x116e[87]]=null}};_0x53d3x54[_0x116e[0]][_0x116e[103]]=function(_0x53d3x56){if(_0x53d3x56[_0x116e[104]](this[_0x116e[87]])){return _0x53d3x53};return mxVertexHandler[_0x116e[0]][_0x116e[103]][_0x116e[30]](this,arguments)};_0x53d3x54[_0x116e[0]][_0x116e[105]]=function(_0x53d3x57,_0x53d3x56){if(!_0x53d3x56[_0x116e[106]]()&&this[_0x116e[107]]==_0x53d3x53){var _0x53d3x58= new mxPoint(_0x53d3x56[_0x116e[108]](),_0x53d3x56[_0x116e[109]]());this[_0x116e[110]](_0x53d3x58);var _0x53d3x59=this[_0x116e[84]][_0x116e[112]](_0x53d3x56[_0x116e[111]]());var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];if(_0x53d3x59&&this[_0x116e[80]]){_0x53d3x58[_0x116e[68]]=this[_0x116e[84]][_0x116e[114]](_0x53d3x58[_0x116e[68]]/_0x53d3x5a)*_0x53d3x5a;_0x53d3x58[_0x116e[69]]=this[_0x116e[84]][_0x116e[114]](_0x53d3x58[_0x116e[69]]/_0x53d3x5a)*_0x53d3x5a};this[_0x116e[115]](_0x53d3x58);this[_0x116e[116]](this[_0x116e[87]],_0x53d3x58[_0x116e[68]],_0x53d3x58[_0x116e[69]]);this[_0x116e[83]][_0x116e[85]][_0x116e[84]][_0x116e[117]][_0x116e[99]](this[_0x116e[83]],true);_0x53d3x56[_0x116e[118]]()}else {mxVertexHandler[_0x116e[0]][_0x116e[105]][_0x116e[30]](this,arguments)}};_0x53d3x54[_0x116e[0]][_0x116e[119]]=function(_0x53d3x57,_0x53d3x56){if(!_0x53d3x56[_0x116e[106]]()&&this[_0x116e[107]]==_0x53d3x53){this[_0x116e[120]]();this[_0x116e[121]]();_0x53d3x56[_0x116e[118]]()}else {mxVertexHandler[_0x116e[0]][_0x116e[119]][_0x116e[30]](this,arguments)}};_0x53d3x54[_0x116e[0]][_0x116e[101]]=function(_0x53d3x4f){var _0x53d3x5b=this[_0x116e[83]][_0x116e[123]][_0x116e[122]]();var _0x53d3x5c=mxUtils[_0x116e[124]](_0x53d3x5b);var _0x53d3x5d=Math[_0x116e[125]](_0x53d3x5c);var _0x53d3x5e=Math[_0x116e[126]](_0x53d3x5c);var _0x53d3x34= new mxRectangle(this[_0x116e[83]][_0x116e[68]],this[_0x116e[83]][_0x116e[69]],this[_0x116e[83]][_0x116e[70]],this[_0x116e[83]][_0x116e[71]]);if(this[_0x116e[83]][_0x116e[123]][_0x116e[127]]()){var _0x53d3x5f=(_0x53d3x34[_0x116e[70]]-_0x53d3x34[_0x116e[71]])/2;_0x53d3x34[_0x116e[68]]+=_0x53d3x5f;_0x53d3x34[_0x116e[69]]-=_0x53d3x5f;var _0x53d3x23=_0x53d3x34[_0x116e[70]];_0x53d3x34[_0x116e[70]]=_0x53d3x34[_0x116e[71]];_0x53d3x34[_0x116e[71]]=_0x53d3x23};var _0x53d3x60=this[_0x116e[128]](_0x53d3x34);if(this[_0x116e[83]][_0x116e[123]][_0x116e[129]]){_0x53d3x60[_0x116e[68]]=2*_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x60[_0x116e[68]]};if(this[_0x116e[83]][_0x116e[123]][_0x116e[130]]){_0x53d3x60[_0x116e[69]]=2*_0x53d3x34[_0x116e[69]]+_0x53d3x34[_0x116e[71]]-_0x53d3x60[_0x116e[69]]};_0x53d3x60=mxUtils[_0x116e[133]](_0x53d3x60,_0x53d3x5d,_0x53d3x5e, new mxPoint(this[_0x116e[83]][_0x116e[131]](),this[_0x116e[83]][_0x116e[132]]()));return new mxRectangle(_0x53d3x60[_0x116e[68]]-_0x53d3x4f/2,_0x53d3x60[_0x116e[69]]-_0x53d3x4f/2,_0x53d3x4f,_0x53d3x4f)};_0x53d3x54[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){return null};_0x53d3x54[_0x116e[0]][_0x116e[115]]=function(_0x53d3x58){};_0x53d3x54[_0x116e[0]][_0x116e[110]]=function(_0x53d3x58){_0x53d3x58[_0x116e[68]]=Math[_0x116e[34]](this[_0x116e[83]][_0x116e[68]],Math[_0x116e[6]](this[_0x116e[83]][_0x116e[68]]+this[_0x116e[83]][_0x116e[70]],_0x53d3x58[_0x116e[68]]));_0x53d3x58[_0x116e[69]]=Math[_0x116e[34]](this[_0x116e[83]][_0x116e[69]],Math[_0x116e[6]](this[_0x116e[83]][_0x116e[69]]+this[_0x116e[83]][_0x116e[71]],_0x53d3x58[_0x116e[69]]))};_0x53d3x54[_0x116e[0]][_0x116e[120]]=function(){};function _0x53d3x61(_0x53d3x33){_0x53d3x54[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x61,_0x53d3x54);_0x53d3x61[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];var _0x53d3xb=Math[_0x116e[6]](_0x53d3x34[_0x116e[70]],mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[14],60)*_0x53d3x5a);var _0x53d3xc=Math[_0x116e[6]](_0x53d3x34[_0x116e[71]],mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[15],20)*_0x53d3x5a);var _0x53d3xd=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[16],_0x116e[17]);var _0x53d3x3=(_0x53d3xd==_0x116e[18])?_0x53d3x34[_0x116e[68]]+_0x53d3xb:_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3xb;return new mxPoint(_0x53d3x3,_0x53d3x34[_0x116e[69]]+_0x53d3xc)};_0x53d3x61[_0x116e[0]][_0x116e[115]]=function(_0x53d3x58){var _0x53d3x5b=this[_0x116e[83]][_0x116e[123]][_0x116e[122]]();var _0x53d3x5c=mxUtils[_0x116e[124]](_0x53d3x5b);var _0x53d3x5d=Math[_0x116e[125]](-_0x53d3x5c);var _0x53d3x5e=Math[_0x116e[126]](-_0x53d3x5c);var _0x53d3x34= new mxRectangle(this[_0x116e[83]][_0x116e[68]],this[_0x116e[83]][_0x116e[69]],this[_0x116e[83]][_0x116e[70]],this[_0x116e[83]][_0x116e[71]]);if(this[_0x116e[83]][_0x116e[123]][_0x116e[127]]()){var _0x53d3x5f=(_0x53d3x34[_0x116e[70]]-_0x53d3x34[_0x116e[71]])/2;_0x53d3x34[_0x116e[68]]+=_0x53d3x5f;_0x53d3x34[_0x116e[69]]-=_0x53d3x5f;var _0x53d3x23=_0x53d3x34[_0x116e[70]];_0x53d3x34[_0x116e[70]]=_0x53d3x34[_0x116e[71]];_0x53d3x34[_0x116e[71]]=_0x53d3x23};var _0x53d3x60= new mxPoint(_0x53d3x58[_0x116e[68]],_0x53d3x58[_0x116e[69]]);_0x53d3x60=mxUtils[_0x116e[133]](_0x53d3x60,_0x53d3x5d,_0x53d3x5e, new mxPoint(this[_0x116e[83]][_0x116e[131]](),this[_0x116e[83]][_0x116e[132]]()));if(this[_0x116e[83]][_0x116e[123]][_0x116e[129]]){_0x53d3x60[_0x116e[68]]=2*_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x60[_0x116e[68]]};if(this[_0x116e[83]][_0x116e[123]][_0x116e[130]]){_0x53d3x60[_0x116e[69]]=2*_0x53d3x34[_0x116e[69]]+_0x53d3x34[_0x116e[71]]-_0x53d3x60[_0x116e[69]]};var _0x53d3x62=this[_0x116e[134]](_0x53d3x60,_0x53d3x34);if(_0x53d3x62!=null){if(this[_0x116e[83]][_0x116e[123]][_0x116e[129]]){_0x53d3x62[_0x116e[68]]=2*_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x62[_0x116e[68]]};if(this[_0x116e[83]][_0x116e[123]][_0x116e[130]]){_0x53d3x62[_0x116e[69]]=2*_0x53d3x34[_0x116e[69]]+_0x53d3x34[_0x116e[71]]-_0x53d3x62[_0x116e[69]]};_0x53d3x5d=Math[_0x116e[125]](_0x53d3x5c);_0x53d3x5e=Math[_0x116e[126]](_0x53d3x5c);_0x53d3x62=mxUtils[_0x116e[133]](_0x53d3x62,_0x53d3x5d,_0x53d3x5e, new mxPoint(this[_0x116e[83]][_0x116e[131]](),this[_0x116e[83]][_0x116e[132]]()));_0x53d3x58[_0x116e[68]]=_0x53d3x62[_0x116e[68]];_0x53d3x58[_0x116e[69]]=_0x53d3x62[_0x116e[69]]}};_0x53d3x61[_0x116e[0]][_0x116e[134]]=function(_0x53d3x60,_0x53d3x34){var _0x53d3xd=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[16],_0x116e[17]);var _0x53d3xb=(_0x53d3xd==_0x116e[18])?_0x53d3x60[_0x116e[68]]-_0x53d3x34[_0x116e[68]]:_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x60[_0x116e[68]];var _0x53d3xc=_0x53d3x60[_0x116e[69]]-_0x53d3x34[_0x116e[69]];var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];this[_0x116e[83]][_0x116e[4]][_0x116e[14]]=Math[_0x116e[135]](Math[_0x116e[34]](1,_0x53d3xb)/_0x53d3x5a);this[_0x116e[83]][_0x116e[4]][_0x116e[15]]=Math[_0x116e[135]](Math[_0x116e[34]](1,_0x53d3xc)/_0x53d3x5a)};_0x53d3x61[_0x116e[0]][_0x116e[120]]=function(){var _0x53d3x63=this[_0x116e[84]][_0x116e[136]]();_0x53d3x63[_0x116e[137]]();try{this[_0x116e[83]][_0x116e[85]][_0x116e[84]][_0x116e[139]](_0x116e[14],this[_0x116e[83]][_0x116e[4]][_0x116e[14]],[this[_0x116e[83]][_0x116e[138]]]);this[_0x116e[83]][_0x116e[85]][_0x116e[84]][_0x116e[139]](_0x116e[15],this[_0x116e[83]][_0x116e[4]][_0x116e[15]],[this[_0x116e[83]][_0x116e[138]]])}finally{_0x53d3x63[_0x116e[140]]()}};function _0x53d3x64(_0x53d3x33){_0x53d3x61[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x64,_0x53d3x61);_0x53d3x64[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];var _0x53d3x65=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],mxConstants.STYLE_STARTSIZE,mxConstants.DEFAULT_STARTSIZE);return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]/2,_0x53d3x34[_0x116e[69]]+Math[_0x116e[6]](_0x53d3x34[_0x116e[71]],_0x53d3x65*_0x53d3x5a))};_0x53d3x64[_0x116e[0]][_0x116e[134]]=function(_0x53d3x58,_0x53d3x34){_0x53d3x58[_0x116e[68]]=_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]/2;startSize=_0x53d3x58[_0x116e[69]]-_0x53d3x34[_0x116e[69]];var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];this[_0x116e[83]][_0x116e[4]][_0x116e[141]]=Math[_0x116e[135]](Math[_0x116e[34]](1,startSize)/_0x53d3x5a);return _0x53d3x58};_0x53d3x64[_0x116e[0]][_0x116e[120]]=function(){this[_0x116e[83]][_0x116e[85]][_0x116e[84]][_0x116e[139]](_0x116e[141],this[_0x116e[83]][_0x116e[4]][_0x116e[141]],[this[_0x116e[83]][_0x116e[138]]])};function _0x53d3x66(_0x53d3x33){_0x53d3x61[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x66,_0x53d3x61);_0x53d3x66[_0x116e[0]][_0x116e[142]]=20;_0x53d3x66[_0x116e[0]][_0x116e[143]]=1;_0x53d3x66[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];var _0x53d3x67=Math[_0x116e[6]](_0x53d3x34[_0x116e[70]],Math[_0x116e[6]](_0x53d3x34[_0x116e[71]],mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[2],this[_0x116e[142]])*_0x53d3x5a/this[_0x116e[143]]));return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x67,_0x53d3x34[_0x116e[69]]+_0x53d3x67)};_0x53d3x66[_0x116e[0]][_0x116e[134]]=function(_0x53d3x60,_0x53d3x34){var _0x53d3x4f=Math[_0x116e[34]](0,Math[_0x116e[6]](Math[_0x116e[6]](_0x53d3x34[_0x116e[70]]/this[_0x116e[143]],_0x53d3x60[_0x116e[68]]-_0x53d3x34[_0x116e[68]]),Math[_0x116e[6]](_0x53d3x34[_0x116e[71]]/this[_0x116e[143]],_0x53d3x60[_0x116e[69]]-_0x53d3x34[_0x116e[69]])));var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];this[_0x116e[83]][_0x116e[4]][_0x116e[2]]=Math[_0x116e[135]](Math[_0x116e[34]](1,_0x53d3x4f)/_0x53d3x5a)*this[_0x116e[143]];return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x4f,_0x53d3x34[_0x116e[69]]+_0x53d3x4f)};_0x53d3x66[_0x116e[0]][_0x116e[120]]=function(){this[_0x116e[83]][_0x116e[85]][_0x116e[84]][_0x116e[139]](_0x116e[2],this[_0x116e[83]][_0x116e[4]][_0x116e[2]],[this[_0x116e[83]][_0x116e[138]]])};function _0x53d3x68(_0x53d3x33){_0x53d3x66[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x68,_0x53d3x66);_0x53d3x68[_0x116e[0]][_0x116e[142]]=30;_0x53d3x68[_0x116e[0]][_0x116e[143]]=2;function _0x53d3x69(_0x53d3x33){_0x53d3x66[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x69,_0x53d3x66);_0x53d3x69[_0x116e[0]][_0x116e[142]]=30;_0x53d3x69[_0x116e[0]][_0x116e[143]]=1;_0x53d3x69[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];var _0x53d3x67=Math[_0x116e[6]](_0x53d3x34[_0x116e[70]],Math[_0x116e[6]](_0x53d3x34[_0x116e[71]],mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[2],this[_0x116e[142]])*_0x53d3x5a/this[_0x116e[143]]));return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x67,_0x53d3x34[_0x116e[69]]+_0x53d3x67)};_0x53d3x69[_0x116e[0]][_0x116e[134]]=function(_0x53d3x60,_0x53d3x34){var _0x53d3x4f=Math[_0x116e[34]](0,Math[_0x116e[6]](Math[_0x116e[6]](_0x53d3x34[_0x116e[70]]/this[_0x116e[143]],_0x53d3x60[_0x116e[68]]-_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]),Math[_0x116e[6]](_0x53d3x34[_0x116e[71]]/this[_0x116e[143]],_0x53d3x60[_0x116e[69]]-_0x53d3x34[_0x116e[69]])));var _0x53d3x5a=this[_0x116e[84]][_0x116e[93]]()[_0x116e[113]];this[_0x116e[83]][_0x116e[4]][_0x116e[2]]=Math[_0x116e[135]](Math[_0x116e[34]](1,_0x53d3x4f)/_0x53d3x5a)*this[_0x116e[143]];return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]-_0x53d3x4f,_0x53d3x34[_0x116e[69]]+_0x53d3x4f)};function _0x53d3x6a(_0x53d3x33){_0x53d3x66[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x6a,_0x53d3x66);_0x53d3x6a[_0x116e[0]][_0x116e[142]]=0.2;_0x53d3x6a[_0x116e[0]][_0x116e[143]]=1;_0x53d3x6a[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x67=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[2],this[_0x116e[142]]);return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]*_0x53d3x67,_0x53d3x34[_0x116e[69]]+_0x53d3x34[_0x116e[71]]/2)};_0x53d3x6a[_0x116e[0]][_0x116e[134]]=function(_0x53d3x60,_0x53d3x34){var _0x53d3x4f=Math[_0x116e[6]](1,(_0x53d3x60[_0x116e[68]]-_0x53d3x34[_0x116e[68]])/_0x53d3x34[_0x116e[70]]);this[_0x116e[83]][_0x116e[4]][_0x116e[2]]=_0x53d3x4f;return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x4f*_0x53d3x34[_0x116e[70]],_0x53d3x34[_0x116e[69]]+_0x53d3x34[_0x116e[71]]/2)};function _0x53d3x6b(_0x53d3x33){_0x53d3x66[_0x116e[24]](this,_0x53d3x33)}mxUtils[_0x116e[25]](_0x53d3x6b,_0x53d3x66);_0x53d3x6b[_0x116e[0]][_0x116e[142]]=0.4;_0x53d3x6b[_0x116e[0]][_0x116e[143]]=1;_0x53d3x6b[_0x116e[0]][_0x116e[128]]=function(_0x53d3x34){var _0x53d3x67=mxUtils[_0x116e[5]](this[_0x116e[83]][_0x116e[4]],_0x116e[2],this[_0x116e[142]]);return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]/2,_0x53d3x34[_0x116e[69]]+_0x53d3x67*_0x53d3x34[_0x116e[71]]/2)};_0x53d3x6b[_0x116e[0]][_0x116e[134]]=function(_0x53d3x60,_0x53d3x34){var _0x53d3x4f=Math[_0x116e[34]](0,Math[_0x116e[6]](1,((_0x53d3x60[_0x116e[69]]-_0x53d3x34[_0x116e[69]])/_0x53d3x34[_0x116e[71]])*2));this[_0x116e[83]][_0x116e[4]][_0x116e[2]]=_0x53d3x4f;return new mxPoint(_0x53d3x34[_0x116e[68]]+_0x53d3x34[_0x116e[70]]/2,_0x53d3x34[_0x116e[69]]+_0x53d3x4f*_0x53d3x34[_0x116e[71]]/2)};var _0x53d3x6c={"\x73\x77\x69\x6D\x6C\x61\x6E\x65":_0x53d3x64,"\x66\x6F\x6C\x64\x65\x72":_0x53d3x61,"\x63\x75\x62\x65":_0x53d3x66,"\x63\x61\x72\x64":_0x53d3x68,"\x6E\x6F\x74\x65":_0x53d3x69,"\x73\x74\x65\x70":_0x53d3x6a,"\x74\x61\x70\x65":_0x53d3x6b};var _0x53d3x6d=mxGraph[_0x116e[0]][_0x116e[144]];mxGraph[_0x116e[0]][_0x116e[144]]=function(_0x53d3x33){if(_0x53d3x33!=null){var _0x53d3x6e=_0x53d3x6c[_0x53d3x33[_0x116e[4]][_0x116e[123]]];if(_0x53d3x6e!=null){return new _0x53d3x6e(_0x53d3x33)}};return _0x53d3x6d[_0x116e[30]](this,arguments)}};mxGraph[_0x116e[0]][_0x116e[145]]=function(_0x53d3x6f,_0x53d3x50){if(_0x53d3x6f!=null&&_0x53d3x6f[_0x116e[123]]!=null){if(_0x53d3x6f[_0x116e[123]][_0x116e[146]]!=null){if(_0x53d3x6f[_0x116e[123]][_0x116e[146]]!=null){return _0x53d3x6f[_0x116e[123]][_0x116e[146]][_0x116e[147]]}}else {if(_0x53d3x6f[_0x116e[123]][_0x116e[147]]!=null){return _0x53d3x6f[_0x116e[123]][_0x116e[147]]}}};return null};mxRectangleShape[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxLabel[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];mxImageShape[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];mxSwimlane[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];_0x53d3x14[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];_0x53d3x9[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];_0x53d3x10[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];_0x53d3x1[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];_0x53d3xa[_0x116e[0]][_0x116e[147]]=mxRectangleShape[_0x116e[0]][_0x116e[147]];mxCylinder[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.15,0.05),false), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.85,0.05),false), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.3),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.7),true), new mxConnectionConstraint( new mxPoint(0.15,0.95),false), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.85,0.95),false)];_0x53d3x25[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.1),false), new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.75,0.1),false), new mxConnectionConstraint( new mxPoint(0,1/3),false), new mxConnectionConstraint( new mxPoint(0,1),false), new mxConnectionConstraint( new mxPoint(1,1/3),false), new mxConnectionConstraint( new mxPoint(1,1),false), new mxConnectionConstraint( new mxPoint(0.5,0.5),false)];_0x53d3x28[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0,0.3),true), new mxConnectionConstraint( new mxPoint(0,0.7),true), new mxConnectionConstraint( new mxPoint(1,0.25),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];mxActor[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.25,0.2),false), new mxConnectionConstraint( new mxPoint(0.1,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.75,0.25),false), new mxConnectionConstraint( new mxPoint(0.9,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.75),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true)];_0x53d3x11[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.35),false), new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0,0.65),false), new mxConnectionConstraint( new mxPoint(1,0.35),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.65),false), new mxConnectionConstraint( new mxPoint(0.25,1),false), new mxConnectionConstraint( new mxPoint(0.75,0),false)];_0x53d3x13[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.75,0),true), new mxConnectionConstraint( new mxPoint(0.25,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.75,1),true), new mxConnectionConstraint( new mxPoint(0.1,0.25),false), new mxConnectionConstraint( new mxPoint(0.2,0.5),false), new mxConnectionConstraint( new mxPoint(0.1,0.75),false), new mxConnectionConstraint( new mxPoint(0.9,0.25),false), new mxConnectionConstraint( new mxPoint(1,0.5),false), new mxConnectionConstraint( new mxPoint(0.9,0.75),false)];mxLine[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.5),false), new mxConnectionConstraint( new mxPoint(0.25,0.5),false), new mxConnectionConstraint( new mxPoint(0.75,0.5),false), new mxConnectionConstraint( new mxPoint(1,0.5),false)];_0x53d3x26[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.5,0),false), new mxConnectionConstraint( new mxPoint(0.5,1),false)];mxEllipse[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0,0),true), new mxConnectionConstraint( new mxPoint(1,0),true), new mxConnectionConstraint( new mxPoint(0,1),true), new mxConnectionConstraint( new mxPoint(1,1),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5))];mxDoubleEllipse[_0x116e[0]][_0x116e[147]]=mxEllipse[_0x116e[0]][_0x116e[147]];mxRhombus[_0x116e[0]][_0x116e[147]]=mxEllipse[_0x116e[0]][_0x116e[147]];mxTriangle[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0,0.25),true), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0,0.75),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(1,0.5),true)];mxHexagon[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.375,0),true), new mxConnectionConstraint( new mxPoint(0.5,0),true), new mxConnectionConstraint( new mxPoint(0.625,0),true), new mxConnectionConstraint( new mxPoint(0.125,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(0.125,0.75),false), new mxConnectionConstraint( new mxPoint(0.875,0.25),false), new mxConnectionConstraint( new mxPoint(0,0.5),true), new mxConnectionConstraint( new mxPoint(1,0.5),true), new mxConnectionConstraint( new mxPoint(0.875,0.75),false), new mxConnectionConstraint( new mxPoint(0.375,1),true), new mxConnectionConstraint( new mxPoint(0.5,1),true), new mxConnectionConstraint( new mxPoint(0.625,1),true)];mxCloud[_0x116e[0]][_0x116e[147]]=[ new mxConnectionConstraint( new mxPoint(0.25,0.25),false), new mxConnectionConstraint( new mxPoint(0.4,0.1),false), new mxConnectionConstraint( new mxPoint(0.16,0.55),false), new mxConnectionConstraint( new mxPoint(0.07,0.4),false), new mxConnectionConstraint( new mxPoint(0.31,0.8),false), new mxConnectionConstraint( new mxPoint(0.13,0.77),false), new mxConnectionConstraint( new mxPoint(0.8,0.8),false), new mxConnectionConstraint( new mxPoint(0.55,0.95),false), new mxConnectionConstraint( new mxPoint(0.875,0.5),false), new mxConnectionConstraint( new mxPoint(0.96,0.7),false), new mxConnectionConstraint( new mxPoint(0.625,0.2),false), new mxConnectionConstraint( new mxPoint(0.88,0.25),false)];mxArrow[_0x116e[0]][_0x116e[147]]=null})() \ No newline at end of file diff --git a/public/assets/plugins/square/js/Sidebar.js b/public/assets/plugins/square/js/Sidebar.js index 22d1c26..f9b1c97 100644 --- a/public/assets/plugins/square/js/Sidebar.js +++ b/public/assets/plugins/square/js/Sidebar.js @@ -1 +1 @@ -var _0x62e3=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x61\x6C\x65\x74\x74\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x67\x72\x61\x70\x68","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x65\x64\x69\x74\x6F\x72","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x6D\x6F\x75\x73\x65\x75\x70","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x74\x6F\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C\x61\x74\x65\x64\x54\x61\x72\x67\x65\x74","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x74\x6F\x6F\x6C\x74\x69\x70\x2E\x70\x6E\x67","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x65\x6E\x74\x72\x79","\x67\x65\x74","\x2F\x65\x6E\x74\x72\x79\x2F","\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x73\x74\x61\x72\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x65\x6E\x64","\x61\x64\x64\x49\x6D\x61\x67\x65\x50\x61\x6C\x65\x74\x74\x65","\x63\x61\x6C\x6C\x5F\x6D\x61\x6E\x61\x67\x65\x6D\x65\x6E\x74","\x2F\x63\x61\x6C\x6C\x5F\x6D\x61\x6E\x61\x67\x65\x6D\x65\x6E\x74\x2F","\x61\x6E\x73\x77\x65\x72","\x68\x61\x6E\x67\x75\x70","\x64\x69\x61\x6C","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x71\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x76\x61\x72\x69\x61\x62\x6C\x65","\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F","\x73\x65\x74","\x6D\x61\x74\x68","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x2F\x70\x6C\x61\x79\x62\x61\x63\x6B\x2F","\x6D\x65\x6E\x75","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x74\x74\x73","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F","\x72\x65\x63\x6F\x72\x64","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x53\x65\x72\x76\x65\x72","\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5F\x73\x65\x72\x76\x65\x72\x2F","\x64\x61\x74\x61\x62\x61\x73\x65","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x73\x6D\x73","\x63\x61\x6C\x6C\x66\x6C\x6F\x77","\x2F\x63\x61\x6C\x6C\x66\x6C\x6F\x77\x2F","\x67\x6F\x74\x6F\x63","\x67\x6F\x74\x6F\x69\x66","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x76\x73\x77\x69\x74\x63\x68","\x73\x74\x61\x74\x73","\x2F\x73\x74\x61\x74\x73\x2F","\x67\x6F\x61\x6C","\x67\x65\x6E\x65\x72\x61\x6C","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2F","\x6E\x6F\x6F\x70","\x73\x79\x73\x74\x65\x6D","\x61\x67\x69","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x65\x6E\x61\x62\x6C\x65\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x42\x6F\x72\x64\x65\x72","\x74\x68\x75\x6D\x62\x42\x6F\x72\x64\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x44\x65\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x61\x72\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x69\x70\x61\x72\x74\x2F\x47\x65\x61\x72\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x74\x68\x75\x6D\x62\x57\x69\x64\x74\x68","\x74\x68\x75\x6D\x62\x48\x65\x69\x67\x68\x74","\x74\x68\x75\x6D\x62\x50\x61\x64\x64\x69\x6E\x67","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x53\x69\x7A\x65","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70","\x74\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x6F\x6F\x6C\x74\x69\x70","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x72\x61\x70\x68\x32","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x76\x69\x65\x77","\x49\x53\x5F\x53\x56\x47","\x63\x61\x6E\x76\x61\x73","\x72\x65\x6C\x61\x74\x69\x76\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x31\x34\x70\x78","\x68\x65\x69\x67\x68\x74","\x32\x37\x70\x78","\x64\x69\x73\x70\x6C\x61\x79","\x62\x6C\x6F\x63\x6B","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x63\x6C\x65\x61\x72","\x6D\x6F\x64\x65\x6C","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x76\x69\x73\x69\x62\x6C\x65","\x70\x78","\x6C\x65\x6E\x67\x74\x68","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x67\x72\x61\x79","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x65\x6E\x74\x65\x72","\x31\x30\x30\x25","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x32\x70\x78","\x36\x70\x78","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","","\x77\x72\x69\x74\x65","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x74\x6F\x70","\x6E\x6F\x6E\x65","\x78","\x6D\x69\x6E","\x79","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x6D\x61\x78","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x29","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x65\x66\x74","\x64\x72\x61\x77\x50\x61\x6E\x65","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x54\x69\x74\x6C\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x68\x75\x6D\x62","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x66\x6C\x6F\x6F\x72","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x4E\x4F\x5F\x46\x4F","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x49\x53\x5F\x49\x45\x36","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x63\x75\x72\x73\x6F\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x49\x53\x5F\x49\x45","\x34\x70\x78","\x63\x72\x65\x61\x74\x65\x49\x74\x65\x6D","\x67\x65\x49\x74\x65\x6D","\x70\x61\x64\x64\x69\x6E\x67","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x63\x72\x65\x61\x74\x65\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x50\x72\x65\x76\x69\x65\x77","\x62\x6F\x72\x64\x65\x72","\x31\x70\x78\x20\x64\x61\x73\x68\x65\x64\x20\x62\x6C\x61\x63\x6B","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x53\x6F\x75\x72\x63\x65","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x61\x70\x70\x6C\x79","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x6D\x6F\x75\x73\x65\x55\x70","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x61\x62\x73","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x64\x72\x6F\x70","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6C\x61\x62\x65\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6B\x65\x79","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x74\x69\x6D\x65\x6F\x75\x74","\x69\x6E\x74\x4B\x65\x79","\x62\x65\x65\x70","\x69\x74\x2D\x49\x54","\x23","\x66\x69\x6C\x65\x5F\x69\x64","\x6F\x70\x74\x73","\x30","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x64\x69\x67\x69\x74","\x35","\x31","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x72\x65\x74\x72\x79","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x31\x30","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x76\x61\x6C\x75\x65","\x6F\x64\x62\x63\x5F\x69\x64","\x71\x75\x65\x72\x79","\x6F\x75\x74\x70\x75\x74","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x67\x6F\x74\x6F\x69\x66\x6D\x75\x6C\x74\x69\x74\x69\x6D\x65","\x64\x69\x67\x69\x74\x73","\x65\x73\x63\x61\x70\x65\x5F\x64\x69\x67\x69\x74\x73","\x6E\x75\x6D\x62\x65\x72","\x74\x65\x78\x74","\x66\x69\x6C\x65","\x2D\x31","\x73\x69\x70\x5F\x69\x64","\x75\x72\x6C","\x36\x30","\x70\x68\x6F\x6E\x65","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x74","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x73\x70\x65\x65\x64","\x65\x75\x72\x69\x74\x61\x6C\x69\x61\x6E\x66\x65\x6D\x61\x6C\x65","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6D\x61\x63\x72\x6F","\x67\x6F\x73\x75\x62","\x33\x30\x30","\x6D\x61\x69\x6C\x62\x6F\x78","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x6E\x61\x6D\x65","\x61\x67\x65\x6E\x74","\x71\x75\x65\x75\x65\x5F\x65\x76\x65\x6E\x74","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x64\x61\x74\x61\x33","\x64\x61\x74\x61\x34","\x64\x61\x74\x61\x35","\x71\x75\x65\x75\x65\x6C\x6F\x67","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x64\x65\x6C\x61\x79","\x7B\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x6E\x75\x6D\x29\x7D","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x74\x6F","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x76\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x65\x64\x67\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x23\x66\x66\x66\x66\x66\x66","\x61\x64\x64\x50\x61\x6C\x65\x74\x74\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72","\x61\x64\x64\x46\x6F\x6C\x64\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66\x29","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x31\x30\x30\x25\x20\x35\x30\x25","\x77\x61\x69\x74","\x72\x65\x6D\x6F\x76\x65\x50\x61\x6C\x65\x74\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x69\x6D\x61\x67\x65\x3B\x69\x6D\x61\x67\x65\x3D"];_0x62e3[0];function Sidebar(_0x8eadx2,_0x8eadx3){this[_0x62e3[1]]=_0x8eadx2;this[_0x62e3[2]]=_0x8eadx3;this[_0x62e3[3]]= new Object();this[_0x62e3[4]]=true;this[_0x62e3[5]]= new Graph(document[_0x62e3[7]](_0x62e3[6]),null,null,this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]][_0x62e3[8]]());this[_0x62e3[5]][_0x62e3[10]]=false;this[_0x62e3[5]][_0x62e3[11]]=false;this[_0x62e3[5]][_0x62e3[12]](false);this[_0x62e3[5]][_0x62e3[13]]=false;this[_0x62e3[5]][_0x62e3[14]](false);this[_0x62e3[5]][_0x62e3[15]](false);this[_0x62e3[5]][_0x62e3[2]][_0x62e3[17]][_0x62e3[16]]=_0x62e3[18];this[_0x62e3[5]][_0x62e3[2]][_0x62e3[17]][_0x62e3[19]]=_0x62e3[20];document[_0x62e3[22]][_0x62e3[21]](this[_0x62e3[5]][_0x62e3[2]]);if(!mxClient[_0x62e3[23]]){mxEvent[_0x62e3[26]](document,_0x62e3[24],mxUtils[_0x62e3[25]](this,function(){this[_0x62e3[4]]=true}));mxEvent[_0x62e3[26]](_0x8eadx3,_0x62e3[27],mxUtils[_0x62e3[25]](this,function(){this[_0x62e3[4]]=true}));mxEvent[_0x62e3[26]](document,_0x62e3[28],mxUtils[_0x62e3[25]](this,function(){this[_0x62e3[4]]=false;this[_0x62e3[29]]()}));mxEvent[_0x62e3[26]](document,_0x62e3[30],mxUtils[_0x62e3[25]](this,function(_0x8eadx4){var _0x8eadx5=mxEvent[_0x62e3[31]](_0x8eadx4);while(_0x8eadx5!=null){if(_0x8eadx5==this[_0x62e3[32]]){return};_0x8eadx5=_0x8eadx5[_0x62e3[33]]};this[_0x62e3[29]]()}));mxEvent[_0x62e3[26]](document,_0x62e3[34],mxUtils[_0x62e3[25]](this,function(_0x8eadx4){if(_0x8eadx4[_0x62e3[35]]==null&&_0x8eadx4[_0x62e3[36]]==null){this[_0x62e3[29]]()}}))};this[_0x62e3[37]](); new Image()[_0x62e3[38]]=IMAGE_PATH+_0x62e3[39]}Sidebar[_0x62e3[40]][_0x62e3[37]]=function(){var _0x8eadx6=STENCIL_PATH;console[_0x62e3[41]](_0x8eadx6);this[_0x62e3[49]](_0x62e3[42],mxResources[_0x62e3[43]](_0x62e3[42]),_0x8eadx6+_0x62e3[44],_0x62e3[45],[_0x62e3[46],_0x62e3[47],_0x62e3[48]],[mxResources[_0x62e3[43]](_0x62e3[46]),mxResources[_0x62e3[43]](_0x62e3[47]),mxResources[_0x62e3[43]](_0x62e3[48])]);this[_0x62e3[49]](_0x62e3[50],mxResources[_0x62e3[43]](_0x62e3[50]),_0x8eadx6+_0x62e3[51],_0x62e3[45],[_0x62e3[52],_0x62e3[53],_0x62e3[54],_0x62e3[55],_0x62e3[56],_0x62e3[57],_0x62e3[58]],[mxResources[_0x62e3[43]](_0x62e3[52]),mxResources[_0x62e3[43]](_0x62e3[53]),mxResources[_0x62e3[43]](_0x62e3[54]),mxResources[_0x62e3[43]](_0x62e3[55]),mxResources[_0x62e3[43]](_0x62e3[56]),mxResources[_0x62e3[43]](_0x62e3[57]),mxResources[_0x62e3[43]](_0x62e3[58])]);this[_0x62e3[49]](_0x62e3[59],mxResources[_0x62e3[43]](_0x62e3[59]),_0x8eadx6+_0x62e3[60],_0x62e3[45],[_0x62e3[61],_0x62e3[62]],[mxResources[_0x62e3[43]](_0x62e3[61]),mxResources[_0x62e3[43]](_0x62e3[62])]);this[_0x62e3[49]](_0x62e3[63],mxResources[_0x62e3[43]](_0x62e3[63]),_0x8eadx6+_0x62e3[64],_0x62e3[45],[_0x62e3[63],_0x62e3[65],_0x62e3[66],_0x62e3[67],_0x62e3[68],_0x62e3[69],_0x62e3[70],_0x62e3[71]],[mxResources[_0x62e3[43]](_0x62e3[63]),mxResources[_0x62e3[43]](_0x62e3[65]),mxResources[_0x62e3[43]](_0x62e3[66]),mxResources[_0x62e3[43]](_0x62e3[67]),mxResources[_0x62e3[43]](_0x62e3[68]),mxResources[_0x62e3[43]](_0x62e3[69]),mxResources[_0x62e3[43]](_0x62e3[70]),mxResources[_0x62e3[43]](_0x62e3[71])]);this[_0x62e3[49]](_0x62e3[72],mxResources[_0x62e3[43]](_0x62e3[72]),_0x8eadx6+_0x62e3[73],_0x62e3[45],[_0x62e3[74]],[mxResources[_0x62e3[43]](_0x62e3[74])]);this[_0x62e3[49]](_0x62e3[75],mxResources[_0x62e3[43]](_0x62e3[75]),_0x8eadx6+_0x62e3[76],_0x62e3[45],[_0x62e3[77],_0x62e3[78],_0x62e3[79]],[mxResources[_0x62e3[43]](_0x62e3[77]),mxResources[_0x62e3[43]](_0x62e3[78]),mxResources[_0x62e3[43]](_0x62e3[79])]);this[_0x62e3[49]](_0x62e3[80],mxResources[_0x62e3[43]](_0x62e3[80]),_0x8eadx6+_0x62e3[81],_0x62e3[45],[_0x62e3[82],_0x62e3[83],_0x62e3[84],_0x62e3[85]],[mxResources[_0x62e3[43]](_0x62e3[82]),mxResources[_0x62e3[43]](_0x62e3[83]),mxResources[_0x62e3[43]](_0x62e3[84]),mxResources[_0x62e3[43]](_0x62e3[85])]);this[_0x62e3[49]](_0x62e3[86],mxResources[_0x62e3[43]](_0x62e3[86]),_0x8eadx6+_0x62e3[87],_0x62e3[45],[_0x62e3[88]],[mxResources[_0x62e3[43]](_0x62e3[88])]);this[_0x62e3[49]](_0x62e3[89],mxResources[_0x62e3[43]](_0x62e3[89]),_0x8eadx6+_0x62e3[90],_0x62e3[45],[_0x62e3[91],_0x62e3[92],_0x62e3[93],_0x62e3[94],_0x62e3[95]],[mxResources[_0x62e3[43]](_0x62e3[91]),mxResources[_0x62e3[43]](_0x62e3[92]),mxResources[_0x62e3[43]](_0x62e3[93]),mxResources[_0x62e3[43]](_0x62e3[94]),mxResources[_0x62e3[43]](_0x62e3[95])])};Sidebar[_0x62e3[40]][_0x62e3[96]]=!mxClient[_0x62e3[23]];Sidebar[_0x62e3[40]][_0x62e3[97]]=16;Sidebar[_0x62e3[40]][_0x62e3[98]]=3;Sidebar[_0x62e3[40]][_0x62e3[99]]=300;Sidebar[_0x62e3[40]][_0x62e3[100]]=true;Sidebar[_0x62e3[40]][_0x62e3[101]]=STENCIL_PATH+_0x62e3[102];Sidebar[_0x62e3[40]][_0x62e3[103]]=34;Sidebar[_0x62e3[40]][_0x62e3[104]]=34;Sidebar[_0x62e3[40]][_0x62e3[105]]=2;Sidebar[_0x62e3[40]][_0x62e3[106]]=9;Sidebar[_0x62e3[40]][_0x62e3[107]]=false;Sidebar[_0x62e3[40]][_0x62e3[108]]=false;Sidebar[_0x62e3[40]][_0x62e3[109]]=function(_0x8eadx7,_0x8eadx8,_0x8eadx9,_0x8eadxa){if(this[_0x62e3[96]]&&this[_0x62e3[4]]){if(this[_0x62e3[32]]!=_0x8eadx7){if(this[_0x62e3[110]]!=null){window[_0x62e3[111]](this[_0x62e3[110]]);this[_0x62e3[110]]=null};var _0x8eadxb=mxUtils[_0x62e3[25]](this,function(){if(this[_0x62e3[112]]==null){this[_0x62e3[112]]=document[_0x62e3[7]](_0x62e3[6]);this[_0x62e3[112]][_0x62e3[113]]=_0x62e3[114];document[_0x62e3[22]][_0x62e3[21]](this[_0x62e3[112]]);this[_0x62e3[115]]= new Graph(this[_0x62e3[112]],null,null,this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]][_0x62e3[8]]());this[_0x62e3[115]][_0x62e3[117]][_0x62e3[116]](this[_0x62e3[97]],this[_0x62e3[97]]);this[_0x62e3[115]][_0x62e3[10]]=false;this[_0x62e3[115]][_0x62e3[11]]=false;this[_0x62e3[115]][_0x62e3[13]]=false;this[_0x62e3[115]][_0x62e3[14]](false);this[_0x62e3[115]][_0x62e3[12]](false);this[_0x62e3[115]][_0x62e3[15]](false);if(!mxClient[_0x62e3[118]]){this[_0x62e3[115]][_0x62e3[117]][_0x62e3[119]][_0x62e3[17]][_0x62e3[19]]=_0x62e3[120]};this[_0x62e3[121]]=mxUtils[_0x62e3[122]](IMAGE_PATH+_0x62e3[39]);this[_0x62e3[121]][_0x62e3[17]][_0x62e3[19]]=_0x62e3[20];this[_0x62e3[121]][_0x62e3[17]][_0x62e3[123]]=_0x62e3[124];this[_0x62e3[121]][_0x62e3[17]][_0x62e3[125]]=_0x62e3[126];document[_0x62e3[22]][_0x62e3[21]](this[_0x62e3[121]])};this[_0x62e3[112]][_0x62e3[17]][_0x62e3[127]]=_0x62e3[128];this[_0x62e3[115]][_0x62e3[129]]=(_0x8eadxa==null||_0x8eadxa);this[_0x62e3[115]][_0x62e3[131]][_0x62e3[130]]();this[_0x62e3[115]][_0x62e3[132]](_0x8eadx8);var _0x8eadxc=this[_0x62e3[115]][_0x62e3[133]]();var _0x8eadxd=_0x8eadxc[_0x62e3[123]]+2*this[_0x62e3[97]];var _0x8eadxe=_0x8eadxc[_0x62e3[125]]+2*this[_0x62e3[97]];if(mxClient[_0x62e3[134]]){_0x8eadxd+=4;_0x8eadxe+=4;this[_0x62e3[112]][_0x62e3[17]][_0x62e3[135]]=_0x62e3[18]}else {this[_0x62e3[112]][_0x62e3[17]][_0x62e3[135]]=_0x62e3[136]};this[_0x62e3[121]][_0x62e3[17]][_0x62e3[16]]=_0x62e3[136];this[_0x62e3[112]][_0x62e3[17]][_0x62e3[123]]=_0x8eadxd+_0x62e3[137];if(this[_0x62e3[108]]&&_0x8eadx9!=null&&_0x8eadx9[_0x62e3[138]]>0){if(this[_0x62e3[139]]==null){this[_0x62e3[139]]=document[_0x62e3[7]](_0x62e3[6]);this[_0x62e3[139]][_0x62e3[17]][_0x62e3[140]]=_0x62e3[141];this[_0x62e3[139]][_0x62e3[17]][_0x62e3[142]]=_0x62e3[143];this[_0x62e3[139]][_0x62e3[17]][_0x62e3[123]]=_0x62e3[144];this[_0x62e3[139]][_0x62e3[17]][_0x62e3[135]]=_0x62e3[18];if(mxClient[_0x62e3[118]]){this[_0x62e3[139]][_0x62e3[17]][_0x62e3[145]]=_0x62e3[146]}else {this[_0x62e3[139]][_0x62e3[17]][_0x62e3[19]]=_0x62e3[20];this[_0x62e3[139]][_0x62e3[17]][_0x62e3[145]]=_0x62e3[147]};this[_0x62e3[112]][_0x62e3[21]](this[_0x62e3[139]])}else {this[_0x62e3[139]][_0x62e3[148]]=_0x62e3[149]};this[_0x62e3[139]][_0x62e3[17]][_0x62e3[127]]=_0x62e3[149];mxUtils[_0x62e3[150]](this[_0x62e3[139]],_0x8eadx9);var _0x8eadxf=this[_0x62e3[139]][_0x62e3[151]]+10;_0x8eadxe+=_0x8eadxf;if(mxClient[_0x62e3[118]]){this[_0x62e3[139]][_0x62e3[17]][_0x62e3[152]]=(-_0x8eadxf)+_0x62e3[137]}else {_0x8eadxe-=6;this[_0x62e3[139]][_0x62e3[17]][_0x62e3[153]]=(_0x8eadxe-_0x8eadxf)+_0x62e3[137]}}else {if(this[_0x62e3[139]]!=null&&this[_0x62e3[139]][_0x62e3[33]]!=null){this[_0x62e3[139]][_0x62e3[17]][_0x62e3[127]]=_0x62e3[154]}};this[_0x62e3[112]][_0x62e3[17]][_0x62e3[125]]=_0x8eadxe+_0x62e3[137];var _0x8eadx10=-Math[_0x62e3[156]](0,_0x8eadxc[_0x62e3[155]]-this[_0x62e3[97]]);var _0x8eadx11=-Math[_0x62e3[156]](0,_0x8eadxc[_0x62e3[157]]-this[_0x62e3[97]]);var _0x8eadx12=this[_0x62e3[2]][_0x62e3[158]]+this[_0x62e3[1]][_0x62e3[159]]+3;var _0x8eadx13=Math[_0x62e3[162]](0,(this[_0x62e3[2]][_0x62e3[160]]+_0x8eadx7[_0x62e3[160]]-this[_0x62e3[2]][_0x62e3[161]]-_0x8eadxe/2+16));if(mxClient[_0x62e3[118]]){this[_0x62e3[115]][_0x62e3[117]][_0x62e3[119]][_0x62e3[167]](_0x62e3[163],_0x62e3[164]+_0x8eadx10+_0x62e3[165]+_0x8eadx11+_0x62e3[166])}else {this[_0x62e3[115]][_0x62e3[117]][_0x62e3[169]][_0x62e3[17]][_0x62e3[168]]=_0x8eadx10+_0x62e3[137];this[_0x62e3[115]][_0x62e3[117]][_0x62e3[169]][_0x62e3[17]][_0x62e3[153]]=_0x8eadx11+_0x62e3[137]};_0x8eadx12+=document[_0x62e3[172]](_0x62e3[171])[_0x62e3[170]];_0x8eadx13+=90;this[_0x62e3[112]][_0x62e3[17]][_0x62e3[19]]=_0x62e3[20];this[_0x62e3[112]][_0x62e3[17]][_0x62e3[168]]=_0x8eadx12+_0x62e3[137];this[_0x62e3[112]][_0x62e3[17]][_0x62e3[153]]=_0x8eadx13+_0x62e3[137];this[_0x62e3[121]][_0x62e3[17]][_0x62e3[168]]=(_0x8eadx12-13)+_0x62e3[137];this[_0x62e3[121]][_0x62e3[17]][_0x62e3[153]]=(_0x8eadx13+_0x8eadxe/2-13)+_0x62e3[137]});if(this[_0x62e3[112]]!=null&&this[_0x62e3[112]][_0x62e3[17]][_0x62e3[127]]!=_0x62e3[154]){_0x8eadxb()}else {this[_0x62e3[110]]=window[_0x62e3[173]](_0x8eadxb,this[_0x62e3[99]])};this[_0x62e3[32]]=_0x8eadx7}}};Sidebar[_0x62e3[40]][_0x62e3[29]]=function(){if(this[_0x62e3[110]]!=null){window[_0x62e3[111]](this[_0x62e3[110]]);this[_0x62e3[110]]=null};if(this[_0x62e3[112]]!=null){this[_0x62e3[112]][_0x62e3[17]][_0x62e3[127]]=_0x62e3[154];this[_0x62e3[121]][_0x62e3[17]][_0x62e3[16]]=_0x62e3[18];this[_0x62e3[32]]=null}};Sidebar[_0x62e3[40]][_0x62e3[174]]=function(_0x8eadx14){var _0x8eadx7=document[_0x62e3[7]](_0x62e3[175]);_0x8eadx7[_0x62e3[167]](_0x62e3[176],_0x62e3[177]);_0x8eadx7[_0x62e3[113]]=_0x62e3[178];mxUtils[_0x62e3[150]](_0x8eadx7,_0x8eadx14);return _0x8eadx7};Sidebar[_0x62e3[40]][_0x62e3[179]]=function(_0x8eadx8,_0x8eadxd,_0x8eadxe,_0x8eadx15,_0x8eadx9,_0x8eadxa){this[_0x62e3[5]][_0x62e3[129]]=(_0x8eadxa==null||_0x8eadxa);this[_0x62e3[5]][_0x62e3[117]][_0x62e3[180]](1,0,0);this[_0x62e3[5]][_0x62e3[132]](_0x8eadx8);var _0x8eadxc=this[_0x62e3[5]][_0x62e3[133]]();var _0x8eadx16=this[_0x62e3[98]];var _0x8eadx17=Math[_0x62e3[156]]((_0x8eadxd-2)/(_0x8eadxc[_0x62e3[123]]-_0x8eadxc[_0x62e3[155]]+_0x8eadx16),(_0x8eadxe-2)/(_0x8eadxc[_0x62e3[125]]-_0x8eadxc[_0x62e3[157]]+_0x8eadx16));var _0x8eadx10=-Math[_0x62e3[156]](_0x8eadxc[_0x62e3[155]],0);var _0x8eadx11=-Math[_0x62e3[156]](_0x8eadxc[_0x62e3[157]],0);this[_0x62e3[5]][_0x62e3[117]][_0x62e3[180]](_0x8eadx17,_0x8eadx10,_0x8eadx11);_0x8eadxc=this[_0x62e3[5]][_0x62e3[133]]();var _0x8eadx18=Math[_0x62e3[162]](0,Math[_0x62e3[181]]((_0x8eadxd-_0x8eadxc[_0x62e3[123]]-_0x8eadxc[_0x62e3[155]])/2));var _0x8eadxf=Math[_0x62e3[162]](0,Math[_0x62e3[181]]((_0x8eadxe-_0x8eadxc[_0x62e3[125]]-_0x8eadxc[_0x62e3[157]])/2));var _0x8eadx19=null;if(this[_0x62e3[5]][_0x62e3[182]]==mxConstants[_0x62e3[183]]&&!mxClient[_0x62e3[184]]){_0x8eadx19=this[_0x62e3[5]][_0x62e3[117]][_0x62e3[187]]()[_0x62e3[186]][_0x62e3[185]](true)}else {_0x8eadx19=this[_0x62e3[5]][_0x62e3[2]][_0x62e3[185]](false);_0x8eadx19[_0x62e3[148]]=this[_0x62e3[5]][_0x62e3[2]][_0x62e3[148]]};this[_0x62e3[5]][_0x62e3[188]]()[_0x62e3[130]]();if(mxClient[_0x62e3[189]]){_0x8eadx15[_0x62e3[17]][_0x62e3[190]]=_0x62e3[191]+this[_0x62e3[1]][_0x62e3[9]][_0x62e3[192]]+_0x62e3[166]};var _0x8eadx1a=3;_0x8eadx19[_0x62e3[17]][_0x62e3[19]]=_0x62e3[120];_0x8eadx19[_0x62e3[17]][_0x62e3[135]]=_0x62e3[18];_0x8eadx19[_0x62e3[17]][_0x62e3[193]]=_0x62e3[194];_0x8eadx19[_0x62e3[17]][_0x62e3[168]]=(_0x8eadx18+_0x8eadx1a)+_0x62e3[137];_0x8eadx19[_0x62e3[17]][_0x62e3[153]]=(_0x8eadxf+_0x8eadx1a)+_0x62e3[137];_0x8eadx19[_0x62e3[17]][_0x62e3[123]]=_0x8eadxd+_0x62e3[137];_0x8eadx19[_0x62e3[17]][_0x62e3[125]]=_0x8eadxe+_0x62e3[137];_0x8eadx19[_0x62e3[17]][_0x62e3[16]]=_0x62e3[149];_0x8eadx19[_0x62e3[17]][_0x62e3[195]]=_0x62e3[149];_0x8eadx19[_0x62e3[17]][_0x62e3[196]]=_0x62e3[149];_0x8eadx15[_0x62e3[21]](_0x8eadx19);if(this[_0x62e3[107]]&&_0x8eadx9!=null){var _0x8eadx1b=(mxClient[_0x62e3[134]])?2*this[_0x62e3[105]]+2:0;_0x8eadx15[_0x62e3[17]][_0x62e3[125]]=(this[_0x62e3[104]]+_0x8eadx1b+this[_0x62e3[106]]+8)+_0x62e3[137];var _0x8eadx1c=document[_0x62e3[7]](_0x62e3[6]);_0x8eadx1c[_0x62e3[17]][_0x62e3[197]]=this[_0x62e3[106]]+_0x62e3[137];_0x8eadx1c[_0x62e3[17]][_0x62e3[142]]=_0x62e3[143];_0x8eadx1c[_0x62e3[17]][_0x62e3[198]]=_0x62e3[199];if(mxClient[_0x62e3[200]]){_0x8eadx1c[_0x62e3[17]][_0x62e3[125]]=(this[_0x62e3[106]]+12)+_0x62e3[137]};_0x8eadx1c[_0x62e3[17]][_0x62e3[145]]=_0x62e3[201];mxUtils[_0x62e3[150]](_0x8eadx1c,_0x8eadx9);_0x8eadx15[_0x62e3[21]](_0x8eadx1c)}};Sidebar[_0x62e3[40]][_0x62e3[202]]=function(_0x8eadx8,_0x8eadx9,_0x8eadxa){var _0x8eadx7=document[_0x62e3[7]](_0x62e3[175]);_0x8eadx7[_0x62e3[167]](_0x62e3[176],_0x62e3[177]);_0x8eadx7[_0x62e3[113]]=_0x62e3[203];_0x8eadx7[_0x62e3[17]][_0x62e3[135]]=_0x62e3[18];var _0x8eadx1b=(mxClient[_0x62e3[134]])?8+2*this[_0x62e3[105]]:6;_0x8eadx7[_0x62e3[17]][_0x62e3[123]]=(this[_0x62e3[103]]+_0x8eadx1b)+_0x62e3[137];_0x8eadx7[_0x62e3[17]][_0x62e3[125]]=(this[_0x62e3[104]]+_0x8eadx1b)+_0x62e3[137];_0x8eadx7[_0x62e3[17]][_0x62e3[204]]=this[_0x62e3[105]]+_0x62e3[137];mxEvent[_0x62e3[26]](_0x8eadx7,_0x62e3[205],function(_0x8eadx4){mxEvent[_0x62e3[206]](_0x8eadx4)});this[_0x62e3[179]](_0x8eadx8,this[_0x62e3[103]],this[_0x62e3[104]],_0x8eadx7,_0x8eadx9,_0x8eadxa);return _0x8eadx7};Sidebar[_0x62e3[40]][_0x62e3[207]]=function(_0x8eadx8,_0x8eadx1d){return function(_0x8eadx1e,_0x8eadx4,_0x8eadx1f,_0x8eadx20,_0x8eadx21){if(_0x8eadx1e[_0x62e3[208]]()){_0x8eadx8=_0x8eadx1e[_0x62e3[209]](_0x8eadx8);if(_0x8eadx8[_0x62e3[138]]>0){var _0x8eadx22=(_0x8eadx1f!=null)?_0x8eadx1e[_0x62e3[210]](_0x8eadx1f,_0x8eadx8,_0x8eadx4):false;var _0x8eadx23=null;if(_0x8eadx1f!=null&& !_0x8eadx22){_0x8eadx1f=null};if(_0x8eadx1d&&_0x8eadx1e[_0x62e3[211]]()&&_0x8eadx1e[_0x62e3[212]](_0x8eadx1f,_0x8eadx8,_0x8eadx4)){_0x8eadx1e[_0x62e3[213]](_0x8eadx1f,_0x8eadx8,null,_0x8eadx20,_0x8eadx21);_0x8eadx23=_0x8eadx8}else {if(_0x8eadx8[_0x62e3[138]]>0){_0x8eadx23=_0x8eadx1e[_0x62e3[214]](_0x8eadx8,_0x8eadx20,_0x8eadx21,_0x8eadx1f)}};if(_0x8eadx23!=null&&_0x8eadx23[_0x62e3[138]]>0){_0x8eadx1e[_0x62e3[215]](_0x8eadx23[0]);_0x8eadx1e[_0x62e3[216]](_0x8eadx23)}}}}};Sidebar[_0x62e3[40]][_0x62e3[217]]=function(_0x8eadxd,_0x8eadxe){var _0x8eadx7=document[_0x62e3[7]](_0x62e3[6]);_0x8eadx7[_0x62e3[17]][_0x62e3[218]]=_0x62e3[219];_0x8eadx7[_0x62e3[17]][_0x62e3[123]]=_0x8eadxd+_0x62e3[137];_0x8eadx7[_0x62e3[17]][_0x62e3[125]]=_0x8eadxe+_0x62e3[137];return _0x8eadx7};Sidebar[_0x62e3[40]][_0x62e3[220]]=function(_0x8eadx7,_0x8eadx24,_0x8eadx25){var _0x8eadx26=mxUtils[_0x62e3[222]](_0x8eadx7,this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]],_0x8eadx24,_0x8eadx25,0,0,this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]][_0x62e3[221]],true,true);_0x8eadx26[_0x62e3[223]]=function(_0x8eadx1e,_0x8eadx20,_0x8eadx21){var _0x8eadx1f=mxDragSource[_0x62e3[40]][_0x62e3[223]][_0x62e3[224]](this,arguments);if(!_0x8eadx1e[_0x62e3[225]](_0x8eadx1f)){_0x8eadx1f=null};return _0x8eadx1f};return _0x8eadx26};Sidebar[_0x62e3[40]][_0x62e3[226]]=function(_0x8eadx7,_0x8eadx27){var _0x8eadx1e=this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]];var _0x8eadx28=null;mxEvent[_0x62e3[229]](_0x8eadx7,function(_0x8eadx4){_0x8eadx28= new mxPoint(mxEvent[_0x62e3[227]](_0x8eadx4),mxEvent[_0x62e3[228]](_0x8eadx4))});var _0x8eadx29=_0x8eadx27[_0x62e3[230]];_0x8eadx27[_0x62e3[230]]=function(_0x8eadx4){if(!mxEvent[_0x62e3[231]](_0x8eadx4)&&this[_0x62e3[232]]==null&&_0x8eadx28!=null){var _0x8eadx2a=_0x8eadx1e[_0x62e3[233]];if(Math[_0x62e3[234]](_0x8eadx28[_0x62e3[155]]-mxEvent[_0x62e3[227]](_0x8eadx4))<=_0x8eadx2a&&Math[_0x62e3[234]](_0x8eadx28[_0x62e3[157]]-mxEvent[_0x62e3[228]](_0x8eadx4))<=_0x8eadx2a){var _0x8eadx2b=_0x8eadx1e[_0x62e3[235]]();_0x8eadx27[_0x62e3[236]](_0x8eadx1e,_0x8eadx4,null,_0x8eadx2b,_0x8eadx2b)}};_0x8eadx29[_0x62e3[224]](this,arguments);_0x8eadx28=null}};Sidebar[_0x62e3[40]][_0x62e3[237]]=function(_0x8eadx2c,_0x8eadx14,_0x8eadx2d,_0x8eadx2e){var _0x8eadx2f=mxUtils[_0x62e3[237]]();var _0x8eadx19=_0x8eadx2f[_0x62e3[7]](_0x8eadx2c);_0x8eadx19[_0x62e3[167]](_0x62e3[238],_0x8eadx14);_0x8eadx2d[_0x62e3[239]](function(_0x8eadx30,_0x8eadx31){_0x8eadx19[_0x62e3[167]](_0x8eadx30,_0x8eadx2e[_0x8eadx31]?_0x8eadx2e[_0x8eadx31]:_0x62e3[149])});return _0x8eadx19};Sidebar[_0x62e3[40]][_0x62e3[240]]=function(_0x8eadx32,_0x8eadxd,_0x8eadxe,_0x8eadx33,_0x8eadx9,_0x8eadxa){var _0x8eadx2d=[];var _0x8eadx2e=[];switch(_0x8eadx33){case _0x62e3[52]:break;case _0x62e3[78]:_0x8eadx2d=[_0x62e3[241],_0x62e3[131],_0x62e3[242],_0x62e3[243],_0x62e3[244],_0x62e3[245]];_0x8eadx2e=[_0x62e3[149],0,_0x62e3[246],1,_0x62e3[247],true];break;case _0x62e3[63]:_0x8eadx2d=[_0x62e3[248],_0x62e3[249]];_0x8eadx2e=[_0x62e3[250]];break;case _0x62e3[255]:_0x8eadx2d=[_0x62e3[248],_0x62e3[251],_0x62e3[252]];_0x8eadx2e=[_0x62e3[250],_0x62e3[253],_0x62e3[254]];break;case _0x62e3[65]:_0x8eadx2d=[_0x62e3[248],_0x62e3[251],_0x62e3[252],_0x62e3[256],_0x62e3[257]];_0x8eadx2e=[_0x62e3[250],_0x62e3[253],_0x62e3[254],_0x62e3[254],_0x62e3[250]];break;case _0x62e3[71]:_0x8eadx2d=[_0x62e3[248],_0x62e3[251],_0x62e3[258],_0x62e3[259],_0x62e3[256],_0x62e3[257]];_0x8eadx2e=[_0x62e3[250],_0x62e3[253],_0x62e3[254],_0x62e3[260],_0x62e3[254],_0x62e3[250]];break;case _0x62e3[95]:_0x8eadx2d=[_0x62e3[261],_0x62e3[262]];_0x8eadx2e=[_0x62e3[149],_0x62e3[149]];break;case _0x62e3[61]:_0x8eadx2d=[_0x62e3[257],_0x62e3[263]];_0x8eadx2e=[_0x62e3[250],_0x62e3[149]];break;case _0x62e3[77]:_0x8eadx2d=[_0x62e3[264],_0x62e3[265],_0x62e3[257]];_0x8eadx2e=[_0x62e3[250],_0x62e3[149],_0x62e3[250]];break;case _0x62e3[91]:_0x8eadx2d=[_0x62e3[266]];_0x8eadx2e=[];break;case _0x62e3[82]:_0x8eadx2d=[_0x62e3[267],_0x62e3[268]];_0x8eadx2e=[];break;case _0x62e3[92]:_0x8eadx2d=[_0x62e3[257],_0x62e3[269]];_0x8eadx2e=[];break;case _0x62e3[93]:_0x8eadx2d=[_0x62e3[270],_0x62e3[269]];_0x8eadx2e=[];break;case _0x62e3[83]:_0x8eadx2d=[_0x62e3[271]];_0x8eadx2e=[];break;case _0x62e3[84]:_0x8eadx2d=[_0x62e3[272]];_0x8eadx2e=[_0x62e3[250]];break;case _0x62e3[273]:_0x8eadx2d=[_0x62e3[272]];_0x8eadx2e=[_0x62e3[250]];break;case _0x62e3[85]:_0x8eadx2d=[_0x62e3[257]];_0x8eadx2e=[_0x62e3[250]];break;case _0x62e3[66]:_0x8eadx2d=[_0x62e3[274],_0x62e3[275]];_0x8eadx2e=[_0x62e3[149],_0x62e3[247]];break;case _0x62e3[67]:_0x8eadx2d=[_0x62e3[276],_0x62e3[275]];_0x8eadx2e=[_0x62e3[149],_0x62e3[247]];break;case _0x62e3[68]:_0x8eadx2d=[_0x62e3[277],_0x62e3[275]];_0x8eadx2e=[_0x62e3[149],_0x62e3[247]];break;case _0x62e3[74]:_0x8eadx2d=[_0x62e3[278],_0x62e3[243],_0x62e3[275]];_0x8eadx2e=[_0x62e3[149],_0x62e3[279],_0x62e3[247]];break;case _0x62e3[54]:_0x8eadx2d=[_0x62e3[280],_0x62e3[243],_0x62e3[95],_0x62e3[281]];_0x8eadx2e=[_0x62e3[250],_0x62e3[282]];break;case _0x62e3[55]:_0x8eadx2d=[_0x62e3[283],_0x62e3[284],_0x62e3[243],_0x62e3[249],_0x62e3[281]];_0x8eadx2e=[_0x62e3[149],_0x62e3[279],_0x62e3[282]];break;case _0x62e3[69]:_0x8eadx2d=[_0x62e3[277],_0x62e3[285]];_0x8eadx2e=[_0x62e3[149],_0x62e3[286]];break;case _0x62e3[70]:_0x8eadx2d=[_0x62e3[277],_0x62e3[241],_0x62e3[287],_0x62e3[288],_0x62e3[244]];_0x8eadx2e=[_0x62e3[149],_0x62e3[149],_0x62e3[289],_0x62e3[250],_0x62e3[247]];break;case _0x62e3[56]:_0x8eadx2d=[_0x62e3[290],_0x62e3[249],_0x62e3[281],_0x62e3[248],_0x62e3[243],_0x62e3[93],_0x62e3[291],_0x62e3[292],_0x62e3[19]];_0x8eadx2e=[_0x62e3[279],_0x62e3[149],_0x62e3[149],_0x62e3[250],_0x62e3[293]];break;case _0x62e3[57]:_0x8eadx2d=[_0x62e3[294],_0x62e3[262]];_0x8eadx2e=[_0x62e3[149],_0x62e3[149]];break;case _0x62e3[94]:_0x8eadx2d=[_0x62e3[295]];_0x8eadx2e=[_0x62e3[250]];break;case _0x62e3[62]:_0x8eadx2d=[_0x62e3[296],_0x62e3[257]];_0x8eadx2e=[_0x62e3[149],_0x62e3[250]];break;case _0x62e3[305]:_0x8eadx2d=[_0x62e3[297],_0x62e3[298],_0x62e3[299],_0x62e3[300],_0x62e3[301],_0x62e3[302],_0x62e3[303],_0x62e3[304]];_0x8eadx2e=[];break;case _0x62e3[88]:_0x8eadx2d=[_0x62e3[306]];_0x8eadx2e=[];break;case _0x62e3[58]:_0x8eadx2d=[_0x62e3[307],_0x62e3[283],_0x62e3[308],_0x62e3[309]];_0x8eadx2e=[_0x62e3[149],_0x62e3[310],_0x62e3[250],_0x62e3[253]];break;case _0x62e3[79]:_0x8eadx2d=[_0x62e3[311],_0x62e3[312],_0x62e3[313]];_0x8eadx2e=[_0x62e3[250]];break;default:_0x8eadx2d=[];_0x8eadx2e=[];break};var _0x8eadx19=this[_0x62e3[237]](_0x8eadx33,_0x8eadx9,_0x8eadx2d,_0x8eadx2e);var _0x8eadx8=[ new mxCell(_0x8eadx19, new mxGeometry(0,0,_0x8eadxd,_0x8eadxe),_0x8eadx32)];_0x8eadx8[0][_0x62e3[314]]=true;return this[_0x62e3[315]](_0x8eadx8,_0x8eadxd,_0x8eadxe,_0x8eadx9,_0x8eadxa)};Sidebar[_0x62e3[40]][_0x62e3[315]]=function(_0x8eadx8,_0x8eadxd,_0x8eadxe,_0x8eadx9,_0x8eadxa){var _0x8eadx7=this[_0x62e3[202]](_0x8eadx8,_0x8eadx9,_0x8eadxa);var _0x8eadx27=this[_0x62e3[220]](_0x8eadx7,this[_0x62e3[207]](_0x8eadx8,true),this[_0x62e3[217]](_0x8eadxd,_0x8eadxe));this[_0x62e3[226]](_0x8eadx7,_0x8eadx27);_0x8eadx27[_0x62e3[316]]=mxUtils[_0x62e3[25]](this,function(){return this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]][_0x62e3[318]][_0x62e3[317]]});if(!touchStyle){mxEvent[_0x62e3[26]](_0x8eadx7,_0x62e3[30],mxUtils[_0x62e3[25]](this,function(_0x8eadx4){this[_0x62e3[109]](_0x8eadx7,_0x8eadx8,_0x8eadx9,_0x8eadxa)}))};return _0x8eadx7};Sidebar[_0x62e3[40]][_0x62e3[319]]=function(_0x8eadx32,_0x8eadxd,_0x8eadxe,_0x8eadx33,_0x8eadx9,_0x8eadxa){var _0x8eadx8=[ new mxCell((_0x8eadx33!=null)?_0x8eadx33:_0x62e3[149], new mxGeometry(0,0,_0x8eadxd,_0x8eadxe),_0x8eadx32)];_0x8eadx8[0][_0x62e3[321]][_0x62e3[320]]( new mxPoint(0,_0x8eadxe),true);_0x8eadx8[0][_0x62e3[321]][_0x62e3[320]]( new mxPoint(_0x8eadxd,0),false);_0x8eadx8[0][_0x62e3[321]][_0x62e3[120]]=true;_0x8eadx8[0][_0x62e3[322]]=true;return this[_0x62e3[323]](_0x8eadx8,_0x8eadxd,_0x8eadxe,_0x8eadx9,_0x8eadxa)};Sidebar[_0x62e3[40]][_0x62e3[323]]=function(_0x8eadx8,_0x8eadxd,_0x8eadxe,_0x8eadx9,_0x8eadxa){var _0x8eadx7=this[_0x62e3[202]](_0x8eadx8,_0x8eadx9,_0x8eadxa);this[_0x62e3[220]](_0x8eadx7,this[_0x62e3[207]](_0x8eadx8,false),this[_0x62e3[217]](_0x8eadxd,_0x8eadxe));var _0x8eadx1e=this[_0x62e3[1]][_0x62e3[9]][_0x62e3[5]];mxEvent[_0x62e3[26]](_0x8eadx7,_0x62e3[205],mxUtils[_0x62e3[25]](this,function(_0x8eadx4){if(this[_0x62e3[100]]){_0x8eadx1e[_0x62e3[324]](_0x8eadx8[0])};_0x8eadx7[_0x62e3[17]][_0x62e3[325]]=_0x62e3[326];window[_0x62e3[173]](function(){_0x8eadx7[_0x62e3[17]][_0x62e3[325]]=_0x62e3[149]},300);mxEvent[_0x62e3[206]](_0x8eadx4)}));if(!touchStyle){mxEvent[_0x62e3[26]](_0x8eadx7,_0x62e3[30],mxUtils[_0x62e3[25]](this,function(_0x8eadx4){this[_0x62e3[109]](_0x8eadx7,_0x8eadx8,_0x8eadx9,_0x8eadxa)}))};return _0x8eadx7};Sidebar[_0x62e3[40]][_0x62e3[327]]=function(_0x8eadx34,_0x8eadx9,_0x8eadx35,_0x8eadx36){var _0x8eadx7=this[_0x62e3[174]](_0x8eadx9);this[_0x62e3[2]][_0x62e3[21]](_0x8eadx7);var _0x8eadx1c=document[_0x62e3[7]](_0x62e3[6]);_0x8eadx1c[_0x62e3[113]]=_0x62e3[328];if(_0x8eadx35){_0x8eadx36(_0x8eadx1c);_0x8eadx36=null}else {_0x8eadx1c[_0x62e3[17]][_0x62e3[127]]=_0x62e3[154]};this[_0x62e3[329]](_0x8eadx7,_0x8eadx1c,_0x8eadx36);var _0x8eadx37=document[_0x62e3[7]](_0x62e3[6]);_0x8eadx37[_0x62e3[21]](_0x8eadx1c);this[_0x62e3[2]][_0x62e3[21]](_0x8eadx37);if(_0x8eadx34!=null){this[_0x62e3[3]][_0x8eadx34]=[_0x8eadx7,_0x8eadx37]}};Sidebar[_0x62e3[40]][_0x62e3[329]]=function(_0x8eadx9,_0x8eadx38,_0x8eadx39){var _0x8eadx3a=false;_0x8eadx9[_0x62e3[17]][_0x62e3[190]]=(_0x8eadx38[_0x62e3[17]][_0x62e3[127]]==_0x62e3[154])?_0x62e3[191]+IMAGE_PATH+_0x62e3[330]:_0x62e3[191]+IMAGE_PATH+_0x62e3[331];_0x8eadx9[_0x62e3[17]][_0x62e3[332]]=_0x62e3[333];_0x8eadx9[_0x62e3[17]][_0x62e3[334]]=_0x62e3[335];mxEvent[_0x62e3[26]](_0x8eadx9,_0x62e3[205],function(_0x8eadx4){if(_0x8eadx38[_0x62e3[17]][_0x62e3[127]]==_0x62e3[154]){if(!_0x8eadx3a){_0x8eadx3a=true;if(_0x8eadx39!=null){_0x8eadx9[_0x62e3[17]][_0x62e3[193]]=_0x62e3[336];window[_0x62e3[173]](function(){_0x8eadx39(_0x8eadx38);_0x8eadx9[_0x62e3[17]][_0x62e3[193]]=_0x62e3[149]},0)}};_0x8eadx9[_0x62e3[17]][_0x62e3[190]]=_0x62e3[191]+IMAGE_PATH+_0x62e3[331];_0x8eadx38[_0x62e3[17]][_0x62e3[127]]=_0x62e3[128]}else {_0x8eadx9[_0x62e3[17]][_0x62e3[190]]=_0x62e3[191]+IMAGE_PATH+_0x62e3[330];_0x8eadx38[_0x62e3[17]][_0x62e3[127]]=_0x62e3[154]};mxEvent[_0x62e3[206]](_0x8eadx4)})};Sidebar[_0x62e3[40]][_0x62e3[337]]=function(_0x8eadx34){var _0x8eadx3b=this[_0x62e3[3]][_0x8eadx34];if(_0x8eadx3b!=null){this[_0x62e3[3]][_0x8eadx34]=null;for(var _0x8eadx3c=0;_0x8eadx3c<_0x8eadx3b[_0x62e3[138]];_0x8eadx3c++){this[_0x62e3[2]][_0x62e3[338]](_0x8eadx3b[_0x8eadx3c])};return true};return false};Sidebar[_0x62e3[40]][_0x62e3[49]]=function(_0x8eadx34,_0x8eadx9,_0x8eadx3d,_0x8eadx3e,_0x8eadx3f,_0x8eadx40){this[_0x62e3[327]](_0x8eadx34,_0x8eadx9,(_0x8eadx34===_0x62e3[42]),mxUtils[_0x62e3[25]](this,function(_0x8eadx38){var _0x8eadx41=_0x8eadx40!=null;for(var _0x8eadx3c=0;_0x8eadx3c<_0x8eadx3f[_0x62e3[138]];_0x8eadx3c++){var _0x8eadx42=_0x8eadx3d+_0x8eadx3f[_0x8eadx3c]+_0x8eadx3e;_0x8eadx38[_0x62e3[21]](this[_0x62e3[240]](_0x62e3[339]+_0x8eadx42,80,80,_0x8eadx3f[_0x8eadx3c],(_0x8eadx41)?_0x8eadx40[_0x8eadx3c]:null,_0x8eadx41))}}))} \ No newline at end of file +var _0xd014=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x70\x61\x6C\x65\x74\x74\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x67\x72\x61\x70\x68","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x53\x74\x79\x6C\x65\x73\x68\x65\x65\x74","\x65\x64\x69\x74\x6F\x72","\x72\x65\x73\x65\x74\x56\x69\x65\x77\x4F\x6E\x52\x6F\x6F\x74\x43\x68\x61\x6E\x67\x65","\x66\x6F\x6C\x64\x69\x6E\x67\x45\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x43\x6F\x6E\x6E\x65\x63\x74\x61\x62\x6C\x65","\x61\x75\x74\x6F\x53\x63\x72\x6F\x6C\x6C","\x73\x65\x74\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x68\x69\x64\x64\x65\x6E","\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x61\x62\x73\x6F\x6C\x75\x74\x65","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x62\x6F\x64\x79","\x49\x53\x5F\x54\x4F\x55\x43\x48","\x6D\x6F\x75\x73\x65\x75\x70","\x62\x69\x6E\x64","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x73\x63\x72\x6F\x6C\x6C","\x6D\x6F\x75\x73\x65\x64\x6F\x77\x6E","\x68\x69\x64\x65\x54\x6F\x6F\x6C\x74\x69\x70","\x6D\x6F\x75\x73\x65\x6D\x6F\x76\x65","\x67\x65\x74\x53\x6F\x75\x72\x63\x65","\x63\x75\x72\x72\x65\x6E\x74\x45\x6C\x74","\x70\x61\x72\x65\x6E\x74\x4E\x6F\x64\x65","\x6D\x6F\x75\x73\x65\x6F\x75\x74","\x74\x6F\x45\x6C\x65\x6D\x65\x6E\x74","\x72\x65\x6C\x61\x74\x65\x64\x54\x61\x72\x67\x65\x74","\x69\x6E\x69\x74","\x73\x72\x63","\x2F\x74\x6F\x6F\x6C\x74\x69\x70\x2E\x70\x6E\x67","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x6C\x6F\x67","\x65\x6E\x74\x72\x79","\x67\x65\x74","\x2F\x65\x6E\x74\x72\x79\x2F","\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x73\x74\x61\x72\x74","\x66\x69\x6E\x61\x6C\x6C\x79","\x65\x6E\x64","\x61\x64\x64\x49\x6D\x61\x67\x65\x50\x61\x6C\x65\x74\x74\x65","\x63\x61\x6C\x6C\x5F\x6D\x61\x6E\x61\x67\x65\x6D\x65\x6E\x74","\x2F\x63\x61\x6C\x6C\x5F\x6D\x61\x6E\x61\x67\x65\x6D\x65\x6E\x74\x2F","\x61\x6E\x73\x77\x65\x72","\x68\x61\x6E\x67\x75\x70","\x64\x69\x61\x6C","\x65\x78\x74\x5F\x64\x69\x61\x6C","\x71\x75\x65\x75\x65","\x76\x6F\x69\x63\x65\x6D\x61\x69\x6C","\x63\x61\x6C\x6C\x62\x61\x63\x6B","\x76\x61\x72\x69\x61\x62\x6C\x65","\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x2F","\x73\x65\x74","\x6D\x61\x74\x68","\x70\x6C\x61\x79\x62\x61\x63\x6B","\x2F\x70\x6C\x61\x79\x62\x61\x63\x6B\x2F","\x6D\x65\x6E\x75","\x73\x61\x79\x64\x69\x67\x69\x74\x73","\x73\x61\x79\x6E\x75\x6D\x62\x65\x72","\x73\x61\x79\x70\x68\x6F\x6E\x65\x74\x69\x63","\x74\x74\x73","\x69\x73\x70\x65\x65\x63\x68\x74\x74\x73","\x67\x65\x74\x64\x69\x67\x69\x74\x73","\x72\x65\x63\x6F\x72\x64\x69\x6E\x67","\x2F\x72\x65\x63\x6F\x72\x64\x69\x6E\x67\x2F","\x72\x65\x63\x6F\x72\x64","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x53\x65\x72\x76\x65\x72","\x2F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x5F\x73\x65\x72\x76\x65\x72\x2F","\x64\x61\x74\x61\x62\x61\x73\x65","\x69\x73\x70\x65\x65\x63\x68\x61\x73\x72","\x73\x6D\x73","\x63\x61\x6C\x6C\x66\x6C\x6F\x77","\x2F\x63\x61\x6C\x6C\x66\x6C\x6F\x77\x2F","\x67\x6F\x74\x6F\x63","\x67\x6F\x74\x6F\x69\x66","\x67\x6F\x74\x6F\x69\x66\x74\x69\x6D\x65","\x76\x73\x77\x69\x74\x63\x68","\x73\x74\x61\x74\x73","\x2F\x73\x74\x61\x74\x73\x2F","\x67\x6F\x61\x6C","\x67\x65\x6E\x65\x72\x61\x6C","\x2F\x67\x65\x6E\x65\x72\x61\x6C\x2F","\x6E\x6F\x6F\x70","\x73\x79\x73\x74\x65\x6D","\x61\x67\x69","\x73\x75\x62\x70\x72\x6F\x6A\x65\x63\x74","\x63\x75\x73\x74\x6F\x6D\x5F\x61\x70\x70","\x65\x6E\x61\x62\x6C\x65\x54\x6F\x6F\x6C\x74\x69\x70\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x42\x6F\x72\x64\x65\x72","\x74\x68\x75\x6D\x62\x42\x6F\x72\x64\x65\x72","\x74\x6F\x6F\x6C\x74\x69\x70\x44\x65\x6C\x61\x79","\x69\x6E\x73\x74\x61\x6C\x6C\x45\x64\x67\x65\x73","\x67\x65\x61\x72\x49\x6D\x61\x67\x65","\x2F\x63\x6C\x69\x70\x61\x72\x74\x2F\x47\x65\x61\x72\x5F\x31\x32\x38\x78\x31\x32\x38\x2E\x70\x6E\x67","\x74\x68\x75\x6D\x62\x57\x69\x64\x74\x68","\x74\x68\x75\x6D\x62\x48\x65\x69\x67\x68\x74","\x74\x68\x75\x6D\x62\x50\x61\x64\x64\x69\x6E\x67","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x53\x69\x7A\x65","\x73\x69\x64\x65\x62\x61\x72\x54\x69\x74\x6C\x65\x73","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65\x73","\x73\x68\x6F\x77\x54\x6F\x6F\x6C\x74\x69\x70","\x74\x68\x72\x65\x61\x64","\x63\x6C\x65\x61\x72\x54\x69\x6D\x65\x6F\x75\x74","\x74\x6F\x6F\x6C\x74\x69\x70","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72\x54\x6F\x6F\x6C\x74\x69\x70","\x67\x72\x61\x70\x68\x32","\x73\x65\x74\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x76\x69\x65\x77","\x49\x53\x5F\x53\x56\x47","\x63\x61\x6E\x76\x61\x73","\x72\x65\x6C\x61\x74\x69\x76\x65","\x74\x6F\x6F\x6C\x74\x69\x70\x49\x6D\x61\x67\x65","\x63\x72\x65\x61\x74\x65\x49\x6D\x61\x67\x65","\x77\x69\x64\x74\x68","\x31\x34\x70\x78","\x68\x65\x69\x67\x68\x74","\x32\x37\x70\x78","\x64\x69\x73\x70\x6C\x61\x79","\x62\x6C\x6F\x63\x6B","\x6C\x61\x62\x65\x6C\x73\x56\x69\x73\x69\x62\x6C\x65","\x63\x6C\x65\x61\x72","\x6D\x6F\x64\x65\x6C","\x61\x64\x64\x43\x65\x6C\x6C\x73","\x67\x65\x74\x47\x72\x61\x70\x68\x42\x6F\x75\x6E\x64\x73","\x49\x53\x5F\x51\x55\x49\x52\x4B\x53","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x76\x69\x73\x69\x62\x6C\x65","\x70\x78","\x6C\x65\x6E\x67\x74\x68","\x74\x6F\x6F\x6C\x74\x69\x70\x54\x69\x74\x6C\x65","\x62\x6F\x72\x64\x65\x72\x54\x6F\x70","\x31\x70\x78\x20\x73\x6F\x6C\x69\x64\x20\x67\x72\x61\x79","\x74\x65\x78\x74\x41\x6C\x69\x67\x6E","\x63\x65\x6E\x74\x65\x72","\x31\x30\x30\x25","\x70\x61\x64\x64\x69\x6E\x67\x54\x6F\x70","\x32\x70\x78","\x36\x70\x78","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","","\x77\x72\x69\x74\x65","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x6D\x61\x72\x67\x69\x6E\x54\x6F\x70","\x74\x6F\x70","\x6E\x6F\x6E\x65","\x78","\x6D\x69\x6E","\x79","\x63\x6C\x69\x65\x6E\x74\x57\x69\x64\x74\x68","\x73\x70\x6C\x69\x74\x53\x69\x7A\x65","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x73\x63\x72\x6F\x6C\x6C\x54\x6F\x70","\x6D\x61\x78","\x74\x72\x61\x6E\x73\x66\x6F\x72\x6D","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x28","\x2C","\x29","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x6C\x65\x66\x74","\x64\x72\x61\x77\x50\x61\x6E\x65","\x6F\x66\x66\x73\x65\x74\x57\x69\x64\x74\x68","\x70\x61\x67\x65\x2D\x73\x69\x64\x65\x62\x61\x72","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x73\x65\x74\x54\x69\x6D\x65\x6F\x75\x74","\x63\x72\x65\x61\x74\x65\x54\x69\x74\x6C\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x54\x69\x74\x6C\x65","\x63\x72\x65\x61\x74\x65\x54\x68\x75\x6D\x62","\x73\x63\x61\x6C\x65\x41\x6E\x64\x54\x72\x61\x6E\x73\x6C\x61\x74\x65","\x66\x6C\x6F\x6F\x72","\x64\x69\x61\x6C\x65\x63\x74","\x44\x49\x41\x4C\x45\x43\x54\x5F\x53\x56\x47","\x4E\x4F\x5F\x46\x4F","\x63\x6C\x6F\x6E\x65\x4E\x6F\x64\x65","\x6F\x77\x6E\x65\x72\x53\x56\x47\x45\x6C\x65\x6D\x65\x6E\x74","\x67\x65\x74\x43\x61\x6E\x76\x61\x73","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x49\x53\x5F\x49\x45\x36","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x49\x6D\x61\x67\x65","\x75\x72\x6C\x28","\x74\x72\x61\x6E\x73\x70\x61\x72\x65\x6E\x74\x49\x6D\x61\x67\x65","\x63\x75\x72\x73\x6F\x72","\x70\x6F\x69\x6E\x74\x65\x72","\x6D\x69\x6E\x57\x69\x64\x74\x68","\x6D\x69\x6E\x48\x65\x69\x67\x68\x74","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x6E\x6F\x77\x72\x61\x70","\x49\x53\x5F\x49\x45","\x34\x70\x78","\x63\x72\x65\x61\x74\x65\x49\x74\x65\x6D","\x67\x65\x49\x74\x65\x6D","\x70\x61\x64\x64\x69\x6E\x67","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x63\x72\x65\x61\x74\x65\x44\x72\x6F\x70\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x65\x74\x49\x6D\x70\x6F\x72\x74\x61\x62\x6C\x65\x43\x65\x6C\x6C\x73","\x69\x73\x56\x61\x6C\x69\x64\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x69\x73\x53\x70\x6C\x69\x74\x45\x6E\x61\x62\x6C\x65\x64","\x69\x73\x53\x70\x6C\x69\x74\x54\x61\x72\x67\x65\x74","\x73\x70\x6C\x69\x74\x45\x64\x67\x65","\x69\x6D\x70\x6F\x72\x74\x43\x65\x6C\x6C\x73","\x73\x63\x72\x6F\x6C\x6C\x43\x65\x6C\x6C\x54\x6F\x56\x69\x73\x69\x62\x6C\x65","\x73\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x50\x72\x65\x76\x69\x65\x77","\x62\x6F\x72\x64\x65\x72","\x31\x70\x78\x20\x64\x61\x73\x68\x65\x64\x20\x62\x6C\x61\x63\x6B","\x63\x72\x65\x61\x74\x65\x44\x72\x61\x67\x53\x6F\x75\x72\x63\x65","\x61\x75\x74\x6F\x73\x63\x72\x6F\x6C\x6C","\x6D\x61\x6B\x65\x44\x72\x61\x67\x67\x61\x62\x6C\x65","\x67\x65\x74\x44\x72\x6F\x70\x54\x61\x72\x67\x65\x74","\x61\x70\x70\x6C\x79","\x69\x73\x56\x61\x6C\x69\x64\x52\x6F\x6F\x74","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x58","\x67\x65\x74\x43\x6C\x69\x65\x6E\x74\x59","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x6D\x6F\x75\x73\x65\x55\x70","\x69\x73\x50\x6F\x70\x75\x70\x54\x72\x69\x67\x67\x65\x72","\x63\x75\x72\x72\x65\x6E\x74\x47\x72\x61\x70\x68","\x74\x6F\x6C\x65\x72\x61\x6E\x63\x65","\x61\x62\x73","\x67\x65\x74\x47\x72\x69\x64\x53\x69\x7A\x65","\x64\x72\x6F\x70","\x63\x72\x65\x61\x74\x65\x58\x6D\x6C\x44\x6F\x63\x75\x6D\x65\x6E\x74","\x6C\x61\x62\x65\x6C","\x66\x6F\x72\x45\x61\x63\x68","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65","\x6B\x65\x79","\x69\x73\x70\x65\x65\x63\x68\x5F\x61\x73\x72\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x74\x69\x6D\x65\x6F\x75\x74","\x69\x6E\x74\x4B\x65\x79","\x62\x65\x65\x70","\x69\x74\x2D\x49\x54","\x23","\x66\x69\x6C\x65\x5F\x69\x64","\x6F\x70\x74\x73","\x30","\x72\x65\x73\x70\x6F\x6E\x73\x65","\x64\x69\x67\x69\x74","\x35","\x31","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64","\x72\x65\x74\x72\x79","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x69\x64","\x6D\x69\x6E\x64\x69\x67\x69\x74","\x6D\x61\x78\x64\x69\x67\x69\x74","\x31\x30","\x61\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E","\x6F\x70\x74\x69\x6F\x6E\x73","\x76\x61\x72\x69\x61\x62\x6C\x65\x5F\x76\x61\x6C\x75\x65","\x6F\x64\x62\x63\x5F\x69\x64","\x71\x75\x65\x72\x79","\x6F\x75\x74\x70\x75\x74","\x63\x6F\x6E\x74\x65\x78\x74","\x65\x78\x74\x65\x6E\x73\x69\x6F\x6E","\x63\x6F\x6D\x6D\x61\x6E\x64","\x61\x72\x67\x73","\x63\x6F\x6E\x64\x69\x74\x69\x6F\x6E","\x69\x6E\x74\x65\x72\x76\x61\x6C\x5F\x69\x64","\x67\x6F\x74\x6F\x69\x66\x6D\x75\x6C\x74\x69\x74\x69\x6D\x65","\x64\x69\x67\x69\x74\x73","\x65\x73\x63\x61\x70\x65\x5F\x64\x69\x67\x69\x74\x73","\x6E\x75\x6D\x62\x65\x72","\x74\x65\x78\x74","\x66\x69\x6C\x65","\x2D\x31","\x73\x69\x70\x5F\x69\x64","\x75\x72\x6C","\x36\x30","\x70\x68\x6F\x6E\x65","\x74\x72\x75\x6E\x6B\x5F\x6E\x61\x6D\x65","\x67\x6F\x6F\x67\x6C\x65\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x69\x74","\x69\x73\x70\x65\x65\x63\x68\x5F\x74\x74\x73\x5F\x6C\x61\x6E\x67\x75\x61\x67\x65","\x73\x70\x65\x65\x64","\x65\x75\x72\x69\x74\x61\x6C\x69\x61\x6E\x66\x65\x6D\x61\x6C\x65","\x71\x75\x65\x75\x65\x5F\x69\x64","\x6D\x61\x63\x72\x6F","\x67\x6F\x73\x75\x62","\x33\x30\x30","\x6D\x61\x69\x6C\x62\x6F\x78","\x70\x72\x6F\x6A\x65\x63\x74\x5F\x69\x64","\x6F\x70\x65\x72\x61\x74\x69\x6F\x6E","\x71\x75\x65\x75\x65\x6E\x61\x6D\x65","\x61\x67\x65\x6E\x74","\x71\x75\x65\x75\x65\x5F\x65\x76\x65\x6E\x74","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x64\x61\x74\x61\x33","\x64\x61\x74\x61\x34","\x64\x61\x74\x61\x35","\x71\x75\x65\x75\x65\x6C\x6F\x67","\x67\x6F\x61\x6C\x6E\x61\x6D\x65","\x6E\x61\x6D\x65","\x6C\x69\x73\x74\x5F\x69\x64","\x64\x65\x6C\x61\x79","\x7B\x43\x41\x4C\x4C\x45\x52\x49\x44\x28\x6E\x75\x6D\x29\x7D","\x61\x63\x63\x6F\x75\x6E\x74\x5F\x69\x64","\x74\x6F","\x73\x6D\x73\x5F\x74\x65\x78\x74","\x76\x65\x72\x74\x65\x78","\x63\x72\x65\x61\x74\x65\x56\x65\x72\x74\x65\x78\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x69\x73\x47\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x75\x69\x64\x65\x73\x45\x6E\x61\x62\x6C\x65\x64","\x67\x72\x61\x70\x68\x48\x61\x6E\x64\x6C\x65\x72","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65","\x73\x65\x74\x54\x65\x72\x6D\x69\x6E\x61\x6C\x50\x6F\x69\x6E\x74","\x67\x65\x6F\x6D\x65\x74\x72\x79","\x65\x64\x67\x65","\x63\x72\x65\x61\x74\x65\x45\x64\x67\x65\x54\x65\x6D\x70\x6C\x61\x74\x65\x46\x72\x6F\x6D\x43\x65\x6C\x6C\x73","\x73\x65\x74\x44\x65\x66\x61\x75\x6C\x74\x45\x64\x67\x65","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x43\x6F\x6C\x6F\x72","\x23\x66\x66\x66\x66\x66\x66","\x61\x64\x64\x50\x61\x6C\x65\x74\x74\x65","\x67\x65\x53\x69\x64\x65\x62\x61\x72","\x61\x64\x64\x46\x6F\x6C\x64\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x2F\x63\x6F\x6C\x6C\x61\x70\x73\x65\x64\x2E\x67\x69\x66\x29","\x2F\x65\x78\x70\x61\x6E\x64\x65\x64\x2E\x67\x69\x66\x29","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x52\x65\x70\x65\x61\x74","\x6E\x6F\x2D\x72\x65\x70\x65\x61\x74","\x62\x61\x63\x6B\x67\x72\x6F\x75\x6E\x64\x50\x6F\x73\x69\x74\x69\x6F\x6E","\x31\x30\x30\x25\x20\x35\x30\x25","\x77\x61\x69\x74","\x72\x65\x6D\x6F\x76\x65\x50\x61\x6C\x65\x74\x74\x65","\x72\x65\x6D\x6F\x76\x65\x43\x68\x69\x6C\x64","\x69\x6D\x61\x67\x65\x3B\x69\x6D\x61\x67\x65\x3D"];_0xd014[0];function Sidebar(_0xe7c1x2,_0xe7c1x3){this[_0xd014[1]]=_0xe7c1x2;this[_0xd014[2]]=_0xe7c1x3;this[_0xd014[3]]= new Object();this[_0xd014[4]]=true;this[_0xd014[5]]= new Graph(document[_0xd014[7]](_0xd014[6]),null,null,this[_0xd014[1]][_0xd014[9]][_0xd014[5]][_0xd014[8]]());this[_0xd014[5]][_0xd014[10]]=false;this[_0xd014[5]][_0xd014[11]]=false;this[_0xd014[5]][_0xd014[12]](false);this[_0xd014[5]][_0xd014[13]]=false;this[_0xd014[5]][_0xd014[14]](false);this[_0xd014[5]][_0xd014[15]](false);this[_0xd014[5]][_0xd014[2]][_0xd014[17]][_0xd014[16]]=_0xd014[18];this[_0xd014[5]][_0xd014[2]][_0xd014[17]][_0xd014[19]]=_0xd014[20];document[_0xd014[22]][_0xd014[21]](this[_0xd014[5]][_0xd014[2]]);if(!mxClient[_0xd014[23]]){mxEvent[_0xd014[26]](document,_0xd014[24],mxUtils[_0xd014[25]](this,function(){this[_0xd014[4]]=true}));mxEvent[_0xd014[26]](_0xe7c1x3,_0xd014[27],mxUtils[_0xd014[25]](this,function(){this[_0xd014[4]]=true}));mxEvent[_0xd014[26]](document,_0xd014[28],mxUtils[_0xd014[25]](this,function(){this[_0xd014[4]]=false;this[_0xd014[29]]()}));mxEvent[_0xd014[26]](document,_0xd014[30],mxUtils[_0xd014[25]](this,function(_0xe7c1x4){var _0xe7c1x5=mxEvent[_0xd014[31]](_0xe7c1x4);while(_0xe7c1x5!=null){if(_0xe7c1x5==this[_0xd014[32]]){return};_0xe7c1x5=_0xe7c1x5[_0xd014[33]]};this[_0xd014[29]]()}));mxEvent[_0xd014[26]](document,_0xd014[34],mxUtils[_0xd014[25]](this,function(_0xe7c1x4){if(_0xe7c1x4[_0xd014[35]]==null&&_0xe7c1x4[_0xd014[36]]==null){this[_0xd014[29]]()}}))};this[_0xd014[37]](); new Image()[_0xd014[38]]=IMAGE_PATH+_0xd014[39]}Sidebar[_0xd014[40]][_0xd014[37]]=function(){var _0xe7c1x6=STENCIL_PATH;console[_0xd014[41]](_0xe7c1x6);this[_0xd014[49]](_0xd014[42],mxResources[_0xd014[43]](_0xd014[42]),_0xe7c1x6+_0xd014[44],_0xd014[45],[_0xd014[46],_0xd014[47],_0xd014[48]],[mxResources[_0xd014[43]](_0xd014[46]),mxResources[_0xd014[43]](_0xd014[47]),mxResources[_0xd014[43]](_0xd014[48])]);this[_0xd014[49]](_0xd014[50],mxResources[_0xd014[43]](_0xd014[50]),_0xe7c1x6+_0xd014[51],_0xd014[45],[_0xd014[52],_0xd014[53],_0xd014[54],_0xd014[55],_0xd014[56],_0xd014[57],_0xd014[58]],[mxResources[_0xd014[43]](_0xd014[52]),mxResources[_0xd014[43]](_0xd014[53]),mxResources[_0xd014[43]](_0xd014[54]),mxResources[_0xd014[43]](_0xd014[55]),mxResources[_0xd014[43]](_0xd014[56]),mxResources[_0xd014[43]](_0xd014[57]),mxResources[_0xd014[43]](_0xd014[58])]);this[_0xd014[49]](_0xd014[59],mxResources[_0xd014[43]](_0xd014[59]),_0xe7c1x6+_0xd014[60],_0xd014[45],[_0xd014[61],_0xd014[62]],[mxResources[_0xd014[43]](_0xd014[61]),mxResources[_0xd014[43]](_0xd014[62])]);this[_0xd014[49]](_0xd014[63],mxResources[_0xd014[43]](_0xd014[63]),_0xe7c1x6+_0xd014[64],_0xd014[45],[_0xd014[63],_0xd014[65],_0xd014[66],_0xd014[67],_0xd014[68],_0xd014[69],_0xd014[70],_0xd014[71]],[mxResources[_0xd014[43]](_0xd014[63]),mxResources[_0xd014[43]](_0xd014[65]),mxResources[_0xd014[43]](_0xd014[66]),mxResources[_0xd014[43]](_0xd014[67]),mxResources[_0xd014[43]](_0xd014[68]),mxResources[_0xd014[43]](_0xd014[69]),mxResources[_0xd014[43]](_0xd014[70]),mxResources[_0xd014[43]](_0xd014[71])]);this[_0xd014[49]](_0xd014[72],mxResources[_0xd014[43]](_0xd014[72]),_0xe7c1x6+_0xd014[73],_0xd014[45],[_0xd014[74]],[mxResources[_0xd014[43]](_0xd014[74])]);this[_0xd014[49]](_0xd014[75],mxResources[_0xd014[43]](_0xd014[75]),_0xe7c1x6+_0xd014[76],_0xd014[45],[_0xd014[77],_0xd014[78],_0xd014[79]],[mxResources[_0xd014[43]](_0xd014[77]),mxResources[_0xd014[43]](_0xd014[78]),mxResources[_0xd014[43]](_0xd014[79])]);this[_0xd014[49]](_0xd014[80],mxResources[_0xd014[43]](_0xd014[80]),_0xe7c1x6+_0xd014[81],_0xd014[45],[_0xd014[82],_0xd014[83],_0xd014[84],_0xd014[85]],[mxResources[_0xd014[43]](_0xd014[82]),mxResources[_0xd014[43]](_0xd014[83]),mxResources[_0xd014[43]](_0xd014[84]),mxResources[_0xd014[43]](_0xd014[85])]);this[_0xd014[49]](_0xd014[86],mxResources[_0xd014[43]](_0xd014[86]),_0xe7c1x6+_0xd014[87],_0xd014[45],[_0xd014[88]],[mxResources[_0xd014[43]](_0xd014[88])]);this[_0xd014[49]](_0xd014[89],mxResources[_0xd014[43]](_0xd014[89]),_0xe7c1x6+_0xd014[90],_0xd014[45],[_0xd014[91],_0xd014[92],_0xd014[93],_0xd014[94],_0xd014[95]],[mxResources[_0xd014[43]](_0xd014[91]),mxResources[_0xd014[43]](_0xd014[92]),mxResources[_0xd014[43]](_0xd014[93]),mxResources[_0xd014[43]](_0xd014[94]),mxResources[_0xd014[43]](_0xd014[95])])};Sidebar[_0xd014[40]][_0xd014[96]]=!mxClient[_0xd014[23]];Sidebar[_0xd014[40]][_0xd014[97]]=16;Sidebar[_0xd014[40]][_0xd014[98]]=3;Sidebar[_0xd014[40]][_0xd014[99]]=300;Sidebar[_0xd014[40]][_0xd014[100]]=true;Sidebar[_0xd014[40]][_0xd014[101]]=STENCIL_PATH+_0xd014[102];Sidebar[_0xd014[40]][_0xd014[103]]=34;Sidebar[_0xd014[40]][_0xd014[104]]=34;Sidebar[_0xd014[40]][_0xd014[105]]=2;Sidebar[_0xd014[40]][_0xd014[106]]=9;Sidebar[_0xd014[40]][_0xd014[107]]=false;Sidebar[_0xd014[40]][_0xd014[108]]=false;Sidebar[_0xd014[40]][_0xd014[109]]=function(_0xe7c1x7,_0xe7c1x8,_0xe7c1x9,_0xe7c1xa){if(this[_0xd014[96]]&&this[_0xd014[4]]){if(this[_0xd014[32]]!=_0xe7c1x7){if(this[_0xd014[110]]!=null){window[_0xd014[111]](this[_0xd014[110]]);this[_0xd014[110]]=null};var _0xe7c1xb=mxUtils[_0xd014[25]](this,function(){if(this[_0xd014[112]]==null){this[_0xd014[112]]=document[_0xd014[7]](_0xd014[6]);this[_0xd014[112]][_0xd014[113]]=_0xd014[114];document[_0xd014[22]][_0xd014[21]](this[_0xd014[112]]);this[_0xd014[115]]= new Graph(this[_0xd014[112]],null,null,this[_0xd014[1]][_0xd014[9]][_0xd014[5]][_0xd014[8]]());this[_0xd014[115]][_0xd014[117]][_0xd014[116]](this[_0xd014[97]],this[_0xd014[97]]);this[_0xd014[115]][_0xd014[10]]=false;this[_0xd014[115]][_0xd014[11]]=false;this[_0xd014[115]][_0xd014[13]]=false;this[_0xd014[115]][_0xd014[14]](false);this[_0xd014[115]][_0xd014[12]](false);this[_0xd014[115]][_0xd014[15]](false);if(!mxClient[_0xd014[118]]){this[_0xd014[115]][_0xd014[117]][_0xd014[119]][_0xd014[17]][_0xd014[19]]=_0xd014[120]};this[_0xd014[121]]=mxUtils[_0xd014[122]](IMAGE_PATH+_0xd014[39]);this[_0xd014[121]][_0xd014[17]][_0xd014[19]]=_0xd014[20];this[_0xd014[121]][_0xd014[17]][_0xd014[123]]=_0xd014[124];this[_0xd014[121]][_0xd014[17]][_0xd014[125]]=_0xd014[126];document[_0xd014[22]][_0xd014[21]](this[_0xd014[121]])};this[_0xd014[112]][_0xd014[17]][_0xd014[127]]=_0xd014[128];this[_0xd014[115]][_0xd014[129]]=(_0xe7c1xa==null||_0xe7c1xa);this[_0xd014[115]][_0xd014[131]][_0xd014[130]]();this[_0xd014[115]][_0xd014[132]](_0xe7c1x8);var _0xe7c1xc=this[_0xd014[115]][_0xd014[133]]();var _0xe7c1xd=_0xe7c1xc[_0xd014[123]]+2*this[_0xd014[97]];var _0xe7c1xe=_0xe7c1xc[_0xd014[125]]+2*this[_0xd014[97]];if(mxClient[_0xd014[134]]){_0xe7c1xd+=4;_0xe7c1xe+=4;this[_0xd014[112]][_0xd014[17]][_0xd014[135]]=_0xd014[18]}else {this[_0xd014[112]][_0xd014[17]][_0xd014[135]]=_0xd014[136]};this[_0xd014[121]][_0xd014[17]][_0xd014[16]]=_0xd014[136];this[_0xd014[112]][_0xd014[17]][_0xd014[123]]=_0xe7c1xd+_0xd014[137];if(this[_0xd014[108]]&&_0xe7c1x9!=null&&_0xe7c1x9[_0xd014[138]]>0){if(this[_0xd014[139]]==null){this[_0xd014[139]]=document[_0xd014[7]](_0xd014[6]);this[_0xd014[139]][_0xd014[17]][_0xd014[140]]=_0xd014[141];this[_0xd014[139]][_0xd014[17]][_0xd014[142]]=_0xd014[143];this[_0xd014[139]][_0xd014[17]][_0xd014[123]]=_0xd014[144];this[_0xd014[139]][_0xd014[17]][_0xd014[135]]=_0xd014[18];if(mxClient[_0xd014[118]]){this[_0xd014[139]][_0xd014[17]][_0xd014[145]]=_0xd014[146]}else {this[_0xd014[139]][_0xd014[17]][_0xd014[19]]=_0xd014[20];this[_0xd014[139]][_0xd014[17]][_0xd014[145]]=_0xd014[147]};this[_0xd014[112]][_0xd014[21]](this[_0xd014[139]])}else {this[_0xd014[139]][_0xd014[148]]=_0xd014[149]};this[_0xd014[139]][_0xd014[17]][_0xd014[127]]=_0xd014[149];mxUtils[_0xd014[150]](this[_0xd014[139]],_0xe7c1x9);var _0xe7c1xf=this[_0xd014[139]][_0xd014[151]]+10;_0xe7c1xe+=_0xe7c1xf;if(mxClient[_0xd014[118]]){this[_0xd014[139]][_0xd014[17]][_0xd014[152]]=(-_0xe7c1xf)+_0xd014[137]}else {_0xe7c1xe-=6;this[_0xd014[139]][_0xd014[17]][_0xd014[153]]=(_0xe7c1xe-_0xe7c1xf)+_0xd014[137]}}else {if(this[_0xd014[139]]!=null&&this[_0xd014[139]][_0xd014[33]]!=null){this[_0xd014[139]][_0xd014[17]][_0xd014[127]]=_0xd014[154]}};this[_0xd014[112]][_0xd014[17]][_0xd014[125]]=_0xe7c1xe+_0xd014[137];var _0xe7c1x10=-Math[_0xd014[156]](0,_0xe7c1xc[_0xd014[155]]-this[_0xd014[97]]);var _0xe7c1x11=-Math[_0xd014[156]](0,_0xe7c1xc[_0xd014[157]]-this[_0xd014[97]]);var _0xe7c1x12=this[_0xd014[2]][_0xd014[158]]+this[_0xd014[1]][_0xd014[159]]+3;var _0xe7c1x13=Math[_0xd014[162]](0,(this[_0xd014[2]][_0xd014[160]]+_0xe7c1x7[_0xd014[160]]-this[_0xd014[2]][_0xd014[161]]-_0xe7c1xe/2+16));if(mxClient[_0xd014[118]]){this[_0xd014[115]][_0xd014[117]][_0xd014[119]][_0xd014[167]](_0xd014[163],_0xd014[164]+_0xe7c1x10+_0xd014[165]+_0xe7c1x11+_0xd014[166])}else {this[_0xd014[115]][_0xd014[117]][_0xd014[169]][_0xd014[17]][_0xd014[168]]=_0xe7c1x10+_0xd014[137];this[_0xd014[115]][_0xd014[117]][_0xd014[169]][_0xd014[17]][_0xd014[153]]=_0xe7c1x11+_0xd014[137]};_0xe7c1x12+=document[_0xd014[172]](_0xd014[171])[_0xd014[170]];_0xe7c1x13+=90;this[_0xd014[112]][_0xd014[17]][_0xd014[19]]=_0xd014[20];this[_0xd014[112]][_0xd014[17]][_0xd014[168]]=_0xe7c1x12+_0xd014[137];this[_0xd014[112]][_0xd014[17]][_0xd014[153]]=_0xe7c1x13+_0xd014[137];this[_0xd014[121]][_0xd014[17]][_0xd014[168]]=(_0xe7c1x12-13)+_0xd014[137];this[_0xd014[121]][_0xd014[17]][_0xd014[153]]=(_0xe7c1x13+_0xe7c1xe/2-13)+_0xd014[137]});if(this[_0xd014[112]]!=null&&this[_0xd014[112]][_0xd014[17]][_0xd014[127]]!=_0xd014[154]){_0xe7c1xb()}else {this[_0xd014[110]]=window[_0xd014[173]](_0xe7c1xb,this[_0xd014[99]])};this[_0xd014[32]]=_0xe7c1x7}}};Sidebar[_0xd014[40]][_0xd014[29]]=function(){if(this[_0xd014[110]]!=null){window[_0xd014[111]](this[_0xd014[110]]);this[_0xd014[110]]=null};if(this[_0xd014[112]]!=null){this[_0xd014[112]][_0xd014[17]][_0xd014[127]]=_0xd014[154];this[_0xd014[121]][_0xd014[17]][_0xd014[16]]=_0xd014[18];this[_0xd014[32]]=null}};Sidebar[_0xd014[40]][_0xd014[174]]=function(_0xe7c1x14){var _0xe7c1x7=document[_0xd014[7]](_0xd014[175]);_0xe7c1x7[_0xd014[167]](_0xd014[176],_0xd014[177]);_0xe7c1x7[_0xd014[113]]=_0xd014[178];mxUtils[_0xd014[150]](_0xe7c1x7,_0xe7c1x14);return _0xe7c1x7};Sidebar[_0xd014[40]][_0xd014[179]]=function(_0xe7c1x8,_0xe7c1xd,_0xe7c1xe,_0xe7c1x15,_0xe7c1x9,_0xe7c1xa){this[_0xd014[5]][_0xd014[129]]=(_0xe7c1xa==null||_0xe7c1xa);this[_0xd014[5]][_0xd014[117]][_0xd014[180]](1,0,0);this[_0xd014[5]][_0xd014[132]](_0xe7c1x8);var _0xe7c1xc=this[_0xd014[5]][_0xd014[133]]();var _0xe7c1x16=this[_0xd014[98]];var _0xe7c1x17=Math[_0xd014[156]]((_0xe7c1xd-2)/(_0xe7c1xc[_0xd014[123]]-_0xe7c1xc[_0xd014[155]]+_0xe7c1x16),(_0xe7c1xe-2)/(_0xe7c1xc[_0xd014[125]]-_0xe7c1xc[_0xd014[157]]+_0xe7c1x16));var _0xe7c1x10=-Math[_0xd014[156]](_0xe7c1xc[_0xd014[155]],0);var _0xe7c1x11=-Math[_0xd014[156]](_0xe7c1xc[_0xd014[157]],0);this[_0xd014[5]][_0xd014[117]][_0xd014[180]](_0xe7c1x17,_0xe7c1x10,_0xe7c1x11);_0xe7c1xc=this[_0xd014[5]][_0xd014[133]]();var _0xe7c1x18=Math[_0xd014[162]](0,Math[_0xd014[181]]((_0xe7c1xd-_0xe7c1xc[_0xd014[123]]-_0xe7c1xc[_0xd014[155]])/2));var _0xe7c1xf=Math[_0xd014[162]](0,Math[_0xd014[181]]((_0xe7c1xe-_0xe7c1xc[_0xd014[125]]-_0xe7c1xc[_0xd014[157]])/2));var _0xe7c1x19=null;if(this[_0xd014[5]][_0xd014[182]]==mxConstants[_0xd014[183]]&&!mxClient[_0xd014[184]]){_0xe7c1x19=this[_0xd014[5]][_0xd014[117]][_0xd014[187]]()[_0xd014[186]][_0xd014[185]](true)}else {_0xe7c1x19=this[_0xd014[5]][_0xd014[2]][_0xd014[185]](false);_0xe7c1x19[_0xd014[148]]=this[_0xd014[5]][_0xd014[2]][_0xd014[148]]};this[_0xd014[5]][_0xd014[188]]()[_0xd014[130]]();if(mxClient[_0xd014[189]]){_0xe7c1x15[_0xd014[17]][_0xd014[190]]=_0xd014[191]+this[_0xd014[1]][_0xd014[9]][_0xd014[192]]+_0xd014[166]};var _0xe7c1x1a=3;_0xe7c1x19[_0xd014[17]][_0xd014[19]]=_0xd014[120];_0xe7c1x19[_0xd014[17]][_0xd014[135]]=_0xd014[18];_0xe7c1x19[_0xd014[17]][_0xd014[193]]=_0xd014[194];_0xe7c1x19[_0xd014[17]][_0xd014[168]]=(_0xe7c1x18+_0xe7c1x1a)+_0xd014[137];_0xe7c1x19[_0xd014[17]][_0xd014[153]]=(_0xe7c1xf+_0xe7c1x1a)+_0xd014[137];_0xe7c1x19[_0xd014[17]][_0xd014[123]]=_0xe7c1xd+_0xd014[137];_0xe7c1x19[_0xd014[17]][_0xd014[125]]=_0xe7c1xe+_0xd014[137];_0xe7c1x19[_0xd014[17]][_0xd014[16]]=_0xd014[149];_0xe7c1x19[_0xd014[17]][_0xd014[195]]=_0xd014[149];_0xe7c1x19[_0xd014[17]][_0xd014[196]]=_0xd014[149];_0xe7c1x15[_0xd014[21]](_0xe7c1x19);if(this[_0xd014[107]]&&_0xe7c1x9!=null){var _0xe7c1x1b=(mxClient[_0xd014[134]])?2*this[_0xd014[105]]+2:0;_0xe7c1x15[_0xd014[17]][_0xd014[125]]=(this[_0xd014[104]]+_0xe7c1x1b+this[_0xd014[106]]+8)+_0xd014[137];var _0xe7c1x1c=document[_0xd014[7]](_0xd014[6]);_0xe7c1x1c[_0xd014[17]][_0xd014[197]]=this[_0xd014[106]]+_0xd014[137];_0xe7c1x1c[_0xd014[17]][_0xd014[142]]=_0xd014[143];_0xe7c1x1c[_0xd014[17]][_0xd014[198]]=_0xd014[199];if(mxClient[_0xd014[200]]){_0xe7c1x1c[_0xd014[17]][_0xd014[125]]=(this[_0xd014[106]]+12)+_0xd014[137]};_0xe7c1x1c[_0xd014[17]][_0xd014[145]]=_0xd014[201];mxUtils[_0xd014[150]](_0xe7c1x1c,_0xe7c1x9);_0xe7c1x15[_0xd014[21]](_0xe7c1x1c)}};Sidebar[_0xd014[40]][_0xd014[202]]=function(_0xe7c1x8,_0xe7c1x9,_0xe7c1xa){var _0xe7c1x7=document[_0xd014[7]](_0xd014[175]);_0xe7c1x7[_0xd014[167]](_0xd014[176],_0xd014[177]);_0xe7c1x7[_0xd014[113]]=_0xd014[203];_0xe7c1x7[_0xd014[17]][_0xd014[135]]=_0xd014[18];var _0xe7c1x1b=(mxClient[_0xd014[134]])?8+2*this[_0xd014[105]]:6;_0xe7c1x7[_0xd014[17]][_0xd014[123]]=(this[_0xd014[103]]+_0xe7c1x1b)+_0xd014[137];_0xe7c1x7[_0xd014[17]][_0xd014[125]]=(this[_0xd014[104]]+_0xe7c1x1b)+_0xd014[137];_0xe7c1x7[_0xd014[17]][_0xd014[204]]=this[_0xd014[105]]+_0xd014[137];mxEvent[_0xd014[26]](_0xe7c1x7,_0xd014[205],function(_0xe7c1x4){mxEvent[_0xd014[206]](_0xe7c1x4)});this[_0xd014[179]](_0xe7c1x8,this[_0xd014[103]],this[_0xd014[104]],_0xe7c1x7,_0xe7c1x9,_0xe7c1xa);return _0xe7c1x7};Sidebar[_0xd014[40]][_0xd014[207]]=function(_0xe7c1x8,_0xe7c1x1d){return function(_0xe7c1x1e,_0xe7c1x4,_0xe7c1x1f,_0xe7c1x20,_0xe7c1x21){if(_0xe7c1x1e[_0xd014[208]]()){_0xe7c1x8=_0xe7c1x1e[_0xd014[209]](_0xe7c1x8);if(_0xe7c1x8[_0xd014[138]]>0){var _0xe7c1x22=(_0xe7c1x1f!=null)?_0xe7c1x1e[_0xd014[210]](_0xe7c1x1f,_0xe7c1x8,_0xe7c1x4):false;var _0xe7c1x23=null;if(_0xe7c1x1f!=null&& !_0xe7c1x22){_0xe7c1x1f=null};if(_0xe7c1x1d&&_0xe7c1x1e[_0xd014[211]]()&&_0xe7c1x1e[_0xd014[212]](_0xe7c1x1f,_0xe7c1x8,_0xe7c1x4)){_0xe7c1x1e[_0xd014[213]](_0xe7c1x1f,_0xe7c1x8,null,_0xe7c1x20,_0xe7c1x21);_0xe7c1x23=_0xe7c1x8}else {if(_0xe7c1x8[_0xd014[138]]>0){_0xe7c1x23=_0xe7c1x1e[_0xd014[214]](_0xe7c1x8,_0xe7c1x20,_0xe7c1x21,_0xe7c1x1f)}};if(_0xe7c1x23!=null&&_0xe7c1x23[_0xd014[138]]>0){_0xe7c1x1e[_0xd014[215]](_0xe7c1x23[0]);_0xe7c1x1e[_0xd014[216]](_0xe7c1x23)}}}}};Sidebar[_0xd014[40]][_0xd014[217]]=function(_0xe7c1xd,_0xe7c1xe){var _0xe7c1x7=document[_0xd014[7]](_0xd014[6]);_0xe7c1x7[_0xd014[17]][_0xd014[218]]=_0xd014[219];_0xe7c1x7[_0xd014[17]][_0xd014[123]]=_0xe7c1xd+_0xd014[137];_0xe7c1x7[_0xd014[17]][_0xd014[125]]=_0xe7c1xe+_0xd014[137];return _0xe7c1x7};Sidebar[_0xd014[40]][_0xd014[220]]=function(_0xe7c1x7,_0xe7c1x24,_0xe7c1x25){var _0xe7c1x26=mxUtils[_0xd014[222]](_0xe7c1x7,this[_0xd014[1]][_0xd014[9]][_0xd014[5]],_0xe7c1x24,_0xe7c1x25,0,0,this[_0xd014[1]][_0xd014[9]][_0xd014[5]][_0xd014[221]],true,true);_0xe7c1x26[_0xd014[223]]=function(_0xe7c1x1e,_0xe7c1x20,_0xe7c1x21){var _0xe7c1x1f=mxDragSource[_0xd014[40]][_0xd014[223]][_0xd014[224]](this,arguments);if(!_0xe7c1x1e[_0xd014[225]](_0xe7c1x1f)){_0xe7c1x1f=null};return _0xe7c1x1f};return _0xe7c1x26};Sidebar[_0xd014[40]][_0xd014[226]]=function(_0xe7c1x7,_0xe7c1x27){var _0xe7c1x1e=this[_0xd014[1]][_0xd014[9]][_0xd014[5]];var _0xe7c1x28=null;mxEvent[_0xd014[229]](_0xe7c1x7,function(_0xe7c1x4){_0xe7c1x28= new mxPoint(mxEvent[_0xd014[227]](_0xe7c1x4),mxEvent[_0xd014[228]](_0xe7c1x4))});var _0xe7c1x29=_0xe7c1x27[_0xd014[230]];_0xe7c1x27[_0xd014[230]]=function(_0xe7c1x4){if(!mxEvent[_0xd014[231]](_0xe7c1x4)&&this[_0xd014[232]]==null&&_0xe7c1x28!=null){var _0xe7c1x2a=_0xe7c1x1e[_0xd014[233]];if(Math[_0xd014[234]](_0xe7c1x28[_0xd014[155]]-mxEvent[_0xd014[227]](_0xe7c1x4))<=_0xe7c1x2a&&Math[_0xd014[234]](_0xe7c1x28[_0xd014[157]]-mxEvent[_0xd014[228]](_0xe7c1x4))<=_0xe7c1x2a){var _0xe7c1x2b=_0xe7c1x1e[_0xd014[235]]();_0xe7c1x27[_0xd014[236]](_0xe7c1x1e,_0xe7c1x4,null,_0xe7c1x2b,_0xe7c1x2b)}};_0xe7c1x29[_0xd014[224]](this,arguments);_0xe7c1x28=null}};Sidebar[_0xd014[40]][_0xd014[237]]=function(_0xe7c1x2c,_0xe7c1x14,_0xe7c1x2d,_0xe7c1x2e){var _0xe7c1x2f=mxUtils[_0xd014[237]]();var _0xe7c1x19=_0xe7c1x2f[_0xd014[7]](_0xe7c1x2c);_0xe7c1x19[_0xd014[167]](_0xd014[238],_0xe7c1x14);_0xe7c1x2d[_0xd014[239]](function(_0xe7c1x30,_0xe7c1x31){_0xe7c1x19[_0xd014[167]](_0xe7c1x30,_0xe7c1x2e[_0xe7c1x31]?_0xe7c1x2e[_0xe7c1x31]:_0xd014[149])});return _0xe7c1x19};Sidebar[_0xd014[40]][_0xd014[240]]=function(_0xe7c1x32,_0xe7c1xd,_0xe7c1xe,_0xe7c1x33,_0xe7c1x9,_0xe7c1xa){var _0xe7c1x2d=[];var _0xe7c1x2e=[];switch(_0xe7c1x33){case _0xd014[52]:break;case _0xd014[78]:_0xe7c1x2d=[_0xd014[241],_0xd014[131],_0xd014[242],_0xd014[243],_0xd014[244],_0xd014[245]];_0xe7c1x2e=[_0xd014[149],0,_0xd014[246],1,_0xd014[247],true];break;case _0xd014[63]:_0xe7c1x2d=[_0xd014[248],_0xd014[249]];_0xe7c1x2e=[_0xd014[250]];break;case _0xd014[255]:_0xe7c1x2d=[_0xd014[248],_0xd014[251],_0xd014[252]];_0xe7c1x2e=[_0xd014[250],_0xd014[253],_0xd014[254]];break;case _0xd014[65]:_0xe7c1x2d=[_0xd014[248],_0xd014[251],_0xd014[252],_0xd014[256],_0xd014[257]];_0xe7c1x2e=[_0xd014[250],_0xd014[253],_0xd014[254],_0xd014[254],_0xd014[250]];break;case _0xd014[71]:_0xe7c1x2d=[_0xd014[248],_0xd014[251],_0xd014[258],_0xd014[259],_0xd014[256],_0xd014[257]];_0xe7c1x2e=[_0xd014[250],_0xd014[253],_0xd014[254],_0xd014[260],_0xd014[254],_0xd014[250]];break;case _0xd014[95]:_0xe7c1x2d=[_0xd014[261],_0xd014[262]];_0xe7c1x2e=[_0xd014[149],_0xd014[149]];break;case _0xd014[61]:_0xe7c1x2d=[_0xd014[257],_0xd014[263]];_0xe7c1x2e=[_0xd014[250],_0xd014[149]];break;case _0xd014[77]:_0xe7c1x2d=[_0xd014[264],_0xd014[265],_0xd014[257]];_0xe7c1x2e=[_0xd014[250],_0xd014[149],_0xd014[250]];break;case _0xd014[91]:_0xe7c1x2d=[_0xd014[266]];_0xe7c1x2e=[];break;case _0xd014[82]:_0xe7c1x2d=[_0xd014[267],_0xd014[268]];_0xe7c1x2e=[];break;case _0xd014[92]:_0xe7c1x2d=[_0xd014[257],_0xd014[269]];_0xe7c1x2e=[];break;case _0xd014[93]:_0xe7c1x2d=[_0xd014[270],_0xd014[269]];_0xe7c1x2e=[];break;case _0xd014[83]:_0xe7c1x2d=[_0xd014[271]];_0xe7c1x2e=[];break;case _0xd014[84]:_0xe7c1x2d=[_0xd014[272]];_0xe7c1x2e=[_0xd014[250]];break;case _0xd014[273]:_0xe7c1x2d=[_0xd014[272]];_0xe7c1x2e=[_0xd014[250]];break;case _0xd014[85]:_0xe7c1x2d=[_0xd014[257]];_0xe7c1x2e=[_0xd014[250]];break;case _0xd014[66]:_0xe7c1x2d=[_0xd014[274],_0xd014[275]];_0xe7c1x2e=[_0xd014[149],_0xd014[247]];break;case _0xd014[67]:_0xe7c1x2d=[_0xd014[276],_0xd014[275]];_0xe7c1x2e=[_0xd014[149],_0xd014[247]];break;case _0xd014[68]:_0xe7c1x2d=[_0xd014[277],_0xd014[275]];_0xe7c1x2e=[_0xd014[149],_0xd014[247]];break;case _0xd014[74]:_0xe7c1x2d=[_0xd014[278],_0xd014[243],_0xd014[275]];_0xe7c1x2e=[_0xd014[149],_0xd014[279],_0xd014[247]];break;case _0xd014[54]:_0xe7c1x2d=[_0xd014[280],_0xd014[243],_0xd014[95],_0xd014[281]];_0xe7c1x2e=[_0xd014[250],_0xd014[282]];break;case _0xd014[55]:_0xe7c1x2d=[_0xd014[283],_0xd014[284],_0xd014[243],_0xd014[249],_0xd014[281]];_0xe7c1x2e=[_0xd014[149],_0xd014[279],_0xd014[282]];break;case _0xd014[69]:_0xe7c1x2d=[_0xd014[277],_0xd014[285]];_0xe7c1x2e=[_0xd014[149],_0xd014[286]];break;case _0xd014[70]:_0xe7c1x2d=[_0xd014[277],_0xd014[241],_0xd014[287],_0xd014[288],_0xd014[244]];_0xe7c1x2e=[_0xd014[149],_0xd014[149],_0xd014[289],_0xd014[250],_0xd014[247]];break;case _0xd014[56]:_0xe7c1x2d=[_0xd014[290],_0xd014[249],_0xd014[281],_0xd014[248],_0xd014[243],_0xd014[93],_0xd014[291],_0xd014[292],_0xd014[19]];_0xe7c1x2e=[_0xd014[279],_0xd014[149],_0xd014[149],_0xd014[250],_0xd014[293]];break;case _0xd014[57]:_0xe7c1x2d=[_0xd014[294],_0xd014[262]];_0xe7c1x2e=[_0xd014[149],_0xd014[149]];break;case _0xd014[94]:_0xe7c1x2d=[_0xd014[295]];_0xe7c1x2e=[_0xd014[250]];break;case _0xd014[62]:_0xe7c1x2d=[_0xd014[296],_0xd014[257]];_0xe7c1x2e=[_0xd014[149],_0xd014[250]];break;case _0xd014[305]:_0xe7c1x2d=[_0xd014[297],_0xd014[298],_0xd014[299],_0xd014[300],_0xd014[301],_0xd014[302],_0xd014[303],_0xd014[304]];_0xe7c1x2e=[];break;case _0xd014[88]:_0xe7c1x2d=[_0xd014[306]];_0xe7c1x2e=[];break;case _0xd014[58]:_0xe7c1x2d=[_0xd014[307],_0xd014[283],_0xd014[308],_0xd014[309]];_0xe7c1x2e=[_0xd014[149],_0xd014[310],_0xd014[250],_0xd014[253]];break;case _0xd014[79]:_0xe7c1x2d=[_0xd014[311],_0xd014[312],_0xd014[313]];_0xe7c1x2e=[_0xd014[250]];break;default:_0xe7c1x2d=[];_0xe7c1x2e=[];break};var _0xe7c1x19=this[_0xd014[237]](_0xe7c1x33,_0xe7c1x9,_0xe7c1x2d,_0xe7c1x2e);var _0xe7c1x8=[ new mxCell(_0xe7c1x19, new mxGeometry(0,0,_0xe7c1xd,_0xe7c1xe),_0xe7c1x32)];_0xe7c1x8[0][_0xd014[314]]=true;return this[_0xd014[315]](_0xe7c1x8,_0xe7c1xd,_0xe7c1xe,_0xe7c1x9,_0xe7c1xa)};Sidebar[_0xd014[40]][_0xd014[315]]=function(_0xe7c1x8,_0xe7c1xd,_0xe7c1xe,_0xe7c1x9,_0xe7c1xa){var _0xe7c1x7=this[_0xd014[202]](_0xe7c1x8,_0xe7c1x9,_0xe7c1xa);var _0xe7c1x27=this[_0xd014[220]](_0xe7c1x7,this[_0xd014[207]](_0xe7c1x8,true),this[_0xd014[217]](_0xe7c1xd,_0xe7c1xe));this[_0xd014[226]](_0xe7c1x7,_0xe7c1x27);_0xe7c1x27[_0xd014[316]]=mxUtils[_0xd014[25]](this,function(){return this[_0xd014[1]][_0xd014[9]][_0xd014[5]][_0xd014[318]][_0xd014[317]]});if(!touchStyle){mxEvent[_0xd014[26]](_0xe7c1x7,_0xd014[30],mxUtils[_0xd014[25]](this,function(_0xe7c1x4){this[_0xd014[109]](_0xe7c1x7,_0xe7c1x8,_0xe7c1x9,_0xe7c1xa)}))};return _0xe7c1x7};Sidebar[_0xd014[40]][_0xd014[319]]=function(_0xe7c1x32,_0xe7c1xd,_0xe7c1xe,_0xe7c1x33,_0xe7c1x9,_0xe7c1xa){var _0xe7c1x8=[ new mxCell((_0xe7c1x33!=null)?_0xe7c1x33:_0xd014[149], new mxGeometry(0,0,_0xe7c1xd,_0xe7c1xe),_0xe7c1x32)];_0xe7c1x8[0][_0xd014[321]][_0xd014[320]]( new mxPoint(0,_0xe7c1xe),true);_0xe7c1x8[0][_0xd014[321]][_0xd014[320]]( new mxPoint(_0xe7c1xd,0),false);_0xe7c1x8[0][_0xd014[321]][_0xd014[120]]=true;_0xe7c1x8[0][_0xd014[322]]=true;return this[_0xd014[323]](_0xe7c1x8,_0xe7c1xd,_0xe7c1xe,_0xe7c1x9,_0xe7c1xa)};Sidebar[_0xd014[40]][_0xd014[323]]=function(_0xe7c1x8,_0xe7c1xd,_0xe7c1xe,_0xe7c1x9,_0xe7c1xa){var _0xe7c1x7=this[_0xd014[202]](_0xe7c1x8,_0xe7c1x9,_0xe7c1xa);this[_0xd014[220]](_0xe7c1x7,this[_0xd014[207]](_0xe7c1x8,false),this[_0xd014[217]](_0xe7c1xd,_0xe7c1xe));var _0xe7c1x1e=this[_0xd014[1]][_0xd014[9]][_0xd014[5]];mxEvent[_0xd014[26]](_0xe7c1x7,_0xd014[205],mxUtils[_0xd014[25]](this,function(_0xe7c1x4){if(this[_0xd014[100]]){_0xe7c1x1e[_0xd014[324]](_0xe7c1x8[0])};_0xe7c1x7[_0xd014[17]][_0xd014[325]]=_0xd014[326];window[_0xd014[173]](function(){_0xe7c1x7[_0xd014[17]][_0xd014[325]]=_0xd014[149]},300);mxEvent[_0xd014[206]](_0xe7c1x4)}));if(!touchStyle){mxEvent[_0xd014[26]](_0xe7c1x7,_0xd014[30],mxUtils[_0xd014[25]](this,function(_0xe7c1x4){this[_0xd014[109]](_0xe7c1x7,_0xe7c1x8,_0xe7c1x9,_0xe7c1xa)}))};return _0xe7c1x7};Sidebar[_0xd014[40]][_0xd014[327]]=function(_0xe7c1x34,_0xe7c1x9,_0xe7c1x35,_0xe7c1x36){var _0xe7c1x7=this[_0xd014[174]](_0xe7c1x9);this[_0xd014[2]][_0xd014[21]](_0xe7c1x7);var _0xe7c1x1c=document[_0xd014[7]](_0xd014[6]);_0xe7c1x1c[_0xd014[113]]=_0xd014[328];if(_0xe7c1x35){_0xe7c1x36(_0xe7c1x1c);_0xe7c1x36=null}else {_0xe7c1x1c[_0xd014[17]][_0xd014[127]]=_0xd014[154]};this[_0xd014[329]](_0xe7c1x7,_0xe7c1x1c,_0xe7c1x36);var _0xe7c1x37=document[_0xd014[7]](_0xd014[6]);_0xe7c1x37[_0xd014[21]](_0xe7c1x1c);this[_0xd014[2]][_0xd014[21]](_0xe7c1x37);if(_0xe7c1x34!=null){this[_0xd014[3]][_0xe7c1x34]=[_0xe7c1x7,_0xe7c1x37]}};Sidebar[_0xd014[40]][_0xd014[329]]=function(_0xe7c1x9,_0xe7c1x38,_0xe7c1x39){var _0xe7c1x3a=false;_0xe7c1x9[_0xd014[17]][_0xd014[190]]=(_0xe7c1x38[_0xd014[17]][_0xd014[127]]==_0xd014[154])?_0xd014[191]+IMAGE_PATH+_0xd014[330]:_0xd014[191]+IMAGE_PATH+_0xd014[331];_0xe7c1x9[_0xd014[17]][_0xd014[332]]=_0xd014[333];_0xe7c1x9[_0xd014[17]][_0xd014[334]]=_0xd014[335];mxEvent[_0xd014[26]](_0xe7c1x9,_0xd014[205],function(_0xe7c1x4){if(_0xe7c1x38[_0xd014[17]][_0xd014[127]]==_0xd014[154]){if(!_0xe7c1x3a){_0xe7c1x3a=true;if(_0xe7c1x39!=null){_0xe7c1x9[_0xd014[17]][_0xd014[193]]=_0xd014[336];window[_0xd014[173]](function(){_0xe7c1x39(_0xe7c1x38);_0xe7c1x9[_0xd014[17]][_0xd014[193]]=_0xd014[149]},0)}};_0xe7c1x9[_0xd014[17]][_0xd014[190]]=_0xd014[191]+IMAGE_PATH+_0xd014[331];_0xe7c1x38[_0xd014[17]][_0xd014[127]]=_0xd014[128]}else {_0xe7c1x9[_0xd014[17]][_0xd014[190]]=_0xd014[191]+IMAGE_PATH+_0xd014[330];_0xe7c1x38[_0xd014[17]][_0xd014[127]]=_0xd014[154]};mxEvent[_0xd014[206]](_0xe7c1x4)})};Sidebar[_0xd014[40]][_0xd014[337]]=function(_0xe7c1x34){var _0xe7c1x3b=this[_0xd014[3]][_0xe7c1x34];if(_0xe7c1x3b!=null){this[_0xd014[3]][_0xe7c1x34]=null;for(var _0xe7c1x3c=0;_0xe7c1x3c<_0xe7c1x3b[_0xd014[138]];_0xe7c1x3c++){this[_0xd014[2]][_0xd014[338]](_0xe7c1x3b[_0xe7c1x3c])};return true};return false};Sidebar[_0xd014[40]][_0xd014[49]]=function(_0xe7c1x34,_0xe7c1x9,_0xe7c1x3d,_0xe7c1x3e,_0xe7c1x3f,_0xe7c1x40){this[_0xd014[327]](_0xe7c1x34,_0xe7c1x9,(_0xe7c1x34===_0xd014[42]),mxUtils[_0xd014[25]](this,function(_0xe7c1x38){var _0xe7c1x41=_0xe7c1x40!=null;for(var _0xe7c1x3c=0;_0xe7c1x3c<_0xe7c1x3f[_0xd014[138]];_0xe7c1x3c++){var _0xe7c1x42=_0xe7c1x3d+_0xe7c1x3f[_0xe7c1x3c]+_0xe7c1x3e;_0xe7c1x38[_0xd014[21]](this[_0xd014[240]](_0xd014[339]+_0xe7c1x42,80,80,_0xe7c1x3f[_0xe7c1x3c],(_0xe7c1x41)?_0xe7c1x40[_0xe7c1x3c]:null,_0xe7c1x41))}}))} \ No newline at end of file diff --git a/public/assets/plugins/square/js/Toolbar.js b/public/assets/plugins/square/js/Toolbar.js index b362a40..85243be 100644 --- a/public/assets/plugins/square/js/Toolbar.js +++ b/public/assets/plugins/square/js/Toolbar.js @@ -1 +1 @@ -var _0x376c=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x6E\x69\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x62\x69\x6E\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x61\x76\x65","\x70\x75\x62\x6C\x69\x73\x68","\x2D","\x70\x72\x69\x6E\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x6F\x70\x79","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x61\x64\x64\x49\x74\x65\x6D\x73","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x67\x65\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x73\x74\x79\x6C\x65","\x6E\x6F\x77\x72\x61\x70","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x77\x69\x64\x74\x68","\x37\x30\x70\x78","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x31\x32","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x33\x30\x70\x78","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x6C\x65\x6E\x67\x74\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2E\x2E\x2E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x64\x65\x73\x74\x72\x6F\x79","\x6D\x65\x6E\x75\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x4D\x65\x6E\x75\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x42\x75\x74\x74\x6F\x6E","\x69\x6E\x69\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x67\x65\x53\x70\x72\x69\x74\x65\x2D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x64\x49\x74\x65\x6D","\x61\x63\x74\x69\x6F\x6E\x73","\x6C\x61\x62\x65\x6C","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x61\x64\x64\x45\x64\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x69\x73\x45\x64\x67\x65","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x74\x69\x74\x6C\x65","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64\x53\x74\x61\x74\x65","\x20\x67\x65\x44\x69\x73\x61\x62\x6C\x65\x64","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x42\x75\x74\x74\x6F\x6E","\x67\x65\x53\x70\x72\x69\x74\x65\x20","\x67\x65\x4C\x61\x62\x65\x6C","\x77\x72\x69\x74\x65","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x20\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x65\x6E\x75","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x6C\x61\x62\x65\x6C\x73","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70"];function Toolbar(_0xba13x2,_0xba13x3){this[_0x376c[0]]=_0xba13x2;this[_0x376c[1]]=_0xba13x3;this[_0x376c[2]]();mxEvent[_0x376c[5]](document,mxUtils[_0x376c[4]](this,function(_0xba13x4){this[_0x376c[3]]()}))}Toolbar[_0x376c[6]][_0x376c[2]]=function(){this[_0x376c[21]]([_0x376c[7],_0x376c[8],_0x376c[9],_0x376c[10],_0x376c[11],_0x376c[12],_0x376c[9],_0x376c[13],_0x376c[14],_0x376c[15],_0x376c[16],_0x376c[9],_0x376c[17],_0x376c[9],_0x376c[18],_0x376c[19],_0x376c[20],_0x376c[9]]);var _0xba13x5=this[_0x376c[25]](_0x376c[22],mxResources[_0x376c[24]](_0x376c[23]),true,_0x376c[23]);_0xba13x5[_0x376c[27]][_0x376c[26]]=_0x376c[28];_0xba13x5[_0x376c[27]][_0x376c[29]]=_0x376c[30];_0xba13x5[_0x376c[27]][_0x376c[31]]=_0x376c[32];this[_0x376c[33]]();var _0xba13x6=this[_0x376c[25]](_0x376c[34],mxResources[_0x376c[24]](_0x376c[35]),true,_0x376c[35]);_0xba13x6[_0x376c[27]][_0x376c[26]]=_0x376c[28];_0xba13x6[_0x376c[27]][_0x376c[29]]=_0x376c[30];_0xba13x6[_0x376c[27]][_0x376c[31]]=_0x376c[36];this[_0x376c[21]]([_0x376c[9],_0x376c[37],_0x376c[38],_0x376c[39]]);var _0xba13x7=this[_0x376c[0]][_0x376c[41]][_0x376c[40]];var _0xba13x8=mxUtils[_0x376c[4]](this,function(){var _0xba13x9=_0x376c[22];var _0xba13xa=_0x376c[34];var _0xba13xb=_0xba13x7[_0x376c[44]]()[_0x376c[43]](_0xba13x7[_0x376c[42]]());if(_0xba13xb!=null){_0xba13x9=_0xba13xb[_0x376c[27]][mxConstants[_0x376c[45]]]||_0xba13x9;_0xba13xa=_0xba13xb[_0x376c[27]][mxConstants[_0x376c[46]]]||_0xba13xa;if(_0xba13x9[_0x376c[47]]>10){_0xba13x9=_0xba13x9[_0x376c[48]](0,8)+_0x376c[49]};_0xba13x5[_0x376c[50]]=_0xba13x9;_0xba13x6[_0x376c[50]]=_0xba13xa}});_0xba13x7[_0x376c[52]]()[_0x376c[51]](mxEvent.CHANGE,_0xba13x8);_0xba13x7[_0x376c[53]]()[_0x376c[51]](mxEvent.CHANGE,_0xba13x8)};Toolbar[_0x376c[6]][_0x376c[3]]=function(){if(this[_0x376c[54]]!=null){this[_0x376c[54]][_0x376c[3]]();this[_0x376c[54]][_0x376c[55]]();this[_0x376c[54]]=null}};Toolbar[_0x376c[6]][_0x376c[25]]=function(_0xba13xc,_0xba13xd,_0xba13xe,_0xba13xf){var _0xba13x10=this[_0x376c[0]][_0x376c[56]][_0x376c[24]](_0xba13xf);var _0xba13x11=this[_0x376c[58]](_0xba13xc,_0xba13xd,_0xba13xe,_0xba13x10[_0x376c[57]]);_0xba13x10[_0x376c[51]](_0x376c[59],function(){_0xba13x11[_0x376c[61]](_0xba13x10[_0x376c[60]])});return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[58]]=function(_0xba13xc,_0xba13xd,_0xba13xe,_0xba13x12){var _0xba13x11=(_0xba13xe)?this[_0x376c[62]](_0xba13xc):this[_0x376c[63]](_0xba13xc);this[_0x376c[64]](_0xba13x11,_0xba13xd);this[_0x376c[65]](_0xba13x11,_0xba13xe,_0xba13x12);this[_0x376c[1]][_0x376c[66]](_0xba13x11);return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[33]]=function(){var _0xba13x11=document[_0x376c[68]](_0x376c[67]);_0xba13x11[_0x376c[69]]=_0x376c[70];this[_0x376c[1]][_0x376c[66]](_0xba13x11);return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[21]]=function(_0xba13x13){for(var _0xba13x14=0;_0xba13x14<_0xba13x13[_0x376c[47]];_0xba13x14++){var _0xba13x15=_0xba13x13[_0xba13x14];if(_0xba13x15==_0x376c[9]){this[_0x376c[33]]()}else {this[_0x376c[73]](_0x376c[71]+_0xba13x15[_0x376c[72]](),_0xba13x15)}}};Toolbar[_0x376c[6]][_0x376c[73]]=function(_0xba13x16,_0xba13x15){var _0xba13x17=this[_0x376c[0]][_0x376c[74]][_0x376c[24]](_0xba13x15);var _0xba13x11=null;if(_0xba13x17!=null){_0xba13x11=this[_0x376c[76]](_0xba13x16,_0xba13x17[_0x376c[75]],_0xba13x17[_0x376c[57]]);_0xba13x11[_0x376c[61]](_0xba13x17[_0x376c[60]]);_0xba13x17[_0x376c[51]](_0x376c[59],function(){_0xba13x11[_0x376c[61]](_0xba13x17[_0x376c[60]])})};return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[76]]=function(_0xba13x18,_0xba13xd,_0xba13x12){var _0xba13x11=this[_0x376c[63]](_0xba13x18);this[_0x376c[64]](_0xba13x11,_0xba13xd);this[_0x376c[77]](_0xba13x11,_0xba13x12);this[_0x376c[1]][_0x376c[66]](_0xba13x11);return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[78]]=function(_0xba13x19){var _0xba13x7=this[_0x376c[0]][_0x376c[41]][_0x376c[40]];var _0xba13x1a=function(){var _0xba13x1b=!_0xba13x7[_0x376c[79]]();for(var _0xba13x14=0;_0xba13x14<_0xba13x19[_0x376c[47]];_0xba13x14++){_0xba13x19[_0xba13x14][_0x376c[61]](_0xba13x1b)}};_0xba13x7[_0x376c[52]]()[_0x376c[51]](mxEvent.CHANGE,_0xba13x1a);_0xba13x1a()};Toolbar[_0x376c[6]][_0x376c[80]]=function(_0xba13x19){var _0xba13x7=this[_0x376c[0]][_0x376c[41]][_0x376c[40]];var _0xba13x1a=function(){var _0xba13x1c=false;if(!_0xba13x7[_0x376c[79]]()){var _0xba13x1d=_0xba13x7[_0x376c[81]]();for(var _0xba13x14=0;_0xba13x14<_0xba13x1d[_0x376c[47]];_0xba13x14++){if(_0xba13x7[_0x376c[53]]()[_0x376c[82]](_0xba13x1d[_0xba13x14])){_0xba13x1c=true;break}}};for(var _0xba13x14=0;_0xba13x14<_0xba13x19[_0x376c[47]];_0xba13x14++){_0xba13x19[_0xba13x14][_0x376c[61]](_0xba13x1c)}};_0xba13x7[_0x376c[52]]()[_0x376c[51]](mxEvent.CHANGE,_0xba13x1a);_0xba13x1a()};Toolbar[_0x376c[6]][_0x376c[64]]=function(_0xba13x11,_0xba13xd){_0xba13x11[_0x376c[85]](_0x376c[83],_0x376c[84]);if(_0xba13xd!=null){_0xba13x11[_0x376c[85]](_0x376c[86],_0xba13xd)};this[_0x376c[87]](_0xba13x11)};Toolbar[_0x376c[6]][_0x376c[87]]=function(_0xba13x11){var _0xba13x18=_0xba13x11[_0x376c[69]];_0xba13x11[_0x376c[61]]=function(_0xba13x1e){_0xba13x11[_0x376c[60]]=_0xba13x1e;if(_0xba13x1e){_0xba13x11[_0x376c[69]]=_0xba13x18}else {_0xba13x11[_0x376c[69]]=_0xba13x18+_0x376c[88]}};_0xba13x11[_0x376c[61]](true)};Toolbar[_0x376c[6]][_0x376c[77]]=function(_0xba13x11,_0xba13x12){if(_0xba13x12!=null){mxEvent[_0x376c[51]](_0xba13x11,_0x376c[89],function(_0xba13x4){if(_0xba13x11[_0x376c[60]]){_0xba13x12(_0xba13x4)};mxEvent[_0x376c[90]](_0xba13x4)})}};Toolbar[_0x376c[6]][_0x376c[63]]=function(_0xba13x18){var _0xba13x11=document[_0x376c[68]](_0x376c[91]);_0xba13x11[_0x376c[85]](_0x376c[92],_0x376c[93]);_0xba13x11[_0x376c[69]]=_0x376c[94];var _0xba13x1f=document[_0x376c[68]](_0x376c[67]);_0xba13x1f[_0x376c[69]]=_0x376c[95]+_0xba13x18;_0xba13x11[_0x376c[66]](_0xba13x1f);return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[62]]=function(_0xba13xc,_0xba13xd){var _0xba13x11=document[_0x376c[68]](_0x376c[91]);_0xba13x11[_0x376c[85]](_0x376c[92],_0x376c[93]);_0xba13x11[_0x376c[69]]=_0x376c[96];mxUtils[_0x376c[97]](_0xba13x11,_0xba13xc);return _0xba13x11};Toolbar[_0x376c[6]][_0x376c[65]]=function(_0xba13x11,_0xba13xe,_0xba13x12,_0xba13x20){if(_0xba13x12!=null){var _0xba13x7=this[_0x376c[0]][_0x376c[41]][_0x376c[40]];var _0xba13x10=null;mxEvent[_0x376c[51]](_0xba13x11,_0x376c[89],mxUtils[_0x376c[4]](this,function(_0xba13x4){if(_0xba13x11[_0x376c[60]]==null||_0xba13x11[_0x376c[60]]){_0xba13x7[_0x376c[98]][_0x376c[3]]();_0xba13x10= new mxPopupMenu(_0xba13x12);_0xba13x10[_0x376c[67]][_0x376c[69]]+=_0x376c[99];_0xba13x10[_0x376c[100]]=_0xba13x20;_0xba13x10[_0x376c[101]]=_0xba13xe;_0xba13x10[_0x376c[102]]=true;_0xba13x10[_0x376c[106]](_0xba13x11[_0x376c[103]],_0xba13x11[_0x376c[104]]+_0xba13x11[_0x376c[105]]+34,null,_0xba13x4);this[_0x376c[54]]=_0xba13x10};mxEvent[_0x376c[90]](_0xba13x4)}))}} \ No newline at end of file +var _0x425d=["\x65\x64\x69\x74\x6F\x72\x55\x69","\x63\x6F\x6E\x74\x61\x69\x6E\x65\x72","\x69\x6E\x69\x74","\x68\x69\x64\x65\x4D\x65\x6E\x75","\x62\x69\x6E\x64","\x61\x64\x64\x47\x65\x73\x74\x75\x72\x65\x4C\x69\x73\x74\x65\x6E\x65\x72\x73","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x73\x61\x76\x65","\x70\x75\x62\x6C\x69\x73\x68","\x2D","\x70\x72\x69\x6E\x74","\x75\x6E\x64\x6F","\x72\x65\x64\x6F","\x63\x6F\x70\x79","\x63\x75\x74","\x70\x61\x73\x74\x65","\x64\x65\x6C\x65\x74\x65","\x64\x75\x70\x6C\x69\x63\x61\x74\x65","\x61\x63\x74\x75\x61\x6C\x53\x69\x7A\x65","\x7A\x6F\x6F\x6D\x49\x6E","\x7A\x6F\x6F\x6D\x4F\x75\x74","\x61\x64\x64\x49\x74\x65\x6D\x73","\x48\x65\x6C\x76\x65\x74\x69\x63\x61","\x66\x6F\x6E\x74\x46\x61\x6D\x69\x6C\x79","\x67\x65\x74","\x61\x64\x64\x4D\x65\x6E\x75","\x77\x68\x69\x74\x65\x53\x70\x61\x63\x65","\x73\x74\x79\x6C\x65","\x6E\x6F\x77\x72\x61\x70","\x6F\x76\x65\x72\x66\x6C\x6F\x77","\x68\x69\x64\x64\x65\x6E","\x77\x69\x64\x74\x68","\x37\x30\x70\x78","\x61\x64\x64\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x31\x32","\x66\x6F\x6E\x74\x53\x69\x7A\x65","\x33\x30\x70\x78","\x62\x6F\x6C\x64","\x69\x74\x61\x6C\x69\x63","\x75\x6E\x64\x65\x72\x6C\x69\x6E\x65","\x67\x72\x61\x70\x68","\x65\x64\x69\x74\x6F\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C","\x67\x65\x74\x53\x74\x61\x74\x65","\x67\x65\x74\x56\x69\x65\x77","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x46\x41\x4D\x49\x4C\x59","\x53\x54\x59\x4C\x45\x5F\x46\x4F\x4E\x54\x53\x49\x5A\x45","\x6C\x65\x6E\x67\x74\x68","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x2E\x2E\x2E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x61\x64\x64\x4C\x69\x73\x74\x65\x6E\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x4D\x6F\x64\x65\x6C","\x67\x65\x74\x4D\x6F\x64\x65\x6C","\x63\x75\x72\x72\x65\x6E\x74\x4D\x65\x6E\x75","\x64\x65\x73\x74\x72\x6F\x79","\x6D\x65\x6E\x75\x73","\x66\x75\x6E\x63\x74","\x61\x64\x64\x4D\x65\x6E\x75\x46\x75\x6E\x63\x74\x69\x6F\x6E","\x73\x74\x61\x74\x65\x43\x68\x61\x6E\x67\x65\x64","\x65\x6E\x61\x62\x6C\x65\x64","\x73\x65\x74\x45\x6E\x61\x62\x6C\x65\x64","\x63\x72\x65\x61\x74\x65\x4C\x61\x62\x65\x6C","\x63\x72\x65\x61\x74\x65\x42\x75\x74\x74\x6F\x6E","\x69\x6E\x69\x74\x45\x6C\x65\x6D\x65\x6E\x74","\x61\x64\x64\x4D\x65\x6E\x75\x48\x61\x6E\x64\x6C\x65\x72","\x61\x70\x70\x65\x6E\x64\x43\x68\x69\x6C\x64","\x64\x69\x76","\x63\x72\x65\x61\x74\x65\x45\x6C\x65\x6D\x65\x6E\x74","\x63\x6C\x61\x73\x73\x4E\x61\x6D\x65","\x67\x65\x53\x65\x70\x61\x72\x61\x74\x6F\x72","\x67\x65\x53\x70\x72\x69\x74\x65\x2D","\x74\x6F\x4C\x6F\x77\x65\x72\x43\x61\x73\x65","\x61\x64\x64\x49\x74\x65\x6D","\x61\x63\x74\x69\x6F\x6E\x73","\x6C\x61\x62\x65\x6C","\x61\x64\x64\x42\x75\x74\x74\x6F\x6E","\x61\x64\x64\x43\x6C\x69\x63\x6B\x48\x61\x6E\x64\x6C\x65\x72","\x61\x64\x64\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x69\x73\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x45\x6D\x70\x74\x79","\x61\x64\x64\x45\x64\x67\x65\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x48\x61\x6E\x64\x6C\x65\x72","\x67\x65\x74\x53\x65\x6C\x65\x63\x74\x69\x6F\x6E\x43\x65\x6C\x6C\x73","\x69\x73\x45\x64\x67\x65","\x74\x61\x62\x69\x6E\x64\x65\x78","\x30","\x73\x65\x74\x41\x74\x74\x72\x69\x62\x75\x74\x65","\x74\x69\x74\x6C\x65","\x61\x64\x64\x45\x6E\x61\x62\x6C\x65\x64\x53\x74\x61\x74\x65","\x20\x67\x65\x44\x69\x73\x61\x62\x6C\x65\x64","\x63\x6C\x69\x63\x6B","\x63\x6F\x6E\x73\x75\x6D\x65","\x61","\x68\x72\x65\x66","\x6A\x61\x76\x61\x73\x63\x72\x69\x70\x74\x3A\x76\x6F\x69\x64\x28\x30\x29\x3B","\x67\x65\x42\x75\x74\x74\x6F\x6E","\x67\x65\x53\x70\x72\x69\x74\x65\x20","\x67\x65\x4C\x61\x62\x65\x6C","\x77\x72\x69\x74\x65","\x70\x61\x6E\x6E\x69\x6E\x67\x48\x61\x6E\x64\x6C\x65\x72","\x20\x67\x65\x54\x6F\x6F\x6C\x62\x61\x72\x4D\x65\x6E\x75","\x73\x68\x6F\x77\x44\x69\x73\x61\x62\x6C\x65\x64","\x6C\x61\x62\x65\x6C\x73","\x61\x75\x74\x6F\x45\x78\x70\x61\x6E\x64","\x6F\x66\x66\x73\x65\x74\x4C\x65\x66\x74","\x6F\x66\x66\x73\x65\x74\x54\x6F\x70","\x6F\x66\x66\x73\x65\x74\x48\x65\x69\x67\x68\x74","\x70\x6F\x70\x75\x70"];function Toolbar(_0x3055x2,_0x3055x3){this[_0x425d[0]]=_0x3055x2;this[_0x425d[1]]=_0x3055x3;this[_0x425d[2]]();mxEvent[_0x425d[5]](document,mxUtils[_0x425d[4]](this,function(_0x3055x4){this[_0x425d[3]]()}))}Toolbar[_0x425d[6]][_0x425d[2]]=function(){this[_0x425d[21]]([_0x425d[7],_0x425d[8],_0x425d[9],_0x425d[10],_0x425d[11],_0x425d[12],_0x425d[9],_0x425d[13],_0x425d[14],_0x425d[15],_0x425d[16],_0x425d[9],_0x425d[17],_0x425d[9],_0x425d[18],_0x425d[19],_0x425d[20],_0x425d[9]]);var _0x3055x5=this[_0x425d[25]](_0x425d[22],mxResources[_0x425d[24]](_0x425d[23]),true,_0x425d[23]);_0x3055x5[_0x425d[27]][_0x425d[26]]=_0x425d[28];_0x3055x5[_0x425d[27]][_0x425d[29]]=_0x425d[30];_0x3055x5[_0x425d[27]][_0x425d[31]]=_0x425d[32];this[_0x425d[33]]();var _0x3055x6=this[_0x425d[25]](_0x425d[34],mxResources[_0x425d[24]](_0x425d[35]),true,_0x425d[35]);_0x3055x6[_0x425d[27]][_0x425d[26]]=_0x425d[28];_0x3055x6[_0x425d[27]][_0x425d[29]]=_0x425d[30];_0x3055x6[_0x425d[27]][_0x425d[31]]=_0x425d[36];this[_0x425d[21]]([_0x425d[9],_0x425d[37],_0x425d[38],_0x425d[39]]);var _0x3055x7=this[_0x425d[0]][_0x425d[41]][_0x425d[40]];var _0x3055x8=mxUtils[_0x425d[4]](this,function(){var _0x3055x9=_0x425d[22];var _0x3055xa=_0x425d[34];var _0x3055xb=_0x3055x7[_0x425d[44]]()[_0x425d[43]](_0x3055x7[_0x425d[42]]());if(_0x3055xb!=null){_0x3055x9=_0x3055xb[_0x425d[27]][mxConstants[_0x425d[45]]]||_0x3055x9;_0x3055xa=_0x3055xb[_0x425d[27]][mxConstants[_0x425d[46]]]||_0x3055xa;if(_0x3055x9[_0x425d[47]]>10){_0x3055x9=_0x3055x9[_0x425d[48]](0,8)+_0x425d[49]};_0x3055x5[_0x425d[50]]=_0x3055x9;_0x3055x6[_0x425d[50]]=_0x3055xa}});_0x3055x7[_0x425d[52]]()[_0x425d[51]](mxEvent.CHANGE,_0x3055x8);_0x3055x7[_0x425d[53]]()[_0x425d[51]](mxEvent.CHANGE,_0x3055x8)};Toolbar[_0x425d[6]][_0x425d[3]]=function(){if(this[_0x425d[54]]!=null){this[_0x425d[54]][_0x425d[3]]();this[_0x425d[54]][_0x425d[55]]();this[_0x425d[54]]=null}};Toolbar[_0x425d[6]][_0x425d[25]]=function(_0x3055xc,_0x3055xd,_0x3055xe,_0x3055xf){var _0x3055x10=this[_0x425d[0]][_0x425d[56]][_0x425d[24]](_0x3055xf);var _0x3055x11=this[_0x425d[58]](_0x3055xc,_0x3055xd,_0x3055xe,_0x3055x10[_0x425d[57]]);_0x3055x10[_0x425d[51]](_0x425d[59],function(){_0x3055x11[_0x425d[61]](_0x3055x10[_0x425d[60]])});return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[58]]=function(_0x3055xc,_0x3055xd,_0x3055xe,_0x3055x12){var _0x3055x11=(_0x3055xe)?this[_0x425d[62]](_0x3055xc):this[_0x425d[63]](_0x3055xc);this[_0x425d[64]](_0x3055x11,_0x3055xd);this[_0x425d[65]](_0x3055x11,_0x3055xe,_0x3055x12);this[_0x425d[1]][_0x425d[66]](_0x3055x11);return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[33]]=function(){var _0x3055x11=document[_0x425d[68]](_0x425d[67]);_0x3055x11[_0x425d[69]]=_0x425d[70];this[_0x425d[1]][_0x425d[66]](_0x3055x11);return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[21]]=function(_0x3055x13){for(var _0x3055x14=0;_0x3055x14<_0x3055x13[_0x425d[47]];_0x3055x14++){var _0x3055x15=_0x3055x13[_0x3055x14];if(_0x3055x15==_0x425d[9]){this[_0x425d[33]]()}else {this[_0x425d[73]](_0x425d[71]+_0x3055x15[_0x425d[72]](),_0x3055x15)}}};Toolbar[_0x425d[6]][_0x425d[73]]=function(_0x3055x16,_0x3055x15){var _0x3055x17=this[_0x425d[0]][_0x425d[74]][_0x425d[24]](_0x3055x15);var _0x3055x11=null;if(_0x3055x17!=null){_0x3055x11=this[_0x425d[76]](_0x3055x16,_0x3055x17[_0x425d[75]],_0x3055x17[_0x425d[57]]);_0x3055x11[_0x425d[61]](_0x3055x17[_0x425d[60]]);_0x3055x17[_0x425d[51]](_0x425d[59],function(){_0x3055x11[_0x425d[61]](_0x3055x17[_0x425d[60]])})};return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[76]]=function(_0x3055x18,_0x3055xd,_0x3055x12){var _0x3055x11=this[_0x425d[63]](_0x3055x18);this[_0x425d[64]](_0x3055x11,_0x3055xd);this[_0x425d[77]](_0x3055x11,_0x3055x12);this[_0x425d[1]][_0x425d[66]](_0x3055x11);return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[78]]=function(_0x3055x19){var _0x3055x7=this[_0x425d[0]][_0x425d[41]][_0x425d[40]];var _0x3055x1a=function(){var _0x3055x1b=!_0x3055x7[_0x425d[79]]();for(var _0x3055x14=0;_0x3055x14<_0x3055x19[_0x425d[47]];_0x3055x14++){_0x3055x19[_0x3055x14][_0x425d[61]](_0x3055x1b)}};_0x3055x7[_0x425d[52]]()[_0x425d[51]](mxEvent.CHANGE,_0x3055x1a);_0x3055x1a()};Toolbar[_0x425d[6]][_0x425d[80]]=function(_0x3055x19){var _0x3055x7=this[_0x425d[0]][_0x425d[41]][_0x425d[40]];var _0x3055x1a=function(){var _0x3055x1c=false;if(!_0x3055x7[_0x425d[79]]()){var _0x3055x1d=_0x3055x7[_0x425d[81]]();for(var _0x3055x14=0;_0x3055x14<_0x3055x1d[_0x425d[47]];_0x3055x14++){if(_0x3055x7[_0x425d[53]]()[_0x425d[82]](_0x3055x1d[_0x3055x14])){_0x3055x1c=true;break}}};for(var _0x3055x14=0;_0x3055x14<_0x3055x19[_0x425d[47]];_0x3055x14++){_0x3055x19[_0x3055x14][_0x425d[61]](_0x3055x1c)}};_0x3055x7[_0x425d[52]]()[_0x425d[51]](mxEvent.CHANGE,_0x3055x1a);_0x3055x1a()};Toolbar[_0x425d[6]][_0x425d[64]]=function(_0x3055x11,_0x3055xd){_0x3055x11[_0x425d[85]](_0x425d[83],_0x425d[84]);if(_0x3055xd!=null){_0x3055x11[_0x425d[85]](_0x425d[86],_0x3055xd)};this[_0x425d[87]](_0x3055x11)};Toolbar[_0x425d[6]][_0x425d[87]]=function(_0x3055x11){var _0x3055x18=_0x3055x11[_0x425d[69]];_0x3055x11[_0x425d[61]]=function(_0x3055x1e){_0x3055x11[_0x425d[60]]=_0x3055x1e;if(_0x3055x1e){_0x3055x11[_0x425d[69]]=_0x3055x18}else {_0x3055x11[_0x425d[69]]=_0x3055x18+_0x425d[88]}};_0x3055x11[_0x425d[61]](true)};Toolbar[_0x425d[6]][_0x425d[77]]=function(_0x3055x11,_0x3055x12){if(_0x3055x12!=null){mxEvent[_0x425d[51]](_0x3055x11,_0x425d[89],function(_0x3055x4){if(_0x3055x11[_0x425d[60]]){_0x3055x12(_0x3055x4)};mxEvent[_0x425d[90]](_0x3055x4)})}};Toolbar[_0x425d[6]][_0x425d[63]]=function(_0x3055x18){var _0x3055x11=document[_0x425d[68]](_0x425d[91]);_0x3055x11[_0x425d[85]](_0x425d[92],_0x425d[93]);_0x3055x11[_0x425d[69]]=_0x425d[94];var _0x3055x1f=document[_0x425d[68]](_0x425d[67]);_0x3055x1f[_0x425d[69]]=_0x425d[95]+_0x3055x18;_0x3055x11[_0x425d[66]](_0x3055x1f);return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[62]]=function(_0x3055xc,_0x3055xd){var _0x3055x11=document[_0x425d[68]](_0x425d[91]);_0x3055x11[_0x425d[85]](_0x425d[92],_0x425d[93]);_0x3055x11[_0x425d[69]]=_0x425d[96];mxUtils[_0x425d[97]](_0x3055x11,_0x3055xc);return _0x3055x11};Toolbar[_0x425d[6]][_0x425d[65]]=function(_0x3055x11,_0x3055xe,_0x3055x12,_0x3055x20){if(_0x3055x12!=null){var _0x3055x7=this[_0x425d[0]][_0x425d[41]][_0x425d[40]];var _0x3055x10=null;mxEvent[_0x425d[51]](_0x3055x11,_0x425d[89],mxUtils[_0x425d[4]](this,function(_0x3055x4){if(_0x3055x11[_0x425d[60]]==null||_0x3055x11[_0x425d[60]]){_0x3055x7[_0x425d[98]][_0x425d[3]]();_0x3055x10= new mxPopupMenu(_0x3055x12);_0x3055x10[_0x425d[67]][_0x425d[69]]+=_0x425d[99];_0x3055x10[_0x425d[100]]=_0x3055x20;_0x3055x10[_0x425d[101]]=_0x3055xe;_0x3055x10[_0x425d[102]]=true;_0x3055x10[_0x425d[106]](_0x3055x11[_0x425d[103]],_0x3055x11[_0x425d[104]]+_0x3055x11[_0x425d[105]]+34,null,_0x3055x4);this[_0x425d[54]]=_0x3055x10};mxEvent[_0x425d[90]](_0x3055x4)}))}} \ No newline at end of file diff --git a/public/assets/plugins/square/js/custom.js b/public/assets/plugins/square/js/custom.js index 9330103..6f7a8b5 100644 --- a/public/assets/plugins/square/js/custom.js +++ b/public/assets/plugins/square/js/custom.js @@ -1 +1 @@ -var _0x70c5=["\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x26","\x73\x70\x6C\x69\x74","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x3D","\x69\x6E\x64\x65\x78\x4F\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x65\x78\x70\x2E\x64\x72\x61\x77\x2E\x69\x6F\x2F\x49\x6D\x61\x67\x65\x45\x78\x70\x6F\x72\x74\x32\x2F\x65\x78\x70\x6F\x72\x74","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x33\x30\x30\x30","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x73\x74\x65\x6E\x63\x69\x6C\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x73\x68\x61\x70\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x74\x79\x6C\x65\x73","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x6F\x70\x65\x6E","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x2F\x64\x69\x61","\x65\x6E","\x63\x75\x73\x74\x6F\x6D","\x4E\x47\x5F\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x4C\x41\x4E\x47\x5F\x4B\x45\x59","\x67\x65\x74\x49\x74\x65\x6D","\x6C\x6F\x67","\x65\x6E\x5F\x45\x4E","\x69\x74","\x6D\x78\x4C\x61\x6E\x67\x75\x61\x67\x65","\x61\x72","\x62\x73","\x63\x73","\x64\x61","\x64\x65","\x65\x6C","\x65\x73","\x65\x73\x2D\x61\x72","\x66\x72","\x68\x75","\x69\x64","\x6A\x61","\x6B\x6F","\x6E\x6C","\x6E\x6F","\x70\x6C","\x70\x74\x2D\x62\x72","\x70\x74","\x72\x6F","\x72\x75","\x73\x72","\x73\x76","\x74\x68","\x74\x72","\x75\x6B","\x7A\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x6A\x73","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x20\x43\x61\x6E\x74\x6F\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x54\x61\x69\x77\x61\x6E\x20\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x4D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x42\x72\x61\x7A\x69\x6C\x69\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x61\x74\x61\x6C\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x7A\x65\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x75\x74\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x49\x74\x61\x6C\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65\x09","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x4D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x4D\x61\x6C\x65","\x53\x77\x65\x64\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x53\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x4B\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x53\x70\x61\x69\x6E\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x4D\x65\x78\x69\x63\x6F\x29","\x49\x74\x61\x6C\x69\x61\x6E\x20\x28\x49\x74\x61\x6C\x79\x29\x20\x2F\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x28\x46\x69\x6E\x6C\x61\x6E\x64\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x46\x72\x61\x6E\x63\x65\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x50\x6F\x6C\x69\x73\x68\x20\x28\x50\x6F\x6C\x61\x6E\x64\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x50\x6F\x72\x74\x75\x67\x61\x6C\x29","\x43\x61\x74\x61\x6C\x61\x6E\x20\x28\x43\x61\x74\x61\x6C\x61\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x61\x69\x77\x61\x6E\x29","\x44\x61\x6E\x69\x73\x68\x20\x28\x44\x65\x6E\x6D\x61\x72\x6B\x29","\x47\x65\x72\x6D\x61\x6E\x20\x28\x47\x65\x72\x6D\x61\x6E\x79\x29","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x28\x4A\x61\x70\x61\x6E\x29","\x4B\x6F\x72\x65\x61\x6E\x20\x28\x4B\x6F\x72\x65\x61\x29","\x44\x75\x74\x63\x68\x20\x28\x4E\x65\x74\x68\x65\x72\x6C\x61\x6E\x64\x73\x29","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x6F\x72\x77\x61\x79\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x42\x72\x61\x7A\x69\x6C\x29","\x52\x75\x73\x73\x69\x61\x6E\x20\x28\x52\x75\x73\x73\x69\x61\x29","\x53\x77\x65\x64\x69\x73\x68\x20\x28\x53\x77\x65\x64\x65\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x43\x68\x69\x6E\x61\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x29","\x44\x65\x66\x61\x75\x6C\x74","\x44\x61\x74\x65","\x55\x53\x20\x4D\x6F\x6E\x65\x79","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39\x39","\x54\x69\x6D\x65","\x50\x68\x6F\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72","\x53\x74\x72\x65\x65\x74\x73","\x55\x53\x20\x43\x69\x74\x79\x2F\x53\x74\x61\x74\x65\x73","\x59\x65\x73","\x4E\x6F","\x41\x66\x72\x69\x6B\x61\x61\x6E\x73","\x41\x6C\x62\x61\x6E\x69\x61\x6E","\x41\x6D\x68\x61\x72\x69\x63","\x41\x72\x61\x62\x69\x63","\x41\x72\x6D\x65\x6E\x69\x61\x6E","\x41\x7A\x65\x72\x62\x61\x69\x6A\x61\x6E\x69","\x42\x61\x73\x71\x75\x65","\x42\x65\x6C\x61\x72\x75\x73\x69\x61\x6E","\x42\x65\x6E\x67\x61\x6C\x69","\x42\x69\x68\x61\x72\x69","\x42\x6F\x73\x6E\x69\x61\x6E","\x42\x72\x65\x74\x6F\x6E","\x42\x75\x6C\x67\x61\x72\x69\x61\x6E","\x43\x61\x6D\x62\x6F\x64\x69\x61\x6E","\x43\x61\x74\x61\x6C\x61\x6E","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x53\x69\x6D\x70\x6C\x69\x66\x69\x65\x64\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x72\x61\x64\x69\x74\x69\x6F\x6E\x61\x6C\x29","\x43\x6F\x72\x73\x69\x63\x61\x6E","\x43\x72\x6F\x61\x74\x69\x61\x6E","\x43\x7A\x65\x63\x68","\x44\x61\x6E\x69\x73\x68","\x44\x75\x74\x63\x68","\x45\x6E\x67\x6C\x69\x73\x68","\x45\x73\x70\x65\x72\x61\x6E\x74\x6F","\x45\x73\x74\x6F\x6E\x69\x61\x6E","\x46\x61\x72\x6F\x65\x73\x65","\x46\x69\x6C\x69\x70\x69\x6E\x6F","\x46\x69\x6E\x6E\x69\x73\x68","\x46\x72\x65\x6E\x63\x68","\x46\x72\x69\x73\x69\x61\x6E","\x47\x61\x6C\x69\x63\x69\x61\x6E","\x47\x65\x6F\x72\x67\x69\x61\x6E","\x47\x65\x72\x6D\x61\x6E","\x47\x72\x65\x65\x6B","\x47\x75\x61\x72\x61\x6E\x69","\x47\x75\x6A\x61\x72\x61\x74\x69","\x48\x61\x63\x6B\x65\x72","\x48\x61\x75\x73\x61","\x48\x65\x62\x72\x65\x77","\x48\x69\x6E\x64\x69","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E","\x49\x63\x65\x6C\x61\x6E\x64\x69\x63","\x49\x6E\x64\x6F\x6E\x65\x73\x69\x61\x6E","\x49\x6E\x74\x65\x72\x6C\x69\x6E\x67\x75\x61","\x49\x72\x69\x73\x68","\x49\x74\x61\x6C\x69\x61\x6E","\x4A\x61\x76\x61\x6E\x65\x73\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65","\x4B\x61\x6E\x6E\x61\x64\x61","\x4B\x61\x7A\x61\x6B\x68","\x4B\x69\x6E\x79\x61\x72\x77\x61\x6E\x64\x61","\x4B\x69\x72\x75\x6E\x64\x69","\x4B\x6C\x69\x6E\x67\x6F\x6E","\x4B\x75\x72\x64\x69\x73\x68","\x4B\x6F\x72\x65\x61\x6E","\x4B\x79\x72\x67\x79\x7A","\x4C\x61\x6F\x74\x68\x69\x61\x6E","\x4C\x61\x74\x69\x6E","\x4C\x61\x74\x76\x69\x61\x6E","\x4C\x69\x6E\x67\x61\x6C\x61","\x4C\x69\x74\x68\x75\x61\x6E\x69\x61\x6E","\x4D\x61\x63\x65\x64\x6F\x6E\x69\x61\x6E","\x4D\x61\x6C\x61\x67\x61\x73\x79","\x4D\x61\x6C\x61\x79","\x4D\x61\x6C\x61\x79\x61\x6C\x61\x6D","\x4D\x61\x6C\x74\x65\x73\x65","\x4D\x61\x6F\x72\x69","\x4D\x61\x72\x61\x74\x68\x69","\x4D\x6F\x6C\x64\x61\x76\x69\x61\x6E","\x4D\x6F\x6E\x67\x6F\x6C\x69\x61\x6E","\x4D\x6F\x6E\x74\x65\x6E\x65\x67\x72\x69\x6E","\x4E\x65\x70\x61\x6C\x69","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x79\x6E\x6F\x72\x73\x6B\x29","\x4F\x63\x63\x69\x74\x61\x6E","\x4F\x72\x69\x79\x61","\x4F\x72\x6F\x6D\x6F","\x50\x61\x73\x68\x74\x6F","\x50\x65\x72\x73\x69\x61\x6E","\x50\x69\x72\x61\x74\x65","\x50\x6F\x6C\x69\x73\x68","\x50\x75\x6E\x6A\x61\x62\x69","\x51\x75\x65\x63\x68\x75\x61","\x52\x6F\x6D\x61\x6E\x69\x61\x6E","\x52\x6F\x6D\x61\x6E\x73\x68","\x52\x75\x73\x73\x69\x61\x6E","\x53\x63\x6F\x74\x73\x20\x47\x61\x65\x6C\x69\x63","\x53\x65\x72\x62\x69\x61\x6E","\x53\x65\x72\x62\x6F\x2D\x43\x72\x6F\x61\x74\x69\x61\x6E","\x53\x65\x73\x6F\x74\x68\x6F","\x53\x68\x6F\x6E\x61","\x53\x69\x6E\x64\x68\x69","\x53\x69\x6E\x68\x61\x6C\x65\x73\x65","\x53\x6C\x6F\x76\x61\x6B","\x53\x6C\x6F\x76\x65\x6E\x69\x61\x6E","\x53\x6F\x6D\x61\x6C\x69","\x53\x70\x61\x6E\x69\x73\x68","\x53\x75\x6E\x64\x61\x6E\x65\x73\x65","\x53\x77\x61\x68\x69\x6C\x69","\x53\x77\x65\x64\x69\x73\x68","\x54\x61\x6A\x69\x6B","\x54\x61\x6D\x69\x6C","\x54\x61\x74\x61\x72","\x54\x65\x6C\x75\x67\x75","\x54\x68\x61\x69","\x54\x69\x67\x72\x69\x6E\x79\x61","\x54\x6F\x6E\x67\x61","\x54\x75\x72\x6B\x69\x73\x68","\x54\x75\x72\x6B\x6D\x65\x6E","\x54\x77\x69","\x55\x69\x67\x68\x75\x72","\x55\x6B\x72\x61\x69\x6E\x69\x61\x6E","\x55\x72\x64\x75","\x55\x7A\x62\x65\x6B","\x56\x69\x65\x74\x6E\x61\x6D\x65\x73\x65","\x57\x65\x6C\x73\x68","\x58\x68\x6F\x73\x61","\x59\x69\x64\x64\x69\x73\x68","\x59\x6F\x72\x75\x62\x61","\x5A\x75\x6C\x75"];var urlParams=(function(_0x4ba4x2){var _0x4ba4x3= new Object();var _0x4ba4x4=_0x4ba4x2[_0x70c5[3]](_0x70c5[2]);if(_0x4ba4x4>0){var _0x4ba4x5=_0x4ba4x2[_0x70c5[6]](_0x4ba4x4+1)[_0x70c5[5]](_0x70c5[4]);for(var _0x4ba4x6=0;_0x4ba4x6<_0x4ba4x5[_0x70c5[7]];_0x4ba4x6++){_0x4ba4x4=_0x4ba4x5[_0x4ba4x6][_0x70c5[9]](_0x70c5[8]);if(_0x4ba4x4>0){_0x4ba4x3[_0x4ba4x5[_0x4ba4x6][_0x70c5[6]](0,_0x4ba4x4)]=_0x4ba4x5[_0x4ba4x6][_0x70c5[6]](_0x4ba4x4+1)}}};return _0x4ba4x3})(window[_0x70c5[1]][_0x70c5[0]]);var t0= new Date();var MAX_REQUEST_SIZE=10485760;var MAX_WIDTH=12000;var MAX_HEIGHT=12000;var EXPORT_URL=_0x70c5[10];var SHARE_HOST=_0x70c5[11];var SAVE_URL=_0x70c5[12];var VARIABLE_URL=_0x70c5[13];var STENCIL_PATH=_0x70c5[14];var SHAPES_PATH=_0x70c5[15];var IMAGE_PATH=_0x70c5[16];var STYLE_PATH=_0x70c5[17];var CSS_PATH=_0x70c5[17];var OPEN_FORM=_0x70c5[18];var TEMPLATE_PATH=_0x70c5[19];var RESOURCES_PATH=_0x70c5[20];var RESOURCE_BASE=RESOURCES_PATH+_0x70c5[21];var tapAndHoldStartsConnection=true;var showConnectorImg=true;var mxLoadResources=false;var mxLanguage=_0x70c5[22];console[_0x70c5[26]](_0x70c5[23],localStorage[_0x70c5[25]](_0x70c5[24]));switch(localStorage[_0x70c5[25]](_0x70c5[24])){case _0x70c5[27]:mxLanguage=_0x70c5[22];break;case _0x70c5[28]:mxLanguage=_0x70c5[28];break;default:mxLanguage=_0x70c5[22]};console[_0x70c5[26]](_0x70c5[29],mxLanguage);var mxLanguages=[_0x70c5[30],_0x70c5[31],_0x70c5[32],_0x70c5[33],_0x70c5[34],_0x70c5[35],_0x70c5[36],_0x70c5[37],_0x70c5[38],_0x70c5[39],_0x70c5[40],_0x70c5[28],_0x70c5[41],_0x70c5[42],_0x70c5[43],_0x70c5[44],_0x70c5[45],_0x70c5[46],_0x70c5[47],_0x70c5[48],_0x70c5[49],_0x70c5[50],_0x70c5[51],_0x70c5[52],_0x70c5[53],_0x70c5[54],_0x70c5[55]];var mxBasePath=_0x70c5[56];var geBasePath=_0x70c5[57];var ISPEECHLANG={usenglishfemale:_0x70c5[58],usenglishmale:_0x70c5[59],ukenglishfemale:_0x70c5[60],ukenglishmale:_0x70c5[61],auenglishfemale:_0x70c5[62],usspanishfemale:_0x70c5[63],usspanishmale:_0x70c5[64],chchinesefemale:_0x70c5[65],chchinesemale:_0x70c5[66],hkchinesefemale:_0x70c5[67],twchinesefemale:_0x70c5[68],jpjapanesefemale:_0x70c5[69],jpjapanesemale:_0x70c5[70],krkoreanfemale:_0x70c5[71],krkoreanmale:_0x70c5[72],caenglishfemale:_0x70c5[73],huhungarianfemale:_0x70c5[74],brportuguesefemale:_0x70c5[75],eurportuguesefemale:_0x70c5[76],eurportuguesemale:_0x70c5[77],eurspanishfemale:_0x70c5[78],eurspanishmale:_0x70c5[79],eurcatalanfemale:_0x70c5[80],eurczechfemale:_0x70c5[81],eurdanishfemale:_0x70c5[82],eurfinnishfemale:_0x70c5[83],eurfrenchfemale:_0x70c5[84],eurfrenchmale:_0x70c5[85],eurnorwegianfemale:_0x70c5[86],eurdutchfemale:_0x70c5[87],eurpolishfemale:_0x70c5[88],euritalianfemale:_0x70c5[89],eurturkishfemale:_0x70c5[90],eurturkishmale:_0x70c5[91],eurgermanfemale:_0x70c5[92],eurgermanmale:_0x70c5[93],rurussianfemale:_0x70c5[94],rurussianmale:_0x70c5[95],swswedishfemale:_0x70c5[96],cafrenchfemale:_0x70c5[97],cafrenchmale:_0x70c5[98]};var ISPEECHASRLANG={"\x65\x6E\x2D\x55\x53":_0x70c5[99],"\x65\x6E\x2D\x43\x41":_0x70c5[100],"\x65\x6E\x2D\x47\x42":_0x70c5[101],"\x65\x6E\x2D\x41\x55":_0x70c5[102],"\x65\x73\x2D\x45\x53":_0x70c5[103],"\x65\x73\x2D\x4D\x58":_0x70c5[104],"\x69\x74\x2D\x49\x54":_0x70c5[105],"\x66\x72\x2D\x46\x52":_0x70c5[106],"\x66\x72\x2D\x43\x41":_0x70c5[107],"\x70\x6C\x2D\x50\x4C":_0x70c5[108],"\x70\x74\x2D\x50\x54":_0x70c5[109],"\x63\x61\x2D\x45\x53":_0x70c5[110],"\x7A\x68\x2D\x54\x57":_0x70c5[111],"\x64\x61\x2D\x44\x4B":_0x70c5[112],"\x66\x72\x2D\x46\x52":_0x70c5[113],"\x6A\x61\x2D\x4A\x50":_0x70c5[114],"\x6B\x6F\x2D\x4B\x52":_0x70c5[115],"\x6E\x6C\x2D\x4E\x4C":_0x70c5[116],"\x6E\x62\x2D\x4E\x4F":_0x70c5[117],"\x70\x74\x2D\x42\x52":_0x70c5[118],"\x72\x75\x2D\x52\x55":_0x70c5[119],"\x73\x76\x2D\x53\x45":_0x70c5[120],"\x7A\x68\x2D\x43\x4E":_0x70c5[121],"\x7A\x68\x2D\x48\x4B":_0x70c5[122]};var ISPEECHASRMODEL={0:_0x70c5[123],date:_0x70c5[124],usmoney:_0x70c5[125],numbersto9:_0x70c5[126],numbersto99:_0x70c5[127],numbersto999:_0x70c5[128],time:_0x70c5[129],phonenumber:_0x70c5[130],streets:_0x70c5[131],citystate:_0x70c5[132]};var ISPEECHBEEP={"\x42\x45\x45\x50":_0x70c5[133],"\x4E\x4F\x42\x45\x45\x50":_0x70c5[134]};var GOOGLETTSLANG={"\x61\x66":_0x70c5[135],"\x73\x71":_0x70c5[136],"\x61\x6D":_0x70c5[137],"\x61\x72":_0x70c5[138],"\x68\x79":_0x70c5[139],"\x61\x7A":_0x70c5[140],"\x65\x75":_0x70c5[141],"\x62\x65":_0x70c5[142],"\x62\x6E":_0x70c5[143],"\x62\x68":_0x70c5[144],"\x62\x73":_0x70c5[145],"\x62\x72":_0x70c5[146],"\x62\x67":_0x70c5[147],"\x6B\x6D":_0x70c5[148],"\x63\x61":_0x70c5[149],"\x7A\x68\x2D\x43\x4E":_0x70c5[150],"\x7A\x68\x2D\x54\x57":_0x70c5[151],"\x63\x6F":_0x70c5[152],"\x68\x72":_0x70c5[153],"\x63\x73":_0x70c5[154],"\x64\x61":_0x70c5[155],"\x6E\x6C":_0x70c5[156],"\x65\x6E":_0x70c5[157],"\x65\x6F":_0x70c5[158],"\x65\x74":_0x70c5[159],"\x66\x6F":_0x70c5[160],"\x74\x6C":_0x70c5[161],"\x66\x69":_0x70c5[162],"\x66\x72":_0x70c5[163],"\x66\x79":_0x70c5[164],"\x67\x6C":_0x70c5[165],"\x6B\x61":_0x70c5[166],"\x64\x65":_0x70c5[167],"\x65\x6C":_0x70c5[168],"\x67\x6E":_0x70c5[169],"\x67\x75":_0x70c5[170],"\x78\x78\x2D\x68\x61\x63\x6B\x65\x72":_0x70c5[171],"\x68\x61":_0x70c5[172],"\x69\x77":_0x70c5[173],"\x68\x69":_0x70c5[174],"\x68\x75":_0x70c5[175],"\x69\x73":_0x70c5[176],"\x69\x64":_0x70c5[177],"\x69\x61":_0x70c5[178],"\x67\x61":_0x70c5[179],"\x69\x74":_0x70c5[180],"\x6A\x77":_0x70c5[181],"\x6A\x61":_0x70c5[182],"\x6B\x6E":_0x70c5[183],"\x6B\x6B":_0x70c5[184],"\x72\x77":_0x70c5[185],"\x72\x6E":_0x70c5[186],"\x78\x78\x2D\x6B\x6C\x69\x6E\x67\x6F\x6E":_0x70c5[187],"\x6B\x75":_0x70c5[188],"\x6B\x6F":_0x70c5[189],"\x6B\x79":_0x70c5[190],"\x6C\x6F":_0x70c5[191],"\x6C\x61":_0x70c5[192],"\x6C\x76":_0x70c5[193],"\x6C\x6E":_0x70c5[194],"\x6C\x74":_0x70c5[195],"\x6D\x6B":_0x70c5[196],"\x6D\x67":_0x70c5[197],"\x6D\x73":_0x70c5[198],"\x6D\x6C":_0x70c5[199],"\x6D\x74":_0x70c5[200],"\x6D\x69":_0x70c5[201],"\x6D\x72":_0x70c5[202],"\x6D\x6F":_0x70c5[203],"\x6D\x6E":_0x70c5[204],"\x73\x72\x2D\x4D\x45":_0x70c5[205],"\x6E\x65":_0x70c5[206],"\x6E\x6F":_0x70c5[207],"\x6E\x6E":_0x70c5[208],"\x6F\x63":_0x70c5[209],"\x6F\x72":_0x70c5[210],"\x6F\x6D":_0x70c5[211],"\x70\x73":_0x70c5[212],"\x66\x61":_0x70c5[213],"\x78\x78\x2D\x70\x69\x72\x61\x74\x65":_0x70c5[214],"\x70\x6C":_0x70c5[215],"\x70\x74\x2D\x42\x52":_0x70c5[118],"\x70\x74\x2D\x50\x54":_0x70c5[109],"\x70\x61":_0x70c5[216],"\x71\x75":_0x70c5[217],"\x72\x6F":_0x70c5[218],"\x72\x6D":_0x70c5[219],"\x72\x75":_0x70c5[220],"\x67\x64":_0x70c5[221],"\x73\x72":_0x70c5[222],"\x73\x68":_0x70c5[223],"\x73\x74":_0x70c5[224],"\x73\x6E":_0x70c5[225],"\x73\x64":_0x70c5[226],"\x73\x69":_0x70c5[227],"\x73\x6B":_0x70c5[228],"\x73\x6C":_0x70c5[229],"\x73\x6F":_0x70c5[230],"\x65\x73":_0x70c5[231],"\x73\x75":_0x70c5[232],"\x73\x77":_0x70c5[233],"\x73\x76":_0x70c5[234],"\x74\x67":_0x70c5[235],"\x74\x61":_0x70c5[236],"\x74\x74":_0x70c5[237],"\x74\x65":_0x70c5[238],"\x74\x68":_0x70c5[239],"\x74\x69":_0x70c5[240],"\x74\x6F":_0x70c5[241],"\x74\x72":_0x70c5[242],"\x74\x6B":_0x70c5[243],"\x74\x77":_0x70c5[244],"\x75\x67":_0x70c5[245],"\x75\x6B":_0x70c5[246],"\x75\x72":_0x70c5[247],"\x75\x7A":_0x70c5[248],"\x76\x69":_0x70c5[249],"\x63\x79":_0x70c5[250],"\x78\x68":_0x70c5[251],"\x79\x69":_0x70c5[252],"\x79\x6F":_0x70c5[253],"\x7A\x75":_0x70c5[254]} \ No newline at end of file +var _0xd4d5=["\x68\x72\x65\x66","\x6C\x6F\x63\x61\x74\x69\x6F\x6E","\x3F","\x6C\x61\x73\x74\x49\x6E\x64\x65\x78\x4F\x66","\x26","\x73\x70\x6C\x69\x74","\x73\x75\x62\x73\x74\x72\x69\x6E\x67","\x6C\x65\x6E\x67\x74\x68","\x3D","\x69\x6E\x64\x65\x78\x4F\x66","\x68\x74\x74\x70\x3A\x2F\x2F\x65\x78\x70\x2E\x64\x72\x61\x77\x2E\x69\x6F\x2F\x49\x6D\x61\x67\x65\x45\x78\x70\x6F\x72\x74\x32\x2F\x65\x78\x70\x6F\x72\x74","\x68\x74\x74\x70\x3A\x2F\x2F\x6C\x6F\x63\x61\x6C\x68\x6F\x73\x74\x3A\x33\x30\x30\x30","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F","\x2F\x61\x70\x69\x2F\x76\x61\x72\x69\x61\x62\x6C\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x73\x74\x65\x6E\x63\x69\x6C\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x73\x68\x61\x70\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x69\x6D\x61\x67\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x73\x74\x79\x6C\x65\x73","\x61\x70\x69\x2F\x73\x71\x75\x61\x72\x65\x2F\x70\x72\x6F\x6A\x65\x63\x74\x73\x2F\x6F\x70\x65\x6E","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x74\x65\x6D\x70\x6C\x61\x74\x65\x73","\x2F\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x73\x71\x75\x61\x72\x65\x2F\x72\x65\x73\x6F\x75\x72\x63\x65\x73","\x2F\x64\x69\x61","\x65\x6E","\x63\x75\x73\x74\x6F\x6D","\x4E\x47\x5F\x54\x52\x41\x4E\x53\x4C\x41\x54\x45\x5F\x4C\x41\x4E\x47\x5F\x4B\x45\x59","\x67\x65\x74\x49\x74\x65\x6D","\x6C\x6F\x67","\x65\x6E\x5F\x45\x4E","\x69\x74","\x6D\x78\x4C\x61\x6E\x67\x75\x61\x67\x65","\x61\x72","\x62\x73","\x63\x73","\x64\x61","\x64\x65","\x65\x6C","\x65\x73","\x65\x73\x2D\x61\x72","\x66\x72","\x68\x75","\x69\x64","\x6A\x61","\x6B\x6F","\x6E\x6C","\x6E\x6F","\x70\x6C","\x70\x74\x2D\x62\x72","\x70\x74","\x72\x6F","\x72\x75","\x73\x72","\x73\x76","\x74\x68","\x74\x72","\x75\x6B","\x7A\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68","\x61\x73\x73\x65\x74\x73\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x6D\x78\x67\x72\x61\x70\x68\x2F\x6A\x73","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x4B\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x4D\x61\x6C\x65","\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x55\x53\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x43\x68\x69\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x20\x43\x61\x6E\x74\x6F\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x54\x61\x69\x77\x61\x6E\x20\x43\x68\x69\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x4D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x4B\x6F\x72\x65\x61\x6E\x20\x4D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x45\x6E\x67\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x42\x72\x61\x7A\x69\x6C\x69\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x53\x70\x61\x6E\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x61\x74\x61\x6C\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x43\x7A\x65\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x61\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x44\x75\x74\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x50\x6F\x6C\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x49\x74\x61\x6C\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65\x09","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x54\x75\x72\x6B\x69\x73\x68\x20\x4D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x45\x75\x72\x6F\x70\x65\x61\x6E\x20\x47\x65\x72\x6D\x61\x6E\x20\x4D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x46\x65\x6D\x61\x6C\x65","\x52\x75\x73\x73\x69\x61\x6E\x20\x4D\x61\x6C\x65","\x53\x77\x65\x64\x69\x73\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x46\x65\x6D\x61\x6C\x65","\x43\x61\x6E\x61\x64\x69\x61\x6E\x20\x46\x72\x65\x6E\x63\x68\x20\x4D\x61\x6C\x65","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x53\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x55\x4B\x29","\x45\x6E\x67\x6C\x69\x73\x68\x20\x28\x41\x75\x73\x74\x72\x61\x6C\x69\x61\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x53\x70\x61\x69\x6E\x29","\x53\x70\x61\x6E\x69\x73\x68\x20\x28\x4D\x65\x78\x69\x63\x6F\x29","\x49\x74\x61\x6C\x69\x61\x6E\x20\x28\x49\x74\x61\x6C\x79\x29\x20\x2F\x20\x46\x69\x6E\x6E\x69\x73\x68\x20\x28\x46\x69\x6E\x6C\x61\x6E\x64\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x46\x72\x61\x6E\x63\x65\x29","\x46\x72\x65\x6E\x63\x68\x20\x28\x43\x61\x6E\x61\x64\x61\x29","\x50\x6F\x6C\x69\x73\x68\x20\x28\x50\x6F\x6C\x61\x6E\x64\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x50\x6F\x72\x74\x75\x67\x61\x6C\x29","\x43\x61\x74\x61\x6C\x61\x6E\x20\x28\x43\x61\x74\x61\x6C\x61\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x61\x69\x77\x61\x6E\x29","\x44\x61\x6E\x69\x73\x68\x20\x28\x44\x65\x6E\x6D\x61\x72\x6B\x29","\x47\x65\x72\x6D\x61\x6E\x20\x28\x47\x65\x72\x6D\x61\x6E\x79\x29","\x4A\x61\x70\x61\x6E\x65\x73\x65\x20\x28\x4A\x61\x70\x61\x6E\x29","\x4B\x6F\x72\x65\x61\x6E\x20\x28\x4B\x6F\x72\x65\x61\x29","\x44\x75\x74\x63\x68\x20\x28\x4E\x65\x74\x68\x65\x72\x6C\x61\x6E\x64\x73\x29","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x6F\x72\x77\x61\x79\x29","\x50\x6F\x72\x74\x75\x67\x75\x65\x73\x65\x20\x28\x42\x72\x61\x7A\x69\x6C\x29","\x52\x75\x73\x73\x69\x61\x6E\x20\x28\x52\x75\x73\x73\x69\x61\x29","\x53\x77\x65\x64\x69\x73\x68\x20\x28\x53\x77\x65\x64\x65\x6E\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x43\x68\x69\x6E\x61\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x48\x6F\x6E\x67\x20\x4B\x6F\x6E\x67\x29","\x44\x65\x66\x61\x75\x6C\x74","\x44\x61\x74\x65","\x55\x53\x20\x4D\x6F\x6E\x65\x79","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39","\x4E\x75\x6D\x62\x65\x72\x73\x20\x74\x6F\x20\x39\x39\x39","\x54\x69\x6D\x65","\x50\x68\x6F\x6E\x65\x20\x6E\x75\x6D\x62\x65\x72","\x53\x74\x72\x65\x65\x74\x73","\x55\x53\x20\x43\x69\x74\x79\x2F\x53\x74\x61\x74\x65\x73","\x59\x65\x73","\x4E\x6F","\x41\x66\x72\x69\x6B\x61\x61\x6E\x73","\x41\x6C\x62\x61\x6E\x69\x61\x6E","\x41\x6D\x68\x61\x72\x69\x63","\x41\x72\x61\x62\x69\x63","\x41\x72\x6D\x65\x6E\x69\x61\x6E","\x41\x7A\x65\x72\x62\x61\x69\x6A\x61\x6E\x69","\x42\x61\x73\x71\x75\x65","\x42\x65\x6C\x61\x72\x75\x73\x69\x61\x6E","\x42\x65\x6E\x67\x61\x6C\x69","\x42\x69\x68\x61\x72\x69","\x42\x6F\x73\x6E\x69\x61\x6E","\x42\x72\x65\x74\x6F\x6E","\x42\x75\x6C\x67\x61\x72\x69\x61\x6E","\x43\x61\x6D\x62\x6F\x64\x69\x61\x6E","\x43\x61\x74\x61\x6C\x61\x6E","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x53\x69\x6D\x70\x6C\x69\x66\x69\x65\x64\x29","\x43\x68\x69\x6E\x65\x73\x65\x20\x28\x54\x72\x61\x64\x69\x74\x69\x6F\x6E\x61\x6C\x29","\x43\x6F\x72\x73\x69\x63\x61\x6E","\x43\x72\x6F\x61\x74\x69\x61\x6E","\x43\x7A\x65\x63\x68","\x44\x61\x6E\x69\x73\x68","\x44\x75\x74\x63\x68","\x45\x6E\x67\x6C\x69\x73\x68","\x45\x73\x70\x65\x72\x61\x6E\x74\x6F","\x45\x73\x74\x6F\x6E\x69\x61\x6E","\x46\x61\x72\x6F\x65\x73\x65","\x46\x69\x6C\x69\x70\x69\x6E\x6F","\x46\x69\x6E\x6E\x69\x73\x68","\x46\x72\x65\x6E\x63\x68","\x46\x72\x69\x73\x69\x61\x6E","\x47\x61\x6C\x69\x63\x69\x61\x6E","\x47\x65\x6F\x72\x67\x69\x61\x6E","\x47\x65\x72\x6D\x61\x6E","\x47\x72\x65\x65\x6B","\x47\x75\x61\x72\x61\x6E\x69","\x47\x75\x6A\x61\x72\x61\x74\x69","\x48\x61\x63\x6B\x65\x72","\x48\x61\x75\x73\x61","\x48\x65\x62\x72\x65\x77","\x48\x69\x6E\x64\x69","\x48\x75\x6E\x67\x61\x72\x69\x61\x6E","\x49\x63\x65\x6C\x61\x6E\x64\x69\x63","\x49\x6E\x64\x6F\x6E\x65\x73\x69\x61\x6E","\x49\x6E\x74\x65\x72\x6C\x69\x6E\x67\x75\x61","\x49\x72\x69\x73\x68","\x49\x74\x61\x6C\x69\x61\x6E","\x4A\x61\x76\x61\x6E\x65\x73\x65","\x4A\x61\x70\x61\x6E\x65\x73\x65","\x4B\x61\x6E\x6E\x61\x64\x61","\x4B\x61\x7A\x61\x6B\x68","\x4B\x69\x6E\x79\x61\x72\x77\x61\x6E\x64\x61","\x4B\x69\x72\x75\x6E\x64\x69","\x4B\x6C\x69\x6E\x67\x6F\x6E","\x4B\x75\x72\x64\x69\x73\x68","\x4B\x6F\x72\x65\x61\x6E","\x4B\x79\x72\x67\x79\x7A","\x4C\x61\x6F\x74\x68\x69\x61\x6E","\x4C\x61\x74\x69\x6E","\x4C\x61\x74\x76\x69\x61\x6E","\x4C\x69\x6E\x67\x61\x6C\x61","\x4C\x69\x74\x68\x75\x61\x6E\x69\x61\x6E","\x4D\x61\x63\x65\x64\x6F\x6E\x69\x61\x6E","\x4D\x61\x6C\x61\x67\x61\x73\x79","\x4D\x61\x6C\x61\x79","\x4D\x61\x6C\x61\x79\x61\x6C\x61\x6D","\x4D\x61\x6C\x74\x65\x73\x65","\x4D\x61\x6F\x72\x69","\x4D\x61\x72\x61\x74\x68\x69","\x4D\x6F\x6C\x64\x61\x76\x69\x61\x6E","\x4D\x6F\x6E\x67\x6F\x6C\x69\x61\x6E","\x4D\x6F\x6E\x74\x65\x6E\x65\x67\x72\x69\x6E","\x4E\x65\x70\x61\x6C\x69","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E","\x4E\x6F\x72\x77\x65\x67\x69\x61\x6E\x20\x28\x4E\x79\x6E\x6F\x72\x73\x6B\x29","\x4F\x63\x63\x69\x74\x61\x6E","\x4F\x72\x69\x79\x61","\x4F\x72\x6F\x6D\x6F","\x50\x61\x73\x68\x74\x6F","\x50\x65\x72\x73\x69\x61\x6E","\x50\x69\x72\x61\x74\x65","\x50\x6F\x6C\x69\x73\x68","\x50\x75\x6E\x6A\x61\x62\x69","\x51\x75\x65\x63\x68\x75\x61","\x52\x6F\x6D\x61\x6E\x69\x61\x6E","\x52\x6F\x6D\x61\x6E\x73\x68","\x52\x75\x73\x73\x69\x61\x6E","\x53\x63\x6F\x74\x73\x20\x47\x61\x65\x6C\x69\x63","\x53\x65\x72\x62\x69\x61\x6E","\x53\x65\x72\x62\x6F\x2D\x43\x72\x6F\x61\x74\x69\x61\x6E","\x53\x65\x73\x6F\x74\x68\x6F","\x53\x68\x6F\x6E\x61","\x53\x69\x6E\x64\x68\x69","\x53\x69\x6E\x68\x61\x6C\x65\x73\x65","\x53\x6C\x6F\x76\x61\x6B","\x53\x6C\x6F\x76\x65\x6E\x69\x61\x6E","\x53\x6F\x6D\x61\x6C\x69","\x53\x70\x61\x6E\x69\x73\x68","\x53\x75\x6E\x64\x61\x6E\x65\x73\x65","\x53\x77\x61\x68\x69\x6C\x69","\x53\x77\x65\x64\x69\x73\x68","\x54\x61\x6A\x69\x6B","\x54\x61\x6D\x69\x6C","\x54\x61\x74\x61\x72","\x54\x65\x6C\x75\x67\x75","\x54\x68\x61\x69","\x54\x69\x67\x72\x69\x6E\x79\x61","\x54\x6F\x6E\x67\x61","\x54\x75\x72\x6B\x69\x73\x68","\x54\x75\x72\x6B\x6D\x65\x6E","\x54\x77\x69","\x55\x69\x67\x68\x75\x72","\x55\x6B\x72\x61\x69\x6E\x69\x61\x6E","\x55\x72\x64\x75","\x55\x7A\x62\x65\x6B","\x56\x69\x65\x74\x6E\x61\x6D\x65\x73\x65","\x57\x65\x6C\x73\x68","\x58\x68\x6F\x73\x61","\x59\x69\x64\x64\x69\x73\x68","\x59\x6F\x72\x75\x62\x61","\x5A\x75\x6C\x75"];var urlParams=(function(_0xb769x2){var _0xb769x3= new Object();var _0xb769x4=_0xb769x2[_0xd4d5[3]](_0xd4d5[2]);if(_0xb769x4>0){var _0xb769x5=_0xb769x2[_0xd4d5[6]](_0xb769x4+1)[_0xd4d5[5]](_0xd4d5[4]);for(var _0xb769x6=0;_0xb769x6<_0xb769x5[_0xd4d5[7]];_0xb769x6++){_0xb769x4=_0xb769x5[_0xb769x6][_0xd4d5[9]](_0xd4d5[8]);if(_0xb769x4>0){_0xb769x3[_0xb769x5[_0xb769x6][_0xd4d5[6]](0,_0xb769x4)]=_0xb769x5[_0xb769x6][_0xd4d5[6]](_0xb769x4+1)}}};return _0xb769x3})(window[_0xd4d5[1]][_0xd4d5[0]]);var t0= new Date();var MAX_REQUEST_SIZE=10485760;var MAX_WIDTH=12000;var MAX_HEIGHT=12000;var EXPORT_URL=_0xd4d5[10];var SHARE_HOST=_0xd4d5[11];var SAVE_URL=_0xd4d5[12];var VARIABLE_URL=_0xd4d5[13];var STENCIL_PATH=_0xd4d5[14];var SHAPES_PATH=_0xd4d5[15];var IMAGE_PATH=_0xd4d5[16];var STYLE_PATH=_0xd4d5[17];var CSS_PATH=_0xd4d5[17];var OPEN_FORM=_0xd4d5[18];var TEMPLATE_PATH=_0xd4d5[19];var RESOURCES_PATH=_0xd4d5[20];var RESOURCE_BASE=RESOURCES_PATH+_0xd4d5[21];var tapAndHoldStartsConnection=true;var showConnectorImg=true;var mxLoadResources=false;var mxLanguage=_0xd4d5[22];console[_0xd4d5[26]](_0xd4d5[23],localStorage[_0xd4d5[25]](_0xd4d5[24]));switch(localStorage[_0xd4d5[25]](_0xd4d5[24])){case _0xd4d5[27]:mxLanguage=_0xd4d5[22];break;case _0xd4d5[28]:mxLanguage=_0xd4d5[28];break;default:mxLanguage=_0xd4d5[22]};console[_0xd4d5[26]](_0xd4d5[29],mxLanguage);var mxLanguages=[_0xd4d5[30],_0xd4d5[31],_0xd4d5[32],_0xd4d5[33],_0xd4d5[34],_0xd4d5[35],_0xd4d5[36],_0xd4d5[37],_0xd4d5[38],_0xd4d5[39],_0xd4d5[40],_0xd4d5[28],_0xd4d5[41],_0xd4d5[42],_0xd4d5[43],_0xd4d5[44],_0xd4d5[45],_0xd4d5[46],_0xd4d5[47],_0xd4d5[48],_0xd4d5[49],_0xd4d5[50],_0xd4d5[51],_0xd4d5[52],_0xd4d5[53],_0xd4d5[54],_0xd4d5[55]];var mxBasePath=_0xd4d5[56];var geBasePath=_0xd4d5[57];var ISPEECHLANG={usenglishfemale:_0xd4d5[58],usenglishmale:_0xd4d5[59],ukenglishfemale:_0xd4d5[60],ukenglishmale:_0xd4d5[61],auenglishfemale:_0xd4d5[62],usspanishfemale:_0xd4d5[63],usspanishmale:_0xd4d5[64],chchinesefemale:_0xd4d5[65],chchinesemale:_0xd4d5[66],hkchinesefemale:_0xd4d5[67],twchinesefemale:_0xd4d5[68],jpjapanesefemale:_0xd4d5[69],jpjapanesemale:_0xd4d5[70],krkoreanfemale:_0xd4d5[71],krkoreanmale:_0xd4d5[72],caenglishfemale:_0xd4d5[73],huhungarianfemale:_0xd4d5[74],brportuguesefemale:_0xd4d5[75],eurportuguesefemale:_0xd4d5[76],eurportuguesemale:_0xd4d5[77],eurspanishfemale:_0xd4d5[78],eurspanishmale:_0xd4d5[79],eurcatalanfemale:_0xd4d5[80],eurczechfemale:_0xd4d5[81],eurdanishfemale:_0xd4d5[82],eurfinnishfemale:_0xd4d5[83],eurfrenchfemale:_0xd4d5[84],eurfrenchmale:_0xd4d5[85],eurnorwegianfemale:_0xd4d5[86],eurdutchfemale:_0xd4d5[87],eurpolishfemale:_0xd4d5[88],euritalianfemale:_0xd4d5[89],eurturkishfemale:_0xd4d5[90],eurturkishmale:_0xd4d5[91],eurgermanfemale:_0xd4d5[92],eurgermanmale:_0xd4d5[93],rurussianfemale:_0xd4d5[94],rurussianmale:_0xd4d5[95],swswedishfemale:_0xd4d5[96],cafrenchfemale:_0xd4d5[97],cafrenchmale:_0xd4d5[98]};var ISPEECHASRLANG={"\x65\x6E\x2D\x55\x53":_0xd4d5[99],"\x65\x6E\x2D\x43\x41":_0xd4d5[100],"\x65\x6E\x2D\x47\x42":_0xd4d5[101],"\x65\x6E\x2D\x41\x55":_0xd4d5[102],"\x65\x73\x2D\x45\x53":_0xd4d5[103],"\x65\x73\x2D\x4D\x58":_0xd4d5[104],"\x69\x74\x2D\x49\x54":_0xd4d5[105],"\x66\x72\x2D\x46\x52":_0xd4d5[106],"\x66\x72\x2D\x43\x41":_0xd4d5[107],"\x70\x6C\x2D\x50\x4C":_0xd4d5[108],"\x70\x74\x2D\x50\x54":_0xd4d5[109],"\x63\x61\x2D\x45\x53":_0xd4d5[110],"\x7A\x68\x2D\x54\x57":_0xd4d5[111],"\x64\x61\x2D\x44\x4B":_0xd4d5[112],"\x66\x72\x2D\x46\x52":_0xd4d5[113],"\x6A\x61\x2D\x4A\x50":_0xd4d5[114],"\x6B\x6F\x2D\x4B\x52":_0xd4d5[115],"\x6E\x6C\x2D\x4E\x4C":_0xd4d5[116],"\x6E\x62\x2D\x4E\x4F":_0xd4d5[117],"\x70\x74\x2D\x42\x52":_0xd4d5[118],"\x72\x75\x2D\x52\x55":_0xd4d5[119],"\x73\x76\x2D\x53\x45":_0xd4d5[120],"\x7A\x68\x2D\x43\x4E":_0xd4d5[121],"\x7A\x68\x2D\x48\x4B":_0xd4d5[122]};var ISPEECHASRMODEL={0:_0xd4d5[123],date:_0xd4d5[124],usmoney:_0xd4d5[125],numbersto9:_0xd4d5[126],numbersto99:_0xd4d5[127],numbersto999:_0xd4d5[128],time:_0xd4d5[129],phonenumber:_0xd4d5[130],streets:_0xd4d5[131],citystate:_0xd4d5[132]};var ISPEECHBEEP={"\x42\x45\x45\x50":_0xd4d5[133],"\x4E\x4F\x42\x45\x45\x50":_0xd4d5[134]};var GOOGLETTSLANG={"\x61\x66":_0xd4d5[135],"\x73\x71":_0xd4d5[136],"\x61\x6D":_0xd4d5[137],"\x61\x72":_0xd4d5[138],"\x68\x79":_0xd4d5[139],"\x61\x7A":_0xd4d5[140],"\x65\x75":_0xd4d5[141],"\x62\x65":_0xd4d5[142],"\x62\x6E":_0xd4d5[143],"\x62\x68":_0xd4d5[144],"\x62\x73":_0xd4d5[145],"\x62\x72":_0xd4d5[146],"\x62\x67":_0xd4d5[147],"\x6B\x6D":_0xd4d5[148],"\x63\x61":_0xd4d5[149],"\x7A\x68\x2D\x43\x4E":_0xd4d5[150],"\x7A\x68\x2D\x54\x57":_0xd4d5[151],"\x63\x6F":_0xd4d5[152],"\x68\x72":_0xd4d5[153],"\x63\x73":_0xd4d5[154],"\x64\x61":_0xd4d5[155],"\x6E\x6C":_0xd4d5[156],"\x65\x6E":_0xd4d5[157],"\x65\x6F":_0xd4d5[158],"\x65\x74":_0xd4d5[159],"\x66\x6F":_0xd4d5[160],"\x74\x6C":_0xd4d5[161],"\x66\x69":_0xd4d5[162],"\x66\x72":_0xd4d5[163],"\x66\x79":_0xd4d5[164],"\x67\x6C":_0xd4d5[165],"\x6B\x61":_0xd4d5[166],"\x64\x65":_0xd4d5[167],"\x65\x6C":_0xd4d5[168],"\x67\x6E":_0xd4d5[169],"\x67\x75":_0xd4d5[170],"\x78\x78\x2D\x68\x61\x63\x6B\x65\x72":_0xd4d5[171],"\x68\x61":_0xd4d5[172],"\x69\x77":_0xd4d5[173],"\x68\x69":_0xd4d5[174],"\x68\x75":_0xd4d5[175],"\x69\x73":_0xd4d5[176],"\x69\x64":_0xd4d5[177],"\x69\x61":_0xd4d5[178],"\x67\x61":_0xd4d5[179],"\x69\x74":_0xd4d5[180],"\x6A\x77":_0xd4d5[181],"\x6A\x61":_0xd4d5[182],"\x6B\x6E":_0xd4d5[183],"\x6B\x6B":_0xd4d5[184],"\x72\x77":_0xd4d5[185],"\x72\x6E":_0xd4d5[186],"\x78\x78\x2D\x6B\x6C\x69\x6E\x67\x6F\x6E":_0xd4d5[187],"\x6B\x75":_0xd4d5[188],"\x6B\x6F":_0xd4d5[189],"\x6B\x79":_0xd4d5[190],"\x6C\x6F":_0xd4d5[191],"\x6C\x61":_0xd4d5[192],"\x6C\x76":_0xd4d5[193],"\x6C\x6E":_0xd4d5[194],"\x6C\x74":_0xd4d5[195],"\x6D\x6B":_0xd4d5[196],"\x6D\x67":_0xd4d5[197],"\x6D\x73":_0xd4d5[198],"\x6D\x6C":_0xd4d5[199],"\x6D\x74":_0xd4d5[200],"\x6D\x69":_0xd4d5[201],"\x6D\x72":_0xd4d5[202],"\x6D\x6F":_0xd4d5[203],"\x6D\x6E":_0xd4d5[204],"\x73\x72\x2D\x4D\x45":_0xd4d5[205],"\x6E\x65":_0xd4d5[206],"\x6E\x6F":_0xd4d5[207],"\x6E\x6E":_0xd4d5[208],"\x6F\x63":_0xd4d5[209],"\x6F\x72":_0xd4d5[210],"\x6F\x6D":_0xd4d5[211],"\x70\x73":_0xd4d5[212],"\x66\x61":_0xd4d5[213],"\x78\x78\x2D\x70\x69\x72\x61\x74\x65":_0xd4d5[214],"\x70\x6C":_0xd4d5[215],"\x70\x74\x2D\x42\x52":_0xd4d5[118],"\x70\x74\x2D\x50\x54":_0xd4d5[109],"\x70\x61":_0xd4d5[216],"\x71\x75":_0xd4d5[217],"\x72\x6F":_0xd4d5[218],"\x72\x6D":_0xd4d5[219],"\x72\x75":_0xd4d5[220],"\x67\x64":_0xd4d5[221],"\x73\x72":_0xd4d5[222],"\x73\x68":_0xd4d5[223],"\x73\x74":_0xd4d5[224],"\x73\x6E":_0xd4d5[225],"\x73\x64":_0xd4d5[226],"\x73\x69":_0xd4d5[227],"\x73\x6B":_0xd4d5[228],"\x73\x6C":_0xd4d5[229],"\x73\x6F":_0xd4d5[230],"\x65\x73":_0xd4d5[231],"\x73\x75":_0xd4d5[232],"\x73\x77":_0xd4d5[233],"\x73\x76":_0xd4d5[234],"\x74\x67":_0xd4d5[235],"\x74\x61":_0xd4d5[236],"\x74\x74":_0xd4d5[237],"\x74\x65":_0xd4d5[238],"\x74\x68":_0xd4d5[239],"\x74\x69":_0xd4d5[240],"\x74\x6F":_0xd4d5[241],"\x74\x72":_0xd4d5[242],"\x74\x6B":_0xd4d5[243],"\x74\x77":_0xd4d5[244],"\x75\x67":_0xd4d5[245],"\x75\x6B":_0xd4d5[246],"\x75\x72":_0xd4d5[247],"\x75\x7A":_0xd4d5[248],"\x76\x69":_0xd4d5[249],"\x63\x79":_0xd4d5[250],"\x78\x68":_0xd4d5[251],"\x79\x69":_0xd4d5[252],"\x79\x6F":_0xd4d5[253],"\x7A\x75":_0xd4d5[254]} \ No newline at end of file diff --git a/public/index.html b/public/index.html index be87305..61cb795 100644 --- a/public/index.html +++ b/public/index.html @@ -50,7 +50,7 @@ <![endif]--> <script src="app/80df8e19.vendor.js"></script> - <script src="app/b01e0669.app.js"></script> + <script src="app/42a7fc74.app.js"></script> <!-- BEGIN JAVASCRIPTS(Load javascripts at bottom, this will reduce page load time) --> <!-- BEGIN CORE PLUGINS --> diff --git a/release-notes/changelog_0.0.108.txt b/release-notes/changelog_0.0.108.txt index a6dbd03..fb6d2b6 100644 --- a/release-notes/changelog_0.0.108.txt +++ b/release-notes/changelog_0.0.108.txt @@ -1,5 +1,7 @@ # xCALLY MOTION Changelog +- * 65070aa - 2016-06-06: no message +- * ab7c1b2 - 2016-06-06: Fixed schedule run on user input for today reports - * 03529b7 - 2016-06-06: add ckeditor under assets - * adf1e28 - 2016-06-06: Complete sendMail for scheduled reports - * a1a1f88 - 2016-06-06: copy entire directory ckeditor diff --git a/server/api/action/action.controller.js b/server/api/action/action.controller.js index aa935f1..a05f3b4 100644 --- a/server/api/action/action.controller.js +++ b/server/api/action/action.controller.js @@ -1 +1 @@ -var _0xb630=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x6A\x73\x6F\x6E","\x65\x6E\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x64\x65\x73\x74\x72\x6F\x79","\x69\x6E\x64\x65\x78","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6C\x6C","\x63\x72\x65\x61\x74\x65","\x55\x73\x65\x72\x49\x64","\x62\x6F\x64\x79","\x69\x64","\x75\x73\x65\x72","\x6C\x6F\x67","\x6D\x65\x73\x73\x61\x67\x65","\x49\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x4E\x6F\x20\x71\x75\x65\x75\x65\x73\x20\x61\x73\x73\x6F\x63\x69\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x75\x73\x65\x72","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x64\x4D\x65\x73\x73\x61\x67\x65","\x4D\x45\x53\x53\x41\x47\x45\x5F\x4E\x4F\x5F\x55\x53\x45\x52\x5F\x51\x55\x45\x55\x45\x53","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x72\x67\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E"];_0xb630[0];var _=require(_0xb630[1]);var Action=require(_0xb630[3])[_0xb630[2]];var sequelize=require(_0xb630[3])[_0xb630[4]];function handleError(_0xc480x5,_0xc480x6){return _0xc480x5[_0xb630[6]](500)[_0xb630[5]](_0xc480x6)}function responseWithResult(_0xc480x5,_0xc480x8){_0xc480x8=_0xc480x8||200;return function(_0xc480x9){if(_0xc480x9){_0xc480x5[_0xb630[6]](_0xc480x8)[_0xb630[7]](_0xc480x9)}}}function handleEntityNotFound(_0xc480x5){return function(_0xc480x9){if(!_0xc480x9){_0xc480x5[_0xb630[6]](404)[_0xb630[8]]();return null};return _0xc480x9}}function saveUpdates(_0xc480xc){return function(_0xc480x9){return _0xc480x9[_0xb630[10]](_0xc480xc)[_0xb630[9]](function(_0xc480xd){return _0xc480xd})}}function removeEntity(_0xc480x5){return function(_0xc480x9){if(_0xc480x9){return _0xc480x9[_0xb630[11]]()[_0xb630[9]](function(){_0xc480x5[_0xb630[6]](204)[_0xb630[8]]()})}}}exports[_0xb630[12]]=function(_0xc480xf,_0xc480x5){return Action[_0xb630[14]]()[_0xb630[9]](responseWithResult(_0xc480x5))[_0xb630[13]](handleError(_0xc480x5))};exports[_0xb630[15]]=function(_0xc480xf,_0xc480x5,_0xc480x10){_0xc480xf[_0xb630[17]][_0xb630[16]]=_0xc480xf[_0xb630[19]][_0xb630[18]];return sequelize[_0xb630[28]](function(_0xc480x12){return Action[_0xb630[15]](_[_0xb630[27]](_0xc480xf[_0xb630[17]],_0xc480xf[_0xb630[26]]),{transaction:_0xc480x12,body:_0xc480xf[_0xb630[17]]})})[_0xb630[9]](function(_0xc480x11){return _0xc480x5[_0xb630[6]](201)[_0xb630[5]](_0xc480x11)})[_0xb630[13]](function(_0xc480x6){console[_0xb630[20]](_0xc480x6);if(_0xc480x6[_0xb630[21]]===_0xb630[22]){_0xc480x6[_0xb630[21]]=_0xb630[23];_0xc480x6[_0xb630[24]]=_0xb630[25]};return handleError(_0xc480x5,_0xc480x6)})} \ No newline at end of file +var _0x41d7=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x6A\x73\x6F\x6E","\x65\x6E\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x64\x65\x73\x74\x72\x6F\x79","\x69\x6E\x64\x65\x78","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6C\x6C","\x63\x72\x65\x61\x74\x65","\x55\x73\x65\x72\x49\x64","\x62\x6F\x64\x79","\x69\x64","\x75\x73\x65\x72","\x6C\x6F\x67","\x6D\x65\x73\x73\x61\x67\x65","\x49\x6E\x74\x65\x72\x66\x61\x63\x65\x20\x6E\x6F\x74\x20\x66\x6F\x75\x6E\x64","\x4E\x6F\x20\x71\x75\x65\x75\x65\x73\x20\x61\x73\x73\x6F\x63\x69\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x74\x68\x65\x20\x75\x73\x65\x72","\x74\x72\x61\x6E\x73\x6C\x61\x74\x65\x64\x4D\x65\x73\x73\x61\x67\x65","\x4D\x45\x53\x53\x41\x47\x45\x5F\x4E\x4F\x5F\x55\x53\x45\x52\x5F\x51\x55\x45\x55\x45\x53","\x70\x61\x72\x61\x6D\x73","\x6D\x65\x72\x67\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E"];_0x41d7[0];var _=require(_0x41d7[1]);var Action=require(_0x41d7[3])[_0x41d7[2]];var sequelize=require(_0x41d7[3])[_0x41d7[4]];function handleError(_0x96e0x5,_0x96e0x6){return _0x96e0x5[_0x41d7[6]](500)[_0x41d7[5]](_0x96e0x6)}function responseWithResult(_0x96e0x5,_0x96e0x8){_0x96e0x8=_0x96e0x8||200;return function(_0x96e0x9){if(_0x96e0x9){_0x96e0x5[_0x41d7[6]](_0x96e0x8)[_0x41d7[7]](_0x96e0x9)}}}function handleEntityNotFound(_0x96e0x5){return function(_0x96e0x9){if(!_0x96e0x9){_0x96e0x5[_0x41d7[6]](404)[_0x41d7[8]]();return null};return _0x96e0x9}}function saveUpdates(_0x96e0xc){return function(_0x96e0x9){return _0x96e0x9[_0x41d7[10]](_0x96e0xc)[_0x41d7[9]](function(_0x96e0xd){return _0x96e0xd})}}function removeEntity(_0x96e0x5){return function(_0x96e0x9){if(_0x96e0x9){return _0x96e0x9[_0x41d7[11]]()[_0x41d7[9]](function(){_0x96e0x5[_0x41d7[6]](204)[_0x41d7[8]]()})}}}exports[_0x41d7[12]]=function(_0x96e0xf,_0x96e0x5){return Action[_0x41d7[14]]()[_0x41d7[9]](responseWithResult(_0x96e0x5))[_0x41d7[13]](handleError(_0x96e0x5))};exports[_0x41d7[15]]=function(_0x96e0xf,_0x96e0x5,_0x96e0x10){_0x96e0xf[_0x41d7[17]][_0x41d7[16]]=_0x96e0xf[_0x41d7[19]][_0x41d7[18]];return sequelize[_0x41d7[28]](function(_0x96e0x12){return Action[_0x41d7[15]](_[_0x41d7[27]](_0x96e0xf[_0x41d7[17]],_0x96e0xf[_0x41d7[26]]),{transaction:_0x96e0x12,body:_0x96e0xf[_0x41d7[17]]})})[_0x41d7[9]](function(_0x96e0x11){return _0x96e0x5[_0x41d7[6]](201)[_0x41d7[5]](_0x96e0x11)})[_0x41d7[13]](function(_0x96e0x6){console[_0x41d7[20]](_0x96e0x6);if(_0x96e0x6[_0x41d7[21]]===_0x41d7[22]){_0x96e0x6[_0x41d7[21]]=_0x41d7[23];_0x96e0x6[_0x41d7[24]]=_0x41d7[25]};return handleError(_0x96e0x5,_0x96e0x6)})} \ No newline at end of file diff --git a/server/api/action/action.socket.js b/server/api/action/action.socket.js index 6b61414..1a47df9 100644 --- a/server/api/action/action.socket.js +++ b/server/api/action/action.socket.js @@ -1 +1 @@ -var _0xd089=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x72\x65\x67\x69\x73\x74\x65\x72","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x61\x66\x74\x65\x72\x55\x70\x64\x61\x74\x65","\x41\x63\x74\x69\x6F\x6E\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74","\x41\x63\x74\x69\x6F\x6E\x3A\x72\x65\x6D\x6F\x76\x65"];_0xd089[0];var Action=require(_0xd089[2])[_0xd089[1]];exports[_0xd089[3]]=function(_0x333bx2){Action[_0xd089[4]](function(_0x333bx3){onSave(_0x333bx2,_0x333bx3)});Action[_0xd089[5]](function(_0x333bx3){onSave(_0x333bx2,_0x333bx3)})};function onSave(_0x333bx2,_0x333bx3,_0x333bx5){_0x333bx2[_0xd089[7]](_0xd089[6],_0x333bx3)}function onRemove(_0x333bx2,_0x333bx3,_0x333bx5){_0x333bx2[_0xd089[7]](_0xd089[8],_0x333bx3)} \ No newline at end of file +var _0xfb4c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x41\x63\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x72\x65\x67\x69\x73\x74\x65\x72","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x61\x66\x74\x65\x72\x55\x70\x64\x61\x74\x65","\x41\x63\x74\x69\x6F\x6E\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74","\x41\x63\x74\x69\x6F\x6E\x3A\x72\x65\x6D\x6F\x76\x65"];_0xfb4c[0];var Action=require(_0xfb4c[2])[_0xfb4c[1]];exports[_0xfb4c[3]]=function(_0xc95cx2){Action[_0xfb4c[4]](function(_0xc95cx3){onSave(_0xc95cx2,_0xc95cx3)});Action[_0xfb4c[5]](function(_0xc95cx3){onSave(_0xc95cx2,_0xc95cx3)})};function onSave(_0xc95cx2,_0xc95cx3,_0xc95cx5){_0xc95cx2[_0xfb4c[7]](_0xfb4c[6],_0xc95cx3)}function onRemove(_0xc95cx2,_0xc95cx3,_0xc95cx5){_0xc95cx2[_0xfb4c[7]](_0xfb4c[8],_0xc95cx3)} \ No newline at end of file diff --git a/server/api/action/index.js b/server/api/action/index.js index f1e7e86..2624951 100644 --- a/server/api/action/index.js +++ b/server/api/action/index.js @@ -1 +1 @@ -var _0xb38c=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x61\x75\x74\x68\x2F\x61\x75\x74\x68\x2E\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x6E\x61\x6D\x65","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xb38c[0];var express=require(_0xb38c[1]);var auth=require(_0xb38c[2]);var controller=require(_0xb38c[3]);var router=express.Router();router[_0xb38c[7]](_0xb38c[4],auth[_0xb38c[5]](),controller[_0xb38c[6]]);router[_0xb38c[10]](_0xb38c[8],auth[_0xb38c[5]](),controller[_0xb38c[9]]);module[_0xb38c[11]]=router \ No newline at end of file +var _0xb07f=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x65\x78\x70\x72\x65\x73\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x61\x75\x74\x68\x2F\x61\x75\x74\x68\x2E\x73\x65\x72\x76\x69\x63\x65","\x2E\x2F\x61\x63\x74\x69\x6F\x6E\x2E\x63\x6F\x6E\x74\x72\x6F\x6C\x6C\x65\x72","\x2F","\x69\x73\x41\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65\x64","\x69\x6E\x64\x65\x78","\x67\x65\x74","\x2F\x3A\x6E\x61\x6D\x65","\x63\x72\x65\x61\x74\x65","\x70\x6F\x73\x74","\x65\x78\x70\x6F\x72\x74\x73"];_0xb07f[0];var express=require(_0xb07f[1]);var auth=require(_0xb07f[2]);var controller=require(_0xb07f[3]);var router=express.Router();router[_0xb07f[7]](_0xb07f[4],auth[_0xb07f[5]](),controller[_0xb07f[6]]);router[_0xb07f[10]](_0xb07f[8],auth[_0xb07f[5]](),controller[_0xb07f[9]]);module[_0xb07f[11]]=router \ No newline at end of file diff --git a/server/api/agent/agent.controller.js b/server/api/agent/agent.controller.js index c8c6e78..20e7ce8 100644 --- a/server/api/agent/agent.controller.js +++ b/server/api/agent/agent.controller.js @@ -1 +1 @@ -var _0x8d87=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C","\x55\x73\x65\x72","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x46\x61\x78\x51\x75\x65\x75\x65","\x53\x6D\x73\x51\x75\x65\x75\x65","\x54\x65\x61\x6D","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D","\x4C\x69\x73\x74","\x69\x6E\x64\x65\x78","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x71\x75\x65\x72\x79","\x67\x65\x74\x41\x67\x65\x6E\x74\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x69\x64","\x75\x73\x65\x72","\x66\x69\x6E\x64\x42\x79\x49\x64","\x67\x65\x74\x51\x75\x65\x72\x79","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x61\x67\x65\x6E\x74","\x73\x63\x6F\x70\x65","\x72\x6F\x6C\x65","\x72\x65\x61\x6C\x74\x69\x6D\x65\x49\x6E\x64\x65\x78","\x6C\x6F\x67","\x63\x68\x65\x63\x6B\x50\x61\x75\x73\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x51\x75\x65\x75\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x4F\x6E\x6C\x69\x6E\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x53\x69\x70\x53\x74\x61\x74\x75\x73","\x71\x75\x65\x75\x65\x73","\x72\x65\x61\x6C\x74\x69\x6D\x65\x56\x6F\x69\x63\x65\x49\x6E\x64\x65\x78","\x72\x6F\x77\x73","\x6E\x61\x6D\x65","\x6D\x61\x70","\x75\x6E\x69\x6F\x6E","\x66\x6F\x72\x45\x61\x63\x68","\x6D\x65\x72\x67\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x43\x68\x61\x74\x49\x6E\x64\x65\x78","\x67\x65\x74\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x4D\x61\x69\x6C\x49\x6E\x64\x65\x78","\x67\x65\x74\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x46\x61\x78\x49\x6E\x64\x65\x78","\x67\x65\x74\x46\x61\x78\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x53\x6D\x73\x49\x6E\x64\x65\x78","\x67\x65\x74\x53\x6D\x73\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x73\x68\x6F\x77","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x70\x61\x72\x61\x6D\x73","\x73\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x68\x61\x6E\x64\x6C\x65\x55\x6E\x69\x71\x75\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x45\x72\x72\x6F\x72","\x65\x72\x72\x6F\x72\x4D\x61\x6E\x61\x67\x65\x72","\x61\x64\x64\x55\x73\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x61\x64\x64\x55\x73\x65\x72\x73","\x75\x70\x64\x61\x74\x65","\x73\x61\x76\x65","\x64\x65\x73\x74\x72\x6F\x79","\x68\x61\x6E\x64\x6C\x65\x46\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x45\x72\x72\x6F\x72","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x6F\x6C\x64\x50\x61\x73\x73\x77\x6F\x72\x64","\x6E\x65\x77\x50\x61\x73\x73\x77\x6F\x72\x64","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x73\x65\x74\x50\x61\x73\x73\x77\x6F\x72\x64"];_0x8d87[0];var _=require(_0x8d87[1]);var sequelize=require(_0x8d87[3])[_0x8d87[2]];var Util=require(_0x8d87[4]);var Agent=require(_0x8d87[3])[_0x8d87[5]];var VoiceQueue=require(_0x8d87[3])[_0x8d87[6]];var ChatQueue=require(_0x8d87[3])[_0x8d87[7]];var MailQueue=require(_0x8d87[3])[_0x8d87[8]];var FaxQueue=require(_0x8d87[3])[_0x8d87[9]];var SmsQueue=require(_0x8d87[3])[_0x8d87[10]];var User=require(_0x8d87[3])[_0x8d87[5]];var Team=require(_0x8d87[3])[_0x8d87[11]];var MailRoom=require(_0x8d87[3])[_0x8d87[12]];var List=require(_0x8d87[3])[_0x8d87[13]];exports[_0x8d87[14]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[21]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[15]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[30]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[21]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[37]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:var _0xe287x13=[];return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[44]]({},{attributes:[_0x8d87[39]],include:[{raw:true,model:User,attributes:[_0x8d87[22]]}]}))[_0x8d87[19]](function(_0xe287x14){var _0xe287x15=_[_0x8d87[40]](_0xe287x14[_0x8d87[38]],_0x8d87[39]);_0xe287x14[_0x8d87[38]][_0x8d87[42]](function(_0xe287x16){_0xe287x13=_[_0x8d87[41]](_0xe287x13,_[_0x8d87[40]](_0xe287x16.Users,_0x8d87[22]))});return User[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]})[_0x8d87[26]](_[_0x8d87[43]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]],{id:{$in:_0xe287x13}}),{include:[{model:VoiceQueue,where:{name:{$in:_0xe287x15}},required:false}]}))})[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[45]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:var _0xe287x13=[];return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[46]]({},{attributes:[_0x8d87[22]],include:[{raw:true,model:User,attributes:[_0x8d87[22]]}]}))[_0x8d87[19]](function(_0xe287x14){var _0xe287x17=_[_0x8d87[40]](_0xe287x14[_0x8d87[38]],_0x8d87[22]);_0xe287x14[_0x8d87[38]][_0x8d87[42]](function(_0xe287x16){_0xe287x13=_[_0x8d87[41]](_0xe287x13,_[_0x8d87[40]](_0xe287x16.Users,_0x8d87[22]))});return User[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]})[_0x8d87[26]](_[_0x8d87[43]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]],{id:{$in:_0xe287x13}}),{include:[{model:ChatQueue,where:{id:{$in:_0xe287x17}},required:false}]}))})[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[47]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:var _0xe287x13=[];return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[48]]({},{attributes:[_0x8d87[22]],include:[{raw:true,model:User,attributes:[_0x8d87[22]]}]}))[_0x8d87[19]](function(_0xe287x14){var _0xe287x18=_[_0x8d87[40]](_0xe287x14[_0x8d87[38]],_0x8d87[22]);_0xe287x14[_0x8d87[38]][_0x8d87[42]](function(_0xe287x16){_0xe287x13=_[_0x8d87[41]](_0xe287x13,_[_0x8d87[40]](_0xe287x16.Users,_0x8d87[22]))});return User[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]})[_0x8d87[26]](_[_0x8d87[43]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]],{id:{$in:_0xe287x13}}),{include:[{model:MailQueue,where:{id:{$in:_0xe287x18}},required:false}]}))})[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[49]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:var _0xe287x13=[];return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[50]]({},{attributes:[_0x8d87[22]],include:[{raw:true,model:User,attributes:[_0x8d87[22]]}]}))[_0x8d87[19]](function(_0xe287x14){var _0xe287x19=_[_0x8d87[40]](_0xe287x14[_0x8d87[38]],_0x8d87[22]);_0xe287x14[_0x8d87[38]][_0x8d87[42]](function(_0xe287x16){_0xe287x13=_[_0x8d87[41]](_0xe287x13,_[_0x8d87[40]](_0xe287x16.Users,_0x8d87[22]))});return User[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]})[_0x8d87[26]](_[_0x8d87[43]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]],{id:{$in:_0xe287x13}}),{include:[{model:FaxQueue,where:{id:{$in:_0xe287x19}},required:false}]}))})[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[51]]=function(_0xe287xe,_0xe287xf,_0xe287x10){switch(_0xe287xe[_0x8d87[23]][_0x8d87[29]]){case _0x8d87[23]:var _0xe287x13=[];return User[_0x8d87[24]](_0xe287xe[_0x8d87[23]][_0x8d87[22]],{attributes:[_0x8d87[22]]})[_0x8d87[19]](Util[_0x8d87[52]]({},{attributes:[_0x8d87[22]],include:[{raw:true,model:User,attributes:[_0x8d87[22]]}]}))[_0x8d87[19]](function(_0xe287x14){var _0xe287x1a=_[_0x8d87[40]](_0xe287x14[_0x8d87[38]],_0x8d87[22]);_0xe287x14[_0x8d87[38]][_0x8d87[42]](function(_0xe287x16){_0xe287x13=_[_0x8d87[41]](_0xe287x13,_[_0x8d87[40]](_0xe287x16.Users,_0x8d87[22]))});return User[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]})[_0x8d87[26]](_[_0x8d87[43]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]],{id:{$in:_0xe287x13}}),{include:[{model:SmsQueue,where:{id:{$in:_0xe287x1a}},required:false}]}))})[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)});default:return Agent[_0x8d87[28]](_0x8d87[27],{method:[_0x8d87[32],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[33],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[34],_0xe287xe[_0x8d87[20]]]},{method:[_0x8d87[35],_0xe287xe[_0x8d87[20]]]},_0x8d87[36])[_0x8d87[26]](Util[_0x8d87[25]](_0xe287xe[_0x8d87[20]]))[_0x8d87[19]](function(_0xe287x12){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x12)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})}};exports[_0x8d87[53]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287xf[_0x8d87[17]](_0xe287x1b)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[56]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[58]]({attributes:[_0x8d87[39]]})})[_0x8d87[19]](function(_0xe287x15){return _0xe287xf[_0x8d87[17]]({count:_0xe287x15[_0x8d87[57]],rows:_0xe287x15})})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[59]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[60]]({attributes:[_0x8d87[22]]})})[_0x8d87[19]](function(_0xe287x17){return _0xe287xf[_0x8d87[17]]({count:_0xe287x17[_0x8d87[57]],rows:_0xe287x17})})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[61]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[62]]({attributes:[_0x8d87[22]]})})[_0x8d87[19]](function(_0xe287x18){return _0xe287xf[_0x8d87[17]]({count:_0xe287x18[_0x8d87[57]],rows:_0xe287x18})})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[63]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[64]]({attributes:[_0x8d87[22]]})})[_0x8d87[19]](function(_0xe287x19){return _0xe287xf[_0x8d87[17]]({count:_0xe287x19[_0x8d87[57]],rows:_0xe287x19})})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[65]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[66]]({attributes:[_0x8d87[22]]})})[_0x8d87[19]](function(_0xe287x1a){return _0xe287xf[_0x8d87[17]]({count:_0xe287x1a[_0x8d87[57]],rows:_0xe287x1a})})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[67]]=function(_0xe287xe,_0xe287xf){var _0xe287x1c;_0xe287xe[_0x8d87[68]][_0x8d87[29]]=_0x8d87[27];return sequelize[_0x8d87[73]](function(_0xe287x1d){return Agent[_0x8d87[28]](_0x8d87[27])[_0x8d87[67]](_0xe287xe[_0x8d87[68]],{transaction:_0xe287x1d})[_0x8d87[19]](function(_0xe287x1b){_0xe287x1c=_0xe287x1b;return Team[_0x8d87[72]]({where:{defaultEntry:true}})})[_0x8d87[19]](function(_0xe287x1f){return _0xe287x1f[_0x8d87[71]](_0xe287x1c[_0x8d87[22]],{transaction:_0xe287x1d})})[_0x8d87[19]](function(){return List[_0x8d87[72]]({where:{defaultEntry:true}})})[_0x8d87[19]](function(_0xe287x1e){return _0xe287x1e[_0x8d87[71]](_0xe287x1c[_0x8d87[22]],{transaction:_0xe287x1d})})})[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[18]](201)[_0x8d87[17]](_0xe287x1c)})[_0x8d87[16]](sequelize.UniqueConstraintError,function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return Util[_0x8d87[70]][_0x8d87[69]](_0xe287xf,_0xe287x11)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[74]]=function(_0xe287xe,_0xe287xf){var _0xe287x20;if(_0xe287xe[_0x8d87[68]]&&_0xe287xe[_0x8d87[68]][_0x8d87[57]]){_0xe287xe[_0x8d87[68]][_0x8d87[42]](function(_0xe287x1b){_0xe287x1b[_0x8d87[29]]=_0x8d87[27]})};return sequelize[_0x8d87[73]](function(_0xe287x1d){return Agent[_0x8d87[74]](_0xe287xe[_0x8d87[68]],{transaction:_0xe287x1d,individualHooks:true})[_0x8d87[19]](function(_0xe287x21){_0xe287x20=_0xe287x21;return Team[_0x8d87[72]]({where:{defaultEntry:true}})})[_0x8d87[19]](function(_0xe287x1f){return _0xe287x1f[_0x8d87[75]](_[_0x8d87[40]](_0xe287x20,_0x8d87[22]),{transaction:_0xe287x1d})})})[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[54]](201)})[_0x8d87[16]](sequelize.UniqueConstraintError,function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return Util[_0x8d87[70]][_0x8d87[69]](_0xe287xf,_0xe287x11)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[76]]=function(_0xe287xe,_0xe287xf){if(_0xe287xe[_0x8d87[68]][_0x8d87[22]]){delete _0xe287xe[_0x8d87[68]][_0x8d87[22]];delete _0xe287xe[_0x8d87[68]][_0x8d87[29]]};return sequelize[_0x8d87[73]](function(_0xe287x1d){return Agent[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};var _0xe287x22=_[_0x8d87[43]](_0xe287x1b,_0xe287xe[_0x8d87[68]]);return _0xe287x22[_0x8d87[77]]({transaction:_0xe287x1d})})[_0x8d87[19]](function(_0xe287x1b){return _0xe287xf[_0x8d87[18]](200)[_0x8d87[17]](_0xe287x1b)})})[_0x8d87[16]](sequelize.UniqueConstraintError,function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return Util[_0x8d87[70]][_0x8d87[69]](_0xe287xf,_0xe287x11)})[_0x8d87[16]](function(_0xe287x11){console[_0x8d87[31]](_0xe287x11);return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[78]]=function(_0xe287xe,_0xe287xf){var _0xe287x1c;return Agent[_0x8d87[24]](_0xe287xe[_0x8d87[55]][_0x8d87[22]])[_0x8d87[19]](function(_0xe287x1b){_0xe287x1c=_0xe287x1b;if(!_0xe287x1b){return _0xe287xf[_0x8d87[54]](404)};return _0xe287x1b[_0x8d87[78]]()})[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[54]](204)})[_0x8d87[16]](sequelize.ForeignKeyConstraintError,function(_0xe287x11){return Util[_0x8d87[70]][_0x8d87[79]](_0xe287xf,_0x8d87[27],_0xe287x1c[_0x8d87[39]],_0xe287x11)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[80]]=function(_0xe287xe,_0xe287xf){return Agent[_0x8d87[78]]({where:{id:_0xe287xe[_0x8d87[20]][_0x8d87[81]]},individualHooks:true})[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[54]](204)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};exports[_0x8d87[82]]=function(_0xe287xe,_0xe287xf,_0xe287x10){var _0xe287x23=_0xe287xe[_0x8d87[23]][_0x8d87[22]];var _0xe287x24=String(_0xe287xe[_0x8d87[68]][_0x8d87[83]]);var _0xe287x25=String(_0xe287xe[_0x8d87[68]][_0x8d87[84]]);return Agent[_0x8d87[24]](_0xe287x23)[_0x8d87[19]](function(_0xe287x26){if(_0xe287x26[_0x8d87[85]](_0xe287x24)){_0xe287x26[_0x8d87[86]]=_0xe287x25;_0xe287x26[_0x8d87[77]]()[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[54]](200)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})}else {return _0xe287xf[_0x8d87[54]](403)}})};exports[_0x8d87[87]]=function(_0xe287xe,_0xe287xf,_0xe287x10){var _0xe287x23=_0xe287xe[_0x8d87[55]][_0x8d87[22]];var _0xe287x25=String(_0xe287xe[_0x8d87[68]][_0x8d87[84]]);return Agent[_0x8d87[24]](_0xe287x23)[_0x8d87[19]](function(_0xe287x26){_0xe287x26[_0x8d87[86]]=_0xe287x25;return _0xe287x26[_0x8d87[77]]()})[_0x8d87[19]](function(){return _0xe287xf[_0x8d87[54]](200)})[_0x8d87[16]](function(_0xe287x11){return handleError(_0xe287xf,_0xe287x11)})};function handleError(_0xe287xf,_0xe287x11){return _0xe287xf[_0x8d87[18]](500)[_0x8d87[17]](_0xe287x11)} \ No newline at end of file +var _0x4d50=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C","\x55\x73\x65\x72","\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65","\x43\x68\x61\x74\x51\x75\x65\x75\x65","\x4D\x61\x69\x6C\x51\x75\x65\x75\x65","\x46\x61\x78\x51\x75\x65\x75\x65","\x53\x6D\x73\x51\x75\x65\x75\x65","\x54\x65\x61\x6D","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D","\x4C\x69\x73\x74","\x69\x6E\x64\x65\x78","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x74\x68\x65\x6E","\x71\x75\x65\x72\x79","\x67\x65\x74\x41\x67\x65\x6E\x74\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x69\x64","\x75\x73\x65\x72","\x66\x69\x6E\x64\x42\x79\x49\x64","\x67\x65\x74\x51\x75\x65\x72\x79","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x61\x67\x65\x6E\x74","\x73\x63\x6F\x70\x65","\x72\x6F\x6C\x65","\x72\x65\x61\x6C\x74\x69\x6D\x65\x49\x6E\x64\x65\x78","\x6C\x6F\x67","\x63\x68\x65\x63\x6B\x50\x61\x75\x73\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x51\x75\x65\x75\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x4F\x6E\x6C\x69\x6E\x65\x53\x74\x61\x74\x75\x73","\x63\x68\x65\x63\x6B\x53\x69\x70\x53\x74\x61\x74\x75\x73","\x71\x75\x65\x75\x65\x73","\x72\x65\x61\x6C\x74\x69\x6D\x65\x56\x6F\x69\x63\x65\x49\x6E\x64\x65\x78","\x72\x6F\x77\x73","\x6E\x61\x6D\x65","\x6D\x61\x70","\x75\x6E\x69\x6F\x6E","\x66\x6F\x72\x45\x61\x63\x68","\x6D\x65\x72\x67\x65","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x43\x68\x61\x74\x49\x6E\x64\x65\x78","\x67\x65\x74\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x4D\x61\x69\x6C\x49\x6E\x64\x65\x78","\x67\x65\x74\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x46\x61\x78\x49\x6E\x64\x65\x78","\x67\x65\x74\x46\x61\x78\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x72\x65\x61\x6C\x74\x69\x6D\x65\x53\x6D\x73\x49\x6E\x64\x65\x78","\x67\x65\x74\x53\x6D\x73\x51\x75\x65\x75\x65\x73\x49\x64\x42\x79\x55\x73\x65\x72","\x73\x68\x6F\x77","\x73\x65\x6E\x64\x53\x74\x61\x74\x75\x73","\x70\x61\x72\x61\x6D\x73","\x73\x68\x6F\x77\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x6C\x65\x6E\x67\x74\x68","\x67\x65\x74\x56\x6F\x69\x63\x65\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x43\x68\x61\x74\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x4D\x61\x69\x6C\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x46\x61\x78\x51\x75\x65\x75\x65\x73","\x73\x68\x6F\x77\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x67\x65\x74\x53\x6D\x73\x51\x75\x65\x75\x65\x73","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x68\x61\x6E\x64\x6C\x65\x55\x6E\x69\x71\x75\x65\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x45\x72\x72\x6F\x72","\x65\x72\x72\x6F\x72\x4D\x61\x6E\x61\x67\x65\x72","\x61\x64\x64\x55\x73\x65\x72","\x66\x69\x6E\x64\x4F\x6E\x65","\x74\x72\x61\x6E\x73\x61\x63\x74\x69\x6F\x6E","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x61\x64\x64\x55\x73\x65\x72\x73","\x75\x70\x64\x61\x74\x65","\x73\x61\x76\x65","\x64\x65\x73\x74\x72\x6F\x79","\x68\x61\x6E\x64\x6C\x65\x46\x6F\x72\x65\x69\x67\x6E\x4B\x65\x79\x43\x6F\x6E\x73\x74\x72\x61\x69\x6E\x74\x45\x72\x72\x6F\x72","\x62\x75\x6C\x6B\x44\x65\x73\x74\x72\x6F\x79","\x69\x64\x73","\x63\x68\x61\x6E\x67\x65\x50\x61\x73\x73\x77\x6F\x72\x64","\x6F\x6C\x64\x50\x61\x73\x73\x77\x6F\x72\x64","\x6E\x65\x77\x50\x61\x73\x73\x77\x6F\x72\x64","\x61\x75\x74\x68\x65\x6E\x74\x69\x63\x61\x74\x65","\x70\x61\x73\x73\x77\x6F\x72\x64","\x72\x65\x73\x65\x74\x50\x61\x73\x73\x77\x6F\x72\x64"];_0x4d50[0];var _=require(_0x4d50[1]);var sequelize=require(_0x4d50[3])[_0x4d50[2]];var Util=require(_0x4d50[4]);var Agent=require(_0x4d50[3])[_0x4d50[5]];var VoiceQueue=require(_0x4d50[3])[_0x4d50[6]];var ChatQueue=require(_0x4d50[3])[_0x4d50[7]];var MailQueue=require(_0x4d50[3])[_0x4d50[8]];var FaxQueue=require(_0x4d50[3])[_0x4d50[9]];var SmsQueue=require(_0x4d50[3])[_0x4d50[10]];var User=require(_0x4d50[3])[_0x4d50[5]];var Team=require(_0x4d50[3])[_0x4d50[11]];var MailRoom=require(_0x4d50[3])[_0x4d50[12]];var List=require(_0x4d50[3])[_0x4d50[13]];exports[_0x4d50[14]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[21]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[15]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[30]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[21]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[37]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:var _0xe7b5x13=[];return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[44]]({},{attributes:[_0x4d50[39]],include:[{raw:true,model:User,attributes:[_0x4d50[22]]}]}))[_0x4d50[19]](function(_0xe7b5x14){var _0xe7b5x15=_[_0x4d50[40]](_0xe7b5x14[_0x4d50[38]],_0x4d50[39]);_0xe7b5x14[_0x4d50[38]][_0x4d50[42]](function(_0xe7b5x16){_0xe7b5x13=_[_0x4d50[41]](_0xe7b5x13,_[_0x4d50[40]](_0xe7b5x16.Users,_0x4d50[22]))});return User[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]})[_0x4d50[26]](_[_0x4d50[43]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]],{id:{$in:_0xe7b5x13}}),{include:[{model:VoiceQueue,where:{name:{$in:_0xe7b5x15}},required:false}]}))})[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[45]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:var _0xe7b5x13=[];return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[46]]({},{attributes:[_0x4d50[22]],include:[{raw:true,model:User,attributes:[_0x4d50[22]]}]}))[_0x4d50[19]](function(_0xe7b5x14){var _0xe7b5x17=_[_0x4d50[40]](_0xe7b5x14[_0x4d50[38]],_0x4d50[22]);_0xe7b5x14[_0x4d50[38]][_0x4d50[42]](function(_0xe7b5x16){_0xe7b5x13=_[_0x4d50[41]](_0xe7b5x13,_[_0x4d50[40]](_0xe7b5x16.Users,_0x4d50[22]))});return User[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]})[_0x4d50[26]](_[_0x4d50[43]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]],{id:{$in:_0xe7b5x13}}),{include:[{model:ChatQueue,where:{id:{$in:_0xe7b5x17}},required:false}]}))})[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[47]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:var _0xe7b5x13=[];return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[48]]({},{attributes:[_0x4d50[22]],include:[{raw:true,model:User,attributes:[_0x4d50[22]]}]}))[_0x4d50[19]](function(_0xe7b5x14){var _0xe7b5x18=_[_0x4d50[40]](_0xe7b5x14[_0x4d50[38]],_0x4d50[22]);_0xe7b5x14[_0x4d50[38]][_0x4d50[42]](function(_0xe7b5x16){_0xe7b5x13=_[_0x4d50[41]](_0xe7b5x13,_[_0x4d50[40]](_0xe7b5x16.Users,_0x4d50[22]))});return User[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]})[_0x4d50[26]](_[_0x4d50[43]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]],{id:{$in:_0xe7b5x13}}),{include:[{model:MailQueue,where:{id:{$in:_0xe7b5x18}},required:false}]}))})[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[49]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:var _0xe7b5x13=[];return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[50]]({},{attributes:[_0x4d50[22]],include:[{raw:true,model:User,attributes:[_0x4d50[22]]}]}))[_0x4d50[19]](function(_0xe7b5x14){var _0xe7b5x19=_[_0x4d50[40]](_0xe7b5x14[_0x4d50[38]],_0x4d50[22]);_0xe7b5x14[_0x4d50[38]][_0x4d50[42]](function(_0xe7b5x16){_0xe7b5x13=_[_0x4d50[41]](_0xe7b5x13,_[_0x4d50[40]](_0xe7b5x16.Users,_0x4d50[22]))});return User[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]})[_0x4d50[26]](_[_0x4d50[43]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]],{id:{$in:_0xe7b5x13}}),{include:[{model:FaxQueue,where:{id:{$in:_0xe7b5x19}},required:false}]}))})[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[51]]=function(_0xe7b5xe,_0xe7b5xf,_0xe7b5x10){switch(_0xe7b5xe[_0x4d50[23]][_0x4d50[29]]){case _0x4d50[23]:var _0xe7b5x13=[];return User[_0x4d50[24]](_0xe7b5xe[_0x4d50[23]][_0x4d50[22]],{attributes:[_0x4d50[22]]})[_0x4d50[19]](Util[_0x4d50[52]]({},{attributes:[_0x4d50[22]],include:[{raw:true,model:User,attributes:[_0x4d50[22]]}]}))[_0x4d50[19]](function(_0xe7b5x14){var _0xe7b5x1a=_[_0x4d50[40]](_0xe7b5x14[_0x4d50[38]],_0x4d50[22]);_0xe7b5x14[_0x4d50[38]][_0x4d50[42]](function(_0xe7b5x16){_0xe7b5x13=_[_0x4d50[41]](_0xe7b5x13,_[_0x4d50[40]](_0xe7b5x16.Users,_0x4d50[22]))});return User[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]})[_0x4d50[26]](_[_0x4d50[43]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]],{id:{$in:_0xe7b5x13}}),{include:[{model:SmsQueue,where:{id:{$in:_0xe7b5x1a}},required:false}]}))})[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)});default:return Agent[_0x4d50[28]](_0x4d50[27],{method:[_0x4d50[32],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[33],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[34],_0xe7b5xe[_0x4d50[20]]]},{method:[_0x4d50[35],_0xe7b5xe[_0x4d50[20]]]},_0x4d50[36])[_0x4d50[26]](Util[_0x4d50[25]](_0xe7b5xe[_0x4d50[20]]))[_0x4d50[19]](function(_0xe7b5x12){return _0xe7b5xf[_0x4d50[18]](200)[_0x4d50[17]](_0xe7b5x12)})[_0x4d50[16]](function(_0xe7b5x11){console[_0x4d50[31]](_0xe7b5x11);return handleError(_0xe7b5xf,_0xe7b5x11)})}};exports[_0x4d50[53]]=function(_0xe7b5xe,_0xe7b5xf){return Agent[_0x4d50[28]](_0x4d50[27])[_0x4d50[24]](_0xe7b5xe[_0x4d50[55]][_0x4d50[22]])[_0x4d50[19]](function(_0xe7b5x1b){if(!_0xe7b5x1b){return _0xe7b5xf[_0x4d50[54]](404)};return _0xe7b5xf[_0x4d50[17]](_0xe7b5x1b)})[_0x4d50[16]](function(_0xe7b5x11){return handleError(_0xe7b5xf,_0xe7b5x11)})};exports[_0x4d50[56]]=function(_0xe7b5xe,_0xe7b5xf){return Agent[_0x4d50[28]](_0x4d50[27])[_0x4d50[24]](_0xe7b5xe[_0x4d50[55]][_0x4d50[22]])[_0x4d50[19]](function(_0xe7b5x1b){if(!_0xe7b5x1b){return _0xe7b5xf[_0x4d50[54]](404)};return _0xe7b5x1b[_0x4d50[58]]({attributes:[_0x4d50[39]]})})[_0x4d50[19]](function(_0xe7b5x15){return _0xe7b5xf[_0x4d50[17]]({count:_0xe7b5x15[_0x4d50[57]],rows:_0xe7b5x15})})[_0x4d50[16]](function(_0xe7b5x11){return handleError(_0xe7b5xf,_0xe7b5x11)})};exports[_0x4d50[59]]=function(_0xe7b5xe,_0xe7b5xf){return Agent[_0x4d50[28]](_0x4d50[27])[_0x4d50[24]](_0xe7b5xe[_0x4d50[55]][_0x4d50[22]])[_0x4d50[19]](function(_0xe7b5x1b){if(!_0xe7b5x1b){return _0xe7b5xf[_0x4d50[54]](404)};return _0xe7b5x1b[_0x4d50[60]]({attributes:[_0x4d50[22]]})})[_0x4d50[19]](function(_0xe7b5x17){return _0xe7b5xf[_0x4d50[17]]({count:_0xe7b5x17[_0x4d50[57]],rows:_0xe7b5x17})})[_0x4d50[16]](function(_0xe7b5x11){return handleError(_0xe7b5xf,_0xe7b5x11)})};exports[_0x4d50[61]]=function(_0xe7b5xe,_0xe7b5xf){return Agent[_0x4d50[28]](_0x4d50[27])[_0x4d50[24]](_0xe7b5xe[_0x4d50[55]][_0x4d50[22]])[_0x4d50[19]](function(_0xe7b5x1b){if(!_0xe7b5x1b){return _0xe7b5xf[_0x4d50[54]](404)};return _0xe7b5x1b[_0x4d50[6